:root{--bg:#090d14;--panel:#121827;--panel2:#192033;--line:#2a3348;--text:#f0f3f8;--muted:#a7b0c5;--gold:#d9bf8a;--green:#87c49a;--amber:#dbab63;--red:#cf7171;--blue:#8ba4d8;--shadow:rgba(0,0,0,.38)}
*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at top,#20283b 0,var(--bg) 54%);color:var(--text);min-height:100svh;min-height:100vh}button,input,select,textarea{font:inherit}button{touch-action:manipulation}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}p{color:var(--muted);line-height:1.45}.hidden{display:none!important}.label{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;color:var(--muted);font-weight:800}.compact-text{font-size:.92rem;color:var(--muted);line-height:1.42}.brand-mark{font-weight:950;letter-spacing:-.055em;font-size:1.55rem;color:var(--gold)}.topline{font-size:.78rem;color:var(--muted);margin-top:1px}.app-frame{min-height:100svh;height:100svh;height:100dvh;max-width:580px;margin:0 auto;display:grid;grid-template-rows:auto auto auto minmax(0,1fr);background:linear-gradient(180deg,rgba(18,24,39,.86),rgba(9,13,20,.96));border-left:1px solid rgba(255,255,255,.04);border-right:1px solid rgba(255,255,255,.04);overflow:hidden;padding-bottom:env(safe-area-inset-bottom)}.app-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid var(--line);background:rgba(9,13,20,.72);backdrop-filter:blur(8px)}.icon-btn,.btn{border:1px solid transparent;border-radius:14px;font-weight:850;cursor:pointer}.icon-btn{background:#101726;border-color:var(--line);color:var(--text);padding:8px 10px;font-size:.82rem}.btn{background:var(--gold);color:#1b170d;padding:10px 13px}.btn.primary{background:var(--gold);color:#1b170d}.btn.secondary{background:#101726;border-color:var(--line);color:var(--text)}.btn.good{background:var(--green);color:#0b130e}.btn.warn{background:var(--amber);color:#171208}.btn.bad{background:var(--red);color:#fff}.btn.small-btn{padding:8px 10px;font-size:.84rem}.btn.wide{width:100%}.btn:disabled,.seg:disabled{opacity:.45;cursor:not-allowed}.shared-banner{margin:8px 10px 0;border:1px solid var(--line);border-left:4px solid var(--gold);background:#101726;border-radius:14px;padding:9px 10px;color:var(--muted);font-size:.86rem}.app-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:8px 10px;border-bottom:1px solid var(--line);background:rgba(9,13,20,.7)}.tab{border:1px solid var(--line);border-radius:12px;background:#101726;color:var(--muted);padding:8px 4px;font-size:.78rem;font-weight:850}.tab.active{background:rgba(217,191,138,.18);color:var(--gold);border-color:rgba(217,191,138,.45)}.screen{display:none;min-height:0;overflow:hidden;padding:10px}.screen.active{display:block;height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.screen-head,.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.screen-head h2,.section-head h2{margin:0}.panel,.case-card,.ledger-item,.empty-state,.need-card,.action-card,.stage-card,.modal-card,.profile-card{border:1px solid var(--line);background:rgba(18,24,39,.96);border-radius:20px;box-shadow:0 12px 28px var(--shadow)}.panel{padding:13px}.home-stack{height:100%;display:flex;flex-direction:column;gap:10px;overflow:auto;padding-bottom:8px}.hero-panel h1{font-size:clamp(2rem,11vw,3.2rem);letter-spacing:-.06em;margin-bottom:6px}.quick-rule-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.quick-rule-grid div{border:1px solid var(--line);border-radius:14px;background:#0e1421;padding:9px}.quick-rule-grid b{display:block;color:var(--text);font-size:.95rem}.quick-rule-grid span{display:block;color:var(--muted);font-size:.78rem;margin-top:2px}.identity-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px}@media(max-width:380px){.identity-grid{grid-template-columns:1fr}}select,input,textarea{width:100%;background:#0e1421;border:1px solid var(--line);color:var(--text);border-radius:13px;padding:10px}select{min-height:42px}.button-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.button-row.tight{margin-top:9px}.mini-details{margin-top:10px;border:1px solid var(--line);border-radius:14px;padding:9px;background:#0e1421}.mini-details summary{color:var(--gold);font-weight:850}.recover-row{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:8px}.profile-card{padding:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}.profile-card strong{display:block}.code-line{display:block;color:var(--muted);font-size:.79rem;margin-top:2px}.status-line,.micro-rule{font-size:.8rem;color:var(--muted);margin-top:8px}.start-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0}.start-controls label{font-size:.76rem;color:var(--muted);font-weight:800}.stat-strip{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.stat-strip-panel{position:static}.stat-card{border:1px solid var(--line);border-radius:14px;background:#0e1421;padding:8px;text-align:center}.stat-card b{display:block;font-size:1.25rem}.stat-card span{display:block;color:var(--muted);font-size:.68rem}.case-tools{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin:10px 0}.app-scroll{overflow:auto;min-height:0}.case-list{height:calc(100dvh - 190px);display:grid;grid-template-columns:1fr;gap:9px;padding-bottom:8px}.case-card{padding:10px;display:grid;grid-template-columns:72px 1fr;gap:10px;align-items:start}.case-card.selected{border-color:var(--gold);box-shadow:0 0 0 2px rgba(217,191,138,.14) inset}.case-card img{width:72px;height:72px;object-fit:cover;border-radius:14px;border:1px solid var(--line);background:#0d1118}.case-card strong{display:block;font-size:.98rem}.case-card .summary{font-size:.83rem;color:var(--muted);line-height:1.32}.chip-row,.meta-row{display:flex;gap:5px;flex-wrap:wrap}.chip{display:inline-flex;border:1px solid var(--line);border-radius:999px;background:#0e1421;color:var(--muted);padding:4px 7px;font-size:.72rem}.chip.good{color:#d5ecd8;border-color:rgba(135,196,154,.42)}.chip.warn{color:#f8dfb3;border-color:rgba(219,171,99,.42)}.chip.bad{color:#efcaca;border-color:rgba(207,113,113,.42)}.empty-state{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px}.play-surface{height:100%;display:grid;grid-template-rows:auto auto auto auto auto auto auto 1fr auto;gap:8px;overflow:auto;padding-bottom:calc(22px + env(safe-area-inset-bottom));align-content:start;-webkit-overflow-scrolling:touch}.play-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.play-header h2{margin:0;font-size:1.05rem;line-height:1.1}.timer-block{text-align:right}.timer-block span{display:block;text-transform:uppercase;color:var(--muted);font-size:.62rem;letter-spacing:.08em;font-weight:850}.timer-block strong{display:block;font-size:2rem;letter-spacing:-.05em;line-height:1}.meter{height:9px;background:#0e1421;border:1px solid var(--line);border-radius:999px;overflow:hidden}.bar{height:100%;width:0%;background:linear-gradient(90deg,var(--gold),var(--amber),var(--red));transition:width .25s linear}.mini-track{display:grid;grid-template-columns:repeat(12,1fr);gap:4px}.mini-dot{height:9px;border-radius:4px;background:#101726;border:1px solid var(--line)}.mini-dot.done{background:rgba(217,191,138,.65)}.mini-dot.active{background:var(--gold);box-shadow:0 0 10px rgba(217,191,138,.5)}.stage-carousel{display:grid;grid-template-columns:.7fr 1.5fr .7fr;gap:6px;align-items:stretch}.stage-card{padding:9px 8px;text-align:center;color:var(--muted);font-size:.72rem;min-height:48px;display:flex;align-items:center;justify-content:center}.stage-card.current{color:var(--text);font-size:1.13rem;font-weight:950;border-color:var(--gold);background:linear-gradient(135deg,rgba(217,191,138,.18),rgba(255,255,255,.03))}.spaces-left{text-align:center;color:var(--muted);font-size:.76rem;margin-top:-3px}.need-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.need-card{padding:9px;min-height:74px}.need-card strong{display:block;font-size:1rem;margin:2px 0}.need-card small{display:block;color:var(--muted);font-size:.73rem;line-height:1.25}.primary-need{border-color:rgba(217,191,138,.48)}.pillar-bar{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.pillar-bar div{border:1px solid var(--line);background:#0e1421;border-radius:12px;text-align:center;padding:6px 2px}.pillar-bar b{display:block;font-size:1.05rem}.pillar-bar span{display:block;color:var(--muted);font-size:.59rem}.action-card{padding:9px;display:grid;gap:7px}.mode-row{display:grid;grid-template-columns:1fr 1fr;gap:5px}.weave-panel{border:1px solid var(--line);border-radius:13px;background:#0b101a;padding:7px;display:grid;gap:5px}.weave-note{font-size:.73rem;color:var(--muted);line-height:1.25}.seg-row.compact .seg{padding:6px 2px}.rank-grid.compact{grid-template-columns:repeat(9,1fr)}.rank-grid.compact .seg{padding:6px 2px}.action-topline{font-size:.78rem;color:var(--muted);text-align:center}.seg-label{font-size:.64rem;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.08em}.seg-row{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.rank-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.seg{border:1px solid var(--line);background:#0e1421;color:var(--text);border-radius:11px;padding:8px 3px;font-size:.78rem;font-weight:850}.seg.active{background:rgba(217,191,138,.18);border-color:var(--gold);color:var(--gold)}.action-buttons{display:grid;grid-template-columns:1fr .72fr .62fr;gap:6px}.action-buttons .btn{padding:10px 6px}.play-footer-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.ledger-grid{height:calc(100dvh - 124px);display:grid;grid-template-columns:1fr;gap:12px}.ledger-list{display:grid;gap:8px}.ledger-item{padding:10px}.ledger-item strong{display:block}.ledger-item .meta{font-size:.76rem;color:var(--muted)}.help-scroll{height:calc(100dvh - 100px);display:grid;gap:10px}.tight-list{margin:0;padding-left:22px;color:var(--muted);font-size:.92rem;line-height:1.45}.overlay{position:fixed;inset:0;background:rgba(0,0,0,.78);display:none;align-items:center;justify-content:center;z-index:60;padding:12px}.overlay.show{display:flex}.modal-card{width:min(560px,100%);max-height:94dvh;overflow:auto;padding:14px}.compact-modal{max-width:420px}.begin-card,.final-card{display:grid;grid-template-columns:1fr;gap:12px}.begin-image-wrap img,.final-image-wrap img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:16px;border:1px solid var(--line);background:#0d1118}.countdown-line{border-left:4px solid var(--gold);background:#0e1421;color:var(--muted);border-radius:12px;padding:9px;margin:10px 0}.log{display:grid;gap:8px}.log-entry{border:1px solid var(--line);border-left-width:4px;border-radius:14px;background:#0e1421;padding:9px}.log-entry.help{border-left-color:var(--green)}.log-entry.risk{border-left-color:var(--red)}.log-entry.info{border-left-color:var(--amber)}.review-box,.share-box{border:1px solid var(--line);border-radius:14px;background:#0e1421;padding:10px;margin-top:10px}.review-box summary{color:var(--gold);font-weight:850}.copy-row{display:grid;grid-template-columns:1fr auto;gap:6px;margin:6px 0 10px}.modal-title{font-size:clamp(1.8rem,8vw,3.1rem);line-height:.95;letter-spacing:-.05em;margin-bottom:8px}
@media(min-width:820px){.app-frame{max-width:1120px}.screen.active{padding:12px}.home-stack{display:grid;grid-template-columns:1.1fr .9fr;grid-template-rows:auto auto;align-content:start}.hero-panel{grid-row:span 2}.stat-strip{grid-template-columns:repeat(4,1fr)}.case-list{grid-template-columns:repeat(2,minmax(0,1fr))}.play-surface{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto auto auto 1fr auto}.play-header,.meter,.mini-track,.stage-carousel,.spaces-left{grid-column:1/-1}.need-row,.pillar-bar{grid-column:1/-1}.action-card{grid-column:1}.play-footer-actions{grid-column:2;align-self:end}.ledger-grid{grid-template-columns:1fr 1fr}.begin-card,.final-card{grid-template-columns:.9fr 1.1fr}.case-list{height:calc(100dvh - 190px)}}
@media(max-height:720px){.hero-panel p,.micro-rule,.compact-text{font-size:.82rem}.quick-rule-grid{display:none}.need-card{min-height:60px}.need-card small{display:none}.stage-card{min-height:40px}.action-card{gap:4px}.seg{padding:6px 2px}.rank-grid{grid-template-columns:repeat(13,1fr)}.pillar-bar span{display:none}.home-stack{gap:8px}.panel{padding:10px}.next-move-line{font-size:.68rem}}
/* Admin and document pages */.wrap{max-width:1120px;margin:0 auto;padding:18px}.site-header{border-bottom:1px solid var(--line);background:rgba(9,13,20,.88)}.nav-row{display:flex;justify-content:space-between;align-items:center}.brand{font-weight:950;color:var(--gold);font-size:1.4rem}.site-nav{display:flex;gap:14px}.site-nav a{color:var(--muted)}.grid{display:grid;gap:14px}.two{grid-template-columns:1fr 1fr}.three{grid-template-columns:repeat(3,1fr)}@media(max-width:760px){.two,.three{grid-template-columns:1fr}}.hero{padding:18px}.hero-card{border:1px solid var(--line);background:rgba(18,24,39,.96);border-radius:22px;padding:18px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.admin-box{border:1px solid var(--line);border-radius:20px;background:rgba(18,24,39,.96);padding:14px}.table{width:100%;border-collapse:collapse}.table th,.table td{border-bottom:1px solid var(--line);padding:8px;text-align:left}.table th{color:var(--gold)}textarea{min-height:160px}.site-footer{display:none}
/* Launch clarity pass */
.setup-panel{padding-bottom:12px}.setup-steps{display:grid;grid-template-columns:1fr 1fr;gap:7px}.setup-steps div{border:1px solid var(--line);border-radius:14px;background:#0e1421;padding:8px;display:flex;gap:8px;align-items:center}.setup-steps b{display:flex;align-items:center;justify-content:center;width:23px;height:23px;border-radius:50%;background:rgba(217,191,138,.18);color:var(--gold);font-size:.8rem}.setup-steps span{font-size:.78rem;color:var(--muted);line-height:1.2}.draw-card,.crisis-card,.meaning-card{border:1px solid var(--line);border-radius:14px;background:#0e1421;padding:8px 9px;color:var(--muted);font-size:.78rem}.draw-card,.crisis-card{display:flex;align-items:center;justify-content:space-between;gap:8px;border-left-width:4px}.draw-card{border-left-color:var(--gold)}.crisis-card{border-left-color:var(--red);background:rgba(207,113,113,.09)}.draw-card strong,.crisis-card strong,.meaning-card strong{display:block;color:var(--text);font-size:.86rem}.draw-card span,.crisis-card span,.meaning-card span{display:block;line-height:1.25}.meaning-card{border-left:4px solid var(--blue);min-height:45px}.final-meaning{margin-top:8px}.action-hint{font-size:.74rem;color:var(--muted);line-height:1.25;text-align:center;margin-top:-2px}.turn-rule,.next-move-line{font-size:.73rem;color:var(--muted);text-align:center;line-height:1.25}.turn-rule{border:1px solid var(--line);border-radius:12px;background:#0b101a;padding:7px 8px}.next-move-line{color:var(--gold)}.support-list{display:grid;gap:8px}.support-item{border:1px solid var(--line);border-radius:14px;background:#0e1421;padding:9px}.support-item strong{display:block;font-size:.9rem}.support-item span{display:block;color:var(--muted);font-size:.8rem;line-height:1.3;margin-top:2px}.begin-rules{border:1px solid var(--line);background:#0e1421;border-radius:13px;padding:8px 9px;color:var(--muted);font-size:.82rem;line-height:1.35;margin-top:8px}.pillar-bar button{border:1px solid var(--line);background:#0e1421;border-radius:12px;text-align:center;padding:6px 2px;color:var(--text);cursor:pointer}.pillar-bar button:focus,.pillar-bar button.active{outline:none;border-color:var(--gold);box-shadow:0 0 0 2px rgba(217,191,138,.12) inset}.pillar-bar button b{display:block;font-size:1.05rem}.pillar-bar button span{display:block;color:var(--muted);font-size:.59rem}.pillar-bar div{display:none}.status-line.good{color:#d5ecd8}.status-line.warn{color:#f8dfb3}.status-line.bad{color:#efcaca}.crisis-card.hidden,.draw-card.hidden{display:none!important}
@media(max-height:760px){.setup-panel .setup-steps{grid-template-columns:repeat(4,1fr)}.setup-steps div{display:block;text-align:center;padding:6px 4px}.setup-steps b{margin:0 auto 4px}.setup-steps span{font-size:.68rem}.draw-card,.crisis-card{padding:6px 7px}.meaning-card{display:none}.begin-rules{font-size:.75rem}}
/* Final launch usability patch */
@media(max-width:819px){
  .app-frame{width:100%;max-width:none;border-left:0;border-right:0}
  .app-topbar{padding:8px 10px}
  .brand-mark{font-size:1.75rem}
  .topline{font-size:.86rem;line-height:1.2}
  .app-tabs{grid-template-columns:repeat(5,1fr);gap:5px;padding:7px 8px}
  .tab{font-size:.72rem;padding:8px 2px;white-space:nowrap}
  .screen{padding:8px}
  .home-stack{gap:8px}
  .selected-panel .section-head{align-items:flex-start}
  .setup-panel .setup-steps{grid-template-columns:repeat(4,1fr)}
  .setup-steps div{display:block;text-align:center;padding:6px 4px}
  .setup-steps b{margin:0 auto 4px}
  .setup-steps span{font-size:.68rem}
  .stat-strip-panel{display:none!important}
  .ledger-grid{grid-template-columns:1fr;height:calc(100dvh - 118px)}
}
.step-state-line{border:1px solid var(--line);border-radius:12px;background:#0b101a;color:var(--muted);font-size:.74rem;line-height:1.25;text-align:center;padding:7px 8px}.step-state-line.action-used{border-color:rgba(217,191,138,.45);color:var(--gold);background:rgba(217,191,138,.08)}.steady-explain{font-size:.72rem;line-height:1.25;color:var(--muted);text-align:center;border-top:1px solid var(--line);padding-top:6px}.support-top-panel{border-left:4px solid var(--gold)}a.support-item{display:block;color:inherit;text-decoration:none}.support-item:hover{border-color:rgba(217,191,138,.45)}.draw-card{animation:drawPulse .9s ease-in-out 0s 2}.crisis-card{animation:crisisPulse .9s ease-in-out 0s 2}@keyframes drawPulse{0%,100%{box-shadow:none}50%{box-shadow:0 0 0 3px rgba(217,191,138,.12)}}@keyframes crisisPulse{0%,100%{box-shadow:none}50%{box-shadow:0 0 0 3px rgba(207,113,113,.16)}}
@media(max-height:720px){.steady-explain{display:none}.step-state-line{font-size:.68rem;padding:5px}.turn-rule{display:none}.help-scroll{height:calc(100dvh - 92px)}}

/* Step Away readability pass, sombre but clearer */
:root{
  --bg:#111824;
  --panel:#1d2636;
  --panel2:#273247;
  --line:#4a5872;
  --text:#fbfaf6;
  --muted:#c7cfdf;
  --gold:#efd18f;
  --green:#9ed9ad;
  --amber:#f0ba6d;
  --red:#e58a8a;
  --blue:#a9c0f2;
  --shadow:rgba(0,0,0,.28);
}
body{background:radial-gradient(circle at top,#344058 0,#141c2a 44%,#0f1520 100%);color:var(--text);font-size:16px;line-height:1.45}
p,.compact-text,.small,.status-line,.micro-rule,.topline,.code-line,.case-card .summary,.ledger-item .meta,.chip,.support-item span,.tight-list,.turn-rule,.next-move-line,.action-hint,.steady-explain,.weave-note,.draw-card span,.crisis-card span,.meaning-card span{color:var(--muted)}
.app-frame{background:linear-gradient(180deg,rgba(29,38,54,.98),rgba(15,21,32,.98));border-left:1px solid rgba(255,255,255,.09);border-right:1px solid rgba(255,255,255,.09)}
.app-topbar,.app-tabs{background:rgba(17,24,36,.96);border-color:var(--line)}
.brand-mark{color:var(--gold);text-shadow:0 1px 0 rgba(0,0,0,.28)}
.panel,.case-card,.ledger-item,.empty-state,.need-card,.action-card,.stage-card,.modal-card,.profile-card,.quick-rule-grid div,.mini-details,.stat-card,.draw-card,.crisis-card,.meaning-card,.review-box,.share-box,.support-item,.weave-panel,.turn-rule,.step-state-line{background:rgba(29,38,54,.98);border-color:var(--line);box-shadow:0 10px 24px rgba(0,0,0,.2)}
select,input,textarea,.seg,.tab,.icon-btn,.btn.secondary,.chip{background:#172132;border-color:var(--line);color:var(--text)}
.tab{color:#d8deec;font-size:.82rem}.tab.active{background:rgba(239,209,143,.22);color:#ffe2a2;border-color:rgba(239,209,143,.72)}
.btn{box-shadow:0 6px 18px rgba(0,0,0,.18)}.btn.primary,.btn{background:linear-gradient(180deg,#f3d99e,#d8b86c);color:#15100a}.btn.good{background:linear-gradient(180deg,#aee8bd,#83c995);color:#071009}.btn.warn{background:linear-gradient(180deg,#ffc979,#dc9a45);color:#15100a}.btn.bad{background:linear-gradient(180deg,#f29b9b,#cf6767);color:white}.btn:focus,.seg:focus,.tab:focus,.icon-btn:focus{outline:2px solid rgba(239,209,143,.95);outline-offset:2px}
.hero-panel h1,.modal-title{color:var(--text)}
.case-card strong,.screen-head h2,.section-head h2,.play-header h2,.need-card strong,.draw-card strong,.crisis-card strong,.meaning-card strong,.support-item strong,.ledger-item strong{color:var(--text)}
.timer-block strong{font-size:2.15rem;color:#fff}.timer-block span{color:#d6deee}.meter{background:#101827;border-color:#55637d}.bar{background:linear-gradient(90deg,#f1d391,#f0b160,#e67878)}
.mini-dot{background:#182235;border-color:#4f5e78}.mini-dot.done{background:#c6aa64}.mini-dot.active{background:#ffe09c;box-shadow:0 0 13px rgba(239,209,143,.72)}
.stage-card{background:#172132;color:#d5dceb}.stage-card.current{background:linear-gradient(135deg,rgba(239,209,143,.27),rgba(255,255,255,.06));border-color:rgba(239,209,143,.86);color:#fff;font-size:1.18rem}
.need-card small{color:#d3dbeb}.primary-need{border-color:rgba(239,209,143,.8)}.suit-hearts{color:#ffb8b8}.suit-diamonds{color:#ffe0a5}.suit-clubs{color:#bcf0c5}.suit-spades{color:#ccd7ff}
.pillar-bar button{background:#172132;border-color:var(--line);color:#fff}.pillar-bar button b{font-size:1.13rem}.pillar-bar button span{color:#d2dbea}.pillar-bar button:focus,.pillar-bar button.active{border-color:var(--gold);box-shadow:0 0 0 2px rgba(239,209,143,.18) inset}
.seg{font-size:.86rem}.seg.active{background:rgba(239,209,143,.24);border-color:var(--gold);color:#ffe0a0}.action-topline,.seg-label{color:#d1d9e9}.action-buttons .btn{min-height:44px}.play-footer-actions .btn{min-height:40px}.draw-card{background:rgba(239,209,143,.12);border-left-color:var(--gold)}.crisis-card{background:rgba(229,138,138,.13);border-left-color:var(--red)}.meaning-card{background:rgba(169,192,242,.1);border-left-color:var(--blue)}
.setup-steps div{background:#172132}.setup-steps span{color:#d2dbea}.setup-steps b{background:rgba(239,209,143,.24);color:#ffe0a2}.quick-rule-grid b{color:#fff}.quick-rule-grid span{color:#d2dbea}
.case-card img,.begin-image-wrap img,.final-image-wrap img{border-color:#596883;background:#111824}.copy-row input{background:#101827;color:#fff}.empty-state{color:var(--muted)}
@media(max-width:819px){
  body{font-size:17px}.app-topbar{padding:10px 12px}.brand-mark{font-size:1.9rem}.topline{font-size:.92rem}.tab{font-size:.78rem;padding:9px 2px}.screen{padding:10px}.panel{padding:12px}.case-card{grid-template-columns:84px 1fr}.case-card img{width:84px;height:84px}.timer-block strong{font-size:2.35rem}.need-card{min-height:80px}.action-buttons .btn{font-size:.9rem}.play-surface{gap:9px}.stage-card.current{font-size:1.25rem}.pillar-bar b,.pillar-bar button b{font-size:1.2rem}.pillar-bar span,.pillar-bar button span{font-size:.64rem}
}
@media(max-height:720px){
  body{font-size:16px}.brand-mark{font-size:1.55rem}.topline{font-size:.76rem}.tab{font-size:.72rem;padding:7px 2px}.screen{padding:7px}.play-surface{gap:6px}.need-card{min-height:62px}.timer-block strong{font-size:1.9rem}.stage-card.current{font-size:1.06rem}.action-buttons .btn{min-height:38px}.panel{padding:9px}
}

.deck-helper,.remaining-line{font-size:.74rem;color:var(--muted);line-height:1.28;text-align:center}.remaining-line{color:var(--text);font-weight:700}.remaining-suits{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.meaning-list{display:grid;gap:8px;margin-top:10px}.meaning-list div{border:1px solid var(--line);border-radius:14px;background:#0e1421;padding:9px}.meaning-list strong{display:block;font-size:.9rem;color:var(--text)}.meaning-list span{display:block;font-size:.8rem;color:var(--muted);line-height:1.35;margin-top:2px}.seg[title]{position:relative}.seg:disabled{opacity:.33;filter:saturate(.4)}@media(min-width:820px){.rank-grid{grid-template-columns:repeat(7,1fr)}}@media(max-width:420px){.action-buttons{grid-template-columns:1fr 1fr}.action-buttons .btn:first-child{grid-column:1/-1}.play-footer-actions{grid-template-columns:repeat(3,1fr)}.start-controls{grid-template-columns:1fr 1fr}.case-tools{grid-template-columns:1fr 1fr auto}.remaining-suits .chip{font-size:.68rem}}

/* Final tabletop-flow pass */
.brand-button{appearance:none;border:0;background:transparent;padding:0;margin:0;text-align:left;cursor:pointer}.brand-button:focus{outline:2px solid rgba(239,209,143,.95);outline-offset:3px;border-radius:8px}.dig-panel{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;border:1px dashed rgba(239,209,143,.5);border-radius:14px;background:rgba(239,209,143,.08);padding:8px}.dig-panel strong{display:block;color:var(--text);font-size:.82rem}.dig-panel span{display:block;color:var(--muted);font-size:.72rem;line-height:1.25}.path-list{margin:.45rem 0 0 1.1rem;padding:0;color:var(--muted)}.path-list li{margin:.38rem 0;line-height:1.35}.path-list strong{color:var(--text)}.path-story{margin-top:10px}.next-move-line{font-weight:850;border-radius:999px;padding:4px 8px;background:rgba(239,209,143,.1);color:var(--gold)}.draw-card{border-color:rgba(239,209,143,.75);background:linear-gradient(135deg,rgba(239,209,143,.2),rgba(239,209,143,.06))}.crisis-card{border-color:rgba(229,138,138,.8);background:linear-gradient(135deg,rgba(229,138,138,.22),rgba(229,138,138,.07))}.crisis-card strong{color:#ffd0d0}.draw-card strong{color:#ffe4a9}.result-story-mini{margin-top:8px}.ledger-item .btn{margin-top:8px}@media(max-width:420px){.dig-panel{grid-template-columns:1fr}.dig-panel .btn{width:100%}.brand-button{max-width:100%}.action-card{gap:8px}.rank-grid{grid-template-columns:repeat(5,1fr)}}

/* Living app / Clinic layer */
.app-tabs{grid-template-columns:repeat(6,1fr)}
.loadout-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.clinic-scroll{height:calc(100dvh - 116px);display:grid;gap:10px;overflow:auto}.clinic-hero{background:linear-gradient(135deg,rgba(239,209,143,.18),rgba(169,192,242,.08))}.clinic-summary{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}.room-grid,.staff-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:9px}.clinic-card{border:1px solid var(--line);border-radius:16px;background:#172132;padding:10px;display:grid;gap:8px}.clinic-card strong{color:var(--text)}.clinic-card span,.event-box span{color:var(--muted);font-size:.82rem;line-height:1.35}.clinic-card.selected{border-color:var(--gold);box-shadow:0 0 0 2px rgba(239,209,143,.14) inset}.clinic-card.locked{opacity:.56}.event-box{border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:16px;background:#172132;padding:12px;display:grid;gap:5px}.event-box strong{color:var(--text)}.pledge-panel{border-left:4px solid var(--green)}.clinic-loadout-panel{border-left:4px solid var(--blue)}
@media(max-width:819px){.app-tabs{grid-template-columns:repeat(3,1fr)}.loadout-grid{grid-template-columns:1fr}.clinic-scroll{height:calc(100dvh - 142px)}.room-grid,.staff-grid{grid-template-columns:1fr}.tab{font-size:.76rem}}

.power-panel{margin-top:10px;border:1px solid var(--line);border-radius:18px;padding:12px;background:linear-gradient(180deg, rgba(20,30,46,.88), rgba(10,16,28,.96));display:grid;gap:10px}
.power-topline{display:grid;gap:4px}.power-topline strong{font-size:.96rem}.power-topline span,.power-readout{font-size:.8rem;line-height:1.35;color:var(--muted)}
.power-status{display:flex;flex-wrap:wrap;gap:6px}.chip-ready{border-color:rgba(205,180,120,.55)}.chip-spent{opacity:.62;text-decoration:line-through}
#invokePowerBtn{width:100%}


/* final mobile and deck-system pass */
.power-panel.hidden{display:none!important}.power-panel{border:1px solid var(--line);border-radius:13px;background:#0b101a;padding:8px;display:grid;gap:6px}.power-topline{display:grid;gap:2px}.power-topline span,.power-readout,.steady-explain,.turn-rule,.next-move-line,.step-state-line,.action-hint,.dig-panel span{font-size:.76rem;line-height:1.3;color:var(--muted)}.power-status{display:flex;gap:5px;flex-wrap:wrap}.chip-ready{color:#d9e8ff}.chip-spent{color:#c8b7b7}.dig-panel{border:1px solid var(--line);border-radius:13px;background:#0b101a;padding:8px;display:grid;gap:6px}.draw-card,.crisis-card,.meaning-card{border:1px solid var(--line);background:#101726;border-radius:16px;padding:9px 10px;display:grid;gap:4px}.draw-card strong,.crisis-card strong{font-size:.95rem}.draw-card span,.crisis-card span,.meaning-card span{font-size:.78rem;line-height:1.32;color:var(--muted)}.pillar-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.pillar-bar button{border:1px solid var(--line);background:#0e1421;border-radius:12px;text-align:center;padding:7px 2px;color:var(--text)}.pillar-bar button.active{border-color:var(--gold);background:rgba(217,191,138,.14)}.play-header,.meter,.mini-track,.stage-carousel,.spaces-left,.draw-card,.crisis-card,.need-row,.pillar-bar,.meaning-card,.action-card,.play-footer-actions{min-width:0}.app-tabs{grid-template-columns:repeat(6,1fr)}.tab{min-width:0}.screen#screen-play{padding:6px}.action-card{padding:8px}.play-footer-actions{position:sticky;bottom:0;background:linear-gradient(180deg,rgba(15,21,32,0),rgba(15,21,32,.95) 30%,rgba(15,21,32,.98));padding-top:6px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}.case-list,.help-scroll,.clinic-scroll,.ledger-grid{height:auto;min-height:0}.support-list{display:grid;gap:8px}.support-item{display:grid;gap:2px;border:1px solid var(--line);background:#101726;border-radius:14px;padding:10px}.support-item span{font-size:.8rem;color:var(--muted)}@media(max-width:819px){.app-tabs{grid-template-columns:repeat(6,1fr);gap:4px;padding:7px 8px}.tab{font-size:.67rem;padding:7px 1px}.screen{padding:7px}.play-surface{gap:6px}.stage-carousel{grid-template-columns:.55fr 1.8fr .55fr}.stage-card{min-height:40px;font-size:.66rem;padding:7px 6px}.stage-card.current{font-size:1rem}.need-card{min-height:58px;padding:8px}.need-card strong{font-size:.92rem}.need-card small{font-size:.68rem}.timer-block strong{font-size:1.72rem}.remaining-line,.deck-helper{font-size:.7rem}.seg{padding:7px 2px;font-size:.74rem}.rank-grid{grid-template-columns:repeat(5,1fr)}.rank-grid.compact{grid-template-columns:repeat(5,1fr)}.power-status .chip{font-size:.67rem}.play-footer-actions .btn{min-height:38px}.copy-row{grid-template-columns:1fr}.copy-row .btn{width:100%}.final-card,.begin-card{gap:10px}.modal-card{padding:12px;max-height:92dvh}}@media(max-height:760px){.meaning-card{display:none}.stage-card.previous,.stage-card.next{display:none}.stage-carousel{grid-template-columns:1fr}.spaces-left{margin-top:0}.turn-rule{font-size:.7rem}.power-topline span,.power-readout,.steady-explain,.next-move-line,.step-state-line,.action-hint,.dig-panel span{font-size:.72rem}}

.result-story-share{margin-top:10px}.result-story-share .copy-row{margin-top:5px}

/* Final app-card visual pass: light card-table shell, mobile-first */
:root{
  --bg:#eee7da;
  --panel:#fffdf7;
  --panel2:#f7f0e4;
  --line:#1f242b;
  --text:#171717;
  --muted:#555a63;
  --gold:#b58a2e;
  --green:#247a44;
  --amber:#bc742a;
  --red:#b84646;
  --blue:#2d5e9f;
  --shadow:rgba(35,28,18,.14);
  --card:#fffef9;
  --ink:#171717;
  --felt:#e6dccb;
}
html,body{background:radial-gradient(circle at top,#fff7e6 0,#eee7da 48%,#ddd0bd 100%);color:var(--text);min-height:100svh;overflow:hidden}
.app-frame{min-height:100svh;height:100svh;height:100dvh;max-width:520px;background:linear-gradient(180deg,#fffaf0 0,#f4eadc 100%);grid-template-rows:auto auto minmax(0,1fr) auto;border-left:1px solid rgba(20,20,20,.12);border-right:1px solid rgba(20,20,20,.12);box-shadow:0 0 60px rgba(0,0,0,.15);padding-bottom:env(safe-area-inset-bottom)}
.app-topbar{grid-row:1;background:#fffdf7;border-bottom:2px solid #171717;color:var(--text);padding:9px 12px}.shared-banner{grid-row:2;background:#fff8dd;border-color:#171717;border-left:6px solid var(--gold);color:#3d3526;margin:8px 10px 0}.screen{grid-row:3;grid-column:1;min-height:0;overflow:hidden}.screen.active{display:block;height:100%;overflow:auto;-webkit-overflow-scrolling:touch;padding-bottom:10px}.app-tabs{grid-row:4;grid-column:1;display:grid;grid-template-columns:repeat(6,1fr);gap:5px;background:#fffdf7;border-top:2px solid #171717;border-bottom:0;padding:7px 7px calc(7px + env(safe-area-inset-bottom));box-shadow:0 -8px 22px rgba(50,35,15,.12)}
.brand-mark{color:#171717;font-size:1.45rem;letter-spacing:-.06em}.topline{color:#555a63;font-size:.78rem}.icon-btn,.btn,.tab,.seg{box-shadow:none}.icon-btn{background:#fffef9;border:2px solid #171717;color:#171717;border-radius:999px}.tab{background:#fffef9;border:2px solid #171717;color:#333;border-radius:13px;padding:7px 1px;font-size:.67rem;line-height:1;font-weight:950}.tab.active{background:#171717;color:#fff;border-color:#171717}.panel,.case-card,.ledger-item,.empty-state,.need-card,.action-card,.stage-card,.modal-card,.profile-card,.quick-rule-grid div,.mini-details,.stat-card,.draw-card,.crisis-card,.meaning-card,.review-box,.share-box,.support-item,.weave-panel,.turn-rule,.step-state-line,.clinic-card,.event-box,.dig-panel,.power-panel,.meaning-list div{background:var(--card)!important;border:2px solid #171717!important;color:var(--text);box-shadow:4px 4px 0 rgba(23,23,23,.12);border-radius:18px}.panel{padding:12px}p,.compact-text,.micro-rule,.status-line,.code-line,.case-card .summary,.ledger-item .meta,.chip,.turn-rule,.next-move-line,.step-state-line,.action-hint,.steady-explain,.deck-helper,.remaining-line,.weave-note,.power-topline span,.power-readout,.dig-panel span,.support-item span,.clinic-card span,.event-box span,.meaning-card span{color:var(--muted)!important}.btn{border:2px solid #171717;border-radius:14px;font-weight:950}.btn.primary{background:#171717;color:#fff}.btn.secondary{background:#fffef9;color:#171717;border-color:#171717}.btn.good{background:#d7efd7;color:#171717}.btn.warn{background:#ffe0a5;color:#171717}.btn.bad{background:#ffd1d1;color:#171717}.btn:disabled,.seg:disabled{opacity:.38;filter:none}.setup-steps div,.quick-rule-grid div,.stat-card,.mini-details,select,input,textarea{background:#fffef9!important;border:2px solid #171717!important;color:#171717}.setup-steps b{background:#171717;color:#fff}.setup-steps span,.quick-rule-grid span{color:#555a63}.case-list{height:auto;max-height:none}.case-card img,.begin-image-wrap img,.final-image-wrap img{border:2px solid #171717;background:#fffef9}.chip{background:#fffef9;border:1.8px solid #171717;color:#171717!important;font-weight:800}.chip.good,.chip-ready{background:#ddf4dd;color:#171717!important}.chip.warn{background:#ffe6b8;color:#171717!important}.chip.bad,.chip-spent{background:#ffd6d6;color:#171717!important}.play-surface{height:100%;overflow:auto;gap:7px;padding-bottom:calc(16px + env(safe-area-inset-bottom));align-content:start}.play-header h2{color:#171717}.timer-block strong{color:#171717}.timer-block span,.label{color:#555a63}.meter{height:11px;background:#fffef9;border:2px solid #171717}.bar{background:linear-gradient(90deg,#e6c15d,#d78532,#c74f4f)}.mini-dot{height:10px;background:#fffef9;border:2px solid #171717;border-radius:3px}.mini-dot.done{background:#e6c15d}.mini-dot.active{background:#171717;box-shadow:none}.stage-card{box-shadow:3px 3px 0 rgba(23,23,23,.1)}.stage-card.current{background:#171717!important;color:#fff;border-color:#171717;font-size:1.08rem}.spaces-left{color:#555a63}.need-card strong{color:#171717}.primary-need{background:#fff4d6!important}.pillar-bar{grid-template-columns:repeat(3,1fr);gap:6px}.pillar-bar button{background:#fffef9!important;border:2px solid #171717!important;color:#171717;border-radius:14px;box-shadow:3px 3px 0 rgba(23,23,23,.08)}.pillar-bar button b{font-size:1.1rem;color:#171717}.pillar-bar button span{color:#555a63}.pillar-bar button.active,.pillar-bar button:focus{background:#171717!important;color:#fff;outline:none}.pillar-bar button.active span,.pillar-bar button.active b,.pillar-bar button:focus span,.pillar-bar button:focus b{color:#fff}.meaning-card{border-left:8px solid var(--blue)!important}.draw-card{background:#fff4d6!important;border-left:8px solid var(--gold)!important}.draw-card strong{color:#171717}.crisis-card{background:#ffe6e6!important;border-left:8px solid var(--red)!important}.crisis-card strong{color:#171717}.action-card{gap:8px}.seg{background:#fffef9;border:2px solid #171717;color:#171717;border-radius:12px}.seg.active{background:#171717;color:#fff;border-color:#171717}.rank-grid{grid-template-columns:repeat(5,1fr)}.rank-grid.compact{grid-template-columns:repeat(5,1fr)}.power-panel,.dig-panel,.weave-panel{background:#fff8ed!important}.next-move-line{background:#fff4d6!important;color:#171717!important;border:2px solid #171717;border-radius:999px;font-weight:950}.step-state-line{font-weight:850}.play-footer-actions{position:sticky;bottom:0;background:linear-gradient(180deg,rgba(244,234,220,0),#f4eadc 34%,#f4eadc 100%);padding-top:7px;padding-bottom:calc(8px + env(safe-area-inset-bottom));z-index:3}.copy-row input{background:#fffef9;color:#171717;border:2px solid #171717}.clinic-hero{background:#fff4d6!important}.pledge-panel{border-left:8px solid var(--green)!important}.clinic-loadout-panel{border-left:8px solid var(--blue)!important}.home-stack,.clinic-scroll,.help-scroll,.ledger-grid{height:100%;overflow:auto;-webkit-overflow-scrolling:touch;padding-bottom:12px}.support-list{display:grid;gap:8px}.modal-card{background:#fffdf7!important;color:#171717;max-height:92svh;max-height:92dvh}.overlay{background:rgba(30,25,18,.55)}.brand-button{color:#171717}.brand-button:focus{outline:3px solid #171717;background:#fff4d6}.result-story-share{margin-top:10px}
@media(max-width:819px){.app-frame{max-width:100vw}.app-topbar{padding:8px 10px}.brand-mark{font-size:1.42rem}.topline{font-size:.72rem}.screen{padding:7px}.tab{font-size:.62rem;padding:7px 0}.play-surface{gap:6px}.stage-carousel{grid-template-columns:.55fr 1.8fr .55fr}.stage-card{min-height:38px;font-size:.62rem;padding:6px 4px}.stage-card.current{font-size:.98rem}.need-card{min-height:58px;padding:8px}.need-card strong{font-size:.92rem}.need-card small{font-size:.68rem}.timer-block strong{font-size:1.72rem}.remaining-line,.deck-helper{font-size:.68rem}.seg{padding:8px 2px;font-size:.72rem}.power-status .chip{font-size:.65rem}.copy-row{grid-template-columns:1fr}.copy-row .btn{width:100%}.action-buttons{grid-template-columns:1fr 1fr}.action-buttons .btn:first-child{grid-column:1/-1}.play-footer-actions .btn{min-height:38px}.case-tools{grid-template-columns:1fr 1fr auto}.case-card{grid-template-columns:76px 1fr}.case-card img{width:76px;height:76px}.modal-card{width:calc(100vw - 18px)}}
@media(max-height:760px){.meaning-card{display:none}.stage-card.previous,.stage-card.next{display:none}.stage-carousel{grid-template-columns:1fr}.spaces-left{margin-top:0}.turn-rule{font-size:.68rem}.topline{display:none}.app-topbar{padding:7px 10px}.tab{font-size:.6rem}.power-topline span,.power-readout,.steady-explain,.next-move-line,.step-state-line,.action-hint,.dig-panel span{font-size:.7rem}}

/* Crisis route refinement */
.crisis-route-list{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.crisis-route{display:grid;gap:2px;min-height:44px}.crisis-route b{font-size:.72rem;line-height:1.05}.crisis-route span{font-size:1rem!important;font-weight:950;color:inherit!important}.crisis-builder{display:grid;gap:6px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.42);padding:8px}.crisis-total{font-size:.82rem;line-height:1.25;color:var(--ink)}.crisis-rank-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.crisis-rank-grid .seg{display:grid;gap:0;align-items:center;justify-items:center;min-height:38px}.crisis-rank-grid small{font-size:.62rem;color:var(--muted)}.crisis-actions{display:grid;grid-template-columns:1fr .75fr .75fr;gap:6px}.crisis-card{border-left:6px solid var(--red)!important}.crisis-card .chip-row{gap:5px}@media(max-width:420px){.crisis-route-list{grid-template-columns:repeat(2,1fr)}.crisis-rank-grid{grid-template-columns:repeat(7,1fr)}.crisis-actions{grid-template-columns:1fr 1fr}.crisis-actions .btn:first-child{grid-column:1/-1}.crisis-builder{padding:7px}}

/* Phase-based play polish */
.play-header{position:sticky;top:0;z-index:20;background:#fffdf7!important;border:2px solid #171717;border-radius:18px;padding:8px 10px;box-shadow:4px 4px 0 rgba(23,23,23,.12);align-items:center}.phase-line{font-size:.72rem;line-height:1.25;color:#555a63;font-weight:850;margin-top:3px}.play-surface>.meter{position:sticky;top:66px;z-index:19;background:#fffef9}.phase-crisis .action-card,.phase-crisis .draw-card,.phase-crisis .play-footer-actions,.phase-pause .action-card{display:none}.phase-pause .play-note-card{display:none}.phase-action .draw-card{display:none!important}.phase-waiting .draw-card{display:none!important}.phase-waiting .action-card{opacity:.92}.pillar-bar .stat-tile{background:#fffef9!important;border:2px solid #171717!important;color:#171717;border-radius:14px;box-shadow:3px 3px 0 rgba(23,23,23,.08);text-align:center;padding:6px 2px}.pillar-bar .stat-tile b{display:block;font-size:1.1rem;color:#171717}.pillar-bar .stat-tile span{display:block;color:#555a63;font-size:.59rem}.pressure-tile{background:#fff0f0!important}.anchor-tile{background:#f2fff2!important}.play-note-card{font-size:.78rem}.crisis-card:not(.hidden){position:fixed;inset:8px;z-index:80;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:10px;overflow:auto;padding:14px!important;background:#fffdf7!important;border:3px solid #171717!important;border-left:10px solid var(--red)!important;border-radius:22px;box-shadow:8px 8px 0 rgba(23,23,23,.18)}.crisis-card:not(.hidden)::before{content:'CRISIS ROUTE';display:block;font-weight:950;letter-spacing:.08em;font-size:.78rem;color:#b84646}.crisis-card:not(.hidden) #crisisTitle{font-size:1.3rem;line-height:1.1;display:block}.crisis-card:not(.hidden) #crisisText{font-size:.9rem;line-height:1.35;display:block;margin-top:6px}.crisis-card:not(.hidden) .crisis-builder{overflow:auto;min-height:0}.crisis-card:not(.hidden) .crisis-route-list{grid-template-columns:repeat(2,1fr)}.crisis-card:not(.hidden) .crisis-rank-grid{grid-template-columns:repeat(7,1fr)}.crisis-card:not(.hidden) .crisis-actions{position:sticky;bottom:0;background:#fffdf7;padding-top:8px}.guide-accordion{display:grid;gap:10px}.guide-section{background:#fffef9!important;border:2px solid #171717;border-radius:18px;box-shadow:4px 4px 0 rgba(23,23,23,.1);padding:0;overflow:hidden}.guide-section summary{cursor:pointer;list-style:none;padding:14px 14px;font-weight:950;color:#171717;background:#fff4d6;border-bottom:2px solid transparent}.guide-section[open] summary{border-bottom-color:#171717}.guide-section summary::-webkit-details-marker{display:none}.guide-section summary::after{content:'+';float:right;font-size:1.1rem}.guide-section[open] summary::after{content:'–'}.guide-section>*:not(summary){margin:12px}.guide-example{border:2px solid #171717;border-radius:14px;background:#fff8ed;padding:10px;display:grid;gap:5px}.guide-example strong{font-size:.9rem}.guide-example span{font-size:.84rem;color:#555a63;line-height:1.35}.afterlight-breakdown{margin-top:10px;border:2px solid #171717;border-radius:16px;background:#fffef9;padding:10px;display:grid;gap:4px;box-shadow:3px 3px 0 rgba(23,23,23,.08)}.afterlight-breakdown strong{font-size:.9rem}.afterlight-breakdown span{font-size:.82rem;color:#555a63;line-height:1.35}.room-grid,.staff-grid{grid-template-columns:1fr 1fr}.clinic-card{display:grid;gap:7px;align-content:start}.clinic-card .clinic-icon{font-size:1.5rem;line-height:1}.clinic-card em{font-style:normal;font-size:.72rem;color:#555a63;font-weight:850}.clinic-card.selected{background:#fff4d6!important}.clinic-card.locked{opacity:.72}.unlock-path{display:grid;gap:8px}.unlock-card{background:#fffef9;border:2px solid #171717;border-radius:14px;padding:9px;display:grid;gap:7px;box-shadow:3px 3px 0 rgba(23,23,23,.08)}.unlock-card b{display:block}.unlock-card span{display:block;font-size:.76rem;color:#555a63}.unlock-card.locked{opacity:.8}.unlock-meter{height:9px;border:2px solid #171717;border-radius:999px;background:#fff;overflow:hidden}.unlock-meter i{display:block;height:100%;background:linear-gradient(90deg,#e6c15d,#247a44)}.story-epitaph{display:grid;gap:8px}.story-epitaph p{margin:0;color:#171717!important;line-height:1.45}.final-meaning{border-left:8px solid var(--green)!important;background:#fffef9!important}.review-box summary{cursor:pointer;font-weight:950}.share-box strong{display:block;margin-top:6px}.copy-row input{font-size:.72rem;overflow:hidden;text-overflow:ellipsis}
@media(max-width:420px){.play-header{padding:7px 8px}.phase-line{font-size:.66rem}.play-surface>.meter{top:60px}.crisis-card:not(.hidden){inset:6px;padding:10px!important;border-radius:18px}.crisis-card:not(.hidden) .crisis-rank-grid{grid-template-columns:repeat(7,1fr);gap:4px}.crisis-card:not(.hidden) .seg{min-height:36px;font-size:.68rem}.crisis-card:not(.hidden) .crisis-actions{grid-template-columns:1fr 1fr}.crisis-card:not(.hidden) .crisis-actions .btn:first-child{grid-column:1/-1}.room-grid,.staff-grid{grid-template-columns:1fr}.pillar-bar{grid-template-columns:repeat(6,1fr)}.pillar-bar .stat-tile{padding:5px 1px}.pillar-bar .stat-tile b{font-size:.95rem}.pillar-bar .stat-tile span{font-size:.51rem}.play-note-card{display:none}.need-row{grid-template-columns:1fr 1fr}.need-card{min-height:auto}}

/* Product freeze additions: cases, campaigns, risk events */
.app-tabs{grid-template-columns:repeat(6,1fr)}
.risk-toggle{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;border:2px solid #171717;background:#fff8ed;border-radius:16px;padding:10px;margin:8px 0;font-size:.82rem;color:#171717;box-shadow:3px 3px 0 rgba(23,23,23,.08)}
.risk-toggle input{width:auto;margin-top:3px}.risk-toggle strong{display:block}.risk-toggle span{color:#555a63;line-height:1.3}.risk-toggle span strong{color:#171717}.risk-event-panel{border:2px solid #171717;border-left:8px solid var(--red);border-radius:16px;background:#fff8ed;padding:9px;display:grid;gap:8px;box-shadow:3px 3px 0 rgba(23,23,23,.08)}.risk-event-panel strong{display:block}.risk-event-panel span{display:block;font-size:.78rem;color:#555a63;line-height:1.3}.risk-buttons{display:grid;grid-template-columns:1fr 1fr;gap:6px}.case-visual{width:76px;height:76px;border:2px solid #171717;border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--cat),white 70%),#fffef9);position:relative;overflow:hidden;box-shadow:3px 3px 0 rgba(23,23,23,.08)}.case-visual::before{content:'';position:absolute;inset:0 0 auto 0;height:9px;background:var(--cat)}.case-visual-icon{position:absolute;top:11px;right:8px;color:var(--cat);font-weight:950;font-size:1.25rem}.case-figure{position:absolute;left:16px;bottom:9px;width:33px;height:46px}.case-figure::before{content:'';position:absolute;top:0;left:6px;width:22px;height:22px;border-radius:50%;background:#171717}.case-figure::after{content:'';position:absolute;top:23px;left:3px;width:28px;height:24px;border-radius:11px 11px 5px 5px;background:var(--cat);opacity:.84}.case-figure span::before,.case-figure span::after{content:'';position:absolute;background:#171717;border-radius:999px}.case-figure span::before{left:0;top:27px;width:4px;height:22px;transform:rotate(25deg)}.case-figure span::after{right:0;top:27px;width:4px;height:22px;transform:rotate(-25deg)}.case-visual-signs{position:absolute;right:8px;bottom:8px;display:grid;gap:2px}.case-visual-signs i{font-style:normal;font-size:.48rem;background:#fff;border:1px solid rgba(23,23,23,.25);border-radius:999px;padding:1px 4px;max-width:38px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.case-progress{display:grid;gap:4px;margin:7px 0}.case-progress span{font-size:.68rem;color:#555a63}.progress-line{height:10px;border:2px solid #171717;border-radius:999px;background:#fff;overflow:hidden}.progress-line i{display:block;height:100%;background:linear-gradient(90deg,var(--cat,var(--gold)),#171717)}.case-progress-jump{width:100%;text-align:left;color:#171717;background:#fffef9;border:2px solid #171717;border-radius:18px;box-shadow:3px 3px 0 rgba(23,23,23,.08);cursor:pointer}.campaign-scroll{height:100%;overflow:auto;display:grid;gap:10px;padding-bottom:12px}.campaign-list{display:grid;gap:10px}.campaign-card{display:grid;grid-template-columns:56px 1fr;gap:10px;border:2px solid #171717;border-radius:20px;background:#fffef9;padding:12px;box-shadow:4px 4px 0 rgba(23,23,23,.1)}.campaign-icon{width:56px;height:56px;border:2px solid #171717;border-radius:16px;background:#fff4d6;display:grid;place-items:center;font-size:1.4rem;font-weight:950}.campaign-card strong{display:block;font-size:1rem}.campaign-card span{display:block;font-size:.78rem;color:#555a63;font-weight:850}.campaign-card p{margin:.35rem 0;color:#555a63}.ledger-grid{grid-template-columns:1fr}.clinic-card .clinic-icon{width:42px;height:42px;border:2px solid #171717;border-radius:14px;background:#fff4d6;display:grid;place-items:center;font-size:1.2rem;font-weight:950}@media(max-width:420px){.app-tabs{grid-template-columns:repeat(6,1fr);gap:4px}.risk-buttons{grid-template-columns:1fr}.case-card{grid-template-columns:82px 1fr}.case-visual{width:82px;height:82px}.campaign-card{grid-template-columns:44px 1fr}.campaign-icon{width:44px;height:44px}}

/* Final gym-pass hardening: mobile friction, case visuals, world condition fallback */
:root{--page-bg:#f4eadc;--ink:#171717;--paper:#fffdf7;--paper2:#fff8ed;--muted2:#555a63}
.app-frame{background:var(--page-bg)!important;color:var(--ink)!important;grid-template-rows:auto auto auto minmax(0,1fr)!important;overflow:hidden!important}
.screen.active{padding-bottom:calc(88px + env(safe-area-inset-bottom))!important}
.home-stack,.clinic-scroll,.help-scroll,.ledger-grid,.case-list,.campaign-scroll,.play-surface{padding-bottom:calc(104px + env(safe-area-inset-bottom))!important;scroll-padding-bottom:calc(104px + env(safe-area-inset-bottom))!important}
.app-tabs{position:fixed!important;left:50%!important;bottom:0!important;transform:translateX(-50%)!important;z-index:70!important;width:min(580px,100vw)!important;background:#fffdf7!important;border-top:3px solid var(--ink)!important;border-bottom:0!important;box-shadow:0 -8px 18px rgba(23,23,23,.12)!important;padding:8px 10px calc(10px + env(safe-area-inset-bottom))!important;grid-template-columns:repeat(6,1fr)!important}
.tab{background:#fffef9!important;color:var(--ink)!important;border:2px solid var(--ink)!important;border-radius:999px!important;box-shadow:2px 2px 0 rgba(23,23,23,.08)!important;min-height:40px!important;line-height:1!important}.tab.active{background:var(--ink)!important;color:#fff!important;border-color:var(--ink)!important;box-shadow:0 0 0 4px rgba(217,191,138,.55)!important}
.app-topbar{background:#fffdf7!important;color:var(--ink)!important;border-bottom:3px solid var(--ink)!important}.topline{display:none!important}.brand-mark,.brand-button{color:var(--ink)!important}.icon-btn{background:#fffef9!important;color:var(--ink)!important;border:3px solid var(--ink)!important;border-radius:999px!important}
.panel,.case-card,.ledger-item,.empty-state,.need-card,.action-card,.stage-card,.modal-card,.profile-card{background:#fffdf7!important;color:var(--ink)!important;border:3px solid var(--ink)!important;box-shadow:5px 5px 0 rgba(23,23,23,.10)!important}.compact-text,p,.micro-rule,.status-line,.meta,.summary{color:var(--muted2)!important}
.help-scroll{height:100%!important;display:block!important;overflow:auto!important}.guide-section{margin-bottom:10px!important}.guide-section summary{font-size:1rem!important;line-height:1.15!important}.tight-list{font-size:.9rem!important;line-height:1.38!important;padding-left:20px!important}.tight-list li{margin-bottom:7px!important}.guide-section>*:not(summary){margin:10px 12px!important}
.clinic-scroll{height:100%!important;overflow:auto!important}.global-event-panel .event-box{min-height:74px!important;background:#fffef9!important;color:var(--ink)!important}.event-box strong{display:block!important;color:var(--ink)!important}.event-box span{display:block!important;color:var(--muted2)!important;margin-top:4px!important}
.case-card{border-left:10px solid var(--cat)!important}.case-card .chip{background:#fffef9!important;color:var(--ink)!important;border:2px solid var(--ink)!important}.case-progress .progress-line i,.progress-line i{background:linear-gradient(90deg,var(--cat,var(--gold)),#171717)!important}.case-visual{background:linear-gradient(135deg,var(--cat),#fffef9 58%)!important}.case-visual-icon{color:#fff!important;text-shadow:1px 1px 0 rgba(23,23,23,.45)!important}.begin-card{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;max-height:92dvh!important;overflow:auto!important}.begin-image-wrap{width:100%!important;border:3px solid var(--ink)!important;border-radius:22px!important;background:#fffef9!important;overflow:hidden!important;padding:10px!important}.begin-image-wrap .case-visual{width:100%!important;height:185px!important;border-radius:18px!important}.begin-image-wrap .case-visual::before{height:18px!important}.begin-image-wrap .case-visual-icon{font-size:3rem!important;top:26px!important;right:24px!important}.begin-image-wrap .case-figure{left:44%;bottom:24px;transform:scale(2.25);transform-origin:bottom center}.begin-image-wrap .case-visual-signs{right:18px!important;bottom:16px!important}.begin-image-wrap .case-visual-signs i{font-size:.72rem!important;max-width:80px!important}
.play-header{position:sticky!important;top:0!important;z-index:45!important}.play-surface>.meter{position:sticky!important;top:70px!important;z-index:44!important}.crisis-card:not(.hidden){z-index:100!important;inset:8px 8px calc(76px + env(safe-area-inset-bottom)) 8px!important}.action-card{scroll-margin-bottom:120px!important}.risk-event-panel .btn{min-height:48px!important}.risk-event-panel strong::after{content:' Fracture / Resilience';font-weight:600;color:var(--muted2)}
@media(max-width:420px){.app-topbar{padding:10px 22px!important}.brand-mark{font-size:1.55rem!important}.screen{padding:10px!important}.screen.active{padding-bottom:calc(94px + env(safe-area-inset-bottom))!important}.case-tools{grid-template-columns:1fr!important}.case-tools .btn{width:100%!important}.case-list{height:auto!important;min-height:0!important}.begin-image-wrap .case-visual{height:170px!important}.play-surface>.meter{top:64px!important}.tab{font-size:.74rem!important;min-height:38px!important;padding:7px 3px!important}}

/* Campaign pilot pass: fuller campaign cards and clearer local endings */
.campaign-full{grid-template-columns:54px 1fr!important;border-left:10px solid var(--cat,var(--gold))!important;background:#fffdf7!important;color:var(--ink)!important}
.campaign-full .campaign-icon{background:linear-gradient(135deg,var(--cat,var(--gold)),#fff4d6)!important;color:#fff!important;text-shadow:1px 1px 0 rgba(23,23,23,.45)!important}
.campaign-details{margin-top:10px;border:2px solid var(--ink);border-radius:16px;background:#fff8ed;padding:8px}.campaign-details summary{font-weight:950;cursor:pointer}.campaign-chapter{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:start;border:2px solid var(--ink);border-radius:14px;background:#fffdf7;padding:10px;margin-top:8px}.campaign-chapter.done{background:#f3ffef}.campaign-chapter strong{font-size:.92rem}.campaign-chapter span{color:var(--muted2)!important}.campaign-chapter p{font-size:.78rem;line-height:1.35}.campaign-ending{border:2px solid var(--ink);border-radius:16px;background:#fff4d6;padding:10px;margin:10px 0}.campaign-ending.muted{background:#f7f1e8}.campaign-result-note{border:2px solid var(--ink);border-left:8px solid var(--gold);border-radius:16px;background:#fff4d6;padding:10px;margin-top:10px}.campaign-result-note strong,.campaign-result-note span{display:block}.campaign-result-note span{color:var(--muted2);font-size:.86rem;margin-top:4px}.begin-rules{white-space:normal!important}
@media(max-width:420px){.campaign-full{grid-template-columns:1fr!important}.campaign-full .campaign-icon{width:100%!important;height:44px!important}.campaign-chapter{grid-template-columns:1fr}.campaign-chapter .btn{width:100%}}

/* Final campaign deck-shaping pass */
.campaign-deck-board {
  border: 2px solid #111827;
  border-radius: 18px;
  background: #fffdf6;
  padding: 12px;
  margin: 12px 0;
  display: grid;
  gap: 10px;
  box-shadow: 0 4px 0 rgba(17,24,39,.12);
}
.deck-chip-wrap, .chip-row { display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.mini-label { font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; color:#374151; width:100%; }
.card-chip {
  display:inline-flex; align-items:center; justify-content:center;
  min-width:42px; padding:5px 8px; border-radius:999px;
  border:2px solid #111827; background:#fff; font-weight:900;
  box-shadow:0 2px 0 rgba(17,24,39,.14);
}
.card-chip.diamond { color:#b77900; background:#fff7db; }
.card-chip.heart { color:#be123c; background:#fff1f2; }
.card-chip.club { color:#047857; background:#ecfdf5; }
.card-chip.spade { color:#4338ca; background:#eef2ff; }
.card-chip.removed { opacity:.9; }
.card-chip.restored { outline:3px solid rgba(22,163,74,.18); }
.campaign-character-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:10px; margin-top:10px; }
.campaign-person, .restore-card {
  border:2px solid #111827; border-radius:16px; background:#fff; padding:10px;
  box-shadow:0 3px 0 rgba(17,24,39,.10);
}
.campaign-person-head { display:flex; flex-direction:column; gap:2px; }
.campaign-person-head b { font-size:1rem; }
.campaign-person-head span, .restore-card span { color:#4b5563; font-size:.86rem; }
.campaign-bars { display:flex; flex-wrap:wrap; gap:5px; margin:8px 0; }
.campaign-bars span { border:1px solid #d1d5db; border-radius:999px; padding:3px 6px; font-size:.78rem; font-weight:700; background:#f9fafb; }
.restore-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:10px; margin-top:10px; }
.restore-card.done { background:#f0fdf4; }
.deck-note { border-left:4px solid var(--cat,#f59e0b); padding-left:8px; color:#374151; }
.campaign-last-result { background:#f8fafc; border:1px dashed #94a3b8; border-radius:12px; padding:8px; }
.chip.strong { border-color:#111827; background:#fff7ed; font-weight:900; }

/* Afterlight economy pass: profile, archive cases and community influence */
.profile-page{height:100%;overflow:auto;display:grid;gap:12px;padding-bottom:calc(104px + env(safe-area-inset-bottom))}.profile-hero-panel{border-left:10px solid var(--gold)!important}.profile-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.profile-stat-grid div{border:2px solid var(--ink);border-radius:16px;background:#fffef9;padding:10px;text-align:center;box-shadow:3px 3px 0 rgba(23,23,23,.08)}.profile-stat-grid b{display:block;font-size:1.4rem}.profile-stat-grid span{display:block;font-size:.74rem;color:var(--muted2);font-weight:800}.afterlight-use-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.afterlight-use-grid div{border:2px solid var(--ink);border-radius:16px;background:#fffef9;padding:10px}.afterlight-use-grid strong{display:block}.afterlight-use-grid span{display:block;color:var(--muted2);font-size:.84rem;line-height:1.32;margin-top:3px}.case-card.case-locked{opacity:.92}.case-card.case-locked .case-visual{filter:saturate(.8)}.chip.locked{color:#171717!important;background:#fff4d6!important;border-color:#171717!important}.unlock-inline{margin-top:8px;border:2px solid var(--ink);border-radius:14px;background:#fff4d6;padding:8px;font-size:.86rem}.unlock-inline .btn{margin-left:6px}.influence-note{border:2px solid var(--ink);border-left:8px solid #6b7280;border-radius:16px;background:#fffef9;padding:9px;margin-top:10px;color:var(--muted2);font-size:.86rem}.influence-note.good{border-left-color:#16a34a;background:#f0fdf4;color:#14532d}.ledger-item.compact{box-shadow:none!important}.afterlight-spend-panel{border-left:10px solid #d9bf8a!important}@media(max-width:420px){.profile-stat-grid,.afterlight-use-grid{grid-template-columns:1fr}.unlock-inline .btn{display:block;width:100%;margin:8px 0 0}}

/* Final product play-canvas and ledger polish pass */
:root {
  --paper:#fffdf7;
  --paper2:#fff6df;
  --ink:#171717;
  --soft:#f4eadc;
  --muted2:#565b66;
}
body { font-family: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; background:#eee6d8!important; }
.app-frame { background:#f4eadc!important; }
.screen.active { scroll-padding-bottom: calc(104px + env(safe-area-inset-bottom))!important; }

/* Case visuals, keep category colour but remove the dark placeholder feel */
.case-visual,
.begin-image-wrap .case-visual {
  background:
    radial-gradient(circle at 82% 18%, color-mix(in srgb, var(--cat) 24%, white) 0 15%, transparent 16%),
    linear-gradient(135deg, color-mix(in srgb, var(--cat) 20%, white) 0%, #fffdf7 58%, #fff8ec 100%)!important;
  color: var(--ink)!important;
  border-color: var(--ink)!important;
}
.case-visual::before { background: color-mix(in srgb, var(--cat) 88%, #171717)!important; }
.case-visual-icon { color: color-mix(in srgb, var(--cat) 80%, #171717)!important; text-shadow:none!important; }
.case-figure::before { background:#f2e6cf!important; border:3px solid var(--ink); }
.case-figure::after { background: color-mix(in srgb, var(--cat) 74%, white)!important; border:2px solid color-mix(in srgb, var(--cat) 68%, #171717); }
.case-figure span::before,
.case-figure span::after { background:var(--ink)!important; }
.case-visual-signs i { background:#fffdf7!important; border:2px solid color-mix(in srgb, var(--cat) 50%, #171717)!important; color:var(--ink)!important; font-weight:850; }
.begin-image-wrap { background:#fffdf7!important; }
.begin-card { width:min(640px, calc(100vw - 20px))!important; max-height:calc(100dvh - 126px)!important; padding:12px!important; margin-bottom:calc(80px + env(safe-area-inset-bottom))!important; }
.begin-card > div:last-child .button-row { position:sticky; bottom:0; background:linear-gradient(180deg,rgba(255,253,247,0),#fffdf7 28%,#fffdf7); padding-top:10px; padding-bottom:4px; z-index:2; }
.begin-rules { background:#fff8ed!important; color:#27272a!important; border:2px solid var(--ink)!important; border-radius:16px!important; padding:10px!important; font-size:.84rem!important; line-height:1.35!important; }
.countdown-line { background:#fff4d6!important; color:#171717!important; border:2px solid var(--ink)!important; border-radius:14px!important; }

/* Play canvas, make it feel like a contained game board instead of a loose page */
#screen-play { padding:8px!important; background:#efe6d8!important; }
.play-surface {
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  height:100%!important;
  overflow:auto!important;
  padding:8px 8px calc(106px + env(safe-area-inset-bottom))!important;
  background:linear-gradient(180deg,#fffdf7,#f8efdf)!important;
  border:3px solid var(--ink)!important;
  border-radius:24px!important;
  box-shadow:6px 6px 0 rgba(23,23,23,.10)!important;
}
.play-header {
  position:sticky!important;
  top:0!important;
  z-index:32!important;
  background:#fffdf7!important;
  border:3px solid var(--ink)!important;
  border-radius:18px!important;
  padding:8px 10px!important;
  box-shadow:4px 4px 0 rgba(23,23,23,.12)!important;
}
.play-header h2 { font-size:1.12rem!important; letter-spacing:-.015em!important; }
.phase-line { font-size:.73rem!important; color:#4b5563!important; }
.timer-block strong { font-size:2rem!important; line-height:.95!important; }
.play-surface>.meter { position:sticky!important; top:70px!important; z-index:31!important; height:8px!important; border:2px solid var(--ink)!important; background:#fffef9!important; }
.mini-track { gap:3px!important; margin:0 2px!important; }
.mini-dot { height:8px!important; }
.stage-carousel { display:none!important; }
.spaces-left { margin:0!important; font-weight:850!important; font-size:.78rem!important; color:#4b5563!important; }
.need-row { display:grid!important; grid-template-columns:1fr 1fr!important; gap:8px!important; }
.need-card { min-height:0!important; padding:9px 10px!important; box-shadow:3px 3px 0 rgba(23,23,23,.08)!important; }
.need-card small { display:none!important; }
.need-card strong { font-size:1.02rem!important; }
.pillar-bar { display:flex!important; gap:6px!important; overflow-x:auto!important; padding-bottom:2px!important; -webkit-overflow-scrolling:touch; }
.pillar-bar .stat-tile { min-width:76px!important; padding:6px 7px!important; border-radius:14px!important; box-shadow:2px 2px 0 rgba(23,23,23,.08)!important; }
.pillar-bar .stat-tile b { font-size:1rem!important; }
.pillar-bar .stat-tile span { font-size:.57rem!important; }
.meaning-card.play-note-card { display:none!important; }

.action-card {
  border:3px solid var(--ink)!important;
  border-radius:22px!important;
  background:#fffdf7!important;
  box-shadow:5px 5px 0 rgba(23,23,23,.10)!important;
  padding:10px!important;
  gap:8px!important;
}
.action-topline { font-size:.92rem!important; font-weight:950!important; color:#171717!important; }
.turn-rule,.action-hint,.deck-helper,.steady-explain { display:none!important; }
.next-move-line,.step-state-line,.remaining-line {
  display:block!important;
  border:2px solid var(--ink)!important;
  border-radius:999px!important;
  background:#fff4d6!important;
  color:#171717!important;
  padding:7px 10px!important;
  font-size:.78rem!important;
  font-weight:900!important;
  text-align:center!important;
}
.step-state-line.action-used { background:#eef2ff!important; }
.remaining-suits { display:none!important; }
.mode-row { display:grid!important; grid-template-columns:1fr 1fr!important; gap:8px!important; }
.seg-row { grid-template-columns:repeat(2,1fr)!important; gap:7px!important; }
.rank-grid { grid-template-columns:repeat(4,1fr)!important; gap:7px!important; }
.rank-grid.compact { grid-template-columns:repeat(5,1fr)!important; }
.seg { min-height:42px!important; border:3px solid var(--ink)!important; background:#fffef9!important; color:#171717!important; border-radius:14px!important; box-shadow:2px 2px 0 rgba(23,23,23,.08)!important; }
.seg.active { background:#171717!important; color:#fff!important; }
.seg-label { color:#7b8190!important; font-size:.68rem!important; }
.weave-panel,.power-panel,.dig-panel,.risk-event-panel {
  background:#fff8ed!important;
  border:2px solid var(--ink)!important;
  border-radius:16px!important;
  box-shadow:3px 3px 0 rgba(23,23,23,.08)!important;
}
.dig-panel { grid-template-columns:1fr auto!important; align-items:center!important; }
.dig-panel span { display:none!important; }
.dig-panel strong { font-size:.92rem!important; }
.power-topline span { display:none!important; }
.power-status { display:flex!important; overflow-x:auto!important; flex-wrap:nowrap!important; padding-bottom:2px!important; }
.power-status .chip { flex:0 0 auto!important; }
.power-readout { font-size:.82rem!important; color:#171717!important; font-weight:850!important; }
.action-buttons { display:grid!important; grid-template-columns:1fr 1fr!important; gap:8px!important; }
.action-buttons .btn:first-child { grid-column:1/-1!important; min-height:56px!important; font-size:1.05rem!important; }
.action-buttons .btn { border-radius:16px!important; }
.play-footer-actions {
  position:static!important;
  display:grid!important;
  grid-template-columns:1fr 1fr 1fr!important;
  gap:8px!important;
  background:#fff8ed!important;
  border:3px solid var(--ink)!important;
  border-radius:18px!important;
  padding:8px!important;
  box-shadow:4px 4px 0 rgba(23,23,23,.10)!important;
  z-index:1!important;
}
.play-footer-actions .btn { min-height:44px!important; background:#fffef9!important; color:#171717!important; border:2px solid var(--ink)!important; }
.phase-crisis .play-footer-actions { display:none!important; }

/* Crisis overlay must own the pause, but not cover the bottom nav */
.crisis-card:not(.hidden){
  position:fixed!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  top:8px!important;
  bottom:calc(84px + env(safe-area-inset-bottom))!important;
  width:min(560px, calc(100vw - 16px))!important;
  inset:auto auto calc(84px + env(safe-area-inset-bottom)) auto!important;
  max-height:calc(100dvh - 100px)!important;
  overflow:auto!important;
  background:#fffdf7!important;
  border:4px solid var(--ink)!important;
  border-left:10px solid var(--red)!important;
  border-radius:24px!important;
  box-shadow:8px 8px 0 rgba(23,23,23,.18)!important;
}
.crisis-card:not(.hidden) .crisis-rank-grid { grid-template-columns:repeat(4,1fr)!important; }
.crisis-actions { position:sticky!important; bottom:0!important; background:#fffdf7!important; padding-top:8px!important; }

/* Ledger, no artificial cap, clearer case board */
.ledger-grid { height:100%!important; overflow:auto!important; padding-bottom:calc(108px + env(safe-area-inset-bottom))!important; }
.ledger-case-card { border-left:10px solid var(--cat,var(--gold))!important; background:#fffdf7!important; text-align:left!important; }
.ledger-case-card strong { font-size:1rem!important; }
.ledger-case-card.locked-history { background:#f8f0df!important; }
#activeCaseProgress,#retiredCases,#recentResults { padding-bottom:8px!important; }

/* Make guide-style formatting more consistent across pages */
.panel h1,.panel h2,.screen-head h2,.modal-card h2 { letter-spacing:-.035em; }
.btn,.seg,.tab,.icon-btn { text-transform:none; letter-spacing:.005em; }

@media(max-width:420px){
  .app-topbar{min-height:92px!important; align-items:end!important; padding:12px 22px 10px!important;}
  .screen#screen-play{padding:6px!important;}
  .play-surface{border-radius:20px!important; padding:6px 6px calc(104px + env(safe-area-inset-bottom))!important;}
  .play-header{padding:7px 8px!important;}
  .play-header h2{font-size:1rem!important;}
  .timer-block strong{font-size:1.75rem!important;}
  .play-surface>.meter{top:64px!important;}
  .need-row{grid-template-columns:1fr 1fr!important;}
  .need-card .label{font-size:.62rem!important;}
  .need-card strong{font-size:.94rem!important;}
  .rank-grid{grid-template-columns:repeat(4,1fr)!important;}
  .seg{min-height:40px!important;font-size:.82rem!important;}
  .dig-panel{grid-template-columns:1fr!important;}
  .dig-panel .btn{width:100%!important;}
  .begin-card{max-height:calc(100dvh - 142px)!important; margin-bottom:calc(82px + env(safe-area-inset-bottom))!important;}
  .begin-image-wrap .case-visual{height:148px!important;}
}
.crisis-card:not(.hidden){inset:8px auto calc(84px + env(safe-area-inset-bottom)) 50%!important;transform:translateX(-50%)!important;}
