:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#fbf6ec;color:#24302c;--bg: #fbf6ec;--surface: #fffefa;--surface-strong: #ffffff;--ink: #24302c;--muted: #6f7974;--line: #e8ddcb;--teal: #0f8f83;--green: #43a047;--blue: #2878c8;--coral: #ff7a59;--amber: #f4b942;--mint: #b9f0df;--rose: #ffb7a5;--sky: #b8ddff;--red: #dc2626;--shadow: 0 22px 55px rgba(49, 60, 56, .12);--soft-shadow: 0 10px 28px rgba(49, 60, 56, .09);--fs-h1: 2rem;--fs-h2: 1.5rem;--fs-h3: 1.2rem;--fs-h4: 1rem;--fs-body: .95rem;--fs-small: .85rem;--fs-tiny: .75rem;--lh-heading: 1.2;--lh-body: 1.5;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-black: 800}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(135deg,#fff7e6f5,#ebfaf6eb 52%,#fff3ece6),linear-gradient(90deg,rgba(15,143,131,.05) 1px,transparent 1px),linear-gradient(0deg,rgba(244,185,66,.05) 1px,transparent 1px),var(--bg);background-size:auto,34px 34px,34px 34px,auto;letter-spacing:0;font-size:var(--fs-body);line-height:var(--lh-body)}h1{font-size:var(--fs-h1);font-weight:var(--fw-bold);line-height:var(--lh-heading);margin:0 0 .5rem;letter-spacing:-.01em}h2{font-size:var(--fs-h2);font-weight:var(--fw-semibold);line-height:var(--lh-heading);margin:0 0 .4rem}h3{font-size:var(--fs-h3);font-weight:var(--fw-medium);line-height:var(--lh-heading);margin:0 0 .35rem}h4{font-size:var(--fs-h4);font-weight:var(--fw-semibold);line-height:var(--lh-heading);margin:0 0 .3rem}h1+*,h2+*,h3+*,h4+*{margin-top:.15rem}p{margin:0 0 .5rem;line-height:var(--lh-body)}small,.small{font-size:var(--fs-small)}.tiny{font-size:var(--fs-tiny)}@keyframes ai-pulse{0%,to{background:#0f0f14c7}50%{background:#f59e0b8c}}@keyframes basket-pop-in{0%{transform:scale(.85) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}@keyframes floaty{0%{transform:translateZ(0)}to{transform:translate3d(-56px,-56px,0)}}@keyframes pickup-pulse{0%,to{box-shadow:0 2px 6px -3px #ea580c80}50%{box-shadow:0 6px 18px -4px #ea580cb3}}@keyframes vital-pulse{0%,to{opacity:1}50%{opacity:.3}}.loading-screen,.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px}.loading-screen{color:var(--muted);font-weight:700}.login-panel{width:min(420px,100%);background:#fffffff0;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:30px}.login-mark{width:58px;height:58px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--teal),var(--coral));border-radius:8px;box-shadow:0 12px 28px #0f8f833d}.login-panel h1{margin:18px 0 4px;font-size:2rem}.login-panel p{color:var(--muted);margin:0 0 24px}.login-panel form,.stacked-form{display:grid;gap:14px}.app-shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}.sidebar{min-height:100vh;position:sticky;top:0;align-self:start;padding:18px;background:linear-gradient(180deg,#143732,#1e2e34 62%,#2e2b35),#1f332f;color:#fff;display:flex;flex-direction:column;gap:22px}.brand{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#ffffff14}.brand img{width:48px;height:48px;border-radius:8px;box-shadow:0 10px 24px #0000002e}.brand .brand-text,.brand strong,.brand span{display:block}.brand span{color:#b9cbc6;font-size:.82rem}.sidebar nav{display:grid;gap:6px}.sidebar nav button,.logout-button{justify-content:flex-start;width:100%;padding:0 12px;background:transparent;color:#dbe8e5;min-height:46px;border-radius:8px;transition:background .15s ease,color .15s ease,transform .15s ease}.sidebar nav button.active,.sidebar nav button:hover,.logout-button:hover{background:#ffffff24;color:#fff;transform:translate(2px)}.sidebar nav button.active{box-shadow:inset 4px 0 0 var(--amber)}.workspace{min-width:0;padding:12px 20px 24px;max-width:1800px;margin:0 auto;width:100%}.mobile-only{display:none}.view-stack{display:flex;flex-direction:column;gap:20px}.app-shell{position:relative;isolation:isolate}.app-shell[data-mood=proljece] .app-mood-backdrop{background:radial-gradient(circle at 18% 22%,rgba(248,113,113,.32),transparent 38%),radial-gradient(circle at 76% 18%,rgba(167,243,208,.45),transparent 42%),radial-gradient(circle at 50% 88%,rgba(252,165,165,.3),transparent 48%),linear-gradient(180deg,#fff1f2,#fce7f3,#ecfccb)}.app-shell[data-mood=ljeto] .app-mood-backdrop{background:radial-gradient(circle at 14% 20%,rgba(253,224,71,.55),transparent 40%),radial-gradient(circle at 84% 24%,rgba(125,211,252,.45),transparent 42%),radial-gradient(circle at 50% 90%,rgba(254,215,170,.4),transparent 45%),linear-gradient(180deg,#fef9c3,#ffedd5,#cffafe)}.app-shell[data-mood=jesen] .app-mood-backdrop{background:radial-gradient(circle at 18% 20%,rgba(234,88,12,.35),transparent 40%),radial-gradient(circle at 80% 80%,rgba(180,83,9,.32),transparent 42%),radial-gradient(circle at 55% 12%,rgba(254,215,170,.5),transparent 45%),linear-gradient(180deg,#fff7ed,#fed7aa,#fcd34d)}.app-shell[data-mood=zima] .app-mood-backdrop{background:radial-gradient(circle at 16% 16%,rgba(186,230,253,.55),transparent 45%),radial-gradient(circle at 86% 86%,rgba(196,181,253,.4),transparent 50%),radial-gradient(circle at 60% 50%,rgba(255,255,255,.5),transparent 60%),linear-gradient(180deg,#eff6ff,#e0e7ff 60%,#f5f3ff)}.app-shell .workspace{position:relative}.app-shell[style*=--app-header-image] .workspace:before{content:"";position:absolute;top:0;left:0;right:0;height:80px;background:var(--app-header-image, none) center / cover no-repeat;border-radius:0 0 16px 16px;z-index:0;opacity:.5;pointer-events:none}@media(min-width:768px)and (max-width:1024px){.app-shell{grid-template-columns:56px 1fr}.sidebar{padding:12px 6px;gap:12px;align-items:center}.brand{padding:6px;justify-content:center}.brand img{width:36px;height:36px}.brand .brand-text{display:none}.sidebar nav button,.logout-button{justify-content:center;padding:0 8px;min-height:40px;gap:0;position:relative}.sidebar nav button .nav-label,.logout-button .nav-label{display:none}.sidebar nav button.active{box-shadow:none;border-left:3px solid var(--amber);background:#ffffff1a}.workspace{padding:12px 14px 24px}}@media(max-width:767px){.app-shell{grid-template-columns:1fr;grid-template-rows:1fr auto}.sidebar{position:fixed;inset:auto 0 0;min-height:auto;flex-direction:row;padding:4px 8px 8px;gap:0;z-index:100;background:linear-gradient(0deg,#143732,#1e2e34);border-top:1px solid rgba(255,255,255,.1);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.sidebar::-webkit-scrollbar{display:none}.sidebar .brand,.sidebar .logout-button{display:none}.sidebar nav{display:flex;flex-direction:row;gap:2px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none;justify-content:space-around}.sidebar nav::-webkit-scrollbar{display:none}.sidebar nav button{flex-direction:column;gap:2px;padding:6px 4px;min-height:auto;min-width:48px;border-radius:8px;justify-content:center;align-items:center}.sidebar nav button .nav-label{font-size:.6rem;line-height:1}.sidebar nav button.active{background:#ffffff24;box-shadow:none;transform:none}.workspace{padding:8px 10px 72px;max-width:100%}.mobile-only{display:block}.view-header{height:48px;min-height:48px;max-height:48px;padding:0 .6rem;gap:.5rem}.view-header-title h1{font-size:.85rem}.view-header-title span{display:none}.view-header-actions{gap:.3rem}.view-tabs-header{position:static;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.view-tabs-header::-webkit-scrollbar{display:none}.view-tabs{flex-wrap:nowrap}}.primary-button,.secondary-button,.logout-button,.text-button,.icon-button{border:0;border-radius:8px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800}.primary-button{background:linear-gradient(135deg,var(--teal),#12a594);color:#fff;padding:0 16px;box-shadow:0 10px 22px #0f8f8338}.secondary-button{background:#fff8e6;color:#8a5400;padding:0 14px;border:1px solid #f3dfac}.text-button{background:transparent;color:var(--teal);padding:0;min-height:30px}.icon-button{width:40px;height:40px;background:#eaf7f4;color:#0f5f59}.icon-button.danger{background:#fee2e2;color:var(--red)}.logout-button{margin-top:auto}.family-strip{display:flex;align-items:center;gap:6px;padding:5px;border:1px solid rgba(232,221,203,.9);border-radius:8px;background:#ffffffad;box-shadow:var(--soft-shadow);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.member-chip{min-height:32px;display:inline-flex;align-items:center;border-radius:8px;padding:0 10px;font-size:.82rem;font-weight:900;color:#24302c}.app-error,.form-error,.app-note{border-radius:8px;padding:12px 14px;margin-bottom:16px;font-weight:800}.app-error,.form-error{color:#991b1b;background:#fee2e2;animation:app-error-enter .25s ease-out}@keyframes app-error-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.app-note{color:#0f5f59;background:#d9f4ef}.app-note.inline,.form-error.inline{margin:0}.eyebrow.dark{color:#7a3d12;background:#ffffff85;border-color:#f4b9426b}.segmented.wide{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.eyebrow{text-transform:uppercase;font-weight:900;color:#f8df9b;font-size:.8rem;background:#ffffff29;border:1px solid rgba(255,255,255,.24);border-radius:8px;display:inline-flex;padding:6px 10px}.panel,.toolbar-panel,.finance-band{background:#fffefaeb;border:1px solid var(--line);border-radius:8px;box-shadow:var(--soft-shadow)}.panel{padding:18px;min-width:0;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.panel:hover{border-color:#dccbae;box-shadow:0 18px 42px #313c381f;transform:translateY(-1px)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-heading>div{display:flex;align-items:center;gap:10px;min-width:0}.panel-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:8px;color:#0f5f59;background:#d9f4ef}.dashboard-grid .panel:nth-child(2n) .panel-icon,.two-column .panel:nth-child(2n) .panel-icon{color:#8a5400;background:#fff1bd}.dashboard-grid .panel:nth-child(3n) .panel-icon,.two-column .panel:nth-child(3n) .panel-icon{color:#8d2e1f;background:#ffe2dc}.panel h2{margin:0;font-size:1.08rem}.alert-line{margin-top:12px;display:flex;align-items:center;gap:8px;color:#7a3d12;background:linear-gradient(135deg,#fff1bd,#ffe2dc);border-radius:8px;padding:10px;font-weight:800;border:1px solid #f6d492}.empty-state{border:1px dashed #d8c8ad;border-radius:8px;padding:18px;color:var(--muted);background:#fffaf0}.today-badge,.today-inline{display:inline-flex;align-items:center;justify-content:center;min-height:24px;border-radius:8px;background:linear-gradient(135deg,var(--coral),var(--amber));color:#3b2416;font-size:.72rem;font-style:normal;font-weight:950;padding:0 8px;box-shadow:0 8px 16px #ff7a5938}.today-inline{margin-left:8px;vertical-align:middle}.toolbar-panel{padding:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.segmented{display:inline-flex;padding:4px;background:#efe5d2;border-radius:8px;gap:4px}.segmented button{border:0;min-height:36px;border-radius:6px;background:transparent;padding:0 12px;font-weight:900;color:#53605a}.segmented button.active{background:#fff;color:var(--teal);box-shadow:0 5px 12px #313c3814}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.close-button{position:absolute;top:12px;right:12px}.inline-form{margin-top:12px;display:grid;grid-template-columns:1fr 40px;gap:8px}.inline-form.checklist-add-row{margin-top:0}.progress{height:11px;border-radius:999px;background:#e3ded2;overflow:hidden}.progress span{display:block;height:100%;border-radius:inherit}@media(max-width:520px){.panel{padding:13px}.meal-highlight{grid-template-columns:1fr}.meal-highlight img{width:100%;height:auto;aspect-ratio:4 / 3}.task-item{grid-template-columns:32px 1fr}.task-item .danger{grid-column:2;justify-self:start}}.chip-row{display:flex;flex-wrap:wrap;gap:.35rem}.chip{background:#0000000d;border:1px solid transparent;border-radius:999px;padding:.3rem .75rem;font-size:.78rem;cursor:pointer;transition:background .12s ease,border-color .12s ease}.chip:hover{background:#00000014}.chip.active{background:#2563eb1f;border-color:#2563eb66;color:#1d4ed8}.chip.active.danger{background:#dc26261f;border-color:#dc262666;color:#b91c1c}.chip-fieldset{border:0;padding:0;margin:0}.chip-fieldset legend{font-size:.78rem;font-weight:600;margin-bottom:.3rem;color:var(--muted, #555)}.today-pill{background:#f59e0b;color:#1a1a1a;font-size:.6rem;font-weight:700;letter-spacing:.06em;padding:.1rem .45rem;border-radius:999px;text-transform:uppercase}.card-meta{display:flex;justify-content:space-between;font-size:.6rem;color:#7c6a55;text-transform:uppercase;letter-spacing:.06em}.card-actions{display:grid;grid-template-columns:1fr 1fr;gap:.3rem;margin-top:auto}.primary-button.compact,.ghost-button{padding:.32rem .4rem;font-size:.68rem;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:.25rem}.ghost-button{background:transparent;border:1px solid rgba(180,83,9,.35);color:#92400e;cursor:pointer}.ghost-button:hover{background:#b4530914}.back-header{display:flex;flex-direction:column;gap:.15rem;border-bottom:1px dashed rgba(180,83,9,.35);padding-bottom:.35rem}.back-header small{font-size:.62rem;color:#92400e;text-transform:uppercase;letter-spacing:.08em}.app-mood-backdrop{position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.55;background:radial-gradient(circle at 12% 18%,rgba(252,211,77,.4),transparent 40%),radial-gradient(circle at 88% 84%,rgba(196,181,253,.35),transparent 45%),radial-gradient(circle at 60% 12%,rgba(167,243,208,.35),transparent 50%),linear-gradient(180deg,#fffaf0,#fff7ed 60%,#fef3c7)}.app-mood-backdrop:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 8px 8px,rgba(245,158,11,.16) 1.5px,transparent 2px),radial-gradient(circle at 24px 32px,rgba(34,197,94,.16) 1.5px,transparent 2px),radial-gradient(circle at 40px 16px,rgba(248,113,113,.14) 1.5px,transparent 2px);background-size:56px 56px;animation:floaty 28s linear infinite;opacity:.6}@media(prefers-reduced-motion:reduce){.app-mood-backdrop:before{animation:none}}.family-strip{display:inline-flex;align-items:center;gap:.3rem;flex-wrap:wrap;background:transparent;padding:0;border:none;border-radius:0;margin:0}.member-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .6rem .2rem .25rem;background:#ffffffd9;border:1.5px solid currentColor;border-radius:999px;cursor:pointer;font-size:.75rem;font-weight:600;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.member-chip.clear{background:transparent;border:1px dashed #94a3b8;color:#475569;font-weight:500}.avatar-btn{--member-color: #888;width:32px;height:32px;border-radius:999px;padding:0;border:1.5px solid var(--member-color);background:transparent;cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;box-shadow:inset 0 1.5px #fff0c86b,inset 0 -1.5px #0000006b,0 1px #fff0c840,0 -1px #00000059;transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s cubic-bezier(.34,1.56,.64,1),opacity .18s ease,border-color .18s ease}.avatar-btn:after{content:"";position:absolute;top:1px;left:15%;right:15%;height:40%;border-radius:999px 999px 60% 60%;background:linear-gradient(180deg,#ffffff8c,#ffffff14);pointer-events:none;z-index:2}.avatar-btn:hover{transform:scale(1.1);box-shadow:inset 0 1.5px #fff0c899,inset 0 -1.5px #0000006b,0 0 0 2px color-mix(in srgb,var(--member-color) 55%,transparent),0 2px 4px -1px #00000080}.avatar-btn:hover:after{background:linear-gradient(180deg,#ffffffbf,#ffffff26)}.avatar-btn:active{transform:scale(.94);box-shadow:inset 0 2px 3px #00000080,inset 0 -1px #fff0c82e}.avatar-btn:active:after{opacity:.3}.avatar-btn.active{transform:scale(1.05);box-shadow:inset 0 1.5px #fff0c88c,inset 0 -1.5px #0000006b,0 0 0 2px var(--member-color),0 0 8px 1px color-mix(in srgb,var(--member-color) 45%,transparent)}.avatar-btn.active:after{background:linear-gradient(180deg,#ffffffa6,#ffffff1f)}.avatar-btn.dimmed{opacity:.4;box-shadow:inset 0 1px #fff0c84d,inset 0 -1px #0000004d}.avatar-btn.dimmed:after{opacity:.2}.avatar-btn-img{width:100%;height:100%;object-fit:cover;border-radius:999px;display:block}.avatar-btn-initial{width:100%;height:100%;border-radius:999px;background:var(--member-color);color:#fff;font-weight:800;font-size:.85rem;display:inline-flex;align-items:center;justify-content:center;text-transform:uppercase;text-shadow:0 1px 2px rgba(0,0,0,.35)}@media(max-width:720px){.avatar-btn{width:30px;height:30px}.avatar-btn-initial{font-size:.75rem}}.ghost-button.as-label{cursor:pointer}.text-button.danger{color:#b91c1c;background:transparent;border:0;padding:0;font-size:.78rem;cursor:pointer;text-decoration:underline dotted}.stacked-label{display:flex;flex-direction:column;gap:.2rem;font-size:.85rem;margin:.4rem 0}.stacked-label textarea{font-size:.78rem;padding:.4rem}.linked-tag{font-style:normal;background:#2563eb1f;color:#1d4ed8;padding:.05rem .3rem;border-radius:4px;font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;margin-left:.3rem}.item-list.compact .event-row,.item-list.compact .maintenance-row{padding:.3rem 0;font-size:.78rem}.form-grid.four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem}.form-grid.four label,.template-editor.compact label{font-size:.72rem;display:flex;flex-direction:column;gap:.15rem}.secondary-button.compact{padding:.3rem .6rem;font-size:.74rem}.sticky-add .primary-button.compact{padding:0;font-size:1rem}.karton-row .text-button.danger{font-size:1.1rem;line-height:1;background:transparent;border:0;cursor:pointer;color:#b91c1c;padding:0 .3rem}.today-board-row .primary-button.compact{padding:0;display:grid;place-items:center;font-size:1.1rem;line-height:1}.dashboard-topbar-actions .secondary-button.compact{background:#fff7d6f2;color:#5b3a00;border:1px solid rgba(255,247,214,.4);padding:.32rem .7rem;font-size:.78rem;font-weight:700}.dashboard-topbar-actions .secondary-button.compact:hover{background:#fff7d6}.view-header-actions .secondary-button.compact{padding:.32rem .7rem;font-size:.78rem;font-weight:700}.themed-view .view-header .secondary-button.compact,.dashboard-view .view-header .secondary-button.compact{background:#fff7d6eb;border-color:#fff7d680;color:#5b3a00}.view-tabs-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .6rem;background:#fffaf0;border-radius:12px;border:1px solid rgba(0,0,0,.05);position:sticky;top:12px;z-index:20;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);margin-bottom:.6rem}.view-tabs{display:inline-flex;flex-wrap:wrap;gap:.25rem}.view-tab{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .8rem;background:transparent;border:0;border-radius:8px;font-size:.84rem;font-weight:500;color:var(--muted, #777);cursor:pointer;transition:background .2s cubic-bezier(.2,.9,.3,1.2),color .2s cubic-bezier(.2,.9,.3,1.2),transform .2s cubic-bezier(.2,.9,.3,1.2)}.view-tab:hover{background:#0000000a;color:#5b4a36;transform:translateY(-1px)}.view-tab.active{background:#1a1a1a;color:#fffaef;box-shadow:0 1px 2px #0000000f}.view-tab.active .dash-widget-count{background:#ffffff2e;color:#fff}.view-tabs-trailing{display:inline-flex;align-items:center;gap:.4rem}.themed-view{padding:1rem 1rem 1.5rem;border-radius:22px;position:relative;isolation:isolate;height:calc(100vh - 36px);overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;background:radial-gradient(ellipse at 15% 10%,rgba(255,240,200,.45) 0%,transparent 55%),radial-gradient(ellipse at 85% 85%,rgba(255,220,180,.4) 0%,transparent 60%),repeating-radial-gradient(circle at 20% 30%,rgba(120,72,30,.06) 0px,rgba(120,72,30,.06) 1.5px,transparent 1.5px,transparent 6px),repeating-radial-gradient(circle at 70% 60%,rgba(160,110,60,.05) 0px,rgba(160,110,60,.05) 1.5px,transparent 1.5px,transparent 7px),linear-gradient(160deg,#d8b27a,#c69961 45%,#b8884f);box-shadow:inset 0 0 0 6px #4c290e8c,inset 0 0 0 10px #ffdcaa2e,inset 0 0 24px #00000026,0 18px 40px -22px #3c1e058c}.themed-view>*{position:relative;z-index:1}.themed-view:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:0;background-image:radial-gradient(circle at 10% 20%,rgba(255,255,255,.18) 0 1px,transparent 1.5px),radial-gradient(circle at 30% 70%,rgba(0,0,0,.08) 0 1.2px,transparent 2px),radial-gradient(circle at 60% 35%,rgba(0,0,0,.06) 0 1px,transparent 2px),radial-gradient(circle at 85% 80%,rgba(255,255,255,.16) 0 1px,transparent 2px);background-size:8px 8px,11px 11px,9px 9px,13px 13px;opacity:.6;mix-blend-mode:overlay}.themed-view:after{content:"";position:absolute;inset:4px;border-radius:18px;box-shadow:inset 0 1px #ffe6be59,inset 0 -1px #3c1e0559;pointer-events:none;z-index:0}.themed-view .panel-icon{z-index:3}.themed-view.vehicles-view h2,.themed-view.vehicles-view h3,.themed-view.vehicles-view label,.themed-view.vehicles-view .panel-title{color:#f4d27a}@media(max-width:720px){.themed-view{padding:.8rem .85rem 1rem;border-radius:14px}}@media(max-width:820px){.themed-view{height:auto;min-height:calc(100vh - 60px);overflow:visible}}.themed-view .view-tabs-header{background:#fff;border:1px solid rgba(60,30,5,.18);box-shadow:0 1px 2px #0000000f,0 8px 14px -10px #00000040}.themed-view.vehicles-view .view-tab.active{background:#f4d27a;color:#1a1a1a}.themed-view .panel,.themed-view .toolbar-panel,.themed-view .card,.themed-view .section-card,.themed-view .calendar-grid,.themed-view .calendar-row,.themed-view .day-column,.themed-view .meal-week-grid>section,.themed-view .recipe-shelf-cards,.themed-view .school-week,.themed-view .school-day,.themed-view .basket-receipt,.themed-view .item-list,.themed-view .two-column>*,.themed-view .category-chips,.themed-view .shopping-category-group,.themed-view .vehicle-hero,.themed-view .garage-tile,.themed-view .karton-tabs,.themed-view .karton-chart{position:relative;z-index:1}.themed-view .panel,.themed-view .toolbar-panel,.themed-view .card,.themed-view .section-card{position:relative;background:linear-gradient(180deg,#fffffff5,#fcf6eaf0);border:1px solid rgba(70,40,12,.18);border-radius:12px;box-shadow:0 1px #ffffffd9 inset,0 -1px #3c1e050f inset,0 1px 2px #0000000d,0 14px 24px -16px #28140073,0 22px 38px -28px #28140059;overflow:visible}.themed-view .panel:before,.themed-view .toolbar-panel:before,.themed-view .card:before,.themed-view .section-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background-image:radial-gradient(rgba(0,0,0,.025) 1px,transparent 1.5px),radial-gradient(rgba(0,0,0,.018) 1px,transparent 1.5px);background-size:3px 3px,5px 5px;background-position:0 0,1px 2px;pointer-events:none;opacity:.55;z-index:0}.themed-view .panel:after,.themed-view .toolbar-panel:after,.themed-view .card:after,.themed-view .section-card:after{content:"";position:absolute;top:-8px;left:50%;transform:translate(-50%);width:16px;height:16px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffe9e9,#ef4444 32%,#b91c1c 75%,#5b0c0c);box-shadow:0 2px 1px #0000002e,0 4px 6px -1px #00000059,inset 0 1.5px 1px #fff9,inset 0 -1.5px 1px #0003;z-index:3;pointer-events:none}.themed-view .panel:nth-of-type(1),.themed-view .card:nth-of-type(1){transform:rotate(-.5deg)}.themed-view .panel:nth-of-type(2),.themed-view .card:nth-of-type(2){transform:rotate(.4deg)}.themed-view .panel:nth-of-type(3),.themed-view .card:nth-of-type(3){transform:rotate(-.3deg)}.themed-view .panel:nth-of-type(4),.themed-view .card:nth-of-type(4){transform:rotate(.6deg)}.themed-view .panel:nth-of-type(5),.themed-view .card:nth-of-type(5){transform:rotate(-.45deg)}.themed-view .panel:nth-of-type(n+6),.themed-view .card:nth-of-type(n+6){transform:rotate(.35deg)}.themed-view .toolbar-panel{transform:rotate(-.2deg)}.themed-view .panel:hover,.themed-view .card:hover,.themed-view .section-card:hover{transform:translateY(-3px) rotate(0) scale(1.012);box-shadow:0 1px #ffffffe6 inset,0 -1px #3c1e050f inset,0 2px 4px #0000000f,0 22px 36px -18px #2814008c,0 34px 52px -28px #28140073;z-index:2}.themed-view.calendar-view .panel:after,.themed-view.calendar-view .card:after{background:radial-gradient(circle at 35% 30%,#fff5d4,#f59e0b 32%,#b45309 75%,#5b2c00)}.themed-view.school-view .panel:after,.themed-view.school-view .card:after{background:radial-gradient(circle at 35% 30%,#ddead4,#4ade80 32%,#166534 75%,#052e16)}.themed-view.meal-view .panel:after,.themed-view.meal-view .card:after{background:radial-gradient(circle at 35% 30%,#fff5d4,#f59e0b 32%,#b45309 75%,#5b2c00)}.themed-view.tasks-view .panel:after,.themed-view.tasks-view .card:after{background:radial-gradient(circle at 35% 30%,#e0f2ff,#38bdf8 32%,#0369a1 75%,#082f49)}.themed-view.shopping-view .panel:after,.themed-view.shopping-view .card:after{background:radial-gradient(circle at 35% 30%,#fff5d4,#facc15 32%,#a16207 75%,#422006)}.themed-view.checklist-page .panel:after,.themed-view.checklist-page .card:after{background:radial-gradient(circle at 35% 30%,#fff5d4,#f59e0b 32%,#b45309 75%,#5b2c00)}.themed-view.finance-view .panel:after,.themed-view.finance-view .card:after{background:radial-gradient(circle at 35% 30%,#d6f1d6,#22c55e 32%,#166534 75%,#052e16)}.themed-view.karton-view .panel:after,.themed-view.karton-view .card:after{background:radial-gradient(circle at 35% 30%,#e0f2ff,#38bdf8 32%,#0369a1 75%,#082f49)}.themed-view.settings-view .panel:after,.themed-view.settings-view .card:after{background:radial-gradient(circle at 35% 30%,#fff5d4,#facc15 32%,#a16207 75%,#422006)}.themed-view.vehicles-view .panel:after,.themed-view.vehicles-view .card:after{background:radial-gradient(circle at 35% 30%,#fff5d4,#f4d27a 32%,#b45309 75%,#5b2c00)}.themed-view .toolbar-panel:after{background:radial-gradient(circle at 35% 30%,#ffe9e9,#ef4444 32%,#b91c1c 75%,#5b0c0c)}.themed-view.settings-view .panel,.themed-view.settings-view .toolbar-panel,.themed-view.settings-view .card,.themed-view.settings-view .section-card{background:linear-gradient(180deg,#fffcf0f7,#fff4d6f2);border-color:#784b1e59;color:#2a1903}.themed-view.karton-view aside,.themed-view.karton-view article,.themed-view.karton-view .panel{background:linear-gradient(180deg,#fffffff5,#fcf6eaf0);border-color:#0284c733}.view-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.9rem;padding:0 .85rem;height:64px;min-height:64px;max-height:64px;overflow:hidden;flex-shrink:0;margin:-.4rem -.4rem .85rem;border-radius:12px;background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 1px 2px #0000000a,0 6px 14px -10px #0003;position:relative;z-index:5;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.view-header-title h1{margin:0;font-size:1rem;font-weight:800;letter-spacing:.03em;color:#2a1903}.view-header-title span{display:block;font-size:.72rem;color:#777;margin-top:1px}.view-header-actions{display:inline-flex;align-items:center;gap:.6rem;flex-wrap:nowrap;overflow:hidden;justify-content:flex-end}.view-header-actions .family-strip{gap:.3rem;flex-shrink:0;margin-left:.3rem;background:transparent;padding:0;border:none}.view-header-menu{background:#0000000f;border-radius:8px}.view-header .pickup-banner.inline{font-size:.72rem;padding:.25rem .55rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px;flex-shrink:1}.themed-view .view-header,.dashboard-view .view-header{background:linear-gradient(180deg,#fff0c82e,#3c1e052e),repeating-linear-gradient(90deg,#6b3f15 0 10px,#7a4a1c 10px 11px,#5e3712 11px 22px,#7a4a1c 22px 23px);border:1px solid rgba(60,30,5,.5);box-shadow:inset 0 1px #ffe6be66,inset 0 -2px #00000040,0 6px 14px -10px #0000008c;color:#fff7d6}.themed-view .view-header-title h1,.dashboard-view .view-header-title h1{color:#fff7d6;text-shadow:0 1px 0 rgba(0,0,0,.4)}.themed-view .view-header-title span,.dashboard-view .view-header-title span{color:#fff7d6b3}.themed-view .view-header .member-chip,.dashboard-view .view-header .member-chip{background:#fff7d6e6}.themed-view .view-header .avatar-btn,.dashboard-view .view-header .avatar-btn{box-shadow:inset 0 1px 3px #fff0c8a6,inset 0 -2px 5px #00000073,0 2px 6px -2px #0000008c}.themed-view .view-header .avatar-btn:after,.dashboard-view .view-header .avatar-btn:after{background:linear-gradient(180deg,#ffffffa6,#ffffff1a)}.themed-view .view-header-menu{background:#fff0c82e;border-radius:8px}.view-header .view-tabs-header{background:transparent;border:none;box-shadow:none;padding:0;margin:0;position:static;-webkit-backdrop-filter:none;backdrop-filter:none;display:inline-flex;align-items:center;gap:.25rem;overflow-x:auto;max-width:540px;scrollbar-width:none}.view-header .view-tabs-header::-webkit-scrollbar{display:none}.view-header .view-tabs{flex-wrap:nowrap;gap:.15rem}.view-header .view-tab{padding:.28rem .55rem;font-size:.76rem;white-space:nowrap;color:#fff7d6bf;border-radius:6px}.view-header .view-tab:hover{background:#fff7d626;color:#fff7d6;transform:none}.view-header .view-tab.active{background:#fff7d6eb;color:#5b3a00;box-shadow:none}.view-header .view-tabs-trailing{display:none}.view-header-tabs-inline{display:inline-flex;align-items:center;gap:.3rem;overflow-x:auto;scrollbar-width:none}.view-header-tabs-inline::-webkit-scrollbar{display:none}.view-header-tabs-inline .header-tab{padding:.28rem .55rem;font-size:.76rem;white-space:nowrap;color:#fff7d6eb;background:#fff7d6eb;color:#5b3a00;border-radius:6px;display:inline-flex;align-items:center;gap:.3rem}.themed-view.vehicles-view .view-header-title h1{color:#f4d27a;text-shadow:0 1px 0 rgba(0,0,0,.4)}.themed-view.vehicles-view .view-header-title span{color:#f4d27ab3}.themed-view.vehicles-view .view-header .member-chip{background:#ffffff0f}.themed-view.vehicles-view .view-header .secondary-button{background:#f4d27a;color:#1a1a1a;border-color:#f4d27a}.themed-view.karton-view .view-header-title h1{color:#c9f0ff}.themed-view.karton-view .view-header-title h1:before{content:"🏥 ";margin-right:4px}.themed-view.vehicles-view{position:relative}.themed-view.calendar-view{--view-accent: #2563eb;--view-accent-soft: rgba(37, 99, 235, .08);--view-accent-bg: rgba(219, 234, 254, .15)}.themed-view.calendar-view .view-header-title h1{color:#dbeafe}.themed-view.calendar-view .panel{border-color:#2563eb26}.themed-view.calendar-view .view-tab.active{background:#2563eb;color:#fff}.themed-view.tasks-view{--view-accent: #16a34a;--view-accent-soft: rgba(22, 163, 74, .08);--view-accent-bg: rgba(220, 252, 231, .12)}.themed-view.tasks-view .view-header-title h1{color:#bbf7d0}.themed-view.tasks-view .panel{border-color:#16a34a26}.themed-view.tasks-view .view-tab.active{background:#16a34a;color:#fff}.themed-view.finance-view{--view-accent: #1e40af;--view-accent-gold: #f59e0b;--view-accent-soft: rgba(30, 64, 175, .08);--view-accent-bg: rgba(219, 234, 254, .1)}.themed-view.finance-view .view-header-title h1{color:#fde68a}.themed-view.finance-view .panel{border-color:#1e40af33}.themed-view.finance-view .view-tab.active{background:#1e40af;color:#fde68a}.themed-view.vehicles-view{--view-accent: #f4d27a;--view-accent-soft: rgba(244, 210, 122, .1);--view-accent-bg: rgba(244, 210, 122, .04)}.themed-view.meal-view{--view-accent: #c2410c;--view-accent-soft: rgba(194, 65, 12, .08);--view-accent-bg: rgba(254, 215, 170, .12)}.themed-view.meal-view .view-header-title h1{color:#fed7aa}.themed-view.meal-view .panel{border-color:#c2410c2e}.themed-view.meal-view .view-tab.active{background:#c2410c;color:#fff}.themed-view.shopping-view{--view-accent: #15803d;--view-accent-soft: rgba(21, 128, 61, .08);--view-accent-bg: rgba(187, 247, 208, .1)}.themed-view.shopping-view .view-header-title h1{color:#bbf7d0}.themed-view.shopping-view .panel{border-color:#15803d26}.themed-view.shopping-view .view-tab.active{background:#15803d;color:#fff}.themed-view.karton-view{--view-accent: #0d9488;--view-accent-soft: rgba(13, 148, 136, .08);--view-accent-bg: rgba(204, 251, 241, .12)}.themed-view.karton-view .panel{border-color:#0d94882e}.themed-view.karton-view .view-tab.active{background:#0d9488;color:#fff}.themed-view.settings-view{--view-accent: #78716c;--view-accent-soft: rgba(120, 113, 108, .06);--view-accent-bg: rgba(245, 245, 244, .1)}.themed-view.school-view{--view-accent: #059669;--view-accent-soft: rgba(5, 150, 105, .08);--view-accent-bg: rgba(209, 250, 229, .1)}.themed-view.school-view .view-header-title h1{color:#a7f3d0}.themed-view.school-view .panel{border-color:#05966926}.themed-view.school-view .view-tab.active{background:#059669;color:#fff}.themed-view.checklist-page{--view-accent: #d97706;--view-accent-soft: rgba(217, 119, 6, .08);--view-accent-bg: rgba(254, 243, 199, .12)}.themed-view.checklist-page .view-tab.active{background:#d97706;color:#fff}.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.weekly-overview{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;padding:6px 6px 5px}.week-card{min-height:92px;border:1px solid #e8dcc8;border-radius:8px;background:linear-gradient(180deg,#fff,#fff8e9);padding:8px 9px;display:grid;align-content:start;gap:4px}.week-card>span{color:var(--muted);font-size:.72rem;font-weight:900}.week-card>strong{font-size:1.3rem;line-height:1}.week-card small{color:#52615b;min-height:0;font-size:.7rem}.week-card div{display:grid;gap:4px;max-height:64px;overflow-y:auto}.week-card b,.week-card em{border-radius:6px;background:#0f8f8317;color:#0f5f59;padding:.15rem .4rem;font-size:.68rem;line-height:1.1;font-style:normal}.area-events .event-row>div{display:flex;flex-direction:column;gap:2px;min-width:0}.area-events .event-row strong{white-space:normal;word-break:break-word;line-height:1.2}.area-events .event-row small{color:var(--muted);font-variant-numeric:tabular-nums}.todays-meals{display:grid;gap:.75rem}.dashboard-view{gap:.85rem}.pickup-banner{display:flex;align-items:center;gap:.55rem;padding:.55rem .85rem;background:linear-gradient(95deg,#fef3c7,#fde68a);color:#78350f;border:1px solid #fbbf24;border-radius:12px;font-size:.85rem;font-weight:600;cursor:pointer;width:100%;text-align:left;box-shadow:0 2px 6px -3px #f59e0b66;transition:transform .12s ease,box-shadow .12s ease}.pickup-banner:hover{transform:translateY(-1px);box-shadow:0 6px 14px -6px #f59e0b80}.pickup-banner.today{background:linear-gradient(95deg,#fbbf24,#f97316);color:#fff;border-color:#ea580c;animation:pickup-pulse 2.4s ease-in-out infinite}.pickup-banner span{flex:1}.pickup-banner em{font-style:normal;font-size:.7rem;background:#fff6;padding:.1rem .5rem;border-radius:999px}.dash-layout{display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-template-areas:"weekly    weekly     weekly" "meals     board      school" "events    weather    birthdays" "kupovina  kupovina   kupovina";gap:.6rem;align-items:stretch;align-content:start}.area-board{grid-area:board}.area-meals{grid-area:meals}.area-school{grid-area:school}.area-birthdays{grid-area:birthdays}.area-events{grid-area:events}.area-weekly{grid-area:weekly}.area-weather{grid-area:weather}.area-album{grid-area:album}.area-nav{grid-area:nav}.area-kupovina{grid-area:kupovina}.dash-widget{background:var(--surface, #ffffff);border-radius:14px;padding:.5rem .7rem .55rem;box-shadow:0 1px 2px #0000000a,0 6px 18px -8px #00000014;border:1px solid rgba(0,0,0,.04);display:flex;flex-direction:column;gap:.3rem;min-width:0;min-height:0}.dash-widget-head{display:flex;align-items:center;gap:.4rem;border-bottom:1px solid rgba(0,0,0,.05);padding-bottom:.35rem}.dash-widget-head h2{margin:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-widget-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;background:#b453091f;color:#92400e;flex-shrink:0}.dash-widget-count{background:#0000000f;color:#444;font-size:.7rem;font-weight:700;padding:.05rem .45rem;border-radius:999px;font-variant-numeric:tabular-nums}.dash-widget-body{flex:1;min-height:0;overflow:hidden}.area-board .dash-widget-body{max-height:300px;overflow-y:auto}.area-events .dash-widget-body{max-height:200px;overflow-y:auto}.area-weather .dash-widget-body{max-height:210px;overflow-y:auto}.area-meals .dash-widget-body{display:flex;flex-direction:column;gap:.5rem}.area-weekly .dash-widget-body{overflow-x:auto}@media(max-width:1280px){.dash-layout{grid-template-columns:1.3fr 1fr;grid-template-areas:"weekly weekly" "meals board" "school board" "weather board" "events birthdays" "events kupovina"}}@media(max-width:820px){.dash-layout{grid-template-columns:1fr;grid-template-areas:"weekly" "meals" "school" "events" "board" "weather" "kupovina" "birthdays";gap:.6rem}.dash-widget{padding:.5rem .6rem}.dash-widget:after{display:none}.dash-widget-head h2{font-size:.7rem}.area-board .dash-widget-body,.area-events .dash-widget-body{max-height:200px}.area-album,.area-nav{display:none}.area-school{border-width:2px;border-color:#785a1e73}.area-kupovina:after{display:none}.weekly-overview{grid-template-columns:repeat(7,minmax(110px,1fr));overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;padding:6px 4px 8px}.week-card{min-height:120px;scroll-snap-align:start;padding:8px}.week-card>strong{font-size:1.3rem}.event-row strong{display:block;white-space:normal;word-break:break-word}}.widget-header{display:flex;align-items:center;gap:.45rem;border-bottom:1px solid rgba(0,0,0,.05);padding-bottom:.4rem}.widget-header h2{margin:0;font-size:.84rem;text-transform:uppercase;flex:1;letter-spacing:.06em}.widget-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;background:#b453091f;color:#92400e}.widget-body{flex:1;min-height:0}.dashboard-view{position:relative;padding:1rem 1.2rem 1.1rem;height:calc(100vh - 36px);overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;background:radial-gradient(ellipse at 15% 10%,rgba(255,240,200,.45) 0%,transparent 55%),radial-gradient(ellipse at 85% 85%,rgba(255,220,180,.4) 0%,transparent 60%),repeating-radial-gradient(circle at 20% 30%,rgba(120,72,30,.06) 0px,rgba(120,72,30,.06) 1.5px,transparent 1.5px,transparent 6px),repeating-radial-gradient(circle at 70% 60%,rgba(160,110,60,.05) 0px,rgba(160,110,60,.05) 1.5px,transparent 1.5px,transparent 7px),linear-gradient(160deg,#d8b27a,#c69961 45%,#b8884f);border-radius:22px;box-shadow:inset 0 0 0 6px #4c290e8c,inset 0 0 0 10px #ffdcaa2e,inset 0 0 24px #00000026,0 18px 40px -22px #3c1e058c}.dashboard-view:before,.dashboard-view:after{content:"";position:absolute;pointer-events:none}.dashboard-view:before{inset:0;border-radius:22px;background-image:radial-gradient(circle at 10% 20%,rgba(255,255,255,.18) 0 1px,transparent 1.5px),radial-gradient(circle at 30% 70%,rgba(0,0,0,.08) 0 1.2px,transparent 2px),radial-gradient(circle at 60% 35%,rgba(0,0,0,.06) 0 1px,transparent 2px),radial-gradient(circle at 85% 80%,rgba(255,255,255,.16) 0 1px,transparent 2px);background-size:8px 8px,11px 11px,9px 9px,13px 13px;opacity:.6;mix-blend-mode:overlay}.dashboard-view:after{inset:4px;border-radius:18px;box-shadow:inset 0 1px #ffe6be59,inset 0 -1px #3c1e0559}.dashboard-view>*{position:relative;z-index:1}.dash-layout{gap:1.1rem 1rem}.dash-widget{position:relative;padding:1rem 1.05rem 1.05rem;border-radius:12px;background:linear-gradient(180deg,#fffffff5,#fcf6eaf0);border:1px solid rgba(70,40,12,.18);box-shadow:0 1px #ffffffd9 inset,0 -1px #3c1e050f inset,0 1px 2px #0000000d,0 14px 24px -16px #28140073,0 22px 38px -28px #28140059;transition:transform .22s cubic-bezier(.2,.9,.3,1.2),box-shadow .22s ease,filter .22s ease;transform-origin:50% 0}.dash-widget>*{position:relative;z-index:1}.dash-widget:before{content:"";position:absolute;inset:0;border-radius:inherit;background-image:radial-gradient(rgba(0,0,0,.025) 1px,transparent 1.5px),radial-gradient(rgba(0,0,0,.018) 1px,transparent 1.5px);background-size:3px 3px,5px 5px;background-position:0 0,1px 2px;pointer-events:none;opacity:.55;z-index:0}.dash-widget:after{content:"";position:absolute;top:-8px;left:50%;transform:translate(-50%);width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffe9e9,#ef4444 32%,#b91c1c 75%,#5b0c0c);box-shadow:0 2px 1px #0000002e,0 4px 6px -1px #00000059,inset 0 1.5px 1px #fff9,inset 0 -1.5px 1px #0003;z-index:3}.area-tasks{transform:rotate(-.55deg)}.area-meals{transform:rotate(.45deg)}.area-school{transform:rotate(-.3deg)}.area-birthdays{transform:rotate(.6deg)}.area-events{transform:rotate(-.4deg)}.area-finance{transform:rotate(.35deg)}.area-vehicle{transform:rotate(-.2deg)}.area-weekly{transform:rotate(-.15deg)}.area-weather{transform:rotate(.5deg)}.area-notes{transform:rotate(-.7deg)}.area-album{transform:rotate(.55deg)}.dash-widget:hover{transform:translateY(-3px) rotate(0) scale(1.012);box-shadow:0 1px #ffffffe6 inset,0 -1px #3c1e050f inset,0 2px 4px #0000000f,0 22px 36px -18px #2814008c,0 34px 52px -28px #28140073;z-index:2}.area-meals:after{background:radial-gradient(circle at 35% 30%,#fff5d4,#f59e0b 32%,#b45309 75%,#5b2c00)}.area-weather:after{background:radial-gradient(circle at 35% 30%,#e0f2ff,#38bdf8 32%,#0369a1 75%,#082f49)}.area-notes:after{background:radial-gradient(circle at 35% 30%,#fff5d4,#facc15 32%,#a16207 75%,#422006)}.area-school:after{background:radial-gradient(circle at 35% 30%,#ddead4,#4ade80 32%,#166534 75%,#052e16)}.area-album:after{background:radial-gradient(circle at 35% 30%,#fde9ff,#c084fc 32%,#6b21a8 75%,#2e1065)}.area-finance:after{background:radial-gradient(circle at 35% 30%,#d6f1d6,#22c55e 32%,#166534 75%,#052e16)}.area-birthdays:after{background:radial-gradient(circle at 35% 30%,#ffe4ec,#f472b6 32%,#9d174d 75%,#500724)}.area-meals{background:linear-gradient(180deg,#fff8e6f7,#ffebc4eb);border-color:#b4530952}.area-meals:before{background-image:repeating-linear-gradient(135deg,rgba(180,83,9,.05) 0 1px,transparent 1px 12px),radial-gradient(circle at 12% 92%,rgba(217,119,6,.18) 0 22px,transparent 24px);opacity:.7}.area-weather{background:linear-gradient(180deg,#e0f4ff,#bce0fa 60%,#fff4d8);border-color:#3884c852}.area-weather:before{background-image:radial-gradient(ellipse at 80% 18%,rgba(253,224,71,.55) 0 24px,transparent 30px),radial-gradient(ellipse at 18% 30%,rgba(255,255,255,.85) 0 16px,transparent 22px),radial-gradient(ellipse at 32% 36%,rgba(255,255,255,.7) 0 20px,transparent 28px),radial-gradient(ellipse at 65% 70%,rgba(255,255,255,.65) 0 18px,transparent 26px);opacity:.85}.area-school{background:linear-gradient(180deg,#fbf8ef,#f3ecd5);border-color:#785a1e52}.area-school:before{background-image:repeating-linear-gradient(180deg,transparent 0 26px,rgba(99,70,20,.18) 26px 27px);background-size:100% 27px;opacity:.85}.area-school .dash-widget-head{border-bottom-color:#63461459}.area-events{background:linear-gradient(180deg,#fef9ee,#f8efd6);border-color:#9b6e324d}.area-events:before{background-image:repeating-linear-gradient(0deg,rgba(155,110,50,.08) 0 1px,transparent 1px 26px)}.area-tasks{background:linear-gradient(180deg,#fff,#f3f6fa);border-color:#1e40af2e}.area-tasks:before{background-image:repeating-linear-gradient(180deg,transparent 0 32px,rgba(30,64,175,.06) 32px 33px);background-size:100% 33px}.area-notes{background:linear-gradient(180deg,#fff8a8,#ffe97a);border-color:#ca8a048c;box-shadow:0 1px #ffffffd9 inset,0 -1px #5032001a inset,0 1px 2px #0000000d,0 14px 24px -16px #7846008c,0 22px 38px -28px #78460073}.area-notes .dash-widget-head{border-bottom-color:#78460040}.area-album{background:linear-gradient(180deg,#fff,#f5edff);border-color:#7e22ce47}.area-album:before{background-image:radial-gradient(circle at 88% 12%,rgba(192,132,252,.25) 0 24px,transparent 30px),radial-gradient(circle at 10% 88%,rgba(244,114,182,.2) 0 22px,transparent 28px);opacity:.7}.area-finance{background:linear-gradient(180deg,#effaf2,#d9f0e0);border-color:#16653447}.area-finance:before{background-image:repeating-linear-gradient(180deg,transparent 0 22px,rgba(22,101,52,.1) 22px 23px)}.area-vehicle{background:linear-gradient(180deg,#2a3340,#1c232d);color:#e8edf3;border-color:#ffffff0f}.area-vehicle:before{background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.04) 0 2px,transparent 2px 14px),radial-gradient(circle at 30% 40%,rgba(255,220,100,.06) 0 18px,transparent 24px);opacity:.9}.area-vehicle .dash-widget-head{border-bottom-color:#ffffff1a}.area-vehicle .dash-widget-head h2{color:#f4d27a;letter-spacing:.08em}.area-vehicle .dash-widget-icon{background:#f4d27a26;color:#f4d27a}.area-vehicle .maintenance-row{color:#e8edf3}.area-birthdays{background:linear-gradient(180deg,#fff5fb,#fde3f2);border-color:#be185d40}.area-birthdays:before{background-image:radial-gradient(circle at 18% 18%,rgba(244,114,182,.25) 0 18px,transparent 22px),radial-gradient(circle at 78% 82%,rgba(248,113,113,.22) 0 20px,transparent 24px)}.area-weekly{background:linear-gradient(180deg,#fff,#faf6ec);border-color:#78501e33}.area-weekly:before{background-image:repeating-linear-gradient(90deg,rgba(120,80,30,.06) 0 1px,transparent 1px 28px)}.area-weekly .dash-widget-head:before,.area-album .dash-widget-head:before{content:"";position:absolute;top:-14px;left:18px;width:56px;height:16px;background:linear-gradient(180deg,#ffffff8c,#ffffff40);border:1px solid rgba(0,0,0,.06);box-shadow:0 1px 3px #00000026;transform:rotate(-3deg);border-radius:1px;opacity:.85}.area-album .dash-widget-head:before{left:auto;right:18px;transform:rotate(4deg)}.dash-widget-head{font-family:ui-rounded,SF Pro Rounded,system-ui,sans-serif}.dash-widget-head h2{font-size:.86rem;letter-spacing:.1em;color:#3a2510}.area-vehicle .dash-widget-head h2{color:#f4d27a}.todays-meals.trading-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;padding:.2rem .1rem .35rem}.area-meals .trading-card-artwork{aspect-ratio:3 / 2}.area-meals .trading-card-info strong{font-size:.74rem;-webkit-line-clamp:2}.area-meals .trading-card-ribbon{font-size:.58rem;padding:.1rem .5rem}.area-meals .trading-card-stats{font-size:.62rem}.area-notes .dash-widget-icon{background:#b453092e;color:#92400e}.area-album .album-photo,.area-album .album-thumb{border:1px solid rgba(0,0,0,.1);background:#fff;padding:4px 4px 14px;box-shadow:0 2px 5px #0000002e,0 8px 18px -8px #00000059}@media(max-width:820px){.dashboard-view{padding:1rem;border-radius:16px;height:auto;min-height:calc(100vh - 60px);overflow:visible}.todays-meals.trading-cards{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.6rem}}.dashboard-view .pickup-banner{background:linear-gradient(180deg,#fff6b8,#ffe066);border-color:#78500066;color:#5b3a00;box-shadow:0 1px #fff9 inset,0 -1px #78500033 inset,0 10px 18px -10px #3c1e058c;transform:rotate(-.4deg)}.today-board{display:flex;flex-direction:column;gap:.55rem}.today-board-add{display:flex;flex-direction:column;gap:.4rem;background:#ffffffb3;padding:.4rem .5rem .5rem;border-radius:10px;border:1px dashed rgba(120,75,30,.4)}.today-board-mode{display:inline-flex;align-self:flex-start;background:#784b1e14;border-radius:999px;padding:2px}.today-board-mode-btn{display:inline-flex;align-items:center;gap:.3rem;border:0;background:transparent;border-radius:999px;padding:.18rem .6rem;font-size:.7rem;font-weight:700;color:#6b4116;cursor:pointer;transition:background .14s ease,color .14s ease,box-shadow .14s ease}.today-board-mode-btn.active{background:#fff;color:#2a1903;box-shadow:0 1px 2px #0000001f}.today-board-row{display:grid;grid-template-columns:1fr 90px 32px;gap:.35rem}.today-board-row input,.today-board-row select{padding:.32rem .5rem;border-radius:8px;border:1px solid rgba(120,75,30,.3);background:#fff;font-size:.82rem}.today-board-feed{display:flex;flex-direction:column;gap:.4rem}.board-item{display:grid;grid-template-columns:26px 1fr auto;align-items:center;gap:.5rem;padding:.45rem .6rem;border-radius:10px;border:1px solid rgba(0,0,0,.06);background:#fff;box-shadow:0 1px 1px #0000000f,0 4px 8px -4px #0000001a;text-align:left;font-family:inherit;font-size:.82rem;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease}.board-item:hover{transform:translateY(-1px);box-shadow:0 2px 2px #00000014,0 10px 18px -8px #0000002e}.board-item-icon{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#b453091f;color:#92400e;font-size:.85rem}.board-item-body{display:flex;flex-direction:column;min-width:0}.board-item-body strong{font-size:.85rem;line-height:1.25}.board-item-body small{font-size:.66rem;color:#777}.board-item-tools{display:inline-flex;gap:.18rem}.board-item-tools button{background:transparent;border:0;padding:.1rem .4rem;border-radius:6px;cursor:pointer;font-weight:700;color:#555}.board-item-tools button:hover{background:#0000000f}.board-item-tools button.danger:hover{background:#fee2e2;color:#b91c1c}.board-task.done{opacity:.55}.board-task.done .board-item-body strong{text-decoration:line-through}.board-task{border:1px solid rgba(0,0,0,.06);cursor:default}.board-task .board-item-icon{background:#b453091f;color:#92400e;border:0;cursor:pointer;font-family:inherit;padding:0}.board-note{border-color:#ca8a0473;transform:rotate(-.2deg)}.board-note.pinned{transform:rotate(-.4deg);box-shadow:0 0 0 2px #ca8a0473 inset,0 8px 14px -6px #0003}.dashboard-view .pickup-banner{margin-bottom:.65rem;z-index:4;position:relative}.dashboard-topbar{position:relative;z-index:4;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.9rem;padding:.55rem 1rem .55rem 1.1rem;margin-bottom:.9rem;border-radius:14px;background:linear-gradient(180deg,#fff0c82e,#3c1e052e),repeating-linear-gradient(90deg,#6b3f15 0 10px,#7a4a1c 10px 11px,#5e3712 11px 22px,#7a4a1c 22px 23px);box-shadow:inset 0 1px #ffe6be66,inset 0 -2px #00000040,0 6px 14px -10px #0000008c;color:#fff7d6;font-family:ui-rounded,SF Pro Rounded,system-ui,sans-serif}.dashboard-topbar:before{content:"";position:absolute;inset:7px;border-radius:10px;border:1px solid rgba(255,230,170,.18);pointer-events:none}.dashboard-topbar>*{position:relative;z-index:1}.dashboard-topbar-title h1{margin:0;font-size:1.1rem;font-weight:800;letter-spacing:.05em;color:#fff7d6;text-shadow:0 1px 0 rgba(0,0,0,.4)}.dashboard-topbar-title span{display:block;font-size:.74rem;color:#fff7d6bf;margin-top:1px}.dashboard-topbar .pickup-banner.inline{margin:0;flex:1;transform:rotate(-1deg);font-size:.78rem;padding:.4rem .7rem;box-shadow:inset 0 1px #ffffffb3,0 4px 10px -6px #0000008c;border:1px solid #b45309;background:linear-gradient(180deg,#fff6b8,#ffe066);color:#5b3a00;width:auto;justify-self:stretch}.dashboard-topbar-actions{display:inline-flex;align-items:center;gap:.55rem;justify-content:flex-end}.dashboard-topbar-actions .family-strip{display:inline-flex;gap:.25rem;flex-wrap:wrap;background:transparent;padding:0;border:none}.dashboard-topbar .member-chip{background:#fff7d6e6;box-shadow:0 1px 2px #0000004d}.dashboard-topbar-menu{background:#fff7d6e6;border-radius:8px}@media(max-width:1024px){.dashboard-topbar{grid-template-columns:auto 1fr;grid-template-areas:"title pickup" "actions actions";gap:.6rem .9rem}.dashboard-topbar-title{grid-area:title}.dashboard-topbar .pickup-banner.inline{grid-area:pickup}.dashboard-topbar-actions{grid-area:actions;justify-content:space-between}}@media(max-width:720px){.dashboard-topbar{padding:.5rem .7rem;grid-template-columns:1fr;grid-template-areas:"title" "pickup" "actions"}.dashboard-topbar .pickup-banner.inline{transform:none;width:100%;flex-wrap:wrap;font-size:.72rem}.dashboard-topbar .pickup-banner.inline span{white-space:normal;word-break:break-word}}.dashboard-view .view-header .pickup-banner.inline{background:linear-gradient(180deg,#fff6b8,#ffe066);border:1px solid #b45309;color:#5b3a00;border-radius:999px;padding:.25rem .7rem;font-size:.74rem;font-weight:700;display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;margin:0;width:auto}.nav-tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem}.nav-tile{display:flex;align-items:center;gap:.35rem;padding:.5rem .65rem;background:#ffffffb3;border:1px solid rgba(0,0,0,.06);border-radius:10px;font-size:.78rem;font-weight:600;color:#3a2510;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,background .14s ease;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-tile:hover{background:#fffffff2;transform:translateY(-1px);box-shadow:0 3px 8px #0000001a}.album-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:.4rem}.album-featured{grid-column:1 / -1;border:0;padding:0;border-radius:10px;overflow:hidden;cursor:pointer;position:relative;background:transparent}.album-featured img{width:100%;height:160px;object-fit:cover;border-radius:10px;display:block}.album-caption{position:absolute;bottom:0;left:0;right:0;padding:.4rem .6rem;background:linear-gradient(transparent,#0009);color:#fff;font-size:.72rem;font-weight:600;border-radius:0 0 10px 10px}.album-thumbs{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:.3rem}.album-thumb{border:0;padding:0;border-radius:6px;overflow:hidden;cursor:pointer;background:transparent;aspect-ratio:1}.album-thumb img{width:100%;height:100%;object-fit:cover;border-radius:6px;display:block}.album-lightbox{max-width:90vw;max-height:85vh;display:flex;flex-direction:column;align-items:center;gap:.5rem;background:#1e140af2;border-radius:14px;padding:1rem;position:relative}.album-lightbox img{max-width:100%;max-height:70vh;border-radius:8px;object-fit:contain}.album-lightbox p{color:#fff;font-size:.85rem;margin:0}.album-lightbox .close-button{position:absolute;top:.4rem;right:.4rem;color:#fff;background:#ffffff26;border-radius:8px}.sticky-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem}.sticky-note{border-radius:4px;padding:.65rem .6rem .5rem;display:flex;flex-direction:column;gap:.4rem;box-shadow:2px 3px 8px #0000001f,0 1px 2px #0000000f;position:relative;min-height:80px;transition:transform .14s ease,box-shadow .14s ease}.sticky-note:hover{transform:translateY(-2px) rotate(0);box-shadow:3px 5px 14px #0000002e,1px 2px 4px #00000014}.sticky-note.pinned{box-shadow:0 0 0 2px #ca8a0480 inset,2px 3px 8px #00000026}.sticky-note-body{font-size:.82rem;line-height:1.35;color:#2a1903;flex:1;word-break:break-word}.sticky-note-meta{display:flex;align-items:center;justify-content:space-between;gap:.3rem}.sticky-note-meta small{font-size:.68rem;color:#00000073}.sticky-note-meta div{display:inline-flex;gap:.15rem}.sticky-note-meta button{background:transparent;border:0;padding:.1rem .3rem;border-radius:4px;cursor:pointer;font-weight:700;color:#0006;font-size:.75rem}.sticky-note-meta button:hover{background:#00000014}.sticky-note-meta button.danger:hover{background:#fee2e2;color:#b91c1c}.sticky-add{display:grid;grid-template-columns:1fr 80px 32px;gap:.3rem;margin-bottom:.5rem}.sticky-add input,.sticky-add select{padding:.32rem .5rem;border-radius:8px;border:1px solid rgba(120,75,30,.3);background:#fff;font-size:.82rem}.area-board{background:linear-gradient(180deg,#fff,#f4ecdc);border-color:#784b1e52;border-width:2px;box-shadow:0 1px #ffffffd9 inset,0 -1px #3c1e050f inset,0 1px 2px #0000000d,0 18px 28px -16px #2814008c,0 28px 44px -28px #28140066}.area-board .dash-widget-head h2{font-size:.92rem;color:#1a0e02}.area-nav:after{background:radial-gradient(circle at 35% 30%,#e0f2ff,#60a5fa 32%,#1d4ed8 75%,#1e1b4b)}.area-nav .dash-widget-body{padding:.2rem 0}.kupovina-widget{padding:0}.kupovina-toggle{display:flex;align-items:center;gap:.4rem;width:100%;border:0;background:transparent;cursor:pointer;padding:.7rem .85rem;font:inherit;text-align:left;border-bottom:1px solid rgba(0,0,0,.05)}.kupovina-toggle h2{margin:0;flex:1;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.kupovina-chevron{transition:transform .2s cubic-bezier(.2,.9,.3,1.2);flex-shrink:0;color:var(--muted, #777)}.kupovina-toggle.open .kupovina-chevron{transform:rotate(180deg)}.kupovina-rolldown{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s cubic-bezier(.2,.9,.3,1.2)}.kupovina-rolldown.open{grid-template-rows:1fr}.kupovina-rolldown-inner{min-height:0;overflow:hidden}.dash-receipt{margin:.7rem;background:#fdfaf1;border:1px solid rgba(0,0,0,.1);border-radius:4px;padding:.85rem .9rem;font-family:Courier New,Menlo,Consolas,monospace;font-size:.74rem;line-height:1.4;color:#1f1a14;max-height:320px;overflow-y:auto;filter:drop-shadow(0 4px 12px rgba(0,0,0,.1))}.dash-receipt .receipt-header{text-align:center}.dash-receipt .receipt-header strong{font-size:.9rem;letter-spacing:.16em}.dash-receipt .receipt-header div{font-size:.66rem;color:#5c4f3b}.dash-receipt .receipt-dashed{border-top:1px dashed #5c4f3b;margin:.45rem 0}.dash-receipt .receipt-dashed.double{border-top:2px double #5c4f3b}.dash-receipt .receipt-meta{display:flex;justify-content:space-between;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.dash-receipt .receipt-meta.small{font-size:.62rem;opacity:.75;padding-top:.3rem}.dash-receipt .receipt-empty{text-align:center;padding:1.2rem 0;color:#7c6a55;font-style:italic}.dash-receipt .receipt-items{list-style:none;padding:0;margin:.25rem 0}.dash-receipt .receipt-items li{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;padding:.05rem 0}.dash-receipt .receipt-items li span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-bottom:1px dotted rgba(92,79,59,.3)}.dash-receipt .receipt-items li em{font-style:normal;font-variant-numeric:tabular-nums;white-space:nowrap}.event-row{display:grid;grid-template-columns:10px 1fr;gap:10px}.event-row>span{border-radius:6px}.calendar-day.today,.school-day.today,.meal-day.today,.week-card.today,.task-item.today{outline:3px solid var(--coral);outline-offset:2px;border-color:var(--coral);background:linear-gradient(180deg,#fff1bde6,#fffffff5),#fffaf0;box-shadow:0 18px 36px #ff7a592e}.calendar-pager{display:flex;align-items:center;gap:10px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:10px;overflow-x:auto;padding-bottom:4px}.day-agenda{display:grid;gap:10px}.calendar-day{min-height:142px;border:1px solid #e8dcc8;border-radius:8px;background:#ffffffdb;padding:11px;box-shadow:0 8px 18px #313c380d}.day-title{display:flex;justify-content:space-between;gap:8px;margin-bottom:10px}.day-title span{color:var(--muted);font-size:.78rem}.event-stack{display:grid;gap:4px;max-height:160px;overflow-y:auto}.event-pill{border-left:4px solid var(--teal);border-radius:6px;background:#fff8e9;padding:.15rem .4rem;display:grid;gap:1px;font-size:.68rem;line-height:1.1}.event-pill span{color:var(--muted);font-size:.68rem;line-height:1.1}.year-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.month-tile{min-height:92px;background:linear-gradient(135deg,#fff,#fff7e2);border:1px solid #e8dcc8;border-radius:8px;padding:12px;display:grid;align-content:space-between}.month-tile strong{text-transform:capitalize}.month-tile span{color:var(--muted)}.day-column{background:var(--surface, #ffffff);border-radius:14px;padding:.55rem .45rem .65rem;box-shadow:0 1px 2px #0000000a,0 4px 12px -6px #0000000f;border:1px solid rgba(0,0,0,.04);display:flex;flex-direction:column;gap:.4rem;min-width:0}.birthday-list{display:flex;flex-direction:column;gap:.4rem}.birthday-row{display:grid;grid-template-columns:44px 1fr auto;gap:.5rem;align-items:center;padding:.45rem .6rem;background:#ffffff8c;border-radius:10px;border-left:4px solid}.birthday-avatar{width:44px;height:44px;border-radius:999px;border:2px solid;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#fff;font-weight:700}.birthday-avatar img{width:100%;height:100%;object-fit:cover}.birthday-row strong{display:block;font-size:.95rem}.birthday-row small{font-size:.72rem;color:var(--muted, #777)}.birthday-row b{font-size:.85rem;font-variant-numeric:tabular-nums;background:#0000000d;padding:.2rem .55rem;border-radius:999px}.birthday-row b.soon{background:#fef3c7;color:#92400e}.trip-modal{max-width:540px}.trip-modal h2{margin:0 0 .2rem}.trip-modal .muted{margin:0 0 .6rem}.trip-archive-tabs{display:inline-flex;gap:.3rem}.trip-archive-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.7rem}.trip-card{background:#fffaf0b3;border:1px solid rgba(180,83,9,.18);border-radius:12px;padding:.65rem .75rem;display:flex;flex-direction:column;gap:.45rem}.trip-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.4rem}.trip-card-head strong{display:block;font-size:.95rem;font-family:Georgia,serif}.trip-card-head small{display:block;font-size:.7rem;color:var(--muted, #777);margin-top:.1rem}.trip-card-rating{display:inline-flex}.trip-photos{display:flex;flex-wrap:wrap;gap:.3rem}.trip-photo{width:70px;height:70px;border-radius:6px;overflow:hidden;border:0;padding:0;cursor:pointer;background:#0000000d;position:relative}.trip-photo img{width:100%;height:100%;object-fit:cover;display:block}.trip-photo-upload{width:70px;height:70px;border:2px dashed rgba(180,83,9,.4);border-radius:6px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:.75rem;color:#92400e;background:#fff7eb66}.trip-photo-upload:hover{background:#fff7ebcc}.itinerary{border:1px dashed rgba(180,83,9,.3);border-radius:8px;padding:.4rem .5rem;background:#fffaf080}.itinerary>summary{cursor:pointer;font-size:.8rem;color:#92400e;font-weight:600;padding:.15rem 0}.itinerary-body{margin-top:.5rem;display:flex;flex-direction:column;gap:.5rem}.itinerary-day{background:#ffffff8c;border-radius:8px;padding:.45rem .55rem;border:1px solid rgba(0,0,0,.04)}.itinerary-day.has-overlap{border-color:#dc262666;background:#fee2e266}.itinerary-day header{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem}.itinerary-day header strong{font-size:.84rem;flex:1}.itinerary-stops{display:flex;flex-direction:column;gap:.3rem}.itinerary-stop{display:grid;grid-template-columns:70px 1fr 1fr 64px auto auto;gap:.3rem;align-items:center}.itinerary-stop input{font-size:.78rem;padding:.28rem .4rem;border:1px solid rgba(0,0,0,.08);border-radius:6px;background:#fff}.itinerary-stop .itinerary-loc{min-width:0}.itinerary-stop .itinerary-min{text-align:right;font-variant-numeric:tabular-nums}@media(max-width:720px){.itinerary-stop{grid-template-columns:1fr 1fr}}.smart-schedule-modal{width:min(94vw,820px);max-height:92vh;display:flex;flex-direction:column;gap:.85rem;padding:1rem 1.1rem 1.1rem}.smart-schedule-head h2{margin:0 0 .25rem;font-size:1.1rem}.smart-schedule-head p{margin:0;color:#666;font-size:.8rem}.smart-schedule-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.smart-schedule-paste textarea{width:100%;font-family:ui-monospace,JetBrains Mono,monospace;font-size:.82rem;resize:vertical;border-radius:8px;border:1px solid rgba(0,0,0,.18);padding:.5rem .6rem}.smart-schedule-meta{display:flex;flex-direction:column;gap:.45rem}.smart-schedule-meta label{display:flex;flex-direction:column;gap:.25rem;font-size:.78rem}.smart-schedule-meta input,.smart-schedule-meta select{padding:.32rem .5rem;border-radius:8px;border:1px solid rgba(0,0,0,.18);font-size:.82rem}.smart-schedule-meta .inline-check{flex-direction:row;align-items:center;gap:.4rem;font-size:.78rem;cursor:pointer}.smart-schedule-preview{background:#f7f2e6;border-radius:10px;padding:.6rem .75rem;border:1px dashed rgba(120,75,30,.35);overflow-y:auto;max-height:32vh}.smart-schedule-preview h3{margin:0 0 .5rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:#6b4116}.smart-schedule-sessions{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.smart-schedule-sessions li{display:grid;grid-template-columns:auto 1fr auto;gap:.6rem;align-items:center;background:#fff;border:1px solid rgba(120,75,30,.25);border-radius:8px;padding:.35rem .6rem}.session-days{display:inline-flex;gap:.18rem;flex-wrap:wrap}.session-day{background:#b45309;color:#fff7d6;font-size:.66rem;font-weight:800;letter-spacing:.08em;padding:.1rem .42rem;border-radius:999px;font-variant-numeric:tabular-nums}.session-time{font-family:ui-monospace,JetBrains Mono,monospace;font-weight:700;font-size:.85rem;color:#3a2510}.session-loc{font-size:.74rem;color:#6b4116}.smart-schedule-foot{display:flex;justify-content:flex-end;gap:.5rem;border-top:1px solid rgba(0,0,0,.06);padding-top:.6rem}@media(max-width:720px){.smart-schedule-grid{grid-template-columns:1fr}}.meal-week-controls{display:flex;align-items:center;gap:10px;padding:8px 12px 0}.autofill-status{font-size:.82rem;color:var(--muted);font-style:italic}.meal-highlight{display:grid;grid-template-columns:112px 1fr;gap:14px;align-items:center}.meal-highlight img{width:118px;height:90px;object-fit:cover;border-radius:8px;box-shadow:0 12px 24px #5440241f}.meal-highlight p{margin:6px 0 0;color:var(--muted)}.meal-week{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:12px;overflow-x:auto}.markdown-export{margin-top:12px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace}.generated-recipes{display:grid;gap:10px;margin-top:14px}.generated-recipes>span{color:var(--muted);font-size:.82rem;font-weight:900}.generated-recipes article{border:1px solid #e8dcc8;border-radius:8px;background:#fffaf0;padding:12px;display:grid;gap:8px}.generated-recipes small{color:var(--muted)}.meal-day,.recipe-card{border:1px solid #e8dcc8;border-radius:8px;background:#ffffffe6}.meal-day{padding:12px;display:grid;gap:8px;box-shadow:0 8px 20px #313c380f}.meal-day>span{color:var(--muted);font-weight:900;font-size:.78rem}.meal-day img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:8px;box-shadow:0 10px 20px #5440241a}.recipe-card:hover,.meal-day:hover,.school-day:hover,.calendar-day:hover{border-color:#f1c870;box-shadow:0 14px 30px #313c381a;transform:translateY(-2px)}.todays-meal-row{display:grid;grid-template-columns:80px 1fr;gap:.6rem;align-items:start}.todays-meal-row .meal-label{font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted, #777);padding-top:.5rem}@media(max-width:720px){.todays-meal-row{grid-template-columns:1fr}.todays-meal-row .meal-label{padding-top:0}}.meal-type-tag{align-self:flex-start;background:#b453091f;color:#92400e;font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.12rem .4rem;border-radius:999px}.recipe-thumb{position:relative;overflow:hidden;border-radius:8px;background:#0000000d;display:block}.recipe-thumb img{width:100%;height:100%;display:block;object-fit:cover}.ai-regen-overlay{position:absolute;top:4px;right:4px;display:inline-flex;align-items:center;gap:.2rem;padding:.2rem .45rem;font-size:.65rem;font-weight:700;letter-spacing:.04em;background:#0f0f14c7;color:#fff5e0;border:1px solid rgba(245,158,11,.55);border-radius:999px;cursor:pointer;opacity:0;transform:translateY(-2px);transition:opacity .16s ease,transform .16s ease,background .16s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:auto;z-index:3}.recipe-thumb:hover .ai-regen-overlay,.recipe-thumb:focus-within .ai-regen-overlay,.ai-regen-overlay.busy{opacity:1;transform:translateY(0)}.ai-regen-overlay:hover{background:#f59e0bf2;color:#1a1a1a}.ai-regen-overlay.busy{animation:ai-pulse 1.2s ease-in-out infinite}.ai-regen-error{position:absolute;bottom:4px;left:4px;right:4px;background:#dc2626eb;color:#fff;font-size:.6rem;padding:.15rem .35rem;border-radius:6px;text-align:center}.flip-card.portrait,.flip-card.portrait .flip-card-inner{min-height:240px}.flip-card.portrait .flip-face{padding:.45rem;gap:.35rem}.basket-sidebar{position:fixed;right:18px;bottom:18px;z-index:90;display:flex;flex-direction:column-reverse;align-items:flex-end;gap:.5rem;max-height:calc(100vh - 36px);width:auto;pointer-events:none}.basket-sidebar>*{pointer-events:auto}.basket-sidebar.closed{width:auto}.basket-sidebar .basket-receipt{width:min(360px,92vw);max-height:calc(100vh - 100px);overflow-y:auto;box-shadow:0 18px 36px -12px #00000073,0 0 0 1px #00000014;border-radius:14px;transform-origin:bottom right;animation:basket-pop-in .2s cubic-bezier(.2,.9,.3,1.2)}.basket-tab{position:relative;display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .7rem;background:#1a1a1a;color:#f5f5f5;border:0;border-radius:12px;cursor:pointer;font-size:.78rem;font-weight:600;align-self:flex-start;transition:transform .2s cubic-bezier(.2,.9,.3,1.2),box-shadow .2s cubic-bezier(.2,.9,.3,1.2)}.basket-tab:hover{transform:translateY(-1px);box-shadow:0 8px 18px -12px #00000073}.basket-tab-count{background:#f59e0b;color:#1a1a1a;border-radius:999px;padding:.05rem .45rem;font-size:.72rem}.basket-tab-total{font-variant-numeric:tabular-nums}.basket-receipt{background:#fdfaf1;border:1px solid rgba(0,0,0,.1);border-radius:4px;padding:1rem;font-family:Courier New,Menlo,Consolas,monospace;font-size:.78rem;line-height:1.4;color:#1f1a14;max-height:calc(100vh - 160px);overflow-y:auto;background-image:radial-gradient(circle at 6px 0px,transparent 5px,#fdfaf1 5px),radial-gradient(circle at 6px 100%,transparent 5px,#fdfaf1 5px);background-size:12px 100%;background-position:0 0,0 100%;background-repeat:repeat-x;position:relative;filter:drop-shadow(0 4px 14px rgba(0,0,0,.1))}.basket-receipt:before,.basket-receipt:after{content:"";position:absolute;left:0;right:0;height:8px;background:radial-gradient(circle at 6px 4px,transparent 4px,#fdfaf1 4.5px) 0 0 / 12px 8px repeat-x;pointer-events:none}.basket-receipt:before{top:-8px;background-image:radial-gradient(circle at 6px 8px,transparent 4px,#fdfaf1 4.5px)}.basket-receipt:after{bottom:-8px;background-image:radial-gradient(circle at 6px 0px,transparent 4px,#fdfaf1 4.5px)}.receipt-header{text-align:center}.receipt-header strong{font-size:.95rem;letter-spacing:.16em}.receipt-header div{font-size:.7rem;color:#5c4f3b}.receipt-dashed{border-top:1px dashed #5c4f3b;margin:.5rem 0}.receipt-dashed.double{border-top:2px double #5c4f3b}.receipt-meta{display:flex;justify-content:space-between;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.receipt-meta.small{font-size:.65rem;opacity:.75;padding-top:.25rem}.receipt-empty{text-align:center;padding:1.5rem 0}.receipt-section{margin:.5rem 0 .75rem}.receipt-section-title{display:flex;justify-content:space-between;font-size:.78rem;font-weight:700;letter-spacing:.04em}.receipt-section-meta{font-size:.7rem;color:#7c6a55;font-style:italic;margin-bottom:.25rem}.receipt-items{list-style:none;padding:0;margin:0 0 .25rem}.receipt-items li{display:flex;justify-content:space-between;align-items:baseline;font-size:.74rem;padding:.05rem 0;gap:.5rem}.receipt-items li span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-bottom:1px dotted rgba(92,79,59,.3)}.receipt-items li em{font-style:normal;font-variant-numeric:tabular-nums;white-space:nowrap}.receipt-subtotal{display:flex;justify-content:space-between;font-size:.72rem;font-weight:700;border-top:1px dashed rgba(92,79,59,.5);padding-top:.2rem;margin-top:.2rem}.receipt-subtotal em{font-style:normal;font-variant-numeric:tabular-nums}.receipt-section-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.2rem}.receipt-section-actions .text-button{font-size:.65rem;color:#b91c1c;background:transparent;border:0;padding:0;cursor:pointer;text-decoration:underline dotted}.receipt-total{display:flex;justify-content:space-between;font-size:1.05rem;font-weight:800;letter-spacing:.05em;padding:.3rem 0}.receipt-total em{font-style:normal;font-variant-numeric:tabular-nums}.receipt-details{margin-top:.5rem}.receipt-details summary{cursor:pointer;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#5c4f3b;margin-bottom:.3rem}.receipt-footer{text-align:center;font-size:.7rem;letter-spacing:.08em;color:#5c4f3b;margin-top:.5rem}.receipt-footer p{margin:.1rem 0}.basket-bottom-actions{display:flex;justify-content:center;margin-top:.5rem}.basket-bottom-actions .secondary-button{font-size:.75rem;padding:.4rem .9rem}@media(max-width:980px){.basket-sidebar{position:fixed;inset:auto 0 0;max-height:60vh;z-index:50;background:#fffffff5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:.5rem;border-top:1px solid rgba(0,0,0,.1);border-radius:16px 16px 0 0}.basket-sidebar.closed{width:100%}.basket-tab{align-self:center}.basket-receipt{max-height:50vh}}.collector-search{flex:1;min-width:200px;display:inline-flex;align-items:center;gap:.4rem;background:#0000000a;border-radius:10px;padding:.45rem .7rem;color:#5b4a36}.collector-search input{background:transparent;border:0;outline:0;flex:1;font-size:.85rem;color:inherit}.meal-highlight.clickable{cursor:pointer;background:transparent;border:0;padding:0;text-align:left;width:100%;display:grid;grid-template-columns:auto 1fr;gap:.6rem;align-items:center;border-radius:12px;transition:background .12s ease}.meal-highlight.clickable:hover{background:#00000008}.recipe-modal{max-width:520px}.recipe-modal .modal-thumb{margin-bottom:.5rem}.modal-ingredients{list-style:none;padding:0;margin:0 0 .75rem}.modal-ingredients li{display:flex;justify-content:space-between;border-bottom:1px dotted rgba(0,0,0,.1);padding:.2rem 0;font-size:.9rem}.modal-ingredients li em{font-style:normal;font-variant-numeric:tabular-nums;color:#92400e;font-size:.85rem}.meal-highlight.clickable.empty{grid-template-columns:1fr;background:#00000008;border:1.5px dashed rgba(0,0,0,.15);padding:.5rem .7rem;color:#777}.meal-highlight.clickable.empty strong{color:#555}.rating-block{background:#fff7eb99;border:1px solid rgba(180,83,9,.2);border-radius:10px;padding:.55rem .7rem;margin:.6rem 0}.rating-block>strong{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:#92400e;margin-bottom:.3rem}.rating-rows{display:flex;flex-direction:column;gap:.2rem}.rating-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.rating-name{font-size:.82rem;color:var(--member-color, #5b4a36);font-weight:600}.rating-stars{display:inline-flex}.rating-star{background:transparent;border:0;color:#b453094d;font-size:1.1rem;cursor:pointer;padding:0 .05rem;line-height:1;transition:transform 80ms ease}.rating-star:hover{transform:scale(1.15)}.rating-star.on{color:#f59e0b;text-shadow:0 0 4px rgba(245,158,11,.4)}.category-chips{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.6rem;padding:.5rem .6rem;background:#00000008;border-radius:10px}.category-chips .chip{font-size:.74rem;padding:.32rem .65rem}.trading-card-slot{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:.4rem;--card-glow-1: #fde68a;--card-glow-2: #f59e0b;--card-frame-1: #a16207;--card-frame-2: #fef3c7}.trading-card-slot[data-meal-type=dorucak]{--card-glow-1: #fde68a;--card-glow-2: #f59e0b;--card-frame-1: #b45309;--card-frame-2: #fff7d6}.trading-card-slot[data-meal-type=rucak]{--card-glow-1: #fdba74;--card-glow-2: #ea580c;--card-frame-1: #9a3412;--card-frame-2: #fef0e3}.trading-card-slot[data-meal-type=vecera]{--card-glow-1: #c4b5fd;--card-glow-2: #6366f1;--card-frame-1: #3730a3;--card-frame-2: #eef0ff}.trading-card-ribbon{align-self:center;font-size:.66rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;padding:.18rem .7rem;border-radius:999px;color:var(--card-frame-1);background:var(--card-frame-2);box-shadow:inset 0 0 0 1px var(--card-frame-1),0 1px 2px #0000001a;font-family:ui-rounded,SF Pro Rounded,system-ui,sans-serif}.recipe-trading-card{position:relative;background:transparent;border:0;padding:0;cursor:pointer;display:flex;flex-direction:column;gap:.45rem;padding:.55rem .55rem .65rem;border-radius:14px;color:#2a1903;text-align:left;background:linear-gradient(135deg,var(--card-frame-2) 0%,#ffffff 50%,var(--card-frame-2) 100%);box-shadow:0 0 0 2px var(--card-frame-1),0 0 0 4px #fffc,0 0 0 5px var(--card-frame-1),0 1px 1px #ffffffe6 inset,0 -1px 1px #0000001f inset,0 10px 22px -10px #3c1e058c;transform:perspective(700px) rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg));transition:transform .22s cubic-bezier(.2,.9,.3,1.2),box-shadow .22s ease,filter .22s ease;transform-style:preserve-3d;will-change:transform;isolation:isolate}.recipe-trading-card:before{content:"";position:absolute;inset:0;border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.4) 0%,transparent 30%,transparent 70%,rgba(0,0,0,.08) 100%);pointer-events:none}.recipe-trading-card:hover{filter:drop-shadow(0 0 12px var(--card-glow-2));box-shadow:0 0 0 2px var(--card-frame-1),0 0 0 4px #fffffff2,0 0 0 5px var(--card-frame-1),0 1px 1px #ffffffe6 inset,0 -1px 1px #0000001f inset,0 18px 30px -10px #3c1e058c,0 0 28px -4px var(--card-glow-2)}.trading-card-artwork{position:relative;aspect-ratio:3 / 4;border-radius:8px;overflow:hidden;background:radial-gradient(circle at 30% 30%,var(--card-glow-1) 0%,var(--card-glow-2) 100%);box-shadow:inset 0 0 0 2px var(--card-frame-1),inset 0 1px #ffffff80,inset 0 -8px 16px #00000040}.trading-card-artwork .recipe-thumb,.trading-card-thumb,.trading-card-thumb img,.trading-card-artwork img{width:100%!important;height:100%!important;object-fit:cover;border-radius:0!important;display:block;filter:saturate(1.08) contrast(1.04)}.trading-card-artwork.empty-art{display:grid;place-items:center;color:var(--card-frame-1);opacity:.6}.trading-card-foil{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--foil-x, 50%) var(--foil-y, 50%),rgba(255,255,255,.55) 0%,rgba(255,255,255,0) 30%),linear-gradient(120deg,#ff009600,#00c8ff2e,#ffdc002e,#ff00c82e,#00ffc800);mix-blend-mode:color-dodge;opacity:0;transition:opacity .2s ease}.recipe-trading-card:hover .trading-card-foil{opacity:.75}.trading-card-corner{position:absolute;top:0;right:0;width:26px;height:26px;background:linear-gradient(135deg,transparent 50%,var(--card-frame-1) 50%);pointer-events:none}.trading-card-info{display:flex;flex-direction:column;gap:.2rem;padding:0 .1rem .05rem}.trading-card-info strong{font-size:.86rem;font-weight:800;letter-spacing:.01em;line-height:1.15;color:var(--card-frame-1);font-family:ui-rounded,SF Pro Rounded,system-ui,sans-serif;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.trading-card-stats{display:flex;gap:.4rem;flex-wrap:wrap;font-size:.7rem;margin-top:.15rem}.trading-card-stats em{font-style:normal;background:#ffffffb3;border:1px solid var(--card-frame-1);color:var(--card-frame-1);border-radius:999px;padding:.05rem .45rem;font-weight:700;font-variant-numeric:tabular-nums}.recipe-trading-card.empty{filter:none;box-shadow:0 0 0 2px #0000001f,0 0 0 4px #fffc,0 0 0 5px #0000001a,0 8px 16px -8px #0000004d;background:linear-gradient(180deg,#ffffffd9,#f5f0e6d9)}.recipe-trading-card.empty .trading-card-info strong{color:#555}.todays-meals.trading-cards .meal-label,.todays-meals.trading-cards .todays-meal-row{display:none}.recipe-card-steps{list-style:none;padding:0;margin:0;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.4rem;font-size:.82rem}.recipe-card-steps li{display:grid;grid-template-columns:22px 1fr;gap:.5rem;align-items:start}.recipe-card-steps .step-num{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#b45309;color:#fff7d6;font-size:.72rem;font-weight:800;font-variant-numeric:tabular-nums}.recipe-card{display:flex;flex-direction:column;border:1px solid #e8dcc8;border-radius:10px;background:#fffdf8;overflow:hidden;cursor:pointer;transition:box-shadow .14s ease,transform .14s ease,border-color .14s ease;-webkit-user-select:none;user-select:none}@media(prefers-reduced-motion:reduce){.recipe-card{transition:none}}.recipe-card:hover,.recipe-card:focus-visible{border-color:#f1c870;box-shadow:0 6px 20px #313c381a;transform:translateY(-2px);outline:none}@media(prefers-reduced-motion:reduce){.recipe-card:hover,.recipe-card:focus-visible{transform:none}}.recipe-card:focus-visible{outline:2px solid #f59e0b;outline-offset:2px}.recipe-card--compact{font-size:.82rem}.recipe-card--compact .recipe-card-img-wrap{aspect-ratio:4 / 3;max-height:90px}.recipe-card--compact .recipe-card-title{font-size:.8rem;-webkit-line-clamp:2}.recipe-card--compact .recipe-card-body-inner{padding:.35rem .45rem .2rem;gap:.18rem}.recipe-card--compact .recipe-card-actions{padding:.25rem .45rem .35rem}.recipe-card-img-wrap{position:relative;aspect-ratio:3 / 2;overflow:hidden;background:#0000000d;flex-shrink:0}.recipe-card-img{width:100%;height:100%;object-fit:cover;display:block}.recipe-img-placeholder{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);font-size:2rem;color:#b45309}.recipe-img-placeholder--large{font-size:3.5rem;min-height:180px}.recipe-card-img-error{position:absolute;bottom:4px;left:4px;right:4px;background:#dc2626eb;color:#fff;font-size:.62rem;padding:.15rem .35rem;border-radius:6px;text-align:center}.img-gen-btn{position:absolute;bottom:6px;left:6px;display:inline-flex;align-items:center;gap:.3rem;padding:.22rem .55rem;font-size:.68rem;font-weight:700;background:#0f0f14c7;color:#fff5e0;border:1px solid rgba(245,158,11,.55);border-radius:999px;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .16s ease;pointer-events:auto}.img-gen-btn:hover:not(:disabled){background:#f59e0bf2;color:#1a1a1a}.img-gen-btn:disabled{opacity:.7;cursor:not-allowed}.img-gen-btn--overlay{bottom:10px;left:10px;font-size:.75rem;padding:.28rem .65rem}.img-gen-btn--overlay.busy{animation:ai-pulse 1.2s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.img-gen-btn--overlay.busy{animation:none}}.recipe-card-body-inner{flex:1;display:flex;flex-direction:column;gap:.25rem;padding:.5rem .6rem .3rem}.recipe-card-title{margin:0;font-family:Georgia,Times New Roman,serif;font-size:.92rem;line-height:1.2;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recipe-card-meta{display:flex;align-items:center;gap:.3rem;font-size:.7rem;color:#7c6a55;flex-wrap:wrap}.recipe-card-allergen-dots{display:flex;gap:.2rem;flex-wrap:wrap}.allergen-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#f59e0b;opacity:.75;flex-shrink:0}.allergen-dot--more{background:#b91c1c}.recipe-card-tags{display:flex;flex-wrap:wrap;gap:.2rem}.recipe-card-actions{display:flex;gap:.3rem;padding:.3rem .6rem .5rem;flex-wrap:wrap;border-top:1px solid rgba(0,0,0,.05);background:#00000004}.recipe-card-actions .secondary-button{font-size:.7rem;padding:.22rem .55rem;flex:1;min-width:60px;text-align:center}.recipe-detail-backdrop{position:fixed;inset:0;background:#00000073;z-index:200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.recipe-detail-drawer{position:fixed;top:0;right:0;bottom:0;width:min(480px,96vw);z-index:201;background:#fffdf8;box-shadow:-12px 0 48px #00000040;overflow-y:auto;display:flex;flex-direction:column;gap:.6rem;padding:1.25rem 1rem 2rem;animation:drawer-slide-in .22s cubic-bezier(.2,.9,.3,1) both}@keyframes drawer-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@media(prefers-reduced-motion:reduce){.recipe-detail-drawer{animation:none}}@media(max-width:600px){.recipe-detail-drawer{inset:auto 0 0;width:100%;max-height:92dvh;border-radius:18px 18px 0 0;animation:sheet-slide-up .22s cubic-bezier(.2,.9,.3,1) both}@keyframes sheet-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}}@media(max-width:600px)and (prefers-reduced-motion:reduce){.recipe-detail-drawer{animation:none}}.recipe-detail-close{position:absolute;top:12px;right:12px;z-index:2}.recipe-detail-img-wrap{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:10px;overflow:hidden;background:linear-gradient(135deg,#fef3c7,#fde68a);flex-shrink:0}.recipe-detail-img{width:100%;height:100%;object-fit:cover;display:block}.recipe-detail-header{display:flex;flex-direction:column;gap:.3rem}.recipe-detail-title{margin:0;font-size:1.25rem;font-weight:800;font-family:Georgia,Times New Roman,serif;letter-spacing:-.01em;line-height:1.15;color:#2a1903}.recipe-detail-meta{display:flex;align-items:center;gap:.4rem;font-size:.82rem;color:#7c6a55;flex-wrap:wrap}.recipe-detail-allergens{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;font-size:.74rem}.allergens-label{color:#92400e;font-weight:700;font-size:.72rem}.allergen-badge{background:#fef3c7;border:1px solid #f59e0b;color:#92400e;border-radius:999px;padding:.08rem .45rem;font-size:.68rem;font-weight:600}.recipe-detail-section{display:flex;flex-direction:column;gap:.3rem}.recipe-detail-section h3{margin:0;font-size:.74rem;text-transform:uppercase;letter-spacing:.1em;color:#92400e}.recipe-detail-hint{font-size:.82rem;color:#7c6a55;font-style:italic;margin:0;padding:.4rem .6rem;background:#b4530912;border-radius:8px;border-left:3px solid rgba(180,83,9,.3)}.recipe-detail-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto;padding-top:.6rem;border-top:1px solid rgba(0,0,0,.07)}.recipe-detail-actions .secondary-button{flex:1;min-width:80px;text-align:center}.recipe-detail-actions .danger{color:#b91c1c;border-color:#b91c1c59}.recipe-picker-backdrop{z-index:300}.recipe-picker{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);z-index:301;width:min(680px,95vw);max-height:85dvh;background:#fffdf8;border-radius:16px;box-shadow:0 24px 64px -16px #00000073;display:flex;flex-direction:column;overflow:hidden;animation:picker-pop-in .18s cubic-bezier(.2,.9,.3,1.1) both}@keyframes picker-pop-in{0%{opacity:0;transform:translate(-50%,-48%) scale(.97)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@media(prefers-reduced-motion:reduce){.recipe-picker{animation:none}}@media(max-width:600px){.recipe-picker{inset:auto 0 0;transform:none;width:100%;max-height:90dvh;border-radius:18px 18px 0 0;animation:sheet-slide-up .2s cubic-bezier(.2,.9,.3,1) both}}.recipe-picker-header{display:flex;align-items:center;gap:.6rem;padding:1rem 1rem .6rem;border-bottom:1px solid rgba(0,0,0,.07);flex-shrink:0}.recipe-picker-header h2{margin:0;font-size:1rem;font-weight:700;flex:1}.recipe-picker-search{margin:.5rem .75rem;flex-shrink:0}.recipe-picker-grid{flex:1;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.6rem;padding:.5rem .75rem 1rem;align-content:start}.recipe-picker-empty{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2.5rem 1rem;color:#7c6a55;text-align:center}@keyframes ai-pulse{0%,to{opacity:.85}50%{opacity:.45}}.weekly-plan{display:flex;flex-direction:column;gap:.75rem;padding:.5rem 0}.meal-tab-content{flex:1;overflow-x:hidden;overflow-y:auto;padding:0 .5rem 1rem}.autofill-summary{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.3rem;font-size:.78rem}.autofill-list{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:.2rem .6rem}.autofill-list li{color:var(--muted, #7c6a55);font-size:.74rem}.meal-matrix-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.meal-matrix{display:grid;grid-template-columns:90px repeat(7,minmax(130px,1fr));gap:4px;min-width:0}.meal-matrix-corner{background:transparent}.meal-matrix-day-header{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.35rem .25rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#7c6a55;text-align:center}.meal-matrix-day-header--today{color:#b45309}.meal-matrix-day-name{font-size:.7rem}.meal-type-label-cell{position:sticky;left:0;z-index:2;background:#fffdf8;display:flex;align-items:center;justify-content:flex-end;padding:.3rem .5rem .3rem 0;border-right:1px solid rgba(0,0,0,.07)}.meal-type-label-text{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#92400e}.meal-cell{min-height:80px;border:1px solid rgba(0,0,0,.06);border-radius:8px;background:#fffdf8;overflow:hidden}.meal-cell--today{border-color:#b453094d;background:#fef3c759}.meal-cell--empty{display:flex;align-items:center;justify-content:center}.meal-cell-add{width:100%;height:100%;min-height:80px;background:transparent;border:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;color:#c08a4a;transition:background .12s ease,color .12s ease;border-radius:8px}.meal-cell-add:hover,.meal-cell-add:focus-visible{background:#b4530914;color:#92400e;outline:none}@media(prefers-reduced-motion:reduce){.meal-cell-add{transition:none}}.meal-cell-add-icon{font-size:1.4rem;line-height:1;font-weight:300}.meal-cell-add-label{font-size:.62rem;font-weight:600;letter-spacing:.04em}.meal-per-day{display:none}@media(max-width:600px){.meal-matrix-wrap{display:none}.meal-per-day{display:flex;flex-direction:column;gap:.75rem}}.meal-day-section{border:1px solid rgba(0,0,0,.07);border-radius:12px;overflow:hidden;background:#fffdf8}.meal-day-section--today{border-color:#b453094d}.meal-day-section-title{display:flex;align-items:center;gap:.4rem;margin:0;padding:.5rem .75rem;font-size:.85rem;font-weight:700;background:#00000008;border-bottom:1px solid rgba(0,0,0,.05)}.meal-day-meals{display:flex;flex-direction:column;gap:0}.meal-day-slot{display:grid;grid-template-columns:68px 1fr;gap:.5rem;align-items:start;padding:.4rem .75rem;border-bottom:1px solid rgba(0,0,0,.04)}.meal-day-slot:last-child{border-bottom:0}.meal-day-slot-label{font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#92400e;padding-top:.4rem}.recipe-box-view{display:flex;flex-direction:column;gap:.75rem}.recipe-filter-bar{display:flex;flex-direction:column;gap:.5rem;padding:.6rem .75rem;background:#00000005;border-radius:12px;border:1px solid rgba(0,0,0,.05)}.recipe-filter-search{max-width:420px}.recipe-filter-chips{display:flex;flex-wrap:wrap;gap:.3rem}.recipe-filter-chips--allergens .chip--allergen,.recipe-filter-chips--tags .chip{font-size:.7rem;padding:.22rem .55rem}.chip-count{background:#0000001a;border-radius:999px;padding:.02rem .35rem;font-size:.65rem;font-variant-numeric:tabular-nums}.chip.active .chip-count{background:#fff3}.recipe-filter-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.recipe-filter-count{font-size:.78rem;color:var(--muted, #7c6a55);flex:1}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.recipe-box-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:3rem 1rem;color:#7c6a55;text-align:center}.batch-progress-panel{background:#f59e0b12;border:1px solid rgba(245,158,11,.25);border-radius:10px;padding:.6rem .75rem;display:flex;flex-direction:column;gap:.4rem;font-size:.78rem}.batch-progress-header{display:flex;justify-content:space-between;align-items:center;color:#92400e}.batch-progress-pct{font-weight:700;font-variant-numeric:tabular-nums;font-size:.82rem}.batch-progress-bar-wrap{height:6px;background:#00000014;border-radius:999px;overflow:hidden}.batch-progress-bar{height:100%;background:#f59e0b;border-radius:999px;transition:width .2s ease}@media(prefers-reduced-motion:reduce){.batch-progress-bar{transition:none}}.batch-progress-results{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.15rem;font-size:.72rem;max-height:120px;overflow-y:auto}.batch-result-ok{color:#15803d}.batch-result-fail{color:#b91c1c}.batch-result-error{opacity:.8}.recipe-generator{display:flex;flex-direction:column;gap:1rem}.generator-skeleton{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem}.generator-skeleton-card{background:#0000000a;border-radius:10px;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.skeleton-line{height:12px;background:linear-gradient(90deg,#0000000f 25%,#0000001c,#0000000f 75%);background-size:200% 100%;border-radius:6px;animation:skeleton-shimmer 1.4s ease-in-out infinite}.skeleton-line--title{height:16px;width:75%}.skeleton-line--short{width:50%}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.skeleton-line{animation:none;background:#00000012}}.generator-provider-label{font-size:.78rem;padding:.35rem 0;border-bottom:1px solid rgba(0,0,0,.06)}.generator-provider-ai{color:#15803d;font-weight:600}.generator-provider-offline{color:#7c6a55;font-style:italic}.generator-results{display:flex;flex-direction:column;gap:.75rem}.generator-empty{text-align:center;padding:2rem 1rem;color:#7c6a55}.generator-ideas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem}.generator-idea-card{border:1px solid #e8dcc8;border-radius:10px;background:#fffaf0;padding:.75rem;display:flex;flex-direction:column;gap:.4rem}.generator-idea-header{display:flex;flex-direction:column;gap:.15rem}.generator-idea-title{font-size:.92rem;font-weight:700;font-family:Georgia,Times New Roman,serif;line-height:1.2}.generator-idea-meta{display:flex;align-items:center;gap:.4rem;font-size:.72rem;color:#7c6a55}.generator-idea-ingredients{font-size:.74rem;color:#5b4a36;line-height:1.4}.generator-idea-allergens{font-size:.7rem;color:#b91c1c;background:#dc262614;padding:.18rem .45rem;border-radius:6px}.generator-idea-actions{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:auto;padding-top:.35rem;border-top:1px solid rgba(0,0,0,.06)}.generator-idea-actions .secondary-button{flex:1;font-size:.72rem;padding:.28rem .55rem;text-align:center}.modal-backdrop.plan-picker-backdrop,.modal-backdrop.recipe-form-backdrop{z-index:320}.plan-picker-modal{max-width:340px;display:flex;flex-direction:column;gap:.75rem}.plan-picker-modal h3{margin:0;font-size:1rem}.plan-picker-recipe-name{margin:0;font-weight:700;color:#5b2c00}.plan-picker-actions{display:flex;gap:.5rem;justify-content:flex-end;padding-top:.5rem}.shopping-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.shopping-list button{min-height:70px;border:1px solid #e8dcc8;border-radius:8px;background:#ffffffe6;display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:10px;text-align:left}.shopping-list button>span{width:24px;height:24px;border:2px solid #b9c4be;border-radius:6px;display:grid;place-items:center;color:#fff}.shopping-list button.checked>span{background:var(--green);border-color:var(--green)}.shopping-list button.checked strong{text-decoration:line-through;color:var(--muted)}.shopping-list small{display:block;color:var(--muted);margin-top:2px}.shopping-hero{border:1px solid #f1c870;border-radius:8px;background:linear-gradient(135deg,#fff1bdf2,#d9f4efe6),#fffaf0;box-shadow:var(--soft-shadow);padding:22px;display:flex;align-items:center;justify-content:space-between;gap:18px}.shopping-hero h2{margin:8px 0 4px;font-size:2rem}.shopping-hero p{margin:0;color:#52615b;font-weight:800}.shopping-items{display:grid;gap:10px}.shopping-items button{min-height:58px;border:1px solid #e8dcc8;border-radius:8px;background:#ffffffeb;display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:center;padding:10px;text-align:left}.shopping-items button>span{width:24px;height:24px;border:2px solid #b9c4be;border-radius:6px;display:grid;place-items:center;color:#fff}.shopping-items button.checked>span{background:var(--green);border-color:var(--green)}.shopping-items button.checked strong{text-decoration:line-through;color:var(--muted)}.shopping-items small{display:block;color:var(--muted);margin-top:2px}.shopping-groups{display:flex;flex-direction:column;gap:.4rem}.shopping-group{border:1px solid rgba(0,0,0,.08);border-radius:12px;overflow:hidden}.shopping-group-header{display:flex;align-items:center;gap:.5rem;background:#00000006;padding:.75rem 1rem;text-align:left}.shopping-group-toggle{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1;background:transparent;border:0;padding:0;cursor:pointer;text-align:left}.shopping-group-header .caret{transition:transform .15s ease}.shopping-group.open .shopping-group-header .caret{transform:rotate(90deg)}.shopping-group-toggle strong{flex:1;font-size:.95rem}.shopping-group-toggle>span{font-size:.78rem;color:var(--muted, #777)}.shopping-group-header .bulk-add{background:#22c55e26;color:#15803d;padding:.2rem .6rem;border-radius:999px;font-size:.72rem;cursor:pointer}.shopping-group.open .shopping-list{padding:.5rem .5rem .75rem}.shopping-groups-list{display:flex;flex-direction:column;gap:.75rem}.shopping-category-group h4{margin:0 0 .3rem;font-size:.84rem;display:flex;align-items:baseline;gap:.4rem}.shopping-category-group h4 small{color:var(--muted, #888);font-size:.7rem;font-weight:500}.shopping-item-row{display:grid;grid-template-columns:1fr auto;gap:4px;align-items:center;min-height:58px;border:1px solid #e8dcc8;border-radius:8px;background:#ffffffeb;padding:6px 10px}.shopping-item-row.checked{opacity:.65}.shopping-item-main{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:center;background:transparent;border:0;padding:4px 0;text-align:left;cursor:pointer}.shopping-item-main>span{width:24px;height:24px;border:2px solid #b9c4be;border-radius:6px;display:grid;place-items:center;color:#fff}.shopping-item-row.checked .shopping-item-main>span{background:var(--green);border-color:var(--green)}.shopping-item-row.checked .shopping-item-main strong{text-decoration:line-through;color:var(--muted)}.shopping-item-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s ease}.shopping-item-row:hover .shopping-item-actions{opacity:1}.shopping-item-edit{display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:start;min-height:58px;border:1px solid #f1c870;border-radius:8px;background:#fff8dc80;padding:10px}.shopping-item-edit>span{width:24px;height:24px;border:2px solid #b9c4be;border-radius:6px;display:grid;place-items:center;color:#fff}.shopping-item-edit .edit-fields{display:flex;flex-direction:column;gap:6px}.shopping-item-edit .edit-fields input,.shopping-item-edit .edit-fields select{font-size:.85rem;padding:4px 8px}.shopping-item-edit .edit-actions{display:flex;flex-direction:column;gap:4px}.checklist-page{gap:18px}.checklist-overview{border:1px solid #b8e7dc;border-radius:8px;background:linear-gradient(135deg,#d9f4eff5,#fff1bdd1 58%,#ffe2dcb8),#fffefa;box-shadow:var(--soft-shadow);padding:22px;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.48fr);gap:18px;align-items:end}.checklist-overview h2{margin:8px 0 6px;font-size:1.8rem;line-height:1.1}.checklist-overview p{max-width:720px;margin:0;color:#50615a;font-weight:750}.checklist-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.checklist-summary div,.checklist-stat-grid div{min-width:0;border:1px solid rgba(15,143,131,.16);border-radius:8px;background:#ffffffb8;padding:12px}.checklist-summary strong,.checklist-stat-grid strong{display:block;font-size:1.55rem}.checklist-summary span,.checklist-stat-grid span{display:block;color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.checklist-workbench{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:20px;align-items:start}.checklist-side,.checklist-detail{display:grid;gap:14px}.checklist-tree,.checklist-tree-branch{display:grid;gap:6px}.checklist-tree-row{width:100%;min-height:54px;border:1px solid transparent;border-radius:8px;background:#ffffffc2;color:var(--ink);display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:9px;align-items:center;padding:8px 10px;text-align:left;transition:background .15s ease,border-color .15s ease,transform .15s ease}.checklist-tree-row:hover{background:#fff8e9;border-color:#f1c870;transform:translate(2px)}.checklist-tree-row.active{background:#eaf7f4;border-color:var(--teal);box-shadow:inset 4px 0 0 var(--teal)}.checklist-tree-row.group{background:linear-gradient(135deg,#d9f4efe6,#fffbeeeb)}.checklist-tree-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;color:#0f5f59;background:#d9f4ef}.checklist-tree-copy{min-width:0;display:grid;gap:2px}.checklist-tree-copy strong,.checklist-tree-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checklist-tree-copy strong{font-size:.94rem}.checklist-tree-copy small,.checklist-child-button small{color:var(--muted);font-size:.76rem;font-weight:850}.checklist-tree-percent{min-width:42px;border-radius:8px;background:#fff1bd;color:#7c4a00;padding:5px 7px;text-align:center;font-size:.78rem;font-weight:950}.checklist-detail-header,.checklist-child-button{display:flex;align-items:center;justify-content:space-between;gap:14px}.checklist-title-block{min-width:0}.checklist-title-block>span{display:inline-flex;border-radius:8px;background:#fff1bd;color:#7c4a00;padding:5px 8px;font-size:.74rem;font-weight:950;text-transform:uppercase}.checklist-title-block h3{margin:8px 0 0;font-size:1.55rem;line-height:1.12}.checklist-breadcrumb{margin-top:9px;display:flex;flex-wrap:wrap;gap:7px;align-items:center}.checklist-breadcrumb button,.checklist-breadcrumb span{border:0;border-radius:8px;background:#eef7f4;color:#0f5f59;min-height:28px;padding:0 9px;font-size:.78rem;font-weight:850}.checklist-breadcrumb span{display:inline-flex;align-items:center;background:#fff8e6;color:#7c4a00}.checklist-score{flex:0 0 auto;min-width:94px;border-radius:8px;background:#eaf7f4;color:#0f5f59;padding:10px 12px;text-align:right}.checklist-score strong,.checklist-score span{display:block}.checklist-score strong{font-size:1.45rem}.checklist-score span{color:#416861;font-size:.74rem;font-weight:900}.checklist-progress span{background:linear-gradient(90deg,var(--teal),var(--green))}.checklist-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.checklist-child-grid,.checklist-item-columns{display:grid;gap:12px}.checklist-child-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.checklist-child-button{min-height:72px;border:1px solid #e8dcc8;border-radius:8px;background:#ffffffe0;color:var(--ink);padding:12px;text-align:left}.checklist-child-button:hover{border-color:var(--teal);background:#f2fbf8}.checklist-child-button span{min-width:0;display:grid;gap:4px}.checklist-child-button strong,.checklist-child-button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.checklist-item-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.checklist-item-columns h4{margin:0 0 9px;font-size:.92rem}.checklist-items button{min-height:44px;border:1px solid #e8dcc8;border-radius:8px;background:#ffffffe6;padding:8px 10px;display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:center;text-align:left;font-weight:800;transition:border-color .15s ease,transform .15s ease,background .15s ease}.checklist-items button:hover{border-color:#f1c870;background:#fff8e9;transform:translate(2px)}.checklist-items button.checked{color:var(--muted)}.checklist-add-row{margin-top:0}@media(max-width:980px){.checklist-workbench{grid-template-columns:1fr}}@media(max-width:820px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;z-index:60;inset:0 auto 0 0;width:min(300px,86vw);transform:translate(-105%);transition:transform .16s ease}.sidebar.open{transform:translate(0)}.scrim{display:grid;place-items:start end;position:fixed;inset:0;z-index:50;border:0;background:#0a12106b;color:#fff;padding:18px}.workspace{padding:14px}.mobile-only{display:inline-flex}.family-strip{position:static;transform:none}.hero-metrics,.finance-band,.finance-summary,.ops-grid,.form-grid,.generator-form,.reminder-form,.checklist-summary,.checklist-stat-grid,.checklist-child-grid,.checklist-item-columns{grid-template-columns:1fr}.checkbox-row{grid-column:auto}.toolbar-panel,.settings-card,.shopping-hero,.budget-row>div:first-child,.transaction-row,.vehicle-item{align-items:stretch;flex-direction:column}.toolbar-panel{display:grid}.calendar-grid,.meal-week,.school-week,.weekly-overview{grid-auto-flow:column;grid-auto-columns:minmax(190px,78vw);grid-template-columns:none}.segmented.wide{grid-template-columns:repeat(2,minmax(0,1fr))}.checklist-overview{padding:18px}.checklist-detail-header{align-items:stretch;flex-direction:column}.checklist-score{width:100%;text-align:left}}.school-now,.item-list,.period-list,.template-stack,.task-list,.checklist-items,.budget-list,.transaction-list,.vehicle-list{display:grid;gap:10px}.school-now>span,.school-now p,.maintenance-row span,.transaction-row span,.vehicle-item span,.task-item span,.settings-card span,.ops-grid span{color:var(--muted)}.period-list.compact div{display:flex;justify-content:space-between;gap:10px}.school-week{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:12px;overflow-x:auto}.generator-form,.reminder-form{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:12px;align-items:end}.checkbox-row{grid-column:span 2;min-height:44px;display:flex;align-items:center;gap:10px;border:1px solid #e8dcc8;border-radius:8px;background:#ffffffd1;padding:10px 12px}.checkbox-row input{width:18px;min-height:18px}.school-day{background:linear-gradient(180deg,#fff,#fff8e9);border:1px solid #eadfcd;border-radius:8px;min-height:172px;padding:12px;display:grid;gap:5px}.school-day span,.school-day small{color:var(--muted)}.school-day strong{font-size:1.6rem}.school-day p{margin:0;color:#55615c}.template-editor{background:#fffaf0;border:1px solid #eadfcd;border-radius:8px;padding:14px;display:grid;gap:12px}.template-editor h3{margin:0}.period-list label{background:#fff;border:1px solid #eee3d2;border-radius:8px;padding:10px}.checkbox-row.compact{grid-column:auto}@media(max-width:1180px){.dashboard-grid,.two-column,.setup-wizard,.checklist-overview{grid-template-columns:1fr}.generator-form,.reminder-form{grid-template-columns:repeat(2,minmax(0,1fr))}}.school-now.compact strong{font-size:.82rem}.school-now.compact .period-list{font-size:.7rem}.school-view .school-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:.75rem;align-items:start}.template-stack.compact{gap:.55rem}.template-editor.compact{padding:.6rem .7rem;border-radius:10px;display:flex;flex-direction:column;gap:.4rem}.template-editor.compact h3{margin:0;font-size:.92rem}.template-editor.compact input[type=time],.template-editor.compact input[type=number]{font-size:.8rem;padding:.25rem .35rem}.periods-fold summary{cursor:pointer;font-size:.74rem;color:#92400e;padding:.25rem 0}.periods-fold summary::-webkit-details-marker{color:#92400e}.period-list.compact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem;margin-top:.3rem}.period-list.compact label{font-size:.7rem;display:flex;flex-direction:column;gap:.1rem}.period-list.compact input{font-size:.78rem;padding:.22rem .35rem}.school-grid .generator-form{display:grid;gap:.4rem}@media(max-width:1100px){.school-view .school-grid{grid-template-columns:1fr 1fr}.school-view .school-grid>:nth-child(3){grid-column:span 2}}@media(max-width:720px){.school-view .school-grid{grid-template-columns:1fr}.form-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}.homework-input{width:100%;margin-top:.3rem;font-size:.7rem;background:#fff7eb99;border:1px dashed rgba(180,83,9,.35);border-radius:6px;padding:.25rem .4rem;resize:vertical;color:#5b4a36;font-family:inherit}.homework-input:focus{background:#fff;border-color:#b45309b3;outline:none}.homework-banner{margin-top:.4rem;padding:.45rem .55rem;background:#f59e0b1f;border-left:3px solid #f59e0b;border-radius:6px}.homework-banner strong{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#92400e}.homework-banner p{margin:.15rem 0 0;font-size:.78rem;white-space:pre-wrap}.school-config-modal{max-width:820px}.school-config-modal h2{margin:0 0 .6rem}.timetable-grid-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:.4rem}.timetable-grid{width:100%;min-width:420px;border-collapse:collapse;font-size:.72rem}.timetable-grid th,.timetable-grid td{border:1px solid #e8dcc8;padding:.2rem .3rem;text-align:center;background:#fff}.timetable-grid thead th{background:#fff8e9;font-weight:600;color:#92400e}.timetable-time{white-space:nowrap;color:var(--muted);text-align:left;font-size:.68rem}.timetable-cell-input{width:3.8rem;font-size:.7rem;padding:.18rem .28rem;border:1px solid #e8dcc8;border-radius:4px;background:#fffdf7;text-align:center}.timetable-cell-input:focus{border-color:#b4530999;outline:none;background:#fff}.school-day-subjects{margin:.2rem 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.15rem}.school-day-subjects li{font-size:.72rem;background:#fbf3e2d9;border:1px solid #e8dcc8;border-radius:4px;padding:.1rem .4rem;color:#5b4a36;text-align:center}.template-note{margin:0;font-size:.72rem;color:#92400e;background:#fbf3e2b3;border-left:3px solid #f59e0b;padding:.3rem .5rem;border-radius:4px}.task-row{border:1px solid #e9decd;border-radius:8px;background:#ffffffe6;min-height:54px;display:grid;grid-template-columns:28px 1fr;align-items:center;gap:10px;padding:8px;text-align:left;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.task-row:hover,.event-row:hover,.maintenance-row:hover{border-color:#f1c870;transform:translateY(-1px);box-shadow:0 10px 22px #313c3814}.task-row>span,.check-button,.checklist-items button span{width:24px;height:24px;border-radius:6px;border:2px solid #b9c4be;display:grid;place-items:center;color:#fff}.task-row.done>span,.task-item.done .check-button,.checklist-items button.checked span{background:var(--green);border-color:var(--green)}.task-row small{display:block;color:var(--muted)}.task-item{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:start}.task-item .item-actions{display:flex;gap:4px;align-items:center}.check-button{background:#fff}.task-item p,.vehicle-item p{margin:6px 0 0;color:#55615c}.task-item.done strong,.vehicle-item.done strong{text-decoration:line-through;color:var(--muted)}.task-item.edit-form{grid-template-columns:36px 1fr auto}.task-item.edit-form .edit-fields{display:flex;flex-direction:column;gap:6px}.task-item.edit-form .edit-fields input,.task-item.edit-form .edit-fields select,.task-item.edit-form .edit-fields textarea{font-size:.85rem;padding:4px 8px}.task-item.edit-form .edit-actions{display:flex;flex-direction:column;gap:4px}.ops-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ops-grid strong,.ops-grid span{display:block}.finance-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.metric{display:grid;gap:4px;background:linear-gradient(135deg,#fffaf0,#f0fbf7);border:1px solid #eadfcd;border-radius:8px;padding:12px}.metric span{color:var(--muted);font-size:.78rem;font-weight:800}.metric strong{font-size:1.05rem}.finance-band{padding:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.budget-row{display:grid;gap:8px}.budget-row>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.transaction-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.transaction-row .item-actions{display:flex;gap:4px;opacity:0;transition:opacity .15s ease}.transaction-row:hover .item-actions{opacity:1}.transaction-row.edit-form{display:grid;grid-template-columns:1fr auto;gap:8px;border:1px solid #f1c870;border-radius:8px;background:#fff8dc80;padding:10px}.transaction-row.edit-form .edit-fields{display:flex;flex-direction:column;gap:6px}.transaction-row.edit-form .edit-fields input,.transaction-row.edit-form .edit-fields select{font-size:.85rem;padding:4px 8px}.transaction-row.edit-form .edit-actions{display:flex;flex-direction:column;gap:4px}.vehicle-item{display:flex;align-items:center;justify-content:space-between;gap:12px}.recurring-list{display:flex;flex-direction:column;gap:.35rem;margin:.5rem 0}.recurring-row{display:grid;grid-template-columns:1fr auto auto;gap:.5rem;align-items:center;padding:.5rem .7rem;background:#fff9;border-radius:10px;border:1px solid rgba(0,0,0,.05)}.recurring-row.inactive{opacity:.55}.recurring-row>div:first-child{display:flex;flex-direction:column}.recurring-row strong{font-size:.92rem}.recurring-row span{font-size:.72rem;color:var(--muted, #777)}.recurring-row b{font-size:.95rem;font-variant-numeric:tabular-nums}.recurring-actions{display:flex;gap:.4rem;flex-wrap:wrap}.recurring-actions .secondary-button{font-size:.7rem;padding:.3rem .6rem}.recurring-form{margin-top:.5rem;padding-top:.5rem;border-top:1px dashed rgba(0,0,0,.1)}.finance-summary.compact{gap:.4rem}.subscriptions-block{display:flex;flex-direction:column;gap:.6rem}.subscriptions-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.5rem;padding:.6rem .8rem;background:#f59e0b14;border:1px solid rgba(245,158,11,.2);border-radius:10px}.subscriptions-summary span{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:#92400e}.subscriptions-summary strong{font-size:1.1rem;font-variant-numeric:tabular-nums}.subscriptions-summary strong.muted{color:var(--muted, #888);font-weight:500}.subscription-groups{display:flex;flex-direction:column;gap:.5rem}.subscription-group{background:#00000006;border-radius:10px;padding:.4rem .55rem .5rem}.subscription-group-head{display:flex;justify-content:space-between;align-items:baseline;padding:.15rem .25rem .35rem;border-bottom:1px dashed rgba(0,0,0,.1)}.subscription-group-head strong{font-size:.88rem}.subscription-group-head span{font-size:.78rem;color:var(--muted, #777);font-variant-numeric:tabular-nums}.subscription-group .recurring-row{background:#fff;margin-top:.3rem}.period-list.compact div,.event-row,.maintenance-row,.transaction-row,.task-item,.vehicle-item,.settings-card,.ops-grid>div{background:#fffaf0db;border:1px solid #eadfcd;border-radius:8px;padding:12px}.vehicle-item>div:last-child{display:grid;justify-items:end;gap:8px}.vehicle-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:.6rem .85rem;background:#fff9;border-radius:14px;border:1px solid rgba(0,0,0,.05);margin-bottom:.75rem}.vehicle-summary h2{margin:0;font-size:1.05rem}.vehicle-summary p{margin:0;font-size:.78rem;color:var(--muted, #777)}.vehicle-filter{flex-wrap:wrap}.vehicle-group{margin-bottom:1rem}.vehicle-group h4{margin:0 0 .35rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#92400e}.themed-view.vehicles-view .vehicle-hero{background:linear-gradient(160deg,#2f3845,#202832);border:1px solid rgba(244,210,122,.34);border-radius:16px;padding:1rem;margin-bottom:1rem;display:grid;grid-template-columns:minmax(120px,180px) 1fr;gap:1rem;align-items:center;box-shadow:0 16px 28px -24px #000000b3}.themed-view.vehicles-view .vehicle-hero-media{min-height:108px;border-radius:12px;display:grid;place-items:center;position:relative;background:radial-gradient(circle at 50% 70%,rgba(244,210,122,.22),transparent 48%),linear-gradient(180deg,#151b23,#222b36);border:1px solid rgba(244,210,122,.18);color:#f4d27a;box-shadow:inset 0 0 28px #0000004d}.themed-view.vehicles-view .vehicle-hero-media span{position:absolute;right:12px;bottom:10px;font-size:.72rem;font-weight:800;color:#141a22;background:#f4d27a;border-radius:999px;min-width:28px;height:28px;display:grid;place-items:center}.themed-view.vehicles-view .vehicle-hero-copy{display:flex;flex-direction:column;gap:.5rem}.themed-view.vehicles-view .vehicle-hero-copy h2{margin:0;line-height:1.15;letter-spacing:0}.themed-view.vehicles-view .vehicle-hero-copy p{margin:0;color:#e8edf3c2;line-height:1.45}.garage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-bottom:1rem}.garage-tile{background:#202832;border:1px solid rgba(244,210,122,.16);border-radius:12px;padding:.75rem;color:#e8edf3;display:flex;flex-direction:column;gap:.35rem;position:relative;overflow:hidden;text-align:left;cursor:pointer;font:inherit;transition:transform .2s cubic-bezier(.2,.9,.3,1.2),border-color .2s cubic-bezier(.2,.9,.3,1.2),box-shadow .2s cubic-bezier(.2,.9,.3,1.2)}.garage-tile:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#f4d27a 0%,transparent 100%)}.garage-tile h3{margin:0;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#f4d27a;display:flex;align-items:center;gap:.4rem}.garage-tile strong{font-size:1rem;line-height:1.2}.garage-tile span,.garage-tile small{color:#e8edf3b8;line-height:1.35}.garage-tile:hover,.garage-tile.active{transform:translateY(-2px);border-color:#f4d27a73;box-shadow:0 14px 26px -22px #f4d27a8c}@media(max-width:720px){.themed-view.vehicles-view .vehicle-hero{grid-template-columns:1fr}}.health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.5rem}.health-badge{display:grid;grid-template-columns:14px 1fr;gap:.55rem;align-items:center;padding:.5rem .7rem;background:#ffffff8c;border-radius:10px;border:1px solid rgba(0,0,0,.05)}.health-badge .health-dot{width:10px;height:10px;border-radius:50%;background:#999}.health-badge.ok .health-dot{background:#22c55e;box-shadow:0 0 0 4px #22c55e1f}.health-badge.off .health-dot{background:#cbd5e1}.health-badge strong{display:block;font-size:.85rem}.health-badge small{font-size:.7rem;color:var(--muted, #777)}.sticky-notes{display:flex;flex-direction:column;gap:.45rem}.sticky-add{display:grid;grid-template-columns:1fr 100px 36px;gap:.3rem}.sticky-add input,.sticky-add select{font-size:.78rem;padding:.32rem .4rem}.sticky-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.4rem}.sticky-note{border-radius:6px;padding:.5rem .55rem .4rem;box-shadow:0 1px 2px #0000000f,0 4px 10px -6px #00000026;display:flex;flex-direction:column;gap:.25rem;min-height:70px;font-family:Caveat,Comic Sans MS,Marker Felt,cursive;transform:rotate(-.3deg);transition:transform .12s ease}.sticky-note:nth-child(2n){transform:rotate(.4deg)}.sticky-note:nth-child(3n){transform:rotate(-.6deg)}.sticky-note:hover{transform:rotate(0) scale(1.02);z-index:1}.sticky-note.pinned{box-shadow:0 0 0 2px #f59e0b80,0 1px 2px #0000000f,0 4px 10px -6px #0000002e}.sticky-note-body{font-size:.95rem;line-height:1.2;color:#2a1f0f;word-break:break-word}.sticky-note-meta{display:flex;align-items:center;justify-content:space-between;margin-top:auto;font-family:sans-serif}.sticky-note-meta small{font-size:.65rem;color:#0000008c;text-transform:uppercase;letter-spacing:.05em}.sticky-note-meta button{background:transparent;border:0;cursor:pointer;font-size:.85rem;padding:0 .2rem;color:#0000008c}.sticky-note-meta button:hover{color:#92400e}.sticky-note-meta button.danger:hover{color:#b91c1c}.karton-view{gap:.6rem}.karton-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem;position:sticky;top:12px;z-index:4;padding:.5rem;border:1px solid rgba(2,132,199,.18);border-radius:12px;background:#f8fdff;box-shadow:0 8px 18px -16px #0c4a6e47}.karton-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .85rem;background:#eef8fc;border:1px solid rgba(2,132,199,.12);border-radius:8px;font-size:.82rem;cursor:pointer;color:#0c4a6e;transition:background .2s cubic-bezier(.2,.9,.3,1.2),border-color .2s cubic-bezier(.2,.9,.3,1.2),transform .2s cubic-bezier(.2,.9,.3,1.2)}.karton-tab:hover{background:#fff;transform:translateY(-1px)}.karton-tab.active{background:#0c4a6e;color:#f8fdff;border-color:#0c4a6e}.karton-form{background:#f8fdff;padding:.75rem;border-radius:12px;border:1px solid rgba(2,132,199,.16);margin-bottom:.75rem}.karton-list{display:flex;flex-direction:column;gap:.5rem}.karton-row{display:grid;grid-template-columns:1fr auto;align-items:start;gap:.5rem;padding:.65rem .75rem;background:#fff;border-radius:8px;border:1px solid rgba(2,132,199,.12)}.karton-row strong{display:block;font-size:.92rem;line-height:1.25}.karton-row small{display:block;font-size:.72rem;color:var(--muted, #777)}.contact-lines{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.2rem;font-size:.78rem}.contact-lines a{text-decoration:none;color:#1d4ed8}.warranty-expired{color:#b91c1c;font-weight:600;font-size:.78rem}.pantry-groups{display:flex;flex-direction:column;gap:.6rem}.pantry-group h4{margin:0 0 .3rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:#92400e}.wallet-balances{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.6rem}.wallet-balance{border:2px solid;border-radius:10px;padding:.45rem .7rem;background:#fff}.wallet-balance strong{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#5b4a36}.wallet-balance b{font-size:1.15rem;font-variant-numeric:tabular-nums}.wallet-plus{color:#15803d}.wallet-minus{color:#b91c1c}.karton-chart{background:#fff;border:1px solid rgba(2,132,199,.25);border-radius:12px;padding:1rem;position:relative;overflow:hidden;box-shadow:0 14px 26px -22px #0c4a6e66}.karton-chart:before{content:"";position:absolute;top:14px;right:16px;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#22c55e 60%);box-shadow:0 0 8px #22c55e99;animation:vital-pulse 1.8s ease-in-out infinite;z-index:3}.karton-chart h3,.karton-chart .panel-heading h2{margin:0 0 .5rem;font-size:.82rem;letter-spacing:.06em;color:#0c4a6e;font-weight:800}.karton-chart .panel-heading{padding-right:1.75rem;border-bottom:1px dashed rgba(2,132,199,.22);padding-bottom:.5rem;margin-bottom:.75rem}.karton-chart .chart-label{font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:#0284c7;padding-bottom:.3rem;border-bottom:1px dashed rgba(2,132,199,.35);margin-bottom:.4rem}.karton-chart>.muted{line-height:1.45;margin-bottom:.75rem}.health-badge{display:inline-block;font-size:.7rem;font-weight:600;border-radius:4px;padding:.1em .45em;margin-left:.4em;vertical-align:middle}.health-badge--upcoming{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.health-badge--expired{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.settings-card{display:flex;align-items:center;justify-content:space-between;gap:16px}.settings-actions{display:flex;gap:10px;flex-wrap:wrap}.backup-tools{display:grid;gap:12px}.member-editor-list{display:grid;gap:.65rem;margin:.75rem 0}.member-editor{display:grid;grid-template-columns:72px 1fr;gap:.6rem;padding:.6rem;background:#fff9;border-radius:12px;border:1px solid rgba(0,0,0,.06)}.member-editor-avatar{width:72px;height:72px;border-radius:12px;overflow:hidden;border:3px solid;display:flex;align-items:center;justify-content:center;background:#fff;font-size:1.8rem;font-weight:700}.member-editor-avatar img{width:100%;height:100%;object-fit:cover}.member-editor-fields{display:flex;flex-direction:column;gap:.35rem}.member-editor-fields input[type=text],.member-editor-fields input:not([type]){font-size:1rem;font-weight:600}.member-editor-actions{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}.header-preview{height:96px;border-radius:14px;background:linear-gradient(120deg,#fcd34d,#fdba74,#fb7185);background-size:cover;background-position:center;padding:.85rem 1rem;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;text-shadow:0 1px 8px rgba(0,0,0,.35);margin:.5rem 0;position:relative;overflow:hidden}.header-preview:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.35) 100%)}.header-preview strong,.header-preview span{position:relative;z-index:1}.header-preview strong{font-size:1.1rem}.appearance-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin-bottom:.4rem}.weather-locations-list{display:flex;flex-direction:column;gap:.3rem;margin:.5rem 0}.album-grid{display:grid;grid-template-columns:2fr 1fr;gap:.4rem;height:100%}.album-featured{position:relative;border:0;padding:0;cursor:pointer;border-radius:10px;overflow:hidden;background:#0000000d}.album-featured img{width:100%;height:100%;object-fit:cover;display:block;min-height:140px}.album-caption{position:absolute;bottom:0;left:0;right:0;padding:.3rem .5rem;background:linear-gradient(transparent,#0000008c);color:#fff;font-size:.74rem;text-align:left}.album-thumbs{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:minmax(60px,1fr);gap:.3rem;align-content:start}.album-thumb{border:0;padding:0;cursor:pointer;border-radius:6px;overflow:hidden;background:#0000000d}.album-thumb img{width:100%;height:100%;object-fit:cover;display:block;min-height:50px}.album-lightbox{position:relative;max-width:90vw;max-height:90vh;background:#1a1a1a;border-radius:12px;padding:.5rem}.album-lightbox img{max-width:100%;max-height:80vh;object-fit:contain;display:block;border-radius:8px}.album-lightbox p{color:#fff;font-size:.85rem;margin:.4rem 0 0;text-align:center}@media(max-width:1280px){.album-grid{grid-template-columns:2fr 1fr}}.themed-view.settings-view .settings-card,.themed-view.settings-view form.stacked-form{background:#fff8e6eb;border-radius:10px;border:1px solid rgba(120,75,30,.32);padding:.6rem .8rem}.weather-body{display:flex;flex-direction:column;gap:.4rem;height:100%}.weather-now{display:flex;align-items:center;gap:.55rem}.weather-emoji{font-size:2.2rem;line-height:1}.weather-now strong{font-size:1.6rem;line-height:1;font-weight:700;display:block}.weather-now span{font-size:.72rem;color:var(--muted, #777)}.weather-tomorrow{display:flex;align-items:center;justify-content:space-between;font-size:.74rem;background:#0000000a;padding:.3rem .55rem;border-radius:8px}.weather-tomorrow em{font-style:normal;font-weight:600;font-variant-numeric:tabular-nums}.weather-source{font-size:.6rem;color:var(--muted, #888);margin-top:auto;letter-spacing:.08em;text-transform:uppercase}.weather-body{display:flex;flex-direction:column;gap:.5rem}.weather-location-chips{display:flex;gap:.3rem;overflow-x:auto;padding-bottom:.3rem;margin:0 -.3rem;padding-left:.3rem;padding-right:.3rem}.weather-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .6rem;background:#ffffffbf;border:1px solid rgba(0,0,0,.08);border-radius:999px;font-size:.74rem;cursor:pointer;white-space:nowrap}.weather-chip.active{background:linear-gradient(135deg,#f59e0b,#fb923c);color:#fff;border-color:transparent;box-shadow:0 2px 6px -2px #f59e0b73}.weather-chip em{font-style:normal;font-weight:700;font-variant-numeric:tabular-nums}.weather-hero{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.5rem .55rem;background:linear-gradient(135deg,#7dd3fc40,#fed7aa33);background-size:cover;background-position:center;border-radius:12px;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.weather-hero[style*=background-image]:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#00000073,#0000004d);border-radius:12px;z-index:0}.weather-hero[style*=background-image]>*{position:relative;z-index:1}.weather-hero[style*=background-image] .weather-loc,.weather-hero[style*=background-image] .weather-feels{color:#ffffffd9}.weather-hero[style*=background-image] .weather-big{color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.3)}.weather-hero[style*=background-image] .weather-todayrange{color:#ffffffe6;text-shadow:0 1px 3px rgba(0,0,0,.3)}.weather-hero[style*=background-image] span,.weather-hero[style*=background-image] small{color:#ffffffe6}.weather-loc{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted, #777)}.weather-big{display:block;font-size:2.2rem;font-weight:200;line-height:1.05;letter-spacing:-.02em}.weather-feels{display:block;font-size:.68rem;color:var(--muted, #777);margin-top:.1rem}.weather-todayrange{display:flex;flex-direction:column;text-align:right;font-size:.85rem;gap:.1rem}.weather-todayrange span{font-variant-numeric:tabular-nums}.weather-hourly{display:flex;gap:.35rem;overflow-x:auto;padding:.3rem 0}.weather-hour{display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.4rem .5rem;background:#ffffff8c;border-radius:8px;min-width:48px}.weather-hour small{font-size:.62rem;color:var(--muted, #888)}.weather-hour span{font-size:1.05rem;line-height:1}.weather-hour strong{font-size:.78rem;font-variant-numeric:tabular-nums}.weather-daily{display:flex;flex-direction:column;gap:.15rem}.weather-day{display:grid;grid-template-columns:56px 30px 1fr;align-items:center;gap:.4rem;padding:.2rem .3rem;font-size:.75rem;border-radius:6px}.weather-day:hover{background:#00000008}.weather-day small{font-size:.72rem;color:var(--muted, #777)}.weather-day span{font-size:1rem;line-height:1}.weather-day em{font-style:normal;font-variant-numeric:tabular-nums;color:#5b4a36}.weather-source{font-size:.6rem;color:var(--muted, #888);margin-top:.1rem;letter-spacing:.05em;text-transform:uppercase}.weather-loc-row{display:flex;align-items:center;justify-content:space-between;background:#ffffff8c;border:1px solid rgba(0,0,0,.05);border-radius:8px;padding:.4rem .6rem}.weather-loc-row strong{display:block;font-size:.88rem}.weather-loc-row small{font-size:.7rem;color:var(--muted, #888);font-variant-numeric:tabular-nums}.map-button{display:inline-flex;align-items:center;gap:.25rem;padding:.18rem .55rem;background:#2563eb1a;color:#1d4ed8;border:1px solid rgba(37,99,235,.25);border-radius:999px;font-size:.7rem;cursor:pointer;font-weight:500}.map-button:hover{background:#2563eb2e}.map-modal{max-width:700px;padding:1rem 1.2rem 1.2rem}.map-modal h2{margin:0 0 .5rem}.map-iframe{width:100%;height:360px;border:0;border-radius:10px;background:#f1f5f9;margin-bottom:.6rem}.map-actions{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.map-actions .primary-button,.map-actions .secondary-button{padding:.4rem .8rem;font-size:.82rem}.map-modal{z-index:9001}.map-peek{position:fixed;width:320px;height:240px;background:#fff;border-radius:12px;box-shadow:0 12px 32px -8px #00000059,0 4px 10px -4px #0000002e;overflow:hidden;z-index:8500;cursor:zoom-in;border:1px solid rgba(0,0,0,.08)}.map-peek iframe{width:100%;height:200px;border:0;pointer-events:none;display:block}.map-peek small{display:block;padding:.4rem .6rem;font-size:.7rem;color:var(--muted, #777);text-align:center;background:#fff7ebeb}.dash-widget--weathercard{padding:0}.weather-card{position:relative;flex:1;width:100%;min-height:210px;display:flex;flex-direction:column;border-radius:12px;overflow:hidden;color:#fff;isolation:isolate}.weather-fill{position:absolute;inset:0;z-index:0;background-color:#4a6b8a;background-size:cover;background-position:center;background-repeat:no-repeat;transition:background-image .32s ease}.weather-scrim{position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#0000006b,#0000001f 36%,#0000002e 58%,#000000a8)}.weather-content{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;gap:.4rem;padding:.7rem .8rem .65rem}.weather-card .weather-location-chips{margin:0 0 .1rem;padding:0}.weather-card .weather-chip{background:#ffffff2e;border:1px solid rgba(255,255,255,.3);color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.weather-card .weather-chip.active{background:#ffffffeb;color:#1f2937;border-color:transparent;box-shadow:0 2px 8px -2px #00000073}.weather-card .weather-chip em{color:inherit}.weather-current{display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem;width:100%;margin:0;padding:0;border:0;background:none;color:#fff;text-align:left;cursor:pointer;font:inherit}.weather-current-main{display:flex;flex-direction:column}.weather-card .weather-loc{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#ffffffe0;margin-bottom:.05rem}.weather-card .weather-big{display:block;font-size:3rem;font-weight:250;line-height:1;letter-spacing:-.02em;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.38)}.weather-card .weather-desc{display:block;font-size:.84rem;margin-top:.18rem;color:#fffffff5;text-shadow:0 1px 5px rgba(0,0,0,.45)}.weather-card .weather-feels{display:block;font-size:.7rem;margin-top:.06rem;color:#ffffffd1}.weather-card .weather-todayrange{display:flex;flex-direction:column;text-align:right;gap:.1rem;font-size:.92rem;font-variant-numeric:tabular-nums;color:#fffffff5;text-shadow:0 1px 5px rgba(0,0,0,.45)}.weather-foot{margin-top:auto}.weather-days{display:grid;grid-template-columns:repeat(5,1fr);gap:.2rem;padding:.45rem .3rem;border-radius:12px;background:#0000003d;border:1px solid rgba(255,255,255,.14);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.weather-day{display:flex;flex-direction:column;align-items:center;gap:.06rem;font-variant-numeric:tabular-nums}.weather-day small{font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;color:#ffffffc7}.weather-day span{font-size:1.2rem;line-height:1.15}.weather-day .wd-max{font-style:normal;font-size:.8rem;font-weight:600;color:#fff}.weather-day .wd-min{font-style:normal;font-size:.7rem;color:#ffffffb8}.weather-card .weather-hourly{display:flex;gap:.3rem;overflow-x:auto;padding:.4rem .35rem;border-radius:12px;background:#0000003d;border:1px solid rgba(255,255,255,.14);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.weather-card .weather-hour{display:flex;flex-direction:column;align-items:center;gap:.1rem;min-width:42px;background:none;color:#fff}.weather-card .weather-hour small{font-size:.6rem;color:#ffffffbf}.weather-card .weather-hour span{font-size:1.05rem;line-height:1}.weather-card .weather-hour strong{font-size:.74rem}.weather-loading,.weather-error{font-size:.8rem;color:#ffffffeb;text-shadow:0 1px 4px rgba(0,0,0,.45)}.weather-error{color:#fecaca}@media(max-width:520px){.weather-card{min-height:188px}.weather-card .weather-big{font-size:2.5rem}}.setup-wizard{margin-bottom:20px;border:1px solid #f1c870;border-radius:8px;background:linear-gradient(135deg,#fff1bdf5,#d9f4efeb),#fffaf0;box-shadow:var(--soft-shadow);padding:20px;display:grid;grid-template-columns:minmax(260px,.85fr) 1.15fr;gap:18px}.setup-wizard h2{margin:8px 0;font-size:1.55rem}.setup-wizard p{margin:0;color:#52615b;font-weight:700}.setup-actions{display:flex;gap:10px;flex-wrap:wrap}.quick-add-launcher{position:fixed;right:24px;bottom:24px;z-index:35;width:58px;height:58px;border:0;border-radius:8px;color:#fff;background:linear-gradient(135deg,var(--coral),var(--teal));box-shadow:0 20px 42px #ff7a5947;display:grid;place-items:center}.quick-add-launcher:hover{transform:translateY(-2px)}.quick-modal{display:grid;gap:16px}.modal-backdrop{position:fixed;inset:0;z-index:40;background:#1218167a;display:grid;place-items:center;padding:20px}.modal{width:min(640px,100%);max-height:min(760px,92vh);overflow:auto;background:#fffefa;border-radius:8px;padding:20px;position:relative;box-shadow:var(--shadow)}.modal>img{width:100%;max-height:260px;object-fit:cover;border-radius:8px}.modal h2{margin-bottom:4px}.modal h3{margin-top:18px}.scrim{display:none}.modal-thumb{width:100%;max-width:360px;aspect-ratio:4 / 3;border-radius:12px;margin-bottom:.5rem}.modal-allergens{display:inline-block;background:#dc26261a;color:#b91c1c;padding:.2rem .6rem;border-radius:999px;font-size:.7rem;margin-bottom:.4rem}.modal-backdrop.map-backdrop{z-index:9000}.file-attachments{display:flex;flex-direction:column;gap:.35rem;margin-top:.4rem}.file-attachments-head{display:flex;align-items:center;gap:.5rem}.file-attachments-head .ghost-button.as-label{font-size:.72rem;padding:.25rem .6rem}.file-attachments-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.2rem}.file-attachment-row{display:grid;grid-template-columns:1fr auto auto;gap:.25rem;align-items:center;background:#00000008;border-radius:6px;padding:.15rem .4rem}.file-attachment-open{display:grid;grid-template-columns:22px 1fr auto;gap:.4rem;align-items:center;background:transparent;border:0;padding:.25rem 0;cursor:pointer;text-align:left}.file-attachment-open:hover{color:#1d4ed8}.file-icon{font-size:1rem;line-height:1}.file-name{font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-attachment-open small{font-size:.65rem;color:var(--muted, #888);font-variant-numeric:tabular-nums}.file-action{border:0;background:transparent;cursor:pointer;padding:0 .35rem;font-size:.85rem;text-decoration:none;color:#5b4a36}.file-action:hover{color:#1d4ed8}.file-action.danger{color:#b91c1c;font-size:1rem}.modal-backdrop.file-preview-backdrop{z-index:9100}.file-preview-modal{max-width:900px;width:90vw;height:88vh;display:flex;flex-direction:column;padding:0}.file-preview-head{display:flex;align-items:center;justify-content:space-between;padding:.6rem .8rem;border-bottom:1px solid rgba(0,0,0,.08);gap:.6rem}.file-preview-head h2{margin:0;font-size:.92rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-preview-actions{display:inline-flex;align-items:center;gap:.3rem}.file-preview-body{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;background:#f1f5f9}.file-preview-body img{max-width:100%;max-height:100%;object-fit:contain}.file-preview-body object{width:100%;height:100%;border:0}.file-preview-office{text-align:center;padding:2rem}.file-preview-meta{padding:.4rem .8rem;border-top:1px solid rgba(0,0,0,.06);background:#00000005;font-size:.7rem;color:var(--muted, #777)}.modal-backdrop.recipe-card-backdrop{background:#140a008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:2vh 2vw}.search-overlay{position:fixed;inset:0;z-index:1000;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;padding-top:15vh}.search-modal{width:min(600px,90vw);max-height:70vh;background:var(--card-bg, #fff);border-radius:16px;box-shadow:0 25px 60px #0000004d;display:flex;flex-direction:column;overflow:hidden;animation:search-in .15s ease-out}@keyframes search-in{0%{opacity:0;transform:scale(.97) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}.search-input-row{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border, #e5e7eb)}.search-icon{color:var(--text-muted, #9ca3af);flex-shrink:0}.search-input{flex:1;border:none;outline:none;font-size:1.1rem;background:transparent;color:var(--text, #111);font-family:inherit}.search-input::placeholder{color:var(--text-muted, #9ca3af)}.search-kbd{font-size:.75rem;padding:2px 8px;border-radius:6px;background:var(--bg-secondary, #f3f4f6);color:var(--text-muted, #6b7280);border:1px solid var(--border, #e5e7eb);font-family:inherit}.search-results{flex:1;overflow-y:auto;padding:8px}.search-result-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:none;border-radius:10px;background:transparent;color:var(--text, #111);font-family:inherit;font-size:.9rem;cursor:pointer;text-align:left;transition:background .1s}.search-result-item:hover,.search-result-item.active{background:var(--bg-secondary, #f3f4f6)}.search-result-item.active{background:var(--accent-light, #eef2ff)}.search-result-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:var(--bg-secondary, #f3f4f6);color:var(--accent, #6366f1)}.search-result-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.search-result-title{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-highlight{background:#fde68a;color:inherit;border-radius:2px;padding:0 1px}.search-result-subtitle{font-size:.8rem;color:var(--text-muted, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-type{flex-shrink:0;font-size:.75rem;color:var(--text-muted, #9ca3af);background:var(--bg-secondary, #f3f4f6);padding:2px 8px;border-radius:6px}.search-empty{padding:32px 20px;text-align:center;color:var(--text-muted, #6b7280)}.search-empty p{margin:0 0 16px;font-size:.95rem}.search-quick-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.search-quick-link{padding:6px 14px;border-radius:8px;border:1px solid var(--border, #e5e7eb);background:var(--bg-secondary, #f9fafb);color:var(--text, #374151);font-size:.85rem;font-family:inherit;cursor:pointer;transition:all .15s}.search-quick-link:hover{background:var(--accent-light, #eef2ff);border-color:var(--accent, #6366f1);color:var(--accent, #6366f1)}.search-footer{display:flex;gap:16px;padding:10px 20px;border-top:1px solid var(--border, #e5e7eb);font-size:.75rem;color:var(--text-muted, #9ca3af);justify-content:center}.search-footer span{display:flex;align-items:center;gap:4px}[data-mood=zima] .search-modal{background:var(--card-bg, #1e1e2e)}[data-mood=zima] .search-result-item.active{background:#6366f126}.toast-host{position:fixed;bottom:1.5rem;right:1.5rem;z-index:9000;display:flex;flex-direction:column;gap:.5rem;pointer-events:none;max-width:22rem;width:calc(100vw - 2rem)}.toast-item{position:relative;background:var(--panel-bg, #fff9f0);border:1px solid var(--border-color, #e8d5b7);border-radius:.6rem;box-shadow:0 4px 20px #00000026,0 1px 4px #00000014;overflow:hidden;pointer-events:all;animation:toast-slide-up .22s cubic-bezier(.34,1.56,.64,1) both}@keyframes toast-slide-up{0%{opacity:0;transform:translateY(1rem) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.toast-progress{position:absolute;top:0;left:0;height:3px;background:var(--accent-color, #c97b3a);border-radius:3px 3px 0 0;transition:width .1s linear}.toast-content{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .75rem .65rem 1rem}.toast-label{font-size:.9rem;color:var(--text-primary, #2d1f0e);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast-label strong{font-weight:600}.toast-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.toast-undo-btn{font-size:.85rem;font-weight:700;color:var(--accent-color, #c97b3a);background:transparent;border:1.5px solid var(--accent-color, #c97b3a);border-radius:.4rem;padding:.2rem .55rem;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.toast-undo-btn:hover{background:var(--accent-color, #c97b3a);color:#fff}.toast-close-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:.35rem;padding:.2rem;cursor:pointer;color:var(--text-muted, #8b7355);transition:background .12s}.toast-close-btn:hover{background:var(--hover-bg, rgba(0, 0, 0, .06));color:var(--text-primary, #2d1f0e)}@media(max-width:480px){.toast-host{bottom:4.5rem;right:.75rem;left:.75rem;width:auto;max-width:none;align-items:stretch}}*{box-sizing:border-box}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}label{display:grid;gap:7px;color:#4b5752;font-size:.86rem;font-weight:700}input,select,textarea{width:100%;border:1px solid #ddd3c3;border-radius:8px;background:#ffffffeb;color:var(--ink);padding:11px 13px;min-height:44px;box-shadow:inset 0 1px #ffffffe6}textarea{resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid rgba(15,118,110,.22);outline-offset:2px}.two-column{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.8fr);gap:20px}.muted{color:var(--muted, #777);font-size:.78rem}input[type=time]::-webkit-datetime-edit-ampm-field,input[type=datetime-local]::-webkit-datetime-edit-ampm-field{display:none!important}input[type=time],input[type=datetime-local],input[type=date]{font-variant-numeric:tabular-nums}.muted.small{font-size:.72rem}.overlap-warning{color:#b91c1c;font-size:.7rem;font-weight:600}.hidden-tab{display:none}
