:root{--background:#090a0a;--surface:#121214;--surface-raised:#151517;--surface-hover:#171719;--border:#29292f;--border-strong:#3a3a40;--text:#f4f4f5;--muted:#888890;--accent:#ef4f4f;--accent-soft:#ef4f4f1a}*{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{color:var(--text);background:var(--background);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}button{color:inherit;-webkit-tap-highlight-color:transparent}button,summary{touch-action:manipulation}.simple-shell{background:var(--background);min-height:100svh}.home-shell{padding:clamp(42px,7vh,72px) 20px 64px}.home-panel{width:min(700px,100%);margin:0 auto;animation:.42s cubic-bezier(.2,.75,.2,1) both rise-in}.wordmark{color:var(--text);letter-spacing:-.075em;text-align:center;font-size:clamp(54px,9vw,82px);font-weight:820;line-height:1;display:block}.wordmark strong{color:var(--accent);font-weight:inherit}.wordmark-small{letter-spacing:-.06em;font-size:30px}.stats-grid{border:1px solid var(--border);background:var(--surface);border-radius:17px;grid-template-columns:repeat(3,1fr);margin-top:34px;display:grid;overflow:hidden}.stats-grid div{text-align:center;place-content:center;gap:7px;min-height:86px;display:grid}.stats-grid div+div{border-left:1px solid var(--border)}.stats-grid strong{font-size:28px;font-weight:780}.stats-grid span{color:var(--muted);font-size:11px;font-weight:600}.choice-section{margin-top:30px}.compact-section{margin-top:26px}.setup-card{border:1px solid var(--border);background:var(--surface);border-radius:20px;margin-top:20px;padding:26px}.setup-card .first-section{margin-top:0}.choice-section h2{color:#a8a8af;letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:780}.choice-row{flex-wrap:wrap;gap:8px;display:flex}.choice-row button{border:1px solid var(--border);color:#b7b7be;background:var(--surface);cursor:pointer;border-radius:999px;min-height:42px;padding:0 15px;font-size:13px;font-weight:600;transition:transform .16s,border-color .16s,color .16s,background .16s}.choice-row button:hover{color:var(--text);background:var(--surface-hover);border-color:#3c3c43;transform:translateY(-1px)}.choice-row button.selected{color:var(--text);border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px #ef4f4f1f}.mode-row{grid-template-columns:repeat(3,1fr);display:grid}.mode-row button,.pool-row button{border-radius:12px}.genre-row button{flex:1 0 auto}.pool-row button{min-width:135px}.profile-row{grid-template-columns:1fr auto;gap:9px;margin-top:12px;display:grid}.profile-row input,.more-filters input,.more-filters select,.guess-input input{border:1px solid var(--border);min-height:48px;color:var(--text);background:var(--surface);border-radius:13px;outline:0}.profile-row input{width:100%;padding:0 15px}.profile-row>button{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:13px;min-width:92px;font-weight:650}.profile-row>button:hover{border-color:var(--accent)}.profile-row>button:disabled{cursor:wait;opacity:.55}.profile-row>span{color:var(--muted);grid-column:1/-1;font-size:12px}.profile-row input:focus,.more-filters input:focus,.more-filters select:focus,.guess-input input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #ef4f4f14}.more-filters{border-top:1px solid var(--border);margin-top:24px}.more-filters summary{color:var(--muted);cursor:pointer;padding:18px 0 4px;font-size:13px;font-weight:650;list-style-position:inside}.more-filters[open] summary{color:var(--text)}.more-filters>div{grid-template-columns:repeat(2,1fr);gap:14px;padding:16px 0 0;display:grid}.more-filters label span{color:var(--muted);margin-bottom:7px;font-size:11px;font-weight:650;display:block}.more-filters input,.more-filters select{appearance:none;width:100%;padding:0 13px}.primary-button{color:#120404;background:var(--accent);cursor:pointer;border:0;border-radius:15px;justify-content:center;align-items:center;gap:10px;min-height:54px;padding:0 24px;font-size:16px;font-weight:790;transition:filter .16s,transform .16s,box-shadow .16s;display:inline-flex;box-shadow:0 8px 24px #ef4f4f1f}.primary-button:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 11px 28px #ef4f4f2e}.primary-button:active{transform:scale(.985)}.primary-button svg,.game-actions svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.play-button{border-radius:14px;width:100%;min-height:62px;margin-top:26px;font-size:18px}.play-button svg{fill:currentColor;stroke:none;width:25px;height:25px}.plain-wordmark{cursor:pointer;background:0 0;border:0;padding:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.center-screen,.result-shell{flex-direction:column;align-items:center;padding:42px 20px;display:flex}.load-box{text-align:center;flex-direction:column;align-items:center;width:min(440px,100%);margin:auto;animation:.32s both rise-in;display:flex}.load-box h1{letter-spacing:-.035em;margin:22px 0 0;font-size:28px}.load-box p{color:var(--muted);margin:12px 0 24px;line-height:1.6}.load-box .primary-button{width:min(240px,100%)}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}.text-button{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-top:12px;padding:10px;font-size:13px}.text-button:hover{color:var(--text)}.game-shell{padding:26px 20px 56px}.game-header{justify-content:space-between;align-items:center;width:min(900px,100%);margin:0 auto;display:flex}.game-wordmark .wordmark{text-align:left}.exit-button{border:1px solid var(--border);min-height:38px;color:var(--muted);background:var(--surface);cursor:pointer;border-radius:10px;padding:0 14px;font-size:12px;font-weight:650;transition:color .16s,border-color .16s,transform .16s}.exit-button:hover{color:var(--text);border-color:var(--border-strong);transform:translateY(-1px)}.game-panel{width:min(900px,100%);margin:24px auto 0;animation:.36s cubic-bezier(.2,.75,.2,1) both rise-in}.session-status{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:15px;font-size:12px;font-weight:650;display:flex}.session-status strong{color:var(--text);font-size:13px}.game-topline{justify-content:space-between;align-items:center;font-size:13px;display:flex}.game-topline strong{font-weight:700}.game-topline span{color:var(--muted);font-weight:650}.frame-bars{grid-template-columns:repeat(4,1fr);gap:7px;margin:10px 0 15px;display:grid}.frame-bars i{background:var(--border);border-radius:4px;height:3px}.frame-bars i.active{background:var(--accent);animation:.24s both bar-in}.clue-frame{aspect-ratio:16/9;border:1px solid var(--border);background:#030303;border-radius:20px;place-items:center;width:100%;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 70px #00000052}.clue-frame>img,.clue-frame video{object-fit:contain;width:100%;height:100%;animation:.32s cubic-bezier(.2,.75,.2,1) both frame-in;display:block}.frame-spinner{position:absolute}.media-error{color:var(--muted);text-align:center;background:#080808;place-content:center;gap:12px;display:grid;position:absolute;inset:0}.media-error button{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:10px;padding:8px 12px}.guess-form{margin-top:16px}.guess-form>label{color:var(--muted);margin-bottom:9px;font-size:12px;font-weight:650;display:block}.guess-controls{grid-template-columns:1fr auto;gap:8px;display:grid}.guess-input{position:relative}.guess-input>svg{z-index:2;fill:none;width:18px;height:18px;stroke:var(--muted);stroke-width:1.8px;stroke-linecap:round;position:absolute;top:50%;left:15px;translate:0 -50%}.guess-input input{width:100%;min-height:56px;padding:0 47px;font-size:15px}.guess-input input::placeholder,.profile-row input::placeholder{color:#68686f}.guess-button{color:#120404;background:var(--accent);cursor:pointer;border:0;border-radius:13px;min-width:118px;font-weight:760;transition:filter .16s,transform .16s}.guess-button:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.guess-button:active:not(:disabled){transform:scale(.98)}.guess-form-error .guess-input input{border-color:var(--accent);animation:.36s wrong-nudge}.guess-button:disabled,.game-actions button:disabled{cursor:not-allowed;opacity:.42}.game-actions{justify-content:space-between;align-items:center;min-height:42px;margin-top:6px;display:flex}.game-actions>span{color:#e26c6c;font-size:12px;font-weight:650}.game-actions button{color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:9px 12px;font-size:13px;font-weight:650;transition:color .16s,transform .16s;display:inline-flex}.game-actions button:hover:not(:disabled){color:var(--text);transform:translate(2px)}.result-panel{text-align:center;flex-direction:column;align-items:center;width:min(560px,100%);margin:auto;animation:.42s cubic-bezier(.2,.75,.2,1) both result-in;display:flex}.result-panel>img{aspect-ratio:2/3;border:1px solid var(--border);object-fit:cover;border-radius:16px;width:150px;margin-bottom:24px;box-shadow:0 18px 50px #00000061}.result-panel>p{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 9px;font-size:12px;font-weight:780}.result-panel h1{letter-spacing:-.055em;margin:0;font-size:clamp(36px,8vw,58px);line-height:1.05}.second-title{color:var(--muted);margin-top:10px;font-size:14px}.result-details{flex-wrap:wrap;justify-content:center;gap:8px;margin:24px 0;display:flex}.result-details span{border:1px solid var(--border);color:var(--muted);background:var(--surface);border-radius:9px;padding:7px 10px;font-size:11px}.result-points{color:var(--muted);letter-spacing:-.04em;margin:-8px 0 24px;font-size:28px;font-weight:800}.result-points.won{color:var(--accent)}.result-points span{letter-spacing:0;font-size:13px;font-weight:650}.result-panel .primary-button{width:min(300px,100%)}.result-panel .primary-button svg{fill:currentColor;stroke:none}.summary-panel{text-align:center;flex-direction:column;align-items:center;width:min(580px,100%);margin:auto;animation:.42s cubic-bezier(.2,.75,.2,1) both result-in;display:flex}.summary-panel>p{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:780}.summary-panel h1{letter-spacing:-.065em;margin:0;font-size:clamp(58px,14vw,90px);line-height:1}.summary-panel h1 span{color:var(--muted);letter-spacing:-.03em;font-size:.42em}.summary-panel h2{color:var(--muted);margin:12px 0 0;font-size:14px;font-weight:650}.history-list{border:1px solid var(--border);background:var(--surface);border-radius:16px;width:100%;margin:30px 0 24px;overflow:hidden}.history-list>div{text-align:left;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:54px;padding:9px 14px;display:grid}.history-list>div+div{border-top:1px solid var(--border)}.history-list>div>span{width:24px;height:24px;color:var(--muted);background:#0d0d0f;border-radius:8px;place-items:center;font-size:10px;font-weight:750;display:grid}.history-list strong{font-size:13px;line-height:1.35}.history-list em{color:var(--accent);font-size:12px;font-style:normal;font-weight:760}.summary-panel .primary-button{width:min(300px,100%)}.summary-panel .primary-button svg{fill:currentColor;stroke:none}.round-picker{border:1px solid var(--border);background:#0d0d0f;border-radius:14px;grid-template-columns:58px 1fr 58px;align-items:stretch;width:100%;min-height:68px;display:grid;overflow:hidden}.round-picker button{color:var(--text);background:var(--surface-raised);cursor:pointer;border:0;font-size:24px;transition:color .16s,background .16s}.round-picker button:hover:not(:disabled){color:var(--accent);background:var(--surface-hover)}.round-picker button:disabled{cursor:not-allowed;opacity:.3}.round-picker div{justify-content:center;align-items:baseline;gap:7px;display:flex}.round-picker strong{letter-spacing:-.04em;font-size:30px}.round-picker span,.score-cap{color:var(--muted);font-size:11px;font-weight:650}.score-cap{text-align:center;margin-top:8px;display:block}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@keyframes spin{to{rotate:360deg}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes frame-in{0%{opacity:0;transform:scale(1.012)}to{opacity:1;transform:scale(1)}}@keyframes result-in{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes wrong-nudge{0%,to{transform:translate(0)}32%{transform:translate(-5px)}68%{transform:translate(5px)}}@keyframes bar-in{0%{opacity:.35;transform:scaleX(.72)}to{opacity:1;transform:scaleX(1)}}@media (width<=650px){.home-shell{padding:34px 14px 46px}.wordmark{font-size:clamp(52px,16vw,72px)}.wordmark-small{font-size:27px}.subtitle{margin-top:15px;font-size:15px}.stats-grid{border-radius:14px;margin-top:26px}.stats-grid div{min-height:76px}.stats-grid strong{font-size:24px}.stats-grid span{font-size:11px}.choice-section{margin-top:26px}.choice-section h2{margin-bottom:13px}.mode-row{grid-template-columns:repeat(3,1fr)}.mode-row button{min-height:45px;padding:0 8px;font-size:11px}.choice-row{gap:8px}.choice-row button{min-height:41px;padding:0 13px;font-size:12px}.genre-row button{flex-grow:1}.profile-row{grid-template-columns:1fr auto}.more-filters>div{grid-template-columns:1fr}.play-button{min-height:58px;margin-top:22px}.game-shell{padding:20px 12px 42px}.game-panel{margin-top:20px}.session-status{margin-bottom:12px}.clue-frame{border-radius:14px}.guess-controls{grid-template-columns:1fr}.guess-button{min-height:50px}.setup-card{border-radius:17px;padding:20px 16px}.game-header{padding:0 2px}.history-list{margin-top:24px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
