*,:before,:after{box-sizing:border-box}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3f5fb;--surface:#fff;--surface-2:#f8f9fd;--text:#0f172a;--muted:#4b5563;--border:#dfe3ee;--border-strong:#b8c0d4;--primary:#4338ca;--primary-hover:#3730a3;--btn:#5b5bd6;--btn-hover:#4a4ac2;--control:2.25rem;--nav-h:3.5rem;--gutter:1rem;--primary-soft:#eef0ff;--on-primary:#fff;--focus:#4f46e5;--error-bg:#fef2f2;--error-text:#991b1b;--error-border:#fca5a5;--danger:#b91c1c;--success-bg:#ecfdf5;--success-text:#065f46;--success-border:#6ee7b7;--radius-xs:.25rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-pill:9999px;--shadow-sm:0 1px 2px #0f172a0d;--shadow:0 1px 3px #0f172a0f, 0 8px 24px #0f172a0d;--field:var(--surface);--border-hover:#8f9ab8;--focus-ring:#4f46e540;--primary-solid:var(--primary);--primary-soft-hover:#dde1ff;--danger-border:#f3c4c4;--danger-solid:#b91c1c;--danger-solid-hover:#991b1b;--topbar-bg:#ffffffeb;--brand-from:#6366f1;--brand-to:#4338ca;--total-from:#4f46e5;--total-to:#3730a3;--qty-zero:#667085;--overlay:#0f172a80;--shadow-modal:0 20px 50px #0f172a40;--shadow-float:0 8px 24px #0f172a4d;--shadow-drag:0 8px 24px #0f172a2e;--toast-bg:#1e293b;--toast-text:#fff;--toast-border:transparent;--warn-solid:#92400e;--conn-on:#16a34a;--conn-wait:#f59e0b;--conn-off:#9ca3af;--conn-error:#dc2626}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1520;--surface:#161e2c;--surface-2:#1e2838;--text:#e8edf7;--muted:#9aa7bf;--border:#2b374b;--border-strong:#43526d;--primary:#a5b4fc;--primary-hover:#c7d2fe;--btn:#5b5bd6;--btn-hover:#6d6de0;--primary-soft:#232d56;--on-primary:#fff;--focus:#818cf8;--error-bg:#2b151b;--error-text:#fca5a5;--error-border:#7f2d38;--danger:#f87171;--success-bg:#0f2a24;--success-text:#6ee7b7;--success-border:#1f6f55;--shadow-sm:0 1px 2px #00000040;--shadow:0 1px 2px #00000040, 0 6px 18px #0003;--field:#0c121c;--border-hover:#62718f;--focus-ring:#818cf859;--primary-solid:#5b5bd6;--primary-soft-hover:#2c3868;--danger-border:#5b2c35;--danger-solid:#dc2626;--danger-solid-hover:#b91c1c;--topbar-bg:#131a27eb;--brand-from:#6366f1;--brand-to:#4338ca;--total-from:#4f46e5;--total-to:#3730a3;--qty-zero:#7b89a6;--overlay:#03060ea6;--shadow-modal:0 20px 50px #0000008c;--shadow-float:0 8px 24px #00000073;--shadow-drag:0 10px 28px #00000080;--toast-bg:#212c42;--toast-text:#f1f4fb;--toast-border:#34425f;--warn-solid:#92400e;--conn-on:#22c55e;--conn-wait:#f59e0b;--conn-off:#6b7690;--conn-error:#f87171;--selection:#6366f1bf;--select-bg:#232f45;--select-border:#66769a;--select-border-hover:#8393b5;--select-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23c7d2fe' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 6l4.5 4.5L12.5 6'/%3E%3C/svg%3E");scrollbar-color:#34415c transparent}:root[data-theme=dark] ::selection{color:#fff;background:var(--selection)}:root[data-theme=dark] select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-color:var(--select-bg);background-image:var(--select-arrow);border-color:var(--select-border);appearance:none;background-position:right .6rem center;background-repeat:no-repeat;background-size:1rem;padding-right:2rem}:root[data-theme=dark] select:hover{border-color:var(--select-border-hover)}:root[data-theme=dark] select:focus-visible{border-color:var(--focus)}:root[data-theme=dark] select:disabled{color:var(--muted);opacity:.7}:root[data-theme=dark] select option{color:var(--text);background-color:var(--select-bg)}:root[data-theme=dark] .store-select select{background-color:#0000;border-color:#0000}:root[data-theme=dark] .store-switch{background:var(--select-bg);border-color:var(--select-border)}:root[data-theme=dark] .store-switch:hover{border-color:var(--select-border-hover)}:root[data-theme=dark] .store-switch:focus-within{border-color:var(--focus)}:root[data-theme=dark] .month-nav.compact select{padding-left:2rem}:root[data-theme=dark] ::placeholder{color:#7b89a6;opacity:1}html{-webkit-text-size-adjust:100%}body{background:var(--bg);min-height:100vh;color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:1rem;line-height:1.55}#root{min-height:100vh;padding:1rem;display:flex}h1{overflow-wrap:anywhere;letter-spacing:-.02em;margin:0 0 1.25rem;font-size:1.75rem;font-weight:800;line-height:1.2}h2{letter-spacing:-.01em;margin:0;font-size:1.1rem;font-weight:700}p{color:var(--muted)}a{color:var(--primary)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:27rem;box-shadow:var(--shadow);margin:auto;padding:1.75rem}.card h1{font-size:1.6rem}.card>p{text-align:center;margin:1.25rem 0 0}@media (width>=480px){.card{padding:2.5rem}}form{gap:1rem;display:grid}.field{gap:.35rem;display:grid}label{font-size:.9rem;font-weight:700}input,select{width:100%;min-height:var(--control);font:inherit;color:var(--text);background:var(--field);border:1px solid var(--border-strong);border-radius:var(--radius-md);padding:.35rem .7rem;font-size:.9rem;transition:border-color .15s,box-shadow .15s}input:hover,select:hover{border-color:var(--border-hover)}input:focus-visible,select:focus-visible{border-color:var(--focus);box-shadow:0 0 0 3px var(--focus-ring);outline:none}button{min-height:var(--control);font:inherit;color:var(--on-primary);background:var(--btn);border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.35rem;padding:0 .85rem;font-size:.875rem;font-weight:600;line-height:1.2;transition:background .15s,border-color .15s,color .15s;display:inline-flex}button:hover:not(:disabled){background:var(--btn-hover)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{color:var(--text);border-color:var(--border);background:0 0}button.secondary:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-strong);color:var(--text)}button.danger{color:var(--danger);border-color:var(--danger-border);background:0 0}button.danger:hover:not(:disabled){background:var(--error-bg);border-color:var(--error-border)}.alert{border-radius:var(--radius-md);border:1px solid;padding:.75rem 1rem;font-size:.95rem}.alert ul{margin:0;padding-left:1.25rem}.alert-error{color:var(--error-text);background:var(--error-bg);border-color:var(--error-border)}.alert-success{color:var(--success-text);background:var(--success-bg);border-color:var(--success-border);margin-bottom:1rem}form>.alert-success{margin-bottom:0}.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}#root:has(.shell){padding:0}.shell{flex:1;min-width:0;min-height:100vh}.topbar{z-index:10;background:var(--topbar-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);position:sticky;top:0}.topbar-inner{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;width:100%;max-width:1360px;margin:0 auto;padding:.625rem 1rem;display:flex}.brand{letter-spacing:-.02em;order:1;align-items:center;gap:.55rem;font-size:1.05rem;font-weight:800;display:inline-flex}.brand-mark{width:var(--control);height:var(--control);color:#fff;background:linear-gradient(135deg, var(--brand-from), var(--brand-to));border-radius:var(--radius-md);place-items:center;display:grid}.topbar-nav{flex:100%;order:4;display:flex}.nav-list{flex-wrap:nowrap;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.nav-list a{min-height:var(--control);color:var(--muted);white-space:nowrap;border-radius:var(--radius-md);align-items:center;padding:0 .6rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.nav-list a:hover{color:var(--text);background:var(--bg)}.nav-list a.active{color:var(--primary);background:var(--primary-soft)}.user{order:2;align-items:center;gap:.6rem;margin-left:auto;font-size:.875rem;font-weight:600;display:flex}.avatar{width:var(--control);height:var(--control);color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-pill);place-items:center;font-size:.85rem;display:grid}.user-name{display:none}.user-link{min-height:var(--control);color:var(--text);border-radius:var(--radius-md);align-items:center;gap:.6rem;text-decoration:none;display:inline-flex}.user-link:hover .avatar,.user-link.active .avatar{color:#fff;background:var(--primary-solid)}@media (width>=640px){.topbar-inner{flex-wrap:nowrap;gap:1rem;padding:.625rem 2rem}.brand,.user,.store-switch,.topbar-nav{order:0}.topbar-nav{flex:0 auto;margin-right:auto}.nav-list a{padding:0 .85rem}.user{margin-left:0}.user-name{display:inline}}.page{width:100%;max-width:1360px;margin:0 auto;padding:1.25rem 1rem 3rem}@media (width>=640px){:root{--gutter:2rem}.page{padding:2rem 2rem 4rem}h1{font-size:2rem}}.back-link{min-height:var(--control);align-items:center;margin-bottom:.5rem;font-weight:700;text-decoration:none;display:inline-flex}.back-link:hover{text-decoration:underline}.panel,.inline-form,.item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.25rem}.inline-form{box-shadow:var(--shadow);align-items:end;margin-bottom:1.75rem}.inline-form>h2,.inline-form>.alert,.panel>.alert{grid-column:1/-1}@media (width>=720px){.panel,.inline-form{padding:1.5rem}.inline-form{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;gap:1rem 1.25rem}.inline-form:not(:has(.field+.field)){grid-template-columns:minmax(0,1fr) auto}}.panel>form,form.panel{max-width:none}form.panel{grid-template-columns:1fr;gap:1.1rem 1.25rem}form.panel>.alert,form.panel>button{grid-column:1/-1}form.panel>button{justify-self:start;min-width:9rem}@media (width>=720px){form.panel{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1100px){form.panel{grid-template-columns:repeat(4,minmax(0,1fr))}}.list{grid-template-columns:repeat(auto-fill,minmax(min(100%,24rem),1fr));gap:.9rem;margin:0;padding:0;list-style:none;display:grid}.item{transition:border-color .15s,box-shadow .15s}.item:hover{border-color:var(--border-strong);box-shadow:var(--shadow)}.item>form{gap:.9rem}.item-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;display:flex}.item-main{overflow-wrap:anywhere;gap:.1rem;font-weight:700;display:grid}a.item-main{min-height:var(--control);color:var(--text);align-items:center;text-decoration:none;display:flex}a.item-main:hover{color:var(--primary)}.item-price{color:var(--primary);font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:700}.muted,.hint{color:var(--muted)}.hint{margin:0;font-size:.9rem}.actions{flex-wrap:wrap;gap:.5rem;display:flex}.empty{text-align:center;background:var(--surface);border:2px dashed var(--border-strong);border-radius:var(--radius-lg);margin:0;padding:2.5rem 1rem}.detail-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;margin-bottom:1.25rem;display:flex}.detail-head h1{margin:0}.month-nav{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-wrap:wrap;align-items:center;gap:.25rem;max-width:100%;padding:.125rem;display:flex}.month-select{flex:100%;order:-1;min-width:0}.month-nav button{border-color:#0000;flex:8rem;min-height:2rem;padding:0 .7rem;font-size:.8125rem}@media (width>=640px){.month-nav button{flex:none}.month-select{flex:9rem;order:0}}.month-select select{background-color:#0000;border-color:#0000;min-height:2rem;padding-block:.2rem;font-weight:600}.total{color:#fff;background:linear-gradient(135deg, var(--total-from), var(--total-to));border-radius:var(--radius-lg);box-shadow:var(--shadow);flex-direction:column;gap:.1rem;margin-bottom:1.5rem;padding:1.25rem 1.5rem;display:flex}.total span{opacity:.9;font-size:.95rem;font-weight:700}.total strong{overflow-wrap:anywhere;letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:clamp(1.5rem,9vw,2.25rem);line-height:1.2}@media (width>=640px){.total{max-width:24rem}}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);position:relative;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:.8rem 1.1rem}th{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);background:var(--surface-2);font-size:.78rem;font-weight:700}tbody tr:hover{background:var(--surface-2)}tbody tr:last-child td{border-bottom:0}td{font-variant-numeric:tabular-nums}.num{text-align:right}.store-switch{min-width:0;height:var(--control);background:var(--field);border:1px solid var(--border-strong);border-radius:var(--radius-md);flex:100%;order:3;align-items:center;display:flex}.store-switch:focus-within{border-color:var(--focus);box-shadow:0 0 0 3px var(--focus-ring)}.store-select{flex:auto;min-width:0}.store-select select{height:calc(var(--control) - 2px);text-overflow:ellipsis;background-color:#0000;border:0;min-height:0;padding:0 2rem 0 .7rem;font-weight:600}.store-select select:focus-visible{box-shadow:none}@media (width>=640px){.store-switch{flex:0 17rem;order:0}}.badge{color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-sm);align-self:flex-start;padding:.1rem .6rem;font-size:.75rem;font-weight:700}.item-sub{color:var(--muted);overflow-wrap:anywhere;font-weight:400}.badges{flex-wrap:wrap;gap:.35rem;display:flex}.badge-muted{color:var(--muted);background:var(--surface-2);border:1px solid var(--border)}.role-badge{flex:none;align-self:center;margin-right:.4rem;display:none}@media (width>=640px){.role-badge{display:inline-block}}.role-select{padding-right:2rem;font-weight:600}.you{color:var(--muted);font-weight:400}.confirm-dialog{width:min(92vw,440px);max-height:calc(100dvh - 2rem);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-modal);margin:auto;padding:0;overflow:auto}.confirm-dialog::backdrop{background:var(--overlay)}.confirm-dialog[open]{animation:.16s ease-out confirm-in}.confirm-dialog[open]::backdrop{animation:.16s ease-out confirm-fade}@keyframes confirm-in{0%{opacity:0;transform:scale(.96)}}@keyframes confirm-fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.confirm-dialog[open],.confirm-dialog[open]::backdrop{animation:none}}.confirm-body{gap:.75rem;padding:1.25rem;display:grid}.confirm-body h2{overflow-wrap:anywhere;margin:0;font-size:1.15rem;font-weight:700}.confirm-body p{color:var(--muted);white-space:pre-line;overflow-wrap:anywhere;margin:0}.confirm-actions{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.confirm-actions button{width:100%}@media (width>=480px){.confirm-actions{flex-direction:row;justify-content:flex-end}.confirm-actions button{flex:none;width:auto}}button.danger-solid{color:#fff;background:var(--danger-solid);border-color:var(--danger-solid)}button.danger-solid:hover:not(:disabled){background:var(--danger-solid-hover);border-color:var(--danger-solid-hover)}.matrix-search{max-width:22rem;margin-bottom:1rem;display:block}.matrix{--matrix-first:9rem;--matrix-col:6.5rem;--matrix-total:7rem;--matrix-sep:color-mix(in srgb, var(--border) 55%, transparent);table-layout:fixed;width:100%}.matrix .col-emp{width:var(--matrix-first)}.matrix .col-sum{width:var(--matrix-total)}.matrix .pcol{text-align:center;box-shadow:inset 1px 0 0 var(--matrix-sep)}.matrix .pcol .col-name{text-overflow:ellipsis;overflow:hidden}.matrix thead .pcol,.matrix tfoot .pcol{font-variant-numeric:tabular-nums}.matrix th,.matrix td{padding:.4rem .75rem}.matrix thead th{vertical-align:bottom}.matrix .col-name,.matrix .col-price{display:block}.matrix .col-flag{text-transform:none;letter-spacing:0;font-weight:600}.matrix .col-price{letter-spacing:0;color:var(--muted);margin-top:.1rem;font-weight:600}.matrix tbody th[scope=row],.matrix tfoot th[scope=row]{letter-spacing:0;text-transform:none;color:var(--text);background:var(--surface);font-size:.95rem}.matrix .sticky-col{z-index:1;text-overflow:ellipsis;box-shadow:1px 0 0 var(--matrix-sep);position:sticky;left:0;overflow:hidden}.matrix thead .sticky-col,.matrix tbody tr:hover th[scope=row]{background:var(--surface-2)}.matrix .removed{background:repeating-linear-gradient(135deg, var(--surface-2), var(--surface-2) 6px, var(--surface) 6px, var(--surface) 12px)}.matrix thead .removed{opacity:.75}.matrix .total-col{background:var(--primary-soft);color:var(--primary-hover);font-weight:700}.matrix tfoot th,.matrix tfoot td{border-top:2px solid var(--border-strong);background:var(--surface-2);border-bottom:0;font-weight:700}.matrix tfoot th[scope=row]{background:var(--surface-2)}.matrix tfoot .grand{color:#fff;background:var(--primary-solid);font-size:1.05rem}.qty{justify-content:center;align-items:center;gap:.35rem;display:flex}.matrix td .qty-btn{min-width:1.75rem;min-height:1.75rem;padding:0;font-size:1.05rem;font-weight:500;line-height:1}.matrix td .qty-btn.add{color:var(--primary);background:var(--primary-soft);border-color:#0000}.matrix td .qty-btn.add:hover:not(:disabled){background:var(--primary-soft-hover)}@media (width<=639px){.matrix td .qty-btn{min-width:2.25rem;min-height:2.25rem}}.qty-n{text-align:center;min-width:2ch;color:var(--qty-zero);font-variant-numeric:tabular-nums;font-weight:600;position:relative}.qty-n.has{color:var(--primary-hover);font-size:1rem;font-weight:800}.matrix-hint{margin-bottom:1rem}.matrix .total-col{z-index:1;text-align:right;box-shadow:inset 1px 0 0 var(--matrix-sep);position:sticky;right:0}.matrix th,.matrix td{padding-inline:.5rem}.month-nav.compact{flex-wrap:nowrap;width:100%}.month-nav.compact .month-select{flex:auto;order:0}.month-nav.compact button{flex:0 0 2.5rem;min-height:2.5rem;padding:0;font-size:1.1rem}.month-nav.compact select{text-align:center;min-height:2.5rem}.emp-cards,.prod-rows,.col-totals ul{margin:0;padding:0;list-style:none}.emp-cards{gap:.75rem;display:grid}.emp-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.emp-card-head{background:var(--surface-2);border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:.75rem;padding:.7rem .9rem;display:flex}.emp-card-head h2{overflow-wrap:anywhere;margin:0;font-size:1.05rem}.emp-card-head strong{color:var(--primary-hover);font-variant-numeric:tabular-nums;flex:none;position:relative}.prod-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:.5rem;padding:.35rem .9rem;display:flex}.prod-row:first-child{border-top:0}.prod-row.has{background:var(--primary-soft)}.prod-info{flex-direction:column;min-width:0;display:flex}.prod-name{overflow-wrap:anywhere;font-weight:600}.prod-price{color:var(--muted);font-size:.8125rem}.prod-row .qty{flex:none;gap:.25rem}.prod-row .qty-btn{min-width:2.5rem;min-height:2.5rem;padding:0;font-size:1.25rem;line-height:1}.prod-row .qty-btn.add{color:var(--primary);background:var(--primary-soft);border-color:#0000}.prod-row.has .qty-btn.add{background:var(--surface)}.prod-row .qty-n{min-width:2rem}.col-totals{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-top:1rem}.col-totals summary{cursor:pointer;min-height:2.75rem;padding:.75rem .9rem;font-weight:700}.col-totals li{border-top:1px solid var(--border);justify-content:space-between;gap:.75rem;padding:.5rem .9rem;display:flex}@media (width<=720px){.matrix-search{max-width:none}.matrix-hint{margin-top:-.75rem;font-size:.8125rem}.detail-head{margin-bottom:.75rem}.detail-head .month-nav{flex:100%}}.cons-list{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.cons-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem .75rem;padding:.75rem .9rem;display:grid}.cons-main{gap:.1rem;min-width:0;display:grid}.cons-name{overflow-wrap:anywhere;font-weight:700}.cons-meta{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.85rem}.cons-total{color:var(--primary-hover);font-variant-numeric:tabular-nums;font-size:1.05rem}.cons-item button{grid-column:1/-1}.matrix-search label{display:block}@media (width<=720px){.matrix-search{top:var(--topbar-h,3.5rem);z-index:5;margin:0 calc(var(--gutter) * -1) .75rem;padding:.5rem var(--gutter);background:var(--bg);box-shadow:0 1px 0 var(--border);position:sticky}}@media (width<=1199px){.topbar{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}.topbar-inner{padding:.5rem var(--gutter);flex-wrap:nowrap;gap:.5rem}.brand{order:1}.store-switch{flex:1 1 0;order:2;max-width:24rem}.user{order:3;margin-left:auto}.user-name{display:none}.topbar-nav{z-index:20;background:var(--surface);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);flex:none;order:0;margin:0;position:fixed;inset:auto 0 0}.topbar-nav:has(.nav-list:empty){display:none}.nav-list{flex-wrap:nowrap;flex:1;gap:0}.nav-list li{flex:1 1 0;min-width:0}.nav-list a{min-height:var(--nav-h);text-align:center;overflow-wrap:anywhere;white-space:normal;border-radius:0;justify-content:center;padding:0 .25rem;font-size:.8125rem;display:flex}.nav-list a.active{background:var(--primary-soft);box-shadow:inset 0 3px 0 var(--primary)}.shell:has(.nav-list li) .page{padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom) + 1.5rem)}}@media (width>=1200px){.topbar-inner{flex-wrap:wrap}.user-name{text-overflow:ellipsis;white-space:nowrap;max-width:10rem;display:inline;overflow:hidden}}@media (width<=639px){:root{--control:2.5rem}input,select{font-size:1rem}.store-switch{max-width:none}.item .actions{flex:100%}.item .actions>button{flex:auto}.item .actions>label{flex:100%}.confirm-actions button{min-height:2.75rem}}@media (width<=479px){.brand-text{display:none}}@media (height<=500px) and (orientation:landscape) and (width<=900px){:root{--nav-h:2.75rem}.topbar-inner{padding-block:.25rem}}@media (width<=359px){.brand{display:none}.nav-list a{font-size:.75rem}}.modal{width:min(92vw,40rem);max-width:none;max-height:calc(100dvh - 4rem);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-modal);padding:0;overflow:hidden}.modal[open]{flex-direction:column;animation:.16s ease-out confirm-in;display:flex}.modal::backdrop{background:var(--overlay)}body:has(dialog[open]){overflow:hidden}.modal-head{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem .75rem 1.25rem;display:flex}.modal-head h2{overflow-wrap:anywhere;min-width:0}.modal-sub{color:var(--muted);font-weight:600}.modal-close{width:var(--control);flex:none;padding:0;font-size:1.4rem;line-height:1}.modal-body{overscroll-behavior:contain;flex:auto;align-content:start;gap:1rem;min-height:0;padding:1rem 1.25rem 1.25rem;display:grid;overflow-y:auto}.modal-body>*{min-width:0}.member-add{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);align-items:end;gap:.75rem;padding:1rem}.member-add h3{margin:0;font-size:1rem}.member-add>.alert{margin:0}.member-list{grid-template-columns:1fr;gap:.6rem}.member-list .item{box-shadow:none;padding:.85rem 1rem}@media (width>=640px){.member-add{grid-template-columns:minmax(0,1fr) 8rem auto}.member-add>h3,.member-add>.alert{grid-column:1/-1}}@media (width<=639px){.modal{border:0;border-radius:0;width:100%;height:100dvh;max-height:100dvh;margin:0}.modal-head{padding-left:1rem}.modal-body{padding:.875rem 1rem calc(1rem + env(safe-area-inset-bottom))}.member-list .actions{flex:100%}.member-list .actions>button{flex:auto}.member-list .actions>label{flex:100%}}.conn{color:var(--muted);align-items:center;gap:.4rem;font-size:.75rem;font-weight:600;display:inline-flex}.conn-dot{background:var(--conn-wait);border-radius:var(--radius-pill);flex:none;width:.625rem;height:.625rem}.conn-online .conn-dot{background:var(--conn-on)}.conn-connecting .conn-dot{animation:1.2s ease-in-out infinite conn-pulse}.conn-offline .conn-dot{background:var(--conn-off)}.conn-error .conn-dot{background:var(--conn-error)}@keyframes conn-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.conn-connecting .conn-dot{animation:none}}.conn-label{display:none}@media (width>=1200px){.conn-label{display:inline}}.actions:empty{display:none}.page>.alert{margin-bottom:1rem}.account-page{max-width:44rem;margin:0 auto}.account-grid{gap:1rem;display:grid}.account-card h2{margin:0 0 1rem}.account-card .hint,.account-card .alert{margin:0}.account-card [role=status]:empty{display:none}.form-actions{flex-wrap:wrap;gap:.5rem;display:flex}.account-card form>button{justify-self:start;min-width:9rem}@media (width<=639px){.account-card form>button,.form-actions>button{flex:auto}.account-card form>button{justify-self:stretch}}.account-card>.hint{margin-bottom:.75rem}.copy-btn{justify-content:center;align-items:center;gap:.4rem;display:inline-flex}.copy-btn svg{flex:none}.detail-head .head-copy{margin-right:auto}.copy-btn .label-short{display:none}@media (width<=639px){.copy-btn .label-long{display:none}.copy-btn .label-short{display:inline}}.toast-region{inset:auto 0 calc(var(--nav-h) + env(safe-area-inset-bottom) + .75rem) 0;z-index:60;pointer-events:none;justify-content:center;padding-inline:1rem;display:flex;position:fixed}@media (width>=1200px){.toast-region{bottom:1.5rem}}.toast{max-width:min(100%,26rem);color:var(--toast-text);background:var(--toast-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-float), 0 0 0 1px var(--toast-border);pointer-events:auto;overflow-wrap:anywhere;align-items:center;gap:.5rem;padding:.5rem .5rem .5rem 1rem;font-size:.9rem;font-weight:600;animation:.18s ease-out toast-in;display:flex}.toast.error{color:#fff;background:var(--danger-solid);--toast-border:transparent}.toast-close{width:var(--control);min-height:var(--control);color:inherit;background:0 0;border-color:#0000;flex:none;padding:0;font-size:1.25rem}.toast-close:hover:not(:disabled){background:#ffffff26}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.copy-dialog{width:min(92vw,36rem);max-width:none;max-height:calc(100dvh - 2rem);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-modal);margin:auto;padding:0;overflow:auto}.copy-dialog::backdrop{background:var(--overlay)}.copy-dialog[open]{animation:.16s ease-out confirm-in}.copy-body{gap:.75rem;padding:1.25rem;display:grid}.copy-body>*{min-width:0;margin:0}.copy-body h2{overflow-wrap:anywhere;font-size:1.15rem}.copy-body p{color:var(--muted)}.copy-body textarea{box-sizing:border-box;width:100%;height:40dvh;min-height:9rem;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;resize:vertical;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);padding:.6rem .75rem;font:.875rem/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.copy-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}@media (width<=639px){.copy-dialog{border-radius:var(--radius-xl) var(--radius-xl) 0 0;border-bottom:0;width:100%;max-height:90dvh;margin:auto 0 0}.copy-dialog[open]{animation-name:sheet-in}.copy-body{padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom))}.copy-body textarea{font-size:1rem}.copy-actions{flex-direction:column-reverse}.copy-actions button{width:100%;min-height:2.75rem}}@keyframes sheet-in{0%{opacity:0;transform:translateY(30%)}}@media (prefers-reduced-motion:reduce){.copy-dialog[open]{animation:none}}.copy-body p.copy-fail{color:var(--danger);font-weight:600}button.ghost{color:var(--primary);background:0 0;border-color:#0000}button.ghost:hover:not(:disabled){background:var(--primary-soft)}.copy-btn.sm{min-height:2rem;padding-inline:.6rem;font-size:.8125rem}.copy-btn.icon-only{width:var(--control);padding:0}.order-hint{margin:-.5rem 0 .9rem;font-size:.85rem}.product-card{flex-direction:column;gap:.75rem;display:flex}.order-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.product-info{flex-direction:column;align-items:flex-start;gap:.15rem;display:flex}.product-name{-webkit-line-clamp:2;line-clamp:2;overflow-wrap:break-word;text-wrap:pretty;-webkit-box-orient:vertical;min-width:0;max-width:100%;display:-webkit-box;overflow:hidden}.product-price{white-space:nowrap}.product-actions{flex-wrap:nowrap;justify-content:flex-start;margin-top:auto}@media (width<=639px){.product-actions>button{flex:1 1 0}}.list.products{grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr))}.icon-btn{width:var(--control);min-width:var(--control);color:var(--muted);border:1px solid var(--border);background:0 0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-btn:hover:not(:disabled){color:var(--primary);background:var(--primary-soft)}.icon-btn:disabled{opacity:.4}.drag-handle{cursor:grab;touch-action:none;border-color:#0000}.move-btns{gap:.25rem;display:inline-flex}.item.dragging{z-index:5;border-color:var(--primary);box-shadow:var(--shadow-drag);position:relative}.item.dragging .drag-handle{cursor:grabbing}.head-deleted{align-items:center;gap:.4rem;display:inline-flex}@media (width>=640px){.modal-sm{width:min(92vw,35rem)}}.modal-sm .modal-body{min-height:8rem}.load-error{justify-items:start;gap:.5rem;display:grid}.modal .item-sub{color:var(--muted);font-size:.8125rem;font-weight:500;display:block}@media (width<=639px){.head-deleted,.modal-sm .actions>button,.load-error button{min-height:2.5rem}.modal-sm .actions{flex:100%}.modal-sm .actions>button{flex:auto}}.emp-row{cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem 1.25rem;display:flex;position:relative}.emp-row:hover{background:var(--surface-2);border-color:var(--border-strong)}.emp-row:active{background:var(--primary-soft)}.emp-row:has(.emp-link:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.emp-link{min-width:0;min-height:2.75rem;color:var(--text);flex:auto;align-items:center;font-weight:700;text-decoration:none;display:flex}.emp-link:focus-visible{outline:none}.emp-link:after{content:"";position:absolute;inset:0}.emp-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.emp-chevron{color:var(--muted);flex:none;font-size:1.5rem;line-height:1}.emp-row:hover .emp-chevron{color:var(--primary)}.head-actions{flex-wrap:wrap;gap:.5rem;margin-right:auto;display:flex}.name-edit{flex:22rem;gap:.6rem;max-width:32rem;display:grid}.name-edit .actions{gap:.5rem;display:flex}@media (width<=639px){.head-actions,.name-edit .actions{flex:100%}.head-actions>button,.name-edit .actions>button{flex:1 1 0;min-height:2.5rem}.head-actions>.copy-btn{flex:100%}}.line-qty .qty-btn{min-width:1.75rem;min-height:1.75rem;padding:0;font-size:1.05rem;font-weight:500;line-height:1}.line-qty .qty-btn.add{color:var(--primary);background:var(--primary-soft);border-color:#0000}.line-qty .qty-btn.add:hover:not(:disabled){background:var(--primary-soft-hover)}td.num .line-qty{justify-content:flex-end}.cons-foot{grid-column:1/-1;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.cons-foot .danger{min-height:2.5rem}@media (width<=639px){.line-qty .qty-btn{min-width:2.5rem;min-height:2.5rem}}.prod-totals{margin-bottom:1.25rem}.prod-totals h2{letter-spacing:.02em;text-transform:uppercase;color:var(--muted);margin:0 0 .5rem;font-size:.8125rem;font-weight:600}.prod-totals ul{grid-template-columns:repeat(auto-fill,minmax(min(100%,8.5rem),1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.prod-total{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);gap:.15rem;min-width:0;padding:.6rem .75rem;display:grid}.prod-total-name{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.prod-total strong{font-variant-numeric:tabular-nums;font-size:1.05rem}.prod-total-qty{color:var(--primary-hover);background:var(--primary-soft);border-radius:var(--radius-sm);font-variant-numeric:tabular-nums;justify-self:start;padding:.05rem .45rem;font-size:.75rem;font-weight:600}.pwa-region{inset:auto 0 calc(var(--nav-h) + env(safe-area-inset-bottom) + .75rem) 0;z-index:70;pointer-events:none;flex-direction:column;align-items:center;gap:.5rem;padding-inline:1rem;display:flex;position:fixed}@media (width>=1200px){.pwa-region{bottom:1.5rem}}.pwa-banner{max-width:min(100%,28rem);color:var(--toast-text);background:var(--toast-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-float), 0 0 0 1px var(--toast-border);pointer-events:auto;align-items:center;gap:.5rem;padding:.5rem .5rem .5rem 1rem;font-size:.9rem;font-weight:600;display:flex}.pwa-banner.offline{padding-block:.65rem;color:#fff;background:var(--warn-solid);--toast-border:transparent;padding-right:1rem}.pwa-banner span{flex:1;min-width:0}.pwa-banner button{min-height:var(--control);flex:none;padding-inline:.85rem}.pwa-banner .pwa-later{width:var(--control);color:inherit;background:0 0;border-color:#0000;padding:0;font-size:1.25rem}html{overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}.theme-options{gap:.6rem;display:grid}.theme-option{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:.75rem;min-height:3.5rem;padding:.6rem .9rem;font-weight:400;transition:border-color .15s,background .15s,box-shadow .15s;display:flex;position:relative}.theme-option:hover{border-color:var(--border-hover);background:var(--surface-2)}.theme-option:has(.theme-radio:checked){background:var(--primary-soft);border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.theme-option:has(.theme-radio:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.theme-radio{opacity:0;pointer-events:none;width:1px;height:1px;min-height:0;margin:0;padding:0;position:absolute}.theme-icon{width:2.5rem;height:2.5rem;color:var(--muted);background:var(--surface-2);border-radius:var(--radius-pill);flex:none;place-items:center;display:grid}.theme-option:has(.theme-radio:checked) .theme-icon{color:#fff;background:var(--primary-solid)}.theme-text{min-width:0;display:grid}.theme-label{color:var(--text);font-size:.95rem;font-weight:700}.theme-hint{color:var(--muted);overflow-wrap:anywhere;font-size:.8125rem}@media (width>=640px){.theme-options{grid-template-columns:repeat(3,minmax(0,1fr))}.theme-option{text-align:center;flex-direction:column;justify-content:center;padding:1rem .75rem}}.ev-filters{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;margin-bottom:1rem}.ev-filters .ev-clear{grid-column:1/-1}@media (width>=720px){.ev-filters{grid-template-columns:repeat(5,minmax(0,1fr)) auto}.ev-filters .ev-clear{grid-column:auto}}.ev-filters input,.ev-filters select{width:100%;min-width:0}.ev-error{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.ev-loading{opacity:.6}.ev-badge{white-space:nowrap;border-radius:var(--radius-sm);border:1px solid #0000;align-items:center;gap:.3rem;padding:.1rem .55rem;font-size:.8rem;font-weight:700;display:inline-flex}.ev-created,.ev-restored{color:var(--success-text);background:var(--success-bg);border-color:var(--success-border)}.ev-increased,.ev-updated,.ev-role_changed{color:var(--primary);background:var(--primary-soft)}.ev-decreased,.ev-reordered,.ev-unknown{color:var(--text);background:var(--surface-2);border-color:var(--border-strong)}.ev-deleted{color:var(--error-text);background:var(--error-bg);border-color:var(--error-border)}.ev-ownership_transferred{color:var(--text);background:var(--surface-2);border-color:var(--primary)}.ev-entity{color:var(--muted);border:1px solid var(--border);border-radius:var(--radius-sm);white-space:nowrap;padding:.1rem .5rem;font-size:.8rem;font-weight:600;display:inline-block}.ev-desc{overflow-wrap:anywhere}.ev-cards{display:none}.ev-card{flex-direction:column;gap:.4rem;padding:.9rem 1rem;display:flex}.ev-card-top{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.ev-card p{overflow-wrap:anywhere;margin:0}.ev-meta{color:var(--muted);flex-wrap:wrap;gap:.15rem .9rem;font-size:.85rem;display:flex}.ev-pager{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1rem;display:flex}.ev-pager span{color:var(--muted);font-size:.9rem}@media (width<=719px){.ev-table{display:none}.ev-cards{display:grid}.ev-pager{justify-content:center}.ev-pager span{text-align:center;flex:1 0 100%;order:-1}.ev-pager button{flex:1}}.terms{width:100%;max-width:48rem;padding:1rem var(--gutter,1rem) 3rem;margin:0 auto}.terms-back{margin:0 0 1rem}.terms-back a{align-items:center;min-height:2.5rem;display:inline-flex}.terms-doc{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);overflow-wrap:anywhere;padding:1.25rem;line-height:1.7}@media (width>=640px){.terms-doc{padding:2.5rem}}.terms-doc h1{margin:0 0 1rem;font-size:1.6rem}.terms-doc h2{margin:2rem 0 .5rem;scroll-margin-top:1rem;font-size:1.2rem}.terms-doc p,.terms-doc ul{margin:.6rem 0}.terms-doc ul{padding-left:1.25rem}.terms-doc blockquote{background:var(--surface-2);border-left:4px solid var(--border-strong);border-radius:var(--radius-sm);margin:1rem 0;padding:.25rem 1rem}.terms-doc hr{border:0;border-top:1px solid var(--border);margin:1.5rem 0}.terms-doc code{background:var(--surface-2);border-radius:var(--radius-xs);padding:.1em .35em}.terms-toc{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);margin:1rem 0;padding:.5rem 1rem}.terms-toc summary{cursor:pointer;align-items:center;min-height:2.5rem;font-weight:600;display:flex}.terms-toc ol{columns:16rem;margin:.25rem 0 .5rem;padding-left:0;list-style:none}.terms-toc a{padding:.35rem 0;display:block}.terms-doc a:focus-visible,.terms-back a:focus-visible,.terms-toc summary:focus-visible,.terms-check input:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.terms-check{align-items:center;gap:.6rem;display:flex}.terms-check input{width:1.25rem;height:1.25rem;min-height:0;accent-color:var(--primary-solid);flex:none;margin:0;padding:0}.terms-check label{margin:0;font-weight:400;line-height:1.5}.terms-doc p,.terms-doc li{color:var(--text)}.terms-doc strong{font-weight:700}
