:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#e8dfc9;--muted:#9d947f;--paper:#12130f;--panel:#191a14;--line:#38382d;--red:#a94935;--gold:#c4a35a;--green:#7b9a77;font-family:Noto Serif SC,Songti SC,STSong,serif}*{box-sizing:border-box}html{background:var(--paper)}body{min-height:100vh;color:var(--ink);background:radial-gradient(circle at 12% 8%, #a949351f, transparent 28rem), linear-gradient(#ffffff05 1px, transparent 1px), var(--paper);background-size:auto,100% 28px,auto;margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:var(--gold)}.shell{width:min(1180px,100% - 32px);margin:0 auto}.eyebrow{color:var(--gold);letter-spacing:.2em;text-transform:uppercase;font-size:.76rem}.button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:2px;padding:.72rem 1.15rem;transition:border-color .2s,background .2s,transform .2s}.button:hover:not(:disabled){border-color:var(--gold);transform:translateY(-1px)}.button:disabled{opacity:.45;cursor:wait}.button.primary{background:var(--red);color:#fff7e7;border-color:#c46249}.button.ghost{color:var(--muted)}.start-shell{grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(36px,7vw,100px);min-height:100vh;padding:56px 0;display:grid}.hero-copy h1{letter-spacing:-.08em;margin:.15em 0;font-size:clamp(5rem,14vw,10rem);font-weight:500;line-height:.95}.lead{color:#c7bfae;max-width:31rem;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.9}.rules-strip{color:var(--muted);letter-spacing:.12em;gap:0;margin-top:44px;font-size:.8rem;display:flex}.rules-strip span{border-left:1px solid var(--line);padding:.45rem .8rem}.start-form{border:1px solid var(--line);background:#191a14e0;padding:clamp(24px,4vw,48px);box-shadow:0 32px 80px #00000040}.form-heading{align-items:center;gap:12px;margin-bottom:20px;display:flex}.form-heading.compact{margin-top:30px}.form-heading span{border:1px solid var(--red);color:#d97a62;place-items:center;width:28px;height:28px;font-size:.78rem;display:grid;transform:rotate(-3deg)}.form-heading h2{letter-spacing:.14em;margin:0;font-size:1.1rem;font-weight:500}.start-form>label{color:var(--muted);gap:8px;margin:14px 0;font-size:.85rem;display:grid}.book-choice-note{color:#777365;margin:-2px 0 14px;font-size:.76rem;line-height:1.7}input,textarea,select{border:1px solid var(--line);width:100%;color:var(--ink);background:#0e0f0c;border-radius:2px;outline:none;padding:.8rem .9rem}input:focus,textarea:focus,select:focus{border-color:var(--gold);box-shadow:0 0 0 2px #c4a35a1a}textarea{resize:vertical;line-height:1.7}.segmented{gap:8px;display:flex}.segmented label{border:1px solid var(--line);color:var(--muted);cursor:pointer;flex:1;padding:.65rem .8rem}.segmented input{width:auto;accent-color:var(--red);margin-right:8px}.start-button{letter-spacing:.3em;width:100%;margin-top:28px;padding:.95rem}.error-banner{border-left:3px solid var(--red);color:#e2a393;background:#a949351a;padding:.75rem 1rem}.game-shell{padding:32px 0 48px}.game-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:24px;padding-bottom:22px;display:flex}.game-header h1{margin:8px 0 0;font-size:clamp(1.25rem,3vw,2rem);font-weight:500}.header-actions,.ending-actions{gap:10px;display:flex}.game-grid{grid-template-columns:minmax(0,1fr) 260px;min-height:calc(100vh - 330px);display:grid}.terminal{border-right:1px solid var(--line);min-width:0;padding:32px clamp(10px,4vw,54px) 80px 0}.opening-entry{border:1px solid var(--line);color:#c4bdac;margin-bottom:44px;padding:20px 24px;line-height:1.9}.opening-entry p{margin:.5rem 0}.turn{content-visibility:auto;contain-intrinsic-size:auto 180px;margin:0 0 36px}.player-line{color:#f0e7d2;gap:12px;line-height:1.75;display:flex}.prompt-mark{color:var(--red);font-size:1.35em;line-height:1.2}.outcome{border-left:1px solid var(--line);color:#c1baa9;margin:14px 0 0 23px;padding-left:18px;line-height:1.95}.outcome p{white-space:pre-wrap}.outcome-success{border-color:var(--green)}.outcome-failure,.outcome-impossible,.outcome-warning{border-color:var(--red)}.turn-label{color:var(--muted);letter-spacing:.13em;font-size:.72rem}.thinking{color:var(--muted);font-style:italic}.thinking span{color:var(--gold)}.status-panel{overscroll-behavior:contain;align-self:start;min-width:0;max-height:calc(100vh - 48px);padding:32px 0 32px 28px;position:sticky;top:24px;overflow-y:auto}.status-panel h2{letter-spacing:.2em;margin:0 0 24px;font-size:1rem;font-weight:500}.stat{border-bottom:1px solid #292a22;gap:5px;padding:12px 0;display:grid}.stat span,.inventory span{color:var(--muted);letter-spacing:.1em;font-size:.74rem}.stat strong{overflow-wrap:anywhere;font-weight:400;line-height:1.5}.inventory{padding-top:22px}.inventory p{overflow-wrap:anywhere;color:#c1baa9;line-height:1.7}.command-bar{background:linear-gradient(transparent, var(--paper) 18%, var(--paper));padding:18px 0;position:sticky;bottom:0}.choice-panel{background:#191a14f7;border:1px solid #504a37;margin-bottom:14px;padding:16px 18px;box-shadow:0 -12px 36px #0000002e}.choice-kicker{color:var(--gold);letter-spacing:.18em;font-size:.7rem}.choice-panel>p{color:#eee3c9;margin:7px 0 12px;font-size:1rem;line-height:1.65}.choice-actions{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;display:grid}.choice-action{border:1px solid var(--line);min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:#11120e;border-radius:2px;padding:10px 12px;transition:border-color .2s,background .2s,transform .2s}.choice-action:hover:not(:disabled),.choice-action:focus-visible{border-color:var(--gold);background:#1e1e16;transform:translateY(-1px)}.choice-action:focus-visible{outline-offset:2px;outline:2px solid #c4a35a59}.choice-action:disabled{opacity:.5;cursor:wait}.choice-action>span{color:#ead7aa;font-size:.84rem;display:block}.choice-action>small{overflow-wrap:anywhere;color:var(--muted);margin-top:4px;font-size:.72rem;line-height:1.5;display:block}.choice-hint{color:#777365;margin-top:8px;display:block}.command-bar>label{color:var(--gold);margin-bottom:8px;font-size:.85rem;display:block}.command-bar>div{grid-template-columns:1fr auto;gap:10px;display:grid}.command-bar textarea{min-height:62px}.command-bar small{color:#777365;margin-top:7px;display:block}.ending-panel{border:1px solid var(--gold);background:var(--panel);grid-template-columns:120px 1fr;gap:28px;margin-top:28px;padding:clamp(24px,5vw,50px);display:grid}.score-seal{border:2px solid var(--red);outline:1px solid var(--red);outline-offset:-7px;color:#dc826a;align-content:center;place-items:center;width:108px;height:108px;display:grid;transform:rotate(-2deg)}.score-seal strong{font-size:2.4rem;line-height:1}.score-seal span{letter-spacing:.2em;font-size:.7rem}.ending-copy h2{margin:8px 0;font-size:2rem;font-weight:500}.ending-copy>p{color:#c2baa9;line-height:1.8}.ending-stats{grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0;display:grid}.ending-stats div{border-top:1px solid var(--line);padding-top:10px}.ending-stats dt{color:var(--muted);font-size:.75rem}.ending-stats dd{margin:7px 0 0}.share-link{overflow-wrap:anywhere;font-size:.8rem}.fan-fiction{border-top:1px solid var(--line);grid-column:1/-1;margin-top:28px;padding-top:30px}.fan-fiction h2{text-align:center;font-weight:500}.fan-fiction p{text-indent:2em;color:#d2cab8;max-width:50rem;margin:1.2em auto;line-height:2}.share-page{align-content:center;place-items:center;gap:24px;min-height:100vh;padding:28px;display:grid}.share-card{border:1px solid var(--gold);background:var(--panel);width:min(620px,100%);padding:clamp(32px,8vw,72px);position:relative;overflow:hidden;box-shadow:0 30px 90px #00000059}.share-card:after{content:attr(data-book-title);color:#a9493517;writing-mode:vertical-rl;font-size:8rem;position:absolute;top:-25px;right:-15px}.share-card h1{letter-spacing:-.07em;margin:16px 0 2px;font-size:clamp(3rem,10vw,5.5rem);font-weight:500}.share-book{color:var(--muted)}.share-score{border:2px solid var(--red);color:#da7b64;place-items:center;width:112px;height:112px;margin:30px 0;display:inline-grid;transform:rotate(-2deg)}.share-score strong{font-size:2.5rem;line-height:1}.share-score span{letter-spacing:.15em;font-size:.7rem}.share-summary{color:#d2cab8;line-height:1.9}.share-card dl{margin:28px 0}.share-card dl div{border-top:1px solid var(--line);grid-template-columns:90px 1fr;gap:20px;padding:12px 0;display:grid}.share-card dt{color:var(--muted);font-size:.75rem}.share-card dd{margin:0;line-height:1.6}.share-card footer{color:var(--gold);letter-spacing:.13em;padding-top:18px;font-size:.78rem}.share-home{text-decoration:none}@media (max-width:760px){.start-shell{grid-template-columns:1fr;padding:34px 0}.hero-copy h1{font-size:6rem}.rules-strip{flex-wrap:wrap;margin-top:24px}.game-header{flex-direction:column;align-items:start}.game-grid{grid-template-columns:minmax(0,1fr)}.terminal{border-right:0;padding-right:0}.status-panel{overscroll-behavior:auto;border-bottom:1px solid var(--line);order:-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;max-height:none;padding:18px 0;display:grid;position:static;overflow:visible}.status-panel h2,.inventory{grid-column:1/-1}.ending-panel,.ending-stats,.command-bar>div{grid-template-columns:1fr}.choice-panel{padding:14px}.choice-actions{grid-template-columns:1fr;max-height:180px;overflow-y:auto}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media print{body{background:#12130f}.share-page{padding:0}.share-home{display:none}.share-card{box-shadow:none}}
