:root{font-family:Inter,PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,sans-serif;color:#f5fbff;background:#101828;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{color:inherit}.auth-shell{display:grid;min-height:100vh;place-items:center;padding:22px;background:radial-gradient(circle at 20% 18%,rgba(255,216,126,.22),transparent 24rem),radial-gradient(circle at 78% 22%,rgba(83,220,255,.2),transparent 22rem),linear-gradient(150deg,#1b2233,#0e5a67 45%,#082333)}.auth-panel{width:min(520px,100%);padding:clamp(22px,5vw,42px);border:1px solid rgba(218,248,255,.2);border-radius:8px;background:#091f31eb;box-shadow:0 28px 80px #0008126b}.loading-panel{display:grid;justify-items:center;gap:12px;color:#e8fbff;font-weight:900}.auth-brand{display:flex;align-items:center;gap:14px;margin-bottom:24px}.auth-brand svg{color:#ffe282}.auth-brand h1{font-size:clamp(2rem,7vw,4rem)}.auth-form{display:grid;gap:12px}.auth-tabs{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;padding:4px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0f}.auth-tabs button{min-height:38px;border:0;border-radius:6px;background:transparent;color:#cceef5;cursor:pointer;font-weight:900}.auth-tabs button.active{background:#ffe2822e;color:#fff4bf}.auth-form label{display:grid;gap:8px;color:#fff;font-weight:900}.auth-form label div{display:flex;align-items:center;min-height:48px;gap:9px;padding:0 12px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#ffffff14;color:#a9d5df}.auth-form input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#fff}.auth-form>button{display:grid;min-height:48px;place-items:center;border:0;border-radius:8px;background:#ffe282;color:#142235;cursor:pointer;font-weight:900}.auth-form>button:disabled{cursor:not-allowed;opacity:.55}.game-shell{min-height:100vh;padding:22px;background:radial-gradient(circle at 16% 12%,rgba(255,216,126,.22),transparent 24rem),radial-gradient(circle at 78% 20%,rgba(83,220,255,.2),transparent 22rem),linear-gradient(150deg,#1b2233,#0e5a67 45%,#082333);overflow-x:hidden}.mobile-game-shell{display:none}.stage{position:relative;min-height:calc(100vh - 44px);overflow:hidden;border:1px solid rgba(210,244,255,.2);border-radius:8px;background:linear-gradient(180deg,#ffffff14,#ffffff08),#0613239e;box-shadow:0 28px 80px #000b186b}.visual-scene{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.moon{position:absolute;top:6%;right:8%;width:clamp(74px,8vw,120px);aspect-ratio:1;border-radius:50%;background:#f8fcff;box-shadow:0 0 60px #d2efffad,0 0 160px #73e0ff4d;opacity:.92}.signal-light{position:absolute;border-radius:999px;background:#ffe28233;filter:blur(2px);transform-origin:left center;animation:sweep 7s ease-in-out infinite}.signal-a{left:54%;top:22%;width:38vw;height:4px;transform:rotate(-12deg)}.signal-b{left:10%;top:76%;width:46vw;height:3px;animation-delay:-2.8s;transform:rotate(8deg)}.wave{position:absolute;left:-8%;right:-8%;height:130px;border-radius:45%;background:#8eebf729;filter:blur(.4px);animation:drift 9s ease-in-out infinite alternate}.wave-a{bottom:-30px}.wave-b{bottom:42px;background:#ffffff14;animation-duration:12s}.turtle-shell{position:absolute;left:8%;bottom:13%;width:clamp(94px,11vw,160px);aspect-ratio:1.45;border-radius:55% 55% 44% 44%;background:linear-gradient(120deg,rgba(255,255,255,.18),transparent 40%),repeating-linear-gradient(90deg,transparent 0 24%,rgba(11,77,70,.36) 25% 27%,transparent 28% 52%),#5fc39a;box-shadow:inset 0 -16px 34px #0e453b61,0 24px 60px #00081247;opacity:.86}.turtle-shell span,.turtle-shell i{position:absolute;display:block;border-radius:999px;background:#4ba984}.turtle-shell span{right:-20%;top:38%;width:30%;aspect-ratio:1}.turtle-shell i{left:16%;bottom:-15%;width:24%;height:18%;box-shadow:62px 0 #4ba984}.topbar,.layout{position:relative;z-index:1}.topbar{display:flex;align-items:center;justify-content:space-between;padding:18px}.brand,.round-actions{display:flex;align-items:center;gap:10px}.brand{min-height:40px;padding:0 14px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:#05142161;color:#eaffff;font-weight:800}.user-pill{display:grid;min-height:40px;align-content:center;padding:0 12px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#05142161}.user-pill span{color:#fff;font-size:.88rem;font-weight:900}.user-pill small{color:#a9d5df;font-size:.72rem;font-weight:800}.library-button{display:inline-flex;align-items:center;min-height:40px;gap:8px;padding:0 12px;border:1px solid rgba(255,226,130,.42);border-radius:8px;background:#ffe2821f;color:#fff4bf;cursor:pointer;font-weight:900}.collab-entry{border-color:#66d2a175;background:#66d2a124;color:#d9ffec}.icon-button{display:grid;width:40px;height:40px;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:#0514216b;cursor:pointer}.icon-button:hover,.control-grid button:hover,.question-box button:hover{transform:translateY(-1px);border-color:#ffffff57}.question-box button:disabled,.question-box input:disabled{cursor:wait;opacity:.72}.sending-dot{display:block;width:16px;aspect-ratio:1;border:2px solid rgba(255,255,255,.38);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.request-error{margin:10px 0 0;color:#ffd4b1;font-size:.9rem;line-height:1.5}.layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.75fr);gap:18px;padding:10px 18px 18px}.case-panel,.host-panel{border:1px solid rgba(218,248,255,.18);border-radius:8px;background:#071a2b94;box-shadow:0 18px 50px #000d1a3d;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.case-panel{min-height:650px;padding:clamp(18px,3vw,34px)}.host-panel{display:flex;flex-direction:column;gap:14px;max-height:calc(100vh - 124px);padding:18px;overflow:hidden}.soup-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:clamp(28px,4vw,56px)}.soup-tabs button{min-height:62px;padding:10px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0f;cursor:pointer;text-align:left}.soup-tabs button.active{border-color:#ffe282b8;background:#ffe28229}.soup-tabs span,.soup-tabs small{display:block}.soup-tabs span{margin-bottom:4px;color:#fff;font-weight:800}.soup-tabs small,.eyebrow,.tag-row span,.host-status span,.fact-strip small,.history-item small{color:#a9d5df}.case-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.eyebrow{margin:0 0 8px;font-size:.86rem;font-weight:800;letter-spacing:0}h1{max-width:760px;margin:0;color:#fff;font-size:clamp(2.4rem,7vw,6rem);line-height:.96;letter-spacing:0}.progress-ring{display:grid;flex:0 0 auto;width:94px;aspect-ratio:1;place-items:center;border-radius:50%;background:radial-gradient(circle at center,#10263a 0 57%,transparent 58%),conic-gradient(#ffe282 var(--progress),rgba(255,255,255,.14) 0);color:#fff;font-weight:900}.progress-ring span{font-size:1.7rem}.progress-ring small{margin-left:38px;margin-top:-40px;color:#ffeeb6;font-weight:800}.soup-prompt{max-width:820px;margin:clamp(24px,4vw,46px) 0 18px;color:#e3f8ff;font-size:clamp(1.28rem,2.2vw,2rem);line-height:1.55}.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:clamp(28px,4vw,44px)}.tag-row span{padding:7px 10px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:#ffffff0f;font-size:.86rem}.question-form{display:grid;gap:10px}.question-form label{color:#fff;font-weight:900}.solution-form{display:grid;gap:10px;margin-top:18px}.solution-form label{color:#fff;font-weight:900}.solution-form textarea{width:100%;min-height:112px;padding:13px 16px;resize:vertical;border:1px solid rgba(255,255,255,.16);border-radius:8px;outline:none;background:#ffffff14;color:#fff;line-height:1.55}.solution-form textarea::placeholder{color:#99bdc6}.solution-form textarea:focus{border-color:#5fc39acc;box-shadow:0 0 0 4px #5fc39a1f}.solution-form button{display:inline-flex;align-items:center;justify-content:center;justify-self:start;min-height:44px;padding:0 14px;gap:8px;border:1px solid rgba(95,195,154,.6);border-radius:8px;background:#5fc39a2e;color:#effff7;cursor:pointer;font-weight:900}.solution-form button:disabled{cursor:not-allowed;opacity:.46}.question-box{display:grid;grid-template-columns:1fr 48px;gap:8px}.question-box input{min-width:0;height:54px;padding:0 16px;border:1px solid rgba(255,255,255,.16);border-radius:8px;outline:none;background:#ffffff1a;color:#fff}.question-box input::placeholder{color:#99bdc6}.question-box input:focus{border-color:#ffe282b8;box-shadow:0 0 0 4px #ffe2821f}.question-box button,.control-grid button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#ffffff1a;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}.question-box button{background:#ffe282;color:#142235}.control-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.control-grid button{min-height:50px;padding:0 12px;color:#effcff;font-weight:800}.control-grid button:disabled{cursor:not-allowed;opacity:.42;transform:none}.host-status{display:flex;align-items:center;gap:12px;min-height:62px;padding:12px;border-radius:8px;background:#ffffff14}.host-status strong,.host-status span{display:block}.fact-strip,.answer-box,.hint-list p,.empty-state,.history-item{border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff12}.fact-strip{padding:14px}.fact-strip p,.answer-box p,.hint-list p,.history-item p,.empty-state p{margin:0;line-height:1.58}.fact-strip p{margin-top:5px;color:#fff;font-weight:800}.hint-list{display:grid;gap:8px}.hint-list p{padding:12px;color:#e8fbff}.hint-list span{display:block;margin-bottom:4px;color:#ffe282;font-size:.8rem;font-weight:900}.answer-box{padding:14px;background:#ffe2821f;border-color:#ffe28247}.answer-box strong{color:#ffe282}.answer-box p{margin-top:7px;color:#fff8de}.solution-result{padding:14px;border:1px solid;border-radius:8px}.solution-result strong{display:block}.solution-result p{margin:6px 0 0;line-height:1.58}.solution-result.correct{border-color:#5fc39ab8;background:#5fc39a26;color:#e9fff4}.solution-result.incomplete{border-color:#ffe2827a;background:#ffe2821a;color:#fff8de}.history-list{display:grid;align-content:start;gap:10px;min-height:180px;overflow:auto;padding-right:2px}.empty-state{display:grid;min-height:210px;place-items:center;padding:20px;text-align:center;color:#cceef5}.empty-state p{max-width:320px}.history-item{padding:12px}.history-item div{display:flex;align-items:center;gap:8px;margin-bottom:7px}.history-item.yes{border-color:#71eaac57}.history-item.yes strong,.history-item.yes svg{color:#77efb2}.history-item.no{border-color:#ff848452}.history-item.no strong,.history-item.no svg{color:#ff9b9b}.history-item.irrelevant strong,.history-item.irrelevant svg{color:#a9d5df}.history-item.unclear strong,.history-item.unclear svg{color:#ffe282}.history-item p{color:#fff}.history-item small{display:block;margin-top:7px}.library-overlay{position:absolute;z-index:4;top:0;right:0;bottom:0;left:0;display:grid;padding:18px;overflow:auto;background:#030f1bd6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.creator-overlay{position:absolute;z-index:5;top:0;right:0;bottom:0;left:0;display:grid;padding:18px;overflow:auto;background:#030f1bd6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.info-overlay{position:absolute;z-index:6;top:0;right:0;bottom:0;left:0;display:grid;padding:18px;overflow:auto;background:#030f1bd6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.library-panel{width:min(1080px,100%);margin:auto;padding:clamp(20px,4vw,42px);border:1px solid rgba(218,248,255,.2);border-radius:8px;background:#091f31eb;box-shadow:0 28px 80px #0008126b}.creator-panel,.info-panel{width:min(680px,100%);margin:auto;padding:clamp(20px,4vw,34px);border:1px solid rgba(218,248,255,.2);border-radius:8px;background:#091f31f0;box-shadow:0 28px 80px #0008126b}.compact-panel{width:min(560px,100%)}.result-panel{width:min(760px,100%)}.creator-chat{display:grid;gap:10px;min-height:190px;max-height:330px;margin:24px 0 16px;overflow:auto;padding:2px 2px 2px 0}.creator-chat.editor-chat{min-height:0;max-height:120px;margin:16px 0}.chat-message{max-width:86%;margin:0;padding:11px 13px;border-radius:8px;line-height:1.55}.chat-message.assistant{justify-self:start;background:#ffffff17;color:#e8fbff}.chat-message.user{justify-self:end;background:#5fc39a33;color:#f0fff7}.chat-message.error{color:#ffd4b1}.chat-message .sending-dot{display:inline-block;vertical-align:-3px;margin-right:8px}.creator-result{display:grid;gap:8px;margin-bottom:16px;padding:14px;border:1px solid rgba(95,195,154,.5);border-radius:8px;background:#5fc39a1f}.creator-result span{color:#bff4d6;font-size:.82rem;font-weight:900}.creator-result strong{color:#fff}.creator-result p{margin:0;color:#dff7ec;line-height:1.55}.creator-result button{justify-self:start;min-height:38px;padding:0 12px;border:1px solid rgba(255,226,130,.58);border-radius:8px;background:#ffe28229;color:#fff4bf;cursor:pointer;font-weight:900}.creator-form{display:grid;grid-template-columns:1fr 48px;gap:8px}.creator-form textarea{min-height:74px;padding:12px;resize:vertical;border:1px solid rgba(255,255,255,.16);border-radius:8px;outline:none;background:#ffffff14;color:#fff;line-height:1.5}.creator-form textarea:focus{border-color:#ffe282b8;box-shadow:0 0 0 4px #ffe2821f}.creator-form button{align-self:end;min-height:48px;border:0;border-radius:8px;background:#ffe282;color:#142235;cursor:pointer}.creator-form button:disabled{cursor:not-allowed;opacity:.5}.library-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.library-heading h2{margin:0;color:#fff;font-size:clamp(2rem,4vw,3.4rem);line-height:1}.library-filters{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 18px}.library-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:10px;margin-bottom:18px}.search-box{display:flex;align-items:center;min-height:40px;gap:8px;padding:0 12px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#ffffff12;color:#a9d5df}.search-box input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#fff}.segmented-control{display:flex;min-height:40px;padding:3px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0f}.segmented-control button{min-width:54px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:#cceef5;cursor:pointer;font-weight:800}.segmented-control button.active{background:#ffe2822e;color:#fff4bf}.library-filters button{min-height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:#ffffff0f;color:#dff7fb;cursor:pointer;font-weight:800}.library-filters button.active{border-color:#ffe282b8;background:#ffe2822b;color:#fff4bf}.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.story-card{display:grid;grid-template-rows:1fr auto;min-height:194px;padding:0;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0e;color:#e8fbff;text-align:left;transition:transform .18s ease,border-color .18s ease,background .18s ease}.story-card:hover,.story-card.active{border-color:#5fc39ab8;background:#5fc39a1f;transform:translateY(-2px)}.story-select{display:grid;width:100%;min-height:152px;padding:16px 16px 8px;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.story-select div,.story-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.story-card span,.story-card-actions span{color:#ffe282;font-size:.82rem;font-weight:900}.story-card small,.story-card-actions small{color:#a9d5df;font-size:.76rem}.story-card strong{margin-top:18px;color:#fff;font-size:1.05rem}.story-card p{display:-webkit-box;margin:8px 0 0;overflow:hidden;color:#cbeaf0;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:3}.story-card-actions{min-height:42px;padding:8px 12px 12px}.story-card-actions div{display:flex;gap:6px}.story-card-actions button{display:grid;width:32px;height:32px;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:#ffffff14;color:#e8fbff;cursor:pointer}.library-empty{display:grid;min-height:190px;place-items:center;grid-column:1 / -1;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff0e;color:#cceef5;text-align:center}.editor-form{display:grid;gap:10px}.editor-form label{display:grid;gap:7px;color:#fff;font-weight:900}.editor-form label>span{font-size:.92rem}.editor-form label>small{color:#a9d5df;font-size:.82rem;font-weight:700;line-height:1.45}.guide-copy{margin:18px 0;color:#d9f5fb;line-height:1.65}.guide-examples,.rule-list,.settings-grid{display:grid;gap:10px}.guide-examples button{display:flex;align-items:center;min-height:48px;gap:10px;padding:10px 12px;border:1px solid rgba(95,195,154,.45);border-radius:8px;background:#5fc39a1f;color:#effff7;cursor:pointer;text-align:left;font-weight:800}.rule-list{margin-top:22px}.rule-list p{display:flex;gap:12px;margin:0;padding:13px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff12;color:#e8fbff;line-height:1.58}.rule-list span{display:grid;flex:0 0 auto;width:26px;height:26px;place-items:center;border-radius:50%;background:#ffe2822e;color:#ffe282;font-weight:900}.settings-grid{margin-top:22px}.settings-grid label{display:grid;gap:8px;color:#e8fbff;font-weight:900}.settings-grid input,.settings-grid select{width:100%;min-height:42px;padding:0 12px;border:1px solid rgba(255,255,255,.16);border-radius:8px;outline:0;background:#ffffff14;color:#fff}.settings-grid select option{color:#142235}.toggle-row{grid-template-columns:1fr auto;align-items:center}.toggle-row input{width:22px;min-height:22px}.result-hero{display:flex;align-items:center;gap:14px}.result-hero svg{color:#ffe282}.result-hero h2{margin:0;color:#fff;font-size:clamp(2rem,4vw,3.4rem);line-height:1}.score-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:22px 0 14px}.score-grid p{display:grid;gap:5px;min-height:92px;margin:0;padding:14px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:#ffffff12}.score-grid strong{align-self:end;color:#fff;font-size:1.35rem}.score-grid span{color:#a9d5df;font-size:.86rem;font-weight:800}.champion-badge{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:14px 0;padding:10px 12px;border:1px solid rgba(244,211,94,.42);border-radius:8px;background:#f4d35e1a;color:#fff0aa;font-size:.88rem;font-weight:800}.champion-badge small{color:var(--text-secondary);font-size:.78rem;font-weight:700}.champion-badge.empty{border-color:var(--line-soft);background:#ffffff12;color:var(--text-secondary)}.result-duration{margin:0 0 12px;color:var(--text-secondary);font-size:.9rem;font-weight:800}.result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.result-actions button{display:inline-flex;align-items:center;min-height:42px;gap:8px;padding:0 13px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#ffffff14;color:#effcff;cursor:pointer;font-weight:900}.editor-row{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.editor-form input,.editor-form select,.editor-form textarea{width:100%;min-width:0;padding:11px 12px;border:1px solid rgba(255,255,255,.16);border-radius:8px;outline:none;background:#ffffff14;color:#fff;line-height:1.5}.editor-form textarea{min-height:86px;resize:vertical}.editor-form select option{color:#142235}.editor-form button{justify-self:start;min-height:42px;padding:0 14px;border:1px solid rgba(95,195,154,.6);border-radius:8px;background:#5fc39a2e;color:#effff7;cursor:pointer;font-weight:900}@keyframes sweep{0%,to{opacity:.18;transform:rotate(-14deg) scaleX(.9)}50%{opacity:.52;transform:rotate(10deg) scaleX(1.08)}}@keyframes drift{0%{transform:translate(-2%)}to{transform:translate(3%)}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:980px){.game-shell{padding:12px}.stage{min-height:calc(100vh - 24px)}.layout,.library-toolbar{grid-template-columns:1fr}.segmented-control{overflow-x:auto}.case-panel{min-height:auto}.host-panel{max-height:none}}@media(max-width:720px){.user-pill,.library-button span{display:none}.library-button{width:40px;justify-content:center;padding:0}.story-grid{grid-template-columns:1fr}.story-card{min-height:150px}.score-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.topbar{padding:12px}.layout{padding:0 12px 12px}.brand{max-width:178px}.soup-tabs,.control-grid{grid-template-columns:1fr}.case-heading{display:grid}h1{font-size:clamp(2.2rem,15vw,4.2rem)}.soup-prompt{font-size:1.18rem}.progress-ring{width:82px}.question-box{grid-template-columns:1fr 46px}.question-box input{height:50px;padding:0 12px}.moon{right:-18px}.editor-row,.score-grid{grid-template-columns:1fr}}:root{--surface-heavy: rgba(14, 30, 34, .72);--surface-medium: rgba(246, 250, 247, .13);--surface-light: rgba(255, 255, 255, .19);--surface-solid: #f6faf7;--text-primary: #f8fffb;--text-secondary: rgba(224, 240, 234, .76);--text-muted: rgba(224, 240, 234, .58);--accent: #f4d35e;--accent-strong: #ffd25f;--mint: #66d2a1;--coral: #ff8977;--ink: #091716;--line-soft: rgba(255, 255, 255, .16);--line-bright: rgba(255, 255, 255, .34);--shadow-panel: 0 24px 70px rgba(0, 18, 18, .36);--shadow-lift: 0 16px 36px rgba(0, 16, 16, .28);--blur-panel: blur(26px) saturate(165%);--blur-small: blur(18px) saturate(155%);font-optical-sizing:auto}html{color-scheme:dark}body{background:#13201e}button,input,select,textarea{-webkit-tap-highlight-color:transparent}button,.story-card,.auth-panel,.case-panel,.host-panel,.library-panel,.creator-panel,.info-panel{will-change:transform,opacity}button{touch-action:manipulation}button:active,.story-card:active{transform:scale(.975);transition-duration:90ms}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(244,211,94,.52);outline-offset:3px}.auth-shell,.game-shell{background:radial-gradient(circle at 12% 8%,rgba(244,211,94,.28),transparent 25rem),radial-gradient(circle at 88% 18%,rgba(102,210,161,.24),transparent 26rem),radial-gradient(circle at 62% 94%,rgba(255,137,119,.16),transparent 24rem),linear-gradient(145deg,#18231f,#15413c 44%,#111a1c)}.auth-shell:before,.game-shell:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);background-size:42px 42px;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.5),transparent 70%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.5),transparent 70%)}.stage{border-color:var(--line-soft);background:linear-gradient(180deg,#ffffff1f,#ffffff0b),#0912126b;box-shadow:var(--shadow-panel);-webkit-backdrop-filter:var(--blur-panel);backdrop-filter:var(--blur-panel)}.topbar{position:sticky;top:0;z-index:3;margin:10px;padding:10px;border:1px solid var(--line-soft);border-radius:8px;background:#0b191985;-webkit-backdrop-filter:var(--blur-small);backdrop-filter:var(--blur-small);box-shadow:0 12px 34px #000c0c38}.topbar:after{content:"";position:absolute;left:10px;right:10px;bottom:-18px;height:18px;pointer-events:none;background:linear-gradient(to bottom,rgba(3,12,12,.26),transparent)}.brand,.user-pill,.library-button,.icon-button,.auth-tabs,.segmented-control,.search-box{border-color:var(--line-soft);background:var(--surface-medium);-webkit-backdrop-filter:var(--blur-small);backdrop-filter:var(--blur-small)}.brand{color:var(--text-primary)}.brand svg,.auth-brand svg,.result-hero svg{color:var(--accent-strong);filter:drop-shadow(0 0 14px rgba(244,211,94,.34))}.library-button{color:#fff4c2;background:#f4d35e29;box-shadow:inset 0 1px #ffffff2e}.icon-button{background:#ffffff1c}.case-panel,.host-panel,.auth-panel,.library-panel,.creator-panel,.info-panel{border-color:var(--line-soft);background:linear-gradient(180deg,#ffffff29,#ffffff13),var(--surface-heavy);box-shadow:var(--shadow-panel);-webkit-backdrop-filter:var(--blur-panel);backdrop-filter:var(--blur-panel)}.case-panel{display:flex;min-height:min(680px,calc(100vh - 150px));flex-direction:column}.host-panel{background:linear-gradient(180deg,#ffffff21,#ffffff0e),#0913149e}.eyebrow,.tag-row span,.host-status span,.fact-strip small,.history-item small,.story-card small,.story-card-actions small,.user-pill small,.editor-form label>small{color:var(--text-secondary)}h1,.auth-brand h1{color:var(--text-primary);font-size:4.6rem;line-height:.98;letter-spacing:0}.library-heading h2,.result-hero h2{color:var(--text-primary);font-size:3rem;letter-spacing:0}.compact-panel .library-heading h2{font-size:2.2rem}.logout-panel>h2{margin:8px 0;color:var(--text-primary);font-size:2rem;line-height:1.1}.logout-panel>p:not(.eyebrow){margin:0;color:var(--text-secondary);line-height:1.55}.logout-confirm-button{border-color:#ff89779e!important;background:#ff89772e!important}.collab-panel{width:min(720px,100%)}.collab-join{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:14px}.collab-join input{min-width:0;min-height:48px;padding:0 12px;border:1px solid var(--line-soft);border-radius:8px;outline:0;background:#ffffff1a;color:var(--text-primary);letter-spacing:0}.collab-join button,.collab-ranking{padding:0 14px;border:1px solid var(--line-soft);border-radius:8px;background:#ffffff1a;color:var(--text-primary);font-weight:800}.collab-players{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.collab-players span,.collab-status{margin:0;padding:8px 10px;border-radius:8px;background:#66d2a124;color:var(--text-primary);font-size:.84rem;font-weight:800}.collab-history{max-height:250px;min-height:100px;margin:14px 0}.collab-ranking{display:grid;gap:6px;margin-top:14px;padding:14px}.collab-ranking p{margin:0;color:var(--text-secondary)}.soup-prompt{color:#f8fffbeb;font-size:1.55rem;line-height:1.58}.tag-row span{border-color:var(--line-soft);background:#ffffff1a}.progress-ring{width:104px;background:radial-gradient(circle at center,rgba(15,30,30,.96) 0 55%,transparent 56%),conic-gradient(var(--accent-strong) var(--progress),rgba(255,255,255,.14) 0);box-shadow:inset 0 1px #ffffff24,0 14px 30px #000c0c3d}.progress-ring span{font-size:1.85rem}.question-box input,.solution-form textarea,.creator-form textarea,.editor-form input,.editor-form select,.editor-form textarea,.settings-grid input,.settings-grid select,.auth-form label div{border-color:#ffffff24;background:#ffffff1c;color:var(--text-primary);box-shadow:inset 0 1px #ffffff1a}.question-box input:focus,.solution-form textarea:focus,.creator-form textarea:focus,.editor-form input:focus,.editor-form select:focus,.editor-form textarea:focus,.settings-grid input:focus,.settings-grid select:focus,.auth-form label div:focus-within{border-color:#f4d35eb3;box-shadow:0 0 0 4px #f4d35e1f,inset 0 1px #ffffff24}.question-box button,.auth-form>button{background:linear-gradient(180deg,#ffe585,#f0c64d);color:var(--ink);box-shadow:inset 0 1px #ffffff57,0 12px 24px #f4d35e38}.control-grid button,.solution-form button,.creator-result button,.editor-form button,.result-actions button,.guide-examples button,.story-card-actions button,.library-filters button,.segmented-control button,.auth-tabs button{transition:transform .16s cubic-bezier(.2,.8,.2,1),background .18s ease,border-color .18s ease,box-shadow .18s ease,opacity .18s ease}.control-grid button{background:#ffffff1b;border-color:var(--line-soft)}.control-grid button:not(:disabled):hover,.solution-form button:not(:disabled):hover,.result-actions button:hover,.guide-examples button:hover,.story-card-actions button:hover,.library-button:hover,.icon-button:hover{border-color:var(--line-bright);box-shadow:var(--shadow-lift);transform:translateY(-1px)}.host-status,.fact-strip,.answer-box,.hint-list p,.empty-state,.history-item,.solution-result,.score-grid p,.rule-list p,.creator-result,.library-empty{border-color:var(--line-soft);background:#ffffff1b;box-shadow:inset 0 1px #ffffff14}.fact-strip p,.history-item p,.empty-state p,.solution-result p,.hint-list p,.answer-box p,.rule-list p,.creator-result p{color:#f8fffbe6}.hint-list span,.answer-box strong,.story-card span,.story-card-actions span,.rule-list span{color:var(--accent-strong)}.solution-result.correct,.history-item.yes{border-color:#66d2a185;background:#66d2a121}.solution-result.incomplete,.history-item.unclear{border-color:#f4d35e7a;background:#f4d35e1a}.history-item.no{border-color:#ff897775;background:#ff89771a}.story-card{border-color:var(--line-soft);background:linear-gradient(180deg,#ffffff21,#ffffff0f),#09191970;box-shadow:0 10px 28px #000e0e2e}.story-card:hover,.story-card.active{border-color:#66d2a19e;background:linear-gradient(180deg,#66d2a130,#fff1),#09191980;box-shadow:var(--shadow-lift)}.story-card strong{color:var(--text-primary);font-size:1.08rem;line-height:1.25}.story-card p{color:#e0f0eac7}.library-overlay,.creator-overlay,.info-overlay{background:#030c0c9e;-webkit-backdrop-filter:blur(12px) saturate(130%);backdrop-filter:blur(12px) saturate(130%);animation:scrimIn .22s cubic-bezier(.2,.8,.2,1)}.library-panel,.creator-panel,.info-panel{animation:materialize .36s cubic-bezier(.2,.8,.2,1)}.chat-message{box-shadow:0 8px 20px #000e0e29}.chat-message.assistant{background:#ffffff1f}.chat-message.user{background:#66d2a133}.moon{background:#fff8dd;opacity:.72}.signal-light{background:#f4d35e3d}.wave{background:#66d2a124}.turtle-shell{background:linear-gradient(120deg,rgba(255,255,255,.24),transparent 42%),repeating-linear-gradient(90deg,transparent 0 24%,rgba(18,95,76,.34) 25% 27%,transparent 28% 52%),#6cd49f}@keyframes materialize{0%{opacity:0;transform:translateY(18px) scale(.985);filter:blur(6px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes scrimIn{0%{opacity:0}to{opacity:1}}@media(max-width:1120px){h1,.auth-brand h1{font-size:3.4rem}.layout{grid-template-columns:minmax(0,1fr) minmax(300px,.72fr)}}@media(max-width:980px){.topbar{align-items:flex-start;flex-direction:column}.round-actions{width:100%;flex-wrap:wrap}h1,.auth-brand h1{font-size:3rem}}@media(max-width:680px){.mobile-game-shell{display:grid;min-height:100dvh;padding:12px 12px 84px;background:linear-gradient(180deg,#09191833,#091918c2),#13201e}.desktop-game-shell{display:contents;padding:0;background:none}.desktop-game-shell .stage{display:contents}.desktop-game-shell .topbar,.desktop-game-shell .layout,.desktop-game-shell .visual-scene{display:none}.desktop-game-shell .library-overlay,.desktop-game-shell .creator-overlay,.desktop-game-shell .info-overlay{position:fixed;z-index:20}.mobile-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;margin-bottom:16px}.mobile-header .eyebrow{margin-bottom:3px;font-size:.75rem}.mobile-header strong{color:var(--text-primary);font-size:1.1rem}.mobile-header-actions{display:flex;flex:0 0 auto;gap:6px}.mobile-header-actions .icon-button{width:36px;height:36px}.mobile-collab-entry{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;width:100%;min-height:50px;margin:-6px 0 16px;padding:0 14px;border:1px solid rgba(102,210,161,.46);border-radius:8px;background:#66d2a124;color:#ecfff5;cursor:pointer;font-weight:900;text-align:left}.mobile-collab-entry small{color:var(--text-secondary);font-size:.76rem;font-weight:700}.mobile-page{min-width:0}.mobile-library-page,.mobile-play-page,.mobile-solve-page,.mobile-create-page{display:grid;align-content:start;gap:16px}.mobile-story-preview,.mobile-focus,.mobile-history-heading,.mobile-solve-page,.mobile-create-page{padding:18px;border:1px solid var(--line-soft);border-radius:8px;background:linear-gradient(180deg,#ffffff21,#ffffff0f),#0919198a;box-shadow:0 14px 36px #000e0e2e}.mobile-story-preview>span{color:var(--accent-strong);font-size:.82rem;font-weight:800}.mobile-story-preview h1,.mobile-solve-page h1,.mobile-create-page h1{margin:10px 0 12px;font-size:2rem;line-height:1.08}.mobile-story-preview>p,.mobile-page-copy{margin:0;color:var(--text-secondary);line-height:1.65}.mobile-story-preview .tag-row{margin:16px 0 0}.mobile-primary-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;gap:8px;border:1px solid rgba(244,211,94,.62);border-radius:8px;background:linear-gradient(180deg,#ffe585,#f0c64d);color:var(--ink);box-shadow:0 12px 24px #f4d35e2e;cursor:pointer;font-weight:900}.mobile-story-switcher{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mobile-story-switcher button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;gap:6px;border:1px solid var(--line-soft);border-radius:8px;background:#ffffff17;color:var(--text-primary);cursor:pointer;font-weight:800}.mobile-case-heading{display:grid;grid-template-columns:minmax(0,1fr) 76px;align-items:start;gap:12px}.mobile-case-heading h1{margin:3px 0 0;font-size:2.2rem;line-height:1.05;overflow-wrap:anywhere}.mobile-case-heading .progress-ring{width:76px}.mobile-case-heading .progress-ring span{font-size:1.4rem}.mobile-case-heading .progress-ring small{margin-left:29px;margin-top:-34px;font-size:.72rem}.mobile-prompt{margin:0;color:#f8fffbf0;font-size:1.2rem;line-height:1.6}.mobile-play-page>.tag-row{margin:-6px 0 0}.mobile-play-page .champion-badge{margin:-4px 0 0}.mobile-focus{padding:13px 14px}.mobile-focus small{color:var(--text-secondary)}.mobile-focus p{margin:5px 0 0;color:var(--text-primary);line-height:1.5}.mobile-question-form{padding:16px;border:1px solid rgba(244,211,94,.35);border-radius:8px;background:#f4d35e14}.mobile-question-form label,.mobile-solution-form label{font-size:.94rem}.mobile-quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mobile-quick-actions button{display:grid;min-height:68px;place-items:center;align-content:center;gap:4px;padding:8px 4px;border:1px solid var(--line-soft);border-radius:8px;background:#ffffff1a;color:var(--text-primary);cursor:pointer;font-size:.73rem;font-weight:800;line-height:1.1;text-align:center}.mobile-quick-actions button:disabled{opacity:.45}.mobile-hint-list{margin-top:-4px}.mobile-history-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:13px 14px}.mobile-history-heading strong{color:var(--text-primary)}.mobile-history-heading span{color:var(--text-secondary);font-size:.8rem;text-align:right}.mobile-history-list{min-height:170px;max-height:none;overflow:visible}.mobile-solve-page,.mobile-create-page{min-height:min(510px,calc(100dvh - 170px))}.mobile-solve-page .eyebrow,.mobile-create-page .eyebrow{margin:0}.mobile-solution-form{margin-top:8px}.mobile-solution-form textarea{min-height:180px}.mobile-solution-form button{width:100%}.mobile-create-page{align-content:start}.mobile-creator-chat{display:grid;gap:12px;min-height:min(420px,calc(100dvh - 280px))}.mobile-creator-chat .creator-chat{min-height:0;max-height:none;margin:0}.mobile-creator-chat .creator-form{position:sticky;bottom:78px;align-items:end;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.mobile-creator-chat .creator-form textarea{min-height:46px;max-height:104px;padding:11px 12px;resize:none;line-height:1.4}.mobile-creator-chat .creator-form button{min-height:46px}.mobile-bottom-nav{position:fixed;z-index:10;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,1fr);min-height:68px;padding:7px max(10px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));border-top:1px solid var(--line-soft);background:#0a1918f0;box-shadow:0 -12px 30px #000c0c3d;-webkit-backdrop-filter:var(--blur-small);backdrop-filter:var(--blur-small)}.mobile-bottom-nav button{display:grid;place-items:center;align-content:center;gap:3px;border:0;border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.72rem;font-weight:800}.mobile-bottom-nav button.active{background:#f4d35e29;color:var(--accent-strong)}.compact-panel .library-heading h2{font-size:1.8rem}.collab-panel{align-self:stretch}.auth-shell,.game-shell{padding:8px}.stage{min-height:calc(100dvh - 16px)}.topbar{position:relative;margin:4px;padding:8px;gap:8px;overflow:hidden}.topbar:after{display:none}.brand{width:100%;max-width:none;min-height:36px;padding:0 10px;font-size:.9rem}.round-actions{width:calc(100% + 16px);margin:0 -8px -4px;padding:0 8px 6px;flex-wrap:nowrap;gap:7px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x proximity}.round-actions::-webkit-scrollbar{display:none}.round-actions>button,.round-actions>.library-button{flex:0 0 40px;scroll-snap-align:start}.user-pill{display:none}.library-button{width:40px;min-height:40px;justify-content:center;padding:0}.library-button span{display:none}.layout{gap:10px;padding:0 4px 4px}.case-panel,.host-panel{padding:14px;border-radius:8px}.case-panel{min-height:0}.case-heading{display:grid;grid-template-columns:minmax(0,1fr) 76px;align-items:start;gap:12px}.progress-ring{width:76px}.progress-ring span{font-size:1.4rem}.progress-ring small{margin-left:29px;margin-top:-34px;font-size:.72rem}h1,.auth-brand h1{font-size:2.15rem;line-height:1.02;overflow-wrap:anywhere}.soup-prompt{margin:20px 0 14px;font-size:1.18rem}.tag-row{margin-bottom:24px}.question-box{grid-template-columns:minmax(0,1fr) 46px;gap:7px}.question-box input{height:50px;padding:0 12px}.solution-form textarea{min-height:96px;padding:12px}.solution-form button{width:100%}.control-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.control-grid button{min-height:58px;padding:6px 4px;flex-direction:column;gap:3px;font-size:.75rem;line-height:1.15;text-align:center}.control-grid button svg{flex:0 0 auto}.host-status{padding:10px}.host-status span{line-height:1.35}.library-overlay,.creator-overlay,.info-overlay{padding:10px}.library-panel,.creator-panel,.info-panel{width:100%;align-self:end;max-height:calc(100vh - 20px);overflow:auto;border-radius:8px}.auth-panel{padding:22px 18px}.auth-brand{align-items:flex-start;gap:10px}.auth-brand h1{font-size:2rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}button:active,.story-card:active{transform:none}}@media(prefers-reduced-transparency:reduce){.stage,.topbar,.case-panel,.host-panel,.auth-panel,.library-panel,.creator-panel,.info-panel,.brand,.user-pill,.library-button,.icon-button,.search-box,.segmented-control{background:#101c1bf5;-webkit-backdrop-filter:none;backdrop-filter:none}}@media(prefers-contrast:more){:root{--line-soft: rgba(255, 255, 255, .48);--text-secondary: rgba(255, 255, 255, .86)}.case-panel,.host-panel,.auth-panel,.library-panel,.creator-panel,.info-panel,.story-card{border-color:#ffffff8f}}
