@layer components{.squad-panel{gap:20px;padding:30px;display:grid}.squad-panel h2{font-size:24px}.squad-panel>.muted{line-height:1.9}.squad-bar{border-radius:var(--r-pill);background:var(--fill-a06);block-size:12px;margin-block:4px;overflow:hidden}.squad-bar>span{border-radius:var(--r-pill);background:var(--brand);block-size:100%;transition:inline-size var(--t-slow) var(--ease);display:block}.squad-bar[data-ready]>span{background:var(--positive);box-shadow:0 0 12px var(--positive-a30)}.squad-count{color:var(--text-1);font-size:19px;font-weight:700}.squad-count b{color:var(--brand-bright)}.squad-bar[data-ready]+.squad-count b{color:var(--positive)}.squad-steps{border-block-start:1px solid var(--line);counter-reset:squad-step;gap:14px;padding:20px 0 0;list-style:none;display:grid}.squad-steps li{color:var(--text-2);grid-template-columns:auto 1fr;align-items:start;gap:12px;font-size:14px;line-height:1.9;display:grid}.squad-steps li:before{counter-increment:squad-step;content:counter(squad-step);border-radius:var(--r-pill);background:var(--brand-a12);block-size:26px;inline-size:26px;color:var(--brand-bright);place-items:center;font-size:12px;font-weight:800;display:grid}.squad-panel fieldset{border:0;gap:4px;margin:0;padding:0;display:grid}.squad-panel legend{color:var(--text-3);padding:0;font-size:13px}.squad-days{flex-wrap:wrap;gap:8px;margin-block-start:10px;display:flex}.squad-day{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--fill-a04);color:var(--text-2);cursor:pointer;transition:border-color var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);align-items:center;gap:8px;padding:9px 14px;font-size:13px;display:inline-flex}.squad-day:hover{border-color:var(--line-strong)}.squad-day input{accent-color:var(--brand)}.squad-day:has(input:checked){border-color:var(--brand-a55);background:var(--brand-a12);color:var(--text-1)}.squad-day:has(input:focus-visible){outline:2px solid var(--brand-bright);outline-offset:2px}.squad-entry{border:1px solid var(--positive-a30);border-radius:var(--r-card);background:var(--positive-a08);gap:6px;padding:16px 18px;font-size:14px;display:grid}.squad-entry b{color:var(--positive)}.squad-gate{justify-items:start}@media (max-width:540px){.squad-panel{gap:16px;padding:24px}.squad-panel h2{font-size:21px}.squad-day{padding:8px 11px;font-size:12px}}}
