@import "https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800&family=Poppins:wght@400;600;700;800&family=Inter:wght@400;500;600;700&display=swap";:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{--bg-body:#e6faf8;--bg-app:#f4fffe;--bg-card:#fff;--bg-subtle:#f4fffe;--bg-input:#fff;--text:#1a2a3a;--text-muted:#555;--text-light:#aaa;--border:#e0e0e0;--border-sub:#f0f0f0;--accent:#00bfa5;--accent-dark:#00acc1;--accent-light:#e0f5f2;--shadow:#0000000f;--font:"Baloo 2", cursive}[data-theme=dark]{--bg-body:#0a1520;--bg-app:#0f1e2d;--bg-card:#16273a;--bg-subtle:#1a2d40;--bg-input:#0f1e2d;--text:#d8eaf6;--text-muted:#7a90a8;--text-light:#4a6070;--border:#1e3048;--border-sub:#182a3a;--accent-light:#0a2520;--shadow:#00000059}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-body);font-family:var(--font);justify-content:center;min-height:100vh;transition:background .2s;display:flex}.app{background:var(--bg-app);flex-direction:column;width:100%;max-width:420px;min-height:100vh;padding-bottom:75px;transition:background .2s;display:flex;box-shadow:0 0 40px #4a90e21a}.header{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);color:#fff;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.logo{letter-spacing:1px;align-items:center;gap:8px;font-size:22px;font-weight:800;display:flex}.logo-icon{object-fit:cover;border-radius:8px;width:32px;height:32px;display:block}.ob-logo-img{object-fit:cover;border-radius:24px;width:110px;height:110px;display:block}.icons{gap:10px;font-size:20px;display:flex}.greeting-wave{background:linear-gradient(160deg, var(--accent-light) 0%, transparent 75%);border-radius:0 0 32px 32px;margin-bottom:8px;padding-bottom:4px}.greeting{padding:22px 20px 10px}.greeting h2{color:var(--text);font-size:24px;font-weight:800;font-family:var(--font)}.stats-row{gap:10px;padding:4px 16px 20px;display:flex}.stat-card{background:var(--bg-card);box-shadow:0 2px 12px var(--shadow);border-radius:16px;flex-direction:column;flex:1;align-items:center;gap:5px;padding:14px 8px;display:flex}.stat-number{color:var(--accent);font-size:26px;font-weight:800;line-height:1}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:600}h1,h2,h3,h4,button,input,select,textarea{font-family:var(--font)}.date{color:#9b9bbb;text-transform:capitalize;margin-top:3px;font-size:14px;font-weight:600}.ai-card{background:linear-gradient(135deg,#fff8e1 0%,#fff3e0 100%);border:none;border-radius:22px;flex-wrap:wrap;align-items:flex-start;gap:8px;margin:10px 20px;padding:16px;display:flex;box-shadow:0 2px 12px #ffc10726}.ai-icon{font-size:22px}.ai-text{color:#555;flex:1;font-size:14px;line-height:1.5}.ai-buttons{justify-content:flex-end;gap:8px;width:100%;display:flex}.btn-yes{color:#fff;cursor:pointer;font-size:14px;font-weight:700;font-family:var(--font);background:linear-gradient(135deg,#00bfa5,#00acc1);border:none;border-radius:8px;padding:6px 18px}.btn-no{color:#555;cursor:pointer;background:#eee;border:none;border-radius:8px;padding:6px 18px;font-size:14px}.section{background:var(--bg-card);box-shadow:0 2px 12px var(--shadow);border-radius:18px;margin:0 16px 16px;padding:16px 18px}.section h3{text-transform:uppercase;letter-spacing:1.5px;color:var(--accent);margin-bottom:14px;font-size:11px;font-weight:700}.event-row{border-bottom:1px solid #f0f0f8;align-items:center;gap:10px;padding:11px 0;display:flex}.event-row:last-child{border-bottom:none}.color-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.event-time{color:#888;flex-shrink:0;width:42px;font-size:13px}.event-title{color:#2d2d44;flex:1;font-size:15px;font-weight:600}.event-member{font-size:12px;font-weight:600}.task-row{cursor:pointer;border-bottom:1px solid #f5f5f5;align-items:center;gap:10px;padding:10px 0;display:flex}.task-row:last-child{border-bottom:none}.task-row.done span{color:#bbb;text-decoration:line-through}.checkbox{border:2px solid;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:14px;display:flex}.task-member{margin-left:auto;font-size:12px;font-weight:600}.family-row{justify-content:space-around;gap:12px;display:flex}.family-member{flex-direction:column;align-items:center;gap:4px;display:flex}.avatar{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:22px;font-weight:800;display:flex;box-shadow:0 4px 12px #00000026}.member-name{color:#2d2d44;font-size:13px;font-weight:700}.member-role{color:#b0b0cc;font-size:11px;font-weight:600}.member-phase{color:#7b68ee;background:#f0f0ff;border-radius:6px;margin-top:2px;padding:2px 6px;font-size:10px;font-weight:700}.dreams-screen{padding:20px 16px 100px}.dreams-header{margin-bottom:20px}.dreams-header h2{color:#333;font-size:22px;font-weight:800}.dreams-subtitle{color:#aaa;font-size:13px;font-style:italic;font-weight:600}.dream-member-section{margin-bottom:24px}.dream-member-header{border-left:4px solid;align-items:center;gap:10px;margin-bottom:12px;padding-left:12px;display:flex}.dream-member-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;font-weight:800;display:flex}.dream-member-name{color:#333;font-size:16px;font-weight:800;display:block}.dream-progress{color:#aaa;font-size:11px;font-weight:600}.btn-add-dream{color:#00bfa5;cursor:pointer;font-size:13px;font-weight:700;font-family:var(--font);background:#fff;border:2px solid #00bfa5;border-radius:10px;margin-left:auto;padding:6px 12px}.dream-empty{color:#ccc;padding:8px 0;font-size:13px;font-weight:600}.dream-cards{flex-direction:column;gap:10px;display:flex}.dream-card{background:#fff;border:2px solid #eee;border-radius:14px;padding:14px;transition:transform .1s;position:relative}.dream-card.celebrating{animation:.4s pop}@keyframes pop{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}.dream-card.status-gerealiseerd{opacity:.85;background:#f6fff6}.confetti{text-align:center;margin-bottom:6px;font-size:20px;animation:.3s fadeIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.dream-card-top{align-items:center;gap:6px;margin-bottom:6px;display:flex}.dream-icon{font-size:18px}.dream-category{color:#aaa;flex:1;font-size:11px;font-weight:700}.dream-title{color:#333;margin-bottom:10px;font-size:15px;font-weight:700}.dream-status-row{align-items:center;gap:8px;display:flex}.dream-status-dot{opacity:.3;border-radius:50%;padding:2px;font-size:16px}.dream-status-dot.current{opacity:1;padding:4px}.dream-status-dot.past{opacity:.6}.btn-next-status{cursor:pointer;font-size:12px;font-weight:700;font-family:var(--font);background:0 0;border:none;margin-left:auto}.mission-section{background:linear-gradient(135deg,#667eea22,#764ba222);border-radius:16px;margin-bottom:24px;padding:16px}.mission-section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.mission-section-title{color:#333;font-size:16px;font-weight:800}.mission-card{background:#fff;border:2px solid #e0d9ff;border-radius:12px;margin-bottom:10px;padding:14px}.mission-card.achieved{opacity:.7;background:#f6fff6;border-color:#c3f0c3}.mission-card-top{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.mission-title{color:#333;flex:1;font-size:15px;font-weight:800}.mission-description{color:#888;margin-bottom:6px;font-size:13px}.mission-date{color:#7b68ee;margin-bottom:10px;font-size:12px;font-weight:700}.btn-mission-achieved{color:#7b68ee;cursor:pointer;width:100%;font-size:13px;font-weight:700;font-family:var(--font);background:#fff;border:2px solid #7b68ee;border-radius:10px;padding:9px;transition:background .2s}.btn-mission-achieved.done{color:#4caf50;background:#f6fff6;border-color:#4caf50}.mission-image{object-fit:cover;border-radius:10px;width:100%;height:160px;margin-bottom:10px}.dream-image{object-fit:cover;border-radius:10px;width:100%;height:130px;margin-bottom:8px}.btn-upload-image{color:#888;cursor:pointer;width:100%;font-size:14px;font-weight:600;font-family:var(--font);background:#f8f8f8;border:2px dashed #ddd;border-radius:10px;padding:11px}.image-preview-wrap{position:relative}.image-preview{object-fit:cover;border-radius:10px;width:100%;height:140px}.btn-remove-image{color:#fff;cursor:pointer;font-size:12px;font-family:var(--font);background:#00000080;border:none;border-radius:8px;padding:4px 10px;position:absolute;top:8px;right:8px}.category-options{flex-wrap:wrap;gap:8px;display:flex}.category-option{color:#888;cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font);background:#fff;border:2px solid #e0f5f2;border-radius:12px;padding:7px 12px}.category-option.selected{color:#fff;background:linear-gradient(135deg,#00bfa5,#00acc1);border-color:#0000}.bottom-nav{scrollbar-width:none;background:#fff;border-top:1px solid #eeeef8;width:100%;max-width:420px;padding:8px 4px 12px;display:flex;position:fixed;bottom:0;left:50%;overflow-x:auto;transform:translate(-50%);box-shadow:0 -4px 20px #4a90e214}.bottom-nav::-webkit-scrollbar{display:none}.nav-item{color:#c0c0d8;text-align:center;cursor:pointer;border-radius:14px;flex-direction:column;flex-shrink:0;align-items:center;gap:3px;padding:6px 10px;font-size:10px;font-weight:600;transition:color .2s,background .2s;display:flex}.nav-label{line-height:1}.nav-item.active{color:var(--accent);background:var(--accent-light);font-weight:700}.meals-screen{flex-direction:column;height:calc(100vh - 130px);display:flex;overflow-y:auto}.meals-tabs{gap:8px;padding:16px 20px 0;display:flex}.meals-tab{color:#aaa;cursor:pointer;font-size:14px;font-weight:700;font-family:var(--font);background:#fff;border:2px solid #e0f5f2;border-radius:14px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px;display:flex}.meals-tab.active{color:#fff;background:linear-gradient(135deg,#00bfa5,#00acc1);border-color:#0000}.badge{color:#00bfa5;background:#fff;border-radius:10px;padding:1px 7px;font-size:12px;font-weight:800}.week-planner{padding:12px 20px}.planner-hint{color:#b0b0cc;margin-bottom:12px;font-size:12px;font-weight:600}.import-buttons-row{gap:8px;margin-bottom:12px;display:flex}.btn-import-school,.btn-import-personal{color:#7b68ee;font-size:13px;font-weight:700;font-family:var(--font);cursor:pointer;background:#fff;border:2px solid #7b68ee;border-radius:12px;flex:1;padding:11px 8px;transition:background .2s}.btn-import-personal{color:#00897b;border-color:#00bfa5}.btn-import-school:hover{background:#f0f0ff}.btn-import-personal:hover{background:#e8f8f5}.btn-import-school:disabled,.btn-import-personal:disabled{opacity:.6;cursor:default}.import-result{color:#7b68ee;background:#f0f0ff;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:13px;font-weight:600}.btn-generate-shopping{color:#fff;width:100%;font-size:15px;font-weight:700;font-family:var(--font);cursor:pointer;background:linear-gradient(135deg,#00bfa5,#00acc1);border:none;border-radius:12px;margin-bottom:16px;padding:13px;transition:opacity .2s}.btn-generate-shopping:disabled{opacity:.6;cursor:default}.gen-error{color:#e25c5c;background:#fff0f0;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:13px;font-weight:600}.day-row{background:#fff;border:2px solid #0000;border-radius:16px;align-items:center;gap:10px;margin-bottom:10px;padding:10px;display:flex}.today-row{background:#f0fdfb;border-color:#00bfa5}.day-label{flex-direction:column;align-items:center;min-width:36px;display:flex}.day-short{color:#b0b0cc;text-transform:uppercase;font-size:11px;font-weight:700}.day-num{color:#2d2d44;font-size:18px;font-weight:800}.meal-slots{flex:1;gap:6px;display:flex}.meal-slot{cursor:pointer;border-radius:10px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;min-height:52px;padding:6px 4px;display:flex}.meal-slot.empty{background:#f4fffe;border:1.5px dashed #b2ebe0}.meal-slot.filled{background:linear-gradient(135deg,#e0faf6,#e0f9ff);border:1.5px solid #b2ebe0}.meal-icon{font-size:14px}.meal-name{color:#2d2d44;text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;font-weight:700;line-height:1.2;overflow:hidden}.meal-empty{color:#b2ebe0;font-size:16px;font-weight:800}.shopping-screen{padding:16px 20px}.shopping-add{gap:8px;margin-bottom:20px;display:flex}.shopping-add input{font-size:14px;font-family:var(--font);border:2px solid #e0f5f2;border-radius:12px;outline:none;flex:1;padding:10px 14px}.shopping-add input:focus{border-color:#00bfa5}.shopping-add select{font-size:13px;font-family:var(--font);color:#555;border:2px solid #e0f5f2;border-radius:12px;outline:none;padding:10px 8px}.shopping-add button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#00bfa5,#00acc1);border:none;border-radius:12px;flex-shrink:0;width:42px;height:42px;font-size:22px;font-weight:700}.shopping-group{margin-bottom:16px}.shopping-group-label{text-transform:uppercase;letter-spacing:1.5px;color:#b0b0cc;margin-bottom:8px;font-size:11px;font-weight:700}.shopping-item{background:#fff;border:2px solid #e0f5f2;border-radius:12px;align-items:center;gap:12px;margin-bottom:6px;padding:11px 14px;display:flex}.shopping-item.done{opacity:.5}.shopping-item.done .shopping-name{text-decoration:line-through}.shopping-check{color:#fff;cursor:pointer;background:linear-gradient(135deg,#00bfa5,#00acc1);border:2px solid #e0f5f2;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:14px;font-weight:800;display:flex}.shopping-item:not(.done) .shopping-check{background:#fff;border:2px solid #b2ebe0}.shopping-name{color:#2d2d44;flex:1;font-size:15px;font-weight:600}.clear-done-btn{color:#00bfa5;cursor:pointer;width:100%;font-size:14px;font-weight:700;font-family:var(--font);background:0 0;border:2px dashed #b2ebe0;border-radius:12px;margin-top:16px;padding:12px}.btn-delete-meal{color:#e25c5c;cursor:pointer;font-size:14px;font-weight:700;font-family:var(--font);background:#fff;border:2px solid #fcc;border-radius:10px;flex:1;padding:12px}.ai-screen{flex-direction:column;height:calc(100vh - 130px);display:flex}.ai-messages{flex-direction:column;flex:1;gap:12px;padding:16px 20px;display:flex;overflow-y:auto}.ai-message{align-items:flex-end;gap:10px;display:flex}.ai-message.user{flex-direction:row-reverse}.ai-avatar{flex-shrink:0;font-size:22px}.ai-bubble{border-radius:18px;max-width:78%;padding:12px 16px;font-size:15px;line-height:1.5}.ai-message.assistant .ai-bubble{color:#333;background:#f0f4ff;border-bottom-left-radius:4px}.ai-message.user .ai-bubble{color:#fff;background:#00bfa5;border-bottom-right-radius:4px}.ai-typing{align-items:center;gap:4px;padding:14px 16px;display:flex}.ai-typing span{background:#aaa;border-radius:50%;width:8px;height:8px;animation:1.2s infinite bounce}.ai-typing span:nth-child(2){animation-delay:.2s}.ai-typing span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-6px)}}.ai-suggestions{flex-direction:column;gap:8px;padding:0 20px 12px;display:flex}.ai-suggestion{color:#00bfa5;cursor:pointer;text-align:left;background:#f4fffe;border:1px solid #e0e7ff;border-radius:10px;padding:10px 14px;font-size:14px}.ai-input-row{background:#fff;border-top:1px solid #eee;gap:10px;padding:12px 20px;display:flex}.ai-input-row input{border:1px solid #ddd;border-radius:24px;outline:none;flex:1;padding:12px;font-size:15px}.ai-input-row input:focus{border-color:#00bfa5}.ai-input-row button{color:#fff;cursor:pointer;background:#00bfa5;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:18px;display:flex}.ai-input-row button:disabled{cursor:not-allowed;background:#ccc}.tasks-screen{padding:20px}.tasks-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.tasks-header h2{color:#333;font-size:20px}.btn-reminder{cursor:pointer;background:#fff8e1;border:none;border-radius:8px;padding:8px 12px;font-size:16px}.tasks-filter{gap:8px;margin-bottom:20px;display:flex}.task-group{margin-bottom:20px}.task-group-header{align-items:center;gap:8px;margin-bottom:10px;font-size:14px;font-weight:600;display:flex}.task-group-dot{border-radius:50%;width:10px;height:10px}.task-count{color:#aaa;margin-left:auto;font-size:12px;font-weight:400}.task-item{cursor:pointer;background:#f4fffe;border-left:4px solid;border-radius:0 10px 10px 0;align-items:center;gap:12px;margin-bottom:8px;padding:12px;display:flex}.task-item.done{opacity:.5}.task-item.done .task-text{text-decoration:line-through}.task-checkbox{cursor:pointer;border:2px solid;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.task-check{color:#fff;font-size:13px;font-weight:700}.task-content{flex-direction:column;flex:1;gap:2px;display:flex}.task-text{color:#333;font-size:15px}.task-due{color:#aaa;font-size:12px}.family-screen{padding:20px}.family-screen-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.family-screen-header h2{color:#333;font-size:20px}.btn-add-member{color:#fff;cursor:pointer;background:#00bfa5;border:none;border-radius:8px;padding:8px 16px;font-size:14px;font-weight:600}.members-list{flex-direction:column;gap:12px;display:flex}.member-card{background:#f4fffe;border-radius:18px;align-items:center;gap:14px;padding:14px;display:flex}.member-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;font-weight:700;display:flex}.member-info{flex-direction:column;flex:1;gap:3px;display:flex}.member-role-tag{color:#888;font-size:12px}.member-tags-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.school-phase-tag{color:#7b68ee;background:#f0f0ff;border-radius:8px;padding:2px 8px;font-size:11px;font-weight:700}.phase-preview{color:#7b68ee;background:#f0f0ff;border-radius:8px;margin-top:6px;padding:6px 12px;font-size:13px;font-weight:700;display:inline-block}.dietary-tags{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.dietary-tag{color:#00bfa5;background:#e0faf6;border-radius:8px;padding:2px 8px;font-size:11px;font-weight:700}.dietary-options{flex-wrap:wrap;gap:8px;display:flex}.dietary-option{color:#888;cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font);background:#fff;border:2px solid #e0f5f2;border-radius:12px;padding:7px 12px}.dietary-option.selected{color:#fff;background:linear-gradient(135deg,#00bfa5,#00acc1);border-color:#0000}.color-picker{flex-wrap:wrap;gap:10px;display:flex}.color-option{cursor:pointer;border:3px solid #0000;border-radius:50%;width:32px;height:32px;transition:transform .1s}.color-option:hover{transform:scale(1.15)}.color-option.selected{border-color:#333;transform:scale(1.15)}.member-preview{background:#f0f4ff;border-radius:10px;align-items:center;gap:14px;margin-bottom:4px;padding:12px;display:flex}.screen-content{flex:1;overflow-y:auto}.add-btn{font-weight:700;color:#fff!important;background:linear-gradient(135deg,#00bfa5,#00acc1)!important;border-color:#00bfa5!important}.form-overlay{z-index:100;background:#0006;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.event-form{background:#fff;border-radius:16px 16px 0 0;width:100%;max-width:420px;padding:24px}.event-form h3{color:#333;margin-bottom:20px;font-size:17px}.form-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.form-field label{color:#555;font-size:13px;font-weight:600}.form-field input,.form-field select{border:1px solid #ddd;border-radius:8px;outline:none;padding:11px;font-size:15px}.form-field input:focus,.form-field select:focus{border-color:#00bfa5}.time-picker{gap:8px;display:flex}.time-picker select{flex:1}.form-buttons{gap:10px;margin-top:8px;display:flex}.btn-cancel{color:#888;cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:10px;flex:1;padding:12px;font-size:15px}.btn-save{color:#fff;cursor:pointer;font-size:15px;font-weight:700;font-family:var(--font);background:linear-gradient(135deg,#00bfa5,#00acc1);border:none;border-radius:10px;flex:2;padding:12px}.btn-save:disabled{opacity:.6}.delete-btn{color:#ccc;cursor:pointer;background:0 0;border:none;padding:4px;font-size:14px}.delete-btn:hover{color:#e25c5c}.logout-btn{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:8px;padding:6px 12px;font-size:13px}.auth-screen{background:linear-gradient(160deg,#e0f7f4 0%,#e0f9ff 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-logo{background:linear-gradient(135deg,#00bfa5,#00acc1);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:8px;font-size:36px;font-weight:800}.auth-tagline{color:#888;margin-bottom:32px;font-size:15px}.auth-card{background:#fff;border-radius:22px;width:100%;max-width:380px;padding:24px;box-shadow:0 6px 24px #00bfa51f}.auth-tabs{gap:8px;margin-bottom:24px;display:flex}.auth-tab{color:#888;cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:8px;flex:1;padding:10px;font-size:14px}.auth-tab.active{color:#fff;background:#00bfa5;border-color:#00bfa5;font-weight:600}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-field label{color:#555;font-size:13px;font-weight:600}.auth-field input{border:1px solid #ddd;border-radius:8px;outline:none;padding:12px;font-size:15px}.auth-field input:focus{border-color:#00bfa5}.auth-error{color:#e25c5c;background:#fff0f0;border-radius:8px;padding:10px;font-size:13px}.auth-success{color:#4caf50;background:#f0fff0;border-radius:8px;padding:10px;font-size:13px}.auth-submit{color:#fff;cursor:pointer;font-size:16px;font-weight:700;font-family:var(--font);background:linear-gradient(135deg,#00bfa5,#00acc1);border:none;border-radius:18px;margin-top:4px;padding:14px}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.calendar{padding:16px 20px}.view-toggle{gap:8px;margin-bottom:16px;display:flex}.toggle-btn{color:#888;cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:8px;flex:1;padding:8px;font-size:14px}.toggle-btn.active{color:#fff;background:#00bfa5;border-color:#00bfa5;font-weight:600}.week-header{gap:4px;margin-bottom:16px;display:flex}.week-day{cursor:pointer;background:#f8f8f8;border-radius:10px;flex-direction:column;flex:1;align-items:center;padding:8px 4px;display:flex}.week-day.selected{color:#fff;background:#00bfa5}.week-day.today .week-day-num{font-weight:700;text-decoration:underline}.week-day-name{color:#aaa;margin-bottom:4px;font-size:11px}.week-day.selected .week-day-name{color:#fffc}.week-day-num{color:#333;font-size:15px;font-weight:600}.week-day.selected .week-day-num{color:#fff}.week-dots{gap:2px;min-height:8px;margin-top:4px;display:flex}.week-dot{border-radius:50%;width:6px;height:6px}.day-events{margin-top:8px}.day-title{color:#555;margin-bottom:12px;font-size:14px;font-weight:600}.day-nav{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.day-nav button{cursor:pointer;color:#555;background:0 0;border:1px solid #ddd;border-radius:8px;padding:4px 12px;font-size:18px}.empty-state{color:var(--text-light);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:36px 20px;display:flex}.empty-state p{color:var(--text-muted);max-width:220px;font-size:14px;line-height:1.5}.empty-state svg{opacity:.45;animation:3s ease-in-out infinite float}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}.task-checkbox{transition:transform .15s,background .2s}.task-checkbox:active{transform:scale(.82)}.btn-reminder{animation:4s ease-in-out infinite bellPulse}@keyframes bellPulse{0%,90%,to{transform:rotate(0)scale(1)}92%{transform:rotate(-12deg)scale(1.1)}96%{transform:rotate(12deg)scale(1.1)}98%{transform:rotate(-6deg)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}.task-item,.member-card{animation:.25s ease-out both slideInLeft}.nav-item.active:after{content:"";background:var(--accent);border-radius:50%;width:4px;height:4px;margin:2px auto 0;display:block}.btn-save,.btn-add-member,.btn-reminder,.btn-upload-doc{transition:transform .12s,box-shadow .12s}.btn-save:active,.btn-add-member:active,.btn-reminder:active,.btn-upload-doc:active{transform:scale(.94)}.no-events{color:#bbb;text-align:center;padding:24px 0;font-size:14px}.event-card{background:#f4fffe;border-left:4px solid;border-radius:0 10px 10px 0;align-items:flex-start;gap:12px;margin-bottom:10px;padding:12px;display:flex}.event-card-time{color:#888;white-space:nowrap;padding-top:2px;font-size:13px}.event-card-title{color:#333;font-size:15px;font-weight:500}.event-card-member{margin-top:2px;font-size:12px;font-weight:600}.month-nav{color:#333;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:16px;font-weight:600;display:flex}.month-nav button{cursor:pointer;color:#555;background:0 0;border:1px solid #ddd;border-radius:8px;padding:4px 12px;font-size:18px}.month-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.month-day-label{text-align:center;color:#aaa;padding:4px 0;font-size:11px;font-weight:600}.month-cell{aspect-ratio:1;cursor:pointer;background:#f8f8f8;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;padding:2px;display:flex}.month-cell.empty{cursor:default;background:0 0}.month-cell.today{background:#e8f0fe}.month-cell.selected{background:#00bfa5}.month-cell.selected .month-cell-num{color:#fff}.month-cell-num{color:#333;font-size:13px;font-weight:500}.month-cell-dots{gap:2px;margin-top:2px;display:flex}.month-dot{border-radius:50%;width:5px;height:5px}.legend{border-top:1px solid #f0f0f0;flex-wrap:wrap;gap:12px;margin-top:16px;padding-top:12px;display:flex}.legend-item{color:#555;align-items:center;gap:6px;font-size:13px;display:flex}.legend-dot{border-radius:50%;width:10px;height:10px}.ramadan-screen{padding:0 0 24px}.ramadan-header{color:#fff;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);border-radius:16px;margin-bottom:12px;padding:18px 20px}.ramadan-title{margin-bottom:4px;font-size:20px;font-weight:800}.ramadan-period{color:#c9d6e3;margin-bottom:10px;font-size:14px}.ramadan-badge{border-radius:20px;margin-bottom:8px;padding:4px 12px;font-size:13px;font-weight:600;display:inline-block}.ramadan-badge.active{color:#1a1a2e;background:gold}.ramadan-badge.past{color:#c9d6e3;background:#ffffff26}.ramadan-badge.upcoming{color:#fff;background:#00bfa5}.ramadan-city{color:#89a;font-size:12px}.ramadan-day-list{flex-direction:column;gap:8px;display:flex}.ramadan-day-card{background:#fff;border-left:4px solid #e0e0e0;border-radius:12px;justify-content:space-between;align-items:center;padding:12px 16px;transition:opacity .2s;display:flex}.ramadan-day-card.past-day{opacity:.45}.ramadan-day-card.today-day{background:#fffde7;border-left-color:gold;box-shadow:0 2px 10px #ffd70040}.ramadan-day-left{flex-direction:column;min-width:70px;display:flex}.ramadan-day-num{color:#1a1a2e;font-size:13px;font-weight:700}.ramadan-day-date{color:#888;text-transform:capitalize;margin-top:2px;font-size:12px}.ramadan-times{gap:16px;display:flex}.ramadan-time-block{flex-direction:column;align-items:center;min-width:68px;display:flex}.ramadan-time-label{color:#999;margin-bottom:2px;font-size:11px}.ramadan-time-value{color:#1a1a2e;letter-spacing:.5px;font-size:16px;font-weight:700}.carpool-view{padding:8px 0 24px}.carpool-actions{gap:10px;margin-bottom:16px;display:flex}.btn-carpool-action{color:#fff;cursor:pointer;background:#00bfa5;border:none;border-radius:12px;flex:1;padding:10px;font-size:14px;font-weight:700}.btn-carpool-action.secondary{color:#00bfa5;background:#fff;border:2px solid #00bfa5}.carpool-group-card{background:#fff;border-radius:16px;margin-bottom:16px;padding:16px;box-shadow:0 2px 10px #0000000f}.carpool-group-header{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:14px;display:flex}.carpool-group-name{color:#1a2a3a;margin-bottom:3px;font-size:16px;font-weight:800}.carpool-group-dest{color:#888;margin-bottom:8px;font-size:13px}.carpool-members-row{flex-wrap:wrap;gap:6px;display:flex}.carpool-member-chip{color:#00897b;background:#e8f8f5;border-radius:20px;padding:3px 10px;font-size:12px;font-weight:600}.carpool-invite-wrap{flex-direction:column;flex-shrink:0;align-items:center;gap:4px;display:flex}.carpool-invite-label{color:#aaa;text-transform:uppercase;letter-spacing:1px;font-size:10px}.carpool-invite-code{color:#00bfa5;letter-spacing:2px;font-size:18px;font-weight:900}.btn-copy-code{cursor:pointer;background:0 0;border:none;padding:2px;font-size:16px}.carpool-schedule{border-top:1px solid #f0f0f0;padding-top:10px}.carpool-day-row{border-bottom:1px solid #f8f8f8;justify-content:space-between;align-items:center;padding:8px 4px;display:flex}.carpool-day-row.carpool-today{background:#f0fdf9;border-radius:8px;margin:0 -6px;padding:8px 10px}.carpool-day-label{color:#555;text-transform:capitalize;min-width:90px;font-size:13px}.carpool-driver{color:#777;align-items:center;gap:6px;font-size:13px;display:flex}.carpool-driver.is-me{color:#00bfa5;font-weight:700}.btn-unclaim{color:#bbb;cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:12px}.btn-claim-ride{color:#00bfa5;cursor:pointer;background:#e8f8f5;border:none;border-radius:20px;padding:5px 14px;font-size:12px;font-weight:700}.btn-leave-group{color:#ccc;cursor:pointer;background:0 0;border:none;margin-top:12px;padding:4px 0;font-size:12px}.docs-screen{padding:0 0 24px}.docs-header{margin-bottom:20px}.docs-header h2{color:#1a2a3a;font-size:22px;font-weight:800}.docs-subtitle{color:#aaa;margin-top:4px;font-size:13px}.folder-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.folder-card{cursor:pointer;background:#fff;border-radius:16px;flex-direction:column;align-items:center;gap:8px;padding:18px 10px 14px;transition:transform .15s;display:flex;position:relative;box-shadow:0 2px 10px #0000000d}.folder-card:active{transform:scale(.96)}.folder-card.add-folder{box-shadow:none;background:0 0;border:2px dashed #d0d0d0}.folder-icon{font-size:32px}.folder-name{color:#333;text-align:center;font-size:12px;font-weight:700}.folder-count{color:#fff;background:#00bfa5;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:800;display:flex;position:absolute;top:8px;right:8px}.folder-delete-btn{color:#ddd;cursor:pointer;background:0 0;border:none;padding:2px;font-size:12px;position:absolute;top:6px;left:6px}.icon-picker{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.icon-option{cursor:pointer;border:2px solid #0000;border-radius:8px;padding:6px;font-size:22px}.icon-option.selected{background:#e8f8f5;border-color:#00bfa5}.docs-folder-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.btn-back-folder{color:#00bfa5;cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:15px;font-weight:700}.docs-folder-title{color:#1a2a3a;font-size:18px;font-weight:800}.btn-upload-doc{color:#00897b;cursor:pointer;background:#f0fdf9;border:2px dashed #00bfa5;border-radius:12px;width:100%;margin-bottom:16px;padding:12px;font-size:14px;font-weight:700}.btn-upload-doc:disabled{opacity:.6}.doc-list{flex-direction:column;gap:10px;display:flex}.doc-item{background:#fff;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;display:flex;box-shadow:0 1px 6px #0000000d}.doc-file-icon{flex-shrink:0;font-size:28px}.doc-info{flex:1;min-width:0}.doc-name{color:#1a2a3a;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.doc-date{color:#aaa;margin-top:2px;font-size:11px}.doc-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.btn-doc-open{color:#00bfa5;background:#e8f8f5;border-radius:20px;padding:5px 12px;font-size:12px;font-weight:700;text-decoration:none}.chat-screen{padding:0 0 16px}.chat-list-header{margin-bottom:20px}.chat-list-header h2{color:#1a2a3a;font-size:22px;font-weight:800}.chat-subtitle{color:#aaa;margin-top:4px;font-size:13px}.chat-group-list{flex-direction:column;gap:10px;margin-top:8px;display:flex}.chat-group-item{cursor:pointer;background:#fff;border-radius:14px;align-items:center;gap:14px;padding:14px 16px;transition:transform .15s;display:flex;box-shadow:0 2px 8px #0000000d}.chat-group-item:active{transform:scale(.98)}.chat-group-icon{font-size:28px}.chat-group-info{flex:1}.chat-group-name{color:#1a2a3a;font-size:15px;font-weight:800}.chat-group-members{color:#999;margin-top:2px;font-size:12px}.chat-group-arrow{color:#ccc;font-size:22px}.chat-toast{background:var(--card);border:1px solid var(--border);border-left:4px solid var(--accent);cursor:pointer;z-index:999;border-radius:12px;align-items:center;gap:10px;width:calc(100% - 32px);max-width:420px;padding:12px 14px;display:flex;position:fixed;top:64px;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #0000002e}.chat-toast-icon{flex-shrink:0;font-size:20px}.chat-toast-body{flex-direction:column;flex:1;gap:2px;display:flex;overflow:hidden}.chat-toast-body strong{color:var(--text);font-size:14px}.chat-toast-body span{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.chat-toast-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px;font-size:14px}.chat-room{flex-direction:column;height:calc(100vh - 136px);margin:-20px -20px 0;display:flex}.chat-room-header{background:#fff;border-bottom:1px solid #f0f0f0;flex-shrink:0;align-items:center;gap:12px;padding:12px 16px;display:flex}.btn-back-chat{color:#00bfa5;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:22px;font-weight:700}.chat-room-info{flex:1}.chat-room-name{color:#1a2a3a;font-size:15px;font-weight:800}.chat-room-members{color:#aaa;margin-top:1px;font-size:11px}.btn-copy-chat-code{cursor:pointer;background:0 0;border:none;padding:4px;font-size:18px}.chat-messages{background:#f4fffe;flex-direction:column;flex:1;gap:4px;padding:16px;display:flex;overflow-y:auto}.chat-empty{text-align:center;color:#bbb;margin-top:40px;font-size:14px}.chat-day-sep{text-align:center;color:#aaa;text-transform:capitalize;margin:12px 0 8px;font-size:11px;font-weight:700}.chat-bubble-row{align-items:flex-end;gap:8px;margin-bottom:4px;display:flex}.chat-bubble-row.me{flex-direction:row-reverse}.chat-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:800;display:flex}.chat-bubble-wrap{flex-direction:column;max-width:72%;display:flex}.chat-bubble-row.me .chat-bubble-wrap{align-items:flex-end}.chat-sender{color:#888;margin-bottom:3px;margin-left:4px;font-size:11px;font-weight:700}.chat-bubble{word-break:break-word;border-radius:18px;padding:10px 14px;font-size:14px;line-height:1.4;position:relative}.bubble-me{color:#fff;background:linear-gradient(135deg,#00bfa5,#00acc1);border-bottom-right-radius:4px}.bubble-other{color:#1a2a3a;background:#fff;border:1px solid #e8e8e8;border-bottom-left-radius:4px}.chat-time{opacity:.7;white-space:nowrap;margin-left:8px;font-size:10px}.btn-delete-msg{color:#ddd;cursor:pointer;background:0 0;border:none;align-self:flex-end;margin-top:2px;padding:2px 4px;font-size:11px}.chat-input-row{background:#fff;border-top:1px solid #eee;flex-shrink:0;gap:8px;padding:10px 16px;display:flex}.chat-input{font-size:14px;font-family:var(--font);color:#222;background:#f8f8f8;border:1.5px solid #e0e0e0;border-radius:24px;outline:none;flex:1;padding:10px 16px}.chat-input:focus{background:#fff;border-color:#00bfa5}.btn-send-chat{color:#fff;cursor:pointer;background:linear-gradient(135deg,#00bfa5,#00acc1);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:16px;display:flex}.btn-send-chat:disabled{cursor:default;background:#ccc}.avatar-photo{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.avatar-upload-wrap{cursor:pointer;align-items:center;gap:14px;display:flex}.avatar-upload-preview{flex-shrink:0;width:56px;height:56px;font-size:22px}.avatar-upload-hint{color:#00bfa5;font-size:13px;font-weight:600}.chat-tabs-bar{border-bottom:2px solid #f0f0f0;gap:8px;margin-bottom:20px;padding-bottom:0;display:flex}.chat-tab-btn{color:#aaa;cursor:pointer;font-size:14px;font-weight:600;font-family:var(--font);background:0 0;border:none;border-bottom:3px solid #0000;flex:1;margin-bottom:-2px;padding:10px 8px;transition:color .15s}.chat-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.child-mode-banner{color:#fff;text-align:center;background:linear-gradient(135deg,#7b68ee,#9b59b6);border-radius:14px;margin-bottom:16px;padding:12px 16px;font-size:13px;font-weight:600}.own-code-card{background:linear-gradient(135deg,#e8f8f5,#e0f5f2);border:2px solid #b2ebe0;border-radius:16px;margin-bottom:16px;padding:16px 18px}.own-code-label{color:#00897b;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;font-size:12px;font-weight:700}.own-code-value{color:#00bfa5;letter-spacing:4px;margin-bottom:6px;font-family:monospace;font-size:28px;font-weight:900}.btn-copy-own-code{color:#fff;cursor:pointer;font-size:13px;font-weight:700;font-family:var(--font);background:#00bfa5;border:none;border-radius:20px;padding:6px 18px}.own-code-hint{color:#80cbc4;margin-top:8px;font-size:11px}.account-type-card{background:#fff;border-radius:16px;margin-bottom:16px;padding:16px 18px;box-shadow:0 2px 8px #0000000d}.account-type-label{color:#888;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;font-size:12px;font-weight:700}.account-type-toggle{gap:8px;display:flex}.type-btn{color:#aaa;cursor:pointer;font-size:13px;font-weight:700;font-family:var(--font);background:#fff;border:2px solid #e0e0e0;border-radius:12px;flex:1;padding:10px;transition:all .15s}.type-btn.active{color:#fff;background:linear-gradient(135deg,#00bfa5,#00acc1);border-color:#0000}.child-mode-note{color:#9b59b6;background:#f5f0ff;border-radius:10px;margin-top:10px;padding:8px 12px;font-size:12px;font-weight:600}.safe-contacts-screen{padding-bottom:16px}.safe-contacts-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.safe-contacts-title{color:#1a2a3a;font-size:16px;font-weight:800}.btn-add-contact{color:#fff;cursor:pointer;font-size:13px;font-weight:700;font-family:var(--font);background:#00bfa5;border:none;border-radius:10px;padding:8px 14px}.safe-contacts-list{flex-direction:column;gap:10px;display:flex}.safe-contact-item{background:#fff;border-radius:14px;align-items:center;gap:12px;padding:12px 16px;display:flex;box-shadow:0 2px 8px #0000000d}.safe-contact-avatar{color:#fff;background:linear-gradient(135deg,#00bfa5,#00acc1);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;font-weight:800;display:flex}.safe-contact-info{flex:1}.safe-contact-name{color:#1a2a3a;font-size:15px;font-weight:700}.safe-contact-code{color:#aaa;margin-top:2px;font-family:monospace;font-size:11px}.btn-remove-contact{color:#ddd;cursor:pointer;background:0 0;border:none;padding:4px;font-size:16px}.btn-remove-contact:hover{color:#e25c5c}[data-theme=dark] body{background:var(--bg-body)}[data-theme=dark] .app{background:var(--bg-app);box-shadow:0 0 40px #0006}[data-theme=dark] .bottom-nav{background:var(--bg-card);border-top:1px solid var(--border)}[data-theme=dark] .nav-item{color:var(--text-light)}[data-theme=dark] .nav-item.active{color:var(--accent)}[data-theme=dark] .greeting h2{color:var(--text)}[data-theme=dark] .date{color:var(--text-light)}[data-theme=dark] .section h3{color:var(--text-muted)}[data-theme=dark] .no-events{color:var(--text-light)}[data-theme=dark] .event-title{color:var(--text)}[data-theme=dark] .event-time{color:var(--text-muted)}[data-theme=dark] .task-row{background:var(--bg-subtle);border-radius:10px}[data-theme=dark] .family-member .member-name{color:var(--text)}[data-theme=dark] .family-member .member-role,[data-theme=dark] .family-member .member-phase{color:var(--text-muted)}[data-theme=dark] .event-card{background:var(--bg-card)}[data-theme=dark] .event-card-title{color:var(--text)}[data-theme=dark] .event-card-time{color:var(--text-muted)}[data-theme=dark] .form-overlay{background:#000000b3}[data-theme=dark] .event-form{background:var(--bg-card)}[data-theme=dark] .event-form h3{color:var(--text)}[data-theme=dark] .form-field label{color:var(--text-muted)}[data-theme=dark] .form-field input,[data-theme=dark] .form-field select{background:var(--bg-input);border-color:var(--border);color:var(--text)}[data-theme=dark] .form-field input::placeholder{color:var(--text-light)}[data-theme=dark] .btn-cancel{background:var(--bg-input);border-color:var(--border);color:var(--text-muted)}[data-theme=dark] .tasks-screen{background:0 0}[data-theme=dark] .tasks-header h2{color:var(--text)}[data-theme=dark] .task-group-header{color:var(--text-muted)}[data-theme=dark] .task-count{color:var(--text-light)}[data-theme=dark] .task-item{background:var(--bg-card)}[data-theme=dark] .task-text{color:var(--text)}[data-theme=dark] .task-due{color:var(--text-light)}[data-theme=dark] .toggle-btn:not(.active){background:var(--bg-card);border-color:var(--border);color:var(--text-muted)}[data-theme=dark] .week-day{background:var(--bg-subtle)}[data-theme=dark] .week-day-num{color:var(--text)}[data-theme=dark] .week-day-name{color:var(--text-light)}[data-theme=dark] .month-cell{background:var(--bg-subtle)}[data-theme=dark] .month-cell.empty{background:0 0}[data-theme=dark] .month-cell.today{background:var(--bg-card)}[data-theme=dark] .month-cell-num{color:var(--text)}[data-theme=dark] .month-day-label{color:var(--text-light)}[data-theme=dark] .month-nav{color:var(--text)}[data-theme=dark] .month-nav button,[data-theme=dark] .day-nav button{background:var(--bg-card);border-color:var(--border);color:var(--text-muted)}[data-theme=dark] .day-title,[data-theme=dark] .legend-item{color:var(--text-muted)}[data-theme=dark] .legend{border-color:var(--border-sub)}[data-theme=dark] .family-screen{background:0 0}[data-theme=dark] .family-screen-header h2{color:var(--text)}[data-theme=dark] .member-card{background:var(--bg-card)}[data-theme=dark] .member-name{color:var(--text)}[data-theme=dark] .member-role-tag{color:var(--text-muted)}[data-theme=dark] .dreams-screen{background:0 0}[data-theme=dark] .dream-member-name{color:var(--text)}[data-theme=dark] .dream-progress{color:var(--text-muted)}[data-theme=dark] .dream-card{background:var(--bg-card)!important;border-color:var(--border)!important}[data-theme=dark] .dream-title{color:var(--text)}[data-theme=dark] .dream-category{color:var(--text-muted)}[data-theme=dark] .dream-empty{color:var(--text-light)}[data-theme=dark] .mission-card{background:var(--bg-card)}[data-theme=dark] .mission-title{color:var(--text)}[data-theme=dark] .mission-description{color:var(--text-muted)}[data-theme=dark] .mission-date{color:var(--text-light)}[data-theme=dark] .mission-section-title{color:var(--text)}[data-theme=dark] .meals-screen{background:0 0}[data-theme=dark] .meals-tab:not(.active){background:var(--bg-card);border-color:var(--border);color:var(--text-muted)}[data-theme=dark] .meal-card{background:var(--bg-card)}[data-theme=dark] .meal-title{color:var(--text)}[data-theme=dark] .meal-member{color:var(--text-muted)}[data-theme=dark] .shopping-item{background:var(--bg-card);border-color:var(--border)}[data-theme=dark] .shopping-name{color:var(--text)}[data-theme=dark] .shopping-group-label{color:var(--text-light)}[data-theme=dark] .add-meal-section{border-color:var(--border)}[data-theme=dark] .docs-header h2{color:var(--text)}[data-theme=dark] .docs-subtitle{color:var(--text-light)}[data-theme=dark] .folder-card:not(.add-folder){background:var(--bg-card);box-shadow:none}[data-theme=dark] .folder-card.add-folder{border-color:var(--border)}[data-theme=dark] .folder-name,[data-theme=dark] .docs-folder-title{color:var(--text)}[data-theme=dark] .doc-item{background:var(--bg-card);box-shadow:none}[data-theme=dark] .doc-name{color:var(--text)}[data-theme=dark] .doc-date{color:var(--text-light)}[data-theme=dark] .chat-list-header h2{color:var(--text)}[data-theme=dark] .chat-subtitle{color:var(--text-light)}[data-theme=dark] .chat-group-item{background:var(--bg-card);box-shadow:none}[data-theme=dark] .chat-group-name{color:var(--text)}[data-theme=dark] .chat-group-members{color:var(--text-light)}[data-theme=dark] .chat-group-arrow{color:var(--border)}[data-theme=dark] .chat-tabs-bar{border-color:var(--border)}[data-theme=dark] .chat-tab-btn{color:var(--text-light)}[data-theme=dark] .chat-room-header{background:var(--bg-card);border-color:var(--border)}[data-theme=dark] .chat-room-name{color:var(--text)}[data-theme=dark] .chat-room-members{color:var(--text-light)}[data-theme=dark] .chat-messages{background:var(--bg-app)}[data-theme=dark] .chat-day-sep{color:var(--text-light)}[data-theme=dark] .chat-sender{color:var(--text-muted)}[data-theme=dark] .bubble-other{background:var(--bg-card);color:var(--text);border-color:var(--border)}[data-theme=dark] .chat-input-row{background:var(--bg-card);border-color:var(--border)}[data-theme=dark] .chat-input{background:var(--bg-input);border-color:var(--border);color:var(--text)}[data-theme=dark] .chat-input::placeholder{color:var(--text-light)}[data-theme=dark] .safe-contacts-title{color:var(--text)}[data-theme=dark] .safe-contact-item{background:var(--bg-card);box-shadow:none}[data-theme=dark] .safe-contact-name{color:var(--text)}[data-theme=dark] .safe-contact-code{color:var(--text-light)}[data-theme=dark] .ai-message.assistant .ai-bubble{background:var(--bg-card);color:var(--text)}[data-theme=dark] .ai-suggestion,[data-theme=dark] .ai-input-row{background:var(--bg-card);border-color:var(--border)}[data-theme=dark] .ai-input-row input{background:var(--bg-input);border-color:var(--border);color:var(--text)}[data-theme=dark] .carpool-group-card{background:var(--bg-card);box-shadow:none}[data-theme=dark] .carpool-group-name{color:var(--text)}[data-theme=dark] .carpool-group-dest{color:var(--text-muted)}[data-theme=dark] .carpool-schedule{border-color:var(--border)}[data-theme=dark] .carpool-day-row{border-color:var(--border-sub)}[data-theme=dark] .carpool-day-label{color:var(--text-muted)}[data-theme=dark] .carpool-driver{color:var(--text-light)}[data-theme=dark] .btn-carpool-action.secondary{background:var(--bg-card);border-color:var(--accent)}[data-theme=dark] .ramadan-day-card{background:var(--bg-card)}[data-theme=dark] .ramadan-day-num{color:var(--text)}[data-theme=dark] .ramadan-day-date{color:var(--text-muted)}[data-theme=dark] .ramadan-time-value{color:var(--text)}[data-theme=dark] .ramadan-city{color:var(--text-light)}[data-theme=dark] .auth-screen{background:linear-gradient(160deg,#06101a 0%,#0a1520 100%)}[data-theme=dark] .auth-card{background:var(--bg-card);box-shadow:0 6px 24px #0006}[data-theme=dark] .auth-tab:not(.active){background:var(--bg-input);border-color:var(--border);color:var(--text-muted)}[data-theme=dark] .auth-field label{color:var(--text-muted)}[data-theme=dark] .auth-field input{background:var(--bg-input);border-color:var(--border);color:var(--text)}[data-theme=dark] .auth-field input::placeholder{color:var(--text-light)}[data-theme=dark] .delete-btn{color:var(--border)}[data-theme=dark] .icon-option:not(.selected){background:var(--bg-input);border-color:var(--border)}.settings-screen{padding:20px}.settings-header{margin-bottom:28px}.settings-header h2{color:var(--text,#1a2a3a);font-size:22px;font-weight:800}.settings-section{margin-bottom:32px}.settings-section-title{text-transform:uppercase;letter-spacing:1.5px;color:var(--text-light,#aaa);margin-bottom:12px;font-size:11px;font-weight:700}.settings-hint{color:var(--text-light,#aaa);margin-top:10px;font-size:12px;line-height:1.5}.theme-toggle{gap:10px;display:flex}.theme-btn{border:2px solid var(--border,#e0e0e0);background:var(--bg-card,white);color:var(--text-muted,#aaa);cursor:pointer;font-size:15px;font-weight:700;font-family:var(--font);border-radius:16px;flex:1;padding:16px;transition:all .2s}.theme-btn.active{background:linear-gradient(135deg, var(--accent), var(--accent-dark));color:#fff;box-shadow:0 4px 12px var(--accent-light,#e0f5f2);border-color:#0000}.accent-color-picker{flex-wrap:wrap;gap:14px;display:flex}.accent-swatch{cursor:pointer;color:#fff;border:3px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;font-weight:800;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 3px 10px #00000026}.accent-swatch:hover{transform:scale(1.12)}.accent-swatch.selected{box-shadow:0 0 0 3px var(--accent), 0 3px 10px #0003;border-color:#fff}.font-picker{flex-direction:column;gap:10px;display:flex}.font-option{background:var(--bg-card,white);border:2px solid var(--border,#e0e0e0);cursor:pointer;border-radius:14px;justify-content:space-between;align-items:center;padding:16px 18px;transition:all .15s;display:flex}.font-option.selected{border-color:var(--accent);background:var(--accent-light,#e0f5f2)}.font-label{color:var(--text,#333);font-size:17px;font-weight:700}.font-option.selected .font-label{color:var(--accent)}.font-preview{color:var(--text-light,#bbb);font-size:13px;font-weight:400}.font-option.selected .font-preview{color:var(--accent);opacity:.7}.language-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.lang-btn{border:2px solid var(--border);background:var(--bg-card);color:var(--text);font-size:14px;font-family:var(--font);cursor:pointer;text-align:center;border-radius:10px;padding:10px 8px;transition:all .15s}.lang-btn:hover{border-color:var(--accent)}.lang-btn.active{border-color:var(--accent);background:var(--accent-light);color:var(--accent);font-weight:700}[dir=rtl] .header,[dir=rtl] .family-screen-header,[dir=rtl] .tasks-header,[dir=rtl] .docs-folder-header,[dir=rtl] .docs-header,[dir=rtl] .event-row,[dir=rtl] .task-row,[dir=rtl] .member-card,[dir=rtl] .task-item,[dir=rtl] .doc-item,[dir=rtl] .form-buttons,[dir=rtl] .task-group-header,[dir=rtl] .week-header,[dir=rtl] .theme-toggle,[dir=rtl] .view-toggle,[dir=rtl] .meals-tabs,[dir=rtl] .chat-tabs-bar,[dir=rtl] .tasks-filter{flex-direction:row-reverse}[dir=rtl] .chat-bubble-row.me{flex-direction:row}[dir=rtl] .bottom-nav{direction:rtl}[dir=rtl] .member-info{text-align:right}[dir=rtl] input,[dir=rtl] textarea,[dir=rtl] select{text-align:right;direction:rtl}.trial-badge{color:#fff;cursor:pointer;font-size:12px;font-weight:800;font-family:var(--font);background:linear-gradient(135deg,#f5a623,#e8940f);border:none;border-radius:20px;padding:4px 10px}.nav-lock{font-size:9px;line-height:1;position:absolute;top:-6px;right:-8px}.nav-locked{opacity:.75}.upgrade-screen{flex-direction:column;gap:16px;min-height:100%;padding:16px 16px 32px;display:flex}.upgrade-back{color:var(--text-muted);cursor:pointer;font-size:14px;font-weight:600;font-family:var(--font);background:0 0;border:none;align-items:center;gap:6px;width:fit-content;padding:0;display:flex}.upgrade-feature-banner{background:var(--accent-light);border:1.5px solid var(--accent);border-radius:14px;align-items:center;gap:12px;padding:12px 16px;display:flex}.upgrade-feature-icon{font-size:28px}.upgrade-feature-banner strong{color:var(--text);font-size:14px;display:block}.upgrade-feature-banner p{color:var(--text-muted);margin:0;font-size:12px}.trial-banner{color:#7a5000;text-align:center;background:linear-gradient(135deg,#fff8e1,#fff3cd);border:1.5px solid #f5a623;border-radius:14px;padding:12px 16px;font-size:13px;line-height:1.5}.upgrade-header{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:8px 0;display:flex}.upgrade-crown{background:linear-gradient(135deg,#f5a623,#e8940f);border-radius:18px;justify-content:center;align-items:center;width:60px;height:60px;display:flex;box-shadow:0 6px 20px #f5a62366}.upgrade-header h2{color:var(--text);margin:0;font-size:24px;font-weight:900}.upgrade-header p{color:var(--text-muted);margin:0;font-size:14px}.billing-toggle{background:var(--bg-subtle);border-radius:12px;gap:4px;padding:4px;display:flex}.billing-btn{cursor:pointer;font-size:13px;font-weight:700;font-family:var(--font);color:var(--text-muted);background:0 0;border:none;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px;transition:all .15s;display:flex}.billing-btn.active{background:var(--bg-card);color:var(--accent);box-shadow:0 2px 8px var(--shadow)}.billing-save{color:#fff;background:#27ae60;border-radius:8px;padding:2px 6px;font-size:10px;font-weight:800}.upgrade-price-card{background:var(--bg-card);text-align:center;box-shadow:0 4px 20px var(--shadow);border:2px solid var(--accent);border-radius:20px;flex-direction:column;gap:10px;padding:20px;display:flex}.upgrade-price{justify-content:center;align-items:baseline;gap:4px;display:flex}.price-amount{color:var(--accent);font-size:38px;font-weight:900}.price-period{color:var(--text-muted);font-size:16px;font-weight:600}.price-sub{color:var(--text-muted);margin:0;font-size:12px}.upgrade-cta{background:linear-gradient(135deg, var(--accent), var(--accent-dark));color:#fff;font-size:16px;font-weight:800;font-family:var(--font);cursor:pointer;width:100%;box-shadow:0 4px 16px var(--accent)44;border:none;border-radius:16px;padding:14px 20px}.upgrade-fine{color:var(--text-muted);margin:0;font-size:11px}.upgrade-compare{grid-template-columns:1fr 1fr;gap:10px;display:grid}.compare-col{background:var(--bg-card);box-shadow:0 2px 8px var(--shadow);border-radius:16px;flex-direction:column;gap:6px;padding:12px 10px;display:flex}.compare-col.premium{border:2px solid var(--accent)}.compare-header{text-align:center;border-bottom:1px solid var(--border-sub);margin-bottom:4px;padding:4px 0 8px;font-size:13px;font-weight:800}.compare-header.premium{color:var(--accent)}.compare-header.free{color:var(--text-muted)}.compare-row{color:var(--text);align-items:center;gap:6px;font-size:11px;display:flex}.compare-row.muted{color:var(--text-muted)}.check-yes{color:#27ae60;flex-shrink:0}.check-no{color:#e25c5c;flex-shrink:0}.rewards-screen{flex-direction:column;gap:16px;padding:20px 16px 24px;display:flex}.rewards-header{flex-direction:column;gap:10px;display:flex}.rewards-header h2{color:var(--text);font-size:20px;font-weight:800}.rewards-kids,.rewards-parents{flex-direction:column;gap:14px;display:flex}.kid-card{background:var(--bg-card);box-shadow:0 2px 12px var(--shadow);border:2px solid #0000;border-radius:20px;padding:16px;transition:box-shadow .2s;overflow:hidden}.kid-card.goal-done{box-shadow:0 4px 20px #ffc80040}.kid-card-top{cursor:pointer;align-items:center;gap:14px;display:flex}.kid-avatar-wrap{flex-shrink:0}.kid-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;font-weight:800;display:flex}.kid-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.kid-name{color:var(--text);font-size:17px;font-weight:800}.kid-reward-label{font-size:12px;font-weight:700}.kid-pts-text{font-size:13px}.kid-progress-bar-wrap{align-items:center;gap:8px;display:flex}.kid-progress-bar-bg{background:var(--border);border-radius:4px;flex:1;height:7px;overflow:hidden}.kid-progress-bar-fill{border-radius:4px;height:100%}.kid-progress-pct{text-align:right;min-width:30px;font-size:11px;font-weight:700}.kid-tasks{border-top:1px solid var(--border-sub);margin-top:14px;padding-top:12px;overflow:hidden}.kid-tasks-label{color:var(--text-muted);margin-bottom:10px;font-size:12px;font-weight:600}.reward-task-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.reward-task-btn{background:var(--bg-subtle);cursor:pointer;text-align:left;border:2px solid #0000;border-radius:14px;flex-direction:column;align-items:flex-start;gap:6px;width:100%;padding:12px 10px;display:flex}.reward-task-title{color:var(--text);font-size:13px;font-weight:700;line-height:1.3}.reward-task-pts{color:#fff;border-radius:20px;padding:3px 8px;font-size:11px;font-weight:800}.rewards-section{background:var(--bg-card);box-shadow:0 2px 10px var(--shadow);border-radius:18px;flex-direction:column;gap:10px;padding:16px;display:flex}.rewards-section h3{color:var(--text);font-size:15px;font-weight:800}.rewards-section-header{justify-content:space-between;align-items:center;display:flex}.reward-task-item{background:var(--bg-subtle);border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.reward-task-item-title{color:var(--text);flex:1;font-size:14px;font-weight:600}.reward-task-item-pts{color:var(--accent);white-space:nowrap;font-size:13px;font-weight:700}.reward-goal-item{border-bottom:1px solid var(--border-sub);align-items:center;gap:12px;padding:10px 0;display:flex}.reward-goal-item:last-child{border-bottom:none}.kid-avatar-sm{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:15px;font-weight:800;display:flex}.reward-goal-info{flex-direction:column;flex:1;gap:2px;display:flex}.reward-goal-name{color:var(--text);font-size:14px;font-weight:700}.reward-goal-desc{color:var(--text-muted);font-size:12px}.btn-edit-goal{cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;padding:6px;display:flex}.currency-picker{flex-wrap:wrap;gap:8px;display:flex}.currency-btn{border:2px solid var(--border);background:var(--bg-subtle);cursor:pointer;width:42px;height:42px;font-size:16px;font-weight:700;font-family:var(--font);color:var(--text);border-radius:12px;transition:all .15s}.currency-btn.active{border-color:var(--accent);background:var(--accent-light);color:var(--accent);transform:scale(1.08)}.amount-row{align-items:center;gap:8px;display:flex}.amount-symbol{color:var(--accent);text-align:center;min-width:20px;font-size:22px;font-weight:800}.amount-row input{flex:1}.reward-preview{background:var(--accent-light);border:1.5px solid var(--accent);border-radius:12px;flex-direction:column;gap:2px;padding:10px 14px;display:flex}.reward-preview-label{color:var(--accent);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:700}.reward-preview-value{color:var(--text);font-size:14px;font-weight:700}.earn-toast{color:#fff;white-space:nowrap;z-index:999;font-size:15px;font-weight:800;font-family:var(--font);border-radius:32px;padding:12px 24px;position:fixed;bottom:90px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #0003}.onboarding{flex-direction:column;height:100%;padding-bottom:32px;display:flex;overflow:hidden}.ob-slide{flex:1;justify-content:center;align-items:center;padding:40px 28px;display:flex}.ob-welcome,.ob-features,.ob-start{text-align:center;flex-direction:column;align-items:center;gap:16px;width:100%;display:flex}.ob-logo,.ob-start-icon{font-size:72px;display:block}.ob-title{color:var(--text);font-size:26px;font-weight:800;line-height:1.2}.ob-sub{color:var(--text-muted);max-width:280px;font-size:16px;line-height:1.6}.ob-feature-list{flex-direction:column;gap:14px;width:100%;margin-top:8px;display:flex}.ob-feature-item{background:var(--bg-card);box-shadow:0 2px 10px var(--shadow);text-align:left;border-radius:16px;align-items:flex-start;gap:14px;padding:16px;display:flex}.ob-feature-icon{background:var(--accent-light);width:44px;height:44px;color:var(--accent);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ob-feature-title{color:var(--text);margin-bottom:4px;font-size:15px;font-weight:700}.ob-feature-desc{color:var(--text-muted);font-size:13px;line-height:1.4}.ob-footer{justify-content:space-between;align-items:center;padding:0 28px;display:flex}.ob-dots{align-items:center;gap:6px;display:flex}.ob-dot{border-radius:4px;height:8px}.ob-actions{align-items:center;gap:12px;display:flex}.ob-skip{color:var(--text-muted);cursor:pointer;font-size:14px;font-family:var(--font);background:0 0;border:none;padding:8px}.ob-next{background:var(--accent);color:#fff;font-size:15px;font-weight:700;font-family:var(--font);cursor:pointer;border:none;border-radius:24px;align-items:center;gap:6px;padding:12px 22px;display:flex}
