@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Newsreader:ital,opsz,wght@1,6..72,400&display=swap";:root{color:#f3f0e5;background:#071713;font-family:DM Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--cream: #f3f0e5;--ink: #0c201b;--glass: rgba(7, 23, 19, .68);--line: rgba(243, 240, 229, .17);--sage: #c5ebb3;--gold: #f2c479}*{box-sizing:border-box}[hidden]{display:none!important}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{background:#071713}button,a{font:inherit}button{color:inherit}.experience{position:fixed;inset:0}.world-canvas{display:block;width:100%;height:100%}.experience:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(4,17,14,.42),transparent 42%),linear-gradient(0deg,rgba(2,15,12,.28),transparent 40%)}.topbar{position:fixed;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:26px 34px;pointer-events:none}.brand,.topbar-actions{pointer-events:auto}.brand{display:flex;align-items:center;gap:11px;color:var(--cream);text-decoration:none;letter-spacing:-.02em}.brand-mark{display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(255,255,255,.36);border-radius:50%;font-size:10px;font-weight:600;letter-spacing:.08em}.brand-copy{display:grid;gap:2px}.brand-copy small{color:#f3f0e58a;font-size:8px;font-weight:500;letter-spacing:.11em;line-height:1;text-transform:uppercase}.topbar-actions{display:flex;align-items:center;gap:10px}.compact-button{min-height:41px;padding:0 15px;border:1px solid rgba(255,255,255,.18);border-radius:24px;background:#04120e5c;color:#ffffffb8;font-size:10px;letter-spacing:.04em;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer}.compact-button:hover{background:#04120eb8;color:#fff}.session-actions{display:none;align-items:center;margin-right:4px;border:1px solid rgba(255,255,255,.18);border-radius:30px;background:#04120e5c;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);overflow:hidden}.journey-active .session-actions{display:flex}.session-button{min-height:41px;padding:0 16px;border:0;border-right:1px solid rgba(255,255,255,.13);background:transparent;color:#ffffffc7;font-size:11px;cursor:pointer}.session-button:last-child{border-right:0}.session-button:hover{background:#ffffff14;color:#fff}.session-button-end{color:#f0b3a5}.icon-button{display:grid;width:43px;height:43px;padding:0;place-items:center;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:#04120e5c;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer;transition:background .2s ease,transform .2s ease}.icon-button:hover{background:#04120eb3;transform:translateY(-1px)}.icon-button svg{width:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.icon-button[data-active=true]{border-color:#c5ebb3b8;color:var(--sage);background:#184839b8}.icon-button[data-state=connecting] svg{animation:pulse 1s ease infinite}.icon-button[data-state=error]{border-color:#ef8d797a;color:#ef8d79}.icon-button[data-muted=true]{opacity:.55}.icon-button:disabled{cursor:not-allowed;opacity:.3}.tracking-pill{display:flex;align-items:center;gap:9px;min-height:43px;padding:0 16px;border:1px solid rgba(255,255,255,.18);border-radius:30px;background:#04120e5c;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-size:12px;letter-spacing:.02em}.control-panel{position:fixed;z-index:25;top:81px;right:150px;width:340px;padding:21px;border:1px solid rgba(255,255,255,.17);background:#061914e6;box-shadow:0 22px 60px #00000042;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .2s,visibility .2s,transform .2s}.control-panel.visible{opacity:1;visibility:visible;transform:none}.control-section+.control-section{margin-top:18px}.control-section>span{display:block;margin-bottom:9px;color:#ffffff7a;font-size:9px;letter-spacing:.13em;text-transform:uppercase}.segmented-control{display:grid;grid-template-columns:repeat(3,1fr);gap:3px}.segmented-control button{min-height:37px;border:1px solid rgba(255,255,255,.11);background:#ffffff09;color:#ffffffa8;font-size:11px;cursor:pointer}.segmented-control button.active{border-color:#c5ebb37a;background:#c5ebb31f;color:var(--sage)}.segmented-control button small{display:block;margin-top:2px;color:var(--gold);font-size:7px;text-transform:uppercase}.control-panel p{margin:18px 0 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.1);color:#ffffff6b;font-size:10px;line-height:1.5}.status-dot{width:7px;height:7px;border-radius:50%;background:#d8b875;box-shadow:0 0 0 4px #d8b8751f}[data-state=ready] .status-dot{background:#aee19a;box-shadow:0 0 0 4px #aee19a21}[data-state=error] .status-dot{background:#ef8d79;box-shadow:0 0 0 4px #ef8d7921}[data-state=loading-model] .status-dot,[data-state=requesting-camera] .status-dot{animation:pulse 1s ease infinite}.welcome-overlay{position:fixed;z-index:10;inset:0;display:flex;flex-direction:column;justify-content:center;padding:8vh 7vw 4vh;transition:opacity .45s ease,visibility .45s ease,filter .45s ease}.welcome-overlay.hidden{opacity:0;visibility:hidden;pointer-events:none}.welcome-overlay.behind{filter:blur(8px);pointer-events:none}.welcome-card{width:min(670px,58vw)}.eyebrow{margin:0 0 20px;color:var(--sage);font-size:11px;font-weight:600;letter-spacing:.19em;text-transform:uppercase}h1{margin:0;font-size:clamp(58px,7.3vw,112px);font-weight:500;line-height:.83;letter-spacing:-.062em}h1 em{font-family:Newsreader,Georgia,serif;font-weight:400;letter-spacing:-.045em}.intro{max-width:510px;margin:34px 0 30px;color:#f3f0e5c2;font-size:clamp(15px,1.3vw,18px);line-height:1.6}.workout-picker{display:grid;max-width:640px;grid-template-columns:repeat(4,1fr);gap:6px;margin:-8px 0 24px}.workout-picker button{min-height:54px;padding:10px 12px;border:1px solid rgba(255,255,255,.12);background:#04120e47;color:#ffffff9e;text-align:left;cursor:pointer}.workout-picker button.active{border-color:#c5ebb38c;background:#c5ebb31f;color:var(--sage)}.workout-picker span,.workout-picker small{display:block}.workout-picker span{font-size:10px;font-weight:600}.workout-picker small{margin-top:4px;color:#fff6;font-size:8px}.welcome-progress{margin-top:14px;color:#ffffff7a;font-size:10px;letter-spacing:.05em}.welcome-actions,.setup-actions{display:flex;align-items:center;gap:22px}.primary-button,.secondary-button,.text-button{border:0;cursor:pointer}.primary-button{display:inline-flex;min-height:54px;align-items:center;justify-content:center;gap:25px;padding:0 25px;border-radius:2px;background:var(--cream);color:var(--ink);font-size:13px;font-weight:600;transition:background .2s,transform .2s,opacity .2s}.primary-button:hover:not(:disabled){background:#fff;transform:translateY(-2px)}.primary-button:disabled{cursor:not-allowed;opacity:.34}.primary-button svg{width:17px;fill:none;stroke:currentColor;stroke-width:1.8}.secondary-button{min-height:50px;padding:0 22px;border:1px solid var(--line);border-radius:2px;background:transparent}.text-button{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.44);background:transparent;color:#ffffffd1;font-size:13px}.setup-note{display:flex;width:min(500px,100%);align-items:center;gap:14px;margin-top:38px;padding-top:20px;border-top:1px solid var(--line);color:#f3f0e59e;font-size:12px;line-height:1.5}.setup-note strong{color:#f3f0e5e6;font-weight:500}.setup-icon{display:grid;min-width:31px;height:31px;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--sage)}.local-note{position:absolute;right:38px;bottom:27px;display:flex;align-items:center;gap:8px;margin:0;color:#f3f0e58a;font-size:11px}.local-note span{width:6px;height:6px;border-radius:50%;background:#9ed692}.setup-overlay{position:fixed;z-index:40;inset:0;display:grid;padding:7vh 5vw;place-items:center;background:#030f0cb8;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.setup-overlay.visible{opacity:1;visibility:visible}.setup-panel{position:relative;display:grid;width:min(1180px,94vw);grid-template-columns:minmax(330px,.82fr) minmax(480px,1.3fr);gap:clamp(30px,5vw,78px);padding:clamp(30px,4.5vw,68px);border:1px solid rgba(255,255,255,.16);background:#071d18eb;box-shadow:0 30px 90px #0000005c}.close-button{position:absolute;z-index:2;top:16px;right:18px;width:37px;height:37px;border:0;background:transparent;color:#fff9;font-size:25px;cursor:pointer}.setup-copy{align-self:center}.setup-copy h2{margin:0 0 19px;max-width:400px;font-size:clamp(34px,4vw,58px);font-weight:500;line-height:.98;letter-spacing:-.045em}.setup-copy>p:not(.eyebrow){max-width:420px;color:#f3f0e5a3;font-size:14px;line-height:1.65}.setup-steps{display:grid;gap:13px;margin:28px 0;padding:0;list-style:none;color:#f3f0e5c7;font-size:12px}.setup-steps li{display:flex;align-items:center;gap:12px}.setup-steps li span{display:grid;width:24px;height:24px;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--sage);font-size:10px}.camera-status{display:flex;align-items:center;gap:10px;min-height:45px;color:#f3f0e5b3;font-size:12px}.calibration-status{display:grid;gap:8px;margin:2px 0 12px}.calibration-status>div{display:flex;justify-content:space-between;gap:15px;color:#ffffff8c;font-size:10px}.calibration-status strong{color:var(--gold);white-space:nowrap}.calibration-status[data-ready=true] strong{color:var(--sage)}.quality-track,.workout-progress-track{display:block;height:3px;overflow:hidden;background:#ffffff1a}.quality-track span,.workout-progress-track span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--gold),var(--sage));transition:width .25s ease}.setup-actions{margin-top:10px}.setup-actions{flex-wrap:wrap;gap:10px}.setup-actions .secondary-button{min-height:54px}.secondary-button[data-state=recording]{border-color:#f2c4798c;color:var(--gold)}.secondary-button[data-state=ready]{border-color:#c5ebb38c;color:var(--sage)}.sample-note{margin:12px 0 0!important;color:#f3f0e561!important;font-size:10px!important;line-height:1.45!important}.camera-frame{position:relative;min-height:410px;overflow:hidden;background:#06130f;aspect-ratio:16/10}.camera-frame canvas{width:100%;height:100%;object-fit:cover}.camera-placeholder{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:20px;background:radial-gradient(circle at center,#153c31,#071713 68%);transition:opacity .3s}.camera-placeholder.hidden{opacity:0;pointer-events:none}.camera-placeholder p{margin:0;color:#ffffff7a;font-size:12px}.person-guide{position:relative;width:80px;height:170px;border:1px dashed rgba(197,235,179,.28);border-radius:46% 46% 38% 38%}.person-guide:before{content:"";position:absolute;top:13px;left:50%;width:30px;height:30px;border:1px solid rgba(197,235,179,.55);border-radius:50%;transform:translate(-50%)}.person-guide span{position:absolute;top:51px;left:50%;width:1px;height:77px;background:#c5ebb380}.frame-corners:before,.frame-corners:after{content:"";position:absolute;width:45px;height:45px;border-top:1px solid var(--sage);top:19px}.frame-corners:before{left:19px;border-left:1px solid var(--sage)}.frame-corners:after{right:19px;border-right:1px solid var(--sage)}.journey-hud{position:fixed;z-index:12;left:32px;bottom:30px;display:flex;align-items:flex-end;gap:1px;opacity:0;transform:translateY(12px);transition:opacity .5s .25s,transform .5s .25s}.journey-active .journey-hud{opacity:1;transform:none}.metric{display:grid;min-width:108px;gap:7px;padding:15px 18px;border-top:1px solid rgba(255,255,255,.18);background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.metric span{color:#ffffff80;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.metric strong{font-size:19px;font-weight:500;letter-spacing:-.03em}.metric strong span{color:inherit;font-size:inherit;letter-spacing:inherit}.metric small{color:#ffffff80;font-size:9px;font-weight:400}.metric-primary{min-width:150px;padding-top:20px}.metric-primary strong{font-size:30px}.metric-primary>small{color:#ffffff61;font-size:8px;letter-spacing:.04em}.workout-hud{position:fixed;z-index:12;right:34px;bottom:84px;width:min(370px,calc(100vw - 68px));padding:15px 17px;border:1px solid rgba(255,255,255,.15);background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;transform:translateY(10px);transition:opacity .4s,transform .4s}.journey-active .workout-hud{opacity:1;transform:none}.workout-hud>div{display:flex;justify-content:space-between;gap:18px;margin-bottom:10px}.workout-hud span{color:var(--sage);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.workout-hud strong{color:#ffffffc2;font-size:10px;font-weight:500;text-align:right}.phase-indicator{position:fixed;z-index:12;right:35px;bottom:37px;display:flex;align-items:center;gap:12px;color:#ffffffa3;font-size:11px;letter-spacing:.13em;text-transform:uppercase;opacity:0;transition:opacity .5s .25s}.journey-active .phase-indicator{opacity:1}.phase-line{width:38px;height:1px;background:var(--gold);transform-origin:right;transition:transform .25s ease}[data-phase=drive] .phase-line{transform:scaleX(1.35)}[data-phase=finish] .phase-line{background:var(--sage)}.tracking-warning{position:fixed;z-index:30;top:88px;left:50%;padding:11px 17px;border:1px solid rgba(255,255,255,.17);border-radius:2px;background:#532b22d1;font-size:12px;transform:translate(-50%,-20px);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}.tracking-warning.visible{opacity:1;transform:translate(-50%)}.pause-overlay,.summary-overlay{position:fixed;z-index:35;inset:0;display:grid;place-items:center;padding:30px;background:#03120e7a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s}.pause-overlay.visible,.summary-overlay.visible{opacity:1;visibility:visible}.pause-overlay>div{text-align:center}.pause-overlay h2{margin:0;font-size:clamp(48px,7vw,86px);font-weight:500;letter-spacing:-.055em}.pause-overlay p:not(.eyebrow){margin:10px 0 28px;color:#ffffff8c}.pause-overlay .welcome-actions{justify-content:center}.summary-overlay{z-index:45;background:#03120ec2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.summary-card{width:min(680px,90vw);padding:clamp(36px,6vw,72px);border:1px solid rgba(255,255,255,.17);background:#071d18f0;text-align:center}.summary-card h2{margin:0 0 36px;font-size:clamp(46px,6vw,76px);font-weight:500;line-height:.92;letter-spacing:-.052em}.summary-card h2 em{font-family:Newsreader,Georgia,serif;font-weight:400}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 35px;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}.summary-grid div{display:grid;gap:9px;padding:21px 10px;border-right:1px solid rgba(255,255,255,.1)}.summary-grid div:last-child{border-right:0}.summary-grid span{color:#ffffff6b;font-size:8px;letter-spacing:.12em;text-transform:uppercase}.summary-grid strong{font-size:20px;font-weight:500}.summary-note{margin:-15px 0 28px;color:#ffffff73;font-size:10px}.summary-actions{display:flex;justify-content:center;gap:10px}.summary-actions .secondary-button{min-height:54px}.drawer-overlay{position:fixed;z-index:70;inset:0;display:grid;place-items:center;padding:24px;background:#020e0bc2;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}.drawer-overlay.visible{opacity:1;visibility:visible}.drawer-card{position:relative;width:min(760px,94vw);max-height:min(780px,90vh);overflow:auto;padding:clamp(32px,5vw,58px);border:1px solid rgba(255,255,255,.16);background:#071d18f7}.drawer-card h2{margin:0 0 24px;font-size:clamp(38px,5vw,62px);font-weight:500;letter-spacing:-.05em}.progress-stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.1)}.progress-stats div{display:grid;gap:5px;padding:18px;border-right:1px solid rgba(255,255,255,.1)}.progress-stats div:last-child{border-right:0}.progress-stats strong{font-size:23px;font-weight:500}.progress-stats span{color:#ffffff6b;font-size:8px;letter-spacing:.1em;text-transform:uppercase}.history-list{display:grid;margin-top:22px}.history-list article{display:flex;justify-content:space-between;gap:20px;padding:15px 2px;border-bottom:1px solid rgba(255,255,255,.1)}.history-list article>div{display:grid;gap:4px}.history-list article>div:last-child{text-align:right}.history-list strong{font-size:12px;font-weight:500}.history-list span,.history-list p{color:#ffffff6e;font-size:9px}.account-card>p:not(.eyebrow,.privacy-inline){color:#ffffff94;line-height:1.6}#signin-form{display:grid;gap:9px;margin:28px 0}#signin-form label{color:#ffffff7a;font-size:9px;letter-spacing:.1em;text-transform:uppercase}#signin-form>div{display:flex;gap:8px}#signin-form input{flex:1;min-width:0;padding:0 16px;border:1px solid rgba(255,255,255,.16);background:#ffffff0a;color:#fff;outline:none}#signin-form input:focus{border-color:#c5ebb38c}.consent-check{display:flex;align-items:flex-start;gap:9px;color:#ffffff7a!important;font-size:9px!important;letter-spacing:0!important;line-height:1.5;text-transform:none!important}.consent-check input{flex:0 0 auto!important;min-height:0!important;margin-top:2px;accent-color:#c5ebb3}.consent-check a{color:#c5ebb3}.account-actions{display:flex;flex-wrap:wrap;gap:8px}.account-actions .secondary-button{min-height:54px}.danger-button{color:#ef9f8e;border-bottom-color:#ef9f8e6b}.privacy-inline{margin:28px 0 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);color:#ffffff61;font-size:9px;line-height:1.6}.policy-links{display:flex;gap:16px;margin:13px 0 0}.policy-links a{color:#ffffff94;font-size:9px}.command-toast{position:fixed;z-index:60;top:89px;left:50%;padding:11px 17px;border:1px solid rgba(255,255,255,.16);border-radius:30px;background:#051914d1;color:#ffffffc7;font-size:11px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);opacity:0;transform:translate(-50%,-10px);transition:opacity .2s,transform .2s;pointer-events:none}.command-toast.visible{opacity:1;transform:translate(-50%)}@keyframes pulse{50%{opacity:.35;transform:scale(.72)}}@media(max-width:820px){.topbar{padding:18px}.tracking-pill,.compact-button{display:none}.session-actions{position:fixed;top:70px;right:18px}.topbar-actions .icon-button:nth-of-type(3),.topbar-actions .icon-button:nth-of-type(4){display:none}.control-panel{top:72px;right:18px;width:min(340px,calc(100vw - 36px))}.welcome-overlay{justify-content:flex-end;padding:24px 24px 56px}.welcome-card{width:100%}h1{font-size:clamp(51px,15vw,78px)}.intro{margin:24px 0}.workout-picker{grid-template-columns:repeat(2,1fr)}.setup-note{margin-top:27px}.local-note{display:none}.setup-overlay{padding:0;overflow:auto}.setup-panel{min-height:100%;width:100%;grid-template-columns:1fr;padding:70px 24px 30px}.camera-frame{grid-row:1;min-height:250px}.journey-hud{right:16px;left:16px;bottom:18px;display:grid;grid-template-columns:repeat(4,1fr)}.metric,.metric-primary{min-width:0;padding:12px 9px}.metric-primary strong{font-size:21px}.metric strong{font-size:16px}.phase-indicator{display:none}.workout-hud{right:16px;bottom:120px;width:calc(100vw - 32px)}.summary-grid{grid-template-columns:repeat(2,1fr)}.summary-grid div:nth-child(2){border-right:0}.summary-grid div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.1)}.progress-stats{grid-template-columns:repeat(2,1fr)}.progress-stats div:nth-child(2){border-right:0}#signin-form>div{display:grid}#signin-form input{min-height:50px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
