:root{--background:#fff;--surface:#fff;--surface-strong:#f7faff;--surface-inset:#edf3fb;--text:#0f172a;--text-muted:#31496c;--text-soft:#63799a;--border:#dfe7f3;--border-strong:#bccbe0;--accent:#2f5f9f;--accent-strong:#244e87;--accent-soft:#edf5ff;--brand-red:#ff3b35;--brand-red-strong:#d62620;--brand-red-soft:#fff0ef;--blue:#2f5f9f;--blue-soft:#edf5ff;--amber:#c47a0c;--amber-soft:#fff3d8;--danger:var(--brand-red-strong);--danger-soft:#ffe8e4;--ok:#188351;--ok-soft:#e7f8ef;--shadow:0 20px 55px #1c27311f;--radius:8px}*{box-sizing:border-box}html{background:var(--background);scroll-behavior:smooth;min-height:100%}body{min-height:100%;color:var(--text);background:var(--background);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button{font:inherit}.app-shell{min-height:100vh;padding:28px}.analyzer{flex-direction:column;gap:18px;max-width:1480px;margin:0 auto;display:flex}.app-header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.brand-block{flex-direction:column;gap:8px;display:flex}.brand-mark{width:fit-content;color:var(--accent-strong);text-transform:uppercase;align-items:center;gap:10px;font-size:.82rem;font-weight:750;line-height:1;display:inline-flex}.brand-mark span{background:var(--accent-soft);width:28px;height:28px;color:var(--accent-strong);border:1px solid #2f5f9f3d;border-radius:8px;place-items:center;display:grid}h1{max-width:760px;color:var(--text);letter-spacing:0;margin:0;font-size:clamp(2rem,4vw,4.8rem);font-weight:760;line-height:.98}.header-copy{max-width:710px;color:var(--text-muted);margin:0;font-size:1.02rem;line-height:1.55}.header-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;min-width:290px;display:flex}.button{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);min-height:42px;color:var(--text);cursor:pointer;justify-content:center;align-items:center;gap:9px;padding:0 14px;font-size:.9rem;font-weight:700;line-height:1;transition:background .14s,border-color .14s,color .14s,transform .14s;display:inline-flex}.button:hover:not(:disabled){border-color:#8ea3bf;transform:translateY(-1px)}.button:focus-visible{outline-offset:2px;outline:3px solid #2f5f9f38}.button:disabled{cursor:not-allowed;opacity:.52}.button-primary{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 16px 30px #2f5f9f3d}.button-primary:hover:not(:disabled){border-color:var(--accent-strong);background:var(--accent-strong)}.button-danger{background:var(--brand-red-soft);color:var(--brand-red-strong);border-color:#b4231847}.button-ghost{background:0 0}[role=tabpanel][hidden]{display:none}.app-tabs{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-wrap:wrap;gap:4px;width:fit-content;padding:4px;display:inline-flex;box-shadow:0 10px 28px #1c273112}.app-tabs.primary-tabs{grid-template-columns:repeat(3,minmax(180px,1fr));width:min(100%,840px);display:grid}.app-tab{min-height:38px;color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:0 13px;font-size:.9rem;font-weight:760;line-height:1;display:inline-flex}.app-tab:hover{background:var(--surface-strong);color:var(--text)}.app-tab:focus-visible{outline-offset:2px;outline:3px solid #2f5f9f38}.app-tab.active{background:var(--accent);color:#fff}.main-grid{grid-template-columns:minmax(0,1fr) 390px;align-items:start;gap:18px;display:grid}.capture-column{min-width:0}.camera-workout-layout{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);align-items:stretch;gap:14px;display:grid}.camera-workout-video{min-width:0}.webcam-frame{aspect-ratio:16/9;border:1px solid var(--border);border-radius:var(--radius);width:100%;min-height:480px;box-shadow:var(--shadow);background:linear-gradient(135deg,#2d71e81f,#0000 40%),#101820;position:relative;overflow:hidden}.webcam-frame video,.pose-overlay{width:100%;height:100%;position:absolute;inset:0}.webcam-frame video{object-fit:cover;transform:scaleX(-1)}.pose-overlay{pointer-events:none;transform:scaleX(-1)}.camera-workout-guide{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);align-content:start;gap:12px;display:grid;overflow:hidden}.camera-guide-header{padding:14px 14px 0}.camera-guide-header span{color:var(--accent-strong);text-transform:uppercase;font-size:.72rem;font-weight:780;line-height:1}.camera-guide-header h3{color:var(--text);text-transform:capitalize;margin:7px 0 0;font-size:1.05rem;line-height:1.15}.camera-guide-header p{color:var(--text-muted);margin:6px 0 0;font-size:.82rem;line-height:1.35}.camera-guide-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 14px;display:grid}.camera-guide-media{aspect-ratio:4/3;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-strong);width:calc(100% - 28px);margin:0 14px;position:relative;overflow:hidden}.camera-guide-media img{object-fit:contain}.camera-guide-tags{flex-wrap:wrap;gap:6px;padding:0 14px;display:flex}.camera-guide-tags span{border:1px solid var(--border);background:var(--surface-strong);color:var(--text-muted);text-transform:capitalize;border-radius:999px;padding:6px 8px;font-size:.7rem;font-weight:740;line-height:1}.camera-guide-steps{gap:7px;margin:0;padding:0 16px 0 32px;display:grid}.camera-guide-steps li,.camera-guide-checks li{color:var(--text-muted);font-size:.8rem;line-height:1.35}.camera-guide-checks{border-top:1px solid var(--border);background:var(--surface-strong);padding:12px 14px 14px}.camera-guide-checks strong{color:var(--text);font-size:.82rem;line-height:1.2;display:block}.camera-guide-checks ul{gap:6px;margin:8px 0 0;padding-left:18px;display:grid}.camera-empty{text-align:center;place-items:center;padding:28px;display:grid;position:absolute;inset:0}.empty-panel{border-radius:var(--radius);color:#fff;background:#080e14b8;border:1px solid #ffffff1f;width:min(460px,100%);padding:28px}.empty-panel h2{letter-spacing:0;margin:0 0 8px;font-size:1.35rem}.empty-panel p{color:#ffffffb8;margin:0;line-height:1.5}.frame-hud{pointer-events:none;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex;position:absolute;bottom:14px;left:14px;right:14px}.hud-pill{border-radius:var(--radius);color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c121abd;border:1px solid #fff3;align-items:center;gap:8px;min-height:34px;padding:0 10px;font-size:.82rem;font-weight:700;line-height:1;display:inline-flex}.status-dot{background:var(--text-soft);border-radius:999px;width:9px;height:9px}.status-dot.live{background:#2fe4a1;box-shadow:0 0 0 5px #2fe4a129}.status-dot.warn{background:#f4a62a;box-shadow:0 0 0 5px #f4a62a2e}.frame-alerts{border-radius:var(--radius);color:#fff5de;pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1a1207c7;border:1px solid #f4dba3a6;gap:6px;max-width:min(390px,100% - 28px);padding:10px 12px;font-size:.82rem;line-height:1.35;display:grid;position:absolute;top:14px;left:14px}.frame-alerts.critical{color:#ffe8e4;background:#340c0ad1;border-color:#f1b9b2b8}.frame-alerts strong{color:#fff;text-transform:uppercase;font-size:.72rem;font-weight:790;line-height:1}.below-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px;display:grid}.summary-tile{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-height:116px;padding:16px}.summary-tile span{color:var(--text-soft);text-transform:uppercase;font-size:.76rem;font-weight:780;line-height:1}.summary-tile strong{margin-top:14px;font-size:2rem;font-weight:780;line-height:1;display:block}.summary-tile p{color:var(--text-muted);margin:10px 0 0;font-size:.9rem;line-height:1.4}.config-panel{margin-top:14px;overflow:hidden}.config-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:18px;display:flex}.config-controls{grid-template-columns:150px minmax(0,1fr);gap:12px 14px;padding:18px;display:grid}.field-label{color:var(--text-muted);text-transform:uppercase;font-size:.82rem;font-weight:760;line-height:42px}.select-input,.config-textarea{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text);font:inherit}.select-input{min-height:42px;padding:0 12px}.config-textarea{resize:vertical;min-height:240px;padding:12px;font-family:Cascadia Code,SFMono-Regular,Consolas,monospace;font-size:.78rem;line-height:1.5}.select-input:focus-visible,.config-textarea:focus-visible{outline-offset:2px;outline:3px solid #2f5f9f38}.config-error{border-radius:var(--radius);background:var(--danger-soft);color:var(--danger);grid-column:2;margin:0;padding:10px 12px;font-size:.86rem;line-height:1.45}.config-actions{flex-wrap:wrap;grid-column:2;gap:10px;display:flex}.panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:0 18px 48px #2f5f9f14}.nutrition-workspace{gap:18px;display:grid}.nutrition-hero{justify-content:space-between;align-items:flex-start;gap:18px;padding:22px;display:flex}.section-kicker{color:var(--accent-strong);text-transform:uppercase;align-items:center;gap:8px;font-size:.8rem;font-weight:790;display:inline-flex}.nutrition-hero h2{letter-spacing:0;margin:10px 0 8px;font-size:clamp(1.8rem,3vw,3.2rem);line-height:1}.nutrition-hero p{max-width:760px;color:var(--text-muted);margin:0;font-size:1rem;line-height:1.55}.nutrition-status{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-strong);max-width:390px;min-height:42px;color:var(--text-muted);align-items:center;gap:9px;padding:10px 12px;font-size:.88rem;font-weight:700;line-height:1.35;display:inline-flex}.nutrition-grid{grid-template-columns:minmax(0,1fr) 390px;align-items:start;gap:18px;display:grid}.nutrition-primary{gap:14px;min-width:0;display:grid}.nutrition-upload{border-style:dashed;justify-content:space-between;align-items:center;gap:18px;padding:20px;display:flex}.nutrition-upload.dragging{border-color:var(--accent);background:var(--accent-soft)}.nutrition-upload-copy{align-items:center;gap:14px;display:flex}.upload-icon{border-radius:var(--radius);background:var(--accent-soft);width:52px;height:52px;color:var(--accent-strong);flex:none;place-items:center;display:grid}.nutrition-upload h3{margin:0;font-size:1.1rem}.nutrition-upload p,.food-preview-actions p,.nutrition-analysis-note{color:var(--text-muted);margin:6px 0 0;font-size:.88rem;line-height:1.45}.nutrition-actions{flex-wrap:wrap;gap:10px;display:inline-flex}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.compact{padding:16px}.food-camera-panel,.food-preview-panel,.nutrition-result,.nutrition-history{overflow:hidden}.food-camera-preview{border-top:1px solid var(--border);background:#101820;min-height:260px;position:relative;overflow:hidden}.food-camera-preview video{object-fit:cover;width:100%;height:100%;min-height:260px;display:block}.food-camera-empty{color:#ffffffbd;align-content:center;place-items:center;gap:10px;font-size:.9rem;font-weight:700;display:grid;position:absolute;inset:0}.food-preview-content{grid-template-columns:minmax(240px,.7fr) minmax(220px,1fr);align-items:center;gap:18px;padding:16px;display:grid}.food-preview-content img{border-radius:var(--radius);object-fit:cover;width:100%;max-height:340px}.food-preview-actions{gap:12px;display:grid}.macro-grid,.nutrition-detail-grid{background:var(--border);gap:1px;display:grid}.macro-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.nutrition-detail-grid{border-top:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr))}.nutrition-metric{background:var(--surface);gap:8px;padding:15px;display:grid}.nutrition-metric span{color:var(--text-muted);text-transform:uppercase;font-size:.78rem;font-weight:760}.nutrition-metric strong{color:var(--text);align-items:baseline;gap:5px;font-size:1.25rem;line-height:1;display:flex}.nutrition-metric.large strong{color:var(--accent-strong);font-size:2rem}.nutrition-metric small{color:var(--text-soft);font-size:.74rem;font-weight:760}.ingredient-list{border-top:1px solid var(--border);gap:8px;padding:16px;display:grid}.ingredient-list h4{margin:0;font-size:.95rem}.ingredient-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-strong);justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.ingredient-row div{gap:4px;display:grid}.ingredient-row strong,.nutrition-log-entry strong{color:var(--text);font-size:.92rem}.ingredient-row span,.nutrition-log-macros span{color:var(--text-muted);font-size:.82rem;font-weight:700}.nutrition-notes{border-top:1px solid var(--border);gap:8px;padding:16px;display:grid}.nutrition-notes span{color:var(--text-muted);text-transform:uppercase;font-size:.82rem;font-weight:760}.nutrition-notes textarea{border:1px solid var(--border-strong);border-radius:var(--radius);width:100%;min-height:86px;color:var(--text);font:inherit;resize:vertical;padding:12px;line-height:1.45}.nutrition-notes textarea:focus-visible{outline-offset:2px;outline:3px solid #2f5f9f38}.result-actions{border-top:1px solid var(--border);padding:16px}.nutrition-analysis-note{border-top:1px solid var(--border);background:var(--surface-strong);padding:14px 16px}.nutrition-history{position:sticky;top:18px}.nutrition-log-summary{background:var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.nutrition-log-summary div{background:var(--surface);gap:7px;padding:13px;display:grid}.nutrition-log-summary span{color:var(--text-muted);text-transform:uppercase;font-size:.72rem;font-weight:780}.nutrition-log-summary strong{color:var(--accent-strong);font-size:1.3rem;line-height:1}.nutrition-log-actions{border-top:1px solid var(--border);gap:10px;padding:14px;display:flex}.nutrition-log-actions .button{flex:1}.nutrition-log-list{border-top:1px solid var(--border);gap:10px;max-height:520px;padding:14px;display:grid;overflow:auto}.nutrition-log-entry{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:10px;padding:12px;display:grid}.nutrition-log-entry-main{justify-content:space-between;gap:10px;display:flex}.nutrition-log-entry-main div{gap:4px;display:grid}.nutrition-log-entry time{color:var(--text-soft);font-size:.74rem;font-weight:700}.nutrition-log-macros{flex-wrap:wrap;gap:8px;display:flex}.nutrition-log-macros span{border-radius:var(--radius);background:var(--surface-strong);padding:6px 8px}.nutrition-log-entry p{color:var(--text-muted);margin:0;font-size:.84rem;line-height:1.45}.spin-icon{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.side-column{gap:14px;display:grid;position:sticky;top:18px}.report-panel,.activity-panel{overflow:hidden}.activity-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:18px;display:flex}.activity-actions{gap:8px;display:inline-flex}.icon-button{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);width:34px;height:34px;color:var(--text-muted);cursor:pointer;place-items:center;transition:background .14s,border-color .14s,color .14s,transform .14s;display:inline-grid}.icon-button:hover{color:var(--text);border-color:#8ea3bf;transform:translateY(-1px)}.icon-button:focus-visible{outline-offset:2px;outline:3px solid #2f5f9f38}.activity-list{gap:10px;max-height:360px;padding:14px;display:grid;overflow:auto}.activity-empty,.activity-entry{border-radius:var(--radius);grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px;display:grid}.activity-empty{background:var(--surface-strong);color:var(--text-muted);font-size:.88rem;line-height:1.45}.activity-entry{border:1px solid var(--border);background:var(--surface)}.activity-entry.info{background:var(--blue-soft);border-color:#cfe0ff}.activity-entry.success{background:var(--ok-soft);border-color:#bfead2}.activity-entry.warning{background:var(--amber-soft);border-color:#f4dba3}.activity-entry.error{background:var(--danger-soft);border-color:#f1b9b2}.activity-icon{color:var(--text-muted);margin-top:2px;display:inline-flex}.activity-entry.info .activity-icon{color:var(--blue)}.activity-entry.success .activity-icon{color:var(--ok)}.activity-entry.warning .activity-icon{color:var(--amber)}.activity-entry.error .activity-icon{color:var(--danger)}.activity-copy{min-width:0}.activity-row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.activity-row strong{color:var(--text);font-size:.9rem;line-height:1.2}.activity-row time{color:var(--text-soft);white-space:nowrap;font-size:.74rem;font-weight:700}.activity-test{color:var(--text-soft);text-transform:uppercase;margin-top:3px;font-size:.74rem;font-weight:760;display:block}.activity-copy p{color:var(--text-muted);margin:7px 0 0;font-size:.84rem;line-height:1.42}.panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:18px;display:flex}.panel-title{margin:0;font-size:1rem;font-weight:790}.panel-subtitle{color:var(--text-soft);margin:5px 0 0;font-size:.82rem;line-height:1.35}.status-badge{border-radius:var(--radius);justify-content:center;align-items:center;min-height:30px;padding:0 10px;font-size:.78rem;font-weight:780;line-height:1;display:inline-flex}.status-badge.ok{background:var(--ok-soft);color:var(--ok)}.status-badge.idle{background:var(--surface-strong);color:var(--text-muted)}.metrics-list{background:var(--border);gap:1px;display:grid}.metric-row{background:var(--surface);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px 18px;display:grid}.metric-label{color:var(--text-muted);font-size:.88rem;font-weight:650}.metric-value{color:var(--text);text-align:right;white-space:nowrap;font-size:1.05rem;font-weight:790}.metric-value.large{color:var(--accent-strong);font-size:1.65rem}.warnings{gap:10px;padding:18px;display:grid}.warning-item,.notice-item{border-radius:var(--radius);gap:10px;padding:12px;font-size:.88rem;line-height:1.45;display:flex}.warning-item{background:var(--amber-soft);color:#7b4a00}.notice-item{background:var(--blue-soft);color:#17498f}.safety-note{border-top:1px solid var(--border);background:var(--surface-strong);color:var(--text-muted);padding:16px 18px;font-size:.84rem;line-height:1.5}.json-preview{border-top:1px solid var(--border);color:#cce8ef;background:#101820;max-height:120px;margin:0;padding:14px 18px;font-size:.78rem;line-height:1.55;overflow:auto}.avatar-loading-panel{padding:18px}.avatar-demo-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:18px;display:grid}.avatar-stage-panel{overflow:hidden}.avatar-stage-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;display:flex}.avatar-stage-header h2{margin:0;font-size:1.2rem;line-height:1.2}.avatar-stage-header p{max-width:680px;color:var(--text-muted);margin:6px 0 0;font-size:.92rem;line-height:1.45}.avatar-mode-badges{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.avatar-mode-badges span{border-radius:var(--radius);background:var(--surface-strong);min-height:28px;color:var(--text-muted);text-transform:uppercase;align-items:center;padding:0 9px;font-size:.74rem;font-weight:760;line-height:1;display:inline-flex}.avatar-canvas-grid{grid-template-columns:1fr;gap:14px;padding:14px;display:grid}.avatar-canvas-grid.compare{grid-template-columns:repeat(2,minmax(0,1fr))}.avatar-canvas-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.avatar-canvas-header{border-bottom:1px solid var(--border);background:var(--surface-strong);justify-content:space-between;align-items:center;gap:10px;min-height:42px;padding:0 12px;display:flex}.avatar-canvas-header strong{font-size:.9rem;line-height:1.2}.avatar-canvas-header span{color:var(--text-soft);text-transform:uppercase;white-space:nowrap;font-size:.76rem;font-weight:760;line-height:1}.avatar-canvas-frame{aspect-ratio:1;background:var(--surface-strong);width:100%;min-height:440px;position:relative}.avatar-joint-label,.avatar-angle-label{max-width:118px;color:var(--text);text-align:center;text-transform:capitalize;white-space:normal;background:#ffffffe6;border:1px solid #12171d14;border-radius:6px;padding:4px 6px;font-size:.62rem;font-weight:760;line-height:1.15;display:inline-flex}.avatar-angle-label{color:var(--accent-strong);background:#dff7f5f2;border-color:#2f5f9f33}.avatar-angle-table{border-top:1px solid var(--border);background:var(--surface-strong);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;padding:14px;display:grid}.avatar-angle-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:4px;padding:12px;display:grid}.avatar-angle-row span{color:var(--text-muted);text-transform:uppercase;font-size:.78rem;font-weight:760}.avatar-angle-row strong{color:var(--text);font-size:1rem;line-height:1.15}.avatar-angle-row small{color:var(--text-soft);font-size:.76rem;line-height:1.35}.avatar-angle-row.matched{background:var(--ok-soft);border-color:#bfead2}.avatar-angle-row.close{background:var(--blue-soft);border-color:#cfe0ff}.avatar-angle-row.off{background:var(--amber-soft);border-color:#f4dba3}.avatar-side-column{gap:14px;display:grid;position:sticky;top:18px}.panel-header.compact{padding:16px}.avatar-controls-panel,.avatar-instructions-panel{overflow:hidden}.avatar-controls-body,.avatar-instructions-body{gap:12px;padding:16px;display:grid}.avatar-control-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.avatar-range-label{color:var(--text-muted);justify-content:space-between;align-items:center;gap:10px;font-size:.82rem;font-weight:760;display:flex}.avatar-range-label strong{color:var(--text)}.avatar-range{width:100%;accent-color:var(--accent)}.avatar-progress-track{background:var(--surface-inset);border-radius:999px;height:8px;overflow:hidden}.avatar-progress-track span{border-radius:inherit;background:var(--accent);height:100%;display:block}.avatar-toggle{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:.88rem;font-weight:700;line-height:1.25;display:flex}.avatar-toggle input{width:18px;height:18px;accent-color:var(--accent)}.avatar-active-cue{border-radius:var(--radius);background:var(--accent-soft);color:var(--accent-strong);margin:0;padding:12px;font-size:.9rem;font-weight:740;line-height:1.45}.avatar-instruction-list{color:var(--text-muted);gap:8px;margin:0;padding-left:18px;font-size:.9rem;line-height:1.45;display:grid}.avatar-comparison-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.avatar-comparison-summary div{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-strong);padding:12px}.avatar-comparison-summary span{color:var(--text-soft);text-transform:uppercase;font-size:.72rem;font-weight:760;line-height:1.1;display:block}.avatar-comparison-summary strong{color:var(--accent-strong);margin-top:8px;font-size:1.6rem;line-height:1;display:block}.avatar-message-list{gap:8px;display:grid}.avatar-message-list p{border-radius:var(--radius);background:var(--blue-soft);color:#17498f;margin:0;padding:10px 12px;font-size:.86rem;line-height:1.42}.avatar-safety-note{border-top:1px solid var(--border);color:var(--text-muted);gap:8px;margin:0;padding-top:12px;font-size:.82rem;line-height:1.45;display:flex}.realistic-solution-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:18px;display:grid}.realistic-stage-panel,.realistic-controls-panel,.anatomy-muscle-panel{overflow:hidden}.realistic-mode-tabs{border-bottom:1px solid var(--border);background:var(--surface-strong);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px 14px;display:grid}.realistic-mode-tab{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-height:42px;color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-size:.9rem;font-weight:760;line-height:1.15;display:inline-flex}.realistic-mode-tab.active{border-color:var(--accent);background:var(--accent);color:#fff}.realistic-mode-tab:focus-visible{outline-offset:2px;outline:3px solid #2f5f9f38}.realistic-canvas-area{padding:14px}.workout-library-panel{gap:14px;padding:14px;display:grid}.workout-library-header{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);justify-content:space-between;align-items:flex-start;gap:14px;padding:14px;display:flex}.workout-library-eyebrow{color:var(--accent-strong);text-transform:uppercase;font-size:.74rem;font-weight:780;line-height:1;display:block}.workout-library-header h3,.workout-animation-detail h4{color:var(--text);margin:7px 0 0;font-size:1.12rem;line-height:1.15}.workout-library-header p,.workout-detail-copy{color:var(--text-muted);margin:8px 0 0;font-size:.86rem;line-height:1.45}.workout-source-link{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-strong);min-height:34px;color:var(--text);white-space:nowrap;align-items:center;gap:7px;padding:0 10px;font-size:.82rem;font-weight:760;text-decoration:none;display:inline-flex}.workout-source-link:focus-visible{outline-offset:2px;outline:3px solid #2f5f9f38}.workout-search-form{grid-template-columns:minmax(180px,1fr) auto auto;align-items:end;gap:10px;display:grid}.workout-search-field{gap:7px;display:grid}.workout-search-field span{color:var(--text-soft);text-transform:uppercase;font-size:.74rem;font-weight:760;line-height:1}.workout-search-field input{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);width:100%;min-height:42px;color:var(--text);font:inherit;padding:0 12px}.workout-search-field input:focus{border-color:var(--accent);outline:3px solid #2f5f9f2e}.workout-filter-chips,.workout-detail-tags,.workout-animation-tags{flex-wrap:wrap;gap:7px;display:flex}.workout-filter-chips span,.workout-detail-tags span,.workout-animation-tags small{border:1px solid var(--border);background:var(--surface-strong);color:var(--text-muted);text-transform:capitalize;border-radius:999px;padding:6px 8px;font-size:.72rem;font-weight:760;line-height:1}.workout-filter-chips span.active{color:var(--brand-red-strong);background:#ff3b351a;border-color:#ff3b3538}.workout-animation-tags small.detectable{background:var(--ok-soft);color:var(--ok);border-color:#1883512e}.workout-detection-panel{border-top:1px solid var(--border);gap:10px;padding-top:12px;display:grid}.workout-selected-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.workout-detection-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-strong);gap:10px;padding:12px;display:grid}.workout-detection-card>div:first-child{justify-content:space-between;align-items:center;gap:10px;display:flex}.workout-detection-card strong{color:var(--text);font-size:.9rem;line-height:1.2}.workout-detection-card small{background:var(--blue-soft);color:#17498f;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:5px 7px;font-size:.68rem;font-weight:760;line-height:1}.workout-detection-card p{color:var(--text-muted);margin:0;font-size:.82rem;line-height:1.4}.workout-detection-lists{gap:10px;display:grid}.workout-detection-lists span{color:var(--text-soft);text-transform:uppercase;font-size:.72rem;font-weight:760;line-height:1}.workout-detection-lists ul{gap:5px;margin:7px 0 0;padding-left:18px;display:grid}.workout-detection-lists li{color:var(--text-muted);font-size:.78rem;line-height:1.35}.workout-track-button{width:100%}.workout-modal-backdrop{z-index:60;background:#0a1016a3;place-items:center;padding:28px;display:grid;position:fixed;inset:0;overflow:auto}.workout-modal{border-radius:var(--radius);background:var(--surface);border:1px solid #ffffff2e;width:min(1120px,100%);max-height:min(92vh,920px);overflow:hidden;box-shadow:0 28px 90px #09101657}.workout-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:14px;padding:18px;display:flex}.workout-modal-header h3{color:var(--text);text-transform:capitalize;margin:7px 0 0;font-size:1.45rem;line-height:1.15}.workout-modal-grid{grid-template-columns:minmax(300px,.95fr) minmax(320px,1.05fr);gap:0;max-height:calc(min(92vh,920px) - 80px);display:grid;overflow:auto}.workout-modal-media{border-right:1px solid var(--border);background:var(--surface-strong);min-height:560px;position:sticky;top:0}.workout-modal-media img{object-fit:contain}.workout-modal-quality-badge{z-index:1;color:var(--text-muted);background:#ffffffe0;border:1px solid #0c141c1f;border-radius:999px;padding:7px 9px;font-size:.72rem;font-weight:780;line-height:1;position:absolute;bottom:14px;right:14px}.workout-modal-copy{align-content:start;gap:14px;padding:18px;display:grid}.workout-unmapped-note{border-radius:var(--radius);background:#ff3b3512;border:1px solid #b423182e;gap:6px;padding:12px;display:grid}.workout-unmapped-note strong{color:var(--brand-red-strong);font-size:.86rem;line-height:1.2}.workout-unmapped-note p{color:var(--text-muted);margin:0;font-size:.8rem;line-height:1.4}.workout-tracking-banner{border-color:#2f5f9f47;gap:14px;margin-bottom:18px;display:grid;overflow:hidden}.workout-tracking-header{justify-content:space-between;align-items:flex-start;gap:14px;padding:16px;display:flex}.workout-tracking-header span{color:var(--accent-strong);text-transform:uppercase;font-size:.74rem;font-weight:780;line-height:1}.workout-tracking-header h2{color:var(--text);text-transform:capitalize;margin:7px 0 0;font-size:1.2rem;line-height:1.15}.workout-tracking-header p{max-width:760px;color:var(--text-muted);margin:8px 0 0;font-size:.9rem;line-height:1.45}.workout-tracking-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.workout-tracking-criteria{border-top:1px solid var(--border);background:var(--surface-strong);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px 16px 16px;display:grid}.workout-tracking-criteria div{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:12px}.workout-tracking-criteria strong{color:var(--text);font-size:.84rem;line-height:1.2;display:block}.workout-tracking-criteria ul{gap:6px;margin:9px 0 0;padding-left:18px;display:grid}.workout-tracking-criteria li{color:var(--text-muted);font-size:.82rem;line-height:1.35}.muscle-workout-picker{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:14px;padding:14px;display:grid}.muscle-picker-header{align-items:flex-start;gap:12px;display:flex}.muscle-picker-icon{border-radius:var(--radius);width:38px;height:38px;color:var(--brand-red-strong);background:#ff3b351a;flex:none;place-items:center;display:grid}.muscle-picker-header h4{color:var(--text);margin:6px 0 0;font-size:1rem;line-height:1.15}.muscle-picker-header p{color:var(--text-muted);margin:6px 0 0;font-size:.84rem;line-height:1.4}.muscle-picker-grid{grid-template-columns:minmax(210px,.9fr) minmax(240px,1fr);align-items:start;gap:14px;display:grid}.muscle-picker-avatar{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-strong);justify-items:center;gap:12px;padding:12px;display:grid;overflow:hidden}.muscle-picker-avatar .rbh-wrapper{min-height:300px}.muscle-picker-avatar svg{display:block}.muscle-view-tabs{border:1px solid var(--border);background:var(--surface);border-radius:999px;gap:4px;padding:4px;display:inline-flex}.muscle-view-tab{min-height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 14px;font-size:.8rem;font-weight:760;line-height:1}.muscle-view-tab.active{background:var(--brand-red);color:#fff}.muscle-view-tab:focus-visible,.muscle-quick-picks button:focus-visible,.muscle-selection-list button:focus-visible{outline-offset:2px;outline:3px solid #ff3b3533}.muscle-selection-panel{gap:10px;min-width:0;display:grid}.muscle-selection-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.muscle-selection-heading span{color:var(--text-soft);text-transform:uppercase;font-size:.74rem;font-weight:760;line-height:1}.muscle-selection-heading strong{min-width:30px;min-height:26px;color:var(--brand-red-strong);background:#ff3b351a;border:1px solid #ff3b3538;border-radius:999px;justify-content:center;align-items:center;font-size:.82rem;display:inline-flex}.muscle-picker-empty{border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-strong);color:var(--text-muted);padding:16px;font-size:.84rem;line-height:1.45}.muscle-selection-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.muscle-selection-list li{border-radius:var(--radius);background:#ff3b3512;border:1px solid #ff3b3529;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:9px 10px;display:grid}.muscle-selection-dot{background:var(--brand-red);border-radius:999px;width:8px;height:8px}.muscle-selection-list span:not(.muscle-selection-dot){color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:700;line-height:1.2;overflow:hidden}.muscle-selection-list small{border:1px solid var(--border);background:var(--surface);color:var(--text-soft);text-transform:uppercase;border-radius:999px;padding:5px 7px;font-size:.68rem;font-weight:760;line-height:1}.muscle-selection-list button{color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:4px;font-size:.78rem;font-weight:760}.muscle-selection-list button:hover{color:var(--brand-red-strong)}.muscle-clear-button{width:fit-content;color:var(--brand-red-strong)}.muscle-quick-picks{flex-wrap:wrap;gap:7px;display:flex}.muscle-quick-picks button{border:1px solid var(--border);background:var(--surface-strong);min-height:30px;color:var(--text-muted);cursor:pointer;border-radius:999px;padding:0 10px;font-size:.76rem;font-weight:760;line-height:1}.muscle-quick-picks button.active{color:var(--brand-red-strong);background:#ff3b351a;border-color:#ff3b3538}.workout-library-layout{grid-template-columns:minmax(0,1fr) minmax(260px,320px);align-items:start;gap:14px;display:grid}.workout-animation-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.workout-animation-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0;color:var(--text);cursor:pointer;text-align:left;align-content:start;gap:10px;padding:10px;transition:border-color .14s,box-shadow .14s,transform .14s;display:grid}.workout-animation-card:hover{border-color:#8ea3bf;transform:translateY(-1px)}.workout-animation-card.selected{border-color:var(--accent);box-shadow:0 0 0 3px #2f5f9f29}.workout-animation-card:focus-visible{outline-offset:2px;outline:3px solid #2f5f9f38}.workout-animation-media{aspect-ratio:1;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-strong);width:100%;display:block;position:relative;overflow:hidden}.workout-animation-media img{object-fit:contain;width:100%;height:100%;display:block}.workout-animation-name{text-transform:capitalize;min-height:2.35em;font-size:.94rem;font-weight:760;line-height:1.18;display:block}.workout-animation-detail{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:12px;padding:14px;display:grid;position:sticky;top:18px}.workout-instruction-preview{gap:8px;margin:0;padding-left:20px;display:grid}.workout-instruction-preview li{color:var(--text-muted);font-size:.85rem;line-height:1.42}.workout-empty{border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--text-muted);padding:18px;font-size:.9rem;line-height:1.45}.workout-empty.warning{background:var(--amber-soft);color:#7a4c05;border-color:#f4dba3}.rig-target-table{border-top:1px solid var(--border);background:var(--surface-strong);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;padding:14px;display:grid}.rig-target-table p{color:var(--text-muted);margin:0;font-size:.88rem}.rig-target-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:4px;padding:12px;display:grid}.rig-target-row span{color:var(--text-muted);text-transform:uppercase;font-size:.76rem;font-weight:760}.rig-target-row strong{font-size:.98rem;line-height:1.15}.rig-target-row small{color:var(--accent-strong);font-size:.8rem;font-weight:760}.realistic-side-column{gap:14px;display:grid;position:sticky;top:18px}.realistic-controls-body{gap:12px;padding:16px;display:grid}.realistic-controls-body p{color:var(--text-muted);margin:0;font-size:.86rem;line-height:1.45}.muscle-control-list{gap:10px;padding:14px;display:grid}.muscle-empty{color:var(--text-muted);margin:0;font-size:.88rem;line-height:1.45}.muscle-control{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;text-align:left;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.muscle-control.highlighted{background:var(--danger-soft);border-color:#f1b9b2}.muscle-swatch{border:1px solid #12171d29;border-radius:999px;width:16px;height:16px}.muscle-control strong{font-size:.88rem;line-height:1.2;display:block}.muscle-control small{color:var(--text-soft);margin-top:3px;font-size:.76rem;line-height:1.25;display:block}.live-avatar-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:18px;display:grid}.live-avatar-stage-panel,.live-avatar-controls-panel,.live-pipeline-panel,.live-comparison-panel{overflow:hidden}.live-avatar-canvas-grid{grid-template-columns:1fr;gap:14px;padding:14px;display:grid}.live-avatar-canvas-grid.compare{grid-template-columns:repeat(2,minmax(0,1fr))}.live-avatar-metrics{border-top:1px solid var(--border);background:var(--surface-strong);grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px;display:grid}.live-status-metric{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);align-content:center;gap:6px;min-height:72px;padding:12px;display:grid}.live-status-metric span{color:var(--text-muted);text-transform:uppercase;font-size:.74rem;font-weight:760;line-height:1}.live-status-metric strong{color:var(--text);text-transform:capitalize;font-size:1rem;line-height:1.15}.live-status-metric.tracking{background:var(--ok-soft);border-color:#bfead2}.live-status-metric.low_confidence,.live-status-metric.waiting_for_pose{background:var(--amber-soft);border-color:#f4dba3}.live-status-metric.waiting_for_camera{background:var(--blue-soft);border-color:#cfe0ff}.live-rig-targets{border-top:1px solid var(--border);background:var(--surface-strong);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;padding:14px;display:grid}.live-rig-targets p{color:var(--text-muted);margin:0;font-size:.88rem}.live-rig-target{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:4px;padding:12px;display:grid}.live-rig-target span{color:var(--text-muted);text-transform:uppercase;font-size:.76rem;font-weight:760}.live-rig-target strong{font-size:.98rem;line-height:1.15}.live-rig-target small{color:var(--accent-strong);font-size:.8rem;font-weight:760}.live-avatar-side-column{gap:14px;display:grid;position:sticky;top:18px}.live-avatar-controls-body{gap:10px;padding:14px;display:grid}.live-toggle-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;text-align:left;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:11px 12px;display:grid}.live-toggle-row[aria-pressed=true]{background:#e9f7f6;border-color:#2f5f9f52}.live-toggle-row strong{font-size:.88rem;line-height:1.2;display:block}.live-toggle-row small{color:var(--text-soft);margin-top:3px;font-size:.76rem;line-height:1.25;display:block}.live-pipeline-list{gap:8px;margin:0;padding:14px 14px 0 34px;display:grid}.live-pipeline-list li{color:var(--text);font-size:.88rem;line-height:1.35}.live-privacy-note{color:var(--text-muted);margin:0;padding:12px 14px 14px;font-size:.82rem;line-height:1.45}.live-comparison-score{align-items:baseline;gap:8px;padding:16px 16px 6px;display:flex}.live-comparison-score strong{color:var(--accent-strong);font-size:2rem;line-height:1}.live-comparison-score span{color:var(--text-muted);text-transform:uppercase;font-size:.82rem;font-weight:760}.live-comparison-messages{gap:8px;padding:10px 14px 14px;display:grid}.live-comparison-messages p{border-radius:var(--radius);background:var(--blue-soft);color:#17498f;margin:0;padding:10px 12px;font-size:.84rem;line-height:1.4}.workout-plan-shell{background:linear-gradient(180deg, #fffffffa, #f8fbfff5 62%, #fff), var(--background);isolation:isolate;gap:0;min-height:100vh;padding:0 0 42px;display:grid;position:relative;overflow:hidden}.workout-plan-shell:before,.workout-plan-shell:after{content:"";pointer-events:none;z-index:0;height:1px;position:absolute;left:-8vw;right:-8vw}.workout-plan-shell:before{background:#2f5f9f1f;top:280px;transform:rotate(3.2deg)}.workout-plan-shell:after{background:#ff3b3521;top:635px;transform:rotate(1.9deg)}.workout-plan-shell>*{z-index:1;position:relative}.standalone-plan-shell{align-content:start;min-height:100dvh}.salemimo-nav{background:#ffffffdb;border-top:1px solid #0f172a14;border-bottom:1px solid #bccbe08f;justify-content:space-between;align-items:center;width:100%;min-height:76px;padding:0 34px;display:flex}.salemimo-logo-link{border-radius:10px;align-items:center;width:fit-content;min-height:44px;text-decoration:none;display:inline-flex}.salemimo-logo-link:focus-visible{outline-offset:4px;outline:3px solid #2f5f9f38}.salemimo-logo-link img{object-fit:contain;width:136px;height:50px;display:block}.workout-plan-summary{border-radius:var(--radius);background:var(--accent-soft);border:1px solid #2f5f9f3d;gap:8px;padding:16px;display:grid}.workout-plan-summary span,.workout-plan-summary small{color:var(--accent-strong);text-transform:uppercase;font-size:.76rem;font-weight:760;line-height:1}.workout-plan-summary strong{color:var(--accent-strong);font-size:3rem;line-height:.9}.workout-builder-grid,.generated-plan-viewer{width:min(100% - 56px,1480px);max-width:1480px;margin:0 auto}.workout-admin-tabs,.workout-admin-panel-shell{width:min(100% - 56px,1480px);margin:0 auto}.workout-admin-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-top:clamp(24px,3.5vw,40px);display:grid}.workout-admin-tabs button{border:1px solid var(--border);border-radius:var(--radius);min-height:78px;color:var(--text-muted);cursor:pointer;text-align:left;background:#ffffffc7;align-content:center;gap:6px;padding:14px 16px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.workout-admin-tabs button:hover{border-color:#2f5f9f59;transform:translateY(-1px)}.workout-admin-tabs button:focus-visible{outline-offset:2px;outline:3px solid #2f5f9f38}.workout-admin-tabs button.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px #2f5f9f1f}.workout-admin-tabs strong{color:var(--text);font-size:.96rem;line-height:1.15}.workout-admin-tabs span{color:var(--text-soft);font-size:.8rem;line-height:1.3}.workout-builder-grid{grid-template-columns:minmax(0,1fr) 420px;align-items:start;gap:18px;padding-top:14px;display:grid}.workout-admin-panel-shell{gap:14px;padding-top:14px;display:grid}.admin-session-row{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.admin-session-row span{border-radius:var(--radius);background:var(--accent-soft);min-height:38px;color:var(--accent-strong);border:1px solid #2f5f9f33;align-items:center;padding:0 12px;font-size:.8rem;font-weight:760;display:inline-flex}.admin-login-panel{max-width:560px;margin:0 auto;overflow:hidden}.admin-login-form{gap:14px;padding:18px;display:grid}.admin-login-field{gap:7px;display:grid}.admin-login-field span,.admin-table-section h3,.admin-panel-eyebrow{color:var(--text-soft);text-transform:uppercase;font-size:.74rem;font-weight:760;line-height:1}.admin-login-field input{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);min-height:44px;color:var(--text);font:inherit;padding:0 12px}.admin-login-field input:focus-visible{border-color:var(--accent);outline:3px solid #2f5f9f2e}.admin-data-panel{overflow:hidden}.admin-panel-header{align-items:flex-start}.admin-panel-eyebrow{color:var(--accent-strong);align-items:center;gap:7px;display:inline-flex}.admin-panel-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-storage-chip{border-radius:var(--radius);background:var(--accent-soft);min-height:38px;color:var(--accent-strong);text-transform:uppercase;border:1px solid #2f5f9f33;align-items:center;padding:0 12px;font-size:.76rem;font-weight:780;display:inline-flex}.admin-notice{border-bottom:1px solid var(--border);background:var(--surface-strong);color:var(--text-muted);align-items:center;gap:9px;padding:12px 18px;font-size:.86rem;line-height:1.35;display:flex}.admin-notice.warning{background:var(--amber-soft);color:#7a4b04}.admin-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px;display:grid}.admin-stat{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-strong);gap:7px;padding:14px;display:grid}.admin-stat span{color:var(--text-soft);text-transform:uppercase;font-size:.74rem;font-weight:760}.admin-stat strong{color:var(--accent-strong);font-size:1.55rem;line-height:1}.legacy-plan-import{border-top:1px solid var(--border);background:#f6f9fda3;gap:10px;padding:14px;display:grid}.legacy-plan-import label{color:var(--text);font-size:.9rem;font-weight:780;display:block}.legacy-plan-import p{max-width:760px;color:var(--text-soft);margin:4px 0 0;font-size:.84rem;line-height:1.4}.legacy-plan-import-controls{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.legacy-plan-import-controls input{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);min-width:0;min-height:44px;color:var(--text);font:inherit;padding:0 12px}.legacy-plan-import-controls input:focus-visible{border-color:var(--accent);outline:3px solid #2f5f9f2e}.legacy-plan-import-message{color:var(--accent-strong);font-size:.82rem;font-weight:680}.legacy-plan-import-message.error{color:#9f2f2f}.admin-table-section{gap:10px;padding:0 14px 14px;display:grid}.admin-table-section h3{color:var(--text);margin:8px 0 0}.admin-table-wrap{border-top:1px solid var(--border);overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:760px}.admin-table th,.admin-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:12px 14px}.admin-table th{background:var(--surface-strong);color:var(--text-soft);text-transform:uppercase;font-size:.74rem;font-weight:780}.admin-table td{color:var(--text-muted);font-size:.86rem;line-height:1.35}.admin-table td>strong{color:var(--text);font-size:.9rem;display:block}.admin-table small{max-width:380px;color:var(--text-soft);margin-top:4px;display:block}.admin-table a{min-height:34px;color:var(--accent);align-items:center;gap:5px;font-weight:760;text-decoration:none;display:inline-flex}.admin-table a:hover{color:var(--accent-strong)}.admin-progress-cell{gap:4px;min-width:150px;display:grid}.admin-progress-cell strong{color:var(--text);font-size:.9rem}.admin-progress-track{background:#2f5f9f1f;border-radius:999px;height:7px;overflow:hidden}.admin-progress-track span{border-radius:inherit;background:var(--accent);height:100%;display:block}.admin-empty{color:var(--text-soft);padding:10px 0;display:block}.standalone-plan-shell .generated-plan-viewer{margin-top:38px}.workout-builder-main,.workout-plan-side{gap:14px;min-width:0;display:grid}.workout-plan-side{position:sticky;top:18px}.plan-search-form{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:16px;box-shadow:0 18px 48px #2f5f9f0f}.workout-results-panel,.selected-workout-panel,.plan-builder-panel,.generated-plan-viewer{overflow:hidden}.plan-workout-results-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;padding:14px;display:grid}.workout-results-actions{border-top:1px solid var(--border);justify-content:center;align-items:center;gap:12px;padding:14px;display:flex}.workout-results-actions small{color:var(--text-soft);font-size:.82rem;font-weight:680}.plan-workout-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0;min-height:100%;color:var(--text);cursor:pointer;text-align:left;align-content:start;gap:10px;padding:10px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.plan-workout-card:hover{border-color:#8ea3bf;transform:translateY(-1px)}.plan-workout-card.selected{border-color:var(--accent);box-shadow:0 0 0 3px #2f5f9f29}.plan-workout-card:focus-visible{outline-offset:2px;outline:3px solid #2f5f9f38}.plan-workout-card-media,.selected-workout-media,.generated-plan-stage-media{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-strong);position:relative;overflow:hidden}.plan-workout-card-media{aspect-ratio:1;width:100%}.plan-workout-card-media img,.selected-workout-media img,.generated-plan-stage-media img{object-fit:contain}.plan-workout-card-name{min-height:2.35em;color:var(--text);text-transform:capitalize;font-size:.94rem;font-weight:760;line-height:1.18;display:block}.selected-workout-media{min-height:300px;margin:14px 14px 0}.selected-workout-copy{gap:12px;padding:14px;display:grid}.selected-workout-copy h3{color:var(--text);text-transform:capitalize;margin:0;font-size:1.12rem;line-height:1.15}.plan-title-field,.plan-description-field,.generated-plan-link label{gap:7px;display:grid}.plan-title-field{padding:14px 14px 0}.plan-title-field span,.plan-description-field span,.generated-plan-link label span{color:var(--text-soft);text-transform:uppercase;font-size:.74rem;font-weight:760;line-height:1}.plan-title-field input,.generated-plan-link input,.plan-description-field textarea{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text);font:inherit}.plan-title-field input,.generated-plan-link input{min-height:42px;padding:0 12px}.generated-plan-link input{font-family:Cascadia Code,SFMono-Regular,Consolas,monospace;font-size:.78rem}.plan-description-field textarea{resize:vertical;min-height:96px;padding:10px 12px;line-height:1.45}.plan-description-field.compact-field textarea{min-height:150px}.plan-field-helper{color:var(--text-muted);font-size:.78rem;line-height:1.35}.plan-title-warning{color:#9f2f2f;font-size:.78rem;font-weight:700;line-height:1.35}.plan-title-field input[aria-invalid=true]{border-color:#c44545;box-shadow:0 0 0 3px #c445451f}.plan-title-field input:focus-visible,.generated-plan-link input:focus-visible,.plan-description-field textarea:focus-visible{border-color:var(--accent);outline:3px solid #2f5f9f2e}.plan-item-list{gap:10px;margin:0;padding:14px;display:grid}.plan-item-editor{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:10px;padding:12px;display:grid}.plan-item-editor-header{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;display:grid}.plan-item-editor-header>span{background:var(--accent);color:#fff;border-radius:999px;place-items:center;width:30px;height:30px;font-size:.82rem;font-weight:800;line-height:1;display:grid}.plan-item-editor-header strong{color:var(--text);text-transform:capitalize;font-size:.95rem;line-height:1.2;display:block}.plan-item-editor-header small{color:var(--text-muted);text-transform:capitalize;margin-top:4px;font-size:.78rem;line-height:1.25;display:block}.plan-item-actions,.plan-generate-actions,.generated-plan-actions,.generated-plan-stage-actions{flex-wrap:wrap;gap:8px;display:flex}.plan-item-actions .button{flex:90px}.plan-generate-actions,.generated-plan-link{border-top:1px solid var(--border);padding:14px}.plan-generate-actions .button{width:100%}.generated-plan-link{background:var(--surface-strong);gap:10px;display:grid}.generated-plan-actions .button{flex:150px}.generated-plan-viewer{gap:14px;padding:16px;display:grid}.generated-plan-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.generated-plan-header h1,.generated-plan-header h2{color:var(--text);margin:7px 0 0;font-size:1.7rem;line-height:1.12}.generated-plan-header p{max-width:720px;color:var(--text-muted);margin:8px 0 0;font-size:.9rem;line-height:1.45}.generated-plan-progress{border-radius:var(--radius);background:var(--accent-soft);border:1px solid #2f5f9f3d;gap:8px;min-width:260px;padding:12px;display:grid}.generated-plan-progress>div:first-child{justify-content:space-between;align-items:center;gap:14px;display:flex}.generated-plan-progress span,.generated-plan-progress small{color:var(--accent-strong);text-transform:uppercase;font-size:.75rem;font-weight:760;line-height:1}.generated-plan-progress strong{color:var(--accent-strong);font-size:.98rem;line-height:1}.generated-plan-progress-track{background:#2f5f9f24;border-radius:999px;height:8px;overflow:hidden}.generated-plan-progress-track span{border-radius:inherit;background:var(--accent);height:100%;transition:width .18s;display:block}.generated-plan-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:14px;display:grid}.generated-plan-stage{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-strong);grid-template-columns:minmax(280px,.9fr) minmax(260px,1fr);align-items:center;gap:14px;padding:14px;display:grid}.generated-plan-stage-media{min-height:420px}.generated-plan-stage-copy{gap:12px;display:grid}.generated-plan-stage-copy span{color:var(--accent-strong);text-transform:uppercase;font-size:.76rem;font-weight:780}.generated-plan-stage-copy h3{color:var(--text);text-transform:capitalize;margin:0;font-size:1.7rem;line-height:1.1}.generated-plan-stage-copy p{color:var(--text-muted);white-space:pre-line;margin:0;font-size:.96rem;line-height:1.5}.generated-plan-playlist{gap:8px;margin:0;padding:0;list-style:none;display:grid}.generated-plan-playlist li{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px;display:grid}.generated-plan-playlist-item{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text);cursor:pointer;text-align:left;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:11px;display:grid}.generated-plan-playlist li.completed .generated-plan-playlist-item{border-color:#2f5f9f57}.generated-plan-playlist li.completed .generated-plan-playlist-item span{background:var(--accent);color:#fff}.generated-plan-playlist-item.active{border-color:var(--accent);background:var(--accent-soft)}.generated-plan-playlist-item:focus-visible,.playlist-done-toggle:focus-visible{outline-offset:2px;outline:3px solid #2f5f9f38}.generated-plan-playlist span{background:var(--surface-strong);width:28px;height:28px;color:var(--accent-strong);border-radius:999px;place-items:center;font-size:.8rem;font-weight:800;display:grid}.generated-plan-playlist strong{color:var(--text);text-transform:capitalize;font-size:.9rem;line-height:1.2;display:block}.generated-plan-playlist small{color:var(--text-muted);white-space:pre-line;margin-top:4px;font-size:.78rem;line-height:1.35;display:block}.playlist-done-toggle{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:88px;color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:.78rem;font-weight:760;transition:border-color .16s,background .16s,color .16s;display:inline-flex}.playlist-done-toggle[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:#fff}.footer-note{color:var(--text-soft);font-size:.82rem;line-height:1.45}@media (max-width:1050px){.app-shell{padding:18px}.app-header{flex-direction:column}.header-actions{justify-content:flex-start;min-width:0}.main-grid,.nutrition-grid{grid-template-columns:1fr}.nutrition-history{position:static}.camera-workout-layout,.avatar-demo-grid,.realistic-solution-grid,.live-avatar-grid,.workout-builder-grid,.generated-plan-grid,.generated-plan-stage,.workout-admin-tabs{grid-template-columns:1fr}.salemimo-nav{justify-content:center;padding:12px 18px}.workout-plan-side,.avatar-side-column,.realistic-side-column,.live-avatar-side-column,.side-column{position:static}}@media (max-width:720px){.app-shell{padding:12px}h1{font-size:2.25rem;line-height:1.03}.header-copy{font-size:.96rem}.header-actions{width:100%}.button{flex:150px}.workout-plan-shell{padding:0 0 28px}.workout-builder-grid,.workout-admin-tabs,.workout-admin-panel-shell,.generated-plan-viewer{width:min(100% - 24px,1480px)}.admin-panel-header,.admin-session-row{flex-direction:column;align-items:stretch}.admin-panel-actions{justify-content:flex-start}.admin-stat-grid,.legacy-plan-import-controls{grid-template-columns:1fr}.workout-plan-summary strong{font-size:2.35rem}.plan-search-form,.generated-plan-header{flex-direction:column}.generated-plan-progress{width:100%}.generated-plan-playlist li{grid-template-columns:1fr}.playlist-done-toggle{min-height:44px}.plan-workout-results-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.selected-workout-media{min-height:240px}.generated-plan-stage-media{min-height:300px}.generated-plan-stage-copy h3{font-size:1.3rem}.generated-plan-stage-actions .button{flex-basis:100%}.webcam-frame{aspect-ratio:4/5;min-height:320px}.below-grid{grid-template-columns:1fr}.app-tabs{width:100%}.app-tabs.primary-tabs{grid-template-columns:1fr}.app-tab{white-space:normal;flex:150px;justify-content:center}.avatar-stage-header{flex-direction:column}.avatar-mode-badges{justify-content:flex-start}.avatar-canvas-grid.compare,.live-avatar-canvas-grid.compare{grid-template-columns:1fr}.live-avatar-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.live-status-metric{min-height:64px}.macro-grid,.nutrition-detail-grid,.nutrition-log-summary{grid-template-columns:1fr}.nutrition-hero,.nutrition-upload,.food-preview-content{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.nutrition-status{max-width:none}.avatar-canvas-frame{aspect-ratio:4/5;min-height:330px}.avatar-control-row,.avatar-comparison-summary,.realistic-mode-tabs{grid-template-columns:1fr}.workout-library-header{flex-direction:column}.workout-search-form,.muscle-picker-grid{grid-template-columns:1fr}.muscle-selection-list li{grid-template-columns:auto minmax(0,1fr) auto}.muscle-selection-list button{grid-column:2/-1;justify-self:start}.workout-library-layout,.workout-modal-grid{grid-template-columns:1fr}.workout-modal-media{border-right:0;border-bottom:1px solid var(--border);min-height:380px;position:relative}.workout-detection-card>div:first-child,.workout-tracking-header{flex-direction:column}.workout-tracking-actions{justify-content:flex-start}.workout-tracking-criteria{grid-template-columns:1fr}.workout-animation-detail{position:static}.workout-selected-actions,.camera-guide-actions{grid-template-columns:1fr}.workout-modal-backdrop{padding:12px}.config-controls{grid-template-columns:1fr}.field-label{line-height:1}.config-error,.config-actions{grid-column:1}.metric-row{grid-template-columns:1fr}.metric-value{text-align:left}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.salemimo-client-link{color:#2f5f9f;border:1px solid #c8d6e8;border-radius:7px;align-items:center;min-height:44px;padding:0 15px;font-size:.86rem;font-weight:700;text-decoration:none;display:inline-flex}.salemimo-client-link:hover,.salemimo-client-link:focus-visible{background:#edf5ff;border-color:#2f5f9f}.client-portal-shell,.client-registration-shell{color:#0f1a31;background:#f7f9fc;min-height:100dvh}.client-portal-header{background:#fff;border-bottom:1px solid #dfe7f3;justify-content:space-between;align-items:center;gap:24px;min-height:72px;padding:10px max(24px,50vw - 590px);display:flex}.client-portal-logo{align-items:center;min-height:48px;display:inline-flex}.client-portal-header nav{align-items:center;gap:8px;display:flex}.client-portal-header nav a{color:#31496c;border-radius:6px;align-items:center;min-height:44px;padding:0 16px;font-weight:650;text-decoration:none;transition:background .18s,color .18s;display:inline-flex}.client-portal-header nav a:hover,.client-portal-header nav a:focus-visible{color:#244e87;background:#edf5ff}.client-auth-layout{grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr);align-items:center;gap:clamp(48px,8vw,110px);width:min(1120px,100% - 32px);min-height:calc(100dvh - 72px);margin:0 auto;padding:64px 0;display:grid}.client-auth-copy{max-width:600px}.client-kicker{color:#2f5f9f;text-transform:uppercase;align-items:center;gap:8px;font-size:.82rem;font-weight:750;display:inline-flex}.client-auth-copy h1,.client-dashboard-heading h1,.registration-heading h1{color:#0b1429;letter-spacing:0;margin:16px 0;font-size:clamp(2.2rem,5vw,4.25rem);line-height:1.03}.client-auth-copy>p,.client-dashboard-heading p,.registration-heading p{color:#526987;margin:0;font-size:1.05rem;line-height:1.65}.client-auth-copy ul{gap:14px;margin:32px 0 0;padding:0;list-style:none;display:grid}.client-auth-copy li{color:#2f4668;align-items:center;gap:11px;font-weight:600;display:flex}.client-auth-copy li svg{color:#188351}.client-auth-card{background:#fff;border:1px solid #d9e3f0;border-radius:8px;width:min(100%,440px);padding:36px;box-shadow:0 18px 48px #233b5b1a}.client-auth-icon{color:#2f5f9f;background:#edf5ff;border-radius:8px;place-items:center;width:48px;height:48px;display:grid}.client-auth-card h2{margin:20px 0 8px;font-size:1.6rem}.client-auth-card>p{color:#63799a;margin:0 0 26px;line-height:1.55}.client-auth-card form,.client-auth-card label{gap:8px;display:grid}.client-auth-card form{gap:18px}.client-auth-card label>span:first-child,.registration-field>span:first-child{color:#2e4260;font-size:.88rem;font-weight:650}.client-auth-card input,.registration-field input,.registration-field select,.registration-field textarea,.client-assignment-composer select,.client-assignment-field select{color:#17243d;width:100%;min-height:46px;font:inherit;background:#fff;border:1px solid #c4d2e5;border-radius:7px;outline:none;padding:10px 13px;transition:border-color .16s,box-shadow .16s}.client-auth-card input:focus,.registration-field input:focus,.registration-field select:focus,.registration-field textarea:focus,.client-assignment-composer select:focus,.client-assignment-field select:focus{border-color:#2f5f9f;box-shadow:0 0 0 3px #2f5f9f29}.password-input-wrap{display:block;position:relative}.password-input-wrap input{padding-right:48px}.password-input-wrap button{color:#526987;cursor:pointer;background:0 0;border:0;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:1px;right:1px}.client-primary-action{justify-content:center;width:100%;min-height:48px}.client-form-error{color:#a92b26;background:#fff0ef;border:1px solid #f0bbb7;border-radius:7px;padding:11px 13px;font-size:.9rem;line-height:1.45}.client-form-error a{color:#8f211d;width:fit-content;margin-top:7px;font-weight:750;display:block}.client-forgot-link{color:#2f5f9f;width:fit-content;margin-top:-8px;font-size:.84rem;font-weight:700;text-decoration:none}.client-forgot-link:hover,.client-forgot-link:focus-visible,.account-action-link:hover,.account-action-link:focus-visible{text-decoration:underline}.account-action-shell{place-items:center;min-height:calc(100dvh - 72px);padding:48px 16px;display:grid}.account-action-card{width:min(100%,520px)}.account-action-card h1{letter-spacing:0;margin:20px 0 9px;font-size:clamp(1.75rem,5vw,2.25rem)}.account-action-card>p{margin-bottom:22px}.account-action-note,.account-action-success{color:#526987;background:#f7faff;border:1px solid #dce6f2;border-radius:7px;margin-bottom:18px;padding:13px;font-size:.85rem;line-height:1.5}.account-action-success{color:#12673f;background:#eaf8f0;border-color:#b9dfca}.account-action-link{color:#2f5f9f;width:fit-content;margin:18px auto 0;font-size:.86rem;font-weight:700;text-decoration:none;display:block}.account-action-form,.account-action-form label{gap:8px;display:grid}.account-action-form{gap:17px}.account-action-form label>span:first-child{color:#2e4260;font-size:.88rem;font-weight:650}.account-action-form input{color:#17243d;width:100%;min-height:46px;font:inherit;border:1px solid #c4d2e5;border-radius:7px;outline:none;padding:10px 13px}.account-action-email{gap:8px;margin-bottom:17px;display:grid}.account-action-email>span{color:#2e4260;font-size:.88rem;font-weight:650}.account-action-email input{color:#17243d;width:100%;min-height:46px;font:inherit;border:1px solid #c4d2e5;border-radius:7px;padding:10px 13px}.account-action-form input:focus{border-color:#2f5f9f;box-shadow:0 0 0 3px #2f5f9f29}.account-action-spinner{animation:.9s linear infinite account-action-spin}@keyframes account-action-spin{to{transform:rotate(360deg)}}.client-auth-footer{color:#63799a;text-align:center;border-top:1px solid #e4ebf4;margin-top:24px;padding-top:22px}.client-auth-footer a,.registration-signin a{color:#2f5f9f;font-weight:700}.client-dashboard{width:min(1180px,100% - 32px);margin:0 auto;padding:54px 0 80px}.client-dashboard-heading{justify-content:space-between;align-items:flex-end;gap:28px;display:flex}.client-dashboard-heading h1{margin:10px 0 8px;font-size:clamp(2rem,4vw,3.25rem)}.client-dashboard-summary{background:#dbe4f0;border:1px solid #dbe4f0;border-radius:8px;grid-template-columns:repeat(3,1fr);gap:1px;margin:36px 0;display:grid;overflow:hidden}.client-dashboard-summary>div{color:#2f5f9f;background:#fff;align-items:center;gap:14px;min-height:88px;padding:20px 24px;display:flex}.client-dashboard-summary span{color:#63799a;gap:2px;font-size:.83rem;display:grid}.client-dashboard-summary strong{color:#17243d;font-size:1rem}.client-dashboard-section{background:#fff;border:1px solid #dbe4f0;border-radius:8px;margin-top:28px;padding:28px}.client-section-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.client-section-heading>div>span{color:#2f5f9f;text-transform:uppercase;font-size:.75rem;font-weight:750}.client-section-heading h2{margin:4px 0 0;font-size:1.35rem}.client-count-badge,.readonly-chip{color:#2f5f9f;background:#edf5ff;border-radius:6px;justify-content:center;align-items:center;min-width:34px;min-height:30px;padding:5px 10px;font-size:.78rem;font-weight:750;display:inline-flex}.client-empty-state{color:#63799a;text-align:center;background:#f9fbfe;border:1px dashed #bdcce0;border-radius:8px;padding:44px 20px}.client-empty-state svg{color:#2f5f9f}.client-empty-state h3{color:#1b2a43;margin:13px 0 6px}.client-empty-state p{margin:0}.client-assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.client-plan-card{background:#fbfdff;border:1px solid #dfe7f3;border-radius:8px;flex-direction:column;min-width:0;padding:22px;display:flex}.client-plan-card-top{color:#63799a;justify-content:space-between;gap:12px;font-size:.75rem;display:flex}.client-plan-card-top span{color:#2f5f9f;align-items:center;gap:6px;font-weight:700;display:inline-flex}.client-plan-card h3{margin:16px 0;font-size:1.18rem}.client-plan-card ol{gap:8px;margin:0 0 20px;padding:0;list-style:none;display:grid}.client-plan-card li{align-items:center;gap:10px;display:flex}.client-plan-card li>span{color:#2f5f9f;background:#edf5ff;border-radius:50%;flex:none;place-items:center;width:23px;height:23px;font-size:.72rem;font-weight:750;display:grid}.client-plan-card li p{color:#344b6c;margin:0;font-size:.88rem}.client-plan-progress{border-top:1px solid #e4ebf4;margin-top:auto;padding:15px 0 18px}.client-plan-progress>span{color:#63799a;font-size:.78rem}.client-plan-progress>div{background:#e6edf6;border-radius:4px;height:7px;margin-top:8px;overflow:hidden}.client-plan-progress>div span{background:#188351;height:100%;display:block}.client-plan-card>.button{justify-content:center}.client-profile-grid{background:#e0e8f3;border:1px solid #e0e8f3;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.client-profile-grid>div{background:#f9fbfe;gap:6px;min-height:82px;padding:17px;display:grid}.client-profile-grid span{color:#63799a;font-size:.75rem}.client-profile-grid strong{color:#223653;overflow-wrap:anywhere;font-size:.9rem}.registration-heading{text-align:center;width:min(960px,100% - 32px);margin:0 auto;padding:44px 0 28px}.registration-heading h1{margin:10px 0 8px;font-size:clamp(2rem,5vw,2.8rem)}.registration-stepper{grid-template-columns:repeat(7,1fr);width:min(800px,100% - 32px);margin:0 auto 30px;display:grid;position:relative}.registration-stepper:before{content:"";background:#cbd7e7;height:1px;position:absolute;top:16px;left:7%;right:7%}.registration-stepper>div:not(.registration-progress-mobile){z-index:1;color:#8aa0bd;justify-items:center;gap:7px;display:grid;position:relative}.registration-stepper>div>span:first-child{background:#f7f9fc;border:2px solid #d6e0ed;border-radius:50%;place-items:center;width:34px;height:34px;font-size:.78rem;font-weight:750;display:grid}.registration-stepper .active,.registration-stepper .complete{color:#2f5f9f!important}.registration-stepper .active>span:first-child{background:#fff;border-color:#2f5f9f}.registration-stepper .complete>span:first-child{color:#fff;background:#2f5f9f;border-color:#2f5f9f}.registration-stepper small{font-size:.7rem}.registration-progress-mobile{display:none}.registration-card{background:#fff;border:1px solid #d9e3ef;border-radius:8px;width:min(820px,100% - 32px);margin:0 auto;padding:32px;box-shadow:0 2px 8px #1c314e12}.registration-card fieldset{border:0;min-width:0;margin:0;padding:0}.registration-card legend{color:#17243d;align-items:center;gap:10px;padding:0;font-size:1.25rem;font-weight:750;display:flex}.registration-card legend svg{color:#2f5f9f}.registration-intro{color:#63799a;margin:8px 0 22px;line-height:1.5}.registration-fields{gap:18px;display:grid}.registration-fields.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.registration-field{gap:7px;min-width:0;display:grid}.registration-field.wide,.registration-divider.wide{grid-column:1/-1}.registration-field b{color:#d62620}.registration-field textarea{resize:vertical;min-height:94px}.registration-field>small,.plan-field-helper{color:#7d91ac;font-size:.73rem;line-height:1.4}.number-input-wrap{position:relative}.number-input-wrap input{padding-right:62px}.number-input-wrap small{color:#7187a5;position:absolute;top:50%;right:13px;transform:translateY(-50%)}.registration-divider{color:#63799a;border-top:1px solid #e3eaf3;margin-top:2px;padding-top:16px;font-size:.82rem;font-weight:650}.registration-error{margin-bottom:20px}.registration-actions{border-top:1px solid #e6edf5;justify-content:space-between;gap:16px;margin-top:28px;padding-top:22px;display:flex}.registration-actions .button{min-height:46px;text-decoration:none}.registration-back{box-shadow:none;background:0 0;border-color:#0000}.registration-signin{color:#63799a;text-align:center;margin:20px 0 0}.registration-privacy{color:#7187a5;text-align:center;justify-content:center;align-items:center;gap:7px;width:min(820px,100% - 32px);margin:18px auto 0;padding-bottom:48px;font-size:.75rem;display:flex}.photo-guidelines{color:#526987;background:#f7faff;border:1px solid #dce6f2;border-radius:8px;margin:18px 0;padding:16px;font-size:.84rem;line-height:1.5}.photo-guidelines strong{color:#2f4260}.photo-guidelines ul{margin:7px 0;padding-left:20px}.registration-photo-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.registration-photo-grid label{text-align:center;cursor:pointer;gap:7px;min-width:0;display:grid;position:relative}.registration-photo-grid label>span,.registration-photo-grid label>img{aspect-ratio:3/4;background:#f9fbfe;border:1px dashed #aac0dc;border-radius:8px;width:100%}.registration-photo-grid label>span{color:#6d83a2;place-content:center;justify-items:center;gap:9px;padding:12px;font-size:.78rem;display:grid}.registration-photo-grid label>img{object-fit:cover}.registration-photo-grid input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.registration-photo-grid strong{color:#2e4260;font-size:.86rem}.registration-photo-grid small{color:#7d91ac;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.7rem;overflow:hidden}.registration-photo-grid label:focus-within>span,.registration-photo-grid label:hover>span{background:#edf5ff;border-color:#2f5f9f}.review-sections{gap:14px;display:grid}.review-section{background:#fbfdff;border:1px solid #dde6f1;border-radius:8px;padding:16px}.review-section h3{color:#304562;margin:0 0 12px;font-size:.85rem}.review-section dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 24px;margin:0;display:grid}.review-section dl>div{justify-content:space-between;gap:12px;min-width:0;display:flex}.review-section dt{color:#7d91ac;font-size:.78rem}.review-section dd{color:#243955;overflow-wrap:anywhere;text-align:right;margin:0;font-size:.8rem;font-weight:650}.review-photo-row{gap:10px;display:flex}.review-photo-row img{aspect-ratio:3/4;object-fit:cover;border-radius:6px;width:78px}.client-assignment-field{margin-top:14px}.client-assignment-field>span{justify-content:space-between;align-items:center;display:flex}.client-assignment-field>span small{color:#7d91ac;font-size:.7rem;font-weight:600}.client-admin-layout{grid-template-columns:minmax(230px,.34fr) minmax(0,1fr);gap:18px;margin-top:22px;display:grid}.client-admin-list{align-content:start;gap:7px;display:grid}.client-admin-list button{color:#304562;text-align:left;cursor:pointer;background:#fff;border:1px solid #dfe7f3;border-radius:7px;grid-template-columns:36px minmax(0,1fr) 28px;align-items:center;gap:10px;width:100%;min-height:66px;padding:10px;display:grid}.client-admin-list button:hover,.client-admin-list button.active{background:#edf5ff;border-color:#94b1d3}.client-admin-list button>span{color:#fff;background:#2f5f9f;border-radius:50%;place-items:center;width:36px;height:36px;font-weight:750;display:grid}.client-admin-list button div{gap:3px;min-width:0;display:grid}.client-admin-list button strong,.client-admin-list button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-admin-list button small{color:#7187a5;font-size:.7rem}.client-admin-list button>b{color:#2f5f9f;background:#fff;border-radius:6px;place-items:center;min-width:26px;height:26px;font-size:.75rem;display:grid}.client-admin-detail{background:#fbfdff;border:1px solid #dfe7f3;border-radius:8px;min-width:0;padding:22px}.client-admin-detail>header{border-bottom:1px solid #e2eaf4;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:18px;display:flex}.client-admin-detail h3{margin:7px 0 3px;font-size:1.35rem}.client-admin-detail header p,.client-admin-detail header small{color:#7187a5;margin:0}.client-intake-summary,.client-plan-assignments{margin-top:20px}.client-intake-summary h4,.client-plan-assignments h4{color:#304562;margin:0 0 12px;font-size:.86rem}.client-intake-summary dl{background:#e1e9f3;border:1px solid #e1e9f3;border-radius:7px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.client-intake-summary dl>div{background:#fff;gap:5px;min-width:0;padding:12px;display:grid}.client-intake-summary dl>div.wide{grid-column:1/-1}.client-intake-summary dt{color:#7d91ac;font-size:.7rem}.client-intake-summary dd{color:#304562;overflow-wrap:anywhere;margin:0;font-size:.82rem;font-weight:600}.client-assignment-composer{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.client-plan-assignments ul{gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.client-plan-assignments li{background:#fff;border:1px solid #e1e9f3;border-radius:7px;grid-template-columns:minmax(0,1fr) auto 44px;align-items:center;gap:8px;padding:10px;display:grid}.client-plan-assignments li>div{gap:3px;min-width:0;display:grid}.client-plan-assignments li small{color:#7187a5;font-size:.72rem}.client-plan-assignments li .button{min-width:44px;min-height:42px;padding:8px 11px;text-decoration:none}.client-admin-empty{margin-top:22px}@media (max-width:900px){.client-auth-layout{grid-template-columns:1fr;gap:36px}.client-auth-copy,.client-auth-card{margin:0 auto}.client-auth-copy{text-align:center}.client-auth-copy ul{text-align:left;width:fit-content;margin-left:auto;margin-right:auto}.client-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-admin-layout{grid-template-columns:1fr}.client-admin-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.client-portal-header{padding:8px 16px}.client-portal-header nav a:last-child{display:none}.client-portal-header nav a{padding:0 10px;font-size:.82rem}.client-auth-layout{padding:36px 0}.client-auth-copy h1{font-size:2.35rem}.client-auth-card,.registration-card,.client-dashboard-section{padding:22px}.client-dashboard-heading{flex-direction:column;align-items:flex-start}.client-dashboard-summary,.client-assignment-grid,.registration-fields.two-column,.registration-photo-grid,.client-profile-grid,.client-intake-summary dl,.client-admin-list{grid-template-columns:1fr}.registration-heading{padding-top:30px}.registration-stepper{justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.registration-stepper:before,.registration-stepper>div:not(.registration-progress-mobile){display:none}.registration-stepper>div.active{align-items:center;gap:9px;display:flex}.registration-stepper>div.active small{font-size:.82rem;font-weight:700}.registration-progress-mobile{background:#dfe7f2;border-radius:4px;flex:1;height:6px;margin-left:16px;display:block;overflow:hidden}.registration-progress-mobile span{background:#2f5f9f;height:100%;display:block}.registration-actions{flex-direction:column-reverse;align-items:stretch}.registration-actions .button{justify-content:center}.registration-photo-grid label>span,.registration-photo-grid label>img{aspect-ratio:4/3}.review-section dl{grid-template-columns:1fr}.client-admin-detail>header,.client-assignment-composer{flex-direction:column;grid-template-columns:1fr}.client-plan-assignments li{grid-template-columns:minmax(0,1fr) 44px}.client-plan-assignments li a{grid-area:2/1/auto/-1;justify-content:center}}
