.navbar-header{background:#18181bf2;box-shadow:0 2px 16px #00000040;position:sticky;top:0;z-index:100;border-bottom:1px solid #23232a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.navbar-container{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:18px 36px}.navbar-brand-section{display:flex;align-items:center;gap:1rem}.navbar-logo{display:flex;align-items:center;font-size:2rem;font-weight:700;color:#60a5fa;text-decoration:none;letter-spacing:1px;transition:color .2s;gap:.5rem;text-shadow:0 2px 8px rgba(37,99,235,.1)}.navbar-logo:before{content:"🥗";font-size:1.7rem;margin-right:.5rem}.navbar-logo:hover{color:#93c5fd}.navbar-user-email{font-size:.85rem;color:#93c5fd;background:#93c5fd1a;padding:.5rem .9rem;border-radius:8px;font-weight:500;border:1px solid rgba(147,197,253,.2)}.nav-links{display:flex;gap:22px;align-items:center}.nav-link{color:#e5e7eb;text-decoration:none;padding:8px 16px;border-radius:6px;font-size:1rem;font-weight:500;transition:background .2s,color .2s,box-shadow .2s;position:relative}.nav-link:hover,.nav-link.active{background:#23232a;color:#60a5fa}.nav-link:after{content:"";display:block;height:2px;width:0;background:#60a5fa;transition:width .2s;position:absolute;left:16px;bottom:6px;border-radius:2px}.nav-link:hover:after,.nav-link.active:after{width:60%}.nav-logout-btn{background:#ef4444;color:#fff;border:none;padding:8px 18px;border-radius:6px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s,transform .2s,box-shadow .2s}.nav-logout-btn:hover{background:#dc2626;transform:translateY(-2px);box-shadow:0 4px 12px #ef444466}.hamburger{display:none;font-size:1.8rem;background:none;border:none;color:#e5e7eb;cursor:pointer;z-index:110}@media (max-width: 600px){.navbar-container{padding:12px 10px}.navbar-logo{font-size:1.3rem}.nav-link{font-size:.95rem;padding:7px 10px}}@media (max-width: 768px){.navbar-brand-section{flex-direction:column;align-items:flex-start;gap:.4rem}.navbar-user-email{font-size:.75rem;padding:.35rem .7rem}.hamburger{display:block}.nav-links{position:absolute;top:100%;right:0;background:#18181bf7;flex-direction:column;width:100%;max-height:0;overflow:hidden;transition:max-height .3s ease-in-out;z-index:99;align-items:stretch}.nav-links.open{max-height:400px;padding-bottom:1rem}.nav-link{padding:14px 20px;border-top:1px solid #333;width:100%;text-align:left}.nav-link:after{left:20px}.nav-logout-btn{width:calc(100% - 40px);margin:1rem 20px .5rem;text-align:center}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.auth-card{background:#fff;border-radius:20px;padding:40px;max-width:450px;width:100%;box-shadow:0 20px 60px #0000004d}.auth-card h2{margin:0 0 10px;font-size:28px;color:#333;text-align:center}.auth-subtitle{margin:0 0 30px;color:#666;text-align:center;font-size:14px}.auth-error{background:#fee;color:#c33;padding:12px;border-radius:8px;margin-bottom:20px;font-size:14px;text-align:center}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group input{padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:15px;transition:border-color .3s}.form-group input:focus{outline:none;border-color:#667eea}.auth-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:14px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;margin-top:10px}.auth-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #667eea66}.auth-btn:disabled{opacity:.6;cursor:not-allowed}.auth-footer{margin-top:25px;text-align:center;color:#666;font-size:14px}.auth-footer a{color:#667eea;text-decoration:none;font-weight:600}.auth-footer a:hover{text-decoration:underline}.profile-setup-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:40px 20px}.profile-setup-card{background:#fff;border-radius:20px;padding:40px;max-width:700px;width:100%;box-shadow:0 20px 60px #0000004d}.profile-setup-card h2{margin:0 0 10px;font-size:28px;color:#333;text-align:center}.profile-subtitle{margin:0 0 30px;color:#666;text-align:center;font-size:14px}.profile-error{background:#fee;color:#c33;padding:12px;border-radius:8px;margin-bottom:20px;font-size:14px;text-align:center}.profile-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#333;font-size:14px}.form-group input,.form-group select{padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:15px;transition:border-color .3s;background:#fff}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea}.profile-submit-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:16px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;margin-top:10px}.profile-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #667eea66}.profile-submit-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 600px){.form-row{grid-template-columns:1fr}.profile-setup-card{padding:30px 20px}}.mealplan-root{padding:2rem;text-align:center;color:#f3f4f6;min-height:100vh;background:#18181b}.mealplan-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:20px}.mealplan-title{font-size:2rem;font-weight:700;margin-bottom:.5rem;color:#93c5fd}.mealplan-header h4{color:#cbd5e1;font-weight:400;font-size:.95rem;margin:0}.mealplan-actions{display:flex;gap:10px;flex-wrap:wrap}.mealplan-edit-btn,.mealplan-regenerate-btn,.mealplan-logout-btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}.mealplan-edit-btn{background:#10b981;color:#fff}.mealplan-edit-btn:hover:not(:disabled){background:#059669;transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.mealplan-regenerate-btn{background:#3b82f6;color:#fff}.mealplan-regenerate-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-2px);box-shadow:0 4px 12px #3b82f666}.mealplan-logout-btn{background:#ef4444;color:#fff}.mealplan-logout-btn:hover:not(:disabled){background:#dc2626;transform:translateY(-2px);box-shadow:0 4px 12px #ef444466}.mealplan-edit-btn:disabled,.mealplan-regenerate-btn:disabled{opacity:.5;cursor:not-allowed}.mealplan-loading{color:#93c5fd;font-size:1.1rem;margin:2rem 0;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.mealplan-json{background:#23232a;color:#f3f4f6;padding:1rem;border-radius:8px;text-align:left;max-width:700px;margin:0 auto;overflow-x:auto;font-size:1rem}.mealplan-error{color:#f87171;font-weight:700;background:#f871711a;padding:1rem;border-radius:8px;margin:1rem auto;max-width:600px}.mealplan-list{display:flex;flex-direction:column;gap:28px;margin-top:24px;max-width:1200px;margin-left:auto;margin-right:auto}.mealplan-card{background:#23232a;color:#f3f4f6;border-radius:12px;box-shadow:0 2px 12px #00000021;padding:24px 28px;text-align:left;transition:box-shadow .2s,transform .2s;border:1px solid #27272a}.mealplan-card:hover{box-shadow:0 6px 24px #2563eb4d;transform:translateY(-2px)}.mealplan-mealname{font-size:1.3rem;font-weight:600;color:#60a5fa;margin-bottom:10px}.mealplan-macros{display:flex;flex-direction:column;gap:4px;margin-bottom:10px;font-size:1.05rem}.mealplan-macros strong{color:#93c5fd}.mealplan-ingredients{margin-top:8px}.mealplan-ingredients strong{color:#93c5fd}.mealplan-ingredients ul{margin:6px 0 0 18px;padding:0;color:#cbd5e1;font-size:1rem}.mealplan-ingredients li{margin-bottom:2px}.mealplan-schedule-btn{margin-top:16px;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.mealplan-schedule-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.mealplan-empty{text-align:center;padding:60px 20px;color:#94a3b8;font-size:18px;background:#23232a;border-radius:12px;margin:2rem auto;max-width:600px;border:2px dashed #374151}.mealplan-empty p{margin:0}@media (max-width: 768px){.mealplan-root{padding:1rem}.mealplan-header{flex-direction:column;align-items:flex-start}.mealplan-actions{width:100%}.mealplan-edit-btn,.mealplan-regenerate-btn,.mealplan-logout-btn{flex:1;min-width:100px}.mealplan-title{font-size:1.5rem}.mealplan-card{padding:20px}.mealplan-mealname{font-size:1.15rem}}.grocerysync-root{padding:2rem;max-width:600px;margin:auto}.grocerysync-title{font-size:1.8rem;margin-bottom:1rem;text-align:center}.grocerysync-list{list-style:none;padding:0}.grocerysync-item{margin-bottom:10px;background:#f9f9f9;padding:.75rem;border-radius:8px;display:flex;align-items:center;transition:background .2s ease}.grocerysync-item input[type=checkbox]{margin-right:.75rem}.checked{text-decoration:line-through;color:gray}.grocerysync-item{color:#222;background:#f9f9f9;padding:.75rem;border-radius:8px;margin-bottom:10px;display:flex;align-items:center;cursor:pointer}.checked{color:#888;text-decoration:line-through}.grocerysync-item:hover{background:#e0e0e0}.schedule-root{padding:2rem;max-width:1000px;margin:auto}.schedule-title{text-align:center;font-size:2rem;margin-bottom:1.5rem}.schedule-table table{width:100%;border-collapse:collapse}.schedule-table th,.schedule-table td{border:1px solid #ccc;padding:1rem;text-align:center;vertical-align:top}.add-btn{background-color:#4caf50;color:#fff;border:none;padding:.4rem .8rem;cursor:pointer;border-radius:5px}.add-btn:hover{background-color:#45a049}.assigned-meal p{margin:0}.assigned-meal button{background:none;border:none;color:red;font-size:1rem;cursor:pointer}.track-root{max-width:700px;margin:auto;padding:2rem}.track-title{font-size:1.8rem;text-align:center;margin-bottom:2rem}.macro-summary{margin-bottom:2rem}.macro-bar{margin-bottom:1rem}.bar{height:20px;background:#eee;border-radius:8px;overflow:hidden}.fill{height:100%;background:#4caf50;transition:width .4s}.meal-log ul{list-style:none;padding:0}.meal-log li{margin-bottom:.5rem;background:#f9f9f9;padding:.5rem;border-radius:5px;display:flex;justify-content:space-between}.add-meal-form input{margin:.3rem;padding:.4rem;width:48%}.add-meal-form button{margin-top:.5rem;padding:.5rem 1rem;background:#007bff;color:#fff;border:none;border-radius:5px}.app-container{min-height:100vh;background:#18181b;color:#f3f4f6;padding:0}h1,h2,h3,h4,h5,h6{color:#f9fafb}input,select,textarea{background:#23232a;color:#f3f4f6;border:1px solid #3f3f46;border-radius:4px;padding:8px;margin-bottom:12px}input:focus,select:focus,textarea:focus{outline:2px solid #60a5fa;background:#232326}button{background:#2563eb;color:#fff;border:none;border-radius:4px;padding:8px 16px;font-weight:700;cursor:pointer;transition:background .2s}button:hover{background:#1e40af}html,body{margin:0;padding:0;box-sizing:border-box}body{margin:0;font-family:Segoe UI,Arial,sans-serif;background:#18181b;color:#f3f4f6;min-height:100vh}a{color:#60a5fa;text-decoration:none;transition:color .2s}a:hover{color:#93c5fd}
