:root{--ui-color-brand: #3b6f45;--ui-color-brand-strong: #2f6f3c;--ui-color-brand-soft: #eef7ef;--ui-color-danger: #9d1f1f;--ui-color-danger-strong: #8f2424;--ui-color-danger-soft: #fbeaea;--ui-color-text: #1b1b17;--ui-color-text-muted: #5f5f53;--ui-color-text-subtle: #4f4f44;--ui-color-surface: #fff;--ui-color-surface-soft: #fffdf6;--ui-color-surface-muted: #f5f2e6;--ui-color-surface-ghost: #f4efe0;--ui-color-border: #d0ceb9;--ui-color-border-strong: #d8d5c4;--ui-color-border-soft: #dedbc9;--ui-color-backdrop: rgba(21, 24, 18, .42);--ui-radius-sm: .4rem;--ui-radius-md: .45rem;--ui-radius-lg: .6rem;--ui-radius-xl: .75rem;--ui-radius-pill: 999px;--ui-space-1: .35rem;--ui-space-2: .55rem;--ui-space-3: .75rem;--ui-space-4: 1rem;--ui-shadow-panel: 0 8px 20px rgba(0, 0, 0, .08);--ui-shadow-dialog: 0 20px 50px rgba(20, 23, 18, .2);--ui-transition-fast: .12s ease}*,*:before,*:after{box-sizing:border-box}.ui-page-shell{max-width:96rem;margin:2.5rem auto;padding:0 1rem}.ui-page-shell-sm{max-width:32rem}.ui-page-shell-md{max-width:56rem}.ui-page-shell-lg{max-width:64rem}.ui-page-shell-xl{max-width:72rem}.ui-auth-main{max-width:28rem;margin:3rem auto;padding:0 1rem}.ui-auth-main-wide{max-width:32rem}.ui-auth-logo{display:block;width:min(16rem,100%);height:auto;margin:0 auto 1rem}.ui-form-stack{display:grid;gap:.85rem}.ui-field{display:grid;gap:.35rem}.ui-field-inline-label{color:var(--ui-color-text-muted);font-size:.9rem}.ui-input,.ui-select,.ui-textarea{width:100%;border:1px solid var(--ui-color-border);border-radius:var(--ui-radius-sm);padding:.55rem;font:inherit;color:var(--ui-color-text);background:var(--ui-color-surface)}.ui-input:disabled,.ui-select:disabled,.ui-textarea:disabled{background:#f6f4ea;color:var(--ui-color-text-subtle);border-color:#e2decc;opacity:1;cursor:default}.ui-button{border:0;border-radius:var(--ui-radius-md);padding:.65rem .85rem;font:inherit;line-height:1.2;background:var(--ui-color-brand);color:#fff;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.ui-button:hover:not(:disabled){background:#345f3b}.ui-button:disabled{opacity:.6;cursor:not-allowed}.ui-button--ghost{border:1px solid #d9d4c0;background:var(--ui-color-surface-ghost);color:#6a6759}.ui-button--ghost:hover:not(:disabled){background:#eadfc6;color:#3d3b33}.ui-button--secondary{border:1px solid var(--ui-color-border);background:#f8f6ea;color:#2d2b22}.ui-button--secondary:hover:not(:disabled){background:#f0ede0}.ui-button--danger{background:brown}.ui-button--danger:hover:not(:disabled){background:var(--ui-color-danger-strong)}.ui-button-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.ui-icon-button{width:1.4rem;height:1.4rem;box-sizing:border-box;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--ui-radius-pill)}.ui-icon-button svg{width:.8rem;height:.8rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ui-icon-btn{width:2rem;height:2rem;border:1px solid var(--ui-color-border);border-radius:var(--ui-radius-pill);background:var(--ui-color-surface);color:var(--ui-color-text-subtle);display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.ui-icon-btn:hover:not(:disabled){background:#f0ede0;border-color:#c8c4b4;color:#2f2d24}.ui-icon-btn svg{width:1rem;height:1rem;fill:currentColor}.ui-icon-btn:disabled{opacity:.45;cursor:not-allowed;color:#8c8b80;border-color:#ddd9c9;background:#f4f2e9}.ui-panel{border:1px solid var(--ui-color-border-strong);border-radius:var(--ui-radius-lg);background:var(--ui-color-surface-soft);padding:.8rem}.ui-card{border:1px solid var(--ui-color-border-strong);border-radius:var(--ui-radius-lg);background:var(--ui-color-surface-soft);padding:.9rem}.ui-chip{border:1px solid var(--ui-color-border);border-radius:var(--ui-radius-pill);background:var(--ui-color-surface-muted);color:#3f453e;font-size:.76rem;padding:.08rem .5rem;line-height:1.25}.ui-muted{color:var(--ui-color-text-muted)}.ui-error{color:var(--ui-color-danger);margin:0}.ui-success{color:#216b34}.ui-hint{margin:.5rem 0 0;color:#5c5a49;font-size:.95rem}.ui-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ui-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;border:0!important;padding:0;background:var(--ui-color-backdrop)!important;z-index:60;cursor:pointer}.ui-modal-card{position:fixed;z-index:61;top:50%;left:50%;transform:translate(-50%,-50%);width:min(52rem,calc(100vw - 2rem));max-height:calc(100vh - 2rem);overflow:auto;border:1px solid var(--ui-color-border-strong);border-radius:var(--ui-radius-xl);background:var(--ui-color-surface-soft);box-shadow:var(--ui-shadow-dialog);padding:.9rem}.ui-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.65rem}.ui-modal-header h3{margin:0}body{margin:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:#f8f7f2;color:#1b1b17}.app-shell.svelte-12qhfyh{--sidebar-width: 16rem;--sidebar-rail-width: 4.5rem;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);min-height:100vh;transition:grid-template-columns .16s ease}.app-shell.sidebar-collapsed.svelte-12qhfyh,html[data-noms-sidebar-collapsed="1"] .app-shell.svelte-12qhfyh{grid-template-columns:var(--sidebar-rail-width) minmax(0,1fr)}.sidebar-overlay.svelte-12qhfyh{display:none}.site-sidebar.svelte-12qhfyh{position:sticky;top:0;height:100vh;border-right:1px solid #dedbc9;background:#f2f0e5;display:flex;flex-direction:column;gap:.8rem;padding:.8rem .7rem;box-sizing:border-box;z-index:40;transition:padding .16s ease,box-shadow .16s ease,transform .16s ease}.sidebar-top.svelte-12qhfyh{display:flex;align-items:center;gap:.7rem;justify-content:space-between}.brand.svelte-12qhfyh{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;min-width:0;transition:gap .16s ease}.brand.svelte-12qhfyh img:where(.svelte-12qhfyh){height:2rem;width:auto;display:block;flex:0 0 auto}.brand-label.svelte-12qhfyh{color:#234e2f;font-weight:700;white-space:nowrap;transition:opacity .12s ease}.sidebar-toggle.svelte-12qhfyh{width:2rem;height:2rem;border:0;border-radius:.45rem;background:transparent;color:#234e2f;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;flex:0 0 auto}.sidebar-toggle.svelte-12qhfyh:hover{background:#234e2f14}.sidebar-toggle.svelte-12qhfyh svg:where(.svelte-12qhfyh){width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round}.nav.svelte-12qhfyh{display:grid;gap:.25rem}.nav.svelte-12qhfyh a:where(.svelte-12qhfyh){color:#234e2f;text-decoration:none;border-radius:.45rem;padding:.5rem .55rem;display:flex;align-items:center;gap:.6rem;min-width:0;transition:background-color .12s ease,color .12s ease,padding .16s ease,gap .16s ease}.nav.svelte-12qhfyh a.active:where(.svelte-12qhfyh){background:var(--household-colour);color:#fff}.nav.svelte-12qhfyh a:where(.svelte-12qhfyh) svg:where(.svelte-12qhfyh){width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.nav.svelte-12qhfyh a:where(.svelte-12qhfyh) span:where(.svelte-12qhfyh){white-space:nowrap;transition:opacity .12s ease}.sidebar-footer.svelte-12qhfyh{margin-top:auto;display:grid;gap:.7rem}.household-switcher.svelte-12qhfyh{display:grid;gap:.2rem;color:#1f472b;font-size:.75rem}.household-switcher.svelte-12qhfyh select:where(.svelte-12qhfyh){border:1px solid var(--household-colour);border-radius:.35rem;padding:.2rem .35rem;font:inherit;font-size:.85rem;background:#fff}.household-label.svelte-12qhfyh{margin:0;border:1px solid var(--household-colour);border-radius:999px;padding:.2rem .55rem;font-size:.8rem;color:var(--household-colour);background:#fff}.household-switcher-menu.svelte-12qhfyh{margin:0;padding:0 .1rem .4rem}.household-switcher-menu.svelte-12qhfyh select:where(.svelte-12qhfyh){width:100%}.household-label-menu.svelte-12qhfyh{margin:0 .1rem .4rem;width:fit-content;max-width:calc(100% - .2rem);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu.svelte-12qhfyh{position:relative}.avatar-button.svelte-12qhfyh{list-style:none;cursor:pointer;display:flex;align-items:center;gap:.55rem;border:0;border-radius:.55rem;background:transparent;padding:.35rem .45rem;transition:padding .16s ease,gap .16s ease}.avatar-button.svelte-12qhfyh:hover{background:#234e2f14}.avatar-button.svelte-12qhfyh::-webkit-details-marker{display:none}.avatar.svelte-12qhfyh{width:2rem;height:2rem;border-radius:9999px;background:#dfeadf;border:1px solid #b6d4b8;color:#1f472b;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700}.avatar-label.svelte-12qhfyh{color:#1f472b;font-size:.85rem;max-width:10rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:opacity .12s ease}.menu-panel.svelte-12qhfyh{position:absolute;bottom:calc(100% + .4rem);left:0;min-width:12rem;background:#fff;border:1px solid #dedbc9;border-radius:.5rem;padding:.55rem;box-shadow:0 8px 20px #00000014}.menu-user.svelte-12qhfyh{margin:0;font-size:.9rem;color:#1b1b17;word-break:break-word;font-weight:700}.menu-user-block.svelte-12qhfyh{display:grid;gap:.12rem;padding:.15rem .1rem .4rem}.menu-subtext.svelte-12qhfyh{margin:0;font-size:.78rem;color:#6b6a5d;word-break:break-word}.menu-divider.svelte-12qhfyh{height:1px;background:#e6e2d1;margin:0 0 .45rem}.menu-button.svelte-12qhfyh{border:0;background:transparent;color:#9d1f1f;font:inherit;font-size:.9rem;padding:0;cursor:pointer}.menu-link-wrap.svelte-12qhfyh{margin:0 0 .45rem}.menu-link.svelte-12qhfyh{color:#234e2f;text-decoration:none;font-size:.9rem}.app-content.svelte-12qhfyh{min-width:0;min-height:0}.app-shell.sidebar-collapsed.svelte-12qhfyh .brand-label:where(.svelte-12qhfyh),.app-shell.sidebar-collapsed.svelte-12qhfyh .nav:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh) span:where(.svelte-12qhfyh),.app-shell.sidebar-collapsed.svelte-12qhfyh .avatar-label:where(.svelte-12qhfyh){display:none}html[data-noms-sidebar-collapsed="1"] .app-shell.svelte-12qhfyh .brand-label:where(.svelte-12qhfyh),html[data-noms-sidebar-collapsed="1"] .app-shell.svelte-12qhfyh .nav:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh) span:where(.svelte-12qhfyh),html[data-noms-sidebar-collapsed="1"] .app-shell.svelte-12qhfyh .avatar-label:where(.svelte-12qhfyh){display:none}.app-shell.sidebar-collapsed.svelte-12qhfyh .brand:where(.svelte-12qhfyh){justify-content:center;gap:0}html[data-noms-sidebar-collapsed="1"] .app-shell.svelte-12qhfyh .brand:where(.svelte-12qhfyh){justify-content:center;gap:0}.app-shell.sidebar-collapsed.svelte-12qhfyh .sidebar-top:where(.svelte-12qhfyh){flex-direction:column;align-items:center}html[data-noms-sidebar-collapsed="1"] .app-shell.svelte-12qhfyh .sidebar-top:where(.svelte-12qhfyh){flex-direction:column;align-items:center}.app-shell.sidebar-collapsed.svelte-12qhfyh .nav:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh){justify-content:center;padding-inline:0;gap:0}html[data-noms-sidebar-collapsed="1"] .app-shell.svelte-12qhfyh .nav:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh){justify-content:center;padding-inline:0;gap:0}.app-shell.sidebar-collapsed.svelte-12qhfyh .avatar-button:where(.svelte-12qhfyh){justify-content:center;padding:.35rem;gap:0}html[data-noms-sidebar-collapsed="1"] .app-shell.svelte-12qhfyh .avatar-button:where(.svelte-12qhfyh){justify-content:center;padding:.35rem;gap:0}.app-shell.sidebar-collapsed.svelte-12qhfyh .menu-panel:where(.svelte-12qhfyh){left:calc(100% + .45rem);bottom:0}html[data-noms-sidebar-collapsed="1"] .app-shell.svelte-12qhfyh .menu-panel:where(.svelte-12qhfyh){left:calc(100% + .45rem);bottom:0}@media(max-width:900px){.app-shell.svelte-12qhfyh,.app-shell.sidebar-collapsed.svelte-12qhfyh{display:block}.site-sidebar.svelte-12qhfyh{position:fixed;left:0;top:0;width:min(18rem,calc(100vw - 2.5rem));transform:translate(-100%);transition:transform .14s ease;box-shadow:0 14px 28px #00000024}.app-shell.svelte-12qhfyh:not(.sidebar-collapsed) .site-sidebar:where(.svelte-12qhfyh){transform:translate(0)}.app-shell.sidebar-collapsed.svelte-12qhfyh .brand-label:where(.svelte-12qhfyh),.app-shell.sidebar-collapsed.svelte-12qhfyh .nav:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh) span:where(.svelte-12qhfyh),.app-shell.sidebar-collapsed.svelte-12qhfyh .avatar-label:where(.svelte-12qhfyh){display:revert}.app-shell.sidebar-collapsed.svelte-12qhfyh .sidebar-top:where(.svelte-12qhfyh){flex-direction:row}.app-shell.sidebar-collapsed.svelte-12qhfyh .nav:where(.svelte-12qhfyh) a:where(.svelte-12qhfyh){justify-content:flex-start;padding-inline:.55rem}.app-shell.sidebar-collapsed.svelte-12qhfyh .avatar-button:where(.svelte-12qhfyh){justify-content:flex-start;padding:.35rem .45rem}.app-shell.sidebar-collapsed.svelte-12qhfyh .menu-panel:where(.svelte-12qhfyh){left:0;bottom:calc(100% + .4rem)}.sidebar-overlay.svelte-12qhfyh{display:none;position:fixed;top:0;right:0;bottom:0;left:0;border:0;background:#14171247;z-index:30;padding:0}.sidebar-overlay.sidebar-overlay-visible.svelte-12qhfyh{display:block}.app-content.svelte-12qhfyh{position:relative}}
