.capacity-scenario-page { display:flex; flex-direction:column; gap:24px; min-width:0; max-width:100%; }
.capacity-scenario-page h2 { margin:0; font:700 18px/1.5 var(--wsg-font-display); color:var(--wsg-ink); }
.capacity-scenario-page h3,.capacity-scenario-detail-body h3 { margin:0; font:700 16px/1.6 var(--wsg-font-display); color:var(--wsg-ink); }
.capacity-scenario-page p,.capacity-scenario-detail-body p { font-size:12px; line-height:1.8; }
.capacity-scenario-note,.capacity-scenario-dirty,.capacity-scenario-incomplete,.capacity-scenario-complete { margin:0; padding:12px 16px; border:1px solid var(--border); border-radius:8px; background:var(--wsg-background); color:var(--wsg-body); overflow-wrap:anywhere; }
.capacity-scenario-dirty,.capacity-scenario-incomplete { border-left:3px solid var(--primary); }
.capacity-scenario-complete { background:var(--success-bg); color:var(--success); border-color:transparent; }
.capacity-scenario-error { margin:0; padding:12px 16px; border-radius:8px; color:var(--danger); background:var(--danger-bg); font-size:12px; line-height:1.8; overflow-wrap:anywhere; }
.capacity-scenario-error:focus { outline:2px solid var(--danger); outline-offset:3px; }
.capacity-scenario-setup { display:grid; grid-template-columns:minmax(280px,.85fr) minmax(0,1.35fr); gap:24px; align-items:start; }
.capacity-scenario-selection,.capacity-scenario-picker,.capacity-scenario-group,.capacity-scenario-unknown { min-width:0; padding:20px; background:var(--wsg-white); }
.capacity-scenario-selection header,.capacity-scenario-picker header,.capacity-scenario-group header { display:flex; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:16px; }
.capacity-scenario-selection header > span,.capacity-scenario-picker header > span { color:var(--wsg-body); font-size:11px; line-height:1.8; }
.capacity-scenario-selected { list-style:none; margin:0 0 20px; padding:0; max-height:300px; overflow:auto; }
.capacity-scenario-selected li { display:flex; gap:12px; align-items:center; padding:12px 0; border-bottom:1px solid var(--border); font-size:12px; }
.capacity-scenario-selected li > div { min-width:0; flex:1; overflow-wrap:anywhere; }
.capacity-scenario-selected small { display:block; color:var(--wsg-body); margin-top:4px; font-size:11px; line-height:1.7; }
.capacity-scenario-position { min-width:24px; height:24px; display:inline-flex; align-items:center; justify-content:center; border-radius:6px; background:var(--wsg-background); color:var(--primary); font:700 11px/1.6 var(--wsg-font-display); }
.capacity-scenario-selection form { display:flex; flex-wrap:wrap; gap:12px; }
.capacity-scenario-statuses { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; flex-basis:100%; border:1px solid var(--border); border-radius:8px; padding:12px; margin:0; }
.capacity-scenario-statuses legend { font:700 12px/1.8 var(--wsg-font-display); padding:0 4px; color:var(--wsg-ink); }
.capacity-scenario-statuses label { display:flex; gap:8px; align-items:center; font-size:11px; line-height:1.7; color:var(--wsg-ink); }
.capacity-scenario-statuses input,.capacity-scenario-picker input[type=checkbox] { width:16px; height:16px; flex-shrink:0; accent-color:var(--primary); }
.capacity-scenario-help { font-size:11px!important; color:var(--wsg-body); }
.capacity-scenario-search { display:flex; gap:8px; margin-bottom:16px; }
.capacity-scenario-search input { min-width:0; flex:1; padding:10px 12px; border:1px solid var(--border); border-radius:8px; background:var(--wsg-white); color:var(--wsg-ink); font:400 12px/1.7 var(--wsg-font-body); }
.capacity-scenario-picker-scroll { min-width:0; max-width:100%; overflow-x:auto; border:1px solid var(--border); border-radius:8px; }
.capacity-scenario-picker-scroll table { min-width:540px; }
.capacity-scenario-picker-scroll th:first-child { width:56px; }
.capacity-scenario-picker-scroll .tag { white-space:normal; }
.capacity-scenario-empty { color:var(--wsg-body); font-size:12px; line-height:1.9; }
.capacity-scenario-results { display:flex; flex-direction:column; gap:20px; min-width:0; }
.capacity-scenario-result-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; flex-wrap:wrap; }
.capacity-scenario-result-heading p { margin-bottom:0; }
.capacity-scenario-stats { margin:0; }
.capacity-scenario-stats .stat { display:flex; flex-direction:column; align-items:flex-start; gap:6px; }
.capacity-scenario-stats .stat-label,.capacity-scenario-stats .stat-value,.capacity-scenario-stats .stat-sub { display:block; }
.capacity-scenario-stats .stat-value { margin:0; }
.capacity-scenario-groups { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.capacity-scenario-group { display:flex; flex-direction:column; gap:12px; }
.capacity-scenario-group header { margin:0; }
.capacity-scenario-group header p { margin:4px 0 0; overflow-wrap:anywhere; }
.capacity-scenario-value { display:flex; flex-direction:column; gap:8px; padding:16px; border:1px solid var(--border); border-radius:8px; background:var(--wsg-background); }
.capacity-scenario-value > span,.capacity-scenario-value > small { font-size:11px; color:var(--wsg-body); }
.capacity-scenario-value > strong { color:var(--wsg-ink); font:700 22px/1.5 var(--wsg-font-display); font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.capacity-scenario-group > p { margin:0; }
.capacity-scenario-group > button { align-self:flex-start; margin-top:auto; white-space:normal; }
.capacity-scenario-group details,.capacity-scenario-definition { font-size:11px; color:var(--wsg-body); line-height:1.9; }
.capacity-scenario-group summary,.capacity-scenario-definition summary { cursor:pointer; color:var(--primary); }
.capacity-scenario-variants,.capacity-scenario-unknown ul { list-style:none; padding:0; margin:12px 0; }
.capacity-scenario-variants li,.capacity-scenario-unknown li { padding:10px 0; border-bottom:1px solid var(--border); }
.capacity-scenario-variants strong,.capacity-scenario-variants small,.capacity-scenario-unknown span,.capacity-scenario-unknown small { display:block; }
.capacity-scenario-unknown li { font-size:12px; line-height:1.9; }
.capacity-scenario-unknown small { color:var(--wsg-body); }
.capacity-scenario-definition code { display:block; overflow-wrap:anywhere; white-space:normal; font:500 10px/1.8 var(--wsg-font-mono); margin-top:12px; }
.capacity-scenario-detail-body { display:flex; flex-direction:column; gap:16px; min-width:0; max-width:100%; font-size:12px; color:var(--wsg-body); }
.capacity-scenario-detail-body > * { min-width:0; flex-shrink:0; }
.capacity-scenario-denominator { margin:0; font-weight:600; color:var(--wsg-ink); }
.capacity-scenario-detail-scroll { min-width:0; max-width:100%; overflow-x:auto; border:1px solid var(--border); border-radius:8px; background:var(--wsg-white); }
.capacity-scenario-detail-scroll table { min-width:900px; }
.capacity-scenario-detail-scroll th,.capacity-scenario-detail-scroll td { vertical-align:top; }
.capacity-scenario-detail-scroll td:first-child { min-width:180px; }
.capacity-scenario-detail-scroll td:nth-child(2),.capacity-scenario-detail-scroll td:nth-child(3) { min-width:240px; }
.capacity-scenario-detail-scroll td:last-child { min-width:170px; }
.capacity-scenario-exact { font-variant-numeric:tabular-nums; color:var(--wsg-ink); }
.capacity-scenario-missing { color:var(--wsg-body); }
.capacity-scenario-picker-scroll:focus-visible,.capacity-scenario-detail-scroll:focus-visible,.capacity-scenario-page input:focus-visible { outline:2px solid var(--primary); outline-offset:3px; }
@media(max-width:1080px) { .capacity-scenario-setup { grid-template-columns:minmax(0,1fr); } }
@media(max-width:680px) { .capacity-scenario-groups { grid-template-columns:minmax(0,1fr); } .capacity-scenario-selection,.capacity-scenario-picker,.capacity-scenario-group,.capacity-scenario-unknown { padding:16px; } .capacity-scenario-statuses { grid-template-columns:minmax(0,1fr); } .capacity-scenario-page .segmented { flex-wrap:wrap; } .capacity-scenario-page .btn { white-space:normal; } .capacity-scenario-value > strong { font-size:20px; } }

.capacity-scenario-period { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; width:100%; }
.capacity-scenario-period label { display:flex; flex-direction:column; gap:6px; font-size:11px; color:var(--wsg-body); }
.capacity-scenario-period input { min-width:0; width:100%; padding:10px 12px; border:1px solid var(--border); border-radius:8px; background:var(--wsg-white); color:var(--wsg-ink); font:400 12px/1.7 var(--wsg-font-body); }
.capacity-scenario-comparison { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; }
.capacity-scenario-comparison .capacity-scenario-value { padding:12px; }
.capacity-scenario-comparison .capacity-scenario-value strong { font-size:20px; }
.capacity-scenario-value.deficit { color:var(--danger); background:var(--danger-bg); border-color:transparent; }
.capacity-scenario-value.deficit strong { color:var(--danger); }
.capacity-scenario-archive { padding:10px 12px; border-left:3px solid var(--primary); background:var(--wsg-background); font-size:11px; line-height:1.8; }
.capacity-scenario-group-actions { display:flex; gap:8px; flex-wrap:wrap; margin-top:auto; }
.capacity-scenario-day-basis { padding:16px; border:1px solid var(--border); border-radius:12px; background:var(--wsg-white); }
.capacity-scenario-day-basis dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 16px; }
.capacity-scenario-day-basis dt { color:var(--wsg-body); font-size:10px; }
.capacity-scenario-day-basis dd { margin:4px 0 0; color:var(--wsg-ink); font-size:11px; overflow-wrap:anywhere; }
.capacity-scenario-day-basis code { display:block; white-space:normal; overflow-wrap:anywhere; font:500 10px/1.8 var(--wsg-font-mono); }
.capacity-scenario-daily-scroll table { min-width:880px; }
.capacity-scenario-daily-scroll td { min-width:150px; }
.capacity-scenario-daily-state { white-space:normal; }
@media(max-width:680px) { .capacity-scenario-period,.capacity-scenario-day-basis dl { grid-template-columns:minmax(0,1fr); } }
