@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.p.0jzbimsg8vl84.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_855f4457-module__UNybwq__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_855f4457-module__UNybwq__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.0zgw-jeven.3w.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0wkzw~je483f-.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.0rhz0arwfsn~5.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.0l76wvqk9d84w.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0k4k9394f2q-k.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.08e28id.o-okb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f4f4f1;--foreground:#1a1a18;--surface:#fff;--surface-muted:#ecece8;--border:#d4d4ce;--muted:#5c5c56;--accent:#1f1f1c;--accent-foreground:#fff;--success:#197044;--success-surface:#e8f5ed;--danger:#8d2d2d;--danger-surface:#fde9e9;--warning:#9a6700;--warning-surface:#f8efd8;--info:#3d5bb8;--info-surface:#e8eefc;--focus:#5b7cfa;--ink:#0f172a;--shadow:0 .5rem 1.25rem #00000014;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:2.5rem;--content-width:40rem;--page-pad-x:1rem;--page-pad-bottom:calc(var(--space-7) + env(safe-area-inset-bottom,0px));--safe-area-top:env(safe-area-inset-top,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--mobile-nav-pad-block:10px;--mobile-nav-link-size:48px;--mobile-nav-safe-bottom:env(safe-area-inset-bottom,0px);--mobile-nav-pad-top:calc(var(--mobile-nav-pad-block) + var(--mobile-nav-safe-bottom) / 2);--mobile-nav-pad-bottom:calc(var(--mobile-nav-pad-block) + var(--mobile-nav-safe-bottom) / 2);--mobile-nav-inner-height:calc(var(--mobile-nav-link-size) + var(--mobile-nav-pad-block) * 2);--mobile-chrome-total:calc(var(--mobile-nav-inner-height) + var(--mobile-nav-safe-bottom));--mobile-chrome-height:var(--mobile-nav-inner-height);--mobile-top-pad-y:5px;--mobile-top-action-size:44px;--mobile-top-height:calc(var(--mobile-top-pad-y) * 2 + var(--mobile-top-action-size));--mobile-content-radius:18px;--mobile-chrome-bg:#000;--mobile-chrome-fg:#f5f5f5;--mobile-chrome-muted:#a8a8a8;--mobile-chrome-divider:#2c2c2c;--mobile-chrome-action-bg:#fff;--mobile-chrome-action-fg:#111;--control-height:2.75rem;--control-height-sm:2.25rem;--control-height-lg:3rem;--control-pad-x:.75rem;--icon-gap:8px;--icon-size-sm:1rem;--icon-size-md:1.25rem;--icon-size-lg:1.375rem;--card-pad:1.25rem;--chrome-pad:var(--space-3);--sheet-edge-inset:.5rem;--sheet-above-mobile-nav:calc(var(--mobile-chrome-total) + var(--sheet-edge-inset));--view-stack-gap:var(--space-4);--overlay-z:60;--popover-z:80;--focus-ring:0 0 0 3px color-mix(in srgb, var(--focus) 35%, transparent);--text-xs:.8125rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-page:1.5rem;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--leading-tight:1.25;--leading-snug:1.4;--leading-normal:1.5}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#111210;--foreground:#f0f0ec;--surface:#1b1c19;--surface-muted:#252621;--border:#3a3b35;--muted:#b0afa7;--accent:#f0f0ec;--accent-foreground:#171815;--success:#73d49e;--success-surface:#173725;--danger:#ff9696;--danger-surface:#492323;--warning:#e0b44c;--warning-surface:#3a3018;--info:#91a7ff;--info-surface:#1c2c48;--focus:#91a7ff;--shadow:0 .5rem 1.25rem #0006}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html:has(.login-shell){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f4f4f1;--foreground:#1a1a18;--surface:#fff;--surface-muted:#ecece8;--border:#d4d4ce;--muted:#5c5c56;--accent:#1f1f1c;--accent-foreground:#fff;--success:#197044;--success-surface:#e8f5ed;--danger:#8d2d2d;--danger-surface:#fde9e9;--warning:#9a6700;--warning-surface:#f8efd8;--info:#3d5bb8;--info-surface:#e8eefc;--focus:#5b7cfa;--shadow:0 .5rem 1.25rem #00000014}html:has(.login-shell)[data-theme=dark]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f4f4f1;--foreground:#1a1a18;--surface:#fff;--surface-muted:#ecece8;--border:#d4d4ce;--muted:#5c5c56;--accent:#1f1f1c;--accent-foreground:#fff;--success:#197044;--success-surface:#e8f5ed;--danger:#8d2d2d;--danger-surface:#fde9e9;--warning:#9a6700;--warning-surface:#f8efd8;--info:#3d5bb8;--info-surface:#e8eefc;--focus:#5b7cfa;--shadow:0 .5rem 1.25rem #00000014}*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-font-smoothing:antialiased;min-height:100%}body{background:var(--background);min-height:100dvh;color:var(--foreground);font-family:var(--font-geist-sans), system-ui, sans-serif;font-size:var(--text-base);line-height:var(--leading-normal);margin:0;overflow-x:clip}button,input,select,textarea{font:inherit;color:inherit}button,select{touch-action:manipulation}a{color:inherit}h1,h2,h3,p{margin:0}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-page-title{font-size:var(--text-page);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:-.02em;margin:0}.text-page-desc{color:var(--muted);font-size:var(--text-sm);line-height:var(--leading-normal);margin:0}.text-section-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--leading-snug);margin:0}.text-card-title{font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:var(--leading-snug);margin:0}.text-body{font-size:var(--text-base);line-height:var(--leading-normal);margin:0}.text-helper,.text-secondary{font-size:var(--text-sm);color:var(--muted);line-height:var(--leading-normal);margin:0}.text-label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--muted);line-height:var(--leading-snug);margin:0;display:block}.text-error{font-size:var(--text-xs);color:var(--danger);line-height:var(--leading-snug);margin:0}.muted{color:var(--muted);font-size:var(--text-sm)}.app-shell{background:var(--background);flex-direction:column;min-height:100dvh;display:flex}.app-body{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex}.app-main,.page-container{width:min(100%, var(--content-width));max-width:var(--content-width);padding-inline:var(--page-pad-x);margin-inline:auto}.app-main{padding-block:var(--space-5) var(--page-pad-bottom);scrollbar-width:thin;scrollbar-color:transparent transparent;flex:auto;position:relative}.app-main:hover,.app-main:focus-within,.app-sidebar-nav:hover,.app-sidebar-nav:focus-within{scrollbar-color:color-mix(in srgb, var(--foreground) 28%, transparent) transparent}.app-sidebar-nav{scrollbar-width:thin;scrollbar-color:transparent transparent}.app-sidebar-backdrop,.app-sidebar{display:none}.app-sidebar-top{gap:var(--space-3);flex-direction:column;flex-shrink:0;display:flex}.app-sidebar-brand-row{align-items:center;gap:var(--space-2);min-width:0;display:flex}.app-sidebar-brand{flex:auto;min-width:0}.app-sidebar-actions{align-items:center;gap:var(--icon-gap);flex-shrink:0;display:inline-flex}.app-sidebar-nav{gap:var(--space-1);min-height:0;padding-block:var(--space-3);flex-direction:column;flex:auto;display:flex;overflow:auto}.app-sidebar-link{align-items:center;gap:var(--space-2);min-height:2.5rem;padding:var(--space-2);border-radius:var(--radius-sm);color:var(--muted);font-size:var(--text-sm);text-decoration:none;display:flex}.app-sidebar-link:hover{color:var(--foreground);background:color-mix(in srgb, var(--foreground) 4%, transparent)}.app-sidebar-link.is-active{color:var(--foreground);font-weight:var(--weight-semibold);background:color-mix(in srgb, var(--foreground) 6%, var(--surface))}.app-sidebar-link-icon{opacity:.8;flex-shrink:0;display:inline-flex}.app-sidebar-link.is-active .app-sidebar-link-icon{opacity:1}.app-mobile-top,.app-mobile-chrome{display:none}.app-mobile-top-heading{flex:auto;align-items:center;min-width:0;display:flex}.app-mobile-top-title{color:var(--mobile-chrome-fg);font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.app-mobile-top-brand{color:var(--mobile-chrome-fg)}.app-mobile-top-actions{justify-content:center;align-items:center;gap:var(--icon-gap);height:var(--mobile-top-action-size);color:var(--mobile-chrome-fg);flex-shrink:0;display:inline-flex}.app-mobile-top-actions .icon-button{box-sizing:border-box;width:var(--mobile-top-action-size);height:var(--mobile-top-action-size);min-width:var(--mobile-top-action-size);min-height:var(--mobile-top-action-size);border-radius:var(--radius-sm);background:var(--mobile-chrome-action-bg);color:var(--mobile-chrome-action-fg);border:none;padding:0}.app-mobile-top-actions .icon-button:hover:not(:disabled),.app-mobile-top-actions .icon-button.is-pressed{color:var(--mobile-chrome-action-fg);background:#f0f0f0;border-color:#0000}.app-mobile-top-actions .icon-button--accent{background:var(--mobile-chrome-action-bg);color:var(--mobile-chrome-action-fg)}.app-bottom-nav{box-sizing:border-box;padding-top:var(--mobile-nav-pad-top);padding-bottom:var(--mobile-nav-pad-bottom);padding-inline:var(--page-pad-x)}.app-bottom-nav-inner{box-sizing:border-box;height:var(--mobile-nav-link-size);justify-content:space-around;align-items:center;display:flex}.app-bottom-nav-link{box-sizing:border-box;min-width:0;height:var(--mobile-nav-link-size);color:var(--mobile-chrome-muted);cursor:pointer;font:inherit;background:0 0;border:0;flex:1 1 0;justify-content:center;align-items:center;margin:0;padding:0;text-decoration:none;display:flex}.app-bottom-nav-link:hover,.app-bottom-nav-link.is-active{color:var(--mobile-chrome-fg)}.app-bottom-nav-link:focus-visible{outline-color:var(--mobile-chrome-fg);outline-offset:-4px;border-radius:var(--radius-sm)}.app-bottom-nav-icon{color:inherit;opacity:.75;display:inline-flex}.app-bottom-nav-link.is-active .app-bottom-nav-icon{opacity:1}.app-brand{align-items:center;gap:var(--space-2);color:var(--foreground);font-weight:var(--weight-medium);white-space:nowrap;line-height:1;text-decoration:none;display:inline-flex}.app-brand-icon{width:1.5rem;height:1.5rem;color:inherit;flex-shrink:0;display:block}.app-brand-text{font-size:var(--text-base);letter-spacing:-.01em;align-items:center;line-height:1;display:inline-flex}.app-brand-strong{font-weight:var(--weight-semibold)}.app-brand--login{font-size:var(--text-lg)}.app-brand--login .app-brand-icon{width:1.75rem;height:1.75rem}@media (max-width:767px){:root{--page-pad-x:10px;--card-pad:10px}html:has(.app-shell) body{background:var(--mobile-chrome-bg)}.app-shell{background:var(--mobile-chrome-bg);height:100dvh;min-height:0;max-height:100dvh;padding-top:env(safe-area-inset-top,0px);overflow:hidden}.app-mobile-top{justify-content:space-between;align-items:center;gap:var(--space-2);z-index:20;box-sizing:border-box;height:var(--mobile-top-height);padding-inline:var(--page-pad-x);padding-block:var(--mobile-top-pad-y);background:var(--mobile-chrome-bg);color:var(--mobile-chrome-fg);border-bottom:1px solid var(--mobile-chrome-divider);flex-shrink:0;display:flex;position:relative}.app-body{margin-bottom:var(--mobile-chrome-total);background:var(--background);border-radius:0 0 var(--mobile-content-radius) var(--mobile-content-radius);overflow:hidden;box-shadow:0 0 0 1px #ffffff0f}html.keyboard-open .app-body{margin-bottom:0}.app-main{scrollbar-width:none;overscroll-behavior:contain;flex-direction:column;flex:auto;gap:10px;width:100%;max-width:none;min-height:0;padding:10px 10px 0;display:flex;overflow:clip auto}.app-main:after{content:"";width:100%;height:var(--space-7);pointer-events:none;flex:none;display:block}.app-main::-webkit-scrollbar{display:none}.app-main>.page-stack,.app-main>.page-container{gap:10px;width:100%;max-width:none;margin-inline:0;padding-inline:0}.app-mobile-chrome{inset-inline:0;z-index:calc(var(--overlay-z) - 10);background:var(--mobile-chrome-bg);color:var(--mobile-chrome-fg);display:block;position:fixed;bottom:0}.app-shell.is-sidebar-open .app-sidebar-backdrop{inset:0;bottom:var(--mobile-chrome-total);z-index:calc(var(--overlay-z) - 25);cursor:pointer;background:#00000073;border:0;margin:0;padding:0;display:block;position:fixed}.app-shell.is-sidebar-open .app-sidebar{inset:0;bottom:var(--mobile-chrome-total);z-index:calc(var(--overlay-z) - 20);width:100%;padding:var(--space-4);padding-top:calc(var(--space-4) + env(safe-area-inset-top,0px));background:var(--surface);flex-direction:column;display:flex;position:fixed}}@media (min-width:768px){.app-shell{flex-direction:row;align-items:stretch}.app-sidebar{width:15.5rem;height:100dvh;padding:var(--space-4);border-right:1px solid var(--border);background:var(--surface);flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0}.app-main{padding-block:var(--space-5) var(--page-pad-bottom)}}.page-header{gap:var(--space-1);flex-direction:column;display:flex}.app-shell .page-header{display:none}@media (min-width:768px){.app-shell .page-header{z-index:8;background:var(--background);box-shadow:0 1px 0 var(--border);margin-inline:calc(-1 * var(--page-pad-x));margin-top:calc(-1 * var(--space-5));padding:8px 16px;display:flex;position:sticky;top:0}}.page-header .heading-row{align-items:center;gap:var(--space-2);flex-wrap:nowrap;width:100%;min-width:0;display:flex}.page-header-actions{align-items:center;gap:var(--icon-gap);flex-shrink:0;margin-left:auto;display:inline-flex}.page-container{gap:var(--view-stack-gap);flex-direction:column;width:100%;padding-inline:0;display:flex}.page-stack,.form-stack{gap:var(--view-stack-gap);flex-direction:column;display:flex}.app-icon{flex-shrink:0;display:block}.icon-button{width:var(--control-height);height:var(--control-height);min-width:var(--control-height);min-height:var(--control-height);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);cursor:pointer;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex}.icon-button--sm{width:var(--control-height-sm);height:var(--control-height-sm);min-width:var(--control-height-sm);min-height:var(--control-height-sm)}.icon-button--lg{width:var(--control-height-lg);height:var(--control-height-lg);min-width:var(--control-height-lg);min-height:var(--control-height-lg)}.icon-button.is-pressed,.icon-button:hover:not(:disabled){color:var(--foreground);background:var(--surface-muted);border-color:var(--foreground)}.icon-button:focus-visible{box-shadow:var(--focus-ring);border-color:var(--focus);outline:none}.icon-button:disabled{opacity:.38;cursor:not-allowed;color:var(--muted);background:var(--surface);border-color:var(--border)}.icon-button--accent{background:var(--accent);border-color:var(--accent);color:var(--accent-foreground)}.icon-button--accent:hover:not(:disabled),.icon-button--accent.is-pressed{background:color-mix(in srgb, var(--accent) 88%, var(--background));border-color:var(--accent);color:var(--accent-foreground)}.icon-button--danger{background:var(--danger-surface);color:var(--danger);border-color:color-mix(in srgb, var(--danger) 55%, var(--border))}.icon-button--danger:hover:not(:disabled),.icon-button--danger:focus-visible{background:var(--danger-surface);color:var(--danger);border-color:var(--danger)}.icon-button--complete{background:var(--success-surface);color:var(--success);border-color:color-mix(in srgb, var(--success) 55%, var(--border))}.icon-button--complete:hover:not(:disabled){background:var(--success-surface);color:var(--success);border-color:var(--success)}.icon-button--warning,.icon-button--warning.is-pressed{background:var(--warning-surface);color:var(--warning);border-color:color-mix(in srgb, var(--warning) 55%, var(--border))}.icon-button--warning:hover:not(:disabled){background:var(--warning-surface);color:var(--warning);border-color:var(--warning)}.icon-button--outline{color:var(--foreground);border-color:var(--border);background:0 0}.section{gap:var(--space-3);flex-direction:column;display:flex}.section-heading{flex-direction:column;gap:0;display:flex}.section-heading-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.section-heading-actions{align-items:center;gap:var(--icon-gap);flex-shrink:0;margin-left:auto;display:inline-flex}.section-description{margin:var(--space-1) 0 0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--card-pad)}.card-flush{padding:0;overflow:hidden}@media (max-width:767px){.card{padding:10px}.card-flush{padding:0}}.input,.textarea{width:100%;min-width:0;height:var(--control-height);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--foreground);padding:0 var(--control-pad-x);appearance:none;font-size:var(--text-sm);display:block}.input[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--danger)}.input:focus-visible,.textarea:focus-visible{box-shadow:var(--focus-ring);border-color:var(--focus);outline:none}.input::placeholder,.textarea::placeholder{color:color-mix(in srgb, var(--muted) 75%, transparent);opacity:1}.input:disabled,.textarea:disabled{opacity:.7;color:var(--muted);cursor:not-allowed}.input.control--sm{height:var(--control-height-sm);min-height:var(--control-height-sm);padding-inline:var(--space-2)}.input.control--lg{height:var(--control-height-lg);min-height:var(--control-height-lg)}@media (max-width:767px){.input,.textarea,.custom-select-trigger{font-size:1rem}}.form-field{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.form-actions{gap:var(--space-3);padding-top:var(--space-1);flex-direction:column;display:flex}.form-actions-end{gap:var(--space-2);flex-wrap:wrap;justify-content:stretch;display:flex}.form-actions-end>.button{flex:auto}.form-status{min-height:1.25rem}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-height);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--foreground);padding:0 var(--space-4);cursor:pointer;font-size:var(--text-sm);font-weight:var(--weight-medium);white-space:nowrap;text-decoration:none;display:inline-flex}.button:hover:not(:disabled){border-color:var(--foreground)}.button:focus-visible{box-shadow:var(--focus-ring);border-color:var(--focus);outline:none}.button:disabled{cursor:not-allowed;opacity:.5}.button-primary{border-color:var(--accent);background:var(--accent);color:var(--accent-foreground);font-weight:var(--weight-semibold)}.button-primary:hover:not(:disabled){border-color:var(--accent);background:color-mix(in srgb, var(--accent) 88%, var(--background))}.button-secondary{background:var(--surface-muted)}.button-ghost{min-height:var(--control-height-sm);padding:0 var(--space-2);color:var(--muted);background:0 0;border-color:#0000}.button-ghost:hover:not(:disabled){background:var(--surface-muted);color:var(--foreground);border-color:#0000}.button-destructive{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 35%, var(--border))}.button-destructive:hover:not(:disabled){border-color:var(--danger);background:var(--danger-surface)}.button-block{width:100%}.button--sm{min-height:var(--control-height-sm);padding-inline:var(--space-3);font-size:var(--text-xs)}.button--lg{min-height:var(--control-height-lg);padding-inline:var(--space-5)}.field-inline{box-sizing:border-box;width:100%;min-width:0;height:var(--control-height);min-height:var(--control-height);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--foreground);font-size:var(--text-sm);cursor:text;align-items:center;gap:.45rem;padding:3px 3px 3px .65rem;display:flex}.field-inline:focus-within{box-shadow:var(--focus-ring);border-color:var(--focus)}.field-inline-label{white-space:nowrap;text-overflow:ellipsis;max-width:48%;color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-medium);pointer-events:none;flex:none;line-height:1;overflow:hidden}.field-inline-value{border-radius:calc(var(--radius-sm) - 2px);background:var(--surface-muted);flex:1;justify-content:center;align-items:center;min-width:0;height:100%;display:flex}.field-inline-input.input{width:100%;min-width:0;height:100%;min-height:0;box-shadow:none;font-variant-numeric:tabular-nums;text-align:center;background:0 0;border:none;border-radius:0;flex:auto;padding:0 .4rem}.field-inline-input.input:focus-visible{box-shadow:none;border-color:#0000;outline:none}.field-inline-select{flex:auto;width:100%;min-width:0;height:100%}.field-inline-select .custom-select-trigger{height:100%;min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;justify-content:center;padding:0 .4rem}.field-inline-select .custom-select-value{text-align:center}.field-inline-select .custom-select-trigger:focus-visible{box-shadow:none;border-color:#0000}.custom-select{min-width:0;position:relative}.custom-select-trigger{align-items:center;gap:var(--space-2);width:100%;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--foreground);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;display:inline-flex}.custom-select-trigger.is-placeholder{color:var(--muted)}.custom-select-trigger:disabled{opacity:.6;cursor:not-allowed}.custom-select-trigger:focus-visible,.custom-select.is-open .custom-select-trigger{box-shadow:var(--focus-ring);border-color:var(--focus);outline:none}.custom-select-value{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.custom-select-caret{color:var(--muted);flex-shrink:0}.custom-select.is-open .custom-select-caret{transform:rotate(180deg)}.custom-select-menu{z-index:calc(var(--popover-z) + 20);padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--foreground);box-shadow:var(--shadow);margin:0;list-style:none;position:fixed;overflow:auto}.custom-select-option{width:100%;padding:var(--space-2) var(--space-3);border-radius:calc(var(--radius-sm) - 2px);color:var(--foreground);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:0;display:block}.custom-select-option.is-active{background:var(--surface-muted)}.custom-select-option.is-selected{font-weight:var(--weight-semibold)}.notice{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow);color:var(--foreground);font-size:var(--text-sm);line-height:var(--leading-snug);margin:0;display:flex}.notice-text{min-width:0;font-size:var(--text-sm);line-height:var(--leading-snug);flex:auto}.notice--success{border-color:color-mix(in srgb, var(--success) 35%, var(--border));background:color-mix(in srgb, var(--success) 8%, var(--surface))}.notice--error{border-color:color-mix(in srgb, var(--danger) 35%, var(--border));background:color-mix(in srgb, var(--danger) 8%, var(--surface))}.notice--warning{border-color:color-mix(in srgb, var(--warning) 35%, var(--border));background:color-mix(in srgb, var(--warning) 8%, var(--surface))}.empty-state{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px dashed var(--border);border-radius:var(--radius-md);background:color-mix(in srgb, var(--foreground) 3.5%, var(--surface));color:var(--muted);font-size:var(--text-sm);flex-direction:row;display:flex}.empty-state-message{min-width:0;line-height:var(--leading-normal);text-align:center;flex:auto}.empty-state:has(.empty-state-action) .empty-state-message{text-align:left}.empty-state-action{align-items:center;gap:var(--space-2);flex-shrink:0;margin-left:auto;display:inline-flex}.inline-quick-add.form-stack{align-items:center;gap:var(--space-2);padding:var(--space-3);border:1px dashed var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--foreground) 3.5%, var(--surface));flex-direction:row}.inline-quick-add-input{flex:auto;min-width:0}.inline-quick-add-amount.input,.inline-quick-add-unit,.item-edit-amount.input,.item-edit-unit{box-sizing:border-box;flex:none;width:3.5rem;min-width:3.5rem}.inline-quick-add-amount.input,.item-edit-amount.input{text-align:center;font-variant-numeric:tabular-nums;padding-inline:.35rem}.inline-quick-add-unit .custom-select-trigger,.item-edit-unit .custom-select-trigger{width:100%;min-height:var(--control-height);justify-content:center;gap:.15rem;padding-inline:.2rem}.inline-quick-add-unit .custom-select-trigger.is-placeholder .custom-select-value,.item-edit-unit .custom-select-trigger.is-placeholder .custom-select-value{display:none}.inline-quick-add-unit .custom-select-value,.item-edit-unit .custom-select-value{text-overflow:ellipsis;white-space:nowrap;text-align:center;min-width:0;font-size:var(--text-sm);overflow:hidden}.inline-quick-add-unit .custom-select-caret,.item-edit-unit .custom-select-caret{flex-shrink:0}.item-edit-form.form-stack{gap:var(--space-3)}.item-edit-main{align-items:center;gap:var(--space-2);min-width:0;display:flex}.item-edit-name{flex:auto;min-width:0}.merge-notice{margin:0}.composer-qty{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.composer-qty .field-inline{flex:1 1 0;min-width:6rem}.card-flush>.empty-state{border:0;border-radius:0}.loading-state{padding:var(--space-5);color:var(--muted);text-align:center;font-size:var(--text-sm)}.sheet-root{z-index:var(--overlay-z);box-sizing:border-box;padding-bottom:var(--sheet-vv-bottom,0px);place-items:end center;display:grid;position:fixed;inset:0}.sheet-backdrop,.confirm-dialog-backdrop{background:color-mix(in srgb, var(--ink) 55%, transparent);cursor:pointer;border:0;margin:0;padding:0;position:absolute;inset:0}.sheet-panel{z-index:1;width:min(100%,40rem);min-width:0;max-width:100%;max-height:min(92dvh, 44rem, calc(var(--sheet-vv-height,100dvh) - .75rem));background:var(--surface);color:var(--foreground);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4) max(var(--space-3), env(safe-area-inset-bottom,0px));box-shadow:var(--shadow);touch-action:pan-y;overscroll-behavior:contain;outline:none;transition:padding-bottom .28s cubic-bezier(.22,1,.36,1);position:relative;overflow:hidden auto}.sheet-panel--compact{box-sizing:border-box;height:fit-content;padding:var(--chrome-pad);padding-bottom:max(var(--chrome-pad), env(safe-area-inset-bottom,0px))}.sheet-panel--keyboard,.sheet-panel--compact.sheet-panel--keyboard{padding-bottom:var(--chrome-pad)}@media (min-width:768px){.sheet-root{padding:var(--space-4);align-items:center}}@media (max-width:767px){.sheet-root{padding:var(--sheet-edge-inset);padding-bottom:var(--sheet-above-mobile-nav);justify-items:stretch}.sheet-root.sheet-root--keyboard{padding-bottom:var(--sheet-edge-inset)}.sheet-backdrop{bottom:var(--mobile-chrome-total)}.sheet-root.sheet-root--keyboard .sheet-backdrop{bottom:0}.sheet-panel{width:100%;max-height:min(92dvh, 44rem, calc(var(--sheet-vv-height,100dvh) - var(--sheet-above-mobile-nav) - var(--sheet-edge-inset)));-webkit-overflow-scrolling:touch}.sheet-root.sheet-root--keyboard .sheet-panel{max-height:min(92dvh, 44rem, calc(var(--sheet-vv-height,100dvh) - 2 * var(--sheet-edge-inset)))}.sheet-panel:not(.sheet-panel--compact){padding-bottom:var(--space-3)}}.sheet-handle{background:var(--border);width:2.5rem;height:.25rem;margin:0 auto var(--space-3);border-radius:999px;position:relative}.sheet-handle:before{content:"";position:absolute;inset:-.75rem -3rem}.sheet-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.sheet-header-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.sheet-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--leading-snug);margin:0}.sheet-close{flex-shrink:0}.sheet-body{gap:var(--space-3);flex-direction:column;min-width:0;max-width:100%;display:flex}.sheet-body--compact{gap:var(--space-2)}.confirm-dialog-root{z-index:calc(var(--overlay-z) + 20);box-sizing:border-box;place-items:end center;display:grid;position:fixed;inset:0}.confirm-dialog-panel{z-index:1;gap:var(--space-3);width:min(100%,26rem);padding:var(--chrome-pad);padding-bottom:max(var(--chrome-pad), env(safe-area-inset-bottom,0px));border-radius:var(--radius-lg);background:var(--surface);color:var(--foreground);box-shadow:var(--shadow);outline:none;flex-direction:column;display:flex;position:relative}@media (min-width:768px){.confirm-dialog-root{padding:var(--space-4);align-items:center}.confirm-dialog-panel{padding:var(--space-4)}}@media (max-width:767px){.confirm-dialog-root{padding:var(--sheet-edge-inset);padding-bottom:max(var(--sheet-edge-inset), env(safe-area-inset-bottom,0px));justify-items:stretch}.confirm-dialog-panel{width:100%}}.confirm-dialog-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);line-height:var(--leading-snug);margin:0}.confirm-dialog-message{font-size:var(--text-base);line-height:var(--leading-normal);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.confirm-dialog-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.confirm-dialog-actions--stack{flex-direction:column-reverse;align-items:stretch}.confirm-dialog-actions--stack .button{justify-content:center;width:100%}.toast-host{inset-inline:0;bottom:var(--space-4);z-index:calc(var(--overlay-z) + 10);padding-inline:var(--page-pad-x);pointer-events:none;justify-content:center;display:flex;position:fixed}.toast-host>.notice{width:min(100%, var(--content-width));pointer-events:auto}@media (max-width:767px){.toast-host{bottom:calc(var(--mobile-chrome-total) + var(--space-3))}}.segmented{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);flex-shrink:0;gap:2px;padding:3px;display:inline-flex}.segmented-option{min-width:3.5rem;height:calc(var(--control-height) - 8px);padding:0 var(--space-3);border-radius:calc(var(--radius-sm) - 2px);color:var(--muted);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;background:0 0;border:0}.segmented-option:hover:not(.is-active){color:var(--foreground)}.segmented-option.is-active{background:var(--surface);color:var(--foreground);box-shadow:0 1px 2px #0000001f}.segmented-option:focus-visible{box-shadow:var(--focus-ring);outline:none}.app-icon--filled{fill:currentColor}.login-shell{width:min(100%,24rem);min-height:100dvh;padding:var(--space-6) var(--page-pad-x);padding-bottom:var(--page-pad-bottom);justify-content:center;gap:var(--space-4);background:var(--background);color:var(--foreground);flex-direction:column;margin-inline:auto;display:flex}.login-form{gap:var(--space-3)}.login-header{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:var(--control-height);display:flex}.login-intro{gap:var(--space-1);padding-block:var(--space-2);flex-direction:column;display:flex}.login-apply{color:color-mix(in srgb, var(--muted) 70%, transparent);flex-shrink:0}.login-apply.icon-button--solid,.icon-button--solid{color:#fff;background:#000;border-color:#000}.icon-button--solid:hover:not(:disabled){color:#fff;background:#111;border-color:#111}.login-field{display:block;position:relative}.login-field-input.input{padding-right:2.75rem}.login-field-action{border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex;position:absolute;top:50%;right:.35rem;transform:translateY(-50%)}.login-field-action:hover{color:var(--foreground);background:color-mix(in srgb, var(--foreground) 6%, transparent)}.login-field.is-invalid .login-field-input{border-color:var(--danger)}.login-links{align-items:flex-start;gap:var(--space-1);flex-direction:column;display:flex}.login-link{min-height:var(--control-height-sm);color:var(--muted);font-size:var(--text-sm);text-align:left;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.login-link:hover{color:var(--foreground)}.composer-row{align-items:center;gap:var(--space-2);display:flex}.composer-name{flex:auto;min-width:0;position:relative}.suggestion-list{inset-inline:0;z-index:var(--popover-z);padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow);margin:0;list-style:none;position:absolute;top:calc(100% + 4px)}.suggestion-item{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-height:var(--control-height-sm);padding:var(--space-2) var(--space-3);border-radius:calc(var(--radius-sm) - 2px);color:var(--foreground);font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.suggestion-item:hover,.suggestion-item:focus-visible{background:var(--surface-muted)}.suggestion-main{flex-direction:column;min-width:0;display:flex}.suggestion-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.suggestion-qty,.suggestion-source{color:var(--muted);font-size:var(--text-xs)}.suggestion-source{flex-shrink:0}.chip-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{align-items:center;gap:var(--space-2);min-height:var(--control-height-sm);max-width:100%;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--foreground);font-size:var(--text-sm);cursor:pointer;display:inline-flex}.chip:hover{border-color:var(--foreground)}.chip-qty{color:var(--muted);font-size:var(--text-xs)}.chip-group{max-width:100%;display:inline-flex}.chip--joined{border-right-width:0;border-top-right-radius:0;border-bottom-right-radius:0}.chip-action{width:var(--control-height-sm);min-height:var(--control-height-sm);border:1px solid var(--border);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--surface);color:var(--muted);cursor:pointer;justify-content:center;align-items:center;padding:0;display:inline-flex}.chip-action:hover{color:var(--warning);border-color:var(--warning);background:var(--warning-surface)}.merge-title{align-items:center;gap:var(--space-2);display:flex}.merge-line{margin-top:var(--space-1);color:var(--muted)}.shopping-toolbar{align-items:center;gap:var(--space-2);display:flex}.shopping-toolbar-select{flex:auto}.shopping-toolbar-select.is-disabled,.shopping-toolbar-select.is-disabled .custom-select-trigger{opacity:.45;pointer-events:none}.quick-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.quick-chip-star{color:var(--warning,#c48a1a)}.shopping-summary{margin-top:calc(-1 * var(--space-2))}.page-stack:has(.shopping-toolbar){gap:var(--space-3)}.shopping-all-lists{gap:var(--space-3);flex-direction:column;display:flex}.shopping-list-group.card{gap:var(--space-3);border-radius:var(--radius-sm);padding:var(--space-3);flex-direction:column;display:flex}.shopping-list-group-header{align-items:center;min-width:0;display:flex}.shopping-list-group-toggle{align-items:center;gap:var(--space-2);width:100%;min-width:0;min-height:var(--control-height-sm);color:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin:0;padding:0;display:flex}.shopping-list-group-toggle:focus,.shopping-list-group-toggle:focus-visible{box-shadow:none;outline:none}.shopping-list-group-chevron{flex-shrink:0;transition:transform .16s}.shopping-list-group-chevron.is-collapsed{transform:rotate(-90deg)}.shopping-list-group-label{align-items:center;gap:var(--space-2);min-width:0;max-width:100%;display:inline-flex}.shopping-list-group-title{min-width:0;font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:var(--leading-tight);color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.shopping-list-group-body{gap:var(--space-3);flex-direction:column;display:flex}.shopping-list-group-summary{margin:0}.list-status-stack{gap:var(--space-4);flex-direction:column;display:flex}.list-pending-block{gap:var(--space-3);flex-direction:column;display:flex}.list-bought-block{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border);flex-direction:column;display:flex}.list-bought-block .item-row{background:color-mix(in srgb, var(--foreground) 2.5%, var(--surface))}.list-manage-list{gap:var(--space-2)}.list-manage-list>.list-row{touch-action:none}.list-manage-list>.list-row.is-dragging{opacity:.92;z-index:2;box-shadow:var(--shadow)}.sortable-drag-handle.icon-button{margin-left:var(--space-1);cursor:grab;touch-action:none;color:var(--muted);background:0 0;border-color:#0000;flex-shrink:0}.sortable-drag-handle.icon-button:hover:not(:disabled),.sortable-drag-handle.icon-button.is-pressed{color:var(--foreground);background:0 0;border-color:#0000}.sortable-drag-handle.icon-button:active:not(:disabled){cursor:grabbing}.list-row .item-row-main{border-radius:0}.section-count{box-sizing:border-box;background:var(--accent);min-width:1.375rem;height:1.375rem;color:var(--accent-foreground);font-size:var(--text-xs);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding-inline:.35rem;line-height:1;display:inline-flex}.item-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.item-row{align-items:center;gap:var(--space-2);min-width:0;padding-right:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);display:flex}.item-row-main{align-items:center;gap:var(--space-3);min-width:0;min-height:3.25rem;padding:var(--space-2) 0 var(--space-2) var(--space-3);border-radius:var(--radius-sm) 0 0 var(--radius-sm);color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:auto;display:flex}.item-row-main:focus-visible{box-shadow:var(--focus-ring);outline:none}.item-check{border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:#0000;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;display:inline-flex}.item-row:hover .item-check{border-color:var(--foreground)}.item-row.is-bought .item-check{border-color:var(--success);background:var(--success-surface);color:var(--success)}.list-row.is-active{border-color:var(--foreground)}.item-text{flex-direction:column;gap:2px;min-width:0;display:flex}.item-name{overflow-wrap:anywhere;font-size:var(--text-base);line-height:var(--leading-snug)}.item-qty{color:var(--muted);font-size:var(--text-xs)}.item-row.is-bought .item-name{color:var(--muted);text-decoration:line-through}.item-tools{align-items:center;gap:var(--icon-gap);flex-shrink:0;display:inline-flex}@media (max-width:767px){.item-tools{gap:6px}.item-row{padding-right:6px}}.history-list{margin:0;padding:0;list-style:none}.history-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--card-pad);display:flex}.history-row+.history-row{border-top:1px solid var(--border)}.history-main{min-width:0}.history-name{overflow-wrap:anywhere;font-size:var(--text-base)}.history-meta{color:var(--muted);font-size:var(--text-xs)}.history-row.is-deleted .history-name{color:var(--muted);text-decoration:line-through}.history-row.is-deleted .history-meta{color:var(--danger)}.history-time{color:var(--muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;flex-shrink:0}
