:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#162a21;font-synthesis:none;--ink:#162a21;--muted:#6b7c73;--line:#d9dfd5;--paper:#f8f8f2;--cream:#f1eee2;--growth:#d8853a;--reproduction:#4c8f67;--reserve:#667ab3;--font-scale:1.08;background:#edf0e8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}:root[data-font-size=small]{--font-scale:.94}:root[data-font-size=medium]{--font-scale:1.08}:root[data-font-size=large]{--font-scale:1.22}*{box-sizing:border-box}html{background:#edf0e8;min-width:320px}body{background:radial-gradient(circle at 8% -10%,#f6e9bc 0,#0000 30%),radial-gradient(circle at 100% 40%,#d8e6d9 0,#0000 26%),#edf0e8;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.42}button:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #d89b4d88}h1,h2,p{margin-top:0}.hidden{display:none!important}.visually-hidden{clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}.surface{background:color-mix(in srgb, var(--paper) 96%, transparent);border:1px solid #fffa;border-radius:18px;box-shadow:0 14px 40px #2a493516}.eyebrow,.label,.step-label{color:#7a8a80;letter-spacing:.13em;text-transform:uppercase;font-size:10px;font-weight:800}.app-shell{width:min(1500px,100% - 28px);margin:0 auto;padding:14px 0 40px}.app-header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:14px;padding:4px 4px 0;display:flex}.app-header h1{letter-spacing:-.035em;margin:3px 0 2px;font-family:Georgia,Songti SC,serif;font-size:clamp(24px,2.3vw,38px);font-weight:600}.app-header p{color:var(--muted);margin:0;font-size:13px}.header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.clock{min-width:128px}.clock span{font-variant-numeric:tabular-nums;font-size:21px;font-weight:800;display:block}.clock small{color:var(--muted);font-size:10px;display:block}.quiet-button,.speed-group button,.chart-tabs button,.font-controls button{border:1px solid var(--line);color:#41544b;background:#f8f8f2;border-radius:9px;padding:8px 11px;font-size:12px;font-weight:700}.font-controls{border:1px solid var(--line);background:#f8f8f2;border-radius:11px;padding:3px;display:flex}.font-controls button{background:0 0;border:0;padding:5px 7px}.font-controls button.active{background:var(--ink);color:#fff}.speed-group{border:1px solid var(--line);background:#f8f8f2;border-radius:11px;padding:3px;display:flex}.speed-group button{background:0 0;border:0;padding:5px 8px}.speed-group button.active,.chart-tabs button.active{background:var(--ink);color:#fff}.report-button{color:#244a3b;background:#eaf1e7;border-color:#c7d4c7}.panel-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;display:flex}.panel-heading strong{margin-top:2px;font-size:13px;display:block}.map-panel{padding:12px;overflow:hidden}.map-heading{margin:0 3px 10px}.map-canvas-wrap{aspect-ratio:1;background:#284b4f;border:1px solid #fff7;border-radius:12px;width:100%;height:auto;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #18372c33}.game-root{width:100%;height:100%}.game-root canvas{cursor:crosshair;display:block;width:100%!important;height:100%!important}.game-root canvas.is-panning{cursor:grabbing}.map-scale-overlay{z-index:4;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.map-grid-lines{fill:none;stroke:#fffced;stroke-width:1px;opacity:.28}.map-axis-lines{fill:none;stroke:#f5f1d9;stroke-width:2px;filter:drop-shadow(0 1px 1px #17372fcc)}.map-axis-labels text{fill:#fffced;paint-order:stroke;stroke:#17372f;stroke-width:5px;stroke-linejoin:round;font-variant-numeric:tabular-nums;font-family:Inter,PingFang SC,sans-serif;font-size:17px;font-weight:800}.map-axis-labels .map-axis-unit{fill:#ffe3a0;font-size:20px}.legend{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;gap:9px;font-size:10px;display:flex}.legend span{align-items:center;gap:4px;display:inline-flex}.legend i{background:var(--legend);border-radius:999px;width:8px;height:8px}.legend .legend-own{background:#4e9a70;border:2px solid #fff;border-radius:999px;width:9px;height:9px;box-shadow:0 0 0 1px #789087}.legend .legend-risk{background:#d74236;border:1px solid #fff}.legend .legend-death{color:#d74236;background:0 0;place-items:center;width:11px;height:11px;font-size:13px;font-style:normal;font-weight:900;line-height:1;display:inline-grid}.map-guides{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px 12px;display:flex}.map-control-group{background:#eef3e9;border:1px solid #cbd7c9;border-radius:9px;gap:2px;padding:2px;display:flex}.map-control-group button,.map-tool,.inline-tool{color:#456055;background:0 0;border:0;border-radius:7px;padding:5px 7px;font-size:9px;font-weight:800}.map-control-group button.active{background:var(--ink);color:#fff}.map-tool,.inline-tool{background:#f7f8f1;border:1px solid #cbd7c9}.transplant-hint{color:#365949;background:#eef3e9;border:1px solid #cbd7c9;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:800}.light-scale{color:var(--muted);justify-content:flex-end;align-items:center;gap:6px;margin:0;font-size:9px;display:flex}.map-footer{color:var(--muted);justify-content:space-between;align-items:center;margin:7px 4px 0;font-size:9px;display:flex}.simulation-controls{border-color:#d9e0d5;align-items:center;gap:11px;padding:11px 14px;display:flex}.simulation-controls .clock{text-align:left;margin-right:auto}.simulation-controls .clock span{font-size:19px}.primary-control{background:var(--ink);color:#fff;border:0;border-radius:10px;padding:9px 15px;font-weight:850}.control-hint{color:var(--muted);font-size:9px}.light-scale i{background:linear-gradient(90deg,#234850,#5b8b6f,#e7d580);border-radius:99px;width:90px;height:7px}.overview-panel,.allocation-panel,.selected-panel,.chart-panel,.event-panel{padding:15px}.metric-grid,.carbon-flow,.status-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.metric-grid div,.carbon-flow div,.status-grid div{background:#eef1e9;border-radius:10px;min-width:0;padding:9px 10px}.metric-grid span,.carbon-flow span,.status-grid span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;display:block;overflow:hidden}.metric-grid strong,.carbon-flow strong,.status-grid strong{font-variant-numeric:tabular-nums;margin-top:2px;font-size:17px;display:block}.status-grid strong{overflow-wrap:anywhere;font-size:12px}.stage-bar{background:#e4e8e0;border-radius:99px;height:9px;margin-top:12px;display:flex;overflow:hidden}.stage-labels{color:var(--muted);justify-content:space-between;margin-top:4px;font-size:9px;display:flex}.allocation-total{background:var(--ink);color:#fff;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800}.allocation-row{margin:12px 0}.allocation-row label{justify-content:space-between;margin-bottom:5px;font-size:12px;display:flex}.allocation-row label strong{font-variant-numeric:tabular-nums}.allocation-row small{color:var(--muted);justify-content:space-between;gap:10px;margin-top:5px;font-size:9px;line-height:1.35;display:flex}.allocation-row small b{color:currentColor;white-space:nowrap;font-weight:850}input[type=range]{appearance:none;background:#dfe5dc;border-radius:99px;width:100%;height:6px;margin:0}input[type=range]::-webkit-slider-thumb{appearance:none;background:currentColor;border:3px solid #fff;border-radius:99px;width:17px;height:17px;box-shadow:0 2px 8px #1630282f}.allocation-row.growth{color:var(--growth)}.allocation-row.reproduction{color:var(--reproduction)}.allocation-row.reserve{color:var(--reserve)}.allocation-row label span,.allocation-row small{color:var(--ink)}.allocation-row small{color:var(--muted)}.carbon-flow{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px}.carbon-flow div{padding:8px}.carbon-flow strong{font-size:13px}.strategy-prediction{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:7px 0 0;padding:0;display:grid}.strategy-prediction legend{color:#596d62;width:100%;font-size:calc(9px * var(--font-scale));margin-bottom:5px;font-weight:850}.strategy-prediction button{min-width:0;color:var(--ink);text-align:left;background:#f6f8f1;border:1px solid #ccd7cd;border-radius:9px;padding:7px 8px}.strategy-prediction button strong,.strategy-prediction button span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.strategy-prediction button strong{font-size:calc(9px * var(--font-scale))}.strategy-prediction button span{color:#708077;font-size:calc(7px * var(--font-scale));margin-top:2px}.strategy-prediction button.active{background:#e3eee1;border-color:#315c49;box-shadow:inset 0 0 0 1px #315c49}.strategy-prediction button:disabled{cursor:not-allowed;opacity:.62}.strategy-contract{background:#edf4e8;border:1px solid #cbd9cb;border-radius:11px;align-items:center;gap:10px;margin-top:8px;padding:9px 10px;display:flex}.strategy-contract>div{flex:1;min-width:0}.strategy-contract span,.strategy-contract strong,.strategy-contract small{display:block}.strategy-contract span{color:#718078;font-size:calc(8px * var(--font-scale));font-weight:800}.strategy-contract strong{color:#254536;font-size:calc(11px * var(--font-scale));margin-top:1px}.strategy-contract small{color:#68796f;font-size:calc(8px * var(--font-scale));text-overflow:ellipsis;white-space:nowrap;margin-top:2px;overflow:hidden}.strategy-contract button{color:#fff;font-size:calc(9px * var(--font-scale));background:#173d2f;border:0;border-radius:9px;flex:none;padding:8px 11px;font-weight:850}.strategy-contract button:disabled{color:#718078;cursor:not-allowed;background:#c7d0c8}.strategy-contract[data-early=true]{background:#fff4e5;border-color:#d7a264}.strategy-contract[data-early=true] button{background:#a95930}[data-panel-id=strategy][data-flash=true]{box-shadow:0 0 0 3px #d39b4f,0 18px 45px #17352835}.allocation-tools{align-items:center;gap:10px;display:flex}.active-abilities{flex-wrap:wrap;gap:5px;display:flex}.active-abilities button{color:#5a4926;background:#fff6df;border:1px solid #d4bd8d;border-radius:10px;align-items:center;gap:6px;padding:6px 9px;font-size:9px;display:flex}.active-abilities button strong,.active-abilities button span{display:block}.active-abilities button span{color:#8c7445}.allocation-presets{gap:5px;display:flex}.allocation-presets button{color:#455b50;background:#f7f7f0;border:1px solid #cfd8cd;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:800}.allocation-presets button:hover{border-color:#7f998a}.allocation-presets button.active{border-color:var(--ink);background:var(--ink);color:#fff}.selected-content{color:#4a5c53;min-height:76px;font-size:11px;line-height:1.45}.selected-content.empty{color:#829087;align-items:center;display:flex}.inspection-note{color:var(--muted);margin:9px 2px 0;font-size:10px}.chart-heading{align-items:flex-start}.chart-tabs{gap:3px;display:flex}.chart-tabs button{padding:5px 7px;font-size:9px}.population-chart{width:100%;height:230px}.event-panel{align-items:center;gap:14px;margin-top:10px;display:flex}.event-status{align-items:center;gap:7px;min-width:150px;font-size:11px;display:flex}.event-dot{background:#6e9c7d;border-radius:99px;width:8px;height:8px;box-shadow:0 0 0 4px #6e9c7d18}.event-panel p{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:10px;line-height:1.4;overflow:hidden}.event-panel[data-tone=warning]{background:#fff7ee;border-color:#d99c7777}.event-panel[data-tone=warning] .event-dot{background:#c86e45;box-shadow:0 0 0 4px #c86e4518}.event-panel[data-tone=bad] .event-dot{background:#a84f43}.dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(380px,.85fr);align-items:start;gap:12px;display:grid}.dashboard-map-column,.dashboard-side{gap:10px;min-width:0;display:grid}.dashboard-map-column .event-panel{margin-top:0}.dashboard-side{grid-template-rows:auto auto minmax(0,1fr)}.dashboard-side .overview-panel,.dashboard-side .selected-panel,.dashboard-side .chart-panel{min-width:0}.dashboard-side .population-chart{height:180px}.allocation-dock{background:color-mix(in srgb, #fffaf0 82%, var(--paper));border-color:#e5d6a7;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:24px;margin:0;display:grid;box-shadow:0 16px 38px #5e51221a}.allocation-dock .panel-heading,.allocation-dock .carbon-flow{grid-column:1/-1}.allocation-dock .allocation-row{margin:5px 0 9px}.allocation-dock .carbon-flow{margin-top:7px}.hover-tooltip{z-index:40;color:#fff;pointer-events:none;background:#142a23e8;border:1px solid #fff3;border-radius:10px;width:215px;padding:9px 11px;position:fixed;box-shadow:0 10px 30px #0d211a55}.hover-tooltip strong,.hover-tooltip span{display:block}.hover-tooltip strong{font-size:12px}.hover-tooltip span{color:#c8d4cc;margin-top:2px;font-size:9px}.modal{z-index:80;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#13271f99;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal-card{background:var(--paper);border-radius:22px;width:min(480px,100%);padding:28px;box-shadow:0 30px 90px #0b1e1766}.modal-card h2{margin:7px 0 8px;font-family:Georgia,Songti SC,serif;font-size:31px}.modal-card p{color:var(--muted);font-size:13px;line-height:1.55}.modal-card ul{margin:16px 0 20px;padding:0;list-style:none}.modal-card li{border-bottom:1px solid var(--line);padding:8px 0;font-size:12px}.modal-actions{gap:8px;display:flex}.modal-actions button,.primary-button{background:var(--ink);color:#fff;border:0;border-radius:11px;padding:11px 16px;font-weight:800}.modal-actions .quiet-button{border:1px solid var(--line);color:var(--ink);background:#edf0e8}.report-card{flex-direction:column;width:min(1120px,92vw);height:min(88vh,900px);max-height:calc(100vh - 32px);padding:0;display:flex;overflow:hidden}.report-header{border-bottom:1px solid var(--line);background:var(--paper);flex:none;padding:22px 26px 10px}.report-header h2{margin-bottom:0}.report-scroll-body{overscroll-behavior:contain;flex:auto;min-height:0;padding:16px 26px 10px;overflow-y:auto}.report-card>.modal-actions{border-top:1px solid var(--line);background:var(--paper);flex:none;padding:12px 26px 18px}.report-card>p{max-width:720px;margin-bottom:10px}.report-outcome{color:#bd6e31;margin:-3px 0 9px;font-size:15px}.report-summary{background:var(--panel-soft);border-radius:12px;padding:12px 14px}.report-summary span{color:var(--muted);letter-spacing:.08em;margin-bottom:4px;font-size:10px;font-weight:800;display:block}.report-summary p{margin:0}.report-chart{background:#f1f3ec;border-radius:12px;width:100%;height:220px;margin:4px 0 12px}.report-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px;display:grid}.report-columns h3{color:#6d7e74;letter-spacing:.11em;text-transform:uppercase;margin:0 0 4px;font-size:10px}.report-card .report-columns ul,.report-card .report-columns ol{margin:0 0 18px;padding:0;list-style:none}.report-card .report-columns li{border-bottom:1px solid var(--line);gap:9px;padding:7px 0;font-size:11px;line-height:1.35;display:flex}.report-card .report-columns time{color:#829087;font-variant-numeric:tabular-nums;flex:0 0 42px}.cycle-review-card{width:min(820px,94vw)}.cycle-review-card header{border-bottom:1px solid var(--line);padding-bottom:14px}.cycle-review-card header p{margin:0}.cycle-review-verdict{background:#edf1e9;border-radius:11px;margin-top:13px;padding:11px 13px}.cycle-review-verdict[data-met=true]{color:#26553e;background:#e4f0df}.cycle-review-verdict[data-met=false]{color:#7a482c;background:#fff0e4}.cycle-review-verdict strong,.cycle-review-verdict span{display:block}.cycle-review-verdict strong{font-size:calc(13px * var(--font-scale))}.cycle-review-verdict span{font-size:calc(9px * var(--font-scale));margin-top:3px;line-height:1.45}.cycle-review-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0 10px;display:grid}.cycle-review-metrics div{background:#edf1e9;border-radius:11px;padding:11px}.cycle-review-metrics span,.cycle-review-metrics strong,.cycle-review-metrics small{display:block}.cycle-review-metrics span{color:var(--muted);font-size:calc(9px * var(--font-scale))}.cycle-review-metrics strong{font-size:calc(20px * var(--font-scale));font-variant-numeric:tabular-nums;margin-top:3px}.cycle-review-metrics small{color:#64756c;font-size:calc(8px * var(--font-scale));margin-top:2px}.cycle-review-events{background:#fff7e9;border-left:3px solid #c7864f;margin:10px 0 16px;padding:11px 13px}.cycle-review-events span{color:#80633f;font-size:calc(9px * var(--font-scale));font-weight:850}.cycle-review-events p{color:#5e5140;font-size:calc(10px * var(--font-scale));margin:3px 0 0}.cycle-next-choice>div:first-child{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.cycle-next-choice>div:first-child strong{font-size:calc(12px * var(--font-scale))}.cycle-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.cycle-choice-grid button{color:var(--ink);text-align:left;background:#f8f9f3;border:1px solid #cad5c8;border-radius:12px;padding:12px}.cycle-choice-grid button:hover{background:#eef4e9;border-color:#527461;transform:translateY(-1px)}.cycle-choice-grid strong,.cycle-choice-grid span,.cycle-choice-grid small{display:block}.cycle-choice-grid strong{font-size:calc(13px * var(--font-scale))}.cycle-choice-grid span{color:#3f6251;font-size:calc(10px * var(--font-scale));margin-top:5px;font-weight:750}.cycle-choice-grid small{color:#8a654d;font-size:calc(9px * var(--font-scale));margin-top:3px}.cycle-next-choice>.quiet-button{border:1px solid var(--line);width:100%;color:var(--ink);background:#edf0e8;border-radius:9px;margin-top:9px;padding:8px;font-weight:800}.setup-screen{grid-template-columns:minmax(300px,.85fr) minmax(520px,1.15fr);align-items:center;gap:clamp(30px,7vw,110px);width:min(1280px,100% - 36px);min-height:100vh;margin:0 auto;padding:55px 0 90px;display:grid}.setup-system-bar{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f8f8f2dd;border:1px solid #fffa;border-radius:12px;align-items:center;gap:7px;padding:5px 7px 5px 10px;display:flex;position:fixed;top:14px;right:18px;box-shadow:0 8px 25px #213c2b18}.setup-system-bar>span{color:var(--muted);font-size:calc(9px * var(--font-scale));font-weight:800}.setup-copy h1{letter-spacing:-.07em;margin:10px 0 20px;font-family:Georgia,Songti SC,serif;font-size:clamp(48px,7vw,94px);font-weight:500;line-height:.94}.setup-manifesto{color:#4f6258;max-width:590px;font-size:15px;line-height:1.8}.setup-manifesto p{margin-bottom:13px}.setup-manifesto .setup-thesis{color:#243f33;margin-bottom:22px;font-weight:650}.setup-thesis em{font-family:Georgia,serif;font-weight:500}.setup-rules{flex-wrap:wrap;gap:7px;display:flex}.setup-rules span{color:#496056;border:1px solid #cbd6cb;border-radius:99px;padding:6px 10px;font-size:10px;font-weight:750}.setup-form{padding:clamp(20px,3vw,34px)}.setup-form h2{margin:7px 0;font-family:Georgia,Songti SC,serif;font-size:27px}.step-label{margin:4px 0 10px}.step-label:not(:first-child){margin-top:25px}.wizard-progress{align-items:center;gap:6px;margin-bottom:25px;display:flex}.wizard-progress i{background:#dce2d9;border-radius:99px;flex:1;height:4px}.wizard-progress i.active{background:#3d6e57}.wizard-progress span{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:5px;font-size:10px}.wizard-content{min-height:380px}.wizard-intro{color:var(--muted);margin-bottom:18px;font-size:11px;line-height:1.55}.wizard-actions{grid-template-columns:minmax(105px,.35fr) minmax(0,1fr);align-items:stretch;gap:9px;margin-top:18px;display:grid}.wizard-actions .primary-button{margin:0}.wizard-actions>:only-child{grid-column:1/-1}.strategy-grid,.scenario-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.strategy-card,.species-card,.scenario-card{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:13px;position:relative}.strategy-card{min-height:125px;padding:14px}.strategy-card i{background:var(--strategy);border-radius:99px;width:13px;height:13px;margin-bottom:22px;display:block}.strategy-card strong,.strategy-card span,.species-card strong,.species-card em,.species-card span{display:block}.strategy-card span{color:var(--muted);margin-top:5px;font-size:9px;line-height:1.45}.strategy-card.selected,.species-card.selected,.scenario-card.selected{background:#f2f3e9;border-color:#203d31;box-shadow:inset 0 0 0 1px #203d31}.scenario-card{min-height:138px;padding:13px}.scenario-card span{color:#42614e;background:#e5ebdf;border-radius:99px;padding:4px 7px;font-size:8px;font-weight:850;display:inline-block}.scenario-card strong{margin-top:13px;font-size:13px;display:block}.scenario-card p{color:var(--muted);margin:5px 0 10px;font-size:9px;line-height:1.45}.scenario-card small{color:#7d8d84;font-size:8px}.species-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.species-card{padding:13px}.species-card strong{font-size:13px}.species-card strong small{float:right;color:#668073;font-size:8px;font-weight:750}.species-card em{color:#60736a;margin-top:2px;font-family:Georgia,serif;font-size:10px}.species-card span{color:var(--muted);margin-top:5px;font-size:9px;line-height:1.4}.species-card span:first-of-type{color:#34594a;margin-top:9px;font-weight:700}.primary-button{width:100%;margin-top:22px;padding:14px}.setup-note{color:var(--muted);text-align:center;margin:10px 4px 0;font-size:9px}.density-control{border:1px solid var(--line);background:#fff;border-radius:16px;padding:22px}.density-control>label{color:var(--muted);justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:17px;font-size:10px;display:flex}.density-control>label strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:20px}.density-control input[type=range]{color:#3d6e57;height:8px}.density-exact{justify-content:flex-end;align-items:center;gap:10px;margin-top:22px;display:flex}.density-exact label{color:var(--muted);font-size:10px}.density-exact input{border:1px solid var(--line);width:110px;color:var(--ink);border-radius:9px;padding:8px 10px;font-weight:800}.density-preview{background:#eaf0e6;border-radius:14px;margin-top:11px;padding:15px 17px}.density-preview span,.density-preview strong{display:block}.density-preview span{color:var(--muted);font-size:10px}.density-preview strong{font-variant-numeric:tabular-nums;margin-top:3px;font-size:24px}.density-preview p{color:#496056;margin:7px 0 0;font-size:10px;line-height:1.5}.setup-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:18px;display:grid}.setup-summary div{background:#edf1e9;border-radius:13px;padding:15px}.setup-summary span,.setup-summary strong{display:block}.setup-summary span{color:var(--muted);font-size:9px}.setup-summary strong{margin-top:4px;font-size:13px;line-height:1.4}.density-warning{color:#6e562f;background:#fff7e7;border-left:3px solid #cf9346;margin:12px 2px 0;padding:11px 13px;font-size:10px;line-height:1.55}.properties-drawer{z-index:70;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f8f8f2f5;border:1px solid #fffa;border-radius:20px;flex-direction:column;width:min(680px,100vw - 24px);display:flex;position:fixed;inset:12px 12px 12px auto;overflow:hidden;box-shadow:0 24px 80px #12281f55}.drawer-heading{justify-content:space-between;align-items:center;padding:18px 20px 10px;display:flex}.drawer-heading h2{margin:3px 0 0;font-family:Georgia,Songti SC,serif;font-size:27px}.drawer-heading button{border:1px solid var(--line);background:#edf0e8;border-radius:9px;padding:7px 10px}.property-summary{padding:0 20px 12px}.property-summary .status-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.property-summary .status-grid div{padding:8px}.property-summary .status-grid strong{font-size:10px}.property-filters{grid-template-columns:1fr 130px 130px;gap:7px;padding:0 20px 12px;display:grid}.property-filters input,.property-filters select{border:1px solid var(--line);min-width:0;color:var(--ink);background:#fff;border-radius:9px;padding:8px 9px;font-size:10px}.property-table-wrap{border-top:1px solid var(--line);flex:1;min-height:180px;overflow:auto}.properties-drawer table{border-collapse:collapse;width:100%;font-size:10px}.properties-drawer thead{z-index:1;background:#e9eee6;position:sticky;top:0}.properties-drawer th,.properties-drawer td{text-align:right;white-space:nowrap;border-bottom:1px solid #e2e6df;padding:9px 10px}.properties-drawer th:first-child,.properties-drawer td:first-child{text-align:left}.properties-drawer tbody tr{cursor:pointer}.properties-drawer tbody tr:not(.property-spacer){height:45px}.properties-drawer tbody tr.property-spacer{cursor:default;height:auto}.properties-drawer tbody tr.property-spacer td{border:0;padding:0}.properties-drawer tbody tr:hover{background:#edf3e9}.properties-drawer tbody tr.at-risk{background:#fff1eb}.properties-drawer td strong,.properties-drawer td span{display:block}.properties-drawer td span{color:var(--muted);font-size:8px}.property-pagination{border-top:1px solid var(--line);background:#f2f4ee;justify-content:center;align-items:center;gap:12px;padding:10px 18px;display:flex}.property-pagination button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;padding:6px 9px;font-size:10px}.property-pagination span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:10px}.tutorial-overlay{z-index:90;pointer-events:none;background:0 0;position:fixed;inset:0}.tutorial-spotlight{z-index:91;pointer-events:none;border:3px solid #f3c866;border-radius:16px;transition:left .16s,top .16s,width .16s,height .16s;position:fixed;box-shadow:0 0 0 9999px #10271d66,0 10px 35px #07180e44}.tutorial-card{z-index:92;background:var(--paper);pointer-events:auto;border:1px solid #fffa;border-radius:18px;width:min(410px,100vw - 28px);padding:23px;position:fixed;top:14px;left:14px;box-shadow:0 25px 80px #07180e66}.tutorial-card h2{margin:7px 0 8px;font-family:Georgia,Songti SC,serif;font-size:25px}.tutorial-card p{color:var(--muted);margin-bottom:18px;font-size:12px;line-height:1.65}.tutorial-actions{justify-content:flex-end;gap:8px;display:flex}.tutorial-actions button{background:var(--ink);color:#fff;border:0;border-radius:10px;padding:9px 13px;font-weight:800}.tutorial-actions .quiet-button{border:1px solid var(--line);color:var(--ink);background:#edf0e8}.tutorial-focus{box-shadow:0 0 0 3px #f3c866!important}.app-shell,.setup-screen,.modal-card,.tutorial-card,.properties-drawer{font-size:calc(14px * var(--font-scale))}.eyebrow,.label,.step-label{font-size:calc(10px * var(--font-scale))}.app-header p,.panel-heading strong,.modal-card p{font-size:calc(12px * var(--font-scale))}.quiet-button,.speed-group button,.chart-tabs button,.font-controls button,.primary-control{font-size:calc(11px * var(--font-scale))}.legend,.map-footer,.control-hint,.stage-labels,.inspection-note,.event-panel p,.setup-note,.metric-grid span,.carbon-flow span,.status-grid span,.allocation-row small,.active-abilities button,.allocation-presets button,.selected-content,.property-filters input,.property-filters select{font-size:calc(9px * var(--font-scale))}.clock span,.simulation-controls .clock span{font-size:calc(19px * var(--font-scale))}.clock small,.map-control-group button,.map-tool,.inline-tool,.transplant-hint,.light-scale{font-size:calc(9px * var(--font-scale))}.metric-grid strong{font-size:calc(17px * var(--font-scale))}.status-grid strong,.allocation-row label,.hover-tooltip strong{font-size:calc(12px * var(--font-scale))}.allocation-total,.event-status{font-size:calc(11px * var(--font-scale))}.carbon-flow strong,.setup-summary strong,.species-card strong,.scenario-card strong{font-size:calc(13px * var(--font-scale))}.modal-card h2{font-size:calc(31px * var(--font-scale))}.modal-card li,.tutorial-card p{font-size:calc(12px * var(--font-scale))}.report-outcome{font-size:calc(15px * var(--font-scale))}.report-summary span,.report-columns h3{font-size:calc(10px * var(--font-scale))}.report-card .report-columns li{font-size:calc(11px * var(--font-scale))}.setup-manifesto{font-size:calc(15px * var(--font-scale))}.setup-rules span,.wizard-progress span,.density-control>label,.density-exact label,.density-preview span,.density-preview p,.density-warning{font-size:calc(10px * var(--font-scale))}.setup-form h2,.drawer-heading h2{font-size:calc(27px * var(--font-scale))}.wizard-intro{font-size:calc(11px * var(--font-scale))}.strategy-card strong{font-size:calc(12px * var(--font-scale))}.strategy-card span,.scenario-card p,.species-card span,.setup-summary span{font-size:calc(9px * var(--font-scale))}.scenario-card span,.scenario-card small,.properties-drawer td span{font-size:calc(8px * var(--font-scale))}.species-card em,.property-summary .status-grid strong,.properties-drawer table,.property-pagination button,.property-pagination span{font-size:calc(10px * var(--font-scale))}.density-control>label strong{font-size:calc(20px * var(--font-scale))}.density-preview strong{font-size:calc(24px * var(--font-scale))}.tutorial-card h2{font-size:calc(25px * var(--font-scale))}.map-axis-labels text{font-size:calc(17px * var(--font-scale))}.map-axis-labels .map-axis-unit{font-size:calc(20px * var(--font-scale))}@media (width<=1120px){.dashboard-grid{grid-template-columns:1fr}.dashboard-side{grid-template-rows:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-side .chart-panel{grid-column:1/-1}.dashboard-side .population-chart{height:270px}.setup-screen{grid-template-columns:1fr;min-height:auto;padding-top:50px}.setup-copy h1{font-size:62px}}@media (width<=760px){.app-shell{width:min(100% - 16px,1500px);padding-top:9px}.app-header{align-items:flex-start}.header-actions{flex-wrap:wrap;justify-content:flex-end}.clock{width:100%}.legend{display:none}.map-canvas-wrap{aspect-ratio:1;height:auto}.simulation-controls{flex-wrap:wrap}.simulation-controls .clock,.control-hint{width:100%}.dashboard-side{grid-template-columns:1fr}.dashboard-side .chart-panel{grid-column:1}.allocation-dock{display:block}.allocation-tools{flex-direction:column-reverse;align-items:flex-end}.active-abilities,.allocation-presets{flex-wrap:wrap;justify-content:flex-end}.carbon-flow{grid-template-columns:repeat(2,1fr)}.strategy-grid,.scenario-grid{grid-template-columns:1fr}.strategy-card{min-height:0}.strategy-card i{margin-bottom:8px}.species-grid{grid-template-columns:1fr}.setup-copy h1{font-size:50px}.report-columns{grid-template-columns:1fr;gap:0}.report-chart{height:190px}.property-filters{grid-template-columns:1fr}.property-summary .status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wizard-content{min-height:0}.wizard-actions{grid-template-columns:100px 1fr}.setup-summary{grid-template-columns:1fr}}.unified-layout{width:min(1800px,100% - 24px)}.workspace-root{isolation:isolate;background-color:#e5eadfe0;background-image:linear-gradient(90deg,#69816e0c 1px,#0000 1px),linear-gradient(#69816e0c 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:20px 20px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:1px solid #cfd8cd;border-radius:19px;width:100%;height:max(720px,100vh - 126px);min-height:720px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffc7,0 16px 45px #23432f12}.workspace-panel{background:#f8f8f2f4;border-color:#dce2d8;border-radius:15px;flex-direction:column;min-width:0;min-height:0;display:flex;position:absolute;overflow:hidden;box-shadow:0 12px 34px #1a382738;container-type:size}.workspace-panel[data-closed]{display:none}.workspace-panel[data-maximized]{border-radius:12px;box-shadow:0 18px 55px #10281b55}.workspace-titlebar{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:linear-gradient(#fbfbf6,#edf1e9);border-bottom:1px solid #dde3da;flex:0 0 38px;align-items:center;gap:7px;min-width:0;padding:5px 7px 5px 10px;display:flex}.workspace-titlebar:active{cursor:grabbing}.workspace-titlebar>strong{font-size:calc(11px * var(--font-scale));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workspace-grip{color:#8a998f;font-size:16px;line-height:1}.workspace-window-actions{gap:3px;margin-left:auto;display:flex}.workspace-window-actions button{color:#52665b;background:0 0;border:0;border-radius:7px;place-items:center;width:25px;height:25px;padding:0;font-size:13px;line-height:1;display:grid}.workspace-window-actions button:hover{color:#183a2c;background:#dfe7dc}.workspace-window-actions button[data-window-action=close]:hover{color:#8e3b31;background:#f5dcd5}.workspace-panel-content{overscroll-behavior:contain;flex:1;min-height:0;overflow:auto}.workspace-panel[data-minimized] .workspace-panel-content,.workspace-panel[data-minimized] .workspace-resize-handle{display:none}.workspace-resize-handle{z-index:20;cursor:nwse-resize;touch-action:none;background:linear-gradient(135deg,#0000 47%,#71877a 48% 54%,#0000 55%) 8px 8px/9px 9px no-repeat,linear-gradient(135deg,#0000 47%,#71877a 48% 54%,#0000 55%) 13px 13px/7px 7px no-repeat;border:0;width:22px;height:22px;position:absolute;bottom:0;right:0}.workspace-map .workspace-panel-content{overflow:hidden}.workspace-map-stack{grid-template-rows:minmax(0,1fr) auto auto;gap:7px;height:100%;min-height:0;padding:8px;display:grid;position:relative}.workspace-map .map-panel{flex-direction:column;min-height:0;padding:0;display:flex;overflow:hidden}.workspace-map .map-heading{flex:none;margin:0 2px 7px}.workspace-map .map-canvas-wrap{aspect-ratio:1;flex:1 1 0;align-self:center;width:auto;max-width:100%;min-height:300px}.workspace-map .map-footer{flex:none;gap:9px}.workspace-map .map-footer>:first-child{margin-right:auto}.workspace-map-main{flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.map-scale-readout{white-space:nowrap;align-items:flex-end;gap:5px;display:inline-flex}.map-scale-readout i{border:1px solid;border-width:0 1px 2px;width:60px;height:6px;display:block}.map-scale-readout b{font-size:inherit;font-weight:800}.map-scale-overlay.hide-grid .map-grid-lines,.map-scale-overlay.hide-axes :is(.map-axis-lines,.map-axis-labels){display:none}.map-toolbar{align-items:center;gap:4px;display:flex}.map-toolbar #map-lod{color:#577064;font-size:calc(8px * var(--font-scale));background:#e8eee4;border-radius:999px;padding:4px 7px;font-weight:800}.map-inspection-overlay{z-index:14;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f8f8f2e8;border:1px solid #fffa;border-radius:13px;width:min(330px,38%);max-height:min(230px,36%);position:absolute;top:55px;right:18px;overflow:auto;box-shadow:0 10px 30px #10281d44}.map-inspection{padding:12px}.map-inspection .panel-heading{margin-bottom:7px}.inspection-details{border-top:1px solid var(--line);margin-top:7px}.inspection-details summary{color:#456154;cursor:pointer;font-size:calc(9px * var(--font-scale));padding:7px 1px 4px;font-weight:850}.inspection-details .status-grid{margin-top:3px}.workspace-map .simulation-controls{box-shadow:none;border-radius:12px;padding:8px 12px}.workspace-map .map-event-strip{box-shadow:none;border-radius:12px;margin:0;padding:9px 12px}.mission-panel{box-shadow:none;background:#edf3e8;border-radius:12px;flex:none;align-items:center;gap:14px;margin:0;padding:7px 12px;display:flex}.mission-panel>div:first-child{flex:1;min-width:0}.mission-panel span,.mission-panel strong,.mission-panel small{display:block}.mission-panel span{color:#6c7d72;font-size:calc(8px * var(--font-scale))}.mission-panel strong{color:#254839;font-size:calc(11px * var(--font-scale));margin-top:1px}.mission-panel small{color:#62736a;font-size:calc(8px * var(--font-scale));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mission-progress{width:min(180px,30%)}.mission-progress>span{text-align:right;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mission-progress i{background:#cedbcf;border-radius:99px;height:5px;margin-top:4px;display:block;overflow:hidden}.mission-progress i b{border-radius:inherit;background:#4e8c6c;width:0;height:100%;transition:width .25s;display:block}.layer-tree{z-index:15;width:min(280px,100% - 24px);color:var(--ink);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f8f8f2eb;border:1px solid #fffa;border-radius:11px;position:absolute;top:12px;left:12px;box-shadow:0 9px 28px #10281d38}.layer-tree>summary{cursor:pointer;font-size:calc(10px * var(--font-scale));align-items:center;gap:8px;padding:8px 10px;font-weight:850;list-style:none;display:flex}.layer-tree>summary::-webkit-details-marker{display:none}.layer-tree>summary:before{content:"▸";color:#64796d}.layer-tree[open]>summary:before{content:"▾"}.layer-tree>summary small{color:var(--muted);font-size:calc(8px * var(--font-scale));margin-left:auto;font-weight:700}.layer-tree-content{max-height:min(590px,66vh);padding:0 9px 10px;overflow:auto}.layer-tree fieldset{border:1px solid #dce3da;border-radius:9px;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 8px;margin:7px 0;padding:8px;display:grid}.layer-tree legend{color:#687b70;font-size:calc(8px * var(--font-scale));padding:0 4px;font-weight:850}.layer-tree label{min-width:0;font-size:calc(9px * var(--font-scale));align-items:center;gap:5px;display:flex}.layer-tree input[type=checkbox]{accent-color:#285447}.layer-actions{flex-wrap:wrap;gap:4px;margin:4px 0 7px;display:flex}.layer-actions button,.layer-tree #reset-player-style,.marker-size-options button{color:#445c50;font-size:calc(8px * var(--font-scale));background:#f7f8f2;border:1px solid #d2ddd0;border-radius:7px;padding:5px 7px;font-weight:800}.layer-tree .map-control-group{grid-column:1/-1}.species-layers{border:1px solid #dce3da;border-radius:9px;margin:7px 0}.species-layers>summary{color:#687b70;cursor:pointer;font-size:calc(8px * var(--font-scale));padding:7px 8px;font-weight:850}.species-layer-row{padding:4px 8px}.species-layer-row i{background:var(--species-layer-color);border-radius:50%;flex:none;width:8px;height:8px}.player-style-controls{grid-template-columns:1fr!important}.player-color-field{justify-content:space-between}.player-color-field input{background:0 0;border:0;width:38px;height:23px;padding:0}.player-color-swatches,.marker-size-options{gap:5px;display:flex}.player-color-swatches button{background:var(--player-color);border:2px solid #fff;border-radius:50%;width:22px;height:22px;box-shadow:0 0 0 1px #789087}.marker-size-options button.active{background:var(--ink);color:#fff}.layer-tree .legend{justify-content:flex-start;padding:6px 2px 0}.workspace-strategy .workspace-panel-content,.workspace-statistics .workspace-panel-content{background:#f8f8f2}.workspace-strategy .allocation-panel{min-height:100%;box-shadow:none;border:0;border-radius:0}.workspace-strategy .allocation-dock{padding:13px;display:block}.workspace-strategy .allocation-tools{flex-direction:column;align-items:stretch}.workspace-strategy .active-abilities,.workspace-strategy .allocation-presets{flex-wrap:wrap}.workspace-strategy .carbon-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-statistics-stack{height:100%;min-height:0;padding:10px;display:grid}.workspace-statistics .overview-panel,.workspace-statistics .chart-panel{background:#fbfbf6;border:1px solid #e2e6df;border-radius:12px;padding:12px}.statistics-heading{align-items:flex-start}.statistics-scopes{gap:3px;display:flex}.statistics-scopes button{color:#50655a;font-size:calc(8px * var(--font-scale));background:#f5f7f1;border:1px solid #d4ddd2;border-radius:7px;padding:5px 7px;font-weight:800}.statistics-scopes button.active{background:var(--ink);color:#fff}.workspace-statistics .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.community-composition{gap:4px;margin-top:10px;display:grid}.composition-row{color:#4a5e53;font-size:calc(8px * var(--font-scale));text-align:left;background:0 0;border:0;border-radius:7px;grid-template-columns:minmax(80px,1fr) minmax(70px,1.4fr) auto;align-items:center;gap:7px;padding:4px 5px;display:grid}.composition-row:hover,.composition-row.active{background:#e9efe6}.composition-row i{background:#e1e7df;border-radius:99px;height:5px;overflow:hidden}.composition-row i b{border-radius:inherit;height:100%;display:block}.composition-row strong{font-variant-numeric:tabular-nums;white-space:nowrap}.workspace-statistics .population-chart{height:250px}.workspace-statistics .chart-panel{--chart-ui-font-size:calc(12px * var(--font-scale));flex-direction:column;min-height:0;display:flex}.workspace-statistics .chart-panel .population-chart{flex:auto;min-height:220px}.workspace-statistics .chart-tabs{flex-wrap:wrap;justify-content:flex-end}.chart-heading{flex-wrap:wrap}.chart-picker{flex:100%;align-items:center;gap:7px;display:flex}.chart-heading .label,.chart-heading strong,.chart-picker>span{font-size:var(--chart-ui-font-size)}.chart-picker>span{color:var(--muted);font-weight:800}.chart-menu{flex:1;min-width:0;position:relative}.chart-menu>summary{min-height:38px;color:var(--ink);cursor:pointer;font-size:var(--chart-ui-font-size);background:#f5f7f1;border:1px solid #d4ddd2;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 12px;font-weight:800;list-style:none;display:flex}.chart-menu>summary::-webkit-details-marker{display:none}.chart-menu>summary:after{content:"⌄";margin-left:10px;font-size:16px;line-height:1}.chart-menu[open]>summary:after{content:"⌃"}.chart-menu-popover{z-index:60;overscroll-behavior:contain;scrollbar-color:#8fa398 #edf2eb;scrollbar-gutter:stable;scrollbar-width:auto;touch-action:pan-y;height:clamp(210px,100cqh - 160px,360px);max-height:none;color:var(--ink);background:#fbfbf6;border:1px solid #ccd8cb;border-radius:12px;padding:8px;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow:hidden scroll;box-shadow:0 14px 36px #17342633}.chart-menu-popover::-webkit-scrollbar{width:11px}.chart-menu-popover::-webkit-scrollbar-track{background:#edf2eb;border-radius:99px}.chart-menu-popover::-webkit-scrollbar-thumb{background:#8fa398;border:2px solid #edf2eb;border-radius:99px}.chart-menu-popover section{gap:2px;display:grid}.chart-menu-popover section+section{border-top:1px solid #e0e5dd;margin-top:7px;padding-top:7px}.chart-menu-popover strong{color:#829087;font-size:var(--chart-ui-font-size);padding:3px 8px}.chart-menu-popover button{color:var(--ink);font-size:var(--chart-ui-font-size);text-align:left;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-weight:720}.chart-menu-popover button:hover{background:#edf2e9}.chart-menu-popover button.active{color:#173d2f;background:#dce8dc}.chart-picker select.visually-hidden,.chart-picker select option,.chart-picker select optgroup{font-size:var(--chart-ui-font-size)}.map-query-popover.hidden{display:none}.map-functional-legend{color:#52665b;font-size:calc(8px * var(--font-scale));flex:none;justify-content:center;align-items:center;gap:8px 13px;padding:5px 8px 2px;display:flex}.map-functional-legend span,.map-functional-legend button{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.map-functional-legend button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:2px 3px}.map-functional-legend button:hover{color:var(--ink);text-decoration:underline}.map-functional-legend i:not(.legend-own):not(.legend-selection){background:var(--legend);border-radius:50%;width:9px;height:9px}.map-functional-legend .legend-own{color:#f7f7ef;text-shadow:0 1px 2px #18352b;width:13px;font-size:13px;line-height:1}.map-functional-legend .legend-selection{border:2px solid #e4b63f;border-radius:50%;width:11px;height:11px}.detail-layer-hint{z-index:24;color:#65562f;max-width:none;font-size:calc(9px * var(--font-scale));background:#fff7dff2;border:1px solid #d7c68d;border-radius:10px;grid-column:1/-1;padding:9px 11px;position:relative;box-shadow:0 8px 22px #253b2824}.detail-layer-anchor{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 8px;display:grid}.detail-layer-hint:before{content:"";background:#fff7df;border-top:1px solid #d7c68d;border-left:1px solid #d7c68d;width:10px;height:10px;position:absolute;top:-6px;left:22px;transform:rotate(45deg)}.detail-layer-hint.hidden{display:none}.detail-layer-hint button{color:#345b49;background:0 0;border:0;margin-left:5px;font-weight:850;text-decoration:underline}.workspace-taskbar{z-index:35;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#edf1e9ee;border-top:1px solid #d2dcd0;align-items:center;gap:5px;height:38px;padding:4px 7px;display:flex;position:absolute;bottom:0;left:0;right:0}.workspace-taskbar button{color:#40584d;font-size:calc(9px * var(--font-scale));background:#f8f8f2;border:1px solid #cbd7c9;border-radius:8px;padding:5px 9px;font-weight:800}.workspace-taskbar button.active{background:var(--ink);color:#fff}.workspace-taskbar span{color:var(--muted);font-size:calc(8px * var(--font-scale));margin-left:auto}@media (width<=899px){.unified-layout{width:min(100% - 12px,1800px);padding-bottom:58px}.app-header{align-items:flex-start}.header-actions{justify-content:flex-end}.workspace-root{height:auto;min-height:0;box-shadow:none;background:0 0;border:0;overflow:visible}.workspace-panel{width:auto!important;height:auto!important;top:auto!important;left:auto!important}.workspace-panel[data-panel-id=map]{min-height:0;display:flex;position:relative}.workspace-panel:not([data-panel-id=map]){opacity:0;pointer-events:none;border-radius:17px 17px 10px 10px;max-height:min(72vh,720px);transition:transform .18s,opacity .14s;display:flex;position:fixed;bottom:49px;right:8px;transform:translateY(calc(100% + 70px));box-shadow:0 -18px 55px #10271f55;z-index:55!important;left:8px!important}.workspace-panel:not([data-panel-id=map])[data-mobile-open]{opacity:1;pointer-events:auto;transform:translateY(0)}.workspace-panel:not([data-panel-id=map]) .workspace-panel-content{max-height:calc(72vh - 38px)}.workspace-titlebar{cursor:default}.workspace-window-actions [data-window-action=dock],.workspace-window-actions [data-window-action=restore],.workspace-resize-handle{display:none}.workspace-map-stack{height:auto;padding:5px;display:block}.workspace-map .map-panel{height:auto}.workspace-map .map-canvas-wrap{aspect-ratio:1;width:100%;min-height:0}.workspace-map .simulation-controls,.workspace-map .map-event-strip{margin-top:7px}.map-functional-legend{flex-wrap:wrap}.map-query-popover{z-index:22;background:#fffdf6f2;border:1px solid #d9e1d7;border-radius:11px;width:min(300px,100% - 30px);max-height:280px;position:absolute;overflow:auto;transform:translate(10px,10px);box-shadow:0 9px 30px #17342538}.map-inspection-overlay{width:auto;max-height:none;margin-top:7px;position:static}.layer-tree{width:min(260px,100% - 24px)}.layer-tree-content{max-height:55vh}.workspace-taskbar{z-index:58;height:45px;padding-bottom:max(4px, env(safe-area-inset-bottom));position:fixed;box-shadow:0 -8px 30px #142b1f30}.workspace-taskbar button{flex:1;padding:7px 10px}.workspace-taskbar span{display:none}}@media (width<=560px){.workspace-map .map-heading{align-items:flex-start}.workspace-map .map-summary{max-width:60%}.map-footer #map-scale-text{display:none}.layer-tree{top:8px;left:8px}.layer-tree fieldset{grid-template-columns:1fr}.workspace-map .simulation-controls{flex-wrap:wrap}.workspace-map .simulation-controls .clock{width:100%}.workspace-statistics .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.strategy-prediction,.cycle-choice-grid,.cycle-review-metrics{grid-template-columns:1fr}}@media (width>=900px){.unified-layout{width:min(1600px,100% - 20px);padding-top:8px}.app-header{margin-bottom:8px}.app-header h1{font-size:clamp(24px,2vw,34px)}.workspace-root{height:max(720px,100vh - 104px);min-height:720px}.workspace-taskbar{display:none}.workspace-panel{box-shadow:0 7px 22px #1a38271d}.workspace-titlebar,.workspace-titlebar:active{cursor:default}.workspace-grip,.workspace-window-actions,.workspace-resize-handle{display:none}.workspace-root[data-edit-layout] .workspace-titlebar{cursor:grab}.workspace-root[data-edit-layout] .workspace-titlebar:active{cursor:grabbing}.workspace-root[data-edit-layout] :is(.workspace-grip,.workspace-window-actions,.workspace-resize-handle){display:flex}.workspace-root[data-edit-layout] .workspace-resize-handle{display:block}#edit-layout-button.active{background:var(--ink);color:#fff;border-color:#547463}.workspace-map-stack{grid-template-rows:minmax(0,1fr);grid-template-columns:clamp(175px,13vw,205px) minmax(0,1fr);gap:8px;padding:8px;display:grid}.workspace-map-rail{flex-direction:column;gap:8px;min-width:0;min-height:0;display:flex;overflow:hidden}.layer-sidebar{background:#f7f8f2;border:1px solid #dce3da;border-radius:11px;flex:auto;min-height:0;overflow:hidden}.layer-tree{width:100%;height:100%;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;position:static}.layer-tree-content{max-height:calc(100% - 38px)}.layer-tree fieldset{grid-template-columns:1fr}.layer-tree .map-control-group{flex-wrap:wrap}.map-query-popover{z-index:22;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf6f2;border:1px solid #d9e1d7;border-radius:11px;width:min(320px,42%);max-height:min(310px,52%);position:absolute;overflow:auto;transform:translate(12px,12px);box-shadow:0 9px 30px #17342538}.map-query-popover.hidden{display:none}.map-query-popover .selected-content{min-height:0}.inspection-actions{gap:4px;display:flex}.workspace-map-main{grid-template-rows:minmax(0,1fr) 26px 56px 38px;gap:7px;min-width:0;min-height:0;display:grid;overflow:hidden}.workspace-map .map-panel{min-height:0}.workspace-map .map-heading{height:34px;min-height:34px;overflow:hidden}.workspace-map .map-heading>div{min-width:0}.workspace-map .map-heading strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workspace-map .map-canvas-wrap{flex:auto;width:auto;max-width:100%;height:auto;min-height:0;max-height:100%}.workspace-map .simulation-controls{height:56px;min-height:56px;overflow:hidden}.workspace-map .map-functional-legend{height:26px;padding-top:3px;padding-bottom:3px;overflow:hidden}.workspace-map .map-footer{height:18px;min-height:18px;overflow:hidden}.workspace-map .map-event-strip{height:38px;min-height:38px;overflow:hidden}.workspace-map .map-event-strip .event-status{flex:none;min-width:0;max-width:min(360px,42%);overflow:hidden}.workspace-map .map-event-strip .event-status strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workspace-strategy .workspace-panel-content{overflow:hidden}.workspace-strategy .allocation-panel{min-height:0}.workspace-strategy .allocation-dock{flex-direction:column;gap:7px;height:100%;padding:10px;display:flex}.workspace-strategy .allocation-panel>.panel-heading{gap:6px;margin:0;display:grid}.workspace-strategy .allocation-tools{gap:5px;display:grid}.workspace-strategy .active-abilities,.workspace-strategy .allocation-presets{scrollbar-width:thin;flex-wrap:nowrap;overflow-x:auto}.workspace-strategy .active-abilities button{flex:none;padding:4px 7px}.workspace-strategy .allocation-presets button{flex:none;padding:4px 8px}.workspace-strategy .allocation-total{display:none}.allocation-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.workspace-strategy .allocation-row{min-width:0;margin:0}.workspace-strategy .allocation-row small span{display:none}.workspace-strategy .allocation-row small{justify-content:flex-end}.workspace-strategy .strategy-prediction{margin-top:0}.workspace-strategy .strategy-prediction legend{display:none}.workspace-strategy .strategy-prediction button{text-align:center;padding:4px 6px}.workspace-strategy .strategy-prediction button span{display:none}.workspace-strategy .carbon-flow{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:4px}.workspace-strategy .carbon-flow div{padding:6px}.workspace-strategy .carbon-flow strong{font-size:calc(11px * var(--font-scale))}.workspace-strategy .strategy-contract{margin-top:2px;padding:6px 8px}.workspace-strategy .strategy-contract small{display:none}.workspace-statistics-stack{grid-template-rows:minmax(0,1fr);overflow:hidden}.workspace-statistics .overview-panel{padding:10px}.workspace-statistics .metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.workspace-statistics .metric-grid>div{padding:7px}.workspace-statistics .metric-grid>div:nth-child(6),.workspace-statistics .metric-grid>div:nth-child(7),.workspace-statistics .metric-grid>div:nth-child(8),.workspace-statistics .metric-grid>div:nth-child(10){display:none}.workspace-statistics .metric-grid strong{font-size:calc(13px * var(--font-scale))}.workspace-statistics .community-composition{display:none}.workspace-statistics .chart-panel{min-height:0;padding:10px}.workspace-statistics .chart-heading{margin-bottom:4px}.workspace-statistics .population-chart{height:100%;min-height:250px}#statistics-detail{display:flex}.workspace-statistics[data-maximized] .population-chart{min-height:300px}}@media (width<=899px){.workspace-map-rail{display:block}.layer-sidebar{margin-bottom:7px}.layer-tree{width:100%;position:static}.map-query-popover{background:#fffdf6;border:1px solid #d9e1d7;border-radius:11px;margin-bottom:7px}.allocation-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.workspace-strategy .allocation-row small span{display:none}#statistics-detail{display:flex}}@media (width<=560px){.allocation-grid{grid-template-columns:1fr}}
