:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#292d39;background:#f3f0e9;font-size:16px;font-synthesis:none;--accent:#b44727;--line:#dedbd4;--muted:#606570;--surface:#fbfaf7}header{flex-wrap:wrap}.brand{flex-wrap:wrap;min-width:0}.brand-mark{flex-shrink:0;min-width:1.36em;min-height:1.55em;line-height:1}.actions{flex-wrap:wrap}.actions>button{min-width:min(100%,9em)}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer;touch-action:manipulation}button{min-height:44px;min-width:44px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:#f5f3ee;color:inherit;font-weight:600;line-height:1.4}button:hover{background:#ece8e0}button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:not-allowed}button[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:-3px;background:#f9e9df}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #2b5c89;outline-offset:3px}input:not([type=checkbox]):not([type=range]){min-height:48px;max-width:100%;border:1px solid #a7a7a3;border-radius:8px;background:#fff;padding:10px;color:inherit}input[type=checkbox]{width:22px;height:22px;flex-shrink:0;accent-color:var(--accent)}input[type=range]{height:44px;accent-color:var(--accent);min-width:0}main{max-width:560px;margin:0 auto;background:var(--surface);min-height:100dvh;padding:0 20px max(24px,env(safe-area-inset-bottom));overflow-wrap:anywhere}header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:72px;padding-top:env(safe-area-inset-top)}.brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--accent);font-size:22px;font-weight:700;min-height:44px}.brand-mark{display:grid;place-items:center;background:var(--accent);color:#fff;width:30px;height:34px;border-radius:12px 12px 4px;font-style:italic}.topline{font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:10px;padding:0 0 16px;border-bottom:1px solid var(--line)}h1{font-size:28px;line-height:1.35;letter-spacing:-.04em;margin:8px 0 12px;white-space:pre-line;text-wrap:balance}h2{font-size:20px;line-height:1.4;margin:4px 0 8px;letter-spacing:-.025em}p{line-height:1.65;margin:10px 0}section{margin:20px 0}.intro{padding:10px 0 0}.intro>p:last-child{color:var(--muted)}.eyebrow{color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.06em;margin:0}.primary{background:var(--accent);border-color:var(--accent);color:#fff}.primary:hover{background:#95391e}.full{width:100%;margin:6px 0}.inline{display:flex;gap:8px;margin:8px 0}.inline input{min-width:0;flex:1}.muted{color:var(--muted);font-size:13px;line-height:1.65}.capture-box{background:#f3f0e9;border:1px solid var(--line);border-radius:16px;padding:12px}.capture-guide{text-align:center;padding:8px}.capture-guide svg{display:block;margin:0 auto 10px;height:150px;max-width:100%;stroke:var(--accent);stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round}.capture-guide p{font-size:13px;color:var(--muted)}.capture-guide strong{font-size:15px}.actions{display:flex;gap:8px}.actions>button{flex:1}.file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.preview,.camera{width:100%;max-height:45dvh;display:block;background:#262b35;border-radius:8px;object-fit:contain;margin-bottom:10px}.settings{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 12px}.settings>p{grid-column:1/-1}.target-row{display:flex;align-items:center;gap:8px}.target-row input{width:86px;font-variant-numeric:tabular-nums}.consent{display:flex;gap:12px;align-items:flex-start;line-height:1.6;min-height:44px;cursor:pointer;font-size:14px;padding:8px 0}.error{padding:14px;border:1px solid #af2b3d;border-radius:8px;background:#f9e9ec;color:#8a2030;margin:16px 0;line-height:1.6}.review-heading{margin:16px 0 12px}.review-heading h1{font-size:23px}.review-heading p:last-child{font-size:13px;color:var(--muted);margin:6px 0}.video-review{margin:0 -8px}.stage{position:relative;background:#262b35;max-height:52dvh;border-radius:12px;overflow:hidden;margin:auto}.stage video,.stage canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.stage canvas{pointer-events:none}.transport{display:flex;align-items:center;gap:8px;margin-top:4px}.transport button{border:0;background:transparent}.transport input{flex:1}.transport>span{font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}.video-tools{display:flex;gap:8px;justify-content:flex-end}.video-tools button{font-size:13px;padding:8px 12px}.rep-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(75px,1fr));gap:8px;margin:16px 0}.rep{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;font-variant-numeric:tabular-nums}.rep strong{font-size:17px}.rep span{font-size:14px}.rep small{font-size:11px;font-weight:500}.rep.fast{background:#fae9ec;border-color:#b64b5b;color:#9a2436}.rep.target{background:#e9f0f6;color:#285779}.rep.slow{background:#f6efe0;color:#795318}.rep.unmeasurable{background:#eeefef;color:#555b64}.rep[aria-pressed=true]{outline-color:currentColor;outline-width:3px}.advice{border-top:1px solid var(--line);padding-top:16px;margin:16px 0}.partial{background:#f0ede2;padding:10px;font-size:13px}.advice h2{margin-top:6px}.advice>p:not(.eyebrow):not(.muted){margin-bottom:6px}details{border-top:1px solid var(--line);margin:20px 0 8px;padding-top:6px}summary{min-height:48px;display:list-item;align-content:center;font-size:14px;font-weight:600;padding:10px 4px}.signal{width:100%;height:auto;color:var(--accent);background:#f4eee5;border-radius:8px}.history{padding:0;list-style:none}.history li{margin:8px 0}.history button{width:100%;text-align:left;font-size:13px}.text-button,.back{background:transparent;border-color:transparent;color:var(--accent)}.back{margin:12px 0}.practice h1{font-size:32px}.beat-display{height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#f5e6d9;border:1px solid #ddbd9f;border-radius:50% 50% 12px 12px;margin:28px 0}.beat-display strong{font-size:40px;color:var(--accent);font-variant-numeric:tabular-nums}.beat-display span{font-size:13px}.tabs{display:flex;gap:8px;margin:12px 0}.tabs button{flex:1}.compare-values{display:grid;grid-template-columns:1fr 1fr;gap:16px}.compare-values>section{border-bottom:1px solid var(--line);padding-bottom:10px}.compare-values h2{font-size:16px}.compare-values strong{font-size:26px;color:var(--accent);font-variant-numeric:tabular-nums}.compare-values p{font-size:13px}.entry{padding:16px;background:#f3f0e9;border-radius:12px}footer{text-align:center;color:var(--muted);font-size:12px;border-top:1px solid var(--line);padding-top:20px;margin-top:28px}@media(max-width:360px){main{padding-left:16px;padding-right:16px}h1{font-size:25px}.settings{grid-template-columns:1fr}.settings .target-row{margin-top:6px}.rep-list{grid-template-columns:repeat(auto-fit,minmax(72px,1fr))}.video-tools button{padding:8px}.transport{gap:4px}.practice h1{font-size:28px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.demo-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#f3f0e9}.demo-card>img{width:100%;height:200px;object-fit:contain;background:#262b35;display:block}.demo-card>div{padding:16px}.demo-card h2{margin-top:6px}.demo-card .muted{margin:8px 0}.demo-card .full{margin:4px 0}:root{--ink:#292d39;--accent-soft:#f6e7dc;--blue:#285779;--paper:#fbfaf7}body{background:#eeeae3}a{color:var(--accent);text-underline-offset:3px}button,select,input{font-size:1rem}button{transition:background-color .15s,border-color .15s}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #2b5c89;outline-offset:3px}button:disabled{transform:none}select{color:var(--ink)}main{max-width:720px;padding-inline:28px}.brand{color:var(--ink);letter-spacing:-.04em}.brand-mark{background:var(--accent);border-radius:8px;min-height:34px}.primary{font-weight:600}.eyebrow{letter-spacing:.1em}h1,h2{font-weight:600}h1{letter-spacing:-.045em}.muted{font-size:.875rem}footer{font-size:.8125rem}.rep small{font-size:.75rem}.rep-list{grid-template-columns:repeat(auto-fit,minmax(88px,1fr))}.rep{padding:12px 6px}.partial{border-left:3px solid #bc7b2d;background:#faf0dd;color:#674819;border-radius:4px;padding:12px 16px;font-size:.875rem}.error{background:#fff0ed}.stage{background:#262b35}.live-entry{background:#292d39;color:#fbfaf7;padding:32px;border-radius:18px;margin-top:24px}.live-entry .eyebrow{color:#ffc18c}.live-entry h2{font-size:clamp(2rem,5vw,2.8rem);line-height:1.13;letter-spacing:-.045em;margin:14px 0}.live-entry p:not(.eyebrow){color:#dadbe0;line-height:1.7}.live-entry .primary{margin-top:14px;background:#f4b17d;color:#292d39;border-color:#f4b17d}.live-entry .primary:hover{background:#ffc89e}.demo-card{display:grid;grid-template-columns:160px 1fr;background:#f4f1eb;border-radius:12px}.demo-card>img{height:100%;min-height:220px;object-fit:cover}.demo-card>div{padding:20px}.entry{border:1px solid var(--line);background:transparent}.intro h1{font-size:1.75rem}.back:hover{background:#eee9e0}.live-shell{max-width:1120px;padding:0 40px max(24px,env(safe-area-inset-bottom))}.practice-header{min-height:84px;border-bottom:1px solid var(--line);gap:8px}.practice-header .back{color:var(--ink);margin:0;padding-left:0;font-size:.875rem}.library-link{border:0;background:transparent;font-size:.875rem;font-weight:500;padding-right:0}.library-link span{margin-left:6px;background:#eee9e0;padding:5px 8px;border-radius:6px;font-size:.75rem;font-variant-numeric:tabular-nums}.practice-steps{display:flex;list-style:none;margin:24px 0 30px;padding:0;gap:28px;color:var(--muted);font-size:.8125rem}.practice-steps li{display:flex;gap:7px;align-items:center}.practice-steps span{font-size:.6875rem;line-height:24px;font-variant-numeric:tabular-nums;border:1px solid var(--line);border-radius:50%;width:25px;text-align:center}.practice-steps [aria-current=step]{color:var(--ink);font-weight:600}.practice-steps [aria-current=step] span{background:var(--accent);color:#fff;border-color:var(--accent)}.practice-title{display:flex;align-items:center;justify-content:space-between;gap:16px}.practice-title h1{font-size:clamp(1.75rem,3.5vw,2.5rem);margin:8px 0;line-height:1.16}.practice-title .eyebrow{font-size:.6875rem}.privacy-tag{border:1px solid var(--line);border-radius:30px;padding:7px 12px;white-space:nowrap;font-size:.75rem;color:var(--muted)}.practice-description{margin:8px 0 0;color:var(--muted)}.practice-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:36px;margin:28px 0 24px}.practice-visual,.practice-controls{min-width:0}.framing-guide{background:#f2eee6;border:1px solid #e5dfd4;border-radius:16px;margin:0;padding:24px}.guide-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.section-number{font-size:.625rem;font-weight:700;letter-spacing:.12em;color:#706251}.guide-label{font-size:.6875rem;color:#706251}.framing-illustration{width:100%;height:auto;display:block;margin:12px 0 16px;fill:none;stroke-linecap:round;stroke-linejoin:round}.sight-line{stroke:#ddc4ac;stroke-width:1.5;stroke-dasharray:4 6}.floor-line{stroke:#d3c8b7;stroke-width:1.5}.guide-phone{stroke:#454754;stroke-width:2.5;fill:#fbfaf7}.phone-detail{stroke:#454754;stroke-width:2}.frame-corners{stroke:#b44727;stroke-width:2}.guide-person{stroke:#454754;stroke-width:5}.guide-person:first-of-type{fill:#454754}.guide-joint{fill:#d07449;stroke:#fbfaf7;stroke-width:2}.distance-line{stroke:#b4a58f;stroke-width:1.5}.framing-guide h2{font-size:1.25rem;margin:0}.framing-guide>p{font-size:.875rem;color:#686155;margin:10px 0 18px;line-height:1.6}.framing-checks{display:flex;gap:16px;border-top:1px solid #ddd5c7;padding-top:16px}.framing-checks span{font-size:.6875rem;white-space:nowrap;display:flex;gap:6px;align-items:center}.framing-checks b{color:var(--accent);font-size:.6875rem}.setup-options{margin:0}.section-heading{margin:0 0 8px}.section-heading h2{font-size:1.25rem;margin:4px 0 0}.live-settings{margin:0;display:grid;gap:0}.live-settings label{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:16px 0}.live-settings label>span{font-size:.9375rem;font-weight:600}.live-settings small,.sound-option small{display:block;color:var(--muted);font-size:.75rem;font-weight:400;line-height:1.5;margin-top:4px}.live-settings select{min-height:46px;max-width:52%;border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px;font-size:.875rem}.camera-options{padding:16px 0;border-bottom:1px solid var(--line)}.camera-option-label{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;font-size:.875rem;font-weight:600}.camera-option-label small{font-size:.6875rem;color:var(--muted);font-weight:400}.camera-options .actions>button{font-size:.8125rem;padding:8px;min-width:0}.sound-option{justify-content:space-between;align-items:center;padding:16px 0;gap:20px}.sound-option strong{font-size:.9375rem;font-weight:600}.sound-option input{width:24px;height:24px}.practice-action{margin-top:6px}.practice-action .primary{min-height:52px;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:16px}.practice-action>p{font-size:.75rem;color:var(--muted);text-align:center;margin:6px 0}.setup-footnote{text-align:center;font-size:.6875rem;color:var(--muted);margin:10px 0 0}.session-library{scroll-margin-top:20px;margin-top:28px;padding-top:8px}.session-library summary{font-size:.875rem}.library-empty{padding:24px;background:#f2eee6;border-radius:10px}.library-empty strong{font-size:1rem}.library-empty p{font-size:.875rem;color:var(--muted);margin:8px 0 0}.history li{display:flex;gap:8px;padding:8px 0}.history li>button:first-child{flex:1}.history li>button:last-child:not(:first-child){width:auto;color:#a53228}.practice-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left;margin-top:20px;padding-top:16px}.practice-footer>span{color:var(--ink);font-size:.75rem;white-space:nowrap;font-weight:600}.practice-footer p{font-size:.6875rem;margin:0;max-width:360px}.capture-stage{max-height:none;width:100%;border:1px solid #262b35;isolation:isolate}.capture-stage[hidden]{display:none}.live-stage.mirrored video,.live-stage.mirrored canvas{transform:scaleX(-1)}.camera-badges{position:absolute;z-index:2;top:14px;left:14px;right:14px;display:flex;justify-content:space-between;gap:8px;pointer-events:none}.camera-badge{display:flex;align-items:center;gap:6px;color:#fff8f0;background:#292d39e8;padding:7px 10px;border-radius:20px;font-size:.6875rem;font-variant-numeric:tabular-nums}.camera-badge i{width:6px;height:6px;background:#ffc18c;border-radius:100%}.recording-badge i{background:#ff8e77}.camera-footer{position:absolute;bottom:0;left:0;right:0;background:#292d39ed;color:#fff8f0;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;font-variant-numeric:tabular-nums}.camera-footer>span:first-child{font-size:1.6rem;font-weight:600}.camera-footer small{font-size:.75rem;font-weight:400}.camera-footer>span:last-child{font-size:.75rem}.camera-caption{font-size:.75rem;color:var(--muted);margin:8px 0 0}.live-placeholder{position:absolute;inset:40px 16px;display:grid;place-items:center;color:#fff8f0;text-align:center}.live-feedback{margin:0}.live-cue{min-height:0;border-left:3px solid var(--accent);padding:0 0 0 16px}.live-cue>span{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:.6875rem;color:var(--accent);font-weight:700}.live-cue strong{display:block;font-size:1.5rem;line-height:1.3;margin-top:8px;letter-spacing:-.025em}.live-feedback>.muted{font-size:.8125rem;margin:12px 0 20px}.tracking-paused .live-cue{border-color:#a67522}.tracking-paused .live-cue>span{color:#855e1c}.live-metrics{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:#f2eee6;border-radius:10px;padding:16px}.live-metrics>div+div{border-left:1px solid #d9d2c8;padding-left:20px}.live-metrics span,.live-metrics small{font-size:.6875rem;display:block;color:var(--muted)}.live-metrics strong{font-size:2rem;letter-spacing:-.04em;font-variant-numeric:tabular-nums;display:block;margin:5px 0}.live-metrics strong small{display:inline;font-size:1rem;margin-left:3px}.live-rep-strip{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}.rep-chip{display:flex;gap:6px;padding:7px 9px;border:1px solid var(--line);border-radius:6px;font-size:.6875rem;font-variant-numeric:tabular-nums}.rep-chip.fast{color:#9a2436;background:#fae9ec;border-color:#d9a2ab}.rep-chip.target{color:#285779;background:#e9f0f6;border-color:#adbfcc}.rep-chip.slow{color:#795318;background:#f6efe0}.rep-chip.unmeasurable{color:#555b64;background:#eeefef}.stop-recording{background:var(--ink);border-color:var(--ink)}.stop-recording:hover{background:#404553}.review-save-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;background:#f6e7dc;border:1px solid #e6c5ad;border-radius:12px;margin:24px 0}.review-save-bar strong{font-size:.9375rem}.review-save-bar span{display:block;font-size:.8125rem;color:var(--muted);margin-top:4px}.review-save-bar button{font-size:.875rem}.review-save-bar .actions{flex-wrap:nowrap}.saved-review{max-width:760px;margin:24px auto}.saved-review h2{font-size:1.5rem}.review-stats{display:grid;grid-template-columns:repeat(3,1fr);margin:20px 0;border-block:1px solid var(--line);padding:16px 0;gap:16px}.review-stats>div+div{border-left:1px solid var(--line);padding-left:16px}.review-stats span{display:block;font-size:.75rem;color:var(--muted)}.review-stats strong{font-size:1.75rem;font-variant-numeric:tabular-nums;display:block;margin-top:6px;letter-spacing:-.04em}.review-stats small{font-size:.8125rem;color:var(--muted);font-weight:400;letter-spacing:0}.saved-review .stage{max-height:62dvh}.saved-review .actions{margin-top:12px}.saved-review .rep-list{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.saved-review .rep{gap:7px}.saved-review .rep small{line-height:1.4}.saved-review .stage video{pointer-events:auto}@media(min-width:900px){.camera-layout{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}.camera-layout .practice-visual{position:sticky;top:24px;align-self:start}}@media(max-width:700px){main{padding-inline:20px}.live-shell{padding-inline:20px}.practice-header{min-height:64px}.practice-steps{margin:18px 0 24px;gap:24px}.privacy-tag{display:none}.practice-title h1{font-size:1.875rem}.practice-description{font-size:.875rem;line-height:1.6;max-width:340px}.practice-layout{grid-template-columns:1fr;gap:22px;margin-top:22px}.framing-guide{padding:18px}.framing-illustration{width:100%;max-height:190px;margin:0 auto 8px}.framing-guide h2{font-size:1.125rem}.framing-guide>p{font-size:.8125rem;line-height:1.6;margin:6px 0 14px}.framing-checks{justify-content:space-between;gap:8px;padding-top:12px}.framing-checks span{font-size:.625rem}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-direction:row-reverse}.section-heading h2{font-size:1.125rem}.live-settings label{padding:14px 0}.camera-option-label small{font-size:.625rem}.practice-footer{display:block}.practice-footer p{margin:6px 0 0}.camera-layout{gap:20px}.is-active .practice-steps{margin-bottom:16px}.is-active .practice-title h1{font-size:1.625rem}.live-cue strong{font-size:1.25rem}.camera-badges{left:10px;right:10px;top:10px}.camera-footer{padding:8px 12px}.review-save-bar{flex-direction:column;align-items:stretch;padding:16px;gap:14px}.review-save-bar .actions{flex-wrap:wrap}.review-save-bar .actions>button{min-width:0}.review-stats{gap:10px}.review-stats>div+div{padding-left:10px}.review-stats strong{font-size:1.5rem}.review-stats span{font-size:.6875rem}.live-entry{padding:24px}.demo-card{grid-template-columns:110px 1fr}.demo-card>div{padding:16px}.demo-card h2{font-size:1.125rem}.demo-card>img{object-position:48% center}.setup-footnote{font-size:.75rem}.section-number{font-size:.6875rem}}@media(max-width:360px){.live-shell,main{padding-inline:16px}.practice-header .back,.library-link{font-size:.75rem}.practice-steps{gap:20px}.practice-title h1{font-size:1.7rem}.live-settings label{gap:8px}.live-settings label>span{font-size:.875rem}.live-settings small{font-size:.6875rem}.framing-guide{padding:14px}.guide-label{font-size:.625rem}.guide-heading{gap:6px}.demo-card{grid-template-columns:1fr}.demo-card>img{height:160px;min-height:0;object-fit:contain}}@media(max-width:700px){.live-practice:has(.practice-action){padding-bottom:110px}.practice-steps{margin:14px 0 20px}.practice-layout{margin-top:18px}.practice-description{margin-top:6px}.framing-guide{display:grid;grid-template-columns:116px 1fr;column-gap:16px;align-items:center;padding:16px}.guide-heading{grid-column:1/-1;margin-bottom:12px}.framing-illustration{grid-column:1;grid-row:2/4;height:128px;max-height:none;margin:0;width:130px;transform:translate(-8px)}.framing-guide h2{grid-column:2;align-self:end;font-size:1rem;margin:0 0 4px}.framing-guide>p{grid-column:2;align-self:start;font-size:.75rem;margin:0 0 12px}.framing-checks{grid-column:1/-1}.practice-action{position:fixed;bottom:0;left:0;right:0;padding:10px 20px max(10px,env(safe-area-inset-bottom));background:#fbfaf7;z-index:10;border-top:1px solid var(--line);box-shadow:0 -4px 16px #292d3909;display:flex;flex-wrap:wrap;gap:0 8px;margin:0}.practice-action>.primary{flex:1;width:auto;margin:0}.practice-action>button:not(.primary){width:auto;max-width:43%;font-size:.8125rem;margin:0}.practice-action>p{flex-basis:100%;margin:6px 0 0;font-size:.6875rem}.setup-footnote{text-align:left;margin-top:8px}.camera-layout .practice-controls{display:flex;flex-direction:column}.live-feedback{order:-1}}@media(max-width:360px){.framing-guide{grid-template-columns:100px 1fr;gap:10px;padding:12px}.framing-illustration{width:116px;height:120px}.practice-action{padding-inline:16px}.practice-action>button{font-size:.875rem}.practice-steps{gap:18px}}.live-entry h2{font-size:1.75rem;line-height:1.2}.intro{margin-top:24px}.intro h1{white-space:normal}.live-entry{margin:24px 0}.live-entry p:not(.eyebrow){font-size:.9375rem}.live-settings{grid-template-columns:minmax(0,1fr)}.live-settings label,.live-settings label>span,.live-settings select{min-width:0}.live-settings label>span{flex:1}.live-settings select{flex:0 1 52%}.framing-checks{flex-wrap:wrap}@media(max-width:700px){.live-practice:has(.practice-action){padding-bottom:calc(5rem + 36px + env(safe-area-inset-bottom))}}.practice-steps{flex-wrap:wrap;gap:12px 24px}.practice-steps li{flex-shrink:0}.practice-steps span{flex-shrink:0;width:2.2em;min-width:2.2em;line-height:2.2;white-space:nowrap}.preview-instruction{margin:0 0 12px;font-size:.875rem;line-height:1.5;color:var(--muted)}.practice-overlay{position:absolute;z-index:2;inset:12px 12px auto;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;color:#fff8f0;pointer-events:none;text-align:left;font-variant-numeric:tabular-nums}.overlay-feedback{max-width:min(58%,12rem);background:#20242c66;border:1px solid #ffffff35;border-radius:8px;padding:7px 9px;min-width:0;text-shadow:0 1px 3px #000,0 0 5px #0009}.overlay-feedback>span{display:block;font-size:.5625rem;font-weight:700;letter-spacing:.09em;color:#e4d6c6}.overlay-feedback strong{display:block;font-size:clamp(.75rem,2vw,.9375rem);line-height:1.35;margin:0;overflow-wrap:break-word}.overlay-feedback small{display:block;font-size:.6875rem;line-height:1.4;color:#f2e8de}.overlay-feedback.fast{border-color:#f6a7b6}.overlay-feedback.target{border-color:#93c5e8}.overlay-feedback.slow{border-color:#e7c486}.overlay-count{background:#20242c66;border:1px solid #ffffff35;border-radius:8px;padding:6px 8px;min-width:54px;text-align:center;text-shadow:0 1px 3px #000,0 0 5px #0009;margin-left:auto}.overlay-count strong{display:block;font-size:1.625rem;line-height:1.1}.overlay-count span{display:block;font-size:.5625rem;margin-top:2px;white-space:nowrap}.capture-stage .camera-badges{top:auto;bottom:12px}.countdown-overlay{position:absolute;inset:0;z-index:3;background:#20242c99;color:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:10px;padding:20px;pointer-events:none}.countdown-overlay strong{font-size:clamp(4rem,18vw,7rem);line-height:1;font-variant-numeric:tabular-nums}.countdown-overlay span{font-size:.875rem}.review-stats .metric-empty{font-size:1rem;letter-spacing:0;line-height:1.4}.measurement-summary{background:#f6efe0;border-left:3px solid #a67522;border-radius:4px;padding:16px;margin:0 0 20px}.measurement-summary p{font-size:.875rem;line-height:1.6;margin:8px 0}.measurement-summary small{font-size:.75rem;color:var(--muted)}@media(max-width:400px){.practice-overlay{inset:8px 8px auto;gap:8px}.overlay-feedback{padding:6px 8px}.overlay-count{min-width:50px;padding:5px 7px}}.waiting-for-timing strong{font-size:clamp(1.5rem,5vw,2.25rem)}.waiting-for-timing{background:#20242c66}.empty-tempo h3{font-size:1rem}.empty-tempo .chart-empty{margin:10px 0}@media(max-width:700px){.is-active .practice-title .eyebrow{display:none}.is-active .practice-title h1{margin:0;font-size:1.5rem}.is-active .practice-steps{margin:12px 0 16px}.is-active .practice-layout{margin-top:16px}.is-active .live-feedback>.muted{margin-bottom:12px}.is-active .live-metrics{padding:12px 16px}.is-active .live-metrics strong{font-size:1.75rem}}.practice-demo{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding:14px 16px;margin-top:18px;border:1px solid var(--line);border-radius:12px;background:#f2eee6}.practice-demo>div{flex:1;min-width:min(100%,12rem)}.practice-demo strong{font-size:.875rem}.practice-demo p{font-size:.75rem;color:var(--muted);margin:3px 0 0;line-height:1.5}.practice-demo button{font-size:.8125rem;white-space:nowrap;border-color:#b9a998;background:var(--surface)}.practice-demo>.error{flex-basis:100%;color:#9a2436;padding:10px}.practice-footer>span{white-space:normal}.saved-review{margin-top:16px}.replay-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.replay-heading h2{font-size:1.125rem;margin:0}.replay-heading>span{font-size:.5625rem;letter-spacing:.08em;color:var(--muted);white-space:nowrap}.saved-review .stage{max-height:52dvh}.rep-timeline{position:relative;height:56px;margin-top:8px}.rep-timeline input{position:absolute;inset:12px 0 0;width:100%;margin:0;appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer}.rep-timeline input::-webkit-slider-runnable-track{height:5px;background:transparent}.rep-timeline input::-moz-range-track{height:5px;background:transparent}.rep-timeline input::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:22px;height:22px;background:#292d39;border:4px solid var(--surface);border-radius:50%;margin-top:-9px;box-shadow:0 0 0 1px #292d39}.rep-timeline input::-moz-range-thumb{width:16px;height:16px;background:#292d39;border:3px solid var(--surface);border-radius:50%;box-shadow:0 0 0 1px #292d39}.timeline-track{position:absolute;top:32px;left:10px;right:10px;height:5px;background:#dedbd4;border-radius:6px}.timeline-segment{position:absolute;top:-4px;height:13px;border-radius:7px;background:#306782}.timeline-segment.fast{background:#b64b5b}.timeline-segment.slow{background:#a57626}.timeline-segment.unmeasurable{background:var(--surface);border:2px dashed #848b91}.timeline-segment.active{box-shadow:0 0 0 3px #292d3928}.timeline-segment b{position:absolute;left:50%;transform:translate(-50%);bottom:18px;font-size:.6875rem;font-weight:600;color:var(--muted)}.rep-timeline.dense .timeline-segment b{display:none}.replay-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.replay-tools output{font-size:.9375rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.replay-tools output span{color:var(--muted);font-weight:400}.saved-review .replay-tools .actions{margin:0;gap:8px}.replay-tools .actions>button{min-width:44px;flex:none;font-size:.75rem;padding:8px 12px;border-radius:24px}.replay-tools button[aria-pressed=true]{outline:0;border-color:var(--accent);background:#f9e9df}.saved-review .review-stats{grid-template-columns:repeat(auto-fit,minmax(min(100%,5rem),1fr));margin:22px 0 28px;padding:4px 0;border:0;gap:12px}.saved-review .review-stats strong{white-space:nowrap;font-size:1.8rem;margin:0 0 4px;line-height:1.2}.saved-review .review-stats small{font-size:.75rem}.saved-review .review-stats span{font-size:.6875rem}.saved-review .review-stats .metric-empty{font-size:.875rem;line-height:1.4}.tempo-chart{margin:0}.tempo-heading{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}.tempo-heading h3{font-size:1rem;margin:0}.tempo-heading>span{font-size:.6875rem;color:var(--muted)}.tempo-legend{display:flex;gap:8px 14px;flex-wrap:wrap;margin:12px 0 2px;color:var(--muted);font-size:.6875rem}.tempo-legend>span{display:inline-flex;align-items:center;gap:5px}.tempo-legend i{width:10px;height:10px;border-radius:3px;background:#306782}.tempo-legend .fast{background:#b64b5b}.tempo-legend .slow{background:#a57626}.tempo-legend .target-key{width:18px;height:0;background:none;border-top:2px dashed #858d90;border-radius:0}.tempo-scroll{overflow-x:auto;overscroll-behavior-x:contain;padding:8px 6px 10px;scrollbar-width:thin;scrollbar-color:#b9b3aa transparent}.tempo-plot{position:relative;display:grid;height:180px;gap:10px;margin:2rem 0 2.125rem}.tempo-target{position:absolute;left:0;right:0;border-top:2px dashed #858d90;pointer-events:none;z-index:1}.tempo-bar,.tempo-bar:hover,.tempo-bar[aria-pressed=true]{position:relative;display:flex;align-items:center;justify-content:flex-end;flex-direction:column;min-width:44px;min-height:44px;margin:0;padding:0;background:transparent;border:0;border-radius:0;outline:0;transform:none;z-index:2;color:#285779}.tempo-fill{display:block;position:relative;background:#306782;width:100%;max-width:70px;border-radius:10px 10px 5px 5px}.tempo-bar.fast{color:#9a2436}.tempo-bar.fast .tempo-fill{background:#b64b5b}.tempo-bar.slow{color:#795318}.tempo-bar.slow .tempo-fill{background:#a57626}.tempo-bar.unmeasurable{color:#606570}.tempo-bar .tempo-fill.not-timed{background:repeating-linear-gradient(-45deg,#f4f2ed,#f4f2ed 4px,#dedbd4 4px 7px);border:2px dashed #858d90;border-radius:5px}.tempo-bar[aria-pressed=true] .tempo-fill{outline:3px solid #292d39;outline-offset:4px}.tempo-bar:focus-visible{outline:3px solid #2b5c89;outline-offset:3px;border-radius:8px}.tempo-value{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);font-size:.9375rem;font-variant-numeric:tabular-nums;white-space:nowrap}.tempo-number{position:absolute;bottom:-28px;left:0;right:0;font-size:.6875rem;font-weight:400;color:var(--muted);white-space:nowrap}.tempo-bar[aria-pressed=true] .tempo-number{font-weight:700;color:#292d39}.chart-scroll-hint{font-size:.6875rem;color:var(--muted);margin:0 0 10px;text-align:center}.selected-tempo{border-radius:10px;padding:12px 14px;background:#f0ede6;font-size:.8125rem;line-height:1.5}.selected-tempo strong,.selected-tempo span{display:block}.selected-tempo span{font-size:.75rem;color:var(--muted);margin-top:4px}.selected-tempo.fast{border-left:3px solid #b64b5b}.selected-tempo.target{border-left:3px solid #306782}.selected-tempo.slow{border-left:3px solid #a57626}.chart-note,.chart-empty{font-size:.75rem;color:var(--muted);line-height:1.65}.chart-empty{padding:20px;background:#f0ede6;border-radius:10px}.review-save-bar small{font-size:.75rem;font-weight:400}.review-save-bar.has-draft .actions>button:not(.primary){order:-1}@media(max-width:700px){.live-practice:has(.saved-review) .practice-title .eyebrow,.live-practice:has(.saved-review) .privacy-tag{display:none}.live-practice:has(.saved-review) .practice-title h1{font-size:1.5rem;margin:0}.live-practice:has(.has-draft){padding-bottom:calc(5rem + env(safe-area-inset-bottom))}.review-save-bar.has-draft{position:fixed;z-index:10;bottom:0;left:0;right:0;border:0;border-top:1px solid var(--line);border-radius:0;background:var(--surface);margin:0;padding:12px 20px max(12px,env(safe-area-inset-bottom));box-shadow:0 -4px 16px #292d3909}.review-save-bar.has-draft .review-save-copy{display:none}.review-save-bar.has-draft .actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr));gap:10px}.review-save-bar.has-draft button{font-size:.8125rem;min-height:50px;padding:10px}.replay-heading>span{display:none}}@media(max-width:360px){.replay-tools{gap:8px}.replay-tools output{font-size:.8125rem}.replay-tools .actions>button{font-size:.6875rem;padding:8px}.saved-review .review-stats strong{font-size:1.5rem}.review-save-bar.has-draft{padding-inline:16px}}.demo-review .practice-title{margin-top:28px}.demo-label{font-size:.75rem;letter-spacing:.1em;color:var(--accent);font-weight:700}.demo-review .demo-notice,.demo-credit,.demo-next,.demo-details{max-width:760px;margin:20px auto}.demo-credit{font-size:.75rem;color:var(--muted);line-height:1.65}.demo-credit p{margin:6px 0}.demo-next{padding:20px;border:1px solid var(--line);border-radius:12px;background:#f2eee6}.demo-next h2{font-size:1.25rem;margin:0}.demo-next p{font-size:.875rem;color:var(--muted);line-height:1.6}.demo-next button+button{margin-top:8px}.demo-details{font-size:.75rem;line-height:1.65}.demo-details summary{min-height:44px;display:flex;align-items:center;cursor:pointer}.demo-details summary:before{content:"▸";margin-right:8px}.demo-details[open] summary:before{content:"▾"}
