/* A direct illustrated briefing, with one active coaching task. */
.header-actions .ai-coach-button{background:var(--red);border-color:var(--red);color:white;gap:7px;font-weight:650;box-shadow:0 3px 9px #ed252525}
.header-actions .ai-coach-button:hover{background:#cb2027;border-color:#cb2027}
.ai-coach-button svg{width:20px;height:20px;flex:none}
dialog.coach-modal{width:min(1060px,calc(100% - 32px));max-width:1060px;max-height:calc(100dvh - 40px);background:var(--surface);border:1px solid var(--line);border-radius:16px;color:var(--ink)}
.coach-modal .modal-heading{padding:16px 26px;border-bottom:1px solid var(--line);background:var(--surface);position:sticky;top:0;z-index:2}
.coach-modal .modal-heading h2{font-size:20px;letter-spacing:-.5px;margin-top:3px}.coach-modal .modal-heading .eyebrow{font-size:10px;letter-spacing:1.8px}.coach-modal .modal-close{width:36px;height:36px}
.coach-modal .modal-body{padding:19px 26px 20px}
.coach-context{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:11px;color:var(--muted)}
.coach-concept-label{background:color-mix(in srgb,var(--red) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--red) 26%,var(--line));color:var(--ink);padding:5px 9px;border-radius:5px;font-weight:600}
.coach-intro{display:flex;justify-content:space-between;align-items:center;margin:18px 0}
.coach-intro h2{font-size:29px;line-height:1.12;letter-spacing:-1px;font-weight:600;margin:0}.coach-intro h2 span{color:var(--muted);font-weight:450}
.coach-intro>span{width:53px;height:53px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(140deg,#ee292914,transparent);display:grid;place-items:center;color:var(--red)}.coach-intro svg{width:34px;height:34px}
.coach-accordion{border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-top:11px;background:var(--surface)}
.coach-accordion[open]{border-color:color-mix(in srgb,var(--red) 38%,var(--line));box-shadow:0 5px 20px #00000008}
.coach-accordion>summary{display:flex;gap:13px;align-items:center;padding:16px 18px;cursor:pointer;list-style:none;background:var(--surface-alt)}.coach-accordion>summary::-webkit-details-marker{display:none}
.coach-accordion[open]>summary{background:linear-gradient(110deg,#ee29290a,transparent),var(--surface-alt);border-bottom:1px solid var(--line)}
.coach-goal-number{font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--muted);width:32px;height:32px;border:1px solid var(--line);border-radius:8px;display:grid;place-items:center;flex:none}
.coach-accordion[open] .coach-goal-number{color:white;background:var(--red);border-color:var(--red)}
.coach-summary-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.coach-summary-copy small{font-size:9px;letter-spacing:1.3px;color:var(--muted);font-weight:600}.coach-summary-copy strong{font-size:17px;line-height:1.3;letter-spacing:-.3px;font-weight:600}
.coach-goal-priority{font-size:10px;color:var(--secondary);white-space:nowrap;margin-left:auto}.coach-expand{margin-left:auto;color:var(--muted);font-size:22px;font-weight:350;flex:none}.coach-goal-priority+.coach-expand{margin-left:8px}.coach-accordion[open] .coach-expand{transform:rotate(45deg)}
.coach-task{padding:15px 18px 17px}.coach-task p{font-size:15px;line-height:1.5;font-weight:550;margin:0 0 6px;max-width:880px}.coach-task>span{font-size:12px;line-height:1.5;color:var(--muted)}
.coach-visual{margin:0 12px;background:#202124;border:1px solid #4a4b50;border-radius:8px;overflow:hidden;color:#d2d3d9}
.coach-visual-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px 0;font-size:10px;color:#a2a3ad}
.coach-legend{display:flex;gap:20px;flex-wrap:wrap;font-size:11px;font-weight:550}.coach-legend>span{display:flex;gap:7px;align-items:center}.coach-legend>span:before{content:'';width:21px;height:0;border-top:2px solid currentColor}.coach-legend .current:before{border-top-style:dashed}
.coach-visual .current,.coach-release .current{color:#8eb6f3}.coach-visual .suggested,.coach-release .suggested{color:#ff5058}
.coach-circuit{width:100%;display:block;max-height:410px}
.coach-runoff{fill:none;stroke:#292b30;stroke-width:179}.coach-road-edge{fill:none;stroke:#72747c;stroke-width:139}.coach-tarmac{fill:none;stroke:#383b41;stroke-width:135}.coach-centerline{fill:none;stroke:#aeb0ba;stroke-opacity:.14;stroke-width:1;stroke-dasharray:4 9}
.coach-curb-base{fill:none;stroke:#d0d1d5;stroke-width:9}.coach-curb{fill:none;stroke:#dc424a;stroke-width:9;stroke-dasharray:12 12}
.coach-racing-line{fill:none;stroke-linecap:round;stroke-linejoin:round}.coach-racing-line.current{stroke:#8eb6f3;stroke-width:2.5;stroke-dasharray:6 5}.coach-racing-line.suggested{stroke:#ff5058;stroke-width:3.2}
.coach-trail{fill:none;stroke-width:6;stroke-linecap:round;opacity:.55}.coach-trail.current{stroke:#8eb6f3}.coach-trail.suggested{stroke:#ff5058}
.coach-marker{stroke:#202124;stroke-width:1.5}.coach-marker.current{fill:#a5c7fa}.coach-marker.suggested{fill:#ff5058}
.coach-car{stroke:#16171b;stroke-width:1}.coach-car.current{fill:#a5c7fa}.coach-car.suggested{fill:#ff5058}.coach-car ellipse{opacity:.13;stroke:none}.coach-car>path:first-of-type{fill:#24262e;stroke:none}.coach-car>path:last-of-type{stroke:white;stroke-width:1.5}
.coach-annotations{font-family:inherit;font-size:13px;fill:#c8c9d1}.coach-annotations .coach-desktop-callout>path{stroke:#92949d;stroke-width:1;fill:none}.coach-annotations .current{fill:#aacbff}.coach-annotations .suggested{fill:#ff7379}.coach-annotations .coach-direction{stroke:#ff7379;stroke-width:1.5}
.coach-track-label{font:10px system-ui;letter-spacing:2px;fill:#92949d}
.coach-scene-caption text:first-child{font:11px system-ui;letter-spacing:2px;fill:#fc777d}.coach-scene-caption text:last-child{font:600 23px system-ui;letter-spacing:-.4px;fill:#f2f2f5}
.coach-phases{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:12px 12px 0}.coach-phases button{background:var(--surface-alt);border:1px solid var(--line);border-radius:6px;color:var(--secondary);padding:10px 9px;display:flex;align-items:center;gap:8px;font-size:12px;min-height:40px;text-align:left}.coach-phases button span{font-size:10px;color:var(--muted)}.coach-phases button[aria-pressed="true"]{color:var(--ink);background:color-mix(in srgb,var(--red) 9%,var(--surface));border-color:color-mix(in srgb,var(--red) 55%,var(--line))}.coach-phases button[aria-pressed="true"] span{color:var(--red)}
.coach-phase-explanation{padding:12px 18px 16px;min-height:115px}.coach-phase-explanation>p{font-size:13px;line-height:1.5;color:var(--secondary);margin:0 0 12px}.coach-phase-notes{display:grid;grid-template-columns:1fr 1fr;gap:12px}.coach-phase-notes>span{display:flex;align-items:center;gap:8px;font-size:12px}.coach-phase-notes small{font-size:10px;white-space:nowrap;color:var(--muted)}.coach-phase-notes b{font-weight:550}.coach-phase-notes .current b{color:#527fae}.coach-phase-notes .suggested b{color:#d72b34}
[data-theme="dark"] .coach-phase-notes .current b{color:#9cbce8}[data-theme="dark"] .coach-phase-notes .suggested b{color:#ff7379}
.coach-bottom{display:grid;grid-template-columns:1fr 1.25fr;gap:22px;border-top:1px solid var(--line);padding:13px 18px;background:var(--surface-alt)}
.coach-inputs{display:grid;grid-template-columns:1fr 1fr;gap:6px 13px}.coach-inputs>small{grid-column:1/-1;font-size:8px;letter-spacing:1px;color:var(--muted)}.coach-input{display:flex;flex-direction:column;gap:3px}.coach-input>span{font-size:10px;color:var(--secondary);margin-bottom:3px}.coach-input i{height:3px;background:var(--line);border-radius:2px;overflow:hidden}.coach-input b{display:block;height:100%;transform-origin:left;transform:scaleX(0)}.coach-input .current b{background:#8eb6f3}.coach-input .suggested b{background:#f14a52}
.coach-transport>div{display:flex;align-items:center;gap:8px}.coach-transport button{font-size:11px;border:1px solid var(--line);background:var(--surface);border-radius:5px;min-height:32px;padding:5px 10px;color:var(--ink)}.coach-transport [data-play]{background:var(--red);border-color:var(--red);color:white;min-width:70px}.coach-transport [data-replay-status]{font-size:9px;color:var(--muted);margin-left:auto}.coach-transport input{width:100%;margin:10px 0 0;accent-color:var(--red);height:12px}
.coach-release{margin:0 18px 14px;background:#27292e;border:1px solid #494b53;border-radius:6px;padding:11px 13px;color:#d6d7de}.coach-release>div{display:flex;justify-content:space-between;font-size:11px}.coach-release>div span{font-size:10px;color:#9a9ca6}.coach-release svg{width:100%;max-height:93px;display:block;margin-top:5px}.coach-input-axis{stroke:#747681;stroke-width:1;fill:none}.coach-release [data-release-cursor]{stroke:white;stroke-width:1;stroke-opacity:.7}.coach-release text{fill:#a5a7af;font:9px system-ui}
.coach-concept-note{font-size:10px;line-height:1.6;color:var(--muted);margin:13px 0 0}
.coach-modal :is(button,summary,input):focus-visible{outline:2px solid var(--red);outline-offset:3px}
/* Strong playback control, separate from the quieter comparison action. */
html[data-accent-style] .opportunity-v15 .opportunity-footer{display:flex;flex-wrap:wrap;gap:9px;padding-top:14px}
html[data-accent-style] .opportunity-v15 .opportunity-footer .opportunity-play{width:100%;min-height:44px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:12px;font-weight:650;padding:10px 13px;background:var(--ink);color:var(--surface);border:1px solid var(--ink);border-radius:7px;box-shadow:0 3px 7px #00000012}
html[data-accent-style] .opportunity-v15 .opportunity-play svg{width:20px;height:20px;flex:none}
html[data-accent-style] .opportunity-v15 .opportunity-footer .opportunity-play:hover{background:var(--red);border-color:var(--red);color:white}
html[data-accent-style] .opportunity-v15 .opportunity-footer .opportunity-play[aria-pressed="true"]{background:var(--red);border-color:var(--red);color:white}
html[data-accent-style] .opportunity-v15 .opportunity-footer [data-compare-corner]{margin-left:auto;min-height:32px}
@media(max-width:680px){dialog.coach-modal{width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:12px}.coach-modal .modal-heading{padding:13px 15px}.coach-modal .modal-body{padding:14px 12px}.coach-context>span:last-child{display:none}.coach-intro{margin:15px 3px}.coach-intro h2{font-size:25px}.coach-intro>span{width:44px;height:44px}.coach-summary-copy strong{font-size:14px}.coach-summary-copy small{font-size:8px}.coach-goal-priority{display:none}.coach-accordion>summary{padding:13px 12px;gap:10px}.coach-task{padding:14px 12px}.coach-task p{font-size:13px}.coach-task>span{font-size:11px}.coach-visual{margin:0 6px}.coach-visual-top{padding:11px 10px 0}.coach-visual-top>span:last-child{display:none}.coach-legend{font-size:10px;gap:15px}.coach-circuit{min-height:250px;object-fit:contain}.coach-phases{grid-template-columns:repeat(2,1fr);padding:8px 8px 0;gap:5px}.coach-phases button{min-height:41px;font-size:11px}.coach-phase-explanation{padding:12px;min-height:145px}.coach-phase-notes>span{align-items:flex-start;flex-direction:column;gap:4px;font-size:11px}.coach-bottom{grid-template-columns:1fr;gap:13px;padding:12px}.coach-inputs{grid-template-columns:1fr 1fr}.coach-transport button{min-height:36px}.coach-release{margin:0 12px 12px}.coach-concept-note{font-size:9px}.coach-scene-caption text:last-child{font-size:22px}}

.coach-mobile-callout{display:none}
@media(max-width:680px){.coach-circuit{height:250px;min-height:250px}.coach-scene-caption,.coach-track-label,.coach-desktop-callout{display:none}.coach-mobile-callout{display:block;font-size:14px}.coach-visual .coach-marker{stroke-width:2}.coach-visual .coach-marker path,.coach-visual .coach-marker circle{stroke-width:2}.coach-phases{margin-top:0}}

/* Compact live speed readouts stay tied to the two existing line colors. */
.coach-visual-top{align-items:flex-start}
.coach-visual-top>span:last-child{padding-top:1px;text-align:right}
.coach-visual-top>span:last-child small{display:block;font-size:9px;opacity:.8;margin-top:6px}
.coach-legend{gap:28px}
.coach-legend>span{display:grid;grid-template-columns:21px auto;gap:4px 7px;align-items:center}
.coach-legend>span:before{grid-row:1;grid-column:1}
.coach-legend>span>span:first-child{grid-column:2}
.coach-live-speed{grid-column:2;display:flex;align-items:baseline;gap:5px;min-width:74px}
.coach-live-speed strong{font-size:20px;line-height:1.15;letter-spacing:-.4px;font-weight:600;font-variant-numeric:tabular-nums}
.coach-live-speed small{font-size:10px;opacity:.85}
.coach-grid-line{stroke:#ffffff;stroke-opacity:.035}
/* The coach diagram follows the selected light/dark theme. */
[data-theme="light"] .coach-visual{background:#f1f3f5;border-color:#cbd0d6;color:#434953}
[data-theme="light"] .coach-visual-top{color:#6c737d}
[data-theme="light"] .coach-visual .current,[data-theme="light"] .coach-release .current{color:#35699f}
[data-theme="light"] .coach-visual .suggested,[data-theme="light"] .coach-release .suggested{color:#d42730}
[data-theme="light"] .coach-grid-line{stroke:#687381;stroke-opacity:.065}
[data-theme="light"] .coach-runoff{stroke:#e5e8ec}
[data-theme="light"] .coach-road-edge{stroke:#adb4bd}
[data-theme="light"] .coach-tarmac{stroke:#d4d9df}
[data-theme="light"] .coach-centerline{stroke:#68717d;stroke-opacity:.2}
[data-theme="light"] .coach-curb-base{stroke:#fcfcfd}
[data-theme="light"] .coach-curb{stroke:#d9474f}
[data-theme="light"] .coach-racing-line.current{stroke:#356fa9}
[data-theme="light"] .coach-racing-line.suggested{stroke:#e3343c}
[data-theme="light"] .coach-trail.current{stroke:#356fa9}
[data-theme="light"] .coach-trail.suggested{stroke:#e3343c}
[data-theme="light"] .coach-marker{stroke:#f7f8fa}
[data-theme="light"] .coach-marker.current{fill:#356fa9}
[data-theme="light"] .coach-marker.suggested{fill:#e3343c}
[data-theme="light"] .coach-car{stroke:#ffffff;stroke-width:1.2}
[data-theme="light"] .coach-car.current{fill:#356fa9}
[data-theme="light"] .coach-car.suggested{fill:#e3343c}
[data-theme="light"] .coach-car>path:first-of-type{fill:#cfe1f4}
[data-theme="light"] .coach-annotations{fill:#4c5561}
[data-theme="light"] .coach-annotations .coach-desktop-callout>path{stroke:#818b98}
[data-theme="light"] .coach-annotations .coach-direction{stroke:#d42730}
[data-theme="light"] .coach-annotations .current{fill:#35699f}
[data-theme="light"] .coach-annotations .suggested{fill:#c8262e}
[data-theme="light"] .coach-track-label{fill:#707a86}
[data-theme="light"] .coach-scene-caption text:first-child{fill:#c8262e}
[data-theme="light"] .coach-scene-caption text:last-child{fill:#303943}
[data-theme="light"] .coach-release{background:#f1f3f5;border-color:#cbd0d6;color:#434953}
[data-theme="light"] .coach-release>div span,[data-theme="light"] .coach-release text{color:#6c737d;fill:#6c737d}
[data-theme="light"] .coach-release [data-release-cursor]{stroke:#374151}
@media(max-width:680px){.coach-legend{gap:20px;font-size:10px}.coach-live-speed strong{font-size:18px}.coach-live-speed small{font-size:9px}}
