:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#dfc99e;background:#101411;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #171b19;--wood: #232a25;--olive: #666b48;--gold: #ab8850;--paper: #dfc99e;--red: #a65340;--safe-top: 0px;--safe-bottom: 0px;--safe-left: 0px;--safe-right: 0px;--usable-height: calc( var(--app-height, 100dvh) - max(env(safe-area-inset-top), var(--safe-top)) - max(env(safe-area-inset-bottom), var(--safe-bottom)) )}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer;color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default;opacity:.48}button:focus-visible,input:focus-visible,.card-copy:focus-visible{outline:2px solid #dfc99e;outline-offset:4px}button{border:0}img{image-rendering:auto;-webkit-user-select:none;user-select:none}svg{flex-shrink:0}p{line-height:1.65}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:Georgia,Times New Roman,serif}.app-shell{width:100%;max-width:460px;min-height:var(--app-height, 100dvh);margin:auto;background:var(--bg);position:relative;padding-top:max(env(safe-area-inset-top),var(--safe-top));padding-bottom:max(env(safe-area-inset-bottom),var(--safe-bottom));padding-left:max(env(safe-area-inset-left),var(--safe-left));padding-right:max(env(safe-area-inset-right),var(--safe-right));overflow:hidden}.topbar{height:66px;display:flex;align-items:center;justify-content:space-between;margin:0 24px;border-bottom:1px solid #ab88502b;gap:12px}.brand{height:44px;display:flex;align-items:center;gap:9px;background:none;color:var(--gold);padding:0}.brand span{letter-spacing:3px;font-family:Georgia,serif;font-size:18px}.brand svg{width:21px}.edition{font-size:8px;letter-spacing:1.6px;color:#aaac97}.topbar-dot{color:var(--gold);font-size:9px}.icon-button{width:44px;height:44px;background:none;display:grid;place-items:center;color:#b6b59d;font-size:30px}.eyebrow{font-size:9px;font-weight:500;letter-spacing:1.6px;line-height:1.7;color:#b69a66}.notice{font-size:12px;padding:12px 16px;background:#413a28;display:flex;align-items:center;line-height:1.5}.notice button{min-width:44px;min-height:44px;background:none;font-size:22px}.home-scene{height:390px;position:relative;background:url(/assets/chamber-full.webp) center 42% / cover;image-rendering:auto;display:flex;align-items:center;justify-content:center}.scene-vignette{position:absolute;inset:0;background:linear-gradient(180deg,#171b1938,#171b1930 45%,#171b19)}.home-title{position:relative;text-align:center;padding-top:10px}.home-title>.eyebrow{font-size:8px;color:#d6c293;letter-spacing:1.8px}.home-title h1{font-family:Georgia,serif;line-height:1.35;font-size:112px;color:#e9d3a9;letter-spacing:-5px;text-shadow:0 3px 0 #171b19,0 8px 40px #000}.title-rule{font-size:9px;color:var(--gold);display:flex;align-items:center;justify-content:center;gap:20px;margin:2px auto 22px}.title-rule:before,.title-rule:after{content:"";width:56px;height:1px;background:var(--gold)}.home-title p{font-family:Georgia,serif;font-size:17px;line-height:1.65;color:#ded1b1;text-shadow:0 2px 5px #000}.home-bottom{padding:2px 28px 20px;text-align:center}.home-bottom h2{font-size:26px;margin:10px 0 14px}.home-bottom>p:not(.fiction){font-size:13px;color:#aaa995;margin-bottom:25px;line-height:1.8}.primary,.secondary{min-height:54px;width:100%;padding:14px 18px;display:flex;align-items:center;justify-content:center;gap:12px;font-size:14px;font-weight:500;border-radius:2px}.primary{background:var(--red);color:#f3e0bc;box-shadow:inset 0 0 0 1px #c774593b}.primary svg{width:18px;height:18px}.primary:hover{background:#b76147}.secondary{background:transparent;border:1px solid #ab885055;margin-top:10px;color:#c7b286}.secondary:hover{background:#ab885012}.home-meta{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;color:#a9aa94;margin-top:21px}.fiction{font-size:10px;color:#838976;margin-top:18px}.panel{padding:32px 26px}.panel h1{font-size:38px;line-height:1.14;margin:10px 0 25px}.panel p{font-size:14px;color:#c0baa4;margin-bottom:18px}.panel .primary{margin-top:22px}.muted{color:#999e88!important}.seed-label{font-size:12px;color:#c8b386;display:block;margin-top:22px}.seed-label span{float:right;color:#999e88;font-size:10px}.seed-label input{display:block;width:100%;height:48px;background:#111612;border:1px solid #ab885042;color:var(--paper);padding:10px 14px;margin-top:10px;border-radius:2px;font-size:14px}.text-button{min-height:44px;display:block;margin:10px auto 0;background:none;color:#a9aa94;font-size:12px}.game{padding:20px 22px 16px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.stat-top{display:flex;align-items:center;justify-content:space-between;color:#c4b48d}.stat-top svg{width:16px;height:16px}.stat-top strong{font-size:15px;font-weight:500;font-variant-numeric:tabular-nums}.stat-name{font-size:9px;color:#acae98;display:block;margin:7px 0 8px}.stat-track{height:3px;background:#3b4131}.stat-track i{display:block;height:100%;background:#b49a61;transition:width .35s}.danger .stat-track i{background:#c37458}.danger .stat-top{color:#d89474}.affect-dot{width:4px;height:4px;border-radius:50%;background:transparent;margin:7px auto 0;display:block}.affect-dot.active{background:#c4b48d}.season-row{display:flex;justify-content:space-between;font-size:10px;color:#a9aa94;margin:19px 0 21px;letter-spacing:.2px}.season-row>span:last-child{color:#9e9275;font-size:9px;letter-spacing:1px}.dot{padding:0 5px;color:var(--gold)}.card-stack{position:relative;margin:0 3px 17px;isolation:isolate}.card-stack:before,.card-stack:after{content:"";position:absolute;inset:7px -3px -6px;background:#35372b;border:1px solid #ab885036;z-index:-1;transform:rotate(1.5deg)}.card-stack:after{inset:3px -3px -3px;background:#77745a;transform:rotate(-1deg)}.decision-card{background:#dfc99e;color:#2b3027;border:1px solid #b09864;box-shadow:0 8px 26px #0004;transform-origin:50% 85%;border-radius:2px;overflow:hidden;touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}.decision-card:active{cursor:grabbing}.portrait-stage{height:194px;background:#303a2c;position:relative;display:flex;align-items:center;justify-content:center;touch-action:pan-y;cursor:grab;border-bottom:3px double #ab8850;background-image:linear-gradient(#232a2544,#232a2544),url(/assets/chamber-full.webp);background-size:cover;background-position:center 28%;image-rendering:auto}.portrait-stage:before{content:"";position:absolute;inset:8px;border:1px solid #ab88503b;pointer-events:none}.portrait-frame{border:2px solid #998053;box-shadow:0 0 0 3px #232a25,0 0 0 4px #99805360;line-height:0;position:relative;margin-top:12px}.portrait-frame img{width:128px;height:128px}.card-mark{position:absolute;top:14px;font-size:7px;letter-spacing:2px;color:#c3b27b;z-index:1}.portrait-ornament{position:absolute;bottom:9px;color:#ac915a;font-size:8px}.swipe-label{position:absolute;top:66px;left:14px;right:14px;z-index:3;padding:18px 12px;background:#171b19ef;border:1px solid var(--gold);color:var(--paper);font-family:Georgia,serif;font-size:21px;line-height:1.3;text-align:center;pointer-events:none}.swipe-label.left{transform:rotate(-5deg)}.swipe-label.right{transform:rotate(5deg)}.card-copy{padding:17px 22px 14px;max-height:280px;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:#8c7956 transparent}.speaker{text-align:center}.speaker h2{font-size:25px;line-height:1.2}.speaker>span{font-size:9px;letter-spacing:1.1px;color:#6c684d;display:block;margin-top:4px}.ornamental-rule{display:flex;align-items:center;gap:10px;justify-content:center;margin:12px 0;color:#887149;font-size:7px}.ornamental-rule:before,.ornamental-rule:after{content:"";height:1px;width:38px;background:currentColor;opacity:.45}.card-copy h3{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#81664a;margin:0 0 8px;font-weight:600}.card-copy p{font-family:inherit;font-size:14px;line-height:1.65;color:#303326}.card-number{padding:11px 12px;border-top:1px solid #9b875833;text-align:center;font-size:7px;letter-spacing:1.5px;color:#887149}.card-number span{padding:0 9px;font-size:6px}.crisis-card{border-color:#a65340}.crisis-card .card-mark{color:#ffb096}.choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:5px}.choice{min-height:79px;border:1px solid #ab885059;background:#232a25;padding:12px 13px;font-size:12px;line-height:1.45;text-align:left;display:flex;flex-direction:column;gap:6px}.choice:nth-child(2){text-align:right;align-items:flex-end}.choice:hover:not(:disabled){border-color:#b39a64;background:#2b3229}.choice-direction{font-size:7px;letter-spacing:1.3px;color:#a6a68d}.gesture-hint{display:flex;align-items:center;justify-content:center;gap:12px;font-size:10px;color:#a1a58e;margin-top:16px}.gesture-hint span{color:var(--gold);font-size:15px}.game-foot{font-size:7px;letter-spacing:.9px;color:#838976;display:flex;justify-content:center;gap:10px;margin-top:23px}.game-foot>span{font-size:6px;color:var(--gold)}.receipt{background:#282e24;border:1px solid #ab885048;padding:15px 16px;margin-top:16px}.receipt p{font-size:12px;line-height:1.7;color:#d2c4a1;margin:6px 0 10px}.receipt .small{min-height:44px;font-size:12px;padding:10px;margin-top:12px}.deltas{display:flex;flex-wrap:wrap;gap:7px 12px}.deltas>span{display:flex;align-items:center;gap:5px;font-size:10px;white-space:nowrap}.deltas svg{width:13px;height:13px}.positive{color:#adb984}.negative{color:#d6977d}.ending{padding-top:26px}.ending-emblem{width:70px;height:70px;background:#2b3229;border:1px solid #ab885048;display:grid;place-items:center;margin:0 auto 22px;transform:rotate(45deg)}.ending-emblem svg{width:32px;height:32px;transform:rotate(-45deg);color:var(--gold)}.ending>.eyebrow{display:block;text-align:center}.ending h1{text-align:center;font-size:36px;margin-bottom:13px}.ending-turns{display:block;text-align:center;font-size:11px;color:#a9aa94;margin-bottom:26px}.ending-story{font-family:Georgia,serif;font-size:19px!important;line-height:1.75!important;color:#dfc99e!important}.ending h2{font-size:23px;margin-top:25px}.ending-reasons{padding:0;list-style:none;margin:17px 0 25px}.ending-reasons li{position:relative;padding:0 0 14px 18px;font-size:12px;color:#babc9f;line-height:1.7}.ending-reasons li:before{content:"◆";position:absolute;left:0;top:5px;color:#ab8850;font-size:6px}.panel-heading{display:flex;align-items:center;justify-content:space-between}.panel-heading h1{margin-bottom:18px}.journal-entry{border-top:1px solid #ab885039;padding:20px 0}.journal-entry h2{font-size:24px;margin:6px 0 10px}.journal-entry>strong{font-size:12px;color:#ceb787;font-weight:500}.journal-entry p{font-size:12px;margin:10px 0;color:#b0b19b}.seed-foot{font-size:10px!important;overflow-wrap:anywhere;color:#8c937f!important}.ending-transition{margin:28px 22px}.ending-transition h1{font-size:32px}.screen-game:before{content:"";position:absolute;right:6px;top:390px;width:2px;height:4px;background:#e1b36a;box-shadow:0 0 10px 3px #b87d2440;animation:candle 3s steps(3,end) infinite;pointer-events:none}@keyframes candle{50%{opacity:.3}}.receipt-layer{position:fixed;inset:0 0 auto;height:100%;height:min(var(--app-height, 100dvh),100dvh);z-index:100;display:flex;align-items:center;justify-content:center;padding-top:calc(16px + max(env(safe-area-inset-top),var(--safe-top)));padding-bottom:calc(16px + max(env(safe-area-inset-bottom),var(--safe-bottom)));padding-left:calc(16px + max(env(safe-area-inset-left),var(--safe-left)));padding-right:calc(16px + max(env(safe-area-inset-right),var(--safe-right)));background:#101411c9;overscroll-behavior:contain}.choice-receipt{width:min(100%,416px);max-height:100%;min-height:0;display:flex;flex-direction:column;margin:0;padding:20px;box-shadow:0 16px 60px #0008}.choice-receipt p{font-size:14px}.receipt-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y}.choice-receipt>.eyebrow{flex-shrink:0}.choice-receipt .small{margin-top:17px;min-height:48px;flex-shrink:0}.choice-receipt .deltas>span{font-size:11px}@media(min-width:600px){body{background:radial-gradient(ellipse at 50% 40%,#2b3229,#0e120f 70%);padding:28px 0}.app-shell{border:1px solid #ab885028;box-shadow:0 20px 90px #0008;min-height:820px}.home-scene{height:400px}.home-bottom{padding-bottom:28px}.card-copy{max-height:320px}.edition{font-size:9px}.topbar{height:70px}}@media(max-width:350px){.topbar{margin:0 16px;height:58px}.edition{font-size:7px;letter-spacing:1px}.game{padding:16px 14px}.stats{gap:12px}.card-copy{padding:15px 17px}.card-copy p{font-size:14px}.home-title h1{font-size:94px}.home-title>.eyebrow{font-size:7px;letter-spacing:1.2px}.home-bottom{padding:0 20px 20px}.home-bottom h2{font-size:24px}.home-bottom>p:not(.fiction){font-size:12px}.panel{padding:25px 20px}.choice{padding:12px 10px;font-size:12px}}@media(max-height:740px)and (max-width:599px){.topbar{height:54px}.game{padding-top:13px}.season-row{margin:12px 0 15px}.portrait-stage{height:158px}.portrait-frame img{width:96px;height:96px}.portrait-frame{margin-top:13px}.card-copy{max-height:clamp(150px,calc(var(--usable-height) - 460px),235px);padding-top:13px}.card-copy p{line-height:1.55}.speaker h2{font-size:23px}.ornamental-rule{margin:9px 0}.card-number{padding:8px 12px}.game-foot{margin-top:14px}.home-scene{height:310px}.home-title h1{font-size:98px}.home-bottom>p:not(.fiction){margin-bottom:18px}.gesture-hint{margin-top:10px}}@media(max-height:590px)and (max-width:599px){.portrait-stage{height:110px}.portrait-frame img{width:64px;height:64px}.portrait-frame{margin-top:9px}.card-mark{top:9px}.portrait-ornament{bottom:6px}.card-copy{max-height:150px}.choice{min-height:70px}.home-scene{height:260px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.swipe-tutorial{margin-bottom:24px}.swipe-tutorial .portrait-stage{height:140px}.swipe-tutorial .portrait-frame{margin-top:8px}.swipe-tutorial .portrait-frame img{width:96px;height:96px}.swipe-tutorial .card-copy{max-height:210px}.swipe-tutorial .card-copy p{color:#303326;margin:0}.swipe-tutorial .swipe-label{top:45px;font-size:19px}.swipe-tutorial .practice-feedback{min-height:72px;padding:14px 0 0;margin-bottom:4px;color:var(--paper)}@media(max-height:740px)and (min-height:641px)and (max-width:599px){.portrait-stage{height:180px}.portrait-frame img{width:128px;height:128px}.portrait-frame{margin-top:8px}.card-copy{max-height:clamp(150px,calc(var(--usable-height) - 482px),235px)}}@media(max-height:640px)and (min-height:591px)and (max-width:599px){.portrait-stage{height:130px}.portrait-frame img{width:64px;height:64px}}
