:root{--charcoal:#393939;--cream:#fbf8ef;--navy:#1e2a6b;--navy-bright:#2e3fab;--warm-grey:#e5e2d9;--mid-grey:#656669;--bg:#0a0f1f;--bg-card:#11172b;--bg-elevated:#161d36;--bg-tertiary:#161d36;--bg-secondary:#11172b;--text-primary:#fbf8ef;--text-secondary:#9e9b95;--text-muted:#656669;--border:#ffffff12;--border-light:#ffffff0d;--border-mid:#ffffff1f;--primary:#1e2a6b;--primary-light:#2e3fab;--primary-dark:#0b1240;--accent:#1e2a6b2e;--accent-border:#1e2a6b73;--success:#4ade80;--warning:#f59e0b;--error:#f87171;--info:#60a5fa;--shadow-sm:0 1px 3px #00000059;--shadow-md:0 4px 16px #00000080;--shadow-lg:0 16px 40px #0009;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--transition:.22s cubic-bezier(.22,1,.36,1)}[data-theme=light]{--bg:#fbf8ef;--bg-card:#fff;--bg-elevated:#f5f2e8;--bg-tertiary:#f5f2e8;--bg-secondary:#fff;--text-primary:#393939;--text-secondary:#656669;--text-muted:#9e9b95;--border:#3939391a;--border-light:#39393912;--border-mid:#39393926;--accent:#1e2a6b12;--accent-border:#1e2a6b33;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 16px 40px #0000001f}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:var(--text-primary);background:var(--bg);-webkit-font-smoothing:antialiased;transition:background var(--transition), color var(--transition);font-family:Be Vietnam Pro,-apple-system,BlinkMacSystemFont,sans-serif;font-size:15px;font-weight:400;line-height:1.6}::selection{background:var(--navy-bright);color:var(--cream)}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;color:var(--text-primary);font-weight:800;line-height:1.15}h1{font-size:1.9rem}h2{font-size:1.5rem}h3{font-size:1.15rem}.serif-italic{font-family:Times New Roman MT,Times New Roman,Times,serif;font-style:italic;font-weight:400}a{color:var(--primary-light);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit}.container{max-width:1200px;margin:0 auto;padding:0 max(16px,min(4vw,32px))}.page{flex:1;padding:32px 0}.card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition);overflow:hidden}.card:hover{border-color:var(--border-mid);box-shadow:var(--shadow-md)}.card-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.card-header h3{align-items:center;gap:8px;margin:0;font-size:1rem;display:flex}.card-header p{color:var(--text-secondary);margin:4px 0 0;font-size:13px}.card-body{padding:24px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px;display:grid}.stat-card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);text-align:center;transition:border-color var(--transition), transform var(--transition), box-shadow var(--transition);padding:24px 20px;position:relative;overflow:hidden}.stat-card:before{content:"";background:linear-gradient(90deg, transparent, var(--navy-bright), transparent);opacity:0;height:2px;transition:opacity var(--transition);position:absolute;bottom:0;left:0;right:0}.stat-card:hover{border-color:var(--border-mid);box-shadow:var(--shadow-md);transform:translateY(-3px)}.stat-card:hover:before{opacity:1}.stat-icon{background:var(--accent);border:1px solid var(--accent-border);width:44px;height:44px;color:var(--navy-bright);transition:background var(--transition);border-radius:13px;justify-content:center;align-items:center;margin:0 auto 14px;font-size:1.1rem;display:flex}.stat-card:hover .stat-icon{background:#1e2a6b47}.stat-value{color:var(--text-primary);letter-spacing:-.03em;font-size:1.65rem;font-weight:800}.stat-label{color:var(--text-secondary);letter-spacing:.02em;margin-top:3px;font-size:12px;font-weight:500}.btn{letter-spacing:.01em;cursor:pointer;transition:all var(--transition);white-space:nowrap;border:none;border-radius:100px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:10px 20px;font-size:13.5px;font-weight:700;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{color:#0e0e0f;background:#fbf8ef}[data-theme=dark] .btn-primary{color:#0c1230;background:#f4f0e6}[data-theme=light] .btn-primary{background:var(--navy);color:#fbf8ef}.btn-primary:hover:not(:disabled){background:#fff;transform:translateY(-1px);box-shadow:0 8px 24px #fbf8ef2e}[data-theme=dark] .btn-primary:hover:not(:disabled){background:#fff;transform:translateY(-1px);box-shadow:0 8px 24px #f4f0e626}[data-theme=light] .btn-primary:hover:not(:disabled){background:var(--primary-light);box-shadow:0 8px 24px #1e2a6b40}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-mid);background:0 0}.btn-secondary:hover:not(:disabled){background:#ffffff0d;border-color:#ffffff4d;transform:translateY(-1px)}[data-theme=light] .btn-secondary:hover:not(:disabled){border-color:var(--navy);background:var(--accent)}.btn-success{color:var(--success);background:#4ade8026;border:1px solid #4ade804d}.btn-success:hover:not(:disabled){background:#4ade8040}.btn-danger{color:var(--error);background:#f871711f;border:1px solid #f8717140}.btn-danger:hover:not(:disabled){background:#f8717138}.btn-sm{min-height:30px;padding:6px 14px;font-size:12px}.btn-lg{min-height:50px;padding:14px 32px;font-size:15px}.btn-block{width:100%}.btn-icon{border-radius:var(--radius-sm);min-height:auto;padding:8px}.form-group{min-width:0;margin-bottom:16px}.form-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:7px;font-size:11.5px;font-weight:700;display:block}.form-control{border:1px solid var(--border-mid);border-radius:var(--radius-md);background:var(--bg-elevated);width:100%;min-width:0;max-width:100%;color:var(--text-primary);transition:border-color var(--transition), box-shadow var(--transition), background var(--transition);padding:11px 14px;font-family:inherit;font-size:14px;font-weight:400}.form-control:focus{border-color:var(--navy-bright);background:var(--bg-card);outline:none;box-shadow:0 0 0 3px #1e2a6b33}.form-control::placeholder{color:var(--text-muted)}select.form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23656669' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;padding-right:36px}textarea.form-control{resize:vertical;min-height:80px;line-height:1.5}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:600px){.form-row{grid-template-columns:1fr}}.settings-grid{grid-template-columns:2fr 1fr;align-items:start;gap:20px;display:grid}.settings-grid>*{min-width:0}@media (max-width:900px){.settings-grid{grid-template-columns:1fr}}.settings-multi-3{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.settings-multi-2{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}@media (max-width:600px){.settings-multi-3{grid-template-columns:1fr 1fr}.settings-multi-2{grid-template-columns:1fr}}@media (max-width:400px){.settings-multi-3{grid-template-columns:1fr}}.workout-inline-log{flex-direction:column;align-items:flex-start;gap:5px;display:flex}.workout-set-row{align-items:center;gap:8px;min-height:30px;display:flex}.workout-set-label{min-width:36px;color:var(--text-muted);font-size:11px;font-weight:700}.workout-set-input{width:68px;padding:4px 8px;font-size:13px}.workout-set-input-reps{width:60px}.workout-suggestion{background:var(--bg-elevated);min-height:22px;color:var(--text-secondary);border:1px solid var(--border);border-radius:999px;align-items:center;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.workout-suggestion.is-increase{color:var(--success);background:#4ade801f;border-color:#4ade8047}.workout-set-done{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-tertiary);min-height:28px;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);align-items:center;gap:7px;padding:4px 9px 4px 5px;display:inline-flex;position:relative}.workout-set-done:hover{border-color:var(--border-mid);background:var(--bg-elevated);color:var(--text-secondary)}.workout-set-done-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.workout-set-done-box{border:1px solid var(--border-mid);background:var(--bg-card);width:18px;height:18px;transition:background var(--transition), border-color var(--transition), box-shadow var(--transition);border-radius:6px;flex:0 0 18px;justify-content:center;align-items:center;display:inline-flex}.workout-set-done-check{border-left:2px solid var(--bg);border-bottom:2px solid var(--bg);opacity:0;width:8px;height:5px;transition:opacity var(--transition), transform var(--transition);transform:translateY(-1px)rotate(-45deg)scale(.7)}.workout-set-done-text{font-size:12px;font-weight:700;line-height:1}.workout-set-done.is-done{color:var(--success);background:#4ade801f;border-color:#4ade8059}.workout-set-done.is-done .workout-set-done-box{border-color:var(--success);background:var(--success);box-shadow:0 0 0 3px #4ade801f}.workout-set-done.is-done .workout-set-done-check{opacity:1;transform:translateY(-1px)rotate(-45deg)scale(1)}.workout-set-done-input:focus-visible+.workout-set-done-box{outline:2px solid var(--navy-bright);outline-offset:2px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th{background:var(--bg-elevated);text-align:left;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);padding:12px 16px;font-size:11px;font-weight:700}td{border-bottom:1px solid var(--border-light);color:var(--text-secondary);padding:13px 16px;font-size:13.5px}tbody tr{transition:background var(--transition)}tbody tr:hover{background:var(--bg-elevated)}tbody tr:last-child td{border-bottom:none}.badge{text-transform:uppercase;letter-spacing:.08em;border-radius:100px;align-items:center;padding:3px 10px;font-size:10.5px;font-weight:700;display:inline-flex}.badge-success{color:var(--success);background:#4ade801f;border:1px solid #4ade8040}.badge-warning{color:var(--warning);background:#f59e0b1f;border:1px solid #f59e0b40}.badge-danger{color:var(--error);background:#f871711f;border:1px solid #f8717140}.navbar{z-index:100;-webkit-backdrop-filter:blur(20px)saturate(1.4);border-bottom:1px solid var(--border);transition:background var(--transition), border-color var(--transition);background:#0e0e0fbf;padding:0 max(16px,min(4vw,32px));position:sticky;top:0}[data-theme=light] .navbar{border-bottom-color:var(--border);background:#fbf8efcc}.navbar-inner{justify-content:space-between;align-items:center;max-width:1200px;height:64px;margin:0 auto;display:flex}.navbar-brand{letter-spacing:-.03em;align-items:baseline;gap:0;font-size:1.35rem;text-decoration:none;display:flex}.navbar-brand .brand-forme{color:var(--text-primary);font-family:Be Vietnam Pro,sans-serif;font-weight:800}.navbar-brand .brand-ai{color:var(--text-primary);font-family:Times New Roman MT,Times New Roman,Times,serif;font-size:1.45rem;font-style:italic;font-weight:400}.navbar-brand:hover{opacity:.85;text-decoration:none}.nav-links{align-items:center;gap:2px;list-style:none;display:flex}.nav-links a,.nav-links button{color:var(--text-secondary);transition:all var(--transition);cursor:pointer;letter-spacing:.01em;background:0 0;border:none;border-radius:100px;align-items:center;gap:6px;padding:7px 14px;font-size:13.5px;font-weight:600;text-decoration:none;display:flex}.nav-links a:hover,.nav-links button:hover{color:var(--text-primary);background:var(--accent)}.nav-links a.active{color:var(--text-primary);background:var(--accent);border:1px solid var(--accent-border)}.nav-right{align-items:center;gap:10px;display:flex}.user-badge{background:var(--accent);border:1px solid var(--accent-border);color:var(--text-secondary);letter-spacing:.03em;border-radius:100px;padding:5px 14px;font-size:12px;font-weight:600}.theme-toggle{border:1px solid var(--border-mid);background:var(--bg-elevated);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition);border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:flex}.theme-toggle:hover{border-color:var(--border-mid);background:var(--bg-card);color:var(--text-primary)}.mobile-toggle{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:6px;font-size:1.3rem;display:none}@media (max-width:768px){.mobile-toggle{display:block}.nav-links{background:var(--bg-elevated);border:1px solid var(--border-mid);box-shadow:var(--shadow-lg);border-radius:var(--radius-lg);z-index:200;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);flex-direction:column;min-width:200px;padding:10px;display:none;position:absolute;top:64px;right:16px}.nav-links.open{display:flex}.nav-links a,.nav-links button{border-radius:var(--radius-md)}.nav-right{gap:6px}}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;background:#0009;justify-content:center;align-items:center;padding:16px;animation:.15s fadeIn;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal-box{background:var(--bg-card);border:1px solid var(--border-mid);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:520px;max-height:90vh;animation:.25s cubic-bezier(.22,1,.36,1) slideUp;overflow-y:auto}.modal-box.wide{max-width:800px}.modal-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h3{margin:0;font-size:1.05rem}.modal-close{background:var(--bg-elevated);border:1px solid var(--border);width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:all var(--transition);border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:flex}.modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-body{padding:24px}.modal-footer{border-top:1px solid var(--border-light);justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.toast-container{z-index:1100;flex-direction:column;gap:8px;display:flex;position:fixed;top:16px;right:16px}.toast{background:var(--bg-elevated);border:1px solid var(--border-mid);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);border-left:3px solid var(--success);min-width:280px;max-width:420px;color:var(--text-primary);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;font-size:13.5px;animation:.3s cubic-bezier(.22,1,.36,1) toastIn;display:flex}.toast.error{border-left-color:var(--error)}.toast.warning{border-left-color:var(--warning)}.toast.info{border-left-color:var(--info)}.toast-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:2px;font-size:1.1rem;line-height:1}@keyframes toastIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.spinner{border:2px solid var(--border-mid);border-top-color:var(--cream);border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.65s linear infinite spin}[data-theme=dark] .btn-primary .spinner{border-color:#0c1230 #0c123026 #0c123026}[data-theme=light] .spinner{border-top-color:var(--navy)}.spinner-lg{border-width:3px;width:34px;height:34px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-center{flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 20px;display:flex}.loading-center p{color:var(--text-secondary);font-size:14px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.grid-3{grid-template-columns:1fr 1fr 1fr;gap:16px;display:grid}.grid-responsive{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}@media (max-width:600px){.grid-2,.grid-3{grid-template-columns:1fr}}.text-center{text-align:center}.text-sm{font-size:13px}.text-muted{color:var(--text-secondary)}.font-bold{font-weight:700}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.login-page{min-height:100vh;display:flex}.login-hero{background:linear-gradient(135deg,#0b1240 0%,#1e2a6b 60%,#2e3fab 100%);flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.login-hero-grid{background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-size:60px 60px;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:radial-gradient(80% 80%,#000 0%,#0000 100%);mask-image:radial-gradient(80% 80%,#000 0%,#0000 100%)}.login-hero-glow{pointer-events:none;background:radial-gradient(#ffffff14 0%,#0000 70%);width:600px;height:400px;position:absolute;top:-20%;left:50%;transform:translate(-50%)}.login-hero-content{z-index:2;text-align:center;color:#f4f0e6;max-width:460px;padding:48px;position:relative}.login-hero-logo{letter-spacing:-.03em;justify-content:center;align-items:baseline;gap:0;margin-bottom:32px;font-size:3rem;display:flex}.login-hero-logo .brand-forme{color:#f4f0e6;font-family:Be Vietnam Pro,sans-serif;font-weight:800}.login-hero-logo .brand-ai{color:#f4f0e6;font-family:Times New Roman MT,Times New Roman,Times,serif;font-size:3.2rem;font-style:italic;font-weight:400}.login-hero-content h1{color:#f4f0e6;letter-spacing:-.03em;margin-bottom:14px;font-size:max(1.6rem,min(3vw,2.2rem));font-weight:800}.login-hero-content p{opacity:.7;font-size:.95rem;line-height:1.65}.login-features{flex-direction:column;gap:10px;margin-top:32px;display:flex}.login-feature{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:left;background:#ffffff0f;border:1px solid #ffffff1a;align-items:center;gap:12px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.login-feature-icon{border-radius:var(--radius-sm);background:#ffffff1f;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:15px;display:flex}.login-form-section{background:var(--bg);transition:background var(--transition);flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.login-form-box{width:100%;max-width:400px}.brand-logo{letter-spacing:-.03em;justify-content:center;align-items:baseline;gap:0;margin-bottom:32px;font-size:2rem;display:flex}.brand-logo .brand-forme{color:var(--text-primary);font-family:Be Vietnam Pro,sans-serif;font-weight:800}.brand-logo .brand-ai{color:var(--text-primary);font-family:Times New Roman MT,Times New Roman,Times,serif;font-size:2.15rem;font-style:italic;font-weight:400}.login-tagline{letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);text-align:center;margin-top:-20px;margin-bottom:32px;font-size:11px;font-weight:700}.brand-icon,.brand-text{display:none}@media (max-width:768px){.login-page{flex-direction:column}.login-hero{flex:none;min-height:220px}.login-form-section{padding:28px 20px}.login-hero-logo{font-size:2.2rem}.login-hero-logo .brand-ai{font-size:2.4rem}}.meal-icon{background:var(--accent);border:1px solid var(--accent-border);width:40px;height:40px;color:var(--navy-bright);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.macro-pills{flex-wrap:wrap;gap:8px;display:flex}.macro-pill{text-align:center;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);min-width:80px;transition:border-color var(--transition);flex:1;padding:10px 16px}.macro-pill:hover{border-color:var(--accent-border)}.macro-pill-value{color:var(--text-primary);letter-spacing:-.02em;font-size:1.15rem;font-weight:800}.macro-pill-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:10.5px;font-weight:600}.empty-state{text-align:center;color:var(--text-muted);padding:56px 20px}.empty-state .empty-icon{background:var(--accent);border:1px solid var(--accent-border);border-radius:var(--radius-xl);width:64px;height:64px;color:var(--navy-bright);justify-content:center;align-items:center;margin:0 auto 16px;font-size:1.5rem;display:flex}.empty-state h4{color:var(--text-secondary);margin-bottom:6px;font-size:1rem}.empty-state p{font-size:13px}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);font-size:10.5px;font-weight:700}.app-loading{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.landing-nav{z-index:100;background:0 0;justify-content:space-between;align-items:center;height:68px;padding:0 max(20px,min(5vw,80px));transition:background .3s,border-color .3s;display:flex;position:fixed;top:0;left:0;right:0}.landing-nav.scrolled{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0e0e0fd9}[data-theme=light] .landing-nav.scrolled{background:#fbf8efe0}.landing-nav-logo{letter-spacing:-.03em;align-items:baseline;gap:0;font-size:1.4rem;text-decoration:none;display:flex}.landing-nav-logo .brand-forme{color:var(--text-primary);font-weight:800}.landing-nav-logo .brand-ai{color:var(--text-primary);font-family:Times New Roman MT,Times New Roman,Times,serif;font-size:1.5rem;font-style:italic;font-weight:400}.landing-nav-links{align-items:center;gap:28px;list-style:none;display:flex}.landing-nav-links a{letter-spacing:.02em;color:var(--text-secondary);font-size:.82rem;font-weight:600;text-decoration:none;transition:color .2s}.landing-nav-links a:hover{color:var(--text-primary);text-decoration:none}.landing-nav-btn{background:#fbf8ef;border-radius:100px;padding:9px 22px;color:#0e0e0f!important;font-size:.82rem!important;font-weight:700!important;transition:background .2s,transform .15s!important}[data-theme=dark] .landing-nav-btn{background:#f4f0e6;color:#0c1230!important}[data-theme=light] .landing-nav-btn{background:var(--navy);color:#fbf8ef!important}.landing-nav-btn:hover{transform:scale(1.02);background:#fff!important;text-decoration:none!important}[data-theme=dark] .landing-nav-btn:hover{background:#fff!important}[data-theme=light] .landing-nav-btn:hover{background:var(--navy-bright)!important}.landing-nav-mobile{cursor:pointer;background:0 0;border:none;padding:4px;display:none}.landing-nav-mobile span{background:var(--text-primary);border-radius:2px;width:22px;height:2px;margin:4px 0;transition:transform .3s,opacity .3s;display:block}@media (max-width:768px){.landing-nav-links{display:none}.landing-nav-links.open{background:var(--bg-elevated);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);flex-direction:column;gap:16px;padding:20px max(20px,min(5vw,80px));display:flex;position:fixed;top:68px;left:0;right:0}.landing-nav-links.open a{font-size:1rem}.landing-nav-mobile{flex-direction:column;display:flex}}.landing-hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:140px max(20px,min(5vw,80px)) 80px;display:flex;position:relative;overflow:hidden}.landing-hero-glow{pointer-events:none;background:radial-gradient(at 50% 40%,#1e2a6b8c 0%,#1e2a6b2e 40%,#0000 70%);width:900px;height:600px;position:absolute;top:-20%;left:50%;transform:translate(-50%)}.landing-hero-grid{pointer-events:none;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:80px 80px;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:radial-gradient(80% 80%,#000 0%,#0000 100%);mask-image:radial-gradient(80% 80%,#000 0%,#0000 100%)}[data-theme=light] .landing-hero-grid{background-image:linear-gradient(#0000000a 1px,#0000 1px),linear-gradient(90deg,#0000000a 1px,#0000 1px)}.landing-hero-logo{z-index:1;letter-spacing:-.03em;align-items:baseline;gap:0;margin-top:-60px;margin-bottom:12px;font-size:5.2rem;display:flex;position:relative}.landing-hero-logo .brand-forme{color:var(--text-primary);font-family:Be Vietnam Pro,sans-serif;font-weight:800}.landing-hero-logo .brand-ai{color:var(--text-primary);font-family:Times New Roman MT,Times New Roman,Times,serif;font-size:5.6rem;font-style:italic;font-weight:400}.landing-badge{z-index:1;border:1px solid var(--border-mid);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border-radius:100px;align-items:center;gap:8px;margin-bottom:36px;padding:6px 16px 6px 8px;display:inline-flex;position:relative}[data-theme=light] .landing-badge{background:#1e2a6b0f}.landing-badge-dot{background:#4ade80;border-radius:50%;width:7px;height:7px;animation:2s ease-in-out infinite pulseDot;box-shadow:0 0 8px #4ade80}@keyframes pulseDot{0%,to{box-shadow:0 0 8px #4ade80}50%{box-shadow:0 0 18px #4ade80}}.landing-badge-text{letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary);font-size:.7rem;font-weight:700}.landing-headline{z-index:1;letter-spacing:-.035em;color:var(--text-primary);max-width:900px;margin-bottom:24px;font-size:max(2.6rem,min(7vw,5.6rem));font-weight:900;line-height:1;position:relative}.landing-headline em{font-family:Times New Roman MT,Times New Roman,Times,serif;font-style:italic;font-weight:400}.landing-sub{z-index:1;color:var(--text-secondary);max-width:520px;margin-bottom:44px;font-size:max(.95rem,min(2vw,1.15rem));font-weight:400;line-height:1.65;position:relative}.landing-ctas{z-index:1;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex;position:relative}.landing-btn-primary{color:#0e0e0f;cursor:pointer;white-space:nowrap;background:#fbf8ef;border:none;border-radius:100px;align-items:center;gap:10px;padding:15px 32px;font-size:.88rem;font-weight:700;text-decoration:none;transition:background .2s,transform .15s,box-shadow .2s;display:inline-flex}[data-theme=dark] .landing-btn-primary{color:#0c1230;background:#f4f0e6}[data-theme=light] .landing-btn-primary{background:var(--navy);color:#fbf8ef}.landing-btn-primary:hover{background:#fff;text-decoration:none;transform:translateY(-1px);box-shadow:0 12px 36px #fbf8ef26}[data-theme=dark] .landing-btn-primary:hover{background:#fff}[data-theme=light] .landing-btn-primary:hover{background:var(--navy-bright)}.landing-btn-secondary{color:var(--text-primary);border:1px solid var(--border-mid);cursor:pointer;white-space:nowrap;background:0 0;border-radius:100px;align-items:center;gap:10px;padding:15px 32px;font-size:.88rem;font-weight:600;text-decoration:none;transition:border-color .2s,background .2s,transform .15s;display:inline-flex}.landing-btn-secondary:hover{background:#ffffff0a;border-color:#ffffff4d;text-decoration:none;transform:translateY(-1px)}[data-theme=light] .landing-btn-secondary:hover{border-color:var(--navy);background:var(--accent)}.landing-hero-stats{z-index:1;border-top:1px solid var(--border);flex-wrap:wrap;justify-content:center;gap:max(28px,min(6vw,64px));margin-top:72px;padding-top:44px;display:flex;position:relative}.landing-stat-item{text-align:center}.landing-stat-num{color:var(--text-primary);letter-spacing:-.03em;margin-bottom:4px;font-size:max(1.5rem,min(3vw,2.2rem));font-weight:900;line-height:1}.landing-stat-label{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.72rem;font-weight:600}.landing-section{padding:max(72px,min(10vw,120px)) max(20px,min(5vw,80px))}.landing-section-header{text-align:center;margin-bottom:max(44px,min(7vw,72px))}.landing-section-header h2{letter-spacing:-.03em;margin-bottom:14px;font-size:max(1.8rem,min(4vw,3rem))}.landing-section-header h2 em{font-family:Times New Roman MT,Times New Roman,Times,serif;font-style:italic;font-weight:400}.landing-section-header p{color:var(--text-secondary);max-width:500px;margin:0 auto;font-size:1rem;line-height:1.65}.landing-ps{background:var(--bg-card);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.landing-ps-grid{grid-template-columns:1fr 1fr;display:grid}@media (max-width:768px){.landing-ps-grid{grid-template-columns:1fr}}.landing-ps-col{padding:max(40px,min(7vw,72px)) max(28px,min(5vw,56px))}.landing-ps-col.problem{border-right:1px solid var(--border)}@media (max-width:768px){.landing-ps-col.problem{border-right:none;border-bottom:1px solid var(--border)}}.landing-ps-label{letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:24px;font-size:.65rem;font-weight:700;display:flex}.landing-ps-col.problem .landing-ps-label{color:var(--error)}.landing-ps-col.solution .landing-ps-label{color:var(--success)}.landing-ps-col h3{margin-bottom:28px;font-size:max(1.3rem,min(2.5vw,1.9rem))}.landing-ps-items{flex-direction:column;gap:18px;display:flex}.landing-ps-item{align-items:flex-start;gap:14px;display:flex}.landing-ps-icon{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;margin-top:2px;display:flex}.problem .landing-ps-icon{background:#f871711a;border:1px solid #f8717133}.solution .landing-ps-icon{background:#4ade801a;border:1px solid #4ade8033}.landing-ps-item h4{letter-spacing:-.01em;margin-bottom:3px;font-size:.9rem;font-weight:700}.landing-ps-item p{color:var(--text-secondary);font-size:.83rem;line-height:1.55}.landing-steps{grid-template-columns:repeat(4,1fr);gap:2px;display:grid}@media (max-width:1024px){.landing-steps{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.landing-steps{grid-template-columns:1fr}}.landing-step-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:36px 28px 32px;transition:border-color .3s,transform .3s,background .3s;position:relative;overflow:hidden}.landing-step-card:before{content:"";background:linear-gradient(90deg, transparent, var(--navy-bright), transparent);opacity:0;height:2px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.landing-step-card:hover{border-color:var(--border-mid);transform:translateY(-4px)}.landing-step-card:hover:before{opacity:1}.landing-step-num{letter-spacing:.14em;color:var(--navy-bright);text-transform:uppercase;align-items:center;gap:8px;margin-bottom:18px;font-size:.6rem;font-weight:700;display:flex}.landing-step-num:after{content:"";background:linear-gradient(90deg, var(--navy-bright), transparent);opacity:.4;flex:1;height:1px}.landing-step-icon{background:var(--accent);border:1px solid var(--accent-border);border-radius:13px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:20px;display:flex}.landing-step-card h3{margin-bottom:8px;font-size:.95rem;font-weight:700}.landing-step-card p{color:var(--text-secondary);font-size:.82rem;line-height:1.6}.landing-features-section{background:var(--bg-card);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.landing-features-grid{grid-template-columns:repeat(3,1fr);gap:2px;display:grid}@media (max-width:1024px){.landing-features-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.landing-features-grid{grid-template-columns:1fr}}.landing-feature-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:40px 36px;transition:border-color .3s,transform .3s;position:relative;overflow:hidden}.landing-feature-card:hover{border-color:var(--accent-border);transform:translateY(-3px)}.landing-feature-card:after{content:"";opacity:0;pointer-events:none;background:radial-gradient(circle at 20% 20%,#1e2a6b1a 0%,#0000 60%);transition:opacity .3s;position:absolute;top:0;bottom:0;left:0;right:0}.landing-feature-card:hover:after{opacity:1}.landing-feature-icon{background:var(--accent);border:1px solid var(--accent-border);border-radius:13px;justify-content:center;align-items:center;width:46px;height:46px;margin-bottom:22px;transition:background .3s;display:flex}.landing-feature-card:hover .landing-feature-icon{background:#1e2a6b4d}.landing-feature-card h3{margin-bottom:8px;font-size:.95rem;font-weight:700}.landing-feature-card p{color:var(--text-secondary);font-size:.83rem;line-height:1.6}.landing-feature-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--navy-bright);background:var(--accent);border:1px solid var(--accent-border);border-radius:100px;margin-top:18px;padding:3px 10px;font-size:.62rem;font-weight:700;display:inline-block}.landing-stats-row{grid-template-columns:repeat(3,1fr);gap:2px;margin-bottom:max(48px,min(8vw,80px));display:grid}@media (max-width:768px){.landing-stats-row{grid-template-columns:1fr}}.landing-proof-stat{text-align:center;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:44px 28px;transition:border-color .3s;position:relative;overflow:hidden}.landing-proof-stat:after{content:"";background:linear-gradient(90deg, transparent, var(--navy-bright), transparent);opacity:0;height:1px;transition:opacity .3s;position:absolute;bottom:0;left:0;right:0}.landing-proof-stat:hover{border-color:var(--border-mid)}.landing-proof-stat:hover:after{opacity:1}.landing-proof-num{color:var(--text-primary);letter-spacing:-.04em;margin-bottom:8px;font-size:max(2.4rem,min(4.5vw,3.6rem));font-weight:900;line-height:1}.landing-proof-label{color:var(--text-secondary);font-size:.82rem;font-weight:500}.landing-proof-sub{color:var(--text-muted);margin-top:4px;font-size:.7rem}.landing-testimonials{grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:56px;display:grid}@media (max-width:1024px){.landing-testimonials{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.landing-testimonials{grid-template-columns:1fr}}.landing-testimonial{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:32px;transition:border-color .3s,transform .3s}.landing-testimonial:hover{border-color:var(--border-mid);transform:translateY(-3px)}.landing-testimonial-stars{color:#f59e0b;gap:3px;margin-bottom:18px;font-size:.85rem;display:flex}.landing-testimonial-text{color:var(--text-secondary);margin-bottom:22px;font-size:.88rem;font-style:italic;line-height:1.7}.landing-testimonial-text strong{color:var(--text-primary);font-style:normal;font-weight:700}.landing-testimonial-author{align-items:center;gap:11px;display:flex}.landing-author-avatar{width:38px;height:38px;color:var(--cream);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.78rem;font-weight:700;display:flex}.landing-author-info h4{font-size:.84rem;font-weight:700;line-height:1.2}.landing-author-info span{color:var(--text-muted);font-size:.72rem}.landing-partners{text-align:center;border-top:1px solid var(--border);padding-top:44px}.landing-partners-label{letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);margin-bottom:28px;font-size:.65rem;font-weight:700}.landing-partners-logos{flex-wrap:wrap;justify-content:center;align-items:center;gap:max(20px,min(4vw,48px));display:flex}.landing-partner{letter-spacing:-.02em;color:var(--text-muted);opacity:.45;text-transform:uppercase;font-size:1rem;font-weight:800}.landing-partner:hover{opacity:.75}.landing-cta-inner{border-radius:var(--radius-xl);background:linear-gradient(135deg,#0b1240 0%,#1e2a6b 60%,#2e3fab 100%);border:1px solid #2e3fab66;padding:max(52px,min(8vw,88px)) max(28px,min(6vw,72px));position:relative;overflow:hidden}.landing-cta-glow{pointer-events:none;background:radial-gradient(#ffffff0f 0%,#0000 70%);width:500px;height:400px;position:absolute;top:-40%;left:-5%}.landing-cta-layout{z-index:1;grid-template-columns:1fr 1fr;align-items:start;gap:max(36px,min(6vw,72px));display:grid;position:relative}@media (max-width:768px){.landing-cta-layout{grid-template-columns:1fr}}.landing-cta-content .eyebrow{color:#fbf8ef80;margin-bottom:16px}.landing-cta-content h2{color:var(--cream);letter-spacing:-.03em;margin-bottom:16px;font-size:max(1.8rem,min(3.5vw,2.8rem))}.landing-cta-content h2 em{font-family:Times New Roman MT,Times New Roman,Times,serif;font-style:italic;font-weight:400}.landing-cta-content p{color:#fbf8efa6;margin-bottom:28px;font-size:.92rem;line-height:1.7}.landing-cta-trust{color:#fbf8ef66;align-items:center;gap:8px;font-size:.76rem;font-weight:500;display:flex}.landing-cta-trust:before{content:"";background:#fbf8ef4d;width:16px;height:1px;display:block}.landing-contact-form{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0a;border:1px solid #ffffff1a;padding:36px}.landing-contact-form .form-label{color:#fbf8ef66}.landing-contact-form .form-control{color:var(--cream);background:#ffffff0d;border-color:#ffffff1a}.landing-contact-form .form-control:focus{box-shadow:none;background:#ffffff14;border-color:#ffffff4d}.landing-contact-form .form-control::placeholder{color:#fbf8ef40}.landing-contact-form select.form-control option{color:var(--cream);background:#1e2a6b}.landing-form-submit{background:var(--cream);width:100%;color:var(--navy);cursor:pointer;border:none;border-radius:100px;margin-top:6px;padding:14px;font-family:inherit;font-size:.88rem;font-weight:700;transition:background .2s,transform .15s,box-shadow .2s}.landing-form-submit:hover{background:#fff;transform:translateY(-1px);box-shadow:0 12px 36px #fbf8ef33}.landing-form-success{text-align:center;padding:36px 16px}.landing-form-success h3{color:var(--cream);margin-bottom:8px;font-size:1.1rem}.landing-form-success p{color:#fbf8ef99;font-size:.85rem}.landing-footer{border-top:1px solid var(--border);padding:44px max(20px,min(5vw,80px)) 32px}.landing-footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.landing-footer-logo{flex-direction:column;display:flex}.landing-footer-logo-text{letter-spacing:-.03em;align-items:baseline;font-size:1.1rem;display:flex}.landing-footer-logo-text .brand-forme{color:var(--text-primary);font-weight:800}.landing-footer-logo-text .brand-ai{color:var(--text-primary);font-family:Times New Roman MT,Times New Roman,Times,serif;font-size:1.2rem;font-style:italic;font-weight:400}.landing-footer-tagline{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-top:3px;font-size:.65rem}.landing-footer-links{flex-wrap:wrap;gap:24px;list-style:none;display:flex}.landing-footer-links a{color:var(--text-muted);font-size:.78rem;text-decoration:none;transition:color .2s}.landing-footer-links a:hover{color:var(--text-primary);text-decoration:none}.landing-footer-copy{color:var(--text-muted);font-size:.72rem}@media (max-width:640px){.landing-footer-inner{flex-direction:column;align-items:flex-start}}.fade-up{opacity:0;transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);transform:translateY(28px)}.fade-up.visible{opacity:1;transform:translateY(0)}.fade-up.delay-1{transition-delay:.1s}.fade-up.delay-2{transition-delay:.2s}.fade-up.delay-3{transition-delay:.3s}.fade-up.delay-4{transition-delay:.4s}@media (max-width:480px){.landing-ctas{flex-direction:column;width:100%}.landing-btn-primary,.landing-btn-secondary{justify-content:center;width:100%}}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.page-header h2{margin-bottom:4px}.page-header p{color:var(--text-secondary);font-size:14px}.section-divider{border:none;border-top:1px solid var(--border);margin:24px 0}[dir=rtl]{font-family:Segoe UI,Cairo,Noto Sans Arabic,Tahoma,Arial,sans-serif}[dir=rtl] .mobile-toggle{margin-left:0;margin-right:auto}[dir=rtl] .nav-links{text-align:right;left:16px;right:auto}[dir=rtl] .navbar-brand{margin-left:auto;margin-right:0}[dir=rtl] .toast-container{left:16px;right:auto}[dir=rtl] select.form-control{background-position:12px;padding-left:36px;padding-right:12px}[dir=rtl] .form-label,[dir=rtl] .form-group,[dir=rtl] th,[dir=rtl] td,[dir=rtl] .card-header{text-align:right}[dir=rtl] .flex-rtl-reverse{flex-direction:row-reverse}[dir=rtl] .justify-end{justify-content:flex-start}[dir=rtl] .stat-card{text-align:right}[dir=rtl] .badge{direction:ltr;display:inline-block}[dir=rtl] .modal-footer{flex-direction:row-reverse}.lang-toggle{border:1px solid var(--border-mid);color:var(--text-secondary);cursor:pointer;letter-spacing:.5px;transition:var(--transition);background:0 0;border-radius:100px;padding:4px 10px;font-size:12px;font-weight:600}.lang-toggle:hover{background:var(--accent);border-color:var(--primary-light);color:var(--text-primary)}[dir=rtl] .sidebar-layout{direction:rtl}[dir=rtl] td.num{text-align:left;direction:ltr;unicode-bidi:embed}[dir=rtl] canvas{direction:ltr}.meal-plan-layout{grid-template-columns:340px 1fr;align-items:start;gap:20px;display:grid}.meal-plan-form-card{position:sticky;top:76px}.meal-plan-summary-grid{grid-template-columns:1fr 180px;align-items:center;gap:24px;display:grid}.meal-plan-chart-wrap{flex-shrink:0;width:180px;height:180px;position:relative}.saved-plan-actions{flex-wrap:wrap;gap:8px;display:flex}.dashboard-chart-grid{grid-template-columns:2fr 1fr;gap:20px;display:grid}@media (max-width:640px){.page{padding:20px 0}.container{padding:0 14px}h1{font-size:1.5rem}h2{font-size:1.25rem}.page-header{flex-direction:column;align-items:flex-start;gap:10px}.page-header .btn{align-self:flex-start}.mb-6.flex.items-center.justify-between{flex-wrap:wrap;gap:10px}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:16px 12px}.stat-value{font-size:1.35rem}.dashboard-chart-grid,.meal-plan-layout{grid-template-columns:1fr}.meal-plan-form-card{position:static}.meal-plan-summary-grid{grid-template-columns:1fr}.meal-plan-chart-wrap{width:140px;height:140px;margin:0 auto}.saved-plan-actions{gap:6px}.saved-plan-actions .btn{text-align:center;flex:1;min-width:70px}.card-body{padding:16px}.card-header{padding:14px 16px}.modal-box{border-radius:var(--radius-lg);max-height:95vh;margin:0}.modal-overlay{align-items:flex-end;padding:8px}.modal-body{padding:16px}.modal-footer{flex-wrap:wrap;gap:8px;padding:12px 16px}.modal-footer .btn{flex:1}td,th{padding:10px;font-size:12.5px}.user-badge,.login-hero{display:none}.login-form-section{justify-content:flex-start;padding:28px 20px;overflow-y:auto}.login-form-box{max-width:100%}.brand-logo{margin-bottom:14px}.login-tagline{margin-top:-8px;margin-bottom:10px}.card-header>div{flex-wrap:wrap;row-gap:6px}.card-body.flex.items-center.justify-between{flex-direction:column;align-items:flex-start;gap:10px}.stats-grid.kpi-strip{grid-template-columns:1fr 1fr}.action-menu{left:auto!important;right:8px!important}}@media (max-width:896px) and (max-height:430px){.login-page{flex-direction:row}.login-hero{flex:0 0 220px;min-height:auto}.login-hero-content{padding:20px}.login-hero-content h1{font-size:1.1rem}.login-hero-content p,.login-features{display:none}.login-hero-logo{margin-bottom:12px;font-size:1.8rem}.login-form-section{padding:16px 20px;overflow-y:auto}.login-form-box{max-width:360px}.brand-logo{margin-bottom:12px;font-size:1.5rem}.login-tagline{margin-bottom:16px}.page{padding:12px 0}.stats-grid{grid-template-columns:repeat(4,1fr)}.dashboard-chart-grid{grid-template-columns:2fr 1fr}.meal-plan-layout{grid-template-columns:300px 1fr}}@media (min-width:641px) and (max-width:1024px){.meal-plan-layout{grid-template-columns:1fr}.meal-plan-form-card{position:static}.meal-plan-summary-grid{grid-template-columns:1fr 180px}.dashboard-chart-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}.admin-layout{grid-template-columns:minmax(280px,360px) 1fr;align-items:start;gap:20px;display:grid}@media (max-width:480px){.landing-hero-logo{margin-top:-20px;font-size:3.2rem}.landing-hero-logo .brand-ai{font-size:3.5rem}}@media (max-width:900px){.admin-layout{grid-template-columns:1fr}}@keyframes ob-slide-in-right{0%{opacity:0;transform:translate(36px)}to{opacity:1;transform:translate(0)}}@keyframes ob-slide-in-left{0%{opacity:0;transform:translate(-36px)}to{opacity:1;transform:translate(0)}}@keyframes ob-fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes ob-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:.9;transform:scale(1.15)}}@keyframes ob-profile-reveal{0%{opacity:0;transform:translateY(22px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes ob-bar-fill{0%{width:0%}to{width:var(--ob-bar-w)}}.ob-fade-up{animation:.38s cubic-bezier(.22,1,.36,1) both ob-fade-up}.ob-profile-reveal{animation:.48s cubic-bezier(.22,1,.36,1) .1s both ob-profile-reveal}.ob-page{background:var(--bg);flex-direction:column;justify-content:flex-start;align-items:center;min-height:100vh;padding:0;display:flex}.ob-header{justify-content:space-between;align-items:center;width:100%;max-width:600px;margin:0 auto;padding:20px 24px 0;display:flex}.ob-progress-track{background:var(--border);z-index:100;height:3px;position:fixed;top:0;left:0;right:0}.ob-progress-fill{background:linear-gradient(90deg, var(--navy-bright), #4a6cf7);border-radius:0 99px 99px 0;height:100%;transition:width .45s cubic-bezier(.22,1,.36,1)}.ob-body{flex:1;width:100%;max-width:540px;margin:0 auto;padding:32px 24px 80px}.ob-step-label{letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px;font-size:11px;font-weight:700}.ob-title{letter-spacing:-.03em;color:var(--text-primary);margin-bottom:6px;font-size:1.65rem;font-weight:800;line-height:1.2}.ob-subtitle{color:var(--text-secondary);margin-bottom:28px;font-size:14px;line-height:1.5}.ob-option-card{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--radius-md);cursor:pointer;text-align:left;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px;transition:border-color .18s,background .18s,transform .14s;display:flex}.ob-option-card:hover{border-color:var(--accent-border);background:var(--bg-elevated)}.ob-option-card:active{transform:scale(.97)}.ob-option-card.selected{border-color:var(--navy-bright);background:#1e2a6b38}[data-theme=light] .ob-option-card.selected{border-color:var(--navy);background:#1e2a6b14}.ob-option-emoji{margin-bottom:2px;font-size:1.4rem;line-height:1}.ob-option-label{color:var(--text-primary);font-size:13px;font-weight:700}.ob-option-desc{color:var(--text-muted);font-size:11.5px;line-height:1.35}.ob-coach-card{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:14px;padding:16px 18px;transition:border-color .18s,background .18s,transform .14s;display:flex}.ob-coach-card:hover{border-color:var(--accent-border);background:var(--bg-elevated)}.ob-coach-card:active{transform:scale(.98)}.ob-coach-card.selected{border-color:var(--navy-bright);background:#1e2a6b38}[data-theme=light] .ob-coach-card.selected{border-color:var(--navy);background:#1e2a6b14}.ob-coach-icon{flex-shrink:0;font-size:1.6rem}.ob-coach-title{color:var(--text-primary);font-size:14px;font-weight:700}.ob-coach-desc{color:var(--text-muted);font-size:12px}.ob-slider-wrap{flex-direction:column;gap:8px;margin-bottom:24px;display:flex}.ob-slider-label-row{color:var(--text-muted);justify-content:space-between;font-size:11.5px;display:flex}.ob-slider{-webkit-appearance:none;background:var(--border-mid);cursor:pointer;border-radius:99px;outline:none;width:100%;height:5px}.ob-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--navy-bright);border:3px solid var(--bg);width:20px;height:20px;box-shadow:0 0 0 2px var(--navy-bright);border-radius:50%;transition:transform .15s}.ob-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.ob-slider::-moz-range-thumb{background:var(--navy-bright);border:3px solid var(--bg);width:20px;height:20px;box-shadow:0 0 0 2px var(--navy-bright);border-radius:50%}[data-theme=light] .ob-slider{background:#d1d5db}[data-theme=light] .ob-slider::-webkit-slider-thumb{background:var(--navy);box-shadow:0 0 0 2px var(--navy)}.ob-lang-toggle{gap:10px;margin-bottom:32px;display:flex}.ob-lang-btn{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);flex:1;padding:14px;font-size:15px;font-weight:600;transition:border-color .18s,background .18s,color .18s}.ob-lang-btn.selected{border-color:var(--navy-bright);color:var(--text-primary);background:#1e2a6b38}[data-theme=light] .ob-lang-btn.selected{border-color:var(--navy);background:#1e2a6b14}.ob-checkbox-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ob-cuisine-item{background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:10px 14px;transition:border-color .18s,background .18s;display:flex}.ob-cuisine-item.selected{border-color:var(--navy-bright);background:#1e2a6b2e}[data-theme=light] .ob-cuisine-item.selected{border-color:var(--navy);background:#1e2a6b12}.ob-cuisine-emoji{font-size:1.1rem}.ob-cuisine-label{color:var(--text-primary);font-size:13px;font-weight:600}.ob-section-title{color:var(--text-secondary);margin-bottom:12px;font-size:13px;font-weight:700}.ob-building-dots{justify-content:center;gap:8px;margin:32px 0;display:flex}.ob-building-dot{background:var(--navy-bright);border-radius:50%;width:10px;height:10px}.ob-building-dot:first-child{animation:1.2s ease-in-out infinite ob-pulse}.ob-building-dot:nth-child(2){animation:1.2s ease-in-out .2s infinite ob-pulse}.ob-building-dot:nth-child(3){animation:1.2s ease-in-out .4s infinite ob-pulse}.ob-profile-card{background:var(--bg-card);border:1px solid var(--accent-border);border-radius:var(--radius-lg);margin:24px 0;padding:24px}.ob-profile-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 0;font-size:13px;display:flex}.ob-profile-key{color:var(--text-muted)}.ob-profile-value{color:var(--text-primary);font-weight:600}.ob-footer{background:var(--bg);border-top:1px solid var(--border);z-index:50;justify-content:center;gap:12px;padding:16px 24px;display:flex;position:fixed;bottom:0;left:0;right:0}.ob-footer-inner{gap:12px;width:100%;max-width:540px;display:flex}.ob-back-btn{border:1.5px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;padding:12px 20px;font-size:14px;font-weight:600;transition:border-color .18s,color .18s}.ob-back-btn:hover{border-color:var(--border-mid);color:var(--text-primary)}.ob-continue-btn{background:linear-gradient(135deg, var(--navy) 0%, var(--navy-bright) 100%);border-radius:var(--radius-md);color:#fff;cursor:pointer;letter-spacing:.01em;border:none;flex:1;padding:13px;font-size:14px;font-weight:700;transition:opacity .18s,transform .14s}.ob-continue-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.ob-continue-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}[data-theme=light] .ob-continue-btn{background:linear-gradient(135deg, var(--navy-dark) 0%, var(--navy) 100%)}.ob-skip-link{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:13px;text-decoration:none;transition:color .15s}.ob-skip-link:hover{color:var(--text-secondary)}.ob-form-pair{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:430px){.ob-form-pair{grid-template-columns:1fr}}@media (min-width:769px){.ob-body{max-width:620px;padding:40px 32px 100px}.ob-header{max-width:700px}.ob-footer-inner{max-width:620px}.ob-title{font-size:1.85rem}}@media (max-width:540px){.ob-body{padding:24px 16px 100px}.ob-title{font-size:1.4rem}.ob-grid-3{grid-template-columns:1fr 1fr}.ob-header{padding:16px 16px 0}.ob-footer{padding:12px 16px env(safe-area-inset-bottom,12px)}}@media (max-width:430px){.ob-grid-2{grid-template-columns:1fr}.ob-grid-3{grid-template-columns:1fr 1fr}.ob-title{font-size:1.25rem}.ob-body{padding:20px 14px 100px}.ob-header{padding:14px 14px 0}.ob-option-card{padding:12px 14px}.ob-coach-card{padding:14px 16px}.ob-lang-toggle{flex-direction:column}}.food-chip{border:1.5px solid var(--border);background:var(--bg-tertiary);cursor:pointer;white-space:nowrap;color:var(--text-secondary);border-radius:99px;align-items:center;gap:4px;padding:5px 11px;font-family:inherit;font-size:12px;font-weight:600;line-height:1.4;transition:border-color .14s,background .14s,color .14s,transform .1s;display:inline-flex}.food-chip:hover{border-color:var(--border-mid);background:var(--bg-card);transform:translateY(-1px)}.food-chip:active{transform:scale(.96)}.food-chip.liked{color:#16a34a;background:#22c55e1f;border-color:#22c55e}.food-chip.disliked{color:#dc2626;background:#ef44441f;border-color:#ef4444}[data-theme=dark] .food-chip.liked{color:#4ade80;background:#22c55e26}[data-theme=dark] .food-chip.disliked{color:#f87171;background:#ef444426}.admin-actions-backdrop{z-index:999;background:#080c1a00;position:fixed;top:0;bottom:0;left:0;right:0}.admin-actions-menu{background:var(--paper,#fbf9f3);color:var(--ink,#0c1230);border:1px solid var(--line,#0c12301a);opacity:1;border-radius:12px;overflow:hidden;box-shadow:0 18px 40px -16px #080c1a73,0 4px 12px -4px #080c1a2e}[data-theme=dark] .admin-actions-menu{background:#161d36;border-color:#f4f0e61f;box-shadow:0 18px 40px -16px #0000008c,0 4px 12px -4px #00000073}.admin-actions-menu-scroll{max-height:min(360px,70vh);overflow-y:auto}.admin-actions-menu-item{text-align:left;border:none;border-bottom:1px solid var(--line,#0c12300f);width:100%;color:var(--ink,#0c1230);cursor:pointer;background:0 0;padding:11px 16px;font-family:inherit;font-size:13.5px;transition:background .12s;display:block}.admin-actions-menu-item:last-child{border-bottom:none}.admin-actions-menu-item:hover{background:var(--accent-bg,#4f6fe014);outline:none}.admin-actions-menu-item:focus-visible{background:var(--accent-bg,#4f6fe014);outline:none}.admin-actions-menu-item.is-warning{color:var(--warning,#b5780e)}.admin-actions-menu-item.is-success{color:var(--success,#2d8a55)}.admin-actions-menu-item.is-danger{color:var(--error,#c43d3d)}.admin-actions-menu.is-mobile{padding:6px 0 max(12px, env(safe-area-inset-bottom));border-bottom:none;border-radius:18px 18px 0 0;max-height:75vh;animation:.18s ease-out admin-actions-sheet-in}.admin-actions-menu.is-mobile .admin-actions-menu-scroll{max-height:calc(75vh - 56px)}.admin-actions-menu-handle{background:var(--line,#0c12302e);border-radius:2px;width:36px;height:4px;margin:6px auto 8px}.admin-actions-menu-title{color:var(--muted,#5e658b);border-bottom:1px solid var(--line,#0c12300f);padding:0 18px 10px;font-family:inherit;font-size:13px;font-weight:600}.admin-actions-backdrop.is-mobile{background:#080c1a73}.admin-actions-menu.is-mobile .admin-actions-menu-item{padding:14px 18px;font-size:15px}.admin-actions-menu.opens-up{box-shadow:0 -18px 40px -16px #080c1a73,0 -4px 12px -4px #080c1a2e}[data-theme=dark] .admin-actions-menu.opens-up{box-shadow:0 -18px 40px -16px #0000008c,0 -4px 12px -4px #00000073}@keyframes admin-actions-sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes lp-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes lp-spin-rev{0%{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes lp-word-rise{to{opacity:1;filter:blur();transform:translateY(0)}}.lp-page{--cream:#f4f0e6;--cream-2:#ede7d7;--cream-3:#e5ddc8;--paper:#fbf9f3;--paper-2:#fff;--ink:#0c1230;--ink-2:#1e2a6b;--ink-3:#2d3877;--muted:#5e658b;--muted-2:#8a8fa8;--muted-3:#b6b2a4;--accent:#4f6fe0;--accent-2:#6e89ee;--accent-deep:#3754c5;--accent-soft:#dae2fa;--accent-bg:#4f6fe014;--accent-bd:#4f6fe02e;--line:#0c123014;--line-2:#0c123024;--line-hi:#0c123038;--success:#2d8a55;--success-bg:#2d8a551a;--warning:#b5780e;--warning-bg:#b5780e1f;--danger:#c24545;--danger-bg:#c245451a;--om-ring-outer:#4f6fe0;--om-ring-inner:#1e2a6b;--om-sat-navy:#1e2a6b;--om-sat-blue:#5479e7;--om-sat-cream:#ece9dd;--om-sat-cream-stroke:#d6d2c5;--om-center:#1e2a6b;--om-pupil:#f4f0e6;--om-stroke-op:.85;--lp-radius-sm:8px;--lp-radius:14px;--lp-radius-lg:20px;--lp-radius-xl:28px;--lp-shadow-soft:0 1px 0 #0c12300a, 0 18px 40px -22px #0c12302e;--lp-shadow-hi:0 1px 0 #0c12300a, 0 40px 80px -30px #0c123059;--lp-font-sans:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--lp-font-serif:"Instrument Serif", "Cormorant Garamond", Georgia, serif;--lp-font-mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;font-family:var(--lp-font-sans);font-feature-settings:"ss01","cv11";background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;min-height:100vh;line-height:1.5;overflow-x:hidden}html[data-theme=dark] .lp-page{--cream:#0a0f1f;--cream-2:#0e1426;--cream-3:#131a30;--paper:#11172b;--paper-2:#161d36;--ink:#f4f0e6;--ink-2:#e8e2d0;--ink-3:#d4cdb6;--muted:#9098b5;--muted-2:#6b7290;--muted-3:#4d5470;--accent:#6e89ee;--accent-2:#9ab0f5;--accent-deep:#4f6fe0;--accent-soft:#232e55;--accent-bg:#6e89ee1f;--accent-bd:#6e89ee4d;--line:#f4f0e612;--line-2:#f4f0e61f;--line-hi:#f4f0e638;--success:#4fc084;--success-bg:#4fc08424;--warning:#e4a33e;--warning-bg:#e4a33e24;--danger:#ed7676;--danger-bg:#ed767624;--lp-shadow-soft:0 1px 0 #ffffff0a inset, 0 18px 40px -22px #000000b3;--lp-shadow-hi:0 1px 0 #ffffff0a inset, 0 40px 80px -30px #000c;--om-ring-outer:#6e89ee;--om-ring-inner:#b6c0e8;--om-sat-navy:#e8e2d0;--om-sat-blue:#6e89ee;--om-sat-cream:#4f6fe0;--om-sat-cream-stroke:#6e89ee;--om-center:#e8e2d0;--om-pupil:#0a0f1f;--om-stroke-op:.9}.lp-page *{box-sizing:border-box}.lp-page a{color:inherit;text-decoration:none}.lp-page button{cursor:pointer;font-family:inherit}.lp-page ::selection{background:var(--ink);color:var(--cream)}html[data-theme=dark] .lp-page ::selection{background:var(--accent);color:#0a0f1f}.lp-page .orbit-mark .om-ring-outer{stroke:var(--om-ring-outer);opacity:var(--om-stroke-op)}.lp-page .orbit-mark .om-ring-inner{stroke:var(--om-ring-inner);opacity:var(--om-stroke-op)}.lp-page .orbit-mark .om-sat-navy{fill:var(--om-sat-navy)}.lp-page .orbit-mark .om-sat-blue{fill:var(--om-sat-blue)}.lp-page .orbit-mark .om-sat-cream{fill:var(--om-sat-cream);stroke:var(--om-sat-cream-stroke);stroke-width:1px}.lp-page .orbit-mark .om-center{fill:var(--om-center)}.lp-page .orbit-mark .om-pupil{fill:var(--om-pupil)}.lp-page .lp-wordmark{letter-spacing:-.015em;align-items:baseline;font-weight:500;display:inline-flex}.lp-page .lp-wordmark .a{color:var(--ink)}.lp-page .lp-wordmark .b{color:var(--accent);font-family:var(--lp-font-serif);font-style:italic;font-weight:400}.lp-page .lp-mark{flex-shrink:0;width:36px;height:36px;display:inline-block;position:relative}.lp-page .lp-mark svg{width:100%;height:100%;display:block}.lp-page .lp-wrap{max-width:1240px;margin:0 auto;padding:0 28px}.lp-page .lp-eyebrow{font-family:var(--lp-font-mono);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);align-items:center;gap:10px;font-size:11px;font-weight:500;display:inline-flex}.lp-page .lp-eyebrow:before{content:"";background:var(--muted);width:14px;height:1px}.lp-page em.lp-serif{font-style:italic;font-family:var(--lp-font-serif);color:var(--ink-2);letter-spacing:-.005em;font-weight:400;line-height:1}.lp-page .lp-nav{z-index:50;-webkit-backdrop-filter:blur(20px)saturate(140%);background:#f4f0e6c7;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:18px 32px;transition:background .2s,border-color .2s;display:flex;position:sticky;top:0}.lp-page .lp-nav.scrolled{border-bottom-color:var(--line);background:#f4f0e6eb}html[data-theme=dark] .lp-page .lp-nav{background:#0a0f1fc7}html[data-theme=dark] .lp-page .lp-nav.scrolled{border-bottom-color:var(--line);background:#0a0f1feb}.lp-page .lp-nav-logo{align-items:center;gap:12px;font-size:19px;display:flex}.lp-page .lp-nav-links{align-items:center;gap:30px;margin:0;padding:0;list-style:none;display:flex}.lp-page .lp-nav-links a{color:var(--muted);font-size:14px;font-weight:500;transition:color .15s}.lp-page .lp-nav-links a:hover{color:var(--ink)}.lp-page .lp-nav-btn{background:var(--paper-2);border:1px solid var(--line-2);color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:9px 16px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.lp-page .lp-nav-btn:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}html[data-theme=dark] .lp-page .lp-nav-btn{background:var(--paper-2);color:var(--ink);border-color:var(--line-2)}html[data-theme=dark] .lp-page .lp-nav-btn:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}.lp-page .lp-theme-toggle{border:1px solid var(--line-2);background:var(--paper-2);width:36px;height:36px;color:var(--ink);cursor:pointer;border-radius:50%;flex-shrink:0;place-items:center;transition:all .15s;display:grid}.lp-page .lp-theme-toggle:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}.lp-page .lp-btn{white-space:nowrap;font-size:14.5px;font-weight:500;font-family:var(--lp-font-sans);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:14px 22px;transition:all .18s;display:inline-flex}.lp-page .lp-btn-primary{background:var(--ink);color:var(--cream);box-shadow:0 8px 24px -10px #0c123066}.lp-page .lp-btn-primary:hover{background:var(--ink-2);transform:translateY(-1px);box-shadow:0 12px 32px -10px #1e2a6b80}.lp-page .lp-btn-secondary{color:var(--ink);border-color:var(--line-hi);background:0 0}.lp-page .lp-btn-secondary:hover{background:var(--paper-2);border-color:var(--ink)}html[data-theme=dark] .lp-page .lp-btn-primary{background:var(--accent);color:#0a0f1f;box-shadow:0 8px 24px -10px #6e89ee99}html[data-theme=dark] .lp-page .lp-btn-primary:hover{background:var(--accent-2)}html[data-theme=dark] .lp-page .lp-btn-secondary{color:var(--ink);border-color:var(--line-hi)}html[data-theme=dark] .lp-page .lp-btn-secondary:hover{background:var(--paper-2);border-color:var(--ink)}.lp-page .lp-nav-mobile-toggle{border:1px solid var(--line-2);background:var(--paper-2);width:38px;height:38px;color:var(--ink);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:none}.lp-page .lp-nav-mobile-toggle:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}.lp-page .lp-bars{flex-direction:column;gap:3px;width:16px;display:flex}.lp-page .lp-bars span{background:currentColor;border-radius:2px;width:100%;height:1.6px;transition:transform .25s,opacity .2s;display:block}.lp-page .lp-nav-mobile-toggle.open .lp-bars span:first-child{transform:translateY(5px)rotate(45deg)}.lp-page .lp-nav-mobile-toggle.open .lp-bars span:nth-child(2){opacity:0}.lp-page .lp-nav-mobile-toggle.open .lp-bars span:nth-child(3){transform:translateY(-4px)rotate(-45deg)}.lp-page .lp-mobile-drawer{z-index:60;background:var(--cream);opacity:0;pointer-events:none;flex-direction:column;padding:90px 32px 40px;transition:opacity .25s,transform .3s cubic-bezier(.2,.7,.2,1);display:flex;position:fixed;top:0;bottom:0;left:0;right:0;transform:translateY(-12px)}.lp-page .lp-mobile-drawer.open{opacity:1;pointer-events:auto;transform:translateY(0)}.lp-page .lp-mobile-drawer-orbit{pointer-events:none;opacity:.4;width:80vw;height:80vw;position:absolute;top:-30%;right:-30%}.lp-page .lp-mobile-drawer-links{z-index:1;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex;position:relative}.lp-page .lp-mobile-drawer-links a{font-family:var(--lp-font-serif);letter-spacing:-.02em;color:var(--ink);border-bottom:1px solid var(--line);padding:16px 0;font-size:36px;font-style:italic;display:block}.lp-page .lp-mobile-drawer-links a:hover{color:var(--accent)}.lp-page .lp-mobile-drawer-cta{z-index:1;flex-direction:column;gap:10px;margin-top:auto;display:flex;position:relative}.lp-page .lp-mobile-drawer-theme{background:var(--paper-2);border:1px solid var(--line-2);color:var(--muted);cursor:pointer;border-radius:999px;align-self:flex-start;align-items:center;gap:8px;margin-top:18px;padding:10px 14px;font-size:13px;display:inline-flex}.lp-page .lp-scroll-orbit{z-index:30;pointer-events:none;opacity:0;width:56px;height:56px;transition:opacity .4s;position:fixed;bottom:28px;right:28px}.lp-page .lp-scroll-orbit.visible{opacity:.85}.lp-page .lp-scroll-orbit-outer{transform:rotate(calc(var(--scroll-rot,0) * -.6deg));transition:transform 50ms linear;position:absolute;top:0;bottom:0;left:0;right:0}.lp-page .lp-scroll-orbit-label{font-family:var(--lp-font-mono);color:var(--ink);letter-spacing:.08em;font-size:9px;font-weight:600;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.lp-page .lp-hero{text-align:center;padding:56px 0 80px;position:relative;overflow:hidden}.lp-page .lp-hero-orbit{transform:translate(calc(-50% + var(--mx,0) * 20px), calc(-45% + var(--my,0) * 20px));aspect-ratio:1;pointer-events:none;z-index:0;width:min(1200px,110vw);transition:transform .4s cubic-bezier(.2,.6,.2,1);position:absolute;top:50%;left:50%}.lp-page .lp-hero-orbit svg{width:100%;height:100%;display:block}.lp-page .lp-hero-inner{z-index:2;position:relative}.lp-page .lp-hero-badge{color:var(--ink);background:var(--paper-2);border:1px solid var(--line-2);box-shadow:var(--lp-shadow-soft);border-radius:999px;align-items:center;gap:10px;margin-bottom:36px;padding:7px 14px 7px 8px;font-size:12.5px;display:inline-flex}.lp-page .lp-hero-badge-mark{flex-shrink:0;width:20px;height:20px}.lp-page .lp-hero-badge-mark svg{width:100%;height:100%;display:block}.lp-page .lp-hero h1{letter-spacing:-.038em;max-width:14ch;color:var(--ink);margin:0 auto 28px;font-size:max(48px,min(8vw,108px));font-weight:400;line-height:.98}.lp-page .lp-hero h1 .lp-serif{font-family:var(--lp-font-serif);color:var(--ink-2);letter-spacing:-.02em;padding-bottom:.05em;padding-right:.18em;font-style:italic;font-weight:400;display:inline-block}.lp-page .lp-hero h1 .lp-word{opacity:0;filter:blur(8px);animation:.9s cubic-bezier(.2,.7,.2,1) forwards lp-word-rise;display:inline-block;transform:translateY(28px)}.lp-page .lp-hero-sub{color:var(--muted);max-width:58ch;margin:0 auto 40px;font-size:max(17px,min(1.5vw,20px));font-weight:400;line-height:1.55}.lp-page .lp-hero-ctas{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.lp-page .lp-hero-trust{color:var(--muted-2);flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;margin-top:28px;font-size:12.5px;display:flex}.lp-page .lp-hero-trust span:not(.lp-dot){align-items:center;gap:6px;display:inline-flex}.lp-page .lp-dot{background:var(--muted-3);border-radius:50%;width:3px;height:3px}.lp-page .lp-hero-trust svg{color:var(--accent)}.lp-page .lp-product-window{border-radius:var(--lp-radius-xl);background:var(--paper-2);border:1px solid var(--line-2);max-width:1180px;margin:72px auto 0;position:relative;overflow:hidden;box-shadow:inset 0 1px #fff9,0 80px 140px -50px #0c123052,0 24px 56px -20px #1e2a6b2e}.lp-page .lp-product-window:after{content:"";border-radius:inherit;pointer-events:none;background:radial-gradient(100% 60% at 50% 0,#4f6fe014 0%,#0000 60%);position:absolute;top:0;bottom:0;left:0;right:0}html[data-theme=dark] .lp-page .lp-product-window{background:var(--paper-2);border-color:var(--line-2);box-shadow:0 80px 140px -40px #000000b3,0 24px 56px -20px #6e89ee38,inset 0 0 0 1px #ffffff08}html[data-theme=dark] .lp-page .lp-product-window:after{background:radial-gradient(100% 60% at 50% 0,#6e89ee26 0%,#0000 60%)}.lp-page .lp-win-chrome{border-bottom:1px solid var(--line);background:var(--cream);align-items:center;gap:9px;padding:14px 20px;display:flex}html[data-theme=dark] .lp-page .lp-win-chrome{background:var(--paper);border-bottom-color:var(--line)}.lp-page .lp-win-dot{border-radius:50%;width:11px;height:11px}.lp-page .lp-win-url{font-family:var(--lp-font-mono);color:var(--muted);background:var(--paper-2);border:1px solid var(--line);border-radius:6px;margin-left:auto;margin-right:auto;padding:5px 14px;font-size:11.5px}html[data-theme=dark] .lp-page .lp-win-url{background:var(--paper-2);color:var(--muted);border-color:var(--line)}.lp-page .lp-section{padding:140px 0;position:relative}.lp-page .lp-section-head{text-align:center;max-width:800px;margin-bottom:72px;margin-left:auto;margin-right:auto}.lp-page .lp-section-head .lp-eyebrow{margin-bottom:22px}.lp-page .lp-section-head h2{letter-spacing:-.03em;max-width:18ch;color:var(--ink);margin:0 auto 20px;font-size:max(36px,min(5vw,64px));font-weight:400;line-height:1.02}.lp-page .lp-section-head h2 .lp-serif{font-family:var(--lp-font-serif);color:var(--ink-2);letter-spacing:-.015em;font-style:italic}.lp-page .lp-section-head p{color:var(--muted);max-width:56ch;margin:0 auto;font-size:18px;line-height:1.55}.lp-page .lp-section-orbit{justify-content:center;align-items:center;gap:28px;padding:40px 0;display:flex}.lp-page .lp-section-orbit-line{background:linear-gradient(90deg, transparent, var(--line-hi), transparent);flex:1;max-width:220px;height:1px}.lp-page .lp-section-orbit-mark{place-items:center;width:56px;height:56px;display:grid;position:relative}.lp-page .lp-section-orbit-mark .orbit-mark{width:100%;height:100%}.lp-page .lp-section-orbit-mark .om-outer-group{transform:rotate(calc(var(--so-rot,0) * 1deg));transform-origin:100px 100px}.lp-page .lp-section-orbit-mark .om-inner-group{transform:rotate(calc(var(--so-rot,0) * -1.8deg));transform-origin:100px 100px}.lp-page .lp-steps{background:var(--line);border-radius:var(--lp-radius-lg);border:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:4px;display:grid;overflow:hidden}.lp-page .lp-step{background:var(--paper);flex-direction:column;gap:14px;padding:36px 30px 32px;transition:background .2s;display:flex;position:relative}.lp-page .lp-step:hover{background:var(--paper-2)}.lp-page .lp-step-n{font-family:var(--lp-font-mono);color:var(--accent);letter-spacing:.16em;font-size:11px;font-weight:500}.lp-page .lp-step-visual{background:var(--cream);border:1px solid var(--line);width:64px;height:64px;color:var(--ink-2);border-radius:50%;place-items:center;margin-bottom:4px;display:grid}.lp-page .lp-step h3{letter-spacing:-.015em;color:var(--ink);font-size:22px;font-weight:400;font-family:var(--lp-font-serif);margin:0}.lp-page .lp-step p{color:var(--muted);margin:0;font-size:14.5px;line-height:1.6}.lp-page .lp-dash-section{padding:100px 0 140px}.lp-page .lp-fgrid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.lp-page .lp-fcard{--sx:50%;--sy:50%;background:var(--paper);border-right:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;padding:36px 32px 32px;transition:background .2s;display:flex;position:relative}.lp-page .lp-fcard:before{content:"";pointer-events:none;background:radial-gradient(circle 240px at var(--sx) var(--sy), var(--accent-bg), transparent 70%);opacity:0;transition:opacity .4s;position:absolute;top:0;bottom:0;left:0;right:0}.lp-page .lp-fcard:hover{background:var(--paper-2)}.lp-page .lp-fcard:hover:before{opacity:1}.lp-page .lp-fcard:hover .lp-fcard-icon{color:var(--accent);transform:translateY(-2px)scale(1.04)}.lp-page .lp-fcard-icon{width:42px;height:42px;color:var(--ink-2);place-items:center;margin-bottom:18px;transition:transform .25s,color .25s;display:grid}.lp-page .lp-fcard h4{letter-spacing:-.018em;color:var(--ink);font-size:22px;font-weight:400;line-height:1.15;font-family:var(--lp-font-serif);max-width:14ch;margin:0 0 10px}.lp-page .lp-fcard p{color:var(--muted);margin:0;font-size:14.5px;line-height:1.55}.lp-page .lp-fcard-meta{font-family:var(--lp-font-mono);letter-spacing:.12em;color:var(--muted-2);text-transform:uppercase;margin-top:auto;padding-top:18px;font-size:10.5px}.lp-page .lp-metrics-band{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.lp-page .lp-metric-cell{border-right:1px solid var(--line);text-align:left;padding:56px 40px;position:relative}.lp-page .lp-metric-cell:last-child{border-right:none}.lp-page .lp-metric-num{font-family:var(--lp-font-serif);letter-spacing:-.04em;color:var(--ink);align-items:baseline;font-size:max(60px,min(7vw,96px));font-style:italic;line-height:1;display:flex}.lp-page .lp-metric-num .lp-unit{color:var(--muted-2);letter-spacing:-.02em;margin-left:6px;font-size:.4em;font-style:normal}.lp-page .lp-metric-num .lp-digit{font-variant-numeric:tabular-nums;display:inline-block}.lp-page .lp-metric-name{color:var(--ink);margin:18px 0 8px;font-size:15px;font-weight:500}.lp-page .lp-metric-desc{color:var(--muted);max-width:30ch;margin:0;font-size:13.5px;line-height:1.55}.lp-page .lp-safety-strip{background:var(--ink);color:var(--cream);text-align:center;padding:80px 0}html[data-theme=dark] .lp-page .lp-safety-strip{background:#050811}.lp-page .lp-safety-strip h2{letter-spacing:-.025em;max-width:22ch;color:var(--cream);margin:12px auto 18px;font-size:max(32px,min(4vw,52px));font-weight:400;line-height:1.05}html[data-theme=dark] .lp-page .lp-safety-strip h2{color:var(--ink)}.lp-page .lp-safety-strip h2 .lp-serif{font-family:var(--lp-font-serif);color:var(--accent-2);font-style:italic}.lp-page .lp-safety-strip p{color:var(--muted-3);max-width:60ch;margin:0 auto 36px;font-size:17px}html[data-theme=dark] .lp-page .lp-safety-strip p{color:var(--muted)}.lp-page .lp-safety-strip .lp-eyebrow{color:var(--muted-3)}.lp-page .lp-safety-strip .lp-eyebrow:before{background:var(--muted-3)}.lp-page .lp-safety-pillars{grid-template-columns:repeat(3,1fr);gap:18px;max-width:1100px;margin:40px auto 0;display:grid}.lp-page .lp-safety-pillar{border-radius:var(--lp-radius);text-align:left;background:#ffffff0a;border:1px solid #ffffff14;padding:28px 26px}html[data-theme=dark] .lp-page .lp-safety-pillar{background:#ffffff08;border-color:#ffffff0f}.lp-page .lp-safety-pillar svg{color:var(--accent-2);margin-bottom:14px}.lp-page .lp-safety-pillar h4{color:var(--cream);margin:0 0 8px;font-size:17px;font-weight:500}.lp-page .lp-safety-pillar p{color:var(--muted-3);margin:0;font-size:13.5px;line-height:1.55}html[data-theme=dark] .lp-page .lp-safety-pillar h4{color:var(--ink)}html[data-theme=dark] .lp-page .lp-safety-pillar p{color:var(--muted)}.lp-page .lp-cta-section{padding:140px 0}.lp-page .lp-cta-card{background:var(--paper-2);border:1px solid var(--line-2);border-radius:var(--lp-radius-xl);max-width:1180px;box-shadow:var(--lp-shadow-hi);grid-template-columns:1fr 460px;align-items:stretch;margin:0 auto;display:grid;position:relative;overflow:hidden}.lp-page .lp-cta-content{padding:60px 56px 56px;position:relative}.lp-page .lp-cta-content-orbit{pointer-events:none;opacity:.3;width:360px;height:360px;position:absolute;bottom:-100px;right:-100px}.lp-page .lp-cta-content h2{letter-spacing:-.028em;color:var(--ink);margin:16px 0 18px;font-size:max(32px,min(4.2vw,48px));font-weight:400;line-height:1.02}.lp-page .lp-cta-content h2 .lp-serif{font-family:var(--lp-font-serif);color:var(--ink-2);font-style:italic}.lp-page .lp-cta-content p{color:var(--muted);max-width:40ch;margin:0 0 28px;font-size:16px;line-height:1.6}.lp-page .lp-cta-bullets{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.lp-page .lp-cta-bullets li{color:var(--ink);align-items:center;gap:12px;font-size:14.5px;display:flex}.lp-page .lp-cta-bullets li svg{color:var(--accent);flex-shrink:0}.lp-page .lp-form{background:var(--cream);border-left:1px solid var(--line);flex-direction:column;gap:14px;padding:40px;display:flex}.lp-page .lp-form-eyebrow{font-family:var(--lp-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:11px}.lp-page .lp-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.lp-page .lp-form-grp{flex-direction:column;gap:6px;display:flex}.lp-page .lp-form-grp label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:500}.lp-page .lp-form-grp input,.lp-page .lp-form-grp select,.lp-page .lp-form-grp textarea{background:var(--paper-2);border:1px solid var(--line-2);color:var(--ink);border-radius:8px;outline:none;padding:12px 14px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}.lp-page .lp-form-grp input::placeholder,.lp-page .lp-form-grp textarea::placeholder{color:var(--muted-2)}.lp-page .lp-form-grp input:focus,.lp-page .lp-form-grp select:focus,.lp-page .lp-form-grp textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4f6fe01f}.lp-page .lp-form-grp textarea{resize:vertical;min-height:72px}.lp-page .lp-form-submit{background:var(--ink);color:var(--cream);cursor:pointer;border:none;border-radius:999px;margin-top:6px;padding:14px 20px;font-size:14.5px;font-weight:500;transition:background .15s,transform .15s}.lp-page .lp-form-submit:hover:not(:disabled){background:var(--ink-2);transform:translateY(-1px)}.lp-page .lp-form-submit:disabled{opacity:.6;cursor:not-allowed}html[data-theme=dark] .lp-page .lp-form-submit{background:var(--accent);color:#0a0f1f}html[data-theme=dark] .lp-page .lp-form-submit:hover:not(:disabled){background:var(--accent-2)}.lp-page .lp-form-success{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:60px 28px;display:flex}.lp-page .lp-form-success h3{font-size:24px;font-weight:400;font-family:var(--lp-font-serif);color:var(--ink);margin:8px 0 4px;font-style:italic}.lp-page .lp-form-success p{color:var(--muted);max-width:30ch;margin:0;font-size:14px;line-height:1.55}.lp-page .lp-footer{border-top:1px solid var(--line);background:var(--cream-2);padding:60px 0 36px}.lp-page .lp-footer-inner{grid-template-columns:1fr auto;align-items:start;gap:48px;display:grid}.lp-page .lp-footer-brand{align-items:center;gap:12px;font-size:20px;display:flex}.lp-page .lp-footer-tag{color:var(--muted);max-width:36ch;margin-top:14px;font-size:13.5px;line-height:1.5}.lp-page .lp-footer-links{flex-wrap:wrap;gap:28px;margin:0;padding:0;list-style:none;display:flex}.lp-page .lp-footer-links a{color:var(--muted);font-size:13.5px}.lp-page .lp-footer-links a:hover{color:var(--ink)}.lp-page .lp-footer-copy{border-top:1px solid var(--line);color:var(--muted-2);font-size:12px;font-family:var(--lp-font-mono);flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:44px;padding-top:24px;display:flex}.lp-page .fade-up{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(20px)}.lp-page .fade-up.visible{opacity:1;transform:translateY(0)}.lp-page .d1{transition-delay:80ms}.lp-page .d2{transition-delay:.16s}.lp-page .d3{transition-delay:.24s}.lp-page .d4{transition-delay:.32s}.lp-page .lp-spin-slow{transform-origin:50%;animation:60s linear infinite lp-spin}.lp-page .mock-trainer{background:var(--paper);flex-direction:column;gap:18px;min-height:540px;padding:28px 32px 32px;display:flex}.lp-page .mock-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.lp-page .mock-eyebrow{font-family:var(--lp-font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);margin-bottom:8px;font-size:10.5px}.lp-page .mock-h1{letter-spacing:-.025em;color:var(--ink);margin:0;padding-bottom:.06em;font-size:36px;font-weight:400;line-height:1.1}.lp-page .mock-h1 .serif{font-family:var(--lp-font-serif);color:var(--ink-2);font-style:italic}.lp-page .mock-stats{background:var(--cream);border:1px solid var(--line);border-radius:12px;gap:28px;padding:14px 22px;display:flex}.lp-page .mock-stat-lbl{font-family:var(--lp-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin-bottom:4px;font-size:9.5px}.lp-page .mock-stat-val{font-family:var(--lp-font-serif);letter-spacing:-.02em;color:var(--ink);font-size:26px;font-style:italic;line-height:1}.lp-page .mock-stat-val .unit{color:var(--muted-2);font-size:12px;font-family:var(--lp-font-sans);margin-left:2px;font-style:normal}.lp-page .mock-toolbar{background:var(--cream);border:1px solid var(--line);border-radius:999px;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;display:flex}.lp-page .mock-search{color:var(--muted-2);flex:1;align-items:center;gap:8px;min-width:200px;padding:4px 0 4px 4px;font-size:13px;display:flex}.lp-page .mock-chips{flex-wrap:wrap;gap:6px;display:flex}.lp-page .mock-chip{background:var(--paper-2);border:1px solid var(--line-2);color:var(--muted);border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:11.5px;font-weight:500;display:inline-flex}.lp-page .mock-chip.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.lp-page .mock-chip-c{font-family:var(--lp-font-mono);background:#00000014;border-radius:999px;padding:0 5px;font-size:10px}.lp-page .mock-chip.active .mock-chip-c{background:#ffffff2e}.lp-page .mock-roster{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:6px}.lp-page .mock-roster-head{font-family:var(--lp-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);grid-template-columns:32px 1fr 110px 100px 110px 56px;align-items:center;gap:14px;padding:8px 14px;font-size:10px;display:grid}.lp-page .mock-row{border:1px solid #0000;border-radius:10px;grid-template-columns:32px 1fr 110px 100px 110px 56px;align-items:center;gap:14px;padding:10px 14px;font-size:13px;display:grid}.lp-page .mock-row+.mock-row{margin-top:2px}.lp-page .mock-row.selected{background:var(--accent-bg);border-color:var(--accent-bd)}.lp-page .mock-avatar{color:#fff;border-radius:50%;place-items:center;width:32px;height:32px;font-size:11px;font-weight:600;display:grid}.lp-page .mock-name{color:var(--ink);font-weight:500}.lp-page .mock-meta{color:var(--muted-2);margin-top:2px;font-size:11px}.lp-page .mock-lifecycle{font-family:var(--lp-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;font-size:10.5px;display:flex}.lp-page .mock-lifecycle .dot{border-radius:50%;width:6px;height:6px}.lp-page .mock-bar{background:var(--cream-2);border-radius:99px;height:5px;overflow:hidden}.lp-page .mock-bar>span{height:100%;display:block}.lp-page .mock-tag{letter-spacing:.04em;text-transform:uppercase;text-align:center;border-radius:6px;padding:4px 9px;font-size:10.5px;font-weight:600}.lp-page .mock-tag.tag-active{background:var(--success-bg);color:var(--success)}.lp-page .mock-tag.tag-risk{background:var(--warning-bg);color:var(--warning)}.lp-page .mock-tag.tag-churn{background:var(--danger-bg);color:var(--danger)}.lp-page .mock-tag.tag-onboard{background:var(--accent-bg);color:var(--accent)}.lp-page .mock-score{font-family:var(--lp-font-serif);text-align:right;color:var(--ink);letter-spacing:-.02em;font-size:20px;font-style:italic}.lp-page .mock-detail-stage{background:var(--paper);min-height:580px;position:relative;overflow:hidden}.lp-page .mock-detail-bg{opacity:.22;pointer-events:none;-webkit-user-select:none;user-select:none;filter:blur(1px)}.lp-page .mock-detail-scrim{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000061;position:absolute;top:0;bottom:0;left:0;right:0}.lp-page .mock-detail-popup{background:var(--paper-2);border:1px solid var(--line-2);width:min(480px,92%);max-height:calc(100% - 28px);color:var(--ink);border-radius:16px;flex-direction:column;font-size:13px;display:flex;position:absolute;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 4px 6px -1px #0000001f,0 24px 56px -12px #00000052}.lp-page .mock-detail-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.lp-page .mock-detail-head-l{align-items:center;gap:12px;display:flex}.lp-page .mock-detail-name{color:var(--ink);font-size:15px;font-weight:500;line-height:1.2}.lp-page .mock-detail-name .serif{font-family:var(--lp-font-serif);font-style:italic}.lp-page .mock-detail-phone{font-family:var(--lp-font-mono);letter-spacing:.05em;color:var(--muted-2);margin-top:3px;font-size:10.5px}.lp-page .mock-detail-close{background:var(--cream);width:28px;height:28px;color:var(--muted);cursor:default;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.lp-page .mock-detail-body{flex-direction:column;gap:20px;padding:18px;display:flex}.lp-page .mock-detail-ring-row{align-items:center;gap:18px;display:flex}.lp-page .mock-detail-ring{flex-shrink:0;width:120px;height:120px}.lp-page .mock-detail-summary{flex:1}.lp-page .mock-detail-trend{font-family:var(--lp-font-mono);letter-spacing:.1em;text-transform:uppercase;border-radius:99px;align-items:center;gap:5px;margin-bottom:8px;padding:3px 8px;font-size:10px;display:inline-flex}.lp-page .mock-detail-trend.dn{background:var(--danger-bg);color:var(--danger)}.lp-page .mock-detail-trend.up{background:var(--success-bg);color:var(--success)}.lp-page .mock-detail-summary-title{color:var(--ink);margin-bottom:4px;font-size:13px;font-weight:600}.lp-page .mock-detail-summary-desc{color:var(--muted);font-size:12px;line-height:1.5}.lp-page .mock-detail-sec-lbl{font-family:var(--lp-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin-bottom:10px;font-size:10px}.lp-page .mock-detail-breakdown{flex-direction:column;gap:8px;display:flex}.lp-page .mock-detail-breakdown-head{color:var(--ink);justify-content:space-between;align-items:center;margin-bottom:5px;font-size:12px;display:flex}.lp-page .mock-detail-breakdown-head .w{color:var(--muted-2)}.lp-page .mock-detail-breakdown-head .v{font-weight:600;font-family:var(--lp-font-mono);font-size:11px}.lp-page .mock-detail-breakdown-bar{background:var(--cream-2);border-radius:99px;height:5px;overflow:hidden}.lp-page .mock-detail-breakdown-bar>span{border-radius:99px;height:100%;display:block}.lp-page .mock-detail-vitals{grid-template-columns:1fr 1fr;gap:10px;display:grid}.lp-page .mock-detail-vital{background:var(--cream);border:1px solid var(--line);border-radius:10px;padding:12px 14px}.lp-page .mock-detail-vital-lbl{font-family:var(--lp-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);margin-bottom:6px;font-size:9.5px}.lp-page .mock-detail-vital-val{font-family:var(--lp-font-serif);letter-spacing:-.02em;color:var(--ink);font-size:22px;font-style:italic;line-height:1}.lp-page .mock-detail-vital-val .small{color:var(--muted-2);font-size:12px;font-family:var(--lp-font-sans);margin-left:2px;font-style:normal}.lp-page .mock-detail-vital-state{font-family:var(--lp-font-mono);letter-spacing:.08em;text-transform:uppercase;margin-top:4px;font-size:10px;font-weight:600}.lp-page .mock-detail-suggest{background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:14px 16px;font-size:12.5px;line-height:1.5}.lp-page .mock-detail-suggest-head{font-family:var(--lp-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);align-items:center;gap:6px;margin-bottom:8px;font-size:9.5px;display:flex}.lp-page .mock-detail-suggest-cta{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.lp-page .mock-detail-suggest-btn{cursor:default;background:var(--accent);color:#fff;border-radius:6px;padding:5px 12px;font-size:11.5px;font-weight:500}.lp-page .mock-detail-suggest-btn.ghost{background:var(--paper-2);color:var(--muted);border:1px solid var(--line-2)}.lp-page .mock-detail-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:6px;padding:14px 18px;display:flex}.lp-page .mock-detail-action-btn{cursor:default;background:var(--cream);color:var(--ink);border:1px solid var(--line-2);border-radius:8px;padding:7px 14px;font-size:12px;font-weight:500}.lp-page .mock-detail-action-btn.primary{background:var(--ink);color:var(--cream);border-color:var(--ink)}@media (max-width:1024px){.lp-page .lp-steps,.lp-page .lp-fgrid{grid-template-columns:1fr 1fr}.lp-page .lp-metrics-band{grid-template-columns:1fr}.lp-page .lp-metric-cell{border-right:none;border-bottom:1px solid var(--line)}.lp-page .lp-metric-cell:last-child{border-bottom:none}.lp-page .lp-cta-card{grid-template-columns:1fr}.lp-page .lp-form{border-left:none;border-top:1px solid var(--line)}.lp-page .lp-safety-pillars{grid-template-columns:1fr}}@media (max-width:900px){.lp-page .lp-nav{padding:14px 20px}.lp-page .lp-nav-links{display:none}.lp-page .lp-nav-mobile-toggle{display:inline-flex}.lp-page .lp-section{padding:100px 0}.lp-page .lp-section-head{margin-bottom:56px}.lp-page .lp-hero{padding:36px 0 50px}.lp-page .lp-hero h1{max-width:16ch;font-size:max(40px,min(9vw,64px))}.lp-page .lp-hero-sub{font-size:16px}.lp-page .lp-product-window{border-radius:18px;margin:48px 16px 0}.lp-page .lp-scroll-orbit{width:44px;height:44px;bottom:16px;right:16px}.lp-page .lp-cta-content{padding:48px 36px}.lp-page .lp-footer-inner{grid-template-columns:1fr;gap:28px}.lp-page .mock-trainer{min-height:480px;padding:22px 18px}.lp-page .mock-stats{gap:18px;padding:12px 14px}.lp-page .mock-stat-val{font-size:20px}.lp-page .mock-h1{font-size:28px}.lp-page .mock-roster-head,.lp-page .mock-row{grid-template-columns:32px 1fr 100px 56px;gap:10px}.lp-page .mock-roster-head>:nth-child(4),.lp-page .mock-roster-head>:nth-child(5),.lp-page .mock-row>:nth-child(4),.lp-page .mock-row>:nth-child(5){display:none}}@media (max-width:640px){.lp-page .lp-wrap{padding:0 20px}.lp-page .lp-nav{padding:12px 16px}.lp-page .lp-section{padding:80px 0}.lp-page .lp-section-head{margin-bottom:48px}.lp-page .lp-section-head h2{font-size:32px}.lp-page .lp-section-head p{font-size:16px}.lp-page .lp-hero{padding:28px 0 40px}.lp-page .lp-hero-orbit{width:130vw}.lp-page .lp-hero h1{letter-spacing:-.03em;max-width:100%;margin-bottom:22px;font-size:44px;line-height:1.02}.lp-page .lp-hero-sub{margin-bottom:28px;padding:0 8px;font-size:15.5px}.lp-page .lp-hero-ctas .lp-btn{padding:12px 18px;font-size:13.5px}.lp-page .lp-hero-trust{gap:12px;font-size:11.5px}.lp-page .lp-hero-trust .lp-dot{display:none}.lp-page .lp-product-window{border-radius:14px;margin:36px 12px 0}.lp-page .lp-steps{grid-template-columns:1fr}.lp-page .lp-step{padding:28px 24px}.lp-page .lp-step h3{font-size:20px}.lp-page .lp-fgrid{grid-template-columns:1fr}.lp-page .lp-fcard{padding:28px 24px 26px}.lp-page .lp-fcard h4{font-size:20px}.lp-page .lp-metric-cell{padding:44px 28px}.lp-page .lp-metric-num{font-size:max(54px,min(16vw,80px))}.lp-page .lp-metric-name{margin-top:14px}.lp-page .lp-safety-strip{padding:64px 0}.lp-page .lp-safety-strip h2{font-size:30px}.lp-page .lp-safety-pillar{padding:22px 20px}.lp-page .lp-form-row{grid-template-columns:1fr}.lp-page .lp-cta-section{padding:80px 0}.lp-page .lp-cta-content{padding:36px 24px}.lp-page .lp-cta-content h2{font-size:30px}.lp-page .lp-form{padding:28px 22px}.lp-page .lp-scroll-orbit{display:none}.lp-page .lp-section-orbit{gap:18px;padding:28px 0}.lp-page .lp-section-orbit-mark{width:44px;height:44px}.lp-page .lp-footer-links{gap:18px}.lp-page .mock-trainer{min-height:0;padding:18px 14px}.lp-page .mock-header{flex-direction:column;align-items:flex-start}.lp-page .mock-stats{justify-content:space-between;width:100%}.lp-page .mock-toolbar{flex-direction:column;align-items:stretch}.lp-page .mock-chips{flex-wrap:nowrap;overflow-x:auto}.lp-page .mock-chip{white-space:nowrap}.lp-page .mock-roster-head{display:none}.lp-page .mock-row{border:1px solid var(--line);background:var(--paper-2);grid-template-columns:32px 1fr 56px;padding:12px}.lp-page .mock-row+.mock-row{margin-top:6px}.lp-page .mock-row>:nth-child(3){display:none}}@media (max-width:380px){.lp-page .lp-hero h1{font-size:38px}.lp-page .lp-section-head h2{font-size:28px}.lp-page .lp-metric-num{font-size:60px}}@keyframes streak-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.dash-page{--font-sans:var(--lp-font-sans);--font-serif:var(--lp-font-serif);--font-mono:var(--lp-font-mono);--radius-sm:var(--lp-radius-sm);--radius:var(--lp-radius);--radius-lg:var(--lp-radius-lg);--radius-xl:var(--lp-radius-xl);background:var(--cream);min-height:100vh;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;padding-bottom:120px}.dash-page .wrap{max-width:1240px;margin:0 auto;padding:0 28px}.dash-hero{padding:48px 0 28px;position:relative;overflow:hidden}.dash-hero-orbit{opacity:.4;pointer-events:none;width:460px;height:460px;position:absolute;top:-180px;right:-120px}.dash-hero-inner{z-index:1;position:relative}.dash-hello-eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2);align-items:center;gap:10px;margin-bottom:14px;font-size:11px;display:inline-flex}.dash-hello-eyebrow:before{content:"";background:var(--muted-2);width:14px;height:1px}.dash-hello{letter-spacing:-.03em;color:var(--ink);margin:0 0 10px;padding-bottom:.04em;font-size:max(36px,min(4.8vw,58px));font-weight:400;line-height:1.05}.dash-hello .serif{font-family:var(--font-serif);color:var(--ink-2);font-style:italic}.dash-hello-sub{color:var(--muted);max-width:56ch;margin:0;font-size:16px;line-height:1.55}.coach-card{background:var(--ink);color:var(--cream);border-radius:var(--radius-lg);grid-template-columns:52px 1fr auto;align-items:center;gap:18px;margin-top:24px;padding:20px 24px;display:grid;position:relative;overflow:hidden}.coach-card:after{content:"";pointer-events:none;background:radial-gradient(circle,#6e89ee38 0%,#0000 65%);width:300px;height:300px;position:absolute;top:-120px;right:-120px}.coach-avatar{background:linear-gradient(135deg, var(--accent), var(--accent-deep));width:52px;height:52px;font-family:var(--font-serif);color:var(--cream);border-radius:50%;flex-shrink:0;place-items:center;font-size:20px;font-style:italic;display:grid}.coach-body{z-index:1;position:relative}.coach-from{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-2);margin-bottom:6px;font-size:10px}.coach-msg{font-family:var(--font-serif);letter-spacing:-.01em;color:var(--cream);max-width:60ch;margin:0;font-size:18px;font-style:italic;line-height:1.4}.coach-cta{z-index:1;background:var(--cream);color:var(--ink);cursor:pointer;white-space:nowrap;font-size:13px;font-weight:500;font-family:var(--font-sans);border:none;border-radius:999px;align-items:center;gap:6px;padding:9px 16px;transition:transform .12s;display:inline-flex;position:relative}.coach-cta:hover{transform:translateY(-1px)}.dash-stats{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);grid-template-columns:repeat(4,1fr);margin:24px 0 32px;display:grid;overflow:hidden}.dash-stat{border-right:1px solid var(--line);flex-direction:column;gap:10px;padding:24px 26px;display:flex}.dash-stat:last-child{border-right:none}.dash-stat-head{justify-content:space-between;align-items:center;display:flex}.dash-stat-lbl{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);font-size:10.5px}.dash-stat-icon{background:var(--accent-bg);width:28px;height:28px;color:var(--accent);border-radius:8px;place-items:center;display:grid}.dash-stat-val{font-family:var(--font-serif);letter-spacing:-.04em;color:var(--ink);align-items:baseline;gap:5px;font-size:48px;font-style:italic;line-height:1;display:flex}.dash-stat-val .unit{color:var(--muted-2);font-size:15px;font-family:var(--font-sans);letter-spacing:0;font-style:normal}.dash-stat-foot{color:var(--muted);font-size:12px}.dash-stat-foot .up{color:var(--success)}.dash-stat-foot .dn{color:var(--danger)}.streak-flame{font-family:var(--font-mono);color:var(--warning);background:var(--warning-bg);border-radius:999px;align-items:center;gap:5px;padding:4px 8px;font-size:11px;font-weight:500;animation:3s ease-in-out infinite streak-pulse;display:inline-flex}.dash-grid{grid-template-columns:2fr 1fr;gap:14px;display:grid}.checkin-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:28px 32px}.checkin-card-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.checkin-eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin-bottom:8px;font-size:10.5px}.checkin-title{font-family:var(--font-serif);letter-spacing:-.025em;color:var(--ink);margin:0;padding-bottom:.04em;font-size:28px;font-style:italic;line-height:1.1}.checkin-done-badge{background:var(--success-bg);color:var(--success);white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:7px;padding:6px 12px;font-size:12px;font-weight:500;display:inline-flex}.checkin-edit-btn{font-family:var(--font-mono);color:var(--muted-2);cursor:pointer;text-transform:uppercase;letter-spacing:.08em;background:0 0;border:none;padding:0;font-size:11px}.checkin-edit-btn:hover{color:var(--accent)}.checkin-summary{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.checkin-chip{background:var(--paper-2,var(--cream));border:1px solid var(--line);color:var(--ink);border-radius:999px;align-items:center;gap:7px;padding:7px 13px;font-size:13px;display:inline-flex}.checkin-chip .lbl{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted-2);font-size:10.5px}.checkin-chip .val{font-family:var(--font-serif);color:var(--accent);letter-spacing:-.01em;font-size:16px;font-style:italic}.checkin-chip .val .of{color:var(--muted-2);font-size:12px;font-family:var(--font-sans);font-style:normal}.checkin-q{margin-bottom:20px}.checkin-q-lbl{color:var(--ink);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:14px;font-weight:500;display:flex}.checkin-q-val{font-family:var(--font-serif);color:var(--accent);letter-spacing:-.01em;font-size:21px;font-style:italic}.checkin-q-val .of{color:var(--muted-2);font-size:13px;font-family:var(--font-sans);font-style:normal}.checkin-yn{gap:8px;display:flex}.checkin-yn button{background:var(--cream);border:1px solid var(--line-2);color:var(--muted);font-family:var(--font-sans);cursor:pointer;border-radius:12px;flex:1;justify-content:center;align-items:center;padding:13px 10px;font-size:13.5px;font-weight:500;transition:all .14s;display:flex}.checkin-yn button:hover{color:var(--ink);border-color:var(--line-hi)}.checkin-yn button.on{background:var(--ink);color:var(--cream);border-color:var(--ink)}.checkin-scale{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.checkin-scale button{background:var(--cream);border:1px solid var(--line-2);font-family:var(--font-serif);color:var(--ink);cursor:pointer;border-radius:12px;padding:15px 0;font-size:21px;font-style:italic;transition:all .14s}.checkin-scale button:hover{border-color:var(--accent);transform:translateY(-1px)}.checkin-scale button.on{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 6px 18px -6px #4f6fe073}.checkin-scale-foot{font-family:var(--font-mono);color:var(--muted-2);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;margin-top:5px;font-size:10px;display:flex}.checkin-sleep{grid-template-columns:1fr auto;align-items:center;gap:10px;display:grid}.checkin-sleep input{width:100%;font-family:var(--font-sans);background:var(--cream);border:1px solid var(--line-2);color:var(--ink);border-radius:12px;outline:none;padding:13px 15px;font-size:15px}.checkin-sleep input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4f6fe01a}.checkin-sleep-suggest{gap:5px;display:flex}.checkin-sleep-suggest button{background:var(--cream);border:1px solid var(--line-2);font-family:var(--font-mono);color:var(--muted);cursor:pointer;font-size:12px;font-family:var(--font-sans);border-radius:999px;padding:7px 11px;transition:all .12s}.checkin-sleep-suggest button:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}.checkin-save{align-items:center;gap:12px;margin-top:22px;display:flex}.checkin-save-hint{color:var(--muted-2);font-size:12px}.dash-side-col{flex-direction:column;gap:14px;display:flex}.dash-quick-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px 24px}.dash-quick-eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin-bottom:12px;font-size:10.5px}.dash-quick-title{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);margin:0 0 16px;padding-bottom:.04em;font-size:20px;font-style:italic;line-height:1.15}.dash-quick-links{flex-direction:column;gap:8px;display:flex}.dash-quick-link{background:var(--cream);border:1px solid var(--line);cursor:pointer;color:var(--ink);border-radius:12px;grid-template-columns:30px 1fr auto;align-items:center;gap:12px;padding:11px 14px;font-size:13.5px;font-weight:500;text-decoration:none;transition:all .12s;display:grid}.dash-quick-link:hover{border-color:var(--accent);background:var(--accent-bg);color:var(--accent)}.dash-quick-link-icon{background:var(--accent-bg);width:30px;height:30px;color:var(--accent);border-radius:8px;place-items:center;display:grid}.dash-quick-link:hover .dash-quick-link-icon{background:var(--accent);color:#fff}.dash-quick-link-arrow{color:var(--muted-2)}.dash-quick-link:hover .dash-quick-link-arrow{color:var(--accent)}.dash-chart-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);margin-top:14px;padding:28px 32px 24px}.dash-chart-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.dash-chart-title{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);margin:0;padding-bottom:.04em;font-size:24px;font-style:italic}.dash-chart-sub{font-family:var(--font-sans);color:var(--muted-2);letter-spacing:0;margin-top:4px;font-size:12.5px;font-style:normal;display:block}.dash-chart-tabs{background:var(--cream);border:1px solid var(--line);border-radius:999px;flex-shrink:0;gap:5px;padding:4px;display:flex}.dash-chart-tab{font-family:var(--font-sans);color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:6px 13px;font-size:12.5px;font-weight:500;transition:all .12s}.dash-chart-tab.active{background:var(--ink);color:var(--cream)}.dash-chart-svg-wrap{width:100%;height:240px;position:relative}.dash-chart-svg{width:100%;height:100%;display:block;overflow:visible}.dash-chart-area{fill:url(#dashChartGrad)}.dash-chart-line{fill:none;stroke:var(--accent);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.dash-chart-point{fill:var(--paper);stroke:var(--accent);stroke-width:2px}.dash-chart-point.last{fill:var(--accent);stroke:var(--paper);stroke-width:3px}.dash-chart-grid line{stroke:var(--line);stroke-dasharray:2 4}.dash-chart-axis text{font-family:var(--font-mono);fill:var(--muted-2);letter-spacing:.04em;font-size:9.5px}.dash-chart-empty{height:240px;color:var(--muted-2);place-items:center;font-size:13px;display:grid}.dash-measure-card,.dash-history-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);margin-top:14px;padding:28px 32px 24px}.dash-section-eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin-bottom:6px;font-size:10.5px}.dash-section-title{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);margin:0 0 18px;padding-bottom:.04em;font-size:22px;font-style:italic}.dash-measure-list{flex-direction:column;gap:0;display:flex}.dash-measure-row{border-bottom:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:baseline;gap:16px;padding:12px 0;display:grid}.dash-measure-row:last-child{border-bottom:none}.dash-measure-label{color:var(--muted);font-size:14px}.dash-measure-value{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);font-size:21px;font-style:italic;line-height:1}.dash-measure-value .small{color:var(--muted-2);font-size:12px;font-family:var(--font-sans);font-style:normal}.dash-measure-delta{font-family:var(--font-mono);color:var(--muted-2);letter-spacing:.04em;font-size:11px}.dash-measure-delta.up{color:var(--success)}.dash-measure-delta.dn{color:var(--danger)}.dash-measure-actions{gap:10px;margin-top:18px;display:flex}.dash-measure-actions .btn{flex:1;padding:11px 16px}.dash-history-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.dash-history-row{border-bottom:1px solid var(--line);grid-template-columns:100px 80px 70px 1fr;align-items:center;gap:14px;padding:11px 0;font-size:13px;display:grid}.dash-history-row:last-child{border-bottom:none}.dash-history-row:hover{background:var(--cream);border-radius:8px;margin:0 -10px;padding-left:10px;padding-right:10px}.dash-history-date{color:var(--muted);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:11px}.dash-history-weight{font-family:var(--font-serif);color:var(--ink);font-size:17px;font-style:italic}.dash-history-weight .small{color:var(--muted-2);font-size:11px;font-family:var(--font-sans);font-style:normal}.dash-history-bf{color:var(--muted);font-size:13px}.dash-history-notes{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.dash-modal-scrim{z-index:200;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;pointer-events:none;background:#0c12306b;transition:opacity .18s;position:fixed;top:0;bottom:0;left:0;right:0}.dash-modal-scrim.open{opacity:1;pointer-events:all}.dash-modal{background:var(--paper);border:1px solid var(--line-2);border-radius:var(--radius-xl);z-index:201;opacity:0;pointer-events:none;flex-direction:column;width:min(620px,100vw - 32px);max-height:calc(100vh - 48px);transition:opacity .18s,transform .18s;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)scale(.96);box-shadow:0 50px 100px -30px #0c123080}.dash-modal.open{opacity:1;pointer-events:all;transform:translate(-50%,-50%)scale(1)}.dash-modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:20px 26px 16px;display:flex}.dash-modal-title{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);margin:0;padding-bottom:.04em;font-size:24px;font-style:italic}.dash-modal-close{background:var(--cream);border:1px solid var(--line);width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:8px;place-items:center;transition:all .12s;display:grid}.dash-modal-close:hover{background:var(--danger-bg);color:var(--danger);border-color:#0000}.dash-modal-body{flex-direction:column;flex:1;gap:14px;padding:22px 26px;display:flex;overflow-y:auto}.dash-modal-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.dash-modal-grp{flex-direction:column;gap:6px;display:flex}.dash-modal-grp label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);font-size:10.5px}.dash-modal-grp input,.dash-modal-grp textarea{font-family:var(--font-sans);background:var(--cream);border:1px solid var(--line-2);color:var(--ink);border-radius:8px;outline:none;padding:11px 13px;font-size:14px}.dash-modal-grp input:focus,.dash-modal-grp textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4f6fe01a}.dash-modal-sec-lbl{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin-top:4px;font-size:10.5px}.dash-modal-foot{border-top:1px solid var(--line);background:var(--paper);justify-content:flex-end;gap:10px;padding:13px 26px;display:flex}.dash-page .btn-pill{font-family:var(--font-sans);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:7px;padding:12px 22px;font-size:14px;font-weight:500;transition:all .14s;display:inline-flex}.dash-page .btn-ink{background:var(--ink);color:var(--cream)}.dash-page .btn-ink:hover{opacity:.88;transform:translateY(-1px)}.dash-page .btn-outline{border:1px solid var(--line-2);color:var(--muted);background:0 0}.dash-page .btn-outline:hover{border-color:var(--ink);color:var(--ink)}.dash-empty{text-align:center;color:var(--muted-2);padding:48px 24px;font-size:14px}.dash-empty strong{color:var(--muted);margin-bottom:6px;font-size:18px;font-weight:500;display:block}@media (max-width:1024px){.dash-grid{grid-template-columns:1fr}.dash-stats{grid-template-columns:1fr 1fr}}@media (max-width:640px){.dash-page .wrap{padding:0 18px}.dash-hero{padding:32px 0 20px}.coach-card{grid-template-columns:1fr;gap:12px;padding:18px 20px}.coach-cta{width:-moz-fit-content;width:fit-content}.dash-stats{grid-template-columns:1fr 1fr}.dash-stat{padding:18px 20px}.dash-stat-val{font-size:38px}.checkin-card,.dash-chart-card,.dash-measure-card,.dash-history-card{padding:20px 18px}.checkin-title{font-size:22px}.checkin-scale button{padding:11px 0;font-size:18px}.dash-history-row{grid-template-columns:80px 65px 1fr;gap:10px}.dash-history-row>:nth-child(3){display:none}.dash-modal-row{grid-template-columns:1fr}}.meal-page{--cream:#f4f0e6;--cream-2:#ede7d7;--cream-3:#e5ddc8;--paper:#fbf9f3;--paper-2:#fff;--ink:#0c1230;--ink-2:#1e2a6b;--ink-3:#2d3877;--muted:#5e658b;--muted-2:#8a8fa8;--muted-3:#b6b2a4;--accent:#4f6fe0;--accent-2:#6e89ee;--accent-deep:#3754c5;--accent-soft:#dae2fa;--accent-bg:#4f6fe014;--accent-bd:#4f6fe02e;--line:#0c123014;--line-2:#0c123024;--line-hi:#0c123038;--success:#2d8a55;--success-bg:#2d8a551a;--warning:#b5780e;--warning-bg:#b5780e1f;--danger:#c24545;--danger-bg:#c245451a;--om-ring-outer:#4f6fe0;--om-ring-inner:#1e2a6b;--om-sat-navy:#1e2a6b;--om-sat-blue:#5479e7;--om-sat-cream:#ece9dd;--om-sat-cream-stroke:#d6d2c5;--om-center:#1e2a6b;--om-pupil:#f4f0e6;--om-stroke-op:.85;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--font-sans:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif:"Instrument Serif", "Cormorant Garamond", Georgia, serif;--font-mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--shadow-soft:0 4px 24px -8px #0c12301f;background:var(--cream);min-height:100vh;font-family:var(--font-sans);font-feature-settings:"ss01","cv11";color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0;line-height:1.5;overflow-x:clip}html[data-theme=dark] .meal-page{--cream:#0a0f1f;--cream-2:#0e1426;--cream-3:#131a30;--paper:#11172b;--paper-2:#161d36;--ink:#f4f0e6;--ink-2:#e8e2d0;--ink-3:#d4cdb6;--muted:#9098b5;--muted-2:#6b7290;--muted-3:#4d5470;--accent:#6e89ee;--accent-2:#9ab0f5;--accent-deep:#4f6fe0;--accent-soft:#232e55;--accent-bg:#6e89ee1f;--accent-bd:#6e89ee4d;--line:#f4f0e612;--line-2:#f4f0e61f;--line-hi:#f4f0e638;--success:#4fc084;--success-bg:#4fc08424;--warning:#e4a33e;--warning-bg:#e4a33e24;--danger:#ed7676;--danger-bg:#ed767624;--om-ring-outer:#6e89ee;--om-ring-inner:#b6c0e8;--om-sat-navy:#e8e2d0;--om-sat-blue:#6e89ee;--om-sat-cream:#4f6fe0;--om-sat-cream-stroke:#6e89ee;--om-center:#e8e2d0;--om-pupil:#0a0f1f;--om-stroke-op:.9}.meal-page *{box-sizing:border-box}.meal-page a{color:inherit;text-decoration:none}.meal-page button{cursor:pointer;font-family:inherit}.meal-page .orbit-mark .om-ring-outer{stroke:var(--om-ring-outer);opacity:var(--om-stroke-op)}.meal-page .orbit-mark .om-ring-inner{stroke:var(--om-ring-inner);opacity:var(--om-stroke-op)}.meal-page .orbit-mark .om-sat-navy{fill:var(--om-sat-navy)}.meal-page .orbit-mark .om-sat-blue{fill:var(--om-sat-blue)}.meal-page .orbit-mark .om-sat-cream{fill:var(--om-sat-cream);stroke:var(--om-sat-cream-stroke);stroke-width:1px}.meal-page .orbit-mark .om-center{fill:var(--om-center)}.meal-page .orbit-mark .om-pupil{fill:var(--om-pupil)}.mp-wrap{max-width:1160px;margin:0 auto;padding:0 28px}.meal-hero{background:var(--cream);padding:48px 0 32px;position:relative;overflow:hidden}.meal-hero-orbit{opacity:.32;pointer-events:none;width:480px;height:480px;position:absolute;top:-180px;right:-140px}.meal-hero-inner{z-index:1;position:relative}.meal-hero h1{letter-spacing:-.03em;color:var(--ink);margin:8px 0 12px;padding-bottom:.04em;font-size:max(36px,min(5.4vw,60px));font-weight:400;line-height:1.05}.meal-hero h1 .serif{font-family:var(--font-serif);color:var(--ink-2);font-style:italic}.meal-hero p{color:var(--muted);max-width:56ch;margin:0;font-size:16px;line-height:1.55}.mp-eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);align-items:center;gap:10px;margin-bottom:12px;font-size:10.5px;display:inline-flex}.mp-eyebrow:before{content:"";background:var(--muted-2);width:14px;height:1px}.mp-ramadan{border-radius:var(--radius-md);color:#d4a8ff;background:linear-gradient(135deg,#1a1040 0%,#2a1860 100%);border:1px solid #6b3fa0;align-items:center;gap:10px;margin-bottom:20px;padding:12px 18px;font-size:14px;font-weight:600;display:flex}.day-strip{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);grid-template-columns:repeat(7,1fr);gap:6px;margin:0 0 18px;padding:8px;display:grid}.day-pill{cursor:pointer;text-align:center;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:12px;padding:14px 6px 12px;transition:all .15s;position:relative}.day-pill:hover{background:var(--cream);border-color:var(--line)}.day-pill.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.day-pill.active .dp-name,.day-pill.active .dp-date,.day-pill.active .dp-kcal{color:var(--cream)}.dp-name{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin-bottom:4px;font-size:10.5px}.dp-date{font-family:var(--font-serif);color:var(--ink);letter-spacing:-.02em;margin-bottom:6px;font-size:24px;font-style:italic;line-height:1}.dp-kcal{font-family:var(--font-mono);color:var(--muted-2);letter-spacing:.04em;font-size:10px}.dp-today-dot{background:var(--accent);border-radius:50%;width:4px;height:4px;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.day-pill.active .dp-today-dot{background:#f4f0e6b3}.dp-cheat{font-family:var(--font-mono);letter-spacing:.06em;color:var(--warning);text-transform:uppercase;font-size:9px;position:absolute;top:6px;right:5px}.macro-band{grid-template-columns:1.2fr 1fr 1fr 1fr;gap:12px;margin-bottom:20px;display:grid}.macro-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;gap:10px;padding:22px 24px;display:flex}.mc-lbl{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);justify-content:space-between;align-items:center;font-size:10.5px;display:flex}.mc-val{font-family:var(--font-serif);letter-spacing:-.035em;color:var(--ink);align-items:baseline;gap:6px;font-size:44px;font-style:italic;line-height:1;display:flex}.mc-val .unit{color:var(--muted-2);font-size:14px;font-family:var(--font-sans);font-style:normal}.mc-foot{color:var(--muted);margin-top:auto;font-size:12.5px}.mp-save-row{justify-content:flex-end;align-items:center;gap:10px;margin-bottom:16px;display:flex}.mp-saved-badge{color:var(--success);align-items:center;gap:5px;font-size:12px;font-weight:600;display:flex}.mini-ring{flex-shrink:0;width:28px;height:28px}.mini-ring circle{fill:none;stroke-width:4px}.mini-ring .t{stroke:var(--cream-2)}.mini-ring .f{stroke:var(--accent);transition:stroke-dashoffset .7s}.why-callout{background:var(--ink);color:var(--cream);border-radius:var(--radius-lg);margin:0 0 22px;padding:22px 26px;position:relative;overflow:hidden}.why-callout:after{content:"";pointer-events:none;background:radial-gradient(circle,#6e89ee2e 0%,#0000 65%);width:280px;height:280px;position:absolute;bottom:-100px;right:-100px}.why-eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2);margin-bottom:10px;font-size:10.5px}.why-text{font-family:var(--font-serif);letter-spacing:-.01em;color:var(--cream);z-index:1;max-width:60ch;margin:0;font-size:19px;font-style:italic;line-height:1.4;position:relative}.meal-grid{grid-template-columns:1fr 320px;align-items:start;gap:18px;display:grid}.meal-grid:not(:has(.shopping-card)){grid-template-columns:1fr}.mp-meal-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);margin-bottom:14px;transition:border-color .15s,box-shadow .15s;overflow:hidden}.mp-meal-card:hover{border-color:var(--line-2);box-shadow:var(--shadow-soft)}.mp-meal-card.done{opacity:.72}.mp-meal-head{cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid #0000;grid-template-columns:56px 1fr auto auto;align-items:center;gap:18px;padding:22px 24px;display:grid}.mp-meal-card.open .mp-meal-head{border-bottom-color:var(--line)}.meal-rate-row{border-top:1px dashed var(--line,#0000000f);justify-content:space-between;align-items:center;padding:8px 24px 12px;display:flex}.meal-rate-label{color:var(--muted-2,#94a3b8);text-transform:uppercase;letter-spacing:.06em;font-size:12px}.mp-meal-icon{background:var(--cream);border:1px solid var(--line);width:56px;height:56px;color:var(--accent);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.mp-meal-card.done .mp-meal-icon{background:var(--success-bg);color:var(--success);border-color:#0000}.mp-meal-type{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);margin-bottom:4px;font-size:10.5px}.mp-meal-name{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);margin:0;padding-bottom:.04em;font-size:24px;font-style:italic;line-height:1.1}.mp-meal-card.done .mp-meal-name{color:var(--muted-2)}.mp-meal-macros{font-family:var(--font-mono);color:var(--muted);letter-spacing:.04em;flex-wrap:wrap;gap:12px;margin-top:5px;font-size:11.5px;display:flex}.mp-meal-macros .v{color:var(--ink);font-weight:500}.mp-meal-kcal{font-family:var(--font-serif);color:var(--ink);letter-spacing:-.025em;text-align:right;white-space:nowrap;font-size:26px;font-style:italic;line-height:1}.mp-meal-kcal .unit{color:var(--muted-2);font-size:12px;font-family:var(--font-sans);margin-left:3px;font-style:normal}.mp-meal-chev{background:var(--paper-2);border:1px solid var(--line-2);width:32px;height:32px;color:var(--muted);border-radius:50%;flex-shrink:0;place-items:center;transition:transform .2s,background .2s;display:grid}.mp-meal-card.open .mp-meal-chev{background:var(--ink);color:var(--cream);border-color:var(--ink);transform:rotate(180deg)}.mp-meal-body{grid-template-columns:1.2fr 1.5fr auto;gap:32px;padding:24px 28px 26px;display:grid}.mp-section-lbl{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin-bottom:14px;font-size:10.5px}.mp-ingredients{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.mp-ingredients li{color:var(--ink);align-items:flex-start;gap:12px;font-size:14px;line-height:1.5;display:flex}.mp-ingredients li:before{content:"";background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:8px}.mp-steps{counter-reset:step;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.mp-steps li{color:var(--ink);grid-template-columns:28px 1fr;gap:12px;font-size:14px;line-height:1.55;display:grid}.mp-steps li:before{counter-increment:step;content:counter(step);font-family:var(--font-serif);letter-spacing:-.02em;color:var(--accent);font-size:22px;font-style:italic;line-height:1}.mp-meal-actions{flex-direction:column;align-self:start;gap:8px;display:flex}.mp-action{background:var(--paper-2);border:1px solid var(--line-2);color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-size:12.5px;font-weight:500;transition:all .15s;display:inline-flex}.mp-action:hover,.mp-action.primary{background:var(--ink);color:var(--cream);border-color:var(--ink)}.mp-action.primary:hover{background:var(--accent);border-color:var(--accent)}.mp-action.danger{color:var(--muted-2)}.mp-action:disabled{opacity:.5;cursor:not-allowed}.mp-action:disabled:hover{background:var(--paper-2);color:var(--ink);border-color:var(--line-2)}.mp-collapse{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);margin-bottom:14px;overflow:hidden}.mp-collapse-head{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:16px 22px;display:flex}.mp-collapse-title{color:var(--ink);align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex}.mp-collapse-chev{color:var(--accent);font-size:18px;line-height:1;transition:transform .2s}.mp-collapse.open .mp-collapse-chev{transform:rotate(180deg)}.mp-collapse-body{border-top:1px solid var(--line);padding:0 22px 20px}.gen-sheet{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);margin-bottom:14px;overflow:hidden}.gen-summary{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.gen-summary-label{color:var(--ink);align-items:center;gap:12px;font-size:15px;font-weight:500;display:flex}.gen-summary-label svg{color:var(--accent);flex-shrink:0}.gen-summary-hint{font-family:var(--font-mono);color:var(--muted-2);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;font-size:11px;display:flex}.gen-body{border-top:1px solid var(--line);background:var(--cream);grid-template-columns:1fr;gap:14px;padding:24px 22px 22px;display:grid}@media (min-width:769px){.gen-body{grid-template-columns:1fr 1fr}}@media (min-width:1025px){.gen-body{grid-template-columns:repeat(3,1fr)}}.gen-grp{flex-direction:column;gap:6px;min-width:0;display:flex}.gen-grp.span-2{grid-column:1/-1}@media (min-width:1025px){.gen-grp.span-2{grid-column:span 2}}.gen-grp.span-3{grid-column:1/-1}.gen-grp-help{color:var(--muted);margin:0 0 4px;font-family:inherit;font-size:12.5px;line-height:1.45}.gen-meds-wrap{background:var(--paper-2);border:1px solid var(--line-2);border-radius:12px;margin-top:4px;padding:14px 16px}.gen-grp label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10.5px}.gen-grp input:not([type=checkbox]):not([type=radio]),.gen-grp select,.gen-grp textarea{background:var(--paper-2);border:1px solid var(--line-2);color:var(--ink);-webkit-appearance:none;text-overflow:ellipsis;border-radius:10px;outline:none;width:100%;min-width:0;max-width:100%;padding:11px 14px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}.gen-grp input:not([type=checkbox]):not([type=radio]):focus,.gen-grp select:focus,.gen-grp textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.gen-check-row{background:var(--paper-2);border:1px solid var(--line-2);cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:10px 14px;display:flex}.gen-check-row input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--accent);flex-shrink:0;margin:0}.gen-check-row span{color:var(--ink);font-size:13px}.gen-foot{grid-column:1/-1;justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.pref-chips{flex-wrap:wrap;gap:6px;display:flex}.pref-chip{background:var(--paper-2);border:1px solid var(--line-2);color:var(--muted);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:7px 13px;font-size:12.5px;font-weight:500;transition:all .12s;display:inline-flex}.pref-chip:hover{color:var(--ink);border-color:var(--line-hi)}.pref-chip.on{background:var(--ink);color:var(--cream);border-color:var(--ink)}.pref-chip-flag{font-size:14px;line-height:1}.day-chips{flex-wrap:wrap;gap:6px;display:flex}.day-chip{cursor:pointer;border:1px solid var(--line-2);background:var(--paper-2);color:var(--muted);border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600;transition:all .15s}.day-chip.on{background:var(--accent);border-color:var(--accent);color:#fff}.mp-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-family:inherit;font-size:14px;font-weight:500;transition:all .18s;display:inline-flex}.mp-btn-primary{background:var(--ink);color:var(--cream)}.mp-btn-primary:hover:not(:disabled){background:var(--accent)}.mp-btn-secondary{background:var(--paper-2);border:1px solid var(--line-hi);color:var(--ink)}.mp-btn-secondary:hover:not(:disabled){background:var(--cream);border-color:var(--ink)}.mp-btn:disabled{opacity:.4;cursor:not-allowed}.mp-btn-sm{padding:9px 16px;font-size:13px}.mp-loading{text-align:center;padding:60px 0}.mp-spinner{border:3px solid var(--line-2);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;margin:0 auto 20px;animation:.8s linear infinite mp-spin}@keyframes mp-spin{to{transform:rotate(360deg)}}.mp-loading h3{color:var(--ink);margin:0 0 8px;font-size:18px;font-weight:600}.mp-loading p{color:var(--muted);margin:0;font-size:14px}.mp-empty{text-align:center;padding:60px 0 40px}.mp-empty-icon{margin-bottom:16px;font-size:44px}.mp-empty h3{color:var(--ink);margin:0 0 8px;font-size:20px;font-weight:600}.mp-empty p{color:var(--muted);margin:0;font-size:15px}.shopping-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);align-self:start;padding:24px 26px;position:sticky;top:80px}.shop-eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin-bottom:12px;font-size:10.5px}.shop-title{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);margin:0 0 18px;padding-bottom:.04em;font-size:24px;font-style:italic;line-height:1.1}.shop-stat{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:baseline;padding:10px 0;font-size:13.5px;display:flex}.shop-stat:last-of-type{border-bottom:none}.shop-stat .v{font-family:var(--font-serif);color:var(--ink);letter-spacing:-.01em;font-size:18px;font-style:italic}.shop-actions{flex-direction:column;gap:10px;margin-top:18px;display:flex}.shop-scrim{z-index:200;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;pointer-events:none;background:#0c12306b;transition:opacity .25s;position:fixed;top:0;bottom:0;left:0;right:0}.shop-scrim.open{opacity:1;pointer-events:auto}.shop-modal{background:var(--paper);border:1px solid var(--line-2);border-radius:var(--radius-xl);z-index:201;opacity:0;pointer-events:none;flex-direction:column;width:min(680px,100vw - 32px);max-height:calc(100vh - 48px);transition:transform .3s cubic-bezier(.2,.7,.2,1),opacity .22s;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)scale(.96);box-shadow:0 60px 120px -30px #0c12308c}.shop-modal.open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)scale(1)}.shop-modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:22px 28px 18px;display:flex}.shop-modal-title{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);margin:0;padding-bottom:.04em;font-size:26px;font-style:italic;line-height:1.1}.shop-modal-acts{align-items:center;gap:8px;display:flex}.shop-modal-body{flex:1;padding:22px 28px 24px;overflow-y:auto}.shop-cat{margin-bottom:22px}.shop-cat-head{align-items:center;gap:10px;margin-bottom:10px;display:flex}.shop-cat-name{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);font-size:11px;font-weight:500}.shop-cat-line{background:var(--line);flex:1;height:1px}.shop-item{background:var(--paper-2);border:1px solid var(--line);cursor:pointer;border-radius:10px;grid-template-columns:22px 1fr auto;align-items:center;gap:12px;margin-bottom:6px;padding:11px 14px;font-size:13.5px;transition:all .12s;display:grid}.shop-item:hover{border-color:var(--accent-bd)}.shop-item.done{background:var(--cream)}.shop-item.done .shop-item-name{color:var(--muted-2);text-decoration:line-through}.shop-item-cb{border:2px solid var(--line-2);width:22px;height:22px;color:var(--cream);border-radius:6px;flex-shrink:0;place-items:center;transition:all .15s;display:grid}.shop-item.done .shop-item-cb{background:var(--success);border-color:var(--success)}.shop-item-name{color:var(--ink);font-weight:500;line-height:1.3}.shop-item-qty{font-family:var(--font-mono);color:var(--muted-2);letter-spacing:.04em;margin-top:2px;font-size:11px}.shop-item-store{font-family:var(--font-mono);letter-spacing:.06em;background:var(--accent-bg);color:var(--accent);text-transform:uppercase;white-space:nowrap;border-radius:6px;flex-shrink:0;padding:4px 10px;font-size:10px;font-weight:600;text-decoration:none}.mp-modal-close{background:var(--cream);border:1px solid var(--line-2);width:32px;height:32px;color:var(--ink);cursor:pointer;border-radius:50%;flex-shrink:0;place-items:center;transition:all .15s;display:grid}.mp-modal-close:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}.mp-send-modal-wrap{z-index:300;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c12306b;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.mp-send-modal{background:var(--paper);border:1px solid var(--line-2);border-radius:var(--radius-xl);width:min(380px,100vw - 32px);overflow:hidden;box-shadow:0 40px 80px -20px #0c123066}.mp-send-modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.mp-send-modal-head h3{color:var(--ink);margin:0;font-size:18px;font-weight:600}.mp-send-modal-body{padding:20px 24px}.mp-send-modal-foot{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}.mp-channel-row{background:var(--paper-2);border:1px solid var(--line-2);cursor:pointer;border-radius:10px;align-items:center;gap:12px;margin-bottom:10px;padding:12px 14px;transition:border-color .15s;display:flex}.mp-channel-row:hover{border-color:var(--accent-bd)}.mp-channel-row input{accent-color:var(--accent);cursor:pointer;width:16px;height:16px}.mp-channel-row span{color:var(--ink);font-size:14px;font-weight:500}.mp-saved-section{margin-top:40px;margin-bottom:32px}.mp-saved-title{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);margin:0 0 16px;font-size:24px;font-style:italic}.mp-saved-row{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:16px 20px;display:flex}.mp-saved-meta{color:var(--muted);font-size:14px}.mp-saved-meta strong{color:var(--ink);margin-right:6px;font-weight:600}.mp-saved-approved{color:var(--success);margin-left:8px;font-size:12px;font-weight:600}.mp-saved-active{color:#2d9e5f;background:#2d9e5f1f;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:12px;font-weight:700}.mp-saved-row.is-active{border-color:#2d9e5f73;box-shadow:inset 0 0 0 1px #2d9e5f2e}.mp-saved-acts{flex-wrap:wrap;gap:8px;display:flex}.mp-week-row{border:1px solid var(--line);background:var(--paper-2);cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:10px;width:100%;margin-bottom:6px;padding:9px 14px;font-family:inherit;transition:all .15s;display:flex}.mp-week-row:hover{border-color:var(--accent-bd)}.mp-week-row.active{border-color:var(--accent);background:var(--accent-bg)}.mp-week-day{min-width:32px;color:var(--muted-2);font-size:12px;font-weight:700}.mp-week-kcal{color:var(--ink);flex:1;font-size:13px;font-weight:600}.mp-week-badge{font-size:11px;font-weight:600}.mp-week-macros{color:var(--muted-2);font-size:11px}.dp-prep{color:var(--muted-2);font-size:9px;position:absolute;top:6px;left:5px}@media (max-width:1024px){.meal-grid{grid-template-columns:1fr}.shopping-card{position:static}.mp-meal-body{grid-template-columns:1fr;gap:20px}.macro-band{grid-template-columns:1fr 1fr}}@media (max-width:640px){.mp-wrap{padding:0 14px}.meal-hero{padding:28px 0 20px}.meal-hero h1{font-size:max(28px,min(8vw,44px))}.meal-hero p{font-size:14px}.meal-hero-orbit{opacity:.22;width:280px;height:280px;top:-120px;right:-90px}.day-strip{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;grid-template-columns:repeat(7,60px);gap:6px;padding:6px;overflow-x:auto}.day-pill{scroll-snap-align:start;padding:11px 4px 10px}.dp-date{font-size:20px}.macro-band{grid-template-columns:1fr;gap:8px}.macro-card{flex-direction:row;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px}.macro-card .mc-lbl{flex:1;margin:0}.mc-val{font-size:28px}.mp-meal-head{grid-template-columns:44px 1fr auto;gap:12px;padding:16px 18px}.mp-meal-icon{width:44px;height:44px}.mp-meal-name{word-break:break-word;font-size:20px}.mp-meal-macros{display:none}.mp-meal-kcal{font-size:20px}.mp-meal-chev{display:none}.mp-meal-body{gap:18px;padding:16px 18px 20px}.mp-meal-actions{flex-flow:wrap}.meal-rate-row{padding:8px 18px 10px}.shopping-card{padding:18px 20px}.gen-body{grid-template-columns:1fr;gap:12px;padding:18px 16px 16px}.gen-summary{flex-wrap:wrap;gap:10px;padding:14px 16px}.gen-summary-label{min-width:0;font-size:14px}.gen-summary-hint{letter-spacing:.06em;font-size:10px}.gen-foot{flex-direction:column-reverse;align-items:stretch;gap:8px}.gen-foot .mp-btn{width:100%}.why-callout{padding:16px 18px}.why-text{font-size:17px}.mp-saved-row{flex-direction:column;align-items:stretch;gap:12px}.mp-saved-acts{justify-content:flex-start}.mp-saved-acts .mp-btn{flex:calc(50% - 4px);min-width:0}.shop-modal{border-radius:16px;width:calc(100vw - 16px);max-height:85vh}.shop-modal-head{padding:16px 18px}.shop-modal-body{max-height:calc(85vh - 70px);padding:16px 18px}}@keyframes spin-rev{0%{transform:rotate(360deg)}to{transform:rotate(0)}}.trainer-page .fade-up{opacity:0;transition:opacity .55s,transform .55s;transform:translateY(20px)}.trainer-page .fade-up.visible{opacity:1;transform:translateY(0)}.trainer-page .fade-up.d1{transition-delay:80ms}.trainer-page .fade-up.d2{transition-delay:.16s}.trainer-page .fade-up.d3{transition-delay:.26s}.trainer-page{--font-sans:var(--lp-font-sans);--font-serif:var(--lp-font-serif);--font-mono:var(--lp-font-mono);--radius-sm:var(--lp-radius-sm);--radius:var(--lp-radius);--radius-lg:var(--lp-radius-lg);--radius-xl:var(--lp-radius-xl);background:var(--cream);min-height:100vh;padding-bottom:100px}.trainer-page .wrap{max-width:1240px;margin:0 auto;padding:0 28px}.trainer-page .eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.16em;color:var(--muted);align-items:center;gap:10px;font-size:11px;font-weight:500;display:inline-flex}.trainer-page .trainer-header{padding:64px 0 36px;position:relative;overflow:hidden}.trainer-page .trainer-header-orbit{opacity:.35;pointer-events:none;width:380px;height:380px;position:absolute;top:-120px;right:-120px}.trainer-page .trainer-header-inner{z-index:1;position:relative}.trainer-page .trainer-header h1{letter-spacing:-.03em;color:var(--ink);margin:12px 0 14px;padding-bottom:.04em;font-size:max(40px,min(5.4vw,64px));font-weight:400;line-height:1.05}.trainer-page .trainer-header h1 .serif{font-family:var(--font-serif);color:var(--ink-2);font-style:italic}.trainer-page .trainer-header p{color:var(--muted);max-width:56ch;margin:0;font-size:17px}.trainer-page .trainer-stats{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);grid-template-columns:repeat(3,1fr);margin:24px 0 36px;display:grid;overflow:hidden}.trainer-page .trainer-stat{border-right:1px solid var(--line);padding:28px 32px;position:relative}.trainer-page .trainer-stat:last-child{border-right:none}.trainer-page .trainer-stat-lbl{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);align-items:center;gap:8px;margin-bottom:14px;font-size:10.5px;display:flex}.trainer-page .trainer-stat-val{font-family:var(--font-serif);letter-spacing:-.035em;color:var(--ink);align-items:baseline;gap:8px;font-size:48px;font-style:italic;line-height:1;display:flex}.trainer-page .trainer-stat-val .unit{color:var(--muted-2);font-size:14px;font-family:var(--font-sans);letter-spacing:0;font-style:normal}.trainer-page .trainer-stat-delta{color:var(--muted);margin-top:10px;font-size:12.5px}.trainer-page .trainer-stat-delta .up{color:var(--success)}.trainer-page .trainer-stat-delta .dn{color:var(--danger)}.trainer-page .toolbar{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:14px 16px;display:flex}.trainer-page .toolbar-search{background:var(--cream);border:1px solid var(--line);border-radius:999px;flex:1;align-items:center;gap:10px;min-width:200px;padding:9px 14px;transition:border-color .15s,box-shadow .15s;display:flex}.trainer-page .toolbar-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #4f6fe01a}.trainer-page .toolbar-search input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:14px}.trainer-page .toolbar-search input::placeholder{color:var(--muted-2)}.trainer-page .toolbar-search svg{color:var(--muted-2);flex-shrink:0}.trainer-page .chip-group{flex-wrap:wrap;gap:6px;display:flex}.trainer-page .chip{background:var(--paper-2);border:1px solid var(--line-2);color:var(--muted);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:12.5px;font-weight:500;transition:all .15s;display:inline-flex}.trainer-page .chip:hover{color:var(--ink);border-color:var(--line-hi)}.trainer-page .chip.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.trainer-page .chip-count{font-size:11px;font-family:var(--font-mono);background:#00000014;border-radius:999px;padding:1px 6px}.trainer-page .chip.active .chip-count{background:#ffffff2e}.trainer-page .roster{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:8px}.trainer-page .roster-list-head{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);grid-template-columns:36px 1fr 90px 100px 110px 80px 220px;align-items:center;gap:14px;padding:10px 14px;font-size:10px;font-weight:500;display:grid}.trainer-page .roster-row{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;grid-template-columns:36px 1fr 90px 100px 110px 80px 220px;align-items:center;gap:14px;padding:12px 14px;font-size:14px;transition:all .12s;display:grid;position:relative}.trainer-page .roster-row+.roster-row{margin-top:2px}.trainer-page .roster-row:hover{background:var(--cream);border-color:var(--line)}.trainer-page .roster-row.selected{background:var(--accent-bg);border-color:var(--accent-bd)}.trainer-page .roster-avatar{color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:12px;font-weight:600;display:grid}.trainer-page .roster-name{color:var(--ink);font-size:15px;font-weight:500}.trainer-page .roster-meta{color:var(--muted-2);margin-top:2px;font-size:13px}.trainer-page .roster-lifecycle{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:10.5px}.trainer-page .roster-bar{background:var(--cream-2);border-radius:99px;height:5px;overflow:hidden}.trainer-page .roster-bar>span{border-radius:inherit;height:100%;transition:width .4s;display:block}.trainer-page .roster-tag{letter-spacing:.04em;text-transform:uppercase;text-align:center;border-radius:6px;padding:4px 9px;font-size:10.5px;font-weight:600}.trainer-page .tag-active{background:var(--success-bg);color:var(--success)}.trainer-page .tag-risk{background:var(--warning-bg);color:var(--warning)}.trainer-page .tag-churn{background:var(--danger-bg);color:var(--danger)}.trainer-page .tag-onboard{background:var(--accent-bg);color:var(--accent)}.trainer-page .roster-adh{font-family:var(--font-serif);color:var(--ink);text-align:right;letter-spacing:-.02em;font-size:22px;font-style:italic}.trainer-page .roster-actions{justify-content:flex-end;gap:6px;display:flex}.trainer-page .roster-action{background:var(--paper-2);border:1px solid var(--line);width:30px;height:30px;color:var(--muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:all .12s;display:inline-flex}.trainer-page .roster-action:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}.trainer-page .roster-empty{text-align:center;color:var(--muted);padding:60px 24px;font-size:14px}.trainer-page .sheet-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:12px;overflow:hidden}.trainer-page .sheet-summary{cursor:pointer;-webkit-user-select:none;user-select:none;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:14px 18px;font-family:inherit;display:flex}.trainer-page .sheet-summary-label{color:var(--ink);align-items:center;gap:10px;font-size:14.5px;font-weight:500;display:flex}.trainer-page .sheet-summary-label svg{color:var(--accent)}.trainer-page .sheet-summary-hint{color:var(--muted);align-items:center;gap:6px;font-size:12.5px;display:flex}.trainer-page .sheet-body{background:var(--cream);border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:12px;padding:22px 18px 18px;display:grid}.trainer-page .sheet-grp{flex-direction:column;gap:6px;display:flex}.trainer-page .sheet-grp label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);font-size:11px;font-weight:500;font-family:var(--font-mono)}.trainer-page .sheet-grp input{background:var(--paper-2);border:1px solid var(--line-2);color:var(--ink);border-radius:10px;outline:none;padding:11px 14px;font-family:inherit;font-size:15px;transition:border-color .15s,box-shadow .15s}.trainer-page .sheet-grp input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4f6fe01f}.trainer-page .sheet-foot{grid-column:1/-1;justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.trainer-page .btn{cursor:pointer;font-size:14px;font-weight:500;font-family:var(--font-sans);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;transition:all .15s;display:inline-flex}.trainer-page .btn-primary{background:var(--ink);color:var(--cream);border-color:var(--ink)}.trainer-page .btn-primary:hover{background:var(--accent);border-color:var(--accent)}.trainer-page .btn-secondary{background:var(--paper-2);color:var(--ink);border:1px solid var(--line-2)}.trainer-page .btn-secondary:hover{background:var(--cream-2)}.trainer-page .scrim{z-index:200;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c12306b;transition:opacity .28s;position:fixed;top:0;bottom:0;left:0;right:0}.trainer-page .scrim.open{opacity:1;pointer-events:auto}html[data-theme=dark] .trainer-page .scrim{background:#000000a6}.trainer-page .panel{background:var(--paper);border:1px solid var(--line-2);border-radius:var(--radius-xl);z-index:201;opacity:0;pointer-events:none;flex-direction:column;width:min(720px,100vw - 32px);max-height:calc(100vh - 48px);transition:transform .32s cubic-bezier(.2,.7,.2,1),opacity .22s;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)scale(.96);box-shadow:inset 0 1px #ffffff0d,0 60px 120px -30px #0c12308c,0 24px 48px -20px #0c123066}.trainer-page .panel.open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)scale(1)}html[data-theme=dark] .trainer-page .panel{box-shadow:inset 0 1px #ffffff0a,0 60px 120px -30px #000000d9,0 24px 48px -20px #0009}.trainer-page .panel-head{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 28px 18px;display:flex}.trainer-page .panel-head-text{flex:1;min-width:0}.trainer-page .panel-head-name{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;margin:0;padding-bottom:.06em;font-size:26px;font-style:italic;line-height:1.05;overflow:hidden}.trainer-page .panel-head-phone{color:var(--muted);margin-top:4px;font-size:13px}.trainer-page .panel-close{background:var(--paper-2);border:1px solid var(--line-2);width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.trainer-page .panel-close:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}.trainer-page .panel-body{flex-direction:column;flex:1;gap:24px;padding:24px 28px 80px;display:flex;overflow-y:auto}.trainer-page .ring-wrap{grid-template-columns:168px 1fr;align-items:center;gap:24px;display:grid}.trainer-page .ring-svg{width:168px;height:168px}.trainer-page .ring-track{stroke:var(--cream-2)}.trainer-page .ring-fill{stroke:var(--accent);transition:stroke-dashoffset .8s cubic-bezier(.2,.7,.2,1)}.trainer-page .ring-fill.warn{stroke:var(--warning)}.trainer-page .ring-fill.bad{stroke:var(--danger)}.trainer-page .ring-label-num{font-family:var(--font-serif);fill:var(--ink);text-anchor:middle;dominant-baseline:central;font-size:38px;font-style:italic}.trainer-page .ring-label-sub{font-family:var(--font-mono);letter-spacing:.12em;fill:var(--muted-2);text-anchor:middle;text-transform:uppercase;font-size:9.5px}.trainer-page .ring-summary{flex-direction:column;gap:6px;display:flex}.trainer-page .ring-trend{background:var(--success-bg);width:-moz-fit-content;width:fit-content;color:var(--success);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12.5px;font-weight:500;display:inline-flex}.trainer-page .ring-trend.dn{background:var(--danger-bg);color:var(--danger)}.trainer-page .ring-summary-title{color:var(--ink);font-size:14px;font-weight:500}.trainer-page .ring-summary-desc{color:var(--muted);font-size:13px;line-height:1.5}.trainer-page .panel-sec-lbl{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);align-items:center;gap:8px;margin-bottom:12px;font-size:10.5px;display:flex}.trainer-page .breakdown{flex-direction:column;gap:10px;display:flex}.trainer-page .breakdown-row{flex-direction:column;gap:5px;display:flex}.trainer-page .breakdown-head{color:var(--ink);justify-content:space-between;align-items:baseline;font-size:13px;display:flex}.trainer-page .breakdown-head .w{color:var(--muted-2);font-size:11px;font-family:var(--font-mono);margin-left:4px}.trainer-page .breakdown-head .v{font-family:var(--font-serif);letter-spacing:-.01em;font-size:17px;font-style:italic}.trainer-page .breakdown-bar{background:var(--cream-2);border-radius:99px;height:4px;overflow:hidden}.trainer-page .breakdown-bar>span{height:100%;transition:width .5s;display:block}.trainer-page .vitals{grid-template-columns:1fr 1fr;gap:10px;display:grid}.trainer-page .vital{background:var(--paper-2);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.trainer-page .vital-lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--muted-2);font-size:11px;font-family:var(--font-mono);margin-bottom:6px}.trainer-page .vital-val{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);align-items:baseline;gap:6px;font-size:22px;font-style:italic;display:flex}.trainer-page .vital-val .small{color:var(--muted-2);font-size:12px;font-family:var(--font-sans);font-style:normal}.trainer-page .vital-state{color:var(--muted);margin-top:4px;font-size:11px}.trainer-page .flags-row{flex-wrap:wrap;gap:6px;display:flex}.trainer-page .flag-chip{background:var(--cream);border:1px solid var(--line-2);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:11.5px}.trainer-page .suggest{background:var(--ink);color:var(--cream);border-radius:var(--radius);padding:18px 20px;font-size:13.5px;line-height:1.55}.trainer-page .suggest-head{font-family:var(--font-mono);color:var(--accent-2);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:10px;font-size:10px;display:flex}.trainer-page .suggest-cta{border-top:1px solid #ffffff1f;flex-wrap:wrap;gap:10px;margin-top:14px;padding-top:14px;display:flex}.trainer-page .suggest-btn{background:var(--cream);color:var(--ink);cursor:pointer;border:none;border-radius:999px;padding:8px 14px;font-size:12.5px;font-weight:500}.trainer-page .suggest-btn.ghost{color:var(--cream);background:0 0;border:1px solid #fff3}.trainer-page .suggest-btn:hover{transform:translateY(-1px)}.trainer-page .trr-section{flex-direction:column;gap:8px;display:flex}.trainer-page .trr-empty{color:var(--muted,#6b7280);padding:4px 0;font-size:12.5px}.trainer-page .trr-row{align-items:flex-start;gap:10px;display:flex}.trainer-page .trr-row-label{color:var(--muted,#6b7280);text-transform:uppercase;letter-spacing:.06em;flex:0 0 60px;padding-top:4px;font-size:11px;font-weight:600}.trainer-page .trr-pills{flex-wrap:wrap;flex:1;gap:6px;display:flex}.trainer-page .trr-pill{background:var(--soft,#f9fafb);color:var(--ink,#1f2937);border:1px solid var(--border,#00000014);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;max-width:200px;padding:3px 9px;font-size:12px;font-weight:500;display:inline-block;overflow:hidden}.trainer-page .trr-pill.liked{color:var(--success,#10b981);background:#10b9811a;border-color:#10b98140}.trainer-page .trr-pill.disliked{color:var(--danger,#ef4444);background:#ef44441a;border-color:#ef444440}.trainer-page .insight-panel{flex-direction:column;gap:10px;display:flex}.trainer-page .insight-panel-loading{color:var(--text-muted);padding:4px 0;font-size:12px}.trainer-page .insight-panel-empty{color:var(--text-muted);background:var(--bg-tertiary);border:1px dashed var(--border);border-radius:10px;padding:12px 14px;font-size:12.5px;line-height:1.5}.trainer-page .insight-chip{background:var(--bg-secondary);border:1px solid var(--border);border-left:3px solid var(--primary-light);border-radius:10px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.trainer-page .insight-chip.urgent{border-left-color:var(--danger,#ef4444);background:linear-gradient(180deg, #ef444414, transparent 45%), var(--bg-secondary)}.trainer-page .insight-chip-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.trainer-page .insight-chip-title{color:var(--text-primary);font-size:14px;font-weight:600}.trainer-page .insight-conf-pill{background:var(--bg-tertiary);color:var(--primary-light);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.trainer-page .insight-chip.urgent .insight-conf-pill{color:var(--danger,#ef4444);background:#ef444426}.trainer-page .insight-rule-pill{background:var(--bg-tertiary);color:var(--text-muted);border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:500;display:inline-block}.trainer-page .insight-chip-suggestion{color:var(--text-primary);font-size:13px;line-height:1.5}.trainer-page .insight-chip-applied{color:var(--success,#10b981);padding:4px 0;font-size:12.5px;font-weight:600}.trainer-page .insight-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.trainer-page .insight-why{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:6px 4px;font-size:12px;text-decoration:underline}.trainer-page .insight-why:hover{color:var(--text-primary)}.trainer-page .insight-why-body{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);border-radius:8px;flex-direction:column;gap:6px;padding:10px 12px;font-size:12.5px;display:flex}.trainer-page .insight-why-history{color:var(--text-muted);font-size:11.5px}@media (max-width:640px){.trainer-page .insight-actions{flex-direction:column;align-items:stretch}.trainer-page .insight-actions .btn{width:100%}}.trainer-page .lock-cat{background:var(--paper-2);border:1px solid var(--line);border-radius:12px;margin-bottom:8px;overflow:hidden}.trainer-page .lock-cat-head{cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:14px 16px;display:flex}.trainer-page .lock-cat-head:hover{background:var(--cream)}.trainer-page .lock-cat-head .label{color:var(--ink);align-items:center;gap:10px;font-size:13.5px;font-weight:500;display:flex}.trainer-page .lock-cat-head .chev{color:var(--muted-2);font-size:10px;transition:transform .2s}.trainer-page .lock-cat.open .lock-cat-head .chev{transform:rotate(90deg)}.trainer-page .lock-cat-body{border-top:1px solid var(--line);flex-direction:column;gap:14px;padding:6px 16px 16px;display:flex}.trainer-page .lock-row{flex-direction:column;gap:8px;display:flex}.trainer-page .lock-row-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.trainer-page .lock-row-label{color:var(--ink);font-size:13px}.trainer-page .lock-row-label .v{color:var(--accent);font-family:var(--font-mono);margin-left:6px;font-size:11px}.trainer-page .lock-toggle{background:var(--cream-2);border:1.5px solid var(--line-2);cursor:pointer;border-radius:11px;flex-shrink:0;width:40px;height:22px;transition:all .2s;position:relative}.trainer-page .lock-toggle.on{background:var(--accent);border-color:var(--accent)}.trainer-page .lock-toggle:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:left .2s;position:absolute;top:1px;left:1px;box-shadow:0 1px 3px #0003}.trainer-page .lock-toggle.on:after{left:20px}.trainer-page .lock-row select,.trainer-page .lock-row input{background:var(--cream);border:1px solid var(--line);color:var(--ink);border-radius:8px;outline:none;width:100%;padding:8px 12px;font-family:inherit;font-size:13px}.trainer-page .lock-row select:focus,.trainer-page .lock-row input:focus{border-color:var(--accent)}.trainer-page .lock-save-row{justify-content:flex-end;margin-top:4px;display:flex}.trainer-page .lock-save-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:7px 14px;font-size:12px;font-weight:500}.trainer-page .lock-save-btn:disabled{opacity:.6;cursor:default}.trainer-page .panel-actions{background:var(--paper);border-top:1px solid var(--line);flex-wrap:wrap;flex-shrink:0;gap:8px;padding:14px 28px;display:flex;position:sticky;bottom:0}.trainer-page .panel-action-btn{background:var(--paper-2);border:1px solid var(--line-2);color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:9px 14px;font-size:12.5px;font-weight:500;transition:all .15s;display:inline-flex}.trainer-page .panel-action-btn:hover,.trainer-page .panel-action-btn.primary{background:var(--ink);color:var(--cream);border-color:var(--ink)}.trainer-page .panel-action-btn.primary:hover{background:var(--accent);border-color:var(--accent)}.trainer-page .tp-toast{background:var(--ink);color:var(--cream);z-index:300;opacity:0;pointer-events:none;border-radius:999px;padding:12px 22px;font-size:13.5px;font-weight:500;transition:opacity .25s,transform .25s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(20px);box-shadow:0 20px 40px -10px #0c123080}.trainer-page .tp-toast.show{opacity:1;transform:translate(-50%)translateY(0)}@media (max-width:1100px){.trainer-page .roster-list-head,.trainer-page .roster-row{grid-template-columns:36px 1fr 100px 110px 56px;gap:12px}.trainer-page .roster-list-head>:nth-child(4),.trainer-page .roster-row>:nth-child(4),.trainer-page .roster-list-head>:nth-child(5),.trainer-page .roster-row>:nth-child(5){display:none}.trainer-page .roster-actions{gap:4px}.trainer-page .roster-action:nth-child(n+3){display:none}}@media (max-width:900px){.trainer-page .trainer-stats{grid-template-columns:1fr}.trainer-page .trainer-stat{border-right:none;border-bottom:1px solid var(--line)}.trainer-page .trainer-stat:last-child{border-bottom:none}.trainer-page .sheet-body{grid-template-columns:1fr 1fr}}@media (max-width:640px){.trainer-page .trainer-header{padding:36px 0 24px}.trainer-page .toolbar{flex-direction:column;align-items:stretch}.trainer-page .toolbar-search{width:100%}.trainer-page .chip-group{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.trainer-page .chip{white-space:nowrap}.trainer-page .roster-list-head{display:none}.trainer-page .roster-row{background:var(--paper-2);border:1px solid var(--line);grid-template-columns:36px 1fr 60px;gap:10px;padding:14px}.trainer-page .roster-row+.roster-row{margin-top:6px}.trainer-page .roster-row>:nth-child(3),.trainer-page .roster-row>:nth-child(4),.trainer-page .roster-row>:nth-child(5),.trainer-page .roster-row>:nth-child(7){display:none}.trainer-page .roster-adh{font-size:18px}.trainer-page .panel{border-radius:var(--radius-lg);width:calc(100vw - 16px);max-height:calc(100vh - 24px)}.trainer-page .panel-head{padding:18px 20px 14px}.trainer-page .panel-body{gap:18px;padding:18px 20px 80px}.trainer-page .panel-actions{padding:12px 20px}.trainer-page .ring-wrap{text-align:center;grid-template-columns:1fr;justify-items:center}.trainer-page .ring-summary{align-items:center}.trainer-page .vitals,.trainer-page .sheet-body{grid-template-columns:1fr}}.workout-page{background:var(--cream);min-height:100vh;padding-bottom:64px}.workout-hero{padding:56px 0 32px;position:relative;overflow:hidden}.workout-hero-orbit{opacity:.32;pointer-events:none;width:460px;height:460px;position:absolute;top:-160px;right:-120px}.workout-hero-inner{z-index:1;position:relative}.workout-hero h1{letter-spacing:-.03em;color:var(--ink);margin:8px 0 12px;padding-bottom:.04em;font-size:max(40px,min(5.4vw,64px));font-weight:400;line-height:1.05}.workout-hero h1 .serif{font-family:var(--font-serif);color:var(--ink-2);font-style:italic}.workout-hero p{color:var(--muted);max-width:56ch;margin:0;font-size:17px;line-height:1.55}.workout-page .section-eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);align-items:center;gap:10px;margin-bottom:12px;font-size:10.5px;display:inline-flex}.workout-page .section-eyebrow:before{content:"";background:var(--muted-2);width:14px;height:1px}.program-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);margin-bottom:16px;padding:32px 36px;position:relative;overflow:hidden}.program-card-eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);margin-bottom:10px;font-size:10.5px}.program-card-title{font-family:var(--font-serif);letter-spacing:-.025em;color:var(--ink);max-width:22ch;margin:0 0 14px;padding-bottom:.04em;font-size:max(28px,min(3.4vw,40px));font-style:italic;line-height:1.05}.program-badges{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.program-badge{background:var(--paper-2);border:1px solid var(--line-2);color:var(--ink);border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;font-weight:500;display:inline-flex}.program-badge.approved{background:var(--success-bg);color:var(--success);border-color:#0000}.program-card-desc{color:var(--muted);max-width:60ch;margin:6px 0 16px;font-size:14.5px;line-height:1.55}.program-card-foot{border-top:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:24px;padding-top:16px;display:flex}.program-foot-stat{flex-direction:column;gap:2px;display:flex}.program-foot-stat-lbl{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);font-size:10.5px}.program-foot-stat-val{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);padding-bottom:.04em;font-size:22px;font-style:italic;line-height:1}.program-foot-stat-val.plain{font-family:var(--font-sans);color:var(--muted);letter-spacing:0;font-size:13px;font-style:normal}.program-card-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.program-why-btn{background:var(--paper-2);border:1px solid var(--line-2);color:var(--accent);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:12.5px;font-weight:500;transition:all .15s;display:inline-flex}.program-why-btn:hover{border-color:var(--accent);background:var(--accent-bg)}.schedule-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);margin-bottom:16px;padding:22px 26px}.schedule-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.schedule-title{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);margin:0 0 2px;padding-bottom:.04em;font-size:22px;font-style:italic}.schedule-hint{color:var(--muted);font-size:12.5px}.schedule-save{background:var(--ink);color:var(--cream);cursor:pointer;white-space:nowrap;border:none;border-radius:999px;padding:9px 16px;font-family:inherit;font-size:13px;font-weight:500;transition:all .15s}.schedule-save:hover:not(:disabled){transform:translateY(-1px)}.schedule-save:disabled{opacity:.5;cursor:not-allowed}.schedule-days{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.schedule-day{background:var(--paper-2);border:1px solid var(--line-2);text-align:center;cursor:pointer;border-radius:12px;padding:14px 0 12px;font-family:inherit;transition:all .15s}.schedule-day:hover:not(.disabled):not(.active){border-color:var(--accent-bd)}.schedule-day.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.schedule-day.disabled{opacity:.35;cursor:not-allowed}.schedule-day-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin-bottom:4px;font-size:10.5px}.schedule-day.active .schedule-day-label{color:var(--cream)}.schedule-day-mark{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);font-size:18px;font-style:italic;line-height:1}.schedule-day.active .schedule-day-mark{color:var(--cream)}.day-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);margin-bottom:14px;transition:border-color .15s,box-shadow .15s;overflow:hidden}.day-card.open{box-shadow:var(--shadow-soft)}.day-card-head{cursor:pointer;-webkit-user-select:none;user-select:none;grid-template-columns:56px 1fr auto 32px;align-items:center;gap:18px;padding:20px 26px;display:grid}.day-card-num{background:var(--cream);border:1px solid var(--line);width:56px;height:56px;font-family:var(--font-serif);color:var(--ink-2);letter-spacing:-.02em;border-radius:50%;place-items:center;font-size:26px;font-style:italic;display:grid}.day-card.done .day-card-num{background:var(--success-bg);color:var(--success);border-color:#0000}.day-card-title{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);padding-bottom:.04em;font-size:24px;font-style:italic;line-height:1.1}.day-card-focus{color:var(--muted);margin-top:4px;font-size:13px}.day-card-meta{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.day-card-meta-line{font-family:var(--font-mono);color:var(--muted-2);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:6px;font-size:11px;display:inline-flex}.day-card-meta-line.done{color:var(--success)}.day-card-meta-line.partial{color:var(--warning)}.day-card-chev{background:var(--paper-2);border:1px solid var(--line-2);width:32px;height:32px;color:var(--muted);border-radius:50%;place-items:center;transition:transform .2s;display:grid}.day-card.open .day-card-chev{background:var(--ink);color:var(--cream);border-color:var(--ink);transform:rotate(180deg)}.day-card-body{border-top:1px solid var(--line);background:var(--paper);padding:24px 26px 26px}.block-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;vertical-align:middle;border-radius:5px;margin-right:8px;padding:3px 8px;font-size:9.5px;font-weight:600;display:inline-block}.block-warmup{color:#b5780e;background:#d977061f}.block-main{background:var(--accent-bg);color:var(--accent)}.block-cool{color:var(--success);background:#2d8a551f}[data-theme=dark] .block-warmup{color:var(--warning);background:#e4a33e2e}.exercise{background:var(--paper-2);border:1px solid var(--line);border-radius:14px;margin-bottom:10px;padding:20px 22px}.exercise-head{grid-template-columns:1fr auto;gap:16px;margin-bottom:14px;display:grid}.exercise-name{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);margin:0;padding-bottom:.04em;font-size:20px;font-style:italic;line-height:1.15}.exercise-notes{color:var(--muted);margin-top:4px;font-size:12.5px;line-height:1.5}.exercise-meta{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted-2);white-space:nowrap;align-items:baseline;gap:18px;font-size:11px;display:flex}.exercise-meta .v{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);text-transform:none;margin-left:6px;font-size:22px;font-style:italic;line-height:1}.exercise-suggest{background:var(--accent-bg);color:var(--accent);border-radius:12px;align-items:center;gap:8px;max-width:100%;margin-bottom:12px;padding:6px 12px;font-size:12px;font-weight:500;line-height:1.4;display:inline-flex}.exercise-suggest svg{flex-shrink:0}.exercise-suggest-text{white-space:normal;word-break:break-word}.exercise-suggest.is-increase,.exercise-suggest.is-reps_up{background:var(--success-bg);color:var(--success)}.exercise-suggest.is-reduce{background:var(--warning-bg);color:var(--warning)}.exercise-suggest.is-swap{background:var(--accent-bg);color:var(--accent)}.exercise-suggest.is-maintain{background:var(--paper-2);color:var(--muted);border:1px solid var(--line-2)}.sets{flex-direction:column;gap:8px;display:flex}.set-row{background:var(--paper);border:1px solid var(--line);border-radius:10px;grid-template-columns:46px minmax(0,1fr) minmax(0,1fr) 70px;align-items:center;gap:6px;padding:7px 8px;transition:all .15s;display:grid}.set-row>*{min-width:0}.set-row.done{background:var(--success-bg);border-color:var(--success-bd,transparent)}.set-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);padding-left:4px;font-size:10.5px}.set-input-wrap{background:var(--paper-2);border:1px solid var(--line-2);box-sizing:border-box;border-radius:8px;align-items:center;gap:6px;min-width:0;padding:7px 12px;display:flex}.set-row.done .set-input-wrap{background:var(--paper);border-color:#0000}.set-input-wrap input{width:100%;min-width:0;font-family:var(--font-sans,inherit);color:var(--ink);letter-spacing:0;text-align:right;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;background:0 0;border:none;outline:none;flex:1 1 0;margin:0;padding:0;font-size:15px;font-style:normal;font-weight:600;line-height:1.2}.set-input-wrap input::placeholder{color:var(--muted-2);opacity:.6;font-weight:400}.set-input-wrap input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.set-input-wrap input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.set-input-wrap input:focus{outline:none}.set-input-wrap .suffix{font-family:var(--font-mono);letter-spacing:.06em;color:var(--muted-2);text-transform:uppercase;flex-shrink:0;font-size:10px}.set-done{background:var(--paper-2);border:1px solid var(--line-2);cursor:pointer;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:5px;min-width:0;padding:5px 8px;font-family:inherit;font-size:10.5px;font-weight:500;transition:all .15s;display:flex}.set-done .box{border:1.5px solid var(--line-hi);width:14px;height:14px;color:var(--cream);border-radius:4px;flex-shrink:0;place-items:center;transition:all .15s;display:grid}.set-done.on{background:var(--ink);color:var(--cream);border-color:var(--ink)}.set-done.on .box{background:var(--success);border-color:var(--success)}.session-controls{border-top:1px dashed var(--line);flex-direction:column;gap:12px;margin-top:18px;padding-top:18px;display:flex}.session-controls-row{grid-template-columns:auto 1fr;align-items:flex-start;gap:12px;display:grid}.session-date-grp{flex-direction:column;gap:4px;display:flex}.session-date-grp label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);font-size:10px}.session-date-grp input{background:var(--paper-2);border:1px solid var(--line-2);color:var(--ink);border-radius:8px;padding:8px 12px;font-family:inherit;font-size:13px}.session-notes{background:var(--paper-2);border:1px solid var(--line-2);color:var(--ink);resize:vertical;border-radius:10px;outline:none;width:100%;min-height:60px;padding:11px 14px;font-family:inherit;font-size:13.5px}.session-notes:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4f6fe01f}.session-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.session-progress{font-family:var(--font-mono);color:var(--muted-2);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.session-progress .v{font-family:var(--font-serif);color:var(--ink);text-transform:none;letter-spacing:-.01em;margin-right:4px;font-size:16px;font-style:italic}.session-autosave{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted-2);opacity:.85;align-items:center;gap:4px;margin-left:10px;font-size:10px;display:inline-flex}.session-autosave.saving{color:var(--accent)}.session-autosave.saved{color:var(--success)}.session-autosave.error{color:var(--warning)}.session-autosave-dot{background:currentColor;border-radius:999px;width:6px;height:6px}.session-autosave.saving .session-autosave-dot{animation:.9s ease-in-out infinite wp-pulse}@keyframes wp-pulse{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1.2)}}.session-log-btn{background:var(--ink);color:var(--cream);cursor:pointer;white-space:nowrap;border:none;border-radius:999px;padding:11px 22px;font-family:inherit;font-size:13.5px;font-weight:500;transition:all .15s}.session-log-btn:hover:not(:disabled){transform:translateY(-1px)}.session-log-btn.complete{background:var(--success)}.session-log-btn:disabled{opacity:.55;cursor:not-allowed}.wp-rate{background:var(--paper-2);border:1px solid var(--line-2);border-radius:12px;flex-wrap:wrap;align-items:center;gap:14px;margin-top:14px;padding:14px 16px;display:flex}.wp-rate-eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);width:100%;margin-bottom:-4px;font-size:10px}.wp-rate-field{align-items:center;gap:8px;display:inline-flex}.wp-rate-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);font-size:10.5px}.wp-rate-label-help{cursor:help;border-bottom:1px dotted var(--muted-2);align-items:center;gap:4px;display:inline-flex}.wp-rate-help{background:var(--muted-2);width:14px;height:14px;color:var(--paper);font-family:var(--font-sans,inherit);letter-spacing:0;text-transform:none;border-radius:999px;place-items:center;font-size:9px;font-weight:700;display:inline-grid}.wp-rate-input{font-family:var(--font-serif);background:var(--paper);border:1px solid var(--line-2);width:56px;color:var(--ink);text-align:center;border-radius:8px;outline:none;padding:6px 10px;font-size:17px;font-style:italic}.wp-rate-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4f6fe01f}.wp-rate-select{background:var(--paper);border:1px solid var(--line-2);color:var(--ink);border-radius:8px;outline:none;padding:7px 10px;font-family:inherit;font-size:12.5px}.wp-rate-save{background:var(--ink);color:var(--cream);cursor:pointer;border:none;border-radius:999px;margin-left:auto;padding:7px 16px;font-family:inherit;font-size:12.5px;font-weight:500;transition:all .15s}.wp-rate-save:hover:not(:disabled){transform:translateY(-1px)}.wp-rate-save:disabled{opacity:.55;cursor:not-allowed}.workout-grid{grid-template-columns:320px 1fr;align-items:start;gap:18px;display:grid}.left-col{flex-direction:column;gap:14px;min-width:0;display:flex;position:sticky;top:90px}.right-col{min-width:0}.saved-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.saved-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:18px 22px 14px;display:flex}.saved-title{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);margin:0;padding-bottom:.04em;font-size:22px;font-style:italic}.saved-count{font-family:var(--font-mono);color:var(--muted-2);letter-spacing:.06em;font-size:11px}.saved-list{flex-direction:column;gap:2px;padding:6px;display:flex}.saved-item{cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;grid-template-columns:1fr auto;align-items:center;gap:12px;min-width:0;padding:12px 14px;font-family:inherit;transition:all .12s;display:grid}.saved-item-tail{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.saved-item-pill{letter-spacing:.08em;text-transform:uppercase;background:var(--accent);color:#fff;vertical-align:2px;border-radius:999px;margin-left:8px;padding:2px 7px;font-size:9.5px;font-weight:700;display:inline-block}.saved-item-setactive{letter-spacing:.04em;color:var(--accent);border:1px solid var(--accent-bd);cursor:pointer;background:0 0;border-radius:6px;padding:4px 9px;font-family:inherit;font-size:10.5px;font-weight:500;transition:all .12s}.saved-item-setactive:hover{background:var(--accent-bg);border-color:var(--accent)}.saved-item:hover{background:var(--cream)}.saved-item.active{background:var(--accent-bg);border-color:var(--accent-bd)}.saved-item-name{color:var(--ink);font-size:13.5px;font-weight:500}.saved-item-meta{font-family:var(--font-mono);color:var(--muted-2);letter-spacing:.04em;margin-top:2px;font-size:11px}.saved-item-status{letter-spacing:.04em;text-transform:uppercase;border-radius:6px;padding:4px 9px;font-size:10.5px;font-weight:600}.saved-item-status.approved{background:var(--success-bg);color:var(--success)}.saved-item-status.pending{background:var(--warning-bg);color:var(--warning)}.workout-gen{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px 24px 18px}.workout-gen-title{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);margin:0 0 16px;padding-bottom:.04em;font-size:22px;font-style:italic}.workout-gen-grp{flex-direction:column;gap:6px;min-width:0;margin-bottom:12px;display:flex}.workout-gen-grp label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);font-size:10.5px}.workout-gen-grp input,.workout-gen-grp select{background:var(--paper-2);border:1px solid var(--line-2);color:var(--ink);-webkit-appearance:none;text-overflow:ellipsis;border-radius:10px;outline:none;width:100%;min-width:0;max-width:100%;padding:11px 14px;font-family:inherit;font-size:14px}.workout-gen-grp input:focus,.workout-gen-grp select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4f6fe01f}.workout-gen-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.workout-gen-btn{background:var(--ink);width:100%;color:var(--cream);cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;margin-top:6px;padding:12px 20px;font-family:inherit;font-size:13.5px;font-weight:500;transition:all .15s;display:inline-flex}.workout-gen-btn:hover:not(:disabled){transform:translateY(-1px)}.workout-gen-btn:disabled{opacity:.55;cursor:not-allowed}.ready-card{color:#f4f0e6;border-radius:var(--radius-lg);background:#0c1230;grid-template-columns:1fr auto;align-items:center;gap:24px;margin-bottom:16px;padding:28px 32px;display:grid;position:relative;overflow:hidden}[data-theme=dark] .ready-card{background:#1a2046;border:1px solid #6e89ee2e}.ready-card:after{content:"";pointer-events:none;background:radial-gradient(circle,#6e89ee38 0%,#0000 65%);width:320px;height:320px;position:absolute;top:-100px;right:-100px}.ready-card-inner{z-index:1;position:relative}.ready-card-eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:#6e89ee;margin-bottom:8px;font-size:10.5px}.ready-card-title,.ready-card h2.ready-card-title{font-family:var(--font-serif);letter-spacing:-.02em;color:#f4f0e6;margin:0 0 10px;padding-bottom:.05em;font-size:max(24px,min(3vw,32px));font-style:italic;line-height:1.1}.ready-card-desc{color:#f4f0e6d1;max-width:60ch;margin:0;font-size:14.5px;line-height:1.55}.ready-card-cta{z-index:1;color:#0c1230;cursor:pointer;white-space:nowrap;background:#f4f0e6;border:none;border-radius:999px;align-items:center;gap:8px;padding:14px 26px;font-family:inherit;font-size:14px;font-weight:500;transition:transform .15s,box-shadow .15s;display:inline-flex;position:relative}.ready-card-cta:hover{transform:translateY(-1px);box-shadow:0 6px 18px -8px #0006}.empty-state{text-align:center;background:var(--paper);border:1px dashed var(--line-2);border-radius:var(--radius-lg);color:var(--muted);padding:80px 32px}.empty-state svg{color:var(--accent);margin-bottom:14px}.empty-state h3{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);margin:0 0 8px;padding-bottom:.04em;font-size:28px;font-style:italic}.empty-state p{max-width:38ch;margin:0 auto;font-size:14.5px}@media (max-width:1024px){.workout-grid{grid-template-columns:1fr}.left-col{position:static}.ready-card{grid-template-columns:1fr}.program-card-foot{gap:18px}}@media (max-width:768px){.workout-gen-row{grid-template-columns:1fr}}@media (max-width:900px){.set-row{grid-template-columns:44px minmax(0,1fr) minmax(0,1fr);grid-template-areas:"label weight reps""done done done";row-gap:6px}.set-label{grid-area:label}.set-row>:nth-child(2){grid-area:weight}.set-row>:nth-child(3){grid-area:reps}.set-row>:nth-child(4){grid-area:done}.set-done{padding:6px 10px}}@media (max-width:640px){.workout-hero{padding:36px 0 24px}.program-card{padding:22px 20px}.program-card-foot{gap:14px;padding-top:12px}.program-foot-stat-val{font-size:18px}.schedule-card{padding:18px 18px 20px}.schedule-days{grid-template-columns:repeat(7,minmax(40px,1fr));gap:4px}.schedule-day{padding:10px 0 8px}.schedule-day-mark{font-size:15px}.day-card-head{grid-template-columns:44px 1fr 32px;gap:12px;padding:16px 18px}.day-card-num{width:44px;height:44px;font-size:20px}.day-card-title{font-size:20px}.day-card-meta{display:none}.day-card-body{padding:18px 18px 22px}.exercise{padding:16px 18px}.exercise-head{grid-template-columns:1fr;gap:8px}.exercise-meta{gap:14px}.exercise-meta .v{font-size:18px}.set-row{grid-template-columns:40px minmax(0,1fr) minmax(0,1fr)}.set-input-wrap input{font-size:16px}.session-controls-row{grid-template-columns:1fr}.ready-card{padding:22px 20px}.wp-rate{gap:10px;padding:12px 14px}.wp-rate-save{text-align:center;width:100%;margin-left:0}}.ob-page{--cream:#f4f0e6;--cream-2:#ede7d7;--cream-3:#e5ddc8;--paper:#fbf9f3;--paper-2:#fff;--ink:#0c1230;--ink-2:#1e2a6b;--ink-3:#2d3877;--muted:#5e658b;--muted-2:#8a8fa8;--muted-3:#b6b2a4;--accent:#4f6fe0;--accent-2:#6e89ee;--accent-deep:#3754c5;--accent-soft:#dae2fa;--accent-bg:#4f6fe014;--accent-bd:#4f6fe02e;--line:#0c123014;--line-2:#0c123024;--line-hi:#0c123038;--success:#2d8a55;--success-bg:#2d8a551a;--warning:#b5780e;--warning-bg:#b5780e1f;--danger:#c24545;--danger-bg:#c245451a;--om-ring-outer:#4f6fe0;--om-ring-inner:#1e2a6b;--om-sat-navy:#1e2a6b;--om-sat-blue:#5479e7;--om-sat-cream:#ece9dd;--om-sat-cream-stroke:#d6d2c5;--om-center:#1e2a6b;--om-pupil:#f4f0e6;--om-stroke-op:.85;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--font-sans:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif:"Instrument Serif", "Cormorant Garamond", Georgia, serif;--font-mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;background:var(--cream);min-height:100vh;font-family:var(--font-sans);font-feature-settings:"ss01","cv11";color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;flex-direction:column;justify-content:flex-start;align-items:stretch;padding:0;line-height:1.5;display:flex;position:relative;overflow-x:hidden}html[data-theme=dark] .ob-page{--cream:#0a0f1f;--cream-2:#0e1426;--cream-3:#131a30;--paper:#11172b;--paper-2:#161d36;--ink:#f4f0e6;--ink-2:#e8e2d0;--ink-3:#d4cdb6;--muted:#9098b5;--muted-2:#6b7290;--muted-3:#4d5470;--accent:#6e89ee;--accent-2:#9ab0f5;--accent-deep:#4f6fe0;--accent-soft:#232e55;--accent-bg:#6e89ee1f;--accent-bd:#6e89ee4d;--line:#f4f0e612;--line-2:#f4f0e61f;--line-hi:#f4f0e638;--success:#4fc084;--success-bg:#4fc08424;--warning:#e4a33e;--warning-bg:#e4a33e24;--danger:#ed7676;--danger-bg:#ed767624;--om-ring-outer:#6e89ee;--om-ring-inner:#b6c0e8;--om-sat-navy:#e8e2d0;--om-sat-blue:#6e89ee;--om-sat-cream:#4f6fe0;--om-sat-cream-stroke:#6e89ee;--om-center:#e8e2d0;--om-pupil:#0a0f1f;--om-stroke-op:.9}.ob-page *{box-sizing:border-box}.ob-page a{color:inherit;text-decoration:none}.ob-page button{cursor:pointer;font-family:inherit}.ob-page .orbit-mark .om-ring-outer{stroke:var(--om-ring-outer);opacity:var(--om-stroke-op)}.ob-page .orbit-mark .om-ring-inner{stroke:var(--om-ring-inner);opacity:var(--om-stroke-op)}.ob-page .orbit-mark .om-sat-navy{fill:var(--om-sat-navy)}.ob-page .orbit-mark .om-sat-blue{fill:var(--om-sat-blue)}.ob-page .orbit-mark .om-sat-cream{fill:var(--om-sat-cream);stroke:var(--om-sat-cream-stroke);stroke-width:1px}.ob-page .orbit-mark .om-center{fill:var(--om-center)}.ob-page .orbit-mark .om-pupil{fill:var(--om-pupil)}.ob-orbit-bg{pointer-events:none;z-index:0;opacity:.35;transition:transform 1.4s cubic-bezier(.4,0,.2,1),opacity .8s;position:fixed}.ob-orbit-bg-1{width:540px;height:540px;top:-180px;right:-180px}.ob-orbit-bg-2{opacity:.22;width:480px;height:480px;bottom:-200px;left:-200px}.ob-progress-orbit{z-index:5;place-items:center;width:64px;height:64px;display:grid;position:fixed;top:16px;right:16px}.ob-progress-svg{width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.ob-progress-orbit .ob-progress-track{stroke:var(--line-2);fill:none;stroke-width:2.5px;background:0 0;height:auto;position:static}.ob-progress-orbit .ob-progress-fill{stroke:var(--accent);fill:none;stroke-width:3px;stroke-linecap:round;filter:drop-shadow(0 0 6px #4f6fe066);background:0 0;height:auto;transition:stroke-dashoffset .7s cubic-bezier(.2,.7,.2,1);position:static}.ob-progress-step{z-index:1;font-family:var(--font-serif);color:var(--ink);letter-spacing:-.02em;font-size:18px;font-style:italic;position:relative}.ob-progress-step .of{font-family:var(--font-mono);color:var(--muted-2);letter-spacing:.06em;margin-left:1px;font-size:10px;font-style:normal}.ob-header{z-index:4;box-sizing:border-box;justify-content:space-between;align-items:center;width:100%;max-width:none;margin:0;padding:20px 96px 20px 28px;display:flex;position:relative}.ob-header .nav-logo{color:inherit;align-items:center;gap:10px;text-decoration:none;display:flex}.ob-header .nav-logo .mark{flex-shrink:0;width:32px;height:32px}.ob-header .nav-logo .wordmark{font-family:var(--font-sans);letter-spacing:-.04em;font-size:18px;font-weight:700}.ob-header .nav-logo .wordmark .a{color:var(--ink)}.ob-header .nav-logo .wordmark .b{color:var(--accent)}.ob-skip-link{background:var(--paper);border:1px solid var(--line);color:var(--ink);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:999px;align-items:center;padding:8px 14px;font-size:11.5px;font-weight:600;transition:all .15s;display:inline-flex}.ob-skip-link:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-bg);transform:translateY(-1px)}.ob-dob-roller{grid-template-columns:1.4fr 1fr 1.1fr;gap:12px;margin-top:4px;display:grid}.ob-roller{border:1px solid var(--line);background:var(--paper);border-radius:14px;height:200px;position:relative;overflow:hidden}.ob-roller-list{scroll-snap-type:y mandatory;scrollbar-width:none;outline:none;height:100%;position:relative;overflow-y:scroll}.ob-roller-list::-webkit-scrollbar{display:none}.ob-roller-spacer{flex-shrink:0;height:80px}.ob-roller-item{width:100%;height:40px;color:var(--muted);cursor:pointer;scroll-snap-align:center;text-align:center;z-index:3;background:0 0;border:none;padding:0 8px;font-family:inherit;font-size:16px;transition:color .2s,font-size .2s,font-weight .2s;display:block;position:relative}.ob-roller-item.selected{color:var(--ink);font-family:var(--font-serif);letter-spacing:-.02em;font-size:22px;font-style:italic;font-weight:500}.ob-roller-mask{pointer-events:none;z-index:2;height:80px;position:absolute;left:0;right:0}.ob-roller-mask.top{background:linear-gradient(180deg, var(--paper) 0%, var(--paper) 30%, #fff0 100%);top:0}.ob-roller-mask.bottom{background:linear-gradient(0deg, var(--paper) 0%, var(--paper) 30%, #fff0 100%);bottom:0}.ob-roller-band{border-top:1px solid var(--accent-bd);border-bottom:1px solid var(--accent-bd);background:var(--accent-bg);pointer-events:none;z-index:1;border-radius:8px;height:40px;position:absolute;top:80px;left:6px;right:6px}.ob-meds-card{background:var(--paper);border:1px solid var(--line);border-radius:16px;overflow:hidden}.ob-meds-card-head{background:var(--accent-bg);border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:16px 18px 14px;display:flex}.ob-meds-card-icon{background:var(--paper);border:1px solid var(--accent-bd);width:36px;height:36px;color:var(--accent);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.ob-meds-card-title{color:var(--ink);margin-bottom:4px;font-size:14px;font-weight:600}.ob-meds-card-sub{color:var(--muted);font-size:12.5px;line-height:1.5}.ob-meds-card-body{padding:16px 18px}.ob-option.ob-option-noicon{padding-left:18px}.ob-option.ob-option-noicon .ob-option-emoji-icon{display:none}.ob-body{z-index:2;flex:1;width:100%;max-width:720px;margin:0 auto;padding:56px 28px 140px;position:relative}@keyframes ob-slide-in-fwd{0%{opacity:0;filter:blur(8px);transform:translate(40px)translateY(8px)}to{opacity:1;filter:blur();transform:translate(0)translateY(0)}}@keyframes ob-slide-in-back{0%{opacity:0;filter:blur(8px);transform:translate(-40px)translateY(8px)}to{opacity:1;filter:blur();transform:translate(0)translateY(0)}}.ob-enter-forward{animation:.55s cubic-bezier(.2,.7,.2,1) both ob-slide-in-fwd}.ob-enter-backward{animation:.55s cubic-bezier(.2,.7,.2,1) both ob-slide-in-back}.ob-stagger>*{opacity:0;animation:.6s cubic-bezier(.2,.7,.2,1) both ob-fade-up}.ob-stagger>:first-child{animation-delay:80ms}.ob-stagger>:nth-child(2){animation-delay:.16s}.ob-stagger>:nth-child(3){animation-delay:.24s}.ob-stagger>:nth-child(4){animation-delay:.32s}.ob-stagger>:nth-child(5){animation-delay:.4s}.ob-stagger>:nth-child(6){animation-delay:.48s}.ob-stagger>:nth-child(7){animation-delay:.56s}.ob-step-eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);align-items:center;gap:12px;margin-bottom:16px;font-size:11px;display:inline-flex}.ob-step-eyebrow:before{content:"";background:var(--accent);width:18px;height:1px}.ob-title{letter-spacing:-.03em;color:var(--ink);max-width:18ch;margin:0 0 16px;padding-bottom:.05em;font-size:max(30px,min(5vw,52px));font-weight:400;line-height:1.05}.ob-title .serif{font-family:var(--font-serif);color:var(--ink-2);font-style:italic}.ob-subtitle{color:var(--muted);max-width:56ch;margin:0 0 36px;font-size:16px;line-height:1.55}.ob-section{margin-bottom:30px}.ob-section-title{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);align-items:center;gap:8px;margin-bottom:14px;font-size:11px;display:flex}.ob-section-title .muted{font-family:var(--font-sans);color:var(--muted-2);letter-spacing:0;text-transform:none;margin-left:auto;font-size:12px;font-weight:400}.ob-grid-2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ob-grid-3{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.ob-stack{flex-direction:column;gap:8px;display:flex}.ob-option{text-align:left;background:var(--paper);border:1px solid var(--line);cursor:pointer;color:var(--ink);border-radius:14px;align-items:flex-start;gap:12px;width:100%;padding:16px 18px;font-family:inherit;transition:transform .18s cubic-bezier(.2,.7,.2,1),border-color .18s,background .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden}.ob-option:hover{border-color:var(--accent-bd);transform:translateY(-2px);box-shadow:0 14px 28px -16px #4f6fe04d}.ob-option.selected{background:var(--paper-2);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg), 0 14px 28px -14px #4f6fe059;transform:translateY(-2px)}.ob-option.selected:before{content:"";pointer-events:none;background:radial-gradient(circle at 0 0,#4f6fe014 0%,#0000 50%);position:absolute;top:0;bottom:0;left:0;right:0}.ob-option-icon{background:var(--cream);border:1px solid var(--line);width:34px;height:34px;color:var(--accent);border-radius:10px;flex-shrink:0;place-items:center;transition:all .2s;display:grid}.ob-option.selected .ob-option-icon{background:var(--accent);border-color:var(--accent);color:#fff;transform:scale(1.05)}.ob-option-emoji-icon{flex-shrink:0;place-items:center;width:34px;height:34px;font-size:20px;display:grid}.ob-option-body{flex:1;min-width:0}.ob-option-label{color:var(--ink);font-size:14px;font-weight:500;line-height:1.2}.ob-option-desc{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.45}.ob-option-check{background:var(--accent);color:#fff;opacity:0;border-radius:50%;flex-shrink:0;place-items:center;width:20px;height:20px;transition:opacity .2s,transform .3s cubic-bezier(.2,1.7,.4,1);display:grid;position:absolute;top:12px;right:12px;transform:scale(.4)rotate(-90deg)}.ob-option.selected .ob-option-check{opacity:1;transform:scale(1)rotate(0)}.ob-option.wide{padding:14px 18px}.ob-chip{background:var(--paper);border:1px solid var(--line);cursor:pointer;color:var(--ink);border-radius:999px;align-items:center;gap:7px;padding:9px 14px;font-family:inherit;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex;position:relative}.ob-chip:hover{border-color:var(--accent-bd);transform:translateY(-1px)}.ob-chip.selected{background:var(--ink);color:var(--cream);border-color:var(--ink)}.ob-chip-flag{font-size:14px}.ob-chip-wrap{flex-wrap:wrap;gap:8px;display:flex}.ob-input-pair{grid-template-columns:1fr 1fr;gap:12px;display:grid}.ob-field{flex-direction:column;gap:6px;display:flex}.ob-field label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);font-size:10.5px}.ob-field input,.ob-field select{background:var(--paper);border:1px solid var(--line-2);color:var(--ink);-webkit-appearance:none;border-radius:12px;outline:none;padding:13px 15px;font-family:inherit;font-size:15px;transition:all .15s}.ob-field input:focus,.ob-field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.ob-dob-row{grid-template-columns:2fr 1fr 1.3fr;gap:10px;display:grid}.ob-coach{background:var(--paper);border:1px solid var(--line);cursor:pointer;text-align:left;width:100%;color:var(--ink);border-radius:16px;grid-template-columns:52px 1fr auto;align-items:center;gap:16px;padding:18px 20px;font-family:inherit;transition:all .2s;display:grid;position:relative;overflow:hidden}.ob-coach:hover{border-color:var(--accent-bd);transform:translateY(-2px)}.ob-coach.selected{background:var(--ink);color:var(--cream);border-color:var(--ink)}.ob-coach.selected .ob-coach-title{color:var(--cream)}.ob-coach.selected .ob-coach-desc{color:#f4f0e6b3}.ob-coach-icon{background:var(--cream);border:1px solid var(--line);width:52px;height:52px;color:var(--accent);border-radius:50%;flex-shrink:0;place-items:center;font-size:22px;transition:all .2s;display:grid}.ob-coach.selected .ob-coach-icon{background:var(--accent);border-color:var(--accent);color:#fff}.ob-coach-title{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--ink);padding-bottom:.04em;font-size:20px;font-style:italic;line-height:1.1}.ob-coach-desc{color:var(--muted);margin-top:3px;font-size:13px}.ob-coach-check{background:var(--paper-2);border:1px solid var(--line-2);width:28px;height:28px;color:var(--muted);border-radius:50%;flex-shrink:0;place-items:center;transition:all .2s;display:grid}.ob-coach.selected .ob-coach-check{background:var(--cream);color:var(--ink);border-color:var(--cream)}.ob-slider-wrap{background:var(--paper);border:1px solid var(--line);border-radius:14px;margin-bottom:12px;padding:20px 22px}.ob-slider-head{justify-content:space-between;align-items:baseline;margin-bottom:16px;display:flex}.ob-slider-q{color:var(--ink);flex:1;padding-right:12px;font-size:14px;font-weight:500;line-height:1.3}.ob-slider-val{font-family:var(--font-serif);letter-spacing:-.025em;color:var(--accent);flex-shrink:0;font-size:30px;font-style:italic;line-height:1}.ob-slider-val .of{font-family:var(--font-mono);color:var(--muted-2);letter-spacing:.06em;margin-left:2px;font-size:11px;font-style:normal}.ob-slider-bar{grid-template-columns:repeat(5,1fr);gap:5px;height:36px;display:grid}.ob-slider-bar-step{background:var(--cream-2);cursor:pointer;border:none;border-radius:8px;font-family:inherit;transition:all .2s;position:relative}.ob-slider-bar-step:hover{background:var(--line-2)}.ob-slider-bar-step.on{background:var(--accent);box-shadow:0 4px 14px -4px #4f6fe080}.ob-slider-bar-step .n{font-family:var(--font-serif);color:var(--muted-2);letter-spacing:-.02em;place-items:center;font-size:15px;font-style:italic;display:grid;position:absolute;top:0;bottom:0;left:0;right:0}.ob-slider-bar-step.on .n{color:#fff}.ob-slider-foot{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);justify-content:space-between;margin-top:8px;font-size:10px;display:flex}.ob-lang{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ob-lang-btn{background:var(--paper);border:1px solid var(--line);cursor:pointer;color:var(--ink);border-radius:14px;justify-content:center;align-items:center;gap:10px;padding:16px 18px;font-family:inherit;font-size:15px;font-weight:500;transition:background .18s,border-color .18s,color .18s,box-shadow .18s;display:flex}.ob-lang-btn:hover{border-color:var(--accent-bd);background:var(--paper-2)}.ob-lang-btn.selected{background:var(--accent-bg);color:var(--ink);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.ob-lang-flag{font-size:20px}.ob-trust{background:var(--paper);border:1px solid var(--line);border-radius:14px;grid-template-columns:36px 1fr;align-items:center;gap:14px;padding:16px 20px;display:grid}.ob-trust-icon{background:var(--success-bg);width:36px;height:36px;color:var(--success);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.ob-trust-text{color:var(--muted);font-size:13px;line-height:1.5}.ob-welcome-mark{width:120px;height:120px;margin:0 0 24px;position:relative}.ob-welcome-mark:before{content:"";background:radial-gradient(circle, var(--accent-bg) 0%, transparent 70%);z-index:-1;border-radius:50%;animation:3s ease-in-out infinite ob-pulse;position:absolute;top:-30px;bottom:-30px;left:-30px;right:-30px}.ob-footer{z-index:4;background:linear-gradient(180deg, transparent 0%, var(--cream) 30%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:18px 0;position:fixed;bottom:0;left:0;right:0}.ob-footer-inner{grid-template-columns:1fr 1fr;gap:12px;max-width:720px;margin:0 auto;padding:0 28px;display:grid}.ob-back{border:1px solid var(--line-hi);color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;padding:13px 20px;font-family:inherit;font-size:14px;font-weight:500;transition:all .15s}.ob-back:hover{background:var(--paper-2);border-color:var(--ink)}.ob-continue{background:var(--ink);color:var(--cream);cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:13px 24px;font-family:inherit;font-size:14px;font-weight:500;transition:all .18s;display:inline-flex;position:relative;overflow:hidden}.ob-continue:hover:not(:disabled){background:var(--accent);transform:translateY(-2px);box-shadow:0 12px 28px -10px #4f6fe080}.ob-continue:disabled{opacity:.4;cursor:not-allowed}.ob-continue-arrow{transition:transform .2s;display:inline-block}.ob-continue:hover:not(:disabled) .ob-continue-arrow{transform:translate(4px)}.ob-building{text-align:center;padding:30px 0 20px}.ob-building-orbit{width:200px;height:200px;margin:0 auto 32px;position:relative}.ob-building-orbit svg{width:100%;height:100%}.ob-building-orbit-inner{transform-origin:100px 100px;animation:1.6s linear infinite ob-orbit-inner}.ob-building-orbit-outer{transform-origin:100px 100px;animation:2.6s linear infinite reverse ob-orbit-outer}@keyframes ob-orbit-inner{to{transform:rotate(360deg)}}@keyframes ob-orbit-outer{to{transform:rotate(360deg)}}.ob-building-pulse{border:1.5px solid var(--accent);opacity:0;border-radius:50%;animation:2.4s ease-out infinite ob-building-pulse;position:absolute;top:-20px;bottom:-20px;left:-20px;right:-20px}.ob-building-pulse:nth-child(2){animation-delay:.8s}.ob-building-pulse:nth-child(3){animation-delay:1.6s}@keyframes ob-building-pulse{0%{opacity:.6;transform:scale(.85)}to{opacity:0;transform:scale(1.5)}}.ob-building-status{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);height:18px;margin-top:18px;font-size:11px;position:relative}.ob-building-status-line{opacity:0;justify-content:center;animation:5.6s linear infinite ob-building-flip;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.ob-building-status-line:first-child{animation-delay:0s}.ob-building-status-line:nth-child(2){animation-delay:1.4s}.ob-building-status-line:nth-child(3){animation-delay:2.8s}.ob-building-status-line:nth-child(4){animation-delay:4.2s}@keyframes ob-building-flip{0%,22%,to{opacity:0;transform:translateY(6px)}4%,18%{opacity:1;transform:translateY(0)}}.ob-done-mark{background:var(--success);color:#fff;border-radius:50%;place-items:center;width:72px;height:72px;margin:0 auto 20px;animation:.6s cubic-bezier(.2,1.6,.4,1) both ob-done-pop;display:grid;position:relative}@keyframes ob-done-pop{0%{transform:scale(0)}60%{transform:scale(1.15)}to{transform:scale(1)}}.ob-done-mark:after{content:"";border:1px solid var(--success);border-radius:50%;animation:1.5s ease-out ob-done-ring;position:absolute;top:-8px;bottom:-8px;left:-8px;right:-8px}@keyframes ob-done-ring{0%{opacity:.6;transform:scale(.9)}to{opacity:0;transform:scale(1.6)}}.ob-profile-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);text-align:left;margin:24px 0;padding:8px 0;overflow:hidden}.ob-profile-row{border-bottom:1px solid var(--line);opacity:0;grid-template-columns:130px 1fr;align-items:center;padding:13px 20px;animation:.5s cubic-bezier(.2,.7,.2,1) both ob-fade-up;display:grid;transform:translateY(8px)}.ob-profile-row:last-child{border-bottom:none}.ob-profile-key{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);font-size:10px}.ob-profile-value{font-family:var(--font-serif);letter-spacing:-.015em;color:var(--ink);font-size:16px;font-style:italic;line-height:1.2}.ob-insight{background:var(--ink);color:var(--cream);border-radius:var(--radius-lg);text-align:left;margin:8px 0 20px;padding:20px 24px;position:relative;overflow:hidden}.ob-insight:after{content:"";pointer-events:none;background:radial-gradient(circle,#6e89ee33 0%,#0000 65%);width:280px;height:280px;position:absolute;bottom:-100px;right:-100px}.ob-insight-head{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-2);margin-bottom:10px;font-size:10px}.ob-insight-text{font-family:var(--font-serif);letter-spacing:-.01em;color:var(--cream);margin:0;font-size:17px;font-style:italic;line-height:1.55}.ob-final-ctas{flex-direction:column;gap:10px;margin-top:8px;display:flex}.ob-final-cta-primary{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px 26px;font-family:inherit;font-size:14px;font-weight:500;transition:all .18s;display:inline-flex}.ob-final-cta-primary:hover{background:var(--accent-deep);transform:translateY(-2px);box-shadow:0 12px 28px -10px #4f6fe080}.ob-final-cta-secondary{border:1px solid var(--line-hi);color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;width:100%;padding:13px 24px;font-family:inherit;font-size:14px;font-weight:500;transition:all .15s}.ob-final-cta-secondary:hover{background:var(--paper-2);border-color:var(--ink)}.ob-confetti{pointer-events:none;z-index:100;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.ob-confetti-piece{animation:2s cubic-bezier(.15,.5,.4,1) both ob-confetti-fly;position:absolute;top:50%;left:50%}@keyframes ob-confetti-fly{0%{opacity:1;transform:translate(0)rotate(0)scale(1)}to{opacity:0;transform:translate(var(--cx), var(--cy)) rotate(var(--rot)) scale(.5)}}.ob-page .form-control{background:var(--paper);border:1px solid var(--line-2);color:var(--ink);border-radius:12px;outline:none;width:100%;padding:13px 15px;font-family:inherit;font-size:15px;transition:all .15s}.ob-page .form-control:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.ob-page .form-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);margin-bottom:6px;font-size:10.5px;display:block}.ob-page .form-group{margin:0}@media (max-width:600px){.ob-header{padding:16px 80px 16px 20px}.ob-body{padding:16px 20px 120px}.ob-progress-orbit{width:54px;height:54px;top:12px;right:12px}.ob-progress-step{font-size:15px}.ob-title{font-size:max(26px,min(8vw,38px))}.ob-grid-2{grid-template-columns:1fr}.ob-grid-3{grid-template-columns:1fr 1fr}.ob-dob-row,.ob-input-pair{grid-template-columns:1fr}.ob-footer-inner{grid-template-columns:auto 1fr}.ob-coach{grid-template-columns:44px 1fr auto;gap:12px}.ob-coach-icon{width:44px;height:44px;font-size:18px}.ob-coach-title{font-size:17px}.ob-building-orbit{width:160px;height:160px}.ob-profile-row{grid-template-columns:110px 1fr}.ob-option{gap:10px;padding:13px 14px}.ob-welcome-mark{width:90px;height:90px}}@media (max-width:380px){.ob-grid-3,.ob-lang{grid-template-columns:1fr}}
