:root{--cream: #f7f4ef;--cream-dark: #ede9e1;--cream-deep: #e0dbd0;--sage: #6b8f71;--sage-light: #8aab90;--sage-dark: #4e6b54;--terra: #c06b4a;--terra-light: #d4846a;--ink: #2a2520;--ink-muted: #6b6459;--ink-faint: #8f877c;--surface: #ffffff;--danger: #a04020;--shadow-sm: 0 1px 3px rgba(42, 37, 32, .08);--shadow-md: 0 4px 16px rgba(42, 37, 32, .1);--shadow-lg: 0 12px 40px rgba(42, 37, 32, .12);--radius: 14px;--radius-sm: 8px;--radius-pill: 50px;--content-max: 640px;--nav-height: 4.25rem;--ui-scale: .95;color-scheme:light}html{font-size:calc(100% * var(--ui-scale, .95) / .95)}@media(min-width:1024px){html{font-size:clamp(calc(16px * var(--ui-scale, .95)),calc((12.6px + .335vw) * var(--ui-scale, .95)),calc(19.5px * var(--ui-scale, .95)))}:root{--content-max: clamp( calc(680px * var(--ui-scale, .95)), calc((44vw + 240px) * var(--ui-scale, .95)), calc(900px * var(--ui-scale, .95)) )}}html.dark,body.dark{--cream: #141b1e;--cream-dark: #1c2528;--cream-deep: #263035;--sage: #7fb98a;--sage-light: #9dd0aa;--sage-dark: #5d9467;--terra: #e08a6a;--terra-light: #eda48d;--ink: #e8f0ec;--ink-muted: #8fa89a;--ink-faint: #7d988c;--surface: #1c2528;--danger: #f1b39d;--shadow-sm: 0 1px 4px rgba(0, 0, 0, .35);--shadow-md: 0 4px 20px rgba(0, 0, 0, .45);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .55);color-scheme:dark}::view-transition-old(root),::view-transition-new(root){animation-duration:.4s;animation-timing-function:ease}html.theme-animating,html.theme-animating *,html.theme-animating *:before,html.theme-animating *:after{transition:background-color .35s ease,background .35s ease,color .35s ease,border-color .35s ease,box-shadow .35s ease,fill .35s ease,stroke .35s ease!important}html.dark .item-row.is-dragging,body.dark .item-row.is-dragging{box-shadow:0 1px 2px #00000059,0 12px 28px #00000073}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{color-scheme:light}html.dark{color-scheme:dark}body{font-family:DM Sans,system-ui,sans-serif;background-color:var(--cream);color:var(--ink);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .4s ease,color .4s ease}body:before{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");pointer-events:none;z-index:0}@keyframes slide-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes pop-in{0%{opacity:0;transform:scale(.92) translateY(6px)}70%{transform:scale(1.02)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes check-pop{0%{transform:scale(1)}40%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes loader-spin{to{transform:rotate(360deg)}}.app-wrapper{min-height:100vh;display:flex;flex-direction:column;position:relative;z-index:1}.navbar{padding:env(safe-area-inset-top,0px) 0 0;position:sticky;top:0;z-index:100;border-bottom:1.5px solid var(--cream-deep);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:#f7f4efeb;transition:background .3s ease,border-color .3s ease}html.dark .navbar,body.dark .navbar{background:#141b1ef0}button,a,input,.item-row{-webkit-tap-highlight-color:transparent}button svg,a svg{pointer-events:none}button:focus,input:focus,.item-row:focus{outline:none}button:focus-visible,input:focus-visible,.item-row:focus-visible,a:focus-visible{outline:3px solid rgba(107,143,113,.35);outline-offset:2px}.navbar-content{max-width:var(--content-max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:var(--nav-height);padding:0 1.15rem;width:100%}.nav-brand{display:flex;align-items:center;gap:.5rem;text-decoration:none}.nav-brand.is-text-only{gap:0}.nav-brand.is-text-only .nav-brand-icon{display:none}.nav-brand-icon{width:2.34rem;height:2.34rem;background:transparent;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s ease}.brand-mark{width:100%;height:100%;display:block;border-radius:inherit;object-fit:contain}.nav-brand:hover .nav-brand-icon{transform:rotate(-5deg) scale(1.05)}.nav-brand-name{font-family:Playfair Display,serif;font-weight:900;font-size:1.45rem;color:var(--ink);letter-spacing:-.01em}.nav-brand-name em{color:var(--sage);font-style:normal}.user-actions{display:flex;align-items:center;gap:.45rem;flex-shrink:0}.nav-account{position:relative;flex-shrink:0}.nav-account-trigger{display:flex;align-items:center;gap:.4rem;flex-shrink:0;background:var(--cream-dark);border:1.5px solid var(--cream-deep);border-radius:var(--radius-pill);padding:.28rem .55rem .28rem .28rem;cursor:pointer;color:inherit;font:inherit;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.nav-account-trigger:hover,.nav-account-trigger.is-open{background:var(--cream-deep);border-color:var(--ink-faint)}.nav-account-trigger.has-dot{border-color:var(--sage-light)}.nav-account-name{font-size:.84rem;font-weight:600;color:var(--ink-muted);white-space:nowrap;max-width:6rem;overflow:hidden;text-overflow:ellipsis}.nav-account-dot{position:absolute;top:4px;right:4px;width:8px;height:8px;border-radius:50%;background:var(--sage);border:1.5px solid var(--surface);pointer-events:none}.nav-overflow-trigger{position:relative;width:2.25rem;height:2.25rem;border-radius:50%;border:1.5px solid var(--cream-deep);background:transparent;color:var(--ink-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,border-color .15s ease,color .15s ease}.nav-overflow-trigger:hover,.nav-overflow-trigger.is-open{background:#6b8f711f;border-color:var(--sage-light);color:var(--sage)}.nav-overflow-trigger.has-dot{border-color:var(--sage-light)}.nav-account-menu{position:absolute;top:calc(100% + .4rem);right:0;z-index:200;width:min(260px,calc(100vw - 1.5rem));padding:.4rem;background:var(--surface);border:1.5px solid var(--cream-deep);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:pop-in .16s cubic-bezier(.16,1,.3,1) both}.nav-account-header{display:flex;align-items:center;gap:.55rem;padding:.45rem .5rem .55rem}.nav-account-header-text{min-width:0;display:flex;flex-direction:column;gap:.1rem}.nav-account-header-text strong{font-size:.88rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-account-header-text span{font-size:.74rem;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-account-sep{height:1px;margin:.25rem .35rem;background:var(--cream-deep)}.nav-account-item{display:flex;align-items:center;gap:.55rem;width:100%;min-height:40px;padding:.45rem .55rem;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--ink);font:600 .86rem DM Sans,sans-serif;text-align:left;text-decoration:none;cursor:pointer;transition:background .12s ease,color .12s ease}.nav-account-item:hover,.nav-account-item:focus-visible{background:var(--cream-dark);outline:none}.nav-account-item svg{flex-shrink:0;color:var(--ink-muted)}.nav-account-item span:first-of-type{flex:1;min-width:0}.nav-account-item-meta{margin-left:auto;font-size:.72rem;font-weight:600;color:var(--sage-dark);white-space:nowrap}.nav-account-item.is-danger{color:var(--terra)}.nav-account-item.is-danger svg{color:var(--terra)}.nav-account-item.is-danger:hover{background:#c06b4a1a}.user-avatar{width:2rem;height:2rem;min-width:2rem;min-height:2rem;border-radius:50%;object-fit:cover;border:2px solid var(--cream-deep);display:block;flex-shrink:0}.user-avatar-initials{background:var(--sage);color:#fff;font-size:.78rem;font-weight:700;display:flex;align-items:center;justify-content:center;letter-spacing:0;border:none}.theme-toggle{width:2.25rem;height:2.25rem;border-radius:50%;border:1.5px solid var(--cream-deep);background:transparent;color:var(--ink-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .25s ease;flex-shrink:0}.theme-toggle:hover{background:#6b8f711f;border-color:var(--sage-light);color:var(--sage);transform:rotate(20deg) scale(1.08)}.theme-toggle:active{background:#6b8f712e;transform:scale(.94)}.container{flex:1;width:100%;max-width:var(--content-max);margin:0 auto;padding:1.25rem 1.15rem 4.5rem}.page-heading{margin-bottom:1rem;animation:slide-up .5s cubic-bezier(.16,1,.3,1) both}.page-title{font-family:Playfair Display,serif;font-size:1.85rem;font-weight:900;color:var(--ink);letter-spacing:-.02em;line-height:1.1;overflow-wrap:break-word}.page-subtitle{font-size:.9rem;font-weight:400;color:var(--ink-muted);margin-top:.4rem;letter-spacing:.01em}.offline-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:var(--radius-pill);font-size:.72rem;font-weight:700;letter-spacing:.02em;background:#fff0ed;color:var(--terra);white-space:nowrap}.offline-pill svg{flex-shrink:0}html.dark .offline-pill,body.dark .offline-pill{background:#e08a6a29}@media(max-width:480px){.offline-pill-text{display:none}.offline-pill{padding:.3rem}}.add-form{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.85rem;animation:slide-up .5s .1s cubic-bezier(.16,1,.3,1) both;position:relative;z-index:8}.add-primary-row{display:flex;gap:.5rem;align-items:stretch;position:relative}.suggest-panel{list-style:none;margin:0;padding:.3rem;position:absolute;top:calc(100% + .3rem);left:0;right:0;width:auto;min-width:0;background:var(--surface);border:1.5px solid var(--cream-deep);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:30;max-height:min(280px,45vh);overflow-y:auto;overscroll-behavior:contain;animation:suggest-in .15s ease both}@keyframes suggest-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.suggest-panel{animation:none}}.suggest-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;min-height:42px;padding:.45rem .7rem;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--ink);font:inherit;font-size:.9rem;font-weight:500;text-align:left;cursor:pointer;transition:background .12s ease}.suggest-row:hover,.suggest-row.is-active{background:#6b8f711f}html.dark .suggest-row:hover,html.dark .suggest-row.is-active,body.dark .suggest-row:hover,body.dark .suggest-row.is-active{background:#7fb98a24}.suggest-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggest-meta{flex-shrink:0;font-size:.72rem;font-weight:600;color:var(--ink-muted)}.add-clear-btn{position:absolute;right:3.725rem;top:50%;transform:translateY(-50%);width:1.875rem;height:1.875rem;border:none;border-radius:50%;background:transparent;color:var(--ink-faint);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1}.add-clear-btn:hover{color:var(--ink-muted);background:var(--cream-dark)}.add-primary-row:has(.add-clear-btn) .add-input{padding-right:2.4rem}.add-hint-search{color:var(--ink-muted);font-weight:500}.add-hint{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;min-height:1rem;padding:0 .25rem;font-size:.78rem;font-weight:500;color:var(--ink-muted)}.add-hint strong{font-weight:600;color:var(--ink)}.add-hint-chip{padding:.05rem .45rem;border-radius:var(--radius-pill);background:#6b8f7124;color:var(--sage-dark);font-size:.72rem;font-weight:700}.add-input{flex:1;min-width:0;height:2.875rem;padding:0 1rem;border:1.5px solid var(--cream-deep);border-radius:var(--radius);background:var(--surface);font-family:DM Sans,sans-serif;font-size:max(1rem,16px);font-weight:400;color:var(--ink);transition:border-color .2s ease,box-shadow .2s ease;box-shadow:none}.add-input::placeholder{color:var(--ink-faint)}.add-input:focus{outline:none;border-color:var(--sage);box-shadow:0 0 0 4px #6b8f7124,var(--shadow-sm)}.add-btn{height:2.875rem;width:2.875rem;flex-shrink:0;background:var(--sage);color:#fff;border:none;border-radius:var(--radius);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .15s ease,box-shadow .2s ease;box-shadow:0 2px 8px #6b8f7147}.add-btn:hover:not(:disabled){background:var(--sage-dark);transform:scale(1.05);box-shadow:0 4px 14px #6b8f7161}.add-btn:active:not(:disabled){transform:scale(.97)}.add-btn:disabled{opacity:.42;cursor:not-allowed;box-shadow:none;transform:none}.list-tabs{display:flex;gap:.4rem;margin:0 0 .65rem;overflow-x:auto;padding-bottom:.1rem;scrollbar-width:none}.list-tabs::-webkit-scrollbar{display:none}.list-tab{min-height:2.25rem;max-width:11.25rem;padding:.4rem .9rem;border-radius:var(--radius-sm);border:1.5px solid var(--cream-deep);background:var(--surface);color:var(--ink-muted);cursor:pointer;flex:0 0 auto;font-family:DM Sans,sans-serif;font-size:.82rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background .18s ease,border-color .18s ease,color .18s ease}.list-tab:hover{border-color:var(--ink-faint);color:var(--ink)}.list-tab.active{background:#6b8f711f;border-color:var(--sage-light);color:var(--sage-dark)}.list-tab-add{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-width:36px;padding-inline:.65rem;color:var(--sage-dark);border-style:dashed}.list-tab-add:hover{border-color:var(--sage-light);color:var(--sage-dark);background:#6b8f7114}.list-tabs-solo{margin-bottom:.5rem}.list-tab-create{display:inline-flex;align-items:center;gap:.35rem;flex:0 0 auto}.list-tab-create-input,.list-rename-input{min-height:36px;width:8.5rem;padding:.3rem .55rem;border-radius:var(--radius-sm);border:1.5px solid var(--sage-light);background:var(--surface);color:var(--ink);font:inherit;font-size:.82rem;font-weight:600;outline:none}.list-tab-create-input:focus,.list-rename-input:focus{border-color:var(--sage);box-shadow:0 0 0 2px #6b8f7124}.list-tab-create-save{min-height:36px;padding:.3rem .7rem;border-radius:var(--radius-sm);border:none;background:var(--sage);color:#fff;font:inherit;font-size:.78rem;font-weight:700;cursor:pointer}.list-tab-create-save:hover{background:var(--sage-dark)}.list-rename-form{display:inline-flex;align-items:center;gap:.3rem}.list-rename-input{width:7.5rem}.items-section{animation:slide-up .5s .15s cubic-bezier(.16,1,.3,1) both}.items-list{display:flex;flex-direction:column;gap:.15rem}.items-divider{display:flex;align-items:center;gap:.5rem;margin:.65rem 0 .35rem}.items-divider-btn{width:100%;border:none;background:transparent;cursor:pointer;padding:.15rem 0;color:inherit;font:inherit;text-align:left}.items-divider-btn:hover .items-divider-label{color:var(--ink-muted)}.items-divider-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);white-space:nowrap}.items-divider-line{flex:1;height:1px;background:var(--cream-deep)}.done-section{display:flex;flex-direction:column;gap:.15rem}.item-row{display:flex;align-items:center;gap:.45rem;padding:.42rem .55rem;min-height:2.5rem;background:var(--surface);border:1px solid var(--cream-dark);border-radius:var(--radius-sm);transition:border-color .15s ease,background .15s ease,opacity .18s ease,box-shadow .18s ease;box-shadow:none;scroll-margin-block:calc(var(--nav-height) + env(safe-area-inset-top,0px) + 1.25rem)}.item-row:hover{border-color:var(--ink-faint);background:var(--surface)}.item-row.is-reorderable .drag-handle{cursor:grab}.item-row.is-dragging{opacity:1;z-index:6;position:relative;border-color:var(--sage-light);background:var(--surface);box-shadow:0 1px 2px #2a25200f,0 10px 28px #2a25201f;will-change:transform;transition:box-shadow .16s ease,border-color .15s ease}.item-row.is-drop-target:not(.is-dragging){border-color:var(--cream-dark);background:var(--surface);box-shadow:none}.item-row.is-drop-target:not(.is-dragging):before{content:"";position:absolute;left:.4rem;right:.4rem;top:-2px;height:2px;border-radius:2px;background:var(--sage);box-shadow:0 0 0 3px #6b8f711f;pointer-events:none}.item-row.is-drop-target:not(.is-dragging){position:relative}body.is-reordering{cursor:grabbing;user-select:none;-webkit-user-select:none;touch-action:none}@media(prefers-reduced-motion:reduce){.item-row.is-dragging{box-shadow:0 0 0 2px #6b8f7133}.item-row{will-change:auto}}.item-row.completed{opacity:.48;background:transparent;border-color:transparent}.item-row.is-important{border-color:#c06b4a59;box-shadow:inset 3px 0 0 var(--terra)}.item-row.is-important .item-text{font-weight:600}.item-row.is-important.completed{box-shadow:inset 3px 0 #c06b4a59}.item-important-badge{flex-shrink:0;font-size:.72rem;line-height:1;color:var(--terra);opacity:.9}.important-btn{width:1.625rem;height:1.625rem;flex-shrink:0;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--ink-faint);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease,background .15s ease,color .15s ease}.item-row:hover .important-btn,.item-row:focus-within .important-btn,.important-btn:focus-visible,.important-btn.is-active{opacity:1}.important-btn:hover{background:#c06b4a1a;color:var(--terra)}.important-btn.is-active{color:var(--terra)}.important-btn:active{transform:scale(.92)}@media(hover:none),(max-width:768px){.important-btn{opacity:1}}html.dark .item-row.is-important,body.dark .item-row.is-important{border-color:#e08a6a66;box-shadow:inset 3px 0 0 var(--terra)}.public-item-row{width:100%;text-align:left}.drag-handle{width:1.5rem;height:1.85rem;flex-shrink:0;border:none;background:transparent;color:var(--ink-faint);cursor:grab;display:flex;align-items:center;justify-content:center;border-radius:4px;padding:0;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.drag-handle:hover,.drag-handle:focus-visible{color:var(--ink-muted);background:var(--cream-dark);outline:none}.drag-handle:active{cursor:grabbing;color:var(--sage-dark);background:#6b8f711f}.toggle-btn{width:1.375rem;height:1.375rem;flex-shrink:0;border-radius:50%;border:1.75px solid var(--cream-deep);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;position:relative;color:transparent}.toggle-btn:hover{border-color:var(--sage);background:#6b8f7114}.toggle-btn:active{transform:scale(.92)}.toggle-btn.is-checked{background:var(--sage);border-color:var(--sage);color:#fff;animation:check-pop .3s cubic-bezier(.16,1,.3,1)}.category-group{display:flex;flex-direction:column;gap:.12rem}.category-heading{margin:.45rem 0 .05rem .15rem;font-family:inherit;font-size:.71rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em;color:var(--sage-dark);position:sticky;top:calc(var(--nav-height) + env(safe-area-inset-top,0px));z-index:2;background:var(--cream);padding:.28rem 0 .18rem}.item-content{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.12rem;background:transparent;border:none;padding:0;cursor:pointer;text-align:left;font:inherit;color:inherit}.item-main-line{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:.4rem;min-width:0;max-width:100%}.item-text{flex:0 1 auto;min-width:0;font-size:.95rem;font-weight:500;color:var(--ink);line-height:1.25;word-break:break-word;transition:color .15s ease}.item-qty{flex-shrink:0;padding:.05rem .42rem;border-radius:var(--radius-pill);background:var(--cream-dark);color:var(--ink-muted);font-size:.74rem;font-weight:700;letter-spacing:.01em;line-height:1.35}.item-note{display:block;max-width:100%;font-size:.8rem;font-weight:500;color:var(--ink-muted);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-row.completed .item-text{text-decoration:line-through;color:var(--ink-faint)}.item-row.completed .item-note{opacity:.65}.delete-btn{width:1.625rem;height:1.625rem;flex-shrink:0;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--ink-faint);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease,background .15s ease,color .15s ease}.item-row:hover .delete-btn,.item-row:focus-within .delete-btn,.delete-btn:focus-visible{opacity:1}.delete-btn:hover{background:#c06b4a1a;color:var(--terra)}.delete-btn:active{background:#c06b4a29;color:var(--terra);transform:scale(.92)}.toggle-btn,.important-btn,.edit-btn,.delete-btn,.drag-handle{position:relative}.toggle-btn:after,.important-btn:after,.edit-btn:after,.delete-btn:after,.drag-handle:after{content:"";position:absolute;inset:-8px -3px}.toggle-btn svg{width:.75rem;height:.75rem}.important-btn svg,.edit-btn svg{width:.8125rem;height:.8125rem}.delete-btn svg,.drag-handle svg,.items-divider-btn svg{width:.875rem;height:.875rem}.add-btn svg{width:1.375rem;height:1.375rem}.add-clear-btn svg,.theme-toggle svg,.nav-account-item svg{width:1rem;height:1rem}.nav-overflow-trigger svg{width:1.125rem;height:1.125rem}.offline-pill svg{width:.8125rem;height:.8125rem}.item-edit-fields{flex:1;min-width:0;display:grid;grid-template-columns:minmax(6.25rem,1fr) 4rem 6rem;gap:.35rem;align-items:end}.item-edit-input{flex:1;background:transparent;border:none;border-bottom:2px solid var(--sage);border-radius:0;padding:.05rem .2rem;font-family:DM Sans,sans-serif;font-size:max(1rem,16px);font-weight:400;color:var(--ink);outline:none;min-width:0;transition:border-color .15s ease}.item-edit-input:focus{border-bottom-color:var(--sage-dark)}.item-edit-meta{font-size:max(1rem,16px)}.item-edit-note{grid-column:1 / -1;font-size:.95rem;color:var(--ink-muted)}.item-edit-note::placeholder{color:var(--ink-faint);font-weight:400}.item-row.is-editing{border-color:var(--sage-light);box-shadow:0 0 0 2px #6b8f711f;padding-block:.5rem}.edit-btn{width:1.625rem;height:1.625rem;flex-shrink:0;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--ink-faint);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease,background .15s ease,color .15s ease}.item-row:hover .edit-btn,.item-row:focus-within .edit-btn,.edit-btn:focus-visible{opacity:1}.edit-btn:hover{background:#6b8f711a;color:var(--sage)}.edit-btn:active{background:#6b8f7129;color:var(--sage);transform:scale(.92)}@media(hover:none),(max-width:768px){.delete-btn,.edit-btn,.important-btn,.drag-handle{opacity:1}}.empty-state{text-align:center;padding:2.5rem 1rem 3rem;display:flex;flex-direction:column;align-items:center;gap:.65rem;animation:slide-up .5s .2s cubic-bezier(.16,1,.3,1) both}.empty-icon{color:var(--ink-faint);opacity:.6}.empty-title{font-family:Playfair Display,serif;font-size:1.35rem;font-weight:700;color:var(--ink)}.empty-text{font-size:.92rem;color:var(--ink-muted);max-width:240px;line-height:1.5}.empty-tip{max-width:280px;font-size:.82rem;color:var(--ink-muted);line-height:1.5}.empty-tip code{padding:.1rem .35rem;border-radius:var(--radius-sm);background:var(--cream-dark);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;color:var(--sage-dark)}.empty-tip-link{display:inline;padding:0;border:none;background:none;font:inherit;font-weight:700;color:var(--terra);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.empty-tip-link:hover{color:var(--terra-light)}.list-summary{margin-bottom:.4rem}.list-meta-row{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;min-height:1.7rem;padding:0 .05rem}.stats-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.15rem;flex-shrink:0;margin-left:auto}.stats-text{flex:1 1 auto;min-width:0;font-size:.78rem;font-weight:500;color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stats-text strong{color:var(--ink);font-weight:700}.clear-done-btn{font-size:.76rem;font-weight:600;color:var(--terra);background:none;border:none;cursor:pointer;min-height:1.9rem;padding:.15rem .4rem;border-radius:var(--radius-sm);transition:background .15s ease;font-family:DM Sans,sans-serif;white-space:nowrap}.clear-done-btn:hover{background:#fff0ed}.list-admin-btn{font-size:.76rem;font-weight:600;color:var(--ink-muted);background:none;border:none;cursor:pointer;min-height:1.9rem;padding:.15rem .4rem;border-radius:var(--radius-sm);transition:background .15s ease,color .15s ease;font-family:DM Sans,sans-serif;white-space:nowrap}.list-admin-btn:hover{background:var(--cream-dark);color:var(--ink)}.list-tab-add:disabled{opacity:.4;cursor:not-allowed;transform:none}.list-tab-add:disabled:hover{background:transparent;border-color:var(--cream-deep);color:var(--sage-dark)}.sort-toggle{display:inline-flex;align-items:center;flex-shrink:0;padding:.08rem;gap:.05rem;background:var(--cream-dark);border:1px solid var(--cream-deep);border-radius:var(--radius-pill)}.sort-toggle-btn{border:none;background:transparent;color:var(--ink-muted);font-family:DM Sans,sans-serif;font-size:.74rem;font-weight:600;letter-spacing:.01em;min-height:1.7rem;padding:.18rem .5rem;border-radius:var(--radius-pill);cursor:pointer;transition:background .15s ease,color .15s ease;white-space:nowrap}.sort-toggle-btn:hover{color:var(--ink)}.sort-toggle-btn.active{background:var(--surface);color:var(--sage-dark);box-shadow:var(--shadow-sm)}.progress-track{height:3px;border-radius:var(--radius-pill);background:var(--cream-deep);overflow:hidden;margin-top:.28rem}.progress-fill{height:100%;border-radius:var(--radius-pill);background:var(--sage);transition:width .35s cubic-bezier(.16,1,.3,1)}@media(prefers-reduced-motion:reduce){.progress-fill{transition:none}}@media(max-width:380px){.list-meta-row{gap:.3rem}.sort-toggle-btn{padding:.16rem .32rem;font-size:.65rem}.clear-done-btn{font-size:.66rem;padding:.12rem .22rem}}.local-ticks-note{margin:-.35rem 0 1.1rem;padding:.55rem .8rem;border:1.5px dashed var(--cream-deep);border-radius:var(--radius-sm);background:transparent;color:var(--ink-muted);font-size:.8rem;font-weight:500;line-height:1.45;text-align:center}.import-link-btn{min-height:44px;margin-top:1.25rem;border-radius:var(--radius-sm);border:1.5px solid var(--cream-deep);background:var(--surface);color:var(--ink);display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:.88rem;font-weight:700;box-shadow:var(--shadow-sm);transition:background .18s ease,border-color .18s ease,transform .15s ease}.import-link-btn:hover{background:var(--cream-dark);border-color:var(--ink-faint);transform:translateY(-1px)}@keyframes undo-toast-in{0%{opacity:0;transform:translate(-50%) scale(.92) translateY(6px)}70%{opacity:1;transform:translate(-50%) scale(1.02) translateY(0)}to{opacity:1;transform:translate(-50%) scale(1) translateY(0)}}.undo-toast{position:fixed;left:50%;bottom:max(1.25rem,calc(.85rem + env(safe-area-inset-bottom,0px)));z-index:700;width:min(26.25rem,calc(100vw - 2rem - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));max-width:calc(100vw - 2rem);transform:translate(-50%);border:1.5px solid var(--cream-deep);border-radius:var(--radius);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-lg);display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;box-sizing:border-box;animation:undo-toast-in .22s cubic-bezier(.16,1,.3,1) both}.undo-toast span{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}.undo-toast button{border:none;background:transparent;color:var(--sage-dark);cursor:pointer;flex:0 0 auto;font-family:DM Sans,sans-serif;font-size:.88rem;font-weight:800;min-height:44px;min-width:44px;padding:0 .35rem;display:inline-flex;align-items:center;justify-content:center}.undo-toast button:hover{color:var(--sage)}html:has(.login-container),body:has(.login-container){height:100%;overflow:hidden;overscroll-behavior:none}.login-container{height:100dvh;min-height:100dvh;max-height:100dvh;display:flex;align-items:flex-start;justify-content:center;padding:max(1.75rem,env(safe-area-inset-top,0px)) max(1.5rem,env(safe-area-inset-right,0px)) max(1.5rem,env(safe-area-inset-bottom,0px)) max(1.25rem,env(safe-area-inset-left,0px));background:var(--cream);position:relative;z-index:1;overflow-x:hidden;overflow-y:auto;overscroll-behavior:none;touch-action:manipulation;transition:background-color .4s ease}.login-container:before{content:"";position:absolute;inset:-20% -10% auto;height:55%;background:radial-gradient(ellipse 70% 80% at 80% 0%,rgba(107,143,113,.16),transparent 60%),radial-gradient(ellipse 55% 70% at 10% 20%,rgba(192,107,74,.08),transparent 55%);pointer-events:none}.login-theme-toggle{position:absolute;top:0;right:0;z-index:5;width:40px;height:40px;margin:0;padding:0;border-radius:50%;border:1.5px solid var(--cream-deep);background:var(--surface);color:var(--ink-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-sm);transform:translate(50%,-50%);transition:color .35s ease,border-color .35s ease,background .35s ease,box-shadow .35s ease;-webkit-tap-highlight-color:transparent;outline:none}.login-theme-toggle svg{transition:opacity .25s ease,transform .35s ease}.login-theme-toggle:hover{color:var(--ink);border-color:var(--ink-faint);background:var(--cream-dark)}.login-theme-toggle:focus,.login-theme-toggle:focus-visible{outline:none;box-shadow:var(--shadow-sm)}.login-theme-toggle:focus-visible{border-color:var(--sage);color:var(--ink)}.login-card{background:var(--surface);border:1.5px solid var(--cream-deep);border-radius:22px;padding:clamp(1.35rem,3.5vh,2.25rem) clamp(1.35rem,4vw,2rem) clamp(1.1rem,3vh,1.75rem);max-width:400px;width:100%;text-align:center;box-shadow:var(--shadow-lg);animation:slide-up .45s cubic-bezier(.16,1,.3,1) both;position:relative;z-index:1;overflow:visible;margin-block:auto;transition:background-color .4s ease,border-color .4s ease,box-shadow .4s ease,color .4s ease}.login-logo{width:clamp(48px,7vh,56px);height:clamp(48px,7vh,56px);border-radius:15px;display:flex;align-items:center;justify-content:center;margin:0 auto clamp(.65rem,1.8vh,1rem);overflow:hidden;border:1px solid var(--cream-deep);box-shadow:var(--shadow-sm);background:var(--cream)}.login-brand-mark{width:100%;height:100%;object-fit:cover}.login-kicker{margin:0 0 .25rem;color:var(--sage-dark);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.login-title{font-family:Playfair Display,serif;font-size:clamp(1.9rem,5vh,2.25rem);font-weight:900;color:var(--ink);letter-spacing:-.03em;line-height:1.1;margin:0 0 .4rem}.login-title em{font-style:normal;color:var(--sage);font-weight:900}.login-subtitle{font-size:.9rem;font-weight:500;color:var(--ink-muted);margin:0 auto clamp(.8rem,2.2vh,1.25rem);line-height:1.4;max-width:28ch}.login-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin:0 0 clamp(.85rem,2.4vh,1.5rem);padding:0;list-style:none}.login-benefits li{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:clamp(.5rem,1.5vh,.75rem) .4rem;border-radius:var(--radius-sm);background:var(--cream);border:1px solid var(--cream-deep);text-align:center}.login-benefit-icon{flex:0 0 auto;width:30px;height:30px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#6b8f7124;color:var(--sage-dark)}.login-benefit-copy{display:flex;flex-direction:column;gap:.1rem;min-width:0}.login-benefit-copy strong{color:var(--ink);font-size:.76rem;font-weight:700;line-height:1.2}.login-benefit-copy span{color:var(--ink-muted);font-size:.68rem;line-height:1.3}.login-actions{display:flex;flex-direction:column;align-items:stretch}.login-button{display:flex;align-items:center;justify-content:center;gap:.7rem;width:100%;min-height:48px;padding:.85rem 1.25rem;border:1.5px solid var(--cream-deep);border-radius:var(--radius);background:var(--surface);font-family:DM Sans,sans-serif;font-weight:600;font-size:.95rem;color:var(--ink);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .12s ease;box-shadow:var(--shadow-sm)}.login-button:hover{border-color:var(--ink-faint);box-shadow:var(--shadow-md);transform:translateY(-1px)}.login-button:active{transform:translateY(0)}.login-button:disabled{opacity:.65;cursor:not-allowed;transform:none;box-shadow:var(--shadow-sm)}.login-button img{width:20px;height:20px;flex-shrink:0}.setup-warning{background:#fffaf9;border:1.5px solid #ffd5c8;color:#a04020;padding:1rem 1.25rem;border-radius:var(--radius);display:flex;gap:.75rem;text-align:left;font-size:.875rem;margin-bottom:2rem}.setup-warning .warning-icon{flex-shrink:0;color:var(--terra)}.setup-warning strong{display:block;margin-bottom:.25rem;font-size:.92rem}.setup-warning code{background:#0000000d;padding:.1rem .3rem;border-radius:4px;font-family:monospace;font-size:.85em}.form-error{margin:0 0 1rem;padding:.7rem .85rem;border-radius:var(--radius-sm);border:1px solid #f0b6a1;background:#fff5f2;color:#9a4125;font-size:.84rem;line-height:1.4;text-align:left}.form-success{margin:0 0 1rem;padding:.7rem .85rem;border-radius:var(--radius-sm);border:1px solid rgba(107,143,113,.35);background:#6b8f711a;color:var(--sage-dark);font-size:.84rem;line-height:1.4;text-align:left}.inline-error{margin-top:.75rem;margin-bottom:0}.dismissible-message{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.dismissible-message button{border:none;background:transparent;color:currentColor;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;opacity:.72;padding:.1rem;flex-shrink:0;width:2rem;height:2rem;border-radius:50%}.dismissible-message button:hover{opacity:1}.login-trust{margin:.55rem auto 0;color:var(--ink-muted);font-size:.74rem;line-height:1.35;max-width:30ch}.login-footer-links{display:flex;align-items:center;justify-content:center;gap:1.1rem;margin-top:clamp(.55rem,1.8vh,.9rem)}.install-button{min-height:36px;border:0;background:transparent;color:var(--sage-dark);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.4rem;font:700 .84rem DM Sans,sans-serif}.install-button:hover{color:var(--sage)}.login-code-link{display:inline-flex;align-items:center;min-height:36px;font-size:.84rem;font-weight:700;color:var(--sage-dark);text-decoration:none}.login-code-link:hover{text-decoration:underline;color:var(--sage)}.login-legal{margin-top:clamp(.6rem,2vh,1rem);color:var(--ink-faint);font-size:.68rem;line-height:1.4}.login-legal a{color:inherit;text-decoration:none}.login-legal a:hover{color:var(--ink-muted);text-decoration:underline}.loading-screen{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;background:var(--cream);position:relative;z-index:1;color:var(--ink-muted);font-size:.9rem;font-weight:600}.loading-spinner{width:32px;height:32px;border:3px solid var(--cream-deep);border-top-color:var(--sage);border-radius:50%;animation:loader-spin .7s linear infinite}.modal-backdrop{position:fixed;inset:0;z-index:500;display:flex;align-items:center;justify-content:center;padding:max(1.25rem,env(safe-area-inset-top,0px)) max(1.25rem,env(safe-area-inset-right,0px)) max(1.25rem,env(safe-area-inset-bottom,0px)) max(1.25rem,env(safe-area-inset-left,0px));background:#2a252061;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.modal-backdrop.confirm-backdrop{z-index:600}html.dark .modal-backdrop,body.dark .modal-backdrop{background:#0000007a}.settings-modal{width:min(100%,24.375rem);background:var(--surface);border:1.5px solid var(--cream-deep);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:1.25rem;animation:pop-in .22s cubic-bezier(.16,1,.3,1) both}.settings-backdrop{align-items:flex-end;justify-content:center;box-sizing:border-box;padding:max(1rem,calc(env(safe-area-inset-top,0px) + .5rem)) max(.65rem,env(safe-area-inset-right,0px)) max(.65rem,env(safe-area-inset-bottom,0px)) max(.65rem,env(safe-area-inset-left,0px))}@media(min-width:560px){.settings-backdrop{align-items:center;padding:max(1.5rem,env(safe-area-inset-top,0px)) max(1.25rem,env(safe-area-inset-right,0px)) max(1.5rem,env(safe-area-inset-bottom,0px)) max(1.25rem,env(safe-area-inset-left,0px))}}.reminder-settings-modal{width:min(100%,27.5rem);max-height:calc(100vh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 2rem);max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 2rem);min-height:0;display:flex;flex-direction:column;padding:0;overflow:hidden;border-radius:18px 18px var(--radius) var(--radius);align-self:flex-end}@media(min-width:560px){.reminder-settings-modal{border-radius:var(--radius);align-self:center;max-height:min(720px,calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 3rem))}}.settings-sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;flex-shrink:0;padding:.9rem 1rem .7rem;border-bottom:1px solid var(--cream-deep);background:var(--surface);position:relative;z-index:1}.settings-sheet-heading h2{font-family:Playfair Display,serif;font-size:1.35rem;line-height:1.15;color:var(--ink)}.settings-sheet-heading p{margin-top:.2rem;color:var(--ink-faint);font-size:.82rem}.settings-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.25rem;flex-shrink:0;margin:.75rem 1rem 0;padding:.22rem;border-radius:11px;background:var(--cream);border:1px solid var(--cream-deep)}.settings-tab{min-height:38px;border:none;border-radius:8px;background:transparent;color:var(--ink-muted);font:700 .82rem DM Sans,sans-serif;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.settings-tab.active{background:var(--surface);color:var(--sage-dark);box-shadow:var(--shadow-sm)}.settings-preset-row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.settings-preset-btn{min-height:32px;padding:.3rem .65rem;border-radius:999px;border:1px solid var(--cream-deep);background:var(--surface);color:var(--ink-muted);font:700 .74rem DM Sans,sans-serif;cursor:pointer}.settings-preset-btn:hover{border-color:var(--sage-light);color:var(--sage-dark)}.settings-preset-count{margin-left:auto;font-size:.72rem;font-weight:600;color:var(--ink-faint)}.settings-card-list{padding-bottom:.35rem}.settings-pref-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.15rem}.settings-pref-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.55rem .15rem;border-top:1px solid var(--cream-deep);cursor:pointer}.settings-pref-list li:first-child .settings-pref-row{border-top:none;padding-top:.15rem}.settings-inline-note{margin:0;font-size:.74rem;color:var(--ink-faint);line-height:1.4;text-align:center}.add-hint.is-pref-hidden{min-height:0;margin:0;padding:0;overflow:hidden}.settings-sheet-body{flex:0 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:.7rem;padding:.85rem 1rem 1.25rem;scroll-padding-bottom:1rem}.settings-sheet-footer{flex-shrink:0;position:relative;z-index:1;padding:.65rem 1rem .85rem;border-top:1px solid var(--cream-deep);background:var(--surface);display:flex;flex-direction:column;gap:.5rem;padding-bottom:max(.85rem,env(safe-area-inset-bottom,0px))}.settings-card{display:flex;flex-direction:column;gap:.7rem;padding:.75rem .8rem;border:1px solid var(--cream-deep);border-radius:12px;background:var(--cream)}.settings-card.is-disabled{opacity:.48;pointer-events:none}.settings-card-title{margin:0;font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-faint)}.settings-block{display:flex;flex-direction:column;gap:.4rem}.settings-label{margin:0;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint)}.settings-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:0;border:none;border-radius:0;background:transparent}.settings-toggle-copy{display:flex;flex-direction:column;gap:.12rem;min-width:0}.settings-toggle-copy strong{font-size:.92rem;color:var(--ink)}.settings-toggle-copy span{font-size:.76rem;color:var(--ink-muted);line-height:1.35}.settings-switch{position:relative;width:2.875rem;height:1.75rem;flex-shrink:0;border:none;border-radius:var(--radius-pill);background:var(--cream-deep);cursor:pointer;padding:0;transition:background .18s ease}.settings-switch:focus-visible{outline:3px solid rgba(107,143,113,.35);outline-offset:2px}.settings-switch.is-on{background:var(--sage)}.settings-switch-knob{position:absolute;top:.1875rem;left:.1875rem;width:1.375rem;height:1.375rem;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm);transition:transform .18s ease}.settings-switch.is-on .settings-switch-knob{transform:translate(1.125rem)}.settings-day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.28rem}.settings-day-chip{min-height:38px;border:1px solid var(--cream-deep);border-radius:9px;background:var(--surface);color:var(--ink-muted);font:700 .7rem DM Sans,sans-serif;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease;-webkit-tap-highlight-color:transparent}.settings-day-chip:hover:not(:disabled){border-color:var(--ink-faint);color:var(--ink)}.settings-day-chip.active{background:#6b8f7129;border-color:var(--sage-light);color:var(--sage-dark)}.settings-day-chip:disabled{cursor:default}.settings-field-row{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.settings-field{display:flex;flex-direction:column;gap:.28rem;min-width:0}.settings-field span{font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint)}.settings-field input[type=time]{min-height:42px;padding:.4rem .5rem;border:1.5px solid var(--cream-deep);border-radius:10px;background:var(--surface);color:var(--ink);font:500 .95rem DM Sans,sans-serif}.settings-field input[type=time]:focus{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px #6b8f7124}.settings-segment.is-four{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-segment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem;padding:.22rem;border-radius:11px;background:var(--surface);border:1px solid var(--cream-deep)}.settings-segment-btn{min-height:38px;border:none;border-radius:8px;background:transparent;color:var(--ink-muted);font:700 .78rem DM Sans,sans-serif;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease,box-shadow .15s ease;-webkit-tap-highlight-color:transparent}.settings-segment-btn:hover:not(:disabled){color:var(--ink)}.settings-segment-btn.active{background:var(--cream);color:var(--sage-dark);box-shadow:var(--shadow-sm)}.settings-segment-btn:disabled{cursor:default}.settings-permission{display:flex;align-items:flex-start;gap:.4rem;padding:.5rem .55rem;border-radius:10px;background:var(--surface);border:1px solid var(--cream-deep);color:var(--ink-muted);font-size:.76rem;line-height:1.4}.settings-permission svg{flex-shrink:0;margin-top:.1rem}.settings-permission.is-ok{background:#6b8f711a;border-color:#6b8f7133;color:var(--sage-dark)}.settings-notif-actions{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.settings-notif-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:40px;padding:.4rem .55rem;border-radius:10px;border:1.5px solid var(--sage);background:var(--sage);color:#fff;font:700 .78rem DM Sans,sans-serif;cursor:pointer;-webkit-tap-highlight-color:transparent}.settings-notif-btn.is-secondary{background:var(--surface);border-color:var(--cream-deep);color:var(--ink-muted)}.settings-notif-btn:hover:not(:disabled){filter:brightness(.97)}.settings-notif-btn:disabled{opacity:.55;cursor:not-allowed}.settings-notif-status{margin:0;font-size:.76rem;color:var(--ink-muted);line-height:1.35}.settings-preview{display:flex;flex-direction:column;gap:.15rem;margin:0;font-size:.8rem;color:var(--ink-muted);line-height:1.4;padding:.5rem .55rem;border-radius:10px;background:#6b8f711a;border:1px solid rgba(107,143,113,.16)}.settings-preview strong{font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--sage-dark)}.settings-preview-sub{font-size:.74rem;color:var(--ink-faint)}.settings-actions{display:flex;justify-content:stretch;gap:.45rem}.settings-primary-btn{flex:1;min-height:44px;padding:.5rem .9rem;border-radius:11px;font:700 .9rem DM Sans,sans-serif;cursor:pointer;border:1.5px solid var(--cream-deep);-webkit-tap-highlight-color:transparent}.settings-primary-btn{background:var(--sage);border-color:var(--sage);color:#fff}.settings-primary-btn:hover:not(:disabled){background:var(--sage-dark);border-color:var(--sage-dark)}.settings-primary-btn:disabled{opacity:.5;cursor:not-allowed}.settings-footnote{margin:0;font-size:.7rem;color:var(--ink-faint);line-height:1.35;text-align:center}.settings-footnote.is-error{color:var(--danger)}@media(min-width:560px){.settings-actions{justify-content:flex-end}.settings-primary-btn{flex:0 0 auto;min-width:6.5rem}.settings-footnote{text-align:left}.settings-sheet-footer .settings-primary-btn{min-width:8rem}}.reminder-banner{display:flex;align-items:center;justify-content:space-between;gap:.65rem;margin-top:.65rem;padding:.55rem .7rem;border-radius:var(--radius-sm);background:#6b8f711f;border:1px solid rgba(107,143,113,.22);color:var(--sage-dark);font-size:.82rem;font-weight:500;line-height:1.35}.reminder-banner-action{flex-shrink:0;border:none;background:transparent;color:var(--sage-dark);font:700 .78rem DM Sans,sans-serif;text-decoration:underline;text-underline-offset:2px;cursor:pointer;padding:.15rem .2rem}.modal-header{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.modal-header h2{font-family:Playfair Display,serif;font-size:1.5rem;line-height:1.15;color:var(--ink)}.modal-header p{color:var(--ink-faint);font-size:.86rem;margin-top:.2rem}.modal-close{width:2.125rem;height:2.125rem;border-radius:50%;border:1.5px solid var(--cream-deep);background:transparent;color:var(--ink-muted);cursor:pointer;flex:0 0 auto;display:flex;align-items:center;justify-content:center}.modal-close:hover{background:var(--cream-dark);color:var(--ink)}.share-modal{width:min(100%,25rem);max-height:min(40rem,calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 2rem));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:1.15rem 1.15rem 1rem}.settings-sheet-body,.share-modal{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--sage) 42%,transparent) transparent}.settings-sheet-body::-webkit-scrollbar,.share-modal::-webkit-scrollbar{width:8px}.settings-sheet-body::-webkit-scrollbar-track,.share-modal::-webkit-scrollbar-track{background:transparent;margin-block:.35rem}.settings-sheet-body::-webkit-scrollbar-thumb,.share-modal::-webkit-scrollbar-thumb{background-color:color-mix(in srgb,var(--sage) 40%,var(--cream-deep));border-radius:999px;border:2px solid transparent;background-clip:padding-box}.settings-sheet-body::-webkit-scrollbar-thumb:hover,.share-modal::-webkit-scrollbar-thumb:hover{background-color:var(--sage-light)}.settings-sheet-body::-webkit-scrollbar-corner,.share-modal::-webkit-scrollbar-corner{background:transparent}.share-modal-header{margin-bottom:.85rem}.share-modal-header p{margin-top:.35rem}.share-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.3rem;padding:.25rem;margin-bottom:1rem;border-radius:var(--radius);background:var(--cream);border:1.5px solid var(--cream-deep)}.share-tab{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:40px;padding:.45rem .6rem;border:0;border-radius:calc(var(--radius) - 4px);background:transparent;color:var(--ink-muted);font:700 .86rem DM Sans,sans-serif;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease;-webkit-tap-highlight-color:transparent}.share-tab svg{flex-shrink:0;display:block}.share-tab:hover{color:var(--ink)}.share-tab.is-active{background:var(--surface);color:var(--sage-dark);box-shadow:var(--shadow-sm)}.share-tab-body{display:flex;flex-direction:column;gap:.85rem;width:100%}.share-live-line{display:inline-flex;align-items:center;gap:.4rem;color:var(--sage-dark)!important;font-size:.8rem!important;font-weight:700;min-height:1.2rem}.share-live-dot{width:7px;height:7px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 3px #6b8f7133;flex-shrink:0}.share-panel{display:flex;flex-direction:column;align-items:stretch;gap:.85rem;width:100%}.share-section{display:flex;flex-direction:column;gap:.45rem;width:100%}.share-section-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.share-section-title{margin:0;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.share-section-hint{margin:0;color:var(--ink-muted);font-size:.74rem;line-height:1.35}.share-url-line{margin:.55rem 0 0;font-size:.82rem;line-height:1.4;word-break:break-all}.share-url-line a{color:var(--sage-dark)}.share-code-hero{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;min-height:56px;padding:.7rem .85rem .7rem 1rem;border:1.5px solid var(--cream-deep);border-radius:var(--radius);background:var(--cream);color:var(--ink);cursor:pointer;text-align:left;transition:border-color .15s ease,background .15s ease,transform .12s ease;-webkit-tap-highlight-color:transparent}.share-code-hero:hover:not(:disabled){border-color:var(--sage-light);background:#6b8f7114}.share-code-hero:active:not(:disabled){transform:scale(.99)}.share-code-hero:disabled{opacity:.65;cursor:not-allowed}.share-code-hero-value{font-family:DM Sans,ui-monospace,monospace;font-size:clamp(1.15rem,4.6vw,1.5rem);font-weight:800;letter-spacing:.14em;line-height:1.15;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-code-hero-action{display:inline-flex;align-items:center;gap:.35rem;flex-shrink:0;padding:.4rem .7rem;border-radius:var(--radius-pill);background:var(--surface);border:1.5px solid var(--cream-deep);color:var(--sage-dark);font-size:.78rem;font-weight:800}.share-code-hero:hover:not(:disabled) .share-code-hero-action{border-color:var(--sage)}.share-send-row{display:flex;align-items:stretch;flex-wrap:wrap;gap:.5rem;width:100%}.share-send-row>button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:46px;padding:.6rem .85rem;line-height:1;white-space:nowrap}.share-send-row>button svg{flex-shrink:0;display:block;margin-top:0}.share-send-primary{flex:1.15 1 0;width:auto;min-width:0;font-size:.9rem}.share-send-secondary{flex:1 1 0;min-width:0;font-size:.84rem}.share-send-secondary.is-active{border-color:var(--sage);background:#6b8f711f;color:var(--sage-dark)}.share-qr-panel{display:flex;flex-direction:column;align-items:center;gap:.45rem;padding:.75rem 0 .15rem;animation:pop-in .18s cubic-bezier(.16,1,.3,1) both}.qr-frame{width:168px;height:168px;border-radius:var(--radius);border:1.5px solid var(--cream-deep);background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}.qr-placeholder{width:140px;height:140px;border-radius:var(--radius-sm);background:var(--cream-dark)}.share-status{min-height:1.2rem;color:var(--ink-muted);font-size:.86rem;font-weight:600;text-align:center}.share-section-perms{padding-top:.35rem;border-top:1px solid var(--cream-deep)}.share-stop{margin-top:.15rem;align-self:center}.share-join-form{display:flex;flex-direction:column;gap:.45rem;width:100%}.share-join-row{display:flex;align-items:center;gap:.45rem;min-height:52px;padding:.3rem .35rem .3rem .9rem;border:1.5px solid var(--cream-deep);border-radius:var(--radius);background:var(--cream);transition:border-color .15s ease}.share-join-row:focus-within{border-color:var(--cream-deep);box-shadow:none;background:var(--cream)}.share-join-input{flex:1;min-width:0;border:0;appearance:none;background:transparent;background-color:transparent;color:var(--ink);font:800 1.2rem/1.2 DM Sans,ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;outline:none;padding:.55rem 0;caret-color:var(--sage-dark);caret-shape:bar}.share-join-input:focus,.share-join-input:focus-visible{outline:none}.share-join-input::placeholder{color:var(--ink-faint);font-weight:600;letter-spacing:.08em}.share-join-input::selection{background:#6b8f712e;color:var(--ink)}.share-join-submit{flex-shrink:0;min-height:38px;min-width:4.25rem;padding:0 .85rem;border:0;border-radius:calc(var(--radius) - 4px);background:var(--sage);color:#fff;font:700 .86rem DM Sans,sans-serif;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}.share-join-submit:hover:not(:disabled){background:var(--sage-dark)}.share-join-submit:disabled{opacity:.5;cursor:not-allowed}.share-join-error{margin:0;color:var(--terra);font-size:.76rem;font-weight:600;line-height:1.35}.share-section-mine{gap:.65rem}.share-empty-compact{padding:.75rem .5rem .25rem}.share-empty-compact .share-empty-text{margin:.35rem 0 0}.join-card{max-width:400px}.join-title{font-size:2rem}.join-form{display:flex;flex-direction:column;text-align:left;width:100%}.join-label{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:.4rem}.join-input-row{display:flex;align-items:center;gap:.55rem;min-height:52px;padding:0 .9rem;border:1.5px solid var(--cream-deep);border-radius:var(--radius);background:var(--surface);transition:border-color .15s ease}.join-input-row:focus-within{border-color:var(--cream-deep);box-shadow:none}.join-input-icon{color:var(--sage-dark);display:inline-flex;flex-shrink:0}.join-input{flex:1;min-width:0;border:0;appearance:none;background:transparent;background-color:transparent;color:var(--ink);font:800 1.25rem/1.2 DM Sans,ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;outline:none;padding:.7rem 0;caret-color:var(--sage-dark);caret-shape:bar}.join-input:focus,.join-input:focus-visible{outline:none}.join-input::placeholder{color:var(--ink-faint);letter-spacing:.1em;font-weight:600}.join-input::selection{background:#6b8f712e;color:var(--ink)}.join-input:-webkit-autofill,.join-input:-webkit-autofill:hover,.join-input:-webkit-autofill:focus,.share-join-input:-webkit-autofill,.share-join-input:-webkit-autofill:hover,.share-join-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);caret-color:var(--sage-dark);box-shadow:0 0 0 1000px transparent inset;transition:background-color 10000s ease-in-out 0s}.join-hint{margin:.45rem 0 1rem;color:var(--ink-muted);font-size:.76rem;line-height:1.35}.join-submit{margin-top:.15rem;background:var(--sage);border-color:var(--sage);color:#fff;font-weight:700}.join-submit svg{margin-left:.15rem}.join-submit:hover:not(:disabled){background:var(--sage-dark);border-color:var(--sage-dark);color:#fff}.join-submit:disabled:not([aria-busy=true]){opacity:1;background:var(--cream);border-color:var(--cream-deep);color:var(--ink-faint);box-shadow:none;transform:none;cursor:not-allowed}.join-submit[aria-busy=true]{opacity:.88;cursor:wait}.join-resolving{display:flex;flex-direction:column;align-items:center;gap:.85rem;padding:1.5rem 0 .5rem;color:var(--ink-muted);font-size:.9rem;font-weight:600}.join-footer{margin-top:1.35rem;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.55rem .85rem}.join-footer a{color:var(--sage-dark);font-weight:700;text-decoration:none}.login-legal-sep{color:var(--ink-muted);font-weight:700}.join-footer a:hover{text-decoration:underline}.share-perms-state{font-size:.72rem;font-weight:700;padding:.15rem .55rem;border-radius:var(--radius-pill);background:var(--cream-dark);color:var(--ink-muted)}.share-perms-state.is-edit{background:#6b8f7129;color:var(--sage-dark)}.perm-chips{display:flex;gap:.4rem}.perm-chip{flex:1;min-height:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;padding:.4rem .3rem;border:1.5px solid var(--cream-deep);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-muted);cursor:pointer;font-family:DM Sans,sans-serif;font-size:.74rem;font-weight:700;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .12s ease}.perm-chip:hover{border-color:var(--sage-light);transform:translateY(-1px)}.perm-chip.is-on{border-color:var(--sage);background:#6b8f711f;color:var(--sage-dark)}.share-caps{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.4rem .5rem;margin-top:.75rem;padding:.4rem .6rem .4rem .75rem;border-radius:var(--radius-pill);background:var(--cream-dark);max-width:100%}.share-caps-label{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;font-weight:700;color:var(--ink-muted)}.share-caps.is-active .share-caps-label{color:var(--sage-dark)}.share-caps-chips{display:inline-flex;flex-wrap:wrap;gap:.3rem}.share-cap{display:inline-flex;align-items:center;gap:.25rem;padding:.12rem .5rem;border-radius:var(--radius-pill);background:var(--surface);color:var(--ink-muted);font-size:.74rem;font-weight:700}.share-caps.is-active .share-cap{background:#6b8f7129;color:var(--sage-dark)}.public-item-row{cursor:pointer}.public-item-content{align-items:flex-start;text-align:left;background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer}.secondary-btn{min-height:42px;flex:1;border-radius:var(--radius-sm);border:1.5px solid var(--cream-deep);background:var(--surface);color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.45rem;font-family:DM Sans,sans-serif;font-size:.86rem;font-weight:700;transition:background .18s ease,border-color .18s ease,transform .15s ease}.secondary-btn:hover:not(:disabled){background:var(--cream-dark);border-color:var(--ink-faint);transform:translateY(-1px)}.secondary-btn:disabled{opacity:.55;cursor:not-allowed}.text-action-btn{border:none;background:transparent;color:var(--sage-dark);cursor:pointer;font-family:DM Sans,sans-serif;font-size:.83rem;font-weight:700;padding:.1rem .25rem}.text-action-btn:disabled{color:var(--ink-faint);cursor:not-allowed}.text-action-btn:hover:not(:disabled){color:var(--sage)}.text-action-btn.danger{color:var(--terra)}.text-action-btn.danger:hover:not(:disabled){color:var(--terra-light)}.primary-btn{width:100%;min-height:44px;border-radius:var(--radius-sm);border:none;background:var(--sage);color:#fff;cursor:pointer;font-family:DM Sans,sans-serif;font-size:.92rem;font-weight:700;letter-spacing:.01em;transition:background .18s ease,transform .15s ease}.primary-btn:hover:not(:disabled){background:var(--sage-dark);transform:translateY(-1px)}.primary-btn:disabled{opacity:.6;cursor:not-allowed}.danger-btn{min-height:42px;flex:1;border-radius:var(--radius-sm);border:none;background:var(--terra);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:DM Sans,sans-serif;font-size:.86rem;font-weight:700;transition:background .18s ease,transform .15s ease}.danger-btn:hover:not(:disabled){background:var(--terra-light);transform:translateY(-1px)}.danger-btn:disabled{opacity:.6;cursor:not-allowed}.confirm-actions{display:flex;gap:.65rem}.share-empty{display:flex;flex-direction:column;align-items:center;gap:.45rem;padding:.5rem 0 .25rem;color:var(--ink-muted);text-align:center}.share-empty p{margin:0;font-weight:600;color:var(--ink)}.share-empty .share-empty-text{font-size:.84rem;font-weight:400;color:var(--ink-muted);max-width:240px}.share-button{position:relative}.share-button.is-sharing{color:var(--sage-dark)}.share-button-dot{position:absolute;top:6px;right:6px;width:7px;height:7px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 2px var(--surface)}.grecaptcha-badge{visibility:hidden!important;opacity:0!important;pointer-events:none!important}.legal-wrapper{min-height:100vh;background:var(--cream);color:var(--ink);position:relative;z-index:1}.legal-header{display:flex;justify-content:center;padding:1.25rem 0;border-bottom:1px solid var(--cream-deep)}.legal-brand{display:flex;align-items:center;gap:.6rem;width:100%;max-width:720px;padding:0 1.5rem;text-decoration:none;color:inherit}.legal-content{max-width:720px;margin:0 auto;padding:2.5rem 1.5rem 5rem;line-height:1.6}.legal-content h1{font-family:Playfair Display,serif;font-size:2.2rem;margin:0 0 .4rem;letter-spacing:-.01em}.legal-content h2{font-family:Playfair Display,serif;font-size:1.25rem;margin:2rem 0 .6rem;color:var(--ink)}.legal-content p,.legal-content li{color:var(--ink-muted);font-size:.96rem}.legal-content ul{padding-left:1.25rem}.legal-content li{margin-bottom:.4rem}.legal-content a{color:var(--sage-dark);text-decoration:underline}.legal-content a:hover{color:var(--sage)}.legal-meta{font-size:.82rem;color:var(--ink-faint);margin:0 0 2rem}.legal-back{margin-top:3rem;font-size:.9rem}.not-found-wrapper,.error-boundary{min-height:100vh;background:var(--cream);display:flex;align-items:center;justify-content:center;padding:1.5rem;position:relative;z-index:1}.not-found-card,.error-boundary-card{max-width:420px;width:100%;background:var(--surface);border:1px solid var(--cream-deep);border-radius:var(--radius);padding:2.5rem 2rem;text-align:center;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;align-items:center;gap:1rem}.not-found-card h1,.error-boundary-card h1{font-family:Playfair Display,serif;font-size:1.7rem;margin:0;color:var(--ink)}.not-found-card p,.error-boundary-card p{color:var(--ink-muted);margin:0;font-size:.95rem;line-height:1.55}.not-found-card .empty-icon{color:var(--ink-faint)}.error-boundary-card svg{color:var(--terra)}.not-found-btn,.error-boundary-card .primary-btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;margin-top:.5rem;width:auto;min-width:11rem;padding-inline:1.4rem}.error-boundary-card a{color:var(--sage-dark);text-decoration:underline}@media(max-width:600px){.add-form{gap:.4rem;margin-bottom:.85rem}.add-primary-row{gap:.5rem}.add-input,.add-btn{height:48px}.add-btn{width:48px;border-radius:var(--radius-sm)}.add-input{padding:0 1rem;font-size:max(1rem,16px);border-radius:var(--radius-sm)}.add-clear-btn{right:calc(48px + .8rem)}.item-edit-fields{grid-template-columns:1fr}.container{padding:1rem 1rem 4rem}.navbar{padding:env(safe-area-inset-top,0px) 0 0}.navbar-content{padding:0 1rem}.page-title{font-size:1.9rem}.nav-account-name{display:none}.nav-account-trigger{padding:.22rem}.user-avatar{width:34px;height:34px;min-width:34px;min-height:34px}.user-actions{gap:.35rem}.theme-toggle,.nav-overflow-trigger{width:36px;height:36px}.nav-account-dot{top:2px;right:2px}.login-card{padding:1.5rem 1.15rem 1.25rem;border-radius:18px}.login-title{font-size:clamp(1.8rem,4.5vh,2.05rem)}}@media(max-height:620px){.login-benefit-copy span,.login-trust{display:none}.login-container{padding-top:max(1.5rem,env(safe-area-inset-top,0px));padding-bottom:.75rem}}.app-wrapper,.legal-wrapper,.not-found-wrapper,.error-boundary{min-height:100dvh}.loading-screen{height:100dvh}.item-content{border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;text-align:left}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(pointer:coarse){.theme-toggle,.modal-close,.nav-overflow-trigger{width:2.75rem;height:2.75rem}.item-row{min-height:2.75rem;padding:.5rem .6rem;gap:.5rem}.toggle-btn{width:1.75rem;height:1.75rem}.toggle-btn svg{width:.875rem;height:.875rem}.important-btn,.edit-btn,.delete-btn{width:2rem;height:2rem}.important-btn svg,.edit-btn svg{width:.9375rem;height:.9375rem}.delete-btn svg,.drag-handle svg{width:1rem;height:1rem}.drag-handle{width:1.75rem;height:2.25rem}.list-tab,.perm-chip,.secondary-btn,.danger-btn{min-height:2.75rem}.sort-toggle-btn,.clear-done-btn,.list-admin-btn{min-height:2rem}.items-divider-btn{min-height:2.25rem}}html.dark .form-error,html.dark .setup-warning,body.dark .form-error,body.dark .setup-warning{background:#e08a6a1a;border-color:#e08a6a61;color:#f1b39d}html.dark .clear-done-btn:hover,body.dark .clear-done-btn:hover{background:#e08a6a1a}.login-divider{display:flex;align-items:center;gap:.65rem;margin:clamp(.6rem,1.8vh,.9rem) 0 clamp(.5rem,1.5vh,.7rem);color:var(--ink-faint);font-size:.7rem;font-weight:600;letter-spacing:.01em}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--cream-deep)}.login-divider span{flex:0 1 auto;white-space:nowrap}.guest-button{min-height:48px;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--cream-deep);border-radius:var(--radius);color:var(--ink);background:var(--cream);text-decoration:none;font-size:.92rem;font-weight:700;transition:background .15s ease,border-color .15s ease}.guest-button:hover{background:var(--cream-dark);border-color:var(--ink-faint)}html.dark .login-benefit-icon,body.dark .login-benefit-icon{background:#7fb98a29;color:var(--sage-light)}html.dark .login-container:before,body.dark .login-container:before{background:radial-gradient(ellipse 70% 80% at 80% 0%,rgba(127,185,138,.12),transparent 60%),radial-gradient(ellipse 55% 70% at 10% 20%,rgba(224,138,106,.07),transparent 55%)}.guest-badge{padding:.2rem .55rem;border-radius:var(--radius-pill);background:var(--cream-dark);color:var(--ink-muted);font-size:.72rem;font-weight:700}.guest-note{margin-top:.45rem;color:var(--ink-muted);font-size:.82rem;text-wrap:pretty}.guest-note a{color:var(--sage-dark);font-weight:700;white-space:nowrap}a.theme-toggle{text-decoration:none;color:inherit}@media(min-width:1024px)and (pointer:fine){.item-row{gap:.6rem;padding:.55rem .75rem;min-height:2.9rem}.item-row.is-editing{padding-block:.65rem}.item-text{font-size:1rem}.item-qty{font-size:.78rem;padding:.1rem .5rem}.toggle-btn{width:1.625rem;height:1.625rem}.toggle-btn svg{width:.875rem;height:.875rem}.important-btn,.edit-btn,.delete-btn{width:1.875rem;height:1.875rem}.important-btn svg,.edit-btn svg{width:.9375rem;height:.9375rem}.delete-btn svg,.drag-handle svg{width:1rem;height:1rem}.drag-handle{width:1.75rem;height:2.1rem}.items-list,.done-section{gap:.25rem}.category-group{gap:.2rem}.category-heading{font-size:.72rem;margin-top:.6rem}.items-divider-label{font-size:.72rem}.page-title{font-size:2.1rem}.add-input,.add-btn{height:3.125rem}.add-btn{width:3.125rem}.add-input{font-size:max(1.05rem,16px)}.add-clear-btn{right:3.975rem}.add-hint{font-size:.8rem}.list-tab{font-size:.86rem;padding:.45rem 1rem}.stats-text{font-size:.78rem}.sort-toggle-btn{font-size:.74rem;padding:.24rem .55rem}.clear-done-btn{font-size:.76rem}.progress-track{height:3px}}.nav-text-link{display:inline-flex;align-items:center;min-height:2.25rem;padding:0 .45rem;font-size:.84rem;font-weight:700;color:var(--sage-dark);text-decoration:none;white-space:nowrap;border-radius:var(--radius-sm)}.nav-text-link:hover{color:var(--sage);text-decoration:underline;text-underline-offset:2px}@media(max-width:380px){.login-benefits{grid-template-columns:1fr;gap:.35rem}.login-benefits li{flex-direction:row;justify-content:flex-start;text-align:left;padding:.45rem .65rem;gap:.65rem}.login-benefit-copy span{display:inline}.list-meta-row{align-items:center}.stats-actions{width:100%;margin-left:0;justify-content:flex-end}}@media(max-width:420px){.share-caps{border-radius:var(--radius)}}.settings-field input[type=time]{color-scheme:inherit}html.dark .add-hint-chip,body.dark .add-hint-chip{background:#7fb98a2e;color:var(--sage-light)}html.dark .empty-tip code,body.dark .empty-tip code{color:var(--sage-light)}.import-link-btn{margin-top:.35rem;margin-bottom:.85rem}.page-heading .import-link-btn{margin-top:.85rem;margin-bottom:0}.category-heading:first-child{margin-top:.15rem}.sort-toggle{flex-wrap:nowrap}body{margin:0;padding:0;overflow-x:hidden}
