:root{--text-scale:1;--ui-scale:1;color:#f4ead7;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:calc(100% * var(--text-scale));--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#120f0c}*{box-sizing:border-box}html{background:#120f0c;min-width:20rem;min-height:100%}body{min-width:20rem;min-height:100vh;padding-top:calc(3.4rem * var(--ui-scale));overflow-wrap:anywhere;background:radial-gradient(circle at 72% 18%,#4d291c 0,#1d1510 26rem,#120f0c 62rem);margin:0}button,input,select,textarea{font:inherit}button{color:#160f09;cursor:pointer;background:#d7a34e;border:1px solid #d7a34e;border-radius:.2rem;min-height:2.75rem;padding:.65rem 1rem;font-weight:750}button:hover{background:#efc36f}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[href]:focus-visible{outline-offset:.2rem;outline:.2rem solid #fff2c9}button:disabled{cursor:not-allowed;opacity:.42}.skill-grid .skill-button small{color:inherit}button.quiet,button.back,button.disclosure{color:#f4ead7;background:0 0;border-color:#756656}.skip-link{z-index:20;color:#111;background:#fff;padding:.7rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.eyebrow,.panel-kicker{color:#e8b65e;letter-spacing:.16em;text-transform:uppercase;margin:0 0 .7rem;font:800 .75rem/1.3 ui-sans-serif,system-ui,sans-serif}h1,h2{font-family:Georgia,Times New Roman,serif;font-weight:500}h1{letter-spacing:-.04em;margin:0;font-size:clamp(2.8rem,9vw,6.8rem);line-height:.88}h2{margin:.2rem 0 1rem;font-size:clamp(1.6rem,4vw,2.5rem)}p{line-height:1.55}.title-screen{min-height:calc(100vh - 3.4rem * var(--ui-scale));grid-template-columns:minmax(20rem,34rem) 1fr;display:grid;position:relative;overflow:hidden}.title-copy{z-index:2;background:linear-gradient(90deg,#120f0cfa 65%,#120f0c38);flex-direction:column;justify-content:center;padding:clamp(2rem,7vw,7rem);display:flex}.lede{color:#cfc0aa;max-width:31rem;font:1.08rem/1.7 Georgia,serif}.menu{gap:.55rem;width:min(22rem,100%);margin-top:1.3rem;display:grid}.menu button{text-align:left;color:#eee2cf;background:#261d16d1;border-color:#5f4c3d;position:relative}.menu button:not(:disabled):after{content:"›";color:#d7a34e;position:absolute;right:1rem}.offline-status{color:#b9ad9c;font-size:.82rem}.offline-status span{color:#79b49d}.title-art{background:linear-gradient(#8f4c2e 0,#cb8150 38%,#39261d 39%,#15100d 100%);position:absolute;inset:0 0 0 32%;overflow:hidden}.sun{background:#f1b35d;border-radius:50%;width:17rem;height:17rem;position:absolute;top:8%;right:11%;box-shadow:0 0 5rem #f0a048}.ridge{clip-path:polygon(0 62%,12% 28%,25% 55%,39% 10%,57% 52%,73% 18%,100% 70%,100% 100%,0 100%);background:#241b17;height:37%;position:absolute;bottom:19%;left:-10%;right:-10%}.ridge-far{opacity:.65;background:#6a3b2a;bottom:30%;transform:scaleY(.7)}.caravan{border:.7rem solid #0f0b09;border-top-width:2rem;border-radius:45% 40% 15% 15%;width:12rem;height:4.7rem;position:absolute;bottom:16%;right:23%;transform:skew(-8deg)}.caravan:before,.caravan:after{content:"";border:.65rem solid #0f0b09;border-radius:50%;width:3rem;height:3rem;position:absolute;bottom:-2.2rem}.caravan:before{left:.5rem}.caravan:after{right:.5rem}.lantern-glow{background:#ffd176;width:.8rem;height:1.2rem;position:absolute;bottom:28%;right:39%;box-shadow:0 0 2.2rem 1rem #ed8f35}.panel-screen,.settlement-screen{width:min(78rem,100% - 2rem);margin:0 auto;padding:clamp(1.5rem,5vw,4rem) 0}.panel-screen h1,.settlement-screen h1{font-size:clamp(2.6rem,7vw,5rem)}.back{margin-bottom:2rem}.save-list{gap:.8rem;margin:2rem 0;padding:0;list-style:none;display:grid}.save-row{background:#201a15;border:1px solid #56493e;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.save-row div{gap:.25rem;display:grid}.save-row span{color:#b9ad9c;font-size:.88rem}.save-row p{color:#efb49e;max-width:34rem}.dialog-backdrop{z-index:10;-webkit-backdrop-filter:blur(.4rem);backdrop-filter:blur(.4rem);background:#040302d1;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.dialog-card{background:#1c1713;border:1px solid #7d6245;width:min(42rem,100%);max-height:calc(100vh - 2rem);padding:clamp(1.3rem,4vw,2.4rem);overflow:auto;box-shadow:0 1.5rem 6rem #000}.dialog-card form,.dialog-card label{gap:.45rem;display:grid}.dialog-card form{gap:1rem}input{color:#fff4df;background:#100d0a;border:1px solid #796a5b;border-radius:.15rem;min-height:2.9rem;padding:.55rem .7rem}fieldset{border:0;gap:.5rem;padding:0;display:grid}legend{margin-bottom:.6rem;font-weight:800}.difficulty{background:#241d17;border:1px solid #51463c;grid-template-columns:auto 1fr;padding:.8rem}.difficulty input{min-height:auto}.difficulty span,.difficulty small,.difficulty em{display:block}.difficulty small{color:#cfc0aa;margin-top:.2rem;line-height:1.4}.difficulty em{color:#e8b65e;margin-top:.3rem;font-size:.76rem;font-style:normal}.field-help,.autosave-note{color:#b9ad9c;margin:0;font-size:.8rem}.error,.global-error{color:#ffb9a0}.global-error{z-index:8;background:#341a14;border:1px solid #b95e43;max-width:30rem;padding:1rem;position:fixed;bottom:1rem;right:1rem}.dialog-actions,.header-actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.settlement-header{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:1.5rem;display:flex}.difficulty-tag:before{content:"◇ "}.difficulty-tag.ashbound:before{content:"◆ "}.difficulty-tag.wayfarer:before{content:"○ "}.settlement-grid{background:#181411;border:1px solid #5b493a;grid-template-columns:minmax(0,1fr) minmax(17rem,22rem);min-height:31rem;display:grid}.scene-frame{background:#17231f;min-height:31rem;position:relative;overflow:hidden}.scene-frame canvas{touch-action:none;width:100%;height:100%;min-height:31rem;display:block}.scene-frame:after{content:"PROVISIONAL DIORAMA";color:#e5c48e;letter-spacing:.12em;background:#120f0cc7;border:1px solid #b58a52;padding:.25rem .45rem;font-size:.65rem;position:absolute;top:1rem;left:1rem}.scene-labels span{color:#fff0d4;background:#0f0c09c7;border:1px solid #725a40;padding:.4rem .6rem;font-size:.78rem;position:absolute;bottom:4rem}.market-label{left:14%}.inn-label{right:13%}.renderer-status{color:#d3c5ae;margin:0;font-size:.75rem;position:absolute;bottom:.4rem;left:1rem;right:1rem}.ledger-panel{background:linear-gradient(135deg,#2a2119,#18130f);border-left:1px solid #5b493a;padding:1.4rem}.ledger-panel dl{gap:.5rem;display:grid}.ledger-panel dl div{border-bottom:1px dotted #625243;justify-content:space-between;padding-bottom:.35rem;display:flex}.ledger-panel dd{color:#efc36f;margin:0;font-weight:800}.sound-equivalent,.save-state{color:#cfc0aa;background:#14100d;border-left:.2rem solid #9c7645;padding:.7rem;font-size:.8rem}.settlement-actions{flex-wrap:wrap;align-items:center;gap:.7rem;padding:1.2rem 0;display:flex}.settlement-actions h2{width:100%;margin-bottom:.2rem}.route-planner,.arrival-card{background:linear-gradient(135deg,#241c16,#15110e);border:1px solid #5b493a;margin-top:1.25rem;padding:clamp(1rem,3vw,1.6rem)}.route-heading{justify-content:space-between;align-items:start;gap:1rem;display:flex}.view-toggle{gap:.35rem;display:flex}.view-toggle button[aria-pressed=true]{color:#fff4df;background:#6f492f;box-shadow:inset 0 0 0 .12rem #efc36f}.route-map{background:radial-gradient(circle at 73% 28%,#74513a,#30251e 40%,#17120f);border:1px solid #66513e;min-height:19rem;margin:1rem 0;position:relative;overflow:hidden}.map-node{z-index:2;color:#fff1d3;text-align:center;background:#211812;border:2px solid #e3b96f;min-width:6.5rem;padding:.55rem;position:absolute}.map-node:before{content:"◇ ";color:#efc36f}.map-node.sootwater{bottom:12%;left:7%}.map-node.toll{bottom:48%;left:35%}.map-node.relay{bottom:18%;left:58%}.map-node.lastlight{top:12%;right:6%}.map-lines span{z-index:1;transform-origin:0;background:repeating-linear-gradient(90deg,#d7a34e 0 1rem,#4f4034 1rem 1.4rem);border:1px solid #1b120c;height:.45rem;position:absolute}.direct-line{width:69%;bottom:25%;left:16%;transform:rotate(-27deg)}.relay-line{width:40%;bottom:44%;left:41%;transform:rotate(23deg)}.map-actions{z-index:3;gap:.35rem;display:grid;position:absolute;bottom:.7rem;right:.7rem}.route-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;padding:0;list-style:none;display:grid}.route-list li,.quote-card{background:#17120f;border:1px solid #695441;padding:1rem}.route-list h3,.quote-card h3{margin-top:0;font-family:Georgia,serif;font-size:1.35rem}.quote-card ul{flex-wrap:wrap;gap:1rem;padding-left:1.2rem;display:flex}.route-warning{color:#ffd19a}.toll-preview{background:#211a14;border-left:.2rem solid #a87b49;flex-wrap:wrap;gap:.5rem;margin:1rem 0;padding:.8rem;display:flex}.toll-preview h4{width:100%;margin:0}.arrival-card dl{flex-wrap:wrap;gap:1.5rem;display:flex}.arrival-card dl div{min-width:9rem}.arrival-card dd{color:#efc36f;margin:.2rem 0 0;font-weight:800}.ledger-tabs{gap:.5rem;margin-top:1.25rem;display:flex}.ledger-tabs button[aria-pressed=true]{color:#fff4df;background:#6f492f;box-shadow:inset 0 0 0 .12rem #efc36f}.party-manager{background:linear-gradient(135deg,#241c16,#15110e);border:1px solid #5b493a;margin-top:.75rem;padding:clamp(1rem,3vw,1.6rem)}.party-heading{justify-content:space-between;align-items:start;gap:1rem;display:flex}.party-heading h2,.character-detail h3{margin-bottom:.3rem}.party-capacity{color:#efc36f;border:.2rem double #d7a34e;border-radius:50%;place-items:center;min-width:4.6rem;min-height:4.6rem;font:700 1.25rem Georgia,serif;display:grid}.profile-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;display:grid}.profile-grid article{background:#17120f;border:1px solid #695441;flex-direction:column;padding:1rem;display:flex}.profile-grid h4{margin:0;font:500 1.3rem Georgia,serif}.profile-grid button{margin-top:auto}.metric-list{grid-template-columns:repeat(2,1fr);gap:.25rem;display:grid}.metric-list div{border-bottom:1px dotted #56483d;justify-content:space-between;gap:.5rem;padding-bottom:.2rem;display:flex}.metric-list dt{text-transform:capitalize}.metric-list dd{color:#efc36f;margin:0;font-weight:800}.roster-layout{grid-template-columns:minmax(13rem,18rem) minmax(0,1fr);gap:1rem;margin-top:1.2rem;display:grid}.roster-list{align-content:start;gap:.4rem;display:grid}.roster-list button{text-align:left;color:#f4ead7;background:#17120f;border-color:#57473a;gap:.15rem;display:grid}.roster-list button[aria-current=true]{background:#553820;border-color:#efc36f;box-shadow:inset .25rem 0 #efc36f}.roster-list small{color:#c8b9a3}.character-detail{background:#1b1612;border:1px solid #6a5543;min-width:0;padding:clamp(1rem,3vw,1.5rem)}.character-detail>header{align-items:center;gap:1rem;display:flex}.portrait-fallback{aspect-ratio:4/5;color:#fff1d3;background:radial-gradient(circle at 50% 28%,#a86a39,#38251a 48%,#15100d);border:.2rem double #b8874b;flex:0 0 6rem;place-items:center;font:500 1.5rem Georgia,serif;display:grid}.availability{color:#d8c8b2;text-transform:uppercase;letter-spacing:.07em;border:1px solid #80674f;margin:0;padding:.2rem .45rem;font-size:.8rem;display:inline-block}.availability.active{color:#a9e1bd;border-color:#75b18d}.availability.injured,.availability.departed{color:#ffc0aa;border-color:#c36c53}.character-actions,.relationship-actions{flex-wrap:wrap;gap:.45rem;margin:.8rem 0;display:flex}.derived-grid{grid-template-columns:repeat(3,1fr);gap:.4rem;display:grid}.derived-grid div{background:#130f0c;border:1px solid #504338;padding:.55rem}.derived-grid dt{color:#baa992;font-size:.75rem}.derived-grid dd{color:#efc36f;margin:.2rem 0 0;font-weight:800}.character-detail details{margin-top:.8rem}.character-detail summary{cursor:pointer;color:#efc36f;min-height:2.75rem}.character-detail table{border-collapse:collapse;width:100%}.character-detail th,.character-detail td{text-align:right;border-bottom:1px solid #4e4136;padding:.4rem}.character-detail th:first-child{text-align:left}.tag-list{flex-wrap:wrap;gap:.4rem;padding:0;list-style:none;display:flex}.tag-list li{background:#2b2018;border:1px solid #866644;padding:.25rem .5rem}.kit-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.kit-columns h5{margin:0;font-size:1rem}.kit-columns ul{padding-left:1.2rem}.kit-columns li{color:#9f9281;margin-bottom:.55rem}.kit-columns li.equipped{color:#f4ead7}.kit-columns small{color:#b9ad9c;line-height:1.4;display:block}.resource-note,.party-notice{background:#130f0c;border-left:.2rem solid #d7a34e;padding:.6rem}.battle-entry{border-color:#f0cb76;margin-left:auto;box-shadow:0 0 1rem #d7a34e38}.battle-screen{width:min(88rem,100% - 2rem);margin:0 auto;padding:clamp(1.2rem,4vw,3rem) 0}.battle-header{justify-content:space-between;align-items:end;gap:1rem;display:flex}.battle-header h1{font-size:clamp(2.7rem,7vw,5.5rem)}.battle-speed,.action-buttons,.destination-buttons,.forecast>div{flex-wrap:wrap;gap:.45rem;display:flex}.battle-speed button[aria-pressed=true]{color:#fff4df;background:#6f492f;box-shadow:inset 0 0 0 .12rem #efc36f}.battle-stage{background:#17120f;border:1px solid #66513e;grid-template-columns:minmax(0,1fr) minmax(17rem,22rem);min-height:24rem;margin:1rem 0;display:grid}.battle-canvas{background:#241c17;min-height:24rem;position:relative}.battle-canvas canvas{width:100%;height:100%;min-height:24rem;display:block}.battle-canvas p{color:#d9c6ab;background:#0f0c09cc;margin:0;padding:.3rem .5rem;font-size:.75rem;position:absolute;bottom:.5rem;left:.8rem}.intent-panel{background:linear-gradient(145deg,#2d2119,#17120f);border-left:1px solid #66513e;padding:1rem}.intent-panel ul{gap:.6rem;padding:0;list-style:none;display:grid}.intent-panel li{background:#120f0c;border:1px solid #694b3b;grid-template-columns:2rem 1fr;padding:.6rem;display:grid}.intent-panel li span{color:#ef8061;font-size:1.3rem}.timeline{background:#1b1612;border:1px solid #5d4b3d;padding:1rem}.timeline ol{gap:.5rem;padding:0 0 .4rem;list-style:none;display:flex;overflow-x:auto}.timeline li{background:#120f0c;border:1px solid #554438;flex:0 0 10rem;gap:.25rem;padding:.7rem;display:grid}.timeline li.active{border-color:#f1c66f;box-shadow:inset 0 -.25rem #d7a34e}.timeline span{color:#c8b9a3;font-size:.75rem}.formations{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0;display:grid}.formations>section{background:#19140f;border:1px solid #5b493a;padding:1rem}.formation-rank{grid-template-columns:5.5rem repeat(2,minmax(0,1fr));align-items:stretch;gap:.45rem;margin-bottom:.45rem;display:grid}.formation-rank h3{color:#bfae96;text-transform:uppercase;margin:0;padding:.7rem .25rem;font-size:.75rem}.formation-rank button{text-align:left;color:#f4ead7;background:#2a2119;border-color:#7b6048;gap:.2rem;min-height:5rem;display:grid}.formation-rank button:disabled{opacity:.78}.formation-rank button span{color:#d7c4aa;font-size:.75rem}.empty-slot{color:#b8aa98;border:1px dashed #6f6255;place-items:center;min-height:5rem;font-size:.75rem;display:grid}.combat-controls,.combat-terminal,.combat-log{background:linear-gradient(135deg,#241c16,#15110e);border:1px solid #66513e;margin:1rem 0;padding:1rem}.forecast{background:#100d0a;border-left:.25rem solid #79b49d;margin-top:.8rem;padding:.8rem}.forecast.invalid{border-color:#c36c53}.forecast ul{color:#cfc0aa;padding-left:1.2rem}.forecast>div{justify-content:flex-end}.combat-terminal{border-color:#cda45b;box-shadow:inset 0 0 3rem #cb8f3914}.combat-log ol{max-height:18rem;overflow:auto}.combat-log li{border-bottom:1px dotted #4f4035;padding:.35rem 0}.combat-notice{background:#130f0c;border-left:.25rem solid #d7a34e;padding:.7rem}.presentation-fast .battle-canvas canvas{transition-duration:50ms}.presentation-skip .battle-canvas canvas{transition:none}.morale-readout{color:#f2cf76}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-top:.75rem;display:grid}.skill-button{text-align:left;gap:.2rem;min-height:4.5rem;padding-right:2.8rem;display:grid;position:relative}.skill-button small{color:#d7c4aa}.skill-shape,.status-shape{color:#f0c36c;border:.12rem solid;width:1rem;height:1rem;display:inline-block}.skill-button .skill-shape{position:absolute;top:.75rem;right:.75rem}.shape-circle{border-radius:50%}.shape-diamond{transform:rotate(45deg)}.shape-triangle{border:.55rem solid #0000;border-bottom-color:currentColor;width:0;height:0}.status-vocabulary,.reaction-log{background:#17120f;border:1px solid #66513e;margin:1rem 0;padding:1rem}.status-vocabulary summary{cursor:pointer;font-weight:700}.status-vocabulary ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem 1rem;padding-left:1.2rem;display:grid}.status-vocabulary li{color:#d7c4aa}.status-vocabulary .status-shape{margin-right:.5rem}.reaction-log li{margin-bottom:.35rem}.sr-status{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:fixed;overflow:hidden}.market-ledger{background:linear-gradient(135deg,#241c16,#15110e);border:1px solid #66513e;margin:1rem 0;padding:1rem}.table-scroll{overflow-x:auto}.market-ledger table{border-collapse:collapse;width:100%}.market-ledger th,.market-ledger td{text-align:left;border-bottom:1px solid #514235;padding:.65rem}.market-ledger caption{text-align:left;padding:.5rem;font-weight:700}.quote-card{background:#100d0a;border-left:.25rem solid #efc36f;margin-top:1rem;padding:1rem}.quote-card dl{grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;display:grid}.quote-card dl div{border:1px solid #514235;padding:.4rem}.quote-card dt{color:#c8b9a3}.quote-card dd{margin:.2rem 0 0;font-weight:700}.narrative-journal{background:linear-gradient(135deg,#241c16,#15110e);border:1px solid #66513e;margin:1rem 0;padding:clamp(1rem,3vw,1.6rem)}.dialogue-card,.faction-card{background:#17120f;border:1px solid #695441;margin:1rem 0;padding:1rem}.speaker-label{color:#efc36f;letter-spacing:.08em;text-transform:uppercase;font-weight:800}.dialogue-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.dialogue-choices button{text-align:left;gap:.35rem;display:grid}.dialogue-choices span{font-size:.78rem;font-weight:500}.faction-card dl{gap:1rem;display:flex}.faction-card dl div{border:1px solid #514235;min-width:8rem;padding:.5rem}.faction-card dd{color:#efc36f;text-transform:capitalize;margin:.2rem 0 0;font-weight:800}.journal-search{gap:.4rem;max-width:34rem;font-weight:700;display:grid}.journal-entries{gap:.5rem;padding-left:1.5rem;display:grid}.journal-entries li{background:#100d0a;border-left:.2rem solid #9c7645;padding:.7rem}.journal-entries p{margin:0 0 .25rem}.journal-entries small{color:#c8b9a3}.journal-entries a{color:#efc36f}.consequence-result{background:#100d0a;border-left:.25rem solid #79b49d;padding:.8rem}.tranche-atlas{background:linear-gradient(135deg,#241c16,#111713);border:1px solid #66513e;margin:1rem 0;padding:clamp(1rem,3vw,1.6rem)}.tranche-heading{justify-content:space-between;align-items:start;gap:1rem;display:flex}.tranche-heading h2{margin:.2rem 0;font-size:clamp(2rem,5vw,3.6rem)}.tranche-count{border:.2rem double #d7a34e;border-radius:50%;place-items:center;min-width:5rem;min-height:5rem;display:grid}.tranche-count strong{color:#efc36f;font:700 1.6rem Georgia,serif}.tranche-count span{text-transform:uppercase;font-size:.7rem}.tranche-layout{grid-template-columns:minmax(0,1fr) minmax(16rem,20rem);gap:1rem;margin:1rem 0;display:grid}.tranche-map{background:radial-gradient(circle at 70% 25%,#66543b,#28352d 45%,#15110e);border:1px solid #6f5943;min-height:34rem;position:relative;overflow:auto}.tranche-node{z-index:1;background:#130f0cf0;border:1px solid #aa8b5d;width:min(9.5rem,23%);min-height:3.5rem;padding:.45rem;position:absolute;transform:translate(-50%,-50%)}.tranche-node:before{content:"◇ ";color:#efc36f}.tranche-node strong,.tranche-node small{display:block}.tranche-node small{color:#c9baa5;margin-top:.2rem;font-size:.68rem}.tranche-node.current{border:.2rem solid #f0cb76;box-shadow:0 0 0 .25rem #1b130c,0 0 1.2rem #d7a34e}.tranche-node.current:before{content:"◆ "}.tranche-facts,.tranche-actions{background:#17120f;border:1px solid #5d4b3d;padding:1rem}.tranche-facts dl{gap:.5rem;display:grid}.tranche-facts dl div{border-bottom:1px dotted #56483d;justify-content:space-between;gap:.5rem;display:flex}.tranche-facts dd{color:#efc36f;margin:0;font-weight:700}.tranche-actions{margin:1rem 0}.tranche-actions button{margin:0 .5rem .5rem 0}.success-card{background:#0e1c17;border-left:.25rem solid #79b49d;padding:.8rem}.allocation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1rem;display:grid}@media (max-width:52rem){.title-screen{grid-template-columns:1fr}.title-art{opacity:.38;inset:0}.title-copy{background:linear-gradient(90deg,#120f0cf0,#120f0c9e)}.settlement-header,.battle-header{display:grid}.header-actions{justify-content:flex-start}.settlement-grid,.battle-stage,.formations,.tranche-layout{grid-template-columns:1fr}.ledger-panel,.intent-panel{border-top:1px solid #5b493a;border-left:0}.route-list,.profile-grid,.roster-layout{grid-template-columns:1fr}.roster-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:28rem){h1{overflow-wrap:anywhere}.title-copy{padding:1.3rem}.settlement-screen,.panel-screen,.battle-screen{width:calc(100% - 1rem)}.scene-frame,.scene-frame canvas,.battle-canvas,.battle-canvas canvas{min-height:19rem}.dialog-actions button,.header-actions button,.settlement-actions button,.map-actions button,.action-buttons button{width:100%}.save-row{flex-direction:column;align-items:stretch}.route-heading{display:grid}.route-map{min-height:24rem}.map-actions{left:.7rem}.roster-list,.derived-grid,.kit-columns,.dialogue-choices{grid-template-columns:1fr}.ledger-tabs{flex-wrap:wrap}.party-heading{display:grid}.formation-rank{grid-template-columns:1fr 1fr}.formation-rank h3{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important}}@media (forced-colors:active){button,.dialog-card,.save-row,.settlement-grid,.ledger-panel{border-color:canvastext}.title-art{display:none}}.experience-dock{z-index:9;min-height:calc(3.4rem * var(--ui-scale));padding:.45rem max(1rem, env(safe-area-inset-right)) .45rem max(1rem, env(safe-area-inset-left));color:#d8cbb8;background:#120f0cf5 url(/assets/ashfall/ledger-icon.svg) right 4rem center/2rem no-repeat;border-bottom:1px solid #725a40;align-items:center;gap:.7rem 1rem;font-size:.78rem;display:flex;position:fixed;inset:0 0 auto;box-shadow:0 .5rem 1.5rem #00000047}.experience-dock .status-glyph{color:#79b49d}.experience-dock button{min-height:2.75rem;margin-left:auto}.experience-dock span+span{border-left:1px solid #57483b;padding-left:1rem}.experience-center{background:#1c1713 url(/assets/ashfall/ledger-icon.svg) calc(100% - 2rem) 1.5rem/3rem no-repeat;border-top:.3rem solid #d7a34e;width:min(68rem,100%)}.experience-center>header{justify-content:space-between;align-items:start;gap:1rem;padding-right:4rem;display:flex}.experience-center>nav{z-index:1;background:#1c1713;gap:.4rem;padding:.7rem 0;display:flex;position:sticky;top:-.1rem}.experience-center>nav button[aria-pressed=true]{color:#fff4df;background:#6f492f;box-shadow:inset 0 -.2rem #efc36f}.experience-center section{background:linear-gradient(135deg,#241c16,#15110e);border:1px solid #5d4b3d;padding:1rem}.setting-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.setting-grid label{background:#120f0c;border:1px solid #56483d;min-width:0;padding:.75rem;font-weight:700}.setting-grid select,.experience-center table select{color:#fff4df;background:#100d0a;border:1px solid #796a5b;width:100%;min-height:2.75rem;padding:.45rem}.check-setting{grid-template-columns:2rem 1fr;align-items:center;display:grid!important}.check-setting input{accent-color:#d7a34e;min-height:1.5rem}.experience-center table{border-collapse:collapse;width:100%}.experience-center th,.experience-center td{text-align:left;border-bottom:1px solid #514235;min-width:9rem;padding:.7rem}.experience-center th small{color:#c8b9a3;max-width:28rem;margin-top:.25rem;font-weight:400;display:block}.settings-actions{flex-wrap:wrap;gap:.5rem;margin:1rem 0;display:flex}.transfer-field{gap:.4rem;font-weight:700;display:grid}.transfer-field textarea{resize:vertical;color:#fff4df;background:#100d0a;border:1px solid #796a5b;min-height:8rem;padding:.7rem;font-family:ui-monospace,monospace;font-size:.78rem}.tutorial-list{gap:.5rem;margin:1rem 0;display:grid}.tutorial-list details{background:#100d0a;border-left:.2rem solid #9c7645;padding:.7rem}.tutorial-list summary{color:#efc36f;cursor:pointer;min-height:2.75rem;padding:.65rem 0;font-weight:750}.settings-notice{background:#100d0a;border-left:.2rem solid #79b49d;min-height:1.55rem;padding:.7rem}:root[data-contrast=high]{color:#fff;background:#000}.theme-placeholder,:root[data-contrast=high] body{background:#000}:root[data-contrast=high] .experience-dock,:root[data-contrast=high] .dialog-card,:root[data-contrast=high] section,:root[data-contrast=high] article,:root[data-contrast=high] aside{background-color:#000;background-image:none;border-color:#fff}:root[data-contrast=high] button{border-width:2px}:root[data-contrast=high] .eyebrow,:root[data-contrast=high] .panel-kicker,:root[data-contrast=high] a{color:#ffea73}:root[data-motion=reduced] *,:root[data-motion=reduced] :before,:root[data-motion=reduced] :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}:root[data-locale=pseudo] body{letter-spacing:.035em;word-spacing:.08em}:root[data-captions=off] .sound-equivalent{display:none}:root[data-audio=muted] .sound-equivalent{border-left-style:double;display:block}@container (width<=719px){.settlement-grid,.battle-stage,.formations,.tranche-layout{grid-template-columns:1fr}}@media (max-width:719px){body{padding-top:calc(6.6rem * var(--ui-scale))}.experience-dock{min-height:calc(6.6rem * var(--ui-scale));background-image:none;flex-wrap:wrap;align-content:center}.experience-dock span{flex:9rem}.experience-dock span+span{border-left:0;padding-left:0}.experience-dock button{flex:100%;margin-left:0}.title-screen{min-height:calc(100vh - 6.6rem * var(--ui-scale))}.ledger-tabs{scroll-snap-type:x proximity;padding-bottom:.5rem;overflow-x:auto}.ledger-tabs button{scroll-snap-align:start;flex:none}.experience-center>header{padding-right:3rem;display:grid}.experience-center>nav{overflow-x:auto}.setting-grid{grid-template-columns:1fr}}@media (max-width:400px){body{padding-top:0}.experience-dock{gap:.25rem .5rem;min-height:0;font-size:max(11px,.7rem);position:relative}.experience-dock span:nth-of-type(3){display:none}.skip-link:not(:focus){top:0;transform:translateY(-200%)}.experience-center{padding:1rem .7rem}.experience-center th,.experience-center td{min-width:7.5rem;padding:.45rem}.profile-grid,.allocation-grid,.quote-card dl,.status-vocabulary ul,.skill-grid{grid-template-columns:1fr}}
