.capacity-layout { display:grid; gap:20px; }
.capacity-summary { display:flex; align-items:flex-start; gap:13px; padding:16px 20px; border:1px solid var(--border); border-radius:var(--radius); background:var(--surface); }
.capacity-summary-warning { border-color:#ead6a7; background:#fff9ec; }
.capacity-summary-blue { border-color:#c9deed; background:#f2f8fc; }
.capacity-summary-success { border-color:#d0e7d8; background:#f4faf6; }
.capacity-summary-icon,.capacity-icon { display:grid; place-items:center; flex:none; width:34px; height:34px; border-radius:8px; color:var(--primary-dark); background:var(--primary-soft); }
.capacity-summary-warning .capacity-summary-icon { color:var(--warning); background:var(--warning-soft); }
.capacity-summary-success .capacity-summary-icon { color:var(--success); background:var(--success-soft); }
.capacity-summary strong { display:block; margin:1px 0 4px; font-size:13px; }
.capacity-summary p { margin:0; color:var(--muted); font-size:11px; line-height:1.6; }
.capacity-worker-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.capacity-worker { min-width:0; padding:20px 22px; }
.capacity-worker + .capacity-worker { border-left:1px solid var(--border); }
.capacity-worker-heading { display:flex; align-items:flex-start; gap:10px; min-width:0; }
.capacity-worker-heading>div { flex:1; min-width:0; }
.capacity-worker-heading h3,.capacity-limit h3 { margin:0; font-size:12px; }
.capacity-worker-heading p { margin:5px 0 0; color:var(--muted); font-size:11px; line-height:1.5; }
.capacity-worker-heading .badge { flex:none; }
.capacity-worker-facts { display:grid; gap:9px; margin:18px 0 0 44px; }
.capacity-worker-facts span { color:var(--muted); font-size:10px; }
.capacity-worker-facts strong { display:block; margin-top:3px; color:var(--ink); font-size:11px; font-weight:600; }
.capacity-worker-error { margin:12px 0 0 44px; color:var(--warning); font-size:10px; line-height:1.5; overflow-wrap:anywhere; }
.capacity-limit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.capacity-limit { min-width:0; padding:20px 22px; }
.capacity-limit + .capacity-limit { border-left:1px solid var(--border); }
.capacity-limit-title { display:flex; align-items:center; gap:9px; }
.capacity-limit-title>.icon { width:16px; height:16px; color:var(--primary-dark); }
.capacity-limit-number { display:flex; align-items:baseline; gap:8px; margin:17px 0; }
.capacity-limit-number strong { color:var(--ink); font-size:27px; line-height:1; }
.capacity-limit-number span { color:var(--muted); font-size:11px; }
.capacity-limit dl,.capacity-technical dl { display:grid; gap:13px; margin:0; }
.capacity-limit dt,.capacity-technical dt { color:var(--muted); font-size:10px; }
.capacity-limit dd,.capacity-technical dd { margin:3px 0 0; font-size:11px; line-height:1.5; overflow-wrap:anywhere; }
.capacity-limits-note { margin:0; padding:14px 22px; border-top:1px solid var(--border); color:var(--muted); font-size:11px; line-height:1.6; }
.capacity-planning-body { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.capacity-planning-body h3 { margin:0 0 7px; font-size:12px; }
.capacity-planning-body p { margin:0 0 15px; font-size:11px; line-height:1.6; }
.capacity-planning-body .field { max-width:330px; }
.capacity-planning-body [data-open-operations] { width:max-content; margin-top:10px; }
.capacity-planning-body a:not(.button) { display:inline-flex; align-items:center; gap:6px; font-size:11px; font-weight:600; }
.capacity-planning-body a .icon { width:13px; height:13px; }
.capacity-technical>summary { display:flex; align-items:center; gap:10px; padding:17px 22px; list-style:none; cursor:pointer; font-size:12px; font-weight:600; }
.capacity-technical>summary::-webkit-details-marker { display:none; }
.capacity-technical>summary:hover { background:#f9fbfd; }
.capacity-technical>summary>.icon:first-child { color:var(--primary-dark); }
.capacity-technical>summary>.icon:last-child { width:13px; height:13px; margin-left:auto; color:var(--muted); transition:transform .15s; }
.capacity-technical[open]>summary>.icon:last-child { transform:rotate(180deg); }
.capacity-technical-body { padding:17px 22px 20px; border-top:1px solid var(--border); }
.capacity-technical dl { grid-template-columns:repeat(5,minmax(0,1fr)); gap:15px; }
.capacity-technical-workers { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; margin-top:20px; padding-top:17px; border-top:1px solid var(--border); }
.capacity-technical-worker h3 { margin:0 0 11px; font-size:11px; }
.capacity-technical-worker dl { grid-template-columns:1fr; gap:8px; }
.capacity-technical p { margin:17px 0 0; color:var(--muted); font-size:11px; line-height:1.6; }
@media(max-width:1050px) {
  .capacity-worker-list,.capacity-limit-grid { grid-template-columns:1fr; }
  .capacity-worker + .capacity-worker,.capacity-limit + .capacity-limit { border-left:0; border-top:1px solid var(--border); }
  .capacity-worker-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .capacity-technical-body>dl { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:650px) {
  .capacity-worker-heading { flex-wrap:wrap; }
  .capacity-worker-heading .badge { margin-left:44px; }
  .capacity-planning-body,.capacity-technical-body>dl,.capacity-technical-workers { grid-template-columns:1fr; }
  .capacity-worker-facts { grid-template-columns:1fr; }
}
