:root{--bg:#121213;--tile:#1f1f21;--line:#3a3a3c;--ink:#f4f4f5;--dim:#8b8b90;--red:#a8433f;--yellow:#b59f3b;--green:#538d4e}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.4 system-ui,-apple-system,Segoe UI,sans-serif}.muted{color:var(--dim);font-size:.85rem}.logo{margin:0;font-size:1.35rem;font-weight:800;letter-spacing:-.02em}main.center{min-height:100vh;display:grid;place-content:center;justify-items:center;text-align:center;gap:8px;padding:16px}.logo.big{font-size:2.6rem;display:flex}.logo.big span{display:inline-block;animation:hop 1.15s ease-in-out infinite}@keyframes hop{0%,55%,to{transform:translateY(0)}25%{transform:translateY(-14px)}}.sub{margin:0;color:var(--dim);font-size:.9rem;opacity:0;transition:opacity .5s ease}.sub.show{opacity:1}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:10px}header>div{display:flex;align-items:baseline;gap:8px}.link{background:none;border:0;color:var(--ink);font:inherit;font-size:.9rem;cursor:pointer;padding:4px 0}.board{background:var(--tile);border-radius:10px;padding:10px 14px}.board ol{list-style:none;margin:0;padding:0}.board li{display:flex;justify-content:space-between;padding:4px 0}.stage{position:relative;aspect-ratio:var(--r,1.778);margin:0 auto;background:var(--tile);border-radius:12px;overflow:hidden}.stage img,.stage video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;display:block}.hintbar{position:absolute;left:0;right:0;bottom:0;padding:28px 50px 10px;text-align:center;font-weight:700;font-size:.98rem;line-height:1.25;text-shadow:0 1px 3px #000a;background:linear-gradient(to top,#000c,#0000);pointer-events:none;transition:opacity .28s ease,transform .28s ease;animation:hintIn .4s ease}.hintbar.off{opacity:0;transform:translateY(8px)}.hinttext{display:inline-block;animation:textIn .32s ease}.hinttext.out{opacity:0;transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease;animation:none}@keyframes textIn{0%{opacity:0;transform:translateY(6px)}}@keyframes hintIn{0%{opacity:0;transform:translateY(8px)}}.eye{position:absolute;right:8px;bottom:8px;width:30px;height:30px;padding:0;border:0;border-radius:50%;background:#0006;color:#fff;display:grid;place-items:center;cursor:pointer;transition:background .2s,opacity .25s}.eye.gone{opacity:0;pointer-events:none}.eye:hover{background:#0009}.eye svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.eye .slash{stroke-dasharray:24;stroke-dashoffset:24;transition:stroke-dashoffset .28s ease}.eye.off .slash{stroke-dashoffset:0}.steps{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.step{aspect-ratio:1.4;border-radius:8px;border:2px solid var(--line);background:transparent;color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.step:disabled{opacity:.3;cursor:default;background:var(--tile);border-color:transparent}.step.r{background:var(--red);border-color:var(--red)}.step.y{background:var(--yellow);border-color:var(--yellow)}.step.g{background:var(--green);border-color:var(--green)}.step.active{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--ink)}.step.active:not(.r):not(.y):not(.g){background:var(--ink);color:var(--bg)}.entry{display:grid;gap:8px}.field{position:relative}input{width:100%;padding:13px 14px;border-radius:10px;border:2px solid var(--line);background:var(--bg);color:var(--ink);font:inherit}input:focus{outline:none;border-color:var(--ink)}.sugg{position:absolute;z-index:10;left:0;right:0;top:calc(100% + 6px);margin:0;padding:4px;list-style:none;max-height:240px;overflow-y:auto;background:var(--tile);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #0009}.sugg li{padding:9px 10px;border-radius:6px;cursor:pointer}.sugg li.on{background:var(--line)}.actions{display:grid;grid-template-columns:1fr 2fr;gap:8px}.btn{padding:12px 16px;border:0;border-radius:10px;background:var(--ink);color:var(--bg);font:inherit;font-weight:700;cursor:pointer}.btn.ghost{background:transparent;color:var(--ink);border:2px solid var(--line)}.btn:disabled{opacity:.4;cursor:default}.btn:focus-visible,.step:focus-visible,.link:focus-visible,.eye:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.rows{display:grid;gap:6px}.row{min-height:42px;padding:9px 14px;border-radius:8px;border:2px solid var(--line);font-weight:600;display:flex;align-items:center}.row.r{background:var(--red);border-color:var(--red)}.row.y{background:var(--yellow);border-color:var(--yellow)}.row.g{background:var(--green);border-color:var(--green)}.done{display:grid;gap:8px;justify-items:center;text-align:center;padding:2px 0 4px}.done h2{margin:0;font-size:1.5rem}.msg{margin:0;color:#e08a84;text-align:center}.ver{margin:0;text-align:center;font-size:.7rem;color:var(--line)}main.game{max-width:520px;margin:0 auto;padding:calc(58px + env(safe-area-inset-top,0px)) 16px 28px;display:grid;gap:12px}.panel{display:contents}.media{order:1;display:grid}.stage{width:min(100%,calc(62vh * var(--r,1.778)))}.panel>header{order:0}.panel>:not(header){order:2}@media (orientation:landscape) and (min-width:700px){main.game{max-width:1400px;min-height:100vh;padding:20px 28px;grid-template-columns:minmax(0,1fr) 380px;gap:28px;align-items:center}.panel{display:grid;gap:12px}.panel>*,.panel>:not(header),.media{order:0}.media{align-content:center}.stage{width:min(100%,calc((100vh - 56px) * var(--r,1.778)))}}@media (prefers-reduced-motion:reduce){.logo.big span{animation:none}.hintbar,.hinttext,.eye .slash{transition:none;animation:none}}
