[hidden]{display:none!important}
.deposit-reminder{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;max-width:1000px;min-height:84px;padding:18px 22px;margin:0 0 24px;text-align:left;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:18px}
.deposit-copy{min-width:0}.deposit-copy strong,.deposit-copy small{display:block}.deposit-copy strong{font-size:16px}.deposit-copy small{margin-top:4px;color:var(--muted);font-weight:400}
.deposit-track{display:block;flex-shrink:0;width:54px;height:32px;padding:4px;border-radius:20px;background:#8a948d}.deposit-track>span{display:block;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .15s}
.deposit-reminder.is-on{border-color:var(--green);background:#eaf2df}.deposit-reminder.is-on .deposit-track{background:#214e40}.deposit-reminder.is-on .deposit-track>span{transform:translateX(22px)}
.deposit-reminder:focus-visible{outline:3px solid var(--green);outline-offset:3px}.deposit-reminder:disabled{cursor:wait}
[data-theme=dark] .deposit-reminder{background:var(--paper)}[data-theme=dark] .deposit-reminder.is-on{background:#2b4332;border-color:#a8d1ae}[data-theme=dark] .deposit-reminder.is-on .deposit-track{background:#a8d1ae}[data-theme=dark] .deposit-reminder.is-on .deposit-track>span{background:#14241a}
@media(max-width:700px){.deposit-reminder{padding:16px;gap:12px}.deposit-copy strong{font-size:15px}}
@media(prefers-reduced-motion:reduce){.deposit-track>span{transition:none}}
.home-nav{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 32px;border-bottom:1px solid var(--line);padding-bottom:14px}
.home-nav button{min-height:44px;background:transparent;color:var(--muted);padding:10px 18px}
.home-nav button.active{background:var(--green);color:var(--paper)}
[data-theme=dark] .home-nav button.active{background:#a8d1ae;color:#14241a}
.home-heading{margin:28px 0 36px}.home-heading h1{font-size:clamp(30px,4vw,44px);letter-spacing:-1.4px;margin:8px 0}.home-heading>p:last-child{color:var(--muted)}
.home-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1000px}
.home-tile{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:24px;padding:32px;text-align:left;min-height:260px;transition:transform .15s,border-color .15s}
.home-tile:hover{transform:translateY(-3px);border-color:var(--green)}
.home-tile h2{font-size:26px;margin:24px 0 8px}.home-tile p{color:var(--muted);margin:0 0 30px}.tile-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:17px;background:var(--bg);color:var(--green);font-size:29px}
.tile-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;font-weight:600;font-size:14px}
.shopping-layout{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(300px,1.15fr);gap:24px;align-items:start}
.shopping-picker,.shopping-list-card{padding:26px}.shopping-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}.shopping-heading h2{margin:0;font-size:21px}.shopping-heading button{min-height:44px}
.shopping-tags{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0 28px}.shopping-tag{border:1px solid var(--line);border-radius:24px;min-height:44px;padding:9px 15px;background:var(--bg);color:var(--ink);display:flex;gap:12px;align-items:center}.shopping-tag.on-list{background:var(--green);color:var(--paper);opacity:.65;cursor:default}
.shopping-picker form{border-top:1px solid var(--line);padding-top:20px}.shopping-check{display:flex;align-items:center;gap:10px;font-weight:400}.shopping-check input{width:20px;height:20px;margin:0}
.shopping-count{font-size:14px;background:var(--bg);padding:5px 10px;border-radius:18px;margin-left:8px}
.shopping-row{display:flex;align-items:center;border-top:1px solid var(--line);gap:6px;min-width:0}.shopping-tick{display:flex;align-items:center;gap:14px;flex:1;min-width:0;background:transparent;color:var(--ink);text-align:left;min-height:68px;padding:12px 4px}.shopping-tick strong{display:block;overflow-wrap:anywhere}.shopping-tick small{display:block;color:var(--muted);font-weight:400;overflow-wrap:anywhere}.shopping-mark{font-size:24px;min-width:26px;color:var(--green)}.shopping-edit-button{flex-shrink:0;width:44px;min-height:44px;padding:8px}.shopping-row.is-done .shopping-tick strong{text-decoration:line-through;color:var(--muted)}
#shopping-done{margin-top:24px}#shopping-done summary{cursor:pointer;min-height:44px;padding:12px 0;color:var(--muted);font-weight:600}#shopping-done-count{margin-left:6px}.shopping-empty{padding:35px 12px;text-align:center;color:var(--muted)}.shopping-empty>span{font-size:32px;color:var(--green)}.shopping-empty h3{color:var(--ink);margin:12px 0 6px}.shopping-empty p{margin:0}#shopping-sync{font-size:12px;color:var(--muted)}#shopping-sync.shopping-offline{color:var(--orange)}
[data-theme=dark] .home-tile{background:var(--paper)}[data-theme=dark] .shopping-tick{background:transparent}[data-theme=dark] .shopping-tag.on-list{background:#a8d1ae;color:#14241a}
@media(max-width:700px){.home-tiles,.shopping-layout{grid-template-columns:1fr}.home-tile{min-height:210px;padding:24px}.home-tile h2{margin-top:16px}.home-tile p{margin-bottom:20px}.shopping-list-card{grid-row:1}.shopping-picker,.shopping-list-card{padding:20px}.home-nav{gap:2px;margin-bottom:22px}.home-nav button{padding:10px 12px}.home-heading{margin:20px 0 26px}.shopping-layout{gap:18px}}
@media(prefers-reduced-motion:reduce){.home-tile{transition:none}.home-tile:hover{transform:none}}
@media(max-width:700px){#shopping-area>.page-heading{display:flex;flex-direction:column;align-items:flex-start;gap:8px}#shopping-area>.page-heading h1{font-size:34px}#shopping-sync{display:block}}
