:root{--bg:#f4f6fa;--surface:#fff;--surface-2:#f8fafc;--text:#0f172a;--text-2:#334155;--muted:#64748b;--border:#e2e8f0;--border-strong:#cbd5e1;--brand:#0f2a4a;--brand-2:#16365f;--brand-text:#fff;--accent:#2563eb;--accent-soft:#eff4ff;--ok-bg:#e7f6ee;--ok-text:#166534;--low-bg:#fff4dc;--low-text:#8a5300;--out-bg:#fdecec;--out-text:#b42318;--series-1:#2a78d6;--grid:#e8ecf2;--radius:14px;--radius-sm:10px;--shadow:0 1px 2px #0f172a0d, 0 2px 8px #0f172a0a;--tap:44px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif;line-height:1.45}@media (prefers-color-scheme:dark){:root{--bg:#0b1220;--surface:#121a2b;--surface-2:#0f1726;--text:#e6ebf3;--text-2:#c4cdda;--muted:#8b97a8;--border:#233047;--border-strong:#31415c;--brand:#0a1628;--brand-2:#13233d;--accent:#6ea0ff;--accent-soft:#15233d;--ok-bg:#12301f;--ok-text:#86e0ab;--low-bg:#382a0c;--low-text:#f3c56b;--out-bg:#3d1717;--out-text:#ff9b94;--series-1:#3987e5;--grid:#1d283c;--shadow:0 1px 2px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}h1{letter-spacing:-.02em;margin:0 0 16px;font-size:1.6rem;font-weight:700}h2{margin:0 0 12px;font-size:1.02rem;font-weight:650}a{color:var(--accent)}.muted{color:var(--muted)}.small{font-size:.85rem}.center-page{text-align:center;padding:48px 16px}.shell{--sidebar-w:224px;grid-template-columns:var(--sidebar-w) minmax(0, 1fr);min-height:100vh;display:grid}.shell.collapsed{--sidebar-w:68px}.sidebar{height:100vh;width:var(--sidebar-w);padding:14px 10px;padding-top:max(14px, env(safe-area-inset-top));background:var(--brand);color:#c9d5e6;z-index:30;flex-direction:column;grid-column:1;align-self:start;gap:4px;transition:width .18s;display:flex;position:sticky;top:0;overflow:hidden auto}.sidebar-brand{color:#fff;align-items:center;gap:10px;min-height:48px;padding:2px 7px 12px;font-weight:700;display:flex}.brand-mark{color:#fff;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.brand-name{line-height:1.2;overflow:hidden}.nav{flex-direction:column;gap:2px;display:flex}.nav-link{min-height:var(--tap);color:inherit;font:inherit;cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;width:100%;padding:0 13px;font-weight:500;text-decoration:none;display:flex}.nav-link:hover{color:#fff;background:#ffffff0f;text-decoration:none}.nav-link.active{color:#fff;background:#ffffff1f}.nav-link.active .icon{color:#8ab4ff}.icon{flex:none}.collapse-toggle{color:#8ea2bd;margin-bottom:6px}.sidebar-foot{border-top:1px solid #ffffff1a;gap:2px;margin-top:auto;padding-top:8px;display:grid}.sidebar-user{color:#8ea2bd;white-space:nowrap;text-overflow:ellipsis;padding:4px 13px;font-size:.85rem;overflow:hidden}.shell.collapsed .nav-label,.shell.collapsed .brand-name{display:none}.shell.collapsed .nav-link{justify-content:center;padding:0}.shell.collapsed .sidebar-brand{justify-content:center;padding-left:0;padding-right:0}.sidebar-scrim{display:none}.content{width:100%;max-width:1120px;padding:20px 14px calc(32px + env(safe-area-inset-bottom));grid-column:2;min-width:0;margin:0 auto}@media (width>=700px){.content{padding:28px 28px 40px}}@media (width<=699px){.shell{--sidebar-w:68px}.shell:not(.collapsed) .sidebar{width:240px;position:fixed;top:0;left:0;box-shadow:8px 0 30px #0000004d}.shell:not(.collapsed) .sidebar-scrim{z-index:25;background:#0f172a59;display:block;position:fixed;inset:0}.shell:not(.collapsed) .content{grid-column:2}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:16px}.btn{min-height:var(--tap);font:inherit;cursor:pointer;border:1px solid #0000;border-radius:10px;padding:0 18px;font-weight:600}.btn:disabled{opacity:.6;cursor:default}.btn-primary{background:var(--accent);color:#fff}.btn-ghost{border-color:var(--border);color:var(--text);background:0 0}.btn-block{width:100%}.field{gap:6px;margin-bottom:14px;font-weight:500;display:grid}input,select,textarea{font:inherit;min-height:var(--tap);border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;width:100%;padding:8px 12px;font-size:16px}textarea{resize:vertical}.alert{border-radius:10px;margin:0 0 14px;padding:10px 12px}.alert-error{background:var(--out-bg);color:var(--out-text)}.alert-ok{background:var(--ok-bg);color:var(--ok-text)}.badge{white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:.85rem;font-weight:600;display:inline-block}.badge-ok{background:var(--ok-bg);color:var(--ok-text)}.badge-low{background:var(--low-bg);color:var(--low-text)}.badge-out{background:var(--out-bg);color:var(--out-text)}.na-tag{color:var(--low-text);font-weight:700}.auth-page{place-items:center;min-height:100vh;padding:16px;display:grid}.auth-card{width:100%;max-width:380px}.auth-card h1{margin-bottom:4px}.stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px;display:grid}.stats .card{margin:0}.stat{gap:4px;display:grid}.stat-label{color:var(--muted);font-size:.875rem}.stat-value{font-size:1.4rem;font-weight:700}.plain-list,.product-list,.contact-list,.batches{margin:0;padding:0;list-style:none}.plain-list li,.batches li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.plain-list li:last-child,.batches li:last-child{border-bottom:0}.filters{grid-template-columns:1fr;gap:8px;margin-bottom:12px;display:grid}@media (width>=640px){.filters{grid-template-columns:2fr 1fr 1fr}}.product-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.product-facts{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:12px 0 0;display:grid}.product-facts dt{color:var(--muted);font-size:.8rem}.product-facts dd{margin:0;font-weight:600}.batches{border-top:1px solid var(--border);margin-top:12px}.contact-links{flex-wrap:wrap;gap:16px;margin-top:8px;display:flex}.contact-links a{min-height:var(--tap);align-items:center;display:inline-flex}.form{max-width:560px}h3{margin:18px 0 8px;font-size:1rem}.pre{white-space:pre-line;margin:0}.notes{white-space:pre-line;background:var(--bg);border-radius:8px;padding:8px 12px}.danger{color:var(--out-text)}.btn.danger{border-color:var(--out-text)}.page-header{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.page-actions{flex-wrap:wrap;gap:8px;display:flex}.page-actions .btn,a.btn{align-items:center;text-decoration:none;display:inline-flex}.back-link{min-height:32px;color:var(--muted);align-items:center;font-size:.95rem;text-decoration:none;display:inline-flex}.section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.section-head h2{margin:0}.section-head input{width:auto}.button-row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.row-end{align-items:center;gap:12px;display:inline-flex}.btn-link{min-height:var(--tap);font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0 4px}.btn-link.danger{color:var(--out-text)}.tabs{scrollbar-width:none;gap:6px;margin-bottom:12px;display:flex;overflow-x:auto}.tab{border:1px solid var(--border);background:var(--surface);min-height:40px;color:var(--text);font:inherit;cursor:pointer;border-radius:999px;flex:none;padding:0 14px;font-weight:500}.tab.active{background:var(--brand);color:var(--brand-text);border-color:var(--brand)}.tab-count{opacity:.7;margin-left:6px;font-size:.85rem}.row-list{margin:0;padding:0;list-style:none}.row-card{color:inherit;justify-content:space-between;gap:12px;margin-bottom:10px;text-decoration:none;display:flex}.row-main,.row-side{gap:2px;display:grid}.row-side{align-content:start;justify-items:end}.facts{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:8px;display:grid}.facts>div{gap:2px;display:grid}.totals{gap:4px;margin:12px 0 0;display:grid}.totals>div{justify-content:space-between;gap:12px;display:flex}.totals dt{color:var(--muted)}.totals dd{font-variant-numeric:tabular-nums;margin:0}.totals .strong dt,.totals .strong dd{color:var(--text);font-weight:700}.totals+.totals{border-top:1px solid var(--border);padding-top:8px}.total-line{justify-content:space-between;margin:12px 0 0;display:flex}.inline-form{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.field-row{grid-template-columns:1fr;gap:0 12px;display:grid}@media (width>=560px){.field-row{grid-template-columns:1fr 1fr}}.check{min-height:var(--tap);align-items:center;gap:10px;margin-bottom:6px;display:flex}.check input{width:22px;height:22px;min-height:22px}.money-input{position:relative}.money-input span{color:var(--muted);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.money-input input{padding-left:26px}.picker{margin-top:12px;position:relative}.picker-list{border:1px solid var(--border);background:var(--surface);border-radius:10px;max-height:320px;margin:4px 0 0;padding:4px;list-style:none;overflow-y:auto}.picker-list button{text-align:left;width:100%;min-height:var(--tap);color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;gap:2px;padding:10px;display:grid}.picker-list button:hover,.picker-list button:focus{background:var(--bg)}.line-list{margin:0;padding:0;list-style:none}.line{border:1px solid var(--border);border-radius:10px;margin-bottom:10px;padding:12px}.line-head{gap:2px;margin-bottom:8px;display:grid}.line-fields{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}@media (width>=640px){.line-fields{grid-template-columns:110px 1fr 1.4fr}}.line-fields .field{margin-bottom:8px}.line-foot{justify-content:space-between;align-items:center;font-weight:600;display:flex}.na-line{outline:2px dashed var(--low-text);outline-offset:-2px;border-radius:8px}.plain-list li.na-line{padding-left:8px;padding-right:8px}.sticky-actions{background:var(--bg);padding:12px 0 calc(12px + env(safe-area-inset-bottom));margin-top:0;position:sticky;bottom:0}.doc-links{margin:0;padding:0;list-style:none}.doc-links li{border-bottom:1px solid var(--border);padding:8px 0}.doc-links li:last-child{border-bottom:0}.doc-links .button-row{margin-top:6px}.segmented{border:1px solid var(--border);border-radius:10px;margin-bottom:12px;display:inline-flex;overflow:hidden}.segmented button{min-height:var(--tap);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border:0;padding:0 18px}.segmented button.active{background:var(--brand);color:var(--brand-text)}.history{border-collapse:collapse;width:100%;font-size:.95rem}.history th,.history td{border-bottom:1px solid var(--border);text-align:left;padding:8px 6px}.history th{color:var(--muted);font-size:.85rem;font-weight:500}.history .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.history .in{color:var(--ok-text)}.history .out{color:var(--out-text)}.history tr.strong td{font-weight:700}.range-bar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.range-bar input{width:auto}.stat-value.negative{color:var(--out-text)}.product-name{color:inherit;text-decoration:none}.file-button{align-items:center;display:inline-flex;position:relative;overflow:hidden}.file-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.doc-page{background:var(--bg);min-height:100vh;padding:16px}.doc-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;max-width:800px;margin:0 auto 12px;display:flex}.doc-toolbar .btn{align-items:center;text-decoration:none;display:inline-flex}.doc{color:#111;background:#fff;border:1px solid #ddd;border-radius:8px;max-width:800px;margin:0 auto;padding:32px}.doc .muted{color:#555}.doc-header{justify-content:space-between;gap:24px;margin-bottom:24px;display:flex}.doc-company h1{margin:0 0 4px;font-size:1.3rem}.doc-company p,.doc-meta p{margin:2px 0}.doc-meta{text-align:right}.doc-meta h2{margin:0 0 4px;font-size:1.4rem}.doc-number{font-weight:700}.doc-customer{gap:2px;margin-bottom:20px;display:grid}.doc-customer p{margin:0}.doc-table{border-collapse:collapse;width:100%}.doc-table th,.doc-table td{text-align:left;border-bottom:1px solid #ddd;padding:8px 6px}.doc-table th{color:#555;font-size:.85rem}.doc-table .num{text-align:right;white-space:nowrap}.doc-table .na-row td{border-top:2px dashed #8a5a00;border-bottom:2px dashed #8a5a00}.doc-totals{max-width:320px;margin-left:auto}.doc-totals dt{color:#555}.doc-footer{color:#333;border-top:1px solid #ddd;margin-top:32px;padding-top:12px;font-size:.9rem}@media (width<=560px){.doc{padding:16px}.doc-header{flex-direction:column}.doc-meta{text-align:left}}@media print{.no-print{display:none!important}body,.doc-page{background:#fff;padding:0}.doc{border:0;max-width:none;padding:0}}.facts .badge,.row-side .badge{justify-self:start}.row-side .badge{justify-self:end}.quick-actions{margin:0 0 16px}:root{--flow-order:#b45309;--flow-order-bg:#fef3c7;--flow-deliver:#1d4ed8;--flow-deliver-bg:#dbeafe;--flow-done:#15803d;--flow-done-bg:#dcfce7}@media (prefers-color-scheme:dark){:root{--flow-order:#fbbf24;--flow-order-bg:#3b2a0c;--flow-deliver:#93c5fd;--flow-deliver-bg:#172a4d;--flow-done:#86efac;--flow-done-bg:#14321f}}.badge.flow-new_order{background:var(--flow-order-bg);color:var(--flow-order)}.badge.flow-to_deliver{background:var(--flow-deliver-bg);color:var(--flow-deliver)}.badge.flow-delivered{background:var(--flow-done-bg);color:var(--flow-done)}.flow-actions{gap:10px;margin-top:14px;display:grid}.btn-flow{color:#fff;border:0;min-height:56px;font-size:1.1rem}.btn-confirm{background:#d97706}.btn-deliver{background:#16a34a}.btn-flow:disabled{opacity:.6}.btn-deliver-now{color:#fff;background:#16a34a}.create-product{justify-content:flex-start;width:100%;margin-top:8px}.new-product h3{margin-top:0}@media (width>=640px){.line-fields{grid-template-columns:100px 1fr 1fr 1.3fr}}.flow-card{color:inherit;border-width:2px;text-decoration:none}.flow-card-order{border-color:var(--flow-order);background:var(--flow-order-bg)}.flow-card-deliver{border-color:var(--flow-deliver);background:var(--flow-deliver-bg)}.ledger{margin:0;padding:0;list-style:none}.ledger li{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.ledger li:last-child{border-bottom:0}.ledger-main{gap:2px;min-width:0;display:grid}.ledger-side{text-align:right;white-space:nowrap;justify-items:end;gap:2px;display:grid}.ledger .qty{font-variant-numeric:tabular-nums;font-weight:700}.ledger .in,.money-in{color:var(--ok-text)}.ledger .out,.money-out{color:var(--out-text)}.small-seg{margin-bottom:0}.small-seg button{min-height:36px;padding:0 12px}.ledger-totals{flex-wrap:wrap;gap:16px;margin-bottom:8px;display:flex}@media (width>=640px){.filters.filters-4{grid-template-columns:2fr 1fr 1fr 1fr}.filters.filters-3{grid-template-columns:2fr 1fr 1fr}.filters.filters-2{grid-template-columns:1fr 1fr}}.period-tabs .tab{min-height:36px;font-size:.9rem}.plain-list li.editing-row{display:block}.btn-small{min-height:36px;padding:0 12px;font-size:.9rem}.card{border-color:var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.btn{border-radius:var(--radius-sm);letter-spacing:-.005em;justify-content:center;align-items:center;gap:8px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.btn-primary{background:var(--accent);box-shadow:0 1px 2px #2563eb4d}.btn-primary:hover{background:#1d4ed8}.btn-ghost{background:var(--surface);border-color:var(--border-strong)}.btn-ghost:hover{background:var(--surface-2)}input,select,textarea{border-color:var(--border-strong);border-radius:var(--radius-sm)}input:focus,select:focus,textarea:focus,.btn:focus-visible,.tab:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.field{color:var(--text-2);font-size:.92rem;font-weight:550}.page-header h1{margin:0}.page-header{margin-bottom:20px}.tab{border-color:var(--border);background:var(--surface);min-height:38px;font-size:.92rem}.tab.active{background:var(--text);border-color:var(--text);color:var(--surface)}.stats{gap:14px}.stat{gap:6px}.stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.75rem;font-weight:650}.stat-value{letter-spacing:-.02em;font-size:1.55rem;font-weight:700}.stat-note{color:var(--muted);font-size:.85rem}.delta{font-size:.82rem;font-weight:650}.delta.up{color:var(--ok-text)}.delta.down{color:var(--out-text)}.badge{padding:3px 10px;font-size:.78rem}.row-card{padding:14px 16px;transition:border-color .15s,box-shadow .15s}.row-card:hover{border-color:var(--border-strong);box-shadow:0 4px 14px #0f172a0f}.history th{text-transform:uppercase;letter-spacing:.05em;font-size:.74rem;font-weight:650}.history td{border-bottom-color:var(--grid)}.section-title{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 12px;font-size:.78rem;font-weight:700}.dash-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:20px;display:flex}.dash-head h1{margin:0}.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}@media (width>=900px){.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}.kpi{gap:6px;margin:0;display:grid}.kpi .stat-value{font-size:1.7rem}.kpi-icon{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:10px;place-items:center;display:grid}.kpi-top{justify-content:space-between;align-items:center;display:flex}.dash-grid{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}@media (width>=1000px){.dash-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}}.dash-grid .card{margin:0}.dash-col{align-content:start;gap:18px;display:grid}.chart{position:relative}.chart svg{width:100%;height:auto;display:block;overflow:visible}.chart .grid-line{stroke:var(--grid);stroke-width:1px}.chart .axis-text{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.chart .bar{fill:var(--series-1)}.chart .bar-hit{fill:#0000;cursor:pointer}.chart .bar-hit:hover+.bar,.chart .bar.active{fill:#1d4ed8}.chart-tip{pointer-events:none;background:var(--text);color:var(--surface);white-space:nowrap;border-radius:8px;padding:6px 10px;font-size:.82rem;position:absolute;transform:translate(-50%,-110%);box-shadow:0 6px 18px #0f172a33}.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}.balance-hero{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:18px;display:grid}.balance-hero .card{margin:0}.balance-total{background:var(--brand);color:#fff;border-color:var(--brand)}.balance-total .stat-label{color:#9fb3cf}.action-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:18px;display:grid}.action-tile{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-height:56px;color:var(--text);font:inherit;cursor:pointer;text-align:left;box-shadow:var(--shadow);align-items:center;gap:10px;padding:0 14px;font-weight:600;display:flex}.action-tile:hover{border-color:var(--accent)}.action-tile .icon{color:var(--accent)}.statement{border-collapse:collapse;width:100%}.statement td{border-bottom:1px solid var(--grid);padding:8px 4px}.statement td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.statement tr.sub td{color:var(--muted);padding-left:16px}.statement tr.total td{border-top:2px solid var(--border-strong);border-bottom:0;font-weight:700}.statement tr.head td{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding-top:18px;font-size:.78rem;font-weight:700}.check-ok{color:var(--ok-text);font-weight:650}.check-bad{color:var(--out-text);font-weight:650}.money-form{border-color:var(--accent)}.kpi-link,.flow-card{color:inherit;text-decoration:none}.kpi-link:hover{border-color:var(--border-strong);box-shadow:0 4px 14px #0f172a12}a{font-weight:500;text-decoration:none}a:hover{text-decoration:underline}.btn:hover,.nav-link:hover,.row-card:hover,.kpi-link:hover,.flow-card:hover{text-decoration:none}.facts>div{justify-items:start}.badge-new{color:#fff;background:#dc2626;font-weight:700}.row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.spacer{flex:1}.cat-admin-filters{gap:10px;margin-bottom:12px;display:grid}.cat-admin-filters input{max-width:420px}.cat-admin-list{gap:10px;display:grid}.cat-admin-row{grid-template-columns:84px minmax(0,1fr);align-items:center;gap:14px;margin:0;padding:12px;display:grid}.cat-admin-row.off{opacity:.7}.cat-admin-row.off .cat-admin-photo{filter:grayscale()}.cat-admin-photo{border:1px dashed var(--border-strong);cursor:pointer;background:#fff;border-radius:12px;place-items:center;width:84px;height:84px;display:grid;overflow:hidden}.cat-admin-photo img{object-fit:contain;width:100%;height:100%}.cat-admin-nophoto{color:var(--muted);justify-items:center;gap:2px;font-size:.75rem;display:grid}.cat-admin-info{gap:4px;min-width:0;display:grid}.cat-admin-name{color:var(--text);font-weight:650;text-decoration:none}.cat-admin-controls{flex-wrap:wrap;align-items:center;gap:4px 16px;display:flex}.cat-admin-controls .check{min-height:40px;margin:0}.cat-admin-controls select{width:auto;min-height:40px}.cat-admin-banners{grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));gap:16px;display:grid}.cat-admin-banner{gap:8px;display:grid}.cat-admin-banner-bar{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.cat.cat-preview{background:0 0;min-height:0;display:block}.cat-preview .cat-hero-slide{border-radius:14px;min-height:180px}.cat-preview .cat-hero-text{padding:24px 28px}.cat-preview .cat-hero-text h2{font-size:1.5rem}.cat-preview .cat-promo{cursor:default;max-width:360px}.swatches{flex-wrap:wrap;gap:10px;display:flex}.swatch{background:linear-gradient(135deg, var(--b1), var(--b2));color:#fff;cursor:pointer;border:3px solid #0000;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.swatch.active{border-color:var(--text)}.fieldset{border:1px solid var(--border);border-radius:var(--radius-sm);gap:12px;min-width:0;margin:4px 0;padding:12px 14px 14px;display:grid}.fieldset legend{padding:0 6px;font-weight:650}.nav-link{position:relative}.nav-badge{color:#fff;text-align:center;background:#dc2626;border-radius:999px;min-width:22px;height:22px;margin-left:auto;padding:0 7px;font-size:.75rem;font-weight:700;line-height:22px}.shell.collapsed .nav-badge{min-width:18px;height:18px;margin:0;padding:0 5px;font-size:.68rem;line-height:18px;position:absolute;top:3px;right:6px}.row-main .badge-new{vertical-align:2px;margin-left:8px;font-size:.72rem}.catalogue-contact{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);justify-items:start;gap:6px;margin:12px 0;padding:12px 14px;display:grid}.catalogue-contact p{margin:0}.tab-new{margin-left:6px;padding:1px 8px;font-size:.72rem}.cat.cat-preview{margin-bottom:8px}.new-orders-alert{border-radius:var(--radius);color:#fff;box-shadow:var(--shadow);background:#dc2626;align-items:center;gap:14px;margin-bottom:18px;padding:14px 18px;text-decoration:none;display:flex}.new-orders-alert:hover{background:#b91c1c;text-decoration:none}.new-orders-alert>span{display:grid}.segmented{flex-wrap:wrap;max-width:100%}.pick-list{gap:8px;display:grid}.pick{text-align:left;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;gap:2px;padding:12px 14px;display:grid}.pick.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent);background:var(--accent-soft)}.pick-owed{font-weight:650}.owner-filters{grid-template-columns:1fr;gap:10px;display:grid}@media (width>=700px){.owner-filters{grid-template-columns:2fr 1.3fr 1fr}}.inline-date{align-items:center;gap:8px;display:flex}.inline-date span{color:var(--muted);min-width:36px;font-size:.9rem}.inline-date input{flex:1;min-width:0}.ledger li.investment-row{display:block}.investment-head{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;gap:12px;padding:0;display:flex}.repayments{border-radius:var(--radius-sm);background:var(--surface-2);margin:10px 0 0;padding:8px 12px;list-style:none}.ledger .repayments li{padding:6px 0;font-size:.92rem}.chart .zero-line{stroke:var(--border-strong);stroke-width:1px}.chart .crosshair{stroke:var(--border-strong);stroke-width:1px;stroke-dasharray:3 3}.chart .trend-line{fill:none;stroke:var(--series-1);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.chart .trend-dot{fill:var(--series-1);stroke:var(--surface);stroke-width:2px}.chart .trend-dot.active{fill:#1d4ed8}.trend-controls{gap:10px;margin-bottom:14px;display:grid}.trend-controls .row-actions{gap:6px}.trend-tiles{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin-bottom:14px;display:grid}.trend-tile{text-align:left;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;box-shadow:var(--shadow);gap:2px;padding:12px 14px;display:grid}.trend-tile.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.trend-tile .stat-label{font-size:.82rem}.trend-tile strong{font-variant-numeric:tabular-nums;font-size:1.2rem}.trend-facts{color:var(--text-2);flex-wrap:wrap;gap:6px 20px;margin-top:10px;font-size:.92rem;display:flex}.back-bar{margin:-6px 0 6px}.back-button{border:1px solid var(--border);background:var(--surface);min-height:40px;color:var(--text);font:inherit;cursor:pointer;box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:4px;padding:0 14px 0 8px;font-weight:600;display:inline-flex}.back-button:hover{border-color:var(--border-strong)}.investment-head .ledger-side,.investment-head .badge{align-self:start}.money-form .segmented{display:flex}.money-form .segmented button{flex:auto}.cat-admin-row:has(.offer-editor){grid-template-columns:84px minmax(0,1fr)}.offer-editor{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);grid-column:1/-1;gap:12px;padding:14px;display:grid}.offer-editor h3{margin:0;font-size:1rem}.offer-kinds{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.offer-kind{text-align:left;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;gap:2px;padding:10px 12px;display:grid}.offer-kind.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent);background:var(--accent-soft)}.offer-preview{flex-wrap:wrap;align-items:center;gap:6px;margin:0;display:flex}.offer-chip{background:var(--out-bg);min-height:40px;color:var(--out-text);font:inherit;cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:4px 10px;display:inline-flex}.offer-reminder{border-radius:var(--radius-sm);background:var(--low-bg);color:var(--low-text);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin:8px 0 4px;padding:8px 12px;font-size:.92rem;display:flex}.free-delivery{color:var(--muted);margin:0;font-weight:600}.free-delivery.yes{color:var(--ok-text)}.delivery-control{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:10px;display:flex}.line.delivery-line{background:var(--surface-2)}.stock-filters{grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:8px;margin-bottom:8px;display:grid}.stock-filters .stock-search{grid-column:1/-1}.stock-count{margin-bottom:10px}.card.product.expiring{border-left:4px solid #f59e0b}.card.product.expired{border-left:4px solid #dc2626}.clearance-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:12px;display:grid}.clearance-card{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);border-left:4px solid #f59e0b;gap:10px;padding:14px;display:grid}.clearance-card.urgent,.clearance-card.expired{border-left-color:#dc2626}.clearance-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.clearance-batches{gap:2px;margin:0;padding:0;font-size:.92rem;list-style:none;display:grid}.clearance-offer{flex-wrap:wrap;align-items:flex-end;gap:8px 16px;display:flex}.clearance-offer .field{margin:0}.percent-input{align-items:center;gap:6px;display:inline-flex}.percent-input input{width:90px}.clearance-price{margin:0 0 10px}.delivery-defaults{grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr));gap:10px;display:grid}.vat-picker{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.vat-picker select{flex:220px}.vat-boxes .vat-box-no{white-space:nowrap;color:var(--muted);width:1%;font-weight:650}@media print{.no-print,.sidebar,.back-bar,.tabs{display:none!important}.shell{display:block}}.overdue-note{color:var(--out-text);font-weight:650}.aged-buckets{flex-wrap:wrap;gap:4px 6px;margin-top:4px;display:flex}.new-orders-alert.overdue-alert{background:#b45309}.new-orders-alert.overdue-alert:hover{background:#92400e}.table-scroll{margin:12px 0;overflow-x:auto}.import-preview td,.import-preview th{white-space:nowrap}.import-bad td{background:var(--out-bg)}.import-problems{color:var(--out-text);white-space:normal;min-width:220px;font-weight:600;display:inline-block}.count-list{margin:0;padding:0;list-style:none}.count-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.count-row:last-child{border-bottom:0}.count-name{flex-direction:column;gap:2px;min-width:0;display:flex}.count-entry{flex-shrink:0;align-items:center;gap:10px;display:flex}.count-entry input{text-align:right;width:96px;font-size:1.15rem}.order-toast{z-index:50;background:var(--surface,#fff);border:1px solid var(--border);border-left:4px solid var(--accent,#2563eb);border-radius:12px;flex-direction:column;gap:10px;max-width:min(360px,100vw - 32px);padding:14px 16px;display:flex;position:fixed;bottom:16px;right:16px;box-shadow:0 10px 30px #0000002e}@media print{.order-toast{display:none}}.print-only{display:none}@media print{.print-only{display:block}.page-header,.filters{display:none!important}}.pick-list{margin:0;padding:0;list-style:none}.pick-product{border-bottom:1px solid var(--border);break-inside:avoid;padding:12px 0}.pick-product:last-child{border-bottom:0}.pick-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pick-total{white-space:nowrap;font-size:1.15rem;font-weight:700}.pick-orders{margin:6px 0 4px;padding:0;list-style:none}.pick-orders .check{margin:0}.pick-orders li.picked span{color:var(--muted,#64748b);text-decoration:line-through}
