.navbar{position:fixed;top:0;left:0;right:0;background:var(--bg-card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 20px var(--shadow-color);z-index:1000;border-bottom:1px solid var(--border-color);transition:all .3s ease}.navbar-container{max-width:1400px;margin:0 auto;padding:12px 20px;display:flex;justify-content:space-between;align-items:center;min-height:64px;gap:20px}.navbar-brand{font-size:24px;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-decoration:none;display:flex;align-items:center;gap:10px;transition:transform .2s ease;flex-shrink:0}.navbar-brand:hover{transform:scale(1.05)}.navbar-icon{width:36px;height:36px;display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.navbar-menu{display:flex;gap:6px;align-items:center;flex-wrap:nowrap;white-space:nowrap}.navbar-burger{display:none;flex-direction:column;justify-content:space-around;width:30px;height:30px;background:transparent;border:none;cursor:pointer;padding:0;z-index:1001;position:relative}.navbar-burger span{width:100%;height:3px;background:var(--text-primary);border-radius:3px;transition:all .3s ease;transform-origin:center}.navbar-burger.active span:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.navbar-burger.active span:nth-child(2){opacity:0}.navbar-burger.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}@media (max-width: 768px){.navbar-burger{display:flex}.navbar-container{padding:10px 16px;position:relative}.navbar-menu{position:fixed;top:64px;left:0;right:0;background:var(--bg-card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 20px var(--shadow-color);flex-direction:column;align-items:stretch;padding:0;gap:0;max-height:0;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(-10px);transition:max-height .3s ease,padding .3s ease,opacity .3s ease,visibility .3s ease,transform .3s ease;z-index:1000;border-top:none;pointer-events:none}.navbar-menu.open{max-height:90vh;overflow-y:auto;padding:12px;opacity:1;visibility:visible;transform:translateY(0);border-top:1px solid var(--border-color);pointer-events:auto}.navbar-link{width:100%;padding:10px 12px;text-align:left;font-size:16px;border-radius:8px;margin-bottom:6px;display:block}.navbar-link:last-child{margin-bottom:0}.navbar-brand span{font-size:20px}.navbar-icon{width:32px;height:32px}}@media (max-width: 480px){.navbar-container{padding:8px 12px}.navbar-menu{top:60px;padding:0}.navbar-menu.open{padding:10px}.navbar-link{padding:10px 12px;font-size:15px;margin-bottom:4px}.navbar-brand span{font-size:18px}.navbar-icon{width:28px;height:28px}}.navbar-link{text-decoration:none;color:var(--text-secondary);padding:8px 12px;border-radius:12px;font-weight:500;font-size:14px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;white-space:nowrap;flex-shrink:0}.navbar-link:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.navbar-link:hover:before{left:100%}.navbar-link:hover{background:linear-gradient(135deg,#667eea1a,#764ba21a);color:#667eea;transform:translateY(-2px)}.navbar-link.active{background:linear-gradient(135deg,#667eea,#764ba2);color:var(--text-inverse);box-shadow:0 4px 12px #667eea66}.navbar-user{display:flex;align-items:center;gap:12px;padding:8px 16px;margin-left:8px;border-left:1px solid var(--border-color);flex-shrink:0}.navbar-user-name{color:var(--text-primary);font-size:14px;font-weight:500}.navbar-logout{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:8px 16px;border-radius:8px;font-size:14px;transition:all .2s;text-decoration:none;display:inline-block}.navbar-logout:hover{background:#ef44441a;color:#dc2626}@media (max-width: 768px){.navbar-user{margin-left:0;border-left:none;border-top:1px solid var(--border-color);padding-top:12px;margin-top:12px;flex-direction:column;align-items:stretch}.navbar-user-name{text-align:center}.navbar-logout{width:100%;text-align:center}}.floating-virtual-nanny{position:fixed;bottom:20px;right:20px;min-width:60px;height:60px;padding:0 16px;border-radius:30px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;box-shadow:0 4px 12px #667eea66;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;z-index:1000;transition:all .3s ease;color:#fff;font-size:28px}.floating-virtual-nanny:hover{transform:scale(1.1);box-shadow:0 6px 16px #667eea99}.floating-virtual-nanny:active{transform:scale(.95)}.floating-virtual-nanny .nanny-icon{display:block;line-height:1;flex-shrink:0}.floating-virtual-nanny .nanny-text{display:block;font-size:16px;font-weight:600;white-space:nowrap;line-height:1}.floating-virtual-nanny .close-icon{display:none;font-size:36px;line-height:1;font-weight:700}.floating-virtual-nanny.on-page .nanny-icon,.floating-virtual-nanny.on-page .nanny-text{display:none}.floating-virtual-nanny.on-page{width:60px;min-width:60px;padding:0;border-radius:50%}.floating-virtual-nanny.on-page .close-icon{display:block}@media (max-width: 768px){.floating-virtual-nanny{min-width:56px;height:56px;padding:0 12px;bottom:16px;right:16px;font-size:24px;gap:6px}.floating-virtual-nanny .nanny-text{font-size:14px}.floating-virtual-nanny.on-page{width:56px;min-width:56px;padding:0}}.dashboard{position:relative;min-height:calc(100vh - 80px);background-image:url(/dashboard_background.png);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed}.dashboard:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ffffffeb,#ffffffe0);z-index:0;pointer-events:none}@media (prefers-color-scheme: dark){.dashboard:before{background:linear-gradient(135deg,#1a1a1aeb,#1e1e1ee0)}}.dashboard>*{position:relative;z-index:1}.dashboard h1{margin-bottom:30px;margin-top:60px;display:flex;align-items:center;gap:18px;font-size:36px;font-weight:700;padding:20px;background:#fffffff2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:20px;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.5);position:relative;z-index:100}.dashboard h1 span{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dashboard h1:before{content:"";display:inline-block;width:40px;height:40px;background-image:url(/baby-icon.svg);background-size:contain;background-repeat:no-repeat;background-position:center}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px;margin-bottom:50px}.stat-card{background:#fffffffa;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);padding:35px;border-radius:24px;box-shadow:0 10px 40px #00000014,0 2px 8px #0000000a;position:relative;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);border:2px solid rgba(255,255,255,.8)}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .5s cubic-bezier(.4,0,.2,1);z-index:1}.stat-card-feeding:before{background:linear-gradient(90deg,#667eea,#764ba2)}.stat-card-pumping:before{background:linear-gradient(90deg,#764ba2,#667eea)}.stat-card-breastfeeding:before{background:linear-gradient(90deg,#ffb74d,#ffa94d)}.stat-card:after{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(102,126,234,.05) 0%,transparent 70%);opacity:0;transition:opacity .4s ease}.stat-card:hover:before{transform:scaleX(1)}.stat-card:hover:after{opacity:1}.stat-card:hover{transform:translateY(-12px) scale(1.03);box-shadow:0 20px 60px #667eea40,0 4px 12px #00000014;border-color:#667eea4d}.stat-icon{width:70px;height:70px;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea1a,#764ba21a);border-radius:18px;padding:12px;transition:all .3s ease;position:relative;z-index:2}.stat-card-feeding .stat-icon{background:linear-gradient(135deg,#667eea26,#764ba226)}.stat-card-pumping .stat-icon{background:linear-gradient(135deg,#764ba226,#667eea26)}.stat-card-breastfeeding .stat-icon{background:linear-gradient(135deg,#ffb74d26,#ffa94d26)}.stat-card:hover .stat-icon{transform:scale(1.1) rotate(5deg);background:linear-gradient(135deg,#667eea33,#764ba233)}.stat-icon img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.stat-card h3{margin-bottom:18px;color:var(--text-primary);font-size:17px;font-weight:600;text-align:center;position:relative;z-index:2}.stat-value{font-size:48px;font-weight:800;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:10px;line-height:1.1;text-align:center;position:relative;z-index:2;letter-spacing:-1px}.stat-card-feeding .stat-value{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-card-pumping .stat-value{background:linear-gradient(135deg,#764ba2,#667eea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-card-breastfeeding .stat-value{background:linear-gradient(135deg,#ffb74d,#ffa94d);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-card-sleep:before{background:linear-gradient(90deg,#ff9800,#ff8c00)}.stat-card-sleep .stat-icon{background:linear-gradient(135deg,#ff980026,#ff8c0026)}.stat-card-sleep .stat-value{background:linear-gradient(135deg,#ff9800,#ff8c00);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-label{color:var(--text-secondary);font-size:15px;text-align:center;font-weight:500;position:relative;z-index:2}.dashboard-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:35px;margin-top:40px}.dashboard-section{background:#fffffffa;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);padding:35px;border-radius:24px;box-shadow:0 10px 40px #00000014,0 2px 8px #0000000a;border:2px solid rgba(255,255,255,.8);transition:all .4s cubic-bezier(.4,0,.2,1);color:var(--text-primary);position:relative;overflow:hidden}.dashboard-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .4s ease}.dashboard-section:hover:before{transform:scaleX(1)}.dashboard-section:hover{transform:translateY(-5px);box-shadow:0 16px 50px #667eea33,0 4px 12px #00000014;border-color:#667eea4d}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid rgba(102,126,234,.1)}.section-header h2{font-size:22px;font-weight:700;color:var(--text-primary);background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.entries-list{display:flex;flex-direction:column;gap:15px}.entry-card{padding:22px;background:linear-gradient(135deg,#667eea0f,#764ba20f);border-radius:18px;border-left:5px solid;border-image:linear-gradient(135deg,#667eea,#764ba2) 1;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:flex-start;justify-content:space-between;gap:18px;position:relative;overflow:hidden}.entry-card:before{content:"";position:absolute;top:0;left:0;width:5px;height:100%;background:linear-gradient(180deg,#667eea,#764ba2);transform:scaleY(0);transition:transform .3s ease}.entry-card:hover:before{transform:scaleY(1)}.entry-card .edit-form{width:100%;flex:1}.entry-card:hover{transform:translate(10px) translateY(-2px);box-shadow:0 8px 24px #667eea33,0 2px 8px #0000001a;background:linear-gradient(135deg,#667eea1f,#764ba21f);border-left-color:#667eea}.entry-content{flex:1;min-width:0}.entry-time{font-size:15px;color:var(--text-secondary);margin-bottom:10px;font-weight:500}.entry-details{display:flex;gap:15px;align-items:center}.entry-volume{font-size:20px;font-weight:700;color:var(--text-primary);background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.entry-spit{font-size:14px;color:#dc3545;background:#fff;padding:4px 8px;border-radius:4px}.empty-state{text-align:center;color:var(--text-muted);padding:50px 40px;font-size:16px;background:linear-gradient(135deg,#667eea08,#764ba208);border-radius:12px;border:2px dashed rgba(102,126,234,.2)}.loading{text-align:center;padding:40px;color:var(--text-tertiary)}.charts-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:35px;margin-bottom:50px}.chart-card{background:#fffffffa;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);padding:35px;border-radius:24px;box-shadow:0 10px 40px #00000014,0 2px 8px #0000000a;border:2px solid rgba(255,255,255,.8);transition:all .4s cubic-bezier(.4,0,.2,1);color:var(--text-primary);position:relative;overflow:hidden;margin-bottom:40px}.chart-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .4s ease}.chart-card:hover:before{transform:scaleX(1)}.chart-card:hover{transform:translateY(-5px);box-shadow:0 16px 50px #667eea33,0 4px 12px #00000014;border-color:#667eea4d}.weight-chart-card{margin-bottom:50px}.chart-card h2{margin-bottom:20px;font-size:24px;font-weight:700;color:var(--text-primary);background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px}.percentile-info{margin-top:20px;padding:16px;background:linear-gradient(135deg,#667eea1f,#764ba21f);border-radius:12px;border:2px solid rgba(102,126,234,.25);color:var(--text-primary);font-size:16px;font-weight:500;text-align:center;box-shadow:0 4px 12px #667eea1a}.btn-small{padding:10px 18px;font-size:14px;font-weight:600;border-radius:10px;transition:all .3s ease;box-shadow:0 2px 8px #667eea33}.btn-small:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.entry-actions{display:flex;gap:8px;flex-shrink:0;align-items:center}.btn-edit{background:#667eea1a;border:1px solid rgba(102,126,234,.3);border-radius:8px;padding:8px 12px;cursor:pointer;font-size:16px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:40px;height:40px}.btn-edit:hover:not(:disabled){background:#667eea33;border-color:#667eea80;transform:scale(1.05)}.btn-edit:disabled{opacity:.5;cursor:not-allowed}.btn-delete{background:#dc35451a;border:1px solid rgba(220,53,69,.3);border-radius:8px;padding:8px 12px;cursor:pointer;font-size:16px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:40px;height:40px}.btn-delete:hover:not(:disabled){background:#dc354533;border-color:#dc354580;transform:scale(1.05)}.btn-delete:disabled{opacity:.5;cursor:not-allowed}.edit-form{width:100%}.edit-form-group{margin-bottom:12px}.edit-form-group label{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:var(--text-secondary)}.edit-form-group input[type=text],.edit-form-group input[type=number],.edit-form-group input[type=datetime-local]{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;background:var(--bg-card);color:var(--text-primary);transition:all .2s ease}.edit-form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.edit-form-group input[type=checkbox]{width:auto;margin-right:8px}.edit-form-actions{display:flex;gap:8px;margin-top:16px}.error-small{color:#dc3545;font-size:12px;margin-top:8px;margin-bottom:8px}@media (max-width: 768px){.dashboard h1{margin-top:10px!important;margin-bottom:20px;padding:16px;font-size:24px}.dashboard h1:before{width:40px;height:40px}.charts-section{grid-template-columns:1fr;gap:20px}.chart-card{padding:20px}.chart-card h2{font-size:18px}}.log-page{max-width:800px;margin:0 auto;padding:20px}.log-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid #e0e0e0}.log-tab{display:flex;align-items:center;gap:8px;padding:12px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:16px;font-weight:500;color:#666;transition:all .3s ease}.log-tab:hover{color:#667eea;background-color:#f5f5f5}.log-tab.active{color:#667eea;border-bottom-color:#667eea;background-color:#f8f9ff}.tab-icon{width:24px;height:24px}.log-page .card{margin-top:0}.log-page .form-group{margin-bottom:20px}.log-page .quick-add-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;align-items:center}.log-page .quick-add-label{font-size:14px;color:#666;margin-right:4px}.log-page .quick-add-btn{padding:6px 12px;background-color:#f0f0f0;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s ease}.log-page .quick-add-btn:hover{background-color:#667eea;color:#fff;border-color:#667eea}.log-page .form-actions{display:flex;gap:10px;margin-top:30px}@media (max-width: 768px){.log-tabs{flex-direction:column;border-bottom:none}.log-tab{border-bottom:none;border-left:3px solid transparent;border-radius:4px}.log-tab.active{border-left-color:#667eea;border-bottom-color:transparent}}.todays-plan-page{max-width:1000px;margin:0 auto;padding:20px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding:20px;background:linear-gradient(135deg,#667eea1a,#764ba21a);border-radius:20px;box-shadow:0 4px 16px #0000001a}.page-header h1{display:flex;align-items:center;gap:12px;margin:0;font-size:32px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.plan-icon{font-size:36px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.date-selector{display:flex;align-items:center;gap:10px}.date-selector label{font-weight:500;color:var(--text-secondary)}.date-input{padding:10px 14px;border:2px solid var(--border-color);border-radius:8px;font-size:14px;background:var(--bg-card);color:var(--text-primary);transition:all .2s ease}.date-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.plan-actions{display:flex;justify-content:center;margin-bottom:30px}.btn-generate,.btn-regenerate{padding:16px 32px;font-size:18px;font-weight:600;border-radius:12px;display:flex;align-items:center;gap:10px;transition:all .3s ease;box-shadow:0 4px 12px #667eea4d}.btn-generate:hover,.btn-regenerate:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-icon{font-size:20px}.generating-indicator{display:flex;align-items:center;gap:12px;padding:16px 32px;background:linear-gradient(135deg,#667eea1a,#764ba21a);border-radius:12px;font-size:16px;color:var(--text-primary)}.spinner{width:24px;height:24px;border:3px solid rgba(102,126,234,.2);border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-message{display:flex;align-items:center;gap:10px;padding:16px;background:#dc35451a;border:1px solid rgba(220,53,69,.3);border-radius:12px;color:#dc3545;margin-bottom:20px}.error-icon{font-size:20px}.loading-state,.no-plan-state{text-align:center;padding:60px 20px;background:var(--bg-card);border-radius:20px;box-shadow:0 4px 16px #0000001a}.loading-state .spinner{margin:0 auto 20px;width:40px;height:40px}.no-plan-icon{font-size:64px;margin-bottom:20px;filter:drop-shadow(0 2px 8px rgba(0,0,0,.1))}.no-plan-state h2{margin-bottom:12px;color:var(--text-primary)}.no-plan-state p{color:var(--text-secondary);margin-bottom:8px}.no-plan-state .hint{font-size:14px;color:var(--text-tertiary);font-style:italic}.plan-container{background:var(--bg-card);border-radius:20px;box-shadow:0 4px 16px #0000001a;overflow:hidden}.plan-header{padding:24px;background:linear-gradient(135deg,#667eea1a,#764ba21a);border-bottom:2px solid var(--border-color)}.plan-header h2{margin:0 0 12px;font-size:24px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.plan-meta{display:flex;gap:20px;font-size:13px;color:var(--text-tertiary)}.plan-body{padding:30px}.plan-content{display:flex;flex-direction:column;gap:32px}.plan-section{margin-bottom:32px}.plan-section-title{margin:0 0 20px;font-size:22px;font-weight:700;color:var(--text-primary);background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;padding-bottom:12px;border-bottom:2px solid var(--border-color);display:flex;align-items:center;gap:10px}.plan-section-title:before{content:"";width:4px;height:24px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:2px}.plan-overview{background:linear-gradient(135deg,#667eea08,#764ba208);padding:24px;border-radius:16px;border:1px solid var(--border-color)}.plan-overview-content{display:flex;flex-direction:column;gap:12px}.plan-schedule-section{margin-top:8px}.schedule-list{display:flex;flex-direction:column;gap:12px}.plan-section-header{margin:32px 0 16px;font-size:20px;font-weight:600;color:var(--text-primary);background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.plan-header-3{font-size:20px;margin-top:32px}.plan-header-4{font-size:18px;margin-top:24px;color:var(--text-secondary)}.plan-schedule-item{display:flex;align-items:flex-start;gap:20px;padding:20px 24px;border-radius:16px;border-left:5px solid;transition:all .3s ease;background:var(--bg-primary);box-shadow:0 2px 8px #0000000d;position:relative;overflow:hidden}.plan-schedule-item:before{content:"";position:absolute;top:0;left:0;right:0;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.05) 100%);pointer-events:none}.plan-schedule-item:hover{transform:translate(6px);box-shadow:0 6px 20px #0000001f}.plan-feeding{border-left-color:#667eea;background:linear-gradient(135deg,#667eea0d,#667eea1a)}.plan-pumping{border-left-color:#764ba2;background:linear-gradient(135deg,#764ba20d,#764ba21a)}.plan-breastfeeding{border-left-color:#ffb74d;background:linear-gradient(135deg,#ffb74d0d,#ffb74d1a)}.plan-sleep{border-left-color:#ff9800;background:linear-gradient(135deg,#ff98000d,#ff98001a)}.plan-appointment{border-left-color:#4caf50;background:linear-gradient(135deg,#4caf500d,#4caf501a)}.plan-shopping{border-left-color:#9c27b0;background:linear-gradient(135deg,#9c27b00d,#9c27b01a)}.plan-activity{border-left-color:#00bcd4;background:linear-gradient(135deg,#00bcd40d,#00bcd41a)}.schedule-time-badge{display:flex;align-items:center;gap:10px;min-width:130px;flex-shrink:0;padding:10px 14px;background:#667eea1f;border-radius:12px;font-weight:700;font-size:15px;color:var(--text-primary);border:1px solid rgba(102,126,234,.2)}.time-icon{font-size:20px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));line-height:1}.time-text{letter-spacing:.5px}.schedule-activity{flex:1;color:var(--text-primary);line-height:1.7;font-size:15px;padding-top:2px}.schedule-activity strong{color:var(--text-primary);font-weight:600}.plan-bullets-section{background:linear-gradient(135deg,#667eea08,#764ba208);padding:20px 24px;border-radius:16px;border:1px solid var(--border-color);display:flex;flex-direction:column;gap:12px}.plan-bullet-point{padding-left:28px;position:relative;color:var(--text-primary);line-height:1.8;font-size:15px}.plan-bullet-point:before{content:"▸";position:absolute;left:8px;color:#667eea;font-weight:700;font-size:18px;top:2px}.plan-bullet-point strong{color:var(--text-primary);font-weight:600}.plan-paragraph{color:var(--text-primary);line-height:1.8;margin:0;font-size:15px}.plan-paragraph strong{color:var(--text-primary);font-weight:600;background:linear-gradient(135deg,#667eea26,#764ba226);padding:2px 6px;border-radius:4px}@media (max-width: 768px){.page-header{flex-direction:column;align-items:flex-start;gap:16px}.date-selector{width:100%;justify-content:space-between}.plan-meta{flex-direction:column;gap:8px}.plan-schedule-item{flex-direction:column;gap:12px;padding:16px 20px}.schedule-time-badge{min-width:auto;width:100%;justify-content:center}.plan-section-title{font-size:20px}.plan-overview,.plan-bullets-section{padding:20px}}.no-schedule-message{text-align:center;padding:40px 20px;background:linear-gradient(135deg,#4caf500d,#4caf501a);border-radius:16px;border:1px solid rgba(76,175,80,.2)}.no-schedule-icon{font-size:48px;display:block;margin-bottom:16px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.no-schedule-message p{margin:0;font-size:16px;color:var(--text-primary);font-weight:500}.history{position:relative;min-height:calc(100vh - 80px);background-image:url(/history_background.png);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed}.history:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ffffffeb,#ffffffe0);z-index:0;pointer-events:none}@media (prefers-color-scheme: dark){.history:before{background:linear-gradient(135deg,#1a1a1aeb,#1e1e1ee0)}}.history>*{position:relative;z-index:1}.history h1{margin-bottom:30px;margin-top:60px;display:flex;align-items:center;gap:18px;font-size:32px;font-weight:700;padding:20px;background:var(--bg-card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:20px;box-shadow:0 8px 32px var(--shadow-color);border:1px solid var(--border-color);position:relative;z-index:100;color:var(--text-primary)}.history h1 span{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid #e0e0e0}.tab{padding:14px 28px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:16px;font-weight:500;color:var(--text-tertiary);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;border-radius:8px 8px 0 0}.tab:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:3px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .3s ease}.tab:hover{color:#667eea;background:#667eea0d}.tab.active{color:#667eea;font-weight:600}.tab.active:after{transform:scaleX(1)}.history-info{margin-bottom:16px;padding:12px;background:linear-gradient(135deg,#667eea1a,#764ba21a);border-radius:8px;border:1px solid var(--border-color)}.history-note{margin:0;font-size:14px;color:var(--text-secondary);font-style:italic}.history-content{background:var(--bg-card);border-radius:8px;padding:20px;box-shadow:0 2px 4px var(--shadow-color);color:var(--text-primary)}.history-list{display:flex;flex-direction:column;gap:15px}.history-item{padding:20px;background:linear-gradient(135deg,#667eea0d,#764ba20d);border-radius:16px;border-left:4px solid transparent;border-image:linear-gradient(135deg,#667eea,#764ba2) 1;transition:all .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);margin-bottom:12px}.history-item:hover{transform:translate(8px);box-shadow:0 4px 16px #667eea26;background:linear-gradient(135deg,#667eea1a,#764ba21a)}.history-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.history-date{font-weight:600;color:var(--text-primary)}.history-time{color:var(--text-tertiary);font-size:14px}.history-item-body{display:flex;gap:15px;align-items:center}.history-volume{font-size:18px;font-weight:600;color:#667eea}.history-spit{font-size:14px;color:#dc3545;background:var(--bg-card);padding:4px 8px;border-radius:4px}.empty-state{text-align:center;color:var(--text-muted);padding:40px}.history-item-actions{display:flex;gap:8px;position:relative;z-index:10}.btn-edit,.btn-delete{background:none;border:none;cursor:pointer;font-size:18px;padding:4px 8px;border-radius:4px;transition:all .2s ease;opacity:.8;position:relative;z-index:10;pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:32px}.btn-edit:hover{opacity:1;background:#667eea26;transform:scale(1.1)}.btn-delete:hover{opacity:1;background:#dc354526;transform:scale(1.1)}.history-item:hover .btn-edit,.history-item:hover .btn-delete{opacity:1}.modal-content .form-group input[type=datetime-local],.modal-content .form-group input[type=number]{width:100%;padding:10px;border:1px solid var(--border-color);border-radius:8px;font-size:16px;background:var(--bg-primary);color:var(--text-primary)}.modal-content .form-group input[type=checkbox]{margin-right:8px}@media (max-width: 768px){.history h1{margin-top:10px!important;margin-bottom:20px;padding:16px;font-size:24px}.modal-content{padding:20px;max-width:100%}.history-item-actions{gap:4px}.btn-edit,.btn-delete{font-size:16px;padding:2px 6px}}.appointments{position:relative;min-height:calc(100vh - 80px);background-image:url(/history_background.png);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed}.appointments:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ffffffeb,#ffffffe0);z-index:0;pointer-events:none}@media (prefers-color-scheme: dark){.appointments:before{background:linear-gradient(135deg,#1a1a1aeb,#1e1e1ee0)}}.appointments>*{position:relative;z-index:1}.appointments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;margin-top:60px;gap:20px;flex-wrap:wrap}.appointments-header h1{margin:0;font-size:32px;font-weight:700;padding:20px;background:var(--bg-card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:20px;box-shadow:0 8px 32px var(--shadow-color);border:1px solid var(--border-color);color:var(--text-primary);flex:1;min-width:200px}.appointments-header h1 span{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.appointments-header .btn{padding:12px 24px;font-size:16px;font-weight:500;white-space:nowrap}.form-card{margin-bottom:30px;padding:24px}.form-card h2{margin-top:0;margin-bottom:20px;color:var(--text-primary)}.success-message{background:#d4edda;color:#155724;padding:12px 20px;border-radius:8px;margin-bottom:20px;border:1px solid #c3e6cb}.appointments-list{display:flex;flex-direction:column;gap:15px}.appointment-item{padding:24px;background:linear-gradient(135deg,#667eea0d,#764ba20d);border-radius:16px;border-left:4px solid transparent;border-image:linear-gradient(135deg,#667eea,#764ba2) 1;transition:all .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);margin-bottom:12px}.appointment-item:hover{transform:translate(8px);box-shadow:0 4px 16px #667eea26;background:linear-gradient(135deg,#667eea1a,#764ba21a)}.appointment-item.past{opacity:.6;border-image:linear-gradient(135deg,#999,#666) 1}.appointment-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap}.appointment-info{flex:1;min-width:200px}.appointment-name{margin:0 0 12px;font-size:20px;font-weight:600;color:var(--text-primary)}.appointment-date-time{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.appointment-date{font-weight:600;color:var(--text-primary);font-size:16px}.appointment-time{color:var(--text-tertiary);font-size:14px}.appointment-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn-calendar{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:8px 16px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-calendar:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-edit,.btn-delete{background:none;border:none;cursor:pointer;font-size:18px;padding:4px 8px;border-radius:4px;transition:all .2s ease;opacity:.7}.btn-edit:hover{opacity:1;background:#667eea1a}.btn-delete:hover{opacity:1;background:#dc35451a}.empty-state{text-align:center;color:var(--text-muted);padding:60px 20px;background:var(--bg-card);border-radius:16px}.empty-state-hint{margin-top:12px;font-size:14px;color:var(--text-tertiary)}.modal-content .form-group{margin-bottom:20px}.modal-content .form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-primary)}.modal-content .form-group input[type=text],.modal-content .form-group input[type=datetime-local]{width:100%;padding:10px;border:1px solid var(--border-color);border-radius:8px;font-size:16px;background:var(--bg-primary);color:var(--text-primary);box-sizing:border-box}.modal-content .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-content .btn-primary:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.modal-content .error{color:#dc3545;margin-bottom:16px;padding:12px;background:#dc35451a;border-radius:8px}@media (max-width: 768px){.appointments-header{margin-top:10px;flex-direction:column;align-items:stretch}.appointments-header h1{padding:16px;font-size:24px}.appointment-item-header{flex-direction:column}.appointment-actions{width:100%;justify-content:flex-start}.btn-calendar{flex:1}.modal-content{padding:20px;max-width:100%}}.shopping-lists{position:relative;min-height:calc(100vh - 80px);background-image:url(/history_background.png);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed}.shopping-lists:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ffffffeb,#ffffffe0);z-index:0;pointer-events:none}@media (prefers-color-scheme: dark){.shopping-lists:before{background:linear-gradient(135deg,#1a1a1aeb,#1e1e1ee0)}}.shopping-lists>*{position:relative;z-index:1}.shopping-lists-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;margin-top:60px;gap:20px;flex-wrap:wrap}.shopping-lists-header h1{margin:0;font-size:32px;font-weight:700;padding:20px;background:var(--bg-card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:20px;box-shadow:0 8px 32px var(--shadow-color);border:1px solid var(--border-color);color:var(--text-primary);flex:1;min-width:200px}.shopping-lists-header h1 span{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.shopping-lists-container{display:grid;grid-template-columns:300px 1fr;gap:20px;min-height:500px}.lists-sidebar{background:var(--bg-card);border-radius:16px;padding:20px;box-shadow:0 4px 16px var(--shadow-color);border:1px solid var(--border-color)}.lists-sidebar h2{margin-top:0;margin-bottom:16px;font-size:20px;color:var(--text-primary)}.lists-list{display:flex;flex-direction:column;gap:8px}.list-item{padding:12px;background:var(--bg-secondary);border-radius:8px;cursor:pointer;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center;border:2px solid transparent}.list-item:hover{background:var(--bg-tertiary);transform:translate(4px)}.list-item.active{border-color:#667eea;background:linear-gradient(135deg,#667eea1a,#764ba21a)}.list-item-content{flex:1;min-width:0}.list-item-name{font-weight:600;color:var(--text-primary);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-item-date{font-size:12px;color:var(--text-tertiary)}.list-item-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.list-item:hover .list-item-actions{opacity:1}.btn-edit-small,.btn-delete-small{background:none;border:none;cursor:pointer;font-size:14px;padding:4px;border-radius:4px;transition:all .2s ease}.btn-edit-small:hover{background:#667eea1a}.btn-delete-small:hover{background:#dc35451a}.edit-list-name input{width:100%;padding:8px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;background:var(--bg-primary);color:var(--text-primary)}.list-details{background:var(--bg-card);border-radius:16px;padding:24px;box-shadow:0 4px 16px var(--shadow-color);border:1px solid var(--border-color)}.list-details-header h2{margin-top:0;margin-bottom:20px;font-size:24px;color:var(--text-primary)}.add-item-form{display:flex;gap:12px;margin-bottom:24px}.add-item-form input{flex:1;padding:12px;border:1px solid var(--border-color);border-radius:8px;font-size:16px;background:var(--bg-primary);color:var(--text-primary)}.add-item-form input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.add-item-form .btn{padding:12px 24px;white-space:nowrap}.items-list{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.item-row{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--bg-secondary);border-radius:8px;transition:all .2s ease}.item-row:hover{background:var(--bg-tertiary)}.item-row.completed{opacity:.6}.item-checkbox{display:flex;align-items:center;gap:12px;flex:1;cursor:pointer;margin:0}.item-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#667eea}.item-name{color:var(--text-primary);font-size:16px}.item-row.completed .item-name{text-decoration:line-through;color:var(--text-tertiary)}.btn-delete-item{background:none;border:none;cursor:pointer;font-size:16px;padding:4px 8px;border-radius:4px;transition:all .2s ease;opacity:.7}.btn-delete-item:hover{opacity:1;background:#dc35451a}.list-stats{padding-top:16px;border-top:1px solid var(--border-color);color:var(--text-tertiary);font-size:14px}.empty-state{text-align:center;color:var(--text-muted);padding:40px 20px}.empty-state-hint{margin-top:8px;font-size:14px;color:var(--text-tertiary)}.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;padding:20px}.modal-content{background:var(--bg-card);border-radius:16px;padding:24px;max-width:500px;width:100%;box-shadow:0 8px 32px #0000004d;color:var(--text-primary)}.modal-content h2{margin-top:0;margin-bottom:20px;color:var(--text-primary)}.modal-content p{margin-bottom:20px;color:var(--text-secondary)}.modal-content .form-actions{display:flex;gap:12px;margin-top:24px}.modal-content .btn{flex:1;padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s ease}.modal-content .btn-danger{background:#dc3545;color:#fff}.modal-content .btn-danger:hover:not(:disabled){background:#c82333}.modal-content .btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.modal-content .btn-secondary:hover:not(:disabled){background:var(--bg-tertiary)}.modal-content .btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 968px){.shopping-lists-container{grid-template-columns:1fr}.lists-sidebar{max-height:300px;overflow-y:auto}}@media (max-width: 768px){.shopping-lists-header{margin-top:10px;flex-direction:column;align-items:stretch}.shopping-lists-header h1{padding:16px;font-size:24px}.shopping-lists-container{grid-template-columns:1fr}.lists-sidebar{order:2}.list-details{order:1}.add-item-form{flex-direction:column}.add-item-form .btn{width:100%}}.virtual-nanny{position:relative;min-height:calc(100vh - 80px);background-image:url(/dashboard_background.png);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed}.virtual-nanny:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ffffffeb,#ffffffe0);z-index:0;pointer-events:none}@media (prefers-color-scheme: dark){.virtual-nanny:before{background:linear-gradient(135deg,#1a1a1aeb,#1e1e1ee0)}}.virtual-nanny>*{position:relative;z-index:1}.virtual-nanny-header{margin-bottom:30px;margin-top:60px;text-align:center;padding:20px;background:var(--bg-card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:20px;box-shadow:0 8px 32px var(--shadow-color);border:1px solid var(--border-color)}.virtual-nanny-header h1{margin:0 0 10px;font-size:32px;font-weight:700;color:var(--text-primary);display:flex;align-items:center;justify-content:center;gap:12px}.virtual-nanny-header h1 span{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nanny-icon{font-size:36px;-webkit-background-clip:unset;-webkit-text-fill-color:unset;background:none}.subtitle{margin:0;color:var(--text-secondary);font-size:16px}.virtual-nanny-container{display:grid;grid-template-columns:1fr 350px;gap:20px;margin-bottom:30px}.chat-section{background:var(--bg-card);border-radius:16px;padding:24px;box-shadow:0 2px 4px var(--shadow-color);display:flex;flex-direction:column;min-height:600px}.chat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid var(--border-color)}.chat-header-left{display:flex;flex-direction:column;gap:12px;flex:1}.chat-header h2{margin:0;font-size:24px;color:var(--text-primary)}.conversation-selector{display:flex;gap:8px;align-items:center}.conversation-select{flex:1;padding:8px 12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;background:var(--bg-input);color:var(--text-primary);cursor:pointer;transition:all .2s ease}.conversation-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.conversation-select:disabled{opacity:.6;cursor:not-allowed}.btn-new-conversation{padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-new-conversation:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-new-conversation:disabled{opacity:.6;cursor:not-allowed}.btn-clear{padding:8px 16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:14px;transition:all .2s ease}.btn-clear:hover{background:var(--bg-hover)}.conversation-area{flex:1;overflow-y:auto;margin-bottom:20px;padding:10px;min-height:400px;max-height:500px}.welcome-message{text-align:center;padding:60px 20px;color:var(--text-secondary)}.welcome-icon{font-size:64px;display:block;margin-bottom:20px}.welcome-message h3{margin:0 0 10px;color:var(--text-primary);font-size:24px}.welcome-message p{margin:10px 0;font-size:16px}.conversation-info{margin-top:20px;font-size:14px;color:var(--text-tertiary);font-style:italic}.messages{display:flex;flex-direction:column;gap:20px}.conversation-item{display:flex;flex-direction:column;gap:12px}.message-question,.message-answer{padding:16px;border-radius:12px;max-width:85%}.message-question{align-self:flex-end;background:linear-gradient(135deg,#667eea1a,#764ba21a);border:1px solid rgba(102,126,234,.2)}.message-answer{align-self:flex-start;background:var(--bg-input);border:1px solid var(--border-color)}.message-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:14px;font-weight:600;color:var(--text-primary)}.message-icon{font-size:18px}.message-content{color:var(--text-primary);line-height:1.6;white-space:pre-wrap;word-wrap:break-word}.message-timestamp{margin-top:8px;font-size:12px;color:var(--text-tertiary)}.loading-message{text-align:center;padding:20px;color:var(--text-secondary)}.typing-indicator{display:flex;justify-content:center;gap:4px;margin-bottom:10px}.typing-indicator span{width:8px;height:8px;border-radius:50%;background:var(--text-tertiary);animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.7}30%{transform:translateY(-10px);opacity:1}}.error-message{padding:12px 16px;background:#dc35451a;border:1px solid rgba(220,53,69,.3);border-radius:8px;color:#dc3545;display:flex;align-items:center;gap:8px;margin:10px 0}.error-icon{font-size:18px}.question-form{margin-top:auto}.input-group{display:flex;gap:10px}.question-input{flex:1;padding:12px 16px;border:1px solid var(--border-color);border-radius:8px;font-size:16px;background:var(--bg-input);color:var(--text-primary)}.question-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.question-input:disabled{opacity:.6;cursor:not-allowed}.btn-submit{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-submit:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.suggestions-section{background:var(--bg-card);border-radius:16px;padding:24px;box-shadow:0 2px 4px var(--shadow-color);height:fit-content;position:sticky;top:20px}.suggestions-section h3{margin:0 0 10px;font-size:20px;color:var(--text-primary)}.suggestions-hint{margin:0 0 15px;font-size:14px;color:var(--text-tertiary)}.suggestions-list{display:flex;flex-direction:column;gap:10px}.suggestion-item{padding:12px 16px;background:var(--bg-input);border:1px solid var(--border-color);border-radius:8px;text-align:left;cursor:pointer;transition:all .2s ease;color:var(--text-primary);font-size:14px;line-height:1.5}.suggestion-item:hover:not(:disabled){background:linear-gradient(135deg,#667eea1a,#764ba21a);border-color:#667eea;transform:translate(4px)}.suggestion-item:disabled{opacity:.6;cursor:not-allowed}.no-suggestions{color:var(--text-tertiary);font-size:14px;text-align:center;padding:20px}.conversations-list{margin-top:30px;padding-top:30px;border-top:1px solid var(--border-color)}.conversations-list h3{margin:0 0 15px;font-size:18px;color:var(--text-primary)}.conversations-items{display:flex;flex-direction:column;gap:8px}.conversation-item-sidebar{padding:12px;background:var(--bg-input);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;position:relative}.conversation-item-sidebar:hover{background:var(--bg-hover);border-color:#667eea;transform:translate(4px)}.conversation-item-sidebar.active{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-color:#667eea}.conversation-item-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:4px;padding-right:24px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-item-date{font-size:12px;color:var(--text-tertiary)}.btn-delete-conversation{position:absolute;top:8px;right:8px;width:24px;height:24px;border:none;background:transparent;color:var(--text-tertiary);font-size:20px;line-height:1;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0}.btn-delete-conversation:hover{background:#dc35451a;color:#dc3545}@media (max-width: 1024px){.virtual-nanny-container{grid-template-columns:1fr}.suggestions-section{position:static}}@media (max-width: 768px){.virtual-nanny-header{margin-top:10px!important;padding:16px}.virtual-nanny-header h1{font-size:24px}.chat-section{min-height:500px}.conversation-area{max-height:400px}.message-question,.message-answer{max-width:95%}}.profile-page{position:relative;min-height:calc(100vh - 80px);background-image:url(/dashboard_background.png);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed}.profile-page:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ffffffeb,#ffffffe0);z-index:0;pointer-events:none}@media (prefers-color-scheme: dark){.profile-page:before{background:linear-gradient(135deg,#1a1a1aeb,#1e1e1ee0)}}.profile-page>*{position:relative;z-index:1}.page-header{display:flex;align-items:center;gap:18px;margin-bottom:30px;margin-top:60px;padding:20px;background:var(--bg-card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:20px;box-shadow:0 8px 32px var(--shadow-color);border:1px solid var(--border-color);color:var(--text-primary)}.page-icon{width:52px;height:52px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1))}.profile-page h1{margin:0;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:32px;font-weight:700}.profile-section-title{margin:0 0 16px;font-size:20px;color:var(--text-primary)}.profile-summary{display:grid;gap:8px;margin-bottom:18px;padding:14px 16px;border-radius:14px;border:1px solid var(--border-color);background:#667eea0f}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.weights-table{margin-top:18px;border:1px solid var(--border-color);border-radius:14px;overflow:hidden}.weights-header,.weights-row{display:grid;grid-template-columns:1fr 140px 120px;gap:12px;align-items:center;padding:12px 14px}.weights-header{background:#0000000a;font-weight:700}@media (prefers-color-scheme: dark){.weights-header{background:#ffffff0f}}.weights-row{border-top:1px solid var(--border-color)}.weights-actions{display:flex;justify-content:flex-end}.btn-small{padding:10px 14px;border-radius:10px;font-size:14px}.weight-chart-container{margin-top:20px;padding:20px;background:var(--bg-primary);border-radius:12px;border:1px solid var(--border-color)}.chart-description{color:var(--text-secondary);font-size:14px;margin-bottom:16px;line-height:1.5}.percentile-info{margin-top:16px;padding:12px;background:#667eea1a;border-radius:8px;border:1px solid rgba(102,126,234,.2);color:var(--text-primary);font-size:15px;text-align:center}.timezone-select{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;background:var(--bg-primary);color:var(--text-primary);cursor:pointer;transition:all .2s ease}.timezone-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-help-text{display:block;margin-top:6px;font-size:12px;color:var(--text-secondary);font-style:italic}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.weights-header,.weights-row{grid-template-columns:1fr 120px 96px}.weight-chart-container{padding:12px;overflow-x:auto}}.milestones-container{max-width:800px;margin:0 auto;padding:20px}.milestones-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.milestones-header h1{margin:0;color:#333}.current-week-indicator{background-color:#e3f2fd;color:#1976d2;padding:6px 12px;border-radius:16px;font-size:14px;font-weight:500}.error-message{background-color:#ffebee;color:#c62828;padding:12px;border-radius:4px;margin-bottom:20px}.loading,.error{text-align:center;padding:40px;color:#666}.week-selector{margin-bottom:24px}.week-numbers{display:flex;gap:8px;overflow-x:auto;padding:12px 0;margin-bottom:8px}.week-button{min-width:44px;height:44px;border:2px solid #e0e0e0;background-color:#fff;border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;color:#666;transition:all .2s;flex-shrink:0}.week-button:hover{border-color:#90caf9;background-color:#e3f2fd}.week-button.active{background-color:#1976d2;border-color:#1976d2;color:#fff}.week-button.current{border-color:#4caf50;font-weight:600}.week-button.current.active{background-color:#4caf50;border-color:#4caf50}.date-range{text-align:center;color:#1976d2;font-size:14px;font-weight:500;margin-top:8px}.category-filter{margin-bottom:20px;display:flex;align-items:center;gap:12px}.category-filter label{font-weight:500;color:#333}.category-filter select{padding:8px 12px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;background-color:#fff;cursor:pointer;min-width:150px}.category-filter select:focus{outline:none;border-color:#1976d2}.milestones-list{display:flex;flex-direction:column;gap:12px}.milestone-item{display:flex;align-items:center;justify-content:space-between;padding:16px;border-radius:12px;transition:all .2s;border:2px solid transparent}.milestone-item.not-achieved{background-color:#e3f2fd;border-color:#90caf9}.milestone-item.achieved{background-color:#e8f5e9;border-color:#81c784}.milestone-content{display:flex;flex-direction:column;gap:4px;flex:1}.milestone-text{font-size:16px;font-weight:500;color:#333}.milestone-age{font-size:12px;color:#666}.milestone-toggle{position:relative;display:inline-block;width:52px;height:28px;cursor:pointer;flex-shrink:0}.milestone-toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#ccc;border-radius:28px;transition:.3s}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:#fff;border-radius:50%;transition:.3s}.milestone-toggle input:checked+.toggle-slider{background-color:#4caf50}.milestone-toggle input:checked+.toggle-slider:before{transform:translate(24px)}.milestone-item.achieved .toggle-slider{background-color:#4caf50}.milestone-item.not-achieved .toggle-slider{background-color:#ccc}.no-milestones{text-align:center;padding:40px;color:#666;font-style:italic}@media (max-width: 600px){.milestones-container{padding:12px}.milestones-header{flex-direction:column;align-items:flex-start;gap:12px}.week-numbers{gap:6px}.week-button{min-width:40px;height:40px;font-size:14px}.milestone-item{padding:12px}.milestone-text{font-size:14px}}.signup-page{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;padding:40px 20px;background:var(--bg-primary)}.auth-card .form-group select{width:100%;padding:12px 16px;border:1px solid var(--border-color);border-radius:8px;font-size:16px;background:var(--bg-primary);color:var(--text-primary);cursor:pointer;transition:all .2s ease}.auth-card .form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a}.auth-card .form-help-text{display:block;margin-top:6px;font-size:12px;color:var(--text-secondary);font-style:italic}.success-message{text-align:center;padding:20px}.success-message h2{color:var(--text-primary);margin-bottom:16px}.success-message p{color:var(--text-secondary);margin-bottom:12px;line-height:1.6}.login-page{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;padding:40px 20px;background:var(--bg-primary)}.auth-footer{margin-top:24px;text-align:center;padding-top:24px;border-top:1px solid var(--border-color)}.auth-footer p{color:var(--text-secondary);font-size:14px}.auth-footer a{color:var(--primary-color);text-decoration:none;font-weight:500}.forgot-password-link{text-align:right;margin-bottom:10px;margin-top:-10px}.forgot-password-link a{color:var(--primary-color);text-decoration:none;font-size:14px;font-weight:500}.forgot-password-link a:hover{text-decoration:underline}.forgot-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.note{font-size:12px;color:#999;font-style:italic}.reset-password-page{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:12px;padding:40px;box-shadow:0 10px 40px #0000001a}.auth-card h1{margin:0 0 10px;color:#333;font-size:28px}.auth-subtitle{color:#666;margin-bottom:30px;font-size:14px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#333;font-weight:500}.form-group input{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:16px;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea}.error{background:#fee;color:#c33;padding:12px;border-radius:6px;margin-bottom:20px;font-size:14px}.success-message{text-align:center;padding:20px 0}.success-message h2{color:#4caf50;margin-bottom:15px}.success-message p{color:#666;margin-bottom:10px;line-height:1.6}.btn{width:100%;padding:12px;border:none;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:background .3s}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover:not(:disabled){background:#5568d3}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.auth-footer{margin-top:20px;text-align:center;color:#666;font-size:14px}.auth-footer a{color:#667eea;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.admin-signup-page{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;padding:40px 20px;background:var(--bg-primary)}.auth-container{width:100%;max-width:450px}.auth-card{background:var(--bg-card);border-radius:16px;padding:40px;box-shadow:0 8px 32px var(--shadow-color);border:1px solid var(--border-color)}.auth-card h1{margin:0 0 8px;font-size:28px;color:var(--text-primary);text-align:center}.auth-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:30px;font-size:14px}.auth-card .form-group{margin-bottom:20px}.auth-card .form-group label{display:block;margin-bottom:8px;color:var(--text-primary);font-weight:500;font-size:14px}.auth-card .form-group input{width:100%;padding:12px 16px;border:1px solid var(--border-color);border-radius:8px;font-size:16px;background:var(--bg-primary);color:var(--text-primary);box-sizing:border-box}.auth-card .form-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a}.auth-card .btn{width:100%;padding:14px;font-size:16px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s;margin-top:10px}.auth-card .btn-primary{background:var(--primary-color);color:#fff}.auth-card .btn-primary:hover:not(:disabled){background:var(--primary-color-dark);transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.auth-card .btn-primary:disabled{opacity:.6;cursor:not-allowed}.auth-card .error{background:#ef44441a;color:#dc2626;padding:12px;border-radius:8px;margin-bottom:20px;border:1px solid rgba(239,68,68,.2);font-size:14px}.admin-dashboard{padding:30px 20px;max-width:1200px;margin:0 auto}.admin-dashboard h1{margin-bottom:30px;color:var(--text-primary)}.loading{text-align:center;padding:40px;color:var(--text-secondary)}.error-banner{background:#ef44441a;color:#dc2626;padding:16px;border-radius:8px;margin-bottom:24px;border:1px solid rgba(239,68,68,.2)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:var(--bg-card);padding:24px;border-radius:12px;box-shadow:0 4px 20px var(--shadow-color);border:1px solid var(--border-color);text-align:center}.stat-card h3{margin:0 0 12px;font-size:14px;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:36px;font-weight:700;color:var(--text-primary)}.stat-value.pending{color:#f59e0b}.stat-value.approved{color:#10b981}.stat-value.rejected{color:#ef4444}.tabs{display:flex;gap:10px;margin-bottom:24px;border-bottom:2px solid var(--border-color)}.tab{padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:16px;font-weight:500;color:var(--text-secondary);transition:all .2s;margin-bottom:-2px}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.users-section{margin-top:24px}.empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary);font-size:18px}.users-list{display:grid;gap:20px}.user-card{background:var(--bg-card);padding:24px;border-radius:12px;box-shadow:0 4px 20px var(--shadow-color);border:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.user-info{flex:1}.user-info h3{margin:0 0 8px;font-size:20px;color:var(--text-primary);display:flex;align-items:center;gap:10px}.admin-badge{background:var(--primary-color);color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.user-email,.user-phone{margin:4px 0;color:var(--text-secondary);font-size:14px}.user-status{margin:8px 0;font-size:14px;font-weight:500;text-transform:capitalize}.user-status.status-pending{color:#f59e0b}.user-status.status-approved{color:#10b981}.user-status.status-rejected{color:#ef4444}.user-date{margin:4px 0;color:var(--text-tertiary);font-size:12px}.user-actions{display:flex;flex-direction:column;gap:12px;min-width:200px}.btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-approve{background:#10b981;color:#fff}.btn-approve:hover{background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.btn-reject{background:#ef4444;color:#fff}.btn-reject:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.reject-section{display:flex;flex-direction:column;gap:8px}.reject-input{padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;background:var(--bg-primary);color:var(--text-primary)}.reject-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a}.btn-transfer{background:#667eea;color:#fff}.btn-transfer:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.btn-delete{background:#ef4444;color:#fff}.btn-delete:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}@media (max-width: 768px){.user-card{flex-direction:column}.user-actions{width:100%}.stats-grid{grid-template-columns:repeat(2,1fr)}}.App{min-height:100vh;position:relative}.container{max-width:1400px;margin:0 auto;padding:250px 30px 30px;position:relative;z-index:1}@media (max-width: 768px){.container{padding:180px 15px 20px!important}}@media (max-width: 480px){.container{padding:170px 10px 15px!important}}.loading{text-align:center;padding:40px;color:var(--text-secondary);font-size:18px}:root{--text-primary: #1a1a1a;--text-secondary: #4a5568;--text-tertiary: #666;--text-muted: #999;--text-inverse: #ffffff;--bg-primary: #f5f5f5;--bg-card: rgba(255, 255, 255, .95);--bg-card-hover: rgba(255, 255, 255, 1);--border-color: rgba(0, 0, 0, .1);--shadow-color: rgba(0, 0, 0, .1)}@media (prefers-color-scheme: dark){:root{--text-primary: #ffffff;--text-secondary: #e2e8f0;--text-tertiary: #cbd5e0;--text-muted: #a0aec0;--text-inverse: #1a1a1a;--bg-primary: #1a1a1a;--bg-card: rgba(30, 30, 30, .95);--bg-card-hover: rgba(40, 40, 40, 1);--border-color: rgba(255, 255, 255, .1);--shadow-color: rgba(0, 0, 0, .5)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{max-width:1200px;margin:0 auto;padding:20px}.card{background:var(--bg-card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 8px 32px var(--shadow-color);border:1px solid var(--border-color);transition:all .3s ease;color:var(--text-primary)}.card:hover{box-shadow:0 12px 40px var(--shadow-color);transform:translateY(-2px);background:var(--bg-card-hover)}.btn{padding:12px 28px;border:none;border-radius:12px;cursor:pointer;font-size:16px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 4px 12px #0000001a}.btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn:hover:before{width:300px;height:300px}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;position:relative}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:#6c757de6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff}.btn-secondary:hover{background:#545b62f2;transform:translateY(-2px);box-shadow:0 8px 20px #6c757d4d}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:500;color:var(--text-primary)}.form-group input,.form-group select{width:100%;padding:14px 18px;border:2px solid var(--border-color);border-radius:12px;font-size:16px;transition:all .3s ease;background:var(--bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-primary)}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 4px #667eea1a;background:var(--bg-card-hover)}.form-group input[type=checkbox]{width:auto;margin-right:8px}.error{color:#dc3545;margin-top:5px;font-size:14px}.success{color:#28a745;margin-top:5px;font-size:14px}
