:root{--bg: #f3eeea;--surface: #faf8f6;--surface-raised: #ffffff;--border: #e4ddd6;--border-subtle: #ece6e0;--text: #2c2520;--text-secondary: #6b5f56;--text-tertiary: #a39890;--med: #5c6ac4;--med-light: #eef0fb;--supplement: #6b8f71;--supplement-light: #edf5ee;--routine: #c4885c;--routine-light: #fbf0e8;--accent: #5c6ac4;--accent-light: #eef0fb;--progress: #6b8f71;--progress-bg: #ddd6cf;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--radius: 14px;--radius-sm: 10px;--radius-xs: 6px;--fs-2xs: .625rem;--fs-xs: .6875rem;--fs-sm: .75rem;--fs-base: .8125rem;--fs-md: .875rem;--fs-lg: 1rem;--fs-xl: 1.125rem;--fs-2xl: 1.375rem;--fs-3xl: 1.75rem;--shadow-sm: 0 1px 2px rgba(44, 37, 32, .04);--shadow-md: 0 2px 8px rgba(44, 37, 32, .06), 0 1px 2px rgba(44, 37, 32, .04);font-family:Outfit,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;color:var(--text);background-color:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-height:100vh;min-height:100dvh;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}html{overscroll-behavior:none}button,.checklist-row,.nav-btn,.theme-toggle{-webkit-user-select:none;user-select:none}.scroll-content{-webkit-overflow-scrolling:touch}#root{padding-bottom:calc(60px + env(safe-area-inset-bottom))}@media (pointer: coarse){.nav-btn{width:40px;height:40px}.theme-toggle{width:38px;height:38px}.checklist-item{padding:14px 16px}.checklist-info{padding:10px;margin:-10px}}#root{max-width:480px;margin:0 auto;padding:0 var(--space-md) var(--space-2xl)}@media (min-width: 768px){#root{max-width:960px;padding:0 var(--space-xl) var(--space-2xl)}}@media (min-width: 1080px){#root{max-width:1100px}}::selection{background:var(--accent-light);color:var(--accent)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #1c1916;--surface: #262220;--surface-raised: #2e2a27;--border: #3d3632;--border-subtle: #332e2a;--text: #e8e0d8;--text-secondary: #a89e94;--text-tertiary: #6e6459;--med: #8b96e0;--med-light: #2a2d42;--supplement: #8fb896;--supplement-light: #253028;--routine: #d4a07a;--routine-light: #382e24;--accent: #8b96e0;--accent-light: #2a2d42;--progress: #8fb896;--progress-bg: #3d3632;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 2px 8px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2)}}:root[data-theme=dark]{--bg: #1c1916;--surface: #262220;--surface-raised: #2e2a27;--border: #3d3632;--border-subtle: #332e2a;--text: #e8e0d8;--text-secondary: #a89e94;--text-tertiary: #6e6459;--med: #8b96e0;--med-light: #2a2d42;--supplement: #8fb896;--supplement-light: #253028;--routine: #d4a07a;--routine-light: #382e24;--accent: #8b96e0;--accent-light: #2a2d42;--progress: #8fb896;--progress-bg: #3d3632;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 2px 8px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2)}.offline-banner{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px var(--space-md);background:var(--routine-light);color:var(--routine);font-size:var(--fs-xs);font-weight:600;letter-spacing:.01em;margin:0 calc(var(--space-md) * -1);animation:offline-slide .3s ease}@keyframes offline-slide{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.sticky-header{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);padding:var(--space-md) 0 var(--space-sm);padding-top:max(var(--space-md),env(safe-area-inset-top));margin:0 calc(var(--space-md) * -1);padding-left:var(--space-md);padding-right:var(--space-md)}.sticky-header:after{content:"";position:absolute;bottom:-12px;left:0;right:0;height:12px;background:linear-gradient(color-mix(in srgb,var(--bg) 50%,transparent),transparent);pointer-events:none}.header-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-sm)}.app-title{font-size:var(--fs-xl);letter-spacing:-.02em;color:var(--text);display:flex;align-items:center;gap:3px}.app-logo{height:26px;width:auto;object-fit:contain;margin-right:3px}.app-title-viva{font-weight:700;font-style:italic}.app-title-routine{font-weight:300}.header-left{display:flex;flex-direction:column;gap:1px;min-width:0}.app-greeting{font-size:var(--fs-sm);font-weight:400;color:var(--text-tertiary);letter-spacing:.01em;margin:0}.app-greeting-name{font-weight:600;color:var(--text-secondary)}.header-mini-rings{display:flex;align-items:center;gap:5px;animation:mini-rings-in .25s ease}.header-mini-rings svg{flex-shrink:0}.header-mini-count{font-size:var(--fs-xs);font-weight:700;color:var(--text-secondary);font-variant-numeric:tabular-nums}@keyframes mini-rings-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media (min-width: 768px){.header-mini-rings{display:none}}.header-right{display:flex;align-items:center;gap:var(--space-sm)}.theme-toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:none;background:var(--surface);color:var(--text-tertiary);cursor:pointer;transition:all .2s ease;padding:0;box-shadow:var(--shadow-sm)}.theme-toggle:active{transform:scale(.92)}@media (hover: hover){.theme-toggle:hover{color:var(--text-secondary);box-shadow:var(--shadow-md)}}.today-badge{font-size:var(--fs-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--accent);background:var(--accent-light);padding:2px 8px;border-radius:10px}.date-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-sm)}.nav-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:none;background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:all .2s ease;padding:0;box-shadow:var(--shadow-sm)}@media (hover: hover){.nav-btn:hover{background:var(--surface-raised);color:var(--text);box-shadow:var(--shadow-md)}}.nav-btn:active{transform:scale(.95)}.date-main{font-size:var(--fs-md);font-weight:600;letter-spacing:-.01em}.rings-mobile-wrap{margin-bottom:var(--space-md)}@media (min-width: 768px){.rings-mobile-wrap{display:none}}.scroll-content{padding-top:var(--space-md)}.content-columns{display:flex;flex-direction:column}.column-main{flex:1;min-width:0}.column-sidebar{display:none}.journal-mobile{display:block}@media (min-width: 768px){.content-columns{flex-direction:row;gap:var(--space-xl)}.column-sidebar{display:block;width:300px;flex-shrink:0}.journal-mobile{display:none}.sidebar-sticky{position:sticky;top:140px;display:flex;flex-direction:column;gap:var(--space-lg)}.column-sidebar .journal-section{border-top:none;margin-top:0;padding-top:0}}@media (min-width: 1080px){.column-sidebar{width:340px}}.rings-card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:var(--space-lg);display:flex;flex-direction:column;align-items:center;gap:var(--space-md)}.rings-visual{position:relative;width:144px;height:144px}.rings-svg{width:100%;height:100%}.rings-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.rings-pct{font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.03em;color:var(--text);font-variant-numeric:tabular-nums;line-height:1}.rings-pct-symbol{font-size:var(--fs-xs);font-weight:700;color:var(--text-tertiary);margin-left:1px;margin-top:2px}.rings-legend{width:100%;display:flex;flex-direction:column;gap:10px;padding-top:var(--space-sm);border-top:1px solid var(--border-subtle)}.rings-legend-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.rings-legend-left{display:flex;align-items:center;gap:6px;min-width:0}.rings-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.rings-legend-label{font-size:var(--fs-sm);font-weight:500;color:var(--text-secondary);white-space:nowrap}.rings-legend-right{display:flex;align-items:center;gap:8px}.rings-legend-count{font-size:var(--fs-sm);font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;min-width:28px;text-align:right}.rings-legend-bar{width:48px;height:4px;border-radius:2px;background:var(--progress-bg);overflow:hidden;flex-shrink:0}.rings-legend-bar-fill{height:100%;border-radius:2px;transition:width .4s cubic-bezier(.4,0,.2,1)}.rings-total{padding-top:var(--space-xs)}.rings-total-count{font-size:var(--fs-base);font-weight:700;color:var(--text)}.rings-total-label{font-size:var(--fs-xs);font-weight:500;color:var(--text-tertiary)}.rings-compact{display:flex;align-items:center;gap:var(--space-md);background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:var(--space-md) var(--space-lg)}.rings-compact-visual{position:relative;width:88px;height:88px;flex-shrink:0}.rings-compact-svg{width:100%;height:100%}.rings-compact-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.rings-compact-pct{font-size:var(--fs-xl);font-weight:700;letter-spacing:-.03em;color:var(--text);font-variant-numeric:tabular-nums;line-height:1}.rings-compact-pct-sym{font-size:var(--fs-2xs);font-weight:700;color:var(--text-tertiary);margin-left:1px;margin-top:1px}.rings-compact-stats{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}.rings-compact-row{display:flex;align-items:center;gap:6px}.rings-compact-label{font-size:var(--fs-sm);font-weight:500;color:var(--text-secondary);flex:1}.rings-compact-count{font-size:var(--fs-sm);font-weight:700;font-variant-numeric:tabular-nums}.checklist-sections{display:flex;flex-direction:column;gap:var(--space-lg)}.time-slot-header{padding:0 var(--space-xs);margin-bottom:var(--space-sm)}.time-slot-title-row{display:flex;align-items:center;justify-content:space-between}.time-slot-title{font-size:var(--fs-base);font-weight:700;letter-spacing:-.01em;color:var(--text)}.time-slot-badge{font-size:var(--fs-2xs);font-weight:600;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.badge-done{color:var(--progress)}.time-slot-subtitle{font-size:var(--fs-xs);color:var(--text-tertiary);margin-top:1px}.time-slot-items{display:flex;flex-direction:column;gap:3px}.checklist-item{padding:12px 14px;background:var(--surface);border:none;border-radius:var(--radius-sm);transition:all .15s ease;text-align:left;width:100%;font-family:inherit;font-size:inherit;color:inherit;box-shadow:var(--shadow-sm);position:relative}.checklist-item:active{transform:scale(.985)}.checklist-item:has(.checklist-actions) .checklist-row{padding-right:44px}.checklist-row{display:flex;align-items:center;gap:12px;cursor:pointer;background:none;border:none;padding:0;margin:0;width:100%;text-align:left;font:inherit;color:inherit}@media (hover: hover){.checklist-item:hover{background:var(--surface-raised);box-shadow:var(--shadow-md)}}.checklist-item.checked{background:var(--surface);box-shadow:none}.checklist-item.checked .checklist-name{color:var(--text-tertiary)}.checklist-item.checked .checklist-dosage{color:var(--text-tertiary);opacity:.7}.checklist-checkbox{width:22px;height:22px;border-radius:var(--radius-xs);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s cubic-bezier(.4,0,.2,1)}.checklist-content{flex:1;min-width:0}.checklist-name-row{display:flex;align-items:center;gap:6px}.checklist-name{font-size:var(--fs-md);font-weight:500;color:var(--text);transition:color .2s ease}.checklist-dosage{font-size:var(--fs-xs);color:var(--text-secondary);display:block;margin-top:1px;transition:all .2s ease}.checklist-actions{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:2px}.checklist-info,.checklist-play{color:var(--text-tertiary);opacity:.35;display:flex;align-items:center;justify-content:center;background:none;border:none;padding:6px;cursor:pointer;border-radius:var(--radius-xs);transition:opacity .15s}.checklist-play{opacity:.7}.checklist-info:active,.checklist-play:active{opacity:.8}@media (hover: hover){.checklist-info:hover{opacity:.6}.checklist-play:hover{opacity:1}}.journal-section{margin-top:var(--space-md);padding-top:var(--space-lg);border-top:1px solid var(--border-subtle)}.journal-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--space-md);padding:0 var(--space-xs)}.journal-header h3{font-size:var(--fs-lg);font-weight:700;letter-spacing:-.02em}.saving-indicator{font-size:var(--fs-2xs);color:var(--text-tertiary)}.journal-textarea{width:100%;padding:16px;border:none;border-radius:var(--radius-sm);background:var(--surface);font-family:inherit;font-size:var(--fs-md);color:var(--text);resize:vertical;min-height:180px;line-height:1.8;transition:box-shadow .2s ease;box-shadow:var(--shadow-sm)}.journal-textarea:focus{outline:none;box-shadow:var(--shadow-md),0 0 0 2px var(--accent-light)}.journal-textarea::placeholder{color:var(--text-tertiary)}.empty-illustration{width:120px;height:120px;object-fit:contain;margin-bottom:var(--space-sm);opacity:.85}.empty-state{text-align:center;padding:var(--space-2xl) var(--space-lg);display:flex;flex-direction:column;align-items:center}.empty-state-title{font-size:var(--fs-lg);font-weight:700;color:var(--text);margin-bottom:var(--space-xs)}.empty-state-text{font-size:var(--fs-md);color:var(--text-tertiary);line-height:1.5}.all-done-message{text-align:center;padding:var(--space-lg) 0;font-size:var(--fs-base);color:var(--progress);font-weight:500}.detail-view{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:var(--bg);display:flex;flex-direction:column;animation:detail-in .25s cubic-bezier(.32,.72,0,1)}@keyframes detail-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.detail-topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);padding-top:max(var(--space-sm),env(safe-area-inset-top));background:var(--bg);border-bottom:1px solid var(--border-subtle);flex-shrink:0;min-height:48px}.detail-back{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;padding:0;flex-shrink:0;transition:all .15s}.detail-back:active{transform:scale(.9)}@media (hover: hover){.detail-back:hover{background:var(--border-subtle);color:var(--text)}}.detail-topbar-title{display:flex;align-items:center;gap:6px;font-size:var(--fs-base);font-weight:600;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-close{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;border:none;background:var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:all .15s;padding:0;flex-shrink:0}.detail-close:active{transform:scale(.9)}@media (hover: hover){.detail-close:hover{background:var(--border);color:var(--text)}}.detail-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.detail-layout{max-width:960px;margin:0 auto;padding:var(--space-lg) var(--space-lg);padding-bottom:max(var(--space-2xl),env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--space-xl)}@media (min-width: 768px){.detail-layout{flex-direction:row;gap:var(--space-2xl);padding:var(--space-xl) var(--space-xl);padding-bottom:var(--space-2xl);align-items:flex-start}}.detail-hero{display:flex;flex-direction:column;gap:var(--space-md)}@media (min-width: 768px){.detail-hero{position:sticky;top:var(--space-xl);width:320px;flex-shrink:0}}.detail-hero-badge{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:16px}.detail-name{font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.03em;color:var(--text);line-height:1.15}.detail-category{font-size:var(--fs-xs);font-weight:600;letter-spacing:.03em;text-transform:uppercase;margin-top:-8px}.detail-description{font-size:var(--fs-md);line-height:1.65;color:var(--text-secondary)}.detail-launch-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:10px;color:#fff;font-size:var(--fs-md);font-weight:600;font-family:inherit;cursor:pointer;margin-top:4px;transition:opacity .15s,transform .15s}.detail-launch-btn:hover{opacity:.9;transform:scale(1.02)}.detail-launch-btn:active{transform:scale(.98)}.detail-facts{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}.detail-fact-card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:12px;display:flex;gap:10px;align-items:flex-start}.detail-fact-card-wide{grid-column:1 / -1}.detail-fact-icon{color:var(--text-tertiary);flex-shrink:0;margin-top:1px}.detail-fact-label{display:block;font-size:var(--fs-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);margin-bottom:1px}.detail-fact-value{display:block;font-size:var(--fs-md);font-weight:600;color:var(--text);line-height:1.3}.detail-freq-dots{display:flex;gap:4px;margin-top:6px}.detail-freq-dot{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:var(--fs-2xs);font-weight:700;letter-spacing:0;background:var(--border-subtle);color:var(--text-tertiary);transition:all .15s}.detail-freq-dot.active{background:var(--accent);color:#fff}.detail-sections{display:flex;flex-direction:column;gap:var(--space-lg);min-width:0;flex:1}.detail-section{display:flex;flex-direction:column;gap:10px}.detail-section-head{display:flex;align-items:center;gap:7px}.detail-section-head h2{font-size:var(--fs-base);font-weight:700;letter-spacing:-.01em;color:var(--text)}.detail-section-head svg{flex-shrink:0;color:var(--text-tertiary)}.detail-head-benefits svg,.detail-head-benefits h2{color:var(--supplement)}.detail-head-warnings svg,.detail-head-warnings h2{color:var(--med)}.detail-head-synergies svg,.detail-head-synergies h2{color:var(--routine)}.detail-section-body{font-size:var(--fs-md);line-height:1.65;color:var(--text-secondary)}.detail-section-warnings{background:var(--med-light);border-radius:var(--radius-sm);padding:14px 16px}.detail-section-storage{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:14px 16px;gap:6px}.detail-section-storage .detail-section-body{font-size:var(--fs-base)}.detail-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.detail-list li{font-size:var(--fs-md);line-height:1.55;color:var(--text-secondary);padding-left:18px;position:relative}.detail-list li:before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%}.detail-list-benefits li:before{background:var(--supplement);opacity:.45}.detail-list-warnings li:before{background:var(--med);opacity:.55}.detail-list-synergies li:before{background:var(--routine);opacity:.45}.schedule-loading{display:flex;align-items:center;justify-content:center;padding:var(--space-xl) 0;color:var(--text-tertiary)}.auth-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh}.auth-loading-text{font-size:var(--fs-2xl);letter-spacing:-.03em;color:var(--text-tertiary);animation:auth-pulse 1.5s ease-in-out infinite;display:flex;align-items:center;gap:3px}.auth-loading-text .auth-logo{height:30px;opacity:.5}@keyframes auth-pulse{0%,to{opacity:.4}50%{opacity:1}}.landing{position:relative;min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;overflow:hidden;width:100vw;margin-left:calc(-50vw + 50%)}.landing:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:url(/landing-bg.jpg) center/cover no-repeat;opacity:.35;z-index:0}.landing:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,transparent 30%,var(--bg) 85%);z-index:0}.landing-ambient{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.landing-float-shape{position:absolute;border-radius:50%;background:var(--text);animation:landing-drift 20s ease-in-out infinite alternate}@keyframes landing-drift{0%{transform:translateY(0) rotate(0)}to{transform:translateY(-30px) rotate(15deg)}}.landing-inner{position:relative;z-index:1;display:flex;align-items:center;gap:72px;max-width:920px;width:100%;padding:48px 32px}.landing-hero{flex:1;display:flex;flex-direction:column;gap:28px}.landing-brand{display:flex;align-items:center;gap:10px}.landing-logo{height:48px;width:auto;object-fit:contain}.landing-title{font-size:var(--fs-3xl);letter-spacing:-.03em;color:var(--text)}.landing-tagline{font-size:var(--fs-xl);font-weight:400;line-height:1.6;color:var(--text);letter-spacing:-.01em}.landing-tagline-sub{color:var(--text-secondary);font-size:var(--fs-lg)}.landing-categories{display:flex;flex-wrap:wrap;gap:8px}.landing-cat{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:var(--fs-base);font-weight:500;color:var(--cat-color);background:var(--cat-bg);letter-spacing:.01em}.landing-features{display:flex;flex-direction:column;gap:18px}.landing-feature{display:flex;align-items:flex-start;gap:14px}.landing-feature-icon{flex-shrink:0;width:34px;height:34px;border-radius:10px;background:var(--surface);border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.landing-feature-title{font-size:var(--fs-md);font-weight:600;color:var(--text);letter-spacing:-.01em;margin-bottom:2px}.landing-feature-desc{font-size:var(--fs-base);color:var(--text-tertiary);line-height:1.5}.landing-auth{flex-shrink:0;width:380px;display:flex;flex-direction:column;gap:20px}.auth-card{display:flex;flex-direction:column;gap:24px;padding:32px;background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:20px;box-shadow:var(--shadow-md),0 8px 32px #2c25200a}.auth-card-head{text-align:center}.auth-card-title{font-size:var(--fs-xl);font-weight:700;letter-spacing:-.02em;color:var(--text);margin-bottom:4px}.auth-card-sub{font-size:var(--fs-base);color:var(--text-tertiary);line-height:1.5}.auth-logo{height:36px;width:auto;object-fit:contain;margin-right:4px}.landing-footer{text-align:center;font-size:var(--fs-xs);color:var(--text-tertiary);letter-spacing:.01em}@media (max-width: 768px){.landing-inner{flex-direction:column;gap:40px;padding:32px 20px;align-items:stretch}.landing-hero{align-items:center;text-align:center;gap:20px}.landing-title{font-size:var(--fs-3xl)}.landing-tagline{font-size:var(--fs-lg)}.landing-categories{justify-content:center}.landing-features{display:none}.landing-auth{width:100%;max-width:400px;align-self:center}.auth-card{padding:24px}}.auth-form{display:flex;flex-direction:column;gap:var(--space-md)}.auth-divider{display:flex;align-items:center;gap:12px;font-size:var(--fs-xs);color:var(--text-tertiary)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border-subtle)}.auth-input-group{display:flex;flex-direction:column;gap:6px}.auth-label{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);padding-left:2px}.auth-input-wrap{position:relative}.auth-input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none}.auth-input{width:100%;padding:14px;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-family:inherit;font-size:var(--fs-md);color:var(--text);transition:all .2s ease;box-shadow:var(--shadow-sm)}.auth-input-wrap .auth-input{padding-left:42px}.auth-input-password{padding-right:44px}.auth-password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;padding:4px;color:var(--text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xs);transition:color .15s}.auth-password-toggle:active{color:var(--text-secondary)}@media (hover: hover){.auth-password-toggle:hover{color:var(--text-secondary)}}.auth-input:focus{outline:none;border-color:var(--accent);box-shadow:var(--shadow-md),0 0 0 3px var(--accent-light)}.auth-input::placeholder{color:var(--text-tertiary)}.auth-button{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);width:100%;padding:14px;border:none;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-family:inherit;font-size:var(--fs-md);font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #5c6ac440}.auth-button:disabled{opacity:.5;cursor:not-allowed}.auth-button:not(:disabled):active{transform:scale(.98)}@media (hover: hover){.auth-button:not(:disabled):hover{box-shadow:0 4px 16px #5c6ac459}}.auth-spinner{animation:auth-spin .8s linear infinite}@keyframes auth-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-hint{text-align:center;font-size:var(--fs-sm);color:var(--text-tertiary);line-height:1.6}.auth-link{background:none;border:none;padding:0;font:inherit;font-size:inherit;color:var(--accent);cursor:pointer;font-weight:500}.auth-link:active{opacity:.7}@media (hover: hover){.auth-link:hover{text-decoration:underline}}.auth-confirm{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);text-align:center}.auth-confirm-icon{width:48px;height:48px;border-radius:50%;background:var(--accent-light);color:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-xs)}.auth-confirm-heading{font-size:var(--fs-xl);font-weight:700;letter-spacing:-.02em;color:var(--text)}.auth-confirm-text{font-size:var(--fs-md);color:var(--text);line-height:1.6}.auth-confirm-subtext{font-size:var(--fs-base);color:var(--text-tertiary);line-height:1.6;margin-bottom:var(--space-sm)}.auth-button-secondary{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);border:1.5px solid var(--border)}@media (hover: hover){.auth-button-secondary:not(:disabled):hover{box-shadow:var(--shadow-md)}}.auth-error{font-size:var(--fs-base);color:#c45c5c;text-align:center;padding:10px 14px;background:#fdf0f0;border-radius:var(--radius-xs)}:root[data-theme=dark] .auth-error,:root:not([data-theme=light]) .auth-error{background:#3a2222;color:#e09090}@media (prefers-color-scheme: light){:root:not([data-theme=dark]) .auth-error{background:#fdf0f0;color:#c45c5c}}.med-player{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#e8e4e0;overflow:hidden}.med-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:#080610;overflow:hidden}.med-bg-orb{position:absolute;border-radius:50%;filter:blur(120px);opacity:.3;will-change:transform}.med-bg-orb-1{width:50vmax;height:50vmax;background:radial-gradient(circle,#3a2870 0%,transparent 70%);top:-15%;left:-15%;animation:med-drift-1 45s ease-in-out infinite}.med-bg-orb-2{width:45vmax;height:45vmax;background:radial-gradient(circle,#1a4a5a 0%,transparent 70%);bottom:-10%;right:-15%;animation:med-drift-2 55s ease-in-out infinite}.med-bg-orb-3{width:40vmax;height:40vmax;background:radial-gradient(circle,#2a1a4a 0%,transparent 70%);top:30%;left:40%;animation:med-drift-3 60s ease-in-out infinite}.med-bg-orb-4{width:35vmax;height:35vmax;background:radial-gradient(circle,#14383a 0%,transparent 70%);top:10%;right:10%;animation:med-drift-4 50s ease-in-out infinite}@keyframes med-drift-1{0%,to{transform:translate(0) scale(1);opacity:.3}33%{transform:translate(4vw,3vh) scale(1.08);opacity:.35}66%{transform:translate(-3vw,5vh) scale(.95);opacity:.25}}@keyframes med-drift-2{0%,to{transform:translate(0) scale(1);opacity:.3}33%{transform:translate(-5vw,-2vh) scale(1.05);opacity:.25}66%{transform:translate(3vw,-4vh) scale(1.1);opacity:.35}}@keyframes med-drift-3{0%,to{transform:translate(0) scale(1);opacity:.25}50%{transform:translate(3vw,-3vh) scale(1.12);opacity:.35}}@keyframes med-drift-4{0%,to{transform:translate(0) scale(1);opacity:.2}40%{transform:translate(-4vw,2vh) scale(1.06);opacity:.3}80%{transform:translate(2vw,-3vh) scale(.94);opacity:.22}}.med-bg-aurora{position:absolute;top:25%;left:-20%;right:-20%;height:40%;background:linear-gradient(90deg,transparent 0%,rgba(60,40,120,.06) 15%,rgba(30,80,100,.1) 35%,rgba(60,50,90,.08) 55%,rgba(20,60,80,.06) 75%,transparent 100%);filter:blur(40px);animation:med-aurora 35s ease-in-out infinite;opacity:.7}@keyframes med-aurora{0%,to{transform:translate(0) scaleY(1);opacity:.7}50%{transform:translate(5%) scaleY(1.3);opacity:1}}.med-bg-stars{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.med-bg-star{position:absolute;background:#c8d2f0cc;border-radius:50%;opacity:0;animation:med-twinkle ease-in-out infinite}@keyframes med-twinkle{0%,to{opacity:0;transform:scale(.8)}50%{opacity:.5;transform:scale(1)}}.med-close,.bw-close{position:fixed;top:16px;right:16px;z-index:210;color:#fff9;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.med-close:hover,.bw-close:hover{color:#fff;background:#ffffff26}.med-select,.bw-select{position:relative;z-index:5;display:flex;flex-direction:column;align-items:center;padding:24px;max-width:420px;width:100%;max-height:100vh;max-height:100dvh;overflow-y:auto}.med-title,.bw-title{font-size:var(--fs-3xl);font-weight:700;letter-spacing:-.02em;margin-bottom:6px;color:#fff}.med-subtitle,.bw-subtitle{font-size:var(--fs-md);color:#ffffff80;margin-bottom:28px}.med-connect{display:flex;flex-direction:column;align-items:center;gap:16px;padding-top:20px}.med-connect-icon{width:64px;height:64px;border-radius:50%;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:#fff6}.med-connect-text{font-size:var(--fs-base);color:#ffffff73;text-align:center;max-width:280px;line-height:1.5}.med-connect-btn{display:flex;align-items:center;gap:8px;padding:12px 28px;border-radius:24px;background:#1db954;color:#fff;font-size:var(--fs-md);font-weight:600;border:none;cursor:pointer;transition:all .2s;font-family:inherit;margin-top:4px}.med-connect-btn:hover{background:#1ed760;transform:scale(1.03)}.med-search{width:100%;position:relative;margin-bottom:14px}.med-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#ffffff4d;pointer-events:none}.med-search-input{width:100%;padding:10px 14px 10px 38px;border-radius:10px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);color:#fff;font-size:var(--fs-md);font-family:inherit;outline:none;transition:border-color .2s}.med-search-input::placeholder{color:#ffffff40}.med-search-input:focus{border-color:#fff3}.med-search-spinner{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#fff6;animation:spin 1s linear infinite}@keyframes spin{to{transform:translateY(-50%) rotate(360deg)}}.med-categories{width:100%;display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px}.med-cat-pill{padding:5px 12px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#ffffff73;font-size:var(--fs-xs);font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit;white-space:nowrap}.med-cat-pill.active{background:#ffffff1a;color:#fff;border-color:#fff3}.med-cat-pill:hover{background:#ffffff0f;color:#ffffffb3}.med-sdk-loading{display:flex;align-items:center;gap:8px;color:#fff6;font-size:var(--fs-base);padding:16px 0}.med-sdk-loading .med-search-spinner{position:static;transform:none}.med-track-art{width:40px;height:40px;border-radius:6px;object-fit:cover;flex-shrink:0}.med-track-dur{font-size:var(--fs-xs);color:#ffffff40;font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:auto;padding-left:8px}.med-session-art{width:120px;height:120px;border-radius:50%;object-fit:cover;position:absolute;opacity:.25;filter:blur(1px)}.med-empty{color:#ffffff4d;font-size:var(--fs-base);padding:24px 0}.med-back-btn{padding:10px 20px;border-radius:20px;border:1px solid rgba(255,255,255,.1);background:transparent;color:#ffffff73;font-size:var(--fs-base);cursor:pointer;transition:all .2s;font-family:inherit;margin-top:8px}.med-back-btn:hover{color:#fffc;border-color:#fff3}.med-timer-select{width:100%;margin-bottom:24px}.med-timer-label{font-size:var(--fs-xs);font-weight:600;color:#fff6;text-transform:uppercase;letter-spacing:.08em;display:block;margin-bottom:10px}.med-timer-pills{display:flex;gap:6px;flex-wrap:wrap}.med-timer-pill{padding:6px 14px;border-radius:20px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#ffffff80;font-size:var(--fs-base);font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit}.med-timer-pill.active{background:#ffffff1f;color:#fff;border-color:#ffffff40}.med-timer-pill:hover{background:#ffffff14;color:#fffc}.med-tracks,.bw-patterns{width:100%;display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.med-track-card,.bw-pattern-card{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.06);cursor:pointer;transition:all .2s;width:100%;text-align:left;font:inherit;color:inherit}.med-track-card:hover,.bw-pattern-card:hover{background:#ffffff1a;border-color:#ffffff1f}.med-track-play-icon,.bw-pattern-icon{width:32px;height:32px;border-radius:50%;background:#ffffff1a;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#ffffffb3}.med-track-info,.bw-pattern-info{flex:1;min-width:0}.med-track-title,.bw-pattern-name{font-size:var(--fs-md);font-weight:500;color:#ffffffe6;display:block}.med-track-artist{font-size:var(--fs-xs);color:#fff6}.bw-pattern-desc{font-size:var(--fs-xs);color:#fff6;display:block;margin-top:2px}.med-silent-btn{padding:12px 24px;border-radius:24px;border:1px solid rgba(255,255,255,.15);background:transparent;color:#fff9;font-size:var(--fs-base);font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit}.med-silent-btn:hover{color:#fff;border-color:#ffffff4d;background:#ffffff0d}.med-session{position:relative;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;padding:24px;width:100%;max-width:360px;margin:0 auto}.med-breath-ring{position:relative;width:220px;height:220px;display:flex;align-items:center;justify-content:center}.med-progress-ring{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.med-breath-circle{width:120px;height:120px;border-radius:50%;background:radial-gradient(circle at 40% 40%,rgba(120,100,180,.3) 0%,rgba(60,80,120,.15) 50%,transparent 70%);animation:med-breathe 8s ease-in-out infinite;filter:blur(1px)}@keyframes med-breathe{0%,to{transform:scale(.85);opacity:.4}50%{transform:scale(1.15);opacity:.7}}.med-center-text{position:absolute;display:flex;flex-direction:column;align-items:center;pointer-events:none}.med-remaining{font-size:var(--fs-3xl);font-weight:300;color:#fff;letter-spacing:.02em;font-variant-numeric:tabular-nums}.med-remaining-label{font-size:var(--fs-2xs);color:#ffffff59;text-transform:uppercase;letter-spacing:.1em}.med-now-playing{text-align:center;width:100%;display:flex;flex-direction:column;align-items:center}.med-np-title{font-size:var(--fs-xl);font-weight:600;color:#fff;margin-bottom:4px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.med-np-artist{font-size:var(--fs-base);color:#fff6;margin-bottom:20px}.med-seek{display:flex;align-items:center;gap:10px;width:100%;max-width:280px;margin-bottom:16px}.med-seek-time{font-size:var(--fs-2xs);color:#ffffff59;font-variant-numeric:tabular-nums;width:32px;flex-shrink:0}.med-seek-time:last-child{text-align:right}.med-seek-bar{flex:1;height:3px;border-radius:2px;background:#ffffff1a;overflow:hidden}.med-seek-fill{height:100%;background:#ffffff80;border-radius:2px;transition:width .3s linear}.med-controls{display:flex;align-items:center;justify-content:center;gap:20px}.med-ctrl-btn{color:#ffffff80;background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;transition:color .15s}.med-ctrl-btn:hover{color:#fff}.med-ctrl-play{width:56px;height:56px;border-radius:50%;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.med-ctrl-play:hover{background:#ffffff2e}.med-ctrl-mute{margin-left:4px}.bw-player{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#e8e4e0;overflow:hidden}.bw-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:#080d14;overflow:hidden}.bw-bg-gradient{position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;background:radial-gradient(circle at 50% 50%,hsla(var(--bw-hue, 200),50%,20%,.3) 0%,hsla(var(--bw-hue, 200),40%,10%,.15) 30%,transparent 60%);transition:background 1.5s ease}.bw-session{position:relative;z-index:5;display:flex;flex-direction:column;align-items:center;gap:32px;padding:24px}.bw-session-header{text-align:center}.bw-session-name{font-size:var(--fs-xl);font-weight:600;color:#fff;margin-bottom:4px}.bw-session-meta{display:flex;align-items:center;gap:12px;justify-content:center}.bw-session-cycles{font-size:var(--fs-sm);color:#fff6}.bw-hz-badge{font-size:var(--fs-xs);color:#ffffff80;padding:2px 8px;border-radius:10px;background:#ffffff14;letter-spacing:.03em;font-variant-numeric:tabular-nums}.bw-pattern-hz{font-size:var(--fs-2xs);color:#ffffff59;margin-left:8px;padding:1px 6px;border-radius:8px;background:#ffffff0f;font-weight:400;vertical-align:middle}.bw-circle-wrap{position:relative;width:240px;height:240px;display:flex;align-items:center;justify-content:center}.bw-circle{position:absolute;width:140px;height:140px;transition:transform .15s ease-out}.bw-circle-inner{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(circle at 40% 35%,hsla(var(--bw-hue, 200),60%,55%,.45) 0%,hsla(var(--bw-hue, 200),50%,35%,.2) 50%,transparent 70%);transition:background 1.5s ease}.bw-circle-ring{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:2px solid hsla(var(--bw-hue, 200),50%,60%,.25);transition:border-color 1.5s ease}.bw-circle-glow{position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;border-radius:50%;background:radial-gradient(circle,hsla(var(--bw-hue, 200),50%,45%,.12) 0%,transparent 70%);filter:blur(12px);transition:background 1.5s ease}.bw-phase-label{position:absolute;display:flex;flex-direction:column;align-items:center;pointer-events:none;z-index:2}.bw-phase-text{font-size:var(--fs-xl);font-weight:500;color:#fff;text-transform:uppercase;letter-spacing:.12em}.bw-phase-countdown{font-size:var(--fs-3xl);font-weight:200;color:#fffc;line-height:1.1;font-variant-numeric:tabular-nums}.bw-phase-dots{display:flex;gap:8px}.bw-phase-dot{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 14px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);transition:all .3s}.bw-phase-dot.active{background:#ffffff1a;border-color:#fff3}.bw-phase-dot.done{opacity:.4}.bw-dot-label{font-size:var(--fs-2xs);font-weight:500;color:#ffffff80;text-transform:uppercase;letter-spacing:.06em}.bw-dot-time{font-size:var(--fs-xs);color:#ffffff4d;font-variant-numeric:tabular-nums}.bw-controls{display:flex;align-items:center;gap:24px}.bw-ctrl-btn{color:#fff6;background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;transition:color .15s}.bw-ctrl-btn:hover{color:#fff}.bw-ctrl-play{width:56px;height:56px;border-radius:50%;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.bw-ctrl-play:hover{background:#ffffff2e}.bw-elapsed{font-size:var(--fs-base);color:#ffffff4d;font-variant-numeric:tabular-nums;min-width:40px;text-align:center}@supports (padding-top: env(safe-area-inset-top)){.med-close,.bw-close,.nback-close{top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right))}}.nback{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#e8e4e0;overflow:hidden}.nback-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0812;z-index:0}.nback-bg-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.25}.nback-bg-orb-1{width:40vmax;height:40vmax;top:-10%;left:-10%;background:radial-gradient(circle,#5c6ac4 0%,transparent 70%);animation:nback-drift 30s ease-in-out infinite alternate}.nback-bg-orb-2{width:35vmax;height:35vmax;bottom:-15%;right:-10%;background:radial-gradient(circle,#6b8f71 0%,transparent 70%);animation:nback-drift 25s ease-in-out infinite alternate-reverse}.nback-bg-stars{position:absolute;top:0;right:0;bottom:0;left:0}@keyframes nback-drift{0%{transform:translate(0)}to{transform:translate(30px,-20px)}}.nback-close{position:fixed;top:16px;right:16px;z-index:10;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:#ffffff80;cursor:pointer;transition:all .15s}.nback-close:hover{background:#ffffff1f;color:#fff}.nback-title{font-size:var(--fs-3xl);font-weight:300;letter-spacing:.04em;color:#fff}.nback-subtitle{font-size:var(--fs-base);color:#ffffff59;margin-top:4px}.nback-setup{position:relative;z-index:5;display:flex;flex-direction:column;align-items:center;gap:28px;padding:24px;max-width:380px;text-align:center}.nback-header{display:flex;flex-direction:column;align-items:center}.nback-level-select{display:flex;align-items:center;gap:16px}.nback-level-label{font-size:var(--fs-sm);color:#fff6;text-transform:uppercase;letter-spacing:.08em}.nback-level-control{display:flex;align-items:center;gap:12px}.nback-level-btn{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:#ffffff0f;color:#fff9;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}.nback-level-btn:hover:not(:disabled){background:#ffffff1f;color:#fff}.nback-level-btn:disabled{opacity:.3;cursor:not-allowed}.nback-level-value{font-size:var(--fs-3xl);font-weight:300;color:#fff;min-width:40px;text-align:center;font-variant-numeric:tabular-nums}.nback-voice-select{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%}.nback-voice-options{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.nback-voice-pill{display:flex;flex-direction:column;align-items:center;gap:1px;padding:8px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;cursor:pointer;transition:all .15s}.nback-voice-pill:hover{background:#ffffff0f;border-color:#ffffff26}.nback-voice-pill.active{background:#5c6ac426;border-color:#5c6ac466}.nback-voice-name{font-size:var(--fs-base);font-weight:500;color:#ffffffb3}.nback-voice-pill.active .nback-voice-name{color:#8b96e0}.nback-voice-label{font-size:var(--fs-2xs);color:#ffffff40}.nback-instructions{font-size:var(--fs-base);color:#ffffff73;line-height:1.6;max-width:320px}.nback-instructions strong{color:#ffffffb3}.nback-keys-hint{font-size:var(--fs-xs);color:#ffffff40}.nback-keys-hint strong{display:inline-block;padding:2px 6px;border-radius:4px;background:#ffffff14;color:#ffffff80;font-size:var(--fs-2xs)}.nback-start-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border:none;border-radius:14px;background:#5c6ac4cc;color:#fff;font-family:inherit;font-size:var(--fs-md);font-weight:600;cursor:pointer;transition:all .2s}.nback-start-btn:hover{background:#5c6ac4f2;transform:scale(1.02)}.nback-stats-mini{display:flex;gap:20px}.nback-stat{display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:#ffffff59}.nback-loading{position:relative;z-index:5;display:flex;flex-direction:column;align-items:center;gap:16px;color:#ffffff80;font-size:var(--fs-base)}.nback-spinner{animation:auth-spin .8s linear infinite}.nback-load-bar{width:200px;height:3px;border-radius:2px;background:#ffffff14;overflow:hidden}.nback-load-fill{height:100%;background:#5c6ac499;border-radius:2px;transition:width .3s}.nback-game{position:relative;z-index:5;display:flex;flex-direction:column;align-items:center;gap:28px;padding:24px;width:100%;max-width:400px}.nback-progress{width:100%;height:2px;border-radius:1px;background:#ffffff0f;overflow:hidden}.nback-progress-fill{height:100%;background:#5c6ac480;transition:width .3s linear}.nback-game-info{display:flex;align-items:center;justify-content:space-between;width:100%}.nback-n-badge{font-size:var(--fs-base);font-weight:600;color:#fff9;padding:4px 12px;border-radius:10px;background:#ffffff0f}.nback-trial-count{font-size:var(--fs-xs);color:#ffffff4d;font-variant-numeric:tabular-nums}.nback-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:220px;height:220px;transition:box-shadow .2s}.nback-flash-correct{box-shadow:0 0 40px #8fb8964d}.nback-flash-wrong{box-shadow:0 0 40px #c45c5c4d}.nback-cell{border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);transition:all .15s}.nback-cell.active{background:#5c6ac4b3;border-color:#5c6ac4e6;box-shadow:0 0 20px #5c6ac466}.nback-buttons{display:flex;gap:16px;width:100%}.nback-match-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:18px 12px;border:1.5px solid rgba(255,255,255,.1);border-radius:16px;background:#ffffff0a;color:#fff9;font-family:inherit;font-size:var(--fs-base);font-weight:500;cursor:pointer;transition:all .15s;position:relative}.nback-match-btn:not(:disabled):hover{background:#ffffff14;border-color:#fff3}.nback-match-btn:not(:disabled):active,.nback-match-btn.pressed{transform:scale(.96)}.nback-match-position.pressed{background:#5c6ac433;border-color:#5c6ac480;color:#8b96e0}.nback-match-audio.pressed{background:#6b8f7133;border-color:#6b8f7180;color:#8fb896}.nback-match-btn:disabled{opacity:.3;cursor:not-allowed}.nback-key-hint{font-size:var(--fs-2xs);padding:1px 5px;border-radius:3px;background:#ffffff0f;color:#ffffff40}.nback-results{position:relative;z-index:5;display:flex;flex-direction:column;align-items:center;gap:24px;padding:24px;max-width:360px;text-align:center}.nback-results-title{font-size:var(--fs-xl);font-weight:300;color:#fff;letter-spacing:.02em}.nback-score-ring{position:relative;width:140px;height:140px}.nback-score-svg{width:100%;height:100%}.nback-score-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.nback-score-pct{font-size:var(--fs-3xl);font-weight:300;color:#fff;font-variant-numeric:tabular-nums}.nback-score-label{font-size:var(--fs-xs);color:#ffffff59}.nback-score-details{display:flex;flex-direction:column;gap:10px;width:100%}.nback-score-row{display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:10px;background:#ffffff0a}.nback-score-row svg{color:#ffffff4d;flex-shrink:0}.nback-score-name{font-size:var(--fs-base);color:#fff9;flex:1;text-align:left}.nback-score-val{font-size:var(--fs-md);font-weight:600;color:#fff;font-variant-numeric:tabular-nums}.nback-score-sub{font-size:var(--fs-2xs);color:#ffffff40;min-width:60px;text-align:right}.nback-next-n{font-size:var(--fs-base)}.nback-next-up{color:#8fb896}.nback-next-down{color:#d4a07a}.nback-next-same{color:#fff6}.nback-result-actions{display:flex;flex-direction:column;gap:10px;width:100%}.nback-done-btn{padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:transparent;color:#ffffff80;font-family:inherit;font-size:var(--fs-base);cursor:pointer;transition:all .15s}.nback-done-btn:hover{background:#ffffff0f;color:#fff}.settings-content{max-width:480px;margin:0 auto;padding:var(--space-lg) var(--space-md);padding-bottom:max(var(--space-2xl),env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--space-lg)}.settings-section-title{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);margin-bottom:var(--space-sm);padding-left:2px}.settings-section-desc{font-size:var(--fs-sm);color:var(--text-tertiary);margin-top:-4px;margin-bottom:var(--space-sm);padding-left:2px}.settings-card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius);padding:var(--space-md)}.settings-card-flush{padding:0;overflow:hidden}.settings-profile-row{display:flex;align-items:center;gap:var(--space-md)}.settings-avatar{width:40px;height:40px;border-radius:50%;background:var(--border-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);flex-shrink:0}.settings-profile-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.settings-name-input{font-family:inherit;font-size:var(--fs-md);font-weight:600;color:var(--text);background:transparent;border:none;outline:none;padding:0;width:100%}.settings-name-input::placeholder{color:var(--text-tertiary);font-weight:400}.settings-profile-email{font-size:var(--fs-sm);color:var(--text-tertiary)}.settings-theme-row{display:flex;gap:var(--space-sm)}.settings-theme-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;border:1.5px solid var(--border-subtle);border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);font-family:inherit;font-size:var(--fs-sm);font-weight:500;cursor:pointer;transition:all .15s}.settings-theme-btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}@media (hover: hover){.settings-theme-btn:not(.active):hover{border-color:var(--border);color:var(--text-secondary)}}.settings-voice-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}.settings-voice-btn{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1.5px solid var(--border-subtle);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-family:inherit;cursor:pointer;transition:all .15s;text-align:left}.settings-voice-btn.active{border-color:var(--accent);background:var(--accent-light);color:var(--accent)}.settings-voice-btn svg{flex-shrink:0;opacity:.5}.settings-voice-btn.active svg{opacity:1}.settings-voice-info{display:flex;flex-direction:column;gap:1px;min-width:0}.settings-voice-name{font-size:var(--fs-base);font-weight:600;color:inherit}.settings-voice-label{font-size:var(--fs-xs);color:var(--text-tertiary)}.settings-voice-btn.active .settings-voice-label{color:var(--accent);opacity:.7}@media (hover: hover){.settings-voice-btn:not(.active):hover{border-color:var(--border);color:var(--text)}}.settings-schedule-group{border-bottom:1px solid var(--border-subtle)}.settings-schedule-group:last-child{border-bottom:none}.settings-schedule-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px var(--space-md);border:none;background:transparent;font-family:inherit;font-size:var(--fs-md);font-weight:500;color:var(--text);cursor:pointer;transition:background .15s}.settings-schedule-header-left{display:flex;align-items:center;gap:10px}.settings-schedule-icon{width:28px;height:28px;border-radius:var(--radius-xs);display:flex;align-items:center;justify-content:center;flex-shrink:0}.settings-schedule-header-right{display:flex;align-items:center;gap:6px}.settings-schedule-count{font-size:var(--fs-sm);font-weight:600;color:var(--text-tertiary);background:var(--border-subtle);padding:2px 8px;border-radius:10px}.settings-chevron{color:var(--text-tertiary);transition:transform .2s ease}.settings-chevron.expanded{transform:rotate(90deg)}@media (hover: hover){.settings-schedule-header:hover{background:var(--surface-raised)}}.settings-schedule-items{padding:0 var(--space-md) 10px;display:flex;flex-direction:column;gap:2px;animation:settings-expand .2s ease}@keyframes settings-expand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.settings-schedule-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px 8px 38px;border-radius:var(--radius-xs)}.settings-schedule-item-name{font-size:var(--fs-base);color:var(--text)}.settings-schedule-item-dosage{font-size:var(--fs-xs);color:var(--text-tertiary);text-align:right}.settings-signout{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;border:1px solid var(--border-subtle);border-radius:var(--radius);background:transparent;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-base);font-weight:500;cursor:pointer;transition:all .15s}@media (hover: hover){.settings-signout:hover{background:var(--surface);color:#c45c5c;border-color:#c45c5c40}}.settings-footer{text-align:center;font-size:var(--fs-xs);color:var(--text-tertiary);opacity:.6;padding-top:var(--space-sm)}.wo-player{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;color:#e8e4e0;overflow:hidden}.wo-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(145deg,#0f1114,#161a1f 40%,#1a1510)}.wo-topbar{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);padding-top:max(var(--space-sm),env(safe-area-inset-top));min-height:48px}.wo-topbar-left{display:flex;flex-direction:column;gap:1px}.wo-topbar-title{font-size:var(--fs-md);font-weight:600;color:#fff}.wo-topbar-focus{font-size:var(--fs-xs);color:#fff6}.wo-topbar-right{display:flex;align-items:center;gap:12px}.wo-elapsed{display:flex;align-items:center;gap:4px;font-size:var(--fs-sm);font-weight:600;color:#fff6;font-variant-numeric:tabular-nums}.wo-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:none;background:#ffffff14;color:#ffffff80;cursor:pointer;transition:all .15s}.wo-close:hover{background:#ffffff26;color:#fff}.wo-progress-bar{position:relative;z-index:5;height:3px;background:#ffffff0f}.wo-progress-fill{height:100%;background:#8fb896;border-radius:2px;transition:width .4s ease}.wo-day-nav{position:relative;z-index:5;display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 0}.wo-day-nav-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.1);background:transparent;color:#fff6;cursor:pointer;transition:all .15s}.wo-day-nav-btn:hover{background:#ffffff14;color:#fff}.wo-day-nav-label{font-size:var(--fs-xs);font-weight:600;color:#ffffff4d;font-variant-numeric:tabular-nums}.wo-scroll{position:relative;z-index:5;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:0 var(--space-md);padding-bottom:max(var(--space-2xl),env(safe-area-inset-bottom))}.wo-plan-grid{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-lg) 0;max-width:480px;margin:0 auto}.wo-plan-card{display:flex;flex-direction:column;gap:10px;padding:var(--space-md);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);background:#ffffff08;text-align:left;font-family:inherit;color:inherit;cursor:pointer;transition:all .2s}.wo-plan-card:hover{background:#ffffff0f;border-color:#ffffff26}.wo-plan-header{display:flex;align-items:center;gap:10px;color:#d4a07a}.wo-plan-name{font-size:var(--fs-lg);font-weight:600;color:#fff}.wo-plan-desc{font-size:var(--fs-base);color:#ffffff73;line-height:1.5;margin:0}.wo-plan-meta{display:flex;gap:6px;flex-wrap:wrap}.wo-plan-tag{font-size:var(--fs-xs);font-weight:600;padding:3px 8px;border-radius:6px;background:#ffffff0f;color:#ffffff80}.wo-plan-days{display:flex;gap:6px;flex-wrap:wrap}.wo-plan-day-chip{font-size:var(--fs-xs);font-weight:500;padding:3px 8px;border-radius:6px;border:1px solid rgba(255,255,255,.08);color:#ffffff59}.wo-exercise-list{display:flex;flex-direction:column;gap:8px;padding:8px 0;max-width:520px;margin:0 auto}.wo-exercise-card{border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-sm);background:#ffffff05;overflow:hidden;transition:border-color .2s}.wo-exercise-card:has(.wo-exercise-body){border-color:#ffffff1f}.wo-ex-done{opacity:.5}.wo-exercise-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 14px;border:none;background:transparent;font-family:inherit;color:inherit;cursor:pointer}.wo-exercise-header-left{display:flex;align-items:center;gap:12px;text-align:left}.wo-exercise-num{width:22px;height:22px;border-radius:50%;background:#ffffff0f;display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:700;color:#ffffff59;flex-shrink:0}.wo-exercise-title-wrap{display:flex;flex-direction:column;gap:2px}.wo-exercise-name{font-size:var(--fs-md);font-weight:600;color:#fff}.wo-exercise-target{font-size:var(--fs-xs);color:#ffffff59}.wo-exercise-note{color:#ffffff40}.wo-exercise-header-right{display:flex;align-items:center;gap:8px;color:#ffffff40}.wo-ex-check{color:#8fb896}.wo-exercise-body{padding:0 14px 14px;display:flex;flex-direction:column;gap:12px;animation:wo-expand .2s ease}@keyframes wo-expand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.wo-exercise-meta-row{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.wo-muscle-tags{display:flex;gap:4px;flex-wrap:wrap}.wo-muscle-tag{font-size:var(--fs-2xs);font-weight:600;padding:2px 6px;border-radius:4px;border:1px solid;text-transform:uppercase;letter-spacing:.03em}.wo-info-toggle{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;border:1px solid rgba(255,255,255,.1);background:transparent;font-family:inherit;font-size:var(--fs-xs);font-weight:500;color:#fff6;cursor:pointer;transition:all .15s}.wo-info-toggle:hover,.wo-info-toggle.active{background:#ffffff0f;color:#ffffffb3}.wo-info-panel{display:flex;flex-direction:column;gap:12px;padding:12px;border-radius:8px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);animation:wo-expand .2s ease}.wo-info-section h4{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#ffffff59;margin:0 0 6px}.wo-info-list{margin:0;padding-left:18px;font-size:var(--fs-base);color:#fff9;line-height:1.6}.wo-info-list li{margin-bottom:4px}.wo-sets-table{display:flex;flex-direction:column;gap:4px}.wo-sets-header{display:flex;align-items:center;gap:8px;padding:0 4px 4px;font-size:var(--fs-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#fff3}.wo-set-row{display:flex;align-items:center;gap:8px;padding:2px 4px;border-radius:6px;transition:background .15s}.wo-set-done{background:#8fb8960f}.wo-set-col-num{width:28px;text-align:center;font-size:var(--fs-sm);font-weight:600;color:#ffffff40;flex-shrink:0}.wo-set-col-weight,.wo-set-col-reps{flex:1}.wo-set-col-duration,.wo-set-input-duration{flex:2}.wo-set-col-done{width:32px}.wo-set-input{flex:1;min-width:0;padding:7px 10px;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:#ffffff0a;color:#fff;font-family:inherit;font-size:var(--fs-base);font-weight:500;font-variant-numeric:tabular-nums;text-align:center;transition:border-color .15s}.wo-set-input::placeholder{color:#ffffff26}.wo-set-input:focus{outline:none;border-color:#ffffff40;background:#ffffff0f}.wo-set-input:disabled{opacity:.4}.wo-set-check{width:32px;height:32px;border-radius:50%;border:1.5px solid rgba(255,255,255,.12);background:transparent;color:#fff3;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;flex-shrink:0}.wo-set-check:hover{border-color:#8fb896;color:#8fb896}.wo-set-check.checked{background:#8fb896;border-color:#8fb896;color:#fff}.wo-add-set{display:flex;align-items:center;justify-content:center;gap:4px;padding:6px;border:1px dashed rgba(255,255,255,.08);border-radius:6px;background:transparent;font-family:inherit;font-size:var(--fs-xs);font-weight:500;color:#ffffff40;cursor:pointer;transition:all .15s}.wo-add-set:hover{background:#ffffff0a;color:#ffffff80;border-color:#ffffff26}.wo-rest-overlay{position:absolute;bottom:0;left:0;right:0;z-index:10;display:flex;justify-content:center;padding:var(--space-md);padding-bottom:max(var(--space-lg),env(safe-area-inset-bottom));animation:wo-rest-in .3s ease}@keyframes wo-rest-in{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.wo-rest-content{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 24px;background:#14181ef2;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);min-width:200px}.wo-rest-label{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#ffffff4d}.wo-rest-time{font-size:var(--fs-3xl);font-weight:300;color:#fff;font-variant-numeric:tabular-nums}.wo-rest-bar{width:100%;height:3px;border-radius:2px;background:#ffffff0f;overflow:hidden}.wo-rest-bar-fill{height:100%;background:#d4a07a;border-radius:2px;transition:width 1s linear}.wo-rest-skip{display:flex;align-items:center;gap:4px;padding:6px 14px;border:none;border-radius:6px;background:#ffffff0f;font-family:inherit;font-size:var(--fs-xs);font-weight:500;color:#fff6;cursor:pointer;transition:all .15s}.wo-rest-skip:hover{background:#ffffff1a;color:#fff}.wo-finish-area{padding:var(--space-lg) 0;max-width:520px;margin:0 auto}.wo-finish-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;border:none;border-radius:var(--radius);background:#8fb896;color:#0f1114;font-family:inherit;font-size:var(--fs-md);font-weight:600;cursor:pointer;transition:all .15s}.wo-finish-btn:hover{background:#a3c8a9}.wo-finish-btn:disabled{background:#ffffff0f;color:#fff3;cursor:not-allowed}.wo-summary{display:flex;flex-direction:column;align-items:center;gap:20px;padding:var(--space-xl) 0;max-width:400px;margin:0 auto;text-align:center}.wo-summary-icon{color:#d4a07a}.wo-summary-title{font-size:var(--fs-2xl);font-weight:300;color:#fff;margin:0}.wo-summary-subtitle{font-size:var(--fs-base);color:#ffffff59;margin:-8px 0 0}.wo-summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:12px;width:100%}.wo-summary-stat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;border-radius:var(--radius-sm);background:#ffffff08;border:1px solid rgba(255,255,255,.06)}.wo-summary-stat-val{font-size:var(--fs-2xl);font-weight:600;color:#fff;font-variant-numeric:tabular-nums}.wo-summary-stat-label{font-size:var(--fs-2xs);font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:#ffffff4d}.wo-summary-exercises{display:flex;flex-direction:column;gap:6px;width:100%;text-align:left}.wo-summary-ex-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:8px 12px;border-radius:8px;background:#ffffff08}.wo-summary-ex-name{font-size:var(--fs-base);font-weight:600;color:#ffffffb3}.wo-summary-ex-detail{font-size:var(--fs-xs);color:#ffffff4d;font-variant-numeric:tabular-nums;text-align:right}.wo-done-btn{width:100%;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);background:transparent;color:#ffffff80;font-family:inherit;font-size:var(--fs-md);font-weight:500;cursor:pointer;transition:all .15s}.wo-done-btn:hover{background:#ffffff0f;color:#fff}.wo-back{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:none;background:#ffffff0f;color:#ffffff80;cursor:pointer;transition:all .15s;flex-shrink:0}.wo-back:hover{background:#ffffff1f;color:#fff}.wo-topbar-left{display:flex;align-items:center;gap:10px}.wo-topbar-left>div{display:flex;flex-direction:column;gap:1px}.wo-exercise-meta-actions{display:flex;gap:6px}.wo-plan-custom{border-color:#d4a07a26}.wo-plan-custom:hover{border-color:#d4a07a4d}.wo-plan-tag-smart{color:#d4a07a;background:#d4a07a1a}.wo-custom-content{max-width:520px;margin:0 auto;padding:var(--space-md) 0;display:flex;flex-direction:column;gap:var(--space-lg)}.wo-custom-section-title{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#ffffff4d;margin:0 0 10px}.wo-custom-added{display:flex;flex-direction:column;gap:6px}.wo-custom-added-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:8px;background:#8fb8960f;border:1px solid rgba(143,184,150,.12)}.wo-custom-added-info{display:flex;flex-direction:column;gap:2px}.wo-custom-added-name{font-size:var(--fs-base);font-weight:600;color:#fff}.wo-custom-added-detail{font-size:var(--fs-xs);color:#ffffff59}.wo-custom-prev{color:#d4a07ab3}.wo-custom-remove{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:none;background:#ffffff0f;color:#ffffff4d;cursor:pointer;transition:all .15s}.wo-custom-remove:hover{background:#c45c5c26;color:#c45c5c}.wo-custom-section{display:flex;flex-direction:column}.wo-custom-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--space-md)}.wo-custom-suggestion{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;font-family:inherit;color:#fff9;cursor:pointer;transition:all .15s}.wo-custom-suggestion:hover{background:#ffffff0f;border-color:#ffffff26;color:#fff}.wo-custom-sug-name{font-size:var(--fs-sm);font-weight:500}.wo-custom-sug-prev{font-size:var(--fs-2xs);color:#d4a07a99}.wo-custom-search{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff08;margin-bottom:10px;color:#ffffff4d}.wo-custom-search input{flex:1;background:transparent;border:none;outline:none;font-family:inherit;font-size:var(--fs-base);color:#fff}.wo-custom-search input::placeholder{color:#fff3}.wo-custom-filters{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:12px}.wo-custom-filter{padding:4px 10px;border-radius:20px;border:1px solid rgba(255,255,255,.08);background:transparent;font-family:inherit;font-size:var(--fs-xs);font-weight:500;color:#ffffff59;cursor:pointer;transition:all .15s}.wo-custom-filter:hover{border-color:#fff3;color:#fff9}.wo-custom-filter.active{background:#ffffff14;border-color:#fff3;color:#fff}.wo-custom-exercise-list{display:flex;flex-direction:column;gap:4px}.wo-custom-exercise-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.04);background:transparent;font-family:inherit;color:#fff6;cursor:pointer;transition:all .15s;text-align:left}.wo-custom-exercise-row:hover{background:#ffffff08;border-color:#ffffff1a;color:#ffffffb3}.wo-custom-exercise-row.added{background:#8fb8960f;border-color:#8fb89626;color:#8fb896}.wo-custom-ex-info{display:flex;flex-direction:column;gap:4px;min-width:0}.wo-custom-ex-name{font-size:var(--fs-base);font-weight:600;color:#fffc}.wo-custom-exercise-row.added .wo-custom-ex-name{color:#fff}.wo-custom-ex-meta{display:flex;align-items:center;gap:8px}.wo-custom-ex-prev{font-size:var(--fs-2xs);color:#d4a07a99;font-variant-numeric:tabular-nums}.wo-mid-add{max-width:520px;margin:0 auto;padding:4px 0}.tab-bar{position:fixed;bottom:0;left:0;right:0;z-index:50;display:flex;justify-content:center;background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border-top:1px solid color-mix(in srgb,var(--border-subtle) 60%,transparent);padding-bottom:env(safe-area-inset-bottom)}.tab-bar:before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px;background:linear-gradient(transparent,color-mix(in srgb,var(--bg) 50%,transparent));pointer-events:none}.tab-item{flex:1;max-width:140px;display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 0 8px;border:none;background:none;color:var(--text-tertiary);font-family:inherit;font-size:var(--fs-2xs);font-weight:500;letter-spacing:.02em;cursor:pointer;transition:color .15s ease,transform .15s ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;position:relative}.tab-item.active{color:var(--accent)}.tab-item.active svg{transform:scale(1.08)}.tab-item:active{transform:scale(.92)}@media (hover: hover){.tab-item:hover{color:var(--text-secondary)}.tab-item.active:hover{color:var(--accent)}}@keyframes view-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.workouts-view,.nutrition-view,.coach-view{animation:view-enter .2s ease-out}.workouts-view{min-height:100dvh;display:flex;flex-direction:column}.workouts-header{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) 0 var(--space-sm);padding-top:max(var(--space-md),env(safe-area-inset-top));margin:0 calc(var(--space-md) * -1);padding-left:var(--space-md);padding-right:var(--space-md)}.workouts-header:after{content:"";position:absolute;bottom:-12px;left:0;right:0;height:12px;background:linear-gradient(color-mix(in srgb,var(--bg) 50%,transparent),transparent);pointer-events:none}.workouts-title{font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.02em;color:var(--text)}.workouts-scroll{flex:1;padding:var(--space-md) 0;padding-bottom:calc(72px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--space-md)}.wk-cta{display:flex;align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm);text-align:left;font-family:inherit}.wk-cta:active{transform:scale(.98)}@media (hover: hover){.wk-cta:hover{background:var(--surface-raised);box-shadow:var(--shadow-md)}}.wk-cta-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-sm);background:var(--routine-light);color:var(--routine);flex-shrink:0}.wk-cta-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.wk-cta-label{font-size:var(--fs-md);font-weight:600;color:var(--text)}.wk-cta-detail{font-size:var(--fs-sm);color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wk-cta-arrow{color:var(--text-tertiary);flex-shrink:0}.wk-week-stats{display:flex;gap:var(--space-sm)}.wk-stat-card{flex:1;display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border-subtle);color:var(--text-secondary)}.wk-stat-card svg{color:var(--routine);flex-shrink:0}.wk-stat-val{font-size:var(--fs-xl);font-weight:700;font-variant-numeric:tabular-nums;color:var(--text)}.wk-stat-label{font-size:var(--fs-xs);color:var(--text-tertiary)}.wk-section{display:flex;flex-direction:column;gap:var(--space-sm)}.wk-section-title{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);padding-left:2px}.wk-log-list{display:flex;flex-direction:column;gap:1px;background:var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--border-subtle)}.wk-log-card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--surface);width:100%;border:none;font-family:inherit;cursor:pointer;text-align:left;transition:background .15s ease;-webkit-tap-highlight-color:transparent}.wk-log-card:active{background:var(--border-subtle)}@media (hover: hover){.wk-log-card:hover{background:var(--surface-raised)}}.wk-log-arrow{color:var(--text-tertiary);flex-shrink:0;opacity:.4}.wk-log-date{display:flex;flex-direction:column;align-items:center;width:40px;flex-shrink:0}.wk-log-day{font-size:var(--fs-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary)}.wk-log-datenum{font-size:var(--fs-xs);font-weight:500;color:var(--text-secondary);font-variant-numeric:tabular-nums}.wk-log-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.wk-log-name{font-size:var(--fs-base);font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wk-log-meta{display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--text-tertiary)}.wk-log-meta>span:not(:last-child):after{content:"·";margin-left:6px;opacity:.5}.wk-log-plan{font-weight:600;color:var(--routine)}.wk-loading{display:flex;justify-content:center;padding:var(--space-2xl) 0}.wk-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:var(--space-2xl) var(--space-lg);text-align:center;color:var(--text-tertiary)}.wk-empty-title{font-size:var(--fs-md);font-weight:600;color:var(--text-secondary)}.wk-empty-text{font-size:var(--fs-base);max-width:260px;line-height:1.5}.wkd-content{max-width:560px;margin:0 auto;padding:var(--space-lg) var(--space-md);padding-bottom:max(var(--space-2xl),env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--space-lg)}.wkd-header-section{display:flex;flex-direction:column;gap:var(--space-md)}.wkd-row{display:flex;gap:var(--space-sm)}.wkd-field{display:flex;flex-direction:column;gap:4px}.wkd-field-grow{flex:1;min-width:0}.wkd-label{display:flex;align-items:center;gap:4px;font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.wkd-input{padding:9px 12px;border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--surface);color:var(--text);font-family:inherit;font-size:var(--fs-md);font-weight:500;transition:border-color .2s ease}.wkd-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.wkd-input-num{width:100px;text-align:center;font-variant-numeric:tabular-nums}.wkd-stats{display:flex;flex-wrap:wrap;gap:6px}.wkd-stat-tag{font-size:var(--fs-xs);font-weight:500;padding:3px 8px;border-radius:20px;background:var(--surface);border:1px solid var(--border-subtle);color:var(--text-secondary)}.wkd-exercises{display:flex;flex-direction:column;gap:var(--space-sm)}.wkd-exercise{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.wkd-ex-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-sm);padding:var(--space-sm) var(--space-md)}.wkd-ex-title{display:flex;align-items:flex-start;gap:var(--space-sm);min-width:0}.wkd-ex-num{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--border-subtle);color:var(--text-tertiary);font-size:var(--fs-xs);font-weight:700;flex-shrink:0;margin-top:1px}.wkd-ex-name{font-size:var(--fs-base);font-weight:600;color:var(--text)}.wkd-ex-muscles{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}.wkd-muscle-tag{font-size:var(--fs-2xs);font-weight:600;padding:1px 6px;border-radius:20px;border:1px solid;letter-spacing:.02em}.wkd-ex-remove{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:50%;background:none;color:var(--text-tertiary);cursor:pointer;transition:all .15s ease;flex-shrink:0}.wkd-ex-remove:hover{background:var(--border-subtle);color:#d46060}.wkd-sets{border-top:1px solid var(--border-subtle)}.wkd-sets-header{display:flex;align-items:center;gap:6px;padding:6px var(--space-md);background:var(--bg)}.wkd-sets-header>span{font-size:var(--fs-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.wkd-set-num{width:28px;text-align:center}.wkd-set-wt,.wkd-set-rp{flex:1}.wkd-set-dur{flex:2}.wkd-set-dn{width:30px}.wkd-set-row{display:flex;align-items:center;gap:6px;padding:4px var(--space-md)}.wkd-set-row .wkd-set-num{font-size:var(--fs-xs);font-weight:600;color:var(--text-tertiary)}.wkd-set-row.done{opacity:.55}.wkd-set-input{flex:1;min-width:0;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--surface-raised);color:var(--text);font-family:inherit;font-size:var(--fs-base);font-weight:500;font-variant-numeric:tabular-nums;text-align:center;transition:border-color .2s ease}.wkd-set-input:focus{outline:none;border-color:var(--accent)}.wkd-set-input-wide{flex:2}.wkd-set-check{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--border);background:none;color:transparent;cursor:pointer;transition:all .15s ease;flex-shrink:0}.wkd-set-check.checked{background:var(--progress);border-color:var(--progress);color:#fff}.wkd-actions{display:flex;flex-direction:column;gap:var(--space-sm);padding-top:var(--space-sm)}.wkd-save{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);width:100%;padding:12px;border:none;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-family:inherit;font-size:var(--fs-md);font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #5c6ac433}.wkd-save:active{transform:scale(.98)}.wkd-save:disabled{opacity:.6;cursor:not-allowed}@media (hover: hover){.wkd-save:not(:disabled):hover{box-shadow:0 4px 16px #5c6ac44d}}.wkd-delete{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:none;color:var(--text-tertiary);font-family:inherit;font-size:var(--fs-base);font-weight:500;cursor:pointer;transition:all .15s ease}.wkd-delete:hover{border-color:#d46060;color:#d46060}.wkd-delete-confirm{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:10px;border:1px solid #d46060;border-radius:var(--radius-sm);background:#d460600f}.wkd-delete-msg{font-size:var(--fs-base);font-weight:500;color:#d46060}.wkd-delete-yes{padding:5px 14px;border:none;border-radius:var(--radius-xs);background:#d46060;color:#fff;font-family:inherit;font-size:var(--fs-sm);font-weight:600;cursor:pointer}.wkd-delete-yes:disabled{opacity:.6}.wkd-delete-no{padding:5px 14px;border:1px solid var(--border);border-radius:var(--radius-xs);background:none;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:500;cursor:pointer}.floating-timer{position:fixed;bottom:calc(52px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:45;width:calc(100% - 32px);max-width:448px;background:#14181ef2;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);overflow:hidden;animation:float-timer-in .3s ease}.floating-timer.complete{border-color:#6b8f7166}@keyframes float-timer-in{0%{transform:translate(-50%) translateY(20px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.floating-timer-progress{position:absolute;top:0;left:0;height:2px;background:#d4a07a;transition:width .15s linear}.floating-timer-content{display:flex;align-items:center;gap:10px;padding:10px 14px}.floating-timer-label{flex:1;font-size:var(--fs-xs);font-weight:500;color:#ffffff80;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.floating-timer-time{font-size:var(--fs-lg);font-weight:500;color:#fff;font-variant-numeric:tabular-nums}.floating-timer-actions{display:flex;gap:4px}.floating-timer-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:#ffffff14;color:#ffffff80;font-size:var(--fs-xs);cursor:pointer;transition:all .15s}.floating-timer-btn:hover{background:#ffffff26;color:#fff}.toast-container{position:fixed;top:max(16px,env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:100;display:flex;flex-direction:column;gap:8px;width:calc(100% - 32px);max-width:400px;pointer-events:none}.toast{display:flex;align-items:center;gap:10px;padding:10px 14px;border:none;border-radius:var(--radius-sm);background:var(--surface-raised);box-shadow:var(--shadow-md),0 4px 20px #0000001a;font-family:inherit;font-size:var(--fs-base);font-weight:500;color:var(--text);cursor:pointer;pointer-events:auto;animation:toast-in .3s ease;text-align:left;width:100%}@keyframes toast-in{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.toast-icon{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:var(--fs-xs);font-weight:700;flex-shrink:0}.toast-success .toast-icon{background:var(--supplement-light);color:var(--supplement)}.toast-error .toast-icon{background:#d460601a;color:#d46060}.toast-info .toast-icon{background:var(--accent-light);color:var(--accent)}.toast-message{flex:1;line-height:1.3}.wo-timer-actions{display:flex;gap:8px}.wo-timer-complete .wo-rest-content{border-color:#6b8f7166}.wo-timer-complete .wo-rest-time{color:#8fb896}.wo-timer-btn{color:#d4a07a!important;border-color:#d4a07a4d!important}.settings-health-profile-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 14px;border:none;border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-family:inherit;font-size:var(--fs-md);font-weight:500;cursor:pointer;transition:all .15s}.settings-health-profile-btn:hover{background:var(--surface-raised)}.settings-health-title{display:block;font-size:var(--fs-base);font-weight:500;color:var(--text)}.settings-health-subtitle{display:block;font-size:var(--fs-xs);font-weight:400;color:var(--text-tertiary);margin-top:1px}.hp-content{padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-md)}.hp-section{display:flex;flex-direction:column;gap:var(--space-sm)}.hp-section-title{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary)}.hp-card{background:var(--surface);border-radius:var(--radius-sm);padding:14px}.hp-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hp-field{display:flex;flex-direction:column;gap:4px}.hp-label{display:flex;align-items:center;gap:4px;font-size:var(--fs-xs);font-weight:500;color:var(--text-secondary)}.hp-input{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--bg);color:var(--text);font-family:inherit;font-size:var(--fs-base);font-weight:500;outline:none;transition:border-color .15s;width:100%}.hp-input:focus{border-color:var(--accent)}.hp-input::placeholder{color:var(--text-tertiary)}.hp-field-hint{font-size:var(--fs-2xs);color:var(--text-tertiary);margin-top:1px}.hp-toggle-row{display:flex;gap:6px}.hp-toggle-btn{flex:1;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius-xs);background:none;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:500;cursor:pointer;transition:all .15s}.hp-toggle-btn.active{border-color:var(--accent);background:var(--accent-light);color:var(--accent)}.hp-select-grid{display:flex;flex-wrap:wrap;gap:6px}.hp-select-btn{padding:6px 12px;border:1px solid var(--border);border-radius:20px;background:none;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);font-weight:500;cursor:pointer;transition:all .15s}.hp-select-btn.active{border-color:var(--accent);background:var(--accent-light);color:var(--accent)}.hp-goal-grid{display:flex;flex-wrap:wrap;gap:6px}.hp-goal-btn{padding:7px 14px;border:1px solid var(--border);border-radius:20px;background:none;color:var(--text-secondary);font-family:inherit;font-size:var(--fs-sm);font-weight:500;cursor:pointer;transition:all .15s}.hp-goal-btn.active{border-color:var(--supplement);background:var(--supplement-light);color:var(--supplement)}.hp-suggest-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px dashed var(--border);border-radius:var(--radius-xs);background:none;color:var(--accent);font-family:inherit;font-size:var(--fs-sm);font-weight:500;cursor:pointer;transition:all .15s;width:100%}.hp-suggest-btn:hover{border-color:var(--accent);background:var(--accent-light)}.hp-chevron-down{transform:rotate(90deg)}.hp-suggested{padding:14px;background:var(--accent-light);border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--accent) 20%,transparent)}.hp-suggested-desc{font-size:var(--fs-xs);color:var(--text-secondary);margin-bottom:12px;line-height:1.4}.hp-suggested-macros{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.hp-suggested-macro{display:flex;flex-direction:column;align-items:center;gap:2px}.hp-suggested-val{font-size:var(--fs-xl);font-weight:600;color:var(--accent);font-variant-numeric:tabular-nums}.hp-suggested-label{font-size:var(--fs-2xs);font-weight:500;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.hp-apply-btn{width:100%;padding:8px;border:none;border-radius:var(--radius-xs);background:var(--accent);color:#fff;font-family:inherit;font-size:var(--fs-sm);font-weight:600;cursor:pointer;transition:opacity .15s}.hp-apply-btn:hover{opacity:.9}.hp-textarea{width:100%;padding:10px;border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--bg);color:var(--text);font-family:inherit;font-size:var(--fs-base);line-height:1.5;resize:vertical;outline:none;transition:border-color .15s}.hp-textarea:focus{border-color:var(--accent)}.hp-textarea::placeholder{color:var(--text-tertiary)}.hp-save-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;border:none;border-radius:var(--radius-sm);background:var(--supplement);color:#fff;font-family:inherit;font-size:var(--fs-base);font-weight:600;cursor:pointer;transition:opacity .15s;margin-bottom:var(--space-lg)}.hp-save-btn:hover{opacity:.9}.hp-save-btn:disabled{opacity:.6;cursor:not-allowed}.hp-pdf-card{padding:0;overflow:hidden}.hp-pdf-upload-btn{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-md);border:none;background:none;cursor:pointer;font-family:inherit;text-align:left;transition:background .15s}.hp-pdf-upload-btn:active{background:var(--border-subtle)}.hp-pdf-upload-btn:disabled{opacity:.5;cursor:not-allowed}.hp-pdf-upload-btn>svg{color:var(--accent);flex-shrink:0}.hp-pdf-upload-text{display:flex;flex-direction:column;gap:2px}.hp-pdf-upload-title{font-size:var(--fs-base);font-weight:600;color:var(--text)}.hp-pdf-upload-hint{font-size:var(--fs-2xs);color:var(--text-tertiary)}.hp-pdf-status{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);font-size:var(--fs-base);color:var(--text-secondary)}.hp-pdf-result{padding:var(--space-sm);display:flex;flex-direction:column;gap:var(--space-sm)}.hp-pdf-result-header{display:flex;align-items:center;gap:6px;font-size:var(--fs-sm);font-weight:600;color:var(--supplement);padding:0 4px}.hp-pdf-preview{display:flex;flex-wrap:wrap;gap:4px;padding:0 4px}.hp-pdf-tag{display:inline-block;padding:3px 8px;border-radius:10px;background:var(--border-subtle);font-size:var(--fs-2xs);font-weight:500;color:var(--text-secondary)}.hp-pdf-actions{display:flex;gap:6px;padding:4px}.hp-pdf-actions .hp-apply-btn{flex:1}.hp-pdf-dismiss{padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:none;color:var(--text-tertiary);font-family:inherit;font-size:var(--fs-xs);font-weight:500;cursor:pointer;transition:all .15s}.hp-pdf-dismiss:active{opacity:.7}.nutrition-view{min-height:100dvh;display:flex;flex-direction:column}.nt-date-nav{display:flex;align-items:center;justify-content:center;gap:var(--space-sm)}.nt-date-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:all .15s}.nt-date-btn:active{opacity:.7;transform:scale(.95)}.nt-date-label{font-size:var(--fs-base);font-weight:600;color:var(--text);min-width:120px;text-align:center}.nt-macro-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-xs);padding:var(--space-sm) 0}.nt-ring-wrap{display:flex;flex-direction:column;align-items:center;gap:2px}.nt-ring-svg{width:56px;height:56px}.nt-ring-text{position:absolute;display:flex;flex-direction:column;align-items:center;line-height:1.1}.nt-ring-wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px}.nt-ring-text{position:absolute;top:50%;left:50%;transform:translate(-50%,calc(-50% - 2px));display:flex;flex-direction:column;align-items:center;pointer-events:none}.nt-ring-val{font-size:var(--fs-xs);font-weight:700;color:var(--text);line-height:1}.nt-ring-target{font-size:var(--fs-2xs);color:var(--text-tertiary);line-height:1.2}.nt-ring-label{font-size:var(--fs-2xs);font-weight:500;color:var(--text-tertiary);letter-spacing:.02em}.nt-no-targets{padding:var(--space-md);text-align:center;color:var(--text-tertiary);font-size:var(--fs-base);line-height:1.5;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.nt-totals-bar{display:flex;align-items:center;justify-content:center;gap:var(--space-xs);padding:8px var(--space-sm);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--fs-xs);color:var(--text-secondary)}.nt-total-val{font-weight:700;color:var(--text)}.nt-total-sep{color:var(--text-tertiary)}.nt-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:var(--space-2xl) var(--space-md);color:var(--text-tertiary)}.nt-empty-title{font-size:var(--fs-md);font-weight:600;color:var(--text-secondary);margin:0}.nt-empty-text{font-size:var(--fs-sm);margin:0;text-align:center}.nt-meal-list{display:flex;flex-direction:column;gap:6px}.nt-meal-card{display:flex;align-items:center;gap:var(--space-sm);padding:10px var(--space-sm);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);transition:all .15s ease}.nt-meal-card:active{transform:scale(.985)}.nt-meal-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--border-subtle);color:var(--text-secondary);flex-shrink:0}.nt-meal-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.nt-meal-name{font-size:var(--fs-base);font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nt-meal-macros{display:flex;gap:6px;font-size:var(--fs-2xs);color:var(--text-tertiary)}.nt-meal-macro{white-space:nowrap}.nt-macro-protein{color:var(--supplement);font-weight:600}.nt-meal-delete{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:var(--radius-sm);background:none;color:var(--text-tertiary);cursor:pointer;transition:all .15s;flex-shrink:0}.nt-meal-delete:active{color:#d46060;background:#d460601a}.nt-add-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:12px;border:1px dashed var(--border);border-radius:var(--radius-sm);background:none;color:var(--accent);font-family:inherit;font-size:var(--fs-base);font-weight:600;cursor:pointer;transition:all .15s}.nt-add-btn:active{opacity:.7;transform:scale(.98)}.nt-add-content{display:flex;flex-direction:column;gap:var(--space-lg);padding:var(--space-md)}.nt-add-section{display:flex;flex-direction:column;gap:var(--space-sm)}.nt-add-section-title{font-size:var(--fs-sm);font-weight:600;color:var(--text-secondary);display:flex;align-items:center;gap:4px;margin:0}.nt-add-field{display:flex;flex-direction:column;gap:4px}.nt-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.nt-quick-btn{display:flex;flex-direction:column;gap:2px;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);text-align:left;cursor:pointer;transition:all .15s;font-family:inherit}.nt-quick-btn:active{opacity:.7;transform:scale(.97)}.nt-quick-name{font-size:var(--fs-xs);font-weight:600;color:var(--text)}.nt-quick-macro{font-size:var(--fs-2xs);color:var(--text-tertiary)}.nt-type-row{display:flex;gap:4px}.nt-type-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:8px 4px;border:1px solid var(--border);border-radius:var(--radius-sm);background:none;color:var(--text-tertiary);font-family:inherit;font-size:var(--fs-2xs);font-weight:500;cursor:pointer;transition:all .15s}.nt-type-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.nt-type-btn:active{opacity:.7}.nt-submit-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:12px;border:none;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-family:inherit;font-size:var(--fs-base);font-weight:600;cursor:pointer;transition:opacity .15s;margin-top:var(--space-xs)}.nt-submit-btn:hover{opacity:.9}.nt-submit-btn:disabled{opacity:.5;cursor:not-allowed}.coach-view{min-height:100dvh;display:flex;flex-direction:column}.coach-header-actions{display:flex;align-items:center;gap:6px}.coach-clear-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--border);border-radius:var(--radius-sm);background:none;color:var(--text-tertiary);cursor:pointer;transition:all .15s}.coach-clear-btn:active{color:#d46060;background:#d460601a}.coach-messages{flex:1;overflow-y:auto;padding:0 0 var(--space-sm);display:flex;flex-direction:column;gap:var(--space-sm)}.coach-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:var(--space-2xl) var(--space-md);color:var(--text-tertiary);text-align:center}.coach-empty-title{font-size:var(--fs-lg);font-weight:700;color:var(--text);margin:0}.coach-empty-text{font-size:var(--fs-base);margin:0;max-width:280px}.coach-suggestions{display:flex;flex-direction:column;gap:6px;margin-top:var(--space-sm);width:100%;max-width:320px}.coach-suggestion-btn{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);font-family:inherit;font-size:var(--fs-xs);text-align:left;cursor:pointer;transition:all .15s}.coach-suggestion-btn:active{opacity:.7;transform:scale(.98)}.coach-msg{display:flex;gap:var(--space-xs);padding:0 var(--space-xs)}.coach-msg-icon{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.coach-msg-user .coach-msg-icon{background:var(--accent);color:#fff}.coach-msg-assistant .coach-msg-icon{background:var(--border-subtle);color:var(--text-secondary)}.coach-msg-content{flex:1;font-size:var(--fs-base);line-height:1.55;color:var(--text);padding:6px 10px;border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word;min-width:0}.coach-msg-user .coach-msg-content{background:var(--accent);color:#fff;border-bottom-left-radius:var(--radius-xs)}.coach-msg-assistant .coach-msg-content{background:var(--surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm)}.coach-input-bar{display:flex;align-items:flex-end;gap:6px;padding:var(--space-xs) 0;border-top:1px solid var(--border-subtle)}.coach-input{flex:1;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-family:inherit;font-size:var(--fs-base);line-height:1.4;resize:none;min-height:40px;max-height:120px}.coach-input::placeholder{color:var(--text-tertiary)}.coach-input:focus{outline:none;border-color:var(--accent)}.coach-send-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;flex-shrink:0;transition:opacity .15s}.coach-send-btn:disabled{opacity:.4;cursor:not-allowed}.coach-send-btn:active:not(:disabled){opacity:.8}.coach-mic-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-tertiary);cursor:pointer;flex-shrink:0;transition:all .15s}.coach-mic-btn:active:not(:disabled){opacity:.7}.coach-mic-btn:disabled{opacity:.4;cursor:not-allowed}.coach-mic-active{background:#d46060;border-color:#d46060;color:#fff;animation:coach-mic-pulse 1.5s ease infinite}@keyframes coach-mic-pulse{0%,to{opacity:1}50%{opacity:.7}}.coach-input-listening{border-color:#d46060}.coach-disclaimer{text-align:center;font-size:var(--fs-2xs);color:var(--text-tertiary);padding:4px 0;padding-bottom:calc(60px + env(safe-area-inset-bottom));margin:0}
