:root{color:#28344b;font-synthesis:none;--primary:#6868d6;--muted:#647087;--line:#e2e7f1;--mint:#e6f4ee;background:#f4f7fc;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:15px;font-weight:400}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{color:#34415a;cursor:pointer;white-space:normal;background:#fff;border:1px solid #dce2ed;border-radius:13px;min-height:44px;padding:10px 16px;transition:background .18s,transform .18s}button:hover:not(:disabled){background:#f2f1fd;transform:translateY(-1px)}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #9892eb}button:active:not(:disabled){transform:scale(.98)}a{color:#6260c6;text-decoration:none}p{color:#657087;overflow-wrap:anywhere;margin:12px 0;line-height:1.85}h1,h2,h3,h4{letter-spacing:-.035em;overflow-wrap:anywhere;margin:0 0 12px;line-height:1.4}h1{font-size:34px}h2{font-size:24px}h3{font-size:18px}small{color:var(--muted);font-size:12px}b,strong{font-weight:650}label{flex-direction:column;gap:9px;margin:16px 0;font-size:13px;font-weight:550;display:flex}input,textarea,select{color:#28344b;background:#ffffffe6;border:1px solid #dde3ed;border-radius:12px;width:100%;min-width:0;min-height:46px;padding:12px 14px;font-size:16px}textarea{resize:vertical;min-height:94px;line-height:1.6}input[type=checkbox]{width:17px;min-height:17px;accent-color:var(--primary)}input[type=range]{min-height:30px;accent-color:var(--primary);padding:0}input[type=file]{display:none}summary{cursor:pointer;min-height:44px;padding:14px 0;font-size:14px;font-weight:550}details{border-top:1px solid var(--line);margin-top:20px}ul,ol{overflow-wrap:anywhere;padding-left:24px;line-height:1.9}.ambient{z-index:-1;filter:blur(90px);pointer-events:none;border-radius:50%;position:fixed}.ambient-one{opacity:.55;background:#e3dffb;width:600px;height:600px;top:70px;right:-180px}.ambient-two{opacity:.7;background:#daf0e9;width:500px;height:500px;top:400px;left:-240px}.site-header{justify-content:space-between;align-items:center;gap:24px;max-width:1320px;min-height:98px;margin:auto;padding:18px 40px;display:flex}.brand{color:#29364c;letter-spacing:2px;align-items:center;gap:11px;font-size:22px;font-weight:750;display:flex}.brand-mark{color:#fff;background:#7772d5;border-radius:14px 14px 17px 6px;place-items:center;width:43px;height:43px;font-size:23px;display:grid;box-shadow:0 6px 18px #8e89d840}.brand small{letter-spacing:3.3px;margin-top:2px;font-size:8px;display:block}.site-header nav{gap:10px;display:flex}.site-header nav button{color:#68748b;background:0 0;border:0;font-size:13px}.site-header nav button[aria-current=page]{color:#5c57be;background:#eae8fa}.header-note{color:#758198;font-size:12px}.user-menu{border-radius:30px;align-items:center;gap:10px;padding:6px 12px 6px 6px;font-size:12px;display:flex}.user-points{border-left:1px solid var(--line);color:#7970c7;padding-left:10px}.app-shell{max-width:1240px;min-height:calc(100dvh - 230px);margin:22px auto 0;padding:0 24px}.glass{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffbd;border:1px solid #fffffff2;border-radius:25px;padding:28px;box-shadow:0 8px 35px #64748b09,0 1px 2px #6d7d9510}.eyebrow{letter-spacing:2.4px;color:#7e8299;margin-bottom:18px;font-size:10px;font-weight:650;line-height:1.7;display:block}.primary{color:#fff;background:#6c66cd;border-color:#6c66cd;box-shadow:0 6px 16px #6c66cd20}.primary:hover:not(:disabled){background:#5e57bf}.secondary{color:#417e6d;background:#e9f2ef;border-color:#d9e9e3}.full{width:100%}.badge{color:#7367ae;white-space:normal;background:#efedf9;border-radius:9px;align-items:center;gap:5px;padding:5px 10px;font-size:11px;line-height:1.6;display:inline-flex}.badge.green{color:#43876f;background:#e8f5ee}.muted{color:var(--muted);font-weight:400}.mini{background:0 0;border-radius:9px;min-height:32px;padding:5px 9px;font-size:11px}.text-button{color:#6b65c1;background:0 0;border:0;padding-left:0}.actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.notice{color:#64718a;overflow-wrap:anywhere;background:#f2f4fa;border:1px solid #e7eaf3;border-radius:13px;margin:15px 0;padding:14px 16px;font-size:13px;line-height:1.8}.notice.error{color:#8d5135;background:#fff1eb;border-color:#f0d9cd}.avatar{background:#efedfa;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.hero{background:linear-gradient(120deg,#fff9 15%,#f2effb99 60%,#e2eee599);grid-template-columns:.85fr 1.15fr;min-height:422px;padding:16px 18px 16px 48px;display:grid;overflow:hidden}.hero-copy{padding:28px 0}.hero-copy h1{letter-spacing:-2px;margin-top:26px;font-size:48px;font-weight:650;line-height:1.48}.hero-copy h1 span,.welcome-story h1 span{color:#7c75c8}.hero-copy p{margin-top:15px;font-size:14px}.hero-bottom{flex-wrap:wrap;gap:8px;margin-top:28px;display:flex}.hero-bottom .badge{color:#7c8097;background:#ffffff95}.tiny-dot{background:#80b9a6;border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block}.hero-scene{align-self:center;min-width:0;position:relative}.hero-scene .island{height:360px}.scene-caption{text-align:center;margin:4px 0 15px}.scene-caption span{letter-spacing:3px;color:#859690;margin-bottom:5px;font-size:9px;display:block}.scene-caption b{color:#6f827c;font-size:12px;font-weight:500}.island{isolation:isolate;border-radius:22px;justify-content:center;align-items:center;min-width:0;height:340px;display:flex;position:relative;overflow:hidden}.island canvas{touch-action:pan-y!important}.island.compact{height:290px}.island-glow{filter:blur(25px);z-index:-1;background:#bcced338;border-radius:50%;width:65%;height:48%;position:absolute;bottom:12%}.scene-controls{color:#758a89;justify-content:flex-end;align-items:center;gap:5px;font-size:10px;display:flex;position:absolute;bottom:5px;left:12px;right:12px}.scene-controls>span{margin-right:auto}.scene-controls button{background:#ffffff85;border-color:#fff8;min-height:30px}.island-fallback{background:radial-gradient(#e4ece7,#0000 68%);justify-content:center;align-items:center;gap:14px;width:90%;height:260px;font-size:48px;display:flex;position:relative}.island-table{background:linear-gradient(#e8d9bf,#c9b79d);border-bottom:16px solid #b4a893;border-radius:50%;place-items:center;width:220px;height:140px;display:grid;transform:rotate(-10deg);box-shadow:0 30px 0 20px #d8e5dd}.island-table i{color:#9892cf;font-size:28px;position:absolute;top:30px;right:30px}.island-fallback small{letter-spacing:2px;font-size:11px;position:absolute;bottom:5px}.home-actions{grid-template-columns:1fr 1fr .85fr;gap:20px;margin-top:24px;display:grid}.home-actions .glass{padding:28px}.card-number{letter-spacing:1.7px;color:#8b92a5;font-size:9px}.card-title{justify-content:space-between;align-items:center;margin-top:20px;display:flex}.card-title svg{color:#aaa4d5;width:24px}.card-title h2{margin:0;font-size:22px}.home-actions p{font-size:12px}.home-actions label{margin-top:24px;font-size:11px}.code-input{letter-spacing:4px;text-transform:uppercase}.growth-teaser{background:linear-gradient(140deg,#faf8ffaa,#f0effeaa);position:relative}.growth-teaser>svg{color:#aba1d6;margin:20px 0;display:block}.growth-teaser h2{font-size:21px}.teaser-points{align-items:center;gap:12px;margin:23px 0;display:flex}.teaser-points strong{color:#7d71be;font-size:35px}.teaser-points span{color:#8f89a0;font-size:11px}.home-note{align-items:center;gap:20px;padding:25px 14px;display:flex}.home-note>span{white-space:nowrap;color:#838a99;font-size:12px}.home-note p{margin:0;font-size:12px}.site-footer{color:#939caf;border-top:1px solid #e6eaf1;justify-content:space-between;gap:20px;max-width:1192px;margin:32px auto 0;padding:25px 24px 35px;font-size:10px;display:flex}.site-footer i{margin:0 8px}.welcome-layout{grid-template-columns:1.15fr .85fr;align-items:center;gap:60px;max-width:1100px;margin:auto;display:grid}.welcome-layout>*,.hero>*,.growth-layout>*,.lobby-layout>*{min-width:0}.welcome-story h1{font-size:48px;line-height:1.5}.welcome-story>.eyebrow{letter-spacing:2px;font-size:9px}.welcome-story>p{font-size:14px}.welcome-story .island{height:320px;margin-top:-12px}.welcome-tags{color:#7a8698;justify-content:space-between;gap:12px;font-size:10px;display:flex}.welcome-tags span{align-items:center;gap:6px;display:flex}.welcome-card{padding:32px}.welcome-card h2{margin-top:20px}.welcome-card>p{font-size:12px}.portrait-preview{justify-content:center;margin:22px 0;display:flex}.avatar-grid{grid-template-columns:repeat(6,1fr);gap:7px;display:grid}.avatar-grid button{aspect-ratio:1;background:#f3f4f9;border:1px solid #0000;min-width:0;padding:5px;font-size:23px}.avatar-grid button[aria-pressed=true]{background:#e8e3fb;border-color:#a39bda}.file-button{cursor:pointer;color:#746b9c;border:1px dashed #cecfe0;border-radius:12px;justify-content:center;align-items:center;min-height:44px;margin:12px 0;padding:12px 14px;font-size:12px;display:inline-flex}.restore-entry{border-top:1px solid var(--line);color:var(--muted);margin-top:24px;padding-top:18px;font-size:11px}.restore-entry .file-button{text-align:center;border:0;margin:0;display:block}.crop{touch-action:none;cursor:move;background:#fff;border-radius:50%;width:180px;height:180px;position:relative;overflow:hidden}.crop img{pointer-events:none;max-width:none;position:absolute;top:50%;left:50%}.profile-page{max-width:560px;margin:auto}.profile-page>p{font-size:13px}.profile-page>.muted{overflow-wrap:anywhere;font-size:11px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin:30px 0;display:flex}.page-heading h1{font-size:30px}.page-heading p{font-size:13px}.points{background:#f0ebff70;border:1px solid #e6e0f8;border-radius:21px;flex-direction:column;align-items:center;min-width:140px;padding:17px 25px;display:flex}.points strong{color:#7e6ccc;font-size:42px}.points span{color:#8977b3;font-size:11px}.growth-layout{grid-template-columns:1.2fr 1fr;gap:22px;display:grid}.growth-layout>.glass:first-child{padding:12px}.growth-options{grid-template-columns:repeat(4,1fr);gap:9px;margin:10px;display:grid}.growth-options button{background:0 0;border:1px solid #0000;padding:16px 6px}.growth-options button[aria-pressed=true]{background:#efedfb;border-color:#dfd9f5}.growth-options span{color:#988bc5;margin-bottom:10px;font-size:25px;display:block}.growth-options b{font-size:13px;display:block}.growth-options small{margin-top:7px;display:block}.growth-detail{padding:35px;position:relative;overflow:hidden}.growth-detail h2{font-size:28px}.growth-detail p{font-size:12px}.level-nodes{gap:7px;margin:25px 0;display:flex}.level-nodes span{background:#e8e5f3;border-radius:5px;width:28px;height:5px}.level-nodes .lit{background:#8d7acb}.upgrade-compare{justify-content:space-between;align-items:center;padding:8px 0 20px;display:flex}.upgrade-compare>div{flex-direction:column;gap:12px;display:flex}.upgrade-compare strong{font-size:29px;font-weight:500}.upgrade-compare>div:last-child strong{color:#7b69c1}.upgrade-compare>span{color:#a7a2be;font-size:22px}.growth-feedback{color:#7b67b7;text-align:center;min-height:45px;padding:16px 0;font-size:12px}.preference-row{gap:20px;display:flex}.preference-row label,.inline-label{flex-direction:row;align-items:center;font-size:12px;font-weight:400}.volume{color:var(--muted);flex-direction:row;align-items:center;margin-bottom:0;font-size:11px}.volume input{max-width:150px;margin-left:auto}.backup-row{justify-content:space-between;align-items:center;gap:20px;margin:24px 0;display:flex}.backup-row p{font-size:11px}.backup-row .actions{margin:0}.history h3 .muted{margin-left:10px;font-size:12px}.history-row{border-top:1px solid var(--line);align-items:center;gap:20px;padding:18px 0;display:flex}.history-row>div{flex:1}.history-row small{margin-top:7px;display:block}.history-row b{font-size:14px}.celebrate:after{content:"";pointer-events:none;border:2px solid #aa98e0;border-radius:50%;width:40px;height:40px;animation:1.1s ease-out forwards ring;position:absolute;top:40%;left:50%}.celebrate .growth-feedback{animation:.85s ease-out float}.celebrate .level-nodes .lit:last-child{box-shadow:0 0 16px #b9a4f2}@keyframes ring{to{opacity:0;transform:translate(-50%,-50%)scale(15)}}@keyframes float{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.room-heading{justify-content:space-between;align-items:center;gap:15px;margin:18px 0 24px;display:flex}.room-heading .eyebrow{margin-bottom:5px}.room-heading h1{margin:0;font-size:27px}.invite{align-items:center;gap:12px;display:flex}.invite button{font-size:12px}.invite b{letter-spacing:2px;margin-left:6px}.lobby-layout{grid-template-columns:1.2fr 1fr;gap:22px;display:grid}.lobby-main{text-align:center;align-self:start}.section-label{letter-spacing:1px;color:#8a91a5;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;font-size:10px;display:flex}.lobby-main h2{margin-top:12px;font-size:24px}.lobby-main>p{font-size:12px}.lobby-main .actions{justify-content:center}.members{text-align:left;margin:25px 0}.member{border-bottom:1px solid #edf0f6;align-items:center;gap:12px;padding:12px 0;display:flex}.member>div{flex:1;min-width:0}.member b{overflow-wrap:anywhere;font-size:13px}.member small{font-size:10px}.member>div>small{margin-top:6px;display:block}.lobby-side{flex-direction:column;gap:20px;display:flex}.host-setup p{font-size:11px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid label{margin-top:10px}.segmented{flex-wrap:wrap;gap:6px;display:flex}.segmented button{background:#f5f5fa;border-color:#0000;flex:1;padding:10px;font-size:13px}.segmented button[aria-pressed=true]{color:#6e58ae;background:#e8e4f9;border-color:#bdb4e2}.budget-totals{justify-content:space-between;gap:10px;display:flex}.budget-totals>div{flex-direction:column;gap:7px;display:flex}.budget-totals strong{color:#7d75bb;font-size:28px;font-weight:550}.budget-totals small,.budget p{font-size:10px}.budget-row{border-top:1px solid #edf0f6;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;font-size:12px;display:flex}.budget-row span>small{margin-top:4px;font-size:9px;display:block}.budget-row>small{font-size:10px}.role-picker{grid-column:1/-1}.roles{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;display:grid}.role-card{text-align:left;background:#fdfdff;border-color:#e7e8f0;border-radius:18px;flex-wrap:wrap;align-content:start;gap:12px;padding:18px;display:flex;position:relative}.role-card[aria-pressed=true]{background:linear-gradient(140deg,#f7f3ff,#efedf9);border-color:#a9a0da}.role-icon{background:#f1edf8;border-radius:15px;place-items:center;width:51px;height:51px;font-size:32px;display:grid}.role-card>div{flex:1;align-self:center;min-width:70px}.role-card b{overflow-wrap:anywhere;font-size:15px;display:block}.role-card small{margin-top:5px;font-size:10px;line-height:1.6;display:block}.role-card p{min-height:59px;margin:0;font-size:11px}.role-card>small{min-height:40px;font-size:10px}.selected-mark{color:#8270bb;font-size:9px;position:absolute;top:9px;right:9px}.resource-bar{z-index:8;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#f7f8fdef;border:1px solid #e8e9f3;border-radius:16px;flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:15px;padding:15px 20px;font-size:12px;display:flex;position:sticky;top:0}.resource-bar b{color:#7366b7;font-size:18px}.sync-dot{color:#62917d;margin-left:auto;font-size:10px}.room-tabs{gap:7px;margin-bottom:20px;display:flex}.room-tabs button{color:#71809a;background:#e9edf570;border:0;flex:1}.room-tabs button[aria-pressed=true]{color:#7662b0;background:#e8e4f7}.game-layout{grid-template-columns:235px minmax(0,1fr);gap:23px;display:grid}.desktop-sidebar{text-align:center;align-self:start;padding:24px}.desktop-sidebar h3{margin-top:12px;font-size:16px}.desktop-sidebar>p{font-size:11px}.mini-members{margin:25px 0}.mini-members>div{text-align:left;align-items:center;gap:8px;margin:12px 0;font-size:11px;display:flex}.mini-members>div>span:nth-child(2){overflow-wrap:anywhere;flex:1}.mini-members b{font-size:12px}.mini-members small{font-size:9px}.game-content{min-width:0;min-height:440px;padding:35px}.game-content h2{font-size:24px}.story-title{margin:28px 0;font-size:32px!important}.story-surface{color:#424c64;white-space:pre-wrap;font-size:19px;line-height:2.15}.attribution{color:#9096a6;margin:28px 0;font-size:10px}.public-hints{border-top:1px solid var(--line);margin-top:20px;padding-top:24px}.public-hints>p{font-size:12px}.public-hints h3 small{margin-left:8px}.hint{color:#527966;background:#f0f5ef;border:1px solid #e5ede4;border-radius:13px;margin:12px 0;padding:14px 18px;font-size:13px;line-height:1.8}.hint p{color:inherit;margin:0 0 10px}.answer-reveal{background:#f2eff9;border:1px solid #e8e1f6;border-radius:16px;margin-top:20px;padding:24px}.answer-reveal p{color:#65587c;font-size:15px}.answer-reveal li{font-size:13px}.question-record{border-bottom:1px solid var(--line);padding:23px 0}.question-record .section-label{margin:0}.question-record p{color:#414d64;font-size:16px}.question-record .badge{margin-right:6px}.question-record.undone{opacity:.55}.question-record.undone p{text-decoration:line-through}.empty{text-align:center;color:#8d95a5;padding:65px 20px}.empty>span{color:#b5adcf;font-size:44px;display:block}.empty p{font-size:13px}.chat-list{flex-direction:column;gap:15px;margin:25px 0;display:flex}.chat-message{background:#f2f4f9;border-radius:16px 16px 16px 4px;align-self:flex-start;min-width:140px;max-width:90%;padding:13px 18px}.chat-message>div{justify-content:space-between;gap:20px;display:flex}.chat-message b{color:#66748b;font-size:11px}.chat-message small{font-size:9px}.chat-message p{color:#45526b;white-space:pre-wrap;margin:8px 0;font-size:14px}.chat-message.own{background:#eeebf9;border-radius:16px 16px 4px;align-self:flex-end}.chat-message.system{background:#edf4ef;border-radius:10px;align-self:center;max-width:95%;font-size:11px}.chat-message.system p{font-size:12px}.action-cards{grid-template-columns:1fr 1fr;gap:16px;margin:20px 0;display:grid}.action-cards>div{background:#f6f6fc;border-radius:16px;padding:20px}.action-cards p{font-size:12px}.action-cards button{width:100%;margin-top:8px;font-size:12px}.host-player{border-top:1px solid var(--line);margin-top:25px;padding-top:12px}.private-note{font-size:12px}.score-editor{background:#f7f7fc;border-radius:15px;margin-top:18px;padding:18px}.score-editor .actions{justify-content:space-between}.score-result{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:13px 0;font-size:13px;display:flex}.settlement{border-top:1px solid var(--line);margin-top:30px;padding-top:25px}.settlement>button{margin-top:20px}.pending-banner{color:#8466a2;background:#efe9fa;border:1px solid #e4d9f2;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;margin:20px 0;padding:13px 20px;font-size:12px;display:flex}.pending-banner button{min-height:34px;font-size:11px}.composer{z-index:7;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#fafbffef;border:1px solid #e1e4ef;border-radius:18px;margin-top:24px;position:sticky;bottom:0;box-shadow:0 -5px 25px #8990a210}.composer-info{color:#8c92a5;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;font-size:10px;display:flex}.composer-info label{flex-direction:row;align-items:center;margin:0;font-size:11px}.composer-main{align-items:stretch;gap:12px;display:flex}.composer textarea{resize:none;background:#fff;height:60px;min-height:60px;max-height:160px;font-size:16px}.send-actions{flex:none;gap:8px;display:flex}.send-actions button{padding:12px 20px;font-size:13px}.room-footer{justify-content:space-between;align-items:center;margin-top:14px;font-size:11px;display:flex}.room-footer small{font-size:10px}.sync-caption{text-align:right;color:#8b9a9c;font-size:10px;display:block}.modal-shade{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:50;background:#38456345;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:#fcfcff;border:1px solid #fff;border-radius:25px;width:100%;max-width:570px;max-height:calc(100dvh - 48px);padding:30px;overflow-y:auto;box-shadow:0 24px 80px #222a4140}.modal h2{font-size:23px}.modal>p{font-size:14px}.modal .actions{justify-content:flex-end}.pending-question{color:#61527b;white-space:pre-wrap;background:#f1eef9;border-radius:14px;padding:20px;font-size:18px!important}.library-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.story-card{flex-direction:column;align-items:flex-start;gap:7px;display:flex}.story-card p{font-size:12px}.story-card small{line-height:1.9}.story-card .badge{margin-top:18px}.book-decoration{color:#fff;background:linear-gradient(135deg,#dcdeee,#d3dfd5);border-radius:13px;place-items:center;width:100%;height:135px;margin-bottom:20px;font-size:70px;display:grid}.candidates{margin-top:24px}.candidates p{font-size:13px}.toast{left:50%;bottom:calc(25px + env(safe-area-inset-bottom));z-index:100;color:#fff;overflow-wrap:anywhere;background:#35364a;border-radius:14px;align-items:center;gap:14px;max-width:min(580px,100% - 32px);padding:13px 17px;font-size:13px;line-height:1.7;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 40px #31314730}.toast button{color:#fff;border-color:#ffffff35;flex-shrink:0}.loading-orb{border:3px solid #ddd8ef;border-top-color:#8a7cc8;border-radius:50%;width:30px;height:30px;margin-bottom:15px;animation:1s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media (width>=1600px){.app-shell{margin-top:35px}}@media (width<=1000px){.site-header{gap:14px;padding:18px 25px}.site-header nav{gap:0}.site-header nav button{padding:10px;font-size:12px}.user-menu>span:nth-child(2){display:none}.welcome-layout{gap:25px}.welcome-story h1{font-size:38px}.home-actions{grid-template-columns:1fr 1fr}.growth-teaser{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:24px;display:flex}.growth-teaser>svg,.growth-teaser h2,.growth-teaser p,.teaser-points{margin:0}.growth-teaser .card-number{width:100%}.hero-copy h1{font-size:41px}.hero{padding-left:30px}.roles{grid-template-columns:repeat(3,1fr)}.game-layout{grid-template-columns:190px minmax(0,1fr)}.desktop-sidebar{padding:18px}.game-content{padding:26px}.growth-layout{grid-template-columns:1fr 1fr}.growth-detail{padding:25px}.backup-row{flex-direction:column;align-items:flex-start}.welcome-tags{flex-wrap:wrap}.library-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.site-header{flex-wrap:wrap;gap:10px;min-height:76px;padding:16px 18px 10px}.brand{gap:8px;font-size:19px}.brand-mark{border-radius:12px;width:37px;height:37px;font-size:21px}.brand small{font-size:7px}.site-header nav{order:3;justify-content:center;gap:4px;width:100%;margin-top:8px}.site-header nav button{min-height:38px;padding:8px 12px;font-size:11px}.header-note{font-size:10px}.user-menu{background:#fff9;border:0;margin-left:auto;padding:4px 8px 4px 4px}.app-shell{margin-top:12px;padding:0 14px}.glass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:22px}.hero{grid-template-columns:1fr;min-height:0;padding:28px 26px 12px;position:relative}.hero-copy{z-index:1;pointer-events:none;padding:0}.hero-copy h1{margin-top:18px;font-size:38px;line-height:1.5}.hero-copy h1 br{display:none}.hero-copy h1 span{display:block}.hero-copy p{font-size:12px}.hero-copy .eyebrow{margin:0;font-size:9px}.hero-bottom{gap:6px;margin-top:18px}.hero-bottom .badge{font-size:9px}.hero-scene{margin-top:-5px}.hero-scene .island{height:250px}.scene-caption{margin:5px 0}.scene-caption span{font-size:8px}.scene-caption b{font-size:10px}.home-actions{grid-template-columns:1fr;gap:14px;margin-top:16px}.home-actions .glass{padding:24px}.card-title{margin-top:14px}.card-title h2{font-size:21px}.home-actions label{margin-top:18px}.home-actions p{font-size:12px}.growth-teaser{grid-column:auto;gap:14px}.growth-teaser>svg{width:25px}.growth-teaser h2{flex:1;font-size:20px}.growth-teaser>p{width:100%}.teaser-points{flex:1}.home-note{align-items:flex-start;gap:12px;padding:20px 5px}.home-note>span{padding-top:3px;font-size:10px}.home-note p{font-size:10px}.site-footer{margin-top:22px;padding:22px 18px;font-size:9px}.site-footer>span:last-child{display:none}.welcome-layout{grid-template-columns:1fr;gap:20px}.welcome-story{padding:15px 10px 0}.welcome-story h1{font-size:35px;line-height:1.45}.welcome-story h1 br{display:none}.welcome-story>p{margin-top:10px;font-size:12px}.welcome-story>.eyebrow{letter-spacing:1.5px;font-size:8px}.welcome-story .island{pointer-events:none;height:210px;margin:-70px -15px -15px 105px;position:relative}.welcome-story .scene-controls,.welcome-tags{display:none}.welcome-card{padding:25px}.welcome-card h2{font-size:24px}.avatar-grid{gap:8px}.portrait-preview{margin:20px 0}.page-heading{align-items:flex-start;margin:22px 3px}.page-heading h1{font-size:25px}.page-heading p{font-size:11px}.page-heading .eyebrow{letter-spacing:1.5px;margin-bottom:10px;font-size:8px}.points{border-radius:17px;min-width:85px;padding:10px 14px}.points strong{font-size:31px}.points span{font-size:9px}.growth-layout{grid-template-columns:1fr;gap:16px}.growth-layout .island{height:270px}.growth-options{gap:4px;margin:2px}.growth-options button{padding:12px 4px}.growth-options b{font-size:12px}.growth-options small{font-size:10px}.growth-detail{padding:26px}.growth-detail h2{font-size:25px}.upgrade-compare strong{font-size:28px}.backup-row{gap:4px;margin:18px 0;padding:22px}.backup-row h3{font-size:17px}.backup-row .actions{gap:8px;width:100%}.backup-row .actions>button,.backup-row .file-button{white-space:nowrap;flex:1;font-size:11px}.history-row{gap:10px}.history-row strong{font-size:13px}.history-row .badge{padding:4px 7px;font-size:9px}.history-row small{font-size:9px}.room-heading{flex-direction:column;align-items:flex-start;gap:13px;margin:12px 2px 18px}.room-heading h1{font-size:25px}.room-heading .eyebrow{font-size:9px}.invite{justify-content:space-between;gap:8px;width:100%}.invite button{font-size:11px}.lobby-layout{grid-template-columns:1fr;gap:16px}.lobby-main{padding:22px}.island.compact{height:250px}.lobby-main h2{font-size:22px}.lobby-main>p{font-size:11px}.lobby-side{gap:16px}.role-picker{padding:20px}.roles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.role-card{border-radius:15px;gap:8px;padding:13px}.role-icon{width:39px;height:39px;font-size:25px}.role-card>div{min-width:60px}.role-card b{font-size:13px}.role-card p{min-height:65px;font-size:10px}.role-card small{font-size:9px}.selected-mark{font-size:8px;top:5px;right:6px}.section-label{gap:8px;font-size:9px}.resource-bar{border-radius:12px;gap:10px;margin-left:-3px;margin-right:-3px;padding:11px 13px;font-size:10px}.resource-bar b{font-size:15px}.resource-bar small{font-size:10px}.resource-bar .sync-dot{font-size:9px}.room-tabs{gap:5px;margin:12px -3px}.room-tabs button{border-radius:10px;padding:10px 7px;font-size:12px}.game-layout{grid-template-columns:minmax(0,1fr)}.desktop-sidebar{display:none}.game-content{min-height:360px;padding:22px}.game-content h2{font-size:22px}.story-title{margin:25px 0 18px;font-size:27px!important}.story-surface{font-size:17px;line-height:2}.attribution{margin:20px 0;font-size:9px}.public-hints h3{font-size:16px}.public-hints>p{font-size:11px}.answer-reveal{padding:18px}.answer-reveal p{font-size:14px}.question-record p{font-size:15px}.action-cards{grid-template-columns:1fr;gap:12px}.action-cards>div{padding:18px}.pending-banner{padding:11px 14px;font-size:11px}.composer{padding:10px 10px calc(10px + env(safe-area-inset-bottom));border-radius:15px;margin:18px -4px 0}.composer-main{flex-direction:column;gap:8px}.composer textarea{height:58px;min-height:58px;font-size:16px}.send-actions{grid-template-columns:1fr 1.35fr;gap:8px;display:grid}.send-actions button{min-height:44px;padding:10px;font-size:13px}.composer-info{gap:6px;font-size:9px}.composer-info label{font-size:10px}.room-footer{gap:15px}.room-footer small{font-size:9px}.room-footer button{font-size:11px}.chat-message{max-width:95%;padding:12px 14px}.chat-message p{font-size:14px}.modal-shade{align-items:flex-end;padding:12px}.modal{padding:24px 20px calc(24px + env(safe-area-inset-bottom));border-radius:22px;max-height:calc(100dvh - 24px)}.modal h2{font-size:22px}.modal .segmented button{padding:9px 6px;font-size:12px}.modal .actions{gap:8px}.modal .actions button{flex:1;padding:11px 8px;font-size:12px}.modal .notice{font-size:11px}.pending-question{padding:17px;font-size:16px!important}.score-editor{padding:15px}.score-editor label{font-size:12px}.library-grid{grid-template-columns:1fr}.book-decoration{height:120px}.candidates{padding:22px}.candidates p{font-size:12px}.candidates .file-button{margin-left:10px}.toast{bottom:calc(18px + env(safe-area-inset-bottom));padding:12px 14px;font-size:12px}.profile-page{padding:24px}.profile-page h1{font-size:28px}.notice{font-size:12px}.form-grid{gap:10px}.form-grid label{font-size:12px}}@media (width<=359px){.site-header{padding:13px 13px 8px}.site-header nav button{padding:7px 8px;font-size:10px}.app-shell{padding:0 10px}.hero{padding:24px 21px 12px}.hero-copy h1{font-size:34px}.hero-scene .island{height:220px}.glass{padding:19px}.welcome-story h1{font-size:31px}.avatar-grid{gap:5px}.avatar-grid button{min-height:39px;font-size:21px}.roles{gap:8px}.role-card{padding:11px}.role-icon{width:34px;height:34px}.role-card>div{min-width:50px}.role-card b{font-size:12px}.role-card p{min-height:80px}.resource-bar{gap:7px}.resource-bar .sync-dot{display:none}.game-content{padding:18px}.growth-options b{font-size:11px}.composer-info{font-size:8px}.invite button{padding:9px 10px}.budget-totals strong{font-size:24px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.glass{background:#fbfcff}.composer{background:#fafbff}}.host-mode{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;display:flex}.host-mode label{min-width:180px;margin-left:auto}.host-mode p{flex-basis:100%;margin:0}.manage-members{max-height:55vh;margin-bottom:18px;overflow-y:auto}.manage-members .member,.members .member{flex-wrap:wrap}.story-stage{min-height:320px;position:relative}.story-reading{overscroll-behavior:contain;scrollbar-width:thin;align-self:start;max-height:62dvh;padding-right:10px;position:sticky;top:16px;overflow:auto}.story-reading .story-title{margin-top:16px}.story-stage.window-open{grid-template-columns:minmax(0,1fr) minmax(270px,38%);gap:22px;display:grid}.game-window{background:#fcfcff;border:1px solid #ddd8eb;border-radius:18px;align-self:start;min-width:0;position:sticky;top:16px;overflow:hidden;box-shadow:0 12px 32px #766b9420}.window-heading{background:#eeeaf8;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;font-size:13px;display:flex}.window-scroll{overscroll-behavior:contain;scrollbar-width:thin;max-height:53dvh;padding:16px;overflow:auto}.window-scroll h2{margin-top:0;font-size:18px}.window-scroll .chat-list{max-height:none;overflow:visible}.story-stage .settlement{grid-column:1/-1}.ai-status{color:#6e6288;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;font-size:13px;display:flex}.ai-status:empty{display:none}.clarification-card{background:#fff9e9;border:1px solid #eddbab;border-radius:16px;margin-top:16px;padding:18px}.game-window .chat-message p{white-space:pre-wrap}@media (width>=1100px){.game-layout:has(.window-open){grid-template-columns:minmax(0,1fr)}.game-layout:has(.window-open) .desktop-sidebar{display:none}}@media (width<=1099px){.story-stage.window-open{grid-template-columns:minmax(0,1fr);gap:14px}.window-open .story-reading{max-height:34dvh}.window-scroll{max-height:28dvh}.story-reading{max-height:52dvh}.game-window{position:relative;top:0}.story-stage{padding:18px}}.in-round{flex-direction:column;display:flex}.in-round>.host-mode{order:8;margin-top:20px}.in-round>.room-footer{order:9}.in-round .game-layout{order:0}.in-round .story-stage{scroll-margin-top:12px}.in-round .room-heading{margin-bottom:10px}.in-round .room-heading h1{margin:8px 0;font-size:24px}.in-round .composer{margin-top:12px;position:relative;bottom:auto}.in-round .room-tabs,.in-round .pending-banner{margin:10px 0}@media (width<=700px){.in-round .story-stage{min-height:0;padding:14px}.in-round .story-reading{max-height:44dvh;position:relative;top:0}.in-round .window-open .story-reading{max-height:28dvh}.in-round .window-scroll{max-height:24dvh}.in-round .story-title{margin:10px 0;font-size:24px!important}.in-round .story-surface{font-size:15px;line-height:1.9}.in-round .ai-status{font-size:11px}.in-round .composer-info{display:none}.in-round .composer-main{flex-direction:row;gap:8px}.in-round .send-actions{flex-direction:column;gap:4px;display:flex}.in-round .send-actions button{white-space:nowrap;min-height:35px;padding:6px 9px;font-size:11px}.in-round .composer textarea{height:76px;min-height:76px}:is(body:has(.in-round) .site-header,body:has(.in-round) .sync-caption){display:none}body:has(.in-round) .app-shell{padding-top:10px}.in-round .room-heading{gap:8px}.in-round .room-heading h1{font-size:20px}.in-round .room-heading .eyebrow{font-size:9px}.in-round .invite button{min-height:36px;padding:6px 10px}.in-round .room-tabs{flex-wrap:nowrap;gap:3px}.in-round .room-tabs button{padding:8px;font-size:11px}.in-round .story-stage .public-hints h3{font-size:14px}}.in-round .room-tabs{z-index:7;background:#f5f4fc;border-radius:12px;scroll-margin-top:58px;position:sticky;top:58px}.restoration-progress{background:#f4f1fb;border:1px solid #dfd9ee;border-radius:12px;margin:12px 0;padding:10px 12px}.restoration-progress>div{color:#6c5b93;justify-content:space-between;font-size:12px;display:flex}.restoration-progress progress{accent-color:#8871c2;border:0;border-radius:12px;width:100%;height:9px;margin:8px 0;display:block;overflow:hidden}.restoration-progress progress::-webkit-progress-bar{background:#e4def1}.restoration-progress progress::-webkit-progress-value{background:#8871c2;transition:width .35s}.restoration-progress small{color:#80758f;font-size:10px;display:block}.restoration-progress button{margin-top:8px}.final-feedback{background:#fff9e9;border:1px solid #ecdfb8;border-radius:12px;margin:12px 0;padding:12px;font-size:13px}.final-feedback p{font-size:12px}
