:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:#04070d}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 15% 0%,#123651 0%,transparent 40%),radial-gradient(circle at 100% 20%,#0a3a2d 0%,transparent 45%),#04070d;color:#ebf4ff}.app-shell{min-height:100vh;padding:env(safe-area-inset-top,0) 0 env(safe-area-inset-bottom,0);width:min(100%,980px);margin:0 auto}.app-screen-dashboard{min-height:100dvh;display:flex;align-items:center;justify-content:center}.app-screen-analyze{width:min(100%,1320px)}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 14px 8px}.topbar h1{margin:0;font-size:1.2rem;letter-spacing:.02em}.topbar p{margin:3px 0 0;opacity:.8;font-size:.85rem}.pill-row{display:flex;align-items:center;gap:8px;flex-shrink:0}.menu-btn{border:1px solid #2c3f5f;border-radius:999px;background:#02121ca6;color:#ecfeff;padding:8px 14px;font-size:.85rem;cursor:pointer;font-family:inherit}.menu-btn:hover{border-color:#475569}.app-screen-analyze .topbar p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(42vw,280px)}.pill{border:1px solid #2c3f5f;border-radius:999px;background:#02121ca6;padding:8px 12px;font-size:.85rem;white-space:nowrap}.viewport{margin:0 10px;border-radius:20px;overflow:hidden;border:1px solid #203047;box-shadow:0 12px 40px #00000059;position:relative}.camera-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;background:#000}.pose-video-mesh-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.pose-video-mesh-overlay *{pointer-events:none}.pose-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none;z-index:2}.pose-canvas--pick{pointer-events:auto;cursor:crosshair}.club-guide-overlay{position:absolute;pointer-events:none;z-index:4;transform:translateZ(0)}.club-guide-overlay--cover{top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center}.baseline-video-inner>.club-guide-overlay{object-fit:contain}.club-guide-status{position:absolute;top:8px;left:8px;z-index:5;margin:0;padding:4px 8px;border-radius:999px;background:#020812b8;color:#e2e8f0;font-size:12px;line-height:1.3;pointer-events:none}.full-body-hint{position:absolute;left:12px;right:12px;bottom:16px;z-index:3;margin:0;padding:10px 12px;border-radius:12px;background:#020812b8;color:#e2e8f0;font-size:.82rem;line-height:1.35;text-align:center;pointer-events:none}.viewport:before{content:"";display:block;width:100%;aspect-ratio:16 / 9}.analyze-layout{--phone-frame-width: min(100%, 390px, calc((100dvh - 140px)*.5625) )}.analyze-layout .viewport{width:var(--phone-frame-width);margin-left:auto;margin-right:auto;border-radius:36px;border:3px solid #1e293b;box-shadow:inset 0 0 0 1px #94a3b840,0 16px 48px #00000073}.analyze-layout .viewport:before{aspect-ratio:9 / 16}.hand-track-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 10px 0;color:#e2e8f0;font-size:.82rem}.hand-track-bar p{flex:1 1 220px;margin:0;white-space:pre-wrap;line-height:1.35}.hand-track-bar button{border:1px solid #2f4668;background:#091728cc;color:#ecfeff;border-radius:10px;min-height:36px;padding:6px 10px;font-size:.82rem;font-family:inherit;cursor:pointer}.analyze-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px}.analyze-actions button{flex:1;border:1px solid #2f4668;background:#091728cc;color:#ecfeff;border-radius:12px;min-height:44px;padding:10px 12px;font-size:.9rem;font-family:inherit;cursor:pointer}.analyze-actions button:disabled{opacity:.55;cursor:default}.analyze-actions button.danger{border-color:#7f1d1d;background:#5d0f0f73}.club-track-panel{margin:0 10px 10px;padding:10px 12px;border:1px solid #2f4668;border-radius:12px;background:#091728cc;display:grid;gap:10px}.club-track-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0}.club-track-stats div{min-width:0}.club-track-stats dt{color:#93c5fd;font-size:.68rem;letter-spacing:.04em;text-transform:uppercase}.club-track-stats dd{margin:2px 0 0;color:#ecfeff;font-size:.95rem}.club-track-overlay{width:min(100%,280px);border-radius:10px;background:#070b12;justify-self:start}@media (max-width: 720px){.club-track-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.analyze-drawer-root{pointer-events:none}.analyze-drawer-root.is-open{pointer-events:auto}.analyze-drawer-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;border:0;padding:0;background:#02060e8c;opacity:0;pointer-events:none;transition:opacity .22s ease}.analyze-drawer-root.is-open .analyze-drawer-scrim{opacity:1;pointer-events:auto}.analyze-drawer{position:fixed;top:0;right:0;z-index:41;display:flex;flex-direction:column;width:min(360px,92vw);height:100dvh;background:#0b1220;border-left:1px solid #24354f;box-shadow:-16px 0 40px #00000059;transform:translate(100%);transition:transform .28s ease}.analyze-drawer-root.is-open .analyze-drawer{transform:translate(0)}.analyze-drawer-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 16px 12px;border-bottom:1px solid #24354f}.analyze-drawer-header h2{margin:0;font-size:1.05rem}.analyze-drawer-close{border:1px solid #334155;background:transparent;color:#e2e8f0;border-radius:10px;padding:6px 12px;font-size:.85rem;cursor:pointer;font-family:inherit}.analyze-drawer-body{overflow:auto;padding:14px 16px 28px;display:flex;flex-direction:column;gap:18px}.analyze-drawer-status{margin:0;font-size:.82rem;opacity:.8;line-height:1.4}.analyze-drawer-section h3{margin:0 0 10px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8}.source-toggle{display:grid;grid-template-columns:1fr 1fr;border:1px solid #2f4668;border-radius:12px;overflow:hidden;background:#091728cc}.source-toggle button{border:0;border-radius:0;background:transparent;color:#94a3b8;min-height:44px;padding:10px 8px;font-size:.88rem;font-family:inherit;cursor:pointer}.source-toggle button+button{border-left:1px solid #2f4668}.source-toggle button.is-active{background:linear-gradient(145deg,#1665348c,#15803d47);color:#ecfeff;font-weight:600}.source-test-video{margin-top:10px}.analyze-drawer-section .settings-select{max-width:none}.analyze-drawer-actions{display:flex;flex-direction:column;gap:8px}.analyze-drawer-actions button{border:1px solid #2f4668;background:#091728cc;color:#ecfeff;border-radius:12px;min-height:44px;padding:10px 12px;font-size:.9rem;font-family:inherit;cursor:pointer}.analyze-drawer-actions button:disabled{opacity:.5}.analyze-drawer-stats{margin:0;display:grid;gap:8px}.analyze-drawer-stats div{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid #24354f;border-radius:10px;background:#0a1423b3}.analyze-drawer-stats dt{font-size:.78rem;opacity:.8}.analyze-drawer-stats dd{margin:0;font-size:.88rem;font-weight:600;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60%}@media (prefers-reduced-motion: reduce){.analyze-drawer,.analyze-drawer-scrim{transition:none}}.controls button,.upload{border:1px solid #2f4668;background:#091728cc;color:#ecfeff;border-radius:12px;min-height:44px;padding:10px 12px;font-size:.9rem}.controls button:disabled{opacity:.5}.controls .danger{border-color:#7f1d1d;background:#5d0f0f73}.upload{display:flex;align-items:center;justify-content:center;position:relative;text-align:center;cursor:pointer;font:inherit;width:100%;box-sizing:border-box}.upload input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0}.stats{margin:8px 10px 16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stat{border:1px solid #24354f;background:#0a1423b3;border-radius:14px;padding:10px}.stat span{font-size:.78rem;opacity:.8}.stat strong{display:block;margin-top:4px;font-size:.96rem;overflow:hidden;text-overflow:ellipsis}@media (min-width: 820px){.controls,.stats{grid-template-columns:repeat(4,minmax(0,1fr))}}.topbar-left{display:flex;align-items:flex-start;gap:10px;min-width:0}.back-link{flex-shrink:0;border:none;background:transparent;color:#7dd3fc;font-size:.9rem;padding:4px 0;cursor:pointer;text-decoration:none;font-family:inherit}.back-link:hover{text-decoration:underline}.viewport--offscreen{position:absolute;left:-9999px;width:4px;height:4px;overflow:hidden;opacity:0;pointer-events:none;margin:0;border:none;box-shadow:none}.viewport--offscreen:before{display:none}.analyze-layout{display:flex;flex-direction:column;gap:10px;margin:0 10px}@media (min-width: 880px){.analyze-layout{--phone-frame-width: min(360px, 30vw, calc((100dvh - 120px)*.5625) );flex-direction:row;align-items:flex-start;justify-content:center;gap:12px}.analyze-layout .viewport{flex:0 0 auto;min-width:0;margin:0;width:var(--phone-frame-width)}.analyze-layout .world-skeleton-3d:not(.world-skeleton-3d--compact){flex:0 0 auto;margin:0}}.world-skeleton-3d{border-radius:20px;border:1px solid #203047;background:#060c16d9;overflow:hidden;display:flex;flex-direction:column}.analyze-layout .world-skeleton-3d:not(.world-skeleton-3d--compact){position:relative;display:grid;grid-template:1fr / 1fr;width:var(--phone-frame-width);margin-left:auto;margin-right:auto;border-radius:36px;border:3px solid #1e293b;box-shadow:inset 0 0 0 1px #94a3b840,0 16px 48px #00000073}.analyze-layout .world-skeleton-3d:not(.world-skeleton-3d--compact):before{content:"";display:block;grid-area:1 / 1;width:100%;aspect-ratio:9 / 16}.analyze-layout .world-skeleton-3d:not(.world-skeleton-3d--compact) .world-skeleton-3d__canvas{grid-area:1 / 1;position:relative;z-index:1;width:100%;height:100%;aspect-ratio:auto;min-height:0;min-width:0}.analyze-layout .world-skeleton-3d:not(.world-skeleton-3d--compact) .world-skeleton-3d__hdr{position:absolute;top:0;left:0;right:0;z-index:2;border-bottom:none;background:linear-gradient(to bottom,rgba(6,12,22,.92),transparent)}.analyze-layout .world-skeleton-3d:not(.world-skeleton-3d--compact) .world-skeleton-3d__hint{position:absolute;bottom:0;left:0;right:0;z-index:2;margin:0;background:linear-gradient(to top,rgba(6,12,22,.92),transparent)}.world-skeleton-3d__hdr{padding:10px 12px;border-bottom:1px solid #24354f}.world-skeleton-3d__hdr strong{display:block;font-size:.92rem;margin-bottom:4px}.world-skeleton-3d__sub{font-size:.72rem;opacity:.75;line-height:1.35}.world-skeleton-3d__canvas{width:100%;aspect-ratio:1;min-height:200px;background:#060a12;position:relative}.world-skeleton-3d__debug{position:absolute;left:8px;bottom:8px;max-width:calc(100% - 16px);max-height:36%;overflow:auto;margin:0;padding:8px 10px;border-radius:8px;background:#020812c7;border:1px solid #1e293b;color:#cbd5e1;font:11px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;pointer-events:none;z-index:2;white-space:pre}.world-skeleton-3d__scrub{position:relative;z-index:20;flex:0 0 auto;padding:8px 10px 10px;background:#0a101c;border-top:1px solid #24354f;pointer-events:auto;transform:translateZ(0)}.analyze-layout .world-skeleton-3d:not(.world-skeleton-3d--compact) .world-skeleton-3d__scrub{position:absolute;grid-area:1 / 1;left:0;right:0;bottom:0;align-self:end;border-bottom-left-radius:32px;border-bottom-right-radius:32px}.world-skeleton-3d__scrub-row{display:flex;align-items:center;gap:8px}.world-skeleton-3d__scrub-range{flex:1;min-width:0;height:28px;margin:0;accent-color:#5eead4;cursor:pointer}.world-skeleton-3d__scrub-btn{flex:0 0 auto;width:32px;height:32px;border:1px solid #334155;border-radius:8px;background:#02121cd9;color:#e2e8f0;font-size:1.1rem;line-height:1;cursor:pointer}.world-skeleton-3d__scrub-meta{margin-top:4px;font:11px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;color:#94a3b8}.world-skeleton-3d__canvas canvas{display:block;width:100%!important;height:100%!important}.world-skeleton-3d__hint{margin:0;padding:8px 12px 10px;font-size:.75rem;opacity:.8;line-height:1.4;color:#94a3b8}.world-skeleton-3d--compact .world-skeleton-3d__hdr{padding:8px 10px}.world-skeleton-3d--compact .world-skeleton-3d__hdr strong{font-size:.85rem}.world-skeleton-3d__sub--compact{font-size:.68rem!important;opacity:.8}.world-skeleton-3d__layers{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.world-skeleton-3d__layers button{border:1px solid #334155;background:#02121cb8;color:#cbd5e1;border-radius:999px;padding:4px 10px;font-size:.7rem;letter-spacing:.01em;cursor:pointer}.world-skeleton-3d__layers button.is-on{border-color:#5eead4;background:#2dd4bf29;color:#ecfeff}.analyze-layout .world-skeleton-3d:not(.world-skeleton-3d--compact) .world-skeleton-3d__layers{margin-top:6px}.world-skeleton-3d--compact .world-skeleton-3d__canvas{aspect-ratio:4/3;min-height:160px}.dashboard{width:100%;padding:24px 14px;max-width:560px;margin:0 auto}.dashboard-hero{text-align:center;margin-bottom:16px}.dashboard-kicker{margin:0 0 10px;font-size:clamp(2.6rem,8vw,3.6rem);letter-spacing:.08em;text-transform:uppercase;color:#22c55e;font-weight:800;line-height:.95}.dashboard-title{margin:0 0 8px;font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.dashboard-sub{margin:0;font-size:.88rem;opacity:.85;line-height:1.45}.dashboard-sub strong{color:#e2e8f0}.dashboard-settings-bar{display:flex;justify-content:center;margin-bottom:8px}.settings-toggle{border:1px solid #334155;background:#0f172a99;color:#e2e8f0;border-radius:10px;padding:8px 14px;font-size:.9rem;cursor:pointer;font-family:inherit}.settings-toggle:hover{border-color:#475569}.settings-panel{border:1px solid #24354f;background:#0a1423bf;border-radius:14px;padding:12px 14px;margin:0 0 20px}.settings-hint{margin:0 0 10px;font-size:.8rem;opacity:.75}.settings-grid{display:flex;flex-direction:column;gap:10px}.setting-row{display:flex;justify-content:space-between;align-items:center;font-size:.92rem;gap:12px}.setting-row input{width:20px;height:20px;accent-color:#22c55e}.setting-row--select{flex-wrap:wrap;align-items:flex-start}.setting-row--select>span:first-child{flex:1 1 100%;margin-bottom:4px}.settings-select{width:100%;max-width:22rem;padding:8px 10px;border-radius:8px;border:1px solid #334155;background:#0f172a;color:#e2e8f0;font-size:.9rem;font-family:inherit;cursor:pointer}.dashboard-nav{display:flex;flex-direction:column;gap:12px}.nav-card{text-align:left;border:1px solid #2f4668;background:#091728d9;color:#ecfeff;border-radius:16px;padding:18px 16px;cursor:pointer;font-family:inherit;transition:border-color .15s ease,transform .15s ease}.nav-card:hover{border-color:#3b82f6;transform:translateY(-1px)}.nav-card:disabled,.nav-card:disabled:hover{opacity:.45;cursor:default;transform:none}.nav-card-primary{border-color:#166534;background:linear-gradient(145deg,#16653459,#091728e6)}.nav-card-test{border-color:#0369a1;background:linear-gradient(145deg,#082f498c,#091728e6)}.nav-card-step{display:block;margin-bottom:4px;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#5eead4}.nav-card-title{display:block;font-size:1.1rem;font-weight:700;margin-bottom:6px}.nav-card-desc{display:block;font-size:.85rem;opacity:.8;line-height:1.4}.compare-screen{max-width:760px}.compare-missing,.compare-body{display:flex;flex-direction:column;gap:12px}.compare-missing p,.compare-note,.compare-names,.compare-score{margin:0;color:#cbd5e1;line-height:1.4}.compare-missing button,.compare-screen button{align-self:flex-start}.compare-names,.compare-figures,.compare-angle-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.compare-score strong{color:#f8fafc}.compare-scrub{display:flex;flex-direction:column;gap:6px;color:#94a3b8;font-size:.85rem}.compare-scrub input{width:100%}.compare-figure{margin:0}.compare-figure figcaption{margin-bottom:6px;font-weight:700}.compare-canvas{width:100%;height:auto;background:#020617;border:1px solid #1e293b;border-radius:12px}.compare-figure-empty{margin:6px 0 0;color:#94a3b8;font-size:.85rem}.compare-angles h3{margin:0 0 8px;font-size:.95rem}.compare-angles ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.compare-angles li{display:flex;justify-content:space-between;gap:8px;color:#cbd5e1}.compare-metrics{display:flex;flex-direction:column;gap:10px;margin-top:4px;padding-top:12px;border-top:1px solid #1e293b}.compare-metrics h3,.compare-metric-block h4{margin:0}.compare-metric-block h4{font-size:.95rem}.compare-metric-block{display:flex;flex-direction:column;gap:4px}.compare-metric-line{display:flex;justify-content:space-between;gap:12px;margin:0;color:#cbd5e1}.compare-metric-line strong,.compare-metric-verdict{color:#f8fafc}.compare-metric-verdict{margin:2px 0 0;font-weight:600}.compare-metric-detail{margin:0;color:#94a3b8;font-size:.85rem;line-height:1.4}.sub-screen{padding:8px 14px 28px;max-width:520px;margin:0 auto}.sub-screen--baseline{max-width:min(960px,100%);padding-left:max(12px,env(safe-area-inset-left,0));padding-right:max(12px,env(safe-area-inset-right,0))}.sub-screen-header{margin-bottom:12px}.baseline-header .sub-screen-title{margin-top:4px}.sub-screen-title{margin:8px 0 0;font-size:1.35rem;font-weight:700}.sub-screen-lead{font-size:.9rem;opacity:.88;line-height:1.5;margin:0 0 16px}.sub-screen-lead--compact{margin:0 0 18px;font-size:.86rem;line-height:1.45}.sub-screen--glb-test{max-width:min(1100px,100%);display:flex;flex-direction:column;min-height:calc(100dvh - 24px)}.glb-test-stage{flex:1;min-height:420px;border-radius:16px;overflow:hidden;border:1px solid #24354f;background:#0a0f18}.glb-test-stage canvas{display:block;width:100%!important;height:100%!important}.baseline-card{border:1px solid #24354f;background:#0a1423a6;border-radius:14px;padding:14px 16px;margin-bottom:12px}.baseline-card-title{margin:0 0 12px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#94a3b8}.baseline-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;margin:0}.baseline-fold>summary::-webkit-details-marker,.baseline-fold>summary::marker{display:none;content:""}.baseline-fold>summary:before{content:"";flex:0 0 auto;width:7px;height:7px;border-right:2px solid #94a3b8;border-bottom:2px solid #94a3b8;transform:rotate(-45deg) translateY(-1px)}.baseline-fold[open]>summary{margin-bottom:12px}.baseline-fold[open]>summary:before{transform:rotate(45deg) translateY(-2px)}.baseline-fold:not([open])>:not(summary){display:none}.baseline-file-row{display:flex;flex-direction:column;gap:10px}.baseline-library{display:flex;flex-direction:column;gap:6px;width:100%;flex:1 0 100%;color:#cbd5e1;font-size:.85rem}.baseline-library .settings-select{max-width:none;width:100%}.baseline-card--file,.baseline-file-actions,.baseline-set-btn{position:relative;z-index:6}.baseline-file-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.baseline-file-actions .baseline-upload-btn{flex:1 1 220px;width:auto;margin-bottom:0;white-space:nowrap}.baseline-file-actions .baseline-clear-btn{width:auto;flex:0 0 auto;margin-bottom:0;padding-inline:18px;white-space:nowrap}.baseline-set-btn{flex:1 1 180px;border:none;border-radius:12px;min-height:44px;padding:10px 16px;background:#0f766e;color:#f0fdfa;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}.baseline-set-btn:hover:not(:disabled){background:#115e59}.baseline-set-btn:disabled{opacity:.45;cursor:not-allowed}.baseline-file-row .btn-secondary{width:auto}.baseline-status-grid{display:grid;grid-template-columns:1fr;gap:14px}.baseline-recorded-pop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:20px;background:#0206179e}.baseline-recorded-card{width:min(420px,100%);padding:22px 20px;border-radius:16px;border:1px solid #3d7a55;background:#0f2418;box-shadow:0 16px 40px #00000059}.baseline-recorded-card h3{margin:0 0 8px;color:#bbf7d0}.baseline-overwrite-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.baseline-recorded-card p{margin:0 0 16px;color:#e2e8f0;line-height:1.4}.baseline-ready-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;margin:0 0 16px;padding:14px 16px;border-radius:14px;border:1px solid #3d7a55;background:linear-gradient(135deg,#225c3a73,#10281cbf)}.baseline-ready-title{margin:0 0 4px;font-size:1rem;font-weight:700;color:#bbf7d0}.baseline-ready-detail{margin:0;font-size:.88rem;line-height:1.35;color:#e2e8f0}.baseline-ready-cta{border:none;border-radius:12px;min-height:44px;padding:10px 16px;font:inherit;font-weight:600;cursor:pointer;color:#052e16;background:#86efac}.baseline-ready-cta:hover{background:#a7f3d0}.capture-done-actions{display:flex;gap:10px}.capture-done-actions button{flex:1;min-height:48px;border-radius:12px;font:inherit;font-weight:700;cursor:pointer}.capture-done-go{border:none;color:#052e16;background:#86efac}.capture-done-cancel{border:1px solid #3d7a55;color:#e2e8f0;background:transparent}.capture-save-progress{display:grid;gap:6px}.capture-save-progress p{margin:0;color:#cbd5e1;font-size:.92rem}.capture-save-track{height:10px;overflow:hidden;border-radius:999px;background:#1e293b}.capture-save-fill{display:block;height:100%;background:#2dd4bf;transition:width .2s ease}.capture-name-field{display:flex;flex-direction:column;gap:6px;margin:0 0 16px;color:#cbd5e1;font-size:.9rem}.capture-name-field input{font:inherit;font-size:1rem;color:#f8fafc;background:#0b1a12;border:1px solid #3d7a55;border-radius:10px;padding:12px;min-height:48px}.capture-save-error{margin:-8px 0 14px;color:#fca5a5}.baseline-capturing-banner{margin:0 0 16px;padding:12px 14px;border-radius:12px;border:1px solid #4a6280;background:#142840a6;font-size:.88rem;line-height:1.4;color:#cbd5e1}.baseline-capturing-banner p{margin:0}@media (min-width: 560px){.baseline-status-grid{grid-template-columns:1fr 1fr;gap:16px}}.baseline-status-cell .baseline-status-text{margin:0}.baseline-current-line{margin:0;font-size:.88rem;line-height:1.35}.baseline-overlay-stack{display:flex;flex-direction:column;gap:12px}.baseline-overlay-stack .settings-select{max-width:none}.baseline-overlay-toggles{display:flex;flex-direction:column;gap:8px}.baseline-overlay-check{display:flex;flex-direction:row;align-items:flex-start;gap:12px;margin:0;padding:10px 12px;border:1px solid #24354f;border-radius:12px;background:#060c1673;cursor:pointer}.baseline-overlay-check input{width:20px;height:20px;margin:2px 0 0;flex:0 0 auto;accent-color:#2dd4bf}.baseline-overlay-check input:disabled{opacity:.4;cursor:not-allowed}.baseline-overlay-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.baseline-overlay-name{color:#f8fafc;font-size:.95rem;font-weight:650;line-height:1.3}.baseline-overlay-hint{color:#94a3b8;font-size:.8rem;line-height:1.35}.baseline-outline-hint--inline{margin:12px 0 0;font-size:.78rem}.baseline-preview-section{margin-bottom:16px}.baseline-preview-section-head{margin-bottom:10px}.baseline-preview-section-title{margin:0 0 6px;font-size:1rem;font-weight:700;color:#e2e8f0}.baseline-preview-hint{margin:0;font-size:.8rem;opacity:.78;line-height:1.45;max-width:52rem}.baseline-status-block{border:1px solid #24354f;background:#0a1423b3;border-radius:14px;padding:12px;margin-bottom:14px}.muted{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;opacity:.65;margin-bottom:4px}.baseline-status-text{margin:0 0 10px;font-size:.88rem}.baseline-current{font-size:.9rem}.baseline-frames{opacity:.75;font-weight:400}.upload-large{margin-bottom:10px;min-height:52px;font-weight:600}.btn-secondary{width:100%;border:1px solid #475569;background:transparent;color:#94a3b8;border-radius:12px;min-height:44px;margin-bottom:16px;cursor:pointer;font-family:inherit;font-size:.9rem}.btn-secondary:hover{border-color:#64748b;color:#e2e8f0}.baseline-overlay-settings{margin-bottom:20px;padding:14px 16px;border-radius:14px;border:1px solid #203047;background:#0f172a73}.baseline-overlay-settings-title{margin:0 0 10px;font-size:.82rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em}.baseline-preview-toggles-inner{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.baseline-outline-hint{margin:10px 0 0;font-size:.8rem;line-height:1.45;max-width:42rem}.baseline-preview-wrap{margin-bottom:18px}.baseline-preview-layout{margin:0}.baseline-preview-label{margin:0 0 8px;font-size:.88rem;font-weight:600;color:#7dd3fc}.baseline-preview-toggles{display:flex;gap:16px;margin-bottom:10px;flex-wrap:wrap}.baseline-preview-toggles .setting-row{font-size:.88rem}.baseline-video-preview{position:relative;display:flex;flex-direction:column;align-items:stretch;width:100%;max-width:100%;border-radius:16px;overflow:hidden;border:1px solid #203047;background:#000;line-height:0;min-height:12rem}.baseline-record-bar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:10px 12px;line-height:1.3;background:#071018;border-bottom:1px solid #203047}.baseline-speed{display:inline-flex;align-items:center;gap:6px;margin-left:auto;color:#cbd5e1;font-size:.8rem;font-weight:700}.baseline-speed-btn{min-height:32px;padding:4px 10px;border-radius:999px;border:1px solid #334155;background:transparent;color:#e2e8f0;font:inherit;font-size:.8rem;font-weight:700;cursor:pointer}.baseline-speed-btn[aria-pressed=true]{border-color:#38bdf8;background:#38bdf829;color:#e0f2fe}.baseline-record-btn{min-height:36px;padding:6px 16px;border-radius:999px;border:1px solid #fb7185;background:transparent;color:#fecdd3;font:inherit;font-size:.92rem;font-weight:700;cursor:pointer}.baseline-record-btn:disabled{border-color:#334155;color:#64748b;cursor:default}.baseline-record-btn--live{background:#f43f5e2e}.baseline-record-note{color:#cbd5e1;font-size:.85rem}.baseline-debug-toggle{display:inline-flex;align-items:center;gap:6px;margin-left:auto;color:#cbd5e1;font-size:.8rem;line-height:1.2}.baseline-analysis{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:22px 18px;background:#040a12d6;color:#e2e8f0;line-height:1.35}.baseline-analysis h2{margin:0 0 4px;font-size:1.15rem;font-weight:750}.baseline-analysis p{margin:0;font-size:.95rem}.baseline-analysis-track{height:10px;margin:4px 0 8px;overflow:hidden;border-radius:999px;background:#1e293b}.baseline-analysis-fill{display:block;height:100%;background:#38bdf8}.baseline-analysis-error{color:#fecaca}.baseline-analysis-actions{display:flex;gap:8px;margin-top:10px}.baseline-analysis button{min-height:36px;padding:6px 16px;border:1px solid #38bdf8;border-radius:999px;background:transparent;color:#e0f2fe;font:inherit;font-weight:700;cursor:pointer}.baseline-video-loading,.baseline-video-error{margin:0;padding:12px 14px;font-size:.88rem;line-height:1.4;color:#cbd5e1;background:#0f172aeb;border-bottom:1px solid #203047}.baseline-video-error{color:#fecaca;background:#450a0ae0}.baseline-video-error-title{margin:0 0 4px;font-weight:700;color:#fecaca}.baseline-video-error p{margin:0}.baseline-video-inner{position:relative;display:block;width:fit-content;max-width:100%;margin:0 auto;line-height:0;background:#000}.baseline-preview-video{display:block;width:auto;height:auto;max-width:100%;max-height:min(68vh,calc(100dvh - 13rem));object-fit:contain;background:#000;vertical-align:top}.baseline-preview-canvas{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;object-fit:fill;z-index:2}.nav-card-mocap{border-color:#0f766e;background:linear-gradient(145deg,#0f766e59,#091728e6)}.mocap-screen{max-width:min(1100px,100%)}.mocap-screen--compare{max-width:min(1440px,100%)}.mocap-compare{display:grid;grid-template-columns:repeat(2,max-content);column-gap:8px;justify-content:center;width:fit-content;max-width:100%;margin-inline:auto;align-items:start}.mocap-compare>.mocap-pane{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:4px;min-width:0}.mocap-compare .mocap-pane-head,.mocap-compare .mocap-pane-status,.mocap-compare .mocap-pane-timeblock,.mocap-compare .mocap-pane-options{width:0;min-width:100%}.mocap-pane{min-width:0}.mocap-screen:not(.mocap-screen--compare) .mocap-pane{display:contents}.mocap-pane-title{margin:0 0 6px;font-size:.78rem;font-weight:650;color:#94a3b8}.mocap-pane-head{display:flex;flex-direction:column;align-items:stretch;gap:6px}.mocap-pane-head>label{flex:none;width:100%}.mocap-pane-actions{display:flex;gap:8px;align-items:center}.mocap-pane-actions .mocap-upload{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 12px;border-radius:8px;border:1px solid #2f4668;background:#091728cc;color:#ecfeff;font-size:.82rem;cursor:pointer}.mocap-pane-actions .mocap-upload input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.mocap-pane-actions button{flex:1;min-height:32px}.mocap-compare .mocap-pane-status{min-height:1.25em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mocap-pane-head select{width:100%}.mocap-pane-status,.mocap-pane-time{margin:2px 0 4px;color:#cbd5e1;font-size:.82rem}.mocap-compare .mocap-stage{align-self:start;justify-self:center;height:auto;margin-inline:0}.mocap-compare .mocap-video{max-width:100%;max-height:min(42vh,calc(100dvh - 20rem))}.mocap-scrub--full,.mocap-scrub--full input[type=range]{width:100%}.mocap-pane-options .mocap-fold--nested{margin-top:8px}.mocap-fold{margin:8px 0;border:1px solid #243044;border-radius:12px;background:#0f172ab8;overflow:hidden}.mocap-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:10px 14px;font-weight:650;font-size:.84rem;color:#e2e8f0;-webkit-user-select:none;user-select:none}.mocap-fold>summary::-webkit-details-marker,.mocap-fold>summary::marker{display:none;content:""}.mocap-fold>summary:before{content:"";flex:0 0 auto;width:7px;height:7px;border-right:2px solid #5eead4;border-bottom:2px solid #5eead4;transform:rotate(-45deg) translateY(-1px)}.mocap-fold[open]>summary{color:#f8fafc}.mocap-fold[open]>summary:before{transform:rotate(45deg) translateY(-2px)}.mocap-fold>summary:hover{background:#14b8a61a}.mocap-fold>:not(summary){padding:0 14px 12px}.mocap-fold .mocap-toggles{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin:0}.mocap-fold .mocap-events,.mocap-fold .mocap-note{margin:0}.mocap-fold .mocap-toggles label{flex-direction:row;align-items:center;gap:10px;min-height:36px;margin:0;color:#e2e8f0;font-size:.92rem}.mocap-fold .mocap-toggles label input[type=checkbox]{width:18px;height:18px;margin:0;flex:0 0 auto;accent-color:#2dd4bf}.mocap-fold .mocap-toggles label input[type=range]{flex:1 1 120px;width:auto}.mocap-landmarks .mocap-toggles{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.mocap-fold--nested{margin:8px 0 0;background:#02061773}.mocap-pane-options.mocap-fold{margin:0}.mocap-label-short{display:none}@media (max-width: 640px){.mocap-compare{grid-template-columns:max-content}}@media (max-width: 720px){.mocap-screen{max-width:100%;padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));padding-bottom:calc(96px + env(safe-area-inset-bottom))}.mocap-screen .sub-screen-lead{display:none}.mocap-screen .sub-screen-header{position:sticky;top:0;z-index:4;display:flex;align-items:center;gap:10px;margin:0 -12px 8px;padding:8px 12px;background:#04070deb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mocap-screen .sub-screen-title{margin:0;font-size:1.05rem}.mocap-screen .back-link{min-height:44px;padding:8px 0;font-size:1rem}.mocap-screen:not(.mocap-screen--compare){display:flex;flex-direction:column}.mocap-screen:not(.mocap-screen--compare)>.mocap-live{order:1}.mocap-screen:not(.mocap-screen--compare)>.mocap-status,.mocap-screen:not(.mocap-screen--compare)>.mocap-progress{order:2}.mocap-screen:not(.mocap-screen--compare)>.mocap-scrub{order:3}.mocap-screen:not(.mocap-screen--compare)>.mocap-controls,.mocap-screen:not(.mocap-screen--compare)>.mocap-note{order:4}.mocap-screen:not(.mocap-screen--compare)>.mocap-fold{order:5}.mocap-screen:not(.mocap-screen--compare) .mocap-video{max-height:min(58dvh,calc(100dvh - 16rem))}.mocap-screen .mocap-transport{position:fixed;left:0;right:0;bottom:0;z-index:5;margin:0;display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:8px;align-items:center;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#04070df5;border-top:1px solid #1e293b}.mocap-screen .mocap-transport button{min-height:48px;font-size:1rem}.mocap-screen .mocap-transport .mocap-primary,.mocap-screen .mocap-transport button:first-child{background:#115e59;border-color:#14b8a6;font-weight:700}.mocap-label-full{display:none}.mocap-label-short{display:inline}.mocap-readout--frame{display:none}.mocap-readout--time{grid-column:1 / -1;order:-1;text-align:center;color:#cbd5e1;font-size:.85rem}.mocap-controls{flex-direction:column;align-items:stretch}.mocap-controls>label,.mocap-controls>button,.mocap-controls>.mocap-modes{width:100%}.mocap-modes--source{order:-1;display:grid;grid-template-columns:1fr 1fr}.mocap-modes--engine{display:grid;grid-template-columns:1fr 1fr}.mocap-modes--engine .mocap-set-baseline{grid-column:1 / -1}.mocap-modes--source button,.mocap-modes--engine button,.mocap-controls>button{min-height:46px;font-size:.95rem}.mocap-controls .mocap-upload{position:relative;display:inline-flex;align-items:center;justify-content:center;width:auto;align-self:stretch;min-height:46px;padding:0 12px;border-radius:10px;border:1px solid #2f4668;background:#091728cc;color:#ecfeff;font-size:.95rem}.mocap-controls .mocap-upload input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;min-height:0}.mocap-scrub,.mocap-scrub input[type=range]{width:100%}.dashboard{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.nav-card{min-height:76px;padding:20px 16px}}.mocap-controls,.mocap-transport,.mocap-toggles,.mocap-events{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:10px 0}.mocap-controls label,.mocap-toggles label,.mocap-scrub{display:flex;flex-direction:column;gap:4px;font-size:.78rem;color:#94a3b8}.mocap-controls select,.mocap-controls input[type=file]{min-height:36px;border-radius:8px;border:1px solid #334155;background:#0f172a;color:#e2e8f0;font:inherit}.mocap-library{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:0 0 10px}.mocap-library label{display:flex;flex-direction:column;gap:4px;font-size:.78rem;color:#94a3b8}.mocap-library input[type=text],.mocap-library select{min-height:36px;min-width:12rem;border-radius:8px;border:1px solid #334155;background:#0f172a;color:#e2e8f0;font:inherit;padding:6px 10px}.mocap-controls button,.mocap-library button,.mocap-transport button,.mocap-events button,.mocap-debug button,.mocap-tick{border:1px solid #2f4668;background:#091728cc;color:#ecfeff;border-radius:10px;min-height:36px;padding:6px 10px;font-size:.82rem;font-family:inherit;cursor:pointer}.mocap-modes{display:flex;gap:6px;align-items:center}@media (max-width: 720px){.mocap-screen .mocap-modes{display:grid;grid-template-columns:1fr;width:100%;align-items:stretch}.mocap-screen .mocap-modes button{width:100%}}.mocap-primary{background:#115e59;border-color:#14b8a6}.mocap-capture:disabled{background:#1e293b;border-color:#334155;color:#64748b;cursor:default}.mocap-mobile-capture{display:none}.mocap-status,.mocap-note{margin:8px 0;color:#cbd5e1;font-size:.88rem;line-height:1.4}.mocap-progress{width:100%;height:8px;margin-bottom:8px}.mocap-stage{position:relative;width:fit-content;max-width:100%;margin-inline:auto;background:#020617;border-radius:12px;overflow:hidden;border:1px solid #1e293b}.mocap-live{display:block}.mocap-desk,.mocap-side{display:contents}@media (min-width: 721px){.mocap-screen:not(.mocap-screen--compare) .mocap-desk{display:grid;grid-template-columns:max-content minmax(320px,1fr);column-gap:28px;align-items:start}.mocap-screen:not(.mocap-screen--compare) .mocap-side{display:flex;flex-direction:column;align-items:stretch;gap:2px;min-width:0;padding-top:2px}.mocap-screen:not(.mocap-screen--compare) .mocap-stage{margin-inline:0}.mocap-screen:not(.mocap-screen--compare) .mocap-video{max-height:min(78vh,calc(100dvh - 15rem))}.mocap-screen:not(.mocap-screen--compare) .mocap-side .mocap-transport{margin:0 0 6px}.mocap-screen:not(.mocap-screen--compare) .mocap-side .mocap-scrub,.mocap-screen:not(.mocap-screen--compare) .mocap-side .mocap-scrub input[type=range]{width:100%}.mocap-screen:not(.mocap-screen--compare) .mocap-side .mocap-fold{width:100%}.mocap-screen--compare .mocap-desk{display:grid;grid-template-columns:max-content minmax(280px,1fr);column-gap:28px;align-items:start}.mocap-screen--compare .mocap-compare{margin-inline:0;justify-content:start}.mocap-screen--compare .mocap-side{display:flex;flex-direction:column;align-items:stretch;gap:2px;min-width:0;padding-top:2px}.mocap-screen--compare .mocap-side .mocap-transport{margin:0 0 6px}.mocap-screen--compare .mocap-side .mocap-fold{width:100%}}.mocap-video{display:block;width:auto;height:auto;max-width:100%;max-height:min(52vh,calc(100dvh - 18rem))}.mocap-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.mocap-scrub input[type=range],.mocap-toggles input[type=range]{width:160px}.mocap-toggles select{min-height:32px;border-radius:8px;border:1px solid #334155;background:#0f172a;color:#e2e8f0;font:inherit}.mocap-event{display:inline-flex;gap:4px}.mocap-mark-row{position:relative;height:28px;margin-bottom:8px}.mocap-tick{position:absolute;transform:translate(-50%);min-height:24px;padding:2px 6px;font-size:.7rem}.mocap-debug-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 16px;margin:0 0 12px}.mocap-debug-list div{margin:0}.mocap-debug-list dt{color:#94a3b8;font-size:.75rem}.mocap-debug-list dd{margin:2px 0 0}.mocap-table-wrap{max-height:280px;overflow:auto;margin-bottom:10px}.mocap-table{width:100%;border-collapse:collapse;font-size:.8rem}.mocap-table th,.mocap-table td{text-align:left;padding:4px 8px;border-bottom:1px solid #1e293b;white-space:nowrap}@media (max-width: 720px){.mocap-screen .mocap-modes--source button,.mocap-screen .mocap-modes--engine button,.mocap-screen .mocap-controls>button,.mocap-screen .mocap-controls .mocap-upload,.mocap-screen .mocap-library,.mocap-screen .mocap-library label,.mocap-screen .mocap-library button,.mocap-screen .mocap-library input,.mocap-screen .mocap-library select,.mocap-screen .mocap-transport button{min-height:48px;width:100%}.mocap-screen .mocap-fold>summary{min-height:48px}}.mocap-menu{display:contents}.mocap-menu-button,.mocap-menu-backdrop{display:none}@media (max-width: 720px){.mocap-screen:not(.mocap-screen--compare){position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;max-width:none;width:100%;height:100dvh;min-height:100dvh;margin:0;padding:0;overflow:hidden;background:#000}.mocap-screen:not(.mocap-screen--compare) .sub-screen-header{position:absolute;top:0;left:0;right:0;z-index:8;margin:0;padding:calc(8px + env(safe-area-inset-top)) 12px 36px;background:linear-gradient(to bottom,#000000b8,#0000)}.mocap-screen:not(.mocap-screen--compare) .mocap-menu-button{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:#04070d73;color:#f8fafc;font:inherit;font-size:.95rem;font-weight:700}.mocap-screen:not(.mocap-screen--compare) .mocap-stage,.mocap-screen:not(.mocap-screen--compare) .mocap-live{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;max-width:none;margin:0;border:0;border-radius:0}.mocap-screen:not(.mocap-screen--compare) .mocap-video,.mocap-screen:not(.mocap-screen--compare) .mocap-overlay,.mocap-screen:not(.mocap-screen--compare) .club-guide-overlay{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:center}.mocap-screen:not(.mocap-screen--compare):not(.mocap-menu-open) .mocap-menu>:not(.mocap-live):not(.mocap-status):not(.mocap-progress):not(.mocap-transport):not(.mocap-scrub):not(.mocap-desk){display:none}.mocap-screen:not(.mocap-screen--compare):not(.mocap-menu-open) .mocap-side>:not(.mocap-transport):not(.mocap-scrub):not(.mocap-mobile-capture){display:none}.mocap-screen:not(.mocap-screen--compare):not(.mocap-menu-open) .mocap-transport{display:none}.mocap-screen:not(.mocap-screen--compare):not(.mocap-menu-open) .mocap-mobile-capture{display:inline-flex;position:fixed;left:50%;bottom:calc(22px + env(safe-area-inset-bottom));z-index:30;pointer-events:auto;touch-action:manipulation;transform:translate(-50%);align-items:center;justify-content:center;min-width:168px;min-height:52px;padding:10px 28px;border-radius:999px;border:1px solid rgba(255,255,255,.72);background:#04070d33;color:#fff;font:inherit;font-size:1.05rem;font-weight:700;letter-spacing:.01em;text-shadow:0 1px 4px rgba(0,0,0,.95);box-shadow:none}.mocap-screen:not(.mocap-screen--compare):not(.mocap-menu-open) .mocap-mobile-capture:disabled{background:#04070d33;border-color:#ffffff47;color:#ffffff8c;cursor:default}.mocap-screen--camera:not(.mocap-menu-open) .mocap-transport,.mocap-screen--camera:not(.mocap-menu-open) .mocap-scrub{display:none}.mocap-screen:not(.mocap-screen--compare)>.mocap-status,.mocap-screen:not(.mocap-screen--compare) .mocap-status{position:absolute;left:12px;right:12px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:4;margin:0;color:#f8fafc;text-shadow:0 1px 3px rgba(0,0,0,.85)}.mocap-screen:not(.mocap-screen--compare):not(.mocap-screen--camera) .mocap-status{bottom:calc(88px + env(safe-area-inset-bottom))}.mocap-screen:not(.mocap-screen--compare):not(.mocap-menu-open) .mocap-progress{position:absolute;left:16px;right:16px;bottom:calc(124px + env(safe-area-inset-bottom));z-index:5;width:auto;margin:0}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .sub-screen-header{background:#071018}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-menu-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:6;margin:0;padding:0;border:0;background:#071018}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-live,.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-stage{pointer-events:none}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-menu:before{content:"";position:fixed;z-index:1;pointer-events:none;transform:translateZ(0);top:-20vh;right:0;bottom:-20vh;left:0;background:#071018}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-stage{z-index:0;opacity:0}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-menu>:not(.mocap-live):not(.mocap-desk){position:relative;z-index:3;flex-shrink:0}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-desk{position:static;z-index:auto}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-side{position:relative;z-index:3}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-controls button,.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-controls .mocap-upload,.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-transport button,.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-fold{background:#122033}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-controls button.mocap-primary,.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-transport button:first-child{background:#115e59}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-controls button.mocap-capture:disabled{background:#1e293b;border-color:#334155;color:#64748b}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-menu{display:flex;flex-direction:column;position:absolute;z-index:7;top:0;right:0;bottom:0;left:0;max-height:none;overflow:auto;padding:calc(72px + env(safe-area-inset-top)) 16px calc(40px + env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch;border:0;border-radius:0;background:#071018}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-desk,.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-side{display:flex;flex-direction:column}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-menu .mocap-status,.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-menu .mocap-transport,.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-menu .mocap-scrub,.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-menu .mocap-progress{position:static;inset:auto;display:flex;color:#cbd5e1;text-shadow:none}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-transport{display:grid;background:transparent;border-top:0;padding:8px 0 0}.mocap-screen.mocap-menu-open:not(.mocap-screen--compare) .mocap-transport button{display:none}}.ai-club-screen{max-width:560px;margin:0 auto;padding:8px 14px 32px;color:#e2e8f0}.ai-club-note,.ai-club-legend{color:#94a3b8;font-size:.88rem;line-height:1.45}.ai-club-stage{position:relative;width:min(420px,100%);margin:12px auto 0;background:#000}.ai-club-video{display:block;width:100%;height:auto}.ai-club-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.ai-club-progress progress{width:100%}.ai-club-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}.ai-club-toggle{display:flex;gap:6px;align-items:center}.ai-club-scrub{display:flex;flex-direction:column;gap:4px;margin-top:10px;color:#94a3b8;font-size:.85rem}.ai-club-scrub input[type=range]{width:100%}.ai-club-panel{display:grid;grid-template-columns:1fr auto;gap:8px 16px;margin:14px 0 0}.ai-club-panel dt{color:#94a3b8}.ai-club-panel dd{margin:0;text-align:right}.ai-club-error{color:#fca5a5}.football-screen{max-width:960px;margin:0 auto;padding:8px 14px 32px;color:#e2e8f0}.football-note{margin:8px 0 0;color:#94a3b8;font-size:.88rem;line-height:1.45}.football-load,.football-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}.football-file,.football-folder,.football-load button,.football-controls button{border:1px solid #2c3f5f;border-radius:999px;background:#02121ca6;color:#ecfeff;padding:8px 14px;font-size:.85rem;cursor:pointer;font-family:inherit}.football-file input{display:none}.football-folder{display:flex;gap:8px;align-items:center;border-radius:12px}.football-folder select{background:#0f172a;color:#e2e8f0;border:1px solid #334155;border-radius:8px;padding:4px 8px;font-family:inherit}.football-stage{position:relative;margin-top:12px;background:#000;min-height:180px}.football-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.football-video{display:block;width:100%;height:auto;background:#000}.football-empty{margin:0;padding:48px 16px;text-align:center;color:#94a3b8}.football-scrub{display:flex;flex-direction:column;gap:4px;margin-top:10px;color:#94a3b8;font-size:.85rem}.football-scrub input[type=range]{width:100%}.football-error{color:#fca5a5}.football-controls button:disabled,.football-scrub input:disabled{opacity:.45;cursor:default}.report-screen{max-width:980px;padding:8px 4px 40px}.report-toolbar,.report-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:16px 0}.report-toolbar label,.report-scrub{display:flex;flex-direction:column;gap:4px;color:#94a3b8;font-size:.85rem}.report-toolbar label{flex:1 1 180px;min-width:0}.report-toolbar select{width:100%;min-height:44px}.report-toolbar select,.report-screen button{font:inherit}.report-screen button{border:1px solid rgba(148,163,184,.35);background:#0f172a;color:#e2e8f0;border-radius:999px;padding:8px 14px}.report-screen button:disabled{opacity:.55}.report-section{margin-top:22px}.report-fold{margin:0 0 10px;border:1px solid #243044;border-radius:12px;background:#0f172ab8;overflow:hidden}.report-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:10px 14px;font-weight:650;font-size:.92rem;color:#e2e8f0}.report-fold>summary::-webkit-details-marker,.report-fold>summary::marker{display:none;content:""}.report-fold>summary:before{content:"";flex:0 0 auto;width:7px;height:7px;border-right:2px solid #5eead4;border-bottom:2px solid #5eead4;transform:rotate(-45deg) translateY(-1px)}.report-fold[open]>summary:before{transform:rotate(45deg) translateY(-2px)}.report-fold-body{padding:0 14px 4px}.report-chart-card figcaption{margin:0 0 6px;color:#cbd5e1;font-size:.85rem}.report-section h3,.report-card h4{margin:0 0 10px}.report-grid,.report-positions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.report-card{background:#0f172a8c;border:1px solid rgba(148,163,184,.25);border-radius:12px;padding:12px 14px}.report-kicker{display:block;color:#94a3b8;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px}.report-row{display:flex;justify-content:space-between;gap:12px;padding:4px 0;border-top:1px solid rgba(148,163,184,.15)}.report-status-complete,.report-status-good{color:#86efac}.report-status-partial,.report-status-estimated{color:#fde047}.report-status-insufficient,.report-status-missing{color:#fca5a5}.report-placeholder{color:#cbd5e1}.report-legend{display:flex;gap:16px;margin:0 0 12px;color:#cbd5e1;font-size:.85rem}.report-legend-you:before,.report-legend-base:before{content:"";display:inline-block;width:18px;height:3px;margin-right:6px;vertical-align:middle;border-radius:999px}.report-legend-you:before{background:#38bdf8}.report-legend-base:before{background:#2dd4bf}.report-chart-card{margin:0 0 14px}.report-chart{width:100%;height:auto;background:#0f172a66;border-radius:12px}.report-chart-line{fill:none;stroke:#38bdf8;stroke-width:2}.report-chart-line-baseline{stroke:#2dd4bf}.report-compare{overflow-x:auto}.report-compare-head,.report-compare-row{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,.7fr));gap:8px;padding:6px 0;border-top:1px solid rgba(148,163,184,.15)}.report-compare-head span,.report-compare-row span,.report-compare-row strong{min-width:0;overflow-wrap:anywhere}.report-compare-head{color:#94a3b8;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase}.report-compare-row strong{text-align:right}.report-chart-axis,.report-chart-event{stroke:#94a3b873;stroke-width:1}.report-chart-label{fill:#94a3b8;font-size:11px}.report-json{max-height:320px;overflow:auto;font-size:12px;white-space:pre-wrap}.report-trust{margin-top:12px}.report-scrub input{width:100%}.replay-screen{max-width:1280px}.replay-split{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.replay-stage{height:fit-content;align-self:start;min-height:0}.replay-field{height:520px;background:#071018;border-radius:12px;overflow:hidden}.replay-field canvas{display:block;width:100%!important;height:100%!important}.replay-stage .football-overlay,.replay-hit{top:0;left:0;right:auto;bottom:auto}.replay-hit{position:absolute;border:0;background:transparent;pointer-events:none}.replay-hit.is-on{pointer-events:auto;cursor:crosshair}.replay-calibrate,.replay-debug{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}.replay-calibrate select,.football-controls select{margin-left:6px;font:inherit}.replay-debug{display:block;color:#cbd5e1;font-size:.85rem}.replay-debug ul{margin:8px 0 0;padding-left:18px}.replay-id{color:#f8fafc;background:#0009;border-radius:4px;padding:1px 4px;font-size:12px}@media (max-width: 900px){.replay-split{grid-template-columns:1fr}}
