.layout-wrapper{display:flex;min-height:100vh;background-color:#11111b;color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.sidebar{position:fixed;left:0;top:0;height:100vh;width:256px;background-color:#1e1e2e;border-right:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;z-index:40;transition:width .3s ease}.sidebar.collapsed{width:80px}.sidebar-header{padding:24px}.sidebar-header .flex{display:flex;align-items:center;gap:8px}.logo-icon{width:40px;height:40px;background:linear-gradient(to bottom right,#22c55e,#16a34a);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.logo-text{font-size:1.25rem;font-weight:700;color:#fff}.logo-text-accent{color:#4ade80}.sidebar-toggle{position:absolute;top:24px;right:12px;padding:8px;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff9;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.sidebar-toggle:hover{background-color:#ffffff1a;color:#fff}.sidebar-nav{flex:1;padding:0 16px;display:flex;flex-direction:column;gap:4px;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;color:#9ca3af;text-decoration:none;transition:all .2s ease;white-space:nowrap}.nav-item:hover{background-color:#ffffff0d;color:#fff}.nav-item.active{background-color:#22c55e1a;color:#4ade80;border:1px solid rgba(34,197,94,.2)}.nav-item svg{width:20px;height:20px;flex-shrink:0}.sidebar-footer{padding:16px;border-top:1px solid rgba(255,255,255,.05)}.user-profile{display:flex;align-items:center;gap:12px;padding:12px 16px}.user-avatar{width:40px;height:40px;background:linear-gradient(to bottom right,#3b82f6,#9333ea);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:600;color:#fff;flex-shrink:0}.user-info{flex:1;min-width:0}.user-name{font-size:.875rem;font-weight:500;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email{font-size:.75rem;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-content{margin-left:256px;min-height:100vh;display:flex;flex-direction:column;transition:margin-left .3s ease;width:calc(100% - 256px)}.main-content.sidebar-collapsed{margin-left:80px;width:calc(100% - 80px)}.top-header{position:sticky;top:0;background-color:#11111bcc;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.05);padding:16px 32px;z-index:30;display:flex;align-items:center;justify-content:space-between}.header-left{display:flex;align-items:center;gap:16px}.header-icon{width:48px;height:48px;background:linear-gradient(to bottom right,#22c55e,#16a34a);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.header-title{font-size:1.25rem;font-weight:700;color:#fff;margin:0}.header-status{display:flex;align-items:center;gap:8px;margin-top:4px}.status-dot{width:8px;height:8px;background-color:#4ade80;border-radius:50%;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.status-text{font-size:.875rem;color:#9ca3af}.header-right{display:flex;align-items:center;gap:12px}.header-button{padding:8px;border-radius:8px;background-color:transparent;border:none;color:#9ca3af;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.header-button:hover{background-color:#ffffff0d;color:#fff}.header-button svg{width:20px;height:20px}.save-button{background-color:#22c55e;color:#fff;padding:10px 20px;border-radius:12px;font-weight:500;border:none;cursor:pointer;transition:background-color .2s;font-size:.875rem}.save-button:hover{background-color:#16a34a}.page-content{flex:1;overflow-y:auto;padding:24px 32px}@media (max-width: 768px){.sidebar{transform:translate(-100%)}.sidebar.collapsed{transform:translate(0);width:80px}.main-content{margin-left:0;width:100%}.main-content.sidebar-collapsed{margin-left:80px;width:calc(100% - 80px)}.top-header{padding:12px 16px}.page-content{padding:16px}}.flex{display:flex}.items-center{align-items:center}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.sidebar.collapsed .logo-text,.sidebar.collapsed .nav-item span,.sidebar.collapsed .user-info{display:none}.sidebar.collapsed .nav-item,.sidebar.collapsed .user-profile{justify-content:center;padding:12px}.forgot-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.forgot-password-container{background:#fff;border-radius:12px;padding:3rem;max-width:450px;width:100%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.forgot-password-header{text-align:center;margin-bottom:2rem}.forgot-password-header h1{font-size:2rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.forgot-password-header p{color:#6b7280;font-size:.875rem;line-height:1.5}.forgot-password-form,.form-group{margin-bottom:1.5rem}.forgot-password-footer{text-align:center;padding-top:1.5rem;border-top:1px solid #e5e7eb}.forgot-password-footer p{color:#6b7280;font-size:.875rem}@media (max-width: 640px){.forgot-password-container{padding:2rem 1.5rem}.forgot-password-header h1{font-size:1.5rem}}.reset-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.reset-password-container{background:#fff;border-radius:12px;padding:3rem;max-width:450px;width:100%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.reset-password-header{text-align:center;margin-bottom:2rem}.reset-password-header h1{font-size:2rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.reset-password-header p{color:#6b7280;font-size:.875rem;line-height:1.5}.message{padding:1rem;border-radius:6px;margin-bottom:1.5rem;font-size:.875rem}.message-success{background:#d1fae5;color:#065f46;border:1px solid #10b981}.message-error{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.reset-password-form,.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:500;color:#374151;margin-bottom:.5rem;font-size:.875rem}.form-group input{width:100%;padding:.75rem;border:1px solid #e5e7eb;border-radius:6px;font-size:1rem;transition:border-color .2s}.form-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input:disabled{background:#f3f4f6;cursor:not-allowed}.form-hint{display:block;margin-top:.25rem;font-size:.75rem;color:#6b7280}.btn{width:100%;padding:.75rem 1.5rem;border-radius:6px;font-weight:500;font-size:1rem;cursor:pointer;border:none;transition:all .2s}.reset-password-footer{text-align:center;padding-top:1.5rem;border-top:1px solid #e5e7eb}.reset-password-footer p{color:#6b7280;font-size:.875rem}.link{color:#3b82f6;text-decoration:none;font-weight:500}.link:hover{text-decoration:underline}@media (max-width: 640px){.reset-password-container{padding:2rem 1.5rem}.reset-password-header h1{font-size:1.5rem}}.access-restricted-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.access-restricted-container{background:#fff;border-radius:12px;padding:3rem;max-width:500px;width:100%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;text-align:center}.access-restricted-icon{color:#ef4444;margin-bottom:1.5rem;display:flex;justify-content:center}.access-restricted-container h1{font-size:2rem;font-weight:700;color:#1f2937;margin-bottom:1rem}.access-restricted-message{margin-bottom:2rem;color:#6b7280;line-height:1.6}.access-restricted-message p{margin-bottom:.75rem}.access-restricted-message p:last-child{margin-bottom:0}.access-restricted-actions{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.access-restricted-contact{padding-top:2rem;border-top:1px solid #e5e7eb;color:#6b7280}.access-restricted-contact p{margin-bottom:.5rem}.contact-email{color:#3b82f6;text-decoration:none;font-weight:500;font-size:1.1rem}.contact-email:hover{text-decoration:underline}.btn{padding:.75rem 1.5rem;border-radius:8px;font-weight:500;font-size:1rem;cursor:pointer;border:none;transition:all .2s}.btn-primary:hover{background-color:#2563eb}.btn-secondary:hover{background-color:#e5e7eb}@media (max-width: 640px){.access-restricted-container{padding:2rem 1.5rem}.access-restricted-container h1{font-size:1.5rem}}@keyframes skeleton-pulse{0%,to{opacity:.3}50%{opacity:.7}}.skeleton-pulse{background:#1e1e2e;animation:skeleton-pulse 1.5s ease-in-out infinite}.skeleton-card{background:#1e1e2e;border-radius:12px;padding:16px;margin-bottom:12px;display:flex;flex-direction:column;gap:12px}.skeleton-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.skeleton-stat-card{background:#1e1e2e;border-radius:12px;padding:16px;display:flex;flex-direction:column;align-items:center;gap:8px}.skeleton-dashboard{display:flex;flex-direction:column;gap:8px}.dashboard-content{padding:2rem;max-width:1200px;margin:0 auto}.welcome-section{margin-bottom:2rem}.welcome-section h2{font-size:2rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.welcome-section p{color:#6b7280;font-size:1.1rem}.stats-section{margin-bottom:2rem}.stats-section h3{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1rem}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;text-align:center;box-shadow:0 1px 3px #0000001a}.stat-icon{font-size:2rem;margin-bottom:.5rem}.stat-value{font-size:2rem;font-weight:700;color:#3b82f6;margin-bottom:.25rem}.stat-label{font-size:.875rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.stats-loading,.stats-error{text-align:center;padding:1rem;color:#6b7280}.stats-error{color:#ef4444}.quick-actions-section{margin-bottom:2rem}.quick-actions-section h3{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:1rem}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.quick-action-btn{background:#fff;border:2px solid #e5e7eb;border-radius:8px;padding:1.5rem;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:.5rem}.quick-action-btn:hover{border-color:#3b82f6;background:#f0f9ff;transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.action-icon{font-size:2rem}.action-label{font-size:.875rem;font-weight:500;color:#374151}.checkin-section{margin-bottom:2rem;background:#f9fafb;border-radius:8px;padding:1.5rem}.checkin-section h3{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:1rem}.checkin-info p{color:#374151;margin-bottom:.5rem}.checkin-note{font-size:.875rem;color:#6b7280;font-style:italic}.recent-activity-section{margin-bottom:2rem}.recent-activity-section h3{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:1rem}.activity-list{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem}.activity-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-bottom:1px solid #f3f4f6}.activity-item:last-child{border-bottom:none}.activity-icon{font-size:1.25rem}.activity-text{color:#374151;font-size:.875rem}@media (max-width: 768px){.dashboard-content{padding:1rem}.stats-grid,.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}.streak-card{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#1e1e2e,#2a2a3e);border:1px solid rgba(255,255,255,.05);border-radius:16px;padding:20px 24px;margin-bottom:24px}.streak-icon{font-size:32px}.streak-count{font-size:36px;font-weight:700;color:#fff}.streak-label{font-size:16px;color:#9ca3af}.macro-card{background:#1e1e2e;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:20px}.macro-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}.macro-row:last-child{margin-bottom:0}.macro-label{width:60px;font-size:13px;color:#9ca3af}.macro-bar-bg{flex:1;height:8px;border-radius:4px;background:#11111b}.macro-bar-fill{height:8px;border-radius:4px;transition:width .5s ease}.macro-bar-fill.protein{background:#3b82f6}.macro-bar-fill.carbs{background:#22c55e}.macro-bar-fill.fat{background:#f59e0b}.macro-value{width:50px;text-align:right;font-size:13px;color:#e5e7eb}.weekly-card{background:#1e1e2e;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:20px}.weekly-bars{display:flex;justify-content:space-between;align-items:flex-end;height:120px;margin-bottom:16px;gap:8px}.weekly-bar-col{display:flex;flex-direction:column;align-items:center;flex:1}.weekly-bar-container{width:100%;height:100px;display:flex;align-items:flex-end;justify-content:center}.weekly-bar{width:24px;border-radius:4px;background:#334155;min-height:4px;transition:height .5s ease}.weekly-bar.active{background:#3b82f6}.weekly-bar-label{font-size:11px;color:#9ca3af;margin-top:6px}.weekly-totals{border-top:1px solid rgba(255,255,255,.05);padding-top:12px;display:flex;justify-content:space-between}.weekly-total-primary{font-size:15px;font-weight:600;color:#fff}.weekly-total-secondary{font-size:13px;color:#9ca3af}.dashboard-section{margin-bottom:24px}.section-title{font-size:18px;font-weight:700;color:#fff;margin-bottom:12px}.chat-page{height:100%;display:flex;flex-direction:column;background:#f8f9fa}.chat-container{display:flex;flex-direction:column;height:100%;max-width:1200px;margin:0 auto;width:100%;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.messages-container{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:16px;scroll-behavior:smooth}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:#6c757d;padding:40px}.empty-state-icon{font-size:64px;margin-bottom:16px}.empty-state h3{font-size:24px;font-weight:600;color:#212529;margin-bottom:8px}.empty-state p{font-size:16px;color:#6c757d}.message{display:flex;margin-bottom:12px;animation:messageSlideIn .3s ease-out}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-user{justify-content:flex-end}.message-ai{justify-content:flex-start}.message-content{max-width:70%;padding:12px 16px;border-radius:16px;position:relative}.message-user .message-content{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom-right-radius:4px}.message-ai .message-content{background:#f1f3f5;color:#212529;border-bottom-left-radius:4px}.message-text{font-size:15px;line-height:1.5;word-wrap:break-word;white-space:pre-wrap}.message-timestamp{font-size:11px;margin-top:6px;opacity:.7;text-align:right}.message-ai .message-timestamp{text-align:left}.typing-indicator{display:flex;gap:4px;padding:8px 0}.typing-indicator span{width:8px;height:8px;border-radius:50%;background:#6c757d;animation:typingBounce 1.4s infinite ease-in-out}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typingBounce{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.message-input-container{padding:20px 24px;background:#fff;border-top:1px solid #e9ecef}.input-wrapper{display:flex;gap:12px;align-items:flex-end;background:#f8f9fa;border-radius:24px;padding:8px 12px;border:2px solid transparent;transition:all .2s ease}.input-wrapper:focus-within{border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a}.message-input{flex:1;border:none;background:transparent;font-size:15px;line-height:1.5;resize:none;outline:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;max-height:120px;min-height:24px;padding:8px 4px}.message-input::placeholder{color:#adb5bd}.message-input:disabled{opacity:.6;cursor:not-allowed}.send-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;flex-shrink:0}.send-button:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #667eea66}.send-button:active:not(:disabled){transform:scale(.95)}.send-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.send-icon{width:20px;height:20px;transform:rotate(45deg)}.messages-container::-webkit-scrollbar{width:8px}.messages-container::-webkit-scrollbar-track{background:transparent}.messages-container::-webkit-scrollbar-thumb{background:#dee2e6;border-radius:4px}.messages-container::-webkit-scrollbar-thumb:hover{background:#adb5bd}@media (max-width: 768px){.chat-container{border-radius:0;box-shadow:none}.messages-container{padding:16px}.message-content{max-width:85%}.message-input-container{padding:16px}.empty-state{padding:20px}.empty-state-icon{font-size:48px}.empty-state h3{font-size:20px}.empty-state p{font-size:14px}}.add-meal-modal{max-width:800px;max-height:90vh;overflow-y:auto}.add-meal-form{display:flex;flex-direction:column;gap:1.5rem}.form-group.full-width{grid-column:1 / -1}.form-group input,.form-group select{padding:.75rem;border:1px solid #e5e7eb;border-radius:6px;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.food-items-section{border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;background:#f9fafb}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.food-item-card{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:1rem;margin-bottom:1rem}.food-item-card:last-child{margin-bottom:0}.food-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #f3f4f6}.food-item-header h4{font-size:1rem;font-weight:600;color:#374151;margin:0}.btn-remove{padding:.25rem .75rem;background:#fee2e2;color:#991b1b;border:1px solid #ef4444;border-radius:4px;font-size:.875rem;cursor:pointer;transition:all .2s}.btn-remove:hover{background:#fecaca}.food-item-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.daily-totals{background:#f0f9ff;border:1px solid #3b82f6;border-radius:8px;padding:1.5rem}.daily-totals h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0 0 1rem}.totals-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.total-item{display:flex;flex-direction:column;align-items:center;padding:.75rem;background:#fff;border-radius:6px}.total-label{font-size:.875rem;color:#6b7280;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.05em}.total-value{font-size:1.25rem;font-weight:700;color:#3b82f6}.btn-sm{padding:.5rem 1rem;font-size:.875rem}@media (max-width: 768px){.form-row,.food-item-fields{grid-template-columns:1fr}.totals-grid{grid-template-columns:repeat(2,1fr)}}.food-log-page{padding:2rem;max-width:1200px;margin:0 auto}.nutrition-summary{background:#fff;border-radius:8px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a}.nutrition-summary h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:1rem}.meals-section{margin-bottom:2rem}.meal-group{background:#fff;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000001a}.meal-group-title{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb}.meal-card{padding:1rem;margin-bottom:1rem;background:#f9fafb;border-radius:6px;border-left:4px solid #3b82f6}.meal-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.meal-actions{display:flex;gap:.5rem}.meal-time{font-size:.875rem;color:#6b7280;margin-bottom:.5rem}.food-items{display:flex;flex-direction:column;gap:.75rem}.food-item{padding:.75rem;background:#fff;border-radius:4px;border:1px solid #e5e7eb}.food-name{font-weight:500;color:#1f2937;margin-bottom:.25rem}.food-details{display:flex;gap:1rem;font-size:.875rem;color:#6b7280;flex-wrap:wrap}.food-calories{color:#3b82f6;font-weight:500}.food-macros{color:#6b7280}.add-workout-modal{max-width:600px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.modal-header h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0}.modal-close{background:none;border:none;font-size:2rem;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#374151}.error-message{padding:1rem;background:#fee2e2;color:#991b1b;border:1px solid #ef4444;border-radius:6px;margin-bottom:1.5rem;font-size:.875rem}.add-workout-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:500;color:#374151;margin-bottom:.5rem;font-size:.875rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid #e5e7eb;border-radius:6px;font-size:1rem;transition:border-color .2s;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{resize:vertical;min-height:80px}.strength-training-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem}.strength-training-section h3{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0 0 1rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid #e5e7eb}.btn{padding:.75rem 1.5rem;border-radius:6px;font-weight:500;font-size:1rem;cursor:pointer;border:none;transition:all .2s}.btn-primary{background-color:#3b82f6;color:#fff}.btn-primary:hover:not(:disabled){background-color:#2563eb}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background-color:#f3f4f6;color:#374151}.btn-secondary:hover:not(:disabled){background-color:#e5e7eb}@media (max-width: 768px){.form-row{grid-template-columns:1fr}}.exercise-log-page{padding:2rem;max-width:1200px;margin:0 auto}.date-navigation{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;padding:1rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.date-nav-btn{padding:.5rem 1rem;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.date-nav-btn:hover:not(:disabled){background:#e5e7eb}.date-nav-btn:disabled{opacity:.5;cursor:not-allowed}.date-display{display:flex;align-items:center;gap:1rem}.date-input{padding:.5rem;border:1px solid #e5e7eb;border-radius:6px;font-size:1rem}.date-label{font-weight:500;color:#374151}.today-btn{padding:.25rem .75rem;background:#3b82f6;color:#fff;border:none;border-radius:4px;font-size:.875rem;cursor:pointer}.today-btn:hover{background:#2563eb}.workout-summary{background:#fff;border-radius:8px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a}.workout-summary h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:1rem}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.summary-item{display:flex;flex-direction:column;align-items:center;padding:1rem;background:#f9fafb;border-radius:6px}.summary-label{font-size:.875rem;color:#6b7280;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.summary-value{font-size:1.5rem;font-weight:700;color:#3b82f6}.workouts-section{margin-bottom:2rem}.workout-card{background:#fff;border-radius:8px;padding:1.5rem;margin-bottom:1rem;box-shadow:0 1px 3px #0000001a;border-left:4px solid #3b82f6}.workout-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem;justify-content:space-between}.workout-actions{display:flex;gap:.5rem}.btn-icon{background:none;border:none;font-size:1.25rem;cursor:pointer;padding:.25rem;border-radius:4px;transition:background .2s}.btn-icon:hover{background:#0000001a}.delete-confirm-modal{max-width:400px}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.btn-danger{background-color:#ef4444;color:#fff}.btn-danger:hover{background-color:#dc2626}.workout-icon{font-size:2rem;flex-shrink:0}.workout-info{flex:1}.workout-name{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:.5rem}.workout-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.875rem;color:#6b7280}.workout-meta-item{padding:.25rem .5rem;background:#f3f4f6;border-radius:4px}.workout-intensity{text-transform:capitalize}.workout-strength{display:flex;gap:1rem;padding:.75rem;background:#f9fafb;border-radius:4px;margin-bottom:.5rem;font-size:.875rem;color:#374151}.workout-notes{padding:.75rem;background:#f9fafb;border-radius:4px;margin-bottom:.5rem;font-size:.875rem;color:#374151;font-style:italic}.workout-source{font-size:.75rem;color:#9ca3af;text-transform:capitalize}.empty-state{text-align:center;padding:3rem;color:#6b7280}.empty-subtext{font-size:.875rem;margin-top:.5rem}.action-bar{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid #e5e7eb}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-content h3{margin-bottom:1rem}.loading-container,.error-container{text-align:center;padding:2rem}.error-container{color:#ef4444}.btn{padding:.75rem 1.5rem;border-radius:6px;font-weight:500;cursor:pointer;border:none;transition:all .2s}.preferences-page{min-height:100vh;background-color:#11111b;color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.preferences-container{max-width:896px;margin:0 auto;padding:32px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px}.loading-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.1);border-top-color:#22c55e;border-radius:50%;animation:spin 1s linear infinite}.error-banner{background-color:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:12px;padding:12px 16px;margin-bottom:24px}.error-banner p{color:#f87171;margin:0;font-size:.875rem}.success-banner{background-color:#22c55e1a;border:1px solid rgba(34,197,94,.3);border-radius:12px;padding:12px 16px;margin-bottom:24px;animation:slideIn .3s ease-out}.success-banner p{color:#4ade80;margin:0;font-size:.875rem;font-weight:500}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.preferences-section{background-color:#1e1e2e;border-radius:16px;border:1px solid rgba(255,255,255,.05);padding:24px;margin-bottom:24px}.section-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.section-header-content{display:flex;align-items:center;gap:12px;flex:1}.section-icon{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.section-icon.blue{background-color:#3b82f61a}.section-icon.blue svg{color:#60a5fa}.section-icon.purple{background-color:#a855f71a}.section-icon.purple svg{color:#a78bfa}.section-icon.orange{background-color:#f973161a}.section-icon.orange svg{color:#fb923c}.section-icon.pink{background-color:#ec48991a}.section-icon.pink svg{color:#f9a8d4}.section-icon.cyan{background-color:#06b6d41a}.section-icon.cyan svg{color:#22d3ee}.section-title{font-size:1.125rem;font-weight:600;margin:0}.section-subtitle{font-size:.875rem;color:#9ca3af;margin:0}.section-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;margin-bottom:24px}.form-label{display:block;font-size:.875rem;color:#9ca3af;margin-bottom:8px}.required{color:#f87171}.form-input,.form-textarea{width:100%;background-color:#11111b;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px 16px;color:#fff;font-size:1rem;transition:border-color .2s}.form-input:focus,.form-textarea:focus{outline:none;border-color:#22c55e}.form-textarea{resize:none;font-family:inherit}.form-help{font-size:.75rem;color:#6b7280;margin-top:8px}.mt-6{margin-top:24px}.radio-group{display:flex;flex-wrap:wrap;gap:12px}.radio-option{display:flex;align-items:center;gap:8px;background-color:#11111b;border:1px solid rgba(255,255,255,.1);color:#9ca3af;padding:8px 16px;border-radius:12px;cursor:pointer;transition:all .2s;font-size:.875rem}.radio-option:hover{border-color:#fff3}.radio-option.active{background-color:#22c55e1a;border-color:#22c55e4d;color:#4ade80}.radio-option .hidden{display:none}.radio-option svg{width:16px;height:16px}.tone-control{margin-bottom:32px}.tone-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.tone-value{font-size:.875rem;font-weight:500;color:#4ade80}.tone-slider{width:100%;height:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(to right,#22c55e,#fbbf24,#ef4444);border-radius:4px;outline:none;cursor:pointer;border:1px solid rgba(255,255,255,.1)}.tone-slider::-webkit-slider-track{width:100%;height:8px;background:linear-gradient(to right,#22c55e,#fbbf24,#ef4444);border-radius:4px}.tone-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;background:#fff;border:3px solid #22c55e;border-radius:50%;cursor:pointer;box-shadow:0 2px 8px #0000004d;margin-top:-8px}.tone-slider::-moz-range-track{width:100%;height:8px;background:linear-gradient(to right,#22c55e,#fbbf24,#ef4444);border-radius:4px}.tone-slider::-moz-range-thumb{width:24px;height:24px;background:#fff;border:3px solid #22c55e;border-radius:50%;cursor:pointer;box-shadow:0 2px 8px #0000004d;border:none}.tone-labels{display:flex;justify-content:space-between;font-size:.75rem;color:#6b7280;margin-top:8px}.preview-box{background-color:#11111b;border-radius:12px;padding:16px;margin-bottom:24px}.preview-label{font-size:.875rem;color:#9ca3af;margin-bottom:8px}.preview-text{color:#fff;font-style:italic;margin:0}.checkbox-group{display:flex;flex-direction:column;gap:12px}.checkbox-item{display:flex;align-items:center;gap:12px;cursor:pointer;transition:color .2s}.checkbox-item:hover .checkbox-label{color:#fff}.checkbox-input{width:24px;height:24px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;position:relative;background-color:#11111b;border:1px solid rgba(255,255,255,.2);transition:all .2s}.checkbox-input:checked{background-color:#22c55e;border:1px solid #22c55e}.checkbox-input:checked:after{content:"";width:16px;height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='white'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 13l4 4L19 7'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;background-position:center}.checkbox-label{color:#d1d5db;transition:color .2s}.focus-areas{margin-bottom:24px}.focus-mode-selector{margin-bottom:16px}.focus-areas-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.focus-area-button{background-color:#11111b;border:1px solid rgba(255,255,255,.1);color:#9ca3af;padding:8px 16px;border-radius:12px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.focus-area-button:hover{border-color:#fff3}.focus-area-button.active{background-color:#22c55e1a;border-color:#22c55e4d;color:#4ade80}.ranked-list{display:flex;flex-direction:column;gap:8px}.ranked-item{display:flex;align-items:center;gap:12px;background-color:#11111b;border:1px solid rgba(34,197,94,.3);border-radius:12px;padding:12px 16px}.rank-number{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background-color:#22c55e33;color:#4ade80;border-radius:8px;font-weight:600;font-size:.875rem;flex-shrink:0}.rank-label{flex:1;color:#fff;font-weight:500}.rank-controls{display:flex;gap:4px}.rank-button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#9ca3af;cursor:pointer;transition:all .2s}.rank-button:hover:not(:disabled){background-color:#ffffff1a;border-color:#fff3;color:#fff}.rank-button:disabled{opacity:.3;cursor:not-allowed}.rank-button.remove{color:#f87171}.rank-button.remove:hover{background-color:#dc26261a;border-color:#dc26264d}.notification-list{display:flex;flex-direction:column;gap:16px}.notification-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background-color:#11111b;border-radius:12px}.notification-info{display:flex;align-items:center;gap:16px}.notification-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center}.notification-icon.green{background-color:#22c55e1a}.notification-icon.green svg{color:#4ade80}.notification-icon.blue{background-color:#3b82f61a}.notification-icon.blue svg{color:#60a5fa}.notification-icon.purple{background-color:#a855f71a}.notification-icon.purple svg{color:#a78bfa}.notification-title{font-weight:500;margin:0}.notification-subtitle{font-size:.875rem;color:#9ca3af;margin:4px 0 0}.toggle-switch{width:48px;height:28px;background-color:#2a2a3e;border-radius:9999px;position:relative;cursor:pointer;transition:background-color .2s}.toggle-switch.active{background-color:#22c55e}.toggle-slider{position:absolute;top:2px;left:2px;width:24px;height:24px;background-color:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;transition:transform .2s}.toggle-switch.active .toggle-slider{transform:translate(20px)}.view-all-button{color:#4ade80;font-size:.875rem;font-weight:500;background:none;border:none;cursor:pointer;transition:color .2s}.view-all-button:hover{color:#86efac}.history-list{display:flex;flex-direction:column;gap:16px}.history-item{display:flex;gap:16px;padding:16px;background-color:#11111b;border-radius:12px}.history-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.history-icon.primary{background-color:#22c55e1a}.history-icon.primary svg{color:#4ade80}.history-icon.blue{background-color:#3b82f61a}.history-icon.blue svg{color:#60a5fa}.history-content{flex:1}.history-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.history-author{font-size:.875rem;font-weight:500}.history-badge{font-size:.75rem;padding:2px 8px;border-radius:4px}.history-badge.ai{background-color:#22c55e1a;color:#4ade80}.history-badge.manual{background-color:#3b82f61a;color:#60a5fa}.history-description{font-size:.875rem;color:#9ca3af;margin:0}.history-date{font-size:.75rem;color:#6b7280;margin:4px 0 0}@media (max-width: 768px){.preferences-container{padding:16px}.section-grid{grid-template-columns:1fr}.radio-group,.focus-areas-grid{flex-direction:column}}.empty-state-component{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state-component-icon{font-size:48px;margin-bottom:16px}.empty-state-component-title{font-size:18px;font-weight:600;color:#fff;margin:0 0 8px}.empty-state-component-description{font-size:14px;color:#9ca3af;margin:0;max-width:360px;line-height:1.5}.empty-state-component-action{margin-top:16px;background:#22c55e;color:#fff;border:none;padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}.empty-state-component-action:hover{background:#16a34a}.integrations-page{padding:2rem;max-width:1200px;margin:0 auto}.integrations-header{margin-bottom:2rem}.integrations-header h2{font-size:2rem;font-weight:700;color:#1f2937;margin-bottom:.5rem}.integrations-header p{color:#6b7280;font-size:1.1rem}.integrations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:3rem}.integration-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;transition:all .2s}.integration-card:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.integration-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.integration-icon{font-size:2.5rem;flex-shrink:0}.integration-info{flex:1}.integration-name{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:.25rem}.integration-description{font-size:.875rem;color:#6b7280;line-height:1.5}.integration-status{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.status-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .75rem;border-radius:6px;font-size:.875rem;font-weight:500}.status-connected{background:#d1fae5;color:#065f46}.status-disconnected{background:#f3f4f6;color:#6b7280}.status-dot{width:8px;height:8px;border-radius:50%;background:currentColor}.status-connected .status-dot{background:#10b981}.status-disconnected .status-dot{background:#9ca3af}.last-sync{font-size:.75rem;color:#6b7280;margin-top:.5rem}.integration-actions{display:flex;gap:.5rem;flex-wrap:wrap}.btn{padding:.5rem 1rem;border-radius:6px;font-weight:500;font-size:.875rem;cursor:pointer;border:none;transition:all .2s}.btn-sm{padding:.375rem .75rem;font-size:.8125rem}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover{background:#2563eb}.btn-secondary{background:#f3f4f6;color:#374151}.btn-secondary:hover{background:#e5e7eb}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.integrations-info{background:#f9fafb;border-radius:8px;padding:1.5rem;margin-top:2rem}.integrations-info h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:1rem}.integrations-info ul{list-style:none;padding:0;margin:0}.integrations-info li{padding:.5rem 0 .5rem 1.5rem;position:relative;color:#374151}.integrations-info li:before{content:"✓";position:absolute;left:0;color:#10b981;font-weight:600}.loading-container{text-align:center;padding:3rem}.loading-spinner{border:3px solid #f3f4f6;border-top:3px solid #3b82f6;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.integrations-grid{grid-template-columns:1fr}}.onboarding-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#11111b;padding:24px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.onboarding-card{width:100%;max-width:600px;background-color:#1e1e2e;border-radius:16px;border:1px solid rgba(255,255,255,.05);padding:40px}.onboarding-steps{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:40px}.step-dot{width:10px;height:10px;border-radius:50%;background-color:#fff3;transition:all .3s}.step-dot.active{background-color:#22c55e;box-shadow:0 0 8px #22c55e66}.step-dot.completed{background-color:#22c55e}.onboarding-step{min-height:280px}.onboarding-title{font-size:1.5rem;font-weight:700;color:#fff;margin:0 0 8px;text-align:center}.onboarding-subtitle{font-size:.938rem;color:#9ca3af;margin:0 0 32px;text-align:center;line-height:1.5}.onboarding-field{margin-bottom:20px}.onboarding-label{display:block;font-size:.875rem;color:#9ca3af;margin-bottom:8px}.onboarding-card .form-input{width:100%;background-color:#11111b;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 16px;color:#fff;font-size:1rem;transition:border-color .2s;box-sizing:border-box}.onboarding-card .form-input:focus{outline:none;border-color:#22c55e}.onboarding-error{background-color:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:12px;padding:12px 16px;margin-bottom:24px}.onboarding-error p{color:#f87171;margin:0;font-size:.875rem}.goals-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.goal-pill{display:flex;align-items:center;gap:10px;background-color:#11111b;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:14px 16px;color:#9ca3af;font-size:.938rem;font-weight:500;cursor:pointer;transition:all .2s}.goal-pill:hover{border-color:#fff3}.goal-pill.selected{background-color:#22c55e1a;border-color:#22c55e4d;color:#4ade80}.goal-icon{font-size:1.25rem}.goal-label{flex:1}.tone-selector{text-align:center}.tone-display{margin-bottom:24px}.tone-number{display:block;font-size:2.5rem;font-weight:700;color:#22c55e;line-height:1;margin-bottom:4px}.tone-label-text{font-size:1rem;color:#9ca3af}.tone-buttons{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:12px}.tone-button{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:#11111b;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#9ca3af;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.tone-button:hover{border-color:#fff3}.tone-button.selected{background-color:#22c55e26;border-color:#22c55e;color:#22c55e}.tone-range-labels{display:flex;justify-content:space-between;font-size:.75rem;color:#6b7280}.schedule-fields{display:flex;flex-direction:column;gap:20px}.timezone-display{background-color:#11111b;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 16px;color:#fff;font-size:1rem}.frequency-options{display:flex;gap:10px;flex-wrap:wrap}.frequency-pill{background-color:#11111b;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:10px 18px;color:#9ca3af;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.frequency-pill:hover{border-color:#fff3}.frequency-pill.selected{background-color:#22c55e1a;border-color:#22c55e4d;color:#4ade80}.notifications-section{display:flex;flex-direction:column;align-items:center;gap:24px;padding:20px 0}.notifications-enabled{display:flex;flex-direction:column;align-items:center;gap:12px}.check-circle{width:64px;height:64px;border-radius:50%;background-color:#22c55e26;display:flex;align-items:center;justify-content:center;color:#22c55e}.notifications-status{color:#4ade80;font-weight:600;font-size:1.125rem;margin:0}.enable-notifications-button{display:flex;align-items:center;gap:10px;background-color:#22c55e1a;border:1px solid rgba(34,197,94,.3);border-radius:12px;padding:16px 32px;color:#4ade80;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.enable-notifications-button:hover{background-color:#22c55e33;border-color:#22c55e80}.notifications-skip-text{color:#6b7280;font-size:.875rem;margin:0}.onboarding-nav{display:flex;justify-content:flex-end;gap:12px;margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,255,255,.05)}.back-button{background:none;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px 28px;color:#9ca3af;font-size:.938rem;font-weight:500;cursor:pointer;transition:all .2s}.back-button:hover{border-color:#fff3;color:#fff}.back-button:disabled{opacity:.5;cursor:not-allowed}.next-button{background-color:#22c55e;border:none;border-radius:12px;padding:12px 32px;color:#fff;font-size:.938rem;font-weight:600;cursor:pointer;transition:all .2s}.next-button:hover:not(:disabled){background-color:#16a34a}.next-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 480px){.onboarding-card{padding:24px}.goals-grid{grid-template-columns:1fr}.tone-buttons{gap:6px}.tone-button{width:34px;height:34px;font-size:.813rem}.frequency-options{flex-direction:column}.onboarding-nav{flex-direction:column-reverse}.next-button,.back-button{width:100%;text-align:center}}.paywall-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#0a0e1a;padding:20px}.paywall-card{background:#1e293b;border-radius:16px;padding:40px;max-width:440px;width:100%;text-align:center}.paywall-icon{font-size:48px;margin-bottom:16px}.paywall-card h1{color:#fff;font-size:28px;font-weight:700;margin:0 0 8px}.paywall-card .subtitle{color:#94a3b8;font-size:16px;margin:0 0 32px}.paywall-price{margin-bottom:32px}.paywall-price .amount{color:#3b82f6;font-size:48px;font-weight:800}.paywall-price .period{color:#94a3b8;font-size:18px}.paywall-features{list-style:none;padding:0;margin:0 0 32px;text-align:left}.paywall-features li{color:#e2e8f0;font-size:15px;padding:8px 0;display:flex;align-items:center;gap:12px}.paywall-features li:before{content:"✓";color:#22c55e;font-weight:700;font-size:16px;flex-shrink:0}.paywall-trial-badge{background:#3b82f626;color:#3b82f6;border-radius:20px;padding:8px 20px;font-size:14px;font-weight:600;display:inline-block;margin-bottom:24px}.paywall-subscribe-btn{width:100%;padding:16px;background:#3b82f6;color:#fff;font-size:18px;font-weight:700;border:none;border-radius:12px;cursor:pointer;transition:background .2s}.paywall-subscribe-btn:hover{background:#2563eb}.paywall-subscribe-btn:disabled{opacity:.6;cursor:not-allowed}.paywall-footer{margin-top:16px;color:#64748b;font-size:13px}.login-page{align-items:center;justify-content:center;padding:24px}.login-container{background-color:var(--surface);border-radius:16px;padding:48px;max-width:400px;width:100%;text-align:center}.login-header h1{font-size:2rem;margin-bottom:8px;color:var(--primary-color)}.login-header p{color:var(--text-secondary);margin-bottom:32px}.login-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:32px}.login-actions .btn{width:100%}.login-footer{color:var(--text-secondary);font-size:.875rem}.forgot-password-link-container{margin-top:16px}.forgot-password-link{color:var(--primary-color);text-decoration:none;font-size:.875rem;transition:opacity .2s}.forgot-password-link:hover{opacity:.8;text-decoration:underline}.callback-page{align-items:center;justify-content:center}.dashboard-page{display:flex;flex-direction:column}.dashboard-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background-color:var(--surface);border-bottom:1px solid var(--surface-light)}.dashboard-header h1{font-size:1.5rem;color:var(--primary-color)}.dashboard-content{flex:1;padding:24px;max-width:800px;margin:0 auto;width:100%}.welcome-section{margin-bottom:32px}.welcome-section h2{font-size:1.75rem;margin-bottom:8px}.welcome-section p{color:var(--text-secondary)}.profile-section{background-color:var(--surface);border-radius:var(--border-radius);padding:24px}.profile-section h3{margin-bottom:16px;font-size:1.25rem}.profile-info{display:grid;gap:16px}.profile-field{display:flex;flex-direction:column;gap:4px}.profile-field label{font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.profile-field span{font-size:1rem}.account-page{padding:24px}.account-content{background-color:var(--surface);border-radius:var(--border-radius);padding:32px;max-width:800px;margin:0 auto}.account-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.account-header h2{font-size:1.75rem;color:var(--primary-color);margin:0}.account-info,.account-form{display:grid;gap:24px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.form-input{padding:12px 16px;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;background-color:var(--background);color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.form-input.disabled{background-color:var(--surface);color:var(--text-secondary);cursor:not-allowed}.form-input:disabled{background-color:var(--surface);color:var(--text-secondary);cursor:not-allowed}select.form-input{cursor:pointer}.form-help{font-size:.875rem;color:var(--text-secondary);margin-top:-4px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px;padding-top:24px;border-top:1px solid var(--border-color)}.error-message{background-color:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:var(--border-radius);padding:12px 16px;margin-bottom:24px}.error-message p{color:#dc2626;margin:0;font-size:.875rem}.page-placeholder{background-color:var(--surface);border-radius:var(--border-radius);padding:48px;text-align:center;max-width:600px;margin:0 auto}.page-placeholder h2{font-size:1.75rem;margin-bottom:16px;color:var(--primary-color)}.page-placeholder p{color:var(--text-secondary);margin-bottom:12px}@media (max-width: 640px){.login-container{padding:32px 24px}.dashboard-header{padding:12px 16px}.dashboard-content{padding:16px}.page-placeholder{padding:32px 24px}.account-content{padding:24px 16px}.account-header{flex-direction:column;align-items:flex-start;gap:16px}.account-header .btn{width:100%}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}:root{--primary-color: #6366f1;--primary-hover: #4f46e5;--secondary-color: #64748b;--background: #0f172a;--surface: #1e293b;--surface-light: #334155;--text-primary: #f8fafc;--text-secondary: #94a3b8;--error: #ef4444;--success: #22c55e;--border-radius: 8px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:var(--background);color:var(--text-primary);line-height:1.6;min-height:100vh}#root{min-height:100vh}.page{min-height:100vh;display:flex;flex-direction:column}.btn{padding:12px 24px;border-radius:var(--border-radius);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:var(--primary-hover)}.btn-secondary{background-color:var(--surface-light);color:var(--text-primary)}.btn-secondary:hover{background-color:var(--secondary-color)}.btn-outline{background-color:transparent;border:1px solid var(--surface-light);color:var(--text-primary)}.btn-outline:hover{background-color:var(--surface-light)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;flex:1}.loading-spinner{width:40px;height:40px;border:3px solid var(--surface-light);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;flex:1;text-align:center;padding:24px}.error-container h2{color:var(--error)}
