body[data-page-type=planner-app]{background:var(--pearl-soft)}body[data-page-type=planner-app] #cookie-banner,body[data-page-type=planner-app] #cookie-dialog{display:none!important}.planner-root{background:var(--pearl-soft);min-height:100vh}.app-boot{max-width:760px;padding:var(--space-8) var(--gutter);margin:0 auto}.app-boot h1{font-size:clamp(1.75rem,1.4rem + 1.2vw,2.25rem)}.app{--app-side:264px;--app-bar:64px;--app-bottom:64px;background:var(--pearl-soft);min-height:100vh;color:var(--color-text)}.app h1{letter-spacing:-.025em;font-size:clamp(1.625rem,1.3rem + 1.1vw,2.125rem);line-height:1.15}.app h2{letter-spacing:-.012em;font-size:clamp(1.125rem,1.05rem + .3vw,1.3125rem);line-height:1.3}.app h3{letter-spacing:-.005em;font-size:1.0625rem;line-height:1.35}.app p{margin:0}.app h1[tabindex="-1"]:focus{outline:none}.app .small{font-size:var(--fs-small)}.app .muted.small,.app .small.muted{font-size:.875rem}.app .ic{flex:none}.app p>.ic,.app summary>.ic{vertical-align:-.2em;display:inline-block}.app-bar{z-index:30;align-items:center;gap:var(--space-4);min-height:var(--app-bar);padding:0 var(--gutter);background:var(--color-bg);border-bottom:1px solid var(--line-soft);display:flex;position:sticky;top:0}.app-logo{flex:none;display:inline-flex}.app-logo img{width:112px;height:auto;display:block}.app-bar-nav a{min-height:44px;padding:0 var(--space-3);border-radius:var(--radius);color:var(--color-text);align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.app-bar-nav a:hover{background:var(--wash);color:var(--color-brand)}.app-bar-nav a[aria-current=page]{color:var(--color-brand)}.app-bar-end{align-items:center;gap:var(--space-3);min-width:0;margin-left:auto;display:flex}.account-chip{flex:none}.account-sheet .account-social{gap:var(--space-3);display:grid}.account-sheet .account-provider{width:100%;min-height:48px}.account-sheet .account-email{border:1px solid var(--line-soft);border-radius:var(--radius);padding:var(--space-3) var(--space-4)}.account-sheet .account-email>summary,.account-sheet .account-reset>summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.account-sheet .account-reset{margin-top:var(--space-3)}.account-import-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.account-import-list .check{align-items:flex-start}.account-sheet .sheet-actions>.btn-app{white-space:normal;height:auto;min-height:44px;padding-block:8px}.account-sheet .muted,.account-sheet .sheet-note{color:var(--ink-soft)}.save-status{color:var(--ink-muted);align-items:center;gap:8px;min-width:0;font-size:.875rem;display:flex}.save-status>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.save-short{display:none}.save-status .dot{background:var(--color-line);border-radius:50%;flex:none;width:8px;height:8px}.save-status[data-state=saved] .dot,.save-status[data-state=new] .dot,.save-status[data-state=device] .dot{background:var(--color-brand-light)}.save-status[data-state=saving] .dot{background:var(--color-accent)}.save-status[data-state=error],.save-status[data-state=conflict],.save-status[data-state=unavailable]{color:var(--color-text);font-weight:600}.save-status[data-state=error] .dot,.save-status[data-state=conflict] .dot,.save-status[data-state=unavailable] .dot{background:var(--color-text)}.app-banner{padding:var(--space-3) var(--gutter);background:var(--accent-soft);border-bottom:1px solid var(--color-accent);font-size:var(--fs-small);margin:0}.app-loading{justify-content:center;align-items:center;gap:var(--space-3);min-height:50vh;color:var(--ink-muted);display:flex}.spinner{border:2px solid var(--line-soft);border-top-color:var(--color-brand);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite app-spin}@keyframes app-spin{to{transform:rotate(360deg)}}.btn-app{--b-bg:var(--color-bg);--b-fg:var(--color-text);--b-bd:var(--color-line);border:1.5px solid var(--b-bd);border-radius:var(--radius);background:var(--b-bg);min-height:44px;color:var(--b-fg);font:inherit;text-align:center;cursor:pointer;touch-action:manipulation;transition:background-color .15s var(--ease), border-color .15s var(--ease), color .15s var(--ease);justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.9375rem;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn-app:hover{color:var(--b-fg);text-decoration:none}.btn-app:disabled{opacity:.45;cursor:not-allowed}.btn-app.btn-primary{--b-bg:var(--color-brand);--b-fg:var(--color-bg);--b-bd:var(--color-brand)}.btn-app.btn-primary:hover:not(:disabled){--b-bg:var(--brand-press);--b-bd:var(--brand-press)}.btn-app.btn-secondary{--b-fg:var(--color-brand);--b-bd:color-mix(in srgb, var(--color-brand) 40%, var(--color-bg))}.btn-app.btn-secondary:hover:not(:disabled){--b-bg:var(--wash);--b-bd:var(--color-brand)}.btn-app.btn-ghost{--b-bg:transparent;--b-bd:transparent;--b-fg:var(--color-brand)}.btn-app.btn-ghost:hover:not(:disabled){--b-bg:var(--wash)}.btn-app.btn-ghost.danger,.btn-app.danger{--b-fg:var(--danger)}.btn-app.btn-ghost.danger:hover:not(:disabled){--b-bg:var(--danger-soft)}.btn-app.btn-danger{--b-bg:var(--danger);--b-fg:var(--color-bg);--b-bd:var(--danger)}.btn-app.btn-danger:hover:not(:disabled){--b-bg:var(--danger-press);--b-bd:var(--danger-press)}.btn-app.btn-danger-outline{--b-fg:var(--danger);--b-bd:var(--danger-line)}.btn-app.btn-danger-outline:hover:not(:disabled){--b-bg:var(--danger-soft);--b-bd:var(--danger)}.btn-app.btn-quiet{--b-bg:transparent;--b-bd:transparent;--b-fg:var(--color-brand);gap:6px;padding:0 10px;font-size:.875rem}.btn-app.btn-quiet:hover:not(:disabled){--b-bg:var(--wash)}.btn-app.btn-sm{min-height:40px;padding:0 12px;font-size:.875rem}.btn-app.btn-inverse{--b-bg:var(--color-bg);--b-fg:var(--color-brand);--b-bd:var(--color-bg)}.btn-app.btn-inverse:hover{--b-bg:var(--wash);--b-fg:var(--color-brand)}.btn-app.btn-lg{min-height:52px;padding:0 22px;font-size:1rem}.btn-app.icon-only{flex:none;width:44px;padding:0}.btn-row-app{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.btn-col{justify-items:start;gap:var(--space-2);display:grid}.btn-col .small{margin-bottom:var(--space-3)}.link-btn{color:var(--color-brand);font:inherit;text-underline-offset:.2em;cursor:pointer;background:0 0;border:0;min-height:24px;padding:0;font-weight:600;text-decoration:underline}.file-btn{position:relative}.file-btn:focus-within{outline:3px solid var(--focus-ring);outline-offset:3px}.tag-btn{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--color-bg);min-height:36px;color:var(--color-text);font:inherit;cursor:pointer;align-items:center;gap:6px;padding:0 12px;font-size:.875rem;font-weight:550;display:inline-flex}.tag-btn:hover{border-color:var(--color-brand);color:var(--color-brand)}.chip-list{gap:var(--space-2);margin:var(--space-2) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.chip-list>li>a,.chip-list>li>span{border-radius:var(--radius-sm);background:var(--wash);align-items:center;min-height:32px;padding:2px 10px;font-size:.875rem;font-weight:550;display:inline-flex}.pill{border-radius:var(--radius-sm);letter-spacing:.01em;white-space:nowrap;align-items:center;min-height:24px;padding:2px 8px;font-size:.75rem;font-weight:650;display:inline-flex}.pill-neutral{background:var(--pearl-mid);color:var(--color-text)}.pill-brand{background:var(--wash-strong);color:var(--deep)}.pill-good{background:var(--success-soft);color:var(--success)}.pill-warn{background:var(--attention-soft);color:var(--attention);box-shadow:inset 0 0 0 1px var(--attention-line)}.pill-muted{color:var(--ink-muted);box-shadow:inset 0 0 0 1px var(--color-line);background:0 0}.pill-row{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.fld{gap:6px;min-width:0;display:grid}.fld>label,.checks>legend,.fld-label{color:var(--color-text);font-size:.875rem;font-weight:600}.req{color:var(--color-brand)}.fld input:not([type=checkbox]):not([type=radio]),.fld select,.fld textarea{border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-bg);width:100%;min-height:44px;color:var(--color-text);font:inherit;padding:10px 12px;font-size:1rem;line-height:1.3}.fld textarea{resize:vertical;min-height:88px}.fld input:focus-visible,.fld select:focus-visible,.fld textarea:focus-visible{outline:3px solid var(--focus-ring);outline-offset:1px;border-color:var(--color-brand)}.fld input::placeholder,.fld textarea::placeholder{color:var(--ink-muted)}.fld-hint{color:var(--ink-muted);font-size:.8125rem;line-height:1.45}.fld-error{color:var(--danger);border-left:3px solid var(--danger);background:var(--danger-soft);border-radius:0 var(--radius-sm) var(--radius-sm) 0;gap:6px;padding:6px 10px;font-size:.875rem;font-weight:600;display:flex}.has-error input,.has-error select,.has-error textarea,.has-error .naira{border:2px solid var(--danger)!important}.naira{border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-bg);align-items:stretch;min-height:44px;display:flex}.naira:focus-within{outline:3px solid var(--focus-ring);outline-offset:1px;border-color:var(--color-brand)}.naira-sign{color:var(--ink-muted);user-select:none;align-items:center;padding:0 2px 0 12px;font-weight:600;display:flex}.fld .naira input{font-variant-numeric:tabular-nums;background:0 0;min-height:42px;padding-left:4px;border:0!important;outline:none!important}.fld-compact .naira input{text-align:right;padding-right:10px}.money{white-space:nowrap}.money.is-empty{color:var(--ink-muted);font-size:.9em}.fld-search{position:relative}.fld-search .ic{color:var(--ink-muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.fld-search input{padding-left:38px!important}.fld-inline{align-items:center;gap:var(--space-2);grid-template-columns:auto 1fr}.checks{gap:var(--space-2);border:0;min-width:0;margin:0;padding:0;display:grid}.checks>legend{margin-bottom:var(--space-2);padding:0}.check{min-height:44px;padding:0 var(--space-3);border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--color-bg);cursor:pointer;align-items:center;gap:10px;font-weight:550;display:flex}.check:has(input:checked){border-color:var(--color-brand);background:var(--wash)}.check input,.task-check input{width:20px;height:20px;accent-color:var(--color-brand);flex:none}.check-card{padding:var(--space-3) var(--space-4);align-items:flex-start}.check-card input{margin-top:2px}.check-card>span{gap:2px;display:grid}.check-card .muted{font-weight:450}.inline-check{margin-bottom:var(--space-4);background:0 0;border:0;padding:0;display:inline-flex}.inline-check:has(input:checked){background:0 0}.form-grid,.form-grid>.pair{--fld-min:13.5rem;gap:var(--space-4);grid-template-columns:repeat(auto-fit, minmax(min(100%, max(var(--fld-min), calc((100% - var(--space-4)) / 2))), 1fr));align-items:start;display:grid}.form-grid>*,.form-grid>.pair>*{min-width:0}.form-grid .span-2,.form-grid>.pair{grid-column:1/-1}.fld input[type=date],.fld input[type=time]{-webkit-appearance:none;appearance:none;text-align:left;min-width:0;max-width:100%;display:block}.fld input::-webkit-date-and-time-value{text-align:left;min-height:1.3em}.fld input::-webkit-calendar-picker-indicator{margin-left:auto}.fld select{text-overflow:ellipsis;min-width:0;max-width:100%}.fld input,.fld textarea{min-width:0;max-width:100%}.opt{color:var(--ink-muted);font-weight:450}.form-actions{justify-content:space-between;gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.add-row{gap:var(--space-3);margin-top:var(--space-4);grid-template-columns:minmax(0,2fr) repeat(auto-fit,minmax(150px,1fr));align-items:end;display:grid}.add-row>.btn-app{align-self:end}.add-row>.fld-error{grid-column:1/-1}.app-main{max-width:1180px;padding:var(--space-6) var(--gutter) var(--space-8);margin:0 auto}.app-main.narrow{max-width:780px}.app-section{gap:var(--space-5);display:grid}.app-section-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.app-main>.app-section-head{margin-bottom:var(--space-5)}.app-intro{max-width:64ch;color:var(--ink-soft);margin-top:var(--space-2)!important}.back-link{align-items:center;gap:6px;min-height:44px;font-weight:600;text-decoration:none;display:inline-flex}.acard{padding:var(--space-5);border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:var(--color-bg);min-width:0}.acard-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.card-link{font-size:.875rem;font-weight:600}.stats{border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--color-bg);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;margin:0;display:grid;overflow:hidden}.stat{padding:var(--space-3) var(--space-4);min-width:0;box-shadow:-1px -1px 0 var(--line-soft)}.stat dt{color:var(--ink-muted);font-size:.8125rem;font-weight:600}.stat dd{letter-spacing:-.015em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:4px 0 0;font-size:1.25rem;font-weight:650}.stat .stat-note{letter-spacing:0;color:var(--ink-muted);margin-top:2px;font-size:.8125rem;font-weight:450;display:block}.stat.is-warn{background:var(--attention-soft);box-shadow:inset 3px 0 0 var(--attention), -1px -1px 0 var(--line-soft)}.stat.is-warn .stat-note{color:var(--attention);font-weight:600}.stat.is-over{background:var(--danger-soft);box-shadow:inset 3px 0 0 var(--danger), -1px -1px 0 var(--line-soft)}.stat.is-over dd{color:var(--danger)}.stat.is-over .stat-note{color:var(--danger);font-weight:600}.stat.is-good dd{color:var(--success)}.stats-tight{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-tight .stat{padding:var(--space-3)}.stats-tight .stat dd{font-size:1.0625rem}.bar{width:100%;height:8px;display:block}.bar-track{fill:var(--pearl-mid)}.bar-fill{fill:var(--color-brand)}.big-figure{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex;margin-bottom:var(--space-3)!important}.big-figure .num{letter-spacing:-.02em;font-size:1.75rem;font-weight:650}.ring{margin:0}.ring-box{aspect-ratio:1;width:min(220px,100%);margin:0 auto;position:relative;container-type:inline-size}.ring-box svg{width:100%;height:100%;display:block;transform:rotate(-90deg)}.ring-track{fill:none;stroke:var(--pearl-mid);stroke-width:10px}.ring-seg{fill:none;stroke-width:10px}.ring-seg.t0{stroke:var(--color-brand)}.ring-seg.t1{stroke:var(--color-brand-light)}.ring-seg.t2{stroke:var(--color-accent)}.ring-seg.t3{stroke:var(--deeper)}.ring-seg.t4{stroke:color-mix(in srgb, var(--color-brand-light) 45%, var(--color-bg))}.ring-seg.t5{stroke:color-mix(in srgb, var(--color-accent) 70%, var(--color-text))}.ring-seg.t6{stroke:color-mix(in srgb, var(--color-brand) 55%, var(--color-bg))}.ring-seg.t7{stroke:var(--color-line)}.ring-centre{text-align:center;place-content:center;justify-items:center;gap:2px;min-width:0;display:grid;position:absolute;inset:17%}.ring-amount{white-space:nowrap;letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-weight:650;line-height:1.15}.ring-amount.len-s{font-size:min(1.5rem,11cqi)}.ring-amount.len-m{font-size:min(1.25rem,8.6cqi)}.ring-amount.len-l{font-size:min(1.0625rem,7.2cqi)}.ring-amount.len-xl{font-size:min(1rem,6.3cqi)}.ring-amount.len-xxl{font-size:min(.9375rem,5.5cqi)}.ring-full,.ring-empty{margin:var(--space-2) 0 0;text-align:center;overflow-wrap:anywhere}.ring-legend{margin:var(--space-3) 0 0;gap:4px;padding:0;font-size:.8125rem;list-style:none;display:grid}.ring-legend li{grid-template-columns:12px minmax(0,1fr) auto 3.2em;align-items:center;gap:8px;display:grid}.ring-legend .num{text-align:right}.ring-key-name{overflow-wrap:anywhere}.ring-key{background:var(--color-line);border-radius:3px;width:12px;height:12px}.ring-key.t0{background:var(--color-brand)}.ring-key.t1{background:var(--color-brand-light)}.ring-key.t2{background:var(--color-accent)}.ring-key.t3{background:var(--deeper)}.ring-key.t4{background:color-mix(in srgb, var(--color-brand-light) 45%, var(--color-bg))}.ring-key.t5{background:color-mix(in srgb, var(--color-accent) 70%, var(--color-text))}.ring-key.t6{background:color-mix(in srgb, var(--color-brand) 55%, var(--color-bg))}.ring-key.t7{background:var(--color-line)}.ring-label{color:var(--ink-muted);font-size:min(.8125rem,6cqi)}.empty{justify-items:center;gap:var(--space-2);padding:var(--space-7) var(--space-5);border:1px dashed var(--color-line);border-radius:var(--radius-lg);background:var(--color-bg);text-align:center;display:grid}.empty-icon{background:var(--wash);width:48px;height:48px;color:var(--color-brand);border-radius:50%;place-items:center;display:grid}.empty p{max-width:48ch;color:var(--ink-soft)}.empty-action{margin-top:var(--space-3)}.empty-filter{padding:var(--space-5) 0}.notice{padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--line-soft);background:var(--color-bg);gap:var(--space-3);display:grid}.notice.warn{border-color:var(--color-accent);background:var(--accent-soft)}.warnings{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.warnings li,.warnings-inline{padding:var(--space-3) var(--space-4);border-radius:var(--radius);background:var(--accent-soft);border-left:3px solid var(--color-accent);font-size:var(--fs-small);align-items:flex-start;gap:8px;display:flex}.warnings .ic,.warnings-inline .ic{margin-top:2px}.seg{flex-wrap:wrap;gap:6px;display:flex}.seg button{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--color-bg);min-height:40px;color:var(--color-text);font:inherit;cursor:pointer;align-items:center;gap:6px;padding:0 14px;font-size:.875rem;font-weight:600;display:inline-flex}.seg button:hover{border-color:var(--color-brand)}.seg button[aria-pressed=true]{border-color:var(--color-brand);background:var(--color-brand);color:var(--color-bg)}.seg-count{border-radius:var(--radius-sm);background:var(--pearl-mid);min-width:20px;color:var(--color-text);font-variant-numeric:tabular-nums;padding:0 5px;font-size:.75rem}.seg button[aria-pressed=true] .seg-count{background:color-mix(in srgb, var(--color-bg) 22%, transparent);color:var(--color-bg)}.list-tools{justify-content:space-between;align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.list-tools.filters{grid-template-columns:minmax(0,2fr) repeat(auto-fit,minmax(150px,1fr));align-items:end;display:grid}.result-count{margin-top:calc(var(--space-2) * -1)!important}details>summary{cursor:pointer}.explain,.tools-panel,.data-panel{border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:var(--color-bg)}.explain>summary,.tools-panel>summary,.data-panel>summary{min-height:52px;padding:0 var(--space-5);align-items:center;gap:8px;font-weight:600;list-style:none;display:flex}.explain>summary::-webkit-details-marker,.tools-panel>summary::-webkit-details-marker,.data-panel>summary::-webkit-details-marker,.menu>summary::-webkit-details-marker{display:none}.explain>summary:after,.tools-panel>summary:after,.data-panel>summary:after{content:"+";color:var(--ink-muted);margin-left:auto;font-size:1.25rem;font-weight:400}.explain[open]>summary:after,.tools-panel[open]>summary:after,.data-panel[open]>summary:after{content:"−"}.explain dl{gap:4px var(--space-4);padding:0 var(--space-5) var(--space-5);margin:0;display:grid}.explain dt{margin-top:var(--space-2);font-weight:650}.explain dd{color:var(--ink-soft);font-size:var(--fs-small);margin:0}.tools-stack{gap:var(--space-3);display:grid}.tools-body,.data-panel-body{gap:var(--space-4);padding:0 var(--space-5) var(--space-5);display:grid}.tools-body h3{margin-top:var(--space-2)}.data-panel{margin-top:var(--space-7)}.menu{position:relative}.menu>summary{list-style:none}.menu-panel{z-index:20;border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--color-bg);min-width:240px;box-shadow:var(--elev-1);padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0}.welcome .menu-panel{left:0;right:auto}.menu-panel button{border-radius:var(--radius-sm);min-height:44px;color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0 12px;font-size:.9375rem;display:flex}.menu-panel button:hover{background:var(--wash)}.menu-panel button.danger{color:var(--danger)}.menu-panel button.danger:hover{background:var(--danger-soft)}.welcome{gap:var(--space-4);padding:var(--space-7) 0 var(--space-4);display:grid}.app-main.narrow:has(.first-note){padding-bottom:var(--space-4)}.first-note{gap:var(--space-3);max-width:40rem;padding:0;display:grid}.note-points{gap:var(--space-2);margin:0;padding-left:1.2rem;display:grid}.note-points li{overflow-wrap:anywhere}.first-note .form-actions{z-index:2;margin-top:var(--space-3);padding:var(--space-3) 0 calc(.75rem + env(safe-area-inset-bottom,0px));background:linear-gradient(transparent, var(--pearl-soft) 28%);position:sticky;bottom:0}.optional-block{margin:var(--space-4) 0;padding:var(--space-3) var(--space-4);border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--color-bg)}.optional-block>summary{cursor:pointer;font-weight:650}.optional-block[open]>summary{margin-bottom:var(--space-3)}.optional-block .form-grid{margin-top:var(--space-3)}.welcome .eyebrow{color:var(--color-brand);margin:0}.welcome h1{font-size:clamp(2rem,1.5rem + 2vw,2.75rem)}.spotlight{align-items:center;gap:var(--space-5);margin-bottom:var(--space-5);padding:var(--space-5) var(--space-6);border-radius:var(--radius-lg);background:var(--color-brand);color:var(--color-bg);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;display:grid}.spotlight .kicker{color:var(--on-brand-muted)}.spotlight h2{color:var(--color-bg)}.spotlight p{color:var(--on-brand-soft)}.spotlight .bar-track{fill:color-mix(in srgb, var(--color-bg) 25%, transparent)}.spotlight .bar-fill{fill:var(--color-accent)}.spotlight-progress{gap:6px;display:grid}.spotlight-progress .small{color:var(--on-brand-soft)}.ev-toolbar{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);display:grid}.ev-toolbar+.seg{margin-bottom:var(--space-5)}.ev-grid{gap:var(--space-4);margin:0 0 var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));padding:0;list-style:none;display:grid}.ev-card{gap:var(--space-3);padding:var(--space-5);border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:var(--color-bg);min-width:0;transition:border-color .15s var(--ease), box-shadow .15s var(--ease);flex-direction:column;display:flex}.ev-card:hover{border-color:color-mix(in srgb, var(--color-brand) 40%, var(--color-bg));box-shadow:var(--elev-1)}.ev-card-top{flex-wrap:wrap;gap:6px;display:flex}.ev-card-title{overflow-wrap:anywhere;font-size:1.1875rem!important}.ev-card-title a{color:var(--color-text);text-decoration:none}.ev-card-title a:hover{color:var(--color-brand);text-decoration:underline}.ev-card-desc{color:var(--ink-soft);font-size:var(--fs-small);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ev-card-facts{gap:6px;margin:0;padding:0;font-size:.9375rem;list-style:none;display:grid}.ev-card-facts li{overflow-wrap:anywhere;align-items:flex-start;gap:8px;min-width:0;display:flex}.ev-card-facts .ic{color:var(--ink-muted);margin-top:3px}.ev-card-progress{gap:6px;display:grid}.ev-card-updated{margin-top:auto!important;font-size:.8125rem!important}.ev-card-actions{justify-content:space-between;align-items:center;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--line-soft);display:flex}.ev-footer{margin-top:var(--space-4);justify-content:center;display:flex}.ev-footer .menu-panel{left:50%;right:auto;transform:translate(-50%)}.data-result{font-weight:600}.wiz-steps{gap:var(--space-2) var(--space-5);margin:var(--space-4) 0 var(--space-6);color:var(--ink-muted);flex-wrap:wrap;padding:0;font-size:.875rem;font-weight:600;list-style:none;display:flex}.wiz-steps li{align-items:center;gap:8px;display:flex}.wiz-steps .step-n{border:1.5px solid var(--color-line);border-radius:50%;place-items:center;width:26px;height:26px;font-size:.8125rem;display:grid}.wiz-steps .is-current{color:var(--color-text)}.wiz-steps .is-current .step-n{border-color:var(--color-brand);background:var(--color-brand);color:var(--color-bg)}.wiz-steps .is-done .step-n{border-color:var(--color-brand);color:var(--color-brand)}.app-main.narrow form>h1{margin-bottom:var(--space-2)}.app-main.narrow form>.app-intro{margin-bottom:var(--space-5)!important}.type-grid{gap:var(--space-3);border:0;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));margin:0;padding:0;display:grid}.type-card{align-items:flex-start;gap:var(--space-3);min-height:76px;padding:var(--space-4);border:1.5px solid var(--line-soft);border-radius:var(--radius-md);background:var(--color-bg);cursor:pointer;transition:border-color .15s var(--ease), background-color .15s var(--ease);display:flex;position:relative}.type-card:hover{border-color:color-mix(in srgb, var(--color-brand) 45%, var(--color-bg))}.type-card input{opacity:0;width:1px;height:1px;position:absolute}.type-card:has(input:focus-visible){outline:3px solid var(--focus-ring);outline-offset:2px}.type-card.is-on{border-color:var(--color-brand);background:var(--wash)}.type-icon{border-radius:var(--radius);background:var(--wash);width:40px;height:40px;color:var(--color-brand);flex:none;place-items:center;display:grid}.type-card.is-on .type-icon{background:var(--color-brand);color:var(--color-bg)}.type-text{gap:2px;min-width:0;display:grid}.type-text span{color:var(--ink-muted);font-size:.8125rem;line-height:1.4}.shell{grid-template-columns:var(--app-side) minmax(0, 1fr);min-height:calc(100vh - var(--app-bar));display:grid}.side{border-right:1px solid var(--line-soft);background:var(--color-bg)}.side-inner{top:var(--app-bar);max-height:calc(100vh - var(--app-bar));padding:var(--space-5) var(--space-4);position:sticky;overflow-y:auto}.side-event{margin:var(--space-3) 0 var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--wash)}.side-event .kicker{margin-bottom:4px}.side-title{overflow-wrap:anywhere;font-size:1.0625rem;font-weight:650;line-height:1.3}.side-event .muted{margin-top:4px;font-size:.8125rem}.side-nav{gap:2px;margin:0;padding:0;list-style:none;display:grid}.side-nav a{border-radius:var(--radius);min-height:44px;color:var(--color-text);align-items:center;gap:12px;padding:0 12px;font-weight:550;text-decoration:none;display:flex}.side-nav a:hover{background:var(--wash);color:var(--color-brand)}.side-nav a[aria-current=page]{background:var(--color-brand);color:var(--color-bg)}.shell-main{min-width:0;padding:var(--space-6) clamp(20px, 3vw, 48px) var(--space-8);width:100%;max-width:1120px}.mobile-head,.bottom-nav,.more-panel{display:none}.conflict{margin-bottom:var(--space-5)}.ov-hero{gap:var(--space-5);padding:var(--space-6);border-radius:var(--radius-lg);background:var(--color-bg);border:1px solid var(--line-soft);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.ov-hero h1{overflow-wrap:anywhere}.ov-meta{gap:var(--space-2) var(--space-5);color:var(--ink-soft);font-size:var(--fs-small);flex-wrap:wrap;display:flex;margin-top:var(--space-3)!important}.ov-meta span{align-items:center;gap:6px;display:inline-flex}.countdown{min-width:140px;padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);background:var(--color-brand);color:var(--color-bg);text-align:center;justify-items:center;gap:2px;display:grid}.countdown strong{letter-spacing:-.03em;font-size:2.25rem;line-height:1.1}.countdown>span{color:var(--on-brand-soft);max-width:18ch;font-size:.875rem}.countdown>a{color:var(--color-bg);font-size:.875rem;font-weight:600}.ov-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ov-budget{gap:var(--space-4);grid-template-columns:minmax(140px,180px) minmax(0,1fr);align-items:center;display:grid}.attention-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.attention-list li{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius);border:1px solid var(--line-soft);font-size:var(--fs-small);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.attention-list a{align-items:center;min-height:44px;display:inline-flex}.attention-list li{background:var(--attention-soft);border-color:var(--attention-line)}.attention-list li>.ic{color:var(--attention)}.attention-list a{font-weight:600}.start-steps{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0;padding:0;list-style:none;display:grid}.start-steps a{min-height:52px;padding:0 var(--space-4);border:1px solid var(--line-soft);border-radius:var(--radius);align-items:center;gap:10px;font-weight:600;text-decoration:none;display:flex}.start-steps a:hover{border-color:var(--color-brand);background:var(--wash)}.mini-list{margin:var(--space-4) 0 0;gap:2px;padding:0;list-style:none;display:grid}.mini-list li{align-items:center;gap:var(--space-3);min-height:44px;font-size:var(--fs-small);border-top:1px solid var(--line-soft);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.tick-btn{border:1.5px solid var(--color-line);background:var(--color-bg);color:#0000;cursor:pointer;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;display:grid}.tick-btn:hover{border-color:var(--color-brand);color:var(--color-brand)}.due{color:var(--ink-muted);white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-size:.8125rem;display:inline-flex}.due.is-overdue{color:var(--danger);background:var(--danger-soft);border-radius:var(--radius-sm);padding:1px 6px;font-weight:650}.due.is-soon{color:var(--attention);font-weight:600}.due-state{font-weight:650}.due-state:before{content:"·";margin:0 4px;font-weight:400}.discover{gap:var(--space-5);padding:var(--space-6);border-radius:var(--radius-lg);background:var(--deeper);color:var(--color-bg);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;display:grid}.discover h2{color:var(--color-bg)}.discover p{color:var(--on-brand-soft);margin-top:var(--space-2)!important}.discover-links{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.discover-links a{min-height:48px;padding:0 var(--space-4);border-radius:var(--radius);background:color-mix(in srgb, var(--color-bg) 10%, transparent);color:var(--color-bg);justify-content:space-between;align-items:center;gap:8px;font-size:.9375rem;font-weight:600;text-decoration:none;display:flex}.discover-links a:hover{background:color-mix(in srgb, var(--color-bg) 18%, transparent);color:var(--color-bg)}.discover :focus-visible{outline-color:var(--color-accent)}.budget-top{gap:var(--space-5);margin-bottom:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;display:grid}.budget-top .ring{padding:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-bg)}@media (width>=640px){.budget-top .ring{gap:var(--space-4) var(--space-5);flex-wrap:wrap;align-items:center;display:flex}.budget-top .ring-visual{flex:0 170px;min-width:0}.budget-top .ring-box{width:min(170px,100%)}.budget-top .ring-legend{flex:15rem;min-width:0;margin:0}}.budget-total{gap:var(--space-3);justify-items:start;display:grid}.budget-total .fld{width:min(100%,360px)}.budget-total .naira{min-height:56px}.budget-total .naira-sign{color:var(--color-text);padding-left:16px;font-size:1.375rem}.budget-total .naira input{min-height:54px;font-size:1.375rem;font-weight:600}.progress-card .big-figure{margin-bottom:var(--space-2)!important}.task-list,.guest-list{border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--color-bg);margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.task+.task,.guest+.guest{border-top:1px solid var(--line-soft)}.task.is-overdue{border-left:4px solid var(--danger)}.task.is-soon{border-left:4px solid var(--attention)}.task-main,.guest-main{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);grid-template-columns:minmax(0,1fr) auto auto;display:grid}.task-check{cursor:pointer;align-items:center;gap:12px;min-width:0;min-height:44px;display:flex}.task-title{overflow-wrap:anywhere;font-weight:550}.task.is-done .task-title{color:var(--ink-muted);text-decoration:line-through 1px}.task-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.guest-main{grid-template-columns:minmax(0,1fr) minmax(150px,190px) auto}.guest-name{overflow-wrap:anywhere;font-weight:600}.guest.is-attending{box-shadow:inset 3px 0 0 var(--success)}.guest.is-maybe{box-shadow:inset 3px 0 0 var(--color-accent)}.guest.is-declined .guest-name{color:var(--ink-muted)}.guest-meta{color:var(--ink-muted);flex-wrap:wrap;gap:4px 12px;font-size:.8125rem;display:flex;margin-top:2px!important}.guest-meta span{align-items:center;gap:4px;display:inline-flex}.guest-rsvp .fld>label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.guest-rsvp select{min-height:40px!important;padding:6px 10px!important;font-size:.875rem!important}.dup{border-radius:var(--radius-sm);background:var(--accent-soft);align-items:center;gap:6px;width:fit-content;padding:2px 8px;font-size:.8125rem;font-weight:600;display:flex;margin-top:4px!important}.session-counts{margin-top:0}.add-guest{grid-template-columns:minmax(0,2fr) minmax(0,1.2fr) minmax(0,.8fr) minmax(0,1fr) auto}.import-preview{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius);background:var(--wash);display:grid}.import-errors{margin:0;padding-left:1.2em;font-size:.875rem}.vendor-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));align-items:start;margin:0;padding:0;list-style:none;display:grid}.vcard{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--color-bg);min-width:0;display:grid}.vcard.is-cancelled{background:var(--pearl-soft)}.vcard.is-cancelled .vcard-name{color:var(--ink-muted)}.vcard-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.vcard-name{overflow-wrap:anywhere;font-size:1.0625rem;font-weight:650}.vcard-money{gap:var(--space-2) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.vcard-money div{min-width:0}.vcard-money dt{color:var(--ink-muted);font-size:.75rem;font-weight:600}.vcard-money dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0;font-weight:600}.vcard-actions{align-items:end;gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.vcard-actions .fld>label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.needed-list{gap:var(--space-2);margin:0 0 var(--space-3);padding:0;list-style:none;display:grid}.needed-list li{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-3);border-radius:var(--radius);background:var(--pearl-soft);flex-wrap:wrap;display:flex}.needed-list a{align-items:center;gap:4px;font-size:.875rem;font-weight:600;display:inline-flex}.ideas{margin-top:var(--space-4)}.tl-month h2{margin-bottom:var(--space-3);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);font-size:.875rem;font-weight:650}.tl-month ol{border-left:2px solid var(--line-soft);gap:0;margin:0 0 0 6px;padding:0;list-style:none;display:grid}.tl-item{gap:var(--space-3);padding:var(--space-2) 0 var(--space-3) var(--space-5);grid-template-columns:110px minmax(0,1fr);display:grid;position:relative}.tl-item:before{content:"";background:var(--color-bg);border:2px solid var(--color-line);border-radius:50%;width:12px;height:12px;position:absolute;top:14px;left:-7px}.tl-item.is-session:before,.tl-item.is-event:before{background:var(--color-brand);border-color:var(--color-brand)}.tl-item.is-vendor:before{border-color:var(--color-brand-light)}.tl-item.is-late:before{background:var(--color-accent);border-color:var(--color-text)}.tl-item.is-done{color:var(--ink-muted)}.tl-date{padding-top:6px;font-size:.875rem;font-weight:600}.tl-body{padding:6px var(--space-3);border-radius:var(--radius);background:var(--color-bg);border:1px solid var(--line-soft);gap:2px;display:grid}.tl-item.is-session .tl-body,.tl-item.is-event .tl-body{background:var(--wash);border-color:color-mix(in srgb, var(--color-brand) 30%, var(--color-bg))}.tl-kind{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);font-size:.6875rem;font-weight:650}.tl-title{overflow-wrap:anywhere;font-weight:600}.tl-item.is-done .tl-title{text-decoration:line-through}.run-list{margin:var(--space-4) 0 0;border:1px solid var(--line-soft);border-radius:var(--radius-md);padding:0;list-style:none}.run-item{align-items:center;gap:var(--space-3);grid-template-columns:72px minmax(0,1fr) auto;min-height:56px;padding:6px 4px 6px 14px;display:grid}.run-item+.run-item{border-top:1px solid var(--line-soft)}.run-time{font-size:.9375rem;font-weight:650}.run-body{gap:2px;min-width:0;display:grid}.run-title{overflow-wrap:anywhere;font-weight:550}.summary-count{border-radius:var(--radius-sm);background:var(--pearl-mid);font-variant-numeric:tabular-nums;place-items:center;min-width:24px;height:22px;padding:0 6px;font-size:.75rem;font-weight:650;display:inline-grid}.lr-list{border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--color-bg);margin:0;padding:0;list-style:none;overflow:hidden}.lr{align-items:center;gap:var(--space-3);min-height:56px;padding:6px 4px 6px 14px;display:flex}.lr+.lr{border-top:1px solid var(--line-soft)}.lr.is-warn{background:var(--attention-soft);box-shadow:inset 3px 0 0 var(--attention)}.lr-main{flex:1;min-width:0}.lr-title{overflow-wrap:anywhere;font-weight:600;line-height:1.3}.lr-meta{color:var(--ink-muted);font-size:.8125rem;margin-top:2px!important}.lr-meta strong{color:var(--color-text)}.lr-end{flex:none;align-items:center;gap:2px;display:flex}.cat-list{margin:0;padding:0;list-style:none}.cat{padding:var(--space-3) 0;gap:6px;display:grid}.cat+.cat{border-top:1px solid var(--line-soft)}.cat:first-child{padding-top:0}.cat-top{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.cat-name{overflow-wrap:anywhere;min-width:0;font-weight:600;line-height:1.3}.cat-amount{font-variant-numeric:tabular-nums;flex:none;font-weight:650}.cat .bar{height:6px}.cat-foot{justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:-4px;display:flex}.cat-meta{min-width:0;color:var(--ink-muted);flex-wrap:wrap;gap:2px 12px;font-size:.8125rem;display:flex}.cat-meta .money{color:var(--color-text);font-weight:600}.cat-foot>.btn-app{margin-right:-10px}.tag-warn{border-radius:var(--radius-sm);background:var(--attention-soft);color:var(--attention);align-items:center;gap:4px;padding:0 6px;font-weight:650;display:inline-flex}.cat-totals{gap:var(--space-3);margin:var(--space-3) 0 0;padding-top:var(--space-3);border-top:2px solid var(--color-line);grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));display:grid}.cat-totals dt{color:var(--ink-muted);font-size:.75rem;font-weight:600}.cat-totals dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:2px 0 0;font-weight:650}.mini-stats{border-top:1px solid var(--line-soft);margin:0}.mini-stats div{justify-content:space-between;gap:var(--space-3);border-bottom:1px solid var(--line-soft);padding:8px 0;font-size:.9375rem;display:flex}.mini-stats dt{color:var(--ink-soft)}.mini-stats dd{font-variant-numeric:tabular-nums;margin:0;font-weight:650}.link-list{gap:4px;margin:6px 0;padding:0;list-style:none;display:grid}.link-list li{border-radius:var(--radius);background:var(--pearl-soft);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:8px 12px;font-weight:550;display:flex}.detail-list{gap:var(--space-3) var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.detail-list dt{color:var(--ink-muted);font-size:.8125rem;font-weight:600}.detail-list dd{overflow-wrap:anywhere;margin:2px 0 0}.detail-list .span-2{grid-column:1/-1}.clamp-2,.clamp-3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.clamp-2{-webkit-line-clamp:2;line-clamp:2}.clamp-3{-webkit-line-clamp:3;line-clamp:3}.scard-list{gap:var(--space-2);margin:var(--space-4) 0 0;padding:0;list-style:none;display:grid}.scard{gap:var(--space-3);padding:var(--space-3) var(--space-2) var(--space-2) var(--space-3);border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--color-bg);grid-template-columns:28px minmax(0,1fr);display:grid}.scard-n{background:var(--wash-strong);width:28px;height:28px;color:var(--deep);border-radius:50%;place-items:center;margin-top:8px;font-size:.8125rem;font-weight:650;display:grid}.scard-body{gap:4px;min-width:0;display:grid}.scard-top{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.scard-name{overflow-wrap:anywhere;padding-top:10px;font-weight:650;line-height:1.3}.scard-meta{color:var(--ink-soft);gap:2px;margin:0;padding:0;font-size:.875rem;list-style:none;display:grid}.scard-meta li{overflow-wrap:anywhere;align-items:flex-start;gap:6px;min-width:0;display:flex}.scard-meta .ic{color:var(--ink-muted);margin-top:2px}.scard-links{margin-top:2px!important}.scard-actions{justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:2px;display:flex}.reorder{gap:6px;display:flex}.reorder .btn-app{--b-bd:var(--line-soft)}.reorder .btn-app:disabled{opacity:.35}.action-list{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.action-list li{justify-items:start;gap:4px;display:grid}.danger-zone{padding-top:var(--space-4);border-top:1px solid var(--line-soft)}html.has-modal{overflow:hidden}.sheet,.confirm-dialog{background:var(--color-bg);max-width:none;max-height:none;color:var(--color-text);box-shadow:var(--elev-2);border:0;padding:0}.sheet::backdrop,.confirm-dialog::backdrop{background:#11111180}.sheet[open]{inset:max(20px, env(safe-area-inset-top,0px)) 0 0 0;border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;height:auto;max-height:none;padding-bottom:var(--kb,0px);animation:sheet-in .22s var(--ease-out);flex-direction:column;margin:0;display:flex;position:fixed;overflow:hidden}dialog.is-fallback[open]{z-index:100;box-shadow:0 0 0 100vmax #11111180, var(--elev-2)}@keyframes sheet-in{0%{opacity:0;transform:translateY(24px)}}.sheet-inner{flex-direction:column;flex:1;min-height:0;display:flex}.sheet-head{justify-content:space-between;align-items:center;gap:var(--space-3);border-bottom:1px solid var(--line-soft);padding:8px 8px 8px 20px;display:flex}.sheet-head h2{overflow-wrap:anywhere;font-size:1.125rem!important}.sheet-head h2:focus{outline:none}.sheet-body{align-content:start;gap:var(--space-4);min-height:0;padding:var(--space-5) 20px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;display:grid;overflow-y:auto}.sheet-form{gap:var(--space-4);display:grid}.sheet-foot{gap:var(--space-2);padding:var(--space-3) 20px calc(var(--space-3) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line-soft);background:var(--color-bg);display:grid}.sheet-note{color:var(--ink-muted);font-size:.8125rem}.sheet-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.sheet-danger{margin-right:auto}.confirm-dialog[open]{width:min(440px,100% - 32px);height:fit-content;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));border-radius:var(--radius-xl);animation:confirm-in .18s var(--ease-out);margin:auto;position:fixed;inset:0;overflow-y:auto}@keyframes confirm-in{0%{opacity:0;transform:scale(.97)}}.confirm-inner{gap:var(--space-3);padding:var(--space-5);display:grid}.confirm-inner h2{overflow-wrap:anywhere;font-size:1.1875rem!important}.confirm-icon{border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.confirm-icon.is-danger{background:var(--danger-soft);color:var(--danger)}.confirm-icon.is-primary{background:var(--wash-strong);color:var(--color-brand)}.confirm-body{gap:var(--space-3);color:var(--ink-soft);display:grid}.confirm-ack{padding:var(--space-3);align-items:flex-start;font-weight:600}.confirm-ack input{margin-top:1px}.confirm-actions{gap:var(--space-2);margin-top:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.toast{z-index:45;left:12px;right:12px;bottom:calc(16px + env(safe-area-inset-bottom,0px));align-items:center;gap:var(--space-2);border-radius:var(--radius-md);background:var(--color-text);max-width:560px;color:var(--color-bg);box-shadow:var(--elev-2);animation:confirm-in .18s var(--ease-out);margin:0 auto;padding:8px 6px 8px 16px;display:flex;position:fixed}.toast p{flex:1;min-width:0;font-size:.9375rem;line-height:1.35}.toast-close{border-radius:var(--radius);width:40px;height:40px;color:var(--color-bg);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.toast-close:hover{background:#ffffff1f}.toast :focus-visible{outline-color:var(--color-accent)}.report-options{gap:var(--space-5);padding:var(--space-5);border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:var(--color-bg);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.report-options .checks:first-child{grid-template-columns:repeat(2,minmax(0,1fr))}.report-options .checks:first-child>legend{grid-column:1/-1}.report-options>.btn-app{grid-column:1/-1;justify-self:start}.report-doc{border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--color-bg);min-width:0;box-shadow:var(--elev-1);max-width:840px;padding:clamp(16px,4vw,48px);overflow-x:hidden}.report-head{padding-bottom:var(--space-4);margin-bottom:var(--space-4);border-bottom:2px solid var(--color-brand);gap:4px;display:grid}.report-brand{letter-spacing:.08em;text-transform:uppercase;color:var(--color-brand);font-size:.75rem;font-weight:650}.report-title{letter-spacing:-.02em;overflow-wrap:anywhere;font-size:1.625rem;font-weight:650;line-height:1.2}.report-part{padding:var(--space-4) 0;border-bottom:1px solid var(--line-soft)}.report-part>h2~h2{margin-top:var(--space-5)}.report-metrics{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,11rem),1fr));margin:0;padding:0;list-style:none;display:grid}.report-metric{padding:var(--space-3);border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--wash);break-inside:avoid;min-width:0}.report-metric p{margin:0}.report-metric-label{color:var(--ink-muted);font-size:.75rem;font-weight:650}.report-metric-value{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:750}.report-health .fin{box-shadow:none}.report-next{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.report-next li{gap:var(--space-2) var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--line-soft);break-inside:avoid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.report-next a{white-space:nowrap;font-weight:650}@media (width<=520px){.report-next li{grid-template-columns:minmax(0,1fr)}}.report-part h2{margin-bottom:var(--space-3);font-size:1.125rem}.report-part h3{margin:var(--space-3) 0 var(--space-2);font-size:.9375rem}.report-grid{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.report-grid dt{color:var(--ink-muted);font-size:.75rem;font-weight:600}.report-grid dd{font-variant-numeric:tabular-nums;margin:0;font-weight:650}.report-table{border-collapse:collapse;width:100%;font-size:.875rem}.report-table th,.report-table td{border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top;padding:6px 8px;font-weight:450}.report-table thead th{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);font-size:.6875rem;font-weight:650}.report-table tfoot th,.report-table tfoot td{border-bottom:0;font-weight:650}.report-table .r{text-align:right;font-variant-numeric:tabular-nums}.report-table tr{break-inside:avoid}.report-table thead th,.report-table .r{white-space:nowrap}.report-table th[scope=row]{min-width:8rem;max-width:16rem}.table-wrap{min-width:0}.table-scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;overflow-x:auto}.table-scroll:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;border-radius:var(--radius-sm)}.table-wrap[data-scrollable] .report-table th:first-child{z-index:1;background:var(--color-bg);box-shadow:1px 0 0 var(--line-soft);position:sticky;left:0}.table-hint{margin-top:var(--space-2)}.report-list,.report-checks{margin:var(--space-2) 0 0;gap:4px;padding-left:1.2em;font-size:.9375rem;display:grid}.report-checks{padding-left:0;list-style:none}.report-checks .is-done{color:var(--ink-muted)}.report-foot{margin-top:var(--space-4);color:var(--ink-muted)}.shell{--theme-bg:var(--color-brand);--theme-ink:var(--color-bg);--theme-spot:var(--color-accent);--theme-wash:var(--wash);--theme-line:color-mix(in srgb, var(--color-brand) 30%, var(--color-bg))}.shell[data-accent=sky]{--theme-bg:var(--color-brand-light);--theme-ink:var(--color-text);--theme-spot:var(--color-accent);--theme-wash:color-mix(in srgb, var(--color-brand-light) 10%, var(--color-bg));--theme-line:color-mix(in srgb, var(--color-brand-light) 45%, var(--color-bg))}.shell[data-accent=sunshine]{--theme-bg:var(--color-accent);--theme-ink:var(--color-text);--theme-spot:var(--color-brand);--theme-wash:color-mix(in srgb, var(--color-accent) 22%, var(--color-bg));--theme-line:color-mix(in srgb, var(--color-accent) 80%, var(--color-text))}.shell[data-accent=ink]{--theme-bg:var(--color-text);--theme-ink:var(--color-bg);--theme-spot:var(--color-accent);--theme-wash:var(--pearl-soft);--theme-line:var(--color-line)}.ov-hero{border-color:var(--theme-line);background:linear-gradient(135deg, var(--theme-wash), var(--color-bg) 60%);position:relative;overflow:hidden}.ov-hero:after{content:"";background:var(--theme-spot);opacity:.16;pointer-events:none;border-radius:50%;width:180px;height:180px;position:absolute;top:-60px;right:-60px}.ov-names{color:var(--ink-soft);margin-top:4px;font-weight:650}.ov-line{margin-top:var(--space-2);font-size:1.0625rem;font-weight:600}.ov-next-part{margin-top:var(--space-2);color:var(--ink-soft)}.countdown{z-index:1;background:var(--theme-bg);color:var(--theme-ink);position:relative}.countdown>span,.countdown>a{color:var(--theme-ink)}.countdown-share{margin-top:var(--space-2)}.countdown .countdown-share{background:var(--color-bg);color:var(--color-brand);border-color:var(--color-bg)}.countdown .countdown-share:hover{background:var(--pearl-soft);color:var(--color-brand);border-color:var(--pearl-soft)}.countdown .countdown-share:focus-visible{outline:3px solid var(--theme-ink);outline-offset:3px}.side-progress{color:var(--ink-soft);margin-top:6px}.home-feedback{margin:var(--space-5) 0 0}.home-feedback a{align-items:center;min-height:44px;display:inline-flex}.side-feedback{margin:var(--space-4) 0 0;padding:0 var(--space-3);min-height:44px;color:var(--ink-soft);align-items:center;gap:6px;display:inline-flex}.more-feedback{border-top:1px solid var(--line-soft);min-height:48px;color:var(--color-text);align-items:center;gap:10px;margin-top:4px;padding:0 12px;font-weight:600;text-decoration:none;display:flex}.next-steps .acard-head{gap:var(--space-2);flex-wrap:wrap}.next-steps .acard-head .btn-app{white-space:normal;height:auto;min-height:40px}.step-list{gap:var(--space-2);counter-reset:step;margin:0;padding:0;list-style:none;display:grid}.step-list li{gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--theme-wash);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.step-list li:before{counter-increment:step;content:counter(step);background:var(--theme-bg);width:28px;height:28px;color:var(--theme-ink);border-radius:50%;place-items:center;font-size:.875rem;font-weight:700;display:grid}.step-list a{white-space:nowrap;align-items:center;gap:4px;min-height:44px;font-weight:600;display:inline-flex}.ov-rewards-row{align-items:center;gap:var(--space-3);display:flex}.medal{flex:none}.medal-ribbon{fill:var(--color-brand)}.medal-disc{fill:var(--color-accent);stroke:var(--color-text);stroke-width:1.5px}.medal-ring{fill:none;stroke:var(--color-text);stroke-opacity:.35;stroke-width:1.5px}.medal-star{fill:var(--color-text)}.medal-bronze .medal-disc{fill:color-mix(in srgb, var(--color-accent) 55%, var(--color-text))}.medal-silver .medal-disc{fill:var(--color-line)}.medal-champion .medal-ribbon{fill:var(--color-accent)}.medal-champion .medal-disc{fill:var(--color-brand)}.medal-champion .medal-star{fill:var(--color-accent)}.medal-star.is-locked,.medal.is-locked .medal-disc{fill:var(--pearl-mid)}.medal.is-locked .medal-ribbon{fill:var(--color-line)}.medal.is-locked .medal-star{fill:var(--color-bg)}.cabinet{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));margin:0;padding:0;list-style:none;display:grid}.trophy{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:var(--color-bg);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.trophy.is-unlocked{border-color:var(--theme-line);background:linear-gradient(160deg, var(--theme-wash), var(--color-bg) 70%)}.trophy.is-locked .trophy-name{color:var(--ink-soft)}.trophy-name{font-weight:700}.trophy-state{align-items:center;gap:6px;margin-top:6px;font-weight:600;display:flex}.task-why{padding:0 0 var(--space-2) 32px;color:var(--ink-soft);grid-column:1/-1;align-items:flex-start;gap:6px;display:flex}.linked-box{margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--wash);gap:var(--space-3);display:grid}.notice.info{border-color:var(--theme-line);background:var(--theme-wash);align-items:flex-start;gap:8px;display:flex}.questions{gap:6px;display:grid}.table-scroll{margin-top:var(--space-3);overflow-x:auto}.compare-table caption{text-align:left;padding-bottom:6px;font-weight:650}.compare-table th[scope=row]{font-weight:600}.share-preview{place-items:center;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--pearl-soft);display:grid}.share-preview img{aspect-ratio:9/16;border-radius:var(--radius-md);width:min(270px,70vw);height:auto;box-shadow:var(--elev-1);display:block}.share-open{font-weight:600}@media (width<=760px){.share-preview img{width:min(200px,44vw)}.share-sheet .sheet-actions [data-share-download]{order:-1;grid-column:1/-1}}.share-opts{margin-top:var(--space-4)}.share-layout{gap:var(--space-4);margin-top:var(--space-3);display:grid}@media (width>=760px){.share-layout{grid-template-columns:300px minmax(0,1fr);align-items:start}.share-layout .share-preview{position:sticky;top:0}}.share-controls{gap:var(--space-3);min-width:0;display:grid}.share-group{border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:0 var(--space-4);background:var(--color-bg)}.share-group[open]{padding-bottom:var(--space-4)}.share-group>summary{cursor:pointer;align-items:center;min-height:48px;font-weight:700;display:flex}.share-group>:not(summary)+*{margin-top:var(--space-3)}.theme-pick{border:0;grid-template-columns:repeat(auto-fill,minmax(min(100%,12rem),1fr));gap:8px;margin:0;padding:0;display:grid}.theme-pick legend{margin-bottom:6px;padding:0;font-weight:650}.theme-opt{border:1px solid var(--color-line);border-radius:var(--radius-md);cursor:pointer;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;min-height:56px;padding:8px 10px;display:grid;position:relative}.theme-opt input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.theme-opt:has(input:checked){border-color:var(--color-brand);box-shadow:inset 0 0 0 2px var(--color-brand)}.theme-opt:has(input:checked) .theme-name:after{content:"Selected";color:var(--color-brand);font-size:.75rem;font-weight:700;display:block}.theme-opt:has(input:focus-visible){outline:3px solid var(--color-brand);outline-offset:2px}.theme-swatch{border-radius:10px;place-items:end start;width:40px;height:40px;padding:6px;display:grid;box-shadow:inset 0 0 0 1px #0000001f}.theme-swatch span{border-radius:50%;width:12px;height:12px}.theme-name{min-width:0;font-size:.875rem;font-weight:650;line-height:1.3;display:grid}.file-btn{cursor:pointer;position:relative}.file-btn:has(input:focus-visible){outline:3px solid var(--color-brand);outline-offset:2px}.file-btn.is-busy{opacity:.7;cursor:progress}.photo-frame-controls{gap:var(--space-3);display:grid}.range-fld{gap:4px;display:grid}.range-fld label{font-size:.875rem;font-weight:600}.range-fld input[type=range]{width:100%;min-height:32px;accent-color:var(--color-brand)}.share-status:empty{display:none}.share-status{padding:var(--space-2) var(--space-3);border-radius:var(--radius);background:var(--wash);font-size:.875rem;font-weight:600}.share-status.is-good{background:var(--success-soft);color:var(--success)}.share-status.is-bad{background:var(--danger-soft);color:var(--danger)}.celebrate[open]{width:min(460px,100% - 32px);height:fit-content;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));border-radius:var(--radius-xl);overscroll-behavior:contain;background:var(--color-bg);color:var(--color-text);box-shadow:var(--elev-2);animation:celebrate-in .36s var(--ease-out);border:0;margin:auto;padding:0;position:fixed;inset:0;overflow:hidden auto}.celebrate::backdrop{background:color-mix(in srgb, var(--deeper) 62%, transparent)}.celebrate-inner{justify-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-5) var(--space-5);text-align:center;border-radius:inherit;background:radial-gradient(120% 60% at 50% 0%, var(--award-soft), var(--color-bg) 62%);display:grid;position:relative}.celebrate-kicker{background:var(--award);min-height:28px;color:var(--award-ink);letter-spacing:.02em;border-radius:999px;align-items:center;padding:2px 12px;font-size:.8125rem;font-weight:700;display:inline-flex}.celebrate h2{letter-spacing:-.02em;overflow-wrap:anywhere;line-height:1.2;font-size:clamp(1.375rem,1.2rem + .8vw,1.75rem)!important}.celebrate h2:focus{outline:none}.celebrate-body{gap:var(--space-2);max-width:36ch;color:var(--ink-soft);display:grid}.celebrate-next{width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--wash);text-align:left;gap:4px;display:grid}.celebrate-next-title{align-items:center;gap:8px;font-weight:600;display:flex}.celebrate-next .small{color:var(--ink-soft)}.celebrate-actions{gap:var(--space-2);width:100%;display:grid}.celebrate-actions .btn-app{white-space:normal;width:100%;min-height:48px}.celebrate-x{border-radius:var(--radius);width:44px;height:44px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:8px;right:8px}.celebrate-x:hover{background:var(--wash)}.celebrate-medal{width:132px;height:132px;margin-top:var(--space-2);place-items:center;display:grid;position:relative}.celebrate-medal .medal{z-index:1;animation:medal-reveal .7s var(--ease-out) both;filter:drop-shadow(0 8px 16px color-mix(in srgb, var(--color-text) 18%, transparent));position:relative}.celebrate-glow{background:radial-gradient(circle, color-mix(in srgb, var(--color-accent) 70%, transparent) 0, transparent 70%);border-radius:50%;animation:.9s ease-out both glow-in;position:absolute;inset:0}.confetti{pointer-events:none;z-index:2;width:0;height:0;position:absolute;top:96px;left:50%}.confetti span{background:var(--color-brand);opacity:0;border-radius:2px;width:8px;height:12px;animation:1.4s cubic-bezier(.2,.7,.3,1) forwards confetti-burst;position:absolute;top:-6px;left:-4px}.confetti span:nth-child(3n){background:var(--color-accent)}.confetti span:nth-child(3n+1){background:var(--color-brand-light)}.confetti span:nth-child(5n){background:var(--success)}.confetti span:nth-child(4n){border-radius:50%;width:9px;height:9px}.confetti span:first-child{--dx:145px;--dy:18px;--rot:233deg;animation-delay:29ms}.confetti span:nth-child(2){--dx:137px;--dy:80px;--rot:-286deg;animation-delay:58ms}.confetti span:nth-child(3){--dx:110px;--dy:40px;--rot:339deg;animation-delay:87ms}.confetti span:nth-child(4){--dx:86px;--dy:95px;--rot:-392deg;animation-delay:.116s}.confetti span:nth-child(5){--dx:14px;--dy:69px;--rot:185deg;animation-delay:.145s}.confetti span:nth-child(6){--dx:36px;--dy:96px;--rot:-238deg;animation-delay:14ms}.confetti span:nth-child(7){--dx:-34px;--dy:127px;--rot:291deg;animation-delay:43ms}.confetti span:nth-child(8){--dx:-78px;--dy:69px;--rot:-344deg;animation-delay:72ms}.confetti span:nth-child(9){--dx:-79px;--dy:102px;--rot:397deg;animation-delay:.101s}.confetti span:nth-child(10){--dx:-97px;--dy:39px;--rot:-190deg;animation-delay:.13s}.confetti span:nth-child(11){--dx:-158px;--dy:14px;--rot:243deg;animation-delay:.159s}.confetti span:nth-child(12){--dx:-184px;--dy:41px;--rot:-296deg;animation-delay:28ms}.confetti span:nth-child(13){--dx:-151px;--dy:-23px;--rot:349deg;animation-delay:57ms}.confetti span:nth-child(14){--dx:-177px;--dy:-80px;--rot:-402deg;animation-delay:86ms}.confetti span:nth-child(15){--dx:-132px;--dy:-54px;--rot:195deg;animation-delay:.115s}.confetti span:nth-child(16){--dx:-140px;--dy:-110px;--rot:-248deg;animation-delay:.144s}.confetti span:nth-child(17){--dx:-111px;--dy:-172px;--rot:301deg;animation-delay:13ms}.confetti span:nth-child(18){--dx:-97px;--dy:-128px;--rot:-354deg;animation-delay:42ms}.confetti span:nth-child(19){--dx:-53px;--dy:-178px;--rot:407deg;animation-delay:71ms}.confetti span:nth-child(20){--dx:16px;--dy:-141px;--rot:-200deg;animation-delay:.1s}.confetti span:nth-child(21){--dx:0px;--dy:-172px;--rot:253deg;animation-delay:.129s}.confetti span:nth-child(22){--dx:48px;--dy:-122px;--rot:-306deg;animation-delay:.158s}.confetti span:nth-child(23){--dx:114px;--dy:-121px;--rot:359deg;animation-delay:27ms}.confetti span:nth-child(24){--dx:123px;--dy:-154px;--rot:-412deg;animation-delay:56ms}.confetti span:nth-child(25){--dx:127px;--dy:-86px;--rot:205deg;animation-delay:85ms}.confetti span:nth-child(26){--dx:181px;--dy:-46px;--rot:-258deg;animation-delay:.114s}.confetti span:nth-child(27){--dx:126px;--dy:-53px;--rot:311deg;animation-delay:.143s}.confetti span:nth-child(28){--dx:164px;--dy:-8px;--rot:-364deg;animation-delay:12ms}@keyframes confetti-burst{0%{opacity:1;transform:translate(0)rotate(0)}70%{opacity:1}to{opacity:0;transform:translate(var(--dx), calc(var(--dy) + 90px)) rotate(var(--rot))}}@keyframes celebrate-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:none}}@keyframes medal-reveal{0%{opacity:0;transform:scale(.3)rotate(-25deg)}60%{opacity:1;transform:scale(1.15)rotate(8deg)}to{transform:scale(1)rotate(0)}}@keyframes glow-in{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.confetti{display:none}.celebrate[open],.celebrate-medal .medal,.celebrate-glow{animation:none}}@media (width>=480px){.celebrate-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.celebrate-actions>:first-child{grid-column:1/-1}}.has-modal .bottom-nav,.has-modal .more-panel,.has-modal .more-scrim{display:none!important}.bar.is-warn .bar-fill{fill:var(--attention)}.bar.is-over .bar-fill{fill:var(--danger)}.pbar{gap:6px;display:grid}.pbar .bar{height:10px}.pbar.is-start .bar-fill{fill:var(--color-brand-light)}.pbar.is-mid .bar-fill{fill:var(--color-brand)}.pbar.is-high .bar-fill,.pbar.is-complete .bar-fill{fill:var(--success)}.pbar-done{border-radius:var(--radius-sm);background:var(--success-soft);width:fit-content;color:var(--success);align-items:center;gap:4px;padding:2px 8px;font-size:.8125rem;font-weight:700;display:inline-flex}.spotlight .pbar .bar-fill{fill:var(--color-accent)}.spotlight .pbar-done{background:var(--color-bg)}.meter{gap:var(--space-2);margin:var(--space-3) 0 0;display:grid}.meter-bar{width:100%;height:14px;display:block;overflow:visible}.meter.is-compact .meter-bar{height:8px}.meter-track{fill:var(--pearl-soft)}.meter-paid{fill:var(--money-paid)}.meter-unpaid{fill:var(--money-unpaid)}.meter-estimate{fill:var(--money-estimate)}.meter-reserve{fill:var(--money-reserve)}.meter-over{fill:var(--money-over)}.meter-forecast-over{fill:var(--money-forecast-over);opacity:.55}.meter-line{fill:var(--color-text)}.meter-key{color:var(--ink-soft);grid-template-columns:repeat(auto-fit,minmax(min(100%,12.5rem),1fr));gap:6px 16px;margin:0;padding:0;font-size:.8125rem;list-style:none;display:grid}.meter-key li{align-items:center;gap:8px;min-width:0;display:flex}.meter-key strong{color:var(--color-text);white-space:nowrap;margin-left:auto;font-weight:650}.key{border-radius:3px;flex:none;width:12px;height:12px;display:inline-block}.key-paid{background:var(--money-paid)}.key-unpaid{background:var(--money-unpaid)}.key-estimate{background:var(--money-estimate)}.key-reserve{background:var(--money-reserve)}.key-line{background:var(--color-text);border-radius:0;width:3px}.bnote-wrap{gap:var(--space-2);margin:0 0 var(--space-5);display:grid}.bnote-actions{gap:var(--space-2);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.bnote-actions .btn-app{white-space:normal;text-align:center;flex:auto;min-height:44px}@media (width>=640px){.bnote-actions .btn-app{flex:0 auto}}.bnote-chip{border:1px solid var(--line-soft);background:var(--color-bg);min-height:36px;font:inherit;cursor:pointer;border-radius:999px;justify-self:start;align-items:center;gap:6px;padding:4px 12px;font-size:.875rem;font-weight:600;display:inline-flex}.bnote-chip.tone-positive{color:var(--success);border-color:var(--success-line)}.bnote-chip.tone-info{color:var(--deep)}.bnote-chip.tone-attention{color:var(--attention);border-color:var(--attention-line)}.bnote-chip.tone-critical{color:var(--danger);border-color:var(--danger-line)}.bnote-impact{overflow-wrap:anywhere;align-items:flex-start;gap:6px;margin:0;font-size:.9375rem;font-weight:550;display:flex}.bnote-impact:empty{display:none}.bnote-impact .ic{flex:none;margin-top:3px}.bnote-impact.tone-positive{color:var(--success)}.bnote-impact.tone-info{color:var(--deep)}.bnote-impact.tone-attention{color:var(--attention)}.bnote-impact.tone-critical{color:var(--danger)}.status-success{--st:var(--status-success);--st-soft:var(--status-success-soft)}.status-warning{--st:var(--status-warning);--st-soft:var(--status-warning-soft)}.status-danger{--st:var(--status-danger);--st-soft:var(--status-danger-soft)}.status-info{--st:var(--status-info);--st-soft:var(--status-info-soft)}.status-neutral{--st:var(--status-neutral);--st-soft:var(--status-neutral-soft)}.status-disabled{--st:var(--status-disabled);--st-soft:var(--status-disabled-soft)}.status-overdue{--st:var(--status-overdue);--st-soft:var(--status-overdue-soft)}.status-pending{--st:var(--status-pending);--st-soft:var(--status-pending-soft)}.status-confirmed{--st:var(--status-confirmed);--st-soft:var(--status-confirmed-soft)}.status-completed{--st:var(--status-completed);--st-soft:var(--status-completed-soft)}.sbadge{background:var(--st-soft);color:var(--st);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--st) 28%, transparent);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:.8125rem;font-weight:650;line-height:1.5;display:inline-flex}.sbadge.is-sm{padding:1px 6px;font-size:.75rem}.sbadge .ic{flex:none}.fin{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-bg);border:1px solid color-mix(in srgb, var(--st) 55%, var(--color-bg));min-width:0;display:grid}.fin-head{gap:var(--space-2);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.fin-icon{background:var(--color-bg);width:28px;height:28px;color:var(--st);border-radius:50%;place-items:center;display:grid}.fin-title{color:var(--st);overflow-wrap:anywhere;margin:0;font-size:1rem;font-weight:700;line-height:1.3}.fin-close{margin:-6px -8px -6px 0}.fin-variance{flex-wrap:wrap;align-items:baseline;gap:2px 8px;margin:0;display:flex}.fin-amount{letter-spacing:-.025em;color:var(--color-text);overflow-wrap:anywhere;font-size:clamp(1.5rem,1.2rem + 1.4vw,2rem);font-weight:800;line-height:1.1}.fin-caption{color:var(--ink-soft);font-size:.875rem;font-weight:600}.fin-figures{gap:4px var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,5.5rem),1fr));margin:0;display:grid}.fin-figures>div{min-width:0}.fin-figures dt{color:var(--ink-muted);font-size:.75rem;font-weight:600}.fin-figures dd{overflow-wrap:anywhere;margin:0;font-size:.9375rem;font-weight:700}.fin-note{color:var(--ink-soft);overflow-wrap:anywhere;margin:0;font-size:.875rem}.fin.is-calm{padding:var(--space-2) var(--space-3) var(--space-2) var(--space-4);background:var(--color-bg);border-left-width:1px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.fin.is-calm>.ic{color:var(--st)}.fin-calm{overflow-wrap:anywhere;margin:0;font-size:.9375rem}.fin-calm strong{color:var(--st)}.fin.is-calm .bnote-actions{grid-column:1/-1;margin:0}.fin.is-calm .bnote-actions .btn-app{flex:0 auto}.budget-plan-grid{gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));align-items:start;display:grid}.prefs-card,.suggest-card{gap:var(--space-3);display:grid}.prefs-limits{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr));margin:0;display:grid}.prefs-limits>div{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--wash);min-width:0}.prefs-limits dt{color:var(--ink-muted);font-size:.75rem;font-weight:650}.prefs-limits dd{overflow-wrap:anywhere;margin:0;font-weight:750}.prefs-limits .is-short{background:var(--attention-soft)}.prefs-limits .is-short dd{color:var(--attention)}.prefs-priorities{grid-template-columns:repeat(auto-fill,minmax(min(100%,11rem),1fr));gap:6px;display:grid}.prefs-priorities legend,.prefs-priorities .fld-hint{grid-column:1/-1}.suggest-notes{color:var(--ink-soft);gap:4px;margin:0;padding-left:1.1rem;display:grid}.suggest-details summary{cursor:pointer;align-items:center;gap:8px;min-height:44px;font-weight:650;list-style:none;display:flex}.suggest-details summary::-webkit-details-marker{display:none}.suggest-details summary:before{content:"";border-bottom:2px solid;border-right:2px solid;width:8px;height:8px;transition:transform .15s;transform:rotate(-45deg)}.suggest-details[open] summary:before{transform:rotate(45deg)}.suggest-table td.small{min-width:14rem}.qcheck{padding:2px 0 2px var(--space-3);border-left:2px solid var(--attention-line);justify-items:start;gap:4px;display:grid}.qcheck-head{align-items:flex-start;gap:6px;font-size:.875rem;line-height:1.4;display:flex}.qcheck-head .ic{flex:none;margin-top:2px}.qcheck-head span{color:var(--color-text);font-weight:400}.qcheck-more{justify-self:stretch;font-size:.875rem}.qcheck p{margin:0}.qcheck-list{margin:0;padding-left:1.1rem}.qcheck .btn-app{white-space:normal;justify-self:start;height:auto;min-height:40px}.countdown .countdown-primary{background:var(--color-bg);color:var(--color-brand);border-color:var(--color-bg);font-weight:700}.countdown .countdown-share.is-secondary{color:var(--theme-ink);background:0 0;border-color:currentColor}.ov-metrics{gap:var(--space-3);margin:var(--space-4) 0;grid-template-columns:repeat(4,minmax(0,1fr));padding:0;list-style:none;display:grid}.ov-metric a{height:100%;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-bg);border:1px solid var(--line-soft);border-top:3px solid var(--st);color:inherit;align-content:start;gap:2px;min-width:0;text-decoration:none;display:grid}.ov-metric a:hover{border-color:color-mix(in srgb, var(--st) 40%, var(--color-bg))}.ov-metric a:focus-visible{outline:3px solid var(--color-brand);outline-offset:2px}.ov-metric-label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);font-size:.75rem;font-weight:700}.ov-metric-value{letter-spacing:-.02em;overflow-wrap:anywhere;font-size:clamp(1.25rem,1rem + 1vw,1.625rem);font-weight:800;line-height:1.15}.ov-metric-note{color:var(--ink-soft);overflow-wrap:anywhere;font-size:.8125rem}.ov-metric .sbadge{white-space:normal;justify-self:start;margin-top:4px}.focus-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.focus-item{gap:4px var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-bg);border:1px solid var(--line-soft);border-left:4px solid var(--st);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.focus-item .sbadge{grid-column:1/-1;justify-self:start}.focus-text{overflow-wrap:anywhere;margin:0}.focus-link{white-space:nowrap;align-items:center;gap:4px;min-height:44px;font-weight:650;display:inline-flex}.focus-how{margin:0}@media (width<=760px){.ov-metrics{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.focus-item{grid-template-columns:minmax(0,1fr)}.focus-link{white-space:normal;min-height:36px}}.gsum{gap:var(--space-2);margin-bottom:var(--space-4);display:grid}.gsum-total{flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:0;display:flex}.gsum-total strong{letter-spacing:-.02em;font-size:clamp(1.5rem,1.2rem + 1vw,2rem);font-weight:800}.gsum-total span{color:var(--ink-soft)}.gsum-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5rem),1fr));margin:0}.gsum-item{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-bg);border:1px solid var(--line-soft);border-top:3px solid var(--st);gap:4px;display:grid}.gsum-item dt{margin:0}.gsum-item dd{margin:0;font-size:1.25rem;font-weight:750}.guest-rsvp{justify-items:start;gap:4px;display:grid}.seat-count{flex-wrap:wrap;align-items:center;gap:6px;margin:0;display:flex}.seat-h{margin:var(--space-3) 0 var(--space-1);font-size:.9375rem}.seat-list,.seat-pick{gap:4px;margin:0;padding:0;list-style:none;display:grid}.seat-list li{gap:var(--space-2);border-bottom:1px solid var(--line-soft);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;padding:6px 0;display:grid}.seat-name{overflow-wrap:anywhere}.seat-move select{max-width:9.5rem;min-height:40px;font:inherit;border-radius:var(--radius-sm);border:1px solid var(--color-line);background:var(--color-bg);padding:4px 8px;font-size:.875rem}.seat-pick{border:1px solid var(--line-soft);border-radius:var(--radius-md);max-height:18rem;padding:4px;overflow-y:auto}.seat-pick .check-row{align-items:center;min-height:40px;padding:6px 4px}.seat-preview{color:var(--deep);align-items:flex-start;gap:6px;margin:0;font-weight:600;display:flex}.seat-preview.is-over{color:var(--danger)}.guest-print{gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--line-soft);display:grid}.guest-print h3{margin:0}.print-sheet{display:none}.print-gifts{grid-template-columns:1fr 1fr;gap:10pt;margin:12pt 0 0;padding:0;list-style:none;display:grid}.print-gifts li{border:1px solid var(--color-line);break-inside:avoid;border-radius:8px;grid-template-columns:auto 1fr;align-items:start;gap:10pt;padding:8pt;display:grid}.print-gifts img{object-fit:cover;border-radius:6px;width:72pt;height:72pt}.print-gifts p{margin:0 0 2pt}.print-gift-name{font-weight:700}.print-link{overflow-wrap:anywhere;color:var(--ink-soft);font-size:8.5pt}.gift-grid{margin:var(--space-4) 0 0;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));padding:0;list-style:none;display:grid}.gcard{border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-bg);box-shadow:var(--elev-1);grid-template-rows:auto 1fr auto;min-width:0;display:grid;overflow:hidden}.gcard.is-done .gift-pic{opacity:.6}.gift-pic{aspect-ratio:4/3;background:linear-gradient(160deg, var(--wash), var(--pearl-soft));color:var(--color-brand);place-items:center;display:grid;overflow:hidden}.gift-pic img{object-fit:cover;width:100%;height:100%;display:block}.gift-pic.is-blank{aspect-ratio:auto;height:72px}.gift-pic.is-small{aspect-ratio:1;border-radius:var(--radius-md);flex:none;width:72px}.gcard-body{padding:var(--space-3) var(--space-4) 0;align-content:start;gap:4px;min-width:0;display:grid}.gcard-body p{margin:0}.gcard-badges{flex-wrap:wrap;gap:6px;display:flex}.gcard-name{overflow-wrap:anywhere;font-size:1.0625rem;font-weight:700}.gcard-price{font-weight:600}.gcard-actions{padding:var(--space-3) var(--space-4) var(--space-4)}.gift-pic-row{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.print-opts{margin-top:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:0 var(--space-4);background:var(--color-bg)}.print-opts[open]{padding-bottom:var(--space-4)}.print-opts>summary{cursor:pointer;align-items:center;gap:8px;min-height:48px;font-weight:650;display:flex}.print-opts>:not(summary)+*{margin-top:var(--space-3)}.ubar{gap:4px;display:grid}.ubar-svg{width:100%;height:8px;display:block;overflow:visible}.ubar-track{fill:color-mix(in srgb, var(--color-text) 10%, var(--color-bg))}.ubar-fill{fill:var(--money-unpaid)}.ubar-over{fill:var(--st)}.ubar-line{fill:var(--color-text)}.ubar-text{color:var(--ink-soft);margin:0;font-size:.8125rem}.ubar-text strong{color:var(--color-text);font-weight:750}.bdash{gap:var(--space-4);padding:var(--space-5);margin-bottom:var(--space-5);border-radius:var(--radius-xl);border:1px solid var(--line-soft);background:linear-gradient(170deg, var(--mod-budget), var(--color-bg) 60%);scroll-margin-top:var(--space-6);display:grid}.bdash:focus{outline:none}.bdash-total{letter-spacing:-.025em;overflow-wrap:anywhere;margin:2px 0 6px;font-size:clamp(1.75rem,1.2rem + 2vw,2.5rem)}.bdash-status{background:var(--color-bg);border-radius:999px;align-items:center;gap:6px;margin:0;padding:4px 10px;font-size:.875rem;font-weight:650;display:inline-flex}.bdash-status.tone-positive{color:var(--success);box-shadow:inset 0 0 0 1px var(--success-line)}.bdash-status.tone-info{color:var(--deep);box-shadow:inset 0 0 0 1px var(--wash-strong)}.bdash-status.tone-attention{color:var(--attention);box-shadow:inset 0 0 0 1px var(--attention-line)}.bdash-status.tone-critical{color:var(--danger);box-shadow:inset 0 0 0 1px var(--danger-line)}.bfig{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,10.5rem),1fr));margin:0;display:grid}.bfig>div{min-width:0;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-bg);border:1px solid var(--line-soft);align-content:start;gap:2px;display:grid}.bfig dt{color:var(--ink-muted);font-size:.8125rem;font-weight:600}.bfig dd{font-variant-numeric:tabular-nums;letter-spacing:-.01em;overflow-wrap:anywhere;margin:0;font-size:clamp(1.0625rem,.95rem + .5vw,1.25rem);font-weight:650}.bfig .fig-note{letter-spacing:0;color:var(--ink-muted);margin:0;font-size:.75rem;font-weight:400;line-height:1.35}.bfig .fig-committed{border-top:3px solid var(--money-unpaid)}.bfig .fig-estimate{border-top:3px solid var(--money-estimate)}.bfig .fig-paid{border-top:3px solid var(--money-paid)}.bfig .fig-left,.bfig .fig-room{border-top:3px solid var(--success-line)}.bfig .fig-left dd,.bfig .fig-room dd{color:var(--success)}.bfig .fig-over{border-top:3px solid var(--danger);background:var(--danger-soft)}.bfig .fig-over dd{color:var(--danger)}.bfig .fig-short{border-top:3px solid var(--attention);background:var(--attention-soft)}.bfig .fig-short dd{color:var(--attention)}.bdash-explain{color:var(--ink-soft);margin:0}.btips{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.btip{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-bg);border:1px solid var(--line-soft);grid-template-columns:auto minmax(0,1fr);font-size:.9375rem;display:grid}.btip>.ic{margin-top:2px}.btip p{overflow-wrap:anywhere;margin:0}.btip a,.btip .link-btn{align-items:center;gap:4px;min-height:32px;margin-top:4px;font-weight:600;display:inline-flex}.btip-kind{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);font-weight:700;font-size:.75rem!important}.btip.tone-info>.ic{color:var(--deep)}.btip.tone-attention{border-color:var(--attention-line);background:var(--attention-soft)}.btip.tone-attention>.ic{color:var(--attention)}.cat-basis{color:var(--ink-soft);font-weight:600}.basis-agreed{color:var(--deep)}.basis-none{color:var(--attention)}.cat.is-skipped{opacity:.75}.cat-left{color:var(--success);font-weight:600}.check-row{gap:var(--space-3);align-items:flex-start;font-weight:500;display:flex}.check-row input{flex:none;width:22px;height:22px;margin-top:1px}.check-row .fld-hint{font-weight:400;display:block}.quick-preview{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--wash);grid-template-columns:repeat(auto-fit,minmax(min(100%,9rem),1fr));margin:0;display:grid}.quick-preview dt{color:var(--ink-muted);font-size:.8125rem;font-weight:600}.quick-preview dd{overflow-wrap:anywhere;margin:0;font-weight:650}.quick-status{align-items:center;gap:6px;margin:0;font-weight:600;display:flex}.quick-status.tone-positive{color:var(--success)}.quick-status.tone-info{color:var(--deep)}.quick-status.tone-attention{color:var(--attention)}.quick-status.tone-critical{color:var(--danger)}@media (prefers-reduced-motion:no-preference){.fin,.bnote-impact{animation:bnote-in .22s var(--ease-out)}@keyframes bnote-in{0%{transform:translateY(-4px)}to{transform:none}}}.medal-bronze .medal-disc{fill:var(--metal-bronze);stroke:var(--bronze)}.medal-bronze .medal-star{fill:var(--color-bg)}.medal-silver .medal-disc{fill:var(--metal-silver);stroke:var(--silver)}.medal-silver .medal-star{fill:var(--color-bg)}.medal-gold .medal-disc{fill:var(--color-accent);stroke:var(--gold)}.medal-gold .medal-ribbon{fill:var(--deep)}.trophy.is-unlocked.trophy-bronze{background:linear-gradient(160deg, var(--bronze-soft), var(--color-bg) 70%);border-color:color-mix(in srgb, var(--bronze) 35%, var(--color-bg))}.trophy.is-unlocked.trophy-silver{background:linear-gradient(160deg, var(--silver-soft), var(--color-bg) 70%);border-color:color-mix(in srgb, var(--silver) 35%, var(--color-bg))}.trophy.is-unlocked.trophy-gold{background:linear-gradient(160deg, var(--gold-soft), var(--color-bg) 70%);border-color:color-mix(in srgb, var(--gold) 40%, var(--color-bg))}.trophy.is-unlocked.trophy-champion{background:linear-gradient(160deg, var(--wash-strong), var(--award-soft) 80%);border-color:var(--color-brand)}.trophy.is-unlocked .trophy-state{color:var(--success)}.trophy.is-locked .medal{opacity:.8}.cabinet-count{margin-top:var(--space-2)!important}.rewards-card{gap:var(--space-3);background:linear-gradient(160deg, var(--mod-rewards), var(--color-bg) 55%);align-content:start;display:grid}.rewards-heading{margin:0}.rewards-summary{align-items:center;gap:var(--space-3);grid-template-columns:auto minmax(0,1fr);display:grid}.rewards-icon{background:var(--color-bg);width:72px;height:72px;box-shadow:inset 0 0 0 2px var(--award);border-radius:50%;place-items:center;display:grid}.rewards-text{gap:2px;min-width:0;display:grid}.rewards-count{font-size:1.0625rem;font-weight:600;line-height:1.25}.rewards-count strong{letter-spacing:-.02em;margin-right:4px;font-size:1.75rem;font-weight:750}.rewards-latest{color:var(--ink-soft);overflow-wrap:anywhere;font-size:.9375rem}.rewards-all{justify-self:start}.next-reward{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-bg);border:1px solid var(--line-soft);margin-top:var(--space-3);gap:6px;display:grid}.rewards-card .next-reward{margin-top:0}.next-reward-title{align-items:center;gap:8px;font-weight:600;display:flex}.next-reward .small{color:var(--ink-soft)}.next-reward.is-done{color:var(--success);background:var(--success-soft);border-color:var(--success-line);align-items:center;gap:8px;font-weight:600;display:flex}.welcome-back{align-items:flex-start;gap:8px;display:flex}.welcome-back a{font-weight:600}.health{gap:var(--space-4);display:grid}.health .acard-head{margin-bottom:0}.health .acard-head .btn-app{white-space:normal;height:auto;min-height:40px}.health-summary{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);align-items:flex-start;gap:8px;font-weight:600;display:flex}.health.is-steady .health-summary{background:var(--success-soft);color:var(--success)}.health.is-attention .health-summary{background:var(--attention-soft);color:var(--attention)}.health.is-unknown .health-summary{background:var(--wash);color:var(--deep)}.health-summary .ic{margin-top:2px}.health-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));display:grid}.health-col{gap:var(--space-2);align-content:start;min-width:0;display:grid}.health-col h3{font-size:.9375rem}.health-wins ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.health-wins li{font-size:var(--fs-small);align-items:flex-start;gap:8px;display:flex}.health-wins .ic{color:var(--success);margin-top:3px}.health-checks .attention-list li{background:var(--attention-soft);border-color:var(--attention-line)}.health-checks .attention-list .ic,.due.is-soon{color:var(--attention)}.shell[data-section=budget] .app-section-head,.shell[data-section=checklist] .app-section-head,.shell[data-section=guests] .app-section-head,.shell[data-section=vendors] .app-section-head,.shell[data-section=achievements] .app-section-head{padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg)}.shell[data-section=budget] .app-section-head{background:var(--mod-budget)}.shell[data-section=checklist] .app-section-head{background:var(--mod-tasks)}.shell[data-section=guests] .app-section-head{background:var(--mod-guests)}.shell[data-section=vendors] .app-section-head{background:var(--mod-vendors)}.shell[data-section=achievements] .app-section-head{background:var(--mod-rewards)}@media (width<=1023px){.shell{padding-bottom:calc(var(--app-bottom) + env(safe-area-inset-bottom,0px) + var(--space-4));display:block}.side{display:none}.mobile-head{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--gutter);background:var(--color-bg);border-bottom:1px solid var(--line-soft);display:flex}.mobile-title{min-width:0;line-height:1.25;display:grid}.mobile-title>span:first-child{text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.mobile-title .muted{font-size:.8125rem}.shell-main{padding:var(--space-5) var(--gutter) var(--space-7)}.bottom-nav{z-index:40;min-height:calc(var(--app-bottom) + env(safe-area-inset-bottom,0px));padding:2px 4px env(safe-area-inset-bottom,0px);background:var(--color-bg);border-top:1px solid var(--line-soft);box-shadow:0 -4px 16px color-mix(in srgb, var(--color-text) 6%, transparent);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav a,.bottom-nav button{border-radius:var(--radius);min-height:60px;color:var(--ink-muted);font:inherit;cursor:pointer;background:0 0;border:0;align-content:center;justify-items:center;gap:4px;padding:4px 2px;font-size:.75rem;font-weight:600;text-decoration:none;display:grid}.bottom-nav .ic{box-sizing:content-box;border-radius:var(--radius);padding:3px 16px}@media (pointer:coarse){.app:has(input:not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]):not([type=file]):focus,textarea:focus,select:focus) .bottom-nav,.app:has(input:not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]):not([type=file]):focus,textarea:focus,select:focus) .more-panel{display:none}}.bottom-nav span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.bottom-nav [aria-current=page],.bottom-nav .is-current,.bottom-nav [aria-expanded=true]{color:var(--color-brand);font-weight:700}.bottom-nav [aria-current=page] .ic,.bottom-nav .is-current .ic,.bottom-nav [aria-expanded=true] .ic{background:var(--wash-strong)}.bottom-nav a:focus-visible,.bottom-nav button:focus-visible{outline-offset:-3px}.more-scrim{z-index:38;cursor:default;background:#11111152;border:0;padding:0;position:fixed;inset:0}.more-title{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;padding:8px 12px 6px;font-size:.8125rem;font-weight:600;overflow:hidden}.more-panel{z-index:39;left:8px;right:8px;bottom:calc(var(--app-bottom) + 8px + env(safe-area-inset-bottom,0px));border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:var(--color-bg);box-shadow:var(--elev-2);padding:6px;display:block;position:fixed}.more-panel ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none;display:grid}.more-panel a{border-radius:var(--radius);min-height:48px;color:var(--color-text);align-items:center;gap:10px;padding:0 12px;font-weight:600;text-decoration:none;display:flex}.more-panel a[aria-current=page]{background:var(--wash);color:var(--color-brand)}.spotlight{grid-template-columns:minmax(0,1fr) auto}.spotlight-progress{grid-area:2/1/auto/-1}.discover{grid-template-columns:1fr}}@media (width<=760px){.app-bar{gap:var(--space-2)}.app-bar-nav{display:none}.app-logo img{width:96px}.account-label{display:none}.account-chip{width:44px;padding:0}.save-status{font-size:.75rem}.app-main{padding-top:var(--space-5)}.report-options,.budget-top,.ov-grid,.ov-budget{grid-template-columns:1fr}.ov-budget .ring-box{width:180px}.save-long{display:none}.save-short{display:inline!important}.budget-top .ring{order:-1}.ev-toolbar{grid-template-columns:1fr 1fr}.ev-toolbar .fld-search{grid-column:1/-1}.fld-inline{grid-template-columns:1fr;gap:4px}.spotlight{padding:var(--space-5);grid-template-columns:1fr}.spotlight-progress{grid-row:auto}.ov-hero{padding:var(--space-5);grid-template-columns:1fr}.countdown{min-width:0;padding:var(--space-3) var(--space-4);text-align:left;grid-template-columns:auto minmax(0,1fr);justify-self:stretch;place-items:center start;gap:10px 12px}.countdown strong{white-space:nowrap;font-size:1.5rem}.countdown strong:not(.num){font-size:1.1875rem}.countdown>span,.countdown>a{max-width:none}.countdown>a{white-space:nowrap}.countdown-share{grid-column:1/-1;margin-top:0}.countdown[data-countdown=no-date] .countdown-share{grid-column:auto;justify-self:start}.add-row,.add-guest,.add-task{grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr))}.add-row>*{min-width:0}.add-row>.fld:first-child{grid-column:1/-1}.add-row>.btn-app{grid-column:1/-1;justify-self:stretch}.list-tools.filters{grid-template-columns:repeat(auto-fit,minmax(min(100%,9.5rem),1fr))}.list-tools.filters>.search-fld{grid-column:1/-1}.discover{padding:var(--space-5)}.discover-links{grid-template-columns:1fr}.guest-main{grid-template-columns:minmax(0,1fr) auto}.guest-rsvp{padding-bottom:var(--space-2);grid-area:2/1/auto/-1}.task-main{grid-template-columns:minmax(0,1fr) auto}.task-meta{padding:0 0 var(--space-2) 32px;grid-area:2/1;justify-content:flex-start}.task-main>.icon-only{grid-area:1/2}.tl-item{grid-template-columns:1fr;gap:4px}.tl-date{padding-top:4px}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-options .checks:first-child{grid-template-columns:1fr}.step-list li{grid-template-columns:auto minmax(0,1fr)}.step-list li>a{grid-column:2}}@media (width>=761px){.sheet[open]{border-radius:var(--radius-xl);width:min(640px,100% - 48px);height:fit-content;max-height:min(86vh,820px);margin:auto;padding-bottom:0;inset:0}}@media (width<=1023px){.app:has(.bottom-nav) .toast{bottom:calc(var(--app-bottom) + env(safe-area-inset-bottom,0px) + 10px)}}@media (width<=1023px) and (pointer:coarse){.app:has(.shell-main :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea):focus) .bottom-nav{display:none}}@media (width<=760px){.sheet-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.sheet-actions>.btn-app:only-child{grid-column:1/-1}.sheet-danger{order:2;grid-column:1/-1;justify-self:center;margin:0}.vcard-actions{grid-template-columns:minmax(0,1fr) auto}.cat-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.cat-totals>div:first-child{grid-column:1/-1}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat dd{font-size:1.125rem}.acard{padding:var(--space-4)}.acard-head{margin-bottom:var(--space-3)}.ev-card{padding:var(--space-4);gap:10px}.budget-top .ring-box{width:200px}.tools-body,.data-panel-body{padding:0 var(--space-4) var(--space-4)}.explain>summary,.tools-panel>summary,.data-panel>summary{padding:0 var(--space-4)}}@media (width<=359px){.detail-list{grid-template-columns:1fr}}@media (width<=380px){.stats{grid-template-columns:1fr 1fr}.stat{padding:var(--space-3)}.stat dd{font-size:1.0625rem}.vcard-money{grid-template-columns:1fr}.ev-card,.acard{padding:var(--space-4)}.save-status [data-save-text]{max-width:120px}.more-panel ul{grid-template-columns:1fr}.bottom-nav a,.bottom-nav button{font-size:.6875rem}}@media (prefers-reduced-motion:reduce){.app *,.app :before,.app :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@page{size:A4;margin:16mm 14mm}@media print{body[data-page-type=planner-app]{background:var(--color-bg)}body[data-page-type=planner-app] .skip,body[data-page-type=planner-app] #cookie-banner,body[data-page-type=planner-app] dialog,.app-bar,.app-banner,.side,.mobile-head,.bottom-nav,.more-panel,.more-scrim,.toast,.no-print,.conflict,.celebrate,.app-section-head,[data-live]{display:none!important}.app,.planner-root,.shell{background:var(--color-bg);min-height:0;padding:0;display:block}.shell-main{max-width:none;padding:0}.report-doc{box-shadow:none;border:0;max-width:none;padding:0;font-size:10.5pt}.report-doc a{color:inherit;text-decoration:none}.report-part h2{break-after:avoid}.report-table thead{display:table-header-group}.table-scroll{overflow:visible}.table-wrap[data-scrollable] .report-table th:first-child{box-shadow:none;position:static}.report-table thead th,.report-table .r{white-space:normal}.money,.num{font-variant-numeric:tabular-nums}.bnote-wrap{display:none!important}@page{margin:14mm 12mm}.report-table tr,.report-grid>div,.report-metric,.report-next li,.report-health,.print-group h2+table tr{break-inside:avoid}.report-table tfoot{display:table-row-group}.report-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.report-metric{background:0 0}.report-part>h2,.print-group>h2{break-after:avoid}body[data-print]>:not(#print-root){display:none!important}body[data-print] #print-root .print-sheet{display:none}body[data-print=guests] .print-sheet[data-print-kind=guests],body[data-print=gifts] .print-sheet[data-print-kind=gifts],body[data-print=share] .print-sheet[data-print-kind=share]{box-shadow:none;border:0;max-width:none;padding:0;font-size:10.5pt;display:block}}.ach-purpose{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--wash);color:var(--ink-soft);align-items:flex-start;gap:8px;display:flex}.ach-purpose svg{color:var(--deep);flex:none;margin-top:2px}.ach-settings{margin-top:var(--space-4)}.shell{background:var(--color-bg)}.shell-main .app-section{gap:var(--space-5)}.shell[data-section] .app-section-head{background:0 0;border-radius:0;margin-bottom:0;padding:0}.app-intro{max-width:60ch;color:var(--ink-soft)}.shell-main .acard,.block{padding:var(--space-5) 0 0;border:0;border-top:1px solid var(--line-soft);box-shadow:none;background:0 0;border-radius:0;min-width:0}.shell-main .acard-head,.block-head{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.shell-main .acard-head h2,.block-head h2{letter-spacing:-.01em;font-size:1.0625rem}.block-link{font-size:var(--fs-small);font-weight:600}.shell-main .explain,.shell-main .tools-panel,.shell-main .data-panel{border:0;border-top:1px solid var(--line-soft);background:0 0;border-radius:0}.shell-main .explain>summary,.shell-main .tools-panel>summary,.shell-main .data-panel>summary{padding:0}.shell-main .explain dl{padding:0 0 var(--space-4)}.mgroup{border-radius:var(--radius-lg);background:var(--color-bg);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.mgroup.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width>=900px){.mgroup.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.metric{min-width:0;padding:var(--space-3) var(--space-4);background:var(--pearl-soft);display:block;position:relative}.metric dt{color:var(--ink-muted);font-size:.8125rem;font-weight:600}.metric-value{letter-spacing:-.015em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:2px 0 0;font-size:1.25rem;font-weight:650;line-height:1.25}.metric-note{color:var(--ink-muted);overflow-wrap:anywhere;align-items:flex-start;gap:4px;margin:2px 0 0;font-size:.8125rem;line-height:1.35;display:flex}.metric-note[class*=status-]{color:var(--st);font-weight:600}.metric-note .ic{flex:none;margin-top:2px}.metric-link{color:inherit;text-decoration:none}.metric-link:after{content:"";position:absolute;inset:0}.metric.is-link:has(.metric-link:focus-visible){outline:3px solid var(--color-brand);outline-offset:-3px}.metric-link:focus-visible{outline:none}.metric.ov-budget{display:block}.status-text{color:var(--st);align-items:center;gap:4px;display:inline-flex}@media (width<=359px){.metric{padding:var(--space-3)}.metric-value{font-size:1.125rem}.mgroup.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}.plist{margin:0;padding:0;list-style:none}.prow{align-items:center;gap:4px var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--line-soft);flex-wrap:wrap;min-width:0;display:flex}.plist>.prow:first-child{border-top:0}.prow-lead{color:var(--ink-muted);flex:none;place-items:center;display:grid}.prow-main{flex:10rem;min-width:0}.prow-title{overflow-wrap:anywhere;font-weight:600;line-height:1.35}.prow-meta{color:var(--ink-muted);overflow-wrap:anywhere;font-size:.875rem;margin-top:2px!important}.prow-end{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;flex:none;margin-left:auto;display:flex}.prow>.prow-extra{flex-basis:100%;min-width:0}.prow.is-quiet .prow-title{color:var(--ink-muted);font-weight:500}.disclosure{border-top:1px solid var(--line-soft);min-width:0}.disclosure>summary{align-items:center;gap:var(--space-2);cursor:pointer;min-height:48px;font-weight:600;list-style:none;display:flex}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary>.ic{color:var(--ink-muted);margin-left:auto;transition:transform .15s}.disclosure[open]>summary>.ic{transform:rotate(180deg)}.summary-count{background:var(--pearl-soft);min-width:22px;height:22px;color:var(--ink-soft);font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;padding:0 6px;font-size:.75rem;font-weight:650;display:inline-grid}.disclosure-body{gap:var(--space-4);padding:0 0 var(--space-4);min-width:0;display:grid}.disclosure-body>.acard:first-child,.disclosure-body .budget-plan-grid>.acard:first-child{border-top:0;padding-top:0}@media (prefers-reduced-motion:reduce){.disclosure>summary>.ic{transition:none}}.inline-action{min-height:44px;color:var(--color-brand);font:inherit;cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;gap:6px;padding:0;font-weight:600;text-decoration:none;display:inline-flex}.inline-action:hover{text-underline-offset:.2em;text-decoration:underline}.alist{margin:0;padding:0;list-style:none;display:grid}.alist-item{gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--line-soft);grid-template-columns:32px minmax(0,1fr) auto;align-items:center;display:grid;position:relative}.alist>.alist-item:first-child{border-top:0}.alist-icon{background:var(--wash);width:32px;height:32px;color:var(--deep);border-radius:50%;place-items:center;display:grid}.alist-item.status-overdue .alist-icon,.alist-item.status-danger .alist-icon,.alist-item.status-warning .alist-icon{background:var(--st-soft);color:var(--st)}.alist-text{min-width:0}.alist-title{color:var(--color-text);overflow-wrap:anywhere;font-weight:600;text-decoration:none}a.alist-title:after{content:"";position:absolute;inset:0}.alist-item:has(a.alist-title:hover) .alist-title{text-underline-offset:.2em;text-decoration:underline}.alist-item:has(a.alist-title:focus-visible){outline:3px solid var(--color-brand);outline-offset:2px;border-radius:var(--radius)}.alist-detail{color:var(--ink-muted);overflow-wrap:anywhere;font-size:.875rem;margin-top:2px!important}.alist-item>.ic{color:var(--ink-muted)}.link-rows{gap:0 var(--space-5);margin:var(--space-2) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.link-rows a{align-items:center;gap:4px;min-height:44px;font-weight:600;display:inline-flex}.ov-id{gap:4px;min-width:0;display:grid}.ov-id h1{overflow-wrap:anywhere}.ov-when{align-items:center;gap:var(--space-2) var(--space-4);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.ov-date{color:var(--ink-soft);align-items:flex-start;gap:6px;font-weight:550;display:inline-flex}.ov-date .ic{color:var(--ink-muted);flex:none;margin-top:3px}.ov-count{color:var(--ink-soft);font-size:.9375rem}.ov-count strong{color:var(--color-text);font-size:1.0625rem}.ov-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.ov-line{margin-top:var(--space-1);font-size:1rem}.ov-welcome{color:var(--ink-soft);align-items:flex-start;gap:8px;display:flex}.ov-welcome .ic{flex:none;margin-top:3px}.ov-focus .health-wins h3{margin-bottom:var(--space-2);font-size:.9375rem}.ov-focus .health-wins ul{color:var(--ink-soft);gap:6px;margin:0;padding:0;font-size:.875rem;list-style:none;display:grid}.ov-focus .health-wins li{align-items:flex-start;gap:6px;display:flex}.ov-focus .health-wins .ic{color:var(--success);flex:none;margin-top:2px}.ov-rewards{align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--line-soft);color:inherit;flex-wrap:wrap;text-decoration:none;display:flex}.ov-rewards .rewards-icon{width:40px;height:40px;box-shadow:inset 0 0 0 1.5px var(--award);flex:none;place-items:center;display:grid}.ov-rewards .rewards-count{font-weight:600}.ov-rewards .rewards-count strong{font-size:1rem}.ov-discover .link-rows a{font-weight:500}.ov-rewards-text{flex:10rem;min-width:0;display:grid}.ov-rewards-link{color:var(--color-brand);font-weight:600;font-size:var(--fs-small);align-items:center;gap:4px;margin-left:auto;display:inline-flex}.ov-rewards:hover .ov-rewards-link{text-decoration:underline}.fin.is-strip{flex-wrap:wrap;align-items:center;gap:8px 12px;padding:14px 12px 14px 14px;display:flex}.fin.is-strip>.ic{color:var(--st);flex:none}.fin-strip-text{flex:12rem;min-width:0;font-size:.9375rem}.fin-strip-text strong{font-weight:650}.fin-strip-more{flex:none;min-height:40px}.fin.is-strip .fin-close{flex:none}.shell-main .bdash{gap:var(--space-3);box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;display:grid}.bdash [data-budget-stats]{gap:var(--space-3);display:grid}.bdash-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.bdash-id{justify-items:start;gap:4px;min-width:0;display:grid}.shell-main .bdash-total{overflow-wrap:anywhere;margin:0;font-size:clamp(1.5rem,6vw,2rem);line-height:1.15}.bdash-status{display:inline-flex}.bdash .bfig{margin:0}.bdash-usage{gap:4px;display:grid}.bdash-usage-head{justify-content:space-between;align-items:baseline;gap:var(--space-2);color:var(--ink-soft);flex-wrap:wrap;font-size:.875rem;font-weight:600;display:flex}.bdash-usage .meter{margin-top:0}.bdash .bdash-explain{color:var(--ink-muted);margin:0}.bdash-tips .btips{margin:0}.budget-top.block{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));align-items:start;display:grid}.budget-plan .budget-plan-grid{gap:var(--space-5);display:grid}.progress-head{gap:var(--space-2);display:grid}.progress-figure{color:var(--ink-soft);flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.progress-figure strong{letter-spacing:-.02em;color:var(--color-text);font-size:1.75rem;font-weight:650}.add-task-block .block-head h2{align-items:center;gap:6px;display:inline-flex}.add-task-block .add-row{margin-top:0}.add-task-block>.small{margin-top:var(--space-2)!important}.task-groups{gap:var(--space-5);display:grid}.group-title{margin-bottom:var(--space-1);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);align-items:center;gap:6px;font-size:.875rem;font-weight:650;display:flex}.task-group.is-overdue .group-title{color:var(--danger)}.task-group.is-soon .group-title{color:var(--attention)}.task-group.is-overdue .group-title .ic,.task-group.is-soon .group-title .ic{color:inherit}.shell-main .task-list,.shell-main .guest-list{background:0 0;border:0;border-radius:0;overflow:visible}.shell-main .task+.task,.shell-main .guest+.guest{border-top:1px solid var(--line-soft)}.shell-main .task.is-overdue,.shell-main .task.is-soon{border-left:0}.shell-main .task-main,.shell-main .guest-main{padding-left:0;padding-right:0}.shell-main .task.is-overdue .task-check input{outline:2px solid var(--danger);outline-offset:1px}.task-done{border-top:1px solid var(--line-soft)}@media (width<=520px){.shell-main .task-main{grid-template-columns:minmax(0,1fr) auto}.shell-main .task-meta{grid-column:1/2;justify-content:flex-start;padding-left:32px}.shell-main .task-main>.btn-app{grid-area:1/2}}.fin.is-strip{grid-template-columns:auto minmax(0,1fr) auto auto;display:grid}.next-reward.is-compact{color:var(--ink-soft);background:0 0;border:0;align-items:center;gap:8px;margin:0;padding:0;display:flex}.next-reward.is-compact svg{flex:none}.add-task-block>summary{color:var(--color-brand)}.add-task-block>summary .disclosure-label{align-items:center;gap:6px;display:inline-flex}.gsum{gap:var(--space-3);display:grid}.status-line{gap:6px var(--space-4);flex-wrap:wrap;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}.status-line li{align-items:center;gap:6px;display:inline-flex}.status-line .num{font-weight:650}.ptabs{gap:var(--space-5);border-bottom:1px solid var(--line-soft);display:flex}.ptabs [role=tab]{min-height:44px;color:var(--ink-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:0 2px;font-weight:600;display:inline-flex}.ptabs [role=tab][aria-selected=true]{color:var(--color-text);border-bottom-color:var(--color-brand)}.ptabs [role=tab]:focus-visible{outline:3px solid var(--color-brand);outline-offset:2px;border-radius:var(--radius-sm)}.guest-panel{gap:var(--space-4);display:grid}.shell-main .tools-body{padding:0 0 var(--space-4)}.shell-main .lr-list{background:0 0;border:0;border-radius:0;overflow:visible}.shell-main .lr{padding-left:0;padding-right:0}.shell-main .lr.is-warn{box-shadow:none;background:0 0}.table-row .lr-main{gap:6px;display:grid}.table-row .table-seats{color:var(--ink-soft);font-weight:500}.table-row .bar{width:100%;max-width:320px;height:6px}.guest-meta .is-unseated{color:var(--ink-muted);font-style:italic}.status-select{color:var(--st);align-items:center;gap:4px;display:flex}.status-select select{color:var(--st)!important;border-color:color-mix(in srgb, var(--st) 40%, var(--color-bg))!important;font-weight:600!important}.status-select .ic{flex:none}@media (width<=520px){.shell-main .guest-main{grid-template-columns:minmax(0,1fr) auto}.shell-main .guest-rsvp{grid-area:2/1/auto/2}.shell-main .guest-main>.btn-app{grid-area:1/2}.table-row{flex-wrap:wrap}.table-row .lr-end{justify-content:flex-start;width:100%}}.shell-main .guest.is-attending,.shell-main .guest.is-maybe{box-shadow:none}.mgroup.stats{border:0}.shell-main .vendor-grid{grid-template-columns:none;display:block}.shell-main .vcard.vrow{gap:var(--space-2);padding:var(--space-4) 0;border:0;border-top:1px solid var(--line-soft);background:0 0;border-radius:0;display:grid}.shell-main .vendor-grid>.vrow:first-child{border-top:0}.shell-main .vcard.vrow.is-cancelled{opacity:.8;background:0 0}.vrow-top{align-items:flex-start;gap:var(--space-2);display:flex}.vrow-main{flex:1;gap:2px;min-width:0;display:grid}.vrow-meta{color:var(--ink-muted);overflow-wrap:anywhere;font-size:.875rem}.vrow-money{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.vrow-money strong{font-weight:650}.shell-main .vcard-actions{grid-template-columns:none;justify-content:flex-start;align-items:center;display:flex}.shell-main .vcard-actions .fld{min-width:0}.vrow-details{border-top:0}.vrow-details>summary{min-height:40px;color:var(--color-brand);justify-content:flex-start;font-size:.875rem}.vrow-details>summary>.ic{margin-left:0}.vrow-details .disclosure-body{gap:var(--space-2);padding-bottom:0}.needed-rows .prow-end a{align-items:center;gap:4px;min-height:44px;font-size:.875rem;font-weight:600;display:inline-flex}.tl{gap:var(--space-5);display:grid}.tl-month h2{margin-bottom:var(--space-2)}.shell-main .tl-month ol{border-left:0;margin-left:0}.shell-main .tl-item{gap:var(--space-3);padding:0 0 var(--space-4);grid-template-columns:22px minmax(0,1fr);display:grid}.shell-main .tl-item:before{content:"";background:var(--line-soft);border:0;border-radius:0;width:2px;height:auto;position:absolute;top:22px;bottom:0;left:10px}.shell-main .tl-item:last-child:before{display:none}.tl-mark{z-index:1;border:2px solid var(--color-line);background:var(--color-bg);width:22px;height:22px;color:var(--color-bg);border-radius:50%;place-items:center;margin-top:1px;display:grid;position:relative}.tl-item.is-done .tl-mark{border-color:var(--success);background:var(--success)}.tl-item.is-soon .tl-mark{border-color:var(--attention);background:var(--attention-soft);color:var(--attention)}.tl-item.is-late .tl-mark{border-color:var(--danger);background:var(--danger)}.tl-item.is-session .tl-mark,.tl-item.is-event .tl-mark{border-color:var(--color-brand)}.shell-main .tl-body{background:0 0;border:0;border-radius:0;gap:2px;min-width:0;padding:0;display:grid}.shell-main .tl-item.is-session .tl-body,.shell-main .tl-item.is-event .tl-body{background:0 0}.shell-main .tl-date{color:var(--ink-soft);padding-top:0;font-size:.8125rem;font-weight:600}.shell-main .tl-kind{letter-spacing:0;text-transform:none;color:var(--ink-muted);font-size:.8125rem;font-weight:500}.tl-item.is-late .tl-kind{color:var(--danger);font-weight:650}.shell-main .tl-title{color:var(--color-text);overflow-wrap:anywhere;font-weight:600;text-decoration:none}.shell-main .tl-title:hover{color:var(--color-brand);text-decoration:underline}.shell-main .tl-item.is-done .tl-title{color:var(--ink-muted);font-weight:500}.shell-main .run-list{border:0;border-radius:0}.shell-main .run-item{padding-left:0}.vrow-progress{gap:4px;max-width:360px;display:grid}.explain-lite>summary{color:var(--ink-soft);font-size:.875rem}.shell-main .gift-grid{margin:0;display:block}.shell-main .gcard{gap:4px var(--space-3);padding:var(--space-3) 0;border:0;border-top:1px solid var(--line-soft);box-shadow:none;border-radius:0;grid-template-rows:auto auto;grid-template-columns:56px minmax(0,1fr) auto;align-items:start;display:grid;overflow:visible}.shell-main .gift-grid>.gcard:first-child{border-top:0}.shell-main .gcard .gift-pic{aspect-ratio:1;border-radius:var(--radius-md);grid-row:1/3;width:56px;height:56px}.shell-main .gcard .gift-pic.is-blank{height:56px}.shell-main .gcard-body{gap:2px;padding:0}.shell-main .gcard-name{font-size:1rem;font-weight:650}.gcard-meta{color:var(--ink-muted)}.shell-main .gcard-price{font-weight:500}.shell-main .gcard-actions{grid-column:2/3;align-items:center;padding:0;display:flex}.gcard-edit{grid-area:1/3}.wishlist-status{max-width:22rem}.shell-main .cabinet{display:block}.shell-main .trophy{gap:var(--space-3);padding:var(--space-3) 0;border:0;border-top:1px solid var(--line-soft);border-radius:0;grid-template-columns:32px minmax(0,1fr);background:0 0!important}.shell-main .cabinet>.trophy:first-child{border-top:0}.shell-main .trophy .trophy-body>.small.muted{display:none}.shell-main .trophy.is-latest{padding:var(--space-4);margin-bottom:var(--space-2);border-radius:var(--radius-lg);grid-template-columns:56px minmax(0,1fr);background:var(--pearl-soft)!important}.shell-main .trophy.is-latest .trophy-body>.small.muted{display:block}.shell-main .trophy.is-latest .trophy-name{font-size:1.125rem}.shell-main .trophy.is-locked .trophy-name{font-weight:550}.shell-main .trophy-state{margin-top:2px}.trophy-body{gap:2px;min-width:0;display:grid}.trophy-body .link-btn{justify-self:start}.report-options-fold .report-options{background:0 0;border:0;grid-template-columns:1fr;padding:0}@media (width>=700px){.report-options-fold .report-options{grid-template-columns:repeat(2,minmax(0,1fr))}}.shell-main .report-doc{box-shadow:none;border:0;border-radius:0;max-width:840px;padding:0}.shell-main .report-head{border-bottom-width:1px;border-bottom-color:var(--line-soft)}.shell-main .report-metrics{border-radius:var(--radius-lg);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:hidden}@media (width>=700px){.shell-main .report-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}.shell-main .report-metric{background:var(--pearl-soft);border:0;border-radius:0}.report-detail-title{margin-top:var(--space-5)!important}.report-fold{padding:0}.report-fold>summary{align-items:center;gap:var(--space-2);cursor:pointer;min-height:52px;list-style:none;display:flex}.report-fold>summary::-webkit-details-marker{display:none}.report-fold>summary h2{margin:0;font-size:1.0625rem}.report-fold>summary .ic{color:var(--ink-muted);margin-left:auto;transition:transform .15s}.report-fold[open]>summary .ic{transform:rotate(180deg)}.report-fold-body{padding-bottom:var(--space-4)}@media (prefers-reduced-motion:reduce){.report-fold>summary .ic{transition:none}}@media print{.report-fold>summary .ic{display:none}.report-fold>summary{min-height:0}.report-fold>summary h2{font-size:1.125rem}.shell-main .report-metric{border:1px solid var(--color-line);background:0 0}}.shell-main .settings-group>.acard-head h2{font-size:1.125rem}.shell-main .settings-sub{border-top:0;padding-top:0}.shell-main .settings-sub>.acard-head h2{color:var(--ink-soft);font-size:.9375rem}.shell-main .scard{border:0;border-top:1px solid var(--line-soft);background:0 0;border-radius:0;padding-left:0;padding-right:0}.shell-main .scard-list{gap:0}.settings-danger{gap:var(--space-2);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--line-soft);display:grid}.settings-danger h3{color:var(--danger);font-size:.9375rem}.settings-danger .btn-danger-outline{justify-self:start}.bfig{gap:var(--space-4) var(--space-3)}.bfig>div{padding:0 0 0 var(--space-3);border:0;border-left:3px solid var(--line-soft);background:0 0;border-radius:0}.bfig .fig-committed{border-top:0;border-left-color:var(--money-unpaid)}.bfig .fig-estimate{border-top:0;border-left-color:var(--money-estimate)}.bfig .fig-paid{border-top:0;border-left-color:var(--money-paid)}.bfig .fig-left,.bfig .fig-room{border-top:0;border-left-color:var(--success-line)}.bfig .fig-over{border-top:0;border-left-color:var(--danger);background:0 0}.bfig .fig-short{border-top:0;border-left-color:var(--attention);background:0 0}.btips{gap:0}.btip{padding:var(--space-3) 0;border:0;border-top:1px solid var(--line-soft);background:0 0;border-radius:0}.btip:first-child{border-top:0}.budget-top .ring{background:0 0;border:0;border-radius:0;padding:0}.mgroup{gap:0 var(--space-5);background:0 0;border-radius:0;overflow:visible}.mgroup .metric{padding:var(--space-3) 0;border-top:1px solid var(--line-soft);background:0 0}.mgroup .metric-value{font-size:1.125rem}.mgroup.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width>=768px){.mgroup.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.metric.is-link:hover{background:0 0}.metric.is-link:hover .metric-value{text-underline-offset:.2em;text-decoration:underline}.metric.is-link:has(.metric-link:focus-visible){outline-offset:2px;border-radius:var(--radius)}.mgroup.is-rows{grid-template-columns:minmax(0,1fr);gap:0;display:grid}.mgroup.is-rows .metric{column-gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;padding:10px 0;display:grid}.mgroup.is-rows .metric:first-child{border-top:0}.mgroup.is-rows dt{color:var(--color-text);grid-area:1/1;font-size:.9375rem;font-weight:500}.mgroup.is-rows .metric-value{text-align:right;white-space:nowrap;grid-area:1/2;margin:0;font-size:1rem}.mgroup.is-rows .metric-note{grid-area:2/1/auto/-1}.bdash{gap:var(--space-3);margin-bottom:var(--space-5);background:0 0;border:0;border-radius:0;padding:0}.bdash-total{margin:0;font-size:clamp(1.75rem,1.3rem + 1.6vw,2.25rem)}.bfig>.metric{border-left:0;padding-left:0}.bfig .metric dt{align-items:center;gap:8px;display:inline-flex}.bfig .metric dt:before{content:"";background:var(--key,var(--line-soft));border-radius:50%;flex:none;width:8px;height:8px}.bfig .fig-estimate{--key:var(--money-estimate)}.bfig .fig-committed{--key:var(--money-unpaid)}.bfig .fig-paid{--key:var(--money-paid)}.bfig .fig-left{--key:var(--success-line)}.bfig .fig-over{--key:var(--danger)}.bfig .fig-over .metric-value{color:var(--danger)}.bfig .fig-left .metric-value{color:var(--color-text)}.bdash-usage{padding-top:var(--space-3);border-top:1px solid var(--line-soft);gap:6px}.bdash-usage-head{color:var(--color-text);flex-wrap:nowrap;font-size:.9375rem}.bdash-usage-head .status-text{color:var(--st);align-items:center;gap:6px;font-weight:650;display:inline-flex}.bdash-usage-head strong{color:var(--st)}.bdash-usage.status-success .bdash-usage-head .status-text,.bdash-usage.status-success .bdash-usage-head strong{color:var(--color-text)}.bdash-usage .inline-action{justify-self:start}.btips.alist{margin:0 0 var(--space-5)}.cat-card .budget-top{gap:var(--space-4);margin:0 0 var(--space-3);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.cat-card .budget-top .ring{background:0 0;border:0;padding:0}.cat-card .budget-top .ring-box{width:120px}.cat-card .budget-top .ring-full{max-width:140px;margin-inline:auto}@media (width<=359px){.cat-card .budget-top{grid-template-columns:minmax(0,1fr)}}.cat{align-items:center;gap:0 var(--space-3);border-top:1px solid var(--line-soft);grid-template-columns:10px minmax(0,1fr) auto auto;padding:10px 0;display:grid}.cat-list>.cat:first-child{border-top:0}.cat .ring-key{border-radius:3px;width:10px;height:10px}.cat-main{min-width:0}.cat-name{font-weight:600}.cat-meta{color:var(--ink-muted);margin-top:1px;font-size:.8125rem;display:block}.cat-meta .status-text{color:var(--st);align-items:center;gap:4px;font-weight:600;display:inline-flex}.cat-amount{white-space:nowrap;font-weight:650}.cat.is-skipped .cat-name,.cat.is-skipped .cat-amount{color:var(--ink-muted)}.cat-totals{border-top-width:1px}.fin.is-strip{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center}.fin-strip-text{gap:0;display:grid}.fin-strip-title{color:var(--st);font-size:.875rem;font-weight:600}.fin-strip-figures{align-items:baseline;gap:2px var(--space-3);flex-wrap:wrap;display:flex}.fin-strip-variance{color:var(--color-text);font-size:1.125rem;font-weight:700}.fin-strip-usage{color:var(--ink-muted);font-size:.8125rem}.bfig .metric-note{letter-spacing:0;font-size:.8125rem;font-weight:400}.bfig .metric-note[class*=status-]{font-weight:600}.bnote-wrap:not(:has(>:not(.bnote-impact:empty))){margin:0}.task-list{border:0;border-radius:0;overflow:visible}.task.is-overdue,.task.is-soon{border-left:0}.task-main{column-gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;row-gap:2px;padding:10px 0}.task-main>.task-check{grid-area:1/1;min-height:40px}.task-main>.btn-app{grid-area:1/2}.task-main>.task-meta{color:var(--ink-muted);text-align:left;flex-wrap:wrap;grid-area:2/1/auto/-1;align-items:center;gap:6px;margin:0 0 4px;padding-left:32px;font-size:.8125rem;display:flex}.task-meta .due{font-size:inherit;color:inherit;background:0 0;padding:0;display:inline}.task-meta .due .ic{vertical-align:-2px;margin-right:4px}.task-meta .due.is-overdue{color:var(--danger);font-weight:600}.task-meta .due.is-soon{color:var(--attention);font-weight:600}.task.is-done .task-meta .due{color:inherit;font-weight:400}.seg{scrollbar-width:none;flex-wrap:nowrap;margin:-2px;padding:2px;overflow-x:auto}.seg::-webkit-scrollbar{display:none}.seg button{border-radius:999px;flex:none;min-height:36px;padding:0 12px}.task-extras{gap:0 var(--space-4);margin:var(--space-4) 0 0;flex-wrap:wrap;display:flex}.list-tools,.list-tools>.seg{min-width:0;max-width:100%}.task-meta .due .ic{display:inline-block}.gsum{margin-bottom:var(--space-4);gap:0;display:grid}.gsum .mgroup .metric{border-top:0;padding-top:0}.gsum-more{border-top:1px solid var(--line-soft)}.gsum-more .status-line{margin-bottom:var(--space-2)}.status-filter{margin:var(--space-3) 0 var(--space-2)}.empty-line{margin:var(--space-3) 0}.gsum+.ptabs,.gsum~.ptabs{margin-top:var(--space-2)}.shell-main .guest-main{column-gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto auto}.shell-main .guest-rsvp{grid-area:1/2;padding:0}.shell-main .guest-main>.btn-app{grid-area:1/3}.status-select select{background-color:var(--st-soft)!important;border-color:#0000!important;border-radius:999px!important;min-height:36px!important;padding:4px 28px 4px 10px!important;font-size:.8125rem!important}.guest-rsvp select{max-width:9.5rem}.mgroup .metric.gsum-total{display:block}.shell-main .guest-rsvp{width:auto}.guest-rsvp .fld{width:auto;min-width:0}.guest-rsvp select{width:auto;max-width:none}@media (width<=359px){.guest-rsvp>.ic{display:none}}@media (width<=480px){.shell-main .guest-main{grid-template-columns:minmax(0,1fr) auto}.shell-main .guest-rsvp{grid-area:2/1;margin-top:4px}.shell-main .guest-main>.btn-app{grid-area:1/2}.guest-rsvp>.ic{display:inline-block}}@media (width<=1023px){.more-panel{left:0;right:0;bottom:calc(var(--app-bottom) + env(safe-area-inset-bottom,0px));border:0;border-radius:16px 16px 0 0;padding:8px 16px 12px;box-shadow:0 -8px 24px #1111111f}.more-grip{background:var(--line-soft);border-radius:2px;width:36px;height:4px;margin:0 auto 6px;display:block}.more-title{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);padding:10px 4px 4px;font-size:.75rem;font-weight:600}.more-panel ul{gap:0 12px;margin:0;padding:0;list-style:none;display:grid}.more-panel .more-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.more-panel .more-list{grid-template-columns:1fr}.more-panel .more-list+.more-title,.more-panel .more-grid+.more-title{border-top:1px solid var(--line-soft);margin-top:6px}.more-panel a{border-radius:var(--radius);min-height:44px;color:var(--color-text);align-items:center;gap:10px;padding:0 8px;font-size:.9375rem;font-weight:500;line-height:1.25;text-decoration:none;display:flex}.more-panel a .ic{color:var(--ink-muted);flex:none}.more-panel a:hover{background:var(--pearl-soft)}.more-panel a[aria-current=page]{background:var(--wash);color:var(--color-brand);font-weight:600}.more-panel a[aria-current=page] .ic{color:var(--color-brand)}.more-panel a:focus{outline:none}.more-panel a:focus-visible{outline:2px solid var(--color-brand);outline-offset:-2px;background:var(--wash)}}@media (width<=359px){.more-panel .more-grid{grid-template-columns:1fr}}.report-health-line{margin:0 0 var(--space-3);align-items:flex-start;gap:8px;font-size:1rem;line-height:1.4;display:flex}.report-health-line .ic{flex:none;margin-top:2px}.report-health-line span{color:var(--color-text);font-weight:400}.report-health-line strong{color:var(--st)}.report-summary{grid-template-columns:minmax(0,1fr);margin:0;display:grid}.rsum-row{column-gap:var(--space-3);border-top:1px solid var(--line-soft);break-inside:avoid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;padding:10px 0;display:grid}.rsum-row:first-child{border-top:0}.rsum-row dt{grid-area:1/1;align-items:center;gap:8px;font-weight:600;display:flex}.rsum-value{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;grid-area:1/2;margin:0;font-size:1.125rem;font-weight:700}.rsum-note{color:var(--ink-muted);grid-area:2/1/auto/-1;margin:2px 0 0 24px;font-size:.875rem}.rsum-note .status-text{font-weight:600}@media (width>=720px){.report-summary{column-gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr))}.rsum-row:nth-child(2){border-top:0}}.rnext .alist-item{break-inside:avoid}.ov-id{gap:8px}.ov-when{gap:10px;margin-top:12px;display:grid}.ov-date,.ov-place{align-items:flex-start;gap:8px;margin:0;line-height:1.45;display:flex}.ov-date{color:var(--color-text);font-weight:600}.ov-place{color:var(--ink-soft);font-weight:500}.ov-date .ic,.ov-place .ic{flex:none;margin-top:2px}.ov-date .ic{color:var(--color-brand)}.ov-place .ic{color:var(--ink-muted)}.ov-count-row{justify-items:start;gap:12px;margin-top:4px;display:grid}.ov-count-row .ov-count{margin:0}.ov-count.is-badge{background:var(--wash);min-height:40px;color:var(--deep);border-radius:999px;align-items:center;gap:8px;padding:6px 16px 6px 14px;font-size:.9375rem;font-weight:550;display:inline-flex}.ov-count.is-badge strong{color:var(--deep);font-size:1.125rem;font-weight:750}.ov-count .ic{color:var(--color-brand);flex:none}.ov-count.is-line{color:var(--color-text);align-items:flex-start;gap:8px;font-weight:550;display:flex}.ov-count.is-line .ic{color:var(--color-brand);margin-top:3px}.ov-count-row .countdown-share{margin-top:0}.ov-metrics{margin-top:var(--space-5)}.fin,.fin.is-strip{background:var(--color-bg);border:1px solid color-mix(in srgb, var(--st) 55%, var(--color-bg));border-radius:var(--radius-lg);box-shadow:none}.fin{gap:var(--space-3);padding:var(--space-4)}.fin-head{gap:10px}.fin-icon{background:var(--st-soft);width:32px;height:32px;color:var(--st)}.fin.is-committed-over .fin-icon{background:var(--st);color:var(--color-bg)}.fin-title{font-weight:650}.fin-variance{gap:4px 8px}.fin-amount{letter-spacing:-.02em;white-space:nowrap;color:var(--st);font-size:clamp(1.625rem,1.3rem + 1.2vw,2rem);font-weight:750}.fin-figures{gap:10px var(--space-4);padding:var(--space-3) 0 0;border-top:1px solid var(--line-soft);grid-template-columns:repeat(auto-fit,minmax(min(100%,6rem),1fr))}.fin-figures dt{margin-bottom:2px}.fin-figures dd{white-space:nowrap;font-size:1rem}.fin-note{line-height:1.5}.fin .bnote-actions{margin-top:var(--space-2)}.fin.is-strip{gap:10px 12px;padding:14px 12px 14px 14px}.fin.is-strip>.ic{color:var(--st)}.fin.is-strip.is-committed-over>.ic{box-sizing:content-box;background:var(--st);color:var(--color-bg);border-radius:50%;padding:4px}.fin-strip-text{gap:4px}.fin-strip-variance{white-space:nowrap;color:var(--st);font-size:1.25rem}.fin.is-calm{border-color:var(--line-soft)}.fin.is-calm .fin-calm strong{color:var(--st)}.task-meta{gap:6px}.task-meta .due{color:var(--ink-muted);margin-right:2px;font-weight:500}.task-meta .due.is-overdue,.task-meta .due.is-soon{color:var(--ink-soft);font-weight:500}.mtag{border:1px solid #0000;border-radius:999px;align-items:center;gap:4px;max-width:100%;min-height:24px;padding:2px 9px;font-size:.75rem;font-weight:650;line-height:1.35;display:inline-flex}.mtag .ic{flex:none}.task-meta .mtag.due-state:before{content:none}.mtag-danger{background:var(--danger-soft);color:var(--danger);border-color:var(--danger-line)}.mtag-warning{background:var(--attention-soft);color:var(--attention);border-color:var(--attention-line)}.mtag-info{background:var(--wash);color:var(--deep)}.mtag-neutral{background:var(--color-bg);color:var(--ink-soft);border-color:var(--color-line)}.task.is-done .mtag{color:var(--ink-muted);border-color:var(--line-soft);background:0 0}.alist-item.status-pending .alist-icon,.alist-item.status-success .alist-icon,.alist-item.status-completed .alist-icon,.alist-item.status-info .alist-icon,.alist-item.status-confirmed .alist-icon{background:var(--st-soft);color:var(--st)}.rsum-row dt .ic,.ov-welcome .ic{color:var(--color-brand)}@media (width<=1023px){.more-panel a .ic{color:var(--color-brand)}}.shell-main .task-meta{padding-left:39px}.money-fit .fit-short{display:none}@media (width<=430px){.money-fit .fit-short{display:inline}.money-fit .fit-full{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (width>=768px){.ov-count-row{grid-template-columns:auto auto;align-items:center;column-gap:16px}}
