:root{color-scheme:light;--font-display: "Quicksand", "DM Sans", "Noto Sans", "Segoe UI", Arial, sans-serif;--font-mono: "JetBrains Mono", "Cascadia Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace;--font-sans: "DM Sans", "Noto Sans", "Segoe UI", Arial, sans-serif;--radius-ui: 8px;--radius-pill: 999px;--space-2: .5rem;--space-1: .25rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: clamp(1.5rem, 4vw, 2.25rem);--space-page-x: clamp(.75rem, 2.25vw, 1.75rem);--space-page-y: clamp(1.25rem, 4vw, 3rem);--color-accent-leaf: #a8be5f;--color-accent-leaf-strong: #6f8f3a;--color-accent-sky: #96aec2;--color-background: #d8d0bd;--color-background-soft: #ebe5d6;--color-card-tint: #e4dccb;--color-on-soft-accent: #2d353b;--color-scrollbar-thumb: #7b7469;--color-scrollbar-thumb-hover: #625b52;--color-status-danger: #b42318;--color-status-danger-text: #842018;--color-status-warning: #c97b1d;--color-surface: #f1eadc;--color-text: #2d353b;--color-text-muted: #66706e;--color-wood: #9a765d;--color-wood-deep: #69584f;--app-background: radial-gradient( circle at 18% 12%, color-mix(in srgb, var(--color-accent-sky) 44%, transparent), transparent 34% ), radial-gradient( circle at 82% 20%, color-mix(in srgb, var(--color-accent-leaf) 32%, transparent), transparent 30% ), linear-gradient(180deg, var(--color-background-soft) 0%, var(--color-background) 100%);--control-primary-background: var(--color-accent-leaf-strong);--control-primary-border: color-mix(in srgb, var(--color-accent-leaf-strong) 72%, black 28%);--control-primary-text: #f4f0e4;--control-quiet-background: color-mix( in srgb, var(--color-accent-sky) 20%, var(--color-card-tint) 80% );--control-quiet-border: color-mix(in srgb, var(--color-wood) 18%, transparent);--control-quiet-text: var(--color-text);--control-warm-background: color-mix(in srgb, var(--color-wood) 76%, var(--color-card-tint) 24%);--control-warm-border: color-mix(in srgb, var(--color-wood) 68%, var(--color-wood-deep) 32%);--control-warm-text: var(--color-on-soft-accent);--shopping-scale-good: #75a547;--shopping-scale-watch: #ffe6a3;--shopping-scale-warning: #f3ad54;--shopping-scale-danger: #d94c3c;--shopping-scale-track-background: linear-gradient( to top, var(--shopping-scale-good) 0%, var(--shopping-scale-good) 24%, var(--shopping-scale-watch) 24%, var(--shopping-scale-watch) 48%, var(--shopping-scale-warning) 48%, var(--shopping-scale-warning) 72%, var(--shopping-scale-danger) 72%, var(--shopping-scale-danger) 100% );--shopping-scale-thumb-background: linear-gradient( 180deg, var(--control-primary-text), color-mix(in srgb, var(--color-accent-leaf) 32%, var(--control-primary-text)) );--danger-soft-background: color-mix( in srgb, var(--color-status-danger) 16%, var(--color-card-tint) 84% );--form-field-background: color-mix(in srgb, var(--color-surface) 88%, var(--color-card-tint) 12%);--line-subtle: color-mix(in srgb, var(--color-wood) 12%, transparent);--line-panel: color-mix(in srgb, var(--color-wood) 18%, transparent);--line-strong: color-mix(in srgb, var(--color-wood) 22%, transparent);--ui-border: var(--line-panel);--ui-surface-muted: var(--surface-soft-background);--row-hover-background: color-mix( in srgb, var(--color-accent-sky) 22%, var(--color-card-tint) 78% );--row-stripe-background: color-mix(in srgb, var(--color-background-soft) 42%, transparent);--pulse-card-background: linear-gradient( 145deg, color-mix(in srgb, var(--color-card-tint) 72%, var(--color-surface) 28%), color-mix(in srgb, var(--color-accent-sky) 20%, var(--color-surface) 80%) ), color-mix(in srgb, var(--color-accent-sky) 18%, var(--color-surface));--pulse-row-background: color-mix( in srgb, var(--color-card-tint) 78%, var(--color-accent-sky) 22% );--pulse-row-border: color-mix(in srgb, var(--color-card-tint) 74%, var(--color-wood) 26%);--pulse-row-text: var(--color-on-soft-accent);--household-group-row-background: color-mix( in srgb, var(--pulse-row-background) 84%, var(--color-wood-deep) 16% );--household-product-row-background: color-mix( in srgb, var(--surface-soft-background) 70%, var(--color-wood-deep) 30% );--household-batch-row-background: color-mix( in srgb, var(--surface-soft-background) 64%, var(--color-wood-deep) 36% );--pulse-sheen-background: color-mix(in srgb, var(--color-card-tint) 42%, transparent);--pulse-core-background: color-mix( in srgb, var(--color-accent-leaf) 30%, var(--color-card-tint) 70% );--surface-panel-background: rgb(248 244 241 / 78%);--surface-panel-shadow: 0 1rem 2.6rem rgb(48 43 50 / 10%);--surface-floating-shadow: 0 1rem 2.6rem rgb(48 43 50 / 14%);--surface-shell-background: rgb(248 244 241 / 76%);--surface-shell-shadow: 0 1rem 2.4rem rgb(48 43 50 / 12%);--surface-soft-background: color-mix( in srgb, var(--color-background-soft) 72%, var(--color-card-tint) 28% );--toast-background: color-mix(in srgb, white 86%, var(--color-surface) 14%);--toast-shadow: 0 1rem 2.4rem rgb(48 43 50 / 16%);--toast-text: var(--color-text);--toast-text-muted: var(--color-text-muted);--toast-error-border: color-mix( in srgb, var(--color-status-danger) 72%, var(--color-card-tint) 28% );--toast-info-border: color-mix(in srgb, var(--color-accent-sky) 68%, var(--color-card-tint) 32%);--toast-success-border: color-mix( in srgb, var(--color-accent-leaf-strong) 72%, var(--color-card-tint) 28% );--toast-warning-border: color-mix( in srgb, var(--color-status-warning) 72%, var(--color-card-tint) 28% );font-family:var(--font-sans);font-size:92.5%;line-height:1.5}:root[data-theme=dark]{color-scheme:dark;--color-accent-leaf: #aebf76;--color-accent-leaf-strong: #8fa65a;--color-accent-sky: #96aec2;--color-background: #262c31;--color-background-soft: #2d353b;--color-card-tint: #cdc2a7;--color-on-soft-accent: #262c31;--color-scrollbar-thumb: #8f8878;--color-scrollbar-thumb-hover: #aaa18d;--color-status-danger: #ff8c7f;--color-status-danger-text: #ffd6d1;--color-status-warning: #f3b35e;--color-surface: #3f4547;--color-text: #e5dcc8;--color-text-muted: #bfb49e;--color-wood: #cdc2a7;--color-wood-deep: #b8a887;--app-background: radial-gradient( circle at 18% 12%, color-mix(in srgb, var(--color-accent-sky) 24%, transparent), transparent 34% ), radial-gradient( circle at 82% 20%, color-mix(in srgb, var(--color-accent-leaf) 18%, transparent), transparent 30% ), linear-gradient(180deg, var(--color-background-soft) 0%, var(--color-background) 100%);--control-primary-background: color-mix(in srgb, var(--color-accent-leaf-strong) 86%, black 14%);--control-primary-border: color-mix(in srgb, var(--color-accent-leaf-strong) 60%, white 40%);--control-primary-text: #f1eadc;--control-quiet-background: color-mix( in srgb, var(--color-accent-sky) 22%, var(--color-surface) 78% );--control-quiet-border: color-mix(in srgb, var(--color-wood) 28%, transparent);--control-quiet-text: var(--color-text);--control-warm-background: color-mix(in srgb, var(--color-wood) 72%, var(--color-surface) 28%);--control-warm-border: color-mix(in srgb, var(--color-wood) 62%, var(--color-background) 38%);--control-warm-text: var(--color-on-soft-accent);--danger-soft-background: color-mix( in srgb, var(--color-status-danger) 18%, var(--color-surface) 82% );--form-field-background: color-mix(in srgb, var(--color-surface) 84%, black 16%);--line-subtle: color-mix(in srgb, var(--color-wood) 18%, transparent);--line-panel: color-mix(in srgb, var(--color-wood) 24%, transparent);--line-strong: color-mix(in srgb, var(--color-wood) 34%, transparent);--ui-border: var(--line-panel);--ui-surface-muted: var(--surface-soft-background);--row-hover-background: color-mix(in srgb, var(--color-accent-sky) 20%, var(--color-surface) 80%);--row-stripe-background: color-mix(in srgb, var(--color-background-soft) 60%, transparent);--pulse-card-background: linear-gradient( 145deg, color-mix(in srgb, var(--color-background-soft) 82%, var(--color-surface) 18%), color-mix(in srgb, var(--color-accent-sky) 12%, var(--color-background) 88%) ), var(--color-background-soft);--pulse-row-background: color-mix(in srgb, var(--color-surface) 84%, var(--color-accent-sky) 16%);--pulse-row-border: color-mix(in srgb, var(--color-wood) 28%, var(--color-background) 72%);--pulse-row-text: var(--color-text);--household-group-row-background: var(--pulse-row-background);--household-product-row-background: color-mix( in srgb, var(--pulse-row-background) 82%, transparent );--household-batch-row-background: color-mix( in srgb, var(--surface-soft-background) 76%, var(--pulse-row-background) );--pulse-sheen-background: color-mix(in srgb, var(--color-accent-sky) 16%, transparent);--pulse-core-background: color-mix( in srgb, var(--color-accent-leaf) 22%, var(--color-surface) 78% );--surface-panel-background: rgb(37 32 43 / 86%);--surface-panel-shadow: 0 1rem 2.6rem rgb(0 0 0 / 28%);--surface-floating-shadow: 0 1rem 2.6rem rgb(0 0 0 / 34%);--surface-shell-background: rgb(37 32 43 / 82%);--surface-shell-shadow: 0 1rem 2.4rem rgb(0 0 0 / 30%);--surface-soft-background: color-mix( in srgb, var(--color-background-soft) 74%, var(--color-surface) 26% );--toast-background: linear-gradient( 180deg, color-mix(in srgb, var(--color-background-soft) 84%, var(--color-surface) 16%), color-mix(in srgb, var(--color-background) 88%, black 12%) );--toast-shadow: 0 1rem 2.4rem rgb(0 0 0 / 32%);--toast-text: #f2ebdb;--toast-text-muted: #c5b8a1;--toast-error-border: color-mix( in srgb, var(--color-status-danger) 64%, var(--color-card-tint) 36% );--toast-info-border: color-mix(in srgb, var(--color-accent-sky) 62%, var(--color-card-tint) 38%);--toast-success-border: color-mix( in srgb, var(--color-accent-leaf-strong) 64%, var(--color-card-tint) 36% );--toast-warning-border: color-mix( in srgb, var(--color-status-warning) 66%, var(--color-card-tint) 34% )}*{box-sizing:border-box}html,body{height:100%;margin:0;min-height:100%}body{background:var(--app-background);color:var(--color-text);overflow:hidden}*{scrollbar-color:color-mix(in srgb,var(--color-scrollbar-thumb) 88%,var(--color-card-tint) 12%) transparent;scrollbar-width:thin}*::-webkit-scrollbar{height:.8rem;width:.8rem}*::-webkit-scrollbar-button{display:none;height:0;width:0}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:linear-gradient(180deg,color-mix(in srgb,var(--color-scrollbar-thumb) 82%,var(--color-card-tint) 18%),color-mix(in srgb,var(--color-scrollbar-thumb) 96%,black 4%));background-clip:padding-box;border:.18rem solid transparent;border-radius:var(--radius-pill);box-shadow:inset 0 0 0 1px #ffffff47,0 .2rem .75rem #4a375c38}*::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--color-scrollbar-thumb-hover) 80%,var(--color-card-tint) 20%),color-mix(in srgb,var(--color-scrollbar-thumb-hover) 94%,black 6%))}*::-webkit-scrollbar-corner{background:transparent}code,kbd,pre,samp{font-family:var(--font-mono)}.surface-panel,.ui-surface-panel{background:var(--surface-panel-background);border:1px solid var(--line-panel);border-radius:var(--radius-ui);box-shadow:var(--surface-panel-shadow)}.ui-surface-soft{background:var(--surface-soft-background);border:1px solid var(--line-subtle);border-radius:var(--radius-ui)}.surface-copy{display:grid;gap:var(--space-3);padding:clamp(1rem,2.4vw,1.4rem)}.ui-kicker,.eyebrow,.card-kicker,.status-kicker{color:var(--color-text-muted);font-size:.78rem;font-weight:700;letter-spacing:0;margin:0;text-transform:uppercase}.page-shell{display:grid;gap:var(--space-3);min-height:100%}.page-intro{display:grid;gap:var(--space-3);max-width:43rem}.page-title{color:var(--color-text);font-family:var(--font-display);font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.05;margin:0}.page-lead{color:var(--color-text-muted);font-size:.95rem;line-height:1.5;margin:0}.ui-panel-card{background:var(--surface-panel-background);border:1px solid var(--line-panel);border-radius:var(--radius-ui);box-shadow:var(--surface-panel-shadow);display:grid;gap:var(--space-4);padding:clamp(1rem,2.5vw,1.5rem)}.section-toggle{align-items:center;background:transparent;border:0;color:inherit;cursor:pointer;display:flex;font:inherit;gap:var(--space-2);padding:0;text-align:left}.section-toggle>.ui-card-title,.section-toggle>span:last-child{color:var(--color-text);font-family:var(--font-display);font-size:clamp(1.05rem,2vw,1.25rem);font-weight:800;line-height:1.08;margin:0}.details-icon{display:block;fill:currentColor;height:1rem;width:1rem}.ui-shell-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:var(--surface-shell-background);border:1px solid var(--line-panel);border-radius:var(--radius-ui);box-shadow:var(--surface-panel-shadow)}.ui-card-grid{display:grid;gap:var(--space-4)}.ui-card-title{color:var(--color-text);font-family:var(--font-display);font-size:clamp(1.2rem,3vw,1.6rem);line-height:1.08;margin:0}.ui-copy-muted{color:var(--color-text-muted);line-height:1.6;margin:0}.ui-copy-error{color:var(--color-status-danger-text);margin:0}.ui-form-control{background:var(--form-field-background);border:1px solid var(--line-subtle);border-radius:var(--radius-ui);color:var(--color-text);font:inherit;min-height:2.15rem;padding:.4rem .5rem}.ui-form-control[type=checkbox]{accent-color:var(--color-accent-leaf-strong);min-height:0;padding:0}.ui-button,.ui-action-button{background:var(--control-primary-background);border:1px solid var(--control-primary-border);border-radius:var(--radius-ui);color:var(--control-primary-text);cursor:pointer;font:inherit;font-weight:700;min-height:2.75rem;min-width:8rem;padding:.7rem 1rem;text-decoration:none}.ui-button-quiet{background:var(--control-quiet-background);border-color:var(--control-quiet-border);color:var(--control-quiet-text)}.ui-button-warm{background:var(--control-warm-background);border-color:var(--control-warm-border);color:var(--control-warm-text)}.ui-button-danger{background:var(--danger-soft-background);border-color:color-mix(in srgb,var(--color-status-danger) 46%,var(--line-subtle));color:var(--color-status-danger-text)}.ui-button-sm{min-height:2.15rem;min-width:0;padding:.35rem .7rem}.ui-button:disabled,.ui-action-button:disabled{cursor:progress;opacity:.72}:is(button,input,select,textarea,a):focus-visible{outline:2px solid var(--color-accent-leaf);outline-offset:2px}.ui-token{align-items:center;border-radius:var(--radius-ui);display:inline-flex;font-size:.84rem;font-weight:800;min-height:2rem;padding:.4rem .65rem}.ui-token-source{background:color-mix(in srgb,var(--color-accent-sky) 26%,var(--color-card-tint) 74%);color:var(--color-on-soft-accent)}.ui-token-tag{background:color-mix(in srgb,var(--color-accent-leaf) 18%,var(--color-card-tint) 82%);color:var(--color-on-soft-accent)}.ui-token-muted{background:var(--surface-soft-background);color:var(--color-text-muted)}.radial-nav-item:after{background:color-mix(in srgb,var(--color-surface) 92%,var(--color-card-tint) 8%);border:1px solid var(--line-panel);border-radius:var(--radius-ui);box-shadow:var(--surface-floating-shadow);color:var(--color-text);content:attr(data-label);font-size:.78rem;font-weight:800;opacity:0;padding:.28rem .48rem;pointer-events:none;position:absolute;right:calc(100% + .45rem);top:50%;transform:translate(.2rem,-50%);transition:opacity .14s ease,transform .14s ease;white-space:nowrap}.radial-nav-item:hover:after,.radial-nav-item:focus-visible:after{opacity:1;transform:translateY(-50%)}.radial-menu-open .radial-nav-item:after{display:none}
