.capacity-shell button:focus-visible,.capacity-shell select:focus-visible,.capacity-shell summary:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.capacity-shell{min-height:100dvh}.capacity-header{border-top:4px solid var(--accent-bright);border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:24px;padding:0 32px;display:flex}.capacity-basis{text-align:right;flex-direction:column;gap:5px;font-size:13px;display:flex}.capacity-basis strong{color:var(--blue);font-weight:500}.capacity-basis span{color:var(--muted);font-size:12px}.capacity-content{max-width:1540px;margin:0 auto;padding:32px}.capacity-intro{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:24px;display:flex}.capacity-intro h2{letter-spacing:-.025em;margin:7px 0 10px;font-size:clamp(28px,3vw,38px);font-weight:300}.capacity-intro p{color:var(--muted);max-width:640px;margin:0;font-size:14px;line-height:1.6}.capacity-legend{max-width:350px;color:var(--muted);flex-wrap:wrap;gap:9px 16px;padding-bottom:3px;font-size:11px;display:flex}.capacity-legend span{align-items:center;gap:7px;display:flex}.capacity-legend svg{color:var(--blue);font-size:19px}.work-guidance{background:var(--blue-soft);border-left:3px solid var(--blue);align-items:center;gap:26px;margin-bottom:30px;padding:20px 24px;display:flex}.work-guidance strong{color:var(--navy);font-size:15px;font-weight:500}.work-guidance p{color:var(--muted);margin:7px 0 0;font-size:12px;line-height:1.6}.work-type{flex-direction:column;gap:6px;min-width:140px;display:flex}.work-type label{letter-spacing:.1em;text-transform:uppercase;color:var(--blue);font-size:10px}.capacity-shell select{border:1px solid var(--line-strong);min-height:36px;color:var(--ink);background:#fff;border-radius:2px;padding:5px 10px;font-size:12px}.capacity-team-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:24px;display:grid}.capacity-team{min-width:0}.superintendent-node{border:1px solid var(--line);border-top:3px solid var(--blue);text-align:center;background:#fff;width:78%;margin:0 auto;padding:20px 16px}.superintendent-node h2{margin:5px 0 8px;font-size:30px;font-weight:300}.superintendent-node>span:last-child{color:var(--muted);font-size:12px}.org-connector{background:var(--line-strong);width:1px;height:26px;margin:0 auto;position:relative}.org-connector:after{content:"";background:var(--blue);border-radius:50%;width:7px;height:7px;display:block;position:absolute;bottom:-3px;left:-3px}.capacity-team-body{border:1px solid var(--line);background:#fff;padding:22px}.capacity-ratio{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding-bottom:17px;display:flex}.capacity-ratio>div{flex-direction:column;gap:7px;display:flex}.capacity-ratio strong{letter-spacing:-.03em;color:var(--blue);font-size:40px;font-weight:300;line-height:1}.capacity-ratio>span{max-width:120px;color:var(--muted);text-align:right;font-size:11px;line-height:1.5}.capacity-short strong{color:var(--orange)}.capacity-covered strong{color:var(--green)}.skill-coverage{grid-template-columns:1fr 1fr;gap:10px;padding:17px 0;display:grid}.skill-coverage>div{flex-direction:column;gap:7px;display:flex}.skill-coverage>div+div{border-left:1px solid var(--line);padding-left:15px}.skill-coverage span{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:flex}.skill-coverage svg{width:19px;height:19px}.skill-coverage strong{font-size:23px;font-weight:400}.skill-coverage small{color:var(--muted);font-size:10px;line-height:1.5}.capacity-spare{background:var(--paper);flex-direction:column;gap:7px;padding:13px 15px;display:flex}.capacity-spare>span{color:var(--muted);font-size:10px}.capacity-spare strong{color:var(--navy);font-size:18px;font-weight:400}.capacity-spare strong span{color:var(--muted);padding:0 5px;font-size:12px}.capacity-spare small{color:var(--muted);font-size:10px}.capacity-unique{color:var(--muted);margin:14px 0;font-size:11px;line-height:1.6}.qualification-warning{background:var(--orange-soft);color:var(--orange);border-left:2px solid #c98e72;padding:10px 12px;font-size:11px;line-height:1.6}.capacity-equipment{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:18px 0;padding:12px 0}.capacity-equipment summary{cursor:pointer;font-size:12px}.capacity-equipment summary span{color:var(--muted);padding-top:6px;font-size:10px;display:block}.capacity-equipment p{color:var(--muted);font-size:11px;line-height:1.6}.capacity-equipment label{justify-content:space-between;align-items:center;gap:10px;margin:8px 0;font-size:12px;display:flex}.capacity-equipment label span{overflow-wrap:anywhere;min-width:0}.capacity-equipment select{max-width:120px}.roster-title{justify-content:space-between;align-items:center;margin-top:22px;display:flex}.roster-title h3{margin:0;font-size:14px;font-weight:500}.roster-title>span{color:var(--muted);font-size:10px}.capacity-roster{border-left:1px solid var(--line);margin:12px 0 0 10px;padding:0;list-style:none}.capacity-roster li{border-bottom:1px solid #eef0f3;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 0 10px 12px;display:grid;position:relative}.capacity-roster li:before{content:"";background:var(--line);width:10px;height:1px;position:absolute;top:50%;left:0}.roster-avatar{width:28px;height:28px;color:var(--blue);background:var(--blue-soft);border-radius:50%;place-items:center;font-size:9px;display:grid}.capacity-roster li>div{flex-direction:column;gap:4px;min-width:0;display:flex}.capacity-roster strong{overflow-wrap:anywhere;font-size:12px;font-weight:400}.capacity-roster small{color:var(--muted);overflow-wrap:anywhere;font-size:10px}.capacity-skills{align-items:center;gap:4px;display:flex}.qualification{border:1px solid;border-radius:2px;place-items:center;width:23px;height:25px;display:grid}.qualification svg{width:15px;height:15px}.qualification-rig{color:var(--green);background:var(--green-soft);border-color:#b6cfc6}.qualification-ct{color:var(--orange);background:var(--orange-soft);border-color:#e0c2ae}.unmarked-skill{color:var(--muted);font-size:9px}.capacity-method{max-width:900px;padding:24px 0 10px}.capacity-method h2{font-size:17px;font-weight:400}.capacity-method p{color:var(--muted);font-size:12px;line-height:1.8}.capacity-empty{border:1px solid var(--line);background:#fff;padding:40px}.capacity-empty h2{font-size:23px;font-weight:300}.capacity-empty p,.capacity-no-workers{color:var(--muted);font-size:13px}.capacity-empty button{background:var(--blue);color:#fff;cursor:pointer;border:0;padding:10px 15px}@media (max-width:1100px){.capacity-content{padding:24px}.capacity-team-grid{gap:15px}.capacity-team-body{padding:16px}.capacity-intro{align-items:flex-start}}@media (max-width:850px){.capacity-team-grid{grid-template-columns:1fr;gap:30px}.capacity-intro{flex-direction:column;gap:16px}.capacity-legend{max-width:none}.superintendent-node{max-width:350px}}@media (max-width:500px){.capacity-header{align-items:flex-start;gap:15px;padding:0 16px}.capacity-header h1{font-size:25px}.capacity-basis{max-width:120px;padding-top:22px;font-size:11px}.capacity-basis span{font-size:10px;line-height:1.5}.capacity-content{padding:24px 16px}.work-guidance{flex-direction:column;align-items:stretch;gap:14px;padding:16px}.work-type{flex-direction:row;justify-content:space-between;align-items:center}.work-type select{min-width:140px}.capacity-team-body{padding:18px}.capacity-empty{padding:24px}}
