.ai-test-badge{display:inline-flex;align-items:center;border:1px solid #9b82c0;background:#f2eafa;color:#533078;border-radius:5px;font-size:14px;font-weight:650;padding:3px 8px;white-space:nowrap}
.key-evaluation-summary.no-assessment{font-size:17px;font-weight:650;color:#203d2f;background:#e9eee4;padding:10px;border-radius:5px}
.original-checklist .key-feedback{padding:8px 0;gap:8px}.original-checklist .key-feedback-body{line-height:1.4;margin-top:2px}.original-checklist .key-feedback-heading{font-size:14px;line-height:1.3}.key-evidence-details{margin-top:4px}.key-evidence-details summary{display:list-item;cursor:pointer;font-size:14px;min-height:30px;padding:5px 0;color:#365b46}.key-evidence-details[open]{padding-bottom:5px}
.key-evidence{font-size:14px;line-height:1.4;margin:8px 0 0;color:#405a49}.key-evidence-frames{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.key-evidence-frames button{font-size:14px;min-height:34px;padding:5px 9px;background:white;border:1px solid #becdb8;border-radius:5px}
.key-next-step{background:#edf3e7;border-left:3px solid #9bad84;padding:10px 12px;margin:10px 0;font-size:16px}.key-next-step p{margin:4px 0 0}.key-unassessed h5{margin-bottom:2px}.key-unassessed-list .key-feedback{padding:7px 0}.key-unassessed-list .key-feedback-body{font-size:14px;line-height:1.4;margin-top:2px}.key-feedback-observed .key-feedback-label{color:#36596b}
.ai-controls{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;padding:6px 0 2px;border-top:1px solid #d8d4e1;margin-top:4px;font-size:14px;min-width:0}
.ai-controls[hidden],.ai-controls [hidden]{display:none!important}
.ai-controls label{display:flex;align-items:center;gap:6px;margin:0;font-size:14px}
.ai-controls select{font:inherit;max-width:235px;min-height:34px;background:#fff;border:1px solid #a49bad;border-radius:5px;padding:4px;color:#203d2f}
.ai-controls button{font-size:14px;min-height:34px;white-space:nowrap;padding:5px 9px;border:1px solid #b8c6b5;border-radius:5px;background:#fff;color:#203d2f}
.ai-controls button:disabled{opacity:.45}
.ai-method-note{font-size:14px;color:#53614f}
.clip-transport .ai-controls{grid-column:1/-1;width:100%;gap:4px;justify-content:space-between;align-self:stretch}
.clip-transport .ai-controls label{font-size:0;flex:1;min-width:100px}
.clip-transport .ai-controls select{font-size:14px;width:100%;max-width:180px;min-width:0}
.clip-transport .ai-controls button{padding-inline:6px}
.clip-transport .ai-method-note{display:none}
.clip-transport .ai-details{font-size:0;min-width:30px}
.clip-transport .ai-details::after{content:'ⓘ';font-size:19px}
.ai-info-dialog{position:relative;max-width:700px;width:calc(100vw - 32px);max-height:90dvh;overflow:auto;padding:28px;font-size:16px;line-height:1.5;color:#203d2f;border:1px solid #bdc9b8;border-radius:10px}
.ai-info-dialog h2{padding-top:16px;padding-right:45px}.ai-close{position:absolute;right:20px;top:42px;width:38px;height:38px}
.ai-info-dialog dt{font-weight:700;margin-top:14px}.ai-info-dialog dd{margin-left:0}.ai-attribution{font-size:14px}
.ai-info-dialog h3{font-size:18px;margin:0 0 8px}.ai-info-dialog section{padding:18px 0;border-top:1px solid #d8dfd3}.ai-info-dialog p{margin:0 0 12px}.ai-info-dialog p:last-child{margin-bottom:0}.ai-info-dialog .analysis-run-details{border-top:0;padding-top:0}
.ai-feedback-key{display:grid;grid-template-columns:145px 1fr;gap:10px 16px;margin:12px 0 0}.ai-info-dialog .ai-feedback-key dt{margin:0}.ai-feedback-key dd{margin:0}.ai-evaluation{background:#f0f4ea;padding:18px!important;border-radius:6px;margin-bottom:18px}.ai-technical{margin-bottom:18px}.ai-technical summary{cursor:pointer;padding:8px 0;font-weight:650}.ai-technical[open] summary{margin-bottom:10px}
@media(max-width:480px){.ai-feedback-key{grid-template-columns:1fr;gap:3px}.ai-feedback-key dd{margin-bottom:10px}}
.ai-info-dialog table{width:100%;border-collapse:collapse;font-size:14px}.ai-info-dialog th,.ai-info-dialog td{padding:4px 8px;text-align:left;border-bottom:1px solid #ddd}.ai-info-dialog caption{text-align:left;margin-bottom:8px}
@media(max-width:600px){.ai-controls{gap:6px}.ai-controls select{max-width:195px}.ai-method-note{flex-basis:100%}.ai-info-dialog{padding:16px}.ai-test-badge{margin:4px}}
/* On phones the extra local-model controls must not consume the footage's
   entire fixed-height row. Let the paired players grow with their controls. */
@media(max-width:600px){
  .studio.persistent-sidebar.is-compare{grid-template-rows:auto auto auto auto auto}
  .screen-ready.is-compare .video-editor .video-grid{height:auto}
  .screen-ready.is-compare .compare .stage{flex:0 0 220px;min-height:220px;height:220px}
}

/* Both methods share a stable phase map and one large frame/report. */
.ai-frame-review { display:grid; gap:8px; margin-bottom:8px; }
.ai-frame-paging { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.ai-frame-paging button { min-height:38px; padding:5px 12px; font-size:16px; }
.ai-frame-count { white-space:nowrap; font-size:16px; }
.ai-frame-choices { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; padding:3px; }
.ai-frame-choices button { min-width:0; border:1px solid var(--moment-color); border-radius:5px; }
.ai-frame-choices button,.key-review-dialog nav button,.ai-sequence .key-card-title { background:color-mix(in srgb,var(--moment-color) 90%,#000); color:#fff; }
.ai-frame-choices button[aria-current=true],.key-review-dialog nav button[aria-current=true] { outline:2px solid #203d2f; outline-offset:1px; box-shadow:inset 0 -4px 0 #fff; font-weight:700; }
.ai-frame-choices button[data-available=false],.key-review-dialog nav button[data-available=false] { background:color-mix(in srgb,var(--moment-color) 22%,#fff);color:#203d2f;opacity:1; }
.phase-availability { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap; }
.ai-frame-choices button .phase-contour-icon,.key-review-dialog nav button .phase-contour-icon,.ai-sequence .key-card-title .phase-contour-icon { filter:brightness(0) invert(1); }
.ai-frame-choices button[data-available=false] .phase-contour-icon,.key-review-dialog nav button[data-available=false] .phase-contour-icon { filter:none; }
.ai-frame-empty { padding:20px; font-size:17px; line-height:1.5; background:#f0f4e9; border-radius:8px; }
.ai-sequence .key-filmstrip { display:block; min-height:0; }
.ai-sequence .key-card { min-height:0; }
.ai-sequence .key-card-title { font-size:17px; padding:8px; }
.ai-sequence .key-frame-image, .ai-sequence .key-card.paired .key-frame-image { height:280px; }
.ai-sequence .key-frame-time { display:block; }
.ai-sequence .moment-actions button { min-height:36px; }
.ai-sequence .key-card.paired .key-card-frames { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ai-sequence .key-card.has-analysis .key-inline-reports { display:grid; }
.ai-sequence .key-inline-analysis { font-size:16px; }
.ai-sequence .key-frame-results { display:none; }
@media(min-width:901px) {
  .screen-ready.has-key-moments.ai-sequence-review:not(.is-compare) .video-editor { grid-template-columns:50px minmax(270px,.8fr) minmax(0,1.2fr); grid-template-rows:minmax(0,1fr); }
  .ai-sequence-review:not(.is-compare) .video-grid { grid-column:2; }
  .ai-sequence-review:not(.is-compare) .drawing-toolbar { grid-row:1; }
  .ai-sequence-review:not(.is-compare) .key-moment-strip { grid-column:3; grid-row:1; display:flex; flex-direction:column; min-height:0; }
  .ai-sequence-review:not(.is-compare) .key-filmstrip { flex:1; min-height:0; }
  .ai-sequence .key-card, .key-portrait:not(.is-compare) .ai-sequence .key-card { display:grid; grid-template-columns:minmax(120px,.65fr) minmax(240px,1fr); grid-template-rows:auto minmax(0,1fr); height:100%; }
  .ai-sequence .key-card-title { grid-column:1; grid-row:1; }
  .ai-sequence .key-card-frames { grid-column:1; grid-row:2; min-height:0; }
  .ai-sequence .key-card .moment-cell, .ai-sequence .key-card .key-frame { display:flex; flex-direction:column; min-height:0; }
  .ai-sequence .key-card .key-frame { flex:1; }
  .ai-sequence .key-card .key-frame-image { flex:1; min-height:0; height:auto; }
  .ai-sequence .key-frame-image canvas { position:absolute; inset:0; }
  .ai-sequence .key-card.has-analysis .key-inline-reports { grid-column:2; grid-row:1/3; min-height:0; overflow:auto; overscroll-behavior:contain; align-content:start; grid-auto-rows:max-content; border-top:0; border-left:1px solid #cad8bd; padding:12px; }
  .ai-sequence .key-card:not(.has-analysis) { grid-template-columns:1fr; }
  .is-compare .ai-sequence .key-filmstrip { height:clamp(230px,30dvh,420px); }
  .is-compare .ai-sequence .key-card { grid-template-columns:minmax(240px,.6fr) minmax(300px,1fr); }
  .is-compare .ai-sequence .key-card.paired .key-card-frames { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .is-compare .ai-sequence .key-card.has-analysis .key-inline-reports { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ai-sequence .key-moment-strip header > span { display:none; }
  .ai-sequence .key-strip-note { display:none; }
}
@media(max-width:900px) {
  .ai-sequence .key-card.has-analysis .key-inline-reports { grid-template-columns:1fr; }
  .ai-sequence .key-inline-analysis { max-height:450px; overflow:auto; overscroll-behavior:contain; }
}
.ai-sequence .key-card .key-frame-results { display:block; }
@media(min-width:901px) {
  .ai-sequence .key-card, .key-portrait:not(.is-compare) .ai-sequence .key-card { grid-template-rows:auto minmax(0,1fr) auto; }
  .ai-sequence .key-frame-results { grid-column:1; grid-row:3; }
  .ai-sequence .key-card.has-analysis .key-inline-reports { grid-row:1/4; }
}
@media(min-width:901px) {
  .screen-ready.has-key-moments.ai-sequence-review.is-compare .video-editor { grid-template-columns:50px minmax(400px,1.1fr) minmax(340px,1fr); grid-template-rows:minmax(0,1fr); }
  .ai-sequence-review.is-compare .video-grid { grid-column:2; }
  .ai-sequence-review.is-compare .drawing-toolbar { grid-row:1; }
  .ai-sequence-review.is-compare .key-moment-strip { grid-column:3; grid-row:1; display:flex; flex-direction:column; min-height:0; }
  .ai-sequence-review.is-compare .ai-sequence .key-filmstrip { height:auto; flex:1; min-height:0; }
  .ai-sequence-review.is-compare .ai-sequence .key-card { grid-template-columns:minmax(0,1fr); grid-template-rows:auto minmax(100px,1fr) auto minmax(100px,1fr); }
  .ai-sequence-review.is-compare .ai-sequence .key-card.has-analysis .key-inline-reports { grid-column:1; grid-row:4; border-left:0; border-top:1px solid #cad8bd; grid-template-columns:1fr; }
  .ai-sequence-review.is-compare .ai-sequence .key-card:not(.has-analysis) { grid-template-rows:auto minmax(0,1fr) auto; }
  .ai-sequence-review.is-compare .ai-controls { flex-wrap:wrap; }
  .ai-sequence-review.is-compare .clip-transport { flex-shrink:0; }
}
/* Narrow desktop windows need the same vertical flow as tablets instead of
   overflowing a forced three-column desktop workspace. */
@media(min-width:901px) and (max-width:1150px) {
  .screen-ready.has-key-moments.ai-sequence-review.is-compare .video-editor { grid-template-columns:50px minmax(0,1fr); grid-template-rows:auto auto; overflow:auto; }
  .ai-sequence-review.is-compare .key-moment-strip { grid-column:2; grid-row:2; min-height:440px; }
  .ai-sequence-review.is-compare .video-grid { min-height:480px; }
}
@media(min-width:901px) {
  .persistent-sidebar.ai-sequence-review.is-compare .clip-view-settings { grid-template-columns:minmax(0,1fr); }
  .persistent-sidebar.ai-sequence-review.is-compare .clip-timing label { flex-direction:column; align-items:stretch; gap:2px; }
  .persistent-sidebar.ai-sequence-review.is-compare .clip-timing select { width:100%; }
  .persistent-sidebar.ai-sequence-review.is-compare .zoom-controls { display:flex; flex-wrap:nowrap; justify-content:space-between; padding:2px 4px; gap:2px; }
  .persistent-sidebar.ai-sequence-review.is-compare .zoom-slider { display:none; }
  .persistent-sidebar.ai-sequence-review.is-compare .clip-playback-buttons { display:grid; grid-template-columns:minmax(32px,1fr) 28px minmax(60px,1.5fr) 28px minmax(32px,1fr); width:100%; gap:2px; }
  .persistent-sidebar.ai-sequence-review.is-compare .clip-playback-buttons button { min-width:0; padding-inline:2px; }
  .ai-sequence-review.is-compare .ai-controls { display:grid; grid-template-columns:minmax(0,1fr) 32px; }
  .ai-sequence-review.is-compare .ai-controls label { grid-column:1; grid-row:1; min-width:0; }
  .ai-sequence-review.is-compare .ai-details { grid-column:2; grid-row:1; }
  .persistent-sidebar.ai-sequence-review.is-compare .timeline-compact>.timeline-focus-controls { grid-column:1/-1; grid-row:1; }
  .persistent-sidebar.ai-sequence-review.is-compare .timeline-compact>.clip-duration { grid-column:1/-1; grid-row:2; }
  .persistent-sidebar.ai-sequence-review.is-compare .timeline-compact>.clip-timeline-row { grid-row:3; }
  .persistent-sidebar.ai-sequence-review.is-compare .timeline-compact>.clip-frame-controls { grid-row:4; }
}
@media(min-width:901px) {
  .persistent-sidebar.ai-sequence-review.is-compare .clip-playback-buttons>button { grid-column:auto; grid-row:1; width:100%; min-width:0; }
}

/* Reference controls stay attached to the footage they affect. The artwork is
   transparent SVG; the player and saved frames share source coordinates. */
.phase-contour-icon{display:block;flex:0 0 26px;width:26px;height:38px;object-fit:contain}
.ai-frame-choices button,.key-review-dialog nav button,.key-card-title{display:flex;align-items:center;gap:6px;text-align:left}
.ai-frame-choices .phase-tab,.key-review-dialog nav .phase-tab{position:relative;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;text-align:center;height:90px;min-height:90px;font-size:15px;padding:3px 2px;line-height:17px;gap:1px;white-space:normal}
.phase-tab-symbol{display:flex;align-items:center;justify-content:center;font-size:15px;height:48px;flex:none}
.phase-tab-symbol>span{position:absolute;top:5px;left:6px;font-weight:700}
.phase-tab .phase-tab-symbol .phase-contour-icon{width:48px;flex-basis:48px;height:48px}
.phase-tab>span:nth-child(2){min-width:0;max-width:100%;min-height:34px;overflow-wrap:anywhere}
.key-review-dialog nav{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px;padding:3px}
@media(max-width:900px){.key-review-dialog nav{grid-template-columns:repeat(4,minmax(0,1fr))}}
.original-checklist .key-feedback-body{font-size:16px;line-height:1.45}
.key-card-title .phase-contour-icon{height:30px;width:22px;flex-basis:22px}
.contour-controls{display:flex;align-items:center;gap:4px;padding:4px;background:#f2f6ec;flex-wrap:wrap;flex-shrink:0;font-size:14px}
.contour-controls button{min-height:32px;font-size:14px;padding:3px 8px;white-space:nowrap;border:1px solid #adbea4;border-radius:5px;background:#fff;color:#244b38}
.contour-controls button[aria-pressed=true]{background:#d4efd9;color:#244b38;border-color:#287249;box-shadow:inset 0 0 0 1px #287249}
.contour-label{font-size:13px;color:#40573e;max-width:100%;overflow-wrap:anywhere}
.contour-player .contour-label:empty{display:none}
.screen-ready.persistent-sidebar .drawing-history .drawing-edit-docked{position:static;font-size:14px;height:auto;min-height:30px;box-shadow:none}
.key-card .moment-actions .key-sync{position:static;flex:none;min-width:40px;padding:3px 4px;min-height:32px;box-shadow:none;border:0;border-top:1px solid #c8d3be;border-left:1px solid #c8d3be;border-radius:0}
.key-card .moment-actions .key-sync:disabled{visibility:visible}
.contour-moving{cursor:move;touch-action:none;outline:2px solid #70efff;outline-offset:-2px}
.key-detail-line{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px}
.contour-dialog{position:relative;width:min(640px,calc(100vw - 24px));max-height:92dvh;overflow:auto;box-sizing:border-box;padding:32px 22px 22px;border:1px solid #b7c7aa;border-radius:12px;background:#fcfdf9;color:#203d2f;font-size:16px;line-height:1.45}
.contour-dialog header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:10px}
.contour-dialog h2{font-size:24px;margin:8px 0}
.contour-close{width:40px;height:40px;font-size:25px}
.contour-dialog p{margin:8px 0 14px}
.contour-club{display:flex;gap:8px;border:0;padding:0;margin:0 0 14px;min-width:0}
.contour-club legend{font-size:16px;font-weight:600;margin-bottom:6px;padding:0}
.contour-club label{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;min-height:44px;border:1px solid #adbea4;border-radius:7px;background:#fff;cursor:pointer;font-size:17px}
.contour-club label:has(input:checked){background:#d4efd9;border-color:#287249;box-shadow:inset 0 0 0 1px #287249;font-weight:600}
.contour-club label:focus-within{outline:2px solid #244b38;outline-offset:2px}
.contour-club input{width:18px;height:18px;margin:0;accent-color:#287249}
.contour-poses{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.contour-poses button{display:flex;flex-direction:column;align-items:center;gap:4px;background:#fff;border:1px solid #b7c7aa;border-radius:7px;font-size:14px;padding:6px 3px;min-height:80px}
.contour-poses button[aria-pressed=true]{border-color:#24744b;background:#e2f0da;box-shadow:inset 0 0 0 1px #24744b}
.contour-poses .phase-contour-icon{height:52px;width:36px;flex-basis:52px}
.contour-current{color:#456143;font-size:15px}
.contour-settings{display:grid;gap:10px}
.contour-settings>label{display:grid;grid-template-columns:100px minmax(80px,1fr) 54px;gap:10px;align-items:center;font-size:16px}
.contour-settings input[type=range]{width:100%;min-width:0;accent-color:#2c7448;min-height:32px}
.contour-settings output{font-variant-numeric:tabular-nums;text-align:right}
.contour-settings input[type=color]{height:34px;width:64px;padding:2px}
.contour-settings>.contour-flip-label{display:flex;gap:8px}
.contour-flip-label input{width:20px;height:20px;accent-color:#2c7448}
.contour-dialog footer{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;align-items:center}
.contour-dialog footer button,.contour-dialog footer a{font-size:15px;padding:8px 10px;border-radius:6px;min-height:38px}
.contour-move{background:#285d42;color:white;border:1px solid #285d42}
@media(max-width:600px){.contour-dialog{padding:30px 14px 16px}.contour-settings>label{grid-template-columns:86px minmax(50px,1fr) 42px;gap:6px}.ai-frame-choices button{font-size:15px}.contour-player .contour-label{display:none}}
.timeline-moments button[aria-current=true]{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--moment-color);z-index:2}
.contour-poses[hidden]{display:none}
/* The display buttons belong beside the picture, within its tool rail. */
.contour-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:3px;padding:0;align-content:start}
.contour-controls>button{box-sizing:border-box;width:100%;min-width:0;height:36px;min-height:36px;font-size:14px;padding:4px 2px;line-height:1}
.contour-controls>.contour-label{display:none}
.key-frame-surface{display:grid;grid-template-columns:minmax(0,1fr) 64px;min-height:0;flex:1}
.key-frame-surface>.contour-controls{grid-column:2;grid-row:1;padding:4px;border-left:1px solid #cad8bd;align-self:stretch}
.key-frame-surface>.key-frame{grid-column:1;grid-row:1}
.key-review-panel>h3{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.key-review-panel>h3 .key-source{margin-left:auto}
.key-review-panel>h3 .contour-controls{padding:0}
.key-card-title>span{min-width:0;white-space:normal;overflow-wrap:normal}
@media(min-width:901px){
  .ai-sequence-review.is-compare .ai-sequence .key-card{grid-template-rows:32px minmax(180px,1fr) auto minmax(90px,.8fr)}
  .ai-sequence-review.is-compare .ai-sequence .key-card-title{min-height:32px;padding:2px 6px}
  .ai-sequence-review.is-compare .key-card-title .phase-contour-icon{height:24px}
  .ai-sequence-review.is-compare .key-moment-strip>header{gap:6px}
  .ai-sequence-review.is-compare .key-moment-strip>header h2{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .is-compare .contour-player .contour-label{display:none}
}
/* Paired adjustment fields fit the complete settings on a phone without
   shrinking labels or separating the placement controls from each other. */
.contour-dialog{max-width:640px}
.contour-settings{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}
.contour-settings>label{grid-template-columns:minmax(0,1fr) auto;gap:0 6px;align-items:center}
.contour-settings input:not([type=checkbox]){grid-column:1/-1;grid-row:2}
.contour-settings output{grid-column:2;grid-row:1}
.contour-settings>.contour-flip-label{grid-column:1/-1}
.contour-dialog footer{padding:0;max-width:none;justify-content:flex-start;margin:14px 0 0}
@media(max-width:600px){
  .contour-dialog header{margin-top:0}.contour-dialog h2{font-size:22px}
  .contour-poses .phase-contour-icon{height:42px;flex-basis:42px}
  .contour-poses button{min-height:74px;padding:4px 2px}
  .contour-settings{gap:7px 12px}
  .contour-dialog footer button,.contour-dialog footer a{padding:6px 8px}
}

/* One permanent rail groups display tools and outline placement. */
.contour-surface{display:contents}
.screen-ready .video-card.contour-equipped{display:grid;grid-template-columns:minmax(0,1fr) 116px;grid-template-rows:auto minmax(204px,1fr) auto auto;container:clip-player / inline-size}
.contour-equipped>.video-top{grid-column:1/-1;grid-row:1}
.screen-ready .contour-equipped .stage{grid-column:1;grid-row:2;min-width:0;min-height:190px;width:auto;height:auto}
.contour-equipped>.clip-view-settings{grid-column:1;grid-row:3;min-width:0}
.screen-ready.persistent-sidebar .video-card.contour-equipped>.clip-transport{grid-column:1/-1;grid-row:4;padding-block:0;row-gap:0}
.screen-ready.persistent-sidebar .video-card.contour-equipped .ai-controls{margin-top:0;padding-block:2px 0;gap:2px}
.contour-equipped .contour-rail{grid-column:2;grid-row:2/4}
.contour-rail{display:flex;flex-direction:column;box-sizing:border-box;width:116px;min-width:116px;min-height:340px;padding:4px;gap:4px;background:#f1f6eb;color:#25452f;border-left:1px solid #c3d3b6;font-size:14px;line-height:1.2;z-index:4}
.contour-rail[hidden]{display:none}
.contour-rail[data-enabled=false] .contour-transforms,.contour-rail[data-enabled=false] .contour-position{opacity:.5}
.contour-transforms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;flex:1 1 212px;min-height:212px;max-height:360px}
.contour-transform{display:grid;grid-template-rows:18px 28px minmax(104px,1fr) 28px 26px;justify-items:center;gap:2px;font-size:14px;color:inherit;min-height:0}
.contour-transforms input[type=range]{writing-mode:vertical-lr;direction:rtl;width:36px;min-width:0;height:100%;min-height:104px;padding:0;accent-color:#2b7346}
.contour-transform>span:last-child{display:flex;align-items:center;justify-content:center;width:100%;font-size:14px}
.contour-transforms input[type=number]{width:40px;min-width:0;box-sizing:border-box;padding:3px 0;border:1px solid #adbea4;border-radius:4px;font:14px 'DM Sans',sans-serif;text-align:center;appearance:textfield;background:#fff;color:#23462e}
.contour-transforms input::-webkit-inner-spin-button,.contour-transforms input::-webkit-outer-spin-button{appearance:none;margin:0}
.contour-transform>button{font-size:23px;line-height:1;padding:0;width:36px;min-height:28px;border:1px solid #adbea4;border-radius:4px;background:#fff;color:#25452f}
.contour-transform>button:disabled{opacity:.4}
.contour-position{display:grid;gap:3px;justify-items:center;margin-top:0;flex:none;width:100%}
.contour-nudges{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:28px 30px;gap:3px;width:100%}
.contour-nudges button{font-size:19px;line-height:1;padding:2px;min-height:28px;min-width:0;border:1px solid #adbea4;border-radius:4px;background:white;color:#25452f}
.contour-nudges button:nth-child(1){grid-column:2;grid-row:1}
.contour-nudges button:nth-child(2){grid-column:1;grid-row:1}
.contour-nudges button:nth-child(3){grid-column:1/-1;grid-row:2;font-size:14px;white-space:nowrap}
.contour-nudges button:nth-child(4){grid-column:4;grid-row:1}
.contour-nudges button:nth-child(5){grid-column:3;grid-row:1}
.contour-nudges .contour-drag[aria-pressed=true]{color:white;background:#2b7346;border-color:#2b7346}
.screen-ready.persistent-sidebar .video-card.contour-equipped>.clip-view-settings{display:flex;flex-wrap:wrap;align-items:flex-start;gap:2px 8px;padding:3px;box-sizing:border-box}
.screen-ready.persistent-sidebar .video-card.contour-equipped .clip-timing{flex:1 1 160px;min-width:0;max-width:240px;padding:0;gap:4px;border:0}
.screen-ready.persistent-sidebar .video-card.contour-equipped .clip-timing label{flex-direction:column;align-items:stretch;gap:2px}
.screen-ready.persistent-sidebar .video-card.contour-equipped .clip-timing select{width:100%}
.screen-ready.persistent-sidebar .video-card.contour-equipped .zoom-controls{display:grid;flex:1 1 148px;min-width:0;max-width:216px;width:auto;grid-template-columns:32px minmax(0,1fr) 32px;grid-template-rows:22px 32px;padding:0;gap:2px 4px;border:0;background:transparent}
.screen-ready.persistent-sidebar .video-card.contour-equipped .zoom-label{grid-column:1;grid-row:1}
.screen-ready.persistent-sidebar .video-card.contour-equipped .zoom-value{grid-column:2;grid-row:1;justify-self:center}
.screen-ready.persistent-sidebar .video-card.contour-equipped .zoom-fit{grid-column:3;grid-row:1;min-width:28px;padding:0}
.screen-ready.persistent-sidebar .video-card.contour-equipped .zoom-out{grid-column:1;grid-row:2}
.screen-ready.persistent-sidebar .video-card.contour-equipped .zoom-slider{display:block;grid-column:2;grid-row:2;width:100%;min-width:0;max-width:136px;margin:0;height:32px}
.screen-ready.persistent-sidebar .video-card.contour-equipped .zoom-in{grid-column:3;grid-row:2}
/* Share the whole footer when both groups fit. Narrow paired players keep the
   settings below their picture so the permanent outline rail stays usable. */
@container clip-player (min-width:322px){
  .screen-ready.persistent-sidebar .video-card.contour-equipped>.clip-view-settings{grid-column:1/-1}
  .contour-equipped .contour-rail{grid-row:2}
}
@media(min-width:1151px){
  .screen-ready.has-key-moments.ai-sequence-review.is-compare.outline-tools-ready .video-editor{grid-template-columns:50px minmax(500px,1.45fr) minmax(310px,1fr)}
}
@media(max-width:900px){
  .studio.persistent-sidebar.outline-tools-ready{grid-template-rows:auto auto auto auto auto}
  .screen-ready.outline-tools-ready .video-editor .video-grid{height:auto;min-height:440px}
  .screen-ready .contour-equipped .stage{min-height:220px}
}
@media(max-width:700px){
  .screen-ready .video-editor .video-grid.compare{grid-template-columns:minmax(0,1fr);height:auto}
}
.outline-tools-ready .stage .video-brand img{display:none}
.contour-surface .stage.contour-moving{cursor:move}

/* The saved frame owns its overlay switch; reports stay in the workspace. */
.key-card-heading{display:flex;align-items:center;gap:6px;min-width:0;padding:4px 6px;background:color-mix(in srgb,var(--moment-color) 90%,#000);color:#fff}
.ai-sequence .key-card-heading{grid-column:1;grid-row:1}
.ai-sequence .key-card-heading .key-card-title{flex:1;min-width:0;width:auto;min-height:0;margin:0;padding:0;font-size:16px;line-height:1.25;background:transparent;cursor:default}
@media(min-width:901px){.ai-sequence-review.is-compare .ai-sequence .key-card{grid-template-rows:auto minmax(180px,1fr) auto minmax(90px,.8fr)}}

/* Each phone player is now full width. Keep time jumps at the outer edges
   of one transport row, with a labeled Speed control beside Analyze. */
.screen-ready.persistent-sidebar .video-card .clip-playback-buttons{display:grid;grid-template-columns:minmax(42px,1fr) 30px minmax(70px,1.3fr) 30px minmax(42px,1fr);width:100%;gap:3px}
.screen-ready.persistent-sidebar .video-card .clip-playback-buttons>button{grid-column:auto;grid-row:1;width:100%;min-width:0;padding-inline:2px}
.screen-ready.persistent-sidebar .video-card .clip-transport .clip-speed-label{display:flex;flex:none;width:auto;margin-left:auto;font-size:14px;gap:4px;white-space:nowrap}
.persistent-sidebar .common-player .analysis-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px;max-width:100%}
.screen-ready .original-controls:not([hidden]){display:flex!important;flex-wrap:wrap;justify-content:flex-start;gap:6px 10px}
.original-controls .method-label{font-size:14px;font-weight:650}
.original-controls .ai-details{margin-left:auto}

/* One icon and one sentence per finding, like the original review. */
.original-checklist .key-feedback{padding:5px 0;border:0;gap:7px;align-items:flex-start}
.original-checklist .key-feedback-body{display:inline;margin:0;font-size:16px;line-height:1.4}
.original-checklist .key-feedback-icon{background:transparent;width:18px;height:23px;border-radius:0}
.original-checklist .key-feedback-text{min-width:0;font-size:16px;line-height:1.4}
.original-checklist .feedback-status{font-weight:700}
.original-checklist .key-feedback-good .feedback-status{color:#256842}
.original-checklist .key-feedback-check .feedback-status{color:#83500a}
.key-measurements{margin-top:14px}
.key-measurements>summary{font-size:14px;min-height:34px;padding:6px 0;cursor:pointer;color:#365b46}
.key-analysis-empty,.key-analysis-limitation{font-size:14px;line-height:1.35;color:#53664f}
.key-analysis-empty{margin:0;padding:6px 8px;background:#f6f8f2;flex:none}
.key-analysis-limitation{margin:10px 0 0}
.key-phase-notes{margin-top:14px;padding-top:12px;border-top:1px solid #cad8bd;color:#405a49}
.key-phase-notes h4{font-size:14px;font-weight:650;margin:0 0 6px}
.key-phase-notes p{font-size:16px;line-height:1.4;margin:6px 0 0}
.key-phase-notes[hidden]{display:none!important}
.key-analysis-empty[hidden],.key-analysis-limitation[hidden],.key-inline-analysis[hidden],.moment-analysis-toggle[hidden],.key-frame-results[hidden]{display:none!important}
.original-checklist .key-next-step{font-size:15px;margin:10px 0 0;padding:8px 10px}

/* A missing or closed report never resizes the picture or moves its controls. */
.ai-sequence .key-card .moment-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;height:36px;flex:none}
.ai-sequence .key-card .moment-actions button{min-height:36px;height:36px}
.moment-analysis-slot{display:flex;min-width:0}
.moment-analysis-slot .moment-analysis-toggle{width:100%}
.ai-sequence .key-card .key-inline-reports{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0;min-height:160px;padding:12px;border-top:1px solid #cad8bd}
.ai-sequence .key-card .key-report-slot{min-width:0}
.ai-sequence .key-card .key-analysis-empty{padding:0;background:transparent;margin:0;max-width:42ch}
.ai-sequence .key-card .key-frame-results[hidden]{display:block!important;visibility:hidden}
@media(min-width:901px){
  .screen-ready.has-key-moments .ai-sequence .key-card{grid-template-columns:minmax(120px,.65fr) minmax(240px,1fr);grid-template-rows:52px minmax(0,1fr) 70px}
  .screen-ready .ai-sequence .key-card .key-inline-reports{grid-column:2;grid-row:1/4;min-height:0;overflow:auto;overscroll-behavior:contain;align-content:start;grid-auto-rows:max-content;border-top:0;border-left:1px solid #cad8bd}
  .screen-ready.is-compare.has-key-moments .ai-sequence .key-card{grid-template-columns:minmax(0,1fr);grid-template-rows:52px minmax(180px,1fr) 70px minmax(90px,.8fr)}
  .screen-ready.is-compare.has-key-moments .ai-sequence .key-card .key-inline-reports{grid-column:1;grid-row:4;border-left:0;border-top:1px solid #cad8bd;grid-template-columns:repeat(2,minmax(0,1fr))}
  .screen-ready.is-compare.has-key-moments .ai-sequence .key-card[data-result-count="1"] .key-inline-reports{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:900px){
  .ai-sequence .key-card .key-inline-reports{height:280px;min-height:280px;overflow:auto;overscroll-behavior:contain;align-content:start}
  .ai-sequence .key-inline-analysis{max-height:none;overflow:visible}
  .ai-sequence .key-card-heading{height:52px;box-sizing:border-box}
}
