:root{--bg: #0a0d13;--panel: #131a25;--panel2: #1a2332;--line: #243044;--text: #e9eef7;--muted: #93a3b8;--red: #e11d2e;--gold: #ffc857;--green: #34c98a;color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}body{overflow-y:auto}button{font:inherit}h1,h2,h3{margin:0 0 .35rem;line-height:1.15}h1{font-size:1.25rem}h2{font-size:1.1rem}h3{font-size:.9rem}p{margin:.25rem 0}.small{font-size:.8rem}.warn{color:var(--gold)}.spacer{flex:1}.center{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.eyebrow{margin:0 0 .3rem;color:var(--red);font-size:.66rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.spinner{width:42px;height:42px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--red);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:8px 14px;border-radius:10px;border:1px solid var(--line);background:var(--panel2);color:var(--text);cursor:pointer;font-weight:600;font-size:.9rem}.btn:hover{border-color:#3a4a63}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--red);border-color:#f04454;color:#fff}.btn.ghost{background:transparent}.btn.small{min-height:34px;padding:5px 10px;font-size:.78rem}.btn.wide{width:100%}.scroll{overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.setup{width:min(760px,100%);margin:0 auto;min-height:100vh;display:flex;flex-direction:column;padding:14px 14px 0;gap:10px}.topbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.topbar>div:first-child{flex:1;min-width:160px}.step-dots{display:flex;gap:5px}.dot{width:20px;height:6px;border-radius:3px;background:var(--line)}.dot.done{background:var(--red)}.setup-body{flex:1;display:flex;flex-direction:column;gap:10px;padding-bottom:4px}.setup-footer{position:sticky;bottom:0;z-index:5;display:flex;justify-content:space-between;gap:10px;padding:10px 0 calc(10px + env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,var(--bg) 30%)}.mission-step{display:flex;flex-direction:column;gap:10px}.settings-list{display:flex;flex-direction:column;gap:6px}.settings-list .card-list{max-height:30vh}.budget-panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:8px}.budget-choice{text-align:left;min-height:44px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--panel2);color:var(--text);cursor:pointer;font-weight:700}.budget-choice.active{border-color:var(--red);background:#e11d2e29}.mission-summary{display:flex;flex-direction:column;gap:2px;font-size:.85rem;margin-top:4px}.card-list{display:flex;flex-direction:column;gap:6px}.option{display:flex;align-items:center;gap:10px;width:100%;text-align:left;min-height:46px;padding:9px 11px;border-radius:10px;border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer}.option:hover{border-color:#3a4a63}.option.active{border-color:var(--red);background:#e11d2e1f}.option.highlight{border-color:#ffc85780;background:#ffc85712}.option:disabled{opacity:.45;cursor:not-allowed}.option-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.option-main strong{font-size:.86rem}.check{color:var(--red);font-weight:900}.plus{color:var(--green);font-weight:900;font-size:1.1rem}.squad-step{display:flex;flex-direction:column;gap:10px}.squad-picker,.field-row{display:flex;flex-direction:column;gap:8px}.field{display:flex;flex-direction:column;gap:4px}.field.grow{flex:1}.field span{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700}.input{width:100%;min-height:44px;padding:9px 11px;border-radius:9px;border:1px solid var(--line);background:#0d121a;color:var(--text);font:inherit}.input:focus{outline:2px solid rgba(225,29,46,.45);outline-offset:1px}.char-grid{display:flex;flex-direction:column;gap:6px;max-height:52vh;overflow:auto}.char-card{display:flex;align-items:center;gap:8px;min-height:50px;padding:8px 10px;border-radius:10px;border:1px solid var(--line);background:var(--panel);color:var(--text);text-align:left;cursor:pointer}.char-card:hover{border-color:#3a4a63}.char-card.disabled{opacity:.38;cursor:not-allowed}.char-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.char-main strong{font-size:.86rem}.threat{color:var(--gold);font-weight:800}.selection-panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:4px}.selected-list{display:flex;flex-direction:column;gap:2px;max-height:32vh}.selected-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 2px;border-bottom:1px solid rgba(36,48,68,.6);font-size:.85rem}.icon-btn{border:0;background:transparent;color:var(--muted);cursor:pointer;min-width:40px;min-height:40px;border-radius:8px}.icon-btn:hover{color:var(--text);background:var(--panel2)}.game{width:min(760px,100%);margin:0 auto;min-height:100vh;display:flex;flex-direction:column;gap:10px;padding:10px 10px calc(16px + env(safe-area-inset-bottom))}.mission-panel{order:-1}.player-panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:6px}.mission-panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:8px}.player-head{display:flex;align-items:center;gap:10px}.player-head>div:first-child{flex:1;min-width:0}.player-head h2{margin:0;font-size:1.1rem}.actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.unit-list{display:flex;flex-direction:column;gap:4px}.unit-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;min-height:54px;padding:8px 10px;border-radius:10px;border:1px solid transparent;background:var(--panel2);color:var(--text);cursor:pointer}.unit-row:hover{border-color:var(--line)}.unit-row.dazed{background:linear-gradient(90deg,rgba(225,29,46,.1),var(--panel2) 60%)}.unit-main{flex:1;min-width:0}.unit-title{display:flex;align-items:center;gap:6px}.unit-title strong{font-size:.9rem}.badge{font-size:.6rem;font-weight:800;text-transform:uppercase;padding:1px 5px;border-radius:4px}.badge.dazed{color:#ffb3ba;background:#e11d2e29;border:1px solid rgba(225,29,46,.4)}.badge.ko{color:#fff;background:#5a1d24}.hp-bar{margin-top:5px;height:6px;border-radius:3px;background:var(--line);overflow:hidden}.hp-fill{display:block;height:100%;background:var(--green)}.unit-stats{display:flex;flex-direction:column;align-items:flex-end;gap:1px;font-size:.72rem}.pp-text{color:var(--gold)}.tactics-block{border-top:1px solid var(--line);padding-top:6px;display:flex;flex-direction:column}.tactic-list{display:flex;flex-direction:column;gap:2px}.tactic-row{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:8px;min-height:44px}.tactic-row.used{opacity:.55}.tactic-row.used strong{text-decoration:line-through}.tactic-name{flex:1;display:flex;flex-direction:column;gap:1px;text-align:left;border:0;background:transparent;color:var(--text);cursor:pointer;min-width:0;min-height:40px}.tactic-name strong{font-size:.82rem}.played{color:var(--green);font-size:.72rem;font-weight:800}.crisis-chip{display:flex;flex-direction:column;gap:2px;text-align:left;padding:10px;border-radius:10px;border:1px solid var(--line);background:var(--panel2);color:var(--text);cursor:pointer;min-height:58px}.crisis-chip:hover{border-color:#3a4a63}.crisis-type{font-size:.6rem;font-weight:800;letter-spacing:.12em;color:var(--red)}.crisis-chip strong{font-size:.88rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#03060cd1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-end;justify-content:center;z-index:20}.modal{width:100%;max-height:92vh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:18px 18px 0 0;padding:16px;display:flex;flex-direction:column;gap:10px}.modal.full{width:100%;height:auto;max-height:94vh}.modal.small{width:100%}.modal-head{display:flex;align-items:flex-start;gap:12px}.modal-head>div:first-child{flex:1}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.stat-box{background:var(--panel2);border-radius:9px;padding:6px 10px}.stat-label{display:block;font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:800}.stat-box strong{font-size:.95rem}.tone-green{color:var(--green)}.tone-gold{color:var(--gold)}.tone-red{color:var(--red)}.tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tab{min-height:40px;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;font-size:.82rem}.tab.active{color:var(--text);border-color:var(--red);background:#e11d2e24}.section-title{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:8px}.rules-scroll{display:flex;flex-direction:column;gap:6px}.rule-card{background:var(--panel2);border-radius:9px;padding:9px 11px}.rule-card header{display:flex;flex-direction:column;gap:2px}.rule-card p{font-size:.84rem;line-height:1.45;margin-top:3px}.rule-text{font-size:.9rem;line-height:1.5;white-space:pre-line}@media(min-width:900px){.setup,.game{border-left:1px solid var(--line);border-right:1px solid var(--line)}}.code-input{min-height:92px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;line-height:1.35}.char-thumb,.unit-avatar{position:relative;flex:none;width:46px;height:46px;border-radius:10px;overflow:hidden;background:linear-gradient(145deg,#1c2536,#0d121a);display:flex;align-items:center;justify-content:center}.char-thumb img,.unit-avatar img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.avatar-fallback{font-weight:800;color:#3f4d64;font-size:1rem}.avatar{border-radius:12px;object-fit:cover;background:var(--panel2)}.avatar-sm{width:26px;height:26px;border-radius:7px}.avatar-lg{width:64px;height:64px;flex:none}.selected-name{display:flex;align-items:center;gap:8px;min-width:0}.badge.condition{background:#ffffff0d;border:1px solid;font-size:.58rem}.conditions-block{display:flex;flex-direction:column;gap:4px}.conditions-grid{display:flex;flex-wrap:wrap;gap:6px}.condition-chip{min-height:38px;padding:6px 11px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:.78rem;cursor:pointer}.condition-chip.active{color:var(--text);font-weight:700}body{background:#07090d}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;pointer-events:none;background:radial-gradient(1100px 620px at 10% -12%,rgba(225,29,46,.22),transparent 58%),radial-gradient(900px 520px at 102% -4%,rgba(38,88,200,.2),transparent 56%),radial-gradient(1000px 700px at 50% 116%,rgba(150,22,38,.22),transparent 62%),linear-gradient(168deg,#0c111a,#080b11 55%,#0a0d13)}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;opacity:.55;background-image:radial-gradient(rgba(255,255,255,.1) 1px,transparent 1.4px),repeating-linear-gradient(118deg,rgba(225,29,46,.055) 0 2px,transparent 2px 30px);background-size:18px 18px,100% 100%;-webkit-mask-image:radial-gradient(120% 95% at 50% 0%,#000 0%,rgba(0,0,0,.4) 68%,transparent 100%);mask-image:radial-gradient(120% 95% at 50% 0%,#000 0%,rgba(0,0,0,.4) 68%,transparent 100%)}body:before,body:after{will-change:auto}.player-panel,.mission-panel,.selection-panel,.budget-panel,.option,.char-card,.unit-row,.crisis-chip{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.player-panel,.mission-panel,.selection-panel,.budget-panel{background:#131a25db;border-color:#546a8a57;box-shadow:0 10px 30px #00000047}.option,.char-card,.unit-row,.crisis-chip{background:#1a2332d1}.unit-row.dazed{background:linear-gradient(90deg,#e11d2e29,#1a2332db 62%)}.setup{position:relative}.setup:before,.game:before{content:"";position:fixed;top:-90px;left:-60px;width:380px;height:220px;transform:rotate(-16deg);background:linear-gradient(90deg,rgba(225,29,46,.22),transparent 75%);filter:blur(34px);pointer-events:none;z-index:-1}.player-head h2{letter-spacing:.01em}.unit-title strong{text-shadow:0 1px 0 rgba(0,0,0,.4)}body:before{background:radial-gradient(900px 560px at 6% -14%,rgba(225,29,46,.34),transparent 58%),radial-gradient(820px 480px at 104% -6%,rgba(38,88,200,.28),transparent 56%),radial-gradient(1100px 780px at 50% 118%,rgba(160,20,36,.3),transparent 62%),radial-gradient(600px 500px at 78% 72%,rgba(255,90,40,.08),transparent 70%),linear-gradient(168deg,#0d121c,#080b11 55%,#0b0e15)}body:after{opacity:.7;background-image:radial-gradient(rgba(255,255,255,.12) 1px,transparent 1.5px),repeating-linear-gradient(118deg,rgba(225,29,46,.075) 0 2px,transparent 2px 28px),repeating-linear-gradient(62deg,rgba(80,130,220,.05) 0 1px,transparent 1px 34px);background-size:16px 16px,100% 100%,100% 100%}.app{position:relative}.app:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpolygon points='50,2 94,26 94,74 50,98 6,74 6,26' fill='none' stroke='%23e11d2e' stroke-width='1.1'/%3E%3Cpolygon points='50,12 84,31 84,69 50,88 16,69 16,31' fill='none' stroke='%235f7fb5' stroke-width='0.5' stroke-opacity='0.7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:50% 42%;background-size:min(92vmin,760px);opacity:.13}.app:after{content:"";position:fixed;top:-140px;right:-120px;width:520px;height:300px;transform:rotate(28deg);background:linear-gradient(90deg,transparent,rgba(225,29,46,.18) 45%,transparent);filter:blur(38px);pointer-events:none;z-index:-1}.topbar h1,.player-head h2,.mission-panel h2{border-left:3px solid var(--red);padding-left:9px}.player-panel{border-top-color:#e11d2e57}.mission-panel{border-top-color:#ffc85752}.modal{position:relative;overflow:hidden}.modal-art{position:absolute;inset:0 0 auto 0;height:190px;background-size:cover;background-position:center 28%;filter:blur(20px) saturate(1.25);opacity:.32;-webkit-mask-image:linear-gradient(#000 0%,rgba(0,0,0,.5) 55%,transparent 100%);mask-image:linear-gradient(#000 0%,rgba(0,0,0,.5) 55%,transparent 100%);pointer-events:none}.modal>*:not(.modal-art){position:relative;z-index:1}body{background:#070a10 url(../bg.svg) center / cover fixed no-repeat}body:before,body:after{content:none}.app:before{opacity:.1}.player-panel,.mission-panel,.selection-panel,.budget-panel{background:#101722cc}.option,.char-card,.unit-row,.crisis-chip{background:#182130c7}.player-panel,.mission-panel,.selection-panel,.budget-panel{background:#0b111a9e;-webkit-backdrop-filter:blur(12px) saturate(1.15);backdrop-filter:blur(12px) saturate(1.15)}.option,.char-card,.unit-row,.crisis-chip{background:#161f2e9e}.unit-row.dazed{background:linear-gradient(90deg,#e11d2e33,#161f2e9e 62%)}.char-thumb,.unit-avatar{background:#0a0f17b3}html{background:#070a10}.stat-defense{display:flex;align-items:center;gap:7px;min-width:0}.stat-icon{display:inline-flex;color:var(--muted)}.stat-icon svg{width:16px;height:16px}.stat-defense strong{font-size:1rem;line-height:1}.stat-row{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-defense-group{grid-column:1 / -1;display:flex;align-items:center;gap:18px;padding:8px 10px}.stat-defense-label{font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:800}.stat-defense{display:inline-flex;align-items:center;gap:6px}.stat-defense strong{font-size:1rem}@media(max-width:359px){.stat-row{grid-template-columns:repeat(3,minmax(0,1fr))}}.sheet-backdrop{padding:0;align-items:stretch}.modal.sheet{width:100%;height:100vh;height:100dvh;max-height:none;border-radius:0;border:0;padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:7px;overflow:hidden;display:flex;flex-direction:column}.sheet-head{display:flex;align-items:center;gap:10px}.sheet-head .avatar-md{width:46px;height:46px;border-radius:10px}.sheet-title{flex:1;min-width:0}.sheet-title h2{margin:0;font-size:1.15rem}.sheet-title .eyebrow{margin-bottom:.1rem}.sheet-head .btn{min-width:42px;padding:6px 10px}.sheet-stats{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#161f2eb8;border:1px solid var(--line);border-radius:10px;padding:7px 10px;font-size:.82rem}.sheet-stat{display:inline-flex;align-items:center;gap:5px}.sheet-stat .stat-label{font-size:.58rem}.sheet-stat svg{width:15px;height:15px;color:var(--muted)}.sheet-stat strong{font-size:.92rem}.sheet-actions{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px}.sheet-actions .btn{flex:none}.states{background:#161f2e99;border:1px solid var(--line);border-radius:10px;padding:0 10px}.states summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;min-height:38px;font-size:.82rem;font-weight:700}.states summary::-webkit-details-marker{display:none}.states summary:before{content:"▸";color:var(--muted);transition:transform .15s}.states[open] summary:before{transform:rotate(90deg)}.states[open]{padding-bottom:8px}.states-current{display:inline-flex;gap:4px;flex-wrap:wrap}.states .conditions-grid{gap:5px}.states .condition-chip{min-height:34px;padding:4px 9px}.sheet-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sheet-tabs .tab{min-height:34px;padding:4px 11px}.modal.sheet .rules-scroll{flex:1;min-height:0;overflow-y:auto;padding-right:2px;display:flex;flex-direction:column;gap:6px}.modal.sheet .rules-scroll .rule-card{padding:8px 10px}.modal.sheet .rules-scroll .rule-card p{font-size:.84rem;line-height:1.45}.modal.sheet .modal-art{height:150px;opacity:.25}@media(min-width:760px){.sheet-backdrop{padding:20px;align-items:center}.modal.sheet{max-width:760px;height:92vh;height:92dvh;border-radius:16px;border:1px solid var(--line);padding:14px 16px}}@font-face{font-family:Barlow;src:url(../fonts/barlow-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Barlow;src:url(../fonts/barlow-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Barlow;src:url(../fonts/barlow-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(../fonts/barlow-condensed-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(../fonts/barlow-condensed-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--bg: #dfeaf3;--panel: #ffffff;--panel2: #f2f8fc;--line: #c3d7e6;--text: #121820;--muted: #5c7285;--red: #d21f2b;--gold: #e8a90f;--green: #1f9d6f;--teal: #2fb6a8;--blue: #2b8fc4;color-scheme:light}html{background:#dfeaf3}body{background:#dfeaf3 url(../bg-card.svg) center / cover fixed no-repeat;color:var(--text);font-family:Barlow,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}#root{background:transparent}body:before,body:after,.app:before,.app:after{content:none}h1,h2,h3{color:var(--text)}.topbar h1,.player-head h2,.mission-panel h2,.sheet-title h2,.settings-list h3,.squad-picker h3,.tactics-block h3{font-family:Barlow Condensed,Arial Narrow,sans-serif;text-transform:uppercase;font-weight:700;letter-spacing:.025em}.topbar h1{font-size:1.55rem}.topbar h1,.player-head h2,.mission-panel h2{border-left-color:var(--red)}.eyebrow{color:var(--red)}.muted{color:var(--muted)}.warn{color:#a97b05}.btn{background:#fff;color:#16202a;border-color:#b9cddd;font-family:Barlow Condensed,sans-serif;text-transform:uppercase;letter-spacing:.035em;font-weight:600;font-size:.95rem}.btn:hover{border-color:#8fb3cc;background:#f7fbfe}.btn.ghost{background:#eef6fb}.btn.primary{background:var(--red);border-color:#b81722;color:#fff}.btn.primary:hover{background:#e02835}.btn:disabled{opacity:.45}.input,.code-input{background:#fff;border-color:#b9cddd;color:var(--text)}.input::placeholder{color:#8ba0b1}.field span,.stat-label{color:var(--muted)}.player-panel,.mission-panel,.selection-panel,.budget-panel{background:#fff;border:1px solid var(--line);box-shadow:0 8px 22px #1736521a;-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--text)}.player-panel{border-top-color:var(--red)}.mission-panel{border-top-color:#e8b23a}.option,.char-card,.unit-row,.crisis-chip{background:#fff;border:1px solid #d8e6f0;color:var(--text);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}.option:hover,.char-card:hover,.crisis-chip:hover,.unit-row:hover{border-color:#9dbdd4}.option.active{background:#fdecec;border-color:var(--red)}.option.highlight{background:#fff7dd;border-color:#e8b23a}.char-card.disabled{opacity:.45}.char-main strong,.unit-title strong,.option-main strong{color:var(--text)}.threat{color:#b4800e}.unit-row.dazed{background:linear-gradient(90deg,#fde7e9,#fff 62%)}.unit-row.ko{opacity:.55}.hp-bar{background:#e3edf4}.hp-fill{background:var(--teal)}.hp-fill.mid{background:var(--gold)}.hp-fill.low{background:var(--red)}.hp-text{color:var(--muted)}.hp-text.low{color:var(--red)}.pp-text{color:#a97b05}.badge.dazed{background:#fde3e5;color:#a51620;border:1px solid #f0b7bc}.badge.ko{background:#1a222c;color:#fff}.badge.condition{background:#fff}.tactics-block{border-top-color:#d8e6f0}.tactic-name strong{color:var(--text)}.played{color:var(--green)}.crisis-type{color:var(--red)}.crisis-chip strong{color:var(--text)}.budget-choice{background:#fff;border-color:#c3d7e6;color:var(--text)}.budget-choice.active{border-color:var(--red);background:#fdecec}.selected-row{border-bottom-color:#e3edf4}.icon-btn{color:var(--muted)}.icon-btn:hover{color:var(--text);background:#eef6fb}.step-dots .dot{background:#c3d7e6}.step-dots .dot.done{background:var(--red)}.spinner{border-color:#d5e3ee;border-top-color:var(--red)}.modal-backdrop{background:#0a16227a}.modal{background:#fff;border-color:var(--line);color:var(--text);box-shadow:0 24px 60px #081e3259}.modal.sheet{background:#fff}.modal-art{opacity:.13}.sheet-title .eyebrow{color:var(--red)}.sheet-head .btn{background:#eef6fb;color:var(--text)}.card-stats{display:flex;flex-wrap:wrap;align-items:center;gap:7px 12px;background:#eef6fb;border:1px solid #cfe0ea;border-radius:10px;padding:7px 10px}.card-stat{display:inline-flex;align-items:center;gap:5px;color:#16202a}.card-stat strong{font-family:Barlow Condensed,sans-serif;font-size:1.05rem;font-weight:700}.stat-disc{width:25px;height:25px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;flex:none}.stat-disc svg{width:14px;height:14px}.stat-disc.red{background:var(--red)}.stat-disc.gold{background:#f0b429;color:#1b1b1b}.stat-disc.blue{background:var(--blue)}.stat-disc.teal{background:var(--teal)}.sheet-actions .btn{background:#eef6fb;color:var(--text)}.sheet-actions .btn.primary{background:var(--red);color:#fff}.states{background:#f7fbfe;border-color:#d8e6f0}.states summary{color:var(--text)}.states .condition-chip{background:#fff}.tab{background:#fff;color:var(--muted);border-color:#c3d7e6}.tab.active{color:#fff;border-color:var(--red);background:var(--red)}.section-title{color:var(--muted)}.modal.sheet .rules-scroll .rule-card{padding:0}.rule-card{background:#fff;border:1px solid #d8e6f0;border-radius:10px;overflow:hidden}.rule-bar{display:flex;align-items:center;gap:8px;background:#131a22;color:#fff;padding:7px 10px;margin:3px 3px 0;border-radius:7px}.rule-bar strong{font-family:Barlow Condensed,Arial Narrow,sans-serif;text-transform:uppercase;font-weight:700;letter-spacing:.035em;font-size:1rem;line-height:1.1;flex:1}.rule-meta{font-size:.66rem;color:#c6d3df;white-space:nowrap}.rule-card p{padding:7px 10px 9px;color:#202a34;font-size:.85rem;line-height:1.45;margin:0}.rule-dot{width:9px;height:9px;border-radius:50%;background:var(--red);flex:none}.rule-dot.energy{background:#f0b429}.rule-dot.mystic{background:#2b8fc4}.rule-dot.active{background:#2fb6a8}.rule-dot.innate{background:#8b9bb0}.rule-dot.reactive{background:#9b7bff}.rule-dot.physical{background:var(--red)}.import-summary,.muted.small{color:var(--muted)}@media(min-width:900px){.setup,.game{border-left-color:var(--line);border-right-color:var(--line)}}.rules-scroll>*{flex:0 0 auto}.rule-card{flex:0 0 auto}.rule-card .rule-bar{flex-direction:row;flex-wrap:nowrap}.rule-card .rule-bar strong{min-width:0}.rule-card .rule-meta{flex:none;overflow:hidden;text-overflow:ellipsis}.modal:not(.sheet){overflow-y:auto}.room-panel{border-top:1px solid #d8e6f0;padding-top:8px;display:flex;flex-direction:column;gap:6px}.room-actions{display:flex;gap:6px;flex-wrap:wrap}.room-code-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.room-code{font-family:Barlow Condensed,sans-serif;font-size:1.7rem;letter-spacing:.16em;color:var(--red);line-height:1}.room-code-input{font-family:Barlow Condensed,sans-serif;font-size:1.5rem;letter-spacing:.22em;text-transform:uppercase}.rule-icon{width:21px;height:21px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:none;color:#fff;background:var(--red)}.rule-icon svg{width:12px;height:12px}.rule-icon.energy{background:#f2b32d;color:#1b1b1b}.rule-icon.mystic{background:#2b8fc4}.rule-icon.active{background:#2fb6a8}.rule-icon.innate{background:#64748b}.rule-icon.reactive{background:#9b7bff}.rule-icon.leadership{background:#d21f2b}.stat-disc svg{width:15px;height:15px}.card-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px 8px}.card-stat{justify-content:flex-start}@media(max-width:359px){.card-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}.stat-icon-img{width:27px;height:27px;border-radius:50%;flex:none;display:block}.rule-icon-img{width:22px;height:22px;border-radius:50%;flex:none;display:block}.menu{width:min(760px,100%);margin:0 auto;min-height:100vh;padding:22px 16px calc(24px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:14px}.menu-head h1{font-family:Barlow Condensed,sans-serif;font-size:2.9rem;text-transform:uppercase;letter-spacing:.03em;line-height:.95;margin:2px 0 4px;border-left:5px solid var(--red);padding-left:12px}.menu-head .eyebrow,.menu-head p.muted{padding-left:12px}.card-surface{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 22px #1736521a;padding:12px}.menu-account{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.menu-account-id{display:flex;flex-direction:column;gap:1px;flex:1;min-width:140px}.menu-account-actions{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.menu-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.menu-action{min-height:54px;font-size:1.05rem}.menu-section{display:flex;flex-direction:column;gap:8px}.menu-section h2{font-family:Barlow Condensed,sans-serif;text-transform:uppercase;font-size:1.1rem;letter-spacing:.04em;margin:4px 0 0}.saved-list{display:flex;flex-direction:column;gap:8px}.saved-game{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px;width:100%}.saved-game-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0;background:transparent;border:0;text-align:left;color:var(--text);cursor:pointer;padding:0}.saved-game-actions{display:flex;gap:4px;align-items:center}.btn.danger{color:var(--red)}.menu-foot{margin-top:auto;padding-top:8px}.game-topline{display:flex;align-items:center;justify-content:space-between;gap:8px}.save-state{font-size:.72rem;color:var(--muted);font-weight:600}.save-state.saved{color:var(--green)}.save-state.error{color:var(--red)}@media(max-width:360px){.menu-actions{grid-template-columns:1fr}}.rule-meta{display:inline-flex;align-items:center;gap:8px}.meta-item{display:inline-flex;align-items:center;gap:3px}.meta-item img{width:15px;height:15px;display:block;border-radius:50%}.rule-card .rule-meta{color:#fff}.rule-card .rule-meta .meta-item{color:#fff;font-weight:700;font-size:.8rem}.rule-card .rule-meta .meta-item img{width:16px;height:16px}.stat-text-disc{width:27px;height:27px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:none;background:#f0b429;color:#1b1b1b;font-family:Barlow Condensed,sans-serif;font-weight:700;font-size:.68rem;letter-spacing:.02em}.lifecycle{background:#131a22;color:#fff;border-radius:12px;padding:8px 10px;display:flex;flex-direction:column;gap:7px;order:-2;box-shadow:0 6px 18px #09192a40}.life-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.life-round{font-family:Barlow Condensed,sans-serif;text-transform:uppercase;letter-spacing:.06em;font-size:1.05rem}.life-phase{font-family:Barlow Condensed,sans-serif;text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;padding:3px 9px;border-radius:999px;background:var(--red);color:#fff}.life-phase.activation{background:var(--teal);color:#06221f}.life-phase.cleanup{background:var(--gold);color:#241a00}.life-phase.ended{background:#64748b}.life-priority{background:transparent;border:1px solid rgba(255,255,255,.22);color:#fff;border-radius:999px;padding:3px 10px;font-size:.76rem;cursor:pointer}.life-priority.static{cursor:default;opacity:.8}.life-rules{margin-left:auto;background:transparent;border-color:#ffffff40;color:#fff}.life-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.life-turn{font-family:Barlow Condensed,sans-serif;text-transform:uppercase;font-size:1rem;letter-spacing:.04em}.life-hint{font-size:.72rem;color:#c6d3df}.player-panel.active-turn{outline:2px solid var(--red);outline-offset:1px}.badge.activated{background:#e8eef5;color:#3b4a5b;border:1px solid #c3d3e2}.unit-row.activated{opacity:.62}.unit-row{cursor:pointer}.unit-activate{flex:none}.rules-cycle{margin:4px 0 8px;padding-left:18px;display:flex;flex-direction:column;gap:6px}.rules-cycle li{font-size:.9rem;line-height:1.45}@media(max-width:359px){.life-actions .btn{flex:1 1 auto}}.life-done{font-size:.78rem;color:#8fe0c8;border:1px solid rgba(143,224,200,.35);border-radius:999px;padding:4px 10px}.assistant-backdrop{padding:0;align-items:flex-end}.modal.assistant{width:100%;height:92vh;height:92dvh;max-height:92dvh;border-radius:18px 18px 0 0;padding:0;display:flex;flex-direction:column;overflow:hidden}.assistant-head{display:flex;align-items:center;gap:10px;background:#131a22;color:#fff;padding:10px 12px}.assistant-head h2{color:#fff;margin:0;font-family:Barlow Condensed,sans-serif;text-transform:uppercase;font-size:1.3rem}.assistant-head .eyebrow{margin-bottom:0}.assistant-head .btn{color:#fff;border-color:#ffffff4d;background:transparent}.assistant-scroll{flex:1;min-height:0;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px;background:#f4f8fb}.assistant-intro{display:flex;flex-direction:column;gap:8px}.assistant-prompts{display:flex;flex-wrap:wrap;gap:6px}.assistant-prompt{text-align:left;border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 10px;font-size:.82rem;color:var(--text);cursor:pointer}.assistant-prompt:hover{border-color:var(--red)}.assistant-msg{max-width:92%;border-radius:12px;padding:8px 11px;font-size:.9rem;line-height:1.45;white-space:pre-wrap}.assistant-msg p{margin:0}.assistant-msg.user{align-self:flex-end;background:#131a22;color:#fff}.assistant-msg.assistant{align-self:flex-start;background:#fff;border:1px solid var(--line);color:var(--text)}.assistant-typing{color:var(--muted);font-style:italic}.assistant-form{display:flex;gap:8px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff}.assistant-form .input{flex:1}@media(min-width:760px){.assistant-backdrop{align-items:center;padding:20px}.modal.assistant{max-width:760px;height:88dvh;border-radius:16px}}.assistant-clear{margin-left:auto}.sheet-backdrop .modal.activation{width:100%;height:100vh;height:100dvh;max-height:none;border-radius:0;border:0;padding:0;display:flex;flex-direction:column;overflow:hidden}.activation-head{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#131a22;color:#fff}.activation-title{flex:1;min-width:0}.activation-title h2{color:#fff;margin:0;font-family:Barlow Condensed,sans-serif;text-transform:uppercase;font-size:1.35rem}.activation-title .eyebrow{color:#ff8b93}.activation-title .muted{color:#c6d3df}.activation-head .btn{color:#fff;border-color:#ffffff4d;background:transparent}.activation-bar{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line);background:#fff;flex-wrap:wrap}.activation-scroll{flex:1;min-height:0;overflow-y:auto;padding:10px 12px;display:flex;flex-direction:column;gap:7px;background:#f4f8fb}.activation-action{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-radius:10px;padding:9px 11px;color:var(--text);cursor:pointer}.activation-action:hover{border-color:#9dbdd4}.activation-action:disabled{opacity:.45;cursor:not-allowed}.action-main{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.action-main strong{font-family:Barlow Condensed,sans-serif;text-transform:uppercase;letter-spacing:.02em}.action-cost{font-size:.72rem;color:var(--muted);white-space:nowrap}.target-list{display:flex;flex-direction:column;gap:4px}.target-option{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:8px 10px;color:var(--text);cursor:pointer;text-align:left}.target-option.active{border-color:var(--red);background:#fdecec}.damage-row{display:flex;gap:6px;flex-wrap:wrap}.damage-btn{min-width:42px;min-height:42px;border-radius:9px;border:1px solid var(--line);background:#fff;color:var(--text);font-weight:700;cursor:pointer}.damage-btn.active{background:var(--red);border-color:var(--red);color:#fff}.activation-log{display:flex;flex-wrap:wrap;gap:6px;padding:7px 12px calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff;font-size:.72rem;color:var(--muted)}.activation-log span{background:#eef6fb;border-radius:999px;padding:2px 8px}.badge.power-bonus{background:#fff3cf;color:#6b4a00;border:1px solid #e8c46a}@media(min-width:760px){.sheet-backdrop .modal.activation{max-width:760px;height:94dvh;border-radius:16px;border:1px solid var(--line);margin:auto}}.avatar-md{width:48px;height:48px;border-radius:10px;flex:none;object-fit:cover}.activation-head .avatar-md{border:1px solid rgba(255,255,255,.25)}.assistant-head .avatar-md{width:44px;height:44px;border-radius:50%;border:2px solid var(--red)}.assistant-msg{display:flex;gap:7px;align-items:flex-start}.assistant-msg.assistant p{flex:1}.assistant-avatar{width:26px;height:26px;border-radius:50%;flex:none;border:1px solid #d8b15a;object-fit:cover}.assistant-ident{flex:1;min-width:0}.assistant-ident h2{margin:0}.assistant-proposal{display:flex;flex-wrap:wrap;align-items:center;gap:6px;background:#fff;border:1px dashed #b9cddd;border-radius:10px;padding:8px}.filter-row{display:flex;gap:6px;flex-wrap:wrap}.filter-chip{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:999px;padding:5px 10px;font-size:.76rem;cursor:pointer;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-chip.active{border-color:var(--red);color:var(--red);background:#fdecec}.char-card.recommended{border-color:#d8b15a;background:#fffaf0}.badge.alias{background:#fde3e5;color:#a51620;border:1px solid #f0b7bc;margin-top:3px;align-self:flex-start}.option.not-playable{opacity:.55}.badge.playable{background:#e6f7ef;color:#1f7a52;border:1px solid #9fd9bd}.badge.off-affiliation{background:#f1f5f9;color:#64748b;border:1px solid #cbd5e1}.badge.suggested{background:#fff4d6;color:#8a5a00;border:1px solid #e6c26a}
