:root:root{--bg: #efe4cf;--bg-2: #fffaf1;--ink: #23262e;--ink-dim: #5f5b52;--accent: #2f3f5c;--line: #d3c2a2;--kt-navy: #2f3f5c;--kt-ok: #2f9a58;--kt-ok-l: #d9f0df;--kt-ng: #8f8f88;--kt-ng-l: #e7e6e1;--kt-sel: #e58a24;--kt-paper: #fffdf8;--kt-red: #c4473a;color-scheme:light}html body{background:radial-gradient(110% 70% at 50% 30%,#fffbf0cc,#fffbf000 70%),linear-gradient(180deg,#efe3cc,#dcc7a3)}body .shell{background:linear-gradient(to bottom,#efe4cff7 70%,#efe4cf00)}body .shell .btn{background:#fffaf1eb}body .gi-dock__btn{background:#fffaf1f7;box-shadow:0 4px 14px #23262e2e}body .gi-dock__btn--share{background:var(--kt-navy);color:#fff}@media (min-width: 761px){body .shell__sub{display:none}}body .toast{background:#23262ef0;color:#fff}.kt{position:fixed;inset:0;overflow:hidden;padding:calc(var(--shell-h) + env(safe-area-inset-top,0px) + 2px) calc(10px + env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) calc(10px + env(safe-area-inset-left,0px));font-family:system-ui,-apple-system,Hiragino Kaku Gothic ProN,Noto Sans JP,Noto Sans CJK JP,sans-serif;color:var(--ink);-webkit-tap-highlight-color:transparent;user-select:none;outline:none}.kt--shot{padding-top:10px}.kt__play{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-columns:minmax(0,1fr);grid-template-areas:"top" "board" "side" "result";gap:6px;max-width:560px;margin:0 auto}.kt-top{grid-area:top;text-align:center}.kt-tag{margin:0;display:inline-block;padding:2px 10px;border-radius:999px;background:var(--kt-navy);color:#fff;font-size:12px;font-weight:700;letter-spacing:.02em}.kt[data-kind=practice] .kt-tag{background:var(--kt-sel)}.kt-rule{margin:3px 0 0;font-size:14px;font-weight:700;line-height:1.35;color:var(--ink)}.kt-boardwrap{grid-area:board;position:relative;min-height:0;display:flex;align-items:center;justify-content:center}.kt-board{position:relative;flex:none}.kt-room{position:absolute;inset:0;width:100%;height:100%;display:block;border-radius:18px;box-shadow:0 10px 30px #5037192e,inset 0 0 0 1px #785a321f}.kt-doorlabel,.kt-rowlabel{position:absolute;left:50%;transform:translate(-50%);font-size:11px;font-weight:700;color:#7a5b3c;background:#fffaf0d9;padding:1px 8px;border-radius:999px;pointer-events:none;white-space:nowrap}.kt-doorlabel{bottom:calc(26px * var(--k, 1))}.kt-rowlabel{left:auto;font-size:max(10px,calc(12px * var(--k, 1)));line-height:1.4;transform:translate(-50%,-50%);background:#fffaf0eb;box-shadow:1px 1px #5a3c1e2e}.kt-seat{position:absolute;width:calc(74px * var(--k, 1));height:calc(80px * var(--k, 1));min-width:48px;min-height:48px;transform:translate(-50%,-50%);border:2px dashed rgba(47,63,92,.28);border-radius:14px;background:transparent;cursor:pointer;padding:0;transition:border-color .15s,background-color .15s,box-shadow .15s;touch-action:manipulation}.kt-seat[data-empty=false]{border-color:transparent;background:transparent}.kt-seat[data-empty=true]{z-index:1}.kt-seat[data-target=true][data-empty=true]{border:3px dashed var(--kt-sel);background:#e58a2429;animation:kt-blink .9s ease-in-out infinite}.kt-seat[data-press=true]{background:#e58a2447}.kt-seat:focus-visible{outline:3px solid var(--kt-sel);outline-offset:3px}.kt-num{position:absolute;z-index:6;width:26px;height:26px;margin:-4px 0 0 -4px;border-radius:50%;display:grid;place-items:center;background:var(--kt-navy);color:#fff;font-size:16px;font-weight:800;line-height:1;box-shadow:0 2px 5px #00000040,0 0 0 2px #fffaf1;pointer-events:none;transition:background-color .2s}.kt-num[data-mark=ok]{background:var(--kt-ok)}.kt-num[data-mark=ng]{background:var(--kt-ng)}@keyframes kt-blink{0%,to{border-color:var(--kt-sel);background-color:#e58a2438;box-shadow:0 0 0 4px #e58a2438}50%{border-color:#e58a244d;background-color:#e58a240d;box-shadow:0 0 #e58a2400}}.kt-card{--ch: calc(var(--cw, 62px) * 1.3);position:relative;flex:none;width:var(--cw, 62px);height:var(--ch);padding:2px 2px 3px;border:0;border-radius:12px;background:linear-gradient(180deg,#fffefb,#f6efe2);box-shadow:1px 3px #d8c9ad,4px 7px 12px #3c281438;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;cursor:pointer;color:var(--ink);font:inherit;transition:transform .12s ease-out,box-shadow .12s,background-color .2s;touch-action:manipulation}.kt-card__face{display:block;width:82%;aspect-ratio:1;margin-top:1px}.kt-card__face svg{width:100%;height:100%;display:block}.kt-card__name{font-size:calc(var(--cw, 62px) * .215);font-weight:800;line-height:1.1;white-space:nowrap}.kt-card__role{font-size:calc(var(--cw, 62px) * .17);font-weight:700;line-height:1.1;color:var(--ink-dim);white-space:nowrap}html[lang=en] .kt-card__name{font-size:calc(var(--cw, 62px) * .18)}html[lang=en] .kt-card__role{font-size:calc(var(--cw, 62px) * .145)}.kt-card--seated{position:absolute;z-index:2;translate:-50% -50%}.kt-card--sel{box-shadow:0 0 0 3px var(--kt-sel),2px 4px #cdb894,9px 16px 22px #3c281473;transform:translateY(-8px) scale(1.08);z-index:4}.kt-card--swap{outline:3px dashed var(--kt-sel);outline-offset:3px;animation:kt-blink-o .9s ease-in-out infinite}@keyframes kt-blink-o{50%{outline-color:#e58a2440}}.kt-card[data-press=true]{background:#fff3e0}.kt-card:focus-visible{outline:3px solid var(--kt-sel);outline-offset:3px}.kt-card[data-mark=ok]{background:linear-gradient(180deg,#effaf2,var(--kt-ok-l));box-shadow:0 0 0 3px var(--kt-ok),4px 7px 12px #1e5a3240}.kt-card[data-mark=ng]{background:linear-gradient(180deg,#f3f3f1,var(--kt-ng-l));box-shadow:0 0 0 3px var(--kt-ng),4px 7px 12px #0000002e}.kt-stamp{position:absolute;right:-9px;top:-9px;width:calc(var(--cw, 62px) * .46);height:calc(var(--cw, 62px) * .46);min-width:24px;min-height:24px;border-radius:50%;display:none;place-items:center;font-size:calc(var(--cw, 62px) * .3);font-weight:900;line-height:1;color:#fff;rotate:-12deg;pointer-events:none;z-index:3}.kt-card[data-mark=ok] .kt-stamp{display:grid;background:var(--kt-ok);box-shadow:0 0 0 2px #fff,2px 3px 5px #0000004d}.kt-card[data-mark=ng] .kt-stamp{display:grid;background:var(--kt-ng);box-shadow:0 0 0 2px #fff,2px 3px 5px #00000040}.kt-stamp--in{animation:kt-stamp .32s cubic-bezier(.3,1.4,.5,1) both}@keyframes kt-stamp{0%{transform:scale(2.4);opacity:0}60%{opacity:1}to{transform:scale(1);opacity:1}}.kt-card[data-mark=ng] .kt-card__face{filter:grayscale(.7);transform:rotate(-6deg)}.kt-card[data-mark=ok] .kt-mouth{d:path("M25.5 34.5q4.5 4 9 0")}.kt-card--next{animation:kt-bob 1.4s ease-in-out infinite}@keyframes kt-bob{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}.kt[data-picking=true] .kt-tray .kt-card:not(.kt-card--sel){opacity:.62}.kt-card:after{content:attr(data-key);position:absolute;right:3px;top:2px;font-size:9px;font-weight:700;color:#23262e59}.kt-card--seated:after{display:none}@media (hover: none){.kt-card:after{display:none}}.kt-side{grid-area:side;display:flex;flex-direction:column;gap:6px;min-width:0}.kt-side[hidden]{display:none}.kt-hints{background:var(--kt-paper);border-radius:12px;box-shadow:0 2px #e2d4b8,0 4px 10px #3c28141a;padding:6px 10px}.kt-hints__list{margin:0;padding:0;list-style:none;counter-reset:kh}.kt-hint{counter-increment:kh;display:flex;align-items:baseline;gap:6px;font-size:14px;line-height:1.45;font-weight:600;padding:1px 0;border-radius:6px;transition:background-color .2s}.kt-hint:before{content:counter(kh);flex:none;width:18px;height:18px;border-radius:50%;background:#e9e1d0;color:var(--ink-dim);font-size:11px;font-weight:800;display:inline-grid;place-items:center;transform:translateY(-1px)}.kt-hint__mark{order:3;margin-left:auto;color:var(--kt-red);font-weight:900}.kt-hint[data-state=ng]{background:#fbe9e4;color:#8a2f25}.kt-hint[data-state=ng]:before{background:var(--kt-red);color:#fff}.kt-why{background:#f3f1ec;border-radius:10px;padding:5px 10px;border-left:4px solid var(--kt-ng)}.kt-why[hidden]{display:none}.kt-why__head{margin:0;font-size:12px;font-weight:800;color:var(--ink-dim)}.kt-why__line{margin:1px 0 0;font-size:13px;line-height:1.4}.kt-why__line b{margin-right:4px}.kt-tray{min-height:calc(var(--cw, 62px) * 1.3 + 10px);display:flex;justify-content:center;align-items:center;gap:6px;padding:4px 2px;border-radius:14px;background:#fffaf073;box-shadow:inset 0 0 0 1.5px #96785033}.kt-tray[data-empty=true]{min-height:22px;padding:0}.kt-tray[data-empty=true]:before{content:attr(data-label);font-size:11px;font-weight:700;color:var(--ink-dim);opacity:.7}.kt-tray--nudge{animation:kt-nudge .36s}@keyframes kt-nudge{25%{transform:translate(-6px)}50%{transform:translate(5px)}75%{transform:translate(-3px)}}.kt-bar{display:flex;align-items:center;gap:8px}.kt-tries{display:flex;flex-direction:column;gap:3px;flex:none}.kt-try{display:flex;gap:2px;align-items:center;min-height:12px}.kt-try__n{width:12px;height:12px;border-radius:3px;border:1.5px solid rgba(47,63,92,.35);font-size:0}.kt-try[data-state=now] .kt-try__n{border-color:var(--kt-sel);background:#e58a2433}.kt-sq{display:inline-block;width:12px;height:12px;border-radius:3px}.kt-sq--ok{background:var(--kt-ok)}.kt-sq--ng{background:#bdbdb6}.kt-confirm{flex:1;min-height:50px;border:0;border-radius:14px;font:inherit;font-size:16px;font-weight:800;color:#fff;background:var(--kt-navy);box-shadow:0 4px #1d2840;cursor:pointer;transition:transform .08s,background-color .2s,box-shadow .08s}.kt-confirm:disabled{background:#b7b2a6;box-shadow:0 4px #9a9588;cursor:default;font-size:14px}.kt-confirm[data-ready=true]{background:var(--kt-ok);box-shadow:0 4px #1f6b3c;animation:kt-ready 1.6s ease-in-out infinite}.kt-confirm[data-press=true]{transform:translateY(3px);box-shadow:0 1px #1d2840}.kt-confirm:focus-visible,.kt-again:focus-visible,.kt-share:focus-visible{outline:3px solid var(--kt-sel);outline-offset:3px}@keyframes kt-ready{50%{filter:brightness(1.08)}}.kt-result{grid-area:result;background:var(--kt-paper);border-radius:16px;box-shadow:0 3px #e2d4b8,0 10px 24px #3c281429;padding:10px 14px 12px;text-align:center}.kt-result[hidden]{display:none}.kt-result--enter{animation:kt-up .32s cubic-bezier(.2,.8,.3,1.1)}@keyframes kt-up{0%{transform:translateY(16px);opacity:0}}.kt-result__head{margin:0;font-size:22px;font-weight:900}.kt-result__sub{margin:2px 0 6px;font-size:13px;font-weight:700;color:var(--ink-dim)}.kt-result__grid{display:inline-flex;flex-direction:column;gap:4px;margin-bottom:6px}.kt-result__row{display:flex;align-items:center;gap:4px}.kt-result__row .kt-sq{width:22px;height:22px;border-radius:5px}.kt-result__n{font-size:11px;font-weight:700;color:var(--ink-dim);width:46px;text-align:right;margin-right:4px}.kt-result__facts{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;margin-bottom:8px}.kt-fact{display:flex;flex-direction:column;align-items:center;min-width:64px}.kt-fact__k{font-size:11px;font-weight:700;color:var(--ink-dim)}.kt-fact__v{font-size:17px;font-weight:900}.kt-result__dist:before{content:attr(data-title);font-size:11px;font-weight:800;color:var(--ink-dim);text-align:center}.kt-result__dist{flex-basis:100%;display:grid;gap:2px;max-width:260px;margin:2px auto 0}.kt-dist{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700}.kt-dist__lbl{width:42px;text-align:right;color:var(--ink-dim);flex:none}.kt-dist__bar{background:#cfc6b4;color:#fff;border-radius:4px;padding:0 5px;text-align:right;min-width:18px;box-sizing:border-box}.kt-dist__bar[data-now=true]{background:var(--kt-ok)}.kt-result__btns{display:flex;gap:8px}.kt-again,.kt-share{flex:1;min-height:50px;border:0;border-radius:14px;font:inherit;font-size:16px;font-weight:800;cursor:pointer}.kt-again{background:var(--kt-ok);color:#fff;box-shadow:0 4px #1f6b3c;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.15}.kt-again__note{font-size:11px;font-weight:700;opacity:.85}.kt-result__sample{margin:0 auto 8px;max-width:340px;background:#f4efe4;border-radius:10px;padding:4px 10px 6px;text-align:left}.kt-result__samplek{display:block;font-size:10px;font-weight:800;color:var(--ink-dim)}.kt-result__sampletext{margin:0;font-size:13px;font-weight:700;line-height:1.4;word-break:break-all;user-select:text}.kt-share{background:#fff;color:var(--kt-navy);box-shadow:inset 0 0 0 2px var(--kt-navy),0 4px #c9bda6}body .gi-dock.kt-dock{position:static;transform:none;width:auto;max-width:100%;opacity:1;transition:none;flex-wrap:wrap;justify-content:center;margin-top:8px}.kt-result__dock:empty{display:none}.kt-again:active,.kt-share:active{transform:translateY(3px)}.kt-ring{position:fixed;z-index:60;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;border:3px solid var(--kt-sel);pointer-events:none;animation:kt-ring .5s ease-out forwards}@keyframes kt-ring{0%{transform:scale(.4);opacity:1}to{transform:scale(1.4);opacity:0}}.kt-hook{display:inline-flex;flex-direction:column;align-items:center;gap:2px;padding:6px 22px 8px;border-radius:18px;background:var(--kt-paper);box-shadow:2px 4px #e2d4b8,6px 12px 22px #3c28142e;animation:kt-up .4s cubic-bezier(.2,.8,.3,1.1)}.kt-hook__day{font-size:15px;font-weight:800;color:#fff;background:var(--kt-navy);border-radius:999px;padding:1px 12px}.kt-hook__q{font-size:34px;font-weight:900;line-height:1.15;color:var(--ink);letter-spacing:.02em}.kt-finale{position:fixed;inset:0;z-index:70;display:grid;place-items:center;background:#23262e6b;animation:kt-fade .3s ease-out both;pointer-events:none}.kt-finale__card{display:flex;flex-direction:column;align-items:center;gap:12px;padding:22px 26px 18px;border-radius:24px;background:var(--kt-paper);box-shadow:4px 8px #d8c9ad,12px 24px 40px #140e0666;animation:kt-pop .42s cubic-bezier(.3,1.4,.5,1) both}.kt-finale__title{font-size:20px;font-weight:900;color:var(--kt-navy)}.kt-finale__rows{display:flex;flex-direction:column;gap:8px}.kt-finale__row{display:flex;gap:8px;animation:kt-pop .36s cubic-bezier(.3,1.4,.5,1) both}.kt-finale__row .kt-sq{width:46px;height:46px;border-radius:9px;box-shadow:inset 0 -3px #0000001f}.kt-finale__verdict{font-size:30px;font-weight:900}.kt-finale__url{font-size:13px;font-weight:700;color:var(--ink-dim)}@keyframes kt-fade{0%{opacity:0}}@keyframes kt-pop{0%{transform:scale(.6);opacity:0}}.kt-ogbrand{display:none}.kt--og .kt-ogbrand{grid-area:brand;display:flex;flex-direction:column;justify-content:center;gap:8px}.kt--og .kt-ogbrand strong{font-size:54px;line-height:1.05;font-weight:900;color:var(--kt-navy)}.kt--og .kt-ogbrand span{font-size:24px;font-weight:800;color:var(--ink-dim)}@media (min-width: 820px) and (min-height: 520px){.kt__play{max-width:1120px;grid-template-columns:minmax(0,1fr) minmax(320px,400px);grid-template-rows:auto minmax(0,1fr);grid-template-areas:"top top" "board side";column-gap:22px}.kt--done .kt__play{grid-template-areas:"top top" "board result"}.kt-side,.kt-result{align-self:center}.kt-rule,.kt-hint{font-size:16px}.kt-why__line{font-size:14px}.kt-tray{flex-wrap:wrap}}.kt--og .kt__play{max-width:none;grid-template-columns:340px minmax(0,1fr) 330px;grid-template-rows:minmax(0,1fr);grid-template-areas:"brand board side";column-gap:26px;padding:14px 24px;box-sizing:border-box}.kt--og .kt-top,.kt--og .kt-tray{display:none}@media (prefers-reduced-motion: reduce){.kt-card,.kt-seat,.kt-confirm{transition:none}.kt-card--next,.kt-card--swap,.kt-seat[data-target=true][data-empty=true],.kt-confirm[data-ready=true],.kt-tray--nudge,.kt-result--enter,.kt-stamp--in{animation:none}.kt-ring{animation-duration:.2s}}
