:root{
  --bg:#f4f3ef;
  --surface:#ffffff;
  --surface-2:#eceae4;
  --text:#17181b;
  --muted:#77766f;
  --line:#dedbd3;
  --accent:#d85e3f;
  --accent-soft:#f5ddd5;
  --shadow:0 12px 35px rgba(30,31,34,.08);
  --radius:24px;
}
*{box-sizing:border-box;font-family:inherit}
html,body{margin:0;min-height:100%;font-family:system-ui,sans-serif;background:var(--bg);color:var(--text)}
button,input,select,textarea,option{font:inherit;font-family:inherit!important}
button{cursor:pointer}
body{padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}
.app-shell{min-height:100vh;max-width:760px;margin:0 auto;padding-bottom:92px}
.topbar{display:flex;align-items:center;justify-content:space-between;padding:26px 22px 18px;position:sticky;top:0;z-index:20;background:rgba(244,243,239,.9);backdrop-filter:blur(18px)}
.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:800;color:var(--accent);margin-bottom:4px}
h1,h2,h3,p{margin:0}.topbar h1{font-size:28px;line-height:1.05;letter-spacing:-.04em}
.avatar{width:46px;height:46px;border:0;border-radius:50%;background:var(--text);color:white;font-weight:800;box-shadow:var(--shadow)}
.content{padding:0 18px 26px}.hero-card{background:var(--text);color:#fff;border-radius:32px;padding:25px;display:flex;justify-content:space-between;gap:18px;box-shadow:var(--shadow)}
.muted{color:#aaa8a1;font-size:14px;margin-bottom:5px}.hero-card h2{font-size:31px;letter-spacing:-.045em}.hero-copy{margin-top:10px;line-height:1.45;color:#d8d6cf;max-width:270px}.weather-badge{width:64px;height:64px;display:grid;place-items:center;background:#292b31;border-radius:21px;font-size:28px}
.section-block{margin-top:27px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:0 3px 12px}.section-heading h3{font-size:18px;letter-spacing:-.02em}.text-btn{border:0;background:transparent;color:var(--accent);font-size:13px;font-weight:700}
.stack{display:grid;gap:10px}.mini-card{background:var(--surface);border:1px solid rgba(0,0,0,.035);border-radius:20px;padding:15px;display:grid;grid-template-columns:62px 1fr;gap:12px;align-items:center}.mini-card.accent{background:var(--accent-soft)}.time{font-weight:800;font-size:13px;color:var(--accent)}.mini-card strong{font-size:15px}.mini-card p{font-size:13px;color:var(--muted);margin-top:3px}
.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.quick-card{text-align:left;border:1px solid rgba(0,0,0,.035);background:var(--surface);border-radius:22px;padding:18px;min-height:136px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 6px 20px rgba(30,31,34,.035)}.quick-icon{width:39px;height:39px;border-radius:14px;background:var(--surface-2);display:grid;place-items:center;margin-bottom:18px;font-size:19px;font-weight:900}.quick-card strong{font-size:16px}.quick-card small{color:var(--muted);margin-top:4px}
.family-strip{background:var(--surface);border-radius:22px;padding:17px;display:flex;gap:24px}.person{display:grid;gap:7px;justify-items:center;font-size:12px;font-weight:700}.person-avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);font-weight:900}
.bottom-nav{position:fixed;z-index:30;left:50%;bottom:max(12px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(calc(100% - 24px),720px);display:grid;grid-template-columns:repeat(5,1fr);background:rgba(23,24,27,.96);border-radius:24px;padding:7px;box-shadow:0 16px 38px rgba(0,0,0,.18);backdrop-filter:blur(18px)}.nav-item{border:0;background:transparent;color:#96989d;border-radius:18px;padding:8px 4px 7px;display:grid;gap:2px;place-items:center}.nav-item span{font-size:20px;line-height:1}.nav-item small{font-size:10px}.nav-item.active{color:#fff;background:#2d2f35}
.page-card{background:var(--surface);border-radius:24px;padding:20px;box-shadow:0 7px 23px rgba(30,31,34,.04)}.page-card h2{font-size:23px;letter-spacing:-.035em}.page-card p{color:var(--muted);margin-top:7px;line-height:1.5}.empty{margin-top:18px;border:1px dashed var(--line);border-radius:20px;padding:28px;text-align:center;color:var(--muted)}.primary-btn{margin-top:16px;width:100%;border:0;border-radius:16px;background:var(--text);color:white;padding:14px 18px;font-weight:800}.list{margin-top:14px;display:grid;gap:9px}.list-row{background:var(--surface);border-radius:18px;padding:15px;display:flex;align-items:center;justify-content:space-between}.tag{font-size:11px;padding:6px 9px;background:var(--surface-2);border-radius:999px;color:var(--muted);font-weight:700}
.input-row{display:flex;gap:8px;margin-top:14px}.input-row input{flex:1;border:1px solid var(--line);background:white;border-radius:15px;padding:13px 14px;min-width:0}.input-row button{border:0;border-radius:15px;padding:0 17px;background:var(--accent);color:#fff;font-weight:900}.check{width:24px;height:24px;border-radius:8px;border:2px solid var(--line);display:grid;place-items:center;margin-right:11px;flex:0 0 auto}.row-left{display:flex;align-items:center}.done{text-decoration:line-through;opacity:.5}.delete-btn{border:0;background:transparent;color:#aaa;font-size:20px}
@media (min-width:700px){.content{padding-left:26px;padding-right:26px}.topbar{padding-left:30px;padding-right:30px}.quick-grid{grid-template-columns:repeat(4,1fr)}.quick-card{min-height:150px}.hero-card{padding:31px}}

/* V0.2 – prijava, skupni podatki in koledar */
[hidden]{display:none!important}
.topbar.auth-mode{position:relative;background:transparent}.topbar.auth-mode .avatar{visibility:hidden}
.auth-wrap{max-width:520px;margin:18px auto 0;background:var(--surface);border-radius:30px;padding:28px 24px;box-shadow:var(--shadow)}
.brand-mark{width:58px;height:58px;border-radius:19px;display:grid;place-items:center;background:var(--text);color:white;font-size:26px;margin-bottom:20px}
.auth-kicker{font-size:11px;letter-spacing:.2em;font-weight:900;color:var(--accent);margin-bottom:7px}.auth-wrap h2,.error-card h2{font-size:30px;letter-spacing:-.045em}.auth-copy{margin-top:9px;color:var(--muted);line-height:1.5}.auth-form{display:grid;gap:12px;margin-top:22px}.auth-form.compact{margin-top:16px}.auth-form label{display:grid;gap:6px;font-size:12px;font-weight:800;color:#55544f}.auth-form input,.event-form input,.member-form input,.member-form select{width:100%;border:1px solid var(--line);background:#fff;border-radius:15px;padding:13px 14px;color:var(--text);outline:none}.auth-form input:focus,.event-form input:focus,.member-form input:focus,.member-form select:focus,.input-row input:focus{border-color:#bbb4aa;box-shadow:0 0 0 3px rgba(216,94,63,.08)}
.security-note{margin-top:18px;padding:12px 14px;border-radius:15px;background:var(--surface-2);font-size:12px;color:var(--muted);line-height:1.45}.member-choices{display:grid;gap:9px;margin-top:20px}.member-choice{display:flex;align-items:center;gap:12px;text-align:left;border:1px solid var(--line);background:#fff;border-radius:18px;padding:11px 13px;color:var(--text)}.member-choice.selected{border-color:var(--accent);background:var(--accent-soft)}.member-choice span:last-child{display:grid;gap:2px}.member-choice small{color:var(--muted)}.selected-user{font-size:13px;font-weight:800;color:var(--accent)}
.sync-pill{font-size:10px;color:#5c8362;background:#e8f1e8;border-radius:999px;padding:5px 8px;font-weight:800}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.event-form{margin-top:16px}.input-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.date-badge{width:44px;height:48px;display:grid;place-items:center;align-content:center;line-height:1;border-radius:13px;background:var(--surface-2);margin-right:12px;flex:0 0 auto}.date-badge strong{font-size:17px}.date-badge small{font-size:9px;text-transform:uppercase;color:var(--muted);margin-top:4px}.list-row p{font-size:11px;margin-top:2px}.check.checked{border-color:var(--accent);background:var(--accent);color:#fff}.small-avatar{width:42px;height:42px;margin-right:12px}.subsection{border-top:1px solid var(--line);margin-top:20px;padding-top:19px}.subsection h3{font-size:16px}.member-form{display:grid;grid-template-columns:1fr 110px;gap:8px;margin-top:12px}.member-form input[name="pin"],.member-form .primary-btn{grid-column:1/-1}.secondary-btn{margin-top:18px;width:100%;border:1px solid var(--line);background:#fff;color:var(--text);border-radius:16px;padding:13px 16px;font-weight:800}.primary-btn:disabled{opacity:.55;cursor:wait}.compact-empty{margin-top:0}.loading-card{margin:60px auto;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--muted)}.loader{width:22px;height:22px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-card{max-width:520px;margin:20px auto;background:var(--surface);border-radius:28px;padding:26px;box-shadow:var(--shadow)}.error-card p{color:var(--muted);margin-top:10px;line-height:1.5}.toast{position:fixed;left:50%;top:max(16px,env(safe-area-inset-top));transform:translate(-50%,-18px);z-index:100;background:#17181b;color:#fff;padding:11px 15px;border-radius:999px;font-size:12px;font-weight:800;opacity:0;pointer-events:none;transition:.2s;box-shadow:0 10px 28px rgba(0,0,0,.22)}.toast.show{opacity:1;transform:translate(-50%,0)}.toast.error{background:#9f3d31}
@media(max-width:420px){.auth-wrap{padding:24px 18px}.member-form{grid-template-columns:1fr}.member-form input[name="pin"],.member-form .primary-btn{grid-column:auto}.input-pair{grid-template-columns:1fr}}

/* V0.4 – družinski profili, urejanje članov in razširjene naloge */
.tone-graphite{background:#27292f!important;color:#fff!important}.tone-coral{background:#d85e3f!important;color:#fff!important}.tone-teal{background:#4f857f!important;color:#fff!important}.tone-blue{background:#5578a8!important;color:#fff!important}.tone-violet{background:#79699a!important;color:#fff!important}.tone-amber{background:#b88438!important;color:#fff!important}
.member-row{background:var(--surface);border-radius:18px;padding:14px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px}.member-inactive{opacity:.58}.mini-action{border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px 11px;font-size:11px;font-weight:800;color:var(--text)}
.member-form-v4{grid-template-columns:1fr 120px}.member-form-v4 select{min-width:0}.member-form-v4 input[name="pin"],.member-form-v4 .primary-btn{grid-column:1/-1}.task-form{margin-top:16px}.task-form>input,.task-form select,.task-form input[type="date"],.edit-member-form input,.edit-member-form select{width:100%;border:1px solid var(--line);background:#fff;border-radius:15px;padding:13px 14px;color:var(--text);outline:none}.task-form>input:focus,.task-form select:focus,.task-form input[type="date"]:focus,.edit-member-form input:focus,.edit-member-form select:focus{border-color:#bbb4aa;box-shadow:0 0 0 3px rgba(216,94,63,.08)}
.back-link{border:0;background:transparent;color:var(--accent);font-weight:800;padding:0;margin:0 0 18px}.profile-preview{display:flex;align-items:center;gap:15px;margin-bottom:20px}.profile-avatar{width:64px;height:64px;font-size:25px;flex:0 0 auto}.profile-preview h2{font-size:25px}.edit-member-form{display:grid;grid-template-columns:1fr 1fr;gap:11px}.edit-member-form label{display:grid;gap:6px;font-size:12px;font-weight:800;color:#55544f}.edit-member-form .primary-btn{grid-column:1/-1}.danger-zone p{font-size:12px}.danger-btn{margin-top:14px;width:100%;border:1px solid #d7aaa2;background:#fff4f1;color:#9f3d31;border-radius:16px;padding:13px 16px;font-weight:800}
@media(max-width:420px){.member-form-v4,.edit-member-form{grid-template-columns:1fr}.member-form-v4 input[name="pin"],.member-form-v4 .primary-btn,.edit-member-form .primary-btn{grid-column:auto}}

/* V0.5 – Google Calendar */
.google-calendar-card{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:19px;background:#fafafa}.google-calendar-card.connected{background:#f4f8f2;border-color:#d8e4d4}.google-calendar-card.warning{background:#fff7f3;border-color:#efd6cb}.google-calendar-head{display:flex;align-items:flex-start;gap:12px}.google-calendar-head p{font-size:12px;margin-top:3px}.google-logo{width:42px;height:42px;flex:0 0 auto;border-radius:13px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);font-size:13px;font-weight:900;color:#3869d4;box-shadow:0 4px 12px rgba(30,31,34,.05)}.google-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.secondary-inline{border:1px solid var(--line);background:#fff;color:var(--text);border-radius:12px;padding:9px 11px;font-size:11px;font-weight:800}.text-danger{border:0;background:transparent;color:#9f3d31;padding:9px 5px;font-size:11px;font-weight:800}.google-connect-btn{display:block;margin-top:14px;text-align:center;text-decoration:none;background:var(--text);color:#fff;border-radius:14px;padding:12px 14px;font-size:12px;font-weight:800}.google-hint{font-size:11px!important;line-height:1.45!important;margin-top:12px!important;color:#6f756b!important}

/* V0.6 – družinski avatarji, osebni dogodki in domači pregled */
.avatar.image-avatar{padding:0;overflow:hidden;background:#fff;border:2px solid rgba(255,255,255,.8)}
.avatar.image-avatar img{width:100%;height:100%;display:block;object-fit:cover}
.person-avatar.image-avatar{padding:0;overflow:hidden;background:#fff!important;color:transparent!important;border:1px solid rgba(0,0,0,.055)}
.person-avatar.image-avatar img{width:100%;height:100%;display:block;object-fit:cover}
.brand-mark.brand-logo{padding:0;overflow:hidden;background:#fff;border:1px solid var(--line)}
.brand-mark.brand-logo img{width:100%;height:100%;object-fit:cover;display:block}
.home-hero{align-items:center}.home-logo{width:72px;height:72px;border-radius:22px;object-fit:cover;flex:0 0 auto;box-shadow:0 8px 24px rgba(0,0,0,.22)}
.mini-card{position:relative;overflow:hidden}.mini-card::before,.calendar-row::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--event-tone,#c8c4bb)}
.mini-card-body{min-width:0}.event-owner{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-size:11px;color:var(--muted);font-weight:750}.event-avatar,.legend-avatar{width:24px;height:24px;flex:0 0 auto}.family-owner .owner-dot{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);font-size:11px;color:#64635d}.calendar-row{position:relative;overflow:hidden}.calendar-row-copy{min-width:0}.calendar-row .event-owner{margin-top:5px}.event-form-v6 select{width:100%;border:1px solid var(--line);background:#fff;border-radius:15px;padding:13px 14px;color:var(--text);outline:none;margin-top:8px}.event-form-v6 select:focus{border-color:#bbb4aa;box-shadow:0 0 0 3px rgba(216,94,63,.08)}
.member-color-legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px;padding:12px 13px;border-radius:16px;background:var(--surface-2)}.legend-person{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;color:#55544f}
.event-tone-graphite{--event-tone:#27292f}.event-tone-coral{--event-tone:#d85e3f}.event-tone-teal{--event-tone:#4f857f}.event-tone-blue{--event-tone:#5578a8}.event-tone-violet{--event-tone:#79699a}.event-tone-amber{--event-tone:#b88438}
@media(max-width:420px){.home-logo{width:60px;height:60px;border-radius:18px}.family-strip{gap:18px;overflow-x:auto}.event-owner{font-size:10px}}
.form-hint{font-size:11px!important;color:var(--muted);margin-top:6px!important}
.member-form-v4 input[name="pin"]{grid-column:1/-1}

/* PWA install helper */
.install-bar{position:fixed;left:50%;bottom:calc(82px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:1200;width:min(92vw,560px);display:grid;grid-template-columns:40px 1fr auto auto;gap:10px;align-items:center;padding:12px 12px 12px 14px;border:1px solid #dedbd4;border-radius:18px;background:rgba(255,255,255,.97);box-shadow:0 14px 44px rgba(23,24,27,.16);backdrop-filter:blur(14px)}
.install-bar[hidden]{display:none!important}.install-bar img{border-radius:11px}.install-bar strong{display:block;font-size:14px}.install-bar small{display:block;color:#777269;font-size:12px;line-height:1.35;margin-top:2px}.install-btn{border:0;border-radius:12px;padding:10px 14px;background:#17181b;color:white;font-weight:800}.install-close{border:0;background:transparent;font-size:24px;line-height:1;color:#777269;padding:5px 4px}.pwa-help{margin-top:16px;padding:14px;border:1px solid #dedbd4;border-radius:16px;background:#f7f6f2}.pwa-help strong{display:block;margin-bottom:4px}.pwa-help p{margin:0;color:#6f6a61;font-size:13px;line-height:1.45}
@media (max-width:520px){.install-bar{grid-template-columns:36px 1fr auto;padding:10px}.install-bar img{width:36px;height:36px}.install-close{position:absolute;right:6px;top:-10px;background:#fff;border:1px solid #dedbd4;border-radius:999px;width:28px;height:28px;font-size:18px;padding:0}.install-btn{padding:9px 12px}}

/* V0.8 – Domači center in vreme */
.dashboard-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:4px 4px 18px}.dashboard-intro h2{font-size:32px;letter-spacing:-.045em;line-height:1.05}.dashboard-intro>div>p:last-child{color:var(--muted);font-size:14px;margin-top:7px}.dashboard-date{font-size:12px;font-weight:850;color:var(--accent);margin-bottom:5px;text-transform:capitalize}.dashboard-logo{width:68px;height:68px;border-radius:20px;object-fit:cover;box-shadow:0 8px 22px rgba(30,31,34,.12);flex:0 0 auto}
.weather-card{background:linear-gradient(145deg,#17181b,#292c33);color:#fff;border-radius:30px;padding:21px;box-shadow:0 16px 36px rgba(22,23,27,.13);overflow:hidden}.weather-main{display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:15px}.weather-symbol{width:64px;height:64px;border-radius:20px;background:rgba(255,255,255,.09);display:grid;place-items:center;font-size:31px}.weather-now{min-width:0}.weather-kicker{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#b7bac1;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.weather-temperature{font-size:35px;font-weight:900;line-height:1;margin:4px 0 3px;letter-spacing:-.04em}.weather-now strong{display:block;font-size:13px}.weather-now small,.weather-range small{display:block;color:#b9bbc0;font-size:10px;margin-top:3px}.weather-range{text-align:right;min-width:46px}.weather-range span{display:block;color:#9da0a7;font-size:9px;text-transform:uppercase}.weather-range strong{display:block;font-size:20px;margin-top:4px}.weather-insight{margin-top:17px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.07);display:flex;gap:9px;align-items:flex-start}.weather-insight p{font-size:11px;line-height:1.45;color:#dbdce0}.forecast-strip{display:grid;grid-template-columns:repeat(6,minmax(58px,1fr));gap:7px;margin-top:13px;overflow-x:auto;padding-bottom:2px}.forecast-day{min-width:58px;text-align:center;padding:9px 5px;border-radius:14px;background:rgba(255,255,255,.055);display:grid;gap:3px;justify-items:center}.forecast-day span{font-size:9px;color:#b6b8be;text-transform:capitalize}.forecast-day b{font-size:17px;line-height:1.2}.forecast-day strong{font-size:12px}.forecast-day small{font-size:9px;color:#aeb1b7}.forecast-day em{font-style:normal;font-size:8px;color:#b9d3ee;min-height:10px}.weather-unavailable .weather-main{grid-template-columns:64px 1fr}.weather-unavailable strong{display:block}.weather-unavailable small{display:block;margin-top:4px;color:#b9bbc0;font-size:11px;line-height:1.4}
.dashboard-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:13px}.dashboard-actions button{border:1px solid rgba(0,0,0,.04);background:var(--surface);border-radius:18px;min-height:76px;padding:12px 8px;display:grid;justify-items:center;align-content:center;gap:6px;color:var(--text);box-shadow:0 5px 17px rgba(30,31,34,.03)}.dashboard-actions button span{font-size:19px;width:31px;height:31px;border-radius:11px;background:var(--surface-2);display:grid;place-items:center}.dashboard-actions button strong{font-size:11px}.dashboard-section{margin-top:23px}.dashboard-split{display:grid;grid-template-columns:1fr;gap:0}.dashboard-task-list{display:grid;gap:8px}.dashboard-task{width:100%;border:0;background:var(--surface);border-radius:18px;padding:13px;text-align:left;display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:10px;color:var(--text)}.dashboard-check{width:24px;height:24px;border-radius:8px;border:2px solid var(--line);display:grid;place-items:center;font-size:11px;font-weight:900}.dashboard-task strong{display:block;font-size:13px}.dashboard-task small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.dashboard-task-avatar{width:30px;height:30px}.family-overview{display:grid;grid-template-columns:1fr;gap:10px}.dashboard-family{overflow-x:auto}.shopping-status{border:0;background:var(--surface);border-radius:19px;padding:13px 15px;display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;text-align:left;color:var(--text)}.shopping-status>span{font-size:19px;width:38px;height:38px;border-radius:13px;background:var(--surface-2);display:grid;place-items:center}.shopping-status strong{display:block;font-size:17px}.shopping-status small{display:block;color:var(--muted);font-size:10px}.shopping-status b{font-size:22px;color:#aaa;font-weight:500}
@media(min-width:700px){.dashboard-split{grid-template-columns:1fr 1fr;gap:18px}.dashboard-split .dashboard-section{min-width:0}.family-overview{grid-template-columns:1fr 180px;align-items:stretch}.shopping-status{height:100%}}
@media(max-width:430px){.dashboard-intro h2{font-size:29px}.dashboard-logo{width:58px;height:58px;border-radius:17px}.weather-card{padding:17px;border-radius:25px}.weather-main{grid-template-columns:54px 1fr auto;gap:11px}.weather-symbol{width:54px;height:54px;border-radius:17px;font-size:27px}.weather-temperature{font-size:32px}.forecast-strip{grid-template-columns:repeat(6,57px)}.dashboard-actions{gap:7px}.dashboard-actions button{border-radius:16px;min-height:72px}.dashboard-actions button strong{font-size:10px}}
.weather-source{display:block;text-align:right;color:#81858d;font-size:8px;margin-top:8px}

/* V0.9.0 - Google family login */
.google-auth-wrap{text-align:left}.google-login-stack{margin-top:22px}.google-login-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid #d8dadd;background:#fff;color:#222;border-radius:16px;padding:13px 16px;font-weight:850;text-decoration:none;box-shadow:0 1px 2px rgba(0,0,0,.04);cursor:pointer}.google-login-btn:hover{background:#fafafa}.google-g{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #e3e3e3;font-weight:900;color:#4285f4;font-family:inherit}.auth-micro{margin-top:9px;text-align:center;font-size:11px;color:var(--muted);line-height:1.45}.pin-fallback{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.pin-fallback summary{cursor:pointer;font-size:12px;font-weight:800;color:var(--muted)}.pin-fallback>p{font-size:11px;color:var(--muted);line-height:1.45;margin-top:8px}.auth-submit{margin-top:0}.security-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--surface-2);border:0;border-radius:18px;padding:15px 16px;margin-bottom:16px}.security-panel p{font-size:11px;color:var(--muted);line-height:1.45;margin-top:4px}.security-score{min-width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid var(--line);font-size:12px;font-weight:900;color:var(--muted)}.security-score.ready{background:#e9f3e9;color:#47734e;border-color:#d1e5d3}.google-link-card{background:var(--surface-2);border:0;border-radius:18px;padding:16px;margin-top:18px}.google-account-line{display:flex;align-items:center;gap:11px;margin:12px 0}.google-account-line p{font-size:11px;color:var(--muted);margin-top:2px}.google-status-dot{width:11px;height:11px;border-radius:50%;background:#c9c9c9;box-shadow:0 0 0 4px #fff;flex:0 0 auto}.google-status-dot.linked{background:#5f9466}.compact-google{margin-top:13px}.form-hint{font-size:11px;color:var(--muted);line-height:1.45;margin-top:8px}

/* V0.10.0 - zasebni menstrualni koledar */
.private-cycle-card{width:100%;border:1px solid #eadde2;background:linear-gradient(135deg,#fff,#fbf3f6);border-radius:20px;padding:13px 15px;margin-top:10px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;text-align:left;color:var(--text);box-shadow:0 5px 17px rgba(30,31,34,.03)}
.private-cycle-card>span:nth-child(2){min-width:0}.private-cycle-card small{display:block;color:#a4687c;font-size:9px;font-weight:900;letter-spacing:.1em}.private-cycle-card strong{display:block;font-size:14px;margin-top:2px}.private-cycle-card em{display:block;font-style:normal;color:var(--muted);font-size:10px;margin-top:2px}.private-cycle-card>b{font-size:23px;font-weight:500;color:#b88a9a}.private-cycle-icon{width:40px;height:40px;border-radius:14px;background:#f4dfe6;display:grid;place-items:center;color:#9b536c;font-size:21px}
.cycle-page{display:grid;gap:14px}.cycle-hero-card{background:linear-gradient(135deg,#26252a,#40323a);color:#fff;border-radius:28px;padding:22px;display:flex;align-items:center;justify-content:space-between;gap:18px;box-shadow:0 14px 34px rgba(35,27,31,.13)}.cycle-hero-card small,.cycle-private-label{display:block;font-size:9px;font-weight:900;letter-spacing:.12em;color:#dcb9c6}.cycle-hero-card h2{font-size:27px;letter-spacing:-.04em;margin-top:4px}.cycle-hero-card p{font-size:12px;color:#d7cbd0;margin-top:5px}.cycle-hero-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:20px;background:rgba(255,255,255,.09);font-size:30px;flex:0 0 auto}
.cycle-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.cycle-summary-grid article{background:var(--surface);border-radius:18px;padding:14px;min-height:88px}.cycle-summary-grid small{display:block;color:#9a6a7a;font-size:8px;line-height:1.35;font-weight:900;letter-spacing:.08em}.cycle-summary-grid strong{display:block;font-size:13px;line-height:1.35;margin-top:8px}
.cycle-calendar-card{padding-top:18px}.cycle-month-head{display:grid;grid-template-columns:42px 1fr 42px;gap:9px;align-items:center;text-align:center}.cycle-month-head small{display:block;color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.1em}.cycle-month-head h3{font-size:17px;text-transform:capitalize;margin-top:2px}.cycle-month-btn{width:42px;height:42px;padding:0;border-radius:14px;font-size:23px}.cycle-weekdays,.cycle-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.cycle-weekdays{margin:16px 0 5px;color:var(--muted);font-size:9px;font-weight:850;text-align:center}.cycle-day{position:relative;aspect-ratio:1/1;border:1px solid var(--line);background:#fff;border-radius:11px;color:var(--text);display:grid;place-items:center;padding:0;font:inherit;font-size:12px}.cycle-day.today{outline:2px solid #25262a;outline-offset:1px}.cycle-day.period{background:#f4cbd7;border-color:#eab2c2}.cycle-day.fertile:not(.period){background:#e1efe6;border-color:#c7dfcf}.cycle-day.predicted:not(.period){box-shadow:inset 0 0 0 2px #b86f88}.cycle-day.has-log i{position:absolute;width:5px;height:5px;border-radius:50%;background:#25262a;bottom:4px}.cycle-day.cycle-empty{border-color:transparent;background:transparent}.cycle-legend{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:12px;color:var(--muted);font-size:9px}.cycle-legend i{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:4px;vertical-align:-1px}.cycle-legend .period{background:#f4cbd7}.cycle-legend .fertile{background:#e1efe6}.cycle-legend .predicted{border:2px solid #b86f88}.cycle-legend .log{border-radius:50%;background:#25262a;width:5px;height:5px;margin-left:2px;margin-right:6px}
.cycle-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:14px}.cycle-form-grid label{display:grid;gap:6px;color:#5f5a55;font-size:10px;font-weight:850}.cycle-form-grid input,.cycle-form-grid select,.cycle-form-grid textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px;color:var(--text);font:inherit;outline:none}.cycle-form-grid textarea{resize:vertical}.cycle-form-grid input:focus,.cycle-form-grid select:focus,.cycle-form-grid textarea:focus{border-color:#c69aaa;box-shadow:0 0 0 3px rgba(184,111,136,.08)}.cycle-wide{grid-column:1/-1}.cycle-form-actions{display:flex;gap:8px;flex-wrap:wrap}.cycle-form-actions>*{flex:1 1 180px}
.cycle-log-editor{margin-top:16px;padding:15px;border-radius:18px;background:#faf6f7;border:1px solid #eadde2}.cycle-log-editor .section-heading{margin-bottom:0}.cycle-history{display:grid}.cycle-history-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.cycle-history-row:last-child{border-bottom:0}.cycle-history-row strong{font-size:12px}.cycle-history-row small{display:block;color:var(--muted);font-size:10px;margin-top:3px;max-width:38ch}.cycle-history-actions{display:flex;align-items:center;gap:5px}.cycle-disclaimer{color:var(--muted);font-size:9px;line-height:1.5;padding:2px 5px 8px}
@media(max-width:430px){.cycle-hero-card{padding:18px;border-radius:24px}.cycle-hero-card h2{font-size:24px}.cycle-hero-icon{width:50px;height:50px;border-radius:17px}.cycle-summary-grid article{padding:12px;min-height:82px}.cycle-summary-grid strong{font-size:12px}.cycle-calendar{gap:3px}.cycle-weekdays{gap:3px}.cycle-day{border-radius:9px;font-size:11px}.cycle-form-grid{grid-template-columns:1fr}.cycle-wide{grid-column:auto}.cycle-history-row{grid-template-columns:1fr auto}.cycle-history-actions .mini-action{font-size:9px;padding:7px 8px}}

/* V0.11.1 - futuristični domači center + enotni pametni vnos */
:root{
  --bg:#07101f;
  --surface:#0e192b;
  --surface-2:#142238;
  --text:#f4f7fb;
  --muted:#8fa0b8;
  --line:#22324a;
  --accent:#6f9dff;
  --accent-soft:rgba(111,157,255,.13);
  --shadow:0 18px 54px rgba(0,0,0,.26);
}
html,body{background:
  radial-gradient(circle at 15% -5%,rgba(53,101,196,.24),transparent 28rem),
  radial-gradient(circle at 100% 10%,rgba(42,79,145,.14),transparent 24rem),
  var(--bg);color:var(--text)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.17;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(to bottom,black,transparent 58%)}
.app-shell{max-width:800px;padding-bottom:106px;position:relative}
.topbar{padding:19px 20px 13px;background:rgba(7,16,31,.72);border-bottom:1px solid rgba(255,255,255,.04);backdrop-filter:blur(24px) saturate(145%)}
.eyebrow{color:#739dff;font-size:9px;letter-spacing:.24em}.topbar h1{font-size:22px;color:#eaf0f8}.avatar{width:42px;height:42px;border:1px solid rgba(255,255,255,.13);background:#101c30;box-shadow:0 10px 30px rgba(0,0,0,.22)}
.content{padding:4px 16px 30px}

.bottom-nav{width:min(calc(100% - 20px),760px);grid-template-columns:1fr 1fr 74px 1fr 1fr;bottom:max(10px,env(safe-area-inset-bottom));padding:7px;background:rgba(10,19,34,.86);border:1px solid rgba(149,178,232,.13);border-radius:27px;box-shadow:0 20px 55px rgba(0,0,0,.4);backdrop-filter:blur(28px) saturate(150%)}
.nav-item{color:#718198;border-radius:18px;min-height:54px;padding:7px 3px}.nav-item span{font-size:19px}.nav-item small{font-size:9px;font-weight:750;letter-spacing:.02em}.nav-item.active{background:rgba(111,157,255,.12);color:#e9f0ff;box-shadow:inset 0 0 0 1px rgba(111,157,255,.11)}
.nav-item.nav-capture{width:66px;height:66px;align-self:center;justify-self:center;margin:-18px 0 -4px;border-radius:22px;background:linear-gradient(145deg,#87adff,#4f7ee0);color:#07101f;box-shadow:0 10px 30px rgba(64,111,207,.44),inset 0 1px 0 rgba(255,255,255,.55)}
.nav-item.nav-capture span{font-size:31px;font-weight:400;line-height:.8}.nav-item.nav-capture small{font-weight:900;color:#0a1830}.nav-item.nav-capture.active{background:linear-gradient(145deg,#9abaff,#5e8bea)}

.future-home-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:12px 4px 16px}.future-home-head p{color:#7790b1;font-size:11px;font-weight:750;text-transform:capitalize}.future-home-head h2{font-size:34px;line-height:1.05;letter-spacing:-.05em;margin-top:4px}.future-ai-orb{width:66px;height:66px;border:1px solid rgba(255,255,255,.14);border-radius:24px;background:linear-gradient(145deg,rgba(26,50,87,.92),rgba(12,25,45,.92));color:#dce7fa;display:grid;place-items:center;align-content:center;gap:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 16px 34px rgba(0,0,0,.28)}.future-ai-orb span{font-size:29px;line-height:.8}.future-ai-orb small{font-size:7px;letter-spacing:.12em;font-weight:900;color:#7da4f1;margin-top:6px}

.attention-card{position:relative;overflow:hidden;border:1px solid rgba(133,166,224,.14);background:linear-gradient(135deg,rgba(15,29,51,.95),rgba(9,19,34,.95));border-radius:28px;padding:20px;display:grid;grid-template-columns:30px 1fr auto;gap:12px;align-items:center;box-shadow:0 18px 42px rgba(0,0,0,.2)}
.attention-card:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-80px;top:-105px;background:radial-gradient(circle,rgba(111,157,255,.16),transparent 68%);pointer-events:none}.attention-pulse{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:rgba(111,157,255,.08)}.attention-pulse i{width:8px;height:8px;border-radius:50%;background:#77a3ff;box-shadow:0 0 0 7px rgba(111,157,255,.08),0 0 22px rgba(111,157,255,.9)}.attention-card.tone-urgent .attention-pulse i{background:#ff9e8d;box-shadow:0 0 0 7px rgba(255,125,105,.08),0 0 22px rgba(255,125,105,.7)}.attention-copy{min-width:0}.attention-copy small{display:block;font-size:8px;letter-spacing:.16em;font-weight:900;color:#6f8eb7}.attention-copy h3{font-size:20px;letter-spacing:-.025em;margin-top:5px}.attention-copy p{font-size:11px;color:#94a6bf;margin-top:5px;line-height:1.45}.attention-card>button{position:relative;z-index:1;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.045);border-radius:13px;color:#c9d7ec;padding:10px 11px;font-size:9px;font-weight:800;white-space:nowrap}.attention-card>button span{margin-left:4px}.attention-ok{position:relative;z-index:1;width:38px;height:38px;border-radius:14px;background:rgba(105,190,135,.1);color:#82d39e;display:grid;place-items:center}

.smart-entry-card{margin-top:12px;border:1px solid rgba(129,167,231,.16);border-radius:28px;padding:20px;background:linear-gradient(135deg,rgba(16,31,54,.91),rgba(12,24,43,.82));box-shadow:inset 0 1px 0 rgba(255,255,255,.035);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center}.smart-entry-card small,.lists-hero>small{font-size:8px;letter-spacing:.18em;font-weight:900;color:#6e98ea}.smart-entry-card h3{font-size:23px;letter-spacing:-.035em;margin-top:5px}.smart-entry-card p{font-size:11px;line-height:1.5;color:#879bb8;max-width:48ch;margin-top:6px}.smart-entry-actions{display:flex;gap:8px}.smart-entry-actions button{width:64px;height:68px;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:rgba(255,255,255,.035);color:#d7e3f6;display:grid;place-items:center;align-content:center;gap:6px}.smart-entry-actions button span{font-size:19px;color:#7ea7f6}.smart-entry-actions button b{font-size:9px;font-weight:800}

.future-digest{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.future-digest>span{border:1px solid rgba(255,255,255,.055);background:rgba(11,23,40,.8);border-radius:18px;padding:12px;display:grid;grid-template-columns:26px 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center}.future-digest i{grid-row:1/3;width:26px;height:26px;border-radius:9px;background:rgba(111,157,255,.09);display:grid;place-items:center;color:#7ea7f6;font-style:normal}.future-digest b{font-size:10px}.future-digest small{font-size:8px;color:#71849f;margin-top:2px}

.future-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-top:14px}.future-panel{border:1px solid rgba(255,255,255,.055);background:rgba(11,23,40,.78);border-radius:24px;padding:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}.future-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.future-panel-head small{font-size:8px;letter-spacing:.14em;font-weight:900;color:#617a9d}.future-panel-head h3{font-size:17px;margin-top:3px}.future-panel-head button{border:0;background:transparent;color:#7fa6ee;font-size:9px;font-weight:850}.future-shopping-panel{display:flex;justify-content:space-between;align-items:center}.future-shopping-panel small{font-size:8px;letter-spacing:.14em;color:#617a9d;font-weight:900}.future-shopping-panel h3{font-size:32px;margin-top:4px}.future-shopping-panel p{font-size:10px;color:#8396b0}.future-shopping-panel>button{border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.035);color:#afc5e8;border-radius:13px;padding:10px 12px;font-size:9px;font-weight:800}.future-empty{padding:15px;border:1px dashed #263851;border-radius:16px;color:#6f829e;font-size:10px;text-align:center}
.dashboard-task{background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.045);color:var(--text);padding:11px}.dashboard-check{border-color:#34445d}.dashboard-task small{color:#7387a3}.mini-card{background:rgba(255,255,255,.026);border-color:rgba(255,255,255,.045)}.mini-card.accent{background:rgba(111,157,255,.08)}.mini-card p{color:#7487a0}.time{color:#7ca5f4}
.future-private-card{background:linear-gradient(135deg,rgba(57,30,49,.45),rgba(24,25,43,.8));border-color:rgba(214,142,171,.12);color:#f4edf1}.future-private-card .private-cycle-icon{background:rgba(207,130,159,.13)}

.lists-hero{border:1px solid rgba(124,163,229,.15);background:linear-gradient(135deg,rgba(16,32,56,.96),rgba(10,21,38,.93));border-radius:28px;padding:22px;box-shadow:0 18px 42px rgba(0,0,0,.17)}.lists-hero h2{font-size:31px;letter-spacing:-.045em;margin-top:5px}.lists-hero p{color:#879ab6;font-size:11px;line-height:1.5;max-width:50ch;margin-top:7px}.lists-hero>button{margin-top:16px;border:1px solid rgba(123,163,233,.18);background:rgba(111,157,255,.1);color:#dce8fb;border-radius:14px;padding:11px 14px;font-size:10px;font-weight:850}.lists-switcher{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:10px 0}.lists-switcher button{border:1px solid rgba(255,255,255,.055);background:rgba(10,22,39,.75);color:#7f91aa;border-radius:17px;padding:10px;display:flex;align-items:center;justify-content:center;gap:7px;font-size:10px;font-weight:850}.lists-switcher button span{min-width:24px;height:24px;border-radius:9px;background:rgba(255,255,255,.04);display:grid;place-items:center}.lists-switcher button.active{color:#d9e5f9;border-color:rgba(111,157,255,.2);background:rgba(111,157,255,.09)}.future-list-stack{display:grid;gap:7px}.future-list-row{width:100%;border:1px solid rgba(255,255,255,.04);background:rgba(255,255,255,.02);border-radius:16px;color:var(--text);padding:11px;display:grid;grid-template-columns:26px 1fr auto;align-items:center;gap:10px;text-align:left}.future-list-check{width:24px;height:24px;border:1.5px solid #354861;border-radius:8px;display:grid;place-items:center;font-size:10px;color:#96b7f3}.future-list-check.checked{background:rgba(111,157,255,.14);border-color:#6f9dff}.future-list-row strong{display:block;font-size:12px}.future-list-row small{display:block;color:#6f829c;font-size:9px;margin-top:2px}.future-list-row>b{color:#526783;font-weight:500}

/* Pametni zajem */
.smart-open{overflow:hidden}.smart-overlay{position:fixed;inset:0;z-index:1600;display:grid;align-items:end;justify-items:center}.smart-backdrop{position:absolute;inset:0;background:rgba(0,5,13,.74);backdrop-filter:blur(12px)}.smart-sheet{position:relative;z-index:1;width:min(100%,760px);max-height:min(88vh,850px);overflow:auto;border:1px solid rgba(137,171,231,.17);border-bottom:0;border-radius:30px 30px 0 0;background:linear-gradient(180deg,#0e1b2f,#091421);padding:11px 18px calc(24px + env(safe-area-inset-bottom));box-shadow:0 -24px 80px rgba(0,0,0,.48)}.smart-handle{width:44px;height:4px;border-radius:99px;background:#30435f;margin:0 auto 15px}.smart-sheet-head{display:grid;grid-template-columns:1fr auto;gap:14px}.smart-sheet-head>div>small{font-size:8px;letter-spacing:.17em;color:#6f9dff;font-weight:900}.smart-sheet-head h2{font-size:27px;letter-spacing:-.045em;margin-top:5px}.smart-sheet-head p{color:#8194af;font-size:10px;line-height:1.45;margin-top:5px}.smart-close{width:38px;height:38px;border-radius:13px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.035);color:#9aabc2;font-size:20px}.smart-mode-row{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:18px}.smart-mode{border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.025);color:#788ba7;border-radius:15px;padding:10px 8px;font-size:9px;font-weight:800;display:flex;justify-content:center;align-items:center;gap:7px}.smart-mode span{font-size:15px}.smart-mode.active{color:#dbe7f9;background:rgba(111,157,255,.1);border-color:rgba(111,157,255,.18)}
#smartInput{width:100%;margin-top:11px;border:1px solid #263a55;border-radius:19px;background:#081322;color:#eef4fc;padding:15px;resize:vertical;outline:none;line-height:1.5;font:inherit;font-size:13px;min-height:108px}#smartInput:focus{border-color:#527ecb;box-shadow:0 0 0 3px rgba(111,157,255,.08)}#smartInput::placeholder{color:#52657f}.smart-photo-preview{margin-top:11px;border:1px solid rgba(255,255,255,.06);border-radius:18px;background:#091522;overflow:hidden}.smart-photo-preview img{width:100%;max-height:240px;object-fit:cover;display:block}.smart-photo-preview span{display:block;padding:10px 12px;color:#8193ad;font-size:9px;line-height:1.4}.smart-capture-actions{display:grid;grid-template-columns:auto auto 1fr;gap:7px;margin-top:9px}.smart-secondary,.smart-primary{border-radius:14px;padding:11px 12px;font-size:9px;font-weight:850}.smart-secondary{border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.03);color:#9fb2cb}.smart-secondary.listening{color:#fff;border-color:rgba(111,157,255,.25);background:rgba(111,157,255,.13)}.smart-primary{border:0;background:linear-gradient(135deg,#7ba5f8,#557fd3);color:#07101f}.smart-primary span{margin-left:5px}.smart-status{font-size:9px;color:#617590;margin-top:9px;line-height:1.4}.smart-results{margin-top:16px;padding-top:15px;border-top:1px solid rgba(255,255,255,.06)}.smart-results-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:8px}.smart-results-head small{display:block;font-size:7px;letter-spacing:.15em;color:#658acb;font-weight:900}.smart-results-head strong{display:block;font-size:14px;margin-top:2px}.smart-results-head>span{font-size:9px;color:#778ba6}.smart-result-card{position:relative;border:1px solid rgba(255,255,255,.055);background:rgba(255,255,255,.025);border-radius:17px;padding:11px 37px 11px 11px;display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;margin-top:7px}.smart-result-icon{width:34px;height:34px;border-radius:11px;background:rgba(111,157,255,.09);display:grid;place-items:center;color:#82a9f4}.smart-result-card small{display:block;font-size:7px;letter-spacing:.1em;color:#6680a4;font-weight:900}.smart-result-card strong{display:block;font-size:12px;margin-top:2px}.smart-result-card em{display:block;font-style:normal;color:#71849d;font-size:8px;margin-top:4px;line-height:1.35}.smart-result-card.smart-duplicate{opacity:.55}.smart-remove{position:absolute;right:9px;top:9px;width:25px;height:25px;border-radius:9px;border:0;background:transparent;color:#627590;font-size:17px}.smart-result-fields{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:7px}.smart-result-fields input{min-width:0;width:100%;border:1px solid #293d58;background:#081321;color:#dce7f7;border-radius:10px;padding:7px;font-size:10px}.smart-save{width:100%;margin-top:12px;border:0;border-radius:15px;padding:13px;background:linear-gradient(135deg,#7aa5fa,#547fda);color:#07101f;font-weight:900;font-size:11px}.smart-save:disabled{opacity:.55}

/* Temni sistemski elementi */
.page-card,.auth-wrap,.error-card{background:rgba(12,25,43,.94);border:1px solid rgba(255,255,255,.055);color:var(--text);box-shadow:var(--shadow)}.page-card p,.auth-copy,.form-hint{color:var(--muted)}.tag{background:#15253c;color:#8da1bd}.list-row,.member-row{background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.04);color:var(--text)}.secondary-btn,.secondary-inline,.mini-action{background:#0d1a2c!important;border-color:#26384f!important;color:#a9bdd7!important}.primary-btn{background:linear-gradient(135deg,#7da7fb,#547ed3);color:#07101f}.input-row input,.event-form input,.event-form select,.task-form input,.task-form select,.member-form input,.member-form select,.edit-member-form input,.edit-member-form select,.auth-form input,.cycle-form-grid input,.cycle-form-grid select,.cycle-form-grid textarea{background:#081321!important;border-color:#263a55!important;color:#edf4fc!important}.input-row input::placeholder,.event-form input::placeholder,.task-form input::placeholder,.member-form input::placeholder,.auth-form input::placeholder{color:#566a84}.input-row button{background:#6f9dff;color:#07101f}.google-calendar-card,.security-panel,.google-link-card,.pwa-help{background:#0c192b!important;border-color:#24364e!important;color:var(--text)}.google-login-btn{background:#f6f8fb;color:#202632}.install-bar{background:rgba(11,23,40,.96);border-color:#24364e;color:var(--text)}.install-bar small{color:#8498b4}.install-btn{background:#6f9dff;color:#07101f}.install-close{color:#8194ae}.cycle-summary-grid article,.cycle-log-editor{background:#0c192b;border-color:#25364c}.cycle-day{background:#0a1626;border-color:#25364c;color:#eaf1fa}.cycle-day.today{outline-color:#86aaf0}.cycle-form-grid label{color:#9aacbf}.cycle-disclaimer{color:#71859f}

@media(min-width:700px){.future-grid{grid-template-columns:1fr 1fr}.future-panel-main{grid-column:1/-1}.smart-sheet{border-radius:30px;margin-bottom:10px;border-bottom:1px solid rgba(137,171,231,.17)}.smart-entry-card{padding:22px 24px}.future-home-head{padding-top:18px}.lists-hero{padding:26px}}
@media(max-width:560px){.topbar{padding-left:16px;padding-right:16px}.content{padding-left:12px;padding-right:12px}.future-home-head h2{font-size:30px}.future-ai-orb{width:58px;height:58px;border-radius:20px}.attention-card{grid-template-columns:25px 1fr;padding:17px}.attention-card>button,.attention-ok{grid-column:2;justify-self:start}.smart-entry-card{grid-template-columns:1fr}.smart-entry-actions{width:100%}.smart-entry-actions button{height:58px;flex:1}.future-digest{grid-template-columns:1fr 1fr}.future-digest>span:nth-child(3){grid-column:1/-1}.smart-capture-actions{grid-template-columns:1fr 1fr}.smart-primary{grid-column:1/-1}.smart-sheet{padding-left:14px;padding-right:14px}.bottom-nav{grid-template-columns:1fr 1fr 68px 1fr 1fr}.nav-item.nav-capture{width:60px;height:60px;border-radius:20px}.weather-card{border:1px solid rgba(255,255,255,.06);background:linear-gradient(145deg,#0d1a2d,#111f34)}}

/* V0.12.1 - Local-first smart input */
.smart-result-card{align-items:start}.smart-result-body{min-width:0}.smart-result-meta{display:flex;align-items:center;gap:6px;min-height:16px}.smart-result-meta small{margin-right:auto}.smart-operation,.smart-confidence{display:inline-flex;align-items:center;border:1px solid rgba(111,157,255,.16);border-radius:99px;padding:2px 6px;font-size:6px;letter-spacing:.08em;font-weight:900;color:#82a9f4;background:rgba(111,157,255,.06)}.smart-confidence{color:#7f91aa;border-color:rgba(255,255,255,.06);background:transparent}.smart-module-switch{display:flex;gap:5px;margin:6px 0 7px}.smart-module-switch button{border:1px solid rgba(255,255,255,.055);background:rgba(255,255,255,.025);color:#667b98;border-radius:99px;padding:5px 8px;font-size:7px;font-weight:850}.smart-module-switch button.active{color:#dce8fb;border-color:rgba(111,157,255,.22);background:rgba(111,157,255,.1)}.smart-title-input{width:100%;border:0;border-bottom:1px solid rgba(255,255,255,.07);background:transparent;color:#eef4fc;padding:4px 0 7px;outline:none;font:inherit;font-size:12px;font-weight:800}.smart-title-input:focus{border-color:#527ecb}.smart-result-fields.single{grid-template-columns:1fr}.smart-question{border:1px solid rgba(111,157,255,.17);background:rgba(111,157,255,.055);border-radius:17px;padding:13px;margin-bottom:11px}.smart-question small{display:block;color:#76a0ee;font-size:7px;letter-spacing:.13em;font-weight:900}.smart-question strong{display:block;font-size:13px;line-height:1.35;margin-top:4px}.smart-question>div{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:10px}.smart-question input{min-width:0;border:1px solid #2b4261;background:#081321;color:#eef4fc;border-radius:12px;padding:9px 10px;font-size:11px;outline:none}.smart-question button{border:0;border-radius:12px;padding:9px 12px;background:linear-gradient(135deg,#7ba5f8,#557fd3);color:#07101f;font-size:9px;font-weight:900}@media(max-width:420px){.smart-module-switch{gap:4px}.smart-module-switch button{padding:5px 7px}.smart-result-meta{flex-wrap:wrap}.smart-result-meta small{width:100%}.smart-question>div{grid-template-columns:1fr}.smart-question button{width:100%}}


/* V0.12.1 - contextual local smart input */
.smart-context-voice{margin-top:.65rem;width:100%;justify-content:center;min-height:42px}
.smart-needs-module{border-style:dashed}
.smart-needs-module .smart-result-icon{font-weight:800}


/* V0.13.0 - weather + alert center */
.topbar-actions{display:flex;align-items:center;gap:9px}.alert-bell{position:relative;width:44px;height:44px;border-radius:15px;border:1px solid rgba(111,157,255,.14);background:rgba(111,157,255,.055);color:#9bb7e8;display:grid;place-items:center;font-size:20px}.alert-bell b{position:absolute;right:-3px;top:-4px;min-width:18px;height:18px;border-radius:99px;background:#e36f58;color:#fff;border:2px solid #07101f;font-size:9px;line-height:14px;text-align:center;padding:0 4px}.future-weather-wrap{margin-top:12px;margin-bottom:12px}.alert-overlay{position:fixed;inset:0;z-index:1700;display:grid;align-items:end;justify-items:center}.alert-backdrop{position:absolute;inset:0;background:rgba(0,5,13,.68);backdrop-filter:blur(10px)}.alert-sheet{position:relative;z-index:1;width:min(100%,760px);max-height:min(86vh,820px);overflow:auto;border:1px solid rgba(137,171,231,.16);border-bottom:0;border-radius:30px 30px 0 0;background:linear-gradient(180deg,#0e1b2f,#091421);padding:12px 16px calc(24px + env(safe-area-inset-bottom));box-shadow:0 -24px 80px rgba(0,0,0,.48)}.alert-sheet-handle{width:44px;height:4px;border-radius:99px;background:#30435f;margin:0 auto 15px}.alert-sheet-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.alert-sheet-head small{display:block;font-size:8px;letter-spacing:.16em;color:#6f9dff;font-weight:900}.alert-sheet-head h2{font-size:27px;letter-spacing:-.045em;margin-top:4px}.alert-sheet-head p{font-size:10px;color:#8194af;margin-top:5px;line-height:1.45}.alert-close{width:38px;height:38px;border-radius:13px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.035);color:#9aabc2;font-size:20px}.alert-permission{margin:16px 0 10px;padding:13px;border-radius:17px;background:rgba(111,157,255,.065);border:1px solid rgba(111,157,255,.14);display:flex;align-items:center;justify-content:space-between;gap:12px}.alert-permission strong{font-size:11px}.alert-permission small{display:block;color:#7f93ae;font-size:8px;margin-top:3px;line-height:1.35}.alert-permission button{border:0;border-radius:12px;padding:9px 11px;background:#6f9dff;color:#07101f;font-size:8px;font-weight:900;white-space:nowrap}.alert-list{display:grid;gap:8px;margin-top:12px}.alert-item{border:1px solid rgba(255,255,255,.055);background:rgba(255,255,255,.025);border-radius:18px;padding:12px;display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center}.alert-item-icon{width:36px;height:36px;border-radius:12px;background:rgba(111,157,255,.08);display:grid;place-items:center;color:#8eb1f2;font-size:16px}.alert-item.high .alert-item-icon{background:rgba(227,111,88,.1);color:#ef8c76}.alert-item.medium .alert-item-icon{background:rgba(225,172,81,.09);color:#e8bd69}.alert-item strong{display:block;font-size:12px}.alert-item p{font-size:9px;color:#7f93ad;margin-top:3px;line-height:1.4}.alert-item button{border:0;background:transparent;color:#86aaf0;font-size:9px;font-weight:800}.alert-empty{padding:28px 16px;border:1px dashed rgba(255,255,255,.08);border-radius:18px;text-align:center;color:#7287a4;font-size:10px}.alert-footer{margin-top:13px;color:#60758f;font-size:8px;line-height:1.45}.weather-insight.alert-high{background:rgba(227,111,88,.10);border:1px solid rgba(227,111,88,.13)}.weather-insight.alert-medium{background:rgba(225,172,81,.08);border:1px solid rgba(225,172,81,.10)}
@media(max-width:560px){.topbar-actions{gap:7px}.alert-bell{width:42px;height:42px;border-radius:14px}.alert-sheet{padding-left:14px;padding-right:14px}.alert-permission{align-items:flex-start;flex-direction:column}.alert-permission button{width:100%}}

.topbar.auth-mode .alert-bell{display:none}


/* ŠNOFI V0.13.0 - shopping clarity + Web Push */
.shopping-section-head{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#dce8f8}.shopping-section-head>strong{font-size:11px;letter-spacing:.08em;text-transform:uppercase}.shopping-section-head small{display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:9px;background:rgba(111,157,255,.08);color:#88a9df;font-size:9px;font-weight:900}.shopping-section-head.bought{margin-top:24px;color:#91a3b9}.shopping-section-head.bought>div{display:flex;align-items:center;gap:8px}.shopping-section-head button{border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.035);color:#9bb3d0;border-radius:11px;padding:7px 9px;font-size:8px;font-weight:850}.shopping-item-row .row-left{min-width:0}.shopping-item-row .row-left>div{min-width:0}.shopping-item-row strong{overflow-wrap:anywhere}.shopping-done-list{opacity:.72}.shopping-done-list .list-row{background:rgba(255,255,255,.016)}

/* ŠNOFI V0.14.0 - Oskarjeva opravila in nagrade */
.oskar-home-card{width:100%;margin-top:14px;border:1px solid rgba(255,255,255,.07);background:linear-gradient(135deg,rgba(217,157,68,.10),rgba(111,157,255,.055));border-radius:22px;padding:14px 16px;display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:13px;text-align:left;color:var(--text)}
.oskar-home-avatar{width:52px;height:52px;border-radius:18px;overflow:hidden;background:rgba(217,157,68,.12);display:grid;place-items:center}.oskar-home-avatar img{width:100%;height:100%;object-fit:cover}.oskar-home-copy{min-width:0;display:grid;gap:3px}.oskar-home-copy small{font-size:9px;letter-spacing:.10em;color:#b9c7da;font-weight:850}.oskar-home-copy strong{font-size:21px}.oskar-home-copy em,.oskar-home-copy i{font-style:normal;color:#8497b2;font-size:11px}.oskar-home-copy i{color:#d5b271}.oskar-home-card>b{font-size:22px;color:#7890ad}
.oskar-hero{border:1px solid rgba(255,255,255,.07);background:linear-gradient(145deg,#0d1a2d,#111f34 60%,#182032);border-radius:26px;padding:20px;box-shadow:var(--shadow);display:grid;grid-template-columns:1fr auto;gap:18px;position:relative;overflow:hidden}.oskar-hero:after{content:'';position:absolute;width:180px;height:180px;border-radius:50%;right:-75px;top:-85px;background:radial-gradient(circle,rgba(217,157,68,.18),transparent 68%);pointer-events:none}.oskar-profile{display:flex;align-items:center;gap:14px;min-width:0}.oskar-profile img{width:64px;height:64px;border-radius:22px;object-fit:cover;background:#18263b}.oskar-profile small,.oskar-section-head small,.oskar-goal-card small{font-size:9px;letter-spacing:.11em;font-weight:900;color:#8ea2bd}.oskar-profile h2{margin:3px 0 2px;font-size:25px}.oskar-profile p{margin:0;color:var(--muted);font-size:12px}.oskar-score{text-align:right;align-self:center;z-index:1}.oskar-score strong{display:block;font-size:36px;line-height:1}.oskar-score span{display:block;margin-top:6px;font-size:9px;font-weight:900;letter-spacing:.1em;color:#d8b66c}.oskar-stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.oskar-stats article{background:rgba(255,255,255,.032);border:1px solid rgba(255,255,255,.045);border-radius:16px;padding:12px}.oskar-stats strong{display:block;font-size:18px}.oskar-stats small{color:#8396b0;font-size:10px}
.oskar-goal-card{margin-top:14px;border:1px solid rgba(217,157,68,.18);background:rgba(217,157,68,.055);border-radius:22px;padding:16px}.oskar-goal-card.empty-goal{border-style:dashed;background:rgba(255,255,255,.02)}.oskar-goal-card h3{margin:4px 0;font-size:18px}.oskar-goal-card p{margin:4px 0 0;color:var(--muted);font-size:11px}.oskar-goal-head{display:flex;justify-content:space-between;align-items:end;gap:12px}.oskar-goal-head>strong{white-space:nowrap;color:#e5c271}.oskar-goal-track{height:10px;background:#17263a;border-radius:999px;overflow:hidden;margin:14px 0 9px}.oskar-goal-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#d6a54f,#f0ca7a)}.oskar-goal-foot{display:flex;align-items:center;gap:10px;color:#8fa2bb;font-size:10px}.oskar-goal-foot span:nth-child(2){flex:1}.oskar-goal-foot button{border:0;background:transparent;color:#a9bdd7;font-weight:800;font-size:10px}
.oskar-section{margin-top:14px;background:rgba(12,25,43,.94);border:1px solid rgba(255,255,255,.055);border-radius:22px;padding:16px;box-shadow:var(--shadow)}.oskar-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.oskar-section-head h3{margin:3px 0 0;font-size:18px}.oskar-day-progress{display:flex;align-items:center;gap:8px}.oskar-day-progress>span{font-size:11px;font-weight:850;color:#a8bdd8}.oskar-day-progress>i{position:relative;width:90px;height:8px;border-radius:999px;background:#17263a;overflow:hidden}.oskar-day-progress b,.oskar-day-progress em{position:absolute;left:0;top:0;height:100%;display:block}.oskar-day-progress b{background:#78aa83}.oskar-day-progress em{background:#c6a45f}
.oskar-chore-list{display:grid;gap:8px}.oskar-chore-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.045);background:rgba(255,255,255,.022);border-radius:16px}.oskar-chore-row.status-approved{background:rgba(104,168,120,.055);border-color:rgba(104,168,120,.13)}.oskar-chore-row.status-submitted{background:rgba(214,165,79,.045);border-color:rgba(214,165,79,.12)}.oskar-chore-main{display:flex;align-items:center;gap:10px;min-width:0}.oskar-chore-dot{width:28px;height:28px;border-radius:10px;border:1px solid #32455f;display:grid;place-items:center;flex:0 0 auto;color:#8bbf94;font-size:13px;font-weight:900}.status-submitted .oskar-chore-dot{color:#d6b36b}.oskar-chore-main strong{display:block;font-size:12px;line-height:1.3}.oskar-chore-main small{display:block;margin-top:3px;color:#7f92ad;font-size:9px}.oskar-chore-actions{display:flex;align-items:center;gap:6px}.oskar-do-btn,.oskar-approve-actions button,.oskar-reward-request,.oskar-goal-btn,.oskar-edit-mini,.oskar-redemption-list button{border:1px solid #2a3d57;background:#102036;color:#b7c9df;border-radius:11px;padding:8px 10px;font-size:9px;font-weight:850}.oskar-do-btn{background:#6f9dff;color:#07101f;border-color:transparent}.oskar-approve-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.oskar-approve-actions button{background:rgba(104,168,120,.13);border-color:rgba(104,168,120,.22);color:#b8d8bf}.oskar-approve-actions .bonus{background:rgba(214,165,79,.11);border-color:rgba(214,165,79,.2);color:#e1bf78}.oskar-approve-actions .reject{background:transparent;color:#8ea2ba;border-color:#293b52}.oskar-state{font-size:9px;font-weight:850;white-space:nowrap}.oskar-state.approved{color:#9fc7a6}.oskar-state.pending{color:#d6b36b}.oskar-reset{border:0;background:transparent;color:#6f839e;font-size:14px;padding:6px}.oskar-pending-box{border-color:rgba(214,165,79,.13)}.oskar-pending-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid rgba(255,255,255,.045);padding:10px 0}.oskar-pending-row:first-of-type{border-top:0}.oskar-pending-row strong{font-size:11px}.oskar-pending-row small{display:block;color:#8295ae;font-size:9px;margin-top:2px}
.oskar-balance-pill{padding:7px 10px;border-radius:12px;background:rgba(217,157,68,.10);color:#e1bd70;font-size:11px;font-weight:900}.oskar-reward-group{margin-top:16px}.oskar-reward-group:first-of-type{margin-top:4px}.oskar-reward-group-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;color:#9eb0c7;font-size:10px}.oskar-reward-group-head>strong{letter-spacing:.08em}.oskar-reward-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.oskar-reward-card{border:1px solid rgba(255,255,255,.045);background:rgba(255,255,255,.022);border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:9px;min-width:0}.oskar-reward-card.is-goal{border-color:rgba(217,157,68,.24);box-shadow:inset 0 0 0 1px rgba(217,157,68,.07)}.oskar-reward-top{display:flex;justify-content:space-between;gap:8px}.oskar-reward-top span{font-size:8px;font-weight:900;letter-spacing:.1em;color:#8194ad}.oskar-reward-top strong{font-size:11px;color:#dfbd72}.oskar-reward-card h4{margin:0;font-size:11px;line-height:1.35;min-height:30px}.oskar-reward-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:auto}.oskar-reward-request:disabled{opacity:.48}.oskar-goal-btn{background:transparent}.oskar-goal-btn.active{color:#dfbd72;border-color:rgba(217,157,68,.22)}.oskar-edit-mini{padding:6px 8px;background:transparent;color:#7287a2}.oskar-redemption-list{display:grid;gap:8px}.oskar-redemption-list article{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(255,255,255,.045);border-radius:14px;padding:10px}.oskar-redemption-list article strong{font-size:11px}.oskar-redemption-list article small{display:block;color:#8094ae;font-size:9px;margin-top:3px}.oskar-redemption-list article>div:last-child{display:flex;gap:5px}
.oskar-media>p{margin:12px 0 0;color:#8da0b8;font-size:10px}.oskar-media-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.oskar-media-grid article{background:rgba(255,255,255,.022);border:1px solid rgba(255,255,255,.045);border-radius:15px;padding:12px}.oskar-media-grid article>span{font-size:9px;font-weight:900;letter-spacing:.08em;color:#a5b7ce}.oskar-media-grid ul{margin:8px 0 0;padding-left:16px;color:#8396af;font-size:9px;line-height:1.55}.media-unlocked,.media-wait,.media-locked{display:block;border-radius:13px;padding:10px 12px;font-size:10px}.media-unlocked{background:rgba(104,168,120,.08);color:#a7cdae}.media-wait{background:rgba(214,165,79,.08);color:#dabb79}.media-locked{background:rgba(255,255,255,.025);color:#9aaec7}.oskar-parent-tools{margin-top:14px;border:1px solid rgba(255,255,255,.055);background:#0c192b;border-radius:18px;color:var(--text);overflow:hidden}.oskar-parent-tools summary{cursor:pointer;padding:14px 16px;font-size:11px;font-weight:850;color:#9fb3ce}.oskar-parent-tools-body{border-top:1px solid rgba(255,255,255,.045);padding:14px 16px}.oskar-parent-tools-body p{color:#7f93ad;font-size:10px}.oskar-parent-tools form{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:7px}.oskar-parent-tools input{min-width:0;border:1px solid #263a55;background:#081321;color:#edf4fc;border-radius:11px;padding:10px}
@media(max-width:700px){.oskar-hero{grid-template-columns:1fr}.oskar-score{text-align:left}.oskar-stats{grid-template-columns:repeat(2,1fr)}.oskar-chore-row{grid-template-columns:1fr}.oskar-chore-actions{justify-content:flex-start}.oskar-approve-actions{justify-content:flex-start}.oskar-reward-grid{grid-template-columns:1fr}.oskar-media-grid{grid-template-columns:1fr}.oskar-pending-row,.oskar-redemption-list article{align-items:flex-start;flex-direction:column}.oskar-parent-tools form{grid-template-columns:1fr}.oskar-goal-head{align-items:flex-start;flex-direction:column}.oskar-goal-foot{flex-wrap:wrap}.oskar-goal-foot span:nth-child(2){flex:1 1 60%}}
@media(max-width:420px){.oskar-profile img{width:54px;height:54px;border-radius:18px}.oskar-profile h2{font-size:21px}.oskar-stats article{padding:10px}.oskar-stats strong{font-size:16px}.oskar-day-progress>i{width:64px}.oskar-home-card{grid-template-columns:46px 1fr auto}.oskar-home-avatar{width:46px;height:46px}}

.oskar-list-summary{width:100%;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:11px;text-align:left;border:1px solid rgba(217,157,68,.12);background:rgba(217,157,68,.04);color:var(--text);border-radius:16px;padding:11px}.oskar-list-summary img{width:44px;height:44px;border-radius:15px;object-fit:cover}.oskar-list-summary span{display:grid;gap:2px}.oskar-list-summary small{font-size:8px;letter-spacing:.1em;color:#8ea2bb;font-weight:900}.oskar-list-summary strong{font-size:11px}.oskar-list-summary em{font-style:normal;color:#7f93ad;font-size:9px}.oskar-list-summary>b{color:#6f839d}

/* V0.15.0 - Sandra cycle import/export */
.cycle-transfer-card p{font-size:11px;line-height:1.55;color:var(--muted)}
.cycle-transfer-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}
.cycle-transfer-actions .secondary-btn{margin-top:0;display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;min-height:44px}
.cycle-transfer-note{display:block;margin-top:11px;color:var(--muted);font-size:9px;line-height:1.5}
.cycle-download{white-space:normal}
@media(max-width:560px){.cycle-transfer-actions{grid-template-columns:1fr}.cycle-transfer-actions .secondary-btn{width:100%}}

/* V0.17.0 - calmer information architecture and permission-aware surfaces */
.ui-icon{width:20px;height:20px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bottom-nav .nav-item span{width:24px;height:24px;display:grid;place-items:center}.bottom-nav .nav-item span svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.bottom-nav .nav-item{min-height:58px;min-width:48px}.bottom-nav .nav-capture span svg{width:29px;height:29px}.bottom-nav .nav-capture span{width:31px;height:31px}

.today-hero{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:end;padding:12px 4px 18px}.today-hero>div:first-child small{display:block;color:#7e93af;font-size:10px;text-transform:capitalize}.today-hero h2{font-size:32px;letter-spacing:-.05em;margin-top:4px}.today-weather{max-width:210px;text-align:right;display:grid;gap:3px}.today-weather>span{font-size:12px;font-weight:850;color:#c9d7ea}.today-weather small{font-size:8px;line-height:1.3;color:#7890ae}
.today-notice{width:100%;display:grid;grid-template-columns:30px 1fr 20px;align-items:center;gap:10px;text-align:left;border:1px solid rgba(222,177,92,.15);background:rgba(222,177,92,.065);color:#e4c885;border-radius:18px;padding:12px 14px;margin-bottom:12px}.today-notice>span:first-child{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:rgba(222,177,92,.08)}.today-notice strong{display:block;font-size:11px}.today-notice small{display:block;font-size:8px;color:#9a8b6b;margin-top:2px}
.today-section{border:1px solid rgba(255,255,255,.055);background:rgba(11,23,40,.78);border-radius:24px;padding:16px}.today-section-head,.plan-section-title{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}.today-section-head small,.plan-section-title small,.shopping-head small,.family-hub-head small,.plan-head small{font-size:8px;letter-spacing:.15em;font-weight:900;color:#739bf0}.today-section-head h3,.plan-section-title h3{font-size:18px;margin-top:3px}.today-section-head button{border:0;background:transparent;color:#8aaaf0;font-size:9px;font-weight:850}.today-flow{display:grid;margin-top:9px}.today-flow-row{display:grid;grid-template-columns:30px 62px minmax(0,1fr);gap:9px;align-items:center;padding:11px 2px;border-top:1px solid rgba(255,255,255,.045)}.today-flow-row:first-child{border-top:0}.today-flow-icon{width:30px;height:30px;border-radius:10px;background:rgba(111,157,255,.07);color:#779ff0;display:grid;place-items:center}.today-flow-icon .ui-icon{width:15px;height:15px}.today-flow-time{font-size:9px;font-weight:900;color:#8ba1bd}.today-flow-row.task .today-flow-time{color:#cfad6a}.today-flow-copy strong{display:block;font-size:11px}.today-flow-copy small{display:block;color:#6f839e;font-size:8px;margin-top:2px}.today-empty{padding:24px 14px;text-align:center;color:#687d98;font-size:10px;border:1px dashed rgba(255,255,255,.07);border-radius:16px}
.today-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.home-focus-card{min-width:0;display:grid;grid-template-columns:46px minmax(0,1fr) 18px;gap:10px;align-items:center;text-align:left;border:1px solid rgba(255,255,255,.055);background:rgba(11,23,40,.78);color:var(--text);border-radius:20px;padding:12px}.home-focus-card>span:nth-child(2){min-width:0}.home-focus-card small{display:block;font-size:7px;letter-spacing:.13em;color:#758da9;font-weight:900}.home-focus-card strong{display:block;font-size:12px;margin-top:3px}.home-focus-card em{display:block;font-style:normal;font-size:8px;color:#71849e;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-person-avatar,.home-card-icon{width:46px;height:46px;border-radius:15px;overflow:hidden;background:#101f34;display:grid;place-items:center;color:#83a7ed}.home-person-avatar img{width:100%;height:100%;object-fit:cover}.home-card-icon .ui-icon{width:22px;height:22px}.home-focus-card>.ui-icon{width:16px;height:16px;color:#506886}

.plan-head,.shopping-head,.family-hub-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:10px 4px 14px}.plan-head h2,.shopping-head h2,.family-hub-head h2{font-size:30px;letter-spacing:-.045em;margin-top:3px}.plan-head p,.shopping-head p,.family-hub-head p{color:#7589a5;font-size:10px;line-height:1.45;margin-top:5px}.plan-head>button,.family-hub-head>button{border:1px solid rgba(111,157,255,.14);background:rgba(111,157,255,.08);color:#a9c3f6;border-radius:15px;min-height:44px;padding:10px 12px;display:flex;align-items:center;gap:6px;font-size:9px;font-weight:850}.plan-head>button .ui-icon,.family-hub-head>button .ui-icon{width:17px;height:17px}
.plan-week{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:10px}.plan-day{border:1px solid rgba(255,255,255,.055);background:rgba(255,255,255,.018);color:#71849f;border-radius:14px;padding:9px 2px;display:grid;gap:4px;place-items:center}.plan-day small{font-size:7px;text-transform:capitalize}.plan-day strong{font-size:13px}.plan-day.active{background:rgba(111,157,255,.13);border-color:rgba(111,157,255,.2);color:#dce8fb}.plan-day-panel,.plan-suggestions{border:1px solid rgba(255,255,255,.055);background:rgba(11,23,40,.78);border-radius:22px;padding:15px;margin-top:10px}.plan-section-title>span{min-width:28px;height:28px;border-radius:10px;display:grid;place-items:center;background:#14243a;color:#8ca7ca;font-size:9px;font-weight:900}.plan-items{display:grid;margin-top:8px}.plan-item{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;border-top:1px solid rgba(255,255,255,.045);padding:11px 0}.plan-item:first-child{border-top:0}.plan-item-icon,.plan-task-check{width:32px;height:32px;border-radius:11px;display:grid;place-items:center}.plan-item-icon{background:rgba(111,157,255,.07);color:#779ff1}.plan-item-icon .ui-icon{width:16px;height:16px}.plan-task-check{border:1px solid #31445e;background:transparent;color:#07101f}.plan-task-check.checked{background:#7da4f0;color:#07101f;border-color:transparent}.plan-task-check:disabled{opacity:.28}.plan-item-main small{display:block;color:#657c9a;font-size:7px;letter-spacing:.09em;font-weight:900}.plan-item-main strong{display:block;font-size:11px;margin-top:2px}.plan-item-main em{display:block;font-style:normal;color:#70849e;font-size:8px;margin-top:2px}.plan-item.overdue .plan-item-main small{color:#d98778}.plan-item.done-item{opacity:.48}.plan-delete,.shop-delete{border:0;background:transparent;color:#60738d;font-size:18px;padding:8px}.plan-no-date,.plan-manual,.plan-settings,.shopping-done,.oskar-more{margin-top:10px;border:1px solid rgba(255,255,255,.055);background:rgba(11,23,40,.64);border-radius:18px;overflow:hidden}.plan-no-date>summary,.plan-manual>summary,.shopping-done>summary,.oskar-more>summary{list-style:none;padding:13px 15px;font-size:10px;font-weight:850;color:#92a7c4;cursor:pointer}.plan-no-date>summary::-webkit-details-marker,.plan-manual>summary::-webkit-details-marker,.shopping-done>summary::-webkit-details-marker,.oskar-more>summary::-webkit-details-marker{display:none}.plan-no-date>summary span,.shopping-done>summary span{float:right;background:#15273f;border-radius:99px;padding:2px 7px}.plan-no-date>div,.shopping-done>div,.oskar-more>div{padding:0 15px 13px}.plan-manual-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 13px 13px}.plan-manual form{display:grid;gap:7px;padding:12px;background:rgba(255,255,255,.02);border-radius:14px}.plan-manual input,.plan-manual select{width:100%;min-width:0;border:1px solid #263a55;background:#081321;color:#edf4fc;border-radius:11px;padding:10px}.plan-manual form>button{border:0;border-radius:11px;padding:10px;background:#6f9dff;color:#07101f;font-weight:850}.plan-settings summary{list-style:none;display:grid;grid-template-columns:28px 1fr 18px;gap:9px;align-items:center;padding:13px 15px;cursor:pointer}.plan-settings summary>span:first-child{color:#7d9fdc}.plan-settings summary strong{display:block;font-size:10px}.plan-settings summary small{display:block;color:#697f9c;font-size:8px;margin-top:2px}.plan-settings summary>.ui-icon{width:15px;height:15px;color:#526b89}.plan-settings-body{padding:0 15px 14px;display:flex;flex-wrap:wrap;gap:7px}.plan-settings-body .secondary-inline{margin:0}.plan-settings-body p{color:#71859e;font-size:9px}.plan-sync-status{display:flex;align-items:center;gap:8px;color:#7387a3;font-size:9px;padding:10px 4px}.plan-sync-status>span{width:7px;height:7px;border-radius:50%;background:#6b9778}.suggestion-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 0;border-top:1px solid rgba(255,255,255,.045)}.suggestion-row:first-of-type{margin-top:7px}.suggestion-row>span{color:#d4ad66}.suggestion-row strong{display:block;font-size:10px}.suggestion-row small{display:block;color:#71859f;font-size:8px;margin-top:2px}.suggestion-row>div:last-child{display:flex;gap:5px}.suggestion-row button,.oskar-approval-compact button{border:1px solid rgba(111,157,255,.16);background:rgba(111,157,255,.1);color:#b6cdf8;border-radius:9px;padding:7px 8px;font-size:8px;font-weight:850}.suggestion-row .ghost,.oskar-approval-compact .ghost{background:transparent;color:#788ca7}.child-pending-note{display:flex;gap:10px;align-items:center;padding:12px 14px;border:1px solid rgba(222,177,92,.12);background:rgba(222,177,92,.045);border-radius:16px;color:#c9ae74}.child-pending-note .ui-icon{width:18px;height:18px}.child-pending-note strong{display:block;font-size:9px}.child-pending-note small{display:block;color:#897a5d;font-size:8px;margin-top:2px}

.shopping-head>span{min-width:48px;height:48px;border-radius:16px;background:rgba(111,157,255,.09);display:grid;place-items:center;color:#a7c2f4;font-size:18px;font-weight:900}.shopping-add{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px}.shopping-add input{min-width:0;border:1px solid #263a55;background:#081321;color:#edf4fc;border-radius:14px;padding:12px}.shopping-add>button{border:1px solid rgba(111,157,255,.14);background:rgba(111,157,255,.09);color:#aac4f5;border-radius:14px;padding:10px 12px;display:flex;gap:5px;align-items:center;font-size:9px;font-weight:850}.shopping-add>button .ui-icon{width:16px;height:16px}.shopping-add .voice-mini{background:transparent;color:#8196b2}.shopping-list{margin-top:12px;border:1px solid rgba(255,255,255,.055);background:rgba(11,23,40,.78);border-radius:22px;padding:14px}.shopping-subhead{display:flex;justify-content:space-between;align-items:center;padding:0 2px 7px}.shopping-subhead strong{font-size:11px}.shopping-subhead small{font-size:9px;color:#7186a1}.shop-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid rgba(255,255,255,.045)}.shop-row:first-of-type{border-top:0}.shop-check{width:30px;height:30px;border:1px solid #31445e;background:transparent;border-radius:10px;color:#07101f}.shop-check.checked{background:#78a887;border-color:transparent}.shop-row strong{display:block;font-size:11px}.shop-row small{display:block;color:#667b97;font-size:8px;margin-top:2px}.shop-row.done-item strong{text-decoration:line-through;color:#61728a}.shopping-done>button{margin:0 15px 14px;border:1px solid rgba(255,255,255,.07);background:transparent;color:#8296b1;border-radius:10px;padding:8px 10px;font-size:8px;font-weight:850}

.family-hub-grid{display:grid;gap:9px}.family-hub-card{width:100%;display:grid;grid-template-columns:58px minmax(0,1fr) 20px;gap:12px;align-items:center;text-align:left;border:1px solid rgba(255,255,255,.055);background:rgba(11,23,40,.78);color:var(--text);border-radius:21px;padding:13px}.family-hub-card:disabled{cursor:default}.family-hub-avatar{width:58px;height:58px}.family-hub-card>span:nth-child(2){min-width:0}.family-hub-card small{display:block;font-size:7px;letter-spacing:.13em;color:#7188a5;font-weight:900}.family-hub-card strong{display:block;font-size:15px;margin-top:2px}.family-hub-card em{display:block;font-style:normal;font-size:9px;color:#7488a3;margin-top:4px}.family-hub-card i{display:block;font-style:normal;font-size:8px;color:#bd8296;margin-top:4px}.family-hub-card>.ui-icon{width:16px;height:16px;color:#506985}.family-permission-note{margin-top:11px;padding:12px 14px;border:1px solid rgba(111,157,255,.08);background:rgba(111,157,255,.035);color:#7086a2;border-radius:16px;font-size:9px;line-height:1.45}.logout-quiet{width:100%;margin-top:14px;border:0;background:transparent;color:#647a96;padding:12px;font-size:9px}

.oskar-compact-hero{display:grid;grid-template-columns:62px minmax(0,1fr) 64px;gap:12px;align-items:center;border:1px solid rgba(217,157,68,.12);background:linear-gradient(135deg,rgba(19,34,55,.92),rgba(10,22,38,.92));border-radius:24px;padding:15px}.oskar-compact-hero>img{width:62px;height:62px;border-radius:19px;object-fit:cover}.oskar-compact-hero small{font-size:8px;letter-spacing:.15em;color:#889cb6;font-weight:900}.oskar-compact-hero h2{font-size:27px;margin-top:2px}.oskar-compact-hero p{color:#788ca7;font-size:9px;margin-top:3px}.oskar-ring{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#d7af61 var(--p),#15253a 0);position:relative}.oskar-ring:after{content:"";position:absolute;inset:5px;border-radius:50%;background:#0c192b}.oskar-ring span{position:relative;z-index:1;font-size:9px;font-weight:900;color:#d7bd89}.oskar-approval-compact{margin-top:10px;border:1px solid rgba(217,157,68,.13);background:rgba(217,157,68,.04);border-radius:19px;padding:13px}.oskar-approval-compact>div:first-child{display:flex;justify-content:space-between}.oskar-approval-compact small{font-size:7px;letter-spacing:.12em;color:#9c835b}.oskar-approval-compact>div>strong{font-size:10px}.oskar-approval-compact article{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;border-top:1px solid rgba(255,255,255,.045);padding-top:9px;margin-top:9px}.oskar-approval-compact article span strong{display:block;font-size:10px}.oskar-approval-compact article span small{display:block;margin-top:2px}.oskar-approval-compact article>div{display:flex;gap:4px}.oskar-more>.oskar-chore-list,.oskar-more>.oskar-reward-group,.oskar-more>.oskar-media-compact,.oskar-more>.oskar-redemption-list{padding:0 14px 13px}.oskar-more .oskar-reward-group{margin-top:8px}.oskar-media-compact{display:grid;gap:9px}.oskar-media-compact>strong{font-size:9px;color:#a4b7cc}.oskar-media-compact div{border-top:1px solid rgba(255,255,255,.045);padding-top:8px}.oskar-media-compact b{font-size:9px}.oskar-media-compact p{font-size:8px;color:#7286a0;line-height:1.45;margin-top:3px}

@media(max-width:560px){.today-hero{grid-template-columns:1fr}.today-weather{text-align:left;max-width:none}.today-shortcuts{grid-template-columns:1fr}.plan-week{gap:3px}.plan-day{border-radius:12px;padding:8px 1px}.plan-manual-grid{grid-template-columns:1fr}.shopping-add{grid-template-columns:minmax(0,1fr) auto}.shopping-add .voice-mini{grid-column:1/-1;justify-content:center}.suggestion-row{grid-template-columns:26px 1fr}.suggestion-row>div:last-child{grid-column:2}.family-hub-head{align-items:center}.oskar-compact-hero{grid-template-columns:54px 1fr 54px}.oskar-compact-hero>img{width:54px;height:54px}.oskar-ring{width:50px;height:50px}.today-flow-row{grid-template-columns:28px 52px minmax(0,1fr)}}
.plan-month{margin:0 0 10px;border:1px solid rgba(255,255,255,.05);background:rgba(11,23,40,.55);border-radius:16px;overflow:hidden}.plan-month>summary{list-style:none;padding:11px 13px;color:#8498b4;font-size:9px;font-weight:850;cursor:pointer}.plan-month>summary::-webkit-details-marker{display:none}.plan-month>summary span{float:right;color:#617997;text-transform:capitalize}.plan-month-weekdays,.plan-month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;padding:0 10px}.plan-month-weekdays{padding-top:3px;color:#566d8a;font-size:7px;text-align:center}.plan-month-grid{padding-bottom:10px}.plan-month-empty{aspect-ratio:1}.plan-month-day{position:relative;aspect-ratio:1;border:1px solid transparent;background:rgba(255,255,255,.018);color:#8194ad;border-radius:9px;font-size:9px}.plan-month-day.today{border-color:#425b7c}.plan-month-day.active{background:rgba(111,157,255,.14);color:#e5edfb;border-color:rgba(111,157,255,.2)}.plan-month-day i{position:absolute;right:3px;bottom:2px;font-style:normal;font-size:6px;color:#6f9dff;font-weight:900}

/* V0.17 family member detail */
.family-member-hero{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--card);margin-bottom:12px}.family-member-hero h2{margin:2px 0 4px}.family-member-hero p,.family-member-hero small{margin:0;color:var(--muted)}.family-feature-link{width:100%;display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:12px 14px;margin:10px 0;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--text);text-align:left}.family-feature-link>span{display:flex;align-items:center;gap:10px}.family-feature-link small{color:var(--muted);font-weight:500}.family-day-card{padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--card);margin-top:12px}.family-day-row{display:flex;align-items:center;gap:11px;padding:11px 0;border-top:1px solid var(--line)}.family-day-row:first-of-type{border-top:0}.family-day-row span{display:flex;flex-direction:column;gap:2px}.family-day-row small,.empty-compact{color:var(--muted)}

/* V0.18.0 - light UX refresh, larger weather, 5-day home, direct Plan editing */
:root{
  --bg:#f4f6f8;
  --surface:#ffffff;
  --surface-2:#eef2f6;
  --text:#172033;
  --muted:#6d7889;
  --line:#dde4ec;
  --accent:#406fd8;
  --accent-soft:#e8efff;
  --shadow:0 10px 32px rgba(32,45,66,.08);
  --card:#ffffff;
}
html,body{background:linear-gradient(180deg,#f7f9fb 0,#f2f5f8 100%);color:var(--text)}
body:before{opacity:.18;background-image:linear-gradient(rgba(38,69,115,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(38,69,115,.025) 1px,transparent 1px);mask-image:linear-gradient(to bottom,black,transparent 45%)}
.app-shell{max-width:980px;padding-bottom:104px}
.topbar{background:rgba(247,249,251,.91);border-bottom:1px solid rgba(42,61,87,.07);padding:20px 22px 14px}
.eyebrow{color:#5279c8}.topbar h1{color:#172033}.avatar{background:#243247;color:#fff;border:0;box-shadow:0 7px 20px rgba(32,45,66,.13)}
.alert-bell{background:#fff;border-color:#dce4ee;color:#5273b5;box-shadow:0 4px 14px rgba(32,45,66,.04)}.alert-bell b{border-color:#f7f9fb}
.content{padding:8px 20px 32px}
.bottom-nav{width:min(calc(100% - 24px),760px);background:rgba(255,255,255,.94);border:1px solid rgba(42,61,87,.10);box-shadow:0 14px 38px rgba(32,45,66,.15)}
.nav-item{color:#8792a3}.nav-item.active{color:#2f5fbf;background:#eaf0fc}.nav-item.nav-capture{color:#fff;background:#3f6fd8}.nav-item.nav-capture small{color:#fff}

.today-hero{align-items:center;padding:12px 3px 16px}.today-hero>div:first-child small{color:#7b8798}.today-hero h2{color:#172033}
.today-weather.weather-link{max-width:none;min-width:280px;border:1px solid #dce5ef;background:linear-gradient(135deg,#ffffff,#edf4ff);border-radius:22px;padding:14px 16px;text-align:left;display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:center;color:#172033;box-shadow:0 8px 25px rgba(50,78,120,.07)}
.weather-link:hover{border-color:#bfd0eb;box-shadow:0 10px 28px rgba(50,78,120,.11)}.weather-big-icon{font-size:39px;line-height:1;display:grid;place-items:center}.weather-big-copy{display:grid;grid-template-columns:auto 1fr;gap:1px 9px;align-items:baseline}.weather-big-copy strong{font-size:27px;letter-spacing:-.05em;color:#172033}.weather-big-copy b{font-size:11px;color:#48576b}.weather-big-copy small{grid-column:1/-1;font-size:9px;color:#6d7c91;margin-top:3px}
.today-notice{border-color:#eadbb7;background:#fff9ea;color:#8a6426}.today-notice>span:first-child{background:#f8eccd}.today-notice small{color:#92794e}
.today-section,.home-five-days{border:1px solid #e0e6ed;background:#fff;border-radius:22px;padding:16px;box-shadow:0 5px 18px rgba(35,49,70,.035)}.home-five-days{margin-top:11px}
.today-section-head small,.plan-section-title small,.shopping-head small,.family-hub-head small,.plan-head small{color:#5678bb}.today-section-head button{color:#4770c5}.today-flow-row{border-color:#edf0f4}.today-flow-icon{background:#edf3ff;color:#5377c6}.today-flow-time{color:#65748a}.today-flow-row.task .today-flow-time{color:#9b752e}.today-flow-copy small{color:#7a8798}.today-empty{color:#748092;border-color:#dfe5ec;background:#fafbfd}
.home-five-day-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:10px}.home-day-card{min-width:0;border:1px solid #e4e9ef;background:#fafbfd;border-radius:16px;padding:10px}.home-day-card header{display:flex;justify-content:space-between;align-items:center;padding-bottom:7px;border-bottom:1px solid #ebeff4}.home-day-card header>span{display:grid}.home-day-card header strong{font-size:10px;text-transform:capitalize}.home-day-card header small{font-size:8px;color:#8792a1;margin-top:1px}.home-day-card header button{width:28px;height:28px;border:0;border-radius:9px;background:#eef3fb;color:#5577b8;display:grid;place-items:center}.home-day-card header button .ui-icon{width:13px;height:13px}.home-event-row{width:100%;border:0;background:transparent;display:grid;grid-template-columns:44px minmax(0,1fr);gap:2px 5px;text-align:left;padding:8px 1px;border-bottom:1px solid #edf0f4;color:#172033}.home-event-row:last-child{border-bottom:0}.home-event-row>span{font-size:8px;color:#5f7291;font-weight:850}.home-event-row>strong{font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-event-row>small{grid-column:2;font-size:7px;color:#8a94a2}.home-day-empty{padding:15px 2px 8px;color:#9aa4b1;font-size:8px}.home-day-more{border:0;background:transparent;color:#4e72bd;font-size:8px;font-weight:800;padding:7px 0 0}
.today-shortcuts{margin-top:10px}.home-focus-card{border-color:#e1e7ee;background:#fff;color:#172033;box-shadow:0 4px 15px rgba(32,45,66,.035)}.home-focus-card small{color:#71829a}.home-focus-card em{color:#7b8798}.home-card-icon{background:#eef4ff;color:#5276c4}.home-focus-card>.ui-icon{color:#8190a4}

.plan-head,.shopping-head,.family-hub-head{padding-top:7px}.plan-head h2,.shopping-head h2,.family-hub-head h2{color:#172033}.plan-head p,.shopping-head p,.family-hub-head p{color:#758194}.plan-head>button,.family-hub-head>button{border-color:#dbe4f0;background:#fff;color:#476db7;box-shadow:0 4px 13px rgba(32,45,66,.04)}
.plan-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:10px}.plan-quick-actions>button{min-height:66px;border:1px solid #dce4ee;background:#fff;border-radius:17px;color:#172033;display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center;text-align:left;padding:11px 13px;box-shadow:0 4px 14px rgba(32,45,66,.035)}.plan-quick-actions>button:hover{border-color:#bfd0e8;background:#fbfdff}.plan-quick-actions .ui-icon{width:24px;height:24px;color:#4d72bd}.plan-quick-actions strong{display:block;font-size:11px}.plan-quick-actions small{display:block;color:#8893a2;font-size:8px;margin-top:2px}
.plan-nav-row{display:grid;grid-template-columns:44px 1fr 44px;gap:8px;align-items:center;margin:4px 0 9px}.plan-nav-row>button{height:42px;border:1px solid #dfe5ec;background:#fff;color:#496fb8;border-radius:13px;font-size:25px;line-height:1}.plan-nav-row>div{text-align:center}.plan-nav-row small{display:block;font-size:7px;letter-spacing:.14em;color:#8a96a6;font-weight:900}.plan-nav-row strong{display:block;font-size:11px;text-transform:capitalize;margin-top:2px}
.plan-week{gap:5px}.plan-day{border-color:#e2e7ed;background:#fff;color:#768398}.plan-day.active{background:#e9f0ff;border-color:#c7d6f1;color:#2f5ead}.plan-day-panel,.plan-suggestions{border-color:#e0e6ed;background:#fff}.plan-section-title>span{background:#edf2f8;color:#5a7092}.plan-item{border-color:#edf0f4}.plan-item.editable{cursor:pointer;border-radius:11px;padding-left:4px;padding-right:2px}.plan-item.editable:hover{background:#f7f9fc}.plan-item-icon{background:#edf3ff;color:#5376c4}.plan-task-check{border-color:#ccd5e1;color:#fff}.plan-task-check.checked{background:#5678c8;color:#fff}.plan-item-main small{color:#728096}.plan-item-main em{color:#7e8999}.plan-delete,.shop-delete{color:#9aa4b1}.plan-delete:hover,.shop-delete:hover{color:#c04f43;background:#fff0ee;border-radius:10px}.plan-no-date,.plan-settings,.shopping-done,.oskar-more{border-color:#e0e6ed;background:#fff}.plan-no-date>summary,.shopping-done>summary,.oskar-more>summary{color:#64758d}.plan-no-date>summary span,.shopping-done>summary span{background:#eef2f7}.plan-settings summary strong{color:#253247}.plan-settings summary small,.plan-settings-body p{color:#7a8799}.plan-settings summary>span:first-child,.plan-settings summary>.ui-icon{color:#6680ad}.plan-sync-status{color:#738093}.suggestion-row{border-color:#edf0f4}.suggestion-row strong{color:#263246}.suggestion-row small{color:#7c8898}.suggestion-row button,.oskar-approval-compact button{border-color:#d8e2f0;background:#eef4ff;color:#4269b2}.suggestion-row .ghost,.oskar-approval-compact .ghost{background:#fff;color:#738096}
.plan-month{border-color:#e1e6ec;background:#fff}.plan-month>summary{color:#69788f}.plan-month>summary span{color:#8490a0}.plan-month-weekdays{color:#8a95a3}.plan-month-day{background:#f8fafc;color:#647287}.plan-month-day.today{border-color:#aabbd4}.plan-month-day.active{background:#e9f0ff;color:#2e5eae;border-color:#c9d7ef}.plan-month-day i{color:#466fc1}

.shopping-head>span{background:#eaf1ff;color:#4269b4}.shopping-add input,.plan-manual input,.plan-manual select{border-color:#d9e1ea;background:#fff;color:#172033}.shopping-add>button{border-color:#dce4ef;background:#fff;color:#4269b2}.shopping-add .voice-mini{color:#64758c}.shopping-list{border-color:#e0e6ed;background:#fff}.shop-row{border-color:#edf0f4}.shop-check{border-color:#cbd5e1;color:#fff}.shop-row small{color:#7f8a99}.shop-row.done-item strong{color:#8b95a2}.shopping-done>button{border-color:#e0e6ed;color:#6f7e91}
.family-hub-card{border-color:#e0e6ed;background:#fff;color:#172033;box-shadow:0 4px 15px rgba(32,45,66,.035)}.family-hub-card small{color:#73849a}.family-hub-card em{color:#7d8999}.family-hub-card>.ui-icon{color:#8794a6}.family-permission-note{border-color:#dce5f2;background:#f5f8fd;color:#68788e}.logout-quiet{color:#728094}
.oskar-compact-hero{border-color:#eadfca;background:linear-gradient(135deg,#fffaf0,#ffffff)}.oskar-compact-hero small{color:#8b7a60}.oskar-compact-hero h2{color:#2a2f36}.oskar-compact-hero p{color:#806f58}.oskar-ring{background:conic-gradient(#d3a64d var(--p),#eee6d6 0)}.oskar-ring:after{background:#fff}.oskar-ring span{color:#806021}.oskar-approval-compact{border-color:#eadfca;background:#fffaf1}.oskar-media-compact>strong{color:#6e7783}.oskar-media-compact div{border-color:#eee9df}.oskar-media-compact p{color:#7f8792}.oskar-parent-tools{border-color:#e0e6ed;background:#fff}.oskar-parent-tools summary{color:#61748d}.oskar-parent-tools-body{border-color:#edf0f4}.oskar-parent-tools-body p{color:#768396}.oskar-parent-tools input{border-color:#dbe2ea;background:#fff;color:#172033}

/* Editing bottom sheet */
.edit-overlay{position:fixed;inset:0;z-index:1750;display:grid;align-items:end;justify-items:center}.edit-backdrop{position:absolute;inset:0;background:rgba(35,45,60,.34);backdrop-filter:blur(5px)}.edit-sheet{position:relative;z-index:1;width:min(100%,700px);max-height:min(91vh,850px);overflow:auto;background:#fff;border:1px solid #dfe5ec;border-bottom:0;border-radius:26px 26px 0 0;padding:10px 18px calc(22px + env(safe-area-inset-bottom));box-shadow:0 -20px 55px rgba(31,43,61,.18)}.edit-handle{width:42px;height:4px;border-radius:99px;background:#d6dde6;margin:0 auto 14px}.edit-sheet header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.edit-sheet header small{font-size:8px;letter-spacing:.16em;color:#5074ba;font-weight:900}.edit-sheet header h2{font-size:24px;letter-spacing:-.035em;margin-top:3px}.edit-sheet header>button{width:38px;height:38px;border:1px solid #dfe5ec;background:#f7f9fb;color:#6e7c90;border-radius:12px;font-size:20px}.edit-form{display:grid;gap:11px;margin-top:17px}.edit-form label{display:grid;gap:6px;font-size:9px;color:#5d6878;font-weight:800}.edit-form input,.edit-form select,.edit-form textarea{width:100%;border:1px solid #d7dfe8;background:#fff;color:#172033;border-radius:13px;padding:11px 12px;outline:none}.edit-form input:focus,.edit-form select:focus,.edit-form textarea:focus{border-color:#8eabd9;box-shadow:0 0 0 3px rgba(64,111,216,.08)}.edit-pair{display:grid;grid-template-columns:1fr 1fr;gap:9px}.edit-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:4px}.edit-actions .secondary-btn,.edit-actions .primary-btn{margin:0;min-height:45px}.edit-actions .primary-btn{background:#3f6fd8}.edit-actions .secondary-btn{background:#fff}

/* Light smart capture + alerts */
.smart-backdrop,.alert-backdrop{background:rgba(35,45,60,.34);backdrop-filter:blur(6px)}.smart-sheet,.alert-sheet{background:#fff;border-color:#dce3eb;color:#172033;box-shadow:0 -20px 55px rgba(31,43,61,.18)}.smart-handle,.alert-sheet-handle{background:#d5dde7}.smart-sheet-head h2,.alert-sheet-head h2{color:#172033}.smart-sheet-head p,.alert-sheet-head p{color:#728095}.smart-close,.alert-close{border-color:#dce3eb;background:#f6f8fb;color:#718095}.smart-mode{border-color:#dfe5ec;background:#f7f9fb;color:#6c7a8e}.smart-mode.active{color:#315ea9;background:#eaf1ff;border-color:#cbd9ef}.smart-entry-card,.smart-result-card,.alert-item{border-color:#e0e6ed;background:#fafbfd;color:#172033}.smart-title-input{border-color:#dfe5ec;color:#172033}.smart-result-meta small,.smart-question small{color:#5076bf}.smart-module-switch button{border-color:#dfe5ec;background:#fff;color:#69798f}.smart-module-switch button.active{color:#315fae;border-color:#c8d7ed;background:#eaf1ff}.smart-question{border-color:#d9e3f1;background:#f4f8ff}.smart-question strong{color:#172033}.smart-question input{border-color:#d6e0ec;background:#fff;color:#172033}.alert-permission{background:#f2f6fd;border-color:#d9e4f2}.alert-permission small,.alert-item p,.alert-footer{color:#748399}.alert-item strong{color:#263247}.alert-item-icon{background:#edf3ff;color:#4d73bf}.alert-empty{border-color:#dfe5ec;color:#7a8798}

@media(min-width:780px){.today-hero{grid-template-columns:minmax(0,1fr) 330px}.content{padding-left:28px;padding-right:28px}.edit-sheet,.smart-sheet,.alert-sheet{border-radius:26px;margin-bottom:12px;border-bottom:1px solid #dfe5ec}.plan-item.editable:hover .plan-item-main strong{text-decoration:underline;text-decoration-color:#c4d2e8;text-underline-offset:3px}}
@media(max-width:760px){.home-five-day-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(170px,76%);grid-template-columns:none;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:4px}.home-day-card{scroll-snap-align:start}.today-weather.weather-link{min-width:0;width:100%}}
@media(max-width:560px){.content{padding-left:13px;padding-right:13px}.today-hero{grid-template-columns:1fr;gap:11px}.today-weather.weather-link{grid-template-columns:52px 1fr;padding:13px}.weather-big-icon{font-size:35px}.weather-big-copy strong{font-size:25px}.plan-quick-actions{grid-template-columns:1fr 1fr}.plan-quick-actions>button{grid-template-columns:32px 1fr;padding:10px;min-height:62px}.plan-quick-actions .ui-icon{width:21px;height:21px}.plan-nav-row{grid-template-columns:42px 1fr 42px}.edit-pair,.edit-actions{grid-template-columns:1fr}.edit-actions .secondary-btn{order:2}.edit-sheet{padding-left:14px;padding-right:14px}.home-five-days{padding:14px}}
.today-flow-row{width:100%;border-left:0;border-right:0;border-bottom:0;background:transparent;color:inherit;text-align:left}.today-flow-row:hover{background:#f8fafc}.today-flow-row:first-child{border-top:0}

/* V0.19.0 - multi-day Plan, forced primary nav and shopping quick catalog */
.plan-day{position:relative}.plan-day-count{position:absolute;right:5px;top:5px;min-width:15px;height:15px;padding:0 4px;border-radius:999px;background:#edf3ff;color:#456db7;display:grid;place-items:center;font-style:normal;font-size:7px;font-weight:900}.plan-day.active .plan-day-count{background:#fff;color:#315eaa}.plan-item.multi-day{border-left:3px solid #7b9ad1;padding-left:7px}.plan-item.multi-day .plan-item-main small{color:#4f70aa;font-weight:850}
.edit-time-block{display:grid;gap:7px;padding:10px;border:1px solid #e2e7ed;border-radius:14px;background:#fafbfd}.edit-time-block>strong{font-size:10px;color:#2d3c52}.edit-time-block>small{font-size:8px;color:#7c8898;line-height:1.35}
.home-plan-five-days{margin-top:10px}.home-plan-five-days .home-day-card.today-card{border-color:#c7d6ef;background:#fbfdff}.home-task-row span{color:#9b752e}.home-task-row strong:before{content:'✓ ';color:#b08b43}
.shopping-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin-bottom:12px}.shopping-composer .shopping-add{margin:0}.shopping-qty-picker{min-height:46px;display:flex;align-items:center;gap:6px;border:1px solid #dfe5ec;background:#fff;border-radius:14px;padding:5px 7px}.shopping-qty-picker>span{font-size:8px;color:#758398;font-weight:850;margin:0 4px}.shopping-qty-picker button,.shop-row-qty button{width:30px;height:30px;border:1px solid #dbe2eb;background:#f7f9fc;color:#4269b2;border-radius:9px;font-size:16px;font-weight:800}.shopping-qty-picker strong{min-width:24px;text-align:center;font-size:12px}.shopping-quick{border:1px solid #e0e6ed;background:#fff;border-radius:20px;padding:13px;margin-bottom:12px}.shopping-quick-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.shopping-quick-item{min-height:61px;border:1px solid #e4e9ef;background:#fafbfd;border-radius:13px;color:#263247;display:grid;place-items:center;gap:2px;padding:7px 4px}.shopping-quick-item:hover{border-color:#cbd9ec;background:#f4f8ff}.shopping-quick-item span{font-size:20px;line-height:1}.shopping-quick-item strong{font-size:8px;line-height:1.1;text-align:center}.shop-row{grid-template-columns:32px minmax(0,1fr) auto auto}.shop-copy{min-width:0}.shop-row-qty{display:flex;align-items:center;gap:5px}.shop-row-qty b{min-width:22px;text-align:center;font-size:10px}.shop-row-qty button:disabled{opacity:.35}.shop-row.done-item .shop-row-qty{opacity:.55}
@media(max-width:900px){.shopping-quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.shopping-composer{grid-template-columns:1fr}.shopping-qty-picker{justify-content:flex-end}.shopping-qty-picker>span{margin-right:auto}}
@media(max-width:560px){.shopping-quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.shopping-quick-item{min-height:58px}.shop-row{grid-template-columns:32px minmax(0,1fr) auto}.shop-row-qty{grid-column:2;justify-self:start}.shop-delete{grid-column:3;grid-row:1}.shopping-composer .shopping-add{grid-template-columns:minmax(0,1fr) auto}.shopping-composer .shopping-add .voice-mini{grid-column:1/-1}.bottom-nav .nav-item{min-width:0}}


/* V0.21.0 - weekly Plan, all-day switch and complete light Oskar module */
.plan-week-overview{margin-top:10px;border:1px solid #e0e6ed;background:#fff;border-radius:20px;padding:13px;box-shadow:0 4px 15px rgba(32,45,66,.035)}
.plan-week-overview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.plan-week-overview-head small{display:block;font-size:7px;letter-spacing:.13em;color:#5b78ae;font-weight:900}.plan-week-overview-head strong{display:block;margin-top:3px;font-size:12px;color:#263348}.plan-week-overview-head>div:last-child{display:flex;align-items:center;gap:5px}.plan-week-overview-head button{border:1px solid #dce4ef;background:#f8fafc;color:#5370a3;border-radius:10px;min-height:34px;padding:0 10px;font-size:10px;font-weight:850}.plan-week-overview-head button:first-child,.plan-week-overview-head button:last-child{width:34px;padding:0;font-size:18px}
.plan-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.plan-week-card{min-width:0;border:1px solid #e4e9ef;background:#fbfcfe;border-radius:14px;overflow:hidden}.plan-week-card.active{border-color:#a9bfdf;box-shadow:0 0 0 2px rgba(72,111,177,.08)}.plan-week-card.today{background:#f6f9ff}.plan-week-card-head{width:100%;border:0;border-bottom:1px solid #edf0f4;background:transparent;color:#263348;padding:9px 9px 8px;display:flex;align-items:center;justify-content:space-between;text-align:left}.plan-week-card-head span small{display:block;color:#7e8a99;font-size:7px;text-transform:capitalize}.plan-week-card-head span strong{display:block;font-size:14px;margin-top:1px}.plan-week-card-head i{min-width:19px;height:19px;border-radius:999px;background:#edf3ff;color:#4c70b5;display:grid;place-items:center;font-size:7px;font-style:normal;font-weight:900}.plan-week-card-items{display:grid;padding:6px}.plan-week-entry,.plan-week-more{width:100%;border:0;border-top:1px solid #eef1f5;background:transparent;color:#263348;text-align:left;padding:7px 4px;min-width:0}.plan-week-entry:first-child{border-top:0}.plan-week-entry small{display:block;color:#70829c;font-size:6.5px;font-weight:900}.plan-week-entry strong{display:block;margin-top:2px;font-size:8px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-week-entry.task strong{color:#785f31}.plan-week-more{color:#4e70ac;font-size:7px;font-weight:850;text-align:center}.plan-week-empty{display:block;color:#a0a8b3;font-size:7px;padding:10px 4px;text-align:center}
.edit-toggle-row{display:flex!important;grid-template-columns:none!important;align-items:center;gap:10px;border:1px solid #dce4ef;background:#f7faff;border-radius:14px;padding:11px 12px!important;cursor:pointer}.edit-toggle-row input{width:19px!important;height:19px!important;min-width:19px;padding:0!important;accent-color:#4c72c1}.edit-toggle-row span{display:block}.edit-toggle-row strong{display:block;color:#263348;font-size:10px}.edit-toggle-row small{display:block;color:#77869a;font-size:8px;line-height:1.35;margin-top:2px}.event-time-field{transition:opacity .15s ease}.event-time-field.is-disabled{opacity:.38}

/* Complete the light-theme conversion for every Oskar surface. */
.oskar-section{background:#fff;border-color:#e0e6ed;box-shadow:0 4px 15px rgba(32,45,66,.035)}.oskar-section-head small,.oskar-goal-card small{color:#8b7a60}.oskar-section-head h3,.oskar-chore-main strong,.oskar-reward-card h4,.oskar-redemption-list article strong{color:#263247}.oskar-balance-pill{background:#fff4dc;color:#8b681d}.oskar-goal-card{border-color:#eadfca;background:#fffaf1}.oskar-goal-head>strong{color:#89651d}.oskar-goal-track{background:#eee7da}.oskar-goal-foot{color:#7f7566}.oskar-goal-foot button{color:#5e7395}.oskar-chore-row{border-color:#e7ebf0;background:#fbfcfd}.oskar-chore-row.status-approved{background:#f3faf5;border-color:#d7e9dc}.oskar-chore-row.status-submitted{background:#fff9ee;border-color:#eadfc8}.oskar-chore-dot{border-color:#d8e0e8;color:#5e9469;background:#fff}.status-submitted .oskar-chore-dot{color:#9b762a}.oskar-chore-main small{color:#7a8798}.oskar-do-btn,.oskar-approve-actions button,.oskar-reward-request,.oskar-goal-btn,.oskar-edit-mini,.oskar-redemption-list button{border-color:#d7e1ef;background:#eef4ff;color:#4168af}.oskar-do-btn{background:#4f75c5;color:#fff}.oskar-approve-actions button{background:#edf8f0;border-color:#d3e8d9;color:#4e7d58}.oskar-approve-actions .bonus{background:#fff7e9;border-color:#eadcbe;color:#8b6b29}.oskar-approve-actions .reject{background:#fff;color:#748196;border-color:#dce3eb}.oskar-state.approved{color:#568463}.oskar-state.pending{color:#987329}.oskar-reset{color:#7b8899}.oskar-reward-group>strong,.oskar-reward-group-head{color:#65758b}.oskar-reward-card{border-color:#e4e9ef;background:#fbfcfe}.oskar-reward-card.is-goal{border-color:#e5cf9f;box-shadow:inset 0 0 0 1px #f1e4c8}.oskar-reward-top span{color:#7b8797}.oskar-reward-top strong{color:#87651f}.oskar-goal-btn{background:#fff}.oskar-goal-btn.active{color:#87651f;border-color:#dbc58f;background:#fffaf0}.oskar-edit-mini{background:#fff;color:#697a91}.oskar-redemption-list article{border-color:#e4e9ef;background:#fff}.oskar-redemption-list article small{color:#7a8797}.oskar-more{color:#263247}.oskar-more>.oskar-chore-list,.oskar-more>.oskar-reward-group,.oskar-more>.oskar-media-compact,.oskar-more>.oskar-redemption-list{background:#fff}.oskar-media-compact b{color:#263247}.oskar-approval-compact article{border-color:#eadfca}.oskar-approval-compact article span strong{color:#263247}.oskar-approval-compact article span small{color:#817869}.oskar-parent-tools-body{background:#fff}.oskar-parent-tools form button{border:0;border-radius:11px;background:#4f75c5;color:#fff;font-weight:850;padding:10px 12px}

@media(max-width:760px){.plan-week-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(160px,72%);grid-template-columns:none;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:4px}.plan-week-card{scroll-snap-align:start}.plan-week-overview-head{align-items:flex-end}.plan-week-overview-head>div:last-child button#planWeekToday{display:none}}

/* V0.21.0 - Oskar self check-in + birthdays */
.oskar-self-pending{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.oskar-unsubmit{border:1px solid #cbd5e1;background:#fff;color:#475569;border-radius:10px;padding:8px 11px;font-weight:700;cursor:pointer}
.oskar-unsubmit:hover{background:#f8fafc;border-color:#94a3b8}
.oskar-state.open{background:#f8fafc;color:#64748b;border:1px solid #e2e8f0;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:700}

.family-birthdays{margin-top:18px;background:#fff;border:1px solid #dbe4ef;border-radius:20px;padding:20px;box-shadow:0 10px 28px rgba(15,23,42,.05)}
.family-birthdays-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.family-birthdays-head small{font-size:11px;letter-spacing:.12em;color:#64748b;font-weight:800}
.family-birthdays-head h3{margin:3px 0 4px;color:#172033;font-size:22px}
.family-birthdays-head p{margin:0;color:#7b879b;font-size:13px}
.family-birthdays-head button{border:0;background:#eaf2ff;color:#2f65c8;border-radius:12px;padding:10px 14px;font-weight:800;cursor:pointer}
.family-birthday-list{display:grid;gap:8px}
.family-birthday-row{width:100%;display:grid;grid-template-columns:42px 1fr 20px;align-items:center;gap:10px;text-align:left;border:1px solid #e5ebf3;background:#fbfcfe;border-radius:14px;padding:11px 12px;color:#172033;cursor:pointer}
.family-birthday-row.readonly{grid-template-columns:42px 1fr;cursor:default}
.family-birthday-row:hover:not(.readonly){background:#f4f8ff;border-color:#cad9ee}
.family-birthday-icon{width:38px;height:38px;border-radius:12px;background:#fff2f5;display:grid;place-items:center;font-size:20px}
.family-birthday-row strong{display:block;font-size:14px}
.family-birthday-row small{display:block;color:#7b879b;margin-top:3px;font-size:12px}
.family-birthday-empty{padding:18px;border:1px dashed #dbe4ef;border-radius:14px;color:#7b879b;text-align:center}

.home-event-row.birthday{background:#fff8fa}
.home-event-row.birthday>span{color:#b4496b;font-size:15px}
.plan-week-entry.birthday{background:#fff7fa;border-color:#f2d9e2}
.plan-week-entry.birthday small{color:#a94869}
.plan-item.birthday{background:#fff8fa;border-color:#f0d9e2}
.plan-item.birthday .plan-item-icon{background:#fff0f5;font-size:18px}

@media (max-width:720px){
  .family-birthdays{padding:15px;border-radius:16px}
  .family-birthdays-head{align-items:center}
  .family-birthdays-head h3{font-size:19px}
  .family-birthday-row{padding:10px}
  .oskar-self-pending{justify-content:flex-start}
}

/* V0.22 - readable Plan, smart event icons and morning briefing */
.plan-week-card-head{padding:12px 11px 10px}.plan-week-card-head span small{font-size:9px;font-weight:800}.plan-week-card-head span strong{font-size:17px}.plan-week-card-head i{min-width:23px;height:23px;font-size:9px}.plan-week-card-items{padding:7px}.plan-week-entry,.plan-week-more{padding:10px 6px}.plan-week-entry small{font-size:9.5px;line-height:1.25}.plan-week-entry strong{font-size:11.5px;line-height:1.3;margin-top:3px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.plan-week-entry em{display:block;font-style:normal;font-size:8.5px;color:#8a94a2;margin-top:3px}.week-event-emoji{font-size:14px;vertical-align:-1px}.plan-week-more,.plan-week-empty{font-size:9px}.plan-item{grid-template-columns:42px minmax(0,1fr) auto;gap:12px;padding:14px 0}.plan-item-icon,.plan-task-check{width:40px;height:40px;border-radius:13px}.plan-item-icon.event-category-icon{font-size:21px}.plan-item-main small{font-size:10px;letter-spacing:.06em}.plan-item-main strong{font-size:15px;line-height:1.3;margin-top:3px}.plan-item-main em{font-size:10.5px;margin-top:4px}.today-flow-row{grid-template-columns:36px 64px minmax(0,1fr);gap:11px;padding:13px 2px}.today-flow-icon{width:36px;height:36px;border-radius:12px}.today-flow-icon.event-category-icon{font-size:19px}.today-flow-time{font-size:10.5px}.today-flow-copy strong{font-size:13px;line-height:1.3}.today-flow-copy small{font-size:9.5px;margin-top:3px}.home-event-row{grid-template-columns:58px minmax(0,1fr);padding:10px 2px}.home-event-row>span{font-size:9.5px}.home-event-row>strong{font-size:11px;line-height:1.25}.home-event-row>small{font-size:8.5px;margin-top:2px}.event-category-hint{display:block;color:#77869a;font-size:9px;margin-top:6px}.today-hero-sub{color:#758397;font-size:11px;margin-top:5px}.morning-brief{border:1px solid #dce6f2;background:linear-gradient(135deg,#fff,#f5f9ff);border-radius:22px;padding:16px 17px;margin-bottom:11px;box-shadow:0 6px 20px rgba(45,72,111,.045)}.morning-brief-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.morning-brief-head small{display:block;font-size:8px;letter-spacing:.14em;color:#5678bb;font-weight:900}.morning-brief-head h3{font-size:19px;margin-top:3px;color:#172033}.morning-brief>p{font-size:12.5px;line-height:1.55;color:#47566b;margin-top:11px;max-width:900px}.morning-brief-stats{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.morning-brief-stats span{border:1px solid #e0e7f0;background:#fff;border-radius:999px;padding:6px 9px;color:#58677b;font-size:9px;font-weight:800}.morning-push-button{border:1px solid #d7e1ef;background:#fff;color:#536983;border-radius:13px;padding:8px 10px;display:flex;gap:6px;align-items:center;font-size:9px;font-weight:800}.morning-push-button.active{background:#edf5ff;color:#3f69b4;border-color:#cdddf4}.morning-push-settings{border:1px solid #e0e6ee;background:#f9fbfd;border-radius:16px;padding:12px 13px;margin:10px 0 14px}.morning-push-settings>label{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.morning-push-settings strong{display:block;font-size:11px;color:#243247}.morning-push-settings small{display:block;color:#748298;font-size:9px;line-height:1.4;margin-top:3px}.morning-push-settings>label input{width:20px;height:20px}.morning-push-settings>div{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:10px}.morning-push-settings>div label{font-size:9px;color:#64758c}.morning-push-settings input[type=time]{margin-left:5px;border:1px solid #d5dee9;background:#fff;border-radius:9px;padding:7px;color:#253247}.morning-push-settings button{border:0;border-radius:9px;background:#5579c8;color:#fff;padding:8px 11px;font-size:9px;font-weight:850}
@media(max-width:760px){.plan-week-grid{grid-auto-columns:minmax(190px,82%)}.plan-week-entry strong{font-size:12.5px}.plan-week-entry small{font-size:10px}.morning-brief-head{display:grid}.morning-push-button{justify-self:start}.morning-brief>p{font-size:12px}.today-flow-row{grid-template-columns:34px 56px minmax(0,1fr)}.plan-item-main strong{font-size:14.5px}}
.home-dashboard{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr);gap:12px;align-items:start}.home-dashboard-main,.home-dashboard-side{min-width:0}.home-dashboard-side{display:grid;gap:10px}.home-dashboard-side .morning-brief{margin-bottom:0}.home-dashboard-side .today-shortcuts{grid-template-columns:1fr;margin-top:0}.home-dashboard-main .today-notice{margin-bottom:10px}.home-dashboard-main .home-five-days{margin-top:10px}
@media(max-width:980px){.home-dashboard{grid-template-columns:1fr}.home-dashboard-side{order:-1}.home-dashboard-side .today-shortcuts{grid-template-columns:1fr 1fr}.morning-brief{margin-bottom:0}}
@media(max-width:560px){.home-dashboard-side .today-shortcuts{grid-template-columns:1fr}}


/* V0.23 - shopping categories, single-title pages, fully light Sandra cycle */
.plan-head>div,.shopping-head>div,.family-hub-head>div{padding-top:3px}
.plan-head>div>p,.shopping-head>div>p,.family-hub-head>div>p{margin-top:4px}
.family-member-hero>div>p{font-size:13px;color:#6f7d90;margin-top:4px}

.shopping-catalog{border:1px solid #e0e6ed;background:#fff;border-radius:20px;padding:13px;margin-bottom:12px}
.shopping-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.shopping-category{min-height:76px;border:1px solid #e3e9f0;background:#fafbfd;border-radius:14px;padding:9px 7px;color:#263247;text-align:left;display:grid;grid-template-columns:32px 1fr;grid-template-rows:auto auto;column-gap:7px;align-items:center}
.shopping-category>span{grid-row:1/3;width:32px;height:32px;border-radius:10px;background:#f0f4fa;display:grid;place-items:center;font-size:18px}
.shopping-category>strong{font-size:10px;line-height:1.2}
.shopping-category>small{font-size:8px;color:#7b8797;margin-top:2px}
.shopping-category:hover,.shopping-category.active{border-color:#bfd0e8;background:#f2f7ff}
.shopping-category.active{box-shadow:inset 0 0 0 1px #d5e2f5}
.shopping-category-panel{margin-top:10px;border-top:1px solid #edf0f4;padding-top:10px}
.shopping-category-placeholder{padding:18px 12px;text-align:center;color:#7b8797;font-size:10px;background:#fafbfd;border-radius:13px}
.shopping-category-products-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.shopping-category-products-head>span{display:flex;align-items:center;gap:7px}.shopping-category-products-head b{font-size:18px}.shopping-category-products-head strong{font-size:11px;color:#263247}
.shopping-category-products-head>button{border:0;background:transparent;color:#5b75a1;font-size:9px;font-weight:800;padding:6px 8px}
.shopping-category-products{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}

.cycle-page .cycle-hero-card{background:linear-gradient(135deg,#fff,#f8f1f4)!important;color:#172033!important;border:1px solid #eadde4!important;box-shadow:0 8px 26px rgba(61,45,54,.055)!important}
.cycle-page .cycle-hero-card small,.cycle-page .cycle-private-label{color:#a65d78!important}
.cycle-page .cycle-hero-card p{color:#6f6470!important;font-size:12px;line-height:1.5;margin-top:4px}
.cycle-page .cycle-hero-icon{background:#f4e2e9!important;color:#9f526d!important}
.cycle-page .page-card,.cycle-page .cycle-summary-grid article{background:#fff!important;border-color:#e4e8ed!important;color:#172033!important;box-shadow:0 5px 18px rgba(35,49,70,.035)!important}
.cycle-page .cycle-summary-grid small{color:#9a6378!important}.cycle-page .cycle-summary-grid strong{color:#263247!important}
.cycle-page .cycle-month-head small,.cycle-page .cycle-weekdays,.cycle-page .cycle-legend,.cycle-page .cycle-disclaimer{color:#788496!important}
.cycle-page .cycle-day{background:#fff!important;border-color:#dfe5ec!important;color:#253247!important}
.cycle-page .cycle-day.today{outline-color:#5678c8!important}
.cycle-page .cycle-day.period{background:#f7d9e2!important;border-color:#e9bdcb!important}
.cycle-page .cycle-day.fertile:not(.period){background:#e8f3ec!important;border-color:#cfe3d5!important}
.cycle-page .cycle-day.predicted:not(.period){box-shadow:inset 0 0 0 2px #b86f88!important}
.cycle-page .cycle-form-grid label{color:#637083!important}
.cycle-page .cycle-form-grid input,.cycle-page .cycle-form-grid select,.cycle-page .cycle-form-grid textarea{background:#fff!important;border-color:#d9e1ea!important;color:#172033!important}
.cycle-page .cycle-form-grid input:focus,.cycle-page .cycle-form-grid select:focus,.cycle-page .cycle-form-grid textarea:focus{border-color:#c99bad!important;box-shadow:0 0 0 3px rgba(184,111,136,.08)!important}
.cycle-page .secondary-btn,.cycle-page .mini-action{background:#f7f9fc!important;border-color:#dce3eb!important;color:#526b89!important}
.cycle-page .primary-btn{background:#4f75c5!important;color:#fff!important}
.cycle-page .cycle-history-row{border-color:#edf0f4!important}.cycle-page .cycle-history-row strong{color:#263247!important}.cycle-page .cycle-history-row small{color:#7c8796!important}
.cycle-page .cycle-transfer-card p,.cycle-page .cycle-transfer-note{color:#748194!important}

@media(max-width:760px){.shopping-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shopping-category-products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:761px) and (max-width:980px){.shopping-category-products{grid-template-columns:repeat(4,minmax(0,1fr))}}


/* V0.24.0 - clearer daily overview, weekly board, category drill-down */
.daily-overview{margin:12px 0 14px;padding:18px 19px}.daily-overview .morning-brief-head p{color:#758397;font-size:11px;margin-top:4px}.daily-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:14px}.daily-overview-grid article{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;border:1px solid #e3e9f1;background:#fff;border-radius:15px;padding:12px;min-height:76px}.daily-overview-icon{width:38px;height:38px;border-radius:12px;background:#f1f5fb;display:grid;place-items:center;color:#5576b4;font-size:18px}.daily-overview-icon .ui-icon{width:18px;height:18px}.daily-overview-grid article small{display:block;color:#7b8797;font-size:8px;font-weight:900;letter-spacing:.08em}.daily-overview-grid article strong{display:block;color:#243247;font-size:12px;line-height:1.3;margin-top:3px}.daily-overview-grid article em{display:block;color:#7a8798;font-size:9px;font-style:normal;margin-top:3px;line-height:1.35}
.home-dashboard{grid-template-columns:minmax(0,1.55fr) minmax(250px,.55fr)}.home-dashboard-side .today-shortcuts{position:sticky;top:92px}
.week-board{padding:15px}.week-board-grid{display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));gap:8px;overflow-x:auto;padding-bottom:3px}.week-board-day{border:1px solid #e2e8ef;background:#fff;border-radius:15px;overflow:hidden;min-height:210px}.week-board-day.today{background:#f6f9ff;border-color:#cbd9ec}.week-board-day.active{box-shadow:0 0 0 2px rgba(80,116,179,.12);border-color:#aebfda}.week-board-head{width:100%;border:0;border-bottom:1px solid #edf1f5;background:transparent;padding:11px 12px;display:flex;justify-content:space-between;align-items:center;text-align:left;color:#243247}.week-board-head small{display:block;font-size:8px;font-weight:900;color:#6b7d96;letter-spacing:.07em}.week-board-head strong{display:block;font-size:18px;margin-top:2px}.week-board-head>span{min-width:24px;height:24px;border-radius:999px;background:#eaf1fb;color:#4f70aa;display:grid;place-items:center;font-size:9px;font-weight:900}.week-board-list{padding:7px}.week-board-item{width:100%;display:grid;grid-template-columns:27px minmax(0,1fr);gap:7px;align-items:start;border:0;border-top:1px solid #eef2f5;background:transparent;text-align:left;padding:9px 3px;color:#273449}.week-board-item:first-child{border-top:0}.week-board-item>span{width:27px;height:27px;border-radius:9px;background:#f2f6fb;display:grid;place-items:center;font-size:14px}.week-board-item strong{display:block;font-size:11px;line-height:1.3;white-space:normal;overflow-wrap:anywhere}.week-board-item small{display:block;color:#7b8798;font-size:9px;margin-top:3px}.week-board-item.task strong{color:#705a31}.week-board-item.birthday strong{color:#9b4f69}.week-board-more{width:100%;border:0;background:#f6f9fd;color:#5270a4;border-radius:9px;padding:8px;font-size:9px;font-weight:850;margin-top:4px}.week-board-empty{color:#9aa4b0;text-align:center;padding:22px 5px;font-size:9px}
.shopping-category-view{min-height:180px}.shopping-category-view-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.shopping-category-view-head>button{border:1px solid #dce5ef;background:#f7f9fc;color:#4f6d9d;border-radius:11px;padding:9px 11px;font-size:10px;font-weight:850}.shopping-category-view-head>span{display:flex;align-items:center;gap:8px;margin-left:auto}.shopping-category-view-head>span b{font-size:21px}.shopping-category-view-head>span strong{font-size:12px;color:#263247}.shopping-category-view-head>span small{color:#7a8798;font-size:9px}.shopping-catalog .shopping-category-products{margin-top:4px}
.family-birthday-month-group{display:grid;gap:7px}.family-birthday-month-title{text-transform:capitalize;font-size:13px;font-weight:900;color:#4c6080;padding:2px 3px 5px;border-bottom:1px solid #e9edf3}
@media(max-width:980px){.daily-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-dashboard{grid-template-columns:1fr}.home-dashboard-side .today-shortcuts{position:static;grid-template-columns:1fr 1fr}.week-board-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(205px,76%);scroll-snap-type:x proximity}.week-board-day{scroll-snap-align:start}}
@media(max-width:560px){.daily-overview{padding:15px}.daily-overview-grid{grid-template-columns:1fr}.daily-overview-grid article{min-height:68px}.home-dashboard-side .today-shortcuts{grid-template-columns:1fr}.shopping-category-view-head{align-items:flex-start;flex-direction:column}.shopping-category-view-head>span{margin-left:0}.week-board-grid{grid-auto-columns:minmax(220px,86%)}}

/* V0.25.0 - persistent shopping catalogue, icon library, recipes, birthday month navigation */
.shopping-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 12px;padding:5px;background:#eef3f8;border:1px solid #dce5ef;border-radius:16px}
.shopping-tabs button{border:0;background:transparent;color:#66768b;border-radius:12px;min-height:42px;font-weight:850;font-size:12px;cursor:pointer}
.shopping-tabs button.active{background:#fff;color:#285fb7;box-shadow:0 3px 12px rgba(31,56,94,.08)}
.shopping-catalog-product{position:relative;min-width:0}
.shopping-catalog-product .shopping-quick-item{width:100%;height:100%}
.shopping-catalog-delete{position:absolute;top:4px;right:4px;width:24px;height:24px;border:0;border-radius:50%;background:#fff0f1;color:#c34a55;font-weight:900;box-shadow:0 2px 6px rgba(40,48,62,.09);cursor:pointer}
.shopping-custom-product{margin-top:13px;border-top:1px solid #e8edf3;padding-top:12px}
.shopping-custom-product summary{cursor:pointer;color:#3c65a6;font-size:11px;font-weight:850;list-style:none}
.shopping-custom-product summary::-webkit-details-marker{display:none}
.shopping-custom-product form{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:10px;margin-top:12px;align-items:end}
.shopping-custom-product input{min-height:42px;border:1px solid #d8e1eb;border-radius:12px;padding:0 12px;background:#fff;color:#1f2a3d}
.shopping-custom-product form>button{min-height:42px;border:0;border-radius:12px;background:#5579c8;color:#fff;padding:0 15px;font-weight:850;cursor:pointer}
.shopping-icon-picker{grid-column:1/-1}
.shopping-icon-picker small{display:block;color:#728197;font-size:9px;font-weight:800;margin-bottom:7px;text-transform:uppercase;letter-spacing:.08em}
.shopping-icon-picker>div{display:flex;flex-wrap:wrap;gap:6px}
.shopping-icon-choice{width:38px;height:38px;border:1px solid #dce4ed;background:#fafbfd;border-radius:11px;font-size:20px;cursor:pointer}
.shopping-icon-choice.active{border-color:#7ca0dc;background:#edf4ff;box-shadow:inset 0 0 0 1px #7ca0dc}
.shop-copy strong{display:flex;align-items:center;gap:7px}.shop-copy strong i{font-style:normal;font-size:17px}
.shop-measure{justify-self:end;border:1px solid #dfe6ee;background:#f7f9fc;border-radius:10px;padding:7px 9px;color:#3c4c62;font-size:11px;font-weight:850;white-space:nowrap}
.recipes-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;background:#fff;border:1px solid #dce5ef;border-radius:20px;padding:18px 19px;margin-bottom:12px}
.recipes-head small{display:block;font-size:9px;letter-spacing:.13em;color:#5c7fc1;font-weight:900}.recipes-head p{margin:5px 0 0;color:#718095;font-size:12px;line-height:1.45}.recipes-head button{border:0;background:#5579c8;color:#fff;border-radius:12px;min-height:40px;padding:0 14px;font-weight:850;cursor:pointer;white-space:nowrap}
.recipe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.recipe-card{background:#fff;border:1px solid #dce5ef;border-radius:19px;padding:16px;box-shadow:0 6px 20px rgba(45,72,111,.04);min-width:0}
.recipe-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.recipe-card header small{display:block;color:#718095;font-size:8.5px;font-weight:850;letter-spacing:.08em}.recipe-card h3{margin:3px 0 0;font-size:18px;color:#1f2a3d;line-height:1.25}.recipe-card header button{border:0;background:#edf4ff;color:#456ba9;border-radius:9px;padding:7px 9px;font-size:9px;font-weight:850}.recipe-card>p{color:#6f7d90;font-size:11px;line-height:1.45;margin:10px 0}.recipe-card ul{margin:12px 0 7px;padding:0;list-style:none;display:grid;gap:6px}.recipe-card li{display:flex;align-items:center;gap:7px;color:#3c4a5e;font-size:11px}.recipe-card li span{width:22px;text-align:center;font-size:15px}.recipe-card>small{display:block;color:#7b8797;font-size:9px;margin-bottom:9px}.recipe-to-shopping{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #edf0f4;padding-top:11px;margin-top:10px}.recipe-to-shopping label{font-size:10px;color:#657489}.recipe-to-shopping input{width:54px;border:1px solid #d7e0ea;border-radius:9px;padding:7px;text-align:center;margin:0 4px}.recipe-to-shopping button{border:0;background:#edf6ee;color:#317346;border-radius:10px;padding:9px 10px;font-size:10px;font-weight:850;cursor:pointer}
.recipe-edit-sheet{max-width:780px}.recipe-ingredients-editor{grid-column:1/-1;border:1px solid #e0e6ed;border-radius:14px;padding:12px;background:#fafbfd}.recipe-ingredients-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.recipe-ingredients-head strong{font-size:12px;color:#263247}.recipe-ingredients-head button{border:0;background:#edf4ff;color:#456ba9;border-radius:9px;padding:7px 9px;font-size:9px;font-weight:850}.recipe-ingredient-row{display:grid;grid-template-columns:minmax(150px,2fr) 90px 100px minmax(130px,1fr) 34px;gap:7px;margin-top:7px}.recipe-ingredient-row input,.recipe-ingredient-row select{min-width:0;border:1px solid #d8e1eb;border-radius:10px;background:#fff;padding:9px;color:#263247;font-size:10px}.recipe-ingredient-row>button{border:0;border-radius:10px;background:#fff0f1;color:#c34a55;font-weight:900}
.family-birthday-month-nav{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:10px;margin-bottom:10px}.family-birthday-month-nav>button{width:42px;height:42px;border:1px solid #dce5ef;background:#f7f9fc;border-radius:12px;color:#4e6c9b;font-size:20px;font-weight:800}.family-birthday-month-nav>div{text-align:center}.family-birthday-month-nav small{display:block;color:#758397;font-size:8px;letter-spacing:.12em;font-weight:850}.family-birthday-month-nav strong{display:block;color:#1f2a3d;font-size:17px;margin-top:2px;text-transform:capitalize}.birthday-current-month{display:block;margin:0 auto 11px;border:0;background:#edf4ff;color:#456ba9;border-radius:999px;padding:7px 12px;font-size:9px;font-weight:850}
@media(max-width:760px){.recipe-grid{grid-template-columns:1fr}.recipes-head{padding:15px;align-items:center}.recipe-card{padding:14px}.recipe-ingredient-row{grid-template-columns:minmax(0,1fr) 76px 82px 34px}.recipe-ingredient-row select[data-field="categoryKey"]{grid-column:1/-1}.shopping-custom-product form{grid-template-columns:1fr}.shopping-custom-product form>button{grid-column:1}.shopping-icon-choice{width:36px;height:36px}.shop-measure{font-size:10px}}
@media(max-width:520px){.recipes-head{flex-direction:column}.recipes-head button{width:100%}.recipe-to-shopping{align-items:stretch;flex-direction:column}.recipe-to-shopping button{min-height:40px}.recipe-ingredient-row{grid-template-columns:minmax(0,1fr) 72px 34px}.recipe-ingredient-row select[data-field="unit"],.recipe-ingredient-row select[data-field="categoryKey"]{grid-column:1/-1}.recipe-ingredient-row>button{grid-column:3;grid-row:1}.shopping-tabs button{font-size:11px}}

/* V0.26.0 - recipe photo/PDF import */
.recipes-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.recipes-head-actions button.secondary{background:#eef4ff;color:#456ba9;border:1px solid #d8e5fa}.recipe-procedure{margin:11px 0 4px;border-top:1px solid #edf0f4;padding-top:9px}.recipe-procedure summary{cursor:pointer;color:#456ba9;font-size:10px;font-weight:850}.recipe-procedure p{margin:8px 0 0;color:#4f5d70;font-size:11px;line-height:1.55}.recipe-source{display:block;margin-top:8px;color:#8994a3;font-size:8.5px}.recipe-import-sheet{max-width:680px}.recipe-import-body{padding:0 18px 20px}.recipe-import-body>p{color:#67768a;font-size:12px;line-height:1.55;margin:0 0 16px}.recipe-import-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.recipe-import-actions>button{border:1px solid #dce5ef;background:#f8fbff;border-radius:17px;min-height:118px;padding:16px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:5px;color:#27354a}.recipe-import-actions>button:hover{border-color:#a8bfeb;background:#f2f7ff}.recipe-import-actions span{font-size:28px}.recipe-import-actions strong{font-size:14px}.recipe-import-actions small{font-size:10px;color:#718095}.recipe-import-selection{margin-top:12px;border:1px solid #dce5ef;border-radius:14px;background:#fff;padding:11px 13px;display:flex;align-items:center;gap:10px}.recipe-import-selection>span{font-size:24px}.recipe-import-selection div{min-width:0;display:flex;flex-direction:column;gap:2px}.recipe-import-selection strong{font-size:11px;color:#2c394d;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-import-selection small{font-size:9px;color:#7b8797}.recipe-analyze-btn{width:100%;margin-top:12px;min-height:44px}.recipe-analyze-btn:disabled{opacity:.5;cursor:not-allowed}.recipe-import-status{margin-top:12px;border-radius:12px;padding:10px 12px;font-size:10px;line-height:1.45}.recipe-import-status.loading{background:#eef5ff;color:#41679f}.recipe-import-status.error{background:#fff0f1;color:#b94856}.recipe-import-privacy{display:block;margin-top:10px;color:#8a95a4;font-size:8.5px;line-height:1.45}.recipe-import-warnings{margin:0 18px 12px;border:1px solid #f2d895;background:#fff9e9;color:#735d21;border-radius:13px;padding:10px 12px;display:flex;flex-direction:column;gap:4px;font-size:10px}.recipe-import-warnings strong{font-size:11px}.recipe-import-source{margin:0 18px 12px;background:#f4f7fb;border:1px solid #e0e6ee;border-radius:11px;padding:8px 11px;color:#657489;font-size:9px}.recipe-wide-field{grid-column:1/-1}.recipe-wide-field textarea{line-height:1.5}
@media(max-width:620px){.recipe-import-actions{grid-template-columns:1fr}.recipe-import-actions>button{min-height:96px}.recipes-head-actions{width:100%}.recipes-head-actions button{flex:1;min-height:40px}.recipe-import-body{padding:0 14px 18px}.recipe-import-warnings,.recipe-import-source{margin-left:14px;margin-right:14px}}

/* V0.27.0 - expandable shopping taxonomy, flexible units, recipe categories */
.shopping-more-categories{width:100%;margin-top:10px;border:1px dashed #cbd8e8;background:#f8fbff;color:#4e6fa7;border-radius:13px;min-height:42px;font-size:10px;font-weight:850;cursor:pointer}
.recipe-category-filter{display:flex;gap:7px;overflow-x:auto;padding:2px 1px 10px;margin-bottom:3px;scrollbar-width:thin}
.recipe-category-filter button{flex:0 0 auto;border:1px solid #dce5ef;background:#fff;color:#536278;border-radius:999px;padding:8px 11px;font-size:10px;font-weight:800;white-space:nowrap;cursor:pointer}
.recipe-category-filter button.active{background:#edf4ff;border-color:#bcd0ee;color:#4169aa}
.recipe-category-filter button b{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:4px;padding:0 5px;background:#f1f4f8;border-radius:999px;font-size:8px;color:#728096}
.recipe-category-filter button.active b{background:#dce9fb;color:#4169aa}
.recipe-ingredient-row input[data-field="amountText"]{font-variant-numeric:tabular-nums}
.recipe-ingredient-row input[data-field="unit"]{min-width:0}
@media(max-width:760px){
  .shopping-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .recipe-category-filter{margin-left:-2px;margin-right:-2px;padding-bottom:8px}
  .recipe-ingredient-row{grid-template-columns:minmax(0,1fr) 78px 88px 34px}
  .recipe-ingredient-row select[data-field="categoryKey"]{grid-column:1/-1}
}
@media(max-width:520px){
  .recipe-ingredient-row{grid-template-columns:minmax(0,1fr) 74px 34px}
  .recipe-ingredient-row input[data-field="unit"],.recipe-ingredient-row select[data-field="categoryKey"]{grid-column:1/-1}
  .recipe-ingredient-row>button{grid-column:3;grid-row:1}
}

/* V0.29.0 - dedicated shopping list and product-name normalization */
.shopping-tabs-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.shopping-shop-mode{background:#fff;border:1px solid #dce5ef;border-radius:22px;padding:16px;margin-top:10px}
.shopping-shop-mode-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.shopping-shop-mode-head small{display:block;font-size:8px;letter-spacing:.13em;color:#5c7fc1;font-weight:900}
.shopping-shop-mode-head h2{margin:3px 0 0;font-size:22px;color:#1f2a3d}
.shopping-shop-mode-head p{margin:4px 0 0;font-size:11px;color:#718095}
.shopping-shop-mode-head>strong{min-width:42px;height:42px;border-radius:14px;background:#edf4ff;color:#456ba9;display:grid;place-items:center;font-size:16px}
@media(max-width:560px){.shopping-tabs-three button{font-size:9px;padding-left:5px;padding-right:5px}.shopping-shop-mode{padding:12px}.shopping-shop-mode-head h2{font-size:20px}}

/* V0.30.0 - actionable daily overview + PWA status bar */
.daily-overview{margin-top:0}
.daily-overview .morning-brief-head h2{font-size:27px;letter-spacing:-.04em;margin-top:3px;color:#172033}
.daily-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.daily-overview-action{appearance:none;width:100%;border:1px solid #e3e9f1;background:#fff;border-radius:15px;padding:12px;min-height:82px;display:grid;grid-template-columns:38px minmax(0,1fr) 16px;gap:10px;align-items:center;text-align:left;color:inherit;cursor:pointer;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}
.daily-overview-action:hover,.daily-overview-action:focus-visible{border-color:#bfd0eb;box-shadow:0 8px 22px rgba(50,78,120,.09);transform:translateY(-1px);outline:none}
.daily-overview-action>span:nth-child(2){min-width:0}.daily-overview-action>b{font-size:20px;color:#9aa8ba;font-weight:500;justify-self:end}
.daily-overview-action small{display:block;color:#7b8797;font-size:8px;font-weight:900;letter-spacing:.08em}.daily-overview-action strong{display:block;color:#243247;font-size:12px;line-height:1.3;margin-top:3px}.daily-overview-action em{display:block;color:#7a8798;font-size:9px;font-style:normal;margin-top:3px;line-height:1.35}.daily-overview-action.birthday{border-color:#eadfd6;background:#fffaf7}
.weather-view-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:12px}.weather-view-head small{font-size:9px;font-weight:900;letter-spacing:.12em;color:#5678bb}.weather-view-head h2{font-size:28px;letter-spacing:-.04em;margin-top:3px;color:#172033}.weather-view-head p{font-size:11px;color:#758397;margin-top:4px}
@media(max-width:980px){.daily-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.daily-overview{padding:15px}.daily-overview .morning-brief-head h2{font-size:24px}.daily-overview-grid{grid-template-columns:1fr;gap:7px}.daily-overview-action{min-height:72px;padding:10px 11px}.daily-overview-action strong{font-size:13px}.daily-overview-action em{font-size:10px}.weather-view-head{align-items:flex-start}.weather-view-head h2{font-size:24px}}

/* V0.31 AI foundation */
.ai-inline-button{margin-top:10px;border:1px solid #d9e2ec;background:#fff;border-radius:999px;padding:8px 12px;font-weight:700;cursor:pointer}.ai-inline-button:disabled{opacity:.55}.ai-brief-result{margin-top:14px;padding:16px;border:1px solid #dbe5ee;border-radius:18px;background:#f8fbfd}.ai-brief-head{display:flex;gap:10px;align-items:center}.ai-brief-head strong{display:block}.ai-brief-head small{display:block;color:#64748b}.ai-brief-result p{margin:10px 0}.ai-priority-list{display:grid;gap:5px;margin:8px 0}.ai-brief-result em{display:block;color:#52606d;margin-top:8px}.ai-cook-result{display:grid;gap:10px;margin-top:14px}.ai-cook-card{border:1px solid #dbe5ee;border-radius:16px;padding:14px;background:#fff}.ai-cook-card strong{font-size:16px}.ai-cook-card p{margin:6px 0}.ai-cook-card small{display:block;color:#64748b;margin-bottom:8px}.ai-cook-card button{border:0;border-radius:10px;padding:8px 11px;font-weight:700;cursor:pointer}
/* V0.32 wardrobe */
.wardrobe-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px;border-radius:22px;background:#fff;border:1px solid #e7ebf0;margin-bottom:14px}.wardrobe-hero h2{margin:3px 0 5px;font-size:26px}.wardrobe-hero p{margin:0;color:#667085}.wardrobe-hero>span{font-size:42px}.wardrobe-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.wardrobe-group{margin:20px 0}.wardrobe-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.wardrobe-item-card{position:relative;background:#fff;border:1px solid #e7ebf0;border-radius:18px;overflow:hidden}.wardrobe-item-card>img{width:100%;aspect-ratio:4/5;object-fit:cover;background:#f5f7fa}.wardrobe-item-card>div{display:flex;flex-direction:column;gap:3px;padding:11px}.wardrobe-item-card small,.wardrobe-item-card span,.wardrobe-item-card em{font-size:12px;color:#667085;font-style:normal}.wardrobe-item-card strong{font-size:15px}.wardrobe-item-card>button{position:absolute;top:8px;right:8px;width:30px;height:30px;border:0;border-radius:50%;background:rgba(255,255,255,.9);font-size:20px}.wardrobe-upload-body{padding:4px 0 24px}.wardrobe-upload-body>p{color:#667085}.wardrobe-upload-body>input[type=file]{width:100%;padding:14px;border:1px dashed #cfd6df;border-radius:14px;margin:8px 0 12px}.wardrobe-draft{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.wardrobe-draft>img{grid-column:1/-1;width:160px;max-height:210px;object-fit:cover;border-radius:14px}.wardrobe-draft label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:#667085}.wardrobe-draft input,.wardrobe-draft select,.wardrobe-draft textarea,.wardrobe-upload-body textarea{width:100%;box-sizing:border-box;border:1px solid #d8dee7;border-radius:11px;padding:10px;background:#fff;color:#17212b}.wardrobe-style-options{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}.wardrobe-style-options label{display:inline-flex;flex-direction:row;align-items:center;background:#f5f7fa;padding:7px 9px;border-radius:10px}.wardrobe-draft .primary-btn{grid-column:1/-1}.outfit-card{border:1px solid #e7ebf0;border-radius:16px;padding:14px;margin:12px 0;background:#fff}.outfit-card h3{margin:0 0 10px}.outfit-items{display:flex;gap:8px;overflow:auto}.outfit-items span{min-width:90px;display:flex;flex-direction:column;gap:5px}.outfit-items img{width:86px;height:104px;object-fit:cover;border-radius:11px}.outfit-items b{font-size:12px}.outfit-card p{margin:10px 0 4px}.outfit-card small{color:#667085}@media(max-width:760px){.wardrobe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wardrobe-draft{grid-template-columns:1fr}.wardrobe-draft>*{grid-column:1!important}}

/* V0.33 - wardrobe shortcut + family AI daily brief */
.daily-overview-action.wardrobe .daily-overview-icon{font-size:1.45rem}
.ai-family-brief{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;margin:12px 0}
.ai-family-brief>div{background:rgba(255,255,255,.72);border:1px solid rgba(15,23,42,.08);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:3px}
.ai-family-brief>div.family{grid-column:1/-1}
.ai-family-brief strong{font-size:.82rem}
.ai-family-brief span{font-size:.78rem;line-height:1.35;color:var(--muted,#64748b)}

/* V0.34 - always-visible wardrobe shortcut + stronger vision feedback */
.daily-overview-action.wardrobe-primary{grid-column:span 2;border-color:#c7d9f3;background:linear-gradient(135deg,#f7fbff,#eef5ff)}
.daily-overview-action.wardrobe-primary strong{font-size:15px}.daily-overview-action.wardrobe-primary .daily-overview-icon{background:#e6f0ff}
.wardrobe-ai-confidence{margin:12px 0;padding:11px 12px;border-radius:12px;background:#eef8f0;border:1px solid #cfe6d3;display:grid;gap:3px}.wardrobe-ai-confidence b{font-size:12px;color:#294a32}.wardrobe-ai-confidence span{font-size:11px;color:#5d6b61;line-height:1.35}.wardrobe-ai-confidence.warn{background:#fff8e8;border-color:#ecd9a7}.wardrobe-ai-confidence.warn b{color:#775713}.wardrobe-ai-confidence.warn span{color:#7a6943}
@media(max-width:980px){.daily-overview-action.wardrobe-primary{grid-column:1/-1}}


.plan-agenda-panel{border:1px solid #e0e6ed;background:#fff;border-radius:22px;padding:15px;margin-top:10px}
.plan-agenda-list{display:grid;gap:12px;margin-top:10px}
.plan-agenda-group{border:1px solid #e8edf3;background:#fbfcfe;border-radius:18px;padding:12px}
.plan-agenda-group.today{border-color:#cfdcf1;background:#f6f9ff}
.plan-agenda-group-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}
.plan-agenda-group-head small{display:block;font-size:8px;font-weight:800;letter-spacing:.1em;color:#6e84a7;text-transform:capitalize}.plan-agenda-group-head h4{font-size:18px;color:#233146;text-transform:capitalize}.plan-agenda-group-head>div:last-child{display:flex;align-items:center;gap:6px}
.plan-agenda-jump,.plan-agenda-add,.plan-agenda-open{border:1px solid #dbe3ee;background:#fff;color:#5370a3;border-radius:10px;min-height:34px;padding:0 10px;font-size:9px;font-weight:850}.plan-agenda-add{width:34px;padding:0;font-size:20px;line-height:1}.plan-agenda-open{min-width:58px}
.plan-agenda-items{display:grid;gap:8px}
.plan-agenda-entry{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 0;border-top:1px solid #edf1f5}.plan-agenda-entry:first-child{border-top:0}
.plan-agenda-badge{min-height:54px;border-radius:14px;display:grid;place-items:center;align-content:center;padding:6px;background:#edf3ff;color:#3d68b3;text-align:center}.plan-agenda-badge strong{display:block;font-size:13px;line-height:1.1}.plan-agenda-badge small{display:block;font-size:8px;font-weight:800;margin-top:3px;text-transform:uppercase;letter-spacing:.04em}
.plan-agenda-badge.task{background:#fff7e9;color:#9a7123}.plan-agenda-badge.task.overdue,.plan-agenda-entry.overdue .plan-agenda-badge{background:#fff0ee;color:#b65449}.plan-agenda-badge.birthday{background:#fff0f5;color:#c25c88}
.plan-agenda-main strong{display:block;font-size:12px;color:#223045;line-height:1.25}.plan-agenda-main small{display:block;color:#778599;font-size:9px;line-height:1.35;margin-top:3px}.plan-agenda-empty{padding:10px 2px;color:#7a8798;font-size:10px}
@media(max-width:760px){.plan-agenda-entry{grid-template-columns:52px minmax(0,1fr) auto}.plan-agenda-group-head{align-items:flex-end}.plan-agenda-jump{display:none}.plan-agenda-open{padding:0 8px;min-width:48px}.plan-agenda-main strong{font-size:13px}.plan-agenda-main small{font-size:9.5px}}



/* V0.37 - functional agenda: quick-add, category colors, location/time emphasis */
.plan-agenda-entry.event{position:relative;border-radius:14px;padding:9px 8px 9px 0}
.plan-agenda-entry.event::before{content:"";position:absolute;left:-12px;top:9px;bottom:9px;width:3px;border-radius:999px;background:#6d91d0}
.plan-agenda-badge.category-generic,.plan-agenda-entry.category-generic::before{background:#eaf0fb;color:#4c6fae}
.plan-agenda-badge.category-visit,.plan-agenda-entry.category-visit::before{background:#edf0fb;color:#675db2}
.plan-agenda-badge.category-meal,.plan-agenda-entry.category-meal::before{background:#fff2e8;color:#a9642d}
.plan-agenda-badge.category-drink,.plan-agenda-entry.category-drink::before{background:#eaf8f3;color:#32846e}
.plan-agenda-badge.category-trip,.plan-agenda-entry.category-trip::before{background:#edf8ec;color:#4b864e}
.plan-agenda-badge.category-sport,.plan-agenda-entry.category-sport::before{background:#eaf7f1;color:#24825f}
.plan-agenda-badge.category-health,.plan-agenda-entry.category-health::before{background:#fff0f0;color:#b34e55}
.plan-agenda-badge.category-birthday,.plan-agenda-entry.category-birthday::before{background:#fff0f5;color:#bd5a87}
.plan-agenda-badge.category-school,.plan-agenda-entry.category-school::before{background:#eef4ff;color:#456eb7}
.plan-agenda-badge.category-work,.plan-agenda-entry.category-work::before{background:#edf1f6;color:#4d627e}
.plan-agenda-badge.category-cinema,.plan-agenda-entry.category-cinema::before{background:#f4effc;color:#7a56a9}
.plan-agenda-badge.category-vacation,.plan-agenda-entry.category-vacation::before{background:#e9f8fb;color:#2d8493}
.plan-agenda-badge.category-shopping,.plan-agenda-entry.category-shopping::before{background:#fff7e9;color:#9b7426}
.plan-agenda-badge.category-hair,.plan-agenda-entry.category-hair::before{background:#f8eff8;color:#9a5795}
.plan-agenda-badge.category-celebration,.plan-agenda-entry.category-celebration::before{background:#fff1f7;color:#b14b7c}
.plan-agenda-badge.category-travel,.plan-agenda-entry.category-travel::before{background:#eef5f3;color:#477b70}
.plan-agenda-badge.category-flight,.plan-agenda-entry.category-flight::before{background:#edf5ff;color:#4276ad}
.plan-agenda-entry.category-generic::before{background:#6d91d0}.plan-agenda-entry.category-visit::before{background:#7b6bc5}.plan-agenda-entry.category-meal::before{background:#d98a46}.plan-agenda-entry.category-drink::before{background:#43a18a}.plan-agenda-entry.category-trip::before{background:#67a967}.plan-agenda-entry.category-sport::before{background:#3c9d79}.plan-agenda-entry.category-health::before{background:#d36b73}.plan-agenda-entry.category-birthday::before{background:#d6749e}.plan-agenda-entry.category-school::before{background:#6387cb}.plan-agenda-entry.category-work::before{background:#6a7d97}.plan-agenda-entry.category-cinema::before{background:#9270bd}.plan-agenda-entry.category-vacation::before{background:#49a4b3}.plan-agenda-entry.category-shopping::before{background:#c19542}.plan-agenda-entry.category-hair::before{background:#ad73a9}.plan-agenda-entry.category-celebration::before{background:#c96995}.plan-agenda-entry.category-travel::before{background:#629487}.plan-agenda-entry.category-flight::before{background:#5b8fc7}
.plan-agenda-details{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.plan-agenda-detail{display:inline-flex;align-items:center;gap:4px;border:1px solid #e0e6ee;background:#fff;border-radius:999px;padding:4px 7px;color:#617087;font-size:8.5px;text-decoration:none}.plan-agenda-detail .ui-icon{width:12px;height:12px}.plan-agenda-detail b{font-weight:800}.plan-agenda-detail.location{color:#476aa9;border-color:#d7e1ef;background:#f8fbff}.plan-agenda-detail.multiday{color:#6a5897;background:#faf7ff;border-color:#e7ddf5}.plan-agenda-detail.location:hover{border-color:#aec3e2;background:#edf4ff}
.plan-quick-add-sheet{max-width:560px}.plan-quick-add-grid{display:grid;grid-template-columns:1fr;gap:9px;padding:0 16px 10px}.plan-quick-add-grid>button,.plan-quick-smart{border:1px solid #e0e6ee;background:#fff;border-radius:16px;padding:12px;display:grid;grid-template-columns:44px minmax(0,1fr);gap:11px;align-items:center;text-align:left;color:#253247;cursor:pointer}.plan-quick-add-grid>button:hover,.plan-quick-smart:hover{border-color:#bfd0ea;background:#f9fbff}.plan-quick-add-grid strong,.plan-quick-smart strong{display:block;font-size:13px}.plan-quick-add-grid small,.plan-quick-smart small{display:block;font-size:9px;color:#77859a;margin-top:3px}.plan-quick-add-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center}.plan-quick-add-icon .ui-icon{width:19px;height:19px}.plan-quick-add-icon.event{background:#edf3ff;color:#4e73bb}.plan-quick-add-icon.task{background:#fff6e8;color:#9b722a}.plan-quick-add-icon.shopping{background:#eef8f3;color:#3e8b76;font-size:19px}.plan-quick-smart{margin:0 16px 18px;width:calc(100% - 32px);background:#f5f8ff;border-color:#d7e2f2;color:#3d609e}.plan-quick-smart>.ui-icon{width:21px;height:21px;justify-self:center}
@media(max-width:560px){.plan-agenda-detail{font-size:8px}.plan-agenda-open{font-size:8px}.plan-agenda-entry{grid-template-columns:52px minmax(0,1fr) 44px}.plan-agenda-group{padding:11px}.plan-agenda-entry.event::before{left:-11px}}

/* V0.38.0 - family chat */
.nav-item{position:relative}.nav-chat-badge{position:absolute;top:3px;right:calc(50% - 22px);min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#d84b45;color:#fff;display:grid;place-items:center;font-style:normal;font-size:8px;font-weight:900;line-height:1;box-shadow:0 0 0 2px #fff}
.family-chat-section{margin:8px 0 14px}.family-chat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:9px}.family-chat-card{border:1px solid #dde5ef;background:#fff;border-radius:18px;padding:13px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;color:inherit;box-shadow:0 4px 15px rgba(32,45,66,.035)}.family-chat-card.private{background:linear-gradient(135deg,#fff,#f8f9fc)}.family-chat-card>.ui-icon{width:17px;height:17px;color:#8392a6}.family-chat-icon{width:42px;height:42px;border-radius:14px;background:#edf4ff;display:grid;place-items:center;font-size:19px}.family-chat-card.private .family-chat-icon{background:#f0eef8}.family-chat-copy{min-width:0}.family-chat-copy strong{display:block;color:#223047;font-size:13px}.family-chat-copy small{display:block;color:#77869a;font-size:9.5px;line-height:1.35;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.family-chat-copy em{display:block;color:#9aa5b3;font-size:8px;font-style:normal;margin-top:4px}.family-chat-unread{min-width:24px;height:24px;border-radius:999px;background:#5579c8;color:#fff;display:grid;place-items:center;font-size:9px}
.chat-shell{display:flex;flex-direction:column;min-height:calc(100dvh - 150px);max-width:860px;margin:0 auto}.chat-head{position:sticky;top:0;z-index:3;background:rgba(249,251,253,.96);backdrop-filter:blur(14px);padding:4px 2px 12px;border-bottom:1px solid #edf1f5}.chat-head .chat-back{margin-bottom:5px}.chat-head small{font-size:8px;letter-spacing:.13em;font-weight:900;color:#5a78ad}.chat-head h2{font-size:22px;color:#1e2b3f;margin-top:3px}.chat-head p{font-size:9.5px;color:#7a8798;margin-top:4px}.chat-message-list{flex:1;min-height:340px;max-height:calc(100dvh - 300px);overflow-y:auto;padding:14px 4px 18px;scroll-behavior:smooth}.chat-day-separator{display:flex;align-items:center;justify-content:center;margin:10px 0}.chat-day-separator span{background:#eef2f7;color:#758397;border-radius:999px;padding:5px 9px;font-size:8px;font-weight:850;text-transform:capitalize}.chat-message{display:flex;flex-direction:column;margin:7px 0;max-width:78%}.chat-message.own{margin-left:auto;align-items:flex-end}.chat-message.other{margin-right:auto;align-items:flex-start}.chat-message-head{display:flex;gap:7px;align-items:center;padding:0 5px 4px}.chat-message-head strong{font-size:8.5px;color:#697991}.chat-message-head small{font-size:7.5px;color:#a0aab7}.chat-bubble{border-radius:17px 17px 17px 5px;background:#fff;border:1px solid #e1e7ee;padding:10px 12px;min-width:74px;box-shadow:0 3px 10px rgba(40,55,80,.035)}.chat-message.own .chat-bubble{background:#eaf2ff;border-color:#cfddf3;border-radius:17px 17px 5px 17px}.chat-bubble p{margin:0;color:#263448;font-size:12px;line-height:1.45;overflow-wrap:anywhere}.chat-image-link{display:block;margin-top:8px}.chat-image-link:first-child{margin-top:0}.chat-image-link img{display:block;max-width:min(100%,360px);max-height:360px;border-radius:12px;object-fit:cover}.chat-file-link{display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px;align-items:center;margin-top:7px;padding:9px;border-radius:11px;background:rgba(255,255,255,.62);border:1px solid rgba(90,110,145,.12);text-decoration:none;color:inherit}.chat-file-link>span:first-child{font-size:20px}.chat-file-link strong{display:block;font-size:10px}.chat-file-link small{display:block;color:#7d8998;font-size:8px;margin-top:2px}.chat-message-tools{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 4px 0}.chat-reaction-row{display:flex;flex-wrap:wrap;gap:4px}.chat-reaction-chip,.chat-react-add,.chat-use-button{border:1px solid #e0e6ed;background:#fff;color:#66768d;border-radius:999px;min-height:25px;padding:3px 7px;font-size:8px;font-weight:800}.chat-reaction-chip.mine{background:#edf4ff;color:#4269b3;border-color:#d2def1}.chat-reaction-chip span{font-size:7px}.chat-react-add{width:26px;padding:0;font-size:13px}.chat-use-button{white-space:nowrap}.chat-empty{min-height:220px;display:grid;place-items:center;align-content:center;text-align:center;color:#7a8798}.chat-empty>span{font-size:34px}.chat-empty strong{font-size:13px;color:#35445a;margin-top:8px}.chat-empty small{font-size:9px;margin-top:4px}.chat-composer{position:sticky;bottom:74px;z-index:4;background:rgba(249,251,253,.97);backdrop-filter:blur(14px);padding:10px 2px 4px;border-top:1px solid #edf1f5}.chat-compose-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:7px;align-items:end}.chat-attach{width:42px;height:42px;border:1px solid #dbe3ed;background:#fff;border-radius:13px;font-size:18px}.chat-compose-row textarea{width:100%;min-height:42px;max-height:120px;resize:none;border:1px solid #d9e1eb;background:#fff;border-radius:14px;padding:11px 12px;color:#263448;font:inherit;font-size:12px;line-height:1.4}.chat-send{min-height:42px;border:0;border-radius:13px;background:#5579c8;color:#fff;padding:0 14px;font-size:10px;font-weight:900}.chat-send:disabled{opacity:.55}.chat-attachment-preview{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #e0e6ed;background:#fff;border-radius:11px;padding:7px 10px;margin-bottom:7px;color:#65758b;font-size:9px}.chat-attachment-preview button{border:0;background:transparent;color:#8995a5;font-size:17px}.chat-reaction-popover{position:fixed;left:50%;bottom:122px;transform:translateX(-50%);z-index:1200}.chat-reaction-picker{display:flex;gap:4px;padding:7px;border:1px solid #dce4ed;background:#fff;border-radius:999px;box-shadow:0 14px 40px rgba(29,42,65,.18)}.chat-reaction-picker button{width:36px;height:36px;border:0;background:transparent;border-radius:50%;font-size:20px}.chat-reaction-picker button:hover{background:#f1f4f8}.compact-action-sheet{max-width:520px}.chat-convert-preview{margin:4px 0 14px;padding:12px;border-radius:13px;background:#f6f8fb;color:#48586d;font-size:11px;line-height:1.45}.chat-convert-actions{display:grid;gap:8px;padding-bottom:8px}.chat-convert-actions button{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:center;border:1px solid #e0e6ee;background:#fff;border-radius:14px;padding:12px;text-align:left;color:inherit}.chat-convert-actions .ui-icon{width:20px;height:20px;color:#5579c8}.chat-convert-actions button>span:first-child{font-size:19px}.chat-convert-actions strong{display:block;font-size:11px;color:#28374c}.chat-convert-actions small{display:block;font-size:8.5px;color:#7a8799;margin-top:2px}
@media(max-width:680px){.family-chat-grid{grid-template-columns:1fr}.chat-shell{min-height:calc(100dvh - 135px)}.chat-message-list{max-height:calc(100dvh - 270px);padding-left:0;padding-right:0}.chat-message{max-width:88%}.chat-composer{bottom:68px}.chat-bubble p{font-size:13px}.chat-image-link img{max-height:300px}.family-chat-copy strong{font-size:13.5px}.family-chat-copy small{font-size:10px}}


/* V0.39.0 - UI cleanup: focused Home, clean Agenda, optimized Family */
.home-clean-brief{padding-bottom:14px}.home-clean-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-clean-grid .daily-overview-action{min-height:76px}.home-clean-grid .daily-overview-action.attention{border-color:#ead7cf;background:#fffaf7}.home-head-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.home-head-actions .ai-inline-button{margin-top:0}.home-capture-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:11px}.home-capture-bar button{border:1px solid #dde5ef;background:#fff;border-radius:13px;min-height:40px;color:#4d668b;font-size:10px;font-weight:850}.home-clean-stack{display:grid;gap:9px}.home-oskar-only{grid-template-columns:minmax(0,1fr)}.home-chat-notice>span:first-child{font-size:18px}
.plan-head.clean{align-items:flex-end}.plan-head.clean h2{font-size:30px;color:#172033;letter-spacing:-.04em;margin-top:2px}.plan-head-buttons{display:flex;gap:7px}.plan-today-button{border:1px solid #dbe4ef;background:#fff;color:#526d9e;border-radius:14px;padding:0 13px;min-height:44px;font-size:9px;font-weight:850}.plan-date-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(58px,1fr);gap:6px;overflow-x:auto;padding:2px 1px 8px;scrollbar-width:none}.plan-date-strip::-webkit-scrollbar{display:none}.plan-date-strip .plan-day{min-width:58px}.plan-person-filters{display:flex;gap:6px;overflow-x:auto;padding:2px 1px 9px;scrollbar-width:none}.plan-person-filters::-webkit-scrollbar{display:none}.plan-person-filters button{border:1px solid #dfe5ed;background:#fff;color:#667891;border-radius:999px;padding:7px 12px;font-size:9px;font-weight:850;white-space:nowrap}.plan-person-filters button.active{background:#eaf1ff;border-color:#cbdaf1;color:#315fae}.plan-agenda-panel.clean{border:0;background:transparent;padding:0;margin-top:4px}.plan-agenda-panel.clean .plan-agenda-list{gap:5px}.plan-agenda-panel.clean .plan-agenda-group{border:0;border-radius:0;background:transparent;padding:12px 0;border-top:1px solid #e8edf3}.plan-agenda-panel.clean .plan-agenda-group:first-child{border-top:0}.plan-agenda-panel.clean .plan-agenda-group.today{background:transparent}.plan-agenda-group-head{margin-bottom:6px}.plan-agenda-group-head>button.plan-agenda-add{border-color:#dce4ef;background:#f8fafc}.plan-agenda-panel.clean .plan-agenda-entry{background:#fff;border:1px solid #e7ecf2;border-radius:15px;padding:9px 10px;margin-top:6px;grid-template-columns:58px minmax(0,1fr) 20px}.plan-agenda-chevron{font-size:22px;color:#a0acbb;justify-self:end}.plan-agenda-empty{border:1px dashed #dfe5ed;border-radius:14px;padding:12px;color:#7a8798}.plan-agenda-empty button{border:0;background:transparent;color:#4f72b5;font-weight:850}.plan-agenda-empty.standalone{margin-top:12px}.plan-week-overview,.week-board{display:none!important}
.family-hub-head.clean h2{font-size:28px;color:#172033;letter-spacing:-.04em;margin-top:2px}.family-member-strip{display:flex;gap:12px;overflow-x:auto;padding:4px 1px 12px;scrollbar-width:none}.family-member-strip::-webkit-scrollbar{display:none}.family-member-strip button{border:0;background:transparent;display:grid;justify-items:center;gap:5px;min-width:64px;color:#4d5f76;font-size:9px;font-weight:850}.family-strip-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;border:2px solid #fff;box-shadow:0 2px 9px rgba(31,50,80,.1)}.family-strip-avatar img{width:100%;height:100%;object-fit:cover}.family-today-section,.family-personal-links,.family-upcoming{border:1px solid #e2e7ee;background:#fff;border-radius:20px;padding:14px;margin-top:10px}.family-today-row,.family-upcoming-birthday{width:100%;border:0;border-top:1px solid #edf0f4;background:transparent;display:grid;grid-template-columns:42px minmax(0,1fr) 18px;gap:10px;align-items:center;text-align:left;padding:10px 0;color:inherit}.family-today-row:first-of-type,.family-upcoming-birthday:first-child{border-top:0}.family-today-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden}.family-today-avatar img{width:100%;height:100%;object-fit:cover}.family-today-row strong,.family-upcoming-birthday strong{display:block;font-size:12px;color:#263247}.family-today-row small,.family-upcoming-birthday small{display:block;font-size:9px;color:#7a8798;margin-top:2px}.family-calm-state{padding:12px 0;color:#7a8798;font-size:10px}.family-feature-link.compact{margin-top:7px}.family-upcoming-list{display:grid}.family-birthdays-head.compact{align-items:center}.family-birthday-all{margin-top:8px;border-top:1px solid #edf0f4;padding-top:8px}.family-birthday-all>summary{cursor:pointer;list-style:none;color:#60728b;font-size:10px;font-weight:850;padding:6px 0}.family-birthday-all>summary::-webkit-details-marker{display:none}.family-birthday-all>div{margin-top:7px}
@media(max-width:760px){.home-clean-grid{grid-template-columns:1fr}.home-head-actions{justify-content:flex-start}.home-capture-bar button span{display:none}.home-capture-bar button{font-size:16px}.plan-head.clean{align-items:flex-start}.plan-head-buttons{width:100%;justify-content:flex-end}.plan-date-strip{grid-auto-columns:60px}.plan-agenda-panel.clean .plan-agenda-entry{grid-template-columns:54px minmax(0,1fr) 16px}.family-today-section,.family-personal-links,.family-upcoming{padding:13px}}

/* V0.40.0 - unified add, fast date jump, home outfit card, reliable touch navigation */
.home-capture-bar.single{display:block;margin-top:12px}
.home-primary-add{width:100%;min-height:54px;border:1px solid #d9e3f0;background:#f7faff;color:#304f83;border-radius:16px;padding:9px 12px;display:grid;grid-template-columns:38px minmax(0,1fr) 18px;gap:10px;align-items:center;text-align:left;cursor:pointer;touch-action:manipulation}
.home-primary-add-icon{width:36px;height:36px;border-radius:12px;background:#e7effd;color:#3f67ad;display:grid;place-items:center;font-size:21px}.home-primary-add strong{display:block;font-size:12px}.home-primary-add small{display:block;font-size:8.5px;color:#78879b;margin-top:2px}.home-primary-add>b{font-size:20px;color:#9ba8b9;font-weight:500;justify-self:end}
.home-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.outfit-home-card .outfit-icon{font-size:22px;background:#f0f4ff}.outfit-home-card{border-color:#dae4f2;background:linear-gradient(135deg,#fff,#f7faff)}
.plan-head-buttons{align-items:center;flex-wrap:wrap;justify-content:flex-end}.plan-add-button,.plan-today-button,.plan-date-picker{min-height:44px;border:1px solid #dbe4ef;background:#fff;color:#526d9e;border-radius:14px;font-size:9px;font-weight:850}
.plan-add-button{padding:0 13px;display:flex;align-items:center;gap:6px;cursor:pointer;touch-action:manipulation}.plan-add-button .ui-icon{width:16px;height:16px}.plan-add-button:hover,.plan-add-button:focus-visible{border-color:#bfd0e8;background:#f7faff;outline:none}
.plan-date-picker{position:relative;display:flex;align-items:center;gap:5px;padding:0 8px;overflow:hidden}.plan-date-picker>span{display:grid;place-items:center}.plan-date-picker .ui-icon{width:16px;height:16px}.plan-date-picker input{border:0;background:transparent;color:#526d9e;font:inherit;font-size:9px;font-weight:850;min-width:116px;outline:none;padding:0}.plan-date-picker input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.72}
.plan-quick-add-icon.chat{background:#f1edff;color:#7055b3;font-size:19px}
.bottom-nav{z-index:1100;pointer-events:auto;isolation:isolate}.bottom-nav .nav-item{touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none;cursor:pointer;position:relative}.bottom-nav .nav-item>*{pointer-events:none}.bottom-nav .nav-item:active{transform:scale(.96)}.bottom-nav .nav-chat-main{will-change:transform}.bottom-nav .nav-chat-main:active{transform:scale(.94)}
.home-primary-add,.plan-add-button,.plan-agenda-add,.plan-quick-add-grid>button,.plan-quick-smart{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
@media(max-width:760px){.home-focus-grid{grid-template-columns:1fr}.plan-head-buttons{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px}.plan-date-picker{min-width:0}.plan-date-picker input{min-width:0;width:100%}.plan-add-button{justify-content:center}.plan-head.clean{gap:10px}}
@media(max-width:760px){.home-capture-bar.single .home-primary-add>span{display:block!important}.home-capture-bar.single .home-primary-add>.home-primary-add-icon{display:grid!important}.home-capture-bar.single .home-primary-add>span:nth-child(2){display:block!important}}

/* V0.41 - flexible notifications, family cleanup, multiple shopping lists, reminders */
.notify-group{border:1px solid #e1e7ee;background:#fff;border-radius:16px;margin-top:10px;overflow:hidden}.notify-group>summary{list-style:none;padding:13px 15px;font-size:11px;font-weight:850;color:#33445d;cursor:pointer}.notify-group>summary::-webkit-details-marker{display:none}.notify-group>div{padding:0 13px 13px}.notify-setting-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 0;border-top:1px solid #edf1f5}.notify-setting-row:first-child{border-top:0}.notify-setting-row strong{display:block;font-size:11px;color:#253247}.notify-setting-row small{display:block;font-size:9px;line-height:1.35;color:#748297;margin-top:2px}.notify-setting-actions{display:flex;align-items:center;gap:8px}.notify-setting-actions input[type=time],.notify-time-pair input[type=time]{border:1px solid #d7e0ea;background:#fff;border-radius:9px;padding:7px;color:#253247;font-size:10px}.notify-setting-actions input[type=checkbox],.notify-subsetting input[type=checkbox]{width:20px;height:20px}.notify-time-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:4px 0 9px}.notify-time-pair label{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#f8fafc;border:1px solid #e5eaf0;border-radius:11px;padding:8px 10px;font-size:9px;color:#66768c}.notify-subsetting{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0 10px;font-size:9px;color:#68768a}.notify-save{width:100%;border:0;border-radius:13px;background:#5579c8;color:#fff;padding:12px;font-size:10px;font-weight:850;margin-top:12px}.alert-sheet-flex{max-height:min(92vh,900px);overflow:auto}
.event-reminder-control{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,.55fr);gap:9px}.event-reminder-control .is-hidden{display:none}.plan-agenda-reminder{color:#6f7f93;font-size:8.5px;font-weight:750}
.shopping-list-switcher{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;align-items:center;margin:2px 0 10px}.shopping-list-scroll{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;padding:2px}.shopping-list-scroll::-webkit-scrollbar{display:none}.shopping-list-pill{border:1px solid #dfe5ec;background:#fff;border-radius:999px;min-height:40px;padding:7px 10px;display:flex;align-items:center;gap:6px;white-space:nowrap;color:#64748b}.shopping-list-pill strong{font-size:10px}.shopping-list-pill small{min-width:19px;height:19px;border-radius:99px;background:#eef2f7;display:grid;place-items:center;font-size:8px;font-weight:900}.shopping-list-pill.active{border-color:#bfd0eb;background:#edf4ff;color:#355fa9}.shopping-list-pill.active small{background:#fff;color:#355fa9}.shopping-list-new,.shopping-list-manage{width:40px;height:40px;border:1px solid #dfe5ec;background:#fff;border-radius:12px;color:#5573a7;font-weight:900}.shopping-list-editor .text-danger{margin-right:auto}
.family-core-card{border:1px solid #e1e7ee;background:#fff;border-radius:20px;padding:14px;margin-top:10px}.family-core-head small{display:block;color:#5879b8;font-size:8px;font-weight:900;letter-spacing:.12em}.family-core-head h3{font-size:18px;color:#233146;margin-top:2px}.family-core-card .family-member-strip{margin:10px 0 3px}.family-core-card .family-today-section{border:0;background:transparent;padding:6px 0 0;margin:0}.family-core-card .family-today-section>.section-heading{display:none}.family-collapsible{border:1px solid #e1e7ee;background:#fff;border-radius:18px;margin-top:10px;overflow:hidden}.family-collapsible>summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:10px;padding:13px 15px;cursor:pointer}.family-collapsible>summary::-webkit-details-marker{display:none}.family-collapsible summary small{display:block;font-size:8px;letter-spacing:.12em;color:#6e84a7;font-weight:900}.family-collapsible summary strong{display:block;font-size:12px;color:#28364a;margin-top:2px}.family-collapsible summary .ui-icon{width:15px;color:#7c8ca0}.family-collapsible-body{padding:0 14px 14px}.family-birthday-all-list{margin-top:10px}
@media(max-width:600px){.notify-time-pair{grid-template-columns:1fr}.event-reminder-control{grid-template-columns:1fr}.shopping-list-switcher{grid-template-columns:minmax(0,1fr) 38px 38px}.shopping-list-new,.shopping-list-manage{width:38px;height:38px}.notify-setting-row{grid-template-columns:minmax(0,1fr) auto}}


/* V0.42 - one typography system, cleaner agenda, meals, family/admin, chat picker */
html,body,.app-shell,.content,.topbar,button,input,select,textarea,option,label,strong,small,p,h1,h2,h3,h4,h5,h6{font-family:system-ui,sans-serif!important}
.plan-agenda-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;margin-bottom:10px}
.plan-agenda-group-head h4{margin:0;font-size:16px;line-height:1.2;color:#233146;font-weight:850;letter-spacing:-.015em;text-transform:none}
.plan-agenda-group.today .plan-agenda-group-head h4{color:#315eaa}
.plan-agenda-add{flex:0 0 38px;width:38px;height:38px;min-height:38px;border-radius:12px;display:grid;place-items:center;font-size:20px;padding:0}
.shopping-tabs-four{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.meal-planner{border:1px solid #e1e7ee;background:#fff;border-radius:22px;padding:15px;margin-top:10px}.meal-planner-head small{display:block;font-size:8px;letter-spacing:.12em;color:#5879b8;font-weight:900}.meal-planner-head h2{font-size:22px;color:#233146;margin-top:3px}.meal-planner-head p{font-size:10px;line-height:1.45;color:#768397;margin-top:5px}.meal-prompt{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:13px}.meal-prompt input{min-width:0;border:1px solid #dce4ed;background:#fff;border-radius:13px;padding:11px 12px;color:#253247}.meal-prompt button{border:0;background:#5579c8;color:#fff;border-radius:13px;padding:0 14px;font-size:10px;font-weight:850}.meal-suggestion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}.meal-suggestion-card{border:1px solid #e4e9ef;background:#fbfcfe;border-radius:17px;padding:12px;display:flex;flex-direction:column;min-height:210px}.meal-suggestion-head{display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px;align-items:center}.meal-suggestion-head>span{width:38px;height:38px;border-radius:12px;background:#eef4ff;display:grid;place-items:center;font-size:18px}.meal-suggestion-head small{display:block;font-size:7.5px;letter-spacing:.1em;color:#6d83aa;font-weight:900}.meal-suggestion-head strong{display:block;font-size:12px;color:#243247;line-height:1.3;margin-top:2px}.meal-suggestion-card>p{font-size:9.5px;color:#6f7e91;line-height:1.45;margin-top:10px}.meal-source{align-self:flex-start;margin-top:8px;border-radius:999px;background:#edf5ee;color:#4f7657;padding:4px 7px;font-size:8px;font-weight:800}.meal-source.generic{background:#f1f3f7;color:#68778a}.meal-missing{margin-top:10px;padding-top:9px;border-top:1px solid #e7ebf0}.meal-missing small{display:block;font-size:7px;color:#8a96a5;font-weight:900;letter-spacing:.08em}.meal-missing span{display:block;font-size:9px;color:#56667b;line-height:1.4;margin-top:3px}.meal-add-shopping{margin-top:auto;border:1px solid #d5e0ef;background:#eef4ff;color:#4269b2;border-radius:11px;padding:9px;font-size:9px;font-weight:850}.meal-ready{margin-top:auto;font-size:9px;color:#5d8064;background:#f1f8f2;border-radius:10px;padding:9px}.meal-empty{grid-column:1/-1;text-align:center;padding:28px 16px;border:1px dashed #dfe5ec;border-radius:16px;color:#738196}.meal-empty>span{display:block;font-size:30px}.meal-empty strong{display:block;color:#34445b;margin-top:7px}.meal-empty p{font-size:10px;line-height:1.45;margin-top:5px}
.family-today-clean,.family-members-clean{border:1px solid #e1e7ee;background:#fff;border-radius:20px;padding:14px;margin-top:10px}.family-today-clean .family-today-row:first-child{border-top:0}.family-today-clean .family-calm-state{padding:9px 0 2px}.family-members-clean .family-member-strip{padding-bottom:0;margin-top:4px}.family-personal-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.family-personal-links .section-heading{grid-column:1/-1;margin-bottom:0}.family-personal-links .family-feature-link.compact{margin-top:0;min-height:58px}.family-admin-button{min-width:44px;justify-content:center}.family-admin-page{display:grid;gap:10px}.family-admin-head{border:1px solid #e1e7ee;background:#fff;border-radius:22px;padding:17px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start}.family-admin-head small,.family-admin-section .section-heading small{font-size:8px;letter-spacing:.12em;color:#5879b8;font-weight:900}.family-admin-head h2{font-size:23px;color:#223047;margin-top:3px}.family-admin-head p{font-size:10px;line-height:1.5;color:#718095;margin-top:6px;max-width:520px}.family-admin-head>span{background:#eef3f8;color:#61758f;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:850}.family-admin-status{border:1px solid #dfe8e1;background:#f7fbf7;border-radius:18px;padding:14px;display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:12px;align-items:center}.family-admin-status small{font-size:8px;color:#66806b;font-weight:900;letter-spacing:.1em}.family-admin-status strong{display:block;font-size:12px;color:#2d4633;margin-top:2px}.family-admin-status p{font-size:9px;color:#748278;margin-top:3px}.family-admin-status>b{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #dfe8e1;color:#748278;font-size:10px}.family-admin-status>b.ready{background:#e8f4ea;color:#426a49;border-color:#cce2d0}.family-admin-section{border:1px solid #e1e7ee;background:#fff;border-radius:20px;padding:14px}.family-admin-list{display:grid}.family-admin-member{width:100%;border:0;border-top:1px solid #edf1f5;background:transparent;display:grid;grid-template-columns:42px minmax(0,1fr) 18px;gap:10px;align-items:center;text-align:left;padding:11px 0;color:inherit}.family-admin-member:first-child{border-top:0}.family-admin-member.inactive{opacity:.55}.family-admin-member strong{display:block;font-size:12px;color:#263247}.family-admin-member small{display:block;font-size:9px;color:#7a8798;margin-top:2px}.family-admin-add{border:1px solid #e1e7ee;background:#fff;border-radius:18px;overflow:hidden}.family-admin-add>summary{list-style:none;padding:13px 15px;cursor:pointer;font-size:11px;font-weight:850;color:#50647f}.family-admin-add>summary::-webkit-details-marker{display:none}.family-admin-add-form{padding:0 14px 14px;display:grid;gap:9px}.family-admin-add-form label{display:grid;gap:5px;font-size:9px;color:#6d7c90;font-weight:800}.family-admin-add-form input,.family-admin-add-form select{border:1px solid #dce4ed;background:#fff;color:#253247;border-radius:11px;padding:10px}.family-admin-add-form .primary-btn{margin-top:2px}.family-admin-add-form>small{color:#8290a0;font-size:8.5px}.chat-picker-list{display:grid;gap:9px;padding:4px 0 20px}.chat-picker-option{width:100%;border:1px solid #dfe6ef;background:#fff;border-radius:16px;padding:12px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;color:inherit}.chat-picker-option.private{background:#faf9fd}.chat-picker-option>span:first-child{width:42px;height:42px;border-radius:13px;background:#edf4ff;display:grid;place-items:center;font-size:19px}.chat-picker-option.private>span:first-child{background:#f1eef8}.chat-picker-option strong{display:block;font-size:12px;color:#253247}.chat-picker-option small{display:block;font-size:9px;color:#7b8797;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.chat-picker-option>b{min-width:24px;height:24px;border-radius:999px;background:#5579c8;color:#fff;display:grid;place-items:center;font-size:9px}
@media(display-mode:standalone){body::before{content:"";position:fixed;left:0;right:0;top:0;height:max(env(safe-area-inset-top),1px);background:#0b1220;z-index:3000;pointer-events:none}}
@media(max-width:760px){.meal-suggestion-grid{grid-template-columns:1fr}.meal-prompt{grid-template-columns:1fr}.meal-prompt button{min-height:42px}.family-personal-links{grid-template-columns:1fr}.family-admin-head{grid-template-columns:1fr}.shopping-tabs-four button{font-size:8.5px;padding-left:4px;padding-right:4px}}

.family-admin-edit{background:#fff!important;border:1px solid #e1e7ee!important;color:#253247!important;box-shadow:0 5px 18px rgba(35,49,70,.035)!important}.family-admin-edit .profile-preview h2,.family-admin-edit h3{color:#253247!important}.family-admin-edit .profile-preview p,.family-admin-edit .form-hint,.family-admin-edit .google-account-line p,.family-admin-edit .danger-zone p{color:#748297!important}.family-admin-edit .subsection,.family-admin-edit .google-link-card,.family-admin-edit .security-panel{background:#f8fafc!important;border:1px solid #e3e8ef!important;color:#253247!important}.family-admin-edit .edit-member-form label{color:#5f6f84!important}.family-admin-edit .edit-member-form input,.family-admin-edit .edit-member-form select{background:#fff!important;border:1px solid #d8e1eb!important;color:#253247!important}.family-admin-edit .primary-btn{background:#5579c8!important;color:#fff!important}.family-admin-edit .secondary-btn{background:#fff!important;border:1px solid #d9e1eb!important;color:#526b8f!important}.family-admin-edit .google-login-btn{background:#fff!important;border-color:#d8dee7!important;color:#253247!important}.family-admin-edit .danger-zone{background:#fffafa!important;border-color:#f0dddd!important}


/* V0.43 - compact information architecture + PWA status bar + daily spark */
.home-date-emphasis{font-size:14px!important;line-height:1.25;color:#315eaa!important;font-weight:900;letter-spacing:.01em;text-transform:capitalize;margin-bottom:4px}
.home-daily-spark{display:flex;align-items:flex-start;gap:7px;margin-top:7px!important;max-width:620px;color:#65758a!important;font-size:10.5px!important;line-height:1.4!important}.home-daily-spark>span{font-size:13px;line-height:1.25}
.plan-head.clean{padding-bottom:7px}.plan-head.clean h2{font-size:27px}.plan-head.clean p{margin-top:2px}.plan-date-strip{padding-bottom:4px;gap:4px}.plan-person-filters{padding-top:0;padding-bottom:5px}.plan-agenda-panel.clean{margin-top:0}.plan-agenda-panel.clean .plan-agenda-list{gap:0}.plan-agenda-panel.clean .plan-agenda-group{padding:7px 0}.plan-agenda-group-head{min-height:36px!important;margin-bottom:2px!important}.plan-agenda-group-head h4{font-size:15px!important}.plan-agenda-add{width:34px!important;height:34px!important;min-height:34px!important}.plan-agenda-panel.clean .plan-agenda-entry{margin-top:4px;padding:7px 9px;border-radius:13px}.plan-agenda-badge{min-height:48px}.plan-agenda-details{margin-top:4px!important;gap:4px!important}
.shopping-tabs-four{margin-top:0;margin-bottom:10px}.shopping-list-switcher{margin-top:0}.shopping-target-list{display:grid;gap:8px;padding:2px 0 20px}.shopping-target-list>button{width:100%;border:1px solid #dfe6ee;background:#fff;border-radius:15px;padding:11px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;color:#253247}.shopping-target-list>button.preferred{border-color:#c9d9ef;background:#f6f9ff}.shopping-target-list>button>span:first-child{width:38px;height:38px;border-radius:12px;background:#eef3f8;display:grid;place-items:center;font-size:18px}.shopping-target-list strong{display:block;font-size:12px}.shopping-target-list small{display:block;font-size:9px;color:#7a8798;margin-top:2px}.shopping-target-list em{font-style:normal;font-size:8px;color:#5576b4;background:#eaf1ff;border-radius:999px;padding:5px 7px}.meal-add-shopping,.recipe-to-shopping button{white-space:nowrap}
.family-simple-head{padding-bottom:5px}.family-people-section,.family-shared-section{border:1px solid #e1e7ee;background:#fff;border-radius:20px;padding:14px;margin-top:10px}.family-people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.family-person-card{border:1px solid #e6ebf1;background:#fbfcfe;border-radius:16px;padding:12px 10px;display:grid;grid-template-columns:46px minmax(0,1fr) 14px;gap:9px;align-items:center;text-align:left;color:inherit}.family-person-card-avatar{width:46px;height:46px;border-radius:50%;overflow:hidden}.family-person-card-avatar img{width:100%;height:100%;object-fit:cover}.family-person-card strong{display:block;font-size:12px;color:#263247}.family-person-card small{display:block;font-size:8.5px;color:#77869a;margin-top:1px}.family-person-card em{display:block;font-style:normal;font-size:8.5px;color:#8a95a3;margin-top:3px}.family-person-card>.ui-icon{width:14px;color:#9ba7b5}.family-shared-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:10px}.family-birthdays-card,.family-shared-card{border:1px solid #e6ebf1;background:#fbfcfe;border-radius:16px;overflow:hidden}.family-birthdays-card>summary{list-style:none;display:grid;grid-template-columns:38px minmax(0,1fr) 14px;gap:10px;align-items:center;padding:12px;cursor:pointer}.family-birthdays-card>summary::-webkit-details-marker{display:none}.family-birthdays-card>summary>span:first-child{width:38px;height:38px;border-radius:12px;background:#fff0f5;display:grid;place-items:center;font-size:18px}.family-birthdays-card strong,.family-shared-card strong{display:block;font-size:12px;color:#263247}.family-birthdays-card small,.family-shared-card small{display:block;font-size:9px;color:#7a8798;margin-top:2px}.family-birthdays-card-body{padding:0 12px 12px;border-top:1px solid #edf1f5}.family-shared-card{width:100%;padding:12px;display:grid;grid-template-columns:38px minmax(0,1fr) 14px;gap:10px;align-items:center;text-align:left;color:inherit}.family-shared-card>span:first-child{width:38px;height:38px;border-radius:12px;background:#edf3ff;display:grid;place-items:center;color:#5576b4}.family-shared-card>span:first-child .ui-icon{width:18px}.family-shared-card>.ui-icon{width:14px;color:#9ba7b5}
html{background:#07101f!important}body{background:#f4f6f8!important}.app-shell{background:#f4f6f8;min-height:100vh}@media(display-mode:standalone){html{background:#07101f!important}.app-shell{position:relative}.app-shell::before{content:"";position:fixed;z-index:9999;left:0;right:0;top:0;height:env(safe-area-inset-top,0px);background:#07101f;pointer-events:none}.topbar{padding-top:calc(12px + env(safe-area-inset-top,0px))}}
@media(max-width:760px){.family-people-grid{grid-template-columns:1fr}.family-shared-grid{grid-template-columns:1fr}.plan-head.clean{gap:6px}.plan-head-buttons{margin-top:2px}.home-date-emphasis{font-size:13px!important}.home-daily-spark{font-size:10px!important}}

/* Android standalone fallback: paint a guaranteed dark surface under the system status icons. */
html.snofi-standalone.snofi-android body::before{content:"";position:fixed;z-index:10000;top:0;left:0;right:0;height:24px;background:#07101f;pointer-events:none}
html.snofi-standalone.snofi-android .app-shell{padding-top:24px}
html.snofi-standalone.snofi-android .app-shell::before{display:none}
html.snofi-standalone.snofi-android .topbar{padding-top:12px}

/* V0.46.0 - Admin System Center */
.family-system-entry{width:100%;display:flex;align-items:center;gap:12px;text-align:left;border:1px solid var(--line,#d9e0e7);background:var(--surface,#fff);border-radius:16px;padding:14px 16px;min-height:64px}
.family-system-entry>span:nth-child(2){display:flex;flex:1;flex-direction:column;gap:3px}.family-system-entry small{opacity:.72}
.system-admin-page{display:flex;flex-direction:column;gap:14px;padding-bottom:32px}.system-admin-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.system-admin-head h2{margin:3px 0 6px}.system-admin-head p{margin:0;max-width:680px;opacity:.78;line-height:1.45}.system-health{flex:0 0 auto;border-radius:999px;padding:7px 11px;font-weight:700;font-size:.78rem;background:#eef2f5}.system-health.ok{background:#eaf7ef}.system-health.warn{background:#fff2df}
.system-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.system-status-grid>div{border:1px solid var(--line,#d9e0e7);background:var(--surface,#fff);border-radius:16px;padding:13px;display:flex;flex-direction:column;gap:4px;min-width:0}.system-status-grid small,.system-panel .section-heading small{font-size:.72rem;font-weight:800;letter-spacing:.08em;opacity:.62}.system-status-grid strong{font-size:1.08rem}.system-status-grid span{font-size:.78rem;opacity:.68;overflow:hidden;text-overflow:ellipsis}
.system-panel{border:1px solid var(--line,#d9e0e7);background:var(--surface,#fff);border-radius:18px;padding:15px}.system-panel .section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.system-panel .section-heading h3{margin:2px 0 0}.system-help{font-size:.88rem;line-height:1.5;opacity:.76;margin:4px 0 13px}.system-upload-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center}.system-upload-row input[type=file]{min-width:0;border:1px dashed var(--line,#d9e0e7);border-radius:13px;padding:10px;background:var(--surface-soft,#f7f9fb)}.system-empty-line{padding:13px;border-radius:13px;background:var(--surface-soft,#f7f9fb);font-size:.86rem;opacity:.74}.system-release-ready{display:flex;gap:10px;align-items:center;padding:12px;margin-top:10px;border-radius:13px;background:#eef8f1}.system-release-ready>span{font-weight:900}.system-release-ready>div{display:flex;flex-direction:column;gap:2px}.system-release-ready small{opacity:.72}.system-confirm{display:flex;flex-direction:column;gap:6px;margin:12px 0 9px;font-size:.84rem}.system-confirm input{width:100%;box-sizing:border-box}
.system-backup-list{display:flex;flex-direction:column;gap:8px}.system-backup-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line,#e5e9ed);padding:10px 0}.system-backup-row:first-child{border-top:0}.system-backup-row>div{display:flex;flex-direction:column;gap:3px;min-width:0}.system-backup-row small{font-size:.78rem;opacity:.68}.system-jobs{display:flex;flex-direction:column;gap:8px}.system-job{border:1px solid var(--line,#d9e0e7);border-radius:13px;overflow:hidden}.system-job summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px}.system-job summary::-webkit-details-marker{display:none}.system-job summary span{display:flex;flex-direction:column;gap:2px}.system-job summary small{font-size:.76rem;opacity:.65}.system-job summary b{font-size:.76rem}.system-job.success summary b{color:#18723e}.system-job.failed summary b,.system-error{color:#9e2525}.system-job.running summary b{color:#8a5a00}.system-job pre{margin:0;border-top:1px solid var(--line,#e5e9ed);padding:10px 12px;max-height:260px;overflow:auto;white-space:pre-wrap;word-break:break-word;font-family:inherit;font-size:.74rem;line-height:1.45;background:var(--surface-soft,#f7f9fb)}.system-error{padding:0 12px}.system-danger{border:1px solid #e8c4c4;border-radius:16px;overflow:hidden}.system-danger>summary{cursor:pointer;padding:13px 15px;font-weight:700}.system-danger>div{padding:0 15px 15px}.system-restore-warning{padding:12px;border-radius:13px;background:#fff2df;margin-bottom:11px}.system-restore-warning p{margin:5px 0 0;line-height:1.45}.system-loading{padding:28px;text-align:center;opacity:.72}
@media(max-width:720px){.system-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.system-upload-row{grid-template-columns:1fr}.system-admin-head{flex-direction:column}.system-health{align-self:flex-start}.system-panel{padding:13px}.system-backup-row{align-items:flex-start}.system-backup-row button{flex:0 0 auto}}
.system-reauth{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;border:1px solid var(--line,#d9e0e7);border-radius:16px;padding:12px 14px}.system-reauth>div{display:flex;flex-direction:column;gap:3px}.system-reauth small{font-size:.78rem;opacity:.7}.system-reauth.ok{background:#eef8f1}.system-reauth.needed{background:#fff8ea}
@media(max-width:720px){.system-reauth{grid-template-columns:auto 1fr}.system-reauth button{grid-column:1/-1;width:100%}}

/* V0.46.1 - CloudLinux deployment test concurrency hotfix */

/* V0.46.2 - admin members/roles navigation reliability hotfix */
.family-admin-menu{display:grid;gap:8px;margin-top:10px}.family-admin-member{cursor:pointer;touch-action:manipulation}.family-admin-member>*{pointer-events:none}

/* V0.46.5 - System Center interaction reliability */
.system-upload-row{grid-template-columns:auto minmax(0,1fr) auto}.system-file-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.system-file-label{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;margin:0}.system-file-name{min-width:0;padding:10px 12px;border:1px dashed var(--line,#d9e0e7);border-radius:13px;background:var(--surface-soft,#f7f9fb);font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.system-action-lock{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:10px;padding:11px 12px;border-radius:13px;background:#fff8ea;border:1px solid #ecd7a6}.system-action-lock>div{display:flex;flex-direction:column;gap:2px}.system-action-lock small{opacity:.72}.system-action-lock.compact{margin-top:8px}
@media(max-width:720px){.system-upload-row{grid-template-columns:1fr}.system-file-label,.system-upload-row>.secondary-btn{width:100%;box-sizing:border-box}.system-action-lock{grid-template-columns:auto 1fr}.system-action-lock button{grid-column:1/-1;width:100%}}

/* v0.46.5 - reliable member administration interactions */
.family-admin-member{grid-template-columns:42px minmax(0,1fr) auto;min-height:62px;cursor:pointer;position:relative;z-index:1}
.family-admin-member:active{transform:scale(.992)}
.family-admin-edit-chip{pointer-events:none;display:inline-flex;align-items:center;justify-content:center;min-width:48px;padding:7px 9px;border-radius:999px;background:#eef3f8;color:#506784;font-size:9px;font-weight:900}
.family-admin-edit .primary-btn,.family-admin-edit .secondary-btn,.family-admin-edit .danger-btn,.family-admin-edit .google-login-btn{touch-action:manipulation;cursor:pointer}

/* V0.46.7 - stable admin navigation + account/logout */
.account-menu-overlay .account-sheet{max-width:520px}.account-sheet-profile{display:flex;align-items:center;gap:12px;padding:8px 0 16px}.account-sheet-profile .profile-avatar{width:52px;height:52px;flex:0 0 52px}.account-sheet-profile strong{display:block;font-size:15px}.account-sheet-profile small{display:block;margin-top:3px;color:var(--muted,#748197);font-size:10px}.account-sheet-actions{display:grid;gap:9px;padding-bottom:max(10px,env(safe-area-inset-bottom))}.account-sheet-actions button{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;text-align:left;border:1px solid var(--line,#d9e0e7);background:#fff;border-radius:15px;padding:12px;color:inherit;touch-action:manipulation}.account-sheet-actions button>span:first-child{font-size:19px;text-align:center}.account-sheet-actions strong{display:block;font-size:11px}.account-sheet-actions small{display:block;margin-top:2px;font-size:8.5px;color:var(--muted,#748197)}.account-sheet-actions .danger-account-action{border-color:#edd7d3;background:#fff8f7;color:#8d4037}.account-logout-entry{border-color:#ead8d5!important;background:#fff9f8!important}.family-system-entry,.family-shared-card,[data-edit-member]{touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer}

/* V0.46.9 - System Center real phase progress */
.system-active-progress[hidden]{display:none!important}.system-active-progress{margin:0 0 12px}.system-progress{padding:11px 12px;border-top:1px solid var(--line,#e5e9ed);background:var(--surface-soft,#f7f9fb)}.system-progress.prominent{border:1px solid var(--line,#d9e0e7);border-radius:16px;background:var(--surface,#fff);padding:14px 15px}.system-progress-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:9px}.system-progress-head>div{display:flex;flex-direction:column;gap:2px;min-width:0}.system-progress-head strong{font-size:.92rem}.system-progress-head span{font-size:.82rem;opacity:.78}.system-progress-head small{font-size:.74rem;opacity:.62;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:66vw}.system-progress-head>b{font-size:1.08rem;min-width:48px;text-align:right;font-variant-numeric:tabular-nums}.system-progress-track{height:10px;border-radius:999px;background:var(--line,#d9e0e7);overflow:hidden}.system-progress-track>i{display:block;height:100%;border-radius:inherit;background:var(--accent,#17385f);transition:width .45s ease;min-width:0}.system-progress.success .system-progress-track>i{width:100%!important}.system-progress.failed .system-progress-track>i{background:#9e2525}@media(max-width:720px){.system-progress.prominent{padding:12px}.system-progress-head small{max-width:70vw}}


/* V0.46.9 - explicit family sign-in access management */
.family-access-explainer{border:1px solid #dbe5f0;background:#f8fbff;border-radius:18px;padding:14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center}.family-access-explainer small,.member-access-head small{font-size:8px;letter-spacing:.12em;color:#5879b8;font-weight:900}.family-access-explainer strong{display:block;font-size:11px;line-height:1.45;color:#2b3a50;margin-top:3px}.family-access-explainer p{font-size:9px;line-height:1.45;color:#728197;margin-top:5px}.family-access-explainer>b{min-width:50px;height:50px;border-radius:15px;background:#eaf1fb;color:#355c9a;display:grid;place-items:center;font-size:13px}.family-admin-member>span:nth-child(2){min-width:0}.family-admin-member small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-access-state{display:inline-flex;margin-top:4px;font-style:normal;font-size:8px;font-weight:900;border-radius:999px;padding:3px 7px}.member-access-state.ok{background:#e8f6ec;color:#347044}.member-access-state.warn{background:#fff5df;color:#8a641d}.member-access-state.off{background:#f0f2f5;color:#778291}.member-access-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.member-access-head h3{margin:3px 0 0}.member-access-pill{border-radius:999px;padding:5px 8px;font-size:8px;font-weight:900;letter-spacing:.04em}.member-access-pill.ready{background:#e8f6ec;color:#347044}.member-access-pill.waiting{background:#fff5df;color:#8a641d}.member-access-pill.off{background:#f0f2f5;color:#778291}.member-login-actions{display:grid;gap:8px;margin-top:10px}.member-login-actions>button{width:100%;min-height:42px}.member-login-actions button:disabled{opacity:.48;cursor:not-allowed}.google-account-line{margin-top:8px}@media(max-width:720px){.family-access-explainer{grid-template-columns:minmax(0,1fr) 46px}.family-access-explainer>b{min-width:46px;height:46px}.family-admin-member{grid-template-columns:40px minmax(0,1fr) auto}.family-admin-edit-chip{min-width:44px}}

/* v0.47.1 private work calendar */
.plan-calendar-filters{display:flex;gap:6px;overflow-x:auto;padding:1px 1px 5px;scrollbar-width:none}.plan-calendar-filters::-webkit-scrollbar{display:none}.plan-calendar-filters button{border:1px solid #dfe5ed;background:#f8fafc;color:#667891;border-radius:999px;padding:7px 12px;font-size:9px;font-weight:850;white-space:nowrap}.plan-calendar-filters button.active{background:#172033;border-color:#172033;color:#fff}.plan-calendar-source-card{width:100%;border:1px solid #e3e9f0;background:#f9fbfd;border-radius:14px;padding:11px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.plan-calendar-source-card>div:first-child{min-width:190px;flex:1}.plan-calendar-source-card small,.plan-calendar-source-card span{display:block;color:#7a8798;font-size:8px}.plan-calendar-source-card strong{display:block;color:#263246;font-size:10px;margin:2px 0}.plan-calendar-source-card.private{border-style:dashed}.plan-calendar-source-actions{display:flex;flex-wrap:wrap;gap:6px}.private-calendar-picker{display:flex;gap:7px;width:100%;margin-top:4px}.private-calendar-picker select{flex:1;min-width:0;border:1px solid #dbe3ed;background:#fff;color:#263246;border-radius:11px;padding:9px 10px}.private-calendar-picker .primary-btn{width:auto;margin:0;padding:9px 13px}.edit-form label>small{display:block;color:#7b8798;font-size:8px;margin-top:4px;line-height:1.35}


/* v0.47.2 - unified calendar source colors + discoverable notification settings */
:root{--snofi-family:#3f8f5a;--snofi-family-soft:#eef8f1;--snofi-family-line:#cfe7d6;--snofi-work:#3f72c8;--snofi-work-soft:#eef4ff;--snofi-work-line:#cfddf4}
.plan-calendar-filters .calendar-filter-dot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:6px;vertical-align:1px}.plan-calendar-filters .calendar-filter-family .calendar-filter-dot{background:var(--snofi-family)}.plan-calendar-filters .calendar-filter-work .calendar-filter-dot{background:var(--snofi-work)}.plan-calendar-filters .calendar-filter-family.active{background:var(--snofi-family);border-color:var(--snofi-family);color:#fff}.plan-calendar-filters .calendar-filter-work.active{background:var(--snofi-work);border-color:var(--snofi-work);color:#fff}.plan-calendar-filters .calendar-filter-family.active .calendar-filter-dot,.plan-calendar-filters .calendar-filter-work.active .calendar-filter-dot{background:#fff}
.plan-calendar-source-card:not(.private){border-color:var(--snofi-family-line);background:var(--snofi-family-soft)}.plan-calendar-source-card:not(.private)>div:first-child small{color:var(--snofi-family)}.plan-calendar-source-card.private{border-color:var(--snofi-work-line);background:var(--snofi-work-soft)}.plan-calendar-source-card.private>div:first-child small{color:var(--snofi-work)}
.plan-agenda-entry.event.calendar-source-family::before{background:var(--snofi-family)!important}.plan-agenda-entry.event.calendar-source-work::before{background:var(--snofi-work)!important}.plan-agenda-entry.event.calendar-source-family .plan-agenda-badge{background:var(--snofi-family-soft)!important;color:var(--snofi-family)!important}.plan-agenda-entry.event.calendar-source-work .plan-agenda-badge{background:var(--snofi-work-soft)!important;color:var(--snofi-work)!important}
.plan-item.event.calendar-source-family{border-left:4px solid var(--snofi-family)}.plan-item.event.calendar-source-work{border-left:4px solid var(--snofi-work)}
.today-flow-row.event.calendar-source-family{box-shadow:inset 3px 0 0 var(--snofi-family)}.today-flow-row.event.calendar-source-work{box-shadow:inset 3px 0 0 var(--snofi-work)}.today-flow-row.event.calendar-source-family .today-flow-icon{background:var(--snofi-family-soft);color:var(--snofi-family)}.today-flow-row.event.calendar-source-work .today-flow-icon{background:var(--snofi-work-soft);color:var(--snofi-work)}
.home-event-row.calendar-source-family{box-shadow:inset 3px 0 0 var(--snofi-family);padding-left:7px}.home-event-row.calendar-source-work{box-shadow:inset 3px 0 0 var(--snofi-work);padding-left:7px}.home-event-row.calendar-source-family>span{color:var(--snofi-family)}.home-event-row.calendar-source-work>span{color:var(--snofi-work)}

/* ŠNOFI 0.48.0 — Aura day view */
body:has(.aura-home){background:#f5f5f2;color:#202c37}
body:has(.aura-home) .app-shell{max-width:1060px}
body:has(.aura-home) .topbar{background:transparent;border:0;box-shadow:none}
body:has(.aura-home) .topbar h1{font-size:18px;color:#53616c}
body:has(.aura-home) .eyebrow{color:#526d83;letter-spacing:.18em}
.aura-home{--aura-ink:#213441;--aura-muted:#64727c;--aura-line:#dce2e3;display:grid;gap:24px;padding:8px 2px 28px;color:var(--aura-ink)}
.aura-home button{font:inherit;color:inherit;cursor:pointer}
.aura-home button:focus-visible{outline:3px solid #547b98;outline-offset:3px}
.aura-greeting{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:0 4px}
.aura-date{margin:0 0 10px;font-size:13px;color:var(--aura-muted);text-transform:capitalize}
.aura-greeting h2{font-size:clamp(32px,6vw,46px);font-weight:450;line-height:1.1;letter-spacing:-.055em;margin:0}
.aura-greeting h2 span{font-weight:700}
.aura-family{display:flex;align-items:center;border:0;background:none;padding:8px 0}
.aura-family .person-avatar{width:34px;height:34px;border:3px solid #f5f5f2;margin-left:-7px;border-radius:50%;overflow:hidden}
.aura-family img,.aura-event-avatar img{width:100%;height:100%;object-fit:cover}
.aura-layout{display:grid;gap:20px}
.aura-sidebar{display:grid;gap:10px;align-content:start;min-width:0}
.aura-weather{display:grid;text-align:left;gap:5px;width:100%;padding:20px 22px;border:1px solid #d7e0e1;border-radius:24px;background:linear-gradient(115deg,#e8eff0,#f3f6f3);box-shadow:0 8px 26px #20333b04}
.aura-weather-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.aura-weather-head small{font-size:11px;text-transform:uppercase;letter-spacing:.13em;font-weight:700}
.aura-temperature{font-size:45px;letter-spacing:-.065em;line-height:1.1;font-weight:500}
.aura-weather-description{font-size:12px;line-height:1.5;color:#506774}
.aura-weather-link{display:flex;align-items:center;font-size:11px;font-weight:600;margin-top:4px;gap:4px}
.aura-home .ui-icon{width:18px;height:18px;flex-shrink:0}
.aura-tools{display:flex;gap:8px}
.aura-tools button{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;border:1px solid var(--aura-line);background:#ffffff80;border-radius:14px;padding:11px 7px;font-size:12px;min-height:44px}
.aura-agenda{background:#ffffffb8;border:1px solid var(--aura-line);border-radius:24px;overflow:hidden;min-width:0}
.aura-agenda-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 20px 14px}
.aura-agenda-head small{font-size:9px;letter-spacing:.15em;color:var(--aura-muted);font-weight:700}
.aura-agenda-head h3{font-size:24px;letter-spacing:-.04em;margin:5px 0 0}
.aura-agenda-head h3 span{font-size:12px;vertical-align:middle;background:#edf1f2;border-radius:8px;padding:4px 7px;margin-left:5px;color:#62727c;letter-spacing:0}
.aura-agenda-head button{display:flex;align-items:center;gap:2px;border:0;background:none;font-size:11px;min-height:44px;white-space:nowrap;padding:0}
.aura-event{display:grid;grid-template-columns:58px 3px minmax(0,1fr) 28px;gap:12px;width:100%;text-align:left;padding:16px 20px;background:transparent;border:0;border-top:1px solid #edf0ef;align-items:center;min-height:78px}
.aura-event:hover{background:#f4f7f6}
.aura-event-time{font-size:12px;font-weight:650;line-height:1.5;overflow-wrap:anywhere}
.aura-event-line{width:3px;min-height:30px;align-self:stretch;background:#a9bac2;border-radius:4px}
.aura-event-copy{min-width:0;display:grid;gap:4px}
.aura-event-copy strong{font-size:14px;font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.aura-event-copy small{font-size:11px;color:var(--aura-muted);line-height:1.4;overflow-wrap:anywhere}
.aura-event-copy em{font-size:9px;font-style:normal;color:#526f85}
.aura-event-avatar .person-avatar{width:28px;height:28px;border-radius:50%;overflow:hidden;display:block}
.aura-event-avatar{color:#758895}
.aura-add{display:flex;align-items:center;justify-content:center;gap:8px;width:calc(100% - 32px);margin:8px 16px 16px;border:1px dashed #c5d0d4;border-radius:13px;background:#f7f9f8;padding:13px;font-size:12px!important;min-height:44px}
.aura-empty{padding:26px 22px 30px}.aura-empty strong{font-size:17px;font-weight:500}.aura-empty p{font-size:12px;color:var(--aura-muted);line-height:1.5}
.aura-birthdays{display:block;margin:0 20px 12px;background:#f4f1e9;border:0;border-radius:10px;padding:10px 12px;font-size:12px!important;text-align:left;max-width:calc(100% - 40px)}
.aura-updates{display:grid;gap:8px}.aura-updates button{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--aura-line);background:transparent;padding:12px 15px;border-radius:12px;font-size:12px}
body:has(.aura-home) .bottom-nav{background:#fffffff2;box-shadow:0 8px 36px #253b4914;border:1px solid #dfe6e6}
body:has(.aura-home) .nav-item.active{background:#e9eff1;color:#294a5f}
body:has(.aura-home) .nav-chat-main{background:#294a5f!important;box-shadow:0 6px 18px #294a5f22!important}
@media(min-width:780px){.aura-home{padding:16px 20px 32px;gap:30px}.aura-layout{grid-template-columns:280px minmax(0,1fr);gap:24px}.aura-greeting{padding:0 4px}.aura-weather{padding:24px}.aura-temperature{font-size:64px;margin:12px 0}.aura-family .person-avatar{width:42px;height:42px}}
@media(max-width:380px){.aura-event{grid-template-columns:52px 3px minmax(0,1fr) 24px;gap:8px;padding:14px}.aura-greeting h2{font-size:32px}.aura-family .person-avatar{width:29px;height:29px}.aura-agenda-head{padding:18px 14px 12px}}

/* ŠNOFI 0.48.1 — compact weather, agenda and shopping */
.weather-card-detailed{padding:18px 18px 16px}
.weather-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:14px}
.weather-metric{min-width:0;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.055);border-radius:12px;padding:8px 7px;text-align:center}
.weather-metric small{display:block;color:#aeb5bf;font-size:8px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.weather-metric strong{display:block;margin-top:3px;font-size:10px;line-height:1.2;color:#fff;white-space:nowrap}
.weather-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:14px;padding:0 2px}
.weather-section-title strong{font-size:10px;letter-spacing:.02em}.weather-section-title small{font-size:8px;color:#9fa7b2}
.weather-hourly-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(52px,1fr);gap:6px;margin-top:7px;overflow-x:auto;padding:0 0 3px;scrollbar-width:none}
.weather-hourly-strip::-webkit-scrollbar{display:none}
.weather-hour{min-width:52px;text-align:center;border-radius:13px;background:rgba(255,255,255,.045);padding:7px 4px 6px;display:grid;grid-template-rows:auto 20px auto auto 18px;gap:2px;justify-items:center}
.weather-hour span{font-size:8px;color:#b5bbc4}.weather-hour b{font-size:15px;line-height:20px}.weather-hour strong{font-size:10px}.weather-hour em{font-style:normal;font-size:7px;color:#b9d3ee;min-height:9px}
.weather-hour i{position:relative;width:5px;height:18px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden;align-self:end}.weather-hour i u{position:absolute;left:0;right:0;bottom:0;border-radius:99px;background:#9dbddb;text-decoration:none}
.weather-source{display:block;margin-top:8px;color:#8f98a5;font-size:7px;text-align:right}

.aura-weather{padding:14px 16px!important;gap:4px!important}
.aura-weather-current{display:flex;align-items:center;gap:9px;margin-top:1px}.aura-weather-icon{font-size:24px;line-height:1}.aura-temperature{font-size:38px!important;line-height:1!important}
.aura-weather-description{font-size:11px!important;line-height:1.35!important}.aura-weather-meta{font-size:9px;line-height:1.35;color:#61727c}.aura-weather-insight{font-size:9px;line-height:1.35;color:#496474;padding-top:3px;border-top:1px solid #d8e1e2;margin-top:2px}.aura-weather-link{margin-top:2px!important;font-size:10px!important}
.aura-home{gap:16px!important}.aura-layout{gap:14px!important}.aura-sidebar{gap:7px!important}
.aura-agenda-head{padding:14px 16px 9px!important}.aura-agenda-head h3{font-size:21px!important;margin-top:3px!important}.aura-agenda-head button{min-height:34px!important}
.aura-event{grid-template-columns:52px 3px minmax(0,1fr) 26px!important;gap:9px!important;padding:10px 16px!important;min-height:60px!important}.aura-event-line{min-height:24px!important}.aura-event-copy{gap:2px!important}.aura-event-copy strong{font-size:13px!important}.aura-event-copy small{font-size:10px!important;line-height:1.3!important}.aura-event-avatar .person-avatar{width:26px!important;height:26px!important}.aura-add{margin:6px 12px 12px!important;width:calc(100% - 24px)!important;padding:10px!important;min-height:38px!important}
.aura-birthdays{margin:0 16px 8px!important;padding:8px 10px!important;max-width:calc(100% - 32px)!important}

.shopping-tabs-four{gap:5px!important;padding:4px!important;margin-bottom:7px!important}.shopping-tabs-four button{min-height:36px!important;font-size:10px!important}
.shopping-list-switcher{gap:5px!important;margin-bottom:7px!important}.shopping-list-scroll{gap:5px!important;padding:1px!important}.shopping-list-pill{min-height:34px!important;padding:5px 8px!important;gap:5px!important}.shopping-list-pill strong{font-size:9px!important}.shopping-list-pill small{min-width:17px!important;height:17px!important;font-size:7px!important}.shopping-list-new,.shopping-list-manage{width:34px!important;height:34px!important}
.shopping-shop-mode{padding:11px!important;margin-top:6px!important;border-radius:18px!important}.shopping-shop-mode-head{margin-bottom:7px!important;gap:9px!important}.shopping-shop-mode-head h2{font-size:18px!important}.shopping-shop-mode-head p{font-size:9px!important;margin-top:2px!important}.shopping-shop-mode-head>strong{min-width:34px!important;height:34px!important;border-radius:11px!important;font-size:13px!important}
.shopping-list{margin-top:7px!important;padding:7px 10px!important;border-radius:16px!important}.shop-row{grid-template-columns:28px minmax(0,1fr) auto auto!important;gap:7px!important;padding:6px 0!important;min-height:42px}.shop-check{width:27px!important;height:27px!important;border-radius:8px!important}.shop-copy strong{gap:5px!important;font-size:10.5px!important;line-height:1.2}.shop-copy strong i{font-size:15px!important}.shop-copy small{font-size:7.5px!important;margin-top:1px!important}.shop-measure{padding:5px 7px!important;border-radius:8px!important;font-size:9px!important}.shop-row-qty{gap:3px!important}.shop-row-qty button{width:26px!important;height:26px!important;border-radius:8px!important;font-size:14px!important}.shop-row-qty b{min-width:18px!important;font-size:9px!important}.shop-delete{width:28px!important;height:28px!important}
@media(max-width:560px){.weather-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.weather-metric:nth-child(4),.weather-metric:nth-child(5){grid-column:auto}.weather-hourly-strip{grid-auto-columns:50px}.forecast-strip{grid-template-columns:repeat(7,54px)}.aura-greeting{gap:10px}.aura-event{grid-template-columns:48px 3px minmax(0,1fr) 24px!important;padding:9px 12px!important;gap:7px!important}.shop-row{grid-template-columns:28px minmax(0,1fr) auto!important}.shop-row-qty{grid-column:2!important;justify-self:start;margin-top:-2px}.shop-delete{grid-column:3!important;grid-row:1!important}}


/* ŠNOFI 0.48.2 — AI-first quick add */
.plan-quick-add-sheet{max-width:560px!important;padding-bottom:calc(12px + env(safe-area-inset-bottom))}
.plan-quick-add-sheet>header{margin-bottom:10px}
.plan-quick-ai{margin:0 16px 10px;border:1px solid #d8e1ec;background:linear-gradient(145deg,#f7faff,#f4f7fb);border-radius:18px;padding:13px}
.plan-quick-ai-head{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center}
.plan-quick-ai-mark{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:#e9f0ff;color:#416bb5;font-size:18px}
.plan-quick-ai-head strong{display:block;font-size:13px;color:#233146}
.plan-quick-ai-head small{display:block;margin-top:2px;color:#738196;font-size:9px;line-height:1.35}
.plan-quick-ai-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:11px}
.plan-quick-ai-modes button{border:1px solid #dce4ee;background:#fff;border-radius:13px;min-height:54px;padding:7px 5px;color:#40516b;display:grid;place-items:center;align-content:center;gap:3px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.plan-quick-ai-modes button span{font-size:16px;line-height:1}.plan-quick-ai-modes button strong{font-size:9px;font-weight:850}
.plan-quick-ai-modes button:active{transform:translateY(1px);background:#eef4ff;border-color:#c7d6eb}
.plan-quick-divider{display:flex;align-items:center;gap:8px;margin:0 16px 8px;color:#8a96a7;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.plan-quick-divider::before,.plan-quick-divider::after{content:'';height:1px;background:#e7ebf0;flex:1}
.plan-quick-add-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;padding-bottom:7px!important}
.plan-quick-add-grid>button{grid-template-columns:32px minmax(0,1fr)!important;gap:8px!important;padding:9px!important;border-radius:14px!important;min-height:54px}
.plan-quick-add-grid strong{font-size:11px!important}.plan-quick-add-grid small{font-size:8px!important;margin-top:1px!important}
.plan-quick-add-icon{width:32px!important;height:32px!important;border-radius:10px!important}.plan-quick-add-icon .ui-icon{width:16px!important;height:16px!important}.plan-quick-add-icon.shopping,.plan-quick-add-icon.chat{font-size:15px!important}
@media(max-width:380px){.plan-quick-ai{margin-left:12px;margin-right:12px}.plan-quick-add-grid{padding-left:12px!important;padding-right:12px!important}.plan-quick-ai-head small{font-size:8px}.plan-quick-add-grid>button{grid-template-columns:28px minmax(0,1fr)!important}.plan-quick-add-icon{width:28px!important;height:28px!important}}


/* ŠNOFI 0.48.3 — time-aware Aura day focus */
.aura-event-titleline{display:flex;align-items:center;gap:7px;min-width:0}.aura-event-titleline>strong{min-width:0}
.aura-event-state{flex:0 0 auto;font-style:normal;font-size:7.5px;font-weight:850;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 6px;background:#edf1f2;color:#62727c}
.aura-event.current{background:#eef4f2}.aura-event.current .aura-event-line{background:#55796f}.aura-event-state.current{background:#dcebe6;color:#365f55}
.aura-event.next{background:#f8faf9}.aura-event.next .aura-event-line{background:#6f8f9b}.aura-event-state.next{background:#e7eef1;color:#456675}
.aura-event.started .aura-event-line{background:#9aaab0}.aura-event-state.started{background:#f0f2f2;color:#66757b}
.aura-event.past{opacity:.50;min-height:50px!important}.aura-event.past:hover{opacity:.72}.aura-event.past .aura-event-line{background:#d2d9db}.aura-event.past .aura-event-avatar{filter:grayscale(.45)}
@media(max-width:560px){.aura-event.past{padding-top:7px!important;padding-bottom:7px!important}.aura-event-state{font-size:7px;padding:2px 5px}.aura-event-titleline{gap:5px}}


/* ŠNOFI 0.48.4 — mobile day-first hierarchy */
.aura-agenda-actions{display:flex;align-items:center;gap:10px}.aura-agenda-actions .aura-head-add{border:1px solid #d5dee1;background:#f6f8f7;border-radius:10px;padding:0 9px!important;gap:5px!important;font-weight:700}.aura-agenda-actions .aura-head-add .ui-icon{width:15px;height:15px}
.aura-glance{display:grid;grid-template-columns:1fr 1fr;gap:7px}.aura-glance>button{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;align-items:center;text-align:left;border:1px solid var(--aura-line);background:#ffffff80;border-radius:13px;padding:8px 9px;min-height:44px}.aura-glance>button>span:first-child{width:30px;height:30px;border-radius:9px;background:#edf2f2;color:#526f7b;display:grid;place-items:center}.aura-glance>button>span:first-child .ui-icon{width:15px;height:15px}.aura-glance small{display:block;font-size:7px;letter-spacing:.08em;color:#75838b;font-weight:850}.aura-glance strong{display:block;font-size:13px;line-height:1.1;margin-top:2px}.aura-glance>button.attention{border-color:#e7d7ce;background:#fffaf7}.aura-glance>button.attention>span:first-child{background:#f6ece6;color:#8b5e49}
@media(max-width:779px){
  .aura-layout{grid-template-areas:'agenda' 'sidebar';gap:10px!important}.aura-agenda{grid-area:agenda}.aura-sidebar{grid-area:sidebar}
  .aura-greeting{align-items:flex-start}.aura-date{margin-bottom:5px}.aura-greeting h2{font-size:34px;line-height:1.04}
  .aura-weather{grid-template-columns:auto minmax(0,1fr) auto!important;grid-template-areas:'current description head' 'current meta link';column-gap:10px!important;row-gap:2px!important;align-items:center;padding:10px 12px!important;border-radius:17px!important}
  .aura-weather-current{grid-area:current;margin:0!important;gap:5px!important}.aura-weather-icon{font-size:20px!important}.aura-temperature{font-size:28px!important}.aura-weather-description{grid-area:description;font-size:10px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aura-weather-meta{grid-area:meta;font-size:8px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aura-weather-head{grid-area:head;justify-content:flex-end}.aura-weather-head small{display:none}.aura-weather-head .ui-icon{width:15px;height:15px}.aura-weather-insight{display:none!important}.aura-weather-link{grid-area:link;margin:0!important;font-size:9px!important;white-space:nowrap;justify-self:end}.aura-weather-link .ui-icon{display:none}
  .aura-tools{display:grid;grid-template-columns:1fr 1fr;gap:7px}.aura-tools button{min-height:40px;padding:8px 6px;font-size:10px}.aura-agenda-head{align-items:flex-start!important}.aura-agenda-actions{gap:7px;flex:0 0 auto}.aura-agenda-head button{font-size:10px!important}.aura-agenda-actions .aura-head-add{min-height:34px!important}.aura-agenda-head h3{font-size:20px!important}
}
@media(max-width:420px){.aura-greeting h2{font-size:31px}.aura-family .person-avatar{width:28px;height:28px}.aura-agenda-actions{gap:5px}.aura-agenda-actions .aura-head-add{padding:0 7px!important}.aura-agenda-actions>button:last-child{font-size:0!important}.aura-agenda-actions>button:last-child .ui-icon{width:17px;height:17px}.aura-weather{grid-template-columns:auto minmax(0,1fr) 16px!important}.aura-weather-link{display:none}.aura-weather-head{grid-area:head}.aura-weather-meta{grid-column:2/4}.aura-glance>button{padding:7px 8px}.aura-glance strong{font-size:12px}}

/* SNOFI AI 0.48.5 - identity-safe progressive boot */
.aura-boot-loading{min-height:55vh}.boot-day-skeleton{display:grid;gap:10px;margin-top:18px}.boot-day-skeleton span{display:block;height:68px;border-radius:18px;background:linear-gradient(90deg,#eef2f4 25%,#f8fafb 45%,#eef2f4 65%);background-size:240% 100%;animation:snofiBootPulse 1.15s ease-in-out infinite}.boot-day-skeleton span:nth-child(2){height:92px}.boot-day-skeleton span:nth-child(3){height:52px}@keyframes snofiBootPulse{0%{background-position:100% 0}100%{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.boot-day-skeleton span{animation:none}}


/* SNOFI AI 0.49.0 - Aura Refined home */
body:has(.aura-refined){background:#f4f7f7;color:#1d2f3c}
body:has(.aura-refined) .app-shell{max-width:920px}
body:has(.aura-refined) .content{padding-top:4px}
body:has(.aura-refined) .topbar{background:rgba(244,247,247,.86);backdrop-filter:blur(22px) saturate(135%);padding-bottom:10px}
body:has(.aura-refined) .topbar h1{font-size:15px;color:#60727d;font-weight:650}
body:has(.aura-refined) .eyebrow{color:#2c5364;letter-spacing:.22em}
.aura-refined{--aura-ink:#193041;--aura-muted:#71818a;--aura-line:#dde7e8;--aura-teal:#2d8f91;--aura-teal-soft:#e4f2f1;--aura-blue-soft:#eaf1f9;--aura-warm-soft:#f5ede7;max-width:760px;margin:0 auto;gap:13px!important;padding:2px 0 22px!important}
.aura-refined-greeting{padding:6px 8px 2px!important;align-items:flex-start!important}
.aura-refined-greeting .aura-date{order:2;margin:6px 0 0!important;font-size:12px!important;color:#6c7e88;text-transform:capitalize}
.aura-refined-greeting h2{font-size:clamp(30px,7vw,42px)!important;line-height:1.02!important;letter-spacing:-.055em!important;font-weight:720!important;margin:0!important}
.aura-refined-greeting h2 span{font-weight:720!important}.aura-refined-greeting h2::after{content:"";display:block;width:34px;height:3px;background:linear-gradient(90deg,#2f8f91,#7db6b6);border-radius:99px;margin-top:8px}
.aura-refined .aura-family{padding:3px 0 0!important}.aura-refined .aura-family .person-avatar{width:31px!important;height:31px!important;border-color:#f4f7f7!important;box-shadow:0 4px 12px #20374210}
.aura-refined-weather{display:grid!important;grid-template-columns:auto minmax(0,auto) minmax(0,1fr) auto!important;align-items:center!important;gap:9px!important;width:100%;min-height:50px!important;padding:9px 13px!important;border-radius:18px!important;background:linear-gradient(110deg,#eef5f5,#f8fbfa)!important;border:1px solid #dce8e8!important;box-shadow:0 8px 24px #233d4710!important}
.aura-refined-weather .aura-weather-current{display:flex!important;align-items:center!important;gap:6px!important;margin:0!important}.aura-refined-weather .aura-weather-icon{font-size:20px!important}.aura-refined-weather .aura-temperature{font-size:24px!important;line-height:1!important;font-weight:750!important;letter-spacing:-.05em!important}
.aura-refined-weather .aura-weather-description{font-size:10px!important;color:#566d78!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aura-refined-weather-facts{display:flex;min-width:0;gap:0;align-items:center;overflow:hidden}.aura-refined-weather-facts i{font-style:normal;font-size:9px;color:#607681;white-space:nowrap;padding:0 8px;border-left:1px solid #ccdada}.aura-refined-weather .aura-weather-head{display:grid!important;place-items:center!important;color:#6b7e88}.aura-refined-weather .aura-weather-head .ui-icon{width:16px!important;height:16px!important}
.aura-refined-next{background:linear-gradient(145deg,#fbfdfc,#f1f8f7);border:1px solid #d9e7e7;border-radius:24px;padding:16px;box-shadow:0 13px 34px #23404c0b;overflow:hidden;position:relative}.aura-refined-next::after{content:"";position:absolute;inset:auto -35px -70px 20%;height:130px;border-radius:50%;background:radial-gradient(ellipse at center,#d8efedaa 0,#d8efed00 68%);pointer-events:none}
.aura-refined-next>header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;position:relative;z-index:1}.aura-refined-next>header small{display:block;font-size:8px;letter-spacing:.15em;color:#6b7d86;font-weight:850}.aura-refined-next>header h3{font-size:18px;letter-spacing:-.035em;margin:4px 0 0}.aura-refined-next .aura-head-add{display:flex;align-items:center;gap:5px;border:0;background:#daf0ed;color:#267276;border-radius:999px;min-height:34px;padding:0 12px;font-size:10px;font-weight:800;white-space:nowrap}.aura-refined-next .aura-head-add .ui-icon{width:14px;height:14px}
.aura-refined-next-event{position:relative;z-index:1;display:grid;grid-template-columns:44px minmax(0,1fr) 20px;align-items:center;gap:12px;width:100%;border:0;background:transparent;text-align:left;padding:15px 2px 3px}.aura-refined-next-icon{width:44px;height:44px;border-radius:15px;background:#e0f1ef;display:grid;place-items:center;font-size:20px;color:#2e7d7f}.aura-refined-next-copy{display:grid;gap:3px;min-width:0}.aura-refined-next-copy strong{font-size:17px;line-height:1.2;letter-spacing:-.025em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aura-refined-next-copy>span{font-size:11px;color:#506773;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aura-refined-next-copy em{font-size:9px;font-style:normal;color:#2f7e80;font-weight:750}.aura-refined-next-event>b{display:grid;place-items:center;color:#657983}.aura-refined-next-event>b .ui-icon{width:18px;height:18px}.aura-refined-next-event.now .aura-refined-next-icon,.aura-refined-next-event.started .aura-refined-next-icon{background:#d6ece5;color:#2c7063}.aura-refined-next-empty{display:grid;gap:4px;padding:16px 2px 4px;position:relative;z-index:1}.aura-refined-next-empty strong{font-size:15px}.aura-refined-next-empty span{font-size:10px;color:#71818a}
.aura-refined-agenda{border-radius:24px!important;background:#ffffffd9!important;border-color:#e1e8e8!important;box-shadow:0 10px 30px #1b354008!important}.aura-refined-agenda .aura-agenda-head{padding:15px 16px 9px!important}.aura-refined-agenda .aura-agenda-head small{font-size:8px!important;letter-spacing:.13em!important}.aura-refined-agenda .aura-agenda-head h3{font-size:20px!important;margin-top:3px!important}.aura-refined-agenda .aura-agenda-actions{gap:5px!important}.aura-refined-agenda .aura-agenda-actions .aura-head-add{display:none}.aura-refined-agenda .aura-agenda-actions>button:last-child{font-size:9px!important;color:#667985!important;padding:0 4px!important}
.aura-refined .aura-event{grid-template-columns:47px 2px minmax(0,1fr) 26px!important;gap:9px!important;padding:9px 14px!important;min-height:54px!important;border-top:1px solid #eef2f2!important}.aura-refined .aura-event-time{font-size:10px!important;color:#637783}.aura-refined .aura-event-line{min-height:23px!important;width:2px!important;background:#bdc9ce}.aura-refined .aura-event-copy{gap:1px!important}.aura-refined .aura-event-copy strong{font-size:12px!important;font-weight:650!important}.aura-refined .aura-event-copy small{font-size:9px!important;line-height:1.25!important}.aura-refined .aura-event-copy em{font-size:7px!important}.aura-refined .aura-event.current{background:#e9f5f3!important;opacity:1!important}.aura-refined .aura-event.next{background:#f5f9f8!important;opacity:1!important}.aura-refined .aura-event.past{min-height:46px!important;opacity:.47!important}.aura-refined .aura-event-state{font-size:6px!important;padding:2px 5px!important}.aura-refined .aura-event-avatar .person-avatar{width:24px!important;height:24px!important}
.aura-refined .aura-glance{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}.aura-refined .aura-glance>button{display:grid!important;grid-template-columns:30px minmax(0,1fr) 13px!important;gap:7px!important;align-items:center!important;min-height:66px!important;padding:9px!important;border-radius:17px!important;background:#fff!important;border:1px solid #e1e8e8!important;box-shadow:0 8px 22px #203a4507!important}.aura-refined .aura-glance>button:nth-child(1)>span:first-child{background:#e7f2ee!important;color:#3a7a6e!important}.aura-refined .aura-glance>button:nth-child(2)>span:first-child{background:#e8f0fa!important;color:#4470a5!important}.aura-refined .aura-glance>button:nth-child(3)>span:first-child{background:#f5ece5!important;color:#8b654d!important}.aura-refined .aura-glance>button>span:first-child{width:30px!important;height:30px!important;border-radius:10px!important}.aura-refined .aura-glance small{font-size:7px!important}.aura-refined .aura-glance strong{font-size:15px!important;margin-top:0!important}.aura-refined .aura-glance em{display:block;font-style:normal;font-size:7px;color:#7b898f;white-space:nowrap}.aura-refined .aura-glance>button>.ui-icon{width:13px;height:13px;color:#839198}.aura-refined .aura-glance>button.attention{border-color:#ecd9ce!important;background:#fffaf7!important}
.aura-refined-tools{display:grid!important;grid-template-columns:minmax(0,1fr) 42px!important;gap:8px!important}.aura-refined-tools button{border:1px solid #dfe8e8!important;background:#ffffffc7!important;box-shadow:0 8px 24px #203a4507!important}.aura-refined-tools .aura-ai-entry{display:grid!important;grid-template-columns:32px minmax(0,1fr) 18px!important;justify-content:stretch!important;text-align:left!important;min-height:56px!important;padding:8px 12px!important;border-radius:18px!important}.aura-ai-entry>span:first-child{width:32px;height:32px;border-radius:11px;background:#e3f1f0;color:#2e8384;display:grid;place-items:center}.aura-ai-entry>span:nth-child(2){display:grid;gap:1px}.aura-ai-entry strong{font-size:12px}.aura-ai-entry small{font-size:8px;color:#72828a}.aura-ai-entry>.ui-icon{width:15px;height:15px;color:#73848c}.aura-refined-tools .aura-push-entry{min-width:42px!important;padding:0!important;border-radius:18px!important;color:#627781!important}.aura-refined-tools .aura-push-entry .ui-icon{width:17px;height:17px}
body:has(.aura-refined) .bottom-nav{background:rgba(255,255,255,.94)!important;border:1px solid #e0e8e8!important;box-shadow:0 12px 38px #1d374519!important;border-radius:24px!important}.aura-refined .aura-updates{margin-top:0!important}.aura-refined .ai-brief-result{border-radius:18px!important}
@media(max-width:560px){.aura-refined{gap:10px!important}.aura-refined-greeting{padding-left:5px!important;padding-right:5px!important}.aura-refined-greeting h2{font-size:31px!important}.aura-refined-weather{grid-template-columns:auto minmax(0,1fr) auto!important;grid-template-areas:'current facts head' 'description facts head'!important;gap:2px 8px!important;padding:8px 11px!important}.aura-refined-weather .aura-weather-current{grid-area:current!important}.aura-refined-weather .aura-weather-description{grid-area:description!important;font-size:8px!important}.aura-refined-weather-facts{grid-area:facts!important;justify-content:flex-end!important}.aura-refined-weather-facts i{font-size:7px!important;padding:0 5px!important}.aura-refined-weather-facts i:first-child{border-left:0!important}.aura-refined-weather .aura-weather-head{grid-area:head!important}.aura-refined-next{padding:13px 14px!important;border-radius:21px!important}.aura-refined-next>header h3{font-size:16px!important}.aura-refined-next-event{grid-template-columns:40px minmax(0,1fr) 18px!important;padding-top:12px!important;gap:10px!important}.aura-refined-next-icon{width:40px!important;height:40px!important;border-radius:13px!important}.aura-refined-next-copy strong{font-size:15px!important}.aura-refined-next-copy>span{font-size:9px!important}.aura-refined .aura-event{padding:8px 11px!important}.aura-refined .aura-glance{gap:6px!important}.aura-refined .aura-glance>button{grid-template-columns:27px minmax(0,1fr)!important;min-height:60px!important;padding:8px 7px!important}.aura-refined .aura-glance>button>.ui-icon{display:none!important}.aura-refined .aura-glance>button>span:first-child{width:27px!important;height:27px!important}.aura-refined .aura-glance strong{font-size:13px!important}.aura-refined .aura-glance em{font-size:6.5px!important}.aura-refined-tools .aura-ai-entry{min-height:52px!important}.aura-refined .aura-family .person-avatar{width:28px!important;height:28px!important}}
@media(max-width:390px){.aura-refined-weather-facts i:nth-child(3){display:none}.aura-refined-greeting h2{font-size:29px!important}.aura-refined-next-copy>span{max-width:220px}.aura-refined .aura-glance>button{grid-template-columns:1fr!important;text-align:center!important}.aura-refined .aura-glance>button>span:first-child{display:none!important}.aura-refined .aura-glance small,.aura-refined .aura-glance em{white-space:normal!important}}

/* ŠNOFI 0.49.3 - CSP-safe boot shell */
body.boot-pending #pageTitle,body.boot-pending .topbar-actions,body.boot-pending #bottomNav{visibility:hidden!important}


/* ==========================================================================
   ŠNOFI 0.50.1 — SERENE FAMILY HOME
   New home visual system. Real DOM, no mockup imagery.
   ========================================================================== */
:root{--serene-ink:#142637;--serene-muted:#71808c;--serene-line:#e7e7e2;--serene-paper:#fbfaf7;--serene-cream:#f6f1e9;--serene-deep:#1d3342;--serene-green:#2f9b73;--serene-blue:#2c89df;--serene-orange:#f2a72b;--serene-purple:#8664bf}
body:has(.serene-home){background:linear-gradient(180deg,#f7f3ed 0,#faf9f6 36%,#f5f4f1 100%)!important;color:var(--serene-ink)}
body:has(.serene-home) .topbar{display:none!important}
body:has(.serene-home) .content{padding-top:max(18px,env(safe-area-inset-top))!important;max-width:760px!important;margin:0 auto;padding-left:18px!important;padding-right:18px!important;padding-bottom:118px!important}
.serene-home{display:grid;gap:14px;color:var(--serene-ink);animation:serene-enter .24s ease both}
@keyframes serene-enter{from{opacity:.2;transform:translateY(4px)}to{opacity:1;transform:none}}
.serene-hero{position:relative;overflow:hidden;padding:5px 2px 16px;min-height:190px}
.serene-brand-row{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;position:relative;z-index:3}
.serene-brand{text-align:center;display:grid;gap:1px}.serene-brand strong{font-size:21px;letter-spacing:.22em;font-weight:650;margin-left:.22em}.serene-brand small{font-size:9px;color:#74818b;letter-spacing:.025em}
.serene-menu,.serene-profile{border:0;background:transparent;padding:0;width:42px;height:42px;border-radius:50%;display:grid;place-items:center}.serene-menu{color:#243948;background:#ffffff7a;border:1px solid #ffffff9e}.serene-menu .ui-icon{width:20px;height:20px}.serene-profile{justify-self:end;overflow:hidden;background:#e7ecec;border:1px solid #fff;box-shadow:0 5px 16px #22374414}.serene-profile .person-avatar{width:42px!important;height:42px!important}.serene-profile-fallback{font-weight:800}
.serene-welcome{position:relative;z-index:2;margin-top:26px;display:grid;gap:4px;max-width:82%}.serene-welcome h2{margin:0;font-family:Georgia,'Times New Roman',serif;font-size:38px;line-height:1.02;font-weight:500;letter-spacing:-.045em;color:#102437}.serene-welcome p{margin:0;font-size:12px;color:#70808c}.serene-welcome>strong{margin-top:7px;font-size:15px;letter-spacing:-.015em}.serene-welcome>button{justify-self:start;border:0;background:#fff9;padding:5px 8px;border-radius:999px;font-size:9px;color:#8a654b}
.serene-mountain{position:absolute;right:-30px;bottom:-4px;width:62%;height:135px;opacity:.22;pointer-events:none}.serene-mountain i{position:absolute;bottom:0;display:block;clip-path:polygon(50% 0,100% 100%,0 100%)}.serene-mountain i:nth-child(1){right:0;width:190px;height:112px;background:linear-gradient(145deg,#9ea9ad,#e3e1d8)}.serene-mountain i:nth-child(2){right:82px;width:145px;height:88px;background:linear-gradient(145deg,#aab4b4,#e8e4da)}.serene-mountain i:nth-child(3){right:155px;width:96px;height:60px;background:linear-gradient(145deg,#c1c7c4,#efe9df)}
.serene-weather{width:100%;display:grid;grid-template-columns:52px minmax(0,1fr) auto 20px;gap:10px;align-items:center;border:1px solid #eceae5;background:#ffffffdf;border-radius:22px;padding:14px 15px;text-align:left;box-shadow:0 12px 32px #223b4a0a}.serene-weather-icon{font-size:34px;display:grid;place-items:center}.serene-weather-main{display:grid;gap:1px}.serene-weather-main strong{font-family:Georgia,'Times New Roman',serif;font-size:31px;line-height:1;font-weight:500}.serene-weather-main small{font-size:10px;color:var(--serene-muted)}.serene-weather-range{display:grid;grid-template-columns:auto auto;gap:2px 12px;text-align:left}.serene-weather-range b{font-size:11px;font-weight:600}.serene-weather-range small{grid-column:1/3;font-size:9px;color:var(--serene-muted);white-space:nowrap}.serene-chevron{color:#536571}.serene-chevron .ui-icon{width:17px;height:17px}
.serene-next{border:1px solid #ebece9;background:#fff;border-radius:22px;padding:15px;box-shadow:0 10px 28px #223b4a08}.serene-next>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.serene-next>header h3{margin:0;font-size:16px;letter-spacing:-.02em}.serene-next>header span{font-size:10px;font-weight:700;color:#294f67}.serene-next-event{width:100%;display:grid;grid-template-columns:46px minmax(0,1fr) 18px;gap:12px;align-items:center;border:0;background:transparent;text-align:left;padding:2px}.serene-next-icon{width:46px;height:46px;border-radius:14px;background:#e9f1f8;display:grid;place-items:center;font-size:22px}.serene-next-event>span:nth-child(2){display:grid;gap:2px;min-width:0}.serene-next-event strong{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.serene-next-event small{font-size:10px;color:#667886;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.serene-next-event em{font-style:normal;font-size:8px;color:#37789b}.serene-next-event>b{color:#687a86}.serene-next-event>b .ui-icon{width:17px;height:17px}.serene-next-event.now .serene-next-icon,.serene-next-event.started .serene-next-icon{background:#e4f3ec}.serene-next-empty{display:grid;gap:3px;padding:8px 2px}.serene-next-empty strong{font-size:14px}.serene-next-empty span{font-size:10px;color:var(--serene-muted)}
.serene-add{width:100%;min-height:58px;border:0;border-radius:22px;background:linear-gradient(135deg,#1b3342,#263f4e);color:#fff;display:grid;grid-template-columns:26px auto minmax(0,1fr);gap:8px;align-items:center;justify-content:center;padding:0 22px;box-shadow:0 10px 24px #172d3c20}.serene-add>span{display:grid;place-items:center}.serene-add .ui-icon{width:22px;height:22px}.serene-add strong{font-size:16px}.serene-add small{font-size:9px;color:#d5dee3;justify-self:start}
.serene-today{background:#fff;border:1px solid #ebece9;border-radius:22px;padding:15px 14px 9px;box-shadow:0 10px 28px #223b4a08}.serene-today>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}.serene-today>header h3{font-size:17px;margin:0}.serene-today>header button,.serene-more{border:0;background:transparent;color:#657985;font-size:10px;font-weight:650;display:flex;align-items:center;gap:3px}.serene-today>header .ui-icon{width:13px;height:13px}.serene-timeline{position:relative}.serene-timeline::before{content:"";position:absolute;left:58px;top:16px;bottom:16px;width:1px;background:#dfe4e4}.serene-timeline-row{position:relative;width:100%;display:grid;grid-template-columns:48px 13px minmax(0,1fr) 30px;gap:8px;align-items:center;min-height:52px;padding:6px 0;border:0;background:transparent;text-align:left}.serene-time{font-size:10px;color:#607583;text-align:right}.serene-dot{width:10px;height:10px;border-radius:50%;background:#8f9aa1;z-index:1;box-shadow:0 0 0 4px #fff}.serene-timeline-row.category-health .serene-dot,.serene-timeline-row.category-work .serene-dot{background:var(--serene-blue)}.serene-timeline-row.category-sport .serene-dot{background:var(--serene-purple)}.serene-timeline-row.category-meal .serene-dot,.serene-timeline-row.category-family .serene-dot{background:var(--serene-orange)}.serene-timeline-row.now .serene-dot,.serene-timeline-row.started .serene-dot{background:var(--serene-green);box-shadow:0 0 0 4px #e8f5ef}.serene-timeline-row.past{opacity:.5}.serene-event-copy{display:grid;min-width:0}.serene-event-copy strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.serene-event-copy small{font-size:9px;color:#73828b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.serene-event-copy em{font-size:8px;font-style:normal;color:#2e82c3;font-weight:700}.serene-owner{display:grid;place-items:center}.serene-owner .person-avatar{width:27px!important;height:27px!important}.serene-more{margin:3px auto 0;padding:7px}
.serene-empty{padding:20px 6px;display:grid;gap:3px;text-align:center}.serene-empty strong{font-size:13px}.serene-empty span{font-size:10px;color:var(--serene-muted)}
.serene-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.serene-status-grid>button{min-width:0;min-height:105px;border:1px solid #ebece8;background:#fff;border-radius:20px;padding:11px;display:grid;grid-template-columns:31px 1fr;grid-template-rows:auto auto auto;gap:1px 7px;text-align:left;align-items:center;box-shadow:0 9px 24px #223b4a07}.serene-status-icon{grid-row:1/3;width:31px;height:31px;border-radius:10px;display:grid;place-items:center}.serene-status-icon .ui-icon{width:17px;height:17px}.serene-status-icon.shopping{background:#edf3ff;color:#386fc3}.serene-status-icon.tasks{background:#e7f4ee;color:#2f8b67}.serene-status-icon.family{background:#f6eee7;color:#90684d}.serene-status-grid strong{font-size:10px}.serene-status-grid>b{font-size:22px;line-height:1}.serene-status-grid small{grid-column:1/3;font-size:8px;color:#73818a}.serene-status-grid>button.attention{border-color:#efcfc3;background:#fff9f5}.serene-avatar-stack{display:flex;grid-column:2;align-items:center}.serene-avatar-stack .person-avatar{width:26px!important;height:26px!important;margin-left:-7px;border:2px solid #fff}.serene-avatar-stack .person-avatar:first-child{margin-left:0}
.serene-quote{width:100%;border:0;background:linear-gradient(90deg,#fff7ec,#f5eee5);border-radius:18px;min-height:58px;padding:0 16px;color:#956341;display:flex;align-items:center;justify-content:center;gap:9px}.serene-quote span{font-size:23px}.serene-quote em{font-family:Georgia,'Times New Roman',serif;font-size:12px}
body:has(.serene-home) .bottom-nav{height:76px!important;left:12px!important;right:12px!important;bottom:max(10px,env(safe-area-inset-bottom))!important;padding:7px 9px!important;border-radius:27px!important;background:#ffffffee!important;border:1px solid #e5e6e3!important;box-shadow:0 12px 34px #1d344528!important;backdrop-filter:blur(18px)}
body:has(.serene-home) .bottom-nav .nav-item{color:#586b77!important;gap:3px!important}body:has(.serene-home) .bottom-nav .nav-item.active{color:#182f3e!important}body:has(.serene-home) .bottom-nav .nav-item small{font-size:8px!important;font-weight:650!important}body:has(.serene-home) .bottom-nav .nav-item span{width:29px!important;height:29px!important}body:has(.serene-home) .bottom-nav .nav-item svg{width:20px!important;height:20px!important}
body:has(.serene-home) .bottom-nav .nav-personal-main{transform:translateY(-16px);color:#fff!important}body:has(.serene-home) .bottom-nav .nav-personal-main>span{width:58px!important;height:58px!important;border-radius:50%!important;background:linear-gradient(145deg,#1d3443,#263e4c)!important;color:#fff!important;border:5px solid #f8f8f5;box-shadow:0 8px 22px #1d344532}body:has(.serene-home) .bottom-nav .nav-personal-main svg{width:25px!important;height:25px!important}body:has(.serene-home) .bottom-nav .nav-personal-main small{margin-top:-2px;color:#1e3442!important}
@media(max-width:560px){body:has(.serene-home) .content{padding-left:13px!important;padding-right:13px!important}.serene-home{gap:11px}.serene-hero{min-height:171px;padding-bottom:10px}.serene-welcome{margin-top:18px;max-width:88%}.serene-welcome h2{font-size:33px}.serene-welcome p{font-size:10px}.serene-welcome>strong{font-size:13px}.serene-mountain{height:112px;width:68%}.serene-weather{grid-template-columns:42px minmax(0,1fr) auto 16px;padding:11px 12px;border-radius:19px}.serene-weather-icon{font-size:29px}.serene-weather-main strong{font-size:27px}.serene-weather-range{gap:1px 8px}.serene-weather-range b{font-size:9px}.serene-weather-range small{font-size:7px}.serene-next{border-radius:19px;padding:13px}.serene-next-event{grid-template-columns:40px minmax(0,1fr) 15px;gap:10px}.serene-next-icon{width:40px;height:40px}.serene-add{min-height:53px;border-radius:19px}.serene-add small{display:none}.serene-today{border-radius:19px;padding:13px 12px 8px}.serene-timeline-row{grid-template-columns:43px 12px minmax(0,1fr) 27px;min-height:48px;gap:7px}.serene-timeline::before{left:52px}.serene-status-grid{gap:7px}.serene-status-grid>button{min-height:93px;border-radius:17px;padding:9px;grid-template-columns:27px 1fr;gap:1px 5px}.serene-status-icon{width:27px;height:27px}.serene-status-grid>b{font-size:18px}.serene-quote{min-height:50px}.serene-quote em{font-size:10px}}
@media(max-width:390px){.serene-welcome h2{font-size:30px}.serene-weather-range small{display:none}.serene-weather-range{grid-template-columns:auto auto}.serene-status-grid>button{grid-template-columns:1fr;justify-items:center;text-align:center}.serene-status-icon{grid-row:auto}.serene-status-grid>b,.serene-avatar-stack{grid-column:1}.serene-status-grid small{grid-column:1}.serene-status-grid strong{font-size:9px}.serene-avatar-stack .person-avatar{width:23px!important;height:23px!important}}


/* v0.50.3 - Serene navigation alignment + module skin */
.bottom-nav{
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  width:min(calc(100% - 24px),736px)!important;
  height:76px!important;
  bottom:max(9px,env(safe-area-inset-bottom))!important;
  padding:7px 9px!important;
  border-radius:27px!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid #e5e6e3!important;
  box-shadow:0 12px 34px rgba(29,52,69,.16)!important;
  backdrop-filter:blur(18px)!important;
}
.bottom-nav .nav-item{color:#5b6c76!important;gap:3px!important;background:transparent!important;min-width:0!important}
.bottom-nav .nav-item.active{color:#182f3e!important;background:#eef2f1!important}
.bottom-nav .nav-item small{font-size:8.5px!important;font-weight:700!important}
.bottom-nav .nav-personal-main{transform:translateY(-15px)!important;color:#fff!important}
.bottom-nav .nav-personal-main>span{width:58px!important;height:58px!important;border-radius:50%!important;background:linear-gradient(145deg,#1d3443,#263e4c)!important;color:#fff!important;border:5px solid #f8f8f5!important;box-shadow:0 8px 22px rgba(29,52,69,.2)!important}
.bottom-nav .nav-personal-main small{color:#1e3442!important;margin-top:-1px!important}
body:has(.serene-home) .bottom-nav{left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:min(calc(100% - 24px),736px)!important}

body:has(.serene-page){background:linear-gradient(180deg,#f7f3ed 0,#faf9f6 38%,#f5f4f1 100%)!important;color:var(--serene-ink,#142637)}
body:has(.serene-page) .app-shell{max-width:760px}
body:has(.serene-page) .topbar{position:sticky;top:0;z-index:24;background:rgba(248,246,241,.93)!important;border:0!important;box-shadow:0 1px 0 rgba(32,52,65,.06)!important;backdrop-filter:blur(18px);padding:12px 18px 10px!important}
body:has(.serene-page) .topbar .eyebrow{color:#8a796b!important;font-size:9px!important;letter-spacing:.19em!important}
body:has(.serene-page) .topbar h1{color:#172b3a!important;font-family:Georgia,'Times New Roman',serif!important;font-weight:500!important;letter-spacing:-.025em!important;font-size:24px!important}
body:has(.serene-page) .topbar-actions button{background:#fff!important;color:#334956!important;border:1px solid #ebe8e2!important;box-shadow:0 5px 14px rgba(34,52,65,.06)!important}
body:has(.serene-page) .content{padding:14px 16px 118px!important;max-width:760px!important;margin:0 auto!important}
.serene-page{display:grid;gap:12px;color:#142637}
.serene-page .plan-head,.serene-page .shopping-head,.serene-page .family-hub-head{padding:8px 2px 12px!important}
.serene-page .plan-head h2,.serene-page .shopping-head h2,.serene-page .family-hub-head h2{font-family:Georgia,'Times New Roman',serif!important;color:#142637!important;font-size:30px!important;font-weight:500!important;letter-spacing:-.035em!important}
.serene-page .plan-head p,.serene-page .shopping-head p,.serene-page .family-hub-head p{color:#71808c!important;font-size:10px!important;max-width:430px!important}
.serene-page .plan-head small,.serene-page .shopping-head small,.serene-page .family-hub-head small,.serene-page .section-heading small{color:#95745f!important;letter-spacing:.15em!important;font-weight:850!important}

.serene-plan-page .plan-date-strip{gap:6px!important;padding:3px 0 9px!important}
.serene-plan-page .plan-day{background:#fff!important;border:1px solid #e9e7e2!important;border-radius:15px!important;box-shadow:0 5px 16px rgba(31,50,62,.035)!important;color:#4d606c!important}
.serene-plan-page .plan-day.active{background:#1d3443!important;color:#fff!important;border-color:#1d3443!important;box-shadow:0 7px 18px rgba(29,52,67,.16)!important}
.serene-plan-page .plan-calendar-filters button,.serene-plan-page .plan-person-filters button{border-color:#e6e4de!important;background:#fff!important;color:#63747e!important}
.serene-plan-page .plan-calendar-filters button.active,.serene-plan-page .plan-person-filters button.active{background:#e9f0ef!important;border-color:#d4dfdc!important;color:#1d4c46!important}
.serene-plan-page .plan-agenda-panel.clean .plan-agenda-group{border-top-color:#ebe9e3!important}
.serene-plan-page .plan-agenda-panel.clean .plan-agenda-entry{border-color:#ebe9e3!important;border-radius:17px!important;box-shadow:0 6px 17px rgba(31,50,62,.035)!important;background:#fff!important}
.serene-plan-page .plan-agenda-badge{border-radius:12px!important}
.serene-plan-page .plan-today-button,.serene-plan-page .plan-date-picker,.serene-plan-page .plan-add-button{border-color:#e4e2dc!important;background:#fff!important;color:#425866!important;border-radius:14px!important;box-shadow:0 4px 13px rgba(32,45,66,.035)!important}
.serene-plan-page .plan-add-button{background:#1d3443!important;color:#fff!important;border-color:#1d3443!important}
.serene-plan-page .plan-settings{border-color:#e8e5df!important;background:#fff!important;border-radius:18px!important}

.serene-shopping-page .shopping-tabs{background:#eeeae3!important;border-color:#e6e1d9!important;border-radius:18px!important;padding:5px!important}
.serene-shopping-page .shopping-tabs button{color:#6f7778!important;border-radius:13px!important}
.serene-shopping-page .shopping-tabs button.active{background:#fff!important;color:#173343!important;box-shadow:0 4px 14px rgba(33,49,59,.08)!important}
.serene-shopping-page .shopping-list-switcher,.serene-shopping-page .shopping-shop-mode,.serene-shopping-page .shopping-composer,.serene-shopping-page .shopping-catalog,.serene-shopping-page .recipe-panel,.serene-shopping-page .meal-suggestion-panel{border-color:#e8e5df!important;background:#fff!important;box-shadow:0 7px 22px rgba(31,50,62,.035)!important}
.serene-shopping-page .shopping-shop-mode{border-radius:21px!important}
.serene-shopping-page .shopping-shop-mode-head h2{font-family:Georgia,'Times New Roman',serif!important;color:#142637!important;font-weight:500!important}
.serene-shopping-page .shopping-shop-mode-head>strong{background:#edf3f0!important;color:#2b6d60!important}
.serene-shopping-page .shop-row{border-color:#efede8!important}
.serene-shopping-page .shop-check{border-color:#cbd5cf!important}
.serene-shopping-page .shop-check.checked{background:#2f9b73!important;border-color:#2f9b73!important}
.serene-shopping-page .shopping-add input{border-color:#e2dfd8!important;background:#fbfaf8!important;color:#142637!important}
.serene-shopping-page .shopping-add>button{border-color:#e2dfd8!important;background:#fff!important;color:#3e5865!important}

.serene-family-page .family-people-section,.serene-family-page .family-shared-section{border-color:#e8e5df!important;background:#fff!important;border-radius:21px!important;box-shadow:0 7px 22px rgba(31,50,62,.035)!important}
.serene-family-page .family-person-card,.serene-family-page .family-birthdays-card,.serene-family-page .family-shared-card{border-color:#ece9e3!important;background:#fbfaf8!important;border-radius:17px!important}
.serene-family-page .family-person-card strong,.serene-family-page .family-birthdays-card strong,.serene-family-page .family-shared-card strong{color:#19303f!important}
.serene-family-page .family-person-card small,.serene-family-page .family-birthdays-card small,.serene-family-page .family-shared-card small{color:#76838a!important}
.serene-family-page .family-shared-card>span:first-child{background:#eef3f1!important;color:#3c6e64!important}
.serene-family-page .family-permission-note{background:#fff7ec!important;border-color:#efe4d2!important;color:#81694f!important}

@media(max-width:560px){
  .bottom-nav{width:calc(100% - 18px)!important;bottom:max(7px,env(safe-area-inset-bottom))!important}
  body:has(.serene-home) .bottom-nav{width:calc(100% - 18px)!important}
  body:has(.serene-page) .content{padding-left:12px!important;padding-right:12px!important;padding-top:10px!important}
  body:has(.serene-page) .topbar{padding-left:14px!important;padding-right:14px!important}
  .serene-page .plan-head,.serene-page .shopping-head,.serene-page .family-hub-head{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .serene-plan-page .plan-head-buttons{justify-content:flex-start!important;gap:6px!important}
  .serene-plan-page .plan-date-picker input{min-width:102px!important}
  .serene-family-page .family-people-grid,.serene-family-page .family-shared-grid{grid-template-columns:1fr!important}
}
/* V0.50.4 · Serene AI hub; generic Tasks/Chat retired */
.plan-quick-add-grid.two{grid-template-columns:1fr 1fr}
.serene-status-icon.plan{background:#edf1f5;color:#526d80}
body:has(.serene-ai-page){background:linear-gradient(180deg,#f7f3ed 0,#faf9f6 38%,#f5f4f1 100%)!important;color:#142637}
body:has(.serene-ai-page) .app-shell{max-width:760px}
body:has(.serene-ai-page) .topbar{display:none!important}
body:has(.serene-ai-page) .content{padding:16px 16px 122px!important;max-width:760px!important;margin:0 auto!important}
.serene-ai-page{display:grid;gap:12px;color:#142637}
.serene-ai-hero{position:relative;overflow:hidden;min-height:210px;border-radius:28px;padding:28px 24px;background:linear-gradient(145deg,#e9eee9 0,#f3eee6 56%,#eee6dc 100%);display:grid;grid-template-columns:74px 1fr;gap:18px;align-items:center;box-shadow:0 10px 32px rgba(31,50,62,.06)}
.serene-ai-hero:after{content:"";position:absolute;right:-55px;bottom:-85px;width:240px;height:180px;border-radius:50%;background:rgba(104,137,130,.13);transform:rotate(-18deg)}
.serene-ai-orb{position:relative;z-index:1;width:72px;height:72px;border-radius:24px;display:grid;place-items:center;background:linear-gradient(145deg,#1d3443,#2f5060);color:#fff;font-size:30px;box-shadow:0 12px 28px rgba(29,52,67,.18)}
.serene-ai-hero>div:last-child{position:relative;z-index:1}.serene-ai-hero small{display:block;color:#8c7565;font-size:9px;letter-spacing:.18em;font-weight:850}.serene-ai-hero h2{font-family:Georgia,'Times New Roman',serif;font-size:34px;line-height:1.04;font-weight:500;letter-spacing:-.04em;margin:7px 0 8px;color:#162c3b}.serene-ai-hero p{max-width:430px;color:#687983;font-size:11px;line-height:1.55}
.serene-ai-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.serene-ai-modes button{border:1px solid #e8e5df;background:#fff;border-radius:21px;padding:16px 10px;min-height:104px;display:grid;place-items:center;align-content:center;gap:4px;color:#1a3342;box-shadow:0 7px 22px rgba(31,50,62,.04)}.serene-ai-modes button>span{width:38px;height:38px;border-radius:14px;background:#edf3f1;display:grid;place-items:center;color:#356d64;font-size:19px}.serene-ai-modes button strong{font-size:13px}.serene-ai-modes button small{font-size:8px;color:#7c898f}.serene-ai-modes button:disabled{opacity:.45}
.serene-ai-actions{border:1px solid #e8e5df;background:#fff;border-radius:24px;padding:17px;box-shadow:0 7px 22px rgba(31,50,62,.035)}.serene-ai-actions>header{margin-bottom:8px}.serene-ai-actions>header small{display:block;color:#95745f;font-size:8px;letter-spacing:.15em;font-weight:850}.serene-ai-actions>header h3{font-family:Georgia,'Times New Roman',serif;font-size:22px;font-weight:500;margin-top:3px}.serene-ai-actions>div{display:grid}.serene-ai-actions button{border:0;border-top:1px solid #efede8;background:transparent;min-height:68px;padding:10px 4px;display:grid;grid-template-columns:42px minmax(0,1fr) 20px;gap:10px;align-items:center;text-align:left;color:#1a3342}.serene-ai-actions button:first-child{border-top:0}.serene-ai-actions button>span:first-child{width:40px;height:40px;border-radius:14px;display:grid;place-items:center}.serene-ai-actions button>span.calendar{background:#eef1f5;color:#536f82}.serene-ai-actions button>span.shopping{background:#edf4ee;color:#4f7b62}.serene-ai-actions button>span.cook{background:#fff2df}.serene-ai-actions button>span.recipe{background:#f5ece7}.serene-ai-actions button b{font-weight:400;min-width:0}.serene-ai-actions button strong{display:block;font-size:12px}.serene-ai-actions button small{display:block;color:#7a878d;font-size:9px;margin-top:3px}.serene-ai-actions button>svg{width:16px;height:16px;color:#a3aaab}
.serene-ai-note{display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:start;background:#edf3f0;border:1px solid #dce8e2;border-radius:20px;padding:14px 15px;color:#254a42}.serene-ai-note>span{width:34px;height:34px;border-radius:50%;background:#dfece5;display:grid;place-items:center;font-weight:900}.serene-ai-note strong{display:block;font-size:11px}.serene-ai-note p{font-size:9px;line-height:1.5;color:#60766e;margin-top:3px}.serene-ai-warning{border:1px solid #efd9b8;background:#fff8ec;color:#7d6342;border-radius:18px;padding:13px;font-size:10px;line-height:1.45}
body:has(.serene-ai-page) .bottom-nav{left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:min(calc(100% - 24px),736px)!important}
body:has(.serene-ai-page) .bottom-nav .nav-personal-main{transform:translateY(-15px)!important;color:#fff!important}
body:has(.serene-ai-page) .bottom-nav .nav-personal-main>span{width:58px!important;height:58px!important;border-radius:50%!important;background:linear-gradient(145deg,#1d3443,#263e4c)!important;color:#fff!important;border:5px solid #f8f8f5!important;box-shadow:0 8px 22px rgba(29,52,69,.2)!important}
body:has(.serene-ai-page) .bottom-nav .nav-personal-main small{color:#1e3442!important;margin-top:-1px!important}
@media(max-width:560px){body:has(.serene-ai-page) .content{padding:10px 12px 118px!important}.serene-ai-page{gap:10px}.serene-ai-hero{min-height:184px;border-radius:23px;padding:22px 18px;grid-template-columns:58px 1fr;gap:13px}.serene-ai-orb{width:56px;height:56px;border-radius:19px;font-size:25px}.serene-ai-hero h2{font-size:29px}.serene-ai-modes{gap:7px}.serene-ai-modes button{min-height:92px;border-radius:18px;padding:12px 6px}.serene-ai-actions{border-radius:20px;padding:13px}.serene-ai-actions button{min-height:64px}}
@media(max-width:390px){.serene-ai-hero{grid-template-columns:1fr}.serene-ai-orb{width:48px;height:48px}.serene-ai-hero h2{font-size:27px}.serene-ai-modes button small{display:none}.serene-ai-modes button{min-height:78px}.serene-ai-actions button{grid-template-columns:38px minmax(0,1fr) 16px;gap:8px}}

/* V0.50.5 · Serene Weather */
body:has(.serene-weather-page){background:linear-gradient(180deg,#f7f3ed 0,#faf9f6 38%,#f4f4f1 100%)!important;color:#142637}
body:has(.serene-weather-page) .app-shell{max-width:760px}
body:has(.serene-weather-page) .topbar{display:none!important}
body:has(.serene-weather-page) .content{padding:16px 16px 122px!important;max-width:760px!important;margin:0 auto!important}
.serene-weather-page{display:grid;gap:12px;color:#142637;animation:serene-enter .24s ease both}
.serene-weather-header{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:11px;align-items:center;padding:2px 2px 4px}
.serene-weather-header>button{width:40px;height:40px;border:1px solid #e6e4de;border-radius:14px;background:#fff;color:#27404f;display:grid;place-items:center;font-size:26px;line-height:1;box-shadow:0 5px 16px rgba(31,50,62,.035)}
.serene-weather-header>div{min-width:0}.serene-weather-header small{display:block;font-size:8px;font-weight:850;letter-spacing:.17em;color:#92735e}.serene-weather-header h2{font-family:Georgia,'Times New Roman',serif;font-size:27px;font-weight:500;letter-spacing:-.035em;margin:2px 0 1px;color:#162d3c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.serene-weather-header p{font-size:8px;color:#7a878d}.serene-weather-refresh{font-size:21px!important}
.serene-weather-hero{position:relative;overflow:hidden;min-height:190px;border-radius:28px;padding:24px;display:grid;grid-template-columns:84px minmax(0,1fr) auto;gap:18px;align-items:center;background:linear-gradient(145deg,#e9efee 0,#f1f0e8 52%,#efe8df 100%);box-shadow:0 10px 32px rgba(31,50,62,.055)}
.serene-weather-hero:after{content:"";position:absolute;right:-55px;bottom:-88px;width:260px;height:190px;border-radius:50%;background:rgba(97,132,128,.11);transform:rotate(-16deg)}
.serene-weather-hero-icon{position:relative;z-index:1;width:82px;height:82px;border-radius:25px;background:rgba(255,255,255,.68);border:1px solid rgba(255,255,255,.7);display:grid;place-items:center;font-size:43px;box-shadow:0 8px 24px rgba(40,61,70,.07)}
.serene-weather-hero-copy{position:relative;z-index:1;min-width:0}.serene-weather-hero-copy>small{font-size:10px;color:#6c7e82}.serene-weather-hero-copy>strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:60px;line-height:.95;font-weight:500;letter-spacing:-.065em;margin:4px 0 7px;color:#142d3c}.serene-weather-hero-copy p{font-size:10px;color:#6d7b80;line-height:1.45}
.serene-weather-sun{position:relative;z-index:1;display:grid;gap:8px;align-self:end;padding-bottom:4px}.serene-weather-sun span{font-size:9px;color:#6b777a;white-space:nowrap}
.serene-weather-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.serene-weather-metrics article{min-width:0;border:1px solid #e8e5df;background:#fff;border-radius:19px;padding:13px 12px;box-shadow:0 7px 22px rgba(31,50,62,.03)}.serene-weather-metrics small{display:block;font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:#8a8f8e;font-weight:750}.serene-weather-metrics strong{display:block;font-size:15px;letter-spacing:-.025em;margin-top:5px;color:#1d3745;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.serene-weather-metrics span{display:block;font-size:7px;color:#929795;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.serene-weather-insight{display:grid;grid-template-columns:40px minmax(0,1fr);gap:11px;align-items:center;border:1px solid #dfe9e4;background:#edf4f0;border-radius:20px;padding:13px 15px}.serene-weather-insight>span{width:38px;height:38px;border-radius:13px;background:#dfece5;display:grid;place-items:center;color:#2f725f;font-size:19px}.serene-weather-insight small{display:block;font-size:7px;letter-spacing:.14em;font-weight:850;color:#678077}.serene-weather-insight strong{display:block;font-size:10px;line-height:1.45;margin-top:2px;color:#34574e}.serene-weather-insight.severity-medium{background:#fff8eb;border-color:#efe1c8}.serene-weather-insight.severity-medium>span{background:#f7ead1;color:#956b2c}.serene-weather-insight.severity-high{background:#fff1ec;border-color:#efd8ce}.serene-weather-insight.severity-high>span{background:#f7ded4;color:#a5563c}
.serene-weather-section{border:1px solid #e8e5df;background:#fff;border-radius:24px;padding:16px;box-shadow:0 7px 22px rgba(31,50,62,.035);min-width:0}.serene-weather-section>header{display:flex;justify-content:space-between;gap:14px;align-items:end;margin-bottom:12px}.serene-weather-section>header small{display:block;font-size:8px;letter-spacing:.15em;font-weight:850;color:#92735e}.serene-weather-section>header h3{font-family:Georgia,'Times New Roman',serif;font-size:21px;font-weight:500;letter-spacing:-.025em;margin-top:2px}.serene-weather-section>header>span{font-size:8px;color:#929795;white-space:nowrap}
.serene-weather-hours{display:grid;grid-auto-flow:column;grid-auto-columns:74px;gap:7px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;padding:2px 1px 7px;scrollbar-width:none}.serene-weather-hours::-webkit-scrollbar{display:none}.serene-weather-hour{scroll-snap-align:start;min-height:126px;border:1px solid #eeece7;background:#fbfaf8;border-radius:18px;padding:10px 6px;display:grid;place-items:center;align-content:center;gap:4px;text-align:center}.serene-weather-hour.now{background:#eef4f1;border-color:#dce8e2}.serene-weather-hour small{font-size:8px;color:#6d797c}.serene-weather-hour>b{font-size:22px;line-height:1.25}.serene-weather-hour>strong{font-size:15px}.serene-weather-hour>span{font-size:8px;color:#477b9b}.serene-weather-hour>em{font-size:7px;font-style:normal;color:#939896}
.serene-weather-days{display:grid;gap:2px}.serene-weather-day{min-height:54px;display:grid;grid-template-columns:82px 31px minmax(0,1fr) 64px 66px;gap:9px;align-items:center;border-top:1px solid #efede8;padding:8px 3px}.serene-weather-day:first-child{border-top:0}.serene-weather-day.today{background:#fbfaf6;border-radius:14px;padding-left:9px;padding-right:9px}.serene-weather-day>div:first-child{display:grid}.serene-weather-day>div:first-child strong{font-size:10px;text-transform:capitalize}.serene-weather-day>div:first-child small{font-size:7px;color:#929795}.serene-weather-day>b{font-size:21px;text-align:center}.serene-weather-day>span{font-size:9px;color:#65777f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.serene-weather-day>em{font-size:8px;font-style:normal;color:#4d7790}.serene-weather-day-range{display:grid!important;grid-template-columns:1fr 1fr;gap:5px;text-align:right}.serene-weather-day-range strong{font-size:11px}.serene-weather-day-range small{font-size:10px;color:#949a98}
.serene-weather-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 5px 8px;color:#929795}.serene-weather-footer span{font-size:8px}.serene-weather-footer button{border:0;background:transparent;color:#456776;font-size:9px;font-weight:700}
.serene-weather-unavailable{min-height:270px;border:1px solid #e8e5df;background:#fff;border-radius:25px;padding:30px;display:grid;place-items:center;align-content:center;gap:8px;text-align:center}.serene-weather-unavailable>span{font-size:38px}.serene-weather-unavailable h3{font-family:Georgia,'Times New Roman',serif;font-size:23px;font-weight:500}.serene-weather-unavailable p{font-size:10px;color:#7b878c}.serene-weather-unavailable button{margin-top:6px;border:0;border-radius:15px;background:#1d3443;color:#fff;padding:11px 15px;font-size:10px;font-weight:750}
body:has(.serene-weather-page) .bottom-nav{left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:min(calc(100% - 24px),736px)!important}
body:has(.serene-weather-page) .bottom-nav .nav-personal-main{transform:translateY(-15px)!important;color:#fff!important}
body:has(.serene-weather-page) .bottom-nav .nav-personal-main>span{width:58px!important;height:58px!important;border-radius:50%!important;background:linear-gradient(145deg,#1d3443,#263e4c)!important;color:#fff!important;border:5px solid #f8f8f5!important;box-shadow:0 8px 22px rgba(29,52,69,.2)!important}
body:has(.serene-weather-page) .bottom-nav .nav-personal-main small{color:#1e3442!important;margin-top:-1px!important}
@media(max-width:560px){body:has(.serene-weather-page) .content{padding:10px 12px 118px!important}.serene-weather-page{gap:10px}.serene-weather-header{grid-template-columns:38px minmax(0,1fr) 38px}.serene-weather-header>button{width:37px;height:37px;border-radius:13px}.serene-weather-header h2{font-size:23px}.serene-weather-hero{min-height:166px;border-radius:23px;padding:18px;grid-template-columns:67px minmax(0,1fr);gap:13px}.serene-weather-hero-icon{width:65px;height:65px;border-radius:21px;font-size:35px}.serene-weather-hero-copy>strong{font-size:51px}.serene-weather-sun{grid-column:1/-1;grid-template-columns:1fr 1fr;padding:0 2px}.serene-weather-sun span:last-child{text-align:right}.serene-weather-metrics{grid-template-columns:1fr 1fr}.serene-weather-metrics article{padding:11px;border-radius:17px}.serene-weather-section{border-radius:20px;padding:13px}.serene-weather-section>header{align-items:start}.serene-weather-section>header h3{font-size:19px}.serene-weather-day{grid-template-columns:68px 27px minmax(0,1fr) 52px 54px;gap:6px}.serene-weather-day>span{font-size:8px}.serene-weather-hours{grid-auto-columns:69px}.serene-weather-hour{min-height:118px}}
@media(max-width:390px){.serene-weather-day{grid-template-columns:62px 27px minmax(0,1fr) 48px}.serene-weather-day-range{display:none!important}.serene-weather-section>header>span{display:none}.serene-weather-hero-copy p{font-size:9px}.serene-weather-metrics strong{font-size:14px}}


/* V0.50.6 · Serene Family */
.serene-family-v2{display:grid;gap:12px}
.family-serene-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:end;padding:22px 20px;border:1px solid #e7e2da;border-radius:26px;background:linear-gradient(145deg,#fffdf9 0%,#f4f0e9 100%);box-shadow:0 10px 30px rgba(35,49,55,.05)}
.family-serene-hero:after{content:'';position:absolute;width:160px;height:160px;border-radius:50%;right:-55px;top:-78px;background:radial-gradient(circle,rgba(91,123,112,.13),rgba(91,123,112,0) 70%);pointer-events:none}
.family-serene-hero-copy{position:relative;z-index:1}.family-serene-hero-copy>small{font-size:8px;letter-spacing:.17em;font-weight:900;color:#95745f}.family-serene-hero h2{font-family:Georgia,'Times New Roman',serif;font-size:31px;line-height:1.04;font-weight:500;letter-spacing:-.04em;color:#142637;margin:5px 0 7px}.family-serene-hero p{max-width:430px;color:#6f7c82;font-size:10px;line-height:1.5}.family-hero-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.family-hero-meta span{display:inline-flex;align-items:center;min-height:25px;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.74);border:1px solid #e6e0d8;color:#5f6d72;font-size:8.5px;font-weight:800}
.family-hero-avatars{display:flex;align-items:center;padding:0 5px 3px 14px;position:relative;z-index:1}.family-hero-avatar{width:44px;height:44px;border-radius:50%;overflow:hidden;border:3px solid #fffaf4;box-shadow:0 3px 10px rgba(36,50,55,.1);margin-left:-12px;background:#ece7df}.family-hero-avatar:first-child{margin-left:0}.family-hero-avatar img{width:100%;height:100%;object-fit:cover}
.serene-family-v2 .family-today-section,.family-serene-panel{border:1px solid #e9e5de;background:#fff;border-radius:22px;padding:15px;box-shadow:0 7px 22px rgba(31,50,62,.035);margin:0}.serene-family-v2 .family-today-section .section-heading,.family-serene-panel .section-heading{margin-bottom:7px}.serene-family-v2 .family-today-row{border-color:#efebe5;padding:11px 1px}.serene-family-v2 .family-today-row strong{color:#1a303e}.serene-family-v2 .family-today-row small{color:#768288}.serene-family-v2 .family-calm-state{padding:12px 1px;color:#879096}
.family-oskar-spotlight{width:100%;display:grid;grid-template-columns:52px minmax(0,1fr) 18px;gap:12px;align-items:center;text-align:left;border:1px solid #e6dfd4;background:linear-gradient(135deg,#fff9ed,#fff);border-radius:22px;padding:14px;color:inherit;box-shadow:0 7px 22px rgba(63,48,28,.035)}.family-oskar-avatar{width:52px;height:52px;border-radius:17px;overflow:hidden;background:#f3e9d5}.family-oskar-avatar img{width:100%;height:100%;object-fit:cover}.family-oskar-copy{min-width:0}.family-oskar-copy small{display:block;font-size:8px;letter-spacing:.15em;font-weight:900;color:#a57739}.family-oskar-copy strong{display:block;margin-top:3px;color:#24333a;font-size:12px}.family-oskar-copy em{display:block;margin-top:3px;font-style:normal;color:#7b7e78;font-size:8.5px}.family-oskar-copy i{display:block;height:4px;margin-top:8px;border-radius:999px;background:#efe8da;overflow:hidden}.family-oskar-copy i b{display:block;height:100%;border-radius:inherit;background:#c69a5e}.family-oskar-spotlight>.ui-icon{width:15px;color:#a9a196}
.family-serene-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:12px}.family-serene-members{display:grid;gap:7px}.family-serene-member{width:100%;display:grid;grid-template-columns:46px minmax(0,1fr) 15px;gap:11px;align-items:center;text-align:left;border:1px solid #eeeae4;background:#fbfaf8;border-radius:17px;padding:10px;color:inherit}.family-serene-avatar{width:46px;height:46px;border-radius:15px;overflow:hidden;background:#ece8e1}.family-serene-avatar img{width:100%;height:100%;object-fit:cover}.family-serene-member strong{display:block;color:#223640;font-size:11px}.family-serene-member small{display:block;color:#8a8176;font-size:8px;margin-top:1px}.family-serene-member em{display:block;color:#7a858a;font-size:8.3px;font-style:normal;margin-top:4px}.family-serene-member>.ui-icon{width:13px;color:#aaa39b}
.family-birthdays-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.family-mini-action{border:1px solid #e7dfd5;background:#faf7f2;color:#7c6756;border-radius:999px;padding:7px 9px;font-size:8px;font-weight:850}.family-next-birthdays{display:grid}.family-next-birthdays .family-upcoming-birthday{grid-template-columns:34px minmax(0,1fr) 14px;padding:9px 0}.family-next-birthdays .family-upcoming-birthday>span:first-child{font-size:17px}.family-next-birthdays .family-upcoming-birthday strong{font-size:10.5px}.family-next-birthdays .family-upcoming-birthday small{font-size:8px}.serene-family-v2 .family-birthday-all{border-color:#eee9e2;margin-top:8px}.serene-family-v2 .family-birthday-all>summary{color:#7c6b5c;font-size:8.5px}
.family-home-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.family-home-tool{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) 14px;gap:10px;align-items:center;text-align:left;border:1px solid #ece8e2;background:#fbfaf8;border-radius:16px;padding:10px;color:inherit}.family-home-tool-icon{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:#eef3f0;color:#527669;font-size:17px}.family-home-tool-icon .ui-icon{width:17px}.family-home-tool strong{display:block;color:#24363e;font-size:10.5px}.family-home-tool small{display:block;color:#818b8e;font-size:8px;margin-top:2px}.family-home-tool>.ui-icon{width:13px;color:#aaa39b}
.serene-family-member-page{display:grid;gap:11px}.serene-back{justify-self:start;margin:0!important;color:#6e756f!important}.family-member-hero.serene{display:grid;grid-template-columns:66px minmax(0,1fr);gap:14px;align-items:center;border:1px solid #e8e3dc;background:linear-gradient(145deg,#fffdf9,#f6f2eb);border-radius:24px;padding:17px}.family-member-hero.serene .family-hub-avatar{width:66px;height:66px;border-radius:20px;overflow:hidden}.family-member-hero.serene .family-hub-avatar img{width:100%;height:100%;object-fit:cover}.family-member-hero.serene small{font-size:8px;letter-spacing:.14em;color:#95745f;font-weight:900}.family-member-hero.serene h2{font-family:Georgia,'Times New Roman',serif;font-size:27px;font-weight:500;color:#17303f;margin:2px 0}.family-member-hero.serene p{font-size:9px;color:#778287}.family-member-actions{display:grid;gap:7px}.family-feature-link.serene{border-color:#e9e5df!important;background:#fff!important;border-radius:17px!important;box-shadow:none!important}.family-day-card.serene{border:1px solid #e9e5df;background:#fff;border-radius:21px;padding:15px}.family-day-row.serene{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;padding:10px 0;border-top:1px solid #efebe5}.family-day-row.serene:first-of-type{border-top:0}.family-day-icon{width:34px;height:34px;border-radius:12px;background:#eef3f1;color:#527669;display:grid;place-items:center}.family-day-icon .ui-icon{width:15px}.family-day-row.serene strong{display:block;color:#24363e;font-size:10.5px}.family-day-row.serene small{display:block;color:#858e91;font-size:8px;margin-top:2px}.family-member-empty{padding:12px 0;color:#879093;font-size:9px}
.serene-oskar-page{display:grid;gap:10px}.serene-oskar-page .oskar-compact-hero,.serene-oskar-page .oskar-goal-card,.serene-oskar-page .oskar-approval-compact,.serene-oskar-page .oskar-section,.serene-oskar-page .oskar-more{border-color:#e9e4dc!important;background:#fff!important;box-shadow:0 7px 22px rgba(31,50,62,.03)!important}.serene-oskar-page .oskar-compact-hero{background:linear-gradient(145deg,#fffaf0,#fff)!important}.serene-oskar-page .oskar-compact-hero h2,.serene-oskar-page .oskar-section h3{color:#203640!important}.serene-oskar-page .oskar-compact-hero small,.serene-oskar-page .oskar-section small{color:#9b7440!important}.serene-oskar-page .oskar-chore-row,.serene-oskar-page .oskar-reward-card{border-color:#eee9e1!important;background:#fbfaf8!important}.serene-oskar-page .oskar-more>summary{color:#42555e!important}
@media(max-width:760px){.family-serene-hero{grid-template-columns:1fr;padding:19px 16px}.family-hero-avatars{justify-content:flex-start;padding-left:12px}.family-serene-grid{grid-template-columns:1fr}.family-home-tools-grid{grid-template-columns:1fr}.family-serene-hero h2{font-size:28px}.family-oskar-spotlight{grid-template-columns:48px minmax(0,1fr) 15px}.family-oskar-avatar{width:48px;height:48px}}


/* V0.50.7 · Serene Settings */
.serene-settings-page{display:grid;gap:12px;max-width:760px;margin:0 auto}.settings-hero{display:grid;grid-template-columns:68px minmax(0,1fr);gap:14px;align-items:center;padding:18px;border:1px solid #e6e1d9;border-radius:24px;background:linear-gradient(145deg,#fffdf9,#f5f1ea);box-shadow:0 8px 26px rgba(31,50,62,.04)}.settings-avatar{width:68px;height:68px;border-radius:21px;overflow:hidden;background:#ece8e1}.settings-avatar img{width:100%;height:100%;object-fit:cover}.settings-hero small,.settings-section-title small{font-size:8px;letter-spacing:.16em;font-weight:900;color:#987762}.settings-hero h2{font-family:Georgia,'Times New Roman',serif;font-size:29px;font-weight:500;letter-spacing:-.035em;color:#17303e;margin:3px 0}.settings-hero p{font-size:9px;color:#7b8588}.settings-section{border:1px solid #e9e5de;background:#fff;border-radius:22px;padding:14px 14px 7px;box-shadow:0 7px 22px rgba(31,50,62,.03)}.settings-section-title{padding:0 2px 8px}.settings-section-title h3{font-family:Georgia,'Times New Roman',serif;font-size:20px;font-weight:500;color:#203641;margin:2px 0}.settings-row{width:100%;min-height:58px;display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;border:0;border-top:1px solid #efebe5;background:transparent;padding:9px 1px;color:inherit}.settings-section>.settings-row:first-of-type{border-top:0}.settings-row-static{cursor:default}.settings-icon{width:40px;height:40px;border-radius:14px;background:#eef3f0;color:#527669;display:grid;place-items:center;font-size:17px}.settings-icon .ui-icon{width:17px}.settings-row strong{display:block;color:#24363e;font-size:10.8px}.settings-row small{display:block;color:#818b8e;font-size:8.3px;line-height:1.4;margin-top:2px}.settings-row>.ui-icon{width:14px;color:#aaa39b}.settings-status{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:7.5px;font-weight:850;border:1px solid #e7e2da;color:#81786f;background:#f8f6f2}.settings-status i{width:6px;height:6px;border-radius:50%;background:#b4aaa0}.settings-status.ok{color:#4f7665;background:#eef5f1;border-color:#dbe8e1}.settings-status.ok i{background:#5f8d78}.settings-row-tail{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}.settings-inline-action{font-size:8px;font-weight:850;color:#456e60;text-decoration:none;padding:6px 8px;border:1px solid #dfe9e3;border-radius:999px;background:#f4f8f6}.settings-subaction{width:100%;display:flex;align-items:center;justify-content:flex-end;gap:5px;border:0;border-top:1px solid #efebe5;background:transparent;color:#65726f;padding:10px 2px 8px;font-size:8.5px;font-weight:850}.settings-subaction .ui-icon{width:12px}.settings-admin-section{background:linear-gradient(145deg,#fffdf8,#fff)}.settings-logout{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;text-align:left;border:1px solid #eadedb;background:#fff9f7;border-radius:18px;padding:11px 14px;color:#8f5148}.settings-logout>span:first-child{width:38px;height:38px;border-radius:13px;background:#f8eae7;display:grid;place-items:center;font-size:17px}.settings-logout strong{display:block;font-size:10.8px}.settings-logout small{display:block;font-size:8px;color:#a1746d;margin-top:2px}
body:has(.serene-settings-page) .content{background:#f7f4ee}.family-admin-page,.system-admin-page{max-width:780px;margin:0 auto;display:grid;gap:12px}.family-admin-head,.system-admin-head{border:1px solid #e6e1d9!important;border-radius:24px!important;background:linear-gradient(145deg,#fffdf9,#f5f1ea)!important;box-shadow:0 8px 26px rgba(31,50,62,.04)!important}.family-admin-status,.family-admin-section,.family-access-explainer,.system-panel,.system-reauth,.system-status-grid>div{border-color:#e9e5de!important;background:#fff!important;box-shadow:0 7px 22px rgba(31,50,62,.03)!important}.family-system-entry,.family-admin-member,.system-backup-row{border-color:#ece8e2!important;background:#fbfaf8!important}.alert-sheet{background:#f7f4ee!important}.alert-permission,.notify-group,.alert-item{border-color:#e9e5de!important;background:#fff!important}.notify-save{border-radius:14px!important}
@media(max-width:560px){body:has(.serene-settings-page) .content{padding:10px 12px 118px!important}.serene-settings-page{gap:10px}.settings-hero{grid-template-columns:58px minmax(0,1fr);padding:15px;border-radius:22px}.settings-avatar{width:58px;height:58px;border-radius:18px}.settings-hero h2{font-size:26px}.settings-section{border-radius:20px;padding:12px 12px 6px}.settings-row{grid-template-columns:38px minmax(0,1fr) auto;gap:9px;min-height:55px}.settings-icon{width:38px;height:38px;border-radius:13px}.settings-row small{max-width:230px}.settings-status{padding:4px 7px}.settings-row-tail{grid-column:2/4;justify-content:flex-start;margin-top:-4px;margin-bottom:3px}.settings-inline-action{margin:0}}
@media(max-width:390px){.settings-row{grid-template-columns:36px minmax(0,1fr) auto}.settings-icon{width:36px;height:36px}.settings-row small{max-width:190px}.settings-status{font-size:7px;padding:4px 6px}.settings-hero p{font-size:8px}}


/* V0.50.8 · Serene Shopping Flow */
.serene-shopping-page .shopping-fast-add{background:#fff;border:1px solid #e8e5df;border-radius:21px;padding:14px;margin:0 0 8px;box-shadow:0 7px 22px rgba(31,50,62,.035)}
.shopping-fast-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.shopping-fast-head small{display:block;font-size:8px;letter-spacing:.13em;color:#2f806a;font-weight:900}.shopping-fast-head strong{display:block;margin-top:3px;font-family:Georgia,'Times New Roman',serif;font-size:20px;font-weight:500;color:#142637}.shopping-fast-head p{margin:2px 0 0;color:#7b8589;font-size:9px}.shopping-fast-head>span{min-width:68px;border-radius:999px;background:#edf3f0;color:#2b6d60;padding:7px 9px;text-align:center;font-size:9px;font-weight:850}
.shopping-fast-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.shopping-fast-entry input{min-width:0;border:1px solid #e2dfd8;background:#fbfaf8;color:#142637;border-radius:14px;padding:11px 12px;font-size:12px;outline:none}.shopping-fast-entry input:focus{border-color:#b9cfc8;box-shadow:0 0 0 3px rgba(47,155,115,.08)}.shopping-fast-entry button{border:0;background:#173343;color:#fff;border-radius:14px;padding:0 14px;font-size:10px;font-weight:850;min-height:42px}
.shopping-fast-tools{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:7px;align-items:center;margin-top:7px}.shopping-fast-tools>button{min-height:36px;border:1px solid #e4e1db;background:#faf9f6;color:#4b5c64;border-radius:12px;padding:7px 10px;font-size:9px;font-weight:800}.shopping-fast-qty{display:flex;align-items:center;justify-content:flex-end;gap:5px}.shopping-fast-qty>span{font-size:8px;color:#7c8588;font-weight:850;margin-right:2px}.shopping-fast-qty button{width:30px;height:30px;border:1px solid #e2dfd8;background:#fff;border-radius:9px;color:#315f55;font-size:15px;font-weight:800}.shopping-fast-qty strong{min-width:22px;text-align:center;font-size:10px;color:#233740}
.shopping-fast-picks{margin-top:10px;padding-top:9px;border-top:1px solid #f0ede8}.shopping-fast-picks>small{display:block;font-size:7.5px;letter-spacing:.12em;color:#899193;font-weight:900;margin-bottom:6px}.shopping-fast-picks>div{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:1px}.shopping-fast-picks>div::-webkit-scrollbar{display:none}.shopping-fast-picks button{white-space:nowrap;border:1px solid #e7e4de;background:#fbfaf8;color:#40525a;border-radius:999px;min-height:32px;padding:6px 9px;font-size:9px;font-weight:800;display:flex;align-items:center;gap:5px}.shopping-fast-picks button span{font-size:14px}
.serene-shopping-page .shopping-catalog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid #e8e5df;border-radius:18px;padding:12px 14px;margin-bottom:8px}.serene-shopping-page .shopping-catalog-head h2{font-family:Georgia,'Times New Roman',serif;font-size:18px;font-weight:500;color:#142637;margin:3px 0 2px}.serene-shopping-page .shopping-catalog-head p{margin:0;color:#7b8589;font-size:9px}.serene-shopping-page .shopping-catalog-head>span{min-width:36px;height:36px;border-radius:12px;background:#edf3f0;color:#2b6d60;display:grid;place-items:center;font-size:12px;font-weight:900}
@media(max-width:560px){.serene-shopping-page .shopping-fast-add{padding:11px;border-radius:18px}.shopping-fast-head strong{font-size:18px}.shopping-fast-tools{grid-template-columns:1fr 1fr}.shopping-fast-qty{grid-column:1/-1;justify-content:flex-end;border-top:1px solid #f0ede8;padding-top:6px}.shopping-fast-qty>span{margin-right:auto}.shopping-fast-entry button{padding:0 12px}.serene-shopping-page .shopping-catalog-head{padding:10px 11px}}


/* V0.51.0 · Serene Consistency Cleanup */
.serene-plan-day-first{gap:9px!important}
.serene-plan-day-first .plan-head.clean{padding-bottom:2px!important}
.serene-plan-day-first .plan-head.clean h2{font-size:28px!important}
.plan-day-focus{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:10px;align-items:center;border:1px solid #e5e1da;background:linear-gradient(145deg,#fffdf8,#f1eee7);border-radius:23px;padding:13px 14px;box-shadow:0 8px 24px rgba(31,50,62,.04)}
.plan-day-focus-copy{text-align:center;min-width:0}.plan-day-focus-copy small{display:block;color:#947560;font-size:8px;letter-spacing:.15em;font-weight:900;text-transform:uppercase}.plan-day-focus-copy h3{font-family:Georgia,'Times New Roman',serif;color:#19313f;font-size:23px;font-weight:500;letter-spacing:-.03em;margin:2px 0}.plan-day-focus-copy p{font-size:8.5px;color:#7b878b}
.plan-day-nav{width:42px;height:42px;border-radius:14px;border:1px solid #e3dfd8;background:#fff;color:#3f5662;font-size:25px;line-height:1;box-shadow:0 4px 12px rgba(31,50,62,.035)}
.serene-plan-day-first .plan-date-strip{margin:0;padding:1px 0 5px!important;grid-auto-columns:56px!important}.serene-plan-day-first .plan-day{min-width:56px!important;padding:7px 2px!important;box-shadow:none!important}.serene-plan-day-first .plan-day small{font-size:7px!important}.serene-plan-day-first .plan-day strong{font-size:14px!important}.serene-plan-day-first .plan-day-count{min-width:15px;height:15px;line-height:15px;border-radius:999px;font-size:7px}.serene-plan-day-first .plan-day.today:not(.active){border-color:#cfd9d4!important;background:#f3f7f5!important;color:#31594f!important}
.plan-day-agenda{border:1px solid #e8e4dd;background:#fff;border-radius:22px;padding:12px;box-shadow:0 7px 22px rgba(31,50,62,.03)}.plan-day-agenda-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 1px 6px}.plan-day-agenda-head small{display:block;color:#95745f;font-size:7.5px;letter-spacing:.14em;font-weight:900}.plan-day-agenda-head strong{display:block;color:#64747b;font-size:9px;margin-top:2px}.plan-day-agenda-list{display:grid;gap:5px}.plan-day-agenda .plan-agenda-entry{margin:0!important;padding:7px 8px!important;border:1px solid #ece9e3!important;border-radius:15px!important;background:#fff!important;grid-template-columns:50px minmax(0,1fr) 14px!important;box-shadow:none!important;min-height:58px}.plan-day-agenda .plan-agenda-entry.event::before{left:-1px!important;top:8px!important;bottom:8px!important;width:3px!important}.plan-day-agenda .plan-agenda-badge{min-height:44px!important;padding:5px!important;border-radius:11px!important}.plan-day-agenda .plan-agenda-badge strong{font-size:11.5px!important}.plan-day-agenda .plan-agenda-main strong{font-size:11.5px!important}.plan-day-agenda .plan-agenda-main>small{font-size:8px!important;margin-top:2px!important}.plan-day-agenda .plan-agenda-details{margin-top:4px!important}.plan-day-agenda .plan-agenda-detail{padding:3px 6px!important;font-size:7.5px!important}.plan-day-agenda .plan-agenda-chevron{font-size:18px!important}
.plan-day-empty{display:grid;place-items:center;text-align:center;padding:21px 12px 16px;color:#758187}.plan-day-empty>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#eef3f0;color:#5f7e72;font-size:18px}.plan-day-empty strong{margin-top:7px;color:#324750;font-size:11px}.plan-day-empty small{font-size:8.5px;margin-top:2px}.plan-day-empty button{margin-top:10px;border:0;background:#1d3443;color:#fff;border-radius:12px;padding:8px 12px;font-size:9px;font-weight:850}
.plan-upcoming{border:1px solid #e8e4dd;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 6px 18px rgba(31,50,62,.025)}.plan-upcoming>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer}.plan-upcoming>summary::-webkit-details-marker{display:none}.plan-upcoming>summary>span:first-child small{display:block;color:#95745f;font-size:7.5px;letter-spacing:.14em;font-weight:900}.plan-upcoming>summary>span:first-child strong{display:block;color:#2b414b;font-size:10.5px;margin-top:2px}.plan-upcoming>summary>span:last-child{font-size:8px;color:#849094;white-space:nowrap}.plan-upcoming[open]>summary b{display:inline-block;transform:rotate(180deg)}.plan-upcoming-list{border-top:1px solid #efebe5;padding:3px 12px 8px}.plan-upcoming-day{width:100%;display:grid;grid-template-columns:58px minmax(0,1fr) 12px;gap:10px;align-items:center;text-align:left;border:0;border-top:1px solid #f0ece6;background:transparent;padding:9px 1px;color:inherit}.plan-upcoming-day:first-child{border-top:0}.plan-upcoming-day>span:first-child small{display:block;text-transform:uppercase;color:#967862;font-size:7px;font-weight:850}.plan-upcoming-day>span:first-child strong{display:block;color:#263e49;font-size:9px;margin-top:2px}.plan-upcoming-day>span:nth-child(2){min-width:0}.plan-upcoming-day>span:nth-child(2)>strong{display:block;color:#354b55;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-upcoming-day>span:nth-child(2)>small{display:block;color:#879195;font-size:7.5px;margin-top:2px}.plan-upcoming-day>b{color:#aaa49d;font-size:17px}.plan-upcoming-empty{padding:14px 2px;color:#858f92;font-size:9px}
.serene-plan-day-first .plan-calendar-filters,.serene-plan-day-first .plan-person-filters{margin:0!important;padding-top:0!important;padding-bottom:2px!important}.serene-plan-day-first .plan-calendar-filters button,.serene-plan-day-first .plan-person-filters button{padding:6px 10px!important;font-size:8px!important}.serene-plan-day-first .plan-suggestions{margin-top:0!important}.serene-plan-day-first .plan-settings{margin-top:0!important}
@media(max-width:560px){.serene-plan-day-first .plan-head.clean{display:grid!important;gap:6px!important}.serene-plan-day-first .plan-head-buttons{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;width:100%!important}.serene-plan-day-first .plan-today-button{padding:0 10px!important;min-height:40px!important}.serene-plan-day-first .plan-date-picker{min-height:40px!important}.serene-plan-day-first .plan-date-picker input{min-width:0!important;width:100%!important;font-size:8px!important}.serene-plan-day-first .plan-add-button{min-height:40px!important;padding:0 11px!important}.plan-day-focus{grid-template-columns:38px minmax(0,1fr) 38px;padding:10px 11px;border-radius:20px}.plan-day-nav{width:38px;height:38px;border-radius:13px}.plan-day-focus-copy h3{font-size:21px}.serene-plan-day-first .plan-date-strip{grid-auto-columns:52px!important}.serene-plan-day-first .plan-day{min-width:52px!important;border-radius:13px!important}.plan-day-agenda{padding:10px;border-radius:19px}.plan-day-agenda .plan-agenda-entry{grid-template-columns:46px minmax(0,1fr) 12px!important;min-height:54px!important;padding:6px 7px!important}.plan-day-agenda .plan-agenda-badge{min-height:40px!important}.plan-day-agenda .plan-agenda-details{display:none!important}.plan-day-agenda .plan-agenda-main strong{font-size:11px!important}.plan-day-agenda .plan-agenda-main>small{font-size:7.7px!important}.plan-upcoming>summary{padding:11px 12px}.plan-upcoming-list{padding-left:10px;padding-right:10px}}

/* ==========================================================================
   ŠNOFI 0.51.1 — PRIVATE MODULES + MOBILE QA
   ========================================================================== */
.private-access-card{border:1px solid #e8e4dd!important;background:#fffdfa!important;border-radius:20px!important}.private-access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}.private-access-toggle{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;text-align:left;border:1px solid #e5e1da;background:#faf9f6;border-radius:16px;padding:10px 11px;color:#334851}.private-access-toggle>span:first-child{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#efede8;font-size:17px}.private-access-toggle>span:nth-child(2){display:grid;gap:2px}.private-access-toggle strong{font-size:10.5px}.private-access-toggle small{font-size:8px;color:#7f8a8e}.private-access-toggle b{font-size:7.5px;letter-spacing:.09em;color:#9a938c;background:#efede8;border-radius:999px;padding:5px 7px}.private-access-toggle.enabled{border-color:#cfe0d8;background:#f5faf7}.private-access-toggle.enabled>span:first-child{background:#e3f1e9;color:#2d7659}.private-access-toggle.enabled b{background:#dceee4;color:#2b7556}

.cycle-page{gap:10px!important}.cycle-hero-card.serene-private{background:linear-gradient(145deg,#fffdf9,#f4eee8)!important;color:#18303e!important;border:1px solid #e8e0d8!important;border-radius:23px!important;padding:18px 19px!important;box-shadow:0 8px 25px rgba(39,50,59,.045)!important}.cycle-hero-card.serene-private small{color:#9a6f7d!important}.cycle-hero-card.serene-private h2{font-family:Georgia,'Times New Roman',serif;font-size:25px;font-weight:500;letter-spacing:-.03em;margin:3px 0 4px}.cycle-hero-card.serene-private p{color:#738086!important;font-size:10px!important}.cycle-hero-card.serene-private .cycle-hero-icon{background:#f0dfe5!important;color:#995e72!important;width:50px!important;height:50px!important;border-radius:16px!important}.cycle-summary-grid{gap:7px!important}.cycle-summary-grid article{border:1px solid #ebe6e0!important;background:#fff!important;border-radius:16px!important;padding:12px!important;min-height:76px!important}.cycle-summary-grid small{font-size:7.5px!important}.cycle-summary-grid strong{font-size:11.5px!important;margin-top:6px!important}.cycle-calendar-card{border:1px solid #ebe6e0!important;border-radius:20px!important;background:#fff!important;box-shadow:0 6px 20px rgba(39,50,59,.03)!important}.cycle-day{min-width:0;border-color:#ece8e2!important;background:#fff!important}.cycle-day.period{background:#f2d7df!important;border-color:#e7beca!important}.cycle-day.fertile:not(.period){background:#e9f2ed!important;border-color:#d5e5dc!important}.cycle-day.predicted:not(.period){box-shadow:inset 0 0 0 1.5px #b7798c!important}.cycle-log-editor{background:#faf8f5!important;border-color:#e9e3dd!important}.cycle-transfer-card{background:#fff!important;border-color:#e9e4de!important}.cycle-disclaimer{background:#f7f5f1;border-radius:12px;padding:9px 11px!important}.cycle-private-label{color:#9d6b7c!important}

.wardrobe-hero{background:linear-gradient(145deg,#fffdf9,#f3f0e9)!important;border-color:#e8e3db!important;border-radius:23px!important;box-shadow:0 8px 25px rgba(39,50,59,.04)!important}.wardrobe-hero h2{font-family:Georgia,'Times New Roman',serif;font-weight:500;color:#18303e!important}.wardrobe-hero p{font-size:10px!important;color:#748187!important}.wardrobe-actions{gap:8px!important;margin-bottom:12px!important}.wardrobe-item-card{border-color:#e9e4dd!important;border-radius:16px!important;box-shadow:0 5px 17px rgba(39,50,59,.03)!important}.wardrobe-item-card>div{padding:9px!important}.wardrobe-item-card strong{font-size:12px!important}.wardrobe-item-card small,.wardrobe-item-card span,.wardrobe-item-card em{font-size:9px!important}.wardrobe-group{margin:14px 0!important}.wardrobe-group .section-heading{margin-bottom:7px!important}.wardrobe-draft input,.wardrobe-draft select,.wardrobe-draft textarea,.wardrobe-upload-body textarea{border-color:#e4dfd8!important;border-radius:13px!important}.wardrobe-upload-body>input[type=file]{border-color:#d8d2ca!important;background:#faf8f4!important}

/* Mobile QA: keep all primary views inside the viewport and above the PWA safe area. */
html,body{max-width:100%;overflow-x:hidden}.app-shell,#app{min-width:0;max-width:100%}.bottom-nav{max-width:calc(100vw - 24px)!important;padding-bottom:max(8px,env(safe-area-inset-bottom))!important}.nav-item{min-width:0!important}.nav-item small{max-width:100%;overflow:hidden;text-overflow:ellipsis}.page-card,.serene-home,.serene-plan-page,.serene-shopping-page,.serene-family-page,.serene-weather-page,.settings-page,.cycle-page{min-width:0;max-width:100%}.edit-sheet{max-height:calc(100dvh - max(18px,env(safe-area-inset-top)) - max(18px,env(safe-area-inset-bottom)))!important;overflow:auto!important}.cycle-calendar,.cycle-weekdays{min-width:0!important}.cycle-day{font-size:11px!important}.wardrobe-grid{min-width:0!important}
@media(max-width:430px){.private-access-grid{grid-template-columns:1fr}.cycle-form-grid{grid-template-columns:1fr!important}.cycle-form-grid>*{grid-column:1!important}.cycle-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cycle-calendar,.cycle-weekdays{gap:3px!important}.cycle-day{border-radius:9px!important;font-size:10.5px!important}.wardrobe-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.wardrobe-hero{padding:16px!important}.wardrobe-hero>span{font-size:34px!important}.wardrobe-actions{display:grid!important;grid-template-columns:1fr 1fr}.wardrobe-actions>*{min-width:0!important;padding-left:8px!important;padding-right:8px!important}.bottom-nav{left:12px!important;right:12px!important;width:auto!important;transform:none!important}}
@media(max-width:360px){.cycle-summary-grid{grid-template-columns:1fr!important}.cycle-weekdays,.cycle-calendar{gap:2px!important}.cycle-day{font-size:10px!important;border-radius:8px!important}.wardrobe-actions{grid-template-columns:1fr!important}.settings-row,.family-home-tool{grid-template-columns:34px minmax(0,1fr) 14px!important}.bottom-nav{left:8px!important;right:8px!important;max-width:calc(100vw - 16px)!important}.nav-item small{font-size:7px!important}}


/* V0.51.2 - final mobile polish and Serene boot shell */
.serene-boot-loading{gap:11px!important;min-height:65vh}.serene-boot-hero{min-height:170px;border-radius:0 0 26px 26px;padding:7px 4px 17px;display:grid;align-content:space-between;background:linear-gradient(180deg,#f7f3ed,#f8f5f0);overflow:hidden}.serene-boot-brand{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:10px}.serene-boot-brand span{width:34px;height:34px;border-radius:50%;background:#e8e4dd;animation:snofiPulse 1.2s ease-in-out infinite}.serene-boot-brand b{height:14px;width:92px;justify-self:center;border-radius:999px;background:#e4dfd7;animation:snofiPulse 1.2s ease-in-out infinite}.serene-boot-copy small{display:block;width:146px;height:10px;border-radius:999px;background:#e6e1d9;color:transparent;margin-bottom:12px}.serene-boot-copy h2{font-family:Georgia,'Times New Roman',serif!important;font-weight:500;font-size:30px;color:#213b49;letter-spacing:-.04em}.serene-boot-copy p{font-size:10px;color:#869095;margin-top:5px}.serene-boot-card{height:82px;border:1px solid #ebe7e1;background:linear-gradient(100deg,#fff 25%,#f7f5f1 45%,#fff 65%);background-size:220% 100%;border-radius:20px;animation:snofiShimmer 1.4s linear infinite}.serene-boot-card.wide{height:72px}.serene-boot-lines{border:1px solid #ebe7e1;background:#fff;border-radius:20px;padding:14px;display:grid;gap:11px}.serene-boot-lines span{display:block;height:14px;border-radius:999px;background:linear-gradient(100deg,#efede8 25%,#f8f6f3 45%,#efede8 65%);background-size:220% 100%;animation:snofiShimmer 1.4s linear infinite}.serene-boot-lines span:nth-child(2){width:84%}.serene-boot-lines span:nth-child(3){width:66%}@keyframes snofiShimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}@keyframes snofiPulse{0%,100%{opacity:.65}50%{opacity:1}}
@media(max-width:430px){.serene-boot-loading{gap:9px}.serene-boot-hero{min-height:156px}.serene-boot-copy h2{font-size:27px}.serene-boot-card{height:74px}.serene-boot-card.wide{height:66px}.smart-sheet,.edit-sheet,.alert-sheet{border-radius:24px 24px 0 0!important}.smart-mode-row{gap:5px}.smart-mode{min-width:0;padding-left:5px;padding-right:5px}.smart-capture-actions>*{min-width:0}.serene-ai-modes>button,.shopping-fast-tools>button{min-width:0}}
@media(max-width:360px){.serene-boot-copy h2{font-size:25px}.serene-boot-brand{grid-template-columns:30px 1fr 30px}.serene-boot-brand span{width:30px;height:30px}.smart-sheet-head h2,.edit-sheet header h2{font-size:22px!important}.smart-mode{font-size:8px!important}.smart-capture-actions{grid-template-columns:1fr!important}.smart-primary{grid-column:auto!important}}


/* V0.51.4 - readable upcoming 7-day Plan */
.plan-upcoming{border:1px solid #e5e0d8;background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 7px 22px rgba(31,50,62,.035)}
.plan-upcoming>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px;cursor:pointer;background:#fff}
.plan-upcoming>summary::-webkit-details-marker{display:none}
.plan-upcoming>summary>span:first-child small{display:block;color:#95745f;font-size:8px;letter-spacing:.15em;font-weight:900}
.plan-upcoming>summary>span:first-child strong{display:block;color:#233b47;font-size:12px;margin-top:2px}
.plan-upcoming>summary>span:last-child{display:grid;place-items:center;color:#9a948d;font-size:15px}
.plan-upcoming[open]>summary b{display:inline-block;transform:rotate(180deg)}
.plan-upcoming-list{border-top:1px solid #eee9e2;padding:3px 18px 10px}
.plan-upcoming-card{width:100%;display:grid;grid-template-columns:84px minmax(0,1fr) 18px;gap:14px;align-items:start;text-align:left;border:0;border-top:1px solid #eee9e2;background:transparent;padding:14px 0;color:inherit;cursor:pointer}
.plan-upcoming-card:first-child{border-top:0}
.plan-upcoming-date{padding-top:1px}
.plan-upcoming-date small{display:block;color:#9a745c;font-size:9px;font-weight:900;letter-spacing:.08em;line-height:1.2}
.plan-upcoming-date strong{display:block;color:#263e49;font-size:11px;margin-top:4px;line-height:1.2;text-transform:uppercase}
.plan-upcoming-events{display:grid;gap:8px;min-width:0}
.plan-upcoming-event{display:grid;grid-template-columns:66px minmax(0,1fr);gap:10px;align-items:baseline;min-width:0}
.plan-upcoming-event>span{font-size:9px;font-weight:900;color:#6f7d82;letter-spacing:.025em;white-space:nowrap}
.plan-upcoming-event>strong{font-size:11px;line-height:1.32;color:#263b45;font-weight:750;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.plan-upcoming-more{display:block;margin-top:1px;font-size:9px;font-weight:800;color:#8d7d72}
.plan-upcoming-card>b{align-self:center;color:#a39c95;font-size:19px;font-weight:500}
.plan-upcoming-card:hover{background:#fbfaf7}
.plan-upcoming-empty{padding:16px 2px;color:#858f92;font-size:10px}
@media(max-width:560px){.plan-upcoming>summary{padding:13px 14px}.plan-upcoming-list{padding:2px 14px 9px}.plan-upcoming-card{grid-template-columns:68px minmax(0,1fr) 14px;gap:10px;padding:13px 0}.plan-upcoming-date small{font-size:8px}.plan-upcoming-date strong{font-size:10px}.plan-upcoming-event{grid-template-columns:59px minmax(0,1fr);gap:8px}.plan-upcoming-event>span{font-size:8.5px}.plan-upcoming-event>strong{font-size:10.5px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.plan-upcoming-more{font-size:8.5px}.plan-upcoming-card>b{font-size:17px}}
@media(max-width:360px){.plan-upcoming-card{grid-template-columns:61px minmax(0,1fr) 12px;gap:8px}.plan-upcoming-event{grid-template-columns:54px minmax(0,1fr);gap:7px}.plan-upcoming-date strong{font-size:9.5px}.plan-upcoming-event>span{font-size:8px}.plan-upcoming-event>strong{font-size:10px}}


/* v0.53.1 — mobile/PWA accessibility + motion safety */
.app-shell{min-height:100dvh}
.skip-link{position:fixed;z-index:200;left:12px;top:calc(env(safe-area-inset-top) + 8px);transform:translateY(-180%);background:#17181b;color:#fff;border-radius:12px;padding:10px 14px;font-size:13px;font-weight:850;box-shadow:0 10px 28px rgba(0,0,0,.2)}
.skip-link:focus{transform:translateY(0)}
:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid rgba(216,94,63,.38);outline-offset:3px}
.bottom-nav .nav-item{min-height:48px;touch-action:manipulation}
.edit-sheet[role="dialog"],.smart-sheet[role="dialog"],.alert-sheet[role="dialog"]{outline:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.serene-boot-brand span,.serene-boot-brand b,.serene-boot-card,.serene-boot-lines span,.loader{animation:none!important}}

.wellness-page{--wellness-ink:#243443;--wellness-muted:#71808b;--wellness-line:#e4e7e2;--wellness-soft:#edf3ef;max-width:760px;margin:0 auto;display:grid;gap:14px;padding-bottom:26px;color:var(--wellness-ink)}
.wellness-hero{min-height:220px;border-radius:30px;padding:24px;background:linear-gradient(145deg,#253845,#344d59 58%,#627a74);color:#fff;display:flex;align-items:flex-end;justify-content:space-between;gap:22px;box-shadow:0 16px 38px rgba(36,52,67,.14);overflow:hidden;position:relative}
.wellness-hero:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-75px;top:-105px;background:rgba(255,255,255,.07)}
.wellness-private-pill{display:inline-flex;align-items:center;gap:5px;font-size:9px;letter-spacing:.11em;font-weight:850;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);padding:7px 10px;border-radius:999px}.wellness-hero p{font-size:12px;color:#cbd7d5;margin:24px 0 6px}.wellness-hero h2{font-size:35px;line-height:1.02;letter-spacing:-.05em;font-weight:450}.wellness-hero h2 strong{font-weight:800}.wellness-goal-ring{--wellness-progress:0deg;width:94px;height:94px;border-radius:50%;flex:0 0 auto;background:conic-gradient(#d5e8c7 var(--wellness-progress),rgba(255,255,255,.13) 0);display:grid;place-items:center;position:relative}.wellness-goal-ring:after{content:"";position:absolute;inset:8px;border-radius:50%;background:#344b55}.wellness-goal-ring span,.wellness-goal-ring small{position:relative;z-index:1;grid-area:1/1}.wellness-goal-ring span{font-size:23px;font-weight:850;transform:translateY(-7px)}.wellness-goal-ring small{font-size:9px;color:#c7d5d3;transform:translateY(13px)}
.wellness-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.wellness-metrics article{background:#fff;border:1px solid var(--wellness-line);border-radius:20px;padding:15px;min-width:0}.wellness-metrics small{display:block;font-size:8px;letter-spacing:.12em;color:#7e8a91;font-weight:850}.wellness-metrics strong{display:block;font-size:22px;letter-spacing:-.04em;margin-top:6px;white-space:nowrap}.wellness-metrics strong em{font-style:normal;font-size:10px;color:#819097;margin-left:2px}.wellness-metrics span{display:block;font-size:9px;color:#8b959b;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wellness-card{background:#fff;border:1px solid var(--wellness-line);border-radius:24px;padding:18px;box-shadow:0 8px 24px rgba(36,52,67,.035)}.wellness-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:13px}.wellness-card-head small{display:block;font-size:8px;letter-spacing:.13em;font-weight:850;color:#7d8d91}.wellness-card-head h3{font-size:19px;letter-spacing:-.025em;margin-top:4px}.wellness-card-head>span{display:grid;place-items:center;min-width:40px;height:40px;padding:0 10px;border-radius:13px;background:#f0f4f1;color:#536c63;font-size:13px;font-weight:850}
.wellness-today form{display:grid;gap:9px}.wellness-task{display:grid;grid-template-columns:auto 38px 1fr auto;gap:10px;align-items:center;border:1px solid #e8ebe7;background:#fbfcfa;border-radius:17px;padding:12px;cursor:pointer}.wellness-task input{position:absolute;opacity:0;pointer-events:none}.wellness-task-icon{width:38px;height:38px;border-radius:12px;background:#eef2ef;color:#587067;display:grid;place-items:center;font-size:18px;font-weight:800}.wellness-task strong{display:block;font-size:12px;color:#31434d}.wellness-task small{display:block;font-size:9px;color:#7f8b90;line-height:1.4;margin-top:2px}.wellness-task>b{font-size:17px;color:#a9b3b0}.wellness-task.done{background:#eef5ef;border-color:#d4e3d7;text-decoration:none;opacity:1}.wellness-task.done .wellness-task-icon{background:#d8ead9;color:#42644b}.wellness-task.done>b{color:#4f7359}
.wellness-checkin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:5px}.wellness-checkin-grid label{font-size:9px;font-weight:750;color:#6f7d83;display:grid;gap:5px}.wellness-checkin-grid input{width:100%;min-width:0;border:1px solid #dde3df;background:#fff;border-radius:12px;padding:10px 11px;color:#263943;outline:none}.wellness-checkin-grid input:focus{border-color:#91aaa0;box-shadow:0 0 0 3px rgba(89,116,104,.08)}.wellness-save{width:100%;border:0;border-radius:14px;background:#2e4651;color:#fff;padding:13px 15px;font-size:11px;font-weight:850;margin-top:3px}
.wellness-grid-two{display:grid;grid-template-columns:1.1fr .9fr;gap:10px}.wellness-coach{background:linear-gradient(145deg,#f1f5ed,#fff)}.wellness-coach p{font-size:13px;line-height:1.55;color:#3d5057}.wellness-safety{display:block;border-top:1px solid #e1e7df;margin-top:13px;padding-top:11px;font-size:9px;line-height:1.45;color:#7b898b}.wellness-week-bars{height:93px;display:flex;align-items:flex-end;justify-content:space-between;gap:5px;padding-top:5px}.wellness-week-bar{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px}.wellness-week-bar span{width:min(23px,80%);min-height:9px;border-radius:7px 7px 4px 4px;background:linear-gradient(180deg,#738e82,#b4c7b8)}.wellness-week-bar small{font-size:8px;color:#859096}.wellness-empty{padding:25px 14px;text-align:center;border:1px dashed #dfe5e0;border-radius:16px;color:#839094;font-size:10px}
.wellness-measure summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px}.wellness-measure summary::-webkit-details-marker{display:none}.wellness-measure summary small{display:block;font-size:8px;letter-spacing:.13em;color:#7d8d91;font-weight:850}.wellness-measure summary strong{display:block;font-size:13px;margin-top:4px}.wellness-measure summary b{font-size:20px;color:#7c8d89}.wellness-measure form{margin-top:15px;padding-top:14px;border-top:1px solid #e7eae6}.wellness-measure .wellness-checkin-grid{grid-template-columns:repeat(5,1fr)}.wellness-privacy-note{font-size:9px;line-height:1.45;color:#849092;margin-top:9px}


@media(max-width:620px){.wellness-hero{min-height:202px;padding:20px}.wellness-hero h2{font-size:30px}.wellness-goal-ring{width:82px;height:82px}.wellness-metrics{grid-template-columns:1fr 1fr}.wellness-metrics article:last-child{grid-column:1/-1}.wellness-grid-two{grid-template-columns:1fr}.wellness-checkin-grid,.wellness-measure .wellness-checkin-grid{grid-template-columns:1fr 1fr}.wellness-task{grid-template-columns:36px minmax(0,1fr) auto}.wellness-task input{display:none}.wellness-task-icon{grid-column:1}.wellness-task>span:nth-of-type(2){grid-column:2}.wellness-task>b{grid-column:3}}
@media(max-width:370px){.wellness-hero{align-items:flex-start;flex-direction:column}.wellness-goal-ring{position:absolute;right:18px;bottom:18px}.wellness-hero h2{padding-right:86px}.wellness-checkin-grid,.wellness-measure .wellness-checkin-grid{grid-template-columns:1fr}.wellness-metrics strong{font-size:19px}}


/* ŠNOFI 0.58.5 — personal hub */
.bottom-nav .nav-personal-main .personal-nav-avatar{overflow:hidden;display:grid!important;place-items:center!important}
.bottom-nav .nav-personal-main .personal-nav-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
.bottom-nav .nav-personal-main .personal-nav-avatar b{width:100%;height:100%;border-radius:50%;display:grid;place-items:center;font-size:20px;font-weight:850;background:#334b58;color:#fff}
.personal-hub-page{max-width:760px;margin:0 auto;display:grid;gap:14px;padding-bottom:26px}
.personal-hub-hero{min-height:170px;border:1px solid #e2e7e3;border-radius:28px;padding:22px;background:linear-gradient(145deg,#f8faf7,#eef4f0);display:flex;align-items:center;gap:18px;overflow:hidden;position:relative}
.personal-hub-hero:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-80px;top:-95px;background:#dce9e0aa}
.personal-hub-avatar{width:82px!important;height:82px!important;flex:0 0 82px;border:5px solid #fff;box-shadow:0 8px 26px rgba(36,52,67,.12);z-index:1}
.personal-hub-hero>div{min-width:0;z-index:1}.personal-hub-hero small{font-size:8px;letter-spacing:.14em;font-weight:900;color:#6d8179}.personal-hub-hero h2{font-size:28px;letter-spacing:-.04em;color:#263a45;margin:5px 0 7px}.personal-hub-hero p{font-size:11px;line-height:1.5;color:#738087;max-width:430px}
.personal-hub-section{background:#fff;border:1px solid #e5e8e4;border-radius:24px;padding:18px}.personal-module-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.personal-module-card{appearance:none;border:1px solid #e4e8e4;background:#fbfcfa;border-radius:20px;padding:15px;display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:11px;text-align:left;color:#2c3f48;min-height:82px;cursor:pointer}.personal-module-card:active{transform:scale(.985)}
.personal-module-icon{width:46px;height:46px;border-radius:15px;background:#edf2ef;display:grid;place-items:center;font-size:21px;color:#526d63}.personal-module-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.personal-module-copy{min-width:0}.personal-module-copy strong{display:block;font-size:13px}.personal-module-copy small{display:block;font-size:9px;line-height:1.45;color:#7f8b90;margin-top:3px}.personal-module-card>svg{width:16px;height:16px;fill:none;stroke:#8e999d;stroke-width:1.8}.personal-module-card>em{font-style:normal;font-size:8px;font-weight:850;border-radius:999px;padding:6px 8px;background:#eef1ef;color:#7b8783}
.personal-module-card.featured{background:linear-gradient(145deg,#eef5ef,#fbfdfb);border-color:#d7e4d9}.personal-module-card.featured .personal-module-icon{background:#dcecdf;color:#496c52}.personal-module-card.ai .personal-module-icon{background:#e9eef1;color:#314d5d}.personal-module-card.wardrobe .personal-module-icon{background:#f3ebee}.personal-module-card.cycle .personal-module-icon{background:#f6edef}.personal-module-card.oskar .personal-module-icon{background:#f7f0d8;color:#7b6631}.personal-module-card.training.is-soon{opacity:.78}
.family-core-page{max-width:760px;margin:0 auto;display:grid;gap:14px;padding-bottom:26px}.family-core-hero{border-radius:28px;padding:22px;background:linear-gradient(145deg,#253845,#3d5660);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:18px}.family-core-hero small{font-size:8px;letter-spacing:.14em;font-weight:900;color:#c7d5d2}.family-core-hero h2{font-size:28px;letter-spacing:-.04em;margin:5px 0}.family-core-hero p{font-size:11px;color:#d3ddda;line-height:1.45}.family-core-hero>span{width:58px;height:58px;border-radius:18px;background:#ffffff18;display:grid;place-items:center;font-size:26px}.family-core-tool.readonly{cursor:default}.family-core-tool.readonly:active{transform:none}
@media(max-width:620px){.personal-module-grid{grid-template-columns:1fr}.personal-hub-hero{min-height:150px;padding:18px}.personal-hub-avatar{width:68px!important;height:68px!important;flex-basis:68px}.personal-hub-hero h2{font-size:24px}}
@media(max-width:380px){.personal-hub-hero{align-items:flex-start}.personal-hub-avatar{width:58px!important;height:58px!important;flex-basis:58px}.personal-hub-hero h2{font-size:21px}.personal-module-card{grid-template-columns:42px minmax(0,1fr) auto;padding:12px}.personal-module-icon{width:42px;height:42px}}

/* v0.58.5 - Personal Hub nav refinement: avatar-only, no halo, same baseline as peers. */
.bottom-nav{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
}
.bottom-nav .nav-personal-main{
  width:auto!important;
  height:auto!important;
  min-height:48px!important;
  margin:0!important;
  padding:7px 3px!important;
  align-self:stretch!important;
  justify-self:stretch!important;
  transform:none!important;
  border-radius:18px!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#5b6c76!important;
}
.bottom-nav .nav-personal-main.active{
  color:#182f3e!important;
  background:#eef2f1!important;
  box-shadow:none!important;
}
.bottom-nav .nav-personal-main>span,
body:has(.serene-home) .bottom-nav .nav-personal-main>span,
body:has(.serene-ai-page) .bottom-nav .nav-personal-main>span,
body:has(.serene-weather-page) .bottom-nav .nav-personal-main>span{
  width:29px!important;
  height:29px!important;
  margin:0!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
  overflow:hidden!important;
}
.bottom-nav .nav-personal-main .personal-nav-avatar img{
  width:29px!important;
  height:29px!important;
  border:0!important;
  border-radius:50%!important;
  box-shadow:none!important;
  object-fit:cover!important;
}
.bottom-nav .nav-personal-main .personal-nav-avatar b{
  width:29px!important;
  height:29px!important;
  border:0!important;
  box-shadow:none!important;
  font-size:13px!important;
}
.bottom-nav .nav-personal-main small{display:none!important;}

/* ŠNOFI 0.58.5 — Lifestyle Hub V2 */
.wellness-v2{--wv2-ink:#20333e;--wv2-muted:#77848a;--wv2-line:#e4e8e3;--wv2-soft:#f2f5f1;--wv2-accent:#456f60;gap:13px}
.wellness-v2-hero{min-height:206px;border-radius:29px;padding:24px;background:linear-gradient(145deg,#233946,#38535a 58%,#6d8178);color:#fff;display:flex;justify-content:space-between;align-items:flex-end;gap:18px;position:relative;overflow:hidden;box-shadow:0 14px 34px rgba(31,49,60,.12)}
.wellness-v2-hero:after{content:"";position:absolute;width:210px;height:210px;border-radius:50%;right:-72px;top:-112px;background:rgba(255,255,255,.07)}
.wellness-v2-hero>div:first-child{position:relative;z-index:1;min-width:0}.wellness-v2-hero>div>span{display:inline-flex;font-size:8px;letter-spacing:.12em;font-weight:900;color:#d4e0dc;background:#ffffff12;border:1px solid #ffffff18;border-radius:999px;padding:6px 9px}.wellness-v2-hero>div>small{display:block;margin-top:19px;font-size:10px;color:#c9d7d3}.wellness-v2-hero h2{font-size:34px;line-height:1.03;letter-spacing:-.05em;font-weight:450;margin-top:5px}.wellness-v2-hero h2 strong{font-weight:800}.wellness-v2-hero p{font-size:10px;color:#d3dedb;margin-top:8px}
.wellness-v2-ring{--p:0deg;width:92px;height:92px;border-radius:50%;flex:0 0 auto;background:conic-gradient(#dcebcf var(--p),rgba(255,255,255,.14) 0);display:grid;place-items:center;position:relative;z-index:1}.wellness-v2-ring:after{content:"";position:absolute;inset:8px;border-radius:50%;background:#3d555c}.wellness-v2-ring strong,.wellness-v2-ring small{position:relative;z-index:1;grid-area:1/1}.wellness-v2-ring strong{font-size:21px;transform:translateY(-7px)}.wellness-v2-ring small{font-size:8px;color:#c8d5d1;transform:translateY(13px)}
.wellness-v2-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;padding:5px;background:#ecefeb;border-radius:18px;position:sticky;top:74px;z-index:15;box-shadow:0 4px 16px rgba(35,52,62,.04)}.wellness-v2-tabs button{min-width:0;border:0;background:transparent;border-radius:13px;padding:10px 5px;color:#77827f;font-size:9px;font-weight:850}.wellness-v2-tabs button.active{background:#fff;color:#27493f;box-shadow:0 2px 9px rgba(35,52,62,.06)}
.wellness-v2-panel{background:#fff;border:1px solid var(--wv2-line);border-radius:23px;padding:17px;color:var(--wv2-ink)}.wellness-v2-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.wellness-v2-panel-head small,.wellness-v2-panel>small{display:block;font-size:8px;letter-spacing:.12em;font-weight:900;color:#71867d}.wellness-v2-panel-head h3,.wellness-v2-panel h3{font-size:18px;color:#263b44;margin-top:3px;letter-spacing:-.02em}.wellness-v2-panel-head p{font-size:9px;color:#7d898e;margin-top:4px}.wellness-v2-panel-head>b{min-width:44px;height:44px;border-radius:14px;background:#eef3ef;color:#4f7467;display:grid;place-items:center;font-size:12px}
.wellness-v2-task-list{display:grid;gap:8px}.wellness-v2-task{display:grid;grid-template-columns:38px minmax(0,1fr) 26px;gap:10px;align-items:center;border:1px solid #e7eae5;background:#fbfcfa;border-radius:17px;padding:11px 12px;cursor:pointer}.wellness-v2-task input{position:absolute;opacity:0;pointer-events:none}.wellness-v2-task-icon{width:38px;height:38px;border-radius:13px;background:#edf2ef;display:grid;place-items:center;color:#557468;font-size:16px}.wellness-v2-task strong{display:block;font-size:10.5px;color:#2a3d45}.wellness-v2-task small{display:block;font-size:8.5px;line-height:1.4;color:#818b8d;margin-top:2px}.wellness-v2-task>b{font-size:14px;color:#a0aaa6;text-align:center}.wellness-v2-task.done{background:#f3f8f4;border-color:#dbe8de}.wellness-v2-task.done .wellness-v2-task-icon{background:#dfeee3;color:#467059}.wellness-v2-task.done>b{color:#4e7c62}
.wellness-v2-checkin{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.wellness-v2-checkin label,.wellness-v2-form-grid label,.wellness-v2-note{display:grid;gap:5px;font-size:8.5px;font-weight:800;color:#718087}.wellness-v2-checkin input,.wellness-v2-form-grid input,.wellness-v2-form-grid select,.wellness-v2-form-grid textarea,.wellness-v2-note textarea{width:100%;border:1px solid #dfe5df;background:#fbfcfa;border-radius:12px;padding:10px 11px;color:#273941;font:inherit;font-size:10px;outline:none}.wellness-v2-note{margin-top:9px}.wellness-v2-note textarea,.wellness-v2-form-grid textarea{min-height:76px;resize:vertical}.wellness-v2-primary{border:0;border-radius:13px;background:#2f5b4f;color:#fff;min-height:42px;padding:10px 14px;font-size:9.5px;font-weight:850;margin-top:10px}.wellness-v2-link{border:0;background:transparent;color:#60716d;font-size:9px;font-weight:800;padding:8px}.wellness-v2-link.danger{color:#9a5a53}
.wellness-v2-coach{margin-top:12px;border-radius:17px;background:linear-gradient(145deg,#edf4f0,#f8faf8);padding:13px;display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center}.wellness-v2-coach>span{width:36px;height:36px;border-radius:12px;background:#dfeae4;color:#416859;display:grid;place-items:center}.wellness-v2-coach small{display:block;font-size:7.5px;letter-spacing:.1em;font-weight:900;color:#688075}.wellness-v2-coach strong{display:block;font-size:9.5px;line-height:1.45;color:#314940;margin-top:2px;font-weight:750}
.wellness-v2-progress-grid,.wellness-v2-training-grid,.wellness-v2-nutrition-grid,.wellness-v2-measure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.wellness-v2-span{grid-column:1/-1}.wellness-v2-metric{border:1px solid var(--wv2-line);background:#fff;border-radius:20px;padding:15px}.wellness-v2-metric small{display:block;font-size:7.5px;letter-spacing:.12em;font-weight:900;color:#7b8984}.wellness-v2-metric strong{display:block;font-size:21px;color:#263a43;margin-top:7px}.wellness-v2-metric strong em{font-style:normal;font-size:9px;color:#7c898e;font-weight:700}.wellness-v2-metric span{display:block;margin-top:4px;font-size:8px;color:#858f91}.wellness-v2-review{font-size:10px;line-height:1.55;color:#64736f;margin-bottom:10px}
.wellness-v2-bars{height:86px;display:flex;gap:8px;align-items:flex-end;padding-top:4px}.wellness-v2-bars>div{flex:1;display:grid;justify-items:center;align-items:end;gap:5px;height:100%}.wellness-v2-bars span{display:block;width:100%;max-width:24px;min-height:10px;border-radius:8px 8px 4px 4px;background:linear-gradient(#729987,#c0d8cb)}.wellness-v2-bars small{font-size:7.5px;color:#89938f}.wellness-v2-empty{padding:14px 0;color:#84908d;font-size:9px}
.wellness-v2-history{display:grid}.wellness-v2-history>div{display:grid;grid-template-columns:100px 1fr 1fr auto;gap:8px;align-items:center;padding:9px 0;border-top:1px solid #edf0ec;font-size:8.5px}.wellness-v2-history>div:first-child{border-top:0}.wellness-v2-history time{color:#65756f;font-weight:800}.wellness-v2-history span{color:#7a8587}.wellness-v2-history b{color:#405d52;font-size:8.5px;white-space:nowrap}.wellness-v2-history.compact>div{grid-template-columns:72px 1fr 1fr auto}
.wellness-v2-coach-card{background:linear-gradient(145deg,#253b46,#3e5a5e);color:#fff}.wellness-v2-coach-card small{color:#c6d6d0}.wellness-v2-coach-card h3{font-size:23px;color:#fff;margin:5px 0 8px}.wellness-v2-coach-card p{font-size:10px;line-height:1.55;color:#d9e3df}.wellness-v2-coach-card>span{display:block;margin-top:12px;font-size:8px;color:#b7c9c3}
.wellness-v2-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.wellness-v2-form-wide{grid-column:1/-1}.wellness-v2-form-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.wellness-v2-form-actions .wellness-v2-primary{margin-top:0}.wellness-v2-principles{background:#faf8f2}.wellness-v2-principles p{font-size:10px;line-height:1.55;color:#776f62;margin-top:7px}.wellness-v2-privacy{font-size:8px;line-height:1.5;color:#87918d;margin-top:10px}.wellness-v2-safety{font-size:7.5px;line-height:1.45;color:#8b9390;padding:0 4px 8px;text-align:center}
@media(max-width:620px){.wellness-v2-hero{min-height:190px;padding:20px}.wellness-v2-hero h2{font-size:29px}.wellness-v2-ring{width:80px;height:80px}.wellness-v2-tabs{top:68px;gap:3px}.wellness-v2-tabs button{font-size:8px;padding:9px 3px}.wellness-v2-checkin{grid-template-columns:1fr 1fr}.wellness-v2-progress-grid,.wellness-v2-training-grid,.wellness-v2-nutrition-grid,.wellness-v2-measure-grid{grid-template-columns:1fr}.wellness-v2-span{grid-column:1}.wellness-v2-history>div,.wellness-v2-history.compact>div{grid-template-columns:78px 1fr auto}.wellness-v2-history>div span:nth-of-type(2){display:none}}
@media(max-width:390px){.wellness-v2-hero{align-items:flex-start;min-height:205px}.wellness-v2-ring{position:absolute;right:18px;bottom:18px}.wellness-v2-hero h2{font-size:26px;padding-right:58px}.wellness-v2-tabs{overflow-x:auto;display:flex;scrollbar-width:none}.wellness-v2-tabs::-webkit-scrollbar{display:none}.wellness-v2-tabs button{min-width:74px}.wellness-v2-checkin,.wellness-v2-form-grid{grid-template-columns:1fr}.wellness-v2-form-wide{grid-column:1}.wellness-v2-task{grid-template-columns:35px minmax(0,1fr) 24px;padding:10px}.wellness-v2-task-icon{width:35px;height:35px}.wellness-v2-history>div,.wellness-v2-history.compact>div{grid-template-columns:68px 1fr auto}}

/* ŠNOFI 0.58.5 — Health Connect V1 */
.wellness-hc{margin:0 0 14px;border:1px solid #dce5df;background:linear-gradient(145deg,#f6faf7,#eef4f0);border-radius:20px;padding:14px}.wellness-hc.connected{background:linear-gradient(145deg,#f4f8f5,#fbfcfa)}
.wellness-hc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.wellness-hc-head>div{display:flex;align-items:flex-start;gap:9px;min-width:0}.wellness-hc-dot{width:9px;height:9px;margin-top:4px;border-radius:50%;background:#98aaa1;box-shadow:0 0 0 4px rgba(111,144,129,.10);flex:0 0 auto}.wellness-hc.connected .wellness-hc-dot{background:#4f8068}.wellness-hc-head small{display:block;font-size:7.5px;letter-spacing:.12em;font-weight:900;color:#638073}.wellness-hc-head h3{font-size:14px;margin:2px 0 0;color:#284138}.wellness-hc-head p{font-size:8.5px;line-height:1.4;color:#7d8984;margin-top:3px}.wellness-hc-head button{border:0;border-radius:12px;background:#315d50;color:#fff;min-height:34px;padding:8px 11px;font-size:8.5px;font-weight:850;white-space:nowrap}
.wellness-hc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:12px}.wellness-hc-grid>div,.wellness-hc-measures>div{border:1px solid #e1e7e2;background:#fff;border-radius:14px;padding:10px;min-width:0}.wellness-hc-grid small,.wellness-hc-measures small{display:block;font-size:7px;letter-spacing:.08em;font-weight:900;color:#7c8c85}.wellness-hc-grid strong,.wellness-hc-measures strong{display:block;font-size:15px;color:#294239;margin-top:4px}.wellness-hc-grid span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:7px;color:#89938f}.wellness-hc-note{font-size:8.5px;line-height:1.5;color:#78857f;margin-top:11px}.wellness-hc-measures{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.wellness-hc-history b{max-width:130px;overflow:hidden;text-overflow:ellipsis}
@media(max-width:620px){.wellness-hc-grid{grid-template-columns:1fr 1fr}.wellness-hc-measures{grid-template-columns:1fr 1fr}.wellness-hc-head{align-items:center}.wellness-hc-head p{max-width:220px}}
@media(max-width:390px){.wellness-hc-head{align-items:flex-start}.wellness-hc-head button{padding:7px 9px}.wellness-hc-measures{grid-template-columns:1fr 1fr}.wellness-hc-measures>div:last-child{grid-column:1/-1}}

/* 0.58.5 privacy / Play-readiness */
.settings-row-link{text-decoration:none;cursor:pointer}.auth-legal-links{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;margin-top:12px;font-size:9px}.auth-legal-links a{color:#527669;text-decoration:underline;text-underline-offset:2px}.legal-page{max-width:820px;margin:0 auto;padding:28px 20px 70px;color:#24363e;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.legal-page h1,.legal-page h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;color:#17303e}.legal-page h1{font-size:34px}.legal-page h2{font-size:22px;margin-top:28px}.legal-page p,.legal-page li{line-height:1.65;font-size:14px}.legal-page .legal-meta{font-size:12px;color:#71807e}.legal-page a{color:#456e60}.legal-card{border:1px solid #e6e1d9;border-radius:18px;padding:16px;background:#fff;margin:14px 0}.privacy-form{display:grid;gap:12px}.privacy-form label{display:grid;gap:5px;font-size:13px;font-weight:700}.privacy-form input,.privacy-form select,.privacy-form textarea{font:inherit;border:1px solid #d8d5cf;border-radius:12px;padding:10px 12px;background:#fff}.privacy-form textarea{min-height:120px;resize:vertical}.privacy-form button{border:0;border-radius:13px;background:#203746;color:#fff;padding:11px 16px;font-weight:800;cursor:pointer}.privacy-status{min-height:22px;font-size:13px}.privacy-status.ok{color:#3f715f}.privacy-status.error{color:#9d4f46}

/* ŠNOFI Phase 4 — Moj dan: importance before module density */
.serene-hero-compact{min-height:146px;padding-bottom:8px}.serene-hero-compact .serene-welcome{margin-top:19px;gap:6px}.serene-hero-compact .serene-welcome h2{font-size:35px}.serene-hero-compact .serene-welcome>strong{margin-top:0;font-size:13px;color:#596d78}.serene-hero-compact .serene-mountain{height:100px;opacity:.16}
.serene-weather-compact{padding-top:12px;padding-bottom:12px}.serene-weather-compact .serene-weather-icon{font-size:30px}.serene-weather-compact .serene-weather-main strong{font-size:28px}
.serene-focus-card{border-color:#dfe6e4;box-shadow:0 12px 30px #223b4a0b}.serene-focus-card>header h3{font-size:15px;color:#2b414e}.serene-focus-card>header span{padding:4px 7px;border-radius:999px;background:#edf3f2;color:#365a5f}
.serene-attention{border:1px solid #ebe7df;background:#fffdf9;border-radius:22px;padding:14px;box-shadow:0 9px 26px #223b4a07}.serene-attention>header{margin-bottom:5px}.serene-attention>header h3{margin:0;font-size:15px}.serene-attention>div{display:grid}.serene-attention-row{width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) 18px;gap:10px;align-items:center;border:0;border-top:1px solid #f0ede7;background:transparent;padding:10px 2px;text-align:left}.serene-attention-row:first-child{border-top:0}.serene-attention-row>span:first-child{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:#f1f4f3;font-size:18px}.serene-attention-row>span:nth-child(2){display:grid;gap:2px;min-width:0}.serene-attention-row strong{font-size:12px;color:#203746}.serene-attention-row small{font-size:9px;line-height:1.35;color:#758188}.serene-attention-row>b{color:#6c7d85}.serene-attention-row>b .ui-icon{width:15px;height:15px}.serene-attention-row.tone-warm>span:first-child{background:#fbf0e6}.serene-attention-row.tone-high>span:first-child{background:#f9e9e3;color:#a35c48}.serene-attention-row.tone-info>span:first-child{background:#eaf2f3;color:#3f6e77}
.serene-today-rest{padding-bottom:12px}.serene-today-rest .serene-empty{padding:14px 4px}.serene-more-events{width:100%;justify-content:center;margin-top:5px;padding:8px 0;border-top:1px solid #efede8!important}.serene-more-events .ui-icon{width:13px;height:13px}
@media(max-width:560px){.serene-hero-compact{min-height:132px}.serene-hero-compact .serene-welcome{margin-top:15px}.serene-hero-compact .serene-welcome h2{font-size:31px}.serene-attention{padding:12px;border-radius:20px}.serene-attention-row{grid-template-columns:34px minmax(0,1fr) 16px;gap:8px;padding:9px 0}.serene-attention-row>span:first-child{width:32px;height:32px;border-radius:11px;font-size:16px}.serene-weather-compact{grid-template-columns:46px minmax(0,1fr) auto 18px}.serene-weather-compact .serene-weather-range small{display:none}}


/* ŠNOFI Phase 5 — consistent main-flow loading/error state */
.shopping-state-card{min-height:220px;border:1px solid #e8e5df;background:#fff;border-radius:24px;padding:28px;display:grid;place-items:center;align-content:center;gap:7px;text-align:center;box-shadow:0 8px 24px rgba(31,50,62,.04)}.shopping-state-icon{width:48px;height:48px;border-radius:16px;background:#edf3f1;display:grid;place-items:center;font-size:23px}.shopping-state-card strong{font-size:16px;color:#1e3745}.shopping-state-card small{max-width:320px;font-size:10px;line-height:1.45;color:#788488}.shopping-state-card button{margin-top:8px;border:0;border-radius:14px;background:#1d3443;color:#fff;padding:10px 15px;font-size:10px;font-weight:750}.shopping-state-card.error .shopping-state-icon{background:#f9e9e3;color:#a35c48;font-weight:850}


/* v0.58.5 - PWA lifecycle status: persistent offline/update state without auto reload. */
.runtime-banner{position:sticky;top:72px;z-index:23;margin:0 18px 8px;padding:9px 11px;border:1px solid #e3dfd8;border-radius:14px;background:#fff;color:#41545e;box-shadow:0 5px 16px rgba(31,50,62,.06);display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;font-weight:700}
.runtime-banner[hidden]{display:none!important}.runtime-banner[data-kind="offline"]{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.runtime-banner[data-kind="update"]{background:#eef6ff;border-color:#cfe1f7;color:#27475b}.runtime-banner button{border:0;border-radius:11px;background:#1d3443;color:#fff;min-height:34px;padding:0 11px;font:inherit;font-weight:800}.runtime-banner button:focus-visible{outline:3px solid rgba(84,123,152,.35);outline-offset:2px}
@media(max-width:560px){.runtime-banner{top:64px;margin-left:12px;margin-right:12px}}

/* v0.58.5 - canonical ŠNOFI design-system layer */
:root{
  --snofi-bg-app:#f8f6f1;
  --snofi-surface:#ffffff;
  --snofi-surface-soft:#f4f1eb;
  --snofi-text:#203746;
  --snofi-text-strong:#172f3d;
  --snofi-text-muted:#7a8589;
  --snofi-line:#e7e3dc;
  --snofi-line-strong:#dcd7ce;
  --snofi-primary:#1d3443;
  --snofi-primary-soft:#edf3f1;
  --snofi-success:#3f715f;
  --snofi-warning:#9a6b2c;
  --snofi-danger:#a35c48;
  --snofi-info:#3f6e77;
  --snofi-radius-sm:12px;
  --snofi-radius-md:16px;
  --snofi-radius-lg:22px;
  --snofi-radius-xl:28px;
  --snofi-shadow-card:0 8px 24px rgba(31,50,62,.045);
  --snofi-shadow-float:0 14px 34px rgba(31,50,62,.11);
  --snofi-space-1:4px;
  --snofi-space-2:8px;
  --snofi-space-3:12px;
  --snofi-space-4:16px;
  --snofi-space-5:20px;
  --snofi-space-6:24px;
  --snofi-tap:44px;
  --snofi-motion-fast:140ms;
  --snofi-motion-normal:220ms;
}
body:has(.serene-home),
body:has(.serene-plan-page),
body:has(.serene-shopping-page),
body:has(.serene-family-page),
body:has(.serene-settings-page),
body:has(.personal-hub-page),
body:has(.wellness-page){background:var(--snofi-bg-app)!important;color:var(--snofi-text)!important}
body:has(.serene-page) .topbar,
body:has(.personal-hub-page) .topbar,
body:has(.family-core-page) .topbar{background:rgba(248,246,241,.94)!important;border-bottom:1px solid rgba(32,55,70,.055)!important;box-shadow:none!important}
body:has(.serene-page) .topbar h1,
body:has(.personal-hub-page) .topbar h1,
body:has(.family-core-page) .topbar h1{color:var(--snofi-text-strong)!important}
body:has(.serene-page) .topbar .eyebrow,
body:has(.personal-hub-page) .topbar .eyebrow,
body:has(.family-core-page) .topbar .eyebrow{color:#8a796b!important}

:where(.serene-next,.serene-attention,.serene-today,.plan-day-agenda,.plan-upcoming,.personal-hub-section,.settings-section,.shopping-state-card,.serene-shopping-page .shopping-fast-add,.serene-shopping-page .shopping-catalog-head){
  border-color:var(--snofi-line)!important;
  background:var(--snofi-surface)!important;
  border-radius:var(--snofi-radius-lg)!important;
  box-shadow:var(--snofi-shadow-card)!important;
}
:where(.settings-row,.personal-module-card,.serene-attention-row,.serene-next-event,.plan-upcoming-card,.plan-agenda-entry,.shopping-fast-picks button,.shopping-fast-tools>button){
  -webkit-tap-highlight-color:transparent;
  transition:transform var(--snofi-motion-fast) ease,background-color var(--snofi-motion-fast) ease,border-color var(--snofi-motion-fast) ease,box-shadow var(--snofi-motion-fast) ease;
}
:where(.settings-row,.personal-module-card,.serene-attention-row,.serene-next-event,.plan-upcoming-card,button,[role="button"]):active{transform:scale(.985)}
.family-core-tool.readonly:active,.settings-row-static:active{transform:none!important}
@media(hover:hover) and (pointer:fine){
  :where(.settings-row:not(.settings-row-static),.personal-module-card,.serene-attention-row,.serene-next-event,.plan-upcoming-card):hover{background:#fbfaf7!important;border-color:var(--snofi-line-strong)!important}
  :where(.primary-btn,.notify-save,.shopping-fast-entry button,.shopping-state-card button):hover{box-shadow:0 8px 20px rgba(29,52,67,.16);transform:translateY(-1px)}
}
:where(.primary-btn,.notify-save,.shopping-fast-entry button,.shopping-state-card button){min-height:var(--snofi-tap);border-radius:14px!important;background:var(--snofi-primary)!important;color:#fff!important;font-weight:800!important;transition:transform var(--snofi-motion-fast) ease,box-shadow var(--snofi-motion-fast) ease,opacity var(--snofi-motion-fast) ease}
:where(input,select,textarea):not([type="checkbox"]):not([type="radio"]){border-color:var(--snofi-line-strong);background:#fff;color:var(--snofi-text);border-radius:var(--snofi-radius-sm)}
:where(input,select,textarea):not([type="checkbox"]):not([type="radio"]):focus{border-color:#9fb8b2!important;box-shadow:0 0 0 3px rgba(63,113,95,.09)!important;outline:none}
:where(.serene-empty,.today-empty,.plan-upcoming-empty,.plan-agenda-empty){color:var(--snofi-text-muted)!important;line-height:1.5}
:where(.serene-empty,.serene-next-empty) strong{color:var(--snofi-text-strong)}
:where(.serene-empty,.serene-next-empty) span{color:var(--snofi-text-muted)!important}
.shopping-state-card.error{border-color:#ead8d2!important;background:#fffaf8!important}.shopping-state-card.error .shopping-state-icon{background:#f9e9e3!important;color:var(--snofi-danger)!important}
.runtime-banner{border-radius:var(--snofi-radius-md)!important;box-shadow:var(--snofi-shadow-card)!important}
.bottom-nav{box-shadow:var(--snofi-shadow-float)!important}
:where(.settings-row,.personal-module-card,.serene-attention-row,.serene-next-event,.plan-upcoming-card,.plan-agenda-jump,.plan-agenda-add,.plan-agenda-open,.shopping-fast-tools>button,.shopping-fast-picks button){min-height:var(--snofi-tap)}
:where(.settings-row,.personal-module-card,.serene-attention-row,.serene-next-event,.plan-upcoming-card) strong{letter-spacing:-.005em}
@media(prefers-reduced-motion:reduce){:root{--snofi-motion-fast:.01ms;--snofi-motion-normal:.01ms}}
