/* Approved C5 concept: actual scene imagery behind the paper evidence stage. */
.case5-rewind-screen { --rewind-ink:#192b3c; --rewind-teal:#08746e; position:relative; isolation:isolate; padding-bottom:24px; }
.case5-rewind-screen::before { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(#081827dd,#081827ed),url("assets/v2/scenes/c5-clinic-database.webp") center/cover; pointer-events:none; }
.case5-rewind-screen .rewind-heading, .case5-rewind-screen .rewind-claim, .case5-rewind-screen .rewind-workspace, .case5-rewind-screen .rewind-footer { width:min(1120px,calc(100% - 48px)); margin-inline:auto; }
.rewind-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:26px 0 16px; }
.rewind-heading p { margin:0 0 8px; color:var(--evidence-amber); font-family:var(--font-title); font-size:18px; }
.rewind-heading h1 { margin:0; font-family:var(--font-title); font-size:clamp(25px,3vw,38px); }
.rewind-progress { display:flex; list-style:none; gap:20px; padding:0; margin:0; color:var(--muted-blue); font-size:14px; }
.rewind-progress li { display:flex; align-items:center; gap:8px; }
.rewind-progress span { border:1px solid currentColor; width:27px; height:27px; display:grid; place-items:center; font-family:var(--font-data); }
.rewind-progress [aria-current] { color:var(--evidence-amber); }
.rewind-progress [data-complete="true"] { color:var(--trace-teal-bright); }
.rewind-claim { text-align:center; padding:12px 20px; background:#713b33; border:1px solid #cd7763; font-size:clamp(18px,2vw,23px); font-weight:700; }
.rewind-workspace { padding:20px 0 0; }
.rewind-paper { background:var(--record-paper); color:var(--rewind-ink); border:double 4px #bfb39e; box-shadow:6px 8px 18px #0005; padding:22px 26px 8px; }
.rewind-paper-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.rewind-paper-heading h2 { font-family:var(--font-title); font-size:24px; margin:0; }
.rewind-paper-heading>span { font-size:14px; }
.rewind-growth-plot { position:relative; height:clamp(230px,25vw,300px); margin:62px 24px 53px 36px; }
.rewind-growth-plot>svg { position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.rewind-gridline { stroke:#b3ad9f; stroke-width:1; stroke-dasharray:3 4; vector-effect:non-scaling-stroke; }
.rewind-trace { fill:none; stroke:var(--rewind-teal); stroke-width:3; vector-effect:non-scaling-stroke; }
.rewind-y-tick { position:absolute; right:calc(100% + 12px); transform:translateY(-50%); font:14px var(--font-data); }
.rewind-point { position:absolute; pointer-events:none; z-index:2; }
.rewind-point i { width:12px; height:12px; border:2px solid var(--rewind-teal); background:var(--record-paper); display:block; border-radius:50%; transform:translate(-50%,-50%); }
.rewind-point>span { position:absolute; white-space:nowrap; font:700 17px var(--font-data); color:var(--rewind-teal); bottom:22px; left:0; transform:translateX(-50%); }
.rewind-date-tick { position:absolute; top:calc(100% + 10px); transform:translateX(-50%); font:13px/1.35 var(--font-data); text-align:center; }
.rewind-use-band { position:absolute; height:100%; top:0; border-left:2px dashed #a65b04; background:#e5aa3014; pointer-events:none; }
.rewind-use-band>span { position:absolute; left:6px; bottom:calc(100% + 10px); white-space:nowrap; font:13px/1.3 var(--font-data); color:#874805; }
.rewind-segment { appearance:none; position:absolute; top:0; height:100%; min-height:44px; padding:0; border:2px solid transparent; background:transparent; color:#08746e; cursor:pointer; z-index:3; }
.rewind-segment>span { position:absolute; bottom:14px; left:50%; transform:translateX(-50%); white-space:nowrap; font:14px var(--font-data); padding:4px; background:var(--record-paper); }
.rewind-segment:hover { background:#f1b43c18; border-color:#b7812c; }
.rewind-segment[aria-pressed="true"] { background:#f1b43c28; border-color:#a65b04; }
.rewind-segment[aria-pressed="true"]>span { background:#f1b43c; color:var(--record-ink); }
.rewind-crop { position:absolute; inset:0 auto 0 0; background:#172a3a; border-right:3px solid var(--evidence-amber); display:grid; place-items:center; z-index:4; color:var(--record-paper); }
.rewind-crop>span { border-block:1px solid #f1b43c66; padding:20px; font-family:var(--font-title); }
.rewind-chart-caption { display:flex; gap:12px; justify-content:space-between; font-size:13px; }
.rewind-source { margin-top:14px; font-size:14px; }
.rewind-source summary { cursor:pointer; min-height:44px; display:flex; align-items:center; text-decoration:underline; text-underline-offset:4px; }
.rewind-source p { max-width:70ch; line-height:1.65; margin:8px 0; }
.rewind-source ul { display:flex; flex-wrap:wrap; gap:8px 30px; padding-left:20px; }
.rewind-reports { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.rewind-report { position:relative; overflow:hidden; text-align:center; background:var(--record-paper); color:var(--rewind-ink); border:double 4px #bfb39e; padding:24px; box-shadow:6px 8px 18px #0005; }
.rewind-report time { font:18px var(--font-data); }
.rewind-report h2 { border-block:1px solid #bfb39e; padding:16px 0; margin:16px 0; font-size:22px; }
.rewind-report b { font:32px var(--font-data); }
.rewind-report-range { font-size:19px; margin:0; }
.rewind-report-mask { position:absolute; left:0; right:0; bottom:0; height:55px; background:#152633; border-top:1px solid #b9ad96; transition:transform .45s cubic-bezier(.16,1,.3,1); }
.rewind-estimates.is-open .rewind-report-mask { transform:translateX(105%); }
.rewind-crop-hint { text-align:center; padding:24px 16px; }
.rewind-range-chart { padding:30px 38px 25px 60px; border:1px solid var(--line-blue); margin-top:22px; }
.rewind-range-plot { position:relative; height:180px; margin:24px 14px 32px 0; }
.rewind-range-tick { position:absolute; height:100%; border-left:1px dashed #8fabb466; top:0; }
.rewind-range-tick { color:var(--record-paper); font:14px var(--font-data); text-indent:-.85em; padding-top:0; }
.rewind-range-row { position:absolute; width:100%; height:1px; }
.rewind-row-label { position:absolute; right:calc(100% + 18px); transform:translateY(-50%); color:var(--trace-teal-bright); font-size:16px; white-space:nowrap; }
.rewind-range-bar { position:absolute; border-top:3px solid var(--trace-teal-bright); }
.rewind-range-bar::before,.rewind-range-bar::after { content:""; position:absolute; width:10px; height:10px; border:2px solid var(--trace-teal-bright); background:var(--hearing-navy); border-radius:50%; top:-7px; }
.rewind-range-bar::before { left:-5px; }.rewind-range-bar::after { right:-5px; }
.rewind-estimate-point { position:absolute; width:44px; height:44px; min-height:44px; padding:0; transform:translate(-50%,-50%); background:transparent; border:0; z-index:3; display:grid; place-items:center; cursor:pointer; }
.rewind-estimate-point i { display:block; width:14px; height:14px; background:var(--trace-teal-bright); border-radius:50%; }
.rewind-estimate-point[aria-pressed="true"] { outline:2px solid var(--evidence-amber); }
.rewind-overlap { position:absolute; top:43%; height:46px; min-height:44px; border:1px dashed var(--evidence-amber); background:#f1b43c14; color:var(--record-paper); cursor:pointer; }
.rewind-overlap span { position:absolute; top:calc(100% + 42px); left:50%; transform:translateX(-50%); white-space:nowrap; font-size:14px; }
.rewind-overlap:hover,.rewind-overlap[aria-pressed="true"] { border:2px solid var(--evidence-amber); background:#f1b43c38; }
.rewind-footer { display:flex; align-items:center; gap:20px; padding:20px 0 10px; position:relative; }
.rewind-footer .page-feedback { margin:0; flex:1; font-size:17px; line-height:1.6; }
.rewind-primary { min-height:56px; min-width:240px; padding:14px 24px; font-family:var(--font-title); font-size:23px; color:var(--record-ink); border:double 4px #875621; background:var(--evidence-amber); cursor:pointer; box-shadow:4px 5px 12px #0004; }
.rewind-primary:hover:not(:disabled) { background:#ffcb66; }
.rewind-primary:disabled { background:#c5b492; cursor:default; opacity:.7; }
.rewind-fiction { position:absolute; right:0; top:100%; font-size:12px; color:var(--muted-blue); }
.rewind-causality { display:grid; grid-template-columns:minmax(0,1fr) 230px; gap:0; padding:26px 0 0; }
.rewind-calendar { border:1px solid var(--line-blue); padding:28px 46px 20px; background:#112b45e8; }
.rewind-calendar-axis { position:relative; margin:28px 6px 38px; height:1px; border-bottom:1px solid #a9c0ce; }
.rewind-calendar-axis>span { position:absolute; bottom:34px; font:14px var(--font-data); }
.rewind-calendar-axis time { position:absolute; bottom:10px; transform:translateX(-50%); font:13px var(--font-data); }
.rewind-calendar-axis time:nth-last-child(2) { bottom:-26px; }
.rewind-record { display:block; width:100%; border:1px solid transparent; border-bottom:1px solid var(--line-blue); text-align:left; padding:14px 6px 36px; color:var(--record-paper); background:transparent; cursor:pointer; }
.rewind-record:last-child { border-bottom-color:transparent; }
.rewind-record strong { display:block; font-size:18px; margin-bottom:40px; }
.rewind-record:hover:not(:disabled),.rewind-record[aria-pressed="true"]:not(:disabled) { outline:1px solid var(--evidence-amber); outline-offset:6px; }
.rewind-record:disabled { opacity:1; cursor:default; }
.rewind-record-line { position:relative; height:62px; margin:0; }
.rewind-duration { position:absolute; border-top:2px solid var(--trace-teal-bright); top:0; }
.product-record .rewind-duration { border-top:2px dashed var(--evidence-amber); }
.rewind-event { position:absolute; display:flex; align-items:center; flex-direction:column; transform:translateX(-50%); white-space:nowrap; font-size:14px; gap:5px; color:var(--trace-teal-bright); }
.product-record .rewind-event { color:var(--evidence-amber); }
.rewind-event i { width:14px; height:14px; border:2px solid currentColor; border-radius:50%; background:var(--hearing-navy); margin-top:-6px; }
.rewind-event time { font-family:var(--font-data); }
.rewind-inference { position:relative; display:flex; flex-direction:column; justify-content:flex-start; align-items:center; padding-top:70px; }
.rewind-proposition { border:2px solid var(--question-coral); padding:16px; color:#ffaba1; font-size:21px; text-align:center; width:190px; position:relative; z-index:2; }
.rewind-causal-link { position:relative; display:block; width:100%; height:245px; border:0; background:none; cursor:pointer; color:var(--evidence-amber); padding:0; }
.rewind-causal-link svg { width:100%; height:100%; }
.rewind-causal-link path { fill:none; stroke:#ff8277; stroke-width:3; stroke-dasharray:8 6; vector-effect:non-scaling-stroke; }
.rewind-causal-link .rewind-arrowhead { stroke-dasharray:none; }
.rewind-link-target { position:absolute; left:50%; top:40%; transform:translateX(-50%); white-space:nowrap; background:var(--hearing-navy-deep); border:1px solid var(--evidence-amber); padding:12px 10px; font-size:14px; }
.rewind-causal-link[aria-pressed="true"] .rewind-link-target { border:3px solid var(--evidence-amber); }
.rewind-causal-link:hover .rewind-link-target { background:#3b382b; }
.rewind-link-removed { text-align:center; color:var(--trace-teal-bright); margin:40px 0; }
.is-resolved .rewind-proposition { border-color:var(--trace-teal-bright); color:var(--trace-teal-bright); }
.rewind-findings { border-top:1px solid var(--line-blue); padding:20px 0 0; }
.rewind-findings h2 { font-family:var(--font-title); font-size:24px; }
.rewind-findings ul { display:grid; grid-template-columns:1fr 1fr; gap:14px 32px; padding-left:22px; }
.rewind-findings li::marker { color:var(--trace-teal-bright); }
.case5-rewind-screen button:focus-visible,.rewind-source summary:focus-visible { outline:3px solid var(--evidence-amber); outline-offset:4px; }
.rewind-paper button:focus-visible { outline-color:#7b4200; }
@media(max-width:680px) {
  .case5-rewind-screen .rewind-heading,.case5-rewind-screen .rewind-claim,.case5-rewind-screen .rewind-workspace,.case5-rewind-screen .rewind-footer { width:calc(100% - 24px); }
  .rewind-heading { padding:18px 0 14px; display:block; }
  .rewind-heading p { font-size:16px; }.rewind-heading h1 { font-size:28px; }
  .rewind-progress { margin-top:16px; gap:12px; font-size:12px; }.rewind-progress li { gap:5px; }.rewind-progress span { width:22px;height:22px; }
  .rewind-claim { font-size:17px; padding:12px 10px; }
  .rewind-workspace { padding-top:12px; }
  .rewind-paper { padding:18px 10px 6px; }.rewind-paper-heading h2 { font-size:21px; }.rewind-paper-heading>span {font-size:12px;}
  .rewind-growth-plot { height:230px; margin:66px 16px 51px 30px; }
  .rewind-point>span { font-size:13px; bottom:20px; }.rewind-point i { width:10px;height:10px; }
  .rewind-y-tick {font-size:12px;right:calc(100% + 8px);}.rewind-date-tick {font-size:11px;}
  .rewind-use-band>span { font-size:11px; left:auto; right:0; bottom:calc(100% + 34px); }
  .rewind-segment>span { font-size:11px; padding:4px 0; }
  .rewind-chart-caption { font-size:11px; gap:4px; }.rewind-source { font-size:13px; }
  .rewind-source ul { display:block; }.rewind-crop>span { padding:16px 8px; font-size:15px; }
  .rewind-reports { grid-template-columns:1fr; gap:12px; }.rewind-report {padding:16px;}
  .rewind-report time {font-size:16px;}.rewind-report h2 {padding:10px 0;margin:10px 0;font-size:19px;}.rewind-report b {font-size:27px;}
  .rewind-report-range {font-size:17px;}.rewind-report-mask {height:44px;}
  .rewind-range-chart {padding:24px 20px 20px 48px;margin-top:12px;}.rewind-range-plot {height:168px;margin-right:0;}
  .rewind-range-tick {font-size:11px;}.rewind-row-label {font-size:14px;right:calc(100% + 12px);}
  .rewind-overlap span {font-size:13px;}.rewind-estimate-point {width:44px;height:44px;}
  .rewind-footer { position:sticky; bottom:0; z-index:6; background:#081827f5; border-top:1px solid var(--line-blue); display:flex; flex-direction:column; gap:12px; padding:14px 0 20px; margin-top:16px; }
  .rewind-footer .page-feedback {font-size:15px;width:100%;}.rewind-primary {width:100%;min-width:0;font-size:21px;}
  .rewind-fiction { position:static;align-self:flex-end;font-size:11px; }
  .rewind-causality {grid-template-columns:1fr;padding-top:8px;}
  .rewind-calendar {padding:20px 38px 8px;}.rewind-calendar-axis {margin:32px 0 42px;}
  .rewind-calendar-axis time {font-size:11px;}
  .rewind-record {padding:12px 0 24px;}.rewind-record strong {font-size:17px;margin-bottom:26px;}
  .rewind-event {font-size:12px;}.rewind-event time {font-size:12px;}
  .rewind-inference {padding-top:0;flex-direction:column-reverse;}
  .rewind-proposition {font-size:19px;}.rewind-causal-link {height:125px;width:100%;}
  .rewind-causal-link svg {width:100%;height:100%;transform:rotate(180deg);}
  .rewind-causal-link svg path:first-child {d:path("M 110 220 V 10");}
  .rewind-link-target {top:35%;}.rewind-link-removed {margin:20px 0;}
  .rewind-findings ul {grid-template-columns:1fr;}.rewind-findings {font-size:15px;}
}
@media(prefers-reduced-motion:reduce) { .rewind-report-mask {transition:none;} }
@media(forced-colors:active) {
 .case5-rewind-screen::before {display:none;}
 .rewind-paper,.rewind-report,.rewind-calendar,.rewind-primary,.rewind-crop,.rewind-claim,.rewind-footer {background:Canvas;color:CanvasText;}
 .rewind-trace,.rewind-gridline,.rewind-causal-link path {stroke:CanvasText;}
 .rewind-use-band,.rewind-segment[aria-pressed="true"],.rewind-overlap[aria-pressed="true"],.rewind-link-target {border-color:Highlight;}
 .rewind-point i,.rewind-range-bar,.rewind-duration,.rewind-event i,.rewind-proposition {border-color:CanvasText;}
 .rewind-point>span,.rewind-event,.rewind-row-label,.rewind-link-target {color:CanvasText;}
}

/* Evidence stays unobscured on mobile; the action follows the active evidence. */
.rewind-range-chart { background:#0c2237ed; }
.rewind-point[data-point-index="0"]>span { left:8px; transform:none; bottom:13px; }
.rewind-workspace.is-revealing .rewind-growth-plot { animation:rewind-reveal .55s cubic-bezier(.16,1,.3,1); }
.rewind-workspace.is-revealing .rewind-report-mask { animation:rewind-unmask .5s cubic-bezier(.16,1,.3,1); }
@keyframes rewind-reveal { from {clip-path:inset(-60px 0 -60px 75%);} to {clip-path:inset(-60px -30px -60px -40px);} }
@keyframes rewind-unmask { from {transform:translateX(0);} to {transform:translateX(105%);} }
@media(max-width:680px) {
  .rewind-footer {position:relative;bottom:auto;z-index:auto;background:#081827;}
  .rewind-report {padding:12px;}
  .rewind-report h2 {line-height:1.2;padding:8px 0;margin:8px 0;}
  .rewind-heading {padding-top:12px;}
  .rewind-point>span {font-size:14px;}
  .rewind-segment>span {font-size:13px;}
  .rewind-chart-caption {font-size:12px;}
  .rewind-causal-link {height:112px;}
}
@media(prefers-reduced-motion:reduce) {
  .rewind-workspace.is-revealing .rewind-growth-plot,.rewind-workspace.is-revealing .rewind-report-mask {animation:none;}
}
