.coach-book {--coach-accent:#8cd8c5;color:#dbe7e8;min-width:0;container-type:inline-size}
.coach-book * {box-sizing:border-box}
.coach-eyeline,.coach-mini-label,.coach-figure-head,.coach-count small {font:600 10px/1.5 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.coach-eyeline {display:flex;gap:10px;align-items:center;color:#94b8b5}
.coach-eyeline span {color:var(--coach-accent)}
.coach-eyeline i {width:30px;height:1px;background:#486261}
.coach-intro {display:flex;justify-content:space-between;gap:16px;align-items:center;margin:7px 0 18px}
.coach-intro h2,.coach-plan h3,.coach-transfer h3,.coach-roster-head h3 {margin:0;color:#edf4f2}
.coach-intro h2 {font-size:clamp(24px,3vw,37px);letter-spacing:-.04em}
.coach-intro p,.coach-plan p,.coach-source-box p,.coach-transfer p,.coach-control p {line-height:1.7;color:#a9bdc5;margin:8px 0;font-size:13px}
.coach-count {font:400 34px/1.1 Georgia,serif;color:#bedacf;white-space:nowrap}
.coach-count small {display:block;font-size:9px;text-align:right}
.coach-catalog {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:0 0 15px;align-items:stretch}
.coach-choice {display:flex;flex-direction:column;align-items:flex-start;text-align:left;justify-content:flex-start;white-space:normal;gap:7px;border-radius:8px;padding:11px 12px;background:#10212b;border:1px solid #2b4249;color:#c2d4d8;line-height:1.35;min-width:0;height:auto}
.coach-choice span {display:flex;align-items:center;justify-content:space-between;width:100%;color:#99b0b6;font:500 10px/1.3 ui-monospace,monospace}
.coach-choice em {font-style:normal;color:#758f99}.coach-choice b {font-size:12px;font-weight:650}.coach-choice small {font-size:10px;color:#93aeb5}
.coach-choice.is-chosen,.coach-ability-group .is-chosen {border-color:var(--coach-accent);background:#19352f;color:#e3f5ee}
.coach-choice:hover,.coach-ability-group button:hover {border-color:#8bbaaa}
.coach-spread {display:grid;grid-template-columns:minmax(0,1.45fr) minmax(255px,.8fr);border:1px solid #2b414b;border-radius:12px;overflow:hidden;background:#102029;align-items:stretch}
.coach-diagram {margin:0;min-width:0;display:flex;flex-direction:column;justify-content:center;background:#0f2322}
.coach-figure-head,.coach-diagram figcaption,.coach-roster-head {display:flex;align-items:center;justify-content:space-between;gap:12px}
.coach-figure-head {padding:13px 16px;color:#9ab7b1;border-bottom:1px solid #335047}
.coach-figure-head strong {margin-left:auto;font-size:15px;color:#c6ecdd;letter-spacing:.04em}
.coach-pitch {width:100%;height:auto;display:block;min-height:0;max-height:490px}
.coach-marking {fill:none;stroke:#b9d2bc;stroke-opacity:.57;stroke-width:1.5}
.coach-edge {stroke:#a4d8bf;stroke-opacity:.5;stroke-width:1.6;stroke-dasharray:4 4}
.coach-intent {fill:none;stroke:#f2cd78;stroke-width:2.4}
.coach-role-dot {fill:#21483e;stroke:#c6e8d7;stroke-width:1.65}
.coach-role-number {font:700 10.5px system-ui,sans-serif;text-anchor:middle;fill:#eaf5ef}
.coach-role-name {font:600 9px ui-monospace,monospace;text-anchor:middle;fill:#cde2d7;paint-order:stroke;stroke:#173a31;stroke-width:3px}
.coach-reference-ring {fill:none;stroke:#efc578;stroke-width:1.8}
.coach-diagram figcaption {justify-content:flex-start;flex-wrap:wrap;gap:6px 17px;padding:11px 16px;color:#a7c4b9;font-size:10px;line-height:1.6;border-top:1px solid #335047}
.coach-legend-line,.coach-legend-arrow {display:inline-block;vertical-align:middle;width:19px;margin-right:5px;border-top:1px dashed #b0e1c8}.coach-legend-arrow {border-top:2px solid #f2cd78}.coach-legend-ref {color:#e1c78e}
.coach-plan,.coach-source-box,.coach-transfer {min-width:0;padding:18px}
.coach-plan {border-left:1px solid #2b414b}
.coach-mini-label {color:#8badae;font-size:9px;overflow-wrap:anywhere}
.coach-plan h3,.coach-transfer h3 {font-size:19px;line-height:1.35;margin-top:7px;letter-spacing:-.025em}
.coach-meters {margin:16px 0;display:grid;gap:8px}
.coach-meter {display:grid;grid-template-columns:88px 1fr 33px;align-items:center;gap:9px;font-size:11px;color:#a8bdc5}
.coach-meter b {text-align:right;font:500 11px/1.4 ui-monospace,monospace;color:#d4e8df}
.coach-meter-track {height:4px;background:#28413d;border-radius:4px;overflow:hidden}.coach-meter-track i {display:block;height:100%;background:linear-gradient(90deg,#638d81,var(--coach-accent));border-radius:4px}
.coach-control {border-top:1px solid #2a4049;padding-top:12px}.coach-ability-group {display:flex;gap:5px;margin:6px 0;flex-wrap:wrap}
.coach-ability-group button {font-size:11px;padding:6px 9px;border:1px solid #3b5359;border-radius:5px;background:#152630;color:#b5c6c9;height:auto;line-height:1.4}
.coach-control p {font-size:11px;color:#98b2b9}
.coach-apply {display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:15px;min-height:36px;border:1px solid #a3d5c1;border-radius:6px;background:#a5dcc6;padding:8px 11px;font-size:12px;font-weight:650;color:#15362c}
.coach-apply:hover {background:#bcebd7;color:#112b22}
.coach-active-tactic {display:block;color:#8aa5ae;font-size:10px;line-height:1.5;margin-top:7px;overflow-wrap:anywhere}
.coach-details {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12px;margin:12px 0}
.coach-source-box,.coach-transfer,.coach-roster-card {background:#10202b;border:1px solid #2c414c;border-radius:10px}
.coach-observation {display:grid;grid-template-columns:37px minmax(0,1fr);align-items:start;gap:10px;margin:12px 0}
.coach-shirt {display:grid;place-items:center;background:#345a53;clip-path:polygon(20% 8%,35% 2%,42% 12%,58% 12%,65% 2%,80% 8%,100% 28%,87% 44%,77% 36%,77% 97%,23% 97%,23% 36%,13% 44%,0 28%);width:36px;height:40px;color:#e7fbef;font:700 13px/1 ui-monospace,monospace}
.coach-observation strong {font-size:14px}.coach-observation small {font-size:11px;font-weight:500;color:#a7bdbe}.coach-observation p {font-size:12px;margin-top:4px}
.coach-source-links {display:grid;gap:4px}.coach-source-links a {color:#8bd1be;font-size:11px;line-height:1.5;overflow-wrap:anywhere;max-width:100%}
.coach-disclosure {display:block;font-size:10px;color:#90a6b1;line-height:1.6;margin-top:9px}
.coach-transfer button {margin-top:8px}
.coach-roster-card {min-width:0;overflow:hidden}.coach-roster-head {padding:13px 16px;flex-wrap:wrap}.coach-roster-head h3 {font-size:17px}.coach-roster-head>span {font-size:11px;color:#a9bcbd}
.coach-table-scroll {overflow:auto;max-width:100%;border-top:1px solid #2c414c;scrollbar-color:#486560 #11232b}
.coach-roster {border-collapse:collapse;width:100%;min-width:615px;text-align:right;font:12px/1.55 ui-monospace,monospace;font-variant-numeric:tabular-nums}
.coach-roster th,.coach-roster td {padding:6px 10px;border-bottom:1px solid #213740;font-weight:400;white-space:nowrap}
.coach-roster thead th {font:550 10px/1.5 system-ui,sans-serif;color:#9fbdc0;background:#122832}.coach-roster th:nth-child(2),.coach-roster th:nth-child(3),.coach-roster td:nth-child(3) {text-align:left}
.coach-roster tbody th {color:#d9e8e4}.coach-roster tbody tr.coach-anchor-row {background:#23352f}.coach-roster .coach-anchor-row th {color:#efdbaf}
@container(max-width:800px){.coach-spread{grid-template-columns:1fr}.coach-plan{border-left:0;border-top:1px solid #2b414b}.coach-meters{grid-template-columns:1fr 1fr;gap:8px 20px}.coach-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}}
@container(max-width:540px){.coach-details{grid-template-columns:1fr}.coach-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.coach-choice{padding:8px;gap:4px}.coach-intro p,.coach-plan p,.coach-source-box p,.coach-transfer p{font-size:12px}.coach-plan,.coach-source-box,.coach-transfer{padding:13px}.coach-meters{grid-template-columns:1fr}.coach-count{font-size:25px}.coach-diagram figcaption{padding:8px;gap:3px 10px}.coach-roster-head{padding:10px}}

.coach-model-actions {display:flex;align-items:center;gap:9px 12px;flex-wrap:wrap;margin-top:11px}.coach-model-actions button {margin:0}.coach-model-actions a {font-size:11px;color:#90d8c2;line-height:1.45}
