:root{--font-family:system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", Arial, sans-serif;--font-size-body:1.125rem;--font-size-date:1.375rem;--font-size-title:1.75rem;--line-height:1.6;--color-bg:#fff;--color-surface:#f6f3ee;--color-text:#1a1a1a;--color-text-muted:#4d4d4d;--color-primary:#8b1e1e;--color-primary-hover:#6f1717;--color-primary-tint:#f3dede;--color-success:#1d7a3a;--color-input-border:#6b6b6b;--color-on-primary:#fff;--color-focus:#1a56db;--color-border:#e4ddd2;--color-grip:#c9c2b8;--color-callout:#fdf0e6;--color-callout-border:#a65a1a;--color-error-bg:#fbeaea;--touch-target:48px;--touch-gap:8px;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:3rem;--radius:.5rem;--radius-card:.625rem;--radius-dialog:.875rem;--radius-sheet:1rem;--content-width:40rem;--wide-width:80rem;--wide-padding:4rem;--aside-width:21rem;--column-gap:3rem;--footer-room:10rem;--header-height:3.5rem}@media (width>=60rem){:root{--header-height:4rem}}@media (width>=90rem){:root{--aside-width:22.5rem;--column-gap:4rem;--header-height:4.5rem;--font-size-title:2rem}}@media (width>=150rem){:root{--wide-width:96rem;--aside-width:25rem;--column-gap:5rem;--header-height:5rem;--font-size-body:1.25rem;--font-size-date:1.5rem;--font-size-title:2.5rem}}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-family);font-size:100%;line-height:var(--line-height);color:var(--color-text);background:var(--color-bg);-webkit-text-size-adjust:100%}body{font-size:var(--font-size-body);margin:0}a{color:var(--color-primary)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}[hidden]{display:none!important}h1{font-size:var(--font-size-title);margin-top:0;line-height:1.25}.back-link+h1{margin-top:.75rem}h2{font-size:1.25rem;line-height:1.3}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}input[type=radio],input[type=checkbox]{accent-color:var(--color-primary)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.skip-link{left:var(--space-2);min-height:var(--touch-target);background:var(--color-bg);padding:0 var(--space-2);align-items:center;display:inline-flex;position:absolute;top:-100px}.skip-link:focus{top:var(--space-1)}.container{max-width:var(--content-width);padding:0 var(--space-2);margin:0 auto}.site-header{border-bottom:1px solid var(--color-border);background:var(--color-bg)}.site-footer{margin-top:var(--space-4);padding:.75rem 0 var(--space-3);border-top:1px solid var(--color-border)}.site-header-row{align-items:center;gap:var(--space-1);min-height:var(--header-height);flex-wrap:wrap;display:flex}.brand{min-height:var(--touch-target);color:var(--color-text);white-space:nowrap;align-items:center;gap:.625rem;margin-right:auto;font-size:1.25rem;font-weight:700;text-decoration:none;display:inline-flex}.brand-icon{color:var(--color-primary);flex:none}.nav-bar{display:none}.nav-bar a{white-space:nowrap;color:var(--color-text);border-bottom:3px solid #0000;align-items:center;padding:0 .875rem;text-decoration:none;display:flex}.nav-bar a[aria-current=page]{border-bottom-color:var(--color-primary);color:var(--color-primary);font-weight:700}.nav-bar a:hover{color:var(--color-primary)}.header-signin{align-items:center;gap:var(--space-1);min-height:var(--touch-target);padding:0 var(--space-2);border:2px solid var(--color-primary);border-radius:calc(var(--touch-target) / 2);color:var(--color-primary);font-weight:600;text-decoration:none;display:inline-flex}.header-signin:hover{background:var(--color-primary-tint)}.header-signin[hidden],.menu-promo[hidden]{display:none}.header-account{position:relative}.header-account-pending{align-items:center;gap:var(--space-1);min-height:var(--touch-target);padding:0 var(--space-1);display:none}html[data-account-loading] .header-account-pending{display:inline-flex}html[data-account-loading] .header-signin,html[data-account-loading] .menu-promo{display:none}.pending-initial{background:#e9e3d9;border-radius:50%;flex:none;width:2.25rem;height:2.25rem}.pending-lines{gap:.375rem;display:grid}.pending-lines:before,.pending-lines:after{content:"";background:#e9e3d9;border-radius:6px;width:6.5rem;height:.875rem}.pending-lines:after{background:#efebe4;width:4.75rem;height:.75rem}@media (width<=29.99rem){.pending-lines{display:none}}.account-button{align-items:center;gap:var(--space-1);min-height:var(--touch-target);padding:0 var(--space-1);border-radius:var(--radius);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;display:inline-flex}.account-button:hover{background:var(--color-surface)}.account-initial{background:var(--color-primary);width:2.25rem;height:2.25rem;color:var(--color-on-primary);border-radius:50%;place-items:center;font-weight:700;display:inline-grid}.account-text{line-height:1.25;display:grid}.account-name{text-overflow:ellipsis;white-space:nowrap;max-width:12rem;font-weight:600;overflow:hidden}.account-sync{color:var(--color-text-muted);font-size:var(--font-size-small,.875rem)}.account-sync:before{content:"";background:var(--color-success);vertical-align:.0625rem;border-radius:50%;width:.5rem;height:.5rem;margin-right:.375rem;display:inline-block}.account-sync[data-state=waiting]:before{background:var(--color-callout-border)}.account-menu{z-index:20;min-width:16rem;padding:var(--space-1) 0;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);display:grid;position:absolute;top:calc(100% + .25rem);right:0;box-shadow:0 4px 16px #0000001f}.account-menu[hidden]{display:none}.account-menu a,.account-menu button{min-height:var(--touch-target);padding:0 var(--space-2);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;text-decoration:none;display:flex}.account-menu a:hover,.account-menu button:hover{background:var(--color-surface)}.account-trial{padding:var(--space-1) var(--space-2);color:var(--color-text-muted);margin:0}.account-trial[hidden]{display:none}@media (width<=29.99rem){.account-text{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.nav-menu summary{width:var(--touch-target);height:var(--touch-target);border-radius:var(--radius);color:var(--color-text);cursor:pointer;justify-content:center;align-items:center;list-style:none;display:inline-flex}.nav-menu summary::-webkit-details-marker{display:none}.menu-icon-close,.nav-menu[open] .menu-icon-open{display:none}.nav-menu[open] .menu-icon-close{display:block}.nav-menu[open] summary{top:calc((var(--header-height) - var(--touch-target)) / 2);z-index:11;position:fixed;right:.25rem}.nav-menu-panel{z-index:10;padding:0 var(--space-2) var(--space-3);background:var(--color-bg);position:fixed;inset:0;overflow-y:auto}.nav-menu-title{min-height:var(--header-height);margin:0 calc(-1 * var(--space-2));padding:0 var(--space-2);border-bottom:1px solid var(--color-border);align-items:center;font-size:1.25rem;font-weight:700;display:flex}.menu-promo{padding:.875rem var(--space-2);border-radius:var(--radius-card);background:var(--color-primary-tint);color:var(--color-text);margin-top:.75rem;line-height:1.5;text-decoration:none;display:grid}.menu-promo strong{color:var(--color-primary)}.nav-menu-panel ul{margin:0;padding:0;list-style:none}.nav-menu-panel nav a{min-height:3.25rem;padding:0 var(--space-2);color:var(--color-text);border-left:3px solid #0000;align-items:center;text-decoration:none;display:flex}.nav-menu-panel nav li+li{margin-top:var(--touch-gap)}.nav-menu-panel nav a[aria-current=page]{border-left-color:var(--color-primary);background:var(--color-surface);font-weight:700}.nav-group{margin:1.25rem 0 var(--space-1);color:var(--color-text-muted);font-weight:700}@media (width>=60rem){.site-header-row{align-items:stretch;gap:var(--space-3);height:var(--header-height);flex-wrap:nowrap}.brand{font-size:calc(var(--font-size-body) + .25rem);align-self:center}.nav-bar{gap:.25rem;margin-bottom:-1px;display:flex}.account-slot{width:14rem;padding-left:var(--space-3);border-left:1px solid var(--color-border);flex:none;justify-content:flex-end;align-items:center;display:flex}.nav-menu{display:none}}.header-back{width:var(--touch-target);height:var(--touch-target);margin-left:calc(-1 * var(--space-1));color:var(--color-text);justify-content:center;align-items:center;display:inline-flex}.header-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-size:1.25rem;font-weight:700;overflow:hidden}@media (width<=59.99rem){.has-back .brand,.has-back .account-slot{display:none}.site-header-row{flex-wrap:nowrap;column-gap:.25rem;padding:0 .25rem 0 .5rem}.brand{gap:var(--space-1);min-width:0;padding-left:var(--space-1);font-size:1.25rem}.brand>span{text-overflow:ellipsis;overflow:hidden}.account-slot,.nav-menu{flex:none}.brand-icon{width:18px;height:24px}.header-back{margin-left:0}.header-signin{padding:0 .75rem;font-size:1rem}.signin-icon{display:none}}@media (width>=60rem){.header-back,.header-title{display:none}}@media (width<=59.99rem){.nav-menu{margin-left:.25rem}}@media (width<=24.99rem){.brand{font-size:var(--font-size-body)}}@media (width<=22.49rem){.brand{padding-left:0}.brand-icon{display:none}.header-signin{padding:0 .5rem}}.container-wide{max-width:var(--content-width)}body{flex-direction:column;min-height:100dvh;display:flex}#main{width:100%;padding-top:var(--space-3);flex:1 0 auto}@media (width>=60rem) and (width<=74.99rem){:root{--wide-padding:2rem}.site-header-row{gap:var(--space-2)}.nav-bar a{padding:0 .5rem}.account-slot{width:auto;padding-left:var(--space-2)}.header-signin{padding:0 .75rem}}@media (width>=60rem){.container-wide{max-width:var(--wide-width);padding:0 var(--wide-padding)}#main{padding-top:1.25rem}#main:has(.person-form){padding-top:1rem}}@media (width>=90rem){#main,#main:has(.person-form){padding-top:2rem}#main:has(>.settings-layout,>.info-page,>.signin-soon,>.plans-title,>#sh-loading){padding-top:2.5rem}}@media (width>=150rem){#main,#main:has(.person-form){padding-top:2.5rem}}.back-link{min-height:var(--touch-target);align-items:center;display:inline-flex}.footer-links{gap:0 var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0;margin-bottom:0;list-style:none;display:grid}.footer-links a{min-height:var(--touch-target);align-items:center;display:inline-flex}@media (width>=60rem){.site-footer{padding:1.75rem 0 2.5rem}.footer-links{gap:2rem;display:flex}}.breadcrumb ol{flex-wrap:wrap;align-items:center;margin:0;padding:0;list-style:none;display:flex}.breadcrumb li{align-items:center;display:flex}.breadcrumb li+li:before{content:"›";content:"›" / "";padding:0 var(--space-1);color:var(--color-text-muted)}.breadcrumb a,.breadcrumb [aria-current]{min-height:var(--touch-target);align-items:center;display:inline-flex}.breadcrumb [aria-current]{color:var(--color-text-muted)}.breadcrumb+h1{margin-top:.75rem}.list-wait{gap:var(--space-2);display:none}html[data-list-loading] #main[data-list-wait]>:not(.list-wait){display:none}html[data-list-loading] #main[data-list-wait]>.list-wait{display:grid}.list-wait-main,.list-wait-card,.list-wait-aside{align-content:start;gap:var(--space-2);display:grid}.list-wait-card,.list-wait-aside{padding:var(--space-3);border-radius:var(--radius-card);background:var(--color-surface)}.list-wait span{background:#e9e3d9;border-radius:6px;height:1.125rem;display:block}.list-wait .list-wait-title{background:#efebe4;width:min(22.5rem,80%);height:2rem}.list-wait .list-wait-subtitle{background:#efebe4;width:min(32.5rem,100%);height:1.25rem}.list-wait-card span:first-child{width:45%;height:1.375rem}.list-wait-card span:nth-child(2){width:85%}.list-wait-card span:nth-child(3){width:70%}.list-wait-card span:nth-child(4){width:55%}.list-wait-aside span:nth-child(odd){width:60%}.list-wait-aside span:nth-child(2n){width:40%}@media (width>=60rem){.list-wait{grid-template-columns:minmax(0, 1fr) var(--aside-width);gap:var(--column-gap);align-items:start}}.page-columns{gap:var(--space-2);display:grid}.page-aside{gap:var(--space-2);align-content:start;display:grid}.page-aside>.button-secondary{width:100%}.home-aside{gap:var(--space-2);align-content:start;display:grid}.home-aside>*{margin:0}@media (width>=60rem){.page-columns{grid-template-columns:minmax(0, 1fr) var(--aside-width);gap:var(--column-gap);align-items:start;display:grid}}@media (width<=59.99rem){body:has(.has-back) .breadcrumb{display:none}}.lunar-tabs,.list-tabs{border-bottom:1px solid var(--color-border);display:flex}.lunar-tabs a,.list-tabs a{min-height:var(--touch-target);padding:0 var(--space-1);color:var(--color-text);white-space:nowrap;text-align:center;border-bottom:3px solid #0000;flex:1;justify-content:center;align-items:center;margin-bottom:-1px;font-size:1.125rem;text-decoration:none;display:flex}.lunar-tabs a[aria-current=page],.list-tabs a[aria-current=page]{border-bottom-color:var(--color-primary);color:var(--color-primary);font-weight:700}.lunar-tabs-row{width:100%}@media (width<=59.99rem){.lunar-tabs-row{padding-inline:0}}@media (width>=60rem){.list-tabs{display:none}.lunar-tabs{margin-top:var(--space-3)}.lunar-tabs a{padding:0 var(--space-2);flex:none}}@media (width<=59.99rem){:root{--sticky-bar-height:calc(4.5rem + 1px + env(safe-area-inset-bottom,0px))}.sticky-bar{z-index:5;box-sizing:border-box;height:var(--sticky-bar-height);padding:.5rem var(--space-2) calc(.5rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--color-border);background:var(--color-bg);position:fixed;inset:auto 0 0}.sticky-bar>*{height:100%}.sticky-bar:not(:has(>:not([hidden]))){display:none}html:has(.sticky-bar>:not([hidden])){scroll-padding-bottom:var(--sticky-bar-height)}body:has(.sticky-bar>:not([hidden])){padding-bottom:var(--sticky-bar-height)}}.button-outline{width:100%;min-height:var(--touch-target);padding:var(--space-1) var(--space-2);border:2px solid var(--color-primary);border-radius:var(--radius);background:var(--color-bg);color:var(--color-primary);font:inherit;text-align:left;cursor:pointer;align-items:center;font-weight:600;text-decoration:none;display:flex}.action-list{border:1px solid var(--color-border);border-radius:var(--radius);margin:0;padding:0;list-style:none}.action-list li+li{border-top:1px solid var(--color-border)}.action-row{width:100%;min-height:var(--touch-target);padding:.375rem var(--space-2);border-radius:var(--radius);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.75rem;font-weight:600;text-decoration:none;display:flex}.action-row:after{content:"›";color:var(--color-text-muted);margin-left:auto;font-size:1.25rem;font-weight:400}.action-row:hover{background:var(--color-surface)}.action-icon{color:var(--color-primary);flex:none}.action-label{display:grid}.action-sub{color:var(--color-text-muted);font-weight:400}.action-row-dashed{margin-top:var(--touch-gap);border:1px dashed var(--color-text-muted);font-weight:400}.action-row-dashed .action-icon{color:var(--color-text)}.button-dashed{border-style:dashed;border-color:var(--color-text-muted);color:var(--color-text)}.panel{padding:var(--space-2) var(--space-3);border-radius:var(--radius);background:var(--color-surface)}.panel>h2{margin:0 0 var(--space-1);font-size:var(--font-size-body)}.button-primary{width:100%;min-height:var(--touch-target);padding:var(--space-1) var(--space-2);border-radius:var(--radius);background:var(--color-primary);color:var(--color-on-primary);font-family:inherit;font-size:var(--font-size-body);text-align:center;cursor:pointer;border:0;justify-content:center;align-items:center;font-weight:700;text-decoration:none;display:flex}.button-secondary,.button-danger,.button-text{min-height:var(--touch-target);padding:var(--space-1) var(--space-2);border-radius:var(--radius);font-size:var(--font-size-body);text-align:center;cursor:pointer;justify-content:center;align-items:center;font-family:inherit;display:inline-flex}.button-secondary{border:2px solid var(--color-primary);background:var(--color-bg);color:var(--color-primary);font-weight:600;text-decoration:none}.button-secondary:hover{background:var(--color-primary-tint)}.button-primary:hover{background:var(--color-primary-hover)}@media (width<=59.99rem){.button-primary{min-height:3.5rem;font-size:1.25rem}}@media (width>=60rem){.button-secondary,.button-danger{padding:0 var(--space-3)}}.button-danger{border:2px solid var(--color-primary);background:var(--color-bg);color:var(--color-primary);font-weight:600}.button-danger:hover,.button-danger:active{background:var(--color-primary-tint)}.button-text{color:var(--color-primary);background:0 0;border:0;text-decoration:underline}html[data-signed-in] .guest-only,html:not([data-signed-in]) .signed-in-only{display:none!important}button:disabled{opacity:.6;cursor:not-allowed}.field{gap:var(--space-1);border:0;min-width:0;margin:0;padding:0;display:grid}.field label,.field legend,summary{font-weight:600}.field input[type=text],.field input[type=search],.field select{width:100%;min-height:var(--touch-target);border:2px solid var(--color-input-border);border-radius:var(--radius);font:inherit;background:var(--color-bg);color:var(--color-text);padding:0 .875rem}[aria-invalid=true]{border-color:var(--color-primary)!important}input[aria-invalid=true],select[aria-invalid=true]{background:var(--color-error-bg)}.hint{color:var(--color-text-muted);margin:0}.field-error{color:var(--color-primary);margin:0;font-weight:600}.date-row{gap:var(--space-1);grid-template-columns:5rem minmax(0,1fr) 6rem;display:grid}.choices{gap:var(--touch-gap);border:0;margin:0;padding:0;display:grid}.chips{gap:var(--touch-gap);flex-wrap:wrap;display:flex}.choice,.field .choice{align-items:center;gap:var(--space-1);min-height:var(--touch-target);font-weight:400;display:flex}.choice input{flex:none;width:1.5rem;height:1.5rem;margin:0}summary{min-height:var(--touch-target);cursor:pointer;align-items:center;display:flex}details[open]>summary{margin-bottom:var(--space-1)}details .choices+.choices{margin-top:var(--space-2)}.echo,.preview{font-size:var(--font-size-date);margin:0;font-weight:600}.echo:empty,.preview:empty{display:none}.segmented{grid-template-columns:repeat(2,minmax(0,1fr))}.segmented .choice{padding:var(--space-1);border:2px solid var(--color-input-border);border-radius:var(--radius);cursor:pointer;justify-content:center}.segmented .choice:has(input:checked){border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary);font-weight:600}.segmented .choice:has(input:checked) input{accent-color:var(--color-on-primary)}.segmented .choice:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.segmented .choice input:focus-visible{outline:none}.chip,.chips .button-secondary{min-height:var(--touch-target);border:1px solid var(--color-input-border);background:var(--color-bg);color:var(--color-text);font:inherit;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:0 1.125rem;font-weight:400;display:inline-flex}.chip:hover,.chips .button-secondary:hover{background:var(--color-surface)}.chip[aria-pressed=true]{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary);font-weight:700}.chip[aria-pressed=true]:hover{border-color:var(--color-primary-hover);background:var(--color-primary-hover)}.hint-indent{padding-left:calc(1.5rem + var(--space-1))}.echo,.preview{padding:var(--space-2);border-radius:var(--radius);background:var(--color-surface)}details.field{padding:var(--space-1) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}details:not(.nav-menu)>summary:before{content:"▸";margin-right:var(--space-1)}details:not(.nav-menu)[open]>summary:before{content:"▾"}.notice{margin:0 0 var(--space-3);padding:var(--space-2);border-left:4px solid var(--color-primary);border-radius:var(--radius);background:var(--color-surface)}.notice p{margin:0}.notice:empty{border:0;margin:0;padding:0}.banner{border-bottom:1px solid var(--color-border);background:var(--color-surface);padding:.75rem 0}.banner .button-text{color:var(--color-text);padding:0 .75rem}.banner-error{border-bottom:2px solid var(--color-primary);background:var(--color-error-bg)}.banner-warning{border-bottom:2px solid var(--color-callout-border);background:var(--color-callout)}.banner-row{grid-template-columns:1.75rem minmax(0,1fr);align-items:center;column-gap:.75rem;display:grid}.banner-row p{margin:0}.banner-error p,.banner-warning p{font-weight:700}.banner-row p:has(>.banner-title){font-weight:400}.banner-title{font-weight:700;display:block}.banner-icon{border:2px solid var(--color-text-muted);width:1.75rem;height:1.75rem;color:var(--color-text-muted);border-radius:50%;place-items:center;font-size:1rem;font-style:italic;font-weight:700;line-height:1;display:grid}.banner-error .banner-icon,.banner-warning .banner-icon{background:var(--color-primary);color:var(--color-on-primary);border:0;font-family:inherit;font-style:normal;font-weight:700}.banner-warning .banner-icon{background:var(--color-callout-border)}.banner-row .banner-actions{grid-column:1/-1}@media (width>=60rem){.banner{padding:.875rem 0}.banner-row{grid-template-columns:1.75rem minmax(0,1fr) auto;column-gap:.875rem}.banner-row .banner-actions{grid-column:3;gap:.75rem;margin-top:0;margin-left:1.125rem}}.banner-actions,.dialog-actions{gap:var(--touch-gap);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.dialog .dialog-actions{justify-content:flex-end;gap:.75rem}.dialog-actions .dialog-start{margin-right:auto}.dialog .dialog-actions>.button-primary{width:auto;padding:0 var(--space-3)}@media (width<=39.99rem){.dialog .dialog-actions{gap:var(--touch-gap);flex-direction:column}.dialog .dialog-actions>*{width:100%;margin-right:0}.dialog-sheet .dialog-actions{flex-direction:row}.dialog-sheet .dialog-actions>*{flex:1 1 0;width:auto;padding:0 .875rem}.dialog-sheet .dialog-actions>.button-primary{flex-basis:100%}}.callout{border:2px solid var(--color-callout-border);border-radius:var(--radius-card);background:var(--color-callout);padding:.875rem 1.125rem}.share-summary{color:var(--color-text-muted)}.share-url-row{gap:.375rem}.share-url-row input{width:100%;min-height:var(--touch-target);border:2px solid var(--color-input-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text-muted);font:inherit;padding:0 .875rem}.share-url-row input:focus{background:var(--color-bg);color:var(--color-text)}.share-status{align-items:center;gap:var(--space-1);color:var(--color-success);font-weight:600;display:flex}.share-status:before{content:"";background:currentColor;flex:none;width:1.375rem;height:1.375rem;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") 50%/contain no-repeat}.share-error{border:2px solid var(--color-primary);border-radius:var(--radius-card);background:var(--color-error-bg);padding:.875rem 1.125rem}.dialog{width:min(35rem, calc(100vw - 2 * var(--space-2)));border-radius:var(--radius-dialog);max-width:none;color:var(--color-text);border:0;padding:2rem;line-height:1.5;box-shadow:0 24px 64px #00000040}.dialog[open]{flex-direction:column;gap:1.125rem;display:flex}.dialog>*{margin-top:0;margin-bottom:0}.dialog>p:empty{display:none}.dialog>h2{font-size:1.5rem;line-height:1.3}.dialog>.dialog-close+h2{padding-right:3rem}.dialog .dialog-actions{margin-top:var(--space-1)}.dialog-close{width:var(--touch-target);height:var(--touch-target);border-radius:var(--radius);color:var(--color-text);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;font-family:inherit;font-size:2rem;font-weight:400;line-height:1;display:grid;position:absolute;top:1.375rem;right:1.375rem}.dialog-close:hover{background:var(--color-surface)}@media (width<=39.99rem){.dialog{padding:1.25rem}.dialog[open]{gap:.75rem}.dialog>h2{font-size:1.375rem}.dialog-close{top:.5rem;right:.5rem}.dialog-sheet{width:100vw;max-width:100vw;max-height:90vh;padding:1.75rem var(--space-2) var(--space-3);border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;margin:auto 0 0}.dialog-sheet[open]{gap:.875rem}.dialog-sheet:before{content:"";background:var(--color-grip);border-radius:.125rem;width:2.5rem;height:.25rem;position:absolute;top:.75rem;left:calc(50% - 1.25rem)}.dialog-sheet .dialog-close{top:1.25rem}}.dialog::backdrop{background:#00000080}.status:empty{display:none}.status{font-weight:600}.stack{gap:var(--touch-gap);display:grid}.field input[type=number],.field input[type=time]{width:100%;min-height:var(--touch-target);padding:0 var(--space-1);border:2px solid var(--color-input-border);border-radius:var(--radius);font:inherit}.secondary-links a{min-width:var(--touch-target);min-height:var(--touch-target);align-items:center;display:inline-flex}.subtitle{color:var(--color-text-muted);margin-top:0}.group-title{margin:var(--space-3) 0 var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-body);font-weight:600}.event-list{gap:var(--space-2);margin:0 0 var(--space-3);padding:0;list-style:none;display:grid}.event-card{height:100%;min-height:var(--touch-target);padding:var(--space-2) 1.25rem;border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-text);align-content:start;text-decoration:none;display:grid}a.event-card:hover .title{text-decoration:underline}.event-card.holiday{border:1px solid var(--color-border);background:var(--color-bg)}.card-head{display:block}.event-card .title{font-weight:700}.event-card .tag{color:var(--color-text-muted);white-space:nowrap}.event-card .chevron{float:right;padding-left:var(--space-1);color:var(--color-text-muted);font-size:1.25rem;line-height:1}.event-card .lunar{font-weight:600}.event-card .days{color:var(--color-text-muted)}.event-card .days.soon{color:var(--color-primary);font-weight:700}.event-card .lunar,.event-card .solar,.event-card .days{font-size:var(--font-size-date);line-height:1.35}.event-card .eve{margin-top:var(--space-1);color:var(--color-text-muted);font-size:1rem}@media (width>=60rem){.event-rows{border-top:1px solid var(--color-border);gap:0}.event-rows .event-card{column-gap:var(--space-2);padding:var(--space-2) 0;border:0;border-bottom:1px solid var(--color-border);background:0 0;border-radius:0;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto}.event-rows .card-head{grid-row:span 2}.event-rows .chevron{display:none}.event-rows .lunar,.event-rows .solar{grid-column:2}.event-rows .days{text-align:right;grid-area:1/3}.event-rows .eve{grid-column:2/-1}}.quiet{color:var(--color-text-muted);margin:0}.button-primary[aria-disabled=true],.button-primary:disabled{opacity:1;background:var(--color-surface);color:var(--color-text-muted);cursor:not-allowed}.error-summary a{min-height:var(--touch-target);align-items:center;display:inline-flex}.button-cancel{min-height:var(--touch-target);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer;justify-content:center;align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.button-cancel:hover,.button-cancel:active{background:var(--color-border)}.card-box{gap:var(--space-2);padding:var(--space-3) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-card);align-content:start;display:grid}.card-title{margin:0;font-size:1.375rem}@media (width>=60rem){.card-box{padding:var(--space-3) 2rem}.button-auto{width:auto;padding:0 var(--space-3);justify-self:start}}.group-rows{border:1px solid var(--color-border);border-radius:var(--radius-card);margin:0;padding:0;list-style:none}.group-row{min-height:3.5rem;padding:.25rem var(--space-2);flex-wrap:wrap;align-items:center;gap:0 .75rem;display:flex}.group-row+.group-row{border-top:1px solid var(--color-border)}.group-icon{color:var(--color-primary);flex:none}.group-name{overflow-wrap:anywhere;flex:6rem;min-width:0;font-weight:700}.group-count{color:var(--color-text-muted);white-space:nowrap}.group-actions{gap:.25rem;display:flex}.group-actions .button-text{padding:0 .75rem}.group-row-none{color:var(--color-text-muted)}.group-row-none .group-icon{color:var(--color-input-border)}.group-row-none .group-name{font-weight:400}.group-rename{align-items:center;gap:var(--touch-gap) .75rem;flex-wrap:wrap;width:100%;padding:.25rem 0;display:flex}.group-rename input{min-width:0;min-height:var(--touch-target);border:2px solid var(--color-input-border);border-radius:var(--radius);font:inherit;flex:10rem;padding:0 .75rem}.group-rename .button-primary{width:auto;padding:0 var(--space-2)}.group-rename .button-cancel{padding:0 var(--space-2)}.group-rename .field-error{flex-basis:100%}.group-empty{justify-items:start;gap:.75rem;display:grid}.group-add{gap:.75rem;display:grid}.group-add .field input{width:100%;min-height:var(--touch-target);border:2px solid var(--color-input-border);border-radius:var(--radius);font:inherit;padding:0 .875rem}@media (width>=40rem){.group-add{grid-template-columns:minmax(0,1fr) auto;align-items:end}.group-add .field-error{grid-column:1/-1}}@media (width<=39.99rem){.group-actions{margin-left:1.375rem}}@media (width>=40rem){.groups-dialog{width:min(40rem, calc(100vw - 2 * var(--space-2)))}}.home-main{flex-direction:column;display:flex}.home-main>h1{margin:0}.home-main>.subtitle{margin:.125rem 0 0}.home-aside{gap:.875rem;margin-top:1.5rem}.home-actions{gap:.875rem;display:grid}.home-actions>*{margin:0}.group-bar{align-items:center;gap:var(--touch-gap);flex-wrap:wrap;margin-top:.875rem;display:flex}.group-chips .chip{padding:0 var(--space-2)}#group-chips:empty{display:none}#home-groups-open{min-height:var(--touch-target);padding:0}#group-empty{margin-top:var(--space-2)}.home-main .group-title{font-size:var(--font-size-body);margin:1.5rem 0 .875rem;font-weight:700}.home-main .event-list{gap:.875rem;margin:0}.home-main .event-card{padding:var(--space-2);border:1px solid var(--color-surface);gap:0;line-height:1.5;position:relative}.home-main .event-card.holiday{border-color:var(--color-border)}.home-main .event-card .card-head{padding-right:1.25rem}.home-main .event-card .chevron{float:none;color:var(--color-input-border);padding:0;font-size:1.5rem;line-height:1.5;position:absolute;top:.875rem;right:.875rem}.home-main .event-card .lunar,.home-main .event-card .solar,.home-main .event-card .days{line-height:1.5}.home-main .event-card .eve{font-size:var(--font-size-body);margin-top:.25rem}.home-main .event-rows{border-top:1px solid var(--color-border);gap:0}.home-main .event-rows .event-card{border:0;border-bottom:1px solid var(--color-border);background:0 0;border-radius:0;padding:.75rem 0}.home-main .event-rows .chevron{display:none}.home-main .event-rows .card-head{padding-right:0}#upcoming-more,#upcoming-holidays{align-self:flex-start;margin-top:.875rem;padding:0}#home-upcoming{flex-direction:column;display:flex}#home-add{width:100%}#home-add[aria-disabled=true]{color:var(--color-text-muted);background:#d9d4cc}.limit-box{padding:var(--space-2) 1.125rem;border:2px solid var(--color-primary);border-radius:var(--radius-card);background:var(--color-error-bg);font-weight:600}.home-aside .panel{padding:.75rem var(--space-2);border-radius:var(--radius-card)}.panel-head{justify-content:space-between;align-items:center;column-gap:var(--space-1);display:flex}.panel-head h2{min-width:0;font-size:var(--font-size-body);margin:.25rem 0;line-height:1.5}#home-people-groups{min-height:var(--touch-target);flex:none;margin:-.25rem -.25rem -.25rem 0;padding:0 .25rem;font-weight:400}.people-list{margin:0;padding:0;list-style:none;display:grid}.panel .people-list .people-group{padding:0}.people-group-title{color:var(--color-primary);font-size:var(--font-size-body);margin:.5rem 0 0;padding-bottom:.25rem;font-weight:700}.person-card{min-height:3.5rem;padding:var(--space-1) 0;border-top:1px solid var(--color-border);color:var(--color-text);justify-content:space-between;align-items:center;gap:.75rem;line-height:1.5;text-decoration:none;display:flex}a.person-card:hover .name{text-decoration:underline}.person-text{display:grid}.person-card .name{font-weight:700}.person-card .relation,.person-card .death{color:var(--color-text-muted)}.person-card .chevron{color:var(--color-input-border);flex:none;font-size:1.5rem}#people-show-all{margin-top:var(--space-1);padding:0}.note.note-promo{gap:var(--space-1);padding:var(--space-2) 1.125rem;border-radius:var(--radius-card);background:var(--color-primary-tint);display:grid}.note.note-promo p{color:var(--color-text)}.note-promo .button-outline{justify-content:center;min-height:2.75rem;margin-top:0}.home-actions .action-list,.home-actions .action-row-dashed{border-radius:var(--radius-card)}.home-actions .action-row-dashed+.action-list{margin-top:var(--touch-gap)}.home-actions .action-row-dashed{border:1.5px dashed #9a948c}.home-actions .action-row-dashed .action-icon{color:var(--color-text-muted)}html:not([data-guest-list=none]) .home-columns[aria-busy=true] .home-actions{display:none}.skeleton{gap:.875rem;margin-top:.5rem;display:grid}.skeleton-line{background:#e9e3d9;border-radius:6px;height:1.125rem}.skeleton-subtitle,.skeleton-heading{background:#efebe4}.skeleton-subtitle{max-width:32.5rem;height:1.25rem}.skeleton-heading{width:7.5rem;margin-top:.75rem}.skeleton-cards{gap:.875rem;display:grid}.skeleton-card{height:11rem;padding:var(--space-2);border-radius:var(--radius-card);background:var(--color-surface);align-content:start;gap:.875rem;display:grid}.skeleton-card .skeleton-line{width:70%}.skeleton-card .skeleton-date{width:85%;height:1.375rem}.skeleton-card .skeleton-date+.skeleton-date{width:60%}.skeleton-card .skeleton-date+.skeleton-date+.skeleton-date{width:35%}.skeleton-panel{gap:var(--space-2);display:grid}.skeleton-panel .skeleton-line:first-child{width:60%}.skeleton-panel .skeleton-line:nth-child(2){width:45%;height:1rem}.skeleton-panel .skeleton-line:nth-child(3){width:75%;height:.875rem}.skeleton-panel .skeleton-line:nth-child(4){width:40%;height:1rem}html[data-guest-list=none] #home-loading,html[data-guest-list=none] #home-people-loading,html[data-guest-list=none] .home-add-bar{display:none}html[data-guest-list=none] #cal-empty{display:block!important}html[data-guest-list=none] #home-empty,html[data-guest-list=none] #home-empty-aside{display:grid!important}html[data-guest-list=none] #home-restore{display:block!important}html[data-guest-list=none] #home-title,.home-main:has(>#home-empty:not([hidden]))>#home-title{margin-top:.5rem;font-size:1.875rem}#home-empty{gap:var(--space-2);margin-top:var(--space-2);display:grid}.first-visit .lead{margin:0;font-size:1.25rem}.first-visit .steps{counter-reset:step;gap:.75rem;margin:.25rem 0 0;padding:0;list-style:none;display:grid}.first-visit .steps li{counter-increment:step;grid-template-columns:2.25rem 1fr;align-items:start;gap:.75rem;display:grid}.first-visit .steps li:before{content:counter(step);background:var(--color-surface);width:2.25rem;height:2.25rem;color:var(--color-primary);border-radius:50%;place-items:center;font-weight:700;display:grid}#home-empty-aside{gap:.875rem;display:grid}.note{padding:.875rem var(--space-2);border-radius:var(--radius-card);background:var(--color-surface)}.note h2,.quick h2{font-size:var(--font-size-body);line-height:inherit;margin:0}.note p{color:var(--color-text-muted);margin:0}.quick-links{margin:0;padding:0;list-style:none}.quick-links a{min-height:var(--touch-target);align-items:center;display:flex}@media (width>=60rem){.home-columns{grid-template-columns:minmax(0, 1fr) var(--aside-width);gap:var(--column-gap);align-items:start;margin-top:.25rem;display:grid}.home-main>.subtitle{margin-top:.25rem}.home-aside{gap:1.25rem;margin-top:0}.home-actions{gap:1.25rem}.group-bar{column-gap:var(--space-2);margin-top:var(--space-2)}.group-chips .chip{padding:0 1.125rem}.home-main .group-title{margin:2.75rem 0 var(--space-2)}#upcoming-groups>.group-title:first-child{margin-top:2.25rem}.home-main .event-list{gap:1.25rem}.home-main .event-rows{gap:0}.home-main .event-card{gap:2px;padding:1.125rem 2.5rem 1.125rem 1.375rem}.home-main .event-card .card-head{padding-right:0}.home-main .event-card .chevron{top:1.125rem;right:var(--space-2);font-size:1.625rem}.home-main .event-card .eve{margin-top:.375rem}.home-main .event-rows .event-card{padding:var(--space-2) .25rem;grid-template-columns:minmax(0,1fr) auto}.home-main .event-rows .card-head{grid-row:auto}.home-main .event-rows .lunar,.home-main .event-rows .solar,.home-main .event-rows .eve{grid-column:1/-1}.home-main .event-rows .days{grid-column:2}.home-main .event-rows .eve{margin-top:0}#upcoming-more,#upcoming-holidays{margin-top:var(--space-2);padding:0 .25rem}.home-aside .panel{padding:1.25rem var(--space-3)}.home-aside .action-label{line-height:1.3}.panel-head{align-items:baseline}.panel-head h2{margin:0}.people-group-title{margin-top:.75rem}.person-card{padding:.625rem 0}.skeleton{gap:var(--space-3)}.skeleton-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.skeleton-card{padding:1.125rem 1.375rem}.skeleton-panel{padding:var(--space-3)}html[data-guest-list=none] .home-columns,.home-columns:has(#home-empty:not([hidden])){margin-top:.5rem}html[data-guest-list=none] #home-title,.home-main:has(>#home-empty:not([hidden]))>#home-title{max-width:42.5rem;margin-top:0;font-size:2.75rem;line-height:1.2}#home-empty{gap:1.75rem;margin-top:1.75rem}.first-visit .lead{font-size:var(--font-size-date);margin:0}#home-empty-add{max-width:25rem}.home-main .first-visit .steps{gap:var(--space-3);margin-top:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr))}.home-main .first-visit .steps li{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);grid-template-columns:none;align-content:start}.home-main .first-visit .steps li:before{width:2.5rem;height:2.5rem}html[data-guest-list=none] .home-aside,.home-aside:has(>#home-empty-aside:not([hidden])),#home-empty-aside{gap:1.75rem}.home-aside:has(>#home-empty-aside:not([hidden])) .home-actions,html[data-guest-list=none] .home-actions{gap:.75rem}.note{padding:1.25rem var(--space-3);gap:.25rem;display:grid}.quick h2{margin-bottom:.25rem}}@media (width>=80rem){.home-main .event-list:not(.event-rows){grid-template-columns:repeat(2,minmax(0,1fr))}.home-main .event-rows .event-card{column-gap:var(--space-3);grid-template-columns:13.75rem minmax(0,1fr) 9.375rem;align-items:baseline;row-gap:0}.home-main .event-rows .card-head{grid-row:span 2}.home-main .event-rows .lunar,.home-main .event-rows .solar{grid-column:2}.home-main .event-rows .eve{grid-column:2/-1}.home-main .event-rows .days{white-space:nowrap;grid-column:3}}@media (width>=90rem){.home-columns{margin-top:1rem}html[data-guest-list=none] .home-columns,.home-columns:has(#home-empty:not([hidden])){margin-top:2.5rem}.home-main .event-card{padding:var(--space-3) 2.5rem var(--space-3) 1.75rem}.skeleton-card{padding:var(--space-3) 1.75rem}}.person-form{gap:var(--space-2);margin-bottom:var(--space-3);display:grid}.person-form .button-text{justify-self:start}.person-form legend{padding:0}.kind-block>legend{margin-bottom:var(--space-1);font-weight:700}.field-row{gap:var(--space-2);display:grid}.field-row>.field,.person-form .date-row>.field{gap:.375rem}.person-form .field input[type=text],.person-form .field select{height:var(--touch-target);border-color:var(--color-input-border);padding:0 .75rem}.person-form .field [aria-invalid=true]{background:var(--color-error-bg)}.person-form #f-group-create{padding-left:0;padding-right:0}.person-form .field-error:before{content:"⚠ ";content:"⚠ " / ""}.person-form .field-row .field-error{font-weight:400}.person-form .field-row .field:has(>.field-error:not([hidden]))>.hint{display:none}.label-suffix{font-weight:inherit}#f-group-hint{color:var(--color-text-muted)}.person-form .segmented{border:2px solid var(--color-primary);border-radius:var(--radius-card);justify-self:start;gap:0;max-width:100%;display:inline-flex;overflow:hidden}.person-form .segmented .choice{background:var(--color-bg);color:var(--color-primary);border:0;border-radius:0;justify-content:flex-start;gap:.625rem;padding:0 1.5rem;font-weight:600}.person-form .kind-block .segmented .choice{padding:0 1.25rem}.person-form .segmented .choice:has(input:checked){background:var(--color-primary);color:var(--color-on-primary);font-weight:700}.person-form .segmented .choice input{width:1.25rem;height:1.25rem;margin:0}.person-form .segmented:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.person-form .segmented .choice:has(input:focus-visible){outline:none}.date-block{padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-card);gap:1.125rem}.date-block>legend{padding:0 .375rem;font-size:1.25rem;font-weight:700}.date-block>.hint+.hint{margin-top:-.75rem}.person-form .chips{gap:var(--touch-gap)}.person-form .chip{min-height:var(--touch-target);border:1px solid var(--color-input-border);background:var(--color-bg);color:var(--color-text);font:inherit;cursor:pointer;border-radius:999px;padding:0 1.125rem}.person-form .chip:hover{background:var(--color-surface)}.person-form .date-row{grid-template-columns:4.5rem minmax(0,1fr) 6rem;align-items:end}@media (width<=22.49rem){.person-form .date-row{grid-template-columns:3.5rem minmax(0,1fr) 4.75rem}.person-form .date-row .field input[type=text],.person-form .date-row .field select{padding:0 .5rem}}.person-form .echo{background:0 0;padding:0;font-size:1.25rem}.option-block{padding-top:var(--space-1);border-top:1px solid var(--color-border);gap:.25rem;display:grid}.option-block>.choice{gap:.875rem}.option-block>.choice:has(input:checked){font-weight:600}.option-block .hint-indent{padding-left:2.375rem}.option-choice{margin-top:var(--space-1);padding:var(--space-2) 1.25rem;border-radius:var(--radius);background:var(--color-surface);gap:.25rem}.person-form .option-choice>legend{float:left;width:100%;margin-bottom:.25rem;font-weight:400}.option-choice .choice{clear:both;gap:.75rem}.option-choice .choice input{width:1.375rem;height:1.375rem}.person-form details.customs{padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-card)}.person-form details.customs>summary{min-height:3.25rem;font-weight:700}.person-form details.customs[open]{padding-bottom:var(--space-3)}.customs-grid{gap:var(--space-3);display:grid}.customs-grid>.choices{align-content:start;gap:.375rem}.customs-grid>.choices+.choices{margin-top:0}.customs-grid legend{margin-bottom:.25rem;font-weight:700}.customs-grid .choice{gap:.75rem}.customs-grid .choice input{width:1.375rem;height:1.375rem}.preview-aside{gap:var(--space-2);display:grid}.preview-aside:not(:has(>:not([hidden]))){display:none}.preview-card{padding:var(--space-2);border-radius:var(--radius-card);background:var(--color-surface);display:grid}.preview-title{color:var(--color-text-muted);font-size:var(--font-size-body);margin:0;font-weight:400}.preview-body{display:grid}.preview-name{font-weight:700}.preview-lunar,.preview-solar,.preview-days{font-size:var(--font-size-date);line-height:1.4}.preview-lunar{font-weight:600}.preview-days{color:var(--color-text-muted)}.preview-days.soon{color:var(--color-primary);font-weight:700}.preview-eve{color:var(--color-text-muted);margin-top:.375rem}.next-title{margin:0 0 var(--space-1);font-size:var(--font-size-body)}.next-list{margin:0;padding:0;list-style:none}.next-list li{justify-content:space-between;align-items:baseline;gap:var(--space-2);border-top:1px solid var(--color-border);padding:.625rem 0;display:flex}.next-list li:last-child{border-bottom:1px solid var(--color-border)}.next-date{color:var(--color-text-muted);font-size:var(--font-size-date);white-space:nowrap}@media (width<=59.99rem){.preview-aside .next{display:none}}.form-actions{gap:var(--space-1);grid-template-columns:minmax(0,1fr) minmax(0,2fr);display:grid}.form-actions .button-cancel{order:-1}.form-actions .button-primary{font-weight:700}.form-actions .button-cancel{width:100%}.form-danger{justify-items:start;gap:var(--space-1);padding-top:var(--space-3);border-top:1px solid var(--color-border);display:grid}.form-danger .button-danger{padding:0 1.25rem}.person-form .error-summary{justify-content:space-between;align-items:center;gap:var(--space-1) var(--space-2);border:2px solid var(--color-primary);border-radius:var(--radius-card);background:var(--color-error-bg);flex-wrap:wrap;padding:1.125rem 1.375rem;display:flex}.error-summary-text{align-items:center;gap:.75rem;margin:0;font-weight:700;display:flex}.error-summary-text svg{color:var(--color-primary);flex:none}.missing-card{max-width:22.5rem;margin-bottom:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);gap:.875rem;display:grid}.missing-card p{margin:0;font-weight:600}@media (width<=59.99rem){#f-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.person-form .kind-block .segmented{border:0;border-radius:0;grid-template-columns:minmax(0,1fr);display:grid;overflow:visible}.person-form .kind-block .segmented .choice,.person-form .kind-block .segmented .choice:has(input:checked){color:var(--color-text);background:0 0;gap:.75rem;padding:0;font-weight:400}.person-form .kind-block .segmented .choice input{width:1.5rem;height:1.5rem;accent-color:var(--color-primary)}.person-form .kind-block .segmented:has(input:focus-visible){outline:none}.person-form .kind-block .segmented .choice:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:2px}.option-block .hint-indent{padding-left:0}#f-group-hint{display:none}#f-group-new{min-height:var(--touch-target);align-items:center;display:flex}.person-form #f-mode-row{grid-template-columns:repeat(2,minmax(0,1fr));justify-self:stretch;display:grid}.person-form #f-mode-row .choice{justify-content:center;gap:var(--space-1);padding:0 var(--space-1)}.option-choice{padding:.75rem var(--space-2)}}@media (width>=60rem){.person-form{grid-template-columns:minmax(0, 1fr) var(--aside-width);column-gap:var(--column-gap);align-items:start;row-gap:0}.person-form>*{grid-column:1;margin-bottom:1.75rem}.person-form>.preview-aside{top:var(--space-3);grid-area:1/2/span 12;margin-bottom:0;position:sticky}.person-form .field input[type=text],.person-form .field select{padding:0 .875rem}.field-row{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.person-form[data-kind=person] #f-group-field{grid-column:1/-1;max-width:26.25rem}.person-form .chips{gap:.75rem}.person-form .date-row{gap:var(--space-2);grid-template-columns:7.5rem 12.5rem 10rem}.person-form .date-row:has(#f-year-suffix:not([hidden])){grid-template-columns:7.5rem 12.5rem 12.5rem}.date-block{padding:var(--space-3)}.date-block>legend{padding:0 var(--space-1)}.option-block{padding-top:.75rem}.option-choice{margin-left:2.375rem}.person-form details.customs{padding:0 var(--space-3)}.person-form details.customs>summary{min-height:var(--touch-target)}.customs-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.preview-card{padding:var(--space-3);gap:.375rem}.preview-title{margin-bottom:.25rem;font-weight:600}.preview-body{gap:.375rem}.preview-lunar,.preview-solar,.preview-days{line-height:1.25}.form-actions{align-items:center;gap:var(--space-3);display:flex}.form-actions .button-primary{width:auto;min-width:12.5rem}.form-actions .button-cancel{order:0;width:auto}.form-danger{margin-top:var(--space-3)}}.person-heading{margin-bottom:var(--space-3)}.person-heading h1{margin-bottom:.25rem}.person-heading .subtitle{margin:0}.timeline{margin:0 0 var(--space-3);border-left:3px solid var(--color-border);gap:1.125rem;padding:0 0 0 1.25rem;list-style:none;display:grid}.timeline .event-card{background:0 0;border-radius:0;height:auto;min-height:0;padding:0}.timeline .lunar,.timeline .solar,.timeline .days{line-height:1.4}.timeline .is-next .event-card{border-radius:var(--radius);background:var(--color-primary-tint);margin-left:-.75rem;padding:.625rem .75rem}.next-tag{background:var(--color-primary);color:var(--color-on-primary);font-size:var(--font-size-body);white-space:nowrap;border-radius:.75rem;padding:.0625rem .5rem;font-weight:700;line-height:1.4;display:inline-block}.timeline .is-past .event-card{color:var(--color-text-muted)}.timeline .is-past .lunar,.timeline .is-past .solar,.timeline .is-past .days{color:inherit;font-size:var(--font-size-body);font-weight:400}.timeline .eve{color:var(--color-text-muted);font-size:var(--font-size-body);margin-top:0}.person-aside{gap:var(--space-2)}.person-aside>.hint{margin-top:-.375rem}.rules-panel{gap:var(--space-1);margin-top:var(--space-1);padding:1.25rem var(--space-3);border-radius:var(--radius-card);background:var(--color-surface);display:grid}.rules-panel>h2{font-size:var(--font-size-body);margin:0}.rules-list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.rules-panel>a{min-height:var(--touch-target);align-items:center;display:inline-flex}.rules-panel>.hint{margin:0}@media (width<=59.99rem){.person-aside .button-secondary{width:100%}.timeline .is-past .event-card{flex-wrap:wrap;display:flex}.timeline .is-past .event-card>*{flex-basis:100%}.timeline .is-past .event-card>.card-head{flex-basis:auto;order:-2}.timeline .is-past .event-card>.days{flex-basis:auto;order:-1}.timeline .is-past .event-card>.days:before{content:" · ";content:" · " / ""}}@media (width>=60rem){.person-heading{margin-bottom:2rem}.timeline{border:0;gap:0;padding:0}.timeline>li{padding:0 0 1.75rem 3.75rem;position:relative}.timeline>li:before{content:"";background:var(--color-border);width:2px;position:absolute;top:1.5rem;bottom:0;left:calc(1.25rem - 1px)}.timeline>li:last-child:before{display:none}.timeline>li:after{content:"";border:3px solid var(--color-primary);background:var(--color-bg);border-radius:50%;width:18px;height:18px;position:absolute;top:.375rem;left:calc(1.25rem - 9px)}.timeline>li.is-past:after{border-color:#b5ada2}.timeline>li.is-next:after{background:var(--color-primary);box-shadow:0 0 0 5px var(--color-primary-tint)}.timeline .is-next .event-card{background:0 0;margin-left:0;padding:0}.timeline .event-card{grid-template-columns:minmax(0,1fr) 10rem;column-gap:1.25rem}.timeline .event-card>*{grid-column:1}.timeline .event-card>.days{text-align:right;grid-area:1/2/span 2;padding-top:.125rem}.timeline .lunar,.timeline .solar,.timeline .days{line-height:1.5}}.cal-page{gap:var(--space-2);display:grid}.cal-card{--cal-gap:.75rem;--cal-pad:var(--space-2);gap:var(--cal-gap);padding:var(--cal-pad)}html:not([data-guest-list=none]) .cal-card:has(>#cal-status:empty){padding-bottom:calc(var(--cal-pad) - var(--cal-gap))}.cal-summary{color:var(--color-text-muted);margin:0}.cal-choice{border:0;margin:0;padding:0}.cal-choice legend{padding:0;font-weight:700}.cal-boxes{flex-direction:column;display:flex}.cal-box{min-height:var(--touch-target);align-items:center;gap:.75rem;display:flex}.cal-box input{flex:none;width:1.5rem;height:1.5rem;margin:0}.cal-actions{gap:var(--touch-gap);display:grid}.button-icon{flex:none;margin-right:.75rem}.cal-settings-link{min-height:var(--touch-target);align-items:center;display:flex}.success-box{border-radius:var(--radius);background:var(--color-surface);align-items:flex-start;gap:.625rem;margin:0;padding:.75rem .875rem;display:flex}.success-box:empty{background:0 0;padding:0}.success-box:not(:empty):before{content:"";background:var(--color-success);flex:none;width:1.375rem;height:1.375rem;margin-top:.125rem;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") 50%/contain no-repeat}.success-box[data-tone=error]:not(:empty){border:2px solid var(--color-primary);background:var(--color-error-bg)}.success-box[data-tone=error]:not(:empty):before{content:"⚠";width:auto;height:auto;color:var(--color-primary);background:0 0;margin-top:0;font-weight:700;-webkit-mask:none;mask:none}.tip{gap:var(--space-1);padding:.875rem var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);margin:0;display:grid}.tip p{margin:0}.feed-row{min-height:3.5rem;padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-card);color:var(--color-text);align-items:center;gap:.75rem;text-decoration:none;display:flex}.feed-row:hover{background:var(--color-surface)}.feed-row-text{flex-direction:column;flex:1;display:flex}.feed-row-text span{color:var(--color-text-muted)}.feed-row-arrow{color:var(--color-input-border);font-size:1.5rem;line-height:1}.cal-guides{gap:var(--space-2);display:grid}.cal-guides h2{margin:.25rem 0 0}.guides{gap:var(--space-2);display:grid}.guide{padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-card)}.guide[open]{padding-bottom:.75rem}.guide h3{font-size:inherit;margin:0}.guide ol,.notes ul{gap:.625rem;margin:0;padding-left:1.5rem;display:grid}.cal-page details>summary{justify-content:space-between;gap:var(--space-1);min-height:3.25rem;font-weight:700}.cal-page details>summary:before,.cal-page details[open]>summary:before{content:none}.cal-page details>summary:after{content:"▸";flex:none}.cal-page details[open]>summary:after{content:"▾"}.notes{border-top:1px solid var(--color-border)}.notes-grid{gap:var(--space-3);display:grid}.notes h2{margin:0 0 .625rem;font-size:1.25rem}.notes p{margin:0}.cal-empty p{margin:0 0 var(--space-2)}.cal-empty-guides{color:var(--color-text-muted);margin:0;display:none}html[data-guest-list=none] .cal-full{display:none}html[data-guest-list=none] .cal-empty-guides{display:block}@media (width<=59.99rem){.cal-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (width>=60rem){.cal-title{margin-bottom:0}.cal-page{gap:2.5rem;margin-top:2.5rem}.cal-card{--cal-gap:var(--space-2);--cal-pad:2rem;border-radius:.75rem}.cal-card .card-title{font-size:1.5rem}.cal-boxes{flex-flow:wrap;gap:.25rem 1.75rem}.cal-actions{align-items:center;gap:var(--touch-gap) var(--space-3);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.cal-actions .button-primary{width:auto;min-width:12.5rem;padding:0 var(--space-3)}.success-box{padding:.875rem 1.125rem}.tip{gap:.625rem;padding:1.125rem 1.25rem}.cal-guides h2{margin:0;font-size:1.5rem}.guides{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.guide,.guide[open]{padding:var(--space-3);border-radius:.75rem}.cal-page .guide>summary{min-height:var(--touch-target);pointer-events:none;margin:-.375rem 0 .375rem}.cal-page .guide>summary:after,.cal-page .guide[open]>summary:after,.notes>summary{display:none}.guide h3{font-size:1.25rem}.notes{padding-top:2rem}.notes-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.notes ul{gap:var(--space-1)}}.share-banner{padding:.875rem 0}.share-banner-row{align-items:center;gap:.75rem;display:flex}.share-banner svg{color:var(--color-primary);flex:none;display:none}.share-banner h1{font-size:var(--font-size-body);margin:0;line-height:1.4}.share-main{gap:.875rem;display:grid}.share-head{color:var(--color-text-muted)}.share-head h2,.share-head p{font-size:var(--font-size-body);font-weight:400;line-height:inherit;margin:0;display:inline}.share-head h2:after{content:" · "}.share-list{gap:.875rem;margin:0;padding:0;list-style:none;display:grid}.share-card{padding:var(--space-2);border-radius:var(--radius-card);background:var(--color-surface);display:grid}.share-card.duplicate{border:2px solid var(--color-callout-border);background:var(--color-bg)}.share-who{flex-direction:column;display:flex}.share-who .name{font-size:1.25rem;font-weight:700}.share-who .death{color:var(--color-text-muted)}.share-event,.share-when{flex-direction:column;display:flex}.share-event{margin-top:var(--space-1)}.share-event .title{font-weight:700}.share-event .lunar,.share-when .solar,.share-when .days{font-size:var(--font-size-date);line-height:1.35}.share-event .lunar{font-weight:600}.share-when .days{color:var(--color-text-muted)}.share-when .days.soon{color:var(--color-primary);font-weight:700}.share-duplicate{border-radius:var(--radius);background:var(--color-callout);margin-top:.625rem;padding:.625rem .75rem}.duplicate-note{margin:0}.share-skip{min-height:var(--touch-target);flex:none;align-items:center;gap:.75rem;font-weight:700;display:flex}.share-skip input{flex:none;width:1.5rem;height:1.5rem;margin:0}.share-aside{gap:var(--space-2)}.share-count{color:var(--color-text-muted);margin:0}.share-aside .button-primary[aria-disabled=true]{color:var(--color-text-muted);cursor:not-allowed;background:#d9d4cc}.share-notice{border:2px solid var(--color-callout-border);border-radius:var(--radius-card);background:var(--color-callout);padding:.875rem 1.125rem}.share-home{min-height:var(--touch-target);align-items:center;display:flex}.share-invalid{max-width:35rem;padding:var(--space-3) var(--space-2);border:1px solid var(--color-border);text-align:center;border-radius:.875rem;flex-direction:column;align-items:center;gap:1.25rem;margin:0 auto;display:flex}.share-invalid svg{color:var(--color-primary)}.share-invalid h1{margin:0;font-size:1.625rem;line-height:1.3}@media (width>=60rem){.share-banner{padding:1.25rem 0}.share-banner svg{display:block}.share-main,.share-list{gap:1.25rem}.share-head{gap:.25rem;display:grid}.share-head h2{color:var(--color-text);font-size:var(--font-size-title);font-weight:700;line-height:1.25;display:block}.share-head h2:after{content:none}.share-head p{display:block}.share-card{padding:var(--space-3) 1.75rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.25rem 2rem}.share-who,.share-duplicate{grid-column:1/-1}.share-who{margin-bottom:var(--space-1)}.share-event{margin-top:0}.share-when{justify-content:flex-end}.share-duplicate{justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:.875rem;padding:.875rem 1.125rem;display:flex}.share-invalid{max-width:40rem;margin-top:3.5rem;padding:2.5rem}.share-invalid .button-primary{width:auto;min-width:12.5rem;padding:0 var(--space-3)}}.settings-content{display:grid}.settings-content>.section,.settings .section{padding:var(--space-1) 0 var(--space-2);border-bottom:1px solid var(--color-border);gap:.625rem;margin:0;display:grid}.settings details.section{display:block}.settings details.section:not([open]){padding-bottom:0}.settings details.section>:not(summary)+:not(summary){margin-top:.75rem}.rule-grid>.choices+.choices{margin-top:0}.settings-content h2{margin:0;font-size:1.25rem}.settings details.section>summary{justify-content:space-between;gap:var(--space-1);min-height:3.25rem;margin:0}.settings details.section>summary h2{font-size:var(--font-size-body)}.settings details.section>summary:before,.settings details.section[open]>summary:before{content:none}.settings details.section>summary:after{content:"▸";flex:none}.settings details.section[open]>summary:after{content:"▾"}.section-status{color:var(--color-success);margin:0;font-weight:600}.section-status:empty{display:none}.section-status:before{content:"✓ "}.section-actions{gap:var(--touch-gap);display:grid}.section-actions>*{width:100%}.section-message{border-radius:var(--radius);background:var(--color-surface);margin:0;padding:.875rem 1.125rem}.section-message:empty{display:none}.section-message p{margin:0}.section-message.is-warning{border:2px solid var(--color-callout-border);background:var(--color-callout)}.section-message.is-error{border:2px solid var(--color-primary);background:var(--color-error-bg);font-weight:600}.rule-grid{gap:var(--space-2);display:grid}.rule-grid legend{margin-bottom:.375rem;padding:0;font-weight:700}.rule-grid .hint{margin-bottom:.25rem}.rule-grid .choice input{width:1.375rem;height:1.375rem}.holiday-grid legend{margin-bottom:var(--space-1);padding:0}.reminder-list{gap:.625rem;margin:0;padding:0;list-style:none;display:grid}.reminder-row{grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) var(--touch-target);gap:var(--touch-gap);align-items:end;display:grid}.reminder-row .field{margin:0}.reminder-row .field-error{grid-column:1/-1}.reminder-remove{width:var(--touch-target);border:1px solid var(--color-border);color:var(--color-text);padding:0;text-decoration:none}.reminder-remove-text{display:none}.button-add{width:100%}.button-add[aria-disabled=true]{background:var(--color-bg);color:var(--color-input-border);cursor:not-allowed;border-color:#c9c2b8}@media (width<=59.99rem){.settings-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.settings-nav{display:none}@media (width>=60rem){.settings-layout{gap:var(--column-gap);grid-template-columns:17.5rem minmax(0,1fr);align-items:start;display:grid}.settings-title{margin:0}.settings-content,.settings{gap:var(--space-3)}.settings{display:grid}.settings-nav{top:var(--space-3);max-height:calc(100vh - 2 * var(--space-3) - var(--footer-room));overscroll-behavior:contain;padding-top:calc(var(--font-size-title) * 1.25 + var(--space-3));display:block;position:sticky;overflow-y:auto}.settings-nav ul{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.settings-nav a{min-height:var(--touch-target);padding:0 var(--space-2);color:var(--color-text);border-left:3px solid #0000;align-items:center;text-decoration:none;display:flex}.settings-nav a:hover,.settings-nav a[aria-current=true]{border-left-color:var(--color-primary);background:var(--color-surface)}.settings-nav a[aria-current=true]{font-weight:700}.settings-content>.section,.settings .section,.settings details.section:not([open]){border:1px solid var(--color-border);border-radius:.75rem;gap:1.25rem;padding:1.75rem 2rem;position:relative}.settings-content h2,.settings details.section>summary h2{font-size:1.375rem}.settings details.section>summary{min-height:var(--touch-target);pointer-events:none;margin-top:-.5rem}.settings details.section>:not(summary)+:not(summary){margin-top:1.25rem}.settings details.section>.section-status+.hint,.settings details.section>.section-status+.holiday-grid{margin-top:.25rem}.settings details.section>summary:after,.settings details.section[open]>summary:after{content:none}.settings-content>.section>h2+.hint{margin-top:-1rem}.section-status{position:absolute;top:1.75rem;right:2rem}.section-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.section-actions>*{width:auto;padding:0 var(--space-3)}.rule-grid{gap:var(--space-3) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.holiday-grid{column-gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.reminder-list{gap:.75rem}.reminder-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.reminder-row .field{width:10rem}.reminder-row .field-error{flex-basis:100%}.reminder-remove{width:auto;min-height:3.25rem;padding:0 var(--space-2);color:var(--color-primary);border:0;text-decoration:underline}.reminder-remove-text{display:inline}.reminder-remove-icon{display:none}.button-add{justify-self:start;width:auto;padding:0 1.25rem}}.import-preview{border:2px solid var(--color-callout-border);border-radius:var(--radius-card);background:var(--color-callout);padding:.875rem 1.125rem}.import-preview>*+*{margin-top:.75rem}.import-summary{margin:0;font-weight:700}.import-preview h3,.import-preview legend{margin:0 0 var(--space-1);font-size:var(--font-size-body);padding:0;font-weight:700}.import-preview p{margin-bottom:0}.import-list{max-height:16rem;margin:0;padding-left:1.25rem;overflow-y:auto}.import-list li+li{margin-top:var(--space-1)}.import-list .choice{margin-left:var(--space-1);display:inline-flex}.import-preview .dialog-actions{margin-top:var(--space-2);flex-direction:column}.import-preview .dialog-actions>*{width:100%}@media (width>=60rem){.import-preview .dialog-actions{flex-direction:row;justify-content:flex-end;gap:.75rem}.import-preview .dialog-actions>*{width:auto;padding:0 var(--space-3)}}.list-page h1{margin-bottom:.25rem}.list-page .subtitle{margin:0 0 var(--space-2);color:var(--color-text-muted)}.list-search{max-width:32rem;margin-bottom:var(--space-2);gap:.375rem;display:grid}.list-search label{font-weight:700}.list-rows{border-bottom:1px solid var(--color-border)}.list-row{justify-content:flex-start;padding:.75rem 0}.list-row .initials{background:var(--color-primary-tint);width:3rem;height:3rem;color:var(--color-primary);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.list-row .person-text{flex:1;min-width:0}.list-row .next{max-width:45%;color:var(--color-text-muted);font-size:var(--font-size-date);text-align:right;flex:none}.list-row .next.soon{color:var(--color-primary);font-weight:700}.list-page .people-group-title{margin-top:var(--space-2)}.list-not-found{margin-top:var(--space-3);gap:.25rem;display:grid}.list-not-found .list-not-found-text{color:var(--color-text);font-weight:700}.list-add-bar #list-add{width:100%}.list-page .page-aside .action-list{margin:0}@media (width<=59.99rem){.list-row .death{display:none}.list-row{flex-wrap:wrap}.list-row .person-text{flex-basis:calc(100% - 6rem)}.list-row .next{min-width:0;max-width:none;font-size:var(--font-size-body);text-align:left;flex-basis:calc(100% - 3.75rem);order:3;margin-top:-.75rem;margin-left:3.75rem}.list-page .page-aside{margin-top:var(--space-3)}}@media (width>=60rem){.list-reminders{display:none}}.family-lead{max-width:44rem;font-size:1.25rem}.check-list{margin:var(--space-2) 0;gap:.75rem;padding:0;list-style:none;display:grid}.check-list li{align-items:flex-start;gap:.75rem;display:flex}.check-list svg{color:var(--color-success);flex:none;margin-top:.125rem}.family-actions{gap:var(--space-1);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.family-intro .note{gap:var(--space-1);display:grid}.family-intro .note a{min-height:var(--touch-target);align-items:center;display:inline-flex}@media (width>=60rem){.family-actions>*{width:auto}}
