.machine{background:linear-gradient(180deg, var(--case-light) 0%, var(--case) 14%, var(--case) 86%, var(--case-dark) 100%);border-radius:var(--radius);padding:14px 14px 18px;box-shadow:0 14px 30px #0000008c,inset 0 2px #ffffff59}.machine-top{align-items:flex-start;gap:8px;margin-bottom:10px;display:flex}.machine-brand{letter-spacing:-.3px;color:var(--ink);text-shadow:0 2px 0 var(--case-dark);flex:1;font-size:15px;font-style:italic;font-weight:700;line-height:1.1}.machine-tools{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.pills{gap:4px;display:flex}.pill{font:700 13px/1 var(--sans);background:var(--case-dark);color:var(--ink-soft);cursor:pointer;border:none;border-radius:8px;padding:6px 9px;box-shadow:inset 0 -2px #0000004d}.pill[aria-pressed=true]{background:var(--panel);color:#2b2f36;box-shadow:inset 0 -2px 0 var(--panel-dark)}.pill.small{letter-spacing:.4px;padding:5px 7px;font-size:10px}.stars{gap:1px;line-height:1;display:flex}.star{color:var(--case-dark);font-size:13px}.star.on{color:var(--vfd);text-shadow:0 0 6px #ffb03a8c}.star-flight{z-index:10;color:var(--vfd);text-shadow:0 0 24px #ffb03ae6;pointer-events:none;font-size:13px;line-height:1;transition:transform 1.1s cubic-bezier(.3,0,.2,1),opacity 1.1s ease-in;position:fixed}@media (prefers-reduced-motion:reduce){.star-flight{display:none}}.screen{background:var(--screen);border-radius:10px;flex-direction:column;justify-content:space-between;gap:6px;min-height:104px;padding:12px 12px 10px;display:flex;box-shadow:inset 0 3px 12px #000000e6,0 1px #ffffff40}.screen-prompt{font:700 12px/1.25 var(--mono);color:var(--vfd);opacity:.75;letter-spacing:1px;min-height:15px}.screen-prompt.ok{color:var(--ok);opacity:1}.screen-prompt.warn{color:var(--warn);opacity:1}.screen-prompt.err{color:var(--err);opacity:1}.screen-solution{font:700 clamp(17px, 5.5vw, 22px) / 1.1 var(--mono);color:var(--ok);letter-spacing:4px;word-break:break-all}.screen-ghost{font:700 12px/1.2 var(--mono);color:var(--vfd-dim);letter-spacing:2px;word-break:break-all;text-decoration:line-through}.screen-entry{font:700 clamp(22px, 7.5vw, 32px) / 1 var(--mono);color:var(--vfd);letter-spacing:6px;text-shadow:0 0 10px #ffb03a80;word-break:break-all;min-height:34px}.screen-entry .locked{color:var(--ok)}.screen-entry .stale{color:var(--vfd-dim)}.caret{opacity:.9;animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.screen-entry .locked{color:var(--ok)}.screen-entry .stale{color:var(--vfd-dim)}.caret{animation:none}}.screen-status{font:700 11px/1 var(--mono);color:var(--vfd-dim);letter-spacing:1px;justify-content:space-between;gap:8px;display:flex}.screen-status b{color:var(--vfd);font-weight:700}.panel{background:var(--panel);box-shadow:inset 0 -3px 0 var(--panel-dark), 0 2px 0 #0003;border-radius:14px;margin-top:12px;padding:9px}.keybed{background:var(--keybed);box-shadow:inset 0 2px 6px var(--keybed-dark);border-radius:9px;padding:7px 6px}.keyrow{gap:5px;margin-bottom:5px;display:grid}.keyrow:last-child{margin-bottom:0}.key{background:var(--key);color:var(--key-ink);font:700 17px/1 var(--sans);cursor:pointer;box-shadow:inset 0 -3px 0 var(--key-dark);border:none;border-radius:7px;padding:11px 0;transition:transform 50ms}.key:active{box-shadow:inset 0 -1px 0 var(--key-dark);transform:translateY(2px)}.key.tight{border-radius:6px;font-size:14px}.key.alt{background:var(--key-alt);color:var(--key-alt-ink);box-shadow:inset 0 -3px 0 var(--key-alt-dark)}.key.go{background:var(--key-go);color:var(--key-action-ink);box-shadow:inset 0 -3px 0 var(--key-go-dark)}.key.del{background:var(--key-del);color:var(--key-action-ink);box-shadow:inset 0 -3px 0 var(--key-del-dark)}.key:disabled{opacity:.45;cursor:default}.key.fn{letter-spacing:.3px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:7px 2px 6px;font-size:10px;display:flex}.key.fn svg{flex:none;width:19px;height:19px;display:block}.key.fn.side{flex-direction:row;gap:7px;font-size:13px}.key.fn.side svg{width:21px;height:21px}.machine-foot{color:var(--ink-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;font-size:11px;display:flex}.machine-foot label{cursor:pointer;align-items:center;gap:5px;display:flex}.note{font:700 11px/1.3 var(--mono);color:var(--vfd);white-space:pre-wrap;background:#00000040;border-radius:6px;margin-top:8px;padding:5px 7px}.notice{color:var(--ink-soft);background:#00000047;border-radius:8px;margin-top:10px;padding:8px 10px;font-size:12px}.warning{color:var(--ink-soft);background:#5a2320;border-radius:8px;margin-top:10px;padding:8px 10px;font-size:12px}.shelf{gap:8px;margin-top:12px;display:grid}.game-card{text-align:left;background:var(--key);width:100%;color:var(--key-ink);cursor:pointer;box-shadow:inset 0 -4px 0 var(--key-dark);border:none;border-radius:12px;align-items:center;gap:10px;padding:12px;transition:transform 50ms;display:flex}.game-card:active{box-shadow:inset 0 -2px 0 var(--key-dark);transform:translateY(2px)}.game-card .icon{flex:none;font-size:26px;line-height:1}.game-card .title{font:700 16px/1.1 var(--sans);display:block}.game-card .tagline{opacity:.75;margin-top:3px;font-size:12px;display:block}.soon{text-align:center;font:700 11px/1.4 var(--mono);color:var(--ink-soft);opacity:.65;letter-spacing:.5px;margin-top:12px}.profile-form{gap:6px;margin-top:10px;display:flex}.profile-form input{min-width:0;font:700 15px/1 var(--sans);background:var(--key);color:var(--key-ink);border:none;border-radius:8px;flex:1;padding:10px}.profile-list{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}:root{--case:#343a41;--case-light:#4a515a;--case-dark:#1e2227;--panel:#cbbfa6;--panel-dark:#9d9179;--keybed:#1c4f52;--keybed-dark:#10383a;--key:#ece4d4;--key-dark:#b6ac99;--key-ink:#2b2f36;--key-alt:#2fa39b;--key-alt-dark:#1e7a73;--key-alt-ink:#fff;--key-go:#4c9a5a;--key-go-dark:#35703f;--key-del:#6c7683;--key-del-dark:#49525c;--key-action-ink:#fff;--vfd:#ffb03a;--vfd-dim:#6b4610;--screen:#0b0a08;--ok:#8fd98a;--warn:#ffd270;--err:#ff8a6b;--ink:#fff;--ink-soft:#c9d1da;--bg:#15171a;--radius:26px;--mono:"Lucida Console", Consolas, monospace;--sans:"Trebuchet MS", "Segoe UI", Verdana, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0}body{background:var(--bg);font-family:var(--sans);color:var(--ink);padding:10px 8px calc(24px + env(safe-area-inset-bottom));justify-content:center;display:flex}#root{width:100%;max-width:420px}button{font-family:inherit}:focus-visible{outline:3px solid var(--vfd);outline-offset:2px}
