:root,:root[data-theme=light]{color-scheme:light;--bg: #f6f7f5;--bg-subtle: #eef0ec;--card: #ffffff;--card-border: #e2e5df;--text: #1f2933;--text-muted: #566072;--text-faint: #8893a4;--accent: #2f7d75;--accent-strong: #246a63;--accent-soft: #e2f1ee;--amber: #b5781f;--amber-soft: #fbf0dc;--status-available: #2f7d75;--status-available-bg: #e2f1ee;--status-taken: #9c3b3b;--status-taken-bg: #f6e3e1;--status-unknown: #6b7280;--status-unknown-bg: #eceef1;--status-shaded: #5a5f8a;--status-shaded-bg: #e8e9f4;--sun-direct: #d08b1f;--sun-indirect: #e3c58a;--sun-shaded: #6c7a89;--sun-night: #3a4252;--danger: #9c3b3b;--ok: #2f7d75;--shadow: 0 1px 2px rgba(31, 41, 51, .06), 0 2px 8px rgba(31, 41, 51, .06);--radius: 10px;--radius-sm: 6px}:root[data-theme=dark]{color-scheme:dark;--bg: #10151b;--bg-subtle: #171d25;--card: #1b222c;--card-border: #2a3340;--text: #e6ebf1;--text-muted: #a4b0c0;--text-faint: #71808f;--accent: #5cc0b4;--accent-strong: #76d1c6;--accent-soft: #163631;--amber: #e0a94b;--amber-soft: #39301d;--status-available: #5cc0b4;--status-available-bg: #163631;--status-taken: #e08a84;--status-taken-bg: #3a2220;--status-unknown: #9aa6b4;--status-unknown-bg: #232b35;--status-shaded: #9aa0d0;--status-shaded-bg: #262a40;--sun-direct: #e8b04a;--sun-indirect: #8a7a4e;--sun-shaded: #4a5664;--sun-night: #20283a;--danger: #e08a84;--ok: #5cc0b4;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 2px 10px rgba(0, 0, 0, .3);--radius: 10px;--radius-sm: 6px}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100%}body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--accent-strong)}h1,h2,h3{margin:0 0 .4em;line-height:1.25;font-weight:650}.app{max-width:1180px;margin:0 auto;padding:0 16px 64px}.header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--card-border);display:flex;align-items:center;gap:16px;padding:12px 0;flex-wrap:wrap}.header h1{font-size:18px;margin:0}.header .subtitle{color:var(--text-muted);font-size:12.5px}.spacer{flex:1}.nav{display:flex;gap:4px;flex-wrap:wrap;margin:16px 0 20px}.nav button{background:transparent;border:1px solid transparent;color:var(--text-muted);padding:7px 12px;border-radius:var(--radius-sm);cursor:pointer;font-size:13.5px;font-weight:550}.nav button:hover{background:var(--bg-subtle);color:var(--text)}.nav button[aria-current=true]{background:var(--accent-soft);color:var(--accent-strong);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.card{background:var(--card);border:1px solid var(--card-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.card.priority{border-color:color-mix(in srgb,var(--accent) 40%,var(--card-border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent),var(--shadow)}.card h2{font-size:15px;display:flex;align-items:center;gap:8px}.grid{display:grid;gap:16px}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.grid.cols-2{grid-template-columns:repeat(2,1fr)}@media (max-width: 860px){.grid.cols-3,.grid.cols-2{grid-template-columns:1fr}}button,select,input{font-family:inherit;font-size:14px}.btn{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:8px 14px;font-weight:600;cursor:pointer}.btn:hover{background:var(--accent-strong)}.btn.secondary{background:var(--bg-subtle);color:var(--text);border:1px solid var(--card-border)}.btn.danger{background:var(--danger)}.btn:disabled{opacity:.5;cursor:not-allowed}.field{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.field label{font-size:12.5px;font-weight:600;color:var(--text-muted)}.field input,.field select{background:var(--card);border:1px solid var(--card-border);border-radius:var(--radius-sm);padding:8px 10px;color:var(--text)}.field input:focus,.field select:focus,.btn:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-toggle{display:inline-flex;border:1px solid var(--card-border);border-radius:999px;overflow:hidden;background:var(--card)}.theme-toggle button{display:inline-flex;align-items:center;gap:6px;background:transparent;color:var(--text-muted);border:none;padding:6px 12px;cursor:pointer;font-size:12.5px;font-weight:600}.theme-toggle button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-strong)}.pill{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;font-size:11.5px;font-weight:650;white-space:nowrap}.pill .dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.pill.available{color:var(--status-available);background:var(--status-available-bg)}.pill.taken{color:var(--status-taken);background:var(--status-taken-bg)}.pill.unknown{color:var(--status-unknown);background:var(--status-unknown-bg)}.pill.shaded{color:var(--status-shaded);background:var(--status-shaded-bg)}.pill.verified{color:var(--ok);background:var(--accent-soft)}.pill.community{color:var(--amber);background:var(--amber-soft)}.pill.manual{color:var(--text-muted);background:var(--bg-subtle)}.pill.demo{color:var(--text-muted);background:var(--bg-subtle);border:1px dashed var(--card-border)}.pill.missing{color:var(--danger);background:var(--status-taken-bg)}.data-needed{display:flex;gap:10px;align-items:flex-start;background:var(--amber-soft);border:1px solid color-mix(in srgb,var(--amber) 35%,transparent);border-radius:var(--radius-sm);padding:10px 12px;color:var(--text);font-size:13px}.muted{color:var(--text-muted)}.faint{color:var(--text-faint);font-size:12px}.stat{font-size:30px;font-weight:700;letter-spacing:-.01em}.stat.amber{color:var(--amber)}.stat.accent{color:var(--accent-strong)}.range{color:var(--text-muted);font-size:13px}table.data{width:100%;border-collapse:collapse;font-size:13px}table.data th,table.data td{text-align:left;padding:7px 10px;border-bottom:1px solid var(--card-border)}table.data th{color:var(--text-muted);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.03em}.table-scroll{overflow-x:auto}.demo-banner{background:var(--amber-soft);border:1px dashed color-mix(in srgb,var(--amber) 45%,transparent);border-radius:var(--radius-sm);padding:8px 12px;font-size:12.5px;color:var(--text);margin-bottom:16px}.floor-grid-scroll{overflow-x:auto;padding-bottom:8px}.floor-grid{display:grid;gap:3px;min-width:max-content}.unit-cell{width:30px;height:26px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:9.5px;font-weight:600;cursor:pointer;border:1px solid transparent;position:relative}.unit-cell.available{background:var(--status-available-bg);color:var(--status-available)}.unit-cell.taken{background:var(--status-taken-bg);color:var(--status-taken)}.unit-cell.unknown{background:var(--status-unknown-bg);color:var(--status-unknown)}.unit-cell.shaded{background:var(--status-shaded-bg);color:var(--status-shaded)}.unit-cell[aria-selected=true]{outline:2px solid var(--accent);outline-offset:1px}.unit-cell.shortlisted:after{content:"★";position:absolute;top:-5px;right:-3px;font-size:9px;color:var(--amber)}.legend{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0}.schematic{display:block;width:100%;max-width:520px;margin:0 auto;background:var(--bg-subtle);border-radius:var(--radius);border:1px solid var(--card-border)}.schematic .block-shape{cursor:pointer;stroke:var(--card-border);stroke-width:1}.schematic .block-shape.selected{stroke:var(--accent);stroke-width:2.5}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:40;padding:16px}.dialog{background:var(--card);border:1px solid var(--card-border);border-radius:var(--radius);max-width:520px;width:100%;max-height:85vh;overflow:auto;padding:20px;box-shadow:var(--shadow)}.bar{height:8px;background:var(--bg-subtle);border-radius:999px;overflow:hidden}.bar>span{display:block;height:100%;background:var(--accent)}.bar.amber>span{background:var(--amber)}.row{display:flex;align-items:center;gap:10px}.wrap{flex-wrap:wrap}.mt{margin-top:12px}.mb{margin-bottom:12px}.sep{height:1px;background:var(--card-border);margin:14px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.dashboard-overview{display:grid;gap:18px}.overview-heading{display:flex;justify-content:space-between;align-items:end;gap:18px}.overview-heading h2{font-size:clamp(1.5rem,3vw,2.2rem);margin:5px 0}.overview-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;color:var(--accent,#378d80);font-weight:700}.overview-heading p{margin:6px 0}.overview-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.overview-stats article{display:flex;flex-direction:column;gap:10px;padding:17px 20px;background:var(--card);border:1px solid var(--card-border);border-radius:12px}.overview-stats article:first-child{border-top:3px solid #378d80}.overview-stats strong{font-size:2rem;line-height:1.15}.overview-stats span{font-size:.86rem;color:var(--muted)}.overview-section-title{display:flex;justify-content:space-between;gap:16px;align-items:center}.overview-section-title h2{margin:5px 0}.overview-section-title label{font-size:.8rem;display:grid;gap:4px}.journey-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(250px,1fr);gap:30px;margin-top:16px}.journey-inputs>.card{padding:0;border:0;box-shadow:none;background:transparent}.journey-inputs .field{margin-bottom:10px}.journey-inputs h2{font-size:1rem}.journey-inputs .faint{font-size:.8rem}.journey-track-area{position:relative;padding-top:58px;margin:8px 30px 0 35px}.journey-avatar{position:absolute;top:0;color:#378d80;transform:translate(-50%)}.journey-home{position:absolute;right:-20px;top:10px;font-size:42px;line-height:1}.journey-track{height:9px;background:#8895a444;border-radius:10px;overflow:hidden}.journey-track>span{display:block;height:100%;background:#378d80}.journey-main{font-size:1.3rem;font-weight:700;margin-bottom:4px}.journey-main>span{font-size:.9rem;font-weight:400}.journey-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.journey-mini>div{padding:10px;background:var(--bg-subtle);border-radius:8px}.journey-mini span{display:block;font-size:.75rem}.journey-mini strong{display:block;font-size:1.2rem;margin-top:6px}.queue-journey .faint{font-size:.8rem}.journey-diary{margin-top:12px;border-top:1px solid var(--card-border);padding-top:12px}.dashboard-estimates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}.dashboard-estimates .stat{font-size:1.6rem;line-height:1.3}.dashboard-estimates h2{font-size:1rem}.dashboard-estimates .row{gap:10px!important}.dashboard-estimates .faint{font-size:.78rem}.dashboard-overview .alert{padding:10px;font-size:.86rem}.dashboard-quota-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dashboard-quota-grid article{padding:12px;background:var(--bg-subtle);border:1px solid var(--card-border);border-radius:10px}.dashboard-quota-grid h3{font-size:.95rem;margin:0 0 8px}.dashboard-quota-grid .compact{min-width:0}.dashboard-quota-grid .quota-balance-labels{font-size:.72rem}.feature-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.feature-shortcuts a{display:flex;flex-direction:column;gap:5px;padding:13px 15px;border:1px solid var(--card-border);border-radius:10px;text-decoration:none;color:inherit;background:var(--card)}.feature-shortcuts small{font-size:.77rem;color:var(--muted)}.dashboard-tool{scroll-margin-top:100px}.dashboard-tool>summary{font-size:1.1rem;font-weight:700;padding:3px 0;cursor:pointer}.dashboard-tool[open]>summary{margin-bottom:20px}.owner-disclaimer{margin-top:30px;padding:20px 0;border-top:1px solid var(--card-border);font-size:.82rem;color:var(--muted);line-height:1.65}.owner-disclaimer p{margin:5px 0 0}.owner-disclaimer strong{color:var(--text)}.dashboard-overview details summary{cursor:pointer}.dashboard-overview .card{margin-bottom:0}.dashboard-overview #quota-h{font-size:1.15rem}.dashboard-overview .quota-balance>small{font-size:.72rem}@media (max-width:1000px){.dashboard-estimates{grid-template-columns:1fr 1fr}.dashboard-quota-grid,.feature-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:650px){.overview-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-layout,.dashboard-estimates{grid-template-columns:1fr}.overview-section-title,.overview-heading{align-items:start;flex-wrap:wrap}.dashboard-quota-grid{grid-template-columns:1fr}.overview-stats article{padding:14px}.journey-mini{grid-template-columns:repeat(3,minmax(0,1fr))}.journey-mini span{font-size:.68rem}}#planning,#quota-overview{scroll-margin-top:110px}.dashboard-overview .quota-balance.compact .faint{font-size:.78rem}.dashboard-overview .overview-source-details>.card{margin-top:10px}.queue-roadmap{--roadmap-road:#d7e5e0;--roadmap-edge:#f9fcfa;--roadmap-land:#eaf2ec;max-width:530px;margin:0 auto 8px}.queue-roadmap svg{display:block;width:100%;height:auto;max-height:225px}.roadmap-label{fill:var(--text,#24323c);font:600 11px system-ui,sans-serif}.roadmap-caption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:.76rem;color:var(--muted);padding:0 10px}.roadmap-caption strong{color:var(--accent,#378d80)}[data-theme=dark] .queue-roadmap{--roadmap-road:#314b49;--roadmap-edge:#6a8a82;--roadmap-land:#1d3432}.journey-layout{align-items:start}.block-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.block-summary{display:flex;flex-direction:column;gap:9px;text-align:left;padding:14px;background:var(--bg-subtle);color:var(--text);border:1px solid var(--card-border);border-radius:12px;cursor:pointer;min-width:0}.block-summary[aria-pressed=true]{border:2px solid #378d80;padding:13px;box-shadow:0 0 0 2px #378d8022}.block-summary b{font-size:1.4rem}.block-summary small{font-size:.75rem}.block-stock-bar{height:7px;border-radius:8px;display:flex;background:#8895a433;overflow:hidden}.block-stock-bar i{background:#378d80}.block-stock-bar em{background:#b8594d}.quota-bar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.quota-count-track{height:12px;border-radius:8px;background:#8895a433;margin:9px 0}.quota-count-track span{display:block;background:#378d80;height:100%;border-radius:8px}.quota-sources{border-top:1px solid var(--card-border);padding-top:12px}.block-unit-panel .floor-grid{max-width:420px;gap:5px}.block-unit-panel .unit-cell{width:100%;min-height:32px}.block-unit-panel .floor-grid-scroll{max-height:580px;overflow:auto}.block-unit-panel .card{max-width:520px;margin:auto}.block-explorer h3{margin:8px 0}.block-explorer summary{cursor:pointer}@media (max-width:1100px){.block-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:600px){.block-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quota-bar-grid{grid-template-columns:1fr}.block-summary{padding:11px}.block-summary[aria-pressed=true]{padding:10px}}.quota-balance-track{height:14px;border-radius:8px;background:#8895a44d;margin:10px 0 6px;overflow:hidden}.quota-balance-track>span{display:block;height:100%;background:#378d80;border-radius:8px}.quota-balance-labels{display:flex;justify-content:space-between;gap:8px;font-size:.78rem;margin-bottom:6px}.quota-bar-item h4{margin:0 0 8px}.quota-balance.compact{min-width:210px}.quota-balance.compact .quota-balance-labels{flex-wrap:wrap}.quota-balance.compact strong{font-size:.9rem}
