@font-face{font-family:"Libre Franklin";src:url("/static/fonts/LibreFranklin-VariableFont_wght.ttf") format("truetype");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Libre Franklin";src:url("/static/fonts/LibreFranklin-Italic-VariableFont_wght.ttf") format("truetype");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"Libre Baskerville";src:url("/static/fonts/LibreBaskerville-VariableFont_wght.ttf") format("truetype");font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:"Libre Baskerville";src:url("/static/fonts/LibreBaskerville-Italic-VariableFont_wght.ttf") format("truetype");font-weight:400 700;font-style:italic;font-display:swap}
@font-face{font-family:"Dela Gothic One";src:url("/static/fonts/DelaGothicOne-Regular.ttf") format("truetype");font-display:swap}
@font-face{font-family:"Freeman";src:url("/static/fonts/Freeman-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
:root{--ink:#231b17;--ink-soft:#594d43;--paper:#f1e6cf;--paper-light:#fbf4e4;--paper-deep:#ded0b5;--teal:#012626;--teal-2:#063c39;--teal-3:#0b4a45;--ochre:#d9842f;--ochre-bright:#f29441;--brick:#a64833;--red:#bf3030;--green:#47735a;--line-paper:rgba(66,45,29,.2);--line-dark:rgba(233,202,139,.2);--focus:#f2a94a;--radius-sm:3px;--radius:7px;--radius-lg:12px;--shadow-paper:0 18px 50px rgba(31,19,10,.18);--shadow-dark:0 24px 70px rgba(0,0,0,.34);--ui:"Libre Franklin",Arial,sans-serif;--reader:"Libre Baskerville",Georgia,serif;--display:"Dela Gothic One","Arial Black",sans-serif;--gold:#d69b4b;--muted:#75695f;--text:var(--ink);--bg:#dfd0b5;--panel:var(--paper-light);--line:var(--line-paper)}
*{scrollbar-color:#9a7444 transparent}html{background:var(--teal)}body{font:14px/1.6 var(--ui);color:var(--ink);background:radial-gradient(circle at 20% 0,rgba(255,248,226,.88),transparent 34rem),linear-gradient(115deg,#e7d9bf,#cdbb9d);letter-spacing:.005em}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.13;background-image:repeating-linear-gradient(0deg,rgba(45,26,13,.09) 0,rgba(45,26,13,.09) 1px,transparent 1px,transparent 4px);mix-blend-mode:multiply}header{height:82px;padding:13px clamp(18px,4vw,52px);background:var(--teal);border-bottom:1px solid rgba(235,190,111,.38);box-shadow:0 6px 24px rgba(0,0,0,.18);position:relative;z-index:5}.brand{gap:16px}.brand>img{width:174px;height:52px;object-fit:contain;object-position:left center}.brand-copy{display:none}.header-actions button{background:transparent;color:#ecd7ae;border-color:rgba(236,215,174,.38)}main{max-width:1260px;padding:54px clamp(16px,4vw,54px) 80px}.hero{text-align:left;margin:0 auto 35px;max-width:1120px;border-bottom:1px solid rgba(64,44,29,.24);padding-bottom:24px}.eyebrow{font:700 10px/1.2 var(--ui);letter-spacing:.18em;color:#9c572c}.hero h1,.book-title h1{font:700 clamp(34px,5vw,62px)/1.02 var(--reader);letter-spacing:-.035em;color:#211814;margin:7px 0 10px}.hero p{max-width:670px;color:#66594e;font-size:15px}.hero:after{content:"◆";display:block;color:var(--ochre);font-size:9px;margin-top:16px}.library{grid-template-columns:repeat(auto-fit,minmax(260px,330px));gap:28px;justify-content:start;max-width:1120px;margin:auto}.book,.empty{border:1px solid rgba(62,38,22,.28);border-radius:var(--radius-sm);background:var(--paper-light);box-shadow:var(--shadow-paper);position:relative}.book{overflow:visible;transition:transform .2s ease,box-shadow .2s ease}.book:hover{transform:translateY(-5px) rotate(-.15deg);box-shadow:0 24px 65px rgba(31,19,10,.24)}.book:before{content:"";position:absolute;left:-5px;top:10px;bottom:10px;width:5px;background:#75513a;border-radius:3px 0 0 3px;box-shadow:inset -2px 0 rgba(0,0,0,.22)}.cover{border-radius:2px 2px 0 0;filter:saturate(.82) contrast(1.03)}.book-info{padding:20px 20px 23px}.book h2{font:700 22px/1.2 var(--reader);color:#261b16;margin:7px 0}.book p{color:#61554b}.meta{color:#7d6e60;font:600 10px/1.4 var(--ui);letter-spacing:.05em;text-transform:uppercase}button{font-family:var(--ui);border-radius:var(--radius-sm);background:var(--ochre);border:1px solid #aa552a;color:#1e1712;letter-spacing:.015em;box-shadow:none;transition:background .16s,transform .16s,border-color .16s}button:hover{background:var(--ochre-bright);transform:translateY(-1px)}button:active{transform:translateY(0)}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.open{width:100%;margin-top:15px}.empty{grid-column:1/-1;padding:48px 30px;border-style:dashed}.reader{max-width:1180px}.back,.secondary,.view-profile,.view-world,.reset-game,.export-save,.session-transfer button{background:transparent;color:#4d392c;border-color:rgba(61,39,25,.36)}.back{margin:0 0 20px;padding-left:0;border:0;border-bottom:1px solid rgba(68,43,27,.34);border-radius:0}.back:hover{background:transparent;color:var(--brick)}.book-title{margin-bottom:22px}.book-title h1{font-size:clamp(32px,5vw,54px)}.book-landing,.scene-shell,.game-stage{border-radius:var(--radius);border:1px solid rgba(64,39,22,.32);background:var(--paper);box-shadow:var(--shadow-paper)}.book-landing{min-height:570px;place-items:end start;padding:clamp(22px,5vw,58px)}.book-landing:before{filter:saturate(.72) contrast(1.05) brightness(.56);transform:scale(1.02)}.book-landing:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(1,38,38,.94) 0%,rgba(1,38,38,.72) 48%,rgba(1,38,38,.1) 100%)}.book-landing-card{width:min(590px,100%);border:1px solid rgba(235,197,126,.42);border-radius:var(--radius-sm);background:rgba(251,244,228,.96);box-shadow:var(--shadow-dark);color:var(--ink)}.book-landing-card h2{font:700 32px/1.15 var(--reader);color:var(--ink)}.book-landing-card>p{font-family:var(--reader);color:#4b4038;line-height:1.75}.landing-status,.starting-equipment{border-radius:var(--radius-sm);background:#eadfc8;border-color:rgba(74,49,30,.22);color:#66594f}.creation{grid-template-columns:260px 1fr}.scene-shell:before{filter:saturate(.65) brightness(.32)}.creator-form,.portrait-panel{border-radius:var(--radius-sm);background:rgba(251,244,228,.96);color:var(--ink);border:1px solid rgba(77,49,28,.24)}.creator-form h2{font:700 32px/1.15 var(--reader);color:var(--ink)}.creator-form>p,.portrait-panel small{color:#665b52}.creator-form label{color:#483b31;font-weight:650}.creator-form input,.creator-form select,.creator-form textarea,.dialog-panel textarea{background:#fffaf0;border:1px solid #ad9b81;border-radius:var(--radius-sm);color:var(--ink);padding:11px 12px}.creator-form input:hover,.creator-form select:hover,.creator-form textarea:hover,.dialog-panel textarea:hover{border-color:#806c50}.boundary,fieldset,.portrait-choice,.starting-equipment{background:#eee1c8;color:#4e4034;border-color:#b79b6d;border-radius:var(--radius-sm)}.traits label{background:#f7edd9;border:1px solid rgba(83,54,33,.18);padding:8px;border-radius:3px}.portrait-placeholder{border-radius:2px;border-color:#907b5c;background:#d8c9ad;color:#66584b}.game-stage{grid-template-columns:238px minmax(0,1fr);height:min(800px,calc(100vh - 180px));background:var(--paper)}.game-stage:before{filter:saturate(.52) contrast(1.06) brightness(.5)!important}.game-stage .scene-shade{background:linear-gradient(90deg,rgba(1,38,38,.94) 0%,rgba(1,38,38,.72) 25%,rgba(21,16,13,.32) 100%)}.player-panel{background:rgba(1,38,38,.94);border-color:rgba(235,193,113,.36);border-radius:var(--radius-sm);color:#f5ead2}.player-panel h3{font-family:var(--reader);color:#fff2d5}.player-panel button,.player-panel .secondary,.player-panel .reset-game,.player-panel .export-save,.session-transfer button{background:rgba(255,255,255,.04);color:#eedcb9;border-color:rgba(235,204,145,.3)}.player-panel button:hover{background:rgba(242,148,65,.14);border-color:#e0a04f}.conversation-panel,.dialog-panel{border-radius:var(--radius-sm);background:rgba(250,243,226,.97);border-color:rgba(67,41,25,.3);color:var(--ink);box-shadow:0 10px 32px rgba(29,16,7,.2)}.conversation-panel .scene-context,.scene-context{background:#e9dcc2;border-left-color:var(--brick);color:#594b40}.conversation-panel .transcript{padding:12px clamp(4px,2vw,22px) 24px}.conversation-panel .turn{max-width:92%;border-radius:0}.conversation-panel .opening-turn,.conversation-panel .narrator-turn,.narrator-turn{justify-self:start;background:transparent;border:0;border-left:2px solid rgba(166,72,51,.32);padding:16px 22px;font:17px/1.85 var(--reader);color:#2f241e}.conversation-panel .opening-turn:first-letter,.conversation-panel .narrator-turn:first-letter{font-size:2.1em;line-height:.8;color:var(--brick)}.player-turn{justify-self:end;background:#e4d5b9;border:1px solid #baa789;color:#3f3229;border-radius:18px 18px 3px 18px;font-style:italic}.turn-meta{font-family:var(--ui);color:#9a5935}.runtime-error{background:#f2d9d2;border:1px solid #af5845;color:#703529;border-radius:3px}.conversation-panel .composer-heading{border-top:1px solid rgba(65,42,26,.25)}.composer-guide strong{font:700 16px/1.3 var(--reader);color:#35271f}.composer-guide small{color:#76695e}.conversation-panel .composer textarea{background:#fffaf0;color:var(--ink);border-color:#ad9b81}.question{color:var(--brick)}.typing-dots i{background:var(--brick)}.sheet-backdrop{background:rgba(1,25,25,.88);backdrop-filter:none}.sheet{background:var(--paper-light);border-radius:var(--radius);border-color:#9b8058;color:var(--ink);box-shadow:var(--shadow-dark)}.sheet h2,.sheet h3{font-family:var(--reader);color:#3c2920}.sheet-close{background:transparent;color:#533b2d;border-color:#9b8058}.profile-identity,.profile-description>div,.profile-details,.compact-stat,.known,.answer{background:#eee2cb;border-color:rgba(75,48,29,.2);color:var(--ink)}.trait-chip,.condition{border-radius:2px;background:#e2d2b5;color:#4d3b2f;border-color:#a78b64}.access-gate{background:var(--teal)}.access-gate:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 20%,rgba(242,148,65,.15),transparent 34rem),repeating-linear-gradient(90deg,rgba(255,255,255,.018) 0 1px,transparent 1px 5px)}.access-card{position:relative;width:min(480px,100%);padding:44px;border:1px solid rgba(234,194,119,.42);border-radius:var(--radius);background:#062f2e;color:#f5ead3;box-shadow:var(--shadow-dark)}.access-card>img{width:210px;height:65px;object-fit:contain;object-position:left;margin-bottom:20px}.access-card h1{font:700 38px/1.1 var(--reader)}.access-card p{color:#ccbfa8}.access-card input{background:#f8eed9;border-color:#d9bc84;border-radius:3px;color:var(--ink)}.access-card .eyebrow{color:#e0a357}.access-card #accessError{color:#ffad9c}.resume-status.error{color:#ffb1a1}.status-banner{padding:10px 13px;border-left:3px solid var(--green);background:rgba(71,115,90,.12);color:#365943}.status-banner.error{border-left-color:var(--brick);background:rgba(166,72,51,.12);color:#743a2b}
@media(max-width:760px){header{height:68px;padding:9px 14px}.brand>img{width:142px;height:45px}main{padding:30px 13px 58px}.hero{padding:0 4px 20px}.hero h1{font-size:36px}.library{grid-template-columns:1fr;gap:22px}.library .cover{aspect-ratio:2/3;object-position:center}.book{display:grid;grid-template-columns:38% 1fr}.book:before{top:5px;bottom:5px}.book .cover{height:100%;border-radius:2px 0 0 2px}.book-info{padding:16px}.book h2{font-size:19px}.book p{font-size:12px}.book-landing{min-height:520px;padding:14px;align-items:end}.book-landing-card{padding:22px}.creation,.game-stage{grid-template-columns:1fr}.game-stage{height:auto;padding:8px;background:var(--paper)}.game-stage>.conversation-panel{order:1;padding:17px 13px}.game-stage>.player-panel{order:2;background:var(--teal);display:flex}.conversation-panel .transcript{min-height:45vh}.conversation-panel .turn{max-width:100%;font-size:16px}.conversation-panel .opening-turn,.conversation-panel .narrator-turn{padding:12px 10px 12px 16px}.conversation-panel .composer{grid-template-columns:1fr}.access-card{padding:28px 22px}.sheet{padding:20px 17px}.portrait-panel{grid-template-columns:82px 1fr}}
@media(max-width:430px){.book{grid-template-columns:34% 1fr}.book-info .eyebrow,.book-info p{display:none}.book-info{display:flex;flex-direction:column;justify-content:center}.book .open{margin-top:9px;padding:8px}.header-actions button{font-size:11px;padding:7px}.access-card>img{width:176px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
.ui-icon{width:17px;height:17px;display:inline-grid;vertical-align:-3px;margin-right:7px}.ui-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.back .ui-icon{transform:rotate(180deg)}.sheet-close .ui-icon{margin:0}.sheet-close{display:grid;place-items:center}
.brand>img,.access-card>img{filter:brightness(0) saturate(100%) invert(82%) sepia(37%) saturate(654%) hue-rotate(345deg) brightness(103%) contrast(90%)}
@media(max-width:760px){.creator-form{max-height:none;overflow:visible}.scene-shell{overflow:visible}.game-stage>.player-panel{flex-direction:column}}
@media(max-width:900px){.game-stage{height:auto;grid-template-columns:1fr;padding:10px;gap:12px}.game-stage>.conversation-panel{order:1;min-height:68vh}.game-stage>.player-panel{order:2;position:static;display:flex;flex-direction:column;overflow:visible}.player-panel .portrait-placeholder.small{width:min(180px,44vw);align-self:center}.conversation-panel .composer{grid-template-columns:1fr}.conversation-panel .composer>button{width:100%}}
.hero h1{font-family:var(--display);font-weight:400;letter-spacing:-.025em}.eyebrow{font-family:"Freeman",var(--ui);font-weight:400}.brand>img,.access-card>img{filter:none}.book .cover{aspect-ratio:2/3;object-fit:cover;object-position:center;box-shadow:inset -1px 0 rgba(255,255,255,.18)}

/* Gate 10 r4 — editorial composition; hierarchy without nested containers. */
:root{--display:var(--reader);--page:#e4d7bf;--surface:#f7edd9;--surface-2:#eee0c6;--copy:#2b211b;--copy-soft:#685b50;--rule:rgba(67,43,27,.25);--reader-paper:rgba(250,243,226,.975)}
[data-theme="dark"]{--page:#071f1f;--surface:#102d2b;--surface-2:#173633;--copy:#eadfc8;--copy-soft:#baaF9e;--rule:rgba(222,184,112,.24);--reader-paper:rgba(13,42,40,.975);--ink:var(--copy);--ink-soft:var(--copy-soft);--paper:var(--surface-2);--paper-light:var(--surface);--paper-deep:#23423e;--line-paper:var(--rule);--text:var(--copy);--bg:var(--page);--panel:var(--surface);--line:var(--rule)}
body{color:var(--copy);background:radial-gradient(circle at 16% 0,rgba(255,248,226,.55),transparent 31rem),linear-gradient(118deg,var(--page),#cbbb9f);transition:background .2s,color .2s}[data-theme="dark"] body{background:radial-gradient(circle at 18% 0,rgba(39,91,83,.38),transparent 34rem),linear-gradient(125deg,#061b1b,var(--page));color:var(--copy)}[data-theme="dark"] body:before{opacity:.06;mix-blend-mode:screen}
.hero{padding:24px 0 38px;margin-bottom:0;border-bottom:0;position:relative}.hero:before{content:"";position:absolute;left:clamp(54%,650px,70%);right:0;top:0;bottom:24px;background:linear-gradient(90deg,transparent,var(--surface-2));border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);opacity:.58}.hero:after{content:"01  /  KOLEKCJA";font:600 10px/1 var(--ui);letter-spacing:.18em;color:var(--brick);margin-top:28px}.hero h1{font-family:var(--reader);font-weight:650;max-width:760px;position:relative}.hero p{position:relative;font-family:var(--reader);font-size:16px;line-height:1.75}
.library{min-height:390px;padding:44px 0 70px;border-top:1px solid var(--rule);position:relative}.library:before{content:"WYBRANE OPOWIEŚCI";position:absolute;top:15px;left:0;font:650 9px/1 var(--ui);letter-spacing:.18em;color:var(--copy-soft)}.book{display:grid;grid-template-columns:minmax(220px,42%) 1fr;width:min(760px,100%);max-width:none;border:0;border-radius:0;background:transparent;box-shadow:none;gap:clamp(24px,5vw,52px);align-items:center}.book:before{left:-7px;top:8px;bottom:8px;width:7px}.book:hover{box-shadow:none;transform:translateY(-3px)}.book .cover{border-radius:2px;box-shadow:0 24px 55px rgba(29,17,9,.3)}.book-info{padding:24px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.book h2{font-size:clamp(25px,3vw,38px)}.book p{min-height:0;font-family:var(--reader);line-height:1.75;color:var(--copy-soft)}.open{width:auto;padding-inline:22px}
.reader{max-width:1220px}.book-title{margin:0 0 24px;padding-bottom:20px;border-bottom:1px solid var(--rule)}.book-title h1{font-family:var(--reader);color:var(--copy)}.back{color:var(--copy-soft)}
.book-landing,.scene-shell,.game-stage{border:0;border-radius:0;box-shadow:0 22px 65px rgba(24,14,8,.22)}.book-landing{min-height:610px;padding:clamp(28px,6vw,72px);place-items:end start}.book-landing-card{width:min(600px,100%);padding:25px 0 0;border:0;border-top:1px solid rgba(239,207,148,.5);border-radius:0;background:transparent;box-shadow:none;color:#f4e8cf}.book-landing-card>p{font-size:18px;line-height:1.8;color:#f0e4cc;text-shadow:0 1px 12px rgba(0,0,0,.35)}.landing-meta{color:#d8c5a3}.landing-status{display:inline-block;padding:11px 0 0;margin-top:16px;border:0;border-top:1px solid rgba(239,207,148,.28);border-radius:0;background:transparent;color:#d8c5a3}.landing-actions .secondary{color:#f0dfbd;border-color:rgba(239,207,148,.42)}
.scene-shell{overflow:visible;background:var(--surface);box-shadow:0 25px 70px rgba(25,15,8,.22)}.scene-shell:before,.scene-shell>.scene-shade{display:none}.creation{grid-template-columns:minmax(190px,250px) minmax(0,1fr);gap:clamp(28px,5vw,70px);padding:clamp(28px,5vw,66px);background:var(--surface);align-items:start}.portrait-panel,.creator-form{border:0;border-radius:0;background:transparent;color:var(--copy);padding:0}.portrait-panel{position:sticky;top:24px}.portrait-panel small{padding-top:15px;border-top:1px solid var(--rule);color:var(--copy-soft);font-family:var(--reader);font-style:italic}.portrait-placeholder{border:0;border-radius:0;background:linear-gradient(145deg,var(--surface-2),var(--page));box-shadow:0 15px 35px rgba(35,21,11,.16);color:var(--copy-soft)}.creator-form{max-height:none;overflow:visible}.creator-form h2{font-size:clamp(32px,4vw,49px);color:var(--copy)}.creator-form>p{font-family:var(--reader);font-size:16px;color:var(--copy-soft);max-width:650px}.creator-form label{color:var(--copy);font-weight:620}.creator-form input,.creator-form select,.creator-form textarea{border:0;border-bottom:1px solid var(--rule);border-radius:0;background:transparent;color:var(--copy);padding:10px 2px}.creator-form input:focus,.creator-form select:focus,.creator-form textarea:focus{background:color-mix(in srgb,var(--surface-2) 45%,transparent)}.boundary,.starting-equipment,fieldset{padding:18px 0;margin:22px 0;border:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);border-radius:0;background:transparent;color:var(--copy-soft)}.traits{gap:2px 18px}.traits label{border:0;border-bottom:1px solid var(--rule);border-radius:0;background:transparent;padding:9px 2px}.luck-small,.luck-all{font-size:11px;background:transparent!important;color:var(--brick)!important;border:0!important;border-bottom:1px solid var(--rule)!important;border-radius:0!important;padding:5px 0;margin-top:5px}.luck-small{float:right}.stats-grid{border-top:1px solid var(--rule);padding-top:8px}
.game-stage{height:min(820px,calc(100vh - 170px));grid-template-columns:210px minmax(0,1fr);gap:0;padding:0;background:var(--reader-paper)}.game-stage:before{display:none}.game-stage .scene-shade{display:none}.player-panel{border:0;border-right:1px solid var(--rule);border-radius:0;background:linear-gradient(180deg,var(--teal),#073633);color:#f0e4cc;padding:25px 20px;overflow:visible!important}.player-panel h3{color:#f3e7cf}.player-panel button{border:0;border-bottom:1px solid rgba(235,204,145,.27);border-radius:0;text-align:left;padding:10px 0;background:transparent}.player-panel .runtime-controls{border-top:1px solid rgba(235,204,145,.24);padding-top:15px}.runtime-resources,.save-info{font-size:11px;color:#c7b998}.conversation-panel,.dialog-panel{border:0;border-radius:0;background:var(--reader-paper);box-shadow:none;color:var(--copy);padding:clamp(22px,4vw,50px)}.conversation-panel .transcript{padding:4px clamp(0px,2vw,22px) 34px}.conversation-panel .opening-turn,.conversation-panel .narrator-turn,.narrator-turn{max-width:790px;border:0;padding:20px 0;font-size:18px;line-height:1.95;color:var(--copy)}.conversation-panel .opening-turn:first-letter,.conversation-panel .narrator-turn:first-letter{font-size:1em;color:inherit}.player-turn{max-width:75%;border:0;border-left:1px solid var(--rule);border-radius:0;background:transparent;color:var(--copy);font-style:normal;padding:11px 0 11px 18px}.player-action{font-family:var(--reader);font-style:italic;color:var(--copy-soft)}.conversation-panel .composer-heading{position:relative;border-top:1px solid var(--rule);padding-top:16px}.composer-guide strong{font:600 14px/1.55 var(--ui);color:var(--copy)}.composer-guide small{display:none}.conversation-panel .composer textarea{background:transparent;color:var(--copy);border:0;border-bottom:1px solid var(--rule);border-radius:0}.composer-hint{border:0!important;background:transparent!important;color:var(--brick)!important}.hint-popover{position:absolute;right:0;bottom:calc(100% + 8px);z-index:6;width:min(340px,80vw);padding:14px 16px!important;margin:0!important;border:1px solid var(--rule)!important;background:var(--surface)!important;color:var(--copy)!important;box-shadow:0 14px 35px rgba(16,10,6,.25)}
.theme-control{display:flex;border:1px solid rgba(236,215,174,.25);padding:2px}.theme-control button{border:0!important;border-radius:0;padding:5px 7px;font-size:10px;color:#d7c8aa}.theme-control button[aria-pressed="true"]{background:rgba(242,148,65,.2);color:#fff0d2}.game-menu{position:relative}.game-menu-trigger{background:transparent;color:#ecd7ae;border-color:rgba(236,215,174,.38)}.game-menu-popover{position:absolute;right:0;top:calc(100% + 9px);z-index:50;width:260px;padding:12px;background:var(--surface);border:1px solid var(--rule);box-shadow:0 18px 45px rgba(0,0,0,.3);color:var(--copy)}.game-menu-popover button{display:block;width:100%;border:0;border-bottom:1px solid var(--rule);border-radius:0;background:transparent;color:var(--copy);text-align:left}.game-menu-test{margin-top:12px;padding-top:8px;border-top:1px solid var(--rule)}.game-menu-test>span{display:block;font-size:9px;letter-spacing:.14em;color:var(--copy-soft);text-transform:uppercase}.game-menu-popover small{display:block;padding-top:9px;color:var(--copy-soft)}
[data-theme="dark"] .book h2,[data-theme="dark"] .hero h1,[data-theme="dark"] .hero p,[data-theme="dark"] .creator-form h2,[data-theme="dark"] .creator-form label,[data-theme="dark"] .book-title h1,[data-theme="dark"] .sheet h2,[data-theme="dark"] .sheet h3{color:var(--copy)}[data-theme="dark"] .book p,[data-theme="dark"] .meta,[data-theme="dark"] .hero p,[data-theme="dark"] .creator-form>p{color:var(--copy-soft)}[data-theme="dark"] .sheet,[data-theme="dark"] .access-card{background:var(--surface);color:var(--copy)}[data-theme="dark"] .profile-identity,[data-theme="dark"] .profile-description>div,[data-theme="dark"] .profile-details,[data-theme="dark"] .compact-stat,[data-theme="dark"] .known,[data-theme="dark"] .answer{background:var(--surface-2);color:var(--copy)}
@media(max-width:760px){.theme-control button{font-size:0;width:26px}.theme-control button:before{font-size:12px}.theme-control button[data-theme-choice="light"]:before{content:"☀"}.theme-control button[data-theme-choice="dark"]:before{content:"☾"}.theme-control button[data-theme-choice="system"]:before{content:"◐"}.hero:before{display:none}.library{padding-top:48px}.book{grid-template-columns:38% 1fr;gap:18px}.book-info{padding:12px 0}.book p{font-size:12px}.book-landing{min-height:560px;padding:24px 18px}.creation{grid-template-columns:1fr;padding:28px 20px}.portrait-panel{position:static;display:grid;grid-template-columns:100px 1fr}.game-stage{height:auto;grid-template-columns:1fr}.game-stage>.conversation-panel{order:1;padding:24px 18px;min-height:70vh}.game-stage>.player-panel{order:2;border-right:0;border-top:1px solid var(--rule);padding:22px}.conversation-panel .turn{max-width:100%}.conversation-panel .composer-heading{align-items:stretch}.hint-popover{left:0;right:auto}.game-menu-popover{position:fixed;top:72px;right:10px;left:10px;width:auto}.luck-small{float:none;margin-left:10px}}

/* Gate 10 r6: bounded final-polish overrides. */
.conversation-panel{grid-template-rows:minmax(0,1fr) auto}
.library{grid-template-columns:repeat(auto-fit,minmax(280px,340px));align-items:stretch}
.book{display:flex;flex-direction:column;width:100%;height:100%;gap:0;align-items:stretch;border:1px solid var(--rule);background:var(--surface)}
.book .cover{width:100%;aspect-ratio:2/3;object-fit:cover;box-shadow:none}
.book-info{display:flex;flex:1;flex-direction:column;padding:20px;border:0}
.book p{display:-webkit-box;min-height:7em;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4}
.book .meta{margin-top:auto}.book .open{width:100%}
.hero{max-width:1120px}.hero:before{display:none}
.sheet-backdrop{z-index:10000;overflow:auto;overscroll-behavior:contain}
.sheet{margin:auto}.sheet-close{z-index:2}
.conversation-panel .composer-heading{display:flex;justify-content:flex-start;border-top:1px solid var(--rule);padding-top:12px;margin:14px 0 8px}
.conversation-panel .composer-heading .question,.composer-guide{display:none!important}
.composer-shell{display:grid;grid-template-rows:auto auto;gap:0;min-width:0;flex:none}
.composer-assist{position:static;display:grid;min-width:0;margin-top:8px;flex:none}
.composer-assist .composer-heading{position:static;display:flex;justify-content:flex-start;margin:0;padding:0;border:0}
.composer-hint{position:static;align-self:flex-start;margin:0!important;white-space:normal}
.composer-assist .hint-popover{position:static;inset:auto;z-index:auto;display:block;width:min(100%,680px);height:auto;min-height:0;max-height:12em;overflow-x:hidden;overflow-y:auto;white-space:normal;overflow-wrap:anywhere;margin:8px 0 0!important;box-sizing:border-box}
.composer-assist .hint-popover[hidden]{display:none!important}
.player-action{margin-inline:.16em}.player-action+*{margin-left:.16em}
.menu-chevron{display:inline-block;margin-left:.3em;font-size:1.15em;line-height:.8;transition:transform .16s}.game-menu-trigger[aria-expanded="true"] .menu-chevron{transform:rotate(180deg)}
.luck-all{display:inline-flex;min-height:40px;align-items:center;padding:8px 12px!important;border:1px solid var(--rule)!important}
.creator-form label{position:relative}.luck-small{float:none;display:inline-flex;min-height:32px;align-items:center;margin:7px 0 0!important;padding:5px 9px!important}
.creator-form input[type="number"]{appearance:textfield;padding-right:42px}.creator-form input[type="number"]::-webkit-inner-spin-button{opacity:1;width:30px;min-height:30px;cursor:pointer;filter:sepia(.8) saturate(.7) hue-rotate(345deg)}
.traits input[type="checkbox"]{appearance:none;width:18px;height:18px;flex:0 0 18px;margin:1px 0 0;border:1px solid var(--copy-soft);border-radius:3px;background:transparent;display:grid;place-content:center}.traits input[type="checkbox"]:checked{border-color:var(--ochre);background:var(--ochre)}.traits input[type="checkbox"]:checked:after{content:"✓";color:#132b29;font-size:13px;font-weight:900;line-height:1}.traits input[type="checkbox"]:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
@media(max-width:760px){.library{grid-template-columns:1fr}.book{max-width:360px;margin-inline:auto}.book-info{padding:18px}.book p{font-size:14px;min-height:6.5em}.book .cover{height:auto;border-radius:2px 2px 0 0}.hint-popover{width:100%;max-height:32vh}.composer-hint{width:auto!important}.luck-small{margin-left:0!important}}
@media(max-width:390px){header{padding-inline:9px}.brand>img{width:118px}.leave-test{display:none}.hero h1{font-size:33px}.book{grid-template-columns:34% 1fr}.book-info p,.book-info .meta{display:none}.book h2{font-size:18px}.open{padding:7px 9px}.conversation-panel .opening-turn,.conversation-panel .narrator-turn{font-size:16px;line-height:1.8}}
.portrait-choice{padding:18px 0;margin:22px 0;border:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);border-radius:0;background:transparent!important;color:var(--copy-soft)}.portrait-choice button{background:transparent;color:var(--copy);border-color:var(--rule)}
