.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.header{background-color:var(--color-background);border-bottom:1px solid var(--color-border);padding:var(--spacing-lg) 0;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-sm)}.header-content{display:flex;justify-content:space-between;align-items:center}.nav{display:flex;gap:var(--spacing-lg)}.nav-link{color:var(--color-text);font-weight:500;transition:color .2s ease;white-space:nowrap}.nav-link:hover{color:var(--color-primary)}.nav-link.active{color:var(--color-primary);border-bottom:2px solid var(--color-primary);padding-bottom:2px}.footer{background-color:var(--color-secondary);padding:var(--spacing-xl) 0;margin-top:var(--spacing-xxl);border-top:1px solid var(--color-border)}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.card{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:box-shadow .2s ease}.card:hover{box-shadow:var(--shadow-md)}.grid{display:grid;gap:var(--spacing-lg)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.alert{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.alert-error{background-color:#ffebee;color:var(--color-error);border-left:4px solid var(--color-error)}.alert-success{background-color:#e8f5e9;color:var(--color-success);border-left:4px solid var(--color-success)}@media (max-width: 768px){.container{padding:0 var(--spacing-md)}.nav{gap:var(--spacing-md)}.grid-2,.grid-3{grid-template-columns:1fr}}.button{display:inline-block;padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:600;transition:all .2s ease;white-space:nowrap}.button-primary{background-color:var(--color-primary);color:#fff}.button-primary:hover{background-color:var(--color-primary-dark);box-shadow:var(--shadow-md)}.button-secondary{background-color:var(--color-secondary);color:var(--color-text);border:1px solid var(--color-border)}.button-secondary:hover{background-color:#f0f0f0}.button-small{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm)}.button-large{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-md)}.button:disabled{opacity:.5;cursor:not-allowed}.form-group{margin-bottom:var(--spacing-lg)}.label{display:block;margin-bottom:var(--spacing-sm);font-weight:500;font-size:var(--font-size-base)}.input,.textarea,.select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:border-color .2s ease}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #4a9d6f1a}.error-text{color:var(--color-error);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.success-text{color:var(--color-success);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.weekly-plan-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{position:relative;background:#fff;border-radius:20px;max-width:1200px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;z-index:1}.close-btn{position:absolute;top:20px;right:20px;width:40px;height:40px;border-radius:50%;border:none;background:#f5f5f5;font-size:24px;cursor:pointer;transition:all .3s;z-index:10}.close-btn:hover{background:#e0e0e0;transform:rotate(90deg)}.weekly-header{padding:40px 40px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:20px 20px 0 0}.header-info h2{margin:0 0 8px;font-size:28px}.subtitle{margin:0;opacity:.9;font-size:16px}.week-selector{display:flex;gap:8px;margin-top:20px;flex-wrap:wrap}.week-btn{padding:10px 20px;background:#fff3;border:2px solid rgba(255,255,255,.3);border-radius:12px;color:#fff;font-weight:600;cursor:pointer;transition:all .3s}.week-btn:hover{background:#ffffff4d;border-color:#ffffff80}.week-btn.active{background:#fff;color:#667eea;border-color:#fff}.progress-card{margin:20px 40px;padding:24px;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:16px}.progress-info{display:flex;justify-content:space-around;margin-bottom:16px}.progress-stat{display:flex;align-items:center;gap:12px}.stat-icon{font-size:32px}.stat-value{font-size:24px;font-weight:700;color:#2d3748;line-height:1}.stat-label{font-size:14px;color:#718096;margin-top:4px}.progress-bar-wrapper{height:12px;background:#ffffff80;border-radius:6px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:6px;transition:width .5s ease}.content-tabs{display:flex;gap:8px;padding:0 40px;border-bottom:2px solid #e2e8f0}.tab-btn{padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;color:#718096;font-weight:600;cursor:pointer;transition:all .3s;font-size:16px}.tab-btn:hover{color:#667eea}.tab-btn.active{color:#667eea;border-bottom-color:#667eea}.shopping-list-content{padding:20px 40px 40px}.hint-card{background:#e8f5e9;border:2px solid #a5d6a7;border-radius:12px;padding:16px;margin-bottom:24px;color:#1b5e20;font-size:14px}.category-section{margin-bottom:24px}.category-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #e2e8f0}.category-icon{font-size:28px}.category-header h3{flex:1;margin:0;font-size:20px;color:#2d3748}.category-count{background:#667eea;color:#fff;padding:4px 12px;border-radius:12px;font-size:14px;font-weight:600}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.product-item{display:flex;align-items:center;gap:12px;padding:16px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:12px;cursor:pointer;transition:all .3s}.product-item:hover{border-color:#667eea;background:#f0f4ff;transform:translateY(-2px);box-shadow:0 4px 12px #667eea26}.product-item.checked{background:#e8f5e9;border-color:#4caf50;opacity:.7}.product-checkbox{font-size:24px;flex-shrink:0}.product-info{flex:1;min-width:0}.product-name{font-weight:600;color:#2d3748;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis}.product-item.checked .product-name{text-decoration:line-through;color:#718096}.product-amount{font-size:14px;color:#667eea;font-weight:600}.daily-hint{color:#a0aec0;font-weight:400;font-size:12px;margin-left:8px}.modal-footer{padding:20px 40px;border-top:2px solid #e2e8f0;display:flex;justify-content:space-between;gap:12px;background:#f8f9fa;border-radius:0 0 20px 20px}.btn-secondary,.btn-primary{padding:12px 24px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s;border:none;font-size:16px}.btn-secondary{background:#fff;color:#718096;border:2px solid #e2e8f0}.btn-secondary:hover{background:#f8f9fa;border-color:#cbd5e0}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.loading,.error{text-align:center;padding:60px 20px;color:#718096;font-size:18px}.error{color:#f56565}@media (max-width: 768px){.modal-content{border-radius:20px 20px 0 0;max-height:95vh}.weekly-header,.shopping-list-content,.modal-footer{padding-left:20px;padding-right:20px}.progress-card{margin-left:20px;margin-right:20px}.header-info h2{font-size:22px}.week-selector{flex-wrap:wrap}.week-btn{flex:1;min-width:calc(50% - 4px)}.progress-info{flex-direction:column;gap:16px}.products-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column}.btn-secondary,.btn-primary{width:100%}}.patient-cabinet-new{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:24px}.cabinet-container{max-width:1200px;margin:0 auto}.loading-container{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.spinner{width:50px;height:50px;border:4px solid rgba(102,126,234,.3);border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}.cabinet-header{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:32px;border-radius:20px;box-shadow:0 10px 40px #00000014;margin-bottom:32px}.welcome-section{display:flex;align-items:center;gap:20px}.avatar-circle{width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;box-shadow:0 4px 20px #667eea66}.welcome-text h1{margin:0 0 8px;font-size:32px;color:#2c3e50}.welcome-text p{margin:0;font-size:16px;color:#6c757d}.program-badge{display:flex;align-items:center;gap:16px;padding:16px 24px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff}.badge-icon{font-size:36px}.badge-title{font-size:18px;font-weight:600;margin-bottom:4px}.badge-subtitle{font-size:14px;opacity:.9}.progress-section{background:#fff;padding:28px 32px;border-radius:20px;box-shadow:0 4px 20px #0000000f;margin-bottom:32px}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.progress-header h3{margin:0;font-size:20px;color:#2c3e50}.progress-percentage{font-size:24px;font-weight:700;color:#667eea}.progress-bar-container{height:16px;background:#e9ecef;border-radius:999px;overflow:hidden;margin-bottom:16px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:999px;transition:width .5s ease}.progress-stats{display:flex;gap:24px}.stat-item{display:flex;align-items:center;gap:8px;font-size:14px;color:#495057}.stat-icon{font-size:18px}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:32px}.action-card{background:#fff;padding:28px;border-radius:20px;box-shadow:0 4px 20px #0000000f;cursor:pointer;transition:all .3s;position:relative;overflow:hidden}.action-card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;transition:height .3s}.action-card.primary:before{background:linear-gradient(90deg,#667eea,#764ba2)}.action-card.success:before{background:linear-gradient(90deg,#43e97b,#38f9d7)}.action-card.info:before{background:linear-gradient(90deg,#4facfe,#00f2fe)}.action-card.warning:before{background:linear-gradient(90deg,#fa709a,#fee140)}.action-card:hover{transform:translateY(-8px);box-shadow:0 12px 40px #0000001f}.action-card:hover:before{height:100%;opacity:.1}.action-icon{font-size:48px;margin-bottom:16px}.action-card h3{margin:0 0 8px;font-size:20px;color:#2c3e50}.action-card p{margin:0 0 16px;font-size:14px;color:#6c757d}.action-arrow{position:absolute;right:24px;bottom:24px;font-size:24px;color:#adb5bd;transition:transform .3s}.action-card:hover .action-arrow{transform:translate(4px)}.status-section{margin-bottom:32px}.status-section h2{margin:0 0 20px;font-size:24px;color:#2c3e50}.status-card{background:#fff;padding:32px;border-radius:20px;box-shadow:0 4px 20px #0000000f;display:flex;gap:24px;align-items:flex-start;border-left:5px solid}.status-card.status-action-needed{border-left-color:#dc3545}.status-card.status-pending{border-left-color:#ffc107}.status-card.status-success{border-left-color:#28a745}.status-icon{font-size:48px;flex-shrink:0}.status-content{flex:1}.status-content h3{margin:0 0 12px;font-size:20px;color:#2c3e50}.status-content p{margin:0 0 20px;font-size:15px;color:#495057;line-height:1.6}.btn-primary{padding:12px 28px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:transform .2s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-secondary{padding:10px 24px;background:#fff;color:#667eea;border:2px solid #667eea;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#667eea;color:#fff}.status-timeline{display:flex;gap:32px;margin-top:20px}.timeline-step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;position:relative}.timeline-step:after{content:"";position:absolute;top:15px;left:50%;width:100%;height:3px;background:#e9ecef;z-index:-1}.timeline-step:last-child:after{display:none}.step-dot{width:30px;height:30px;border-radius:50%;background:#e9ecef;border:4px solid white;box-shadow:0 2px 8px #0000001a}.timeline-step.completed .step-dot{background:#28a745}.timeline-step.active .step-dot{background:#ffc107;animation:pulse 2s infinite}@keyframes pulse{0%,to{box-shadow:0 2px 8px #ffc10766}50%{box-shadow:0 2px 20px #ffc107cc}}.timeline-step span{font-size:13px;color:#6c757d;text-align:center}.meal-plans-section{margin-bottom:32px}.meal-plans-section h2{margin:0 0 20px;font-size:24px;color:#2c3e50}.meal-plans-list{display:grid;gap:16px}.meal-plan-card{background:#fff;padding:24px;border-radius:16px;box-shadow:0 4px 16px #0000000f;cursor:pointer;transition:all .3s}.meal-plan-card:hover{transform:translate(8px);box-shadow:0 6px 24px #0000001a}.plan-header{display:flex;gap:20px;margin-bottom:16px}.plan-icon{font-size:40px;flex-shrink:0}.plan-info h3{margin:0 0 8px;font-size:18px;color:#2c3e50}.plan-info p{margin:0;font-size:14px;color:#6c757d}.plan-footer{display:flex;justify-content:space-between;padding-top:16px;border-top:1px solid #e9ecef;font-size:13px;color:#adb5bd}.plan-actions{display:flex;gap:8px;margin-top:16px}.btn-weekly,.btn-view{flex:1;padding:12px 16px;border:none;border-radius:10px;font-weight:600;cursor:pointer;transition:all .3s;font-size:14px;display:flex;align-items:center;justify-content:center;gap:6px}.btn-weekly{background:linear-gradient(135deg,#4caf50,#66bb6a);color:#fff;box-shadow:0 4px 12px #4caf504d}.btn-weekly:hover{transform:translateY(-2px);box-shadow:0 6px 16px #4caf5066}.btn-view{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}.btn-view:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.help-section{margin-top:32px}.help-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:32px;border-radius:20px;display:flex;align-items:center;gap:24px;box-shadow:0 8px 32px #667eea4d}.help-icon{font-size:56px;flex-shrink:0}.help-content{flex:1}.help-content h3{margin:0 0 8px;font-size:22px}.help-content p{margin:0;font-size:15px;opacity:.9}.alert{padding:16px 20px;border-radius:12px;margin-bottom:20px;font-size:14px}.alert-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}@media (max-width: 992px){.cabinet-header{flex-direction:column;gap:20px;text-align:center}.welcome-section{flex-direction:column}.program-badge{width:100%;justify-content:center}}@media (max-width: 768px){.patient-cabinet-new{padding:16px}.cabinet-header{padding:24px}.welcome-text h1{font-size:24px}.progress-section{padding:20px}.quick-actions-grid{grid-template-columns:1fr}.status-card{flex-direction:column;padding:24px}.status-timeline{flex-direction:column;gap:16px}.timeline-step:after{width:3px;height:100%;left:15px;top:30px}.help-card{flex-direction:column;text-align:center}}.doctor-cabinet-pro{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem 1rem}.cabinet-container{max-width:1400px;margin:0 auto}.doctor-header{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 10px 40px #0000001a;margin-bottom:2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.header-left{display:flex;align-items:center;gap:1.5rem}.doctor-avatar{width:80px;height:80px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:2.5rem;box-shadow:0 8px 20px #667eea4d}.doctor-header h1{margin:0;font-size:1.8rem;color:#2d3748;font-weight:700}.doctor-header p{margin:.25rem 0 0;color:#718096;font-size:1rem}.header-actions{display:flex;gap:1rem}.btn-action{padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .3s;box-shadow:0 4px 15px #667eea66}.btn-action:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.btn-icon{font-size:1.2rem}.stats-dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 10px 40px #0000001a;display:flex;align-items:center;gap:1.5rem;transition:transform .3s}.stat-card:hover{transform:translateY(-5px)}.stat-icon{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:2rem}.stat-primary .stat-icon{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-success .stat-icon{background:linear-gradient(135deg,#11998e,#38ef7d)}.stat-warning .stat-icon{background:linear-gradient(135deg,#f093fb,#f5576c)}.stat-info .stat-icon{background:linear-gradient(135deg,#4facfe,#00f2fe)}.stat-value{font-size:2rem;font-weight:700;color:#2d3748;line-height:1}.stat-label{color:#718096;font-size:.95rem;margin-top:.25rem}.nav-tabs{display:flex;gap:1rem;margin-bottom:2rem;background:#fff;padding:1rem;border-radius:16px;box-shadow:0 10px 40px #0000001a;flex-wrap:wrap}.nav-tab{padding:.75rem 1.5rem;background:transparent;border:none;border-radius:10px;cursor:pointer;font-weight:600;color:#718096;transition:all .3s;display:flex;align-items:center;gap:.5rem;position:relative}.nav-tab:hover{background:#f7fafc}.nav-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.tab-icon{font-size:1.2rem}.tab-badge{background:#0003;color:#fff;padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:700}.nav-tab.active .tab-badge{background:#ffffff4d}.badge-alert{background:#f5576c!important;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.content-section{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 10px 40px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.section-header h2{margin:0;font-size:1.5rem;color:#2d3748;font-weight:700}.section-subtitle{color:#718096;margin:.5rem 0 0}.search-box{position:relative;flex:0 1 300px}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);font-size:1.2rem}.search-box input{width:100%;padding:.75rem 1rem .75rem 3rem;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;transition:all .3s}.search-box input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.dashboard-content{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 10px 40px #0000001a}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}.dashboard-card{background:#f7fafc;padding:1.5rem;border-radius:12px;border:2px solid #e2e8f0}.dashboard-card h3{margin:0 0 1rem;font-size:1.2rem;color:#2d3748}.quick-actions{display:flex;flex-direction:column;gap:.75rem}.quick-action-btn{padding:1rem;background:#fff;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;display:flex;align-items:center;gap:1rem;transition:all .3s;position:relative}.quick-action-btn:hover{border-color:#667eea;background:#f8f9ff;transform:translate(5px)}.action-icon{font-size:1.5rem}.quick-action-btn span:nth-child(2){flex:1;text-align:left;font-weight:600;color:#2d3748}.action-badge{background:#f5576c;color:#fff;padding:.25rem .6rem;border-radius:12px;font-size:.75rem;font-weight:700}.activity-list{display:flex;flex-direction:column;gap:.75rem}.activity-item{padding:1rem;background:#fff;border:2px solid #e2e8f0;border-radius:10px;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .3s}.activity-item:hover{border-color:#667eea;background:#f8f9ff;transform:translate(5px)}.activity-icon{font-size:1.5rem}.activity-details{flex:1}.activity-title{font-weight:600;color:#2d3748}.activity-subtitle{font-size:.85rem;color:#718096;margin-top:.25rem}.patients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.patient-card{background:#f7fafc;padding:1.5rem;border-radius:12px;border:2px solid #e2e8f0;transition:all .3s}.patient-card:hover{border-color:#667eea;box-shadow:0 8px 25px #667eea26}.patient-header{display:flex;gap:1rem;margin-bottom:1rem}.patient-avatar{width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;font-weight:700;flex-shrink:0}.patient-avatar-small{width:50px;height:50px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;font-weight:700;flex-shrink:0}.patient-avatar-tiny{width:35px;height:35px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1rem;font-weight:700}.patient-info h3{margin:0;font-size:1.1rem;color:#2d3748}.patient-info p{margin:.25rem 0;color:#718096;font-size:.9rem}.patient-stats{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding:1rem;background:#fff;border-radius:8px}.patient-stat{display:flex;justify-content:space-between;align-items:center}.stat-label{color:#718096;font-size:.9rem}.stat-value{font-weight:600;color:#2d3748}.patient-actions{display:flex;gap:.5rem}.btn-small{flex:1;padding:.6rem 1rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 15px #667eea66}.btn-danger{background:#f5576c;color:#fff;flex:0 0 auto}.btn-danger:hover{background:#dc3545;transform:translateY(-2px)}.status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.4rem .8rem;border-radius:12px;font-size:.85rem;font-weight:600}.status-pending{background:#fff3cd;color:#856404}.status-reviewed{background:#e3f2fd;color:#0d47a1}.status-completed{background:#e8f5e9;color:#1b5e20}.status-none{background:#f5f5f5;color:#616161}.badge-icon{font-size:1rem}.filter-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.filter-btn{padding:.6rem 1.2rem;background:#fff;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;font-weight:600;color:#718096;transition:all .3s}.filter-btn:hover{border-color:#667eea;color:#667eea}.filter-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent}.questionnaires-list{display:flex;flex-direction:column;gap:1rem}.questionnaire-card{background:#f7fafc;padding:1.5rem;border-radius:12px;border:2px solid #e2e8f0;cursor:pointer;transition:all .3s}.questionnaire-card:hover{border-color:#667eea;box-shadow:0 8px 25px #667eea26;transform:translateY(-2px)}.questionnaire-header{display:flex;gap:1rem;align-items:flex-start}.questionnaire-info{flex:1}.questionnaire-info h3{margin:0 0 .5rem;font-size:1.2rem;color:#2d3748}.questionnaire-meta{margin:0;color:#718096;font-size:.95rem}.questionnaire-date{margin:.5rem 0 0;color:#a0aec0;font-size:.85rem}.questionnaire-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.btn-link{background:none;border:none;color:#667eea;font-weight:600;cursor:pointer;padding:0;font-size:.95rem;transition:all .3s}.btn-link:hover{color:#764ba2;text-decoration:underline}.reports-table{overflow-x:auto}.reports-table table{width:100%;border-collapse:collapse}.reports-table th,.reports-table td{padding:1rem;text-align:left;border-bottom:1px solid #e2e8f0}.reports-table th{background:#f7fafc;color:#2d3748;font-weight:700;font-size:.9rem;text-transform:uppercase}.reports-table tr:hover{background:#f8f9ff}.patient-cell{display:flex;align-items:center;gap:.75rem}.completion-badge{padding:.4rem .8rem;border-radius:12px;font-weight:700;font-size:.9rem}.completion-badge.high{background:#e8f5e9;color:#1b5e20}.completion-badge.medium{background:#fff3cd;color:#856404}.completion-badge.low{background:#ffebee;color:#c62828}.streak-badge{background:#ffe0b2;color:#e65100;padding:.4rem .8rem;border-radius:12px;font-weight:600}.weight-badge{padding:.4rem .8rem;border-radius:12px;font-weight:600}.weight-badge.weight-down{background:#e8f5e9;color:#1b5e20}.weight-badge.weight-up{background:#ffebee;color:#c62828}.weight-badge.weight-stable{background:#e3f2fd;color:#0d47a1}.no-data{color:#cbd5e0}.btn-back{margin-bottom:1rem;padding:.6rem 1.2rem;background:#fff;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;font-weight:600;color:#718096;transition:all .3s}.btn-back:hover{border-color:#667eea;color:#667eea}.report-detail-card{background:#f7fafc;padding:2rem;border-radius:12px;border:2px solid #e2e8f0}.report-detail-card h2{margin:0 0 .5rem;color:#2d3748}.report-period{color:#718096;margin:0 0 2rem}.report-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.report-stat-card{background:#fff;padding:1.5rem;border-radius:12px;text-align:center;border:2px solid #e2e8f0}.weight-info-card{background:#fff;padding:1.5rem;border-radius:12px;margin-bottom:2rem;border:2px solid #e2e8f0}.weight-info-card h3{margin:0 0 1rem;color:#2d3748}.weight-change{font-size:1.5rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.weight-change.weight-down{color:#1b5e20}.weight-change.weight-up{color:#c62828}.weight-change.weight-stable{color:#0d47a1}.trend-icon{font-size:1.8rem}.meals-progress{background:#fff;padding:1.5rem;border-radius:12px;border:2px solid #e2e8f0}.meals-progress h3{margin:0 0 1rem;color:#2d3748}.meal-progress-item{margin-bottom:1rem}.meal-progress-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.meal-name{font-weight:600;color:#2d3748}.meal-stats{color:#718096;font-size:.9rem}.progress-bar-wrapper{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px;transition:width .5s ease}.empty-state-card{text-align:center;padding:3rem;background:#f7fafc;border-radius:12px;border:2px dashed #cbd5e0}.empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.empty-state-card h3{margin:0 0 .5rem;color:#2d3748}.empty-state-card p{margin:0;color:#718096}.empty-state{text-align:center;color:#718096;padding:2rem}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem}.spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.alert{padding:1rem 1.5rem;border-radius:12px;margin-bottom:1rem;display:flex;align-items:center;gap:.75rem}.alert-error{background:#ffebee;color:#c62828;border:2px solid #ef9a9a}@media (max-width: 768px){.doctor-cabinet-pro{padding:1rem .5rem}.doctor-header{padding:1.5rem}.header-left{flex-direction:column;text-align:center}.doctor-header h1{font-size:1.4rem}.stats-dashboard{grid-template-columns:1fr}.nav-tabs{flex-direction:column}.nav-tab{justify-content:center}.dashboard-grid,.patients-grid{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:flex-start}.search-box{width:100%}.report-stats-grid{grid-template-columns:1fr}.reports-table{font-size:.85rem}.reports-table th,.reports-table td{padding:.75rem .5rem}}.menu-builder{margin:30px 0;padding:24px;background:#f8f9fa;border-radius:12px;border:2px solid #e0e6ed}.menu-builder-header{margin-bottom:20px}.menu-builder-header h3{margin:0 0 8px;color:#2c3e50;font-size:20px}.menu-builder-stats{display:flex;gap:12px;font-size:14px;color:#6c757d}.menu-builder-content{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}.menu-builder-left{background:#fff;border-radius:10px;padding:20px}.meal-selector{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.meal-tab{padding:8px 16px;border:2px solid #dee2e6;background:#fff;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;color:#495057;transition:all .2s;display:flex;align-items:center;gap:6px}.meal-tab:hover{border-color:#adb5bd;background:#f8f9fa}.meal-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea}.meal-badge{background:#ffffff4d;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600}.meal-tab.active .meal-badge{background:#ffffff4d}.add-product-form{background:#f8f9fa;padding:16px;border-radius:8px;margin-bottom:20px}.add-product-form h4{margin:0 0 16px;font-size:15px;color:#495057}.form-row{display:grid;grid-template-columns:2fr 1fr .8fr;gap:12px;margin-bottom:12px}.flex-2{grid-column:span 1}.form-group{display:flex;flex-direction:column}.form-group label{font-size:12px;font-weight:500;margin-bottom:4px;color:#6c757d}.form-group input,.form-group select{padding:8px 12px;border:1px solid #ced4da;border-radius:6px;font-size:13px;font-family:inherit}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.btn-add-product{width:100%;padding:10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;font-size:14px;transition:transform .2s}.btn-add-product:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.meal-products-list{margin-top:20px}.meal-products-list h4{margin:0 0 12px;font-size:15px;color:#495057}.products-list{display:flex;flex-direction:column;gap:8px}.product-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.product-info{display:flex;align-items:center;gap:12px;flex:1}.product-name{font-weight:500;color:#212529;font-size:13px;flex:1}.product-amount{font-size:13px;color:#6c757d;font-weight:500;white-space:nowrap}.product-category{font-size:11px;color:#adb5bd;padding:2px 8px;background:#fff;border-radius:4px}.btn-remove-product{background:#dc3545;color:#fff;border:none;width:24px;height:24px;border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:background .2s}.btn-remove-product:hover{background:#c82333}.empty-message{text-align:center;color:#adb5bd;padding:20px;font-size:13px}.menu-builder-right{background:#fff;border-radius:10px;padding:20px}.shopping-list h4{margin:0 0 8px;font-size:18px;color:#2c3e50}.shopping-list-hint{margin:0 0 20px;font-size:12px;color:#6c757d}.shopping-categories{display:flex;flex-direction:column;gap:16px;max-height:600px;overflow-y:auto;padding-right:8px}.shopping-category{border-radius:8px;overflow:hidden}.category-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:8px 12px;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.category-products{background:#f8f9fa;padding:8px}.shopping-item{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#fff;border-radius:6px;margin-bottom:6px;font-size:13px}.shopping-item:last-child{margin-bottom:0}.shopping-checkbox{font-size:16px;color:#adb5bd}.shopping-name{flex:1;color:#212529;font-weight:500}.shopping-amount{color:#667eea;font-weight:600;white-space:nowrap}.empty-shopping-list{text-align:center;padding:60px 20px;color:#adb5bd}.empty-shopping-list p{margin:8px 0;font-size:14px}.empty-shopping-list p:first-child{font-size:48px;margin-bottom:16px}@media (max-width: 1200px){.menu-builder-content,.form-row{grid-template-columns:1fr}}.meal-plan-form{background:#fff;padding:30px;border-radius:12px;max-width:900px;margin:0 auto}.meal-plan-form h3{margin:0 0 24px;font-size:22px;color:#2b2b2b}.form-section{margin-bottom:30px}.form-section>label{display:block;font-size:16px;font-weight:600;margin-bottom:12px;color:#2b2b2b}.template-selector{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.template-btn{background:#f9f4ec;border:2px solid #ddd3c0;border-radius:12px;padding:20px;cursor:pointer;transition:all .2s ease;text-align:left}.template-btn:hover{border-color:#c8a152;box-shadow:0 4px 12px #c8a15233}.template-btn.active{background:linear-gradient(135deg,#f6efe1,#faf7f0);border-color:#c8a152;box-shadow:0 4px 16px #c8a1524d}.template-icon{font-size:32px;margin-bottom:8px}.template-name{font-size:16px;font-weight:600;color:#2b2b2b;margin-bottom:4px}.template-desc{font-size:13px;color:#666;line-height:1.4}.form-section-title{font-size:18px;font-weight:600;color:#8c7134;margin:30px 0 16px;padding-bottom:8px;border-bottom:2px solid #f0e8d8}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:16px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:14px;font-weight:500;margin-bottom:6px;color:#555}.form-group input,.form-group textarea{width:100%;border-radius:8px;border:1px solid #ddd3c0;padding:10px 12px;font-size:14px;font-family:inherit;resize:vertical;transition:border-color .2s ease}.form-group textarea{line-height:1.5}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#c8a152;box-shadow:0 0 0 3px #c8a1521a}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:1px solid #e5e5e5}.btn-cancel,.btn-submit{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.btn-cancel{background:#f5f5f5;color:#666}.btn-cancel:hover{background:#e5e5e5}.btn-submit{background:linear-gradient(135deg,#d6b56c,#c29a4a);color:#fff;box-shadow:0 4px 12px #b590474d}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 6px 16px #b5904766}@media (max-width: 768px){.meal-plan-form{padding:20px}.template-selector,.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}}.shopping-list-section{margin-top:40px;padding:24px;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:16px}.shopping-list-header{margin-bottom:24px}.shopping-stats{display:flex;gap:20px;margin-bottom:12px}.stat-item{display:flex;flex-direction:column;align-items:center;padding:12px 20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.stat-value{font-size:24px;font-weight:700;color:#2c3e50}.stat-label{font-size:12px;color:#6c757d;margin-top:4px}.shopping-hint{font-size:13px;color:#495057;font-style:italic}.shopping-categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:20px}.shopping-category-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #0000001a;transition:transform .2s}.shopping-category-card:hover{transform:translateY(-4px);box-shadow:0 6px 16px #00000026}.category-header-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:12px 16px;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.category-items{padding:12px}.shopping-item-card{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#f8f9fa;border-radius:8px;margin-bottom:8px;cursor:pointer;transition:all .2s;border:2px solid transparent}.shopping-item-card:hover{background:#e9ecef;border-color:#667eea}.shopping-item-card.checked{background:#d4edda;border-color:#28a745;opacity:.7}.shopping-item-card.checked .item-name{text-decoration:line-through;color:#6c757d}.shopping-item-card:last-child{margin-bottom:0}.item-checkbox{width:24px;height:24px;border-radius:50%;background:#fff;border:2px solid #adb5bd;display:flex;align-items:center;justify-content:center;font-size:14px;color:#28a745;font-weight:700;flex-shrink:0;transition:all .2s}.shopping-item-card.checked .item-checkbox{background:#28a745;border-color:#28a745;color:#fff}.item-details{flex:1;display:flex;justify-content:space-between;align-items:center}.item-name{font-weight:500;color:#212529;font-size:14px}.item-amount{color:#667eea;font-weight:600;font-size:13px;white-space:nowrap}.shopping-footer{margin-top:20px;padding:16px;background:#fffc;border-radius:8px;text-align:center}.shopping-footer p{margin:0;font-size:13px;color:#495057}@media (max-width: 768px){.shopping-categories-grid{grid-template-columns:1fr}.shopping-stats{flex-wrap:wrap}}@media print{.shopping-item-card,.shopping-category-card{break-inside:avoid}}.meal-plan-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.meal-plan-modal{background:#f1eee8;border-radius:20px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.meal-plan-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:1px solid #ddd3c0}.meal-plan-header h2{margin:0;font-size:20px;color:#2b2b2b}.meal-plan-actions{display:flex;gap:10px}.btn-download,.btn-close{padding:8px 16px;border-radius:8px;border:none;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-download{background:linear-gradient(135deg,#d6b56c,#c29a4a);color:#fff;box-shadow:0 4px 12px #b590474d}.btn-download:hover{transform:translateY(-2px);box-shadow:0 6px 16px #b5904766}.btn-close{background:transparent;color:#666;padding:8px 12px}.btn-close:hover{background:#e5e5e5}.meal-plan-content{overflow-y:auto;padding:20px}#pdfArea{width:100%;max-width:800px;margin:0 auto;background:#fff;border-radius:18px;padding:32px 40px 36px;box-shadow:0 14px 40px #00000014;position:relative;overflow:visible}#pdfArea:before{content:"";position:absolute;top:-80px;right:-80px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#f7efe0 0,#f7efe0 40%,transparent 75%);opacity:.9;pointer-events:none;z-index:20}#pdfArea:after{content:"";position:absolute;bottom:-120px;left:-60px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle at 70% 70%,#f8f2e5 0,#f8f2e5 40%,transparent 75%);opacity:.85;pointer-events:none}.doctor-logo{position:absolute;top:60px;right:30px;z-index:10;width:140px;height:auto;opacity:.95}.doctor-logo img{width:100%;height:auto;display:block;object-fit:contain}.header{position:relative;z-index:1;margin-bottom:24px}.label{display:inline-flex;align-items:center;gap:8px;padding:4px 12px;border-radius:999px;background:#f6efe1;color:#9b7a35;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600}.label-dot{width:6px;height:6px;border-radius:50%;background:#c8a152}#pdfArea h1{font-family:Playfair Display,Times New Roman,serif;font-size:26px;letter-spacing:.03em;margin:14px 0 4px;color:#1a1a1a}.subtitle{font-size:14px;color:#6b6b6b;max-width:520px;line-height:1.55}.client-name{margin-top:4px;font-size:13px;color:#8a6b2a;font-weight:500}.divider{margin:18px 0 16px;height:1px;width:72px;background:linear-gradient(90deg,#d6b56c,#c29a4a);border-radius:999px}.pill-info{display:inline-flex;flex-wrap:wrap;gap:8px;font-size:11px;color:#777;margin-bottom:6px}.pill-info span{padding:3px 9px;border-radius:999px;background:#faf3e4;border:1px solid rgba(210,176,104,.4);white-space:nowrap}.section-title{position:relative;margin:24px 0 14px;font-size:16px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#8c7134}.section-title:before{content:"";position:absolute;left:0;bottom:-6px;width:52px;height:2px;border-radius:999px;background:linear-gradient(90deg,#d9b86f,transparent)}.grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;position:relative;z-index:1}.card{background:#f9f4ec;border-radius:14px;padding:14px 16px;border:1px solid rgba(210,176,104,.6);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:16px;right:16px;height:4px;border-radius:0 0 999px 999px;background:linear-gradient(90deg,#d6b56c,#f1dfb4);opacity:.9}.card-header{margin-top:6px;margin-bottom:6px;font-weight:600;font-size:13px;color:#8b6c2c}.card-body{font-size:12px;line-height:1.55;color:#444}.card-body p{margin:2px 0}.menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.day-card{background:#faf7f0;border-radius:14px;padding:12px 13px;border:1px solid rgba(198,164,96,.65);font-size:11.5px;line-height:1.55}.day-title{font-weight:600;font-size:12px;color:#86682c;margin-bottom:4px;text-transform:uppercase;letter-spacing:.08em}.day-card p{margin:2px 0}.footer-note{margin-top:16px;font-size:10.5px;color:#9c9c9c;text-align:right}@media (max-width: 768px){.meal-plan-modal{max-width:100%;max-height:100vh;border-radius:0}#pdfArea{padding:20px}.menu-grid{grid-template-columns:1fr}}.diary-container{max-width:900px;margin:0 auto;padding:20px}.diary-header{display:flex;align-items:center;gap:20px;margin-bottom:30px}.diary-header h1{margin:0;font-size:28px}.button-back{padding:8px 16px;border:none;background:#f0f0f0;border-radius:8px;cursor:pointer;font-size:14px;color:#333;transition:all .2s}.button-back:hover{background:#e0e0e0}.streak-card{background:linear-gradient(135deg,#ff6b6b,#ff8e53);color:#fff;padding:24px;border-radius:16px;display:flex;align-items:center;gap:20px;margin-bottom:24px;box-shadow:0 4px 20px #ff6b6b4d}.streak-icon{font-size:48px;animation:flameFlicker 2s infinite}@keyframes flameFlicker{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.streak-info{flex:1}.streak-number{font-size:36px;font-weight:700}.streak-label{font-size:14px;opacity:.9}.streak-motivation{font-size:16px;font-weight:500;padding:8px 16px;background:#fff3;border-radius:8px}.date-navigator{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;padding:16px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.date-nav-btn{width:40px;height:40px;border:none;background:#f0f0f0;border-radius:8px;cursor:pointer;font-size:18px;transition:all .2s}.date-nav-btn:hover:not(:disabled){background:#e0e0e0;transform:scale(1.05)}.date-nav-btn:disabled{opacity:.3;cursor:not-allowed}.current-date{flex:1;text-align:center;position:relative}.date-display{font-size:18px;font-weight:600;color:#333}.date-picker{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.progress-card{background:#fff;padding:20px;border-radius:12px;margin-bottom:24px;box-shadow:0 2px 8px #0000001a}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:14px;color:#666}.progress-percentage{font-size:20px;font-weight:700;color:#4caf50}.progress-bar{height:12px;background:#f0f0f0;border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);border-radius:999px;transition:width .5s ease}.meals-section{margin-bottom:24px}.meals-section h3{margin:0 0 16px;font-size:18px;color:#333}.meals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.meal-card{background:#fff;padding:16px;border-radius:12px;box-shadow:0 2px 8px #0000001a;transition:all .2s;display:flex;flex-direction:column;gap:12px;border:2px solid transparent}.meal-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.meal-card.completed{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-color:#4caf50}.meal-checkbox{width:28px;height:28px;border:2px solid #ddd;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;background:#fff;transition:all .2s}.meal-card.completed .meal-checkbox{background:#4caf50;border-color:#4caf50;color:#fff}.meal-header{display:flex;align-items:center;gap:12px;cursor:pointer}.meal-info{flex:1}.meal-emoji{font-size:24px;margin-bottom:4px}.meal-name{font-weight:600;font-size:14px;color:#333;margin-bottom:2px}.meal-time{font-size:11px;color:#999}.meal-photo-actions{display:flex;gap:8px;margin-top:8px}.meal-photo-preview{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a;cursor:pointer;width:100%}.meal-photo-preview img{width:100%;height:150px;object-fit:cover;display:block;transition:transform .2s}.meal-photo-preview:hover img{transform:scale(1.05)}.photo-delete-btn{position:absolute;top:8px;right:8px;width:32px;height:32px;border:none;background:#fffffff2;border-radius:50%;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .2s;box-shadow:0 2px 4px #0003;z-index:10}.photo-delete-btn:hover{background:#ff5252;transform:scale(1.1)}.photo-upload-btn{padding:12px 16px;border:2px dashed #4CAF50;background:#f1f8f4;border-radius:8px;cursor:pointer;font-size:13px;transition:all .2s;text-align:center;color:#4caf50;font-weight:500;width:100%;display:block}.photo-upload-btn:hover{background:#e8f5e9;border-color:#45a049;transform:translateY(-1px);box-shadow:0 2px 4px #4caf5033}.photo-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;animation:fadeIn .2s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.photo-modal{background:#fff;border-radius:16px;padding:24px;max-width:800px;max-height:90vh;position:relative;animation:slideUp .3s}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.photo-modal h3{margin:0 0 16px;font-size:20px;color:#333}.photo-modal-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:none;background:#f0f0f0;border-radius:50%;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.photo-modal-close:hover{background:#e0e0e0;transform:rotate(90deg)}.photo-modal-image{width:100%;height:auto;max-height:70vh;object-fit:contain;border-radius:8px}.water-section{margin-bottom:24px}.water-section h3{margin:0 0 16px;font-size:18px;color:#333}.water-card{background:linear-gradient(135deg,#e3f2fd,#bbdefb);padding:20px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.water-info{text-align:center;margin-bottom:16px}.water-amount{font-size:24px;font-weight:700;color:#1976d2}.water-ml{font-size:14px;color:#666}.water-controls{display:flex;align-items:center;gap:12px}.water-btn{width:40px;height:40px;border:none;background:#fff;border-radius:8px;cursor:pointer;font-size:20px;color:#1976d2;transition:all .2s;flex-shrink:0}.water-btn:hover:not(:disabled){background:#f0f0f0;transform:scale(1.1)}.water-btn:disabled{opacity:.3;cursor:not-allowed}.water-glasses{flex:1;display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.water-glass{font-size:24px;opacity:.3;transition:all .2s}.water-glass.filled{opacity:1;animation:dropBounce .3s ease}@keyframes dropBounce{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.notes-section{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px}.weight-input{margin-bottom:20px}.weight-input label,.notes-input label{display:block;margin-bottom:8px;font-weight:600;color:#333;font-size:14px}.weight-input input{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:16px;transition:all .2s}.weight-input input:focus{outline:none;border-color:#4caf50}.notes-input textarea{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;transition:all .2s}.notes-input textarea:focus{outline:none;border-color:#4caf50}.history-section{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.history-section h3{margin:0 0 16px;font-size:18px;color:#333}.history-list{display:flex;flex-direction:column;gap:12px}.history-item{padding:16px;background:#f9f9f9;border-radius:8px;cursor:pointer;transition:all .2s;display:grid;grid-template-columns:1fr 2fr auto;gap:16px;align-items:center}.history-item:hover{background:#f0f0f0;transform:translate(4px)}.history-date{font-weight:600;font-size:14px;color:#333}.history-progress{display:flex;align-items:center;gap:12px}.mini-progress-bar{flex:1;height:6px;background:#e0e0e0;border-radius:999px;overflow:hidden}.mini-progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);border-radius:999px;transition:width .3s ease}.history-percent{font-size:12px;color:#666;min-width:40px;text-align:right}.history-weight{font-size:13px;color:#666;padding:4px 12px;background:#fff;border-radius:6px}@media (max-width: 768px){.diary-header{flex-direction:column;align-items:flex-start}.meals-grid{grid-template-columns:1fr}.water-glasses{gap:4px}.water-glass{font-size:20px}.history-item{grid-template-columns:1fr;gap:8px}.streak-card{flex-direction:column;text-align:center}}.report-container{padding:20px;max-width:1200px;margin:0 auto}.report-header{display:flex;align-items:center;gap:20px;margin-bottom:30px}.report-header h1{margin:0;color:#2d3748}.button-back{padding:8px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:14px;color:#4a5568;transition:all .2s}.button-back:hover{background:#f7fafc;border-color:#cbd5e0}.week-selector{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff}.current-week{text-align:center}.week-label{font-size:18px;font-weight:600;margin-bottom:5px}.week-dates{font-size:14px;opacity:.9}.button-small{padding:8px 16px;background:#fff3;border:1px solid rgba(255,255,255,.3);border-radius:8px;color:#fff;cursor:pointer;font-size:14px;transition:all .2s}.button-small:hover:not(:disabled){background:#ffffff4d}.button-small:disabled{opacity:.5;cursor:not-allowed}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:40px}.stat-card{padding:24px;border-radius:16px;text-align:center;box-shadow:0 4px 6px #0000001a;transition:transform .2s}.stat-card:hover{transform:translateY(-4px)}.stat-primary{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.stat-success{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.stat-info{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff}.stat-water{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.stat-icon{font-size:48px;margin-bottom:10px}.stat-value{font-size:36px;font-weight:700;margin-bottom:5px}.stat-label{font-size:14px;opacity:.9}.report-section{background:#fff;border-radius:16px;padding:30px;margin-bottom:30px;box-shadow:0 2px 4px #0000000d}.report-section h2{margin:0 0 20px;color:#2d3748;font-size:24px}.meals-stats{display:grid;gap:20px}.meal-stat-card{padding:20px;background:#f7fafc;border-radius:12px;transition:transform .2s}.meal-stat-card:hover{transform:translate(4px)}.meal-stat-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.meal-emoji{font-size:28px}.meal-name{font-size:18px;font-weight:600;color:#2d3748}.meal-stat-bar{display:flex;align-items:center;gap:12px;margin-bottom:10px}.meal-stat-progress{flex:1;height:12px;background:#e2e8f0;border-radius:6px;overflow:hidden}.meal-stat-fill{height:100%;background:linear-gradient(90deg,#4facfe,#00f2fe);border-radius:6px;transition:width .3s}.meal-stat-text{font-size:14px;color:#4a5568;white-space:nowrap}.meal-stat-details{display:flex;gap:20px;font-size:13px;color:#718096}.water-stats{display:flex;flex-direction:column;gap:30px}.water-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.water-metric{text-align:center;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff}.water-value{font-size:32px;font-weight:700;margin-bottom:5px}.water-label{font-size:14px;opacity:.9}.water-chart{display:flex;gap:8px;justify-content:space-around;align-items:flex-end;height:200px;padding:20px;background:#f7fafc;border-radius:12px}.water-bar-container{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px}.water-bar-wrapper{width:100%;height:150px;display:flex;align-items:flex-end}.water-bar{width:100%;background:linear-gradient(180deg,#4facfe,#00f2fe);border-radius:8px 8px 0 0;transition:height .3s;min-height:5px}.water-bar-label{font-size:12px;color:#4a5568;text-transform:capitalize}.weight-stats{display:flex;flex-direction:column;gap:30px}.weight-change{padding:20px;border-radius:12px;text-align:center}.weight-down{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff}.weight-up{background:linear-gradient(135deg,#fa709a,#fee140);color:#fff}.weight-stable{background:linear-gradient(135deg,#a8edea,#fed6e3);color:#2d3748}.weight-change-value{font-size:32px;font-weight:700;margin-bottom:5px}.weight-change-label{font-size:16px;opacity:.9}.weight-chart{display:flex;gap:16px;justify-content:space-around;padding:20px;background:#f7fafc;border-radius:12px}.weight-point-container{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px}.weight-point-wrapper{width:100%;position:relative}.weight-point{position:absolute;width:100%;display:flex;justify-content:center;align-items:center}.weight-point:before{content:"";width:16px;height:16px;background:linear-gradient(135deg,#667eea,#764ba2);border:3px solid white;border-radius:50%;box-shadow:0 2px 8px #00000026}.weight-value{position:absolute;top:-25px;font-size:14px;font-weight:600;color:#2d3748;background:#fff;padding:4px 8px;border-radius:6px;box-shadow:0 2px 4px #0000001a}.weight-point-label{font-size:12px;color:#4a5568}.daily-activity{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:16px}.daily-card{padding:16px;border-radius:12px;text-align:center;transition:transform .2s}.daily-card.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.daily-card.inactive{background:#f7fafc;color:#a0aec0}.daily-card:hover{transform:translateY(-4px)}.daily-date{margin-bottom:12px}.daily-weekday{font-size:12px;text-transform:uppercase;opacity:.8;margin-bottom:4px}.daily-day{font-size:24px;font-weight:700}.daily-stats{display:flex;flex-direction:column;gap:4px;font-size:13px}.motivation-card{background:linear-gradient(135deg,#ffecd2,#fcb69f);padding:30px;border-radius:16px;text-align:center;box-shadow:0 4px 6px #0000001a}.motivation-emoji{font-size:48px;margin-bottom:12px}.motivation-text{font-size:18px;color:#2d3748}.motivation-text strong{font-weight:700}@media (max-width: 768px){.report-container{padding:15px}.week-selector{flex-direction:column;gap:15px}.stats-grid{grid-template-columns:1fr}.report-section{padding:20px}.water-chart,.weight-chart{padding:15px}.daily-activity{grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:12px}}*{margin:0;padding:0;box-sizing:border-box}:root{--color-primary: #4a9d6f;--color-primary-light: #5cb381;--color-primary-dark: #3d8659;--color-secondary: #f5f5f5;--color-background: #ffffff;--color-text: #2c2c2c;--color-text-light: #666666;--color-border: #e0e0e0;--color-error: #d32f2f;--color-success: #4a9d6f;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-xxl: 48px;--font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;--font-size-sm: 12px;--font-size-base: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 24px;--font-size-xxl: 32px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .15);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text);background-color:var(--color-background);line-height:1.6}h1,h2,h3,h4,h5,h6{font-weight:600;margin-bottom:var(--spacing-md)}h1{font-size:var(--font-size-xxl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}a{color:var(--color-primary);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-primary-dark)}button{font-family:var(--font-family);cursor:pointer}input,textarea,select{font-family:var(--font-family)}
