:root{--surface:#0e131f52;--surface-solid:#0e131feb;--surface-2:#0e131f73;--border:#ffffff2e;--text:#f5f8fd;--text-muted:#f0f5fceb;--accent:#74a0ff;--accent-text:#0b1020;--accent-soft:#74a0ff3d;--bar-track:#fff3;--bar-fill:#82aaff;--warn:#ffd18a;--warn-bg:#ffaa2838;--warn-fill:#f0a830;--glass:blur(5px) saturate(130%);--text-shadow:0 1px 2px #000000d9, 0 0 8px #00000073;--call-bg:#0609109e;--shadow:0 8px 24px #00000040;--radius:14px;--tap:44px;--moom:#5a5cf0;--moom-dark:#1c1e26;--moom-bar:#242731;--accept:#1f9d55;--decline:#e0393e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{color:var(--text);-webkit-tap-highlight-color:transparent;overscroll-behavior:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background:#1b2130;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.45}input,textarea,.selectable{-webkit-user-select:text;user-select:text}img{-webkit-user-drag:none}#root{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}h1,h2,p{margin:0}button,input{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:not-allowed}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.scene{z-index:-1;background-color:#3a2e24;background-position:50%;background-size:cover;position:fixed;inset:0}.scene-fade-in{animation:1.5s ease-out scene-fade-in}@keyframes scene-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.scene-fade-in{animation:none}}.scene:after{content:"";background:linear-gradient(#0a0e1859,#0a0e1800 30%);position:absolute;inset:0}.button{min-height:var(--tap);border:1px solid #0000;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:.1rem;padding:.55rem 1rem;font-weight:600;display:inline-flex}.button-primary{background:var(--accent);color:var(--accent-text);text-shadow:none}.button-secondary{background:var(--surface-2);border-color:var(--border)}.button:disabled{opacity:.5}.button-large{min-height:52px;font-size:1.05rem}.button-sublabel{opacity:.85;font-size:.78rem;font-weight:500}.title-screen{place-items:center;min-height:100dvh;padding:16px;display:grid}.splash-screen{background:radial-gradient(#080c20d1,#040610f5);flex-direction:column;justify-content:center;align-items:center;gap:1.25rem;min-height:100dvh;padding:16px;display:flex;position:relative}.splash-logo{object-fit:contain;border-radius:18px;width:100%;max-width:900px;height:auto;max-height:70dvh;box-shadow:0 0 60px #50a0ff59}.splash-launch.button-primary{color:#2a1600;background:linear-gradient(#ffe27a,#f5b324 55%,#e08a12);border:2px solid #fff3c4;min-width:min(100%,320px);font-size:1.2rem;font-weight:800;box-shadow:0 0 28px #ffc43c8c}.splash-disclaimer{text-align:center;color:#ffffffa6;max-width:36rem;font-size:.8rem}.splash-screen .version{color:#fff9}.panel.title-card{background:#0e131fc7;gap:.9rem;width:100%;max-width:500px;padding:1.5rem}.new-game-title{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:.85rem;font-weight:700}.title-section{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:.25rem 0 .4rem;font-size:.8rem;font-weight:700}.continue-button{width:100%}.slot-list{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.slot-row{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;align-items:center;gap:.6rem;padding:.6rem .7rem;display:flex}.slot-empty{color:var(--text-muted);font-size:.9rem}.slot-text{flex-direction:column;flex:12rem;min-width:0;display:flex}.slot-text span{color:var(--text-muted);font-size:.85rem}.slot-actions{gap:.4rem;display:flex}.load-error{flex-direction:column;gap:.45rem;display:flex}.load-error-details{font-size:.8rem;font-weight:500}.button-danger{background:var(--decline);color:#fff;text-shadow:none}.new-game-form{flex-direction:column;gap:.6rem;padding-top:.25rem;display:flex}.new-game-form h2{font-size:1.35rem;line-height:1.2}.new-game-intro{color:var(--text-muted)}.new-game-form label{font-weight:600}.new-game-form input,.code-box{min-height:var(--tap);border:1px solid var(--border);background:var(--surface-2);text-shadow:none;border-radius:10px;padding:.6rem .8rem;font-size:1.05rem}.code-box{resize:vertical;font-family:ui-monospace,Menlo,monospace;font-size:1rem}.field-hint{color:var(--text-muted);font-size:.85rem}.title-card .version{text-align:center}.panel.sheet{background:var(--surface-solid);gap:.7rem;width:100%;max-width:440px;max-height:calc(100dvh - 32px);padding:1.25rem;animation:.2s ease-out incoming-in;overflow:auto}.sheet h2{font-size:1.2rem}.sheet-header{justify-content:space-between;align-items:center;display:flex}.file-button{cursor:pointer;position:relative}.file-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.file-button.is-disabled{opacity:.5;cursor:not-allowed}.icon-button.menu-button{align-items:center;gap:.35rem;padding:0 .75rem;font-weight:600;display:inline-flex}.app{min-height:100dvh}.top-bar{z-index:10;padding:.6rem 16px;padding-top:max(.6rem, env(safe-area-inset-top));background:var(--surface);-webkit-backdrop-filter:var(--glass);backdrop-filter:var(--glass);text-shadow:var(--text-shadow);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex;position:sticky;top:0}.top-bar-identity{flex:12rem;min-width:0}.company-name{text-overflow:ellipsis;white-space:nowrap;font-size:1.1rem;font-weight:700;overflow:hidden}.era-pill{white-space:nowrap;background:#ffffff14;border:1px solid #ffffff40;border-radius:999px;align-self:flex-start;min-height:28px;margin-top:.15rem;padding:.1rem .6rem;font-size:.78rem;font-weight:700}.era-pill.era-2{color:#ffe6a3;background:#f5b3242e;border-color:#ffd36a;animation:1.2s ease-out 2 era-arrive}@keyframes era-arrive{0%{transform:scale(1);box-shadow:0 0 #ffd36acc}40%{transform:scale(1.12)}to{transform:scale(1);box-shadow:0 0 0 14px #ffd36a00}}@media (prefers-reduced-motion:reduce){.era-pill.era-2{animation:none}}.era-tip{white-space:normal;max-width:22rem}.game-date{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.85rem}.call-button{min-height:var(--tap);background:var(--accept);color:#fff;text-shadow:none;border:0;border-radius:10px;align-items:center;gap:.4rem;padding:0 1rem;font-weight:700;display:inline-flex}.call-button:disabled{opacity:.45}.speed-controls,.text-size{border:1px solid var(--border);border-radius:10px;display:flex;overflow:hidden}.speed-button,.text-size button{min-width:var(--tap);min-height:var(--tap);background:var(--surface-2);border:0;font-weight:700}.speed-button+.speed-button,.text-size button+button{border-left:1px solid var(--border)}.speed-button[aria-pressed=true]{background:var(--accent);color:var(--accent-text);text-shadow:none}.speed-button:disabled{opacity:.45}.top-bar-tools{align-items:center;gap:.75rem;display:flex}.sound-control{position:relative}.icon-button{min-width:var(--tap);min-height:var(--tap);border:1px solid var(--border);background:var(--surface-2);border-radius:10px;place-items:center;display:inline-grid}.sound-panel{z-index:20;border:1px solid var(--border);background:var(--surface-solid);width:240px;box-shadow:var(--shadow);text-shadow:none;border-radius:12px;flex-direction:column;gap:.6rem;padding:.85rem;display:flex;position:absolute;top:calc(100% + 6px);right:0}.sound-heading{font-weight:700}.sound-volume{flex-direction:column;gap:.3rem;font-size:.9rem;display:flex}.sound-volume input{width:100%;min-height:var(--tap);accent-color:var(--accent)}.sound-note{color:var(--text-muted);font-size:.8rem}.version{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.8rem}.dashboard{padding:16px;padding-bottom:max(16px, env(safe-area-inset-bottom));flex-direction:column;gap:12px;display:flex}.dashboard-side{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));align-content:start;align-items:start;gap:12px;display:grid}@media (width>=760px){.dashboard{grid-template-columns:minmax(230px,310px) 1fr minmax(230px,310px);align-items:start;display:grid}.dashboard-side{grid-template-columns:1fr}.dashboard-left{grid-column:1}.dashboard-right{grid-column:3}.dashboard .panel{gap:.3rem;padding:.75rem .9rem}.dashboard .gauge-value,.dashboard .panel-big{font-size:1.4rem}}.panel{background:var(--surface);-webkit-backdrop-filter:var(--glass);backdrop-filter:var(--glass);text-shadow:var(--text-shadow);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:.45rem;min-width:0;padding:1rem;display:flex}.panel-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.panel-header h2{color:var(--text-muted);align-items:center;gap:.4rem;font-size:.95rem;font-weight:600;display:flex}.panel-icon{font-size:1.1rem}.info-button{width:var(--tap);height:var(--tap);color:var(--text-muted);background:0 0;border:0;place-items:center;margin:-.5rem -.5rem -.5rem 0;font-family:Georgia,serif;font-style:italic;font-weight:700;display:grid;position:relative}.info-button:before{content:"";border:1.5px solid;border-radius:50%;width:24px;height:24px;position:absolute}.info-button[aria-expanded=true]{color:var(--accent)}.tip{background:var(--accent-soft);border-radius:8px;padding:.5rem .65rem;font-size:.88rem}.gauge-value,.panel-big{font-variant-numeric:tabular-nums;font-size:1.65rem;font-weight:700;line-height:1.15}.gauge-bar{background:var(--bar-track);border-radius:999px;height:10px;overflow:hidden}.gauge-fill{border-radius:inherit;background:var(--bar-fill);height:100%;transition:width .2s linear}.gauge.is-warning .gauge-fill{background:repeating-linear-gradient(-45deg, var(--warn-fill) 0 6px, color-mix(in srgb, var(--warn-fill) 70%, transparent) 6px 12px)}.gauge-note,.gauge-detail,.panel-detail{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.88rem}.gauge-warning{color:var(--warn);background:var(--warn-bg);border-radius:8px;padding:.35rem .6rem;font-size:.85rem;font-weight:600}.ledger{font-variant-numeric:tabular-nums;grid-template-columns:1fr auto;gap:.35rem 1rem;margin:0;display:grid}.ledger dt{color:var(--text-muted)}.ledger dd{text-align:right;margin:0;font-weight:600}.ledger-net{border-top:1px solid var(--border);padding-top:.35rem;font-weight:700;color:var(--text)!important}.panel-actions{flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:.35rem;display:flex}.step-buttons{gap:.35rem;display:flex}.step-buttons+.step-buttons{margin-top:-.1rem}.step-button{min-width:var(--tap);font-variant-numeric:tabular-nums;flex:1;padding:.4rem .3rem;font-size:1rem}.panel-actions .button{flex:8rem}.research-current-label{color:var(--text-muted);font-size:.8rem;font-weight:600}.research-name{font-size:1.2rem!important}.tech-effect{font-size:.92rem}.effect-chips{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.effect-chips li{border-radius:999px;padding:.15rem .5rem;font-size:.8rem;font-weight:600}.chip-good{color:#cfe0ff;background:#74a0ff38}.chip-bad{background:var(--warn-bg);color:var(--warn)}.link-button{min-height:var(--tap);color:var(--text);background:0 0;border:0;padding:0;font-weight:600}.toast{left:50%;bottom:max(20px, env(safe-area-inset-bottom));z-index:40;background:var(--surface-solid);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:999px;padding:.7rem 1.1rem;font-weight:600;animation:.2s ease-out incoming-in;position:fixed;transform:translate(-50%)}.tree-screen{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0e18f0;flex-direction:column;animation:.2s ease-out incoming-in;display:flex;position:fixed;inset:0}.tree-header{padding:.6rem 16px;padding-top:max(.6rem, env(safe-area-inset-top));border-bottom:1px solid var(--border);background:var(--surface-solid);align-items:center;gap:.75rem;display:flex}.tree-header h2{white-space:nowrap;font-size:1.15rem}.tree-lineup{scrollbar-width:thin;flex:1;gap:.4rem;min-width:0;display:flex;overflow-x:auto}.lineup-chip{border:1px dashed var(--accent);min-height:36px;color:var(--text);white-space:nowrap;background:0 0;border-radius:999px;flex:none;padding:0 .75rem;font-size:.85rem;font-weight:600}.lineup-chip.is-draggable{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;align-items:center;gap:.3rem;display:inline-flex}.lineup-chip.is-dragging{cursor:grabbing;background:#74a0ff4d;border-style:solid;box-shadow:0 0 0 2px #fff}.drag-grip{opacity:.6;letter-spacing:-.15em;font-size:.75rem}.queue-move{gap:.4rem;display:flex}.queue-move .button{flex:1}.lineup-chip.is-current{background:var(--accent);color:var(--accent-text);border-style:solid}.lineup-chip.is-waiting{border:1px solid var(--warn-fill);background:var(--warn-bg);color:var(--warn)}.lineup-empty{color:var(--text-muted);align-self:center;font-size:.85rem}.tree-body{flex:1;min-height:0;display:flex}.tree-scroll{-webkit-overflow-scrolling:touch;flex:1;min-width:0;padding:.75rem 0 1.5rem;overflow:auto}.tree-hint{color:var(--text-muted);padding:0 24px .5rem;font-size:.85rem}.tree-canvas{position:relative}.tree-lane{border-top:1px solid var(--border);position:absolute;left:0}.tree-lane-label{letter-spacing:.08em;text-transform:uppercase;padding:.35rem 24px;font-size:.78rem;font-weight:700;display:inline-block;position:sticky;left:0}.lane-models{background:linear-gradient(#74a0ff14,#0000 70%)}.lane-models .tree-lane-label{color:#9cbcff}.lane-infrastructure{background:linear-gradient(#78dcc812,#0000 70%)}.lane-infrastructure .tree-lane-label{color:#8fe0cf}.lane-products{background:linear-gradient(#f0be6412,#0000 70%)}.lane-products .tree-lane-label{color:#f2c27a}.lane-safety{background:linear-gradient(#c8a0ff12,#0000 70%)}.lane-safety .tree-lane-label{color:#cdb2ff}.tree-lines{pointer-events:none;position:absolute;inset:0}.tree-line{fill:none;stroke-width:2px}.tree-line.is-done{stroke:var(--accent)}.tree-line.is-open{stroke:#ecf2fb73;stroke-dasharray:6 5}.tree-line.is-faint{stroke:#ecf2fb24;stroke-dasharray:3 6}.tree-line.is-cross{opacity:.22}.tree-line.is-highlighted{opacity:1;stroke:#fff;stroke-width:3px;stroke-dasharray:none}.tree-card{-webkit-user-select:none;user-select:none;border:1.5px solid var(--border);color:var(--text);text-align:left;background:#1b2333;border-radius:12px;flex-direction:column;justify-content:center;gap:.2rem;padding:.55rem .75rem;display:flex;position:absolute;overflow:hidden}.tree-card-name{font-size:.98rem;font-weight:700;line-height:1.2}.tree-card-line{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.tree-card.is-available{background:#233049;border-color:#ffffff8c}.tree-card.is-done{border-color:var(--accent);background:#1f3156}.tree-card.is-done .tree-card-line{color:#cfe0ff}.tree-card.is-current{border:2.5px solid var(--accent);background:#24375f}.tree-card.is-queued{border:2px dashed var(--accent)}.tree-card.is-next{opacity:.7}.tree-card.is-hidden{opacity:.45;background:#1b233399;border-style:dashed}.tree-card.is-selected{outline-offset:2px;opacity:1;outline:3px solid #fff}.tree-card-progress{background:var(--bar-track);border-radius:999px;height:5px;overflow:hidden}.tree-card-progress span{background:var(--bar-fill);height:100%;display:block}.tree-card-rivals{display:flex;position:absolute;bottom:6px;right:6px}.tree-card-rivals>*+*{margin-left:-6px}.tree-owners li{align-items:center;gap:.4rem;display:flex}.tree-card-badge{background:var(--accent);width:22px;height:22px;color:var(--accent-text);border-radius:50%;place-items:center;font-size:.75rem;font-weight:700;display:grid;position:absolute;top:6px;right:6px}.tree-legend{color:var(--text-muted);flex-wrap:wrap;gap:.4rem 1rem;margin:1rem 24px 0;padding:0;font-size:.8rem;list-style:none;display:flex}.tree-legend li:before{content:"";border:1.5px solid var(--border);vertical-align:middle;border-radius:3px;width:14px;height:10px;margin-right:.35rem;display:inline-block}.tree-legend .is-done:before{border-color:var(--accent);background:#1f3156}.tree-legend .is-current:before{border:2.5px solid var(--accent);background:#24375f}.tree-legend .is-queued:before{border:2px dashed var(--accent)}.tree-legend .is-available:before{background:#233049;border-color:#ffffff8c}.tree-legend .is-locked:before{opacity:.5;border-style:dashed}.tree-detail{border-left:1px solid var(--border);background:var(--surface-solid);flex-direction:column;flex:none;gap:.55rem;width:340px;padding:1rem;display:flex;overflow:auto}.tree-detail h3{font-size:1.2rem}.tree-detail .link-button{text-align:left;align-self:flex-start}.tree-links{margin:0;padding:0;list-style:none}.tree-links .link-button{text-align:left;min-height:36px}.tree-detail-foot{border-top:1px solid var(--border);flex-direction:column;gap:.5rem;margin-top:auto;padding-top:.6rem;display:flex}@media (width<=760px){.tree-header h2{display:none}.tree-detail{border-left:0;border-top:1px solid var(--border);width:auto;max-height:62dvh;padding-bottom:max(1rem, env(safe-area-inset-bottom));border-radius:16px 16px 0 0;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -12px 40px #00000080}}.race-list{counter-reset:race;flex-direction:column;gap:.2rem;margin:0;padding:0;list-style:none;display:flex}.race-list li{counter-increment:race;border-radius:8px;align-items:center;gap:.5rem;padding:.2rem .35rem;font-size:.9rem;display:flex}.race-list li:before{content:counter(race);min-width:1em;color:var(--text-muted);font-weight:700}.race-list li.is-you{background:var(--accent-soft);font-weight:700}.race-you-dot{background:var(--accent);border-radius:50%;flex:none;width:22px;height:22px}.race-name{flex:1}.race-slump{color:var(--warn);font-size:.75rem;font-weight:600}.race-value{font-variant-numeric:tabular-nums}.bf-button{flex-direction:row!important;gap:.45rem!important}.panel.sheet.bf-report{max-width:560px}.bf-header{align-items:center;gap:.75rem;display:flex}.bf-brand{letter-spacing:.06em;text-transform:uppercase;color:#8fe07a;font-size:.8rem;font-weight:800}.bf-header h2{font-size:1.2rem}.bf-period{color:var(--text-muted);font-size:.82rem}.bf-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.88rem}.bf-table th,.bf-table td{text-align:left;border-bottom:1px solid var(--border);padding:.4rem .35rem}.bf-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.75rem}.bf-table tr.is-you td{background:var(--accent-soft);font-weight:700}.bf-company{align-items:center;gap:.4rem;display:flex}.bf-news{flex-direction:column;gap:.3rem;margin:0;padding-left:1.1rem;font-size:.9rem;display:flex}.final-standings{flex-direction:column;gap:.5rem;padding:.5rem 0;display:flex}.final-standings h2{font-size:1.15rem}.panel.end-card:has(.final-standings){max-width:620px}@media (width<=520px){.bf-optional{display:none}}.news-alert{border-top:4px solid var(--decline);max-width:480px}.news-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:.45rem;font-size:.78rem;font-weight:700;display:flex}.news-alert.is-decision{border-top-color:var(--accent)}.news-alert.is-decision .news-dot{background:var(--accent)}.news-choice{text-align:left;align-items:flex-start}.saving-line{font-weight:600;color:#cfe0ff!important}.news-dot{background:var(--decline);border-radius:50%;width:9px;height:9px}.news-alert h2{font-size:1.3rem;line-height:1.25}.news-result{background:var(--surface-2);border-radius:10px;padding:.6rem .75rem}.news-choices{flex-direction:column;gap:.5rem;display:flex}.change-notes{background:var(--moom-dark);justify-content:center;padding:.6rem .75rem 0}.news-alert .change-notes{background:0 0;justify-content:flex-start;padding:0}.end-price{font-size:1.3rem;font-weight:700}.call-backdrop{z-index:50;background:var(--call-bg);padding:16px max(16px, env(safe-area-inset-right)) 16px max(16px, env(safe-area-inset-left));place-items:center;display:grid;position:fixed;inset:0}.call-backdrop-light{background:#06091059}.moom-logo{border-radius:28%;flex:none;display:block}.incoming-call{background:var(--moom-dark);color:#fff;text-align:center;border-radius:20px;flex-direction:column;align-items:center;gap:.35rem;width:100%;max-width:340px;padding:1.25rem 1.25rem 1.5rem;animation:.25s ease-out incoming-in;display:flex;box-shadow:0 24px 60px #00000080}.incoming-brand{color:#fffc;align-self:stretch;align-items:center;gap:.45rem;margin-bottom:.75rem;font-size:.85rem;font-weight:700;display:flex}.incoming-avatar-ring{background:var(--moom);border-radius:50%;margin-bottom:.6rem;padding:5px;animation:1.4s ease-out infinite ring-pulse}.avatar{background:#000;border-radius:50%;flex:none;display:block;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;display:block;transform:scale(2.1)}.incoming-name{font-size:1.35rem}.incoming-sub{color:#ffffffbf;font-size:.92rem}.incoming-actions{justify-content:center;gap:2.5rem;margin-top:1.25rem;display:flex}.round-button{color:#fff;background:0 0;border:0;flex-direction:column;align-items:center;gap:.4rem;font-size:.9rem;font-weight:600;display:flex}.round-button-icon{border-radius:50%;place-items:center;width:64px;height:64px;display:grid}.round-button.accept .round-button-icon{background:var(--accept)}.round-button.decline .round-button-icon{background:var(--decline)}@keyframes ring-pulse{0%{box-shadow:0 0 #5a5cf0b3}to{box-shadow:0 0 0 22px #5a5cf000}}@keyframes incoming-in{0%{opacity:0;transform:translateY(12px)scale(.97)}}.haggle{background:var(--moom-dark);color:#fff;flex-direction:column;gap:.55rem;padding:.75rem .9rem .25rem;display:flex}.haggle-title{color:#c9ccff;font-size:.95rem;font-weight:700}.haggle-meters{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.6rem 1rem;display:grid}.haggle-meter{flex-direction:column;gap:.25rem;display:flex}.haggle-meter-label,.haggle-ask-label{color:#ffffffd9;font-size:.85rem}.haggle-meter-note{color:#ffffffb3;font-size:.78rem}.gauge-fill.is-low{background:repeating-linear-gradient(-45deg, var(--warn-fill) 0 6px, #f0a83099 6px 12px)}.inline-link{color:#a9b8ff;min-height:auto;font-size:.82rem;text-decoration:underline}.haggle-factors{color:#fffc;margin:0;padding-left:1.1rem;font-size:.8rem}.haggle-why{background:#ffffff0f;border-radius:8px;padding:.45rem .6rem;font-size:.85rem}.haggle-offer{font-size:.95rem}.haggle-done{text-align:center;font-size:1.2rem;font-weight:700}.haggle-asks{grid-template-columns:repeat(4,1fr);gap:.35rem;display:grid}.haggle-asks .haggle-ask-label{grid-column:1/-1}.ask-button{min-height:var(--tap);color:#fff;text-align:center;background:#ffffff0a;border:1.5px solid #fff3;border-radius:8px;flex-direction:column;gap:.1rem;padding:.35rem .4rem;font-size:.78rem;display:flex}.ask-button strong{font-size:.88rem}.ask-button.is-selected{background:#5a5cf059;border-color:#a9b8ff}.haggle-moves{grid-template-columns:repeat(5,1fr);gap:.35rem;display:grid}.move-button{background:var(--moom);color:#fff;padding:.4rem .3rem}.move-button.is-weaker{opacity:.85}.move-button.is-spent{opacity:.65}.move-button.is-backfires{background:#8a5a12}.haggle-actions{flex-wrap:wrap;gap:.4rem;display:flex}.haggle-actions .button{flex:12rem}@media (width<=640px){.haggle-asks{grid-template-columns:repeat(2,1fr)}.haggle-moves{grid-template-columns:repeat(3,1fr)}}.trade-kinds{grid-template-columns:repeat(3,1fr);gap:.35rem;display:grid}.trade-lists{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.6rem 1rem;display:grid}.trade-list{flex-direction:column;gap:.35rem;max-height:16rem;display:flex;overflow-y:auto}.trade-option{text-align:left;flex-shrink:0;align-items:flex-start}.team-roles{flex-direction:column;gap:.45rem;margin:.35rem 0;display:flex}.role-row{grid-template-columns:1fr auto;align-items:center;gap:.1rem .5rem;display:grid}.role-name{white-space:nowrap;font-weight:600}.role-stepper{align-items:center;gap:.3rem;display:inline-flex}.role-step{min-width:var(--tap);min-height:var(--tap);padding:0;font-size:1.2rem;font-weight:700}.role-count{text-align:center;font-variant-numeric:tabular-nums;min-width:1.6rem}.role-count-fixed{margin-left:calc(var(--tap) + .3rem);margin-right:calc(var(--tap) + .3rem)}.role-effect{color:var(--text-muted);flex-direction:column;grid-column:1/-1;font-size:.82rem;display:flex}.role-sub{opacity:.8;font-size:.75rem}.role-mode{color:var(--text-muted);font-size:.8rem}.one-time-hint{color:inherit;background:#f5b32424;border:1px solid #ffd36a8c;border-radius:10px;align-items:center;gap:.6rem;margin:.25rem 0 .5rem;padding:.5rem .7rem;font-size:.88rem;display:flex}.one-time-hint p{flex:1}.hint-dismiss{flex-shrink:0;min-height:36px;padding:.2rem .7rem}.how-to-play{max-width:560px}.how-to-intro{font-size:1rem}.how-to-section h3{margin:0 0 .15rem;font-size:.98rem}.how-to-section p{color:var(--text-muted)}.deal-tag{font-weight:600;color:#8fe0a8!important}.contacts{background:var(--moom-dark);color:#fff;border-radius:18px;width:100%;max-width:420px;max-height:calc(100dvh - 32px);padding:.5rem 1rem 1rem;animation:.2s ease-out incoming-in;overflow:auto;box-shadow:0 24px 60px #00000080}.contacts-more{text-align:center;color:#ffffffd9;background:linear-gradient(to bottom, #0000, var(--moom-dark) 60%);pointer-events:none;margin:0 -1rem -1rem;padding:1.6rem 1rem .6rem;font-size:.82rem;font-weight:600;position:sticky;bottom:-1rem}@media (width>=760px){.contacts{max-width:760px}.contacts .contacts-group ul{grid-template-columns:1fr 1fr;display:grid}}.contacts-header{background:var(--moom-dark);align-items:center;gap:.6rem;padding:.6rem 0;display:flex;position:sticky;top:0}.contacts-header h2{flex:1;font-size:1.15rem}.contacts-close{width:var(--tap);height:var(--tap);color:#fff;background:#ffffff14;border:0;border-radius:50%;font-size:1rem}.contacts-group h3{letter-spacing:.08em;text-transform:uppercase;color:#ffffffa6;margin:.6rem 0 .3rem;font-size:.78rem}.contacts-group ul{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.contact-row{background:#ffffff0d;border-radius:12px;align-items:center;gap:.6rem;padding:.4rem .5rem;display:flex}.contact-text{flex-direction:column;flex:1;min-width:0;display:flex}.contact-text span{color:#ffffffb3;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.contact-call{min-height:var(--tap);background:var(--accept);color:#fff;border:0;border-radius:999px;align-items:center;gap:.35rem;padding:0 .9rem;font-weight:700;display:inline-flex}.meeting{background:var(--moom-dark);color:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:960px;max-height:calc(100dvh - 32px);display:flex;overflow:hidden;box-shadow:0 24px 60px #00000080}.meeting>*{flex-shrink:0}.meeting-side{background:var(--moom-dark);flex-direction:column;display:flex}@media (width>=900px){.meeting.has-extra{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1.15fr) minmax(380px,1fr);max-width:1240px;height:min(720px,100dvh - 32px);display:grid;overflow:hidden}.meeting.has-extra .meeting-topbar,.meeting.has-extra .meeting-toolbar{grid-column:1/-1}.meeting.has-extra .meeting-stage{aspect-ratio:auto;align-self:stretch;height:auto;min-height:0;max-height:none}.meeting.has-extra .meeting-side{min-height:0;padding-bottom:.5rem;overflow-y:auto}}.meeting-topbar{z-index:2;background:var(--moom-bar);align-items:center;gap:.75rem;padding:.5rem .85rem;font-size:.85rem;display:flex;position:sticky;top:0}.meeting-brand{align-items:center;gap:.45rem;font-weight:700;display:inline-flex}.meeting-title{text-align:center;color:#fffc;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.meeting-timer{font-variant-numeric:tabular-nums;align-items:center;gap:.35rem;display:inline-flex}.rec-dot{background:#2fd27a;border-radius:50%;width:8px;height:8px}.meeting-stage{aspect-ratio:1376/768;background:#000;flex:none;min-height:180px;max-height:52dvh;position:relative}.meeting-video{object-fit:cover;width:100%;height:100%;display:block}.meeting-nameplate{background:#0009;border-radius:6px;align-items:center;gap:.35rem;padding:.2rem .55rem;font-size:.82rem;display:inline-flex;position:absolute;top:.6rem;left:.6rem}.self-tile{aspect-ratio:16/10;background:#2c2f3a;border:2px solid #fff3;border-radius:8px;place-items:center;width:clamp(88px,18%,160px);display:grid;position:absolute;top:.6rem;right:.6rem}.self-avatar{aspect-ratio:1;background:#4b5163;border-radius:50%;place-items:center;width:40%;font-size:1.1rem;font-weight:700;display:grid}.self-name{font-size:.72rem;position:absolute;bottom:.2rem;left:.35rem}.meeting-caption{color:#fff;text-align:center;background:#000000c7;border-radius:6px;width:min(92%,720px);padding:.55rem .8rem;font-size:1.02rem;position:absolute;bottom:.75rem;left:50%;transform:translate(-50%)}.meeting-replies{background:var(--moom-dark);flex-wrap:wrap;justify-content:center;gap:.5rem;padding:.75rem;display:flex}.reply-button{background:var(--moom);color:#fff;flex:0 22rem}.meeting-toolbar{padding:.4rem .75rem;padding-bottom:max(.4rem, env(safe-area-inset-bottom));background:var(--moom-bar);justify-content:space-between;align-items:center;gap:.5rem;display:flex}.toolbar-group{gap:.25rem;display:flex}.toolbar-item{color:#ffffffd9;flex-direction:column;align-items:center;gap:.1rem;min-width:64px;padding:.25rem .35rem;font-size:.7rem;display:flex}.toolbar-item.is-on{color:#8fb2ff}.leave-button{background:var(--decline);color:#fff;border:0;border-radius:8px;min-height:38px;padding:0 1.1rem;font-weight:700}@media (width<=899px){.meeting-backdrop{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;display:block;overflow-y:auto}.meeting-backdrop .meeting{max-height:none;margin:0 auto;overflow:visible}.meeting-backdrop .meeting-topbar{position:static}}@media (width<=640px){.meeting-backdrop{padding:0 env(safe-area-inset-right) 0 env(safe-area-inset-left)}.meeting-backdrop .meeting{border-radius:0;min-height:100dvh}.meeting-stage{aspect-ratio:auto;height:30dvh;min-height:150px}.toolbar-middle{display:none}.meeting-toolbar{padding-bottom:max(.75rem, env(safe-area-inset-bottom))}}.panel.end-card{background:var(--surface-solid);gap:.75rem;width:100%;max-width:460px;padding:1.75rem}.end-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:.85rem;font-weight:700}.end-card h1{font-size:1.8rem}.end-stats{color:var(--text-muted);font-variant-numeric:tabular-nums;margin:0;padding-left:1.2rem}@media (prefers-reduced-motion:reduce){.gauge-fill{transition:none}.incoming-avatar-ring,.incoming-call{animation:none}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){:root{--surface:var(--surface-solid)}}
