:root{--border-2:#c9cebf;--border-2b:#d4d9cd;--border-accent:#8c9b83;--panel-2:#f3f4ee;--panel-2b:#fafaf6;--panel-2c:#edf1e7;--panel-2d:#edf0e5;--muted-3:#58634f;--warning-2:#80553a;--accent-2:#36503d;--accent-fg:#fff}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--border-2:#2e3532;--border-2b:#2e3532;--border-accent:#3a4440;--panel-2:#1e2423;--panel-2b:#1e2423;--panel-2c:#212b23;--panel-2d:#1e2423;--muted-3:#a3aaa0;--warning-2:#d9a27a;--accent-2:#8fb39c;--accent-fg:#13221c}}
:root[data-theme="dark"]{--border-2:#2e3532;--border-2b:#2e3532;--border-accent:#3a4440;--panel-2:#1e2423;--panel-2b:#1e2423;--panel-2c:#212b23;--panel-2d:#1e2423;--muted-3:#a3aaa0;--warning-2:#d9a27a;--accent-2:#8fb39c;--accent-fg:#13221c}
.concept-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.concept-options button{position:relative;min-width:0;text-align:left;background:var(--panel-2b);border:1px solid var(--border-2);padding:0 0 18px;cursor:pointer}
.concept-options button[aria-pressed=true]{outline:2px solid var(--accent-2);outline-offset:-2px;background:var(--panel-2c)}
.concept-options svg{display:block;width:100%;height:170px;background:#f1f2ea}
.concept-options strong,.concept-options button>span:not(.concept-letter),.concept-options small{display:block;margin:8px 16px 0}
.concept-options strong{font-size:17px;line-height:1.3}.concept-options button>span:not(.concept-letter){font-size:12px;min-height:36px;color:var(--muted-3)}
.concept-options small{font-size:11px;color:var(--muted-3)}.concept-letter{position:absolute;top:12px;left:14px;padding:1px 6px;background:#fafaf5e6;font-size:12px}
.concept-choice-note{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted-3);padding:14px 0 30px}
.concept-heading{margin:20px 0}.concept-heading h2{font-size:27px}.concept-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;border-top:1px solid var(--border-2);padding:18px 0 26px}
.concept-metrics span,.concept-metrics strong{display:block}.concept-metrics span{font-size:11px;color:var(--muted-3)}.concept-metrics strong{font-size:24px;font-weight:500;font-variant-numeric:tabular-nums}
.concept-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px;align-items:start}
.concept-board{border:1px solid var(--border-2);min-width:0}.concept-toolbar{border:0;border-bottom:1px solid var(--border-2)}.concept-toolbar>div{display:flex;align-items:center;gap:14px}.concept-toolbar label{display:flex;align-items:center;gap:6px;font-size:12px}.concept-toolbar button,.concept-drive button{border:1px solid var(--border-2);background:transparent;padding:8px 10px;font-size:12px;cursor:pointer}
#access-map{width:100%;height:820px;display:block;background:#f6f5ee}#access-map text{font-family:Arial,sans-serif;font-size:.68px;fill:#34453b;paint-order:stroke;stroke:#f7f6ef;stroke-width:.09px;stroke-linejoin:round}#access-map .access-tiny{font-size:.52px}#access-map .access-caption{font-size:.45px;letter-spacing:.06px}
.concept-drive{display:flex;align-items:center;gap:12px;padding:14px;border-top:1px solid var(--border-2);background:var(--panel-2);font-size:11px}.concept-drive button{background:var(--accent-2);color:var(--accent-fg);border-color:var(--accent-2);white-space:nowrap}.concept-drive input{flex:1;min-width:60px}.concept-drive output{min-width:35px;text-align:right;font-variant-numeric:tabular-nums}.concept-drive label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.concept-current{padding:0 14px 14px;background:var(--panel-2);font-size:11px;min-height:32px;font-variant-numeric:tabular-nums}.concept-parking-note{padding:14px;font-size:11px;color:var(--warning-2);border-top:1px solid var(--border-2)}.concept-band{border-top:1px solid var(--border-2);padding:18px 14px;display:grid;grid-template-columns:1fr auto;gap:8px;font-size:12px}.concept-band input,.concept-band p,.concept-band small{grid-column:1/-1}.concept-band small{font-size:10px;color:var(--muted-3);max-width:520px}.concept-band output{font-variant-numeric:tabular-nums}.concept-band p{color:var(--warning-2)}
.concept-board input[type=range]{accent-color:var(--accent-2);width:100%}.concept-aside{font-size:13px;line-height:1.65}.concept-aside h3{font-size:16px;margin:0 0 10px}.concept-aside h3:not(:first-child){padding-top:24px;border-top:1px solid var(--border-2b);margin-top:24px}.concept-aside ul{padding-left:18px;margin-bottom:0}.concept-aside li{margin-bottom:7px}.concept-aside p{color:var(--muted-3)}.concept-aside dl{display:grid;grid-template-columns:1fr auto;gap:10px 14px;margin:20px 0;font-size:11px}.concept-aside dd{text-align:right;font-weight:500;font-variant-numeric:tabular-nums}.concept-aside .fine{font-size:11px}.concept-legend{display:grid;gap:7px;border-top:1px solid var(--border-2b);padding-top:20px;margin-top:20px;font-size:11px}.concept-legend i{display:inline-block;width:10px;height:10px;margin-right:9px}
.concept-warning{font-size:12px;color:var(--warning-2);margin:20px 0;line-height:1.65;max-width:1000px}.concept-zones{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.concept-zones figure{margin:0;min-width:0}.concept-zones svg{width:100%;height:320px;background:#f1f2eb;display:block}.concept-zones text{font-family:Arial,sans-serif;fill:#37483c}.concept-zones figcaption{border-top:1px solid var(--border-accent);padding:12px 0}.concept-zones figcaption strong,.concept-zones figcaption span{display:block}.concept-zones figcaption strong{font-size:16px}.concept-zones figcaption span{font-size:11px;color:var(--muted-3);margin-top:5px}
.concept-design-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:30px 0}.concept-design-notes h3,.concept-phase h3,.concept-source-grid h3{font-size:16px;margin-bottom:9px}.concept-design-notes p,.concept-phase p{font-size:13px;line-height:1.65;color:var(--muted-3)}.concept-phase{padding:24px;border-left:2px solid var(--border-accent);background:var(--panel-2d);margin:25px 0 40px}.concept-phase .fine{font-size:11px}.concept-source-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding:25px 0;line-height:1.7}.concept-source-grid p{margin-bottom:15px;font-size:12px}.previous-study{margin-top:50px;border-top:1px solid var(--border-accent);padding:25px 0}.previous-study>summary{font-size:18px}.previous-study>summary small{display:block;font-size:12px;color:var(--muted-3);margin-top:8px}.previous-study[open]>.alternatives{margin-top:24px}
@media(max-width:1100px){.concept-layout{grid-template-columns:minmax(0,1fr) 250px;gap:20px}#access-map{height:730px}.concept-options{gap:10px}.concept-options strong{font-size:15px}}
@media(max-width:800px){.concept-options{grid-template-columns:repeat(2,1fr)}.concept-layout{grid-template-columns:1fr}.concept-aside{display:grid;grid-template-columns:1fr 1fr;gap:12px 28px}.concept-aside h3:not(:first-child){padding-top:0;margin-top:0;border:0}.concept-aside h3{margin:0}.concept-aside dl,.concept-aside .fine,.concept-legend{grid-column:1/-1}.concept-zones{gap:12px}.concept-zones svg{height:240px}.concept-choice-note{flex-direction:column;gap:4px}#access-map{height:740px}}
@media(max-width:500px){.concept-options svg{height:125px}.concept-options strong,.concept-options small,.concept-options button>span:not(.concept-letter){margin-left:12px;margin-right:12px}.concept-options strong{font-size:14px}.concept-options button>span:not(.concept-letter){font-size:11px}.concept-options small{font-size:10px}.concept-metrics{grid-template-columns:repeat(2,1fr);gap:12px}.concept-metrics strong{font-size:22px}.concept-heading h2{font-size:23px}.concept-heading>span{display:none}.concept-toolbar{gap:10px}.concept-toolbar>div{gap:10px}.concept-toolbar button{font-size:10px;padding:7px}.concept-toolbar label{font-size:11px}#access-map{height:530px}.concept-current{font-size:10px}.concept-aside{display:block}.concept-aside h3:not(:first-child){border-top:1px solid var(--border-2b);margin-top:22px;padding-top:20px}.concept-aside h3{margin-bottom:8px}.concept-zones{grid-template-columns:1fr}.concept-zones svg{height:300px}.concept-design-notes,.concept-source-grid{grid-template-columns:1fr;gap:20px}.concept-warning{font-size:11px}.concept-drive{gap:8px;padding:12px}.concept-drive button{font-size:11px;padding:8px}.concept-drive output{font-size:10px}}
@media print{.concept-options,.concept-toolbar,.concept-drive,.concept-band,.previous-study{display:none}.concept-layout{grid-template-columns:1fr 250px}#access-map{height:750px}.concept-zones{break-inside:avoid}}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]) #access-map,:root:not([data-theme="light"]) .concept-zones svg,:root:not([data-theme="light"]) .concept-options svg{border:1px solid var(--border-2)}}
:root[data-theme="dark"] #access-map,:root[data-theme="dark"] .concept-zones svg,:root[data-theme="dark"] .concept-options svg{border:1px solid var(--border-2)}
