:root{--bg: #000;--cyan: #4fffff;--cyan-dim: #00b8b8;--easy: #4fffff;--medium: #ffe94f;--hard: #ff7a4f;--font-mono: ui-monospace, "SF Mono", Menlo, Consolas, "Courier New", monospace}*{box-sizing:border-box}html,body,#app{margin:0;padding:0;width:100%;height:100%;background:var(--bg);color:var(--cyan);font-family:var(--font-mono);overflow:hidden;user-select:none;-webkit-user-select:none}#app{position:relative}#globe{position:absolute;top:0;right:0;bottom:0;left:0}.landing{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;z-index:10;background:radial-gradient(ellipse at center,#001e28d9,#000000f2 70%);text-align:center;padding:2rem}.landing h1{font-size:clamp(2rem,6vw,4rem);letter-spacing:.15em;margin:0;text-shadow:0 0 14px var(--cyan)}.landing p{max-width:32ch;line-height:1.5;color:var(--cyan-dim)}.landing .puzzle-num{color:var(--cyan-dim);font-size:.9rem;letter-spacing:.15em}.landing .mode-row{display:flex;gap:.8rem}.landing .mode-row button.secondary{color:var(--cyan-dim);border-color:var(--cyan-dim)}.endgame .tomorrow{color:var(--cyan-dim);text-align:center;font-style:italic;max-width:40ch;line-height:1.5}.score-box{position:absolute;top:1rem;left:1rem;border:2px solid var(--cyan);padding:.5rem .9rem;background:#0009;box-shadow:0 0 10px #4fffff59;z-index:5}.score-box .label{font-size:.7rem;letter-spacing:.2em;color:var(--cyan-dim)}.score-box .value{font-size:1.6rem;font-weight:700;color:#fff}.prompt{position:absolute;top:1rem;right:1rem;width:min(380px,calc(100vw - 2rem));border:2px solid var(--cyan);background:#000c;box-shadow:0 0 14px #4fffff59;z-index:5;overflow:hidden}.prompt .difficulty{padding:.35rem;text-align:center;font-size:.9rem;color:#000;font-weight:700;letter-spacing:.1em}.prompt.d-1 .difficulty{background:var(--easy)}.prompt.d-2 .difficulty{background:var(--medium)}.prompt.d-3 .difficulty{background:var(--hard)}.prompt .body{padding:.8rem;display:flex;gap:.8rem;align-items:center}.prompt .can{width:78px;height:125px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 2px 6px rgba(0,0,0,.6))}.prompt .can svg{width:100%;height:100%}.round-card .can-mini{width:48px;height:78px;float:left;margin-right:.75rem;filter:drop-shadow(0 1px 3px rgba(0,0,0,.6))}.round-card .can-mini svg{width:100%;height:100%}.round-card{overflow:hidden}.prompt .text{line-height:1.35;color:#fff;font-size:.95rem}.prompt .text .ask{color:var(--cyan-dim);font-size:.8rem;margin-bottom:.2rem}.prompt .text .name{font-weight:700}.reveal{position:absolute;left:50%;bottom:2rem;transform:translate(-50%);width:min(480px,calc(100vw - 2rem));border:2px solid var(--cyan);background:#000000d9;box-shadow:0 0 14px #4fffff66;padding:1rem;text-align:center;z-index:5}.reveal .title{font-weight:700;color:#fff;font-size:1.1rem;margin-bottom:.4rem}.reveal .stats{color:var(--cyan);margin-bottom:.4rem}.reveal .flavor{color:var(--medium);font-style:italic;margin-bottom:.8rem}.reveal button{margin-top:.3rem}button{font-family:var(--font-mono);font-size:1rem;letter-spacing:.1em;background:transparent;color:var(--cyan);border:2px solid var(--cyan);padding:.6rem 1.4rem;cursor:pointer;text-transform:uppercase;transition:background .15s}button:hover{background:#4fffff26}.endgame{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;background:#000000eb;z-index:20;padding:2rem;display:flex;flex-direction:column;align-items:center;gap:1.2rem}.endgame>*{flex-shrink:0}.endgame h2{margin:0;font-size:2rem;text-shadow:0 0 10px var(--cyan);letter-spacing:.1em}.endgame-actions{display:flex;gap:.8rem;flex-wrap:wrap;justify-content:center}.endgame .final-score{font-size:4rem;color:#fff;font-weight:700;text-shadow:0 0 12px var(--cyan)}.round-card{width:100%;max-width:520px;border:1px solid var(--cyan-dim);padding:1rem;background:#00141999}.round-card .rc-head{color:#fff;font-weight:700;margin-bottom:.3rem}.round-card .rc-stats{color:var(--cyan);font-size:.9rem;margin-bottom:.5rem}.round-card .rc-blurb{color:var(--cyan-dim);font-size:.85rem;line-height:1.5}
