:root{--color-primary:#ff6b35;--color-primary-light:#f7931e;--color-primary-dark:#e55a24;--color-secondary:#4ecdc4;--color-secondary-light:#6fe3da;--color-secondary-dark:#44a399;--color-accent:#9b59b6;--color-accent-light:#b87dd1;--color-accent-dark:#8e44ad;--color-success:#2ecc71;--color-success-light:#58d68d;--color-success-dark:#27ae60;--color-warning:#f39c12;--color-warning-light:#f5b041;--color-warning-dark:#e67e22;--color-error:#e74c3c;--color-error-light:#ec7063;--color-error-dark:#c0392b;--color-info:#3498db;--color-info-light:#5dade2;--color-info-dark:#2980b9;--color-background:#0a0a0a;--color-surface:#1a1a1a;--color-surface-elevated:#2a2a2a;--color-surface-hover:#252525;--color-text-primary:#fff;--color-text-secondary:#aaa;--color-text-tertiary:#888;--color-text-disabled:#666;--color-border:#2a2a2a;--color-border-hover:#3a3a3a;--color-border-focus:var(--color-primary);--gradient-primary:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-light) 100%);--gradient-secondary:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-dark) 100%);--gradient-accent:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-dark) 100%);--gradient-surface:linear-gradient(135deg,var(--color-surface) 0%,var(--color-surface-elevated) 100%);--shadow-sm:0 2px 4px #0000004d;--shadow-md:0 4px 8px #0006;--shadow-lg:0 8px 16px #00000080;--shadow-primary:0 4px 12px #ff6b3566;--shadow-secondary:0 4px 12px #4ecdc466;--shadow-accent:0 4px 12px #9b59b666;--radius-sm:6px;--radius-md:10px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:12px;--spacing-lg:16px;--spacing-xl:20px;--spacing-2xl:24px;--spacing-3xl:32px;--font-size-xs:11px;--font-size-sm:13px;--font-size-base:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:22px;--font-size-3xl:28px;--font-size-4xl:36px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.6;--transition-fast:0.15s ease;--transition-base:0.2s ease;--transition-slow:0.3s ease;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-slide-up{animation:slideUp .4s ease-out}.animate-slide-down{animation:slideDown .4s ease-out}.animate-scale-in{animation:scaleIn .3s ease-out}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-shake{animation:shake .4s ease-in-out}.animate-bounce{animation:bounce 1s ease-in-out infinite}.stagger-item{animation:slideUp .4s ease-out backwards}.stagger-item:first-child{animation-delay:.05s}.stagger-item:nth-child(2){animation-delay:.1s}.stagger-item:nth-child(3){animation-delay:.15s}.stagger-item:nth-child(4){animation-delay:.2s}.stagger-item:nth-child(5){animation-delay:.25s}.stagger-item:nth-child(6){animation-delay:.3s}.stagger-item:nth-child(7){animation-delay:.35s}.stagger-item:nth-child(8){animation-delay:.4s}.hover-lift{transition:transform .2s ease,box-shadow .2s ease;transition:transform var(--transition-base,.2s ease),box-shadow var(--transition-base,.2s ease)}.hover-lift:hover{box-shadow:0 8px 16px #00000080;box-shadow:var(--shadow-lg,0 8px 16px #00000080);transform:translateY(-4px)}.hover-scale{transition:transform .2s ease;transition:transform var(--transition-base,.2s ease)}.hover-scale:hover{transform:scale(1.02)}.hover-glow{transition:box-shadow .2s ease;transition:box-shadow var(--transition-base,.2s ease)}.hover-glow:hover{box-shadow:0 0 20px #4ecdc466}.ripple{overflow:hidden;position:relative}.ripple:after{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease;width:0}.ripple:active:after{height:300px;width:300px}@keyframes checkmark{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}.checkmark{stroke-dasharray:100;stroke-dashoffset:100;animation:checkmark .6s ease-out forwards}@keyframes fillProgress{0%{width:0}}.progress-fill{animation:fillProgress 1s ease-out}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.count-up{animation:countUp .5s ease-out}.page-transition-enter{opacity:0;transform:translateY(20px)}.page-transition-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s ease-out,transform .3s ease-out}.page-transition-exit{opacity:1}.page-transition-exit-active{opacity:0;transition:opacity .2s ease-in}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}h1,h2,h3,h4,h5,h6{color:#fff;color:var(--color-text-primary,#fff);font-weight:700;font-weight:var(--font-weight-bold,700);line-height:1.2;line-height:var(--line-height-tight,1.2);margin:0}h1{font-size:36px;font-size:var(--font-size-4xl,36px);letter-spacing:-.02em}h2{font-size:28px;font-size:var(--font-size-3xl,28px);letter-spacing:-.01em}h3{font-size:22px;font-size:var(--font-size-2xl,22px)}h4{font-size:18px;font-size:var(--font-size-xl,18px)}h5{font-size:16px;font-size:var(--font-size-lg,16px)}h6{font-size:15px;font-size:var(--font-size-base,15px);font-weight:600;font-weight:var(--font-weight-semibold,600)}.heading-display{font-size:clamp(32px,5vw,48px);letter-spacing:-.03em}.heading-display,.heading-title{font-weight:700;font-weight:var(--font-weight-bold,700);line-height:1.2;line-height:var(--line-height-tight,1.2)}.heading-title{font-size:28px;font-size:var(--font-size-3xl,28px)}.heading-subtitle{color:#aaa;color:var(--color-text-secondary,#aaa);font-size:18px;font-size:var(--font-size-xl,18px);line-height:1.5;line-height:var(--line-height-normal,1.5)}.heading-section,.heading-subtitle{font-weight:600;font-weight:var(--font-weight-semibold,600)}.heading-section{color:#ff6b35;color:var(--color-primary,#ff6b35);font-size:16px;font-size:var(--font-size-lg,16px);letter-spacing:.05em;margin-bottom:12px;margin-bottom:var(--spacing-md,12px);text-transform:uppercase}p{color:#fff;color:var(--color-text-primary,#fff);font-size:15px;font-size:var(--font-size-base,15px);margin:0}.text-large,p{line-height:1.6;line-height:var(--line-height-relaxed,1.6)}.text-large{font-size:16px;font-size:var(--font-size-lg,16px)}.text-base{font-size:15px;font-size:var(--font-size-base,15px)}.text-base,.text-small{line-height:1.5;line-height:var(--line-height-normal,1.5)}.text-small{font-size:13px;font-size:var(--font-size-sm,13px)}.text-xs{font-size:11px;font-size:var(--font-size-xs,11px);line-height:1.5;line-height:var(--line-height-normal,1.5)}.text-primary{color:#fff;color:var(--color-text-primary,#fff)}.text-secondary{color:#aaa;color:var(--color-text-secondary,#aaa)}.text-tertiary{color:#888;color:var(--color-text-tertiary,#888)}.text-disabled{color:#666;color:var(--color-text-disabled,#666)}.text-accent{color:#ff6b35;color:var(--color-primary,#ff6b35)}.text-success{color:#2ecc71;color:var(--color-success,#2ecc71)}.text-warning{color:#f39c12;color:var(--color-warning,#f39c12)}.text-error{color:#e74c3c;color:var(--color-error,#e74c3c)}.font-normal{font-weight:400;font-weight:var(--font-weight-normal,400)}.font-medium{font-weight:500;font-weight:var(--font-weight-medium,500)}.font-semibold{font-weight:600;font-weight:var(--font-weight-semibold,600)}.font-bold{font-weight:700;font-weight:var(--font-weight-bold,700)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-uppercase{letter-spacing:.05em;text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-line-clamp-2{-webkit-line-clamp:2}.text-line-clamp-2,.text-line-clamp-3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.text-line-clamp-3{-webkit-line-clamp:3}a{color:#4ecdc4;color:var(--color-secondary,#4ecdc4);text-decoration:none;transition:color .2s ease;transition:color var(--transition-base,.2s ease)}a:hover{color:#6fe3da;color:var(--color-secondary-light,#6fe3da);text-decoration:underline}a:active{color:#44a399;color:var(--color-secondary-dark,#44a399)}label{color:#aaa;color:var(--color-text-secondary,#aaa);display:block;font-size:13px;font-size:var(--font-size-sm,13px);font-weight:500;font-weight:var(--font-weight-medium,500);margin-bottom:4px;margin-bottom:var(--spacing-xs,4px)}code{border-radius:6px;border-radius:var(--radius-sm,6px);color:#4ecdc4;color:var(--color-secondary,#4ecdc4);font-size:.9em;padding:2px 6px}code,pre{background-color:#2a2a2a;background-color:var(--color-surface-elevated,#2a2a2a);font-family:Monaco,Menlo,Courier New,monospace}pre{border-radius:10px;border-radius:var(--radius-md,10px);font-size:13px;font-size:var(--font-size-sm,13px);line-height:1.6;line-height:var(--line-height-relaxed,1.6);overflow-x:auto;padding:16px;padding:var(--spacing-lg,16px)}@media (max-width:768px){h1{font-size:28px;font-size:var(--font-size-3xl,28px)}h2{font-size:22px;font-size:var(--font-size-2xl,22px)}h3{font-size:18px;font-size:var(--font-size-xl,18px)}.heading-display{font-size:clamp(28px,7vw,36px)}}@media (max-width:480px){h1{font-size:22px;font-size:var(--font-size-2xl,22px)}h2{font-size:18px;font-size:var(--font-size-xl,18px)}h3{font-size:16px;font-size:var(--font-size-lg,16px)}}body{background-color:var(--color-background);color:var(--color-text-primary);margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}button:disabled{cursor:not-allowed!important;opacity:.5;pointer-events:none}button:disabled:hover{box-shadow:none!important;transform:none!important}button.loading{color:#0000;position:relative}button.loading:after{animation:button-spin .6s linear infinite;border:2px solid #fff;border-radius:50%;border-top-color:#0000;content:"";height:16px;left:50%;margin-left:-8px;margin-top:-8px;position:absolute;top:50%;width:16px}@keyframes button-spin{to{transform:rotate(1turn)}}.clickable,a.button,button{min-height:44px;min-width:44px}button:not(:has(span)):not(:has(div)){padding:12px}.user-switcher{background-color:#1a1a1acc;border:1px solid #3a3a3a;border-radius:20px;gap:10px;padding:8px 12px}.user-badge,.user-switcher{align-items:center;display:flex}.user-badge{gap:8px}.user-initial{align-items:center;background:linear-gradient(135deg,#4ecdc4,#45b7a9);border-radius:14px;color:#000;display:flex;font-size:14px;font-weight:700;height:28px;justify-content:center;width:28px}.user-display-name{color:#fff;font-size:14px;font-weight:600}.switch-user-btn{background:none;border:none;color:#888;cursor:pointer;font-size:18px;padding:4px 6px;transition:color .2s}.switch-user-btn:hover{color:#4ecdc4}@media (max-width:480px){.user-display-name{display:none}}.notification-prompt-card{background:linear-gradient(135deg,#2a2a40,#1a1a2e);border:2px solid #ff6b35;border-radius:16px;box-shadow:0 8px 24px #ff6b3533;margin:16px 0;padding:24px}.notification-prompt-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.notification-bell-icon{animation:ring 2s ease-in-out infinite;font-size:32px}@keyframes ring{0%,to{transform:rotate(0deg)}10%,30%{transform:rotate(-10deg)}20%,40%{transform:rotate(10deg)}}.notification-prompt-title{color:#fff;font-size:20px;font-weight:700;margin:0}.notification-prompt-text{color:#b8b8d1;font-size:15px;line-height:1.6;margin:12px 0 20px}.notification-features{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.notification-feature{align-items:center;color:#fff;display:flex;font-size:14px;gap:12px}.feature-icon{align-items:center;background:#ff6b351a;border-radius:8px;display:flex;font-size:20px;height:32px;justify-content:center;width:32px}.notification-prompt-buttons{display:flex;flex-wrap:wrap;gap:12px}.enable-notifications-btn{background:linear-gradient(135deg,#ff6b35,#f7931e);border:none;border-radius:12px;color:#fff;cursor:pointer;flex:1 1;font-size:16px;font-weight:700;min-width:140px;padding:14px 24px;transition:all .3s ease}.enable-notifications-btn:hover{box-shadow:0 6px 20px #ff6b3566;transform:translateY(-2px)}.dismiss-notifications-btn{background:#0000;border:2px solid #3a3a52;border-radius:12px;color:#b8b8d1;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;min-width:140px;padding:14px 24px;transition:all .3s ease}.dismiss-notifications-btn:hover{background:#ffffff0d;border-color:#4a4a62}.notification-status-badge{align-items:center;background:#4caf501a;border:1px solid #4caf50;border-radius:20px;color:#4caf50;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:8px 16px}.notification-icon{font-size:16px}.notification-text{color:#4caf50}@keyframes skeleton-loading{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.skeleton-card{background-color:#1a1a1a;border:2px solid #2a2a2a;border-radius:12px;margin-bottom:15px;padding:20px}.skeleton-line{animation:skeleton-loading 1.5s ease-in-out infinite;background:linear-gradient(90deg,#2a2a2a,#3a3a3a 40px,#2a2a2a 80px);background-size:200px 100%;border-radius:4px;margin-bottom:12px}.skeleton-title{height:24px;width:60%}.skeleton-subtitle{height:18px;width:40%}.skeleton-text{height:16px;width:100%}.skeleton-text.short{width:70%}.skeleton-exercise-list{margin-top:15px}.skeleton-chart{animation:skeleton-loading 1.5s ease-in-out infinite;background:linear-gradient(90deg,#2a2a2a,#3a3a3a 40px,#2a2a2a 80px);background-size:200px 100%;border-radius:8px;height:200px;margin-top:15px}.mini-chart{background:linear-gradient(135deg,#1a1a1a,#252525);border:2px solid #2a2a2a;border-radius:12px;border-radius:var(--radius-lg,12px);padding:16px;transition:all .2s ease;transition:all var(--transition-base,.2s ease)}.mini-chart:hover{border-color:#3a3a3a;transform:translateY(-2px)}.mini-chart-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.mini-chart-label{color:#aaa;color:var(--color-text-secondary,#aaa);font-size:13px;font-size:var(--font-size-sm,13px);font-weight:500;font-weight:var(--font-weight-medium,500)}.mini-chart-trend{font-size:11px;font-size:var(--font-size-xs,11px);font-weight:600;font-weight:var(--font-weight-semibold,600)}.mini-chart-value{color:#fff;color:var(--color-text-primary,#fff);font-size:22px;font-size:var(--font-size-2xl,22px);font-weight:700;font-weight:var(--font-weight-bold,700);margin-bottom:12px}.mini-chart-graph{display:block;height:60px;width:100%}.mini-chart-empty{color:#888;color:var(--color-text-tertiary,#888);font-size:13px;font-size:var(--font-size-sm,13px);padding:20px 0;text-align:center}.welcome-tour-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#000000e6;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.welcome-tour-modal{animation:slideUp .4s ease;background:linear-gradient(135deg,#1a1a1a,#2a2a2a);border:3px solid #4ecdc4;border-radius:20px;box-shadow:0 20px 60px #4ecdc466;max-height:90vh;max-width:600px;overflow-y:auto;padding:40px;width:100%}.tour-header{margin-bottom:30px;text-align:center}.tour-icon{animation:bounce 1s ease infinite;font-size:80px;margin-bottom:20px}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.tour-title{color:#fff;font-size:28px;font-weight:700;margin:0 0 10px}.tour-description{color:#4ecdc4;font-size:16px;font-weight:600;margin:0}.tour-body{margin-bottom:30px;min-height:300px}.tour-content{color:#ddd}.tour-text{color:#ddd;font-size:16px;line-height:1.7;margin-bottom:15px}.tour-text strong{color:#fff;font-weight:600}.tour-list{list-style:none;margin:15px 0;padding:0}.tour-list li{color:#ccc;font-size:15px;line-height:1.8;padding:8px 0 8px 30px;position:relative}.tour-list li:before{color:#4ecdc4;content:"→";font-weight:700;left:0;position:absolute}.tour-progress{align-items:center;border-top:1px solid #3a3a3a;display:flex;flex-direction:column;gap:15px;margin-bottom:25px;padding-top:20px}.tour-dots{display:flex;gap:10px}.tour-dot{background-color:#3a3a3a;border-radius:50%;cursor:pointer;height:12px;transition:all .3s ease;width:12px}.tour-dot:hover{background-color:#555;transform:scale(1.2)}.tour-dot.active{background-color:#4ecdc4;border-radius:6px;box-shadow:0 0 10px #4ecdc480;transform:scale(1.1);width:30px}.tour-dot.completed{background-color:#5fded5}.tour-step-counter{color:#888;font-size:14px;font-weight:600}.tour-actions{display:flex;gap:10px;justify-content:space-between}.tour-btn{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:14px 24px;transition:all .2s}.tour-btn-primary{background:linear-gradient(135deg,#4ecdc4,#3ba89c);color:#fff}.tour-btn-primary:hover{box-shadow:0 6px 16px #4ecdc466;transform:translateY(-2px)}.tour-btn-primary:active{transform:translateY(0)}.tour-btn-secondary{background-color:#2a2a2a;border:2px solid #4ecdc4;color:#4ecdc4;flex:0.8 1}.tour-btn-secondary:hover{background-color:#4ecdc41a}.tour-btn-skip{background-color:initial;border:1px solid #3a3a3a;color:#888;flex:0.8 1}.tour-btn-skip:hover{background-color:#2a2a2a;border-color:#555;color:#aaa}@media (max-width:768px){.welcome-tour-modal{max-height:85vh;padding:25px}.tour-icon{font-size:60px}.tour-title{font-size:24px}.tour-description{font-size:14px}.tour-text{font-size:15px}.tour-list li{font-size:14px}.tour-body{min-height:250px}}@media (max-width:480px){.welcome-tour-overlay{padding:10px}.welcome-tour-modal{padding:20px}.tour-icon{font-size:50px}.tour-title{font-size:20px}.tour-actions{flex-direction:column}.tour-btn{font-size:18px;padding:18px 24px;width:100%}.tour-btn-primary{font-size:20px;font-weight:700;padding:20px 24px}.tour-btn-secondary,.tour-btn-skip{flex:1 1}}.container{margin:0 auto;max-width:600px;padding-bottom:80px}.container,.home{box-sizing:border-box;width:100%}.home{overflow-x:hidden;padding:20px}.home *{box-sizing:border-box}.header{padding:20px 0}.header-content{align-items:center;display:flex;justify-content:space-between}.header-content>div:first-child{flex:1 1;text-align:center}.header-title{color:#fff;font-size:32px;font-weight:700;margin-bottom:5px}.header-subtitle{color:#888;font-size:16px;margin:0}.date-container{margin-bottom:20px}.day-name{color:#fff;font-size:24px;font-weight:600}.date{color:#666;font-size:14px;margin:2px 0 0}.workout-card{background-color:#1a1a1a;border:2px solid #ff6b35;border-radius:16px;margin-bottom:30px;padding:20px}.workout-header{margin-bottom:15px}.workout-name{font-size:22px;margin:0 0 10px}.workout-meta{display:flex;gap:15px;margin-bottom:5px}.workout-duration,.workout-time{color:#ff6b35;font-size:14px}.workout-location{color:#aaa;font-size:14px;margin:5px 0}.workout-focus{margin:5px 0 0}.coaching-insight-home{background-color:#4ecdc414;border-left:3px solid #4ecdc4;border-radius:8px;margin-top:12px;padding:14px}.insight-label-home{color:#4ecdc4;font-size:12px;font-weight:700;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.insight-text-home{color:#ddd;font-size:14px;line-height:1.7;margin:0}.nutrition-goals{background-color:#2a2a2a;border:1px solid #4ecdc4;border-radius:12px;margin-bottom:15px;padding:15px;transition:all .2s ease}.nutrition-goals.clickable:hover{background-color:#333;border-color:#5fded5;box-shadow:0 4px 12px #4ecdc44d;transform:translateY(-2px)}.nutrition-title{color:#4ecdc4;font-size:16px;font-weight:700;margin:0 0 12px;text-align:center}.nutrition-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:10px}.nutrition-item{background-color:#1a1a1a;border-radius:8px;padding:12px;text-align:center}.nutrition-value{color:#4ecdc4;font-size:20px;font-weight:700;margin:0 0 4px}.nutrition-label{color:#888;font-size:12px;margin:0}.nutrition-notes{color:#aaa;font-size:13px;font-style:italic;line-height:1.4;margin:8px 0 0;text-align:center}.nutrition-progress-container{display:flex;flex-direction:column;gap:16px;margin-bottom:10px}.nutrition-progress-item{background-color:#1a1a1a;border-radius:8px;padding:12px}.nutrition-progress-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.nutrition-progress-label{color:#aaa;font-size:14px;font-weight:600}.nutrition-progress-value{color:#4ecdc4;font-size:14px;font-weight:700;transition:color .3s}.nutrition-progress-value.over-goal{animation:blink-red 1s ease-in-out infinite;color:#f44}@keyframes blink-red{0%,to{color:#f44;opacity:1}50%{color:#f66;opacity:.7}}.nutrition-progress-bar-container{background-color:#2a2a2a;border-radius:4px;height:8px;overflow:hidden;position:relative}.nutrition-progress-bar{background:linear-gradient(90deg,#4ecdc4,#3ba89c);border-radius:4px;height:100%;transition:width .5s ease,background .3s}.nutrition-progress-bar.over-goal{animation:pulse-bar 1s ease-in-out infinite;background:linear-gradient(90deg,#f44,#c00)}@keyframes pulse-bar{0%,to{opacity:1}50%{opacity:.8}}.exercise-count{background-color:#2a2a2a;border-radius:8px;margin-bottom:15px;padding:12px}.exercise-count-text{color:#fff;font-size:16px;font-weight:600;margin:0;text-align:center}.workout-options-home{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.home-switch-btn{background-color:#2a2a2a;border:2px solid #4ecdc4;border-radius:10px;color:#4ecdc4;cursor:pointer;font-size:15px;font-weight:600;padding:14px;transition:all .2s;width:100%}.home-switch-btn:hover{background-color:#4ecdc41a}.skip-day-btn{background-color:#2a2a2a;border:2px solid #3a3a3a;border-radius:10px;color:#888;cursor:pointer;font-size:15px;font-weight:600;padding:14px;transition:all .2s;width:100%}.skip-day-btn:hover{background-color:#333;border-color:#555;color:#aaa}.start-button{background-color:#ff6b35;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:18px;font-weight:700;letter-spacing:1px;padding:18px;transition:background-color .2s;width:100%}.start-button:hover{background-color:#ff5722}.start-button:active{transform:scale(.98)}.stats-container{margin-bottom:30px}.section-title{margin:0 0 15px}.stats-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:10px}.trends-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.stat-card{background-color:#1a1a1a;border-radius:12px;padding:15px;text-align:center}.stat-value{font-size:24px;margin:0 0 5px}.stat-label{margin:0}.view-progress-button{background:none;border:none;color:#ff6b35;cursor:pointer;font-size:14px;font-weight:600;padding:12px;text-align:center;width:100%}.view-progress-button:hover{text-decoration:underline}.quick-access{margin-bottom:30px}.quick-button{background-color:#1a1a1a;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-bottom:10px;padding:16px;text-align:left;transition:background-color .2s;width:100%}.quick-button:hover{background-color:#252525}.weekly-review-prompt{animation:pulse 2s ease-in-out infinite;background:linear-gradient(135deg,#2a2a1a,#1a2a1a);border:3px solid #4ecdc4;border-radius:12px;box-shadow:0 4px 16px #4ecdc44d;margin-bottom:20px;padding:20px}.prompt-header{align-items:center;display:flex;gap:15px;margin-bottom:12px}.prompt-icon{font-size:36px}.prompt-title{color:#4ecdc4;font-size:20px;margin:0 0 4px}.prompt-subtitle{color:#888;font-size:13px;margin:0}.prompt-message{color:#ccc;font-size:14px;line-height:1.6;margin:0 0 15px;padding-left:51px}.review-now-button{background:linear-gradient(135deg,#4ecdc4,#3ba89c);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;margin-bottom:10px;padding:16px;transition:all .2s;width:100%}.review-now-button:hover{box-shadow:0 4px 12px #4ecdc466;transform:translateY(-2px)}.dismiss-prompt-button{background:#0000;border:1px solid #3a3a3a;border-radius:8px;color:#888;cursor:pointer;font-size:14px;padding:12px;transition:all .2s;width:100%}.dismiss-prompt-button:hover{border-color:#555;color:#aaa}.ai-planner-card{background:linear-gradient(135deg,#2a1a2a,#1a1a2a);border:2px solid #9b59b6;border-radius:12px;box-shadow:0 4px 12px #9b59b633;margin-bottom:20px;padding:20px}.ai-planner-header{align-items:center;display:flex;margin-bottom:12px}.ai-icon{font-size:32px;margin-right:15px}.ai-planner-text{flex:1 1}.ai-planner-title{color:#9b59b6;font-size:18px;font-weight:700;margin:0 0 4px}.ai-planner-status{color:#888;font-size:13px;margin:0}.ai-plan-summary{background-color:#9b59b61a;border-left:3px solid #9b59b6;border-radius:6px;color:#ccc;font-size:14px;line-height:1.6;margin:0 0 15px;padding:12px}.open-planner-button{background:linear-gradient(135deg,#9b59b6,#8e44ad);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:700;padding:14px 20px;transition:all .2s;width:100%}.open-planner-button:hover{box-shadow:0 4px 12px #9b59b666;transform:translateY(-2px)}.open-planner-button:active{transform:translateY(0)}.weekly-review-link{background:#0000;border:1px solid #9b59b6;border-radius:8px;color:#9b59b6;cursor:pointer;font-size:14px;font-weight:600;margin-top:10px;padding:12px 20px;transition:all .2s;width:100%}.weekly-review-link:hover{background-color:#9b59b61a}.motivation-card{background-color:#1a1a1a;border-left:4px solid #4ecdc4;border-radius:12px;margin-bottom:30px;padding:20px}.motivation-text{color:#aaa;font-size:16px;font-style:italic;line-height:24px;margin:0}@media (max-width:480px){.home{padding:10px}.header-title{font-size:28px}.workout-name{font-size:20px}.stats-grid{grid-template-columns:1fr 1fr}.ai-planner-card,.motivation-card,.nutrition-goals,.weekly-review-prompt,.workout-card{padding:15px}.prompt-message{padding-left:0}}.workout-screen{padding:20px}.workout-nav{background-color:#1a1a1a;border-radius:12px;margin-bottom:20px;padding:20px}.back-button{background:none;border:none;color:#ff6b35;cursor:pointer;font-size:16px;font-weight:600;margin-bottom:15px;padding:0}.back-button:hover{text-decoration:underline}.progress-bar-container{border-radius:4px;height:8px;margin-bottom:8px}.progress-bar-fill{background-color:#4ecdc4;transition:width .3s ease}.progress-text{font-size:12px;text-align:center}.workout-info{background-color:#1a1a1a;border-radius:12px;margin-bottom:20px;padding:20px}.workout-name{color:#fff;font-size:24px;font-weight:700;margin:0 0 8px}.workout-meta-line{color:#888;font-size:14px;margin:0 0 5px}.workout-location-note{background-color:#ff6b351a;border-left:3px solid #ff6b35;border-radius:4px;color:#ff6b35;font-size:13px;font-weight:600;margin:5px 0;padding:8px 12px}.workout-focus{color:#4ecdc4;font-size:14px;font-weight:600;margin:0}.exercises-list{margin-bottom:20px}.exercise-card{background-color:#1a1a1a;border:2px solid #2a2a2a;border-radius:12px;margin-bottom:15px;padding:15px;transition:all .3s ease}.exercise-card.current{border-color:#ff6b35}.exercise-card.completed{background-color:#1a2a1a;border-color:#4ecdc4;opacity:.7}.exercise-header{display:flex;margin-bottom:12px}.exercise-number{align-items:center;background-color:#2a2a2a;border-radius:18px;color:#ff6b35;display:flex;flex-shrink:0;font-size:16px;font-weight:700;height:36px;justify-content:center;margin-right:12px;width:36px}.exercise-title-container{flex:1 1}.exercise-name{color:#fff;font-size:18px;font-weight:700;margin:0 0 4px}.exercise-name.strike{color:#888;text-decoration:line-through}.exercise-details{color:#ff6b35;font-size:13px;margin:0}.exercise-body{margin-bottom:15px}.exercise-notes{color:#aaa;font-size:14px;line-height:20px;margin:0 0 10px}.machine-info{background-color:#2a2a2a;border-radius:8px;margin-bottom:10px;padding:10px}.machine-label{color:#4ecdc4;font-size:12px;font-weight:600;margin:0 0 4px}.machine-text{color:#ddd;font-size:13px;line-height:18px;margin:0}.tips-container{background-color:#2a2a1a;border-left:3px solid #4ecdc4;border-radius:8px;padding:10px}.tips-label{color:#4ecdc4;font-size:12px;font-weight:600;margin:0 0 4px}.tips-text{color:#ccc;font-size:13px;line-height:18px;margin:0}.how-to-section{margin-top:12px}.how-to-toggle{background-color:initial;border:1px solid #4ecdc4;border-radius:6px;color:#4ecdc4;cursor:pointer;font-size:13px;padding:8px 12px;text-align:left;transition:all .2s;width:100%}.how-to-toggle:hover{background-color:#4ecdc41a}.how-to-content{background-color:#1a2a2a;border:1px solid #4ecdc4;border-radius:6px;margin-top:8px;padding:12px}.how-to-text{color:#ddd;font-size:13px;line-height:1.6;margin:0;white-space:pre-line}.warmup-section{background:linear-gradient(135deg,#2a1a1a,#1a1a1a);border:2px solid #ff6b35;border-radius:12px;margin-bottom:20px;padding:20px}.section-title{color:#ff6b35;margin:0 0 8px}.section-note{color:#aaa;font-size:13px;margin:0 0 15px}.cardio-list,.cooldown-list,.warmup-list{display:flex;flex-direction:column;gap:12px}.cardio-item,.cooldown-item,.warmup-item{background-color:#2a2a2a;border-left:3px solid #ff6b35;border-radius:8px;padding:12px}.cardio-name,.cooldown-name,.warmup-name{color:#fff;font-size:14px;font-weight:600;margin-bottom:4px}.cardio-duration,.cooldown-duration,.warmup-duration{color:#4ecdc4;font-size:13px;margin-bottom:4px}.cardio-notes,.cooldown-notes,.warmup-notes{color:#aaa;font-size:12px;font-style:italic;margin-top:4px}.cooldown-section{background:linear-gradient(135deg,#1a2a1a,#1a1a1a);border:2px solid #4ecdc4;border-radius:12px;margin-bottom:20px;padding:20px}.cooldown-section .section-title{color:#4ecdc4}.cooldown-item{border-left:3px solid #4ecdc4}.cardio-section{background:linear-gradient(135deg,#1a1a2a,#1a1a1a);border:2px solid #9b59b6;border-radius:12px;margin-bottom:20px;padding:20px}.cardio-section .section-title{color:#9b59b6}.cardio-item{border-left:3px solid #9b59b6}.cardio-details{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.cardio-intensity{color:#ff6b35;font-size:12px;font-weight:600}.complete-button{background-color:#2a2a2a;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:14px;transition:background-color .2s;width:100%}.complete-button:hover{background-color:#353535}.complete-button.done{background-color:#1a3a2a;color:#4ecdc4}.finish-footer{background-color:#1a1a1a;border-top:1px solid #333;bottom:0;left:0;margin:0 auto;max-width:600px;padding:20px;position:fixed;right:0}.finish-button{background-color:#4ecdc4;border:none;border-radius:12px;color:#000;cursor:pointer;font-size:18px;font-weight:700;letter-spacing:1px;padding:18px;width:100%}.finish-button:hover{background-color:#45bfb2}.finish-button:active{transform:scale(.98)}.previous-stats{background-color:#1a2a2a;border-left:3px solid #4ecdc4;border-radius:8px;margin:10px 0;padding:12px}.previous-label{color:#4ecdc4;font-size:12px;font-weight:600;margin:0 0 8px}.previous-sets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.previous-set{background-color:#2a2a2a;border-radius:4px;color:#ccc;font-size:13px;padding:4px 8px}.previous-difficulty{color:#aaa;font-size:12px;margin:4px 0 0}.suggestion-box{background-color:#2a2a1a;border-left:3px solid #ff6b35;border-radius:6px;margin:10px 0;padding:10px}.suggestion-text{color:#ff6b35;font-size:14px;font-weight:600;margin:0}.sets-logging{background-color:#2a2a2a;border-radius:8px;margin:15px 0;padding:12px}.sets-label{color:#4ecdc4;font-size:13px;font-weight:600;margin:0 0 10px}.set-row{align-items:center;background-color:#1a1a1a;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:6px;padding:8px}.set-number{color:#888;font-size:12px;min-width:50px}.set-data{color:#fff;flex:1 1;font-size:14px;font-weight:600}.remove-set-btn{background-color:#3a2a2a;border:none;border-radius:12px;color:#ff6b6b;cursor:pointer;font-size:18px;height:24px;line-height:1;width:24px}.remove-set-btn:hover{background-color:#4a2a2a}.set-input-form{display:flex;flex-direction:column;gap:8px;margin-top:10px}.reps-input,.weight-input{background-color:#1a1a1a;border:1px solid #3a3a3a;border-radius:6px;color:#fff;font-size:14px;padding:10px;width:100%}.reps-input::placeholder,.weight-input::placeholder{color:#666}.add-set-btn{background-color:#4ecdc4;border:none;border-radius:6px;color:#000;cursor:pointer;font-size:14px;font-weight:600;padding:12px 16px;white-space:nowrap;width:100%}.add-set-btn:hover{background-color:#45bfb2}.difficulty-section{background-color:#2a2a2a;border-radius:8px;margin:15px 0;padding:15px}.difficulty-label{color:#fff;display:block;font-size:14px;font-weight:600;margin-bottom:12px;text-align:center}.difficulty-slider-container{align-items:center;display:flex;gap:10px;margin-bottom:10px}.difficulty-max,.difficulty-min{color:#888;font-size:12px;min-width:60px}.difficulty-min{text-align:right}.difficulty-slider{-webkit-appearance:none;background:linear-gradient(90deg,#4ecdc4 0,#ff6b35);border-radius:4px;flex:1 1;height:8px;outline:none}.difficulty-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border-radius:50%;box-shadow:0 2px 4px #0000004d;cursor:pointer;height:20px;width:20px}.difficulty-slider::-moz-range-thumb{background:#fff;border:none;border-radius:50%;box-shadow:0 2px 4px #0000004d;cursor:pointer;height:20px;width:20px}.difficulty-guide{margin-top:8px;text-align:center}.difficulty-guide p{color:#4ecdc4;font-size:12px;font-weight:600;margin:0}.visual-guide-section{margin:15px 0}.visual-guide-toggle{background-color:#2a2a3a;border:1px solid #3a3a4a;border-radius:8px;color:#4ecdc4;cursor:pointer;font-size:14px;font-weight:600;padding:12px 15px;text-align:left;transition:all .2s;width:100%}.visual-guide-toggle:hover{background-color:#3a3a4a;border-color:#4ecdc4}.visual-guide-content{background-color:#1a1a2a;border:1px solid #3a3a4a;border-radius:8px;margin-top:10px;padding:15px}.visual-info-block{border-bottom:1px solid #2a2a2a;margin-bottom:15px;padding-bottom:15px}.visual-info-block:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.visual-info-title{color:#4ecdc4;font-size:13px;font-weight:600;margin:0 0 8px}.visual-info-text{color:#ccc;font-size:14px;line-height:1.6;margin:0}.mistakes-list,.setup-list,.variations-list{color:#ccc;margin:0;padding-left:20px}.mistakes-list li,.setup-list li,.variations-list li{font-size:13px;line-height:1.6;margin-bottom:6px}.muscle-tags{display:flex;flex-wrap:wrap;gap:8px}.muscle-tag{background-color:#2a3a2a;border-radius:12px;color:#4ecdc4;font-size:12px;font-weight:600;padding:4px 10px}.mistakes-block{background-color:#3a2a2a;border-left:3px solid #ff6b6b;padding-left:12px}.mistakes-block .visual-info-title{color:#ff6b6b}.video-block{background-color:#2a2a3a;border-left:3px solid #ff6b35;padding-left:12px}.video-tutorial-text{color:#ff6b35;font-size:13px;font-weight:600;margin:0}@media (max-width:480px){.visual-guide-toggle{font-size:13px;padding:10px 12px}.visual-guide-content{padding:12px}.muscle-tags{gap:6px}.muscle-tag{font-size:11px;padding:3px 8px}}.visual-guide-toggle-prominent{align-items:center;background:linear-gradient(135deg,#ff6b35,#f7931e);border:none;border-radius:10px;box-shadow:0 4px 8px #ff6b354d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;justify-content:space-between;margin:15px 0;padding:16px 20px;text-align:left;transition:all .3s;width:100%}.visual-guide-toggle-prominent:hover{background:linear-gradient(135deg,#ff7a47,#ff9d2f);box-shadow:0 6px 12px #ff6b3566;transform:translateY(-2px)}.visual-guide-toggle-prominent:active{transform:translateY(0)}.visual-guide-toggle-prominent .guide-icon{font-size:20px;margin-right:12px}.visual-guide-toggle-prominent .guide-text{flex:1 1;font-size:16px;letter-spacing:.5px}.visual-guide-toggle-prominent .guide-arrow{font-size:14px;margin-left:8px;opacity:.9}.visual-guide-content-prominent{background:linear-gradient(135deg,#1a1a2a,#2a2a3a);border:2px solid #ff6b35;border-radius:12px;box-shadow:0 4px 12px #0000004d;margin:0 0 20px;padding:20px}@media (max-width:480px){.visual-guide-toggle-prominent{font-size:15px;padding:14px 16px}.visual-guide-toggle-prominent .guide-icon{font-size:18px;margin-right:10px}.visual-guide-toggle-prominent .guide-text{font-size:15px}.visual-guide-content-prominent{padding:16px}}.claude-advice-section{margin-bottom:20px}.claude-advice-button{background:linear-gradient(135deg,#9b59b6,#8e44ad);border:none;border-radius:10px;box-shadow:0 4px 8px #9b59b64d;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:16px 20px;transition:all .3s;width:100%}.claude-advice-button:hover:not(:disabled){background:linear-gradient(135deg,#a569c7,#9b59b6);box-shadow:0 6px 12px #9b59b666;transform:translateY(-2px)}.claude-advice-button:disabled{cursor:not-allowed;opacity:.7}.claude-advice-button:active:not(:disabled){transform:translateY(0)}.advice-error{background-color:#3a2a2a;border:2px solid #ff6b6b;border-radius:10px;margin-top:15px;padding:15px}.advice-error p{color:#ff6b6b;font-size:14px;margin:0 0 10px}.settings-link-button{background-color:#4ecdc4;border:none;border-radius:6px;color:#000;cursor:pointer;font-size:14px;font-weight:600;padding:10px 16px}.settings-link-button:hover{background-color:#45bfb2}.advice-content{background:linear-gradient(135deg,#2a2a3a,#1a1a2a);border:2px solid #9b59b6;border-radius:12px;box-shadow:0 4px 12px #9b59b633;margin-top:15px;padding:20px}.advice-header{align-items:center;border-bottom:1px solid #3a3a4a;display:flex;margin-bottom:15px;padding-bottom:12px}.advice-icon{font-size:24px;margin-right:10px}.advice-title{color:#9b59b6;font-size:18px;font-weight:700}.advice-text{color:#ddd;font-size:14px;line-height:1.8}.advice-text p{margin:0 0 12px}.advice-text p:last-child{margin-bottom:0}.advice-text strong{color:#fff;font-weight:600}@media (max-width:480px){.claude-advice-button{font-size:15px;padding:14px 16px}.advice-content{padding:16px}.advice-title{font-size:16px}.advice-text{font-size:13px}}.workout-options{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}.home-alternative-btn,.skip-workout-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;min-width:140px;padding:12px 20px;transition:all .3s ease}.home-alternative-btn{background-color:#4ecdc4;color:#0a0a0a}.home-alternative-btn:hover{background-color:#45b8b0;transform:translateY(-2px)}.skip-workout-btn{background-color:#444;color:#fff}.skip-workout-btn:hover{background-color:#555;transform:translateY(-2px)}.empty-state{background:linear-gradient(135deg,#1a1a1a,#252525);border:2px solid #2a2a2a;margin:20px 0;padding:60px 20px}.empty-state-icon{font-size:64px;margin-bottom:20px;opacity:.7}.empty-state-title{color:#fff;font-size:22px;font-weight:600;margin:0 0 12px}.empty-state-message{color:#888;font-size:15px;line-height:1.6;margin:0 auto 25px;max-width:400px}.empty-state-action{background:linear-gradient(135deg,#4ecdc4,#44a399);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:14px 28px;transition:all .2s}.empty-state-action:hover{box-shadow:0 4px 12px #4ecdc466;transform:translateY(-2px)}.progress-screen{padding:20px}.progress-header{background-color:#1a1a1a;border-radius:12px;margin-bottom:20px;padding:20px}.progress-header h2{color:#fff;margin:10px 0 0}.section{margin-bottom:30px}.section h3{color:#fff;margin-bottom:15px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.section-header h3{margin:0}.edit-button{background:none;border:none;color:#ff6b35;cursor:pointer;font-weight:600}.measurement-card{background-color:#1a1a1a;border-radius:12px;padding:15px}.measurement-row{border-bottom:1px solid #2a2a2a;display:flex;justify-content:space-between;padding:12px 0}.measurement-label{color:#aaa}.measurement-value{color:#fff;font-weight:600}.measurement-input{background-color:#2a2a2a;border:none;color:#fff;text-align:right;width:80px}.goal-row,.measurement-input{border-radius:6px;padding:8px}.goal-row{background-color:#2a2a1a;color:#888;font-size:13px;margin:0 0 10px 15px}.save-button{background-color:#4ecdc4;border:none;border-radius:12px;cursor:pointer;font-weight:700;margin-top:15px;padding:16px;width:100%}.achievement-card,.goals-card{background-color:#1a1a1a;border-radius:12px;padding:15px}.goal-item{align-items:center;display:flex;padding:10px 0}.goal-icon{font-size:24px;margin-right:12px}.goal-text{color:#fff}.achievement-card h4{color:#fff;margin:0 0 12px}.achievement-card p{color:#aaa;margin:8px 0}.schedule-screen{padding:20px}.schedule-header{background-color:#1a1a1a;border-radius:12px;margin-bottom:20px;padding:20px}.schedule-header h2{color:#fff;margin:10px 0 0}.loading-message{color:#888;font-size:16px;padding:40px 20px;text-align:center}.no-plan-prompt{background:linear-gradient(135deg,#2a1a2a,#1a1a2a);border:2px solid #9b59b6;border-radius:12px;margin-bottom:20px;padding:30px 20px;text-align:center}.no-plan-prompt .prompt-icon{font-size:48px;margin-bottom:15px}.no-plan-prompt h3{color:#9b59b6;font-size:22px;margin:0 0 12px}.no-plan-prompt p{color:#ccc;font-size:15px;line-height:1.6;margin:0 0 20px}.generate-plan-button{background:linear-gradient(135deg,#9b59b6,#8e44ad);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;margin-bottom:15px;padding:16px 30px;transition:all .2s}.generate-plan-button:hover{box-shadow:0 4px 12px #9b59b666;transform:translateY(-2px)}.default-schedule-label{color:#666;font-size:13px;font-style:italic;margin:15px 0 0}.day-card{background-color:#1a1a1a;border:2px solid #2a2a2a;border-radius:12px;cursor:pointer;margin-bottom:15px;padding:18px;transition:border-color .2s}.day-card:hover{border-color:#ff6b35}.day-card h3{color:#ff6b35;margin:0 0 5px}.day-card .time{color:#888;font-size:13px;margin:0 0 10px}.day-card h4{color:#4ecdc4;font-size:16px;margin:0 0 8px}.day-card .focus,.day-card .location{color:#aaa;font-size:13px;margin:3px 0}.schedule-nutrition{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.nutrition-badge{background-color:#2a2a2a;border:1px solid #4ecdc4;border-radius:12px;color:#4ecdc4;font-size:11px;font-weight:600;padding:4px 10px}.day-card .exercises{color:#ff6b35;font-size:12px;font-weight:600;margin:10px 0 0}.weekly-strategy-card{background:linear-gradient(135deg,#1a2a2a,#1a1a2a);border:2px solid #4ecdc4;border-radius:12px;margin-bottom:25px;padding:25px}.strategy-header{align-items:center;display:flex;gap:12px;margin-bottom:20px}.strategy-icon{font-size:32px}.strategy-header h3{color:#4ecdc4;font-size:20px;margin:0}.strategy-content p{color:#ddd;font-size:15px;line-height:1.8;margin:0 0 16px}.strategy-content p:last-child{margin-bottom:0}.coaching-insight{background-color:#4ecdc414;border-left:3px solid #4ecdc4;border-radius:6px;margin:12px 0;padding:12px}.insight-label{color:#4ecdc4;font-size:11px;font-weight:700;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.insight-text{color:#ccc;font-size:13px;line-height:1.6;margin:0}.exercises-screen{padding:20px}.exercises-header{background-color:#1a1a1a;border-radius:12px;margin-bottom:20px;padding:20px}.exercises-header h2{color:#fff;margin:10px 0 0}.section-title{margin:20px 0 15px}.exercise-card-simple,.machine-card{background-color:#1a1a1a;border-radius:12px;margin-bottom:12px;padding:15px}.exercise-card-simple h4,.machine-card h4{color:#ff6b35;margin:0 0 10px}.exercise-card-simple p,.machine-card p{color:#aaa;line-height:1.6;margin:8px 0}.machine-card strong{color:#4ecdc4}.passcode-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000d9;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.passcode-prompt{background-color:#1a1a1a;border:2px solid #4ecdc4;border-radius:16px;box-shadow:0 8px 32px #4ecdc44d;max-width:400px;padding:30px;width:90%}.passcode-header{margin-bottom:30px;text-align:center}.passcode-title{color:#fff;font-size:24px;font-weight:700;margin:0 0 10px}.passcode-subtitle{color:#888;font-size:14px;margin:0}.passcode-body{margin-bottom:25px}.passcode-input-group{margin-bottom:20px}.passcode-inputs{display:flex;gap:15px;justify-content:center}.passcode-digit{background-color:#2a2a2a;border:2px solid #4ecdc4;border-radius:12px;color:#fff;font-size:32px;font-weight:700;height:70px;text-align:center;transition:all .2s;width:60px}.passcode-digit:focus{background-color:#333;border-color:#5fded5;box-shadow:0 0 12px #4ecdc466;outline:none;transform:scale(1.05)}.passcode-digit:disabled{cursor:not-allowed;opacity:.5}.passcode-separator{color:#4ecdc4;font-size:14px;font-weight:600;letter-spacing:.5px;margin:25px 0 15px;text-align:center;text-transform:uppercase}.passcode-error{background-color:#ff44441a;border:1px solid #f44;border-radius:8px;color:#f66;font-size:14px;margin-top:15px;padding:12px;text-align:center}.passcode-actions{display:flex;flex-direction:column;gap:10px}.passcode-submit-btn{background:linear-gradient(135deg,#4ecdc4,#3ba89c);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 20px;transition:all .2s}.passcode-submit-btn:hover{box-shadow:0 4px 12px #4ecdc466;transform:translateY(-2px)}.passcode-submit-btn:active{transform:translateY(0)}.passcode-cancel-btn{background-color:initial;border:1px solid #3a3a3a;border-radius:8px;color:#888;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:all .2s}.passcode-cancel-btn:hover{background-color:#2a2a2a;border-color:#555;color:#aaa}@media (max-width:480px){.passcode-prompt{padding:25px 20px}.passcode-digit{font-size:28px;height:60px;width:50px}.passcode-inputs{gap:10px}.passcode-title{font-size:20px}}.settings-screen{margin:0 auto;max-width:600px;padding:20px}.settings-header{margin-bottom:20px}.settings-title{color:#fff;font-size:28px;font-weight:700;margin:15px 0 0}.settings-card{background-color:#1a1a1a;border-radius:12px;margin-bottom:20px;padding:20px}.section-title{color:#fff;font-size:20px;margin:0 0 10px}.settings-description{color:#aaa;font-size:14px;line-height:1.6;margin:0 0 20px}.api-key-section{margin-bottom:20px}.input-label{color:#4ecdc4;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.api-key-input{background-color:#2a2a2a;border:1px solid #3a3a3a;border-radius:8px;box-sizing:border-box;color:#fff;font-family:monospace;font-size:14px;padding:12px;width:100%}.api-key-input:focus{border-color:#4ecdc4;outline:none}.input-hint{color:#888;font-size:12px;margin:8px 0 0}.input-hint a{color:#4ecdc4;text-decoration:none}.input-hint a:hover{text-decoration:underline}.button-group{display:flex;gap:10px}.clear-button,.save-button{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:15px;font-weight:600;padding:14px 20px;transition:all .2s}.save-button{background:linear-gradient(135deg,#4ecdc4,#45b7a9);color:#000}.save-button:hover{box-shadow:0 4px 12px #4ecdc466;transform:translateY(-2px)}.clear-button{background-color:#3a3a3a;color:#ccc}.clear-button:hover{background-color:#4a4a4a;color:#fff}.success-message{animation:slideDown .3s ease;background-color:#1a3a2a;border:2px solid #4ecdc4;border-radius:8px;color:#4ecdc4;font-weight:600;margin-top:15px;padding:12px;text-align:center}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.info-card{margin-bottom:20px}.privacy-note{background-color:#2a2a1a;border-left:3px solid #ff6b35;border-radius:6px;padding:12px}.privacy-note p{color:#ccc;font-size:13px;line-height:1.6;margin:0}@media (max-width:480px){.settings-screen{padding:15px}.settings-title{font-size:24px}.button-group{flex-direction:column}.clear-button,.save-button{width:100%}}.weekly-planner-screen{margin:0 auto;max-width:700px;padding:20px}.planner-header{margin-bottom:25px}.planner-title{color:#fff;font-size:28px;font-weight:700;margin:15px 0 8px}.planner-subtitle{color:#aaa;font-size:15px;line-height:1.5;margin:0}.check-in-prompt-card{background:linear-gradient(135deg,#2a1a2a,#1a2a2a);border:2px solid #ff6b35;border-radius:12px;margin-bottom:20px;padding:25px;text-align:center}.prompt-title{color:#ff6b35;font-size:18px;font-weight:700;margin:0 0 12px}.prompt-text{color:#ccc;font-size:15px;line-height:1.6;margin:0 0 20px}.check-in-start-button{background:linear-gradient(135deg,#ff6b35,#f7931e);border:none;border-radius:10px;box-shadow:0 4px 12px #ff6b354d;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:16px 24px;transition:all .2s}.check-in-start-button:hover{box-shadow:0 6px 16px #ff6b3566;transform:translateY(-2px)}.or-text{color:#888;font-size:13px;font-style:italic;margin:15px 0 0}.data-preview-card{background:linear-gradient(135deg,#1a2a2a,#2a1a2a);border:2px solid #4ecdc4;border-radius:12px;margin-bottom:20px;padding:20px}.preview-title{color:#4ecdc4;font-size:18px;font-weight:700;margin:0 0 15px}.preview-list{color:#ccc;margin:0;padding-left:20px}.preview-list li{font-size:15px;line-height:2;margin-bottom:8px}.last-week-summary{background-color:#1a1a2a;border-radius:12px;margin-bottom:20px;padding:20px}.summary-title{color:#fff;font-size:18px;font-weight:700;margin:0 0 15px}.stat-box{background-color:#2a2a3a;border-radius:8px;padding:15px;text-align:center}.stat-number{color:#4ecdc4;display:block;font-size:32px;font-weight:700;margin-bottom:5px}.stat-label{display:block;font-size:13px}.missed-text{color:#ff6b6b;font-size:14px;margin:0;text-align:center}.generate-button{background:linear-gradient(135deg,#ff6b35,#f7931e);box-shadow:0 6px 16px #ff6b3566;font-size:17px;margin-bottom:20px;padding:18px 24px;transition:all .3s}.generate-button:hover:not(:disabled){box-shadow:0 8px 20px #ff6b3580;transform:translateY(-3px)}.generate-button:disabled{opacity:.7}.generate-button:active:not(:disabled){transform:translateY(-1px)}.error-card{background-color:#3a2a2a;border:2px solid #ff6b6b;border-radius:12px;margin-bottom:20px;padding:20px}.error-text{color:#ff6b6b;font-size:15px;margin:0 0 15px}.settings-button{background-color:#4ecdc4;border:none;border-radius:8px;color:#000;cursor:pointer;font-size:15px;font-weight:600;padding:12px 20px}.settings-button:hover{background-color:#45bfb2}.plan-result{margin-top:30px}.plan-summary-card{background:linear-gradient(135deg,#2a2a3a,#1a1a2a);border:2px solid #9b59b6;border-radius:12px;box-shadow:0 4px 12px #9b59b64d;margin-bottom:25px;padding:25px}.summary-header{color:#9b59b6;font-size:20px;font-weight:700;margin:0 0 15px}.summary-text{color:#ddd;font-size:15px;line-height:1.8;margin:0}.plan-preview{margin-bottom:25px}.preview-header{color:#fff;font-size:20px;font-weight:700;margin:0 0 20px}.day-preview-card{background-color:#1a1a1a;border:1px solid #2a2a2a;border-radius:10px;margin-bottom:12px;padding:16px;transition:all .2s}.day-preview-card:hover{border-color:#4ecdc4;box-shadow:0 2px 8px #4ecdc433}.day-preview-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.day-name{color:#4ecdc4;font-size:18px;font-weight:700;margin:0;text-transform:capitalize}.day-time{color:#888;font-size:13px}.day-workout-name{color:#fff;font-size:16px;font-weight:600;margin:0 0 8px}.day-focus{color:#ff6b35;font-size:14px;margin:0 0 6px}.day-exercises{color:#aaa;font-size:13px;margin:0}.action-buttons{display:flex;gap:12px;margin-bottom:20px}.regenerate-button,.save-plan-button{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:16px;font-weight:700;padding:16px 20px;transition:all .2s}.save-plan-button{background:linear-gradient(135deg,#4ecdc4,#45b7a9);box-shadow:0 4px 12px #4ecdc44d;color:#000}.save-plan-button:hover{box-shadow:0 6px 16px #4ecdc466;transform:translateY(-2px)}.regenerate-button{background-color:#3a3a3a;color:#ccc}.regenerate-button:hover{background-color:#4a4a4a;color:#fff}.warning-note{background-color:#3a2a1a;border-left:3px solid #ff6b35;border-radius:6px;padding:12px 15px}.warning-note p{color:#ccc;font-size:13px;margin:0}.info-card{background-color:#1a1a2a;border:1px solid #3a3a4a;border-radius:12px;margin-top:20px;padding:20px}.info-header{color:#4ecdc4;font-size:16px;font-weight:700;margin:0 0 15px}.info-steps{color:#ccc;margin:0;padding-left:20px}.info-steps li{font-size:14px;line-height:1.8;margin-bottom:10px}@media (max-width:480px){.weekly-planner-screen{padding:15px}.planner-title{font-size:24px}.summary-stats{grid-template-columns:1fr}.action-buttons{flex-direction:column}.regenerate-button,.save-plan-button{width:100%}}.check-in-screen{background:linear-gradient(135deg,#1a1a2a,#2a1a2a);min-height:100vh;padding:20px}.check-in-container{margin:0 auto;max-width:700px}.check-in-header{margin-bottom:30px;text-align:center}.check-in-title{color:#fff;font-size:32px;font-weight:700;margin:0 0 10px}.check-in-subtitle{color:#aaa;font-size:16px;line-height:1.5;margin:0 0 15px}.week-badge{background:linear-gradient(135deg,#4ecdc4,#45b7a9);border-radius:20px;color:#000;display:inline-block;font-size:14px;font-weight:700;margin:0;padding:8px 16px}.check-in-card{background-color:#1a1a1a;border-radius:16px;box-shadow:0 8px 24px #0006;margin-bottom:25px;padding:30px}.metric-section{border-bottom:1px solid #2a2a2a;margin-bottom:30px;padding-bottom:25px}.metric-section:last-of-type{border-bottom:none}.section-title{color:#4ecdc4;font-size:18px;font-weight:700;margin:0 0 20px}.form-group{margin-bottom:18px}.form-group label{color:#ccc}.form-group input,.form-group textarea{background-color:#2a2a2a;border:1px solid #3a3a3a;border-radius:8px;box-sizing:border-box;color:#fff;font-size:15px;padding:12px;transition:border-color .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#4ecdc4;outline:none}.form-group input::placeholder{color:#666}.calculated-field{background-color:#1a2a1a!important;border-color:#4ecdc4!important;cursor:not-allowed}.field-hint{color:#888;font-size:12px;font-style:italic;margin:4px 0 0}.bp-inputs{align-items:center;gap:8px}.bp-inputs input{width:auto}.bp-separator{color:#888;font-size:24px;font-weight:700}.notes-textarea{font-family:inherit;line-height:1.5;min-height:80px;resize:vertical}.required-note{background-color:#2a2a1a;border-left:3px solid #ff6b35;border-radius:6px;color:#ccc;font-size:13px;margin-bottom:20px;padding:12px}.btn-save-checkin,.btn-skip{border:none;border-radius:10px;cursor:pointer;flex:1 1;font-size:16px;font-weight:700;padding:16px 20px;transition:all .2s}.btn-skip{background-color:#3a3a3a;color:#ccc}.btn-skip:hover{background-color:#4a4a4a;color:#fff}.btn-save-checkin{background:linear-gradient(135deg,#4ecdc4,#45b7a9);box-shadow:0 4px 12px #4ecdc44d;color:#000}.btn-save-checkin:hover:not(:disabled){box-shadow:0 6px 16px #4ecdc466;transform:translateY(-2px)}.btn-save-checkin:disabled{cursor:not-allowed;opacity:.5;transform:none}.info-box{background-color:#1a1a1a99;border:1px solid #3a3a3a;border-radius:12px;padding:20px}.info-title{color:#4ecdc4;font-size:16px;font-weight:700;margin:0 0 15px}.info-list{color:#ccc;margin:0;padding-left:20px}.info-list li{font-size:14px;line-height:1.8;margin-bottom:8px}@media (max-width:480px){.check-in-card{padding:20px}.check-in-title{font-size:26px}.form-row{grid-template-columns:1fr}.button-row{flex-direction:column}.btn-save-checkin,.btn-skip{width:100%}}.weekly-review-screen{margin:0 auto;max-width:600px;padding:20px}.review-header{background-color:#1a1a1a;border:2px solid #4ecdc4;border-radius:12px;margin-bottom:20px;padding:20px}.review-header h2{color:#4ecdc4;font-size:24px;margin:10px 0 5px}.review-subtitle{color:#888;font-size:14px;margin:5px 0 0}.week-summary{background:linear-gradient(135deg,#1a2a2a,#1a1a2a);border:2px solid #4ecdc4;border-radius:12px;margin-bottom:20px;padding:20px}.week-summary h3{color:#4ecdc4;font-size:18px;margin:0 0 15px}.summary-stats{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr;margin-bottom:15px}.summary-stat{align-items:center;background-color:#4ecdc41a;border-radius:8px;display:flex;gap:12px;padding:15px}.stat-icon{font-size:32px}.stat-value{color:#4ecdc4;font-size:20px;font-weight:700;margin:0}.stat-label{color:#888;font-size:12px;margin:2px 0 0}.performance-note{background-color:#4ecdc40d;border-left:3px solid #4ecdc4;border-radius:6px;color:#aaa;font-size:14px;margin:10px 0 0;padding:12px}.review-form{background-color:#1a1a1a;border-radius:12px;padding:20px}.review-form h3{color:#fff;font-size:18px;margin:0 0 5px}.form-note{color:#888;font-size:13px;line-height:1.4;margin:0 0 20px}.form-group input{background-color:#2a2a2a;border:1px solid #3a3a3a;border-radius:8px;color:#fff;font-size:16px;padding:12px;width:100%}.form-group input:focus{border-color:#4ecdc4;outline:none}.previous-value{color:#666;display:block;font-size:12px;font-style:italic;margin-top:5px}.error-message{background-color:#ff6b351a;border:1px solid #ff6b35;border-radius:8px;margin-bottom:15px;padding:12px}.error-message p{color:#ff6b35;font-size:14px;margin:0}.generate-button{background:linear-gradient(135deg,#4ecdc4,#3ba89c);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;margin-top:10px;padding:18px;transition:all .2s;width:100%}.generate-button:hover{box-shadow:0 4px 12px #4ecdc466;transform:translateY(-2px)}.generate-button:active{transform:translateY(0)}.generate-button:disabled{background:linear-gradient(135deg,#666,#555);cursor:not-allowed;transform:none}.form-section{border-bottom:1px solid #2a2a2a;margin-bottom:32px;padding-bottom:24px}.form-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section-title{align-items:center;color:#ff6b35;display:flex;font-size:16px;font-weight:600;gap:8px;margin:0 0 16px}.form-section-icon{font-size:20px}.form-section-description{color:#888;font-size:13px;line-height:1.5;margin:-8px 0 16px}.form-row{grid-gap:16px;gap:16px;margin-bottom:20px}.bp-inputs{display:flex;gap:12px}.bp-inputs input{flex:1 1}@media (max-width:600px){.form-row{grid-template-columns:1fr}}@media (max-width:480px){.summary-stats{grid-template-columns:1fr}}.slider-group{background-color:#1a1a1a;border-radius:10px;margin-bottom:25px;padding:15px}.slider-label{color:#fff;display:block;font-size:15px;font-weight:600;margin-bottom:12px}.slider-description{color:#4ecdc4;font-size:13px;font-weight:400;margin-left:8px}.slider-container{align-items:center;display:flex;gap:12px;margin-top:8px}.slider-max,.slider-min{color:#888;font-size:11px;min-width:80px;text-align:center}.recovery-slider{-webkit-appearance:none;border-radius:4px;cursor:pointer;flex:1 1;height:8px;outline:none}.recovery-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#4ecdc4;border-radius:50%;box-shadow:0 2px 6px #4ecdc466;cursor:pointer;height:20px;-webkit-transition:all .2s;transition:all .2s;width:20px}.recovery-slider::-webkit-slider-thumb:hover{box-shadow:0 4px 12px #4ecdc499;height:24px;width:24px}.recovery-slider::-moz-range-thumb{background:#4ecdc4;border:none;border-radius:50%;box-shadow:0 2px 6px #4ecdc466;cursor:pointer;height:20px;-moz-transition:all .2s;transition:all .2s;width:20px}.recovery-slider::-moz-range-thumb:hover{box-shadow:0 4px 12px #4ecdc499;height:24px;width:24px}.barcode-scanner-modal{align-items:center;animation:fadeIn .2s ease-in-out;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.scanner-container{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.scanner-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px}.scanner-header h3{color:#2c3e50;font-size:20px;margin:0}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:#7f8c8d;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:background-color .2s;width:32px}.close-button:hover{background-color:#f0f0f0}.scanner-content{align-items:center;background-color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:20px}.webcam-container{background:#000;border-radius:8px;max-width:400px;overflow:hidden;position:relative;width:100%}.webcam-container.hidden{display:none!important}.webcam-video{display:block;height:auto;width:100%}.webcam-container canvas,.webcam-container video{border-radius:8px;display:block;height:auto!important;width:100%!important}.scanner-overlay,.webcam-container canvas.drawingBuffer{left:0;position:absolute;top:0}.scanner-overlay{align-items:center;bottom:0;display:flex;justify-content:center;pointer-events:none;right:0}.scanner-frame{animation:pulse 2s infinite;border:3px solid #3498db;border-radius:8px;box-shadow:0 0 0 9999px #00000080;height:40%;width:80%}.scanner-instructions{color:#7f8c8d;font-size:14px;margin-top:15px;text-align:center}.scanner-loading{align-items:center;display:flex;flex-direction:column;gap:15px}.spinner{animation:spin 1s linear infinite;border:4px solid #ecf0f1;border-radius:50%;border-top-color:#3498db;height:50px;width:50px}.scanner-loading p{color:#7f8c8d;font-size:16px}.scanner-error{background:#ffe6e6;border:1px solid #f44;border-radius:8px;color:#c00;padding:15px;text-align:center}.scanner-error p{font-size:14px;margin:0}.scanner-actions{border-top:1px solid #eee;display:flex;gap:10px;padding:20px}.cancel-button,.manual-entry-button{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:12px;transition:all .2s}.manual-entry-button{background:#3498db;color:#fff}.manual-entry-button:hover{background:#2980b9;transform:translateY(-1px)}.cancel-button{background:#ecf0f1;color:#7f8c8d}.cancel-button:hover{background:#bdc3c7}.scanner-tips{background:#f8f9fa;border-top:1px solid #eee;padding:15px 20px}.scanner-tips p{color:#2c3e50;font-size:14px;font-weight:600;margin:0 0 10px}.scanner-tips ul{color:#7f8c8d;font-size:13px;margin:0;padding-left:20px}.scanner-tips li{margin-bottom:5px}@media (max-width:600px){.scanner-container{max-height:95vh;width:95%}.scanner-header h3{font-size:18px}.scanner-actions{flex-direction:column}.cancel-button,.manual-entry-button{width:100%}}.food-search-modal{align-items:center;animation:fadeIn .2s ease-in-out;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.search-container{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.search-header{align-items:center;border-bottom:1px solid #eee;display:flex;flex-shrink:0;justify-content:space-between;padding:20px}.search-header h3{color:#2c3e50;font-size:20px;margin:0}.search-content{flex:1 1;overflow-y:auto;padding:20px}.search-input-container{margin-bottom:15px;position:relative}.search-input{border:2px solid #e0e0e0;border-radius:8px;box-sizing:border-box;font-size:16px;padding:14px 40px 14px 16px;transition:border-color .2s;width:100%}.search-input:focus{border-color:#3498db;outline:none}.clear-button{align-items:center;background:#e0e0e0;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:14px;height:24px;justify-content:center;position:absolute;right:10px;top:50%;transform:translateY(-50%);transition:background-color .2s;width:24px}.clear-button:hover{background:#bdc3c7}.natural-language-button{background:#2ecc71;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;margin-bottom:20px;padding:12px;transition:all .2s;width:100%}.natural-language-button:hover:not(:disabled){background:#27ae60;transform:translateY(-1px)}.natural-language-button:disabled{background:#bdc3c7;cursor:not-allowed}.search-loading{align-items:center;display:flex;flex-direction:column;gap:15px;padding:30px}.search-loading p{color:#7f8c8d;font-size:16px}.search-error{background:#ffe6e6;border:1px solid #f44;border-radius:8px;color:#c00;margin-bottom:15px;padding:15px;text-align:center}.search-error p{font-size:14px;margin:0}.search-results{max-height:400px;overflow-y:auto}.results-section{margin-bottom:25px}.results-section-title{color:#7f8c8d;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.results-list{display:flex;flex-direction:column;gap:8px}.result-item{align-items:center;background:#f8f9fa;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .2s}.result-item:hover{background:#e9ecef;transform:translateX(4px)}.result-photo{border-radius:6px;flex-shrink:0;height:50px;object-fit:cover;width:50px}.result-info{flex:1 1;min-width:0}.result-name{color:#2c3e50;font-size:15px;font-weight:600;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-brand{color:#3498db;font-size:13px;margin-bottom:2px}.result-serving{color:#7f8c8d;font-size:13px}.result-arrow{color:#bdc3c7;flex-shrink:0;font-size:20px}.no-results{color:#7f8c8d;padding:40px 20px;text-align:center}.no-results p{font-size:16px;margin:0 0 10px}.no-results-hint{color:#95a5a6;font-size:14px}.search-tips{background:#f8f9fa;border-top:1px solid #eee;flex-shrink:0;padding:15px 20px}.search-tips p{color:#2c3e50;font-size:14px;font-weight:600;margin:0 0 10px}.search-tips ul{color:#7f8c8d;font-size:13px;margin:0;padding-left:20px}.search-tips li{margin-bottom:5px}.search-tips strong{color:#2c3e50}@media (max-width:600px){.search-container{max-height:95vh;width:95%}.search-header h3{font-size:18px}.search-input{font-size:16px}.result-photo{height:40px;width:40px}.result-name{font-size:14px}.result-serving{font-size:12px}}.nutrition-tracker{box-sizing:border-box;margin:0 auto;max-width:600px;overflow-x:hidden;padding:20px;width:100%}.nutrition-tracker button,.nutrition-tracker div,.nutrition-tracker input{box-sizing:border-box;max-width:100%}.nutrition-tracker *{box-sizing:border-box}.nutrition-header{margin-bottom:20px}.page-title{color:#fff;font-size:28px;font-weight:700;margin:10px 0}.date-selector{align-items:center;background-color:#1a1a1a;border-radius:12px;display:flex;justify-content:space-between;margin-bottom:20px;padding:15px}.date-nav-btn{background-color:#2a2a2a;border:none;border-radius:8px;color:#4ecdc4;cursor:pointer;font-size:24px;font-weight:700;height:40px;transition:all .2s;width:40px}.date-nav-btn:hover{background-color:#333;transform:scale(1.1)}.date-display{flex:1 1;text-align:center}.date-label{color:#fff;font-size:18px;font-weight:600}.date-value{color:#888;font-size:14px;margin-top:2px}.nutrition-bar-card{background-color:#1a1a1a;border:2px solid #2a2a2a;border-radius:12px;margin-bottom:15px;padding:20px}.bar-header{justify-content:space-between;margin-bottom:15px}.bar-header,.bar-label{align-items:center;display:flex}.bar-label{gap:10px}.bar-icon{font-size:24px}.bar-title{color:#fff;font-size:18px;font-weight:600}.add-btn{align-items:center;background-color:#4ecdc4;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:28px;font-weight:700;height:40px;justify-content:center;line-height:1;transition:all .2s;width:40px}.add-btn:hover{background-color:#5fded5;transform:scale(1.1)}.add-btn:active{transform:scale(.95)}.quick-input{align-items:center;display:flex;gap:10px;margin-bottom:15px}.quick-input-field{background-color:#2a2a2a;border:2px solid #4ecdc4;border-radius:8px;color:#fff;flex:1 1;font-size:16px;padding:12px}.quick-input-field:focus{background-color:#333;border-color:#5fded5;outline:none}.quick-add-btn{background-color:#4ecdc4;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 20px;transition:all .2s}.quick-add-btn:hover{background-color:#5fded5}.quick-cancel-btn{align-items:center;background-color:#f44;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:24px;font-weight:700;height:40px;justify-content:center;transition:all .2s;width:40px}.quick-cancel-btn:hover{background-color:#f66}.ai-meal-estimation{background:linear-gradient(135deg,#9b59b626,#4ecdc426);border:2px solid #9b59b6;border-radius:12px;margin-bottom:15px;padding:15px}.ai-meal-header{align-items:center;display:flex;gap:10px;margin-bottom:12px}.ai-icon{font-size:24px}.ai-label{color:#9b59b6;font-size:16px;font-weight:600}.ai-meal-input-container{align-items:center;display:flex;gap:10px}.ai-meal-input{background-color:#2a2a2a;border:2px solid #9b59b6;border-radius:8px;color:#fff;flex:1 1;font-size:15px;padding:12px}.ai-meal-input:focus{background-color:#333;border-color:#b370cf;outline:none}.ai-meal-input:disabled{cursor:not-allowed;opacity:.5}.ai-estimate-btn{background:linear-gradient(135deg,#9b59b6,#8e44ad);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 20px;transition:all .2s;white-space:nowrap}.ai-estimate-btn:hover:not(:disabled){box-shadow:0 4px 12px #9b59b666;transform:translateY(-2px)}.ai-estimate-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.ai-disabled-note{color:#888;font-size:13px;font-style:italic;margin-top:8px;text-align:center}.complex-meal-breakdown{background:linear-gradient(135deg,#ff6b351a,#4ecdc41a);border:2px solid #ff6b35;border-radius:12px;margin-bottom:15px;padding:15px}.complex-meal-header{align-items:center;display:flex;gap:10px;margin-bottom:15px}.complex-meal-icon{font-size:24px}.complex-meal-title{color:#ff6b35;font-size:16px;font-weight:600}.complex-meal-items{display:flex;flex-direction:column;gap:12px;margin-bottom:15px}.complex-meal-item{background-color:#2a2a2a;border:1px solid #3a3a3a;border-radius:8px;padding:12px}.complex-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.complex-item-name{color:#fff;font-size:15px;font-weight:600}.complex-item-remove{align-items:center;background-color:#f44;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:24px;justify-content:center;line-height:1;transition:all .2s;width:24px}.complex-item-remove:hover{background-color:#f66;transform:scale(1.1)}.complex-item-info{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.complex-item-serving{color:#4ecdc4;font-size:13px;font-weight:500}.complex-item-nutrition{color:#aaa;font-size:13px}.complex-item-servings{align-items:center;display:flex;gap:10px;margin-bottom:8px}.complex-item-servings label{color:#ccc;font-size:13px;font-weight:500}.complex-servings-input{background-color:#1a1a1a;border:1px solid #555;border-radius:6px;color:#fff;flex:1 1;font-size:14px;font-weight:600;max-width:80px;padding:6px 10px;text-align:center}.complex-servings-input:focus{background-color:#222;border-color:#4ecdc4;outline:none}.complex-item-total{background-color:#4ecdc41a;border:1px solid #4ecdc4;border-radius:6px;color:#4ecdc4;font-size:13px;font-weight:600;padding:8px;text-align:center}.complex-meal-actions{display:flex;gap:10px}.add-all-complex-btn{background:linear-gradient(135deg,#4ecdc4,#3ba89c);border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:15px;font-weight:600;padding:14px;transition:all .2s}.add-all-complex-btn:hover{box-shadow:0 4px 12px #4ecdc466;transform:translateY(-2px)}.cancel-complex-btn{background-color:#2a2a2a;border:1px solid #3a3a3a;border-radius:8px;color:#888;cursor:pointer;font-size:15px;font-weight:600;padding:14px 20px;transition:all .2s}.cancel-complex-btn:hover{background-color:#333;border-color:#555;color:#aaa}.saved-items-btn-container{margin-bottom:15px}.saved-items-btn{background-color:#2a2a2a;border:2px solid #4ecdc4;border-radius:8px;color:#4ecdc4;cursor:pointer;font-size:14px;font-weight:600;padding:12px;transition:all .2s;width:100%}.saved-items-btn:hover{background-color:#4ecdc41a}.saved-items-list{background-color:#2a2a2a;border-radius:8px;margin-bottom:15px;max-height:300px;overflow-y:auto;padding:10px}.saved-item{align-items:center;background-color:#1a1a1a;border-radius:6px;cursor:pointer;display:flex;gap:10px;justify-content:space-between;margin-bottom:8px;padding:12px;transition:background-color .2s}.saved-item:hover{background-color:#333}.saved-item:last-child{margin-bottom:0}.saved-item-photo{background-color:#2a2a2a;border-radius:6px;flex-shrink:0;height:40px;object-fit:cover;width:40px}.saved-item-content{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.saved-item-header{display:flex;flex-direction:column;gap:2px}.saved-item-name{word-wrap:break-word;color:#fff;font-size:15px;font-weight:600;line-height:1.3}.saved-item-brand{color:#4ecdc4;font-size:12px;font-weight:500}.saved-item-values{color:#888;font-size:13px}.saved-item-delete{align-items:center;background-color:#f44;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;font-weight:700;height:28px;justify-content:center;transition:all .2s;width:28px}.saved-item-delete:hover{background-color:#f66}.quick-input-form{display:flex;flex-direction:column;gap:12px}.quick-input-actions{display:flex;gap:10px}.quick-input-actions .quick-add-btn{flex:1 1}.quick-input-actions .quick-cancel-btn{font-size:16px;height:auto;padding:12px 20px;width:auto}.save-to-common-label{align-items:center;color:#aaa;cursor:pointer;display:flex;font-size:14px;gap:8px;-webkit-user-select:none;user-select:none}.save-to-common-checkbox{accent-color:#4ecdc4;cursor:pointer;height:18px;width:18px}.per-serving-label{color:#4ecdc4;font-size:13px;font-weight:600;letter-spacing:.5px;margin-top:4px;text-transform:uppercase}.servings-input-container{align-items:center;background-color:#2a2a2a;border:2px solid #4ecdc4;border-radius:8px;display:flex;gap:12px;padding:12px}.servings-label{color:#fff;flex-shrink:0;font-size:14px;font-weight:600}.servings-input{background-color:#1a1a1a;border:1px solid #555;border-radius:6px;color:#fff;flex:1 1;font-size:16px;font-weight:600;padding:8px 12px;text-align:center}.servings-input:focus{background-color:#222;border-color:#4ecdc4;outline:none}.totals-preview{background-color:#4ecdc41a;border:1px solid #4ecdc4;border-radius:8px;color:#4ecdc4;font-size:15px;font-weight:600;padding:12px;text-align:center}.progress-bar-container{background-color:#2a2a2a;border-radius:15px;height:30px;margin-bottom:10px;overflow:hidden;position:relative;width:100%}.progress-bar-fill{border-radius:15px;height:100%;transition:width .3s ease,background-color .3s ease}.progress-bar-overflow{animation:pulse 1.5s ease-in-out infinite;background-color:#ffb84d;border-radius:15px;height:100%;position:absolute;right:0;top:0}@keyframes pulse{0%,to{opacity:.8}50%{opacity:1}}.progress-text{align-items:center;display:flex;font-size:20px;justify-content:center}.progress-current{font-size:24px;font-weight:700}.progress-separator{color:#666;margin:0 5px}.progress-goal{color:#888;font-size:18px}.entries-card{background-color:#1a1a1a;border:2px solid #2a2a2a;border-radius:12px;margin-top:20px;padding:20px}.card-title{color:#fff;font-size:18px;font-weight:600;margin:0 0 15px}.entries-list{display:flex;flex-direction:column;gap:10px}.entry-item{align-items:center;background-color:#2a2a2a;border-radius:8px;display:flex;gap:15px;justify-content:space-between;padding:12px 15px;transition:background-color .2s}.entry-item:hover{background-color:#333}.entry-main-content{display:flex;flex:1 1;flex-direction:column;gap:6px;min-width:0;overflow:hidden}.entry-food-name{word-wrap:break-word;color:#fff;font-size:16px;font-weight:600;line-height:1.3;overflow-wrap:break-word;word-break:break-word}.entry-macros{display:flex;flex-wrap:wrap;gap:12px}.entry-macro{color:#4ecdc4;font-size:14px;font-weight:500;white-space:nowrap}.entry-actions{gap:8px}.entry-actions,.entry-edit-btn{align-items:center;display:flex;flex-shrink:0}.entry-edit-btn{background-color:#4ecdc4;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:18px;height:30px;justify-content:center;transition:all .2s;width:30px}.entry-edit-btn:hover{background-color:#5fded5;transform:scale(1.1)}.entry-delete-btn{align-items:center;background-color:#f44;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:20px;font-weight:700;height:30px;justify-content:center;transition:all .2s;width:30px}.entry-delete-btn:hover{background-color:#f66;transform:scale(1.1)}.log-new-item-btn{background-color:#2a2a2a;border:2px solid #4ecdc4;border-radius:8px;color:#4ecdc4;cursor:pointer;font-size:15px;font-weight:600;margin-top:15px;padding:14px;transition:all .2s;width:100%}.log-new-item-btn:hover{background-color:#4ecdc41a;transform:translateY(-2px)}.empty-state{background-color:#1a1a1a;border:2px dashed #2a2a2a;border-radius:12px;margin-top:20px;padding:40px 20px;text-align:center}.empty-message{color:#888;font-size:15px;margin:0 0 20px}.log-first-item-btn{background-color:#4ecdc4;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 28px;transition:all .2s}.log-first-item-btn:hover{background-color:#5fded5;box-shadow:0 4px 12px #4ecdc44d;transform:translateY(-2px)}.entry-content{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:15px}.entry-value{color:#fff;font-size:16px;font-weight:600}.entry-note{color:#888;font-size:14px;font-style:italic}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center}.loading-spinner{height:50px;width:50px}@media (max-width:480px){.nutrition-tracker{padding:10px}.page-title{font-size:24px}.bar-title{font-size:16px}.progress-text{font-size:18px}.progress-current{font-size:22px}.ai-meal-input-container,.quick-input{flex-direction:column;gap:12px}.ai-estimate-btn{width:100%}.servings-input-container{align-items:stretch;flex-direction:column;gap:8px}.servings-label{text-align:center}.entries-card,.nutrition-bar-card{padding:15px}.date-selector{padding:12px}}.quick-action-buttons{display:flex;gap:10px;margin-bottom:15px}.quick-action-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:15px;font-weight:600;gap:6px;justify-content:center;padding:14px 16px;transition:all .2s}.quick-action-btn:disabled{cursor:not-allowed;opacity:.5}.barcode-btn{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}.barcode-btn:hover:not(:disabled){box-shadow:0 4px 12px #3498db66;transform:translateY(-2px)}.search-btn{background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff}.search-btn:hover:not(:disabled){box-shadow:0 4px 12px #2ecc7166;transform:translateY(-2px)}@media (max-width:768px){.ai-meal-input-container,.quick-input{flex-direction:column;gap:12px}.ai-estimate-btn{width:100%}.quick-action-buttons{flex-direction:column}.quick-action-btn{width:100%}}.ai-estimator-container{margin-bottom:15px}.ai-estimator-toggle{align-items:center;background-color:#2a2a2a;border:2px solid #9b59b6;border-radius:8px;color:#9b59b6;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px;transition:all .2s;width:100%}.ai-estimator-toggle:hover{background-color:#9b59b61a;border-color:#b370cf}.user-select-screen{align-items:center;background:linear-gradient(135deg,#1a1a2a,#2a1a2a);display:flex;justify-content:center;min-height:100vh;padding:20px}.user-select-container{max-width:500px;width:100%}.app-logo{margin-bottom:40px;text-align:center}.logo-text{color:#fff;font-size:36px;font-weight:700;margin:0 0 10px;text-shadow:0 2px 8px #4ecdc44d}.logo-subtitle{color:#9b59b6;font-size:16px;font-weight:600;margin:0}.user-select-card{background-color:#1a1a1a;border-radius:16px;box-shadow:0 8px 24px #0006;margin-bottom:30px;padding:30px}.select-title{color:#fff;font-size:22px;font-weight:700;margin:0 0 25px;text-align:center}.user-list{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.user-button{align-items:center;background-color:#2a2a2a;border:2px solid #3a3a3a;border-radius:12px;cursor:pointer;display:flex;gap:15px;padding:18px;transition:all .2s;width:100%}.user-button:hover{background-color:#2a2a3a;border-color:#4ecdc4;transform:translateX(5px)}.user-avatar{align-items:center;background:linear-gradient(135deg,#4ecdc4,#45b7a9);border-radius:25px;color:#000;display:flex;flex-shrink:0;font-size:24px;font-weight:700;height:50px;justify-content:center;width:50px}.user-info{display:flex;flex:1 1;flex-direction:column;gap:4px;text-align:left}.user-name{color:#fff;font-size:18px;font-weight:700;text-transform:capitalize}.user-meta{color:#888;font-size:13px}.user-arrow{color:#4ecdc4;font-size:24px}.add-user-button{align-items:center;background:linear-gradient(135deg,#9b59b6,#8e44ad);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;justify-content:center;padding:18px;transition:all .2s;width:100%}.add-user-button:hover{box-shadow:0 6px 16px #9b59b666;transform:translateY(-2px)}.add-icon{font-size:24px;font-weight:700}.welcome-features{background-color:#1a1a1a99;border:1px solid #3a3a3a;border-radius:12px;padding:20px}.features-title{color:#4ecdc4;font-size:16px;font-weight:700;margin:0 0 15px;text-align:center}.features-list{list-style:none;margin:0;padding:0}.features-list li{color:#ccc;font-size:14px;line-height:1.6;padding:8px 0}@media (max-width:480px){.logo-text{font-size:28px}.user-select-card{padding:20px}.select-title{font-size:20px}.user-button{padding:15px}.user-avatar{font-size:20px;height:45px;width:45px}.user-name{font-size:16px}}.onboarding-screen{align-items:center;background:linear-gradient(135deg,#1a1a2a,#2a1a2a);display:flex;justify-content:center;min-height:100vh;padding:20px}.onboarding-container{max-width:600px;width:100%}.onboarding-header{margin-bottom:30px;text-align:center}.onboarding-logo{color:#fff;font-size:32px;font-weight:700;margin:0 0 20px}.progress-bar{background-color:#2a2a2a;border-radius:3px;height:6px;margin-bottom:10px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#4ecdc4,#ff6b35);height:100%;transition:width .3s ease}.progress-text{color:#888;font-size:13px;margin:0}.api-key-info-box{background:#ff6b351a;border:1px solid #ff6b35;border-radius:12px;margin-bottom:20px;padding:16px}.api-key-info-box p{color:#fff;font-size:14px;line-height:1.5;margin:8px 0}.time-preferences{margin-top:12px}.time-hint{background:#4ecdc41a;border-left:3px solid #4ecdc4;border-radius:4px;color:#4ecdc4;font-size:14px;margin-bottom:16px;padding:12px}.onboarding-card{background-color:#1a1a1a;border-radius:16px;box-shadow:0 8px 24px #0006;padding:35px}.onboarding-step{animation:fadeIn .3s ease}.step-title{color:#fff;font-size:24px;font-weight:700;margin:0 0 10px}.step-subtitle{color:#aaa;font-size:15px;line-height:1.5;margin:0 0 30px}.form-group{margin-bottom:20px}.form-group label{color:#4ecdc4;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.form-group input,.form-group select{background-color:#2a2a2a;border:1px solid #3a3a3a;border-radius:8px;box-sizing:border-box;color:#fff;font-size:15px;padding:12px;width:100%}.form-group input:focus,.form-group select:focus{border-color:#4ecdc4;outline:none}.form-group select{cursor:pointer}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.checkbox-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.checkbox-label{align-items:center;background-color:#2a2a2a;border:1px solid #3a3a3a;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:10px 12px;text-transform:capitalize;transition:all .2s}.checkbox-label:hover{background-color:#2a2a3a;border-color:#4ecdc4}.checkbox-label input[type=checkbox]{margin:0;width:auto}.checkbox-label input[type=checkbox]:checked+span{color:#4ecdc4;font-weight:600}.checkbox-label span{color:#ccc;font-size:14px}.error-box{background-color:#3a2a2a;border:2px solid #ff6b6b;border-radius:8px;margin-bottom:20px;padding:15px}.error-box p{color:#ff6b6b;font-size:14px;margin:0 0 5px}.error-hint{color:#aaa!important;font-size:13px!important}.button-row{display:flex;gap:12px;margin-top:30px}.btn-primary,.btn-secondary{border-radius:10px;font-size:16px;font-weight:700;padding:14px 20px}.btn-primary{box-shadow:0 4px 12px #ff6b354d}.btn-primary:hover:not(:disabled){box-shadow:0 6px 16px #ff6b3566;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.5;transform:none}.loading-container{padding:60px 20px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #2a2a2a;border-radius:50%;border-top-color:#4ecdc4;height:60px;margin:0 auto 30px;width:60px}@keyframes spin{to{transform:rotate(1turn)}}.loading-title{color:#fff;font-size:24px;font-weight:700;margin:0 0 15px}.loading-text{color:#ccc;font-size:16px;line-height:1.6;margin:0 0 10px}.loading-subtext{color:#888;font-size:14px;margin:0}@media (max-width:480px){.onboarding-card{padding:25px}.step-title{font-size:20px}.checkbox-grid,.form-row{grid-template-columns:1fr}.button-row{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.install-prompt-overlay{align-items:center;animation:fadeIn .3s ease;background-color:#000000d9;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.install-prompt-card{animation:slideUp .3s ease;background:linear-gradient(135deg,#1a1a1a,#2a2a2a);border:2px solid #ff6b35;border-radius:16px;box-shadow:0 8px 32px #ff6b354d;max-width:500px;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.install-prompt-header{align-items:center;border-bottom:1px solid #3a3a3a;display:flex;justify-content:space-between;padding:20px 20px 15px}.install-prompt-header h3{color:#fff;font-size:22px;font-weight:700;margin:0}.close-btn{align-items:center;background:none;border:none;color:#888;cursor:pointer;display:flex;font-size:32px;height:32px;justify-content:center;line-height:1;padding:0;width:32px}.close-btn:hover{color:#fff}.install-prompt-body{padding:20px}.install-prompt-text{color:#ccc;font-size:16px;line-height:1.6;margin:0 0 20px}.ios-instructions{background-color:#2a2a3a;border-left:4px solid #4ecdc4;border-radius:10px;padding:15px}.ios-instructions h4{color:#4ecdc4;font-size:16px;margin:0 0 12px}.ios-instructions ol{color:#ccc;margin:0;padding-left:20px}.ios-instructions li{font-size:15px;line-height:1.8;margin-bottom:8px}.ios-instructions strong{color:#fff;font-weight:600}.share-icon{background-color:#4ecdc4;border-radius:4px;color:#000;display:inline-block;font-size:14px;font-weight:700;margin:0 4px;padding:2px 6px}.ios-tip{background-color:#3a3a2a;border-left:3px solid #ff6b35;border-radius:6px;color:#ddd;font-size:14px;line-height:1.5;margin-top:12px;padding:10px}.android-instructions{text-align:center}.install-btn{background:linear-gradient(135deg,#4ecdc4,#45b7a9);border:none;border-radius:10px;box-shadow:0 4px 12px #4ecdc44d;color:#000;cursor:pointer;font-size:18px;font-weight:700;margin-bottom:10px;padding:16px 32px;transition:all .2s;width:100%}.install-btn:hover{box-shadow:0 6px 16px #4ecdc466;transform:translateY(-2px)}.install-btn:active{transform:translateY(0)}.install-note{color:#888;font-size:13px;margin:0}.install-prompt-footer{border-top:1px solid #3a3a3a;display:flex;gap:10px;padding:15px 20px 20px}.btn-primary,.btn-secondary{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:15px;font-weight:600;padding:12px 20px;transition:all .2s}.btn-secondary{background-color:#3a3a3a;color:#ccc}.btn-secondary:hover{background-color:#4a4a4a;color:#fff}.btn-primary{background:linear-gradient(135deg,#ff6b35,#f7931e);color:#fff}.btn-primary:hover{box-shadow:0 4px 12px #ff6b3566;transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}@media (max-width:480px){.install-prompt-card{margin:0;max-width:100%}.install-prompt-header h3{font-size:20px}.ios-instructions li{font-size:14px}.install-btn{font-size:16px;padding:14px 24px}}.toast-container{display:flex;flex-direction:column;gap:12px;pointer-events:none;position:fixed;right:20px;top:20px;z-index:9999;z-index:var(--z-tooltip,9999)}.toast{align-items:center;animation:toast-slide-in .3s ease-out;background-color:#2a2a2a;background-color:var(--color-surface-elevated,#2a2a2a);border:2px solid;border-radius:12px;border-radius:var(--radius-lg,12px);box-shadow:0 8px 16px #00000080;box-shadow:var(--shadow-lg,0 8px 16px #00000080);display:flex;gap:12px;max-width:500px;min-width:300px;padding:14px 18px;pointer-events:all}.toast-exit{animation:toast-slide-out .3s ease-in forwards}.toast-success{background:linear-gradient(135deg,#1a2a1a,#1a1a1a);border-color:#2ecc71;border-color:var(--color-success,#2ecc71)}.toast-error{background:linear-gradient(135deg,#2a1a1a,#1a1a1a);border-color:#e74c3c;border-color:var(--color-error,#e74c3c)}.toast-warning{background:linear-gradient(135deg,#2a2a1a,#1a1a1a);border-color:#f39c12;border-color:var(--color-warning,#f39c12)}.toast-info{background:linear-gradient(135deg,#1a1a2a,#1a1a1a);border-color:#3498db;border-color:var(--color-info,#3498db)}.toast-icon{flex-shrink:0;font-size:20px}.toast-message{color:#fff;color:var(--color-text-primary,#fff);flex:1 1;font-size:15px;font-size:var(--font-size-base,15px);line-height:1.5;line-height:var(--line-height-normal,1.5)}.toast-close{background:none;border:none;color:#aaa;color:var(--color-text-secondary,#aaa);cursor:pointer;flex-shrink:0;font-size:18px;min-height:auto;min-width:auto;padding:4px;transition:color .2s ease;transition:color var(--transition-base,.2s ease)}.toast-close:hover{color:#fff;color:var(--color-text-primary,#fff)}@keyframes toast-slide-in{0%{opacity:0;transform:translateX(400px)}to{opacity:1;transform:translateX(0)}}@keyframes toast-slide-out{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(400px)}}@media (max-width:600px){.toast-container{left:10px;right:10px;top:10px}.toast{max-width:100%;min-width:auto;width:100%}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(-100px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-slide-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100px)}}}*{box-sizing:border-box;margin:0;padding:0}body,html{max-width:100vw;overflow-x:hidden;position:relative;width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App,body{background-color:#0a0a0a}.App{max-width:100vw;min-height:100vh;overflow-x:hidden;width:100%}button,input{font-family:inherit}@media (min-width:768px){.container{margin:0 auto;max-width:600px}}
/*# sourceMappingURL=main.8809a3a1.css.map*/