@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/fonts/nunito-latin-ext-wght-normal.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/fonts/nunito-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Material Symbols Rounded;font-style:normal;font-display:block;font-weight:100 700;src:url(/fonts/material-symbols-rounded-subset.woff2) format("woff2")}.nido,.nido *{box-sizing:border-box}.nido{--bg: #FAF5EE;--bg-2: #F3EADE;--surface: #FFFDFA;--surface-2: #F6EFE6;--line: #ECE2D5;--ink: #2C2620;--ink-2: #6F6557;--ink-3: #A99E8E;--accent: #E07A5F;--accent-press: #C9684E;--accent-soft: #F8E4DC;--on-accent: #FFFFFF;--sage: #7E9E7C;--sage-soft: #E5EDE2;--ok: #5E9B6B;--ok-soft: #E2EFE2;--warn: #D99A4E;--warn-soft: #FAEBD4;--danger: #D5756A;--danger-soft:#FBE4DF;--r-card: 26px;--r-lg: 22px;--r-md: 16px;--r-sm: 12px;--r-pill: 999px;--sh-1: 0 1px 2px rgba(73,52,30,.05), 0 4px 14px rgba(73,52,30,.045);--sh-2: 0 2px 6px rgba(73,52,30,.07), 0 14px 34px rgba(73,52,30,.08);--sh-fab: 0 6px 18px rgba(196,104,78,.4), 0 2px 6px rgba(73,52,30,.12);--font: "Nunito", system-ui, sans-serif;font-family:var(--font);color:var(--ink);background:var(--bg);height:100%;position:relative;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow:hidden}.ms{font-family:Material Symbols Rounded;font-weight:400;font-style:normal;line-height:1;letter-spacing:normal;text-align:center;display:inline-block;vertical-align:middle;white-space:nowrap;-webkit-font-feature-settings:"liga";font-feature-settings:"liga";font-variation-settings:"FILL" 0,"wght" 420,"GRAD" 0,"opsz" 24;-webkit-user-select:none;user-select:none}.ms.fill{font-variation-settings:"FILL" 1,"wght" 480,"GRAD" 0,"opsz" 24}.nido-scroll{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.nido-scroll::-webkit-scrollbar{display:none}.pad{padding:0 20px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 16px 10px 18px}.fam-switch{display:inline-flex;align-items:center;gap:7px;background:transparent;border:none;cursor:pointer;font-family:var(--font);color:var(--ink);padding:6px 8px 6px 6px;border-radius:var(--r-pill);transition:background .15s}.fam-switch:active{background:var(--surface-2)}.fam-dot{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:#fff;flex-shrink:0;font-weight:800;font-size:14px}.fam-switch .fam-name{font-weight:800;font-size:18px;letter-spacing:-.2px}.fam-switch .ms{font-size:20px;color:var(--ink-2)}.avatar-btn{width:40px;height:40px;border-radius:50%;border:none;cursor:pointer;background:var(--surface);box-shadow:var(--sh-1);display:grid;place-items:center;overflow:hidden;flex-shrink:0}.searchbar{display:flex;align-items:center;gap:12px;background:var(--surface);border-radius:var(--r-pill);padding:0 18px;height:56px;box-shadow:var(--sh-1);cursor:text;border:1.5px solid transparent;transition:border-color .15s,box-shadow .15s}.searchbar.big{height:60px}.searchbar .ms{font-size:26px;color:var(--accent)}.searchbar input{border:none;outline:none;background:transparent;flex:1;font-family:var(--font);font-size:17px;font-weight:600;color:var(--ink)}.searchbar input::placeholder{color:var(--ink-3);font-weight:600}.searchbar.focused{border-color:var(--accent);box-shadow:var(--sh-2)}.card{background:var(--surface);border-radius:var(--r-card);box-shadow:var(--sh-1);padding:18px}.card.flat{box-shadow:none;border:1.5px solid var(--line)}.sec-title{display:flex;align-items:center;justify-content:space-between;margin:22px 4px 12px}.sec-title h2{font-size:15px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;color:var(--ink-2);margin:0}.sec-title .link{font-size:14px;font-weight:700;color:var(--accent);background:none;border:none;cursor:pointer;font-family:var(--font)}.greeting{font-size:30px;font-weight:800;letter-spacing:-.6px;margin:4px 4px 2px}.greeting span{color:var(--accent)}.chip-row{display:flex;gap:9px;flex-wrap:wrap}.chip-row.scroll{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -20px;padding:2px 20px}.chip-row.scroll::-webkit-scrollbar{display:none}.chip{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;background:var(--surface-2);color:var(--ink);border:1.5px solid transparent;border-radius:var(--r-pill);padding:9px 15px;font-size:14.5px;font-weight:700;cursor:pointer;font-family:var(--font);transition:all .14s;flex-shrink:0}.chip .ms{font-size:18px;color:var(--ink-2)}.chip:active{transform:scale(.96)}.chip.on{background:var(--accent);color:var(--on-accent)}.chip.on .ms{color:var(--on-accent)}.chip.sage.on{background:var(--sage)}.chip.ghost{background:transparent;border-color:var(--line)}.row{display:flex;align-items:center;gap:14px;padding:14px 4px;cursor:pointer}.row+.row{border-top:1.5px solid var(--line)}.row-ic{width:46px;height:46px;border-radius:14px;flex-shrink:0;display:grid;place-items:center;background:var(--surface-2)}.row-ic .ms{font-size:24px;color:var(--ink-2)}.row-body{flex:1;min-width:0}.row-title{font-size:16.5px;font-weight:700;letter-spacing:-.1px}.row-sub{font-size:14px;color:var(--ink-2);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row .ms.chev{font-size:22px;color:var(--ink-3)}.av{border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:800;flex-shrink:0;overflow:hidden}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:var(--r-pill);padding:4px 11px;font-size:12.5px;font-weight:800;letter-spacing:.1px}.badge .ms{font-size:15px}.badge.idea{background:var(--surface-2);color:var(--ink-2)}.badge.resv{background:var(--warn-soft);color:#a06a1e}.badge.done{background:var(--ok-soft);color:#3d7049}.badge.warn{background:var(--warn-soft);color:#a06a1e}.badge.danger{background:var(--danger-soft);color:#b14e42}.badge.sage{background:var(--sage-soft);color:#4e6b4d}.badge.accent{background:var(--accent-soft);color:var(--accent-press)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--font);font-weight:800;font-size:17px;cursor:pointer;border:none;border-radius:var(--r-md);padding:15px 22px;width:100%;background:var(--accent);color:var(--on-accent);transition:all .14s;box-shadow:0 4px 12px #c4684e47}.btn:active{transform:scale(.98);background:var(--accent-press)}.btn .ms{font-size:21px}.btn.sec{background:var(--surface);color:var(--ink);box-shadow:var(--sh-1)}.btn.sage{background:var(--sage);box-shadow:0 4px 12px #7e9e7c4d}.btn.ghost{background:transparent;color:var(--accent);box-shadow:none}.btn.sm{width:auto;padding:11px 18px;font-size:15px;border-radius:var(--r-sm)}.btn[disabled]{opacity:.45;pointer-events:none}.act{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-family:var(--font);font-weight:700;font-size:14px;border-radius:var(--r-pill);padding:9px 15px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);transition:all .14s}.act:active{transform:scale(.96)}.act.on{background:var(--ok-soft);border-color:transparent;color:#3d7049}.act.accent{background:var(--accent-soft);border-color:transparent;color:var(--accent-press)}.act .ms{font-size:18px}.field{margin-bottom:16px}.field>label{display:block;font-size:14px;font-weight:800;color:var(--ink-2);margin:0 4px 8px}.input,.textarea{width:100%;font-family:var(--font);font-size:17px;font-weight:600;color:var(--ink);background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r-md);padding:15px 16px;outline:none;transition:border-color .14s,box-shadow .14s}.input::placeholder,.textarea::placeholder{color:var(--ink-3);font-weight:600}.input:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.input.big{font-size:26px;font-weight:800;padding:16px}.textarea{resize:none;min-height:90px;line-height:1.5}.tgl{width:52px;height:31px;border-radius:var(--r-pill);border:none;background:var(--line);position:relative;cursor:pointer;flex-shrink:0;transition:background .2s}.tgl:after{content:"";position:absolute;top:3px;left:3px;width:25px;height:25px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #0003;transition:transform .2s}.tgl.on{background:var(--sage)}.tgl.on:after{transform:translate(21px)}.tgl-row{display:flex;align-items:center;gap:14px;padding:14px 0}.tgl-row+.tgl-row{border-top:1.5px solid var(--line)}.tgl-row .tr-body{flex:1}.tgl-row .tr-title{font-size:16.5px;font-weight:700}.tgl-row .tr-sub{font-size:13.5px;color:var(--ink-2);margin-top:1px}.seg{display:flex;background:var(--surface-2);border-radius:var(--r-md);padding:4px;gap:4px}.seg button{flex:1;border:none;background:transparent;cursor:pointer;font-family:var(--font);font-weight:700;font-size:14.5px;color:var(--ink-2);padding:9px 6px;border-radius:12px;transition:all .15s}.seg button.on{background:var(--surface);color:var(--ink);box-shadow:var(--sh-1)}.tabbar{display:flex;align-items:stretch;justify-content:space-around;background:var(--surface);border-top:1.5px solid var(--line);padding:8px 6px 6px;position:relative}.tabbar.ios{background:#fffdfadb;backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%)}.tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;background:none;border:none;cursor:pointer;font-family:var(--font);color:var(--ink-3);padding:4px 0;transition:color .15s}.tab .ms{font-size:26px}.tab .tlabel{font-size:11px;font-weight:800;letter-spacing:.1px}.tab.on{color:var(--accent)}.tab .ms-wrap{padding:3px 16px;border-radius:var(--r-pill);transition:background .18s}.tab.on .ms-wrap{background:var(--accent-soft)}.fab{position:absolute;right:18px;z-index:30;width:62px;height:62px;border-radius:20px;border:none;cursor:pointer;background:var(--accent);color:#fff;box-shadow:var(--sh-fab);display:grid;place-items:center;transition:transform .16s}.fab:active{transform:scale(.92)}.fab .ms{font-size:32px}.scrim{position:absolute;inset:0;z-index:40;background:#281e1466;opacity:0;pointer-events:none;transition:opacity .25s}.scrim.show{opacity:1;pointer-events:auto}.sheet{position:absolute;left:0;right:0;bottom:0;z-index:41;background:var(--bg);border-radius:28px 28px 0 0;box-shadow:0 -10px 40px #281e1433;transform:translateY(110%);transition:transform .3s cubic-bezier(.3,.9,.3,1);max-height:88%;display:flex;flex-direction:column;overflow:hidden}.sheet.show{transform:translateY(0)}.sheet-grip{width:40px;height:5px;border-radius:3px;background:var(--line);margin:10px auto 2px;flex-shrink:0}.sheet-head{display:flex;align-items:center;justify-content:space-between;padding:8px 20px 12px}.sheet-head h3{font-size:22px;font-weight:800;margin:0;letter-spacing:-.3px}.sheet-x{width:38px;height:38px;border-radius:50%;border:none;cursor:pointer;background:var(--surface-2);display:grid;place-items:center}.sheet-x .ms{font-size:22px;color:var(--ink-2)}.sheet-body{overflow-y:auto;padding:0 20px 24px;scrollbar-width:none}.sheet-body::-webkit-scrollbar{display:none}.addgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.addtile{display:flex;flex-direction:column;gap:12px;align-items:flex-start;background:var(--surface);border:none;border-radius:var(--r-lg);padding:18px;cursor:pointer;font-family:var(--font);text-align:left;box-shadow:var(--sh-1);transition:transform .12s}.addtile:active{transform:scale(.96)}.addtile .tile-ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center}.addtile .tile-ic .ms{font-size:26px;color:#fff}.addtile .tile-name{font-size:16px;font-weight:800}.empty{text-align:center;padding:40px 24px}.empty .ms{font-size:52px;color:var(--ink-3)}.empty h3{font-size:19px;font-weight:800;margin:14px 0 6px}.empty p{font-size:15px;color:var(--ink-2);margin:0 0 18px;line-height:1.5}.muted{color:var(--ink-2)}.tiny{font-size:13px}.divider{height:1.5px;background:var(--line);margin:4px 0}.spacer-tab{height:96px}.sync{display:flex;align-items:center;gap:8px;justify-content:center;background:var(--warn-soft);color:#8a6620;font-size:13px;font-weight:700;padding:7px 12px}.sync .ms{font-size:17px}.subhead{display:flex;align-items:center;gap:6px;padding:4px 12px 6px}.iconbtn{width:42px;height:42px;border-radius:50%;border:none;cursor:pointer;background:transparent;display:grid;place-items:center;flex-shrink:0;transition:background .15s}.iconbtn:active{background:var(--surface-2)}.iconbtn .ms{font-size:26px;color:var(--ink)}.subhead h1{font-size:21px;font-weight:800;margin:0;flex:1;letter-spacing:-.3px}.person-head{display:flex;flex-direction:column;align-items:center;text-align:center;padding:8px 20px 18px}.person-head .pname{font-size:26px;font-weight:800;margin:14px 0 2px;letter-spacing:-.4px}.person-head .pmeta{font-size:15px;color:var(--ink-2);font-weight:600}.gift{display:flex;gap:14px;align-items:center}.gift-thumb{width:64px;height:64px;border-radius:16px;flex-shrink:0;background:var(--surface-2);display:grid;place-items:center;overflow:hidden}.gift-thumb .ms{font-size:30px;color:var(--ink-3)}.check{width:28px;height:28px;border-radius:50%;border:2.5px solid var(--ink-3);flex-shrink:0;display:grid;place-items:center;cursor:pointer;transition:all .15s;background:transparent}.check.on{background:var(--sage);border-color:var(--sage)}.check .ms{font-size:20px;color:#fff;opacity:0;transition:opacity .15s}.check.on .ms{opacity:1}.ph{background-image:repeating-linear-gradient(45deg,var(--surface-2) 0,var(--surface-2) 10px,#efe6d9 10px,#efe6d9 20px);display:grid;place-items:center}.ph .ms{color:var(--ink-3)}.dots{display:flex;gap:7px;justify-content:center}.dots i{width:8px;height:8px;border-radius:4px;background:var(--line);transition:all .25s}.dots i.on{width:24px;background:var(--accent)}.map{height:130px;border-radius:var(--r-md);overflow:hidden;position:relative;background:linear-gradient(0deg,#7e9e7c1f,#7e9e7c1f),repeating-linear-gradient(0deg,transparent 0 26px,var(--line) 26px 27px),repeating-linear-gradient(90deg,transparent 0 26px,var(--line) 26px 27px);background-color:var(--sage-soft);display:grid;place-items:center}.map .pin{color:var(--accent);font-size:34px;filter:drop-shadow(0 3px 4px rgba(0,0,0,.2))}.tl{position:relative;padding-left:24px}.tl:before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--line)}.tl-item{position:relative;padding:7px 0}.tl-item:before{content:"";position:absolute;left:-21px;top:12px;width:12px;height:12px;border-radius:50%;background:var(--line);border:2px solid var(--surface)}.tl-item.now:before{background:var(--accent)}.tl-item .tl-val{font-weight:800;font-size:16px}.tl-item .tl-date{font-size:13px;color:var(--ink-2)}.toast{position:absolute;left:50%;bottom:110px;transform:translate(-50%) translateY(20px);z-index:60;background:var(--ink);color:#fff;font-weight:700;font-size:14.5px;padding:13px 20px;border-radius:var(--r-pill);box-shadow:var(--sh-2);display:flex;align-items:center;gap:9px;white-space:nowrap;opacity:0;pointer-events:none;transition:all .3s;max-width:90%}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.toast .ms{font-size:20px;color:var(--sage)}html,body{margin:0;height:100%;background:#efe6d9}#root{height:100%}.nido.web{height:100%;overflow:hidden;display:flex;flex-direction:column;background:var(--bg)}.web-header{flex-shrink:0;background:#fffdfad1;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border-bottom:1.5px solid var(--line);z-index:50}.web-header-inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:18px;padding:14px 28px}.web-brand{display:inline-flex;align-items:center;gap:9px;cursor:pointer;border:none;background:none;font-family:var(--font);flex-shrink:0}.web-brand .mark{width:34px;height:34px;border-radius:11px;flex-shrink:0;background:var(--accent);display:grid;place-items:center;box-shadow:0 4px 10px #c4684e52}.web-brand .mark .ms{font-size:22px;color:#fff}.web-brand .word{font-size:22px;font-weight:900;letter-spacing:-.5px;color:var(--ink)}.web-fam{display:inline-flex;align-items:center;gap:8px;cursor:pointer;background:var(--surface-2);border:1.5px solid transparent;border-radius:var(--r-pill);padding:7px 12px 7px 7px;font-family:var(--font);color:var(--ink);transition:all .15s;flex-shrink:0}.web-fam:hover{border-color:var(--line)}.web-fam .fam-dot{width:28px;height:28px;font-size:13px}.web-fam .fam-name{font-weight:800;font-size:15px;letter-spacing:-.2px;white-space:nowrap}.web-fam .ms{font-size:20px;color:var(--ink-2)}.web-nav{display:flex;align-items:center;gap:4px;margin:0 auto;background:var(--surface-2);padding:5px;border-radius:var(--r-pill)}.web-nav button{display:inline-flex;align-items:center;gap:8px;border:none;background:transparent;cursor:pointer;font-family:var(--font);color:var(--ink-2);font-weight:800;font-size:15px;padding:9px 16px;border-radius:var(--r-pill);transition:all .16s;white-space:nowrap}.web-nav button .ms{font-size:20px}.web-nav button:hover{color:var(--ink)}.web-nav button.on{background:var(--surface);color:var(--accent-press);box-shadow:var(--sh-1)}.web-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.web-iconbtn{width:44px;height:44px;border-radius:50%;border:none;cursor:pointer;background:var(--surface-2);display:grid;place-items:center;transition:all .15s;position:relative}.web-iconbtn:hover{background:var(--accent-soft)}.web-iconbtn .ms{font-size:23px;color:var(--ink)}.web-iconbtn .dot{position:absolute;top:9px;right:10px;width:9px;height:9px;border-radius:50%;background:var(--accent);border:2px solid var(--surface)}.web-add{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-family:var(--font);font-weight:800;font-size:15.5px;color:#fff;background:var(--accent);border:none;border-radius:var(--r-pill);padding:11px 18px 11px 15px;box-shadow:0 4px 12px #c4684e52;transition:all .15s}.web-add:hover{background:var(--accent-press)}.web-add:active{transform:scale(.97)}.web-add .ms{font-size:22px}.web-avatar{cursor:pointer;border:none;background:none;padding:0;border-radius:50%;box-shadow:0 0 0 2px var(--bg),0 0 0 4px transparent;transition:box-shadow .15s}.web-avatar:hover{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--accent-soft)}.web-main{flex:1;overflow-y:auto;overflow-x:hidden}.web-container{max-width:1180px;margin:0 auto;padding:32px 28px 80px}.web-container.narrow{max-width:760px}.web-section-h{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin:34px 2px 14px}.web-section-h:first-child{margin-top:0}.web-section-h h2{font-size:17px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;color:var(--ink-2);margin:0}.web-section-h .link{font-size:14.5px;font-weight:700;color:var(--accent);background:none;border:none;cursor:pointer;font-family:var(--font)}.web-h1{font-size:34px;font-weight:800;letter-spacing:-.8px;margin:0 0 4px}.web-h1 span{color:var(--accent)}.web-sub{font-size:16px;color:var(--ink-2);font-weight:600;margin:0 0 4px}.web-pagehead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}.web-pagehead .web-h1{margin-bottom:2px}.web-grid{display:grid;gap:16px}.web-grid.c2{grid-template-columns:repeat(2,1fr)}.web-grid.c3{grid-template-columns:repeat(3,1fr)}.web-grid.c4{grid-template-columns:repeat(4,1fr)}.web-grid.auto{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.web-container.home{max-width:1120px}.home-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;padding:30px 34px;margin-bottom:36px;border-radius:var(--r-card);background:linear-gradient(120deg,var(--sage-soft) 0%,var(--accent-soft) 100%);border:1.5px solid var(--line)}.home-hero .web-h1{font-size:38px;margin-bottom:6px}.home-hero .web-sub{margin:0}.home-search{flex:1 1 340px;max-width:460px;display:flex;align-items:center;gap:12px;padding:15px 22px;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r-pill);box-shadow:var(--sh-1);color:var(--ink-2);font:inherit;font-weight:700;cursor:pointer;text-align:left;transition:box-shadow .14s}.home-search:hover{box-shadow:var(--sh-2)}.home-grid{display:grid;gap:40px 36px;align-items:start;grid-template-columns:minmax(0,1fr);grid-template-areas:"today" "shopping" "upcoming" "gifts"}@media(min-width:941px){.home-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-template-areas:"today shopping" "upcoming gifts"}}.home-block .web-section-h{margin:0 2px 14px}.home-empty{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0;padding:8px 6px;color:var(--ink-2);font-weight:700}.home-empty .link{background:none;border:none;cursor:pointer;font:inherit;font-weight:800;color:var(--accent)}@media(max-width:940px){.home-hero{padding:22px 20px}.home-hero .web-h1{font-size:30px}}.web-cols{display:grid;grid-template-columns:1.6fr 1fr;gap:28px;align-items:start}.web .card{padding:20px}.web .card.pad-lg{padding:24px}.web-clickcard{cursor:pointer;transition:transform .14s,box-shadow .14s}.web-clickcard:hover{transform:translateY(-2px);box-shadow:var(--sh-2)}.web .row{padding:13px 2px}.web .row-sub{white-space:normal}.web .chip{transition:all .14s}.web .chip:not(.on):hover{background:var(--line)}.web .act{transition:all .14s}.web .act:hover{border-color:var(--ink-3)}.web .btn{width:auto}.web .btn.full{width:100%}.web .btn:hover{filter:brightness(.98)}.web-person-head{display:flex;align-items:center;gap:22px;margin-bottom:8px}.web-person-head .pname{font-size:30px;font-weight:800;letter-spacing:-.5px;margin:0}.web-person-head .pmeta{font-size:16px;color:var(--ink-2);font-weight:600;margin-top:3px}.web-back{display:inline-flex;align-items:center;gap:7px;cursor:pointer;background:none;border:none;font-family:var(--font);color:var(--ink-2);font-weight:700;font-size:15px;padding:6px 10px 6px 6px;border-radius:var(--r-pill);margin-bottom:16px;transition:all .15s}.web-back:hover{background:var(--surface-2);color:var(--ink)}.web-back .ms{font-size:22px}.web-scrim{position:fixed;inset:0;z-index:200;background:#281e146b;opacity:0;pointer-events:none;transition:opacity .22s;display:grid;place-items:center;padding:24px}.web-scrim.show{opacity:1;pointer-events:auto}nv-multi-select-modal .web-scrim{z-index:220}.web-modal{background:var(--bg);border-radius:28px;box-shadow:0 30px 70px #281e1447;width:100%;max-width:540px;max-height:88vh;display:flex;flex-direction:column;overflow:hidden;transform:translateY(16px) scale(.98);transition:transform .26s cubic-bezier(.3,.9,.3,1)}.web-scrim.show .web-modal{transform:translateY(0) scale(1)}.web-modal.wide{max-width:680px}.web-modal-head{display:flex;align-items:center;justify-content:space-between;padding:22px 24px 14px;flex-shrink:0}.web-modal-head h3{font-size:23px;font-weight:800;margin:0;letter-spacing:-.3px}.web-modal-x{width:40px;height:40px;border-radius:50%;border:none;cursor:pointer;background:var(--surface-2);display:grid;place-items:center;transition:background .15s}.web-modal-x:hover{background:var(--line)}.web-modal-x .ms{font-size:22px;color:var(--ink-2)}.web-modal-body{overflow-y:auto;padding:0 24px 8px}.web-modal-foot{padding:16px 24px 22px;display:flex;gap:10px;flex-shrink:0}.web-modal-foot .btn{flex:1}.web-search-wrap{position:fixed;inset:0;z-index:210;display:flex;flex-direction:column;align-items:center;padding-top:90px;background:#faf5eeb3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;pointer-events:none;transition:opacity .2s}.web-search-wrap.show{opacity:1;pointer-events:auto}.web-search-box{width:100%;max-width:680px;padding:0 24px}.web-search-results{margin-top:16px;max-height:64vh;overflow-y:auto}.web .toast{position:fixed;bottom:40px}.web .tgl-row{padding:16px 0}.web .seg{display:inline-flex}.web .seg.full{display:flex}.web .seg button{padding:10px 18px}.web-pop{position:absolute;z-index:80;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-2);padding:8px;min-width:240px;display:flex;flex-direction:column;gap:4px}.web-pop button{display:flex;align-items:center;gap:12px;text-align:left;width:100%;background:none;border:none;cursor:pointer;font-family:var(--font);color:var(--ink);padding:11px 12px;border-radius:var(--r-sm);font-weight:700;font-size:15px;transition:background .14s}.web-pop button:hover{background:var(--surface-2)}.web-pop button .ms{font-size:21px;color:var(--ink-2)}.web-pop .sep{height:1.5px;background:var(--line);margin:4px 0}.web-bigav{position:relative;width:fit-content}.web-bigav .cam{position:absolute;right:-2px;bottom:-2px;width:34px;height:34px;border-radius:50%;background:var(--accent);border:3px solid var(--bg);cursor:pointer;display:grid;place-items:center}.web-bigav .cam .ms{font-size:18px;color:#fff}.web-list .row:first-child{padding-top:4px}.web-list .row:last-child{padding-bottom:4px}.web-hero{border-radius:var(--r-card);padding:36px;color:#fff;background:linear-gradient(135deg,var(--sage) 0%,var(--accent) 100%);box-shadow:var(--sh-2)}.web-hero h2{font-size:28px;font-weight:800;margin:14px 0 8px;letter-spacing:-.4px}.web-hero p{font-size:16px;opacity:.92;margin:0;max-width:460px;line-height:1.5}.web-hero .ms{font-size:40px}@media(max-width:940px){.web-cols{grid-template-columns:1fr}.web-grid.c3,.web-grid.c4{grid-template-columns:repeat(2,1fr)}.web-nav{display:none}.web-nav.compact-show{display:flex}}@media(max-width:1080px){.web-nav button .label{display:none}.web-nav button{padding:9px 12px}}.web button:focus-visible,.web input:focus-visible,.web a:focus-visible{outline:2.5px solid var(--accent);outline-offset:2px}.web-link{color:var(--accent);font-weight:700;cursor:pointer;background:none;border:none;font-family:var(--font);font-size:inherit;padding:0}.web-link:hover{text-decoration:underline}html,body,app-root{height:100%;margin:0}app-root{display:block}nv-card,nv-empty-state,nv-error-state,nv-form-field,nv-back-link,app-today-section,app-upcoming-section,app-pending-gifts-section,app-shopping-summary,app-family-strip,app-person-card,app-gift-card,app-password-rules,app-create-family-form,app-join-family-form,app-person-picker{display:block}.grow{flex:1;min-width:0}.strong{font-weight:600}.accent{color:var(--accent)}.nv-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.inline-icon{font-size:17px;color:var(--ink-3);vertical-align:-3px;margin-right:4px}.btn.danger,.btn.danger .ms{color:var(--danger)}.btn.btn-danger{background:var(--danger);box-shadow:0 4px 12px #d5756a4d}.iconbtn.sm{width:36px;height:36px}.iconbtn.sm .ms{font-size:20px;color:var(--ink-2)}.iconbtn:hover{background:var(--surface-2)}.iconbtn[disabled],.act[disabled]{opacity:.5;pointer-events:none}.nv-spinner{display:inline-block;border-radius:50%;flex-shrink:0;border:2.5px solid currentColor;border-right-color:transparent;animation:nv-spin .7s linear infinite}@keyframes nv-spin{to{transform:rotate(360deg)}}.nv-loading{display:flex;flex-direction:column;gap:14px;padding:4px 0}.nv-skeleton-row{display:flex;align-items:center;gap:14px}.nv-skeleton-lines{display:flex;flex-direction:column;gap:8px;flex:1}.nv-skeleton{display:block;height:12px;border-radius:6px;background:linear-gradient(90deg,var(--surface-2),var(--line),var(--surface-2));background-size:200% 100%;animation:nv-shimmer 1.2s ease-in-out infinite}.nv-skeleton-ic{width:46px;height:46px;border-radius:14px;flex-shrink:0}@keyframes nv-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.nv-spinner,.nv-skeleton{animation:none}}.empty .btn .ms{font-size:21px;color:inherit}.empty.compact{padding:22px 16px}.empty.compact .ms{font-size:40px}.nv-error-state .ms{color:var(--danger)}.toast.error .ms{color:#f2a99f}.toast{cursor:pointer}.web-pagehead-text{display:flex;align-items:center;gap:22px;min-width:0}.web-pagehead-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.web-section-h.compact{margin:22px 2px 10px}.web-cols>*>:not(:first-child)>.web-section-h:first-child{margin-top:34px}.page-links{display:flex;margin-bottom:8px}.page-links.foot{margin-top:8px;margin-bottom:0}.text-link{min-height:44px;padding:0 4px;border:0;background:none;font:inherit;font-size:14.5px;font-weight:700;color:var(--accent);cursor:pointer;border-radius:8px}.text-link:hover{text-decoration:underline}.text-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.page-filters{margin-bottom:20px}.quick-add{margin-bottom:22px}.quick-add input{min-width:0}.web .searchbar input:focus-visible{outline:none}.searchbar:focus-within{border-color:var(--accent)}a.web-back{text-decoration:none}.field-msg{margin:6px 4px 0;font-size:13.5px;font-weight:600;color:var(--ink-2)}.field-msg.error{color:#b14e42}.field.has-error .input,.field.has-error .textarea{border-color:var(--danger)}.form-error{background:var(--danger-soft);color:#b14e42;border-radius:var(--r-md);padding:12px 14px;font-weight:700;margin:0 0 16px}.form-row{display:flex;gap:12px;flex-wrap:wrap}.form-row.align-end{align-items:flex-end}.form-row>.field{min-width:0}.form-row>.field.grow{min-width:200px}.narrow-input{width:90px}.narrow-input.wide{width:130px}select.input{appearance:auto;cursor:pointer}.input.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px}.tr-icon{color:var(--ink-2)}.inline-add{display:flex;gap:10px;margin-top:10px}.inline-add.no-top{margin-top:0}.chip.static{cursor:default;padding-right:6px}.chip-x{border:none;background:none;cursor:pointer;padding:0 2px;display:grid;place-items:center}.chip-x .ms{font-size:16px}.pw-rules{list-style:none;padding:0;margin:-4px 4px 18px;display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}.pw-rules li{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;color:var(--ink-3)}.pw-rules li .ms{font-size:17px}.pw-rules li.ok{color:#3d7049}.pw-rules li.ok .ms{color:var(--ok)}.web-modal-foot:empty{display:none}.nv-modal-actions{display:flex;gap:10px;width:100%}.nv-modal-actions>.btn{flex:1}.nv-modal-actions.wrap{flex-wrap:wrap}.nv-modal-actions.wrap>.btn{flex:1 1 40%}.nv-confirm-message{margin:0 0 8px;color:var(--ink-2);font-weight:600;line-height:1.5}.detail-badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.invite-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;font-weight:700;background:var(--surface);border:1.5px dashed var(--line);border-radius:var(--r-md);padding:14px;word-break:break-all;-webkit-user-select:all;user-select:all;margin:12px 0}.snooze-custom{margin-top:18px}.add-grid{gap:12px;margin-bottom:8px}.add-hint{text-align:center;margin:14px 0 6px}.row.static{cursor:default}.row-title.is-done{text-decoration:line-through;color:var(--ink-3)}.row-actions{display:flex;gap:8px;flex-shrink:0}.card.web-list>:not(:first-child).row,.card.web-list>:not(:first-child)>.row{border-top:1.5px solid var(--line)}.card.web-list>p.muted{margin:6px 0}.check[disabled]{opacity:.6}button.check{padding:0}.qty{font-weight:700;margin-left:6px}.card-more,.card-link{display:block;width:100%;background:none;border:none;cursor:pointer;font-family:var(--font);font-weight:700;color:var(--accent);font-size:14.5px;padding:10px 0 2px;text-align:left}.nv-popover-anchor{position:relative;flex-shrink:0}.web-pop-label{font-size:13px;color:var(--ink-2);margin:4px 8px 6px;font-weight:800;text-transform:uppercase;letter-spacing:.3px}.web-pop-sub{display:block;font-size:12.5px;color:var(--ink-2);font-weight:600}.web-pop-profile{display:flex;align-items:center;gap:12px;padding:8px 12px 10px}.web-pop-name{font-weight:800;font-size:16px}.web-pop button.danger,.web-pop button.danger .ms{color:var(--danger)}.search-cat{margin:16px 0 8px 6px}.setup-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}.setup-head h2{font-size:20px;font-weight:800;margin:0}.setup-head p{margin:2px 0 0}.accent-ic{background:var(--accent-soft)}.accent-ic .ms{color:var(--accent-press)}.sage-ic{background:var(--sage-soft)}.sage-ic .ms{color:var(--sage)}.person-card{display:block;text-decoration:none;color:var(--ink)}.person-card-head{display:flex;align-items:center;gap:16px}.person-card-name{font-size:20px;font-weight:800;letter-spacing:-.3px}.badge-row{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.gift-card{display:flex;flex-direction:column}.gift-card-head{display:flex;gap:14px;align-items:flex-start;flex:1}.gift-card-head .gift-thumb{width:72px;height:72px}.gift-card-title{font-weight:800;font-size:17px}.gift-link{display:inline-flex;align-items:center;gap:4px;margin-top:10px;font-weight:700;font-size:14px;color:var(--accent);text-decoration:none}.gift-link .ms{font-size:18px}.gift-notes{margin:8px 0 0;white-space:pre-line}.gift-card>.divider{margin:16px 0 12px}.gift-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.family-strip{display:flex;flex-wrap:wrap;gap:12px}.family-strip-item{display:flex;flex-direction:column;align-items:center;gap:6px;width:64px;text-decoration:none;color:var(--ink);font-size:13px;font-weight:700;text-align:center}.family-strip-item>span:last-child{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.family-strip-add{width:48px;height:48px;border-radius:50%;border:1.5px dashed var(--line);display:grid;place-items:center;color:var(--ink-3)}.tl-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.tl-val .muted{font-size:13px;margin-left:4px}@media(max-width:940px){.web-header-inner{flex-wrap:wrap}.web-nav{display:flex;order:3;width:100%;justify-content:space-around;margin:0}.web-actions{margin-left:auto}}@media(max-width:720px){.web-pagehead{flex-direction:column}.web-pagehead-actions{justify-content:flex-start}.web-header-inner{padding:12px 16px;gap:10px}.web-container{padding:24px 16px 64px}.web-fam .fam-name{display:none}.web-add{padding:10px 12px}.pw-rules{grid-template-columns:1fr}}.pre-line{white-space:pre-line;line-height:1.5}.flush{margin:0}.pref-note{margin:10px 4px 0}.page-bottom-action{margin-top:22px}.inline-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}a.btn{text-decoration:none}.form-row.no-wrap{flex-wrap:nowrap}.form-row.no-wrap>.field.grow{flex:1;min-width:0}.pref-times{gap:10px}.pref-times .tr-body{cursor:default}.card.info-banner{display:flex;gap:12px;align-items:flex-start;margin-top:16px;background:var(--surface-2);box-shadow:none}.card.info-banner.sage{background:var(--sage-soft);margin:0 0 4px}.card.info-banner .ms{font-size:24px;color:var(--ink-2)}.card.info-banner.sage .ms{color:var(--sage)}.card.info-banner p{margin:0;font-weight:600;font-size:14.5px;line-height:1.5;color:var(--ink-2)}.pick-check{color:var(--accent);font-size:24px}.choice-list{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.perm-list{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:14px}.perm-row{display:flex;flex-direction:column;gap:8px}.perm-head{display:flex;align-items:center;gap:8px}.perm-head .row-title{flex:1}.choice{display:flex;align-items:flex-start;gap:12px;text-align:left;width:100%;border-radius:var(--r-md);padding:14px 16px;cursor:pointer;font-family:var(--font);background:var(--surface);border:1.5px solid var(--line);color:var(--ink)}.choice.on{background:var(--accent-soft);border-color:var(--accent)}.choice>.ms{font-size:22px;color:var(--ink-3);margin-top:1px}.choice.on>.ms{color:var(--accent)}.choice-title{display:flex;align-items:center;gap:8px;font-weight:800;font-size:16px}.choice-sub{display:block;font-size:13.5px;color:var(--ink-2);font-weight:600;margin-top:2px}.choice.plan{flex-direction:column;gap:4px}.plan-price{font-weight:800;font-size:26px;letter-spacing:-.5px}.plan-price small{font-size:14px;color:var(--ink-2);font-weight:700}.faq-item+.faq-item{border-top:1.5px solid var(--line)}.faq-q{display:flex;align-items:center;gap:12px;width:100%;background:none;border:none;cursor:pointer;font-family:var(--font);text-align:left;padding:16px 0;font-weight:700;font-size:16px;color:var(--ink)}.faq-q>span{flex:1}.faq-q .ms{color:var(--ink-2)}.faq-a{margin:0 0 16px;line-height:1.55}a.row{text-decoration:none;color:var(--ink)}.account-head{display:flex;align-items:center;gap:20px;margin-bottom:4px}.account-head-text{min-width:0}.account-head-text .web-sub{margin:2px 0 8px}.danger-zone .btn{margin-top:12px}.danger-text{color:var(--danger);margin:0}.danger-block{margin-top:18px;padding-top:16px;border-top:1.5px solid var(--line)}.catalog-add{margin:0 0 16px}.catalog-add .input{flex:1}.visibility-list{list-style:none;margin:0 0 12px;padding:0}.visibility-list li{display:flex;align-items:center;gap:12px;padding:10px 0}.visibility-list li+li{border-top:1.5px solid var(--line)}.visibility-list li .ms{font-size:24px;color:var(--sage)}.visibility-list li.denied .ms{color:var(--ink-3)}.visibility-list .row-title,.visibility-list .row-sub{display:block}.lock-gate{text-align:center;max-width:460px;margin:40px auto;padding:48px 32px}.lock-gate>.ms{font-size:56px;color:var(--accent)}.lock-gate .web-h1{font-size:24px;margin:14px 0 6px}.lock-gate p{margin:0 0 24px;line-height:1.5}.premium-hero{margin-bottom:22px}.premium-benefits{margin:16px 0 0}.card.benefit{display:flex;gap:14px;align-items:flex-start}.premium-actions{display:flex;flex-direction:column;gap:10px;margin-top:24px}.premium-actions p{margin:0}.more-tile{display:flex;align-items:center;gap:16px;text-decoration:none;color:var(--ink)}.more-tile .ms.chev{color:var(--ink-3)}.row-ic.more-tile-ic .ms{color:#fff;font-size:26px}.more-tile-text{flex:1;min-width:0}.more-tile-text .row-title,.more-tile-text .row-sub{display:block}.more-tile-text .row-sub{white-space:normal}a.more-premium{display:block;margin-top:28px;text-decoration:none}.more-foot{margin-top:30px}.activity-row{align-items:flex-start}.activity-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}.activity-text{margin:0;font-size:15px;line-height:1.45;color:var(--ink-2)}.activity-text strong,.activity-text b{color:var(--ink);font-weight:800}.row-ic.activity-ic{width:32px;height:32px;border-radius:10px}.row-ic.activity-ic .ms{font-size:18px}.load-more{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:22px}.chip-row.search-filters{margin:0 0 10px;gap:8px}.search-recent-head{display:flex;align-items:center;justify-content:space-between}.search-recent-head .web-pop-label{margin:0 0 8px}.row-ic.appointment-ic{width:64px;height:64px;border-radius:20px;background:var(--accent-soft)}.row-ic.appointment-ic .ms{font-size:32px;color:var(--accent-press)}.row-ic.appointment-ic.medical{background:var(--warn-soft)}.row-ic.appointment-ic.medical .ms{color:#a06a1e}.after-visit{margin-top:26px;padding:20px 22px;border-radius:var(--r-card);background:var(--sage-soft);color:#4e6b4d}.after-visit-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.after-visit-head h2{margin:0;font-size:17px;font-weight:800;flex:1}.after-visit .ms{color:#4e6b4d}.after-visit-lock{font-size:18px}.after-visit-empty{margin:0 0 6px;font-weight:600}.after-visit-row{display:flex;align-items:flex-start;gap:12px;padding:8px 0}.after-visit-row+.after-visit-row{border-top:1.5px solid rgba(78,107,77,.18)}.after-visit-row>.ms{margin-top:2px}.after-visit-row .row-title,.after-visit-row .row-sub{color:#4e6b4d}.after-visit-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.center{text-align:center}.modal-intro{margin:0 0 14px;line-height:1.5}.help-search{margin:4px 0 6px;cursor:text}.support-thread{list-style:none;margin:18px 0 8px;padding:0;display:flex;flex-direction:column;gap:10px}.support-msg{align-self:flex-end;max-width:min(86%,560px);background:var(--accent-soft);border-radius:var(--r-md) var(--r-md) 4px var(--r-md);padding:10px 14px}.support-msg.team{align-self:flex-start;background:var(--sage-soft);border-radius:var(--r-md) var(--r-md) var(--r-md) 4px}.support-msg p{margin:4px 0 6px;white-space:pre-wrap;line-height:1.5;font-weight:600}.support-msg-author{font-size:12.5px;font-weight:800;color:var(--accent-press)}.support-msg.team .support-msg-author{color:var(--sage)}.support-reply{display:flex;gap:10px;align-items:flex-end;margin-top:18px}.support-reply .textarea{flex:1;min-height:64px}.legal-text{line-height:1.6;font-weight:600}.legal-text h2{font-size:20px;margin:18px 0 8px}.legal-text h2:first-child{margin-top:0}.legal-text h3{font-size:16.5px;margin:14px 0 6px}.legal-text p{margin:0 0 10px;white-space:pre-line}.legal-text .legal-item{display:flex;gap:8px;margin:0 0 6px 4px}.legal-text .legal-marker{min-width:18px;color:var(--ink-2)}.legal-others{margin-top:16px}.legal-links-gap{display:block;margin-top:12px}.privacy-requests{display:flex;flex-direction:column;gap:12px}.privacy-request p{margin:2px 0 0}.privacy-request-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}.privacy-request .privacy-request-note{margin-top:10px;padding:10px 14px;background:var(--surface-2);box-shadow:none}.coupon-entry{margin-top:18px}.coupon-code{text-transform:uppercase;letter-spacing:.5px}.coupon-result{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-weight:600}.coupon-result li{display:flex;gap:8px;align-items:flex-start}.coupon-result .ms{color:var(--sage);font-size:20px}.consent{margin-top:14px}.consent-row{display:flex;gap:10px;align-items:flex-start;font-size:14px;font-weight:600;color:var(--ink-2);cursor:pointer}.consent-row input{width:18px;height:18px;margin-top:2px;accent-color:var(--accent);flex-shrink:0}.auth-foot a{color:inherit}.web-modal.sheet{max-width:460px;position:relative;left:auto;right:auto;bottom:auto;z-index:auto}@media(max-width:720px){.web-scrim:has(.web-modal.sheet){align-items:end;padding:0}.web-modal.sheet{max-width:none;border-radius:28px 28px 0 0;max-height:85vh}}.picker-field{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;cursor:pointer;font:inherit;min-height:44px}.picker-field:disabled{cursor:default;opacity:.7}.picker-field .picker-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-field .picker-placeholder{color:var(--ink-3)}.picker-field .picker-icon{margin-right:10px;color:var(--ink-2);font-size:22px}.picker-field .picker-icon+.picker-value{flex:1;text-align:left}.agenda-bar{display:flex;align-items:center;gap:16px 24px;flex-wrap:wrap;margin:-4px 0 22px}.view-switch{display:inline-flex;padding:4px;gap:4px;background:var(--surface-2);border-radius:var(--r-pill)}.view-switch a{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;border-radius:var(--r-pill);color:var(--ink-2);font-weight:800;font-size:14.5px;text-decoration:none}.view-switch a.on{background:var(--surface);color:var(--accent-press);box-shadow:var(--sh-1)}.view-switch a .ms{font-size:20px}.view-switch-block{display:block;margin:0 0 20px}.cal-layout{display:grid;gap:28px 32px;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);align-items:start}@media(max-width:940px){.cal-layout{grid-template-columns:minmax(0,1fr)}}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.cal-title{font-size:24px;font-weight:800;letter-spacing:-.4px;margin:0;text-transform:capitalize}.cal-nav{display:flex;align-items:center;gap:6px}.cal-today,.cal-arrow{background:var(--surface-2);border:none;border-radius:var(--r-pill);color:var(--ink);font:inherit;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.cal-today{padding:8px 16px;font-size:14px;margin-right:6px}.cal-arrow{width:38px;height:38px}.cal-today:hover,.cal-arrow:hover{background:var(--accent-soft)}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.cal-dow{text-align:center;font-size:12.5px;font-weight:800;color:var(--ink-2);text-transform:uppercase;letter-spacing:.4px;padding:4px 0 8px}.cal-day{position:relative;aspect-ratio:1 / .92;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:none;border:2px solid transparent;border-radius:16px;color:var(--ink);font:inherit;cursor:pointer;transition:background .12s}.cal-day:hover{background:var(--surface-2)}.cal-day.out{color:var(--ink-2);opacity:.45}.cal-day.today .cal-num{background:var(--accent);color:#fff}.cal-day.sel{border-color:var(--accent);background:var(--accent-soft)}.cal-num{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;font-weight:800;font-size:16px}.cal-dots{display:flex;gap:4px;height:7px}.cal-dots i,.cal-legend i{width:7px;height:7px;border-radius:50%;display:inline-block}.d-appt{background:#5e7fa3}.d-rem{background:#d99a4e}.d-bday{background:#c96d8f}.cal-legend{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:20px;padding-top:16px;border-top:1.5px solid var(--line);color:var(--ink-2);font-weight:700;font-size:13.5px}.cal-legend span{display:inline-flex;align-items:center;gap:8px}.cal-sub{font-size:13px;font-weight:800;color:var(--ink-2);text-transform:uppercase;letter-spacing:.4px;margin:20px 4px 10px}.cal-day-panel .web-section-h{margin:0 2px 14px;text-transform:capitalize}.hub-grid{display:grid;gap:40px 36px;align-items:start;grid-template-columns:minmax(0,1fr)}@media(min-width:941px){.hub-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}}.hub-main{display:grid;gap:40px}.hub-h{font-size:17px;font-weight:800;letter-spacing:.3px;margin:0 2px 14px}.hub-cards{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.hub-cards-sm{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.hub-home{display:flex;flex-direction:column;gap:12px;padding:0;overflow:hidden}.hub-home-link,.hub-type{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:22px 22px 8px;color:inherit;text-decoration:none}.hub-type{padding:20px;height:100%;transition:transform .14s,box-shadow .14s}.hub-type:hover{transform:translateY(-2px);box-shadow:var(--sh-2)}.hub-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:16px;background:var(--sage-soft);color:var(--sage);margin-bottom:6px}.hub-icon-sm{width:38px;height:38px;border-radius:12px;margin:0;flex:none}.hub-home-name{font-size:18px;font-weight:800;letter-spacing:-.2px}.hub-meta{font-size:14px;color:var(--ink-2);font-weight:600}.hub-address{font-size:14.5px;color:var(--ink)}.hub-home-actions{display:flex;align-items:center;gap:8px;padding:0 22px 18px;margin-top:auto}.hub-action{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--r-pill);border:1.5px solid var(--line);background:var(--surface);color:var(--accent);font:inherit;font-size:14px;font-weight:700;text-decoration:none;cursor:pointer}.hub-action:hover{box-shadow:var(--sh-1)}.hub-action-icon{margin-left:auto;padding:8px;color:var(--ink-2)}.hub-dashed{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:140px;padding:20px;text-align:center;font:inherit;color:var(--ink-2);background:transparent;border:2px dashed var(--line);border-radius:var(--r-card);cursor:pointer}.hub-dashed:hover{border-color:var(--accent);color:var(--accent)}.hub-dashed strong{font-size:16px}.hub-dashed span{font-size:13.5px;font-weight:600}.hub-row{display:flex;align-items:center;gap:14px;padding:14px 16px;color:inherit;text-decoration:none}.hub-row+.hub-row{border-top:1px solid var(--line)}.hub-row:hover{background:var(--sage-soft)}.hub-row-text{display:flex;flex-direction:column;min-width:0;flex:1}.hub-row-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hub-empty{padding:18px;margin:0}.chip-label{border:none;background:none;padding:0;font:inherit;color:inherit;cursor:pointer}.chip-label:hover{text-decoration:underline}
