:root{--bg:#f4f6f9;--panel:#fff;--panel-2:#f8fafc;--text:#0f172a;--text-2:#334155;--muted:#64748b;--line:#e2e8f0;--line-2:#eef2f6;--brand:#0f766e;--brand-2:#14b8a6;--brand-soft:#ccfbf1;--brand-ink:#fff;--danger:#dc2626;--danger-soft:#fee2e2;--warn:#b45309;--warn-soft:#fef3c7;--ok:#15803d;--ok-soft:#dcfce7;--info:#0369a1;--info-soft:#e0f2fe;--radius:12px;--radius-sm:8px;--radius-lg:16px;--shadow-sm:0 1px 2px #0f172a0f;--shadow:0 1px 3px #0f172a0f, 0 4px 12px -4px #0f172a14;--shadow-lg:0 12px 40px -12px #0f172a40;--ring:0 0 0 3px color-mix(in srgb, var(--brand-2) 35%, transparent);--sidebar-w:256px;--topbar-h:60px;--font:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--ease:cubic-bezier(.2, .8, .2, 1);--fast:.15s;--normal:.22s;font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:15px;line-height:1.5}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1220;--panel:#111a2c;--panel-2:#0f172a;--text:#e5e9f0;--text-2:#cbd5e1;--muted:#8b9bb4;--line:#223047;--line-2:#1a2537;--brand:#2dd4bf;--brand-2:#14b8a6;--brand-soft:#0f2f2c;--brand-ink:#041412;--danger:#f87171;--danger-soft:#3b1515;--warn:#fbbf24;--warn-soft:#3a2a08;--ok:#4ade80;--ok-soft:#0f2e1a;--info:#38bdf8;--info-soft:#0b2a3a;--shadow-sm:none;--shadow:0 1px 0 #ffffff08 inset;--shadow-lg:0 20px 50px -20px #0009}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1220;--panel:#111a2c;--panel-2:#0f172a;--text:#e5e9f0;--text-2:#cbd5e1;--muted:#8b9bb4;--line:#223047;--line-2:#1a2537;--brand:#2dd4bf;--brand-2:#14b8a6;--brand-soft:#0f2f2c;--brand-ink:#041412;--danger:#f87171;--danger-soft:#3b1515;--warn:#fbbf24;--warn-soft:#3a2a08;--ok:#4ade80;--ok-soft:#0f2e1a;--info:#38bdf8;--info-soft:#0b2a3a;--shadow-sm:none;--shadow:0 1px 0 #ffffff08 inset;--shadow-lg:0 20px 50px -20px #0009}}*,:before,:after{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--text);min-height:100vh}a{color:var(--brand);text-decoration:none}a:hover{text-underline-offset:2px;text-decoration:underline}h1{letter-spacing:-.02em;margin:0;font-size:1.5rem;font-weight:700;line-height:1.25}h2{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 .9rem;font-size:.8rem;font-weight:600}h3{margin:0 0 .5rem;font-size:1rem;font-weight:600}p{margin:0 0 .75rem}small{color:var(--muted);font-size:.8rem}:focus-visible{box-shadow:var(--ring);border-radius:var(--radius-sm);outline:none}svg.lucide{flex-shrink:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:0s!important;animation-duration:0s!important}}.shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);min-height:100vh;display:grid}.shell-body{flex-direction:column;min-width:0;display:flex}.sidebar{background:var(--panel);border-right:1px solid var(--line);flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-head{padding:1.1rem 1.25rem .75rem}.brand{color:var(--text);letter-spacing:-.02em;align-items:center;gap:.6rem;font-size:1.2rem;font-weight:800;display:flex}.brand .halo{border:5px solid var(--brand-2);width:28px;height:28px;box-shadow:0 0 0 4px color-mix(in srgb, var(--brand-2) 22%, transparent), inset 0 0 0 2px var(--panel);background:0 0;border-radius:50%}.brand .halo-sm{border-width:4px;width:22px;height:22px}.nav{flex-direction:column;gap:2px;padding:.25rem .75rem 1rem;display:flex}.nav .section{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:1rem .6rem .35rem;font-size:.68rem;font-weight:600}.nav a{border-radius:var(--radius-sm);color:var(--text-2);transition:background var(--fast) var(--ease), color var(--fast) var(--ease);align-items:center;gap:.7rem;padding:.55rem .7rem;font-size:.92rem;font-weight:500;display:flex;position:relative}.nav a svg{color:var(--muted);transition:color var(--fast) var(--ease)}.nav a:hover{background:color-mix(in srgb, var(--text) 5%, transparent);color:var(--text);text-decoration:none}.nav a:hover svg{color:var(--text)}.nav a.active{background:color-mix(in srgb, var(--brand) 12%, transparent);color:var(--brand);font-weight:600}.nav a.active svg{color:var(--brand)}.nav a.active:before{content:"";background:var(--brand);border-radius:0 3px 3px 0;width:3px;position:absolute;top:20%;bottom:20%;left:-.75rem}.sidebar-foot{border-top:1px solid var(--line);align-items:center;gap:.7rem;margin-top:auto;padding:.9rem 1rem;display:flex}.avatar{width:36px;height:36px;color:var(--brand-ink);background:linear-gradient(135deg, var(--brand), var(--brand-2));border-radius:50%;flex-shrink:0;place-items:center;font-size:.85rem;font-weight:700;display:grid}.avatar-sm{width:30px;height:30px;font-size:.75rem}.who{flex:1;min-width:0;line-height:1.25}.who b{white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;display:block;overflow:hidden}.who span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;display:block;overflow:hidden}.icon-btn{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--muted);cursor:pointer;transition:background var(--fast) var(--ease), color var(--fast) var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:color-mix(in srgb, var(--text) 6%, transparent);color:var(--text)}.icon-btn.active{color:var(--brand);background:color-mix(in srgb, var(--brand) 12%, transparent)}.topbar{height:var(--topbar-h);background:color-mix(in srgb, var(--panel) 85%, transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);z-index:10;align-items:center;gap:.75rem;padding:0 1.5rem;display:flex;position:sticky;top:0}.topbar .menu-btn{display:none}.crumbs{color:var(--muted);align-items:center;gap:.4rem;min-width:0;font-size:.88rem;display:flex}.crumbs>span,.crumbs>a{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.crumbs b{color:var(--text);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;font-weight:600;overflow:hidden}.crumbs svg{color:var(--muted)}.topbar-actions{align-items:center;gap:.35rem;margin-left:auto;display:flex}.seg{background:color-mix(in srgb, var(--text) 6%, transparent);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.seg button{width:30px;height:26px;color:var(--muted);cursor:pointer;transition:all var(--fast) var(--ease);background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.seg button.active{background:var(--panel);color:var(--brand);box-shadow:var(--shadow-sm)}.seg button:hover:not(.active){color:var(--text)}.backdrop{display:none}.main{width:100%;max-width:1280px;animation:fade-in var(--normal) var(--ease);margin:0 auto;padding:1.75rem 2rem 3rem}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (width<=900px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{z-index:30;width:min(300px,84vw);transition:transform var(--normal) var(--ease);box-shadow:none;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.sidebar.open{box-shadow:var(--shadow-lg);transform:none}.backdrop{z-index:25;opacity:0;pointer-events:none;transition:opacity var(--normal) var(--ease);background:#02061773;display:block;position:fixed;inset:0}.backdrop.show{opacity:1;pointer-events:auto}.topbar{padding:0 1rem}.topbar .menu-btn{display:inline-flex}.main{padding:1.25rem 1rem 2.5rem}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.page-head .sub{color:var(--muted);margin:.25rem 0 0;font-size:.92rem}.page-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:1.25rem;padding:1.25rem}.card>h2{border-bottom:1px solid var(--line-2);margin-bottom:1rem;padding-bottom:.75rem}.card.tight{padding:0;overflow:hidden}.card.tight>h2{margin:0;padding:1rem 1.25rem}.grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.stats{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.25rem;display:grid}@media (width<=1100px){.stats{grid-template-columns:repeat(2,1fr)}}@media (width<=420px){.stats{grid-template-columns:1fr}}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));align-items:start;gap:1.25rem;display:grid}.grid-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:1rem;display:grid}.stat{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:box-shadow var(--fast) var(--ease), transform var(--fast) var(--ease);grid-template-columns:1fr auto;grid-template-areas:"label icon""value icon";gap:.25rem .75rem;padding:1.1rem 1.25rem;display:grid}.stat:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;grid-area:label;font-size:.78rem;font-weight:600}.stat-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;grid-area:value;font-size:1.7rem;font-weight:700;line-height:1.15}.stat-icon{background:color-mix(in srgb, var(--brand) 12%, transparent);width:40px;height:40px;color:var(--brand);border-radius:10px;grid-area:icon;align-self:start;place-items:center;display:grid}.stat.warn .stat-value{color:var(--warn)}.stat.warn .stat-icon{background:var(--warn-soft);color:var(--warn)}.stat.bad .stat-value{color:var(--danger)}.stat.bad .stat-icon{background:var(--danger-soft);color:var(--danger)}.stat.ok .stat-value{color:var(--ok)}.stat.ok .stat-icon{background:var(--ok-soft);color:var(--ok)}.form{flex-direction:column;gap:1rem;display:flex}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.field{flex-direction:column;gap:.35rem;display:flex}.field-label{color:var(--text-2);font-size:.84rem;font-weight:600}.field small{line-height:1.35}.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:var(--danger)}.field small.error{color:var(--danger)}input,select,textarea{font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);color:var(--text);width:100%;min-height:40px;transition:border-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);padding:.55rem .75rem}textarea{resize:vertical;min-height:80px}input::placeholder,textarea::placeholder{color:color-mix(in srgb, var(--muted) 80%, transparent)}input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb, var(--muted) 60%, var(--line))}input:focus,select:focus,textarea:focus{border-color:var(--brand-2);box-shadow:var(--ring);outline:none}input[type=checkbox],input[type=radio]{width:16px;height:16px;min-height:0;accent-color:var(--brand);margin:0}select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='m6 9 6 6 6-6'/></svg>");background-position:right .6rem center;background-repeat:no-repeat;padding-right:2rem}.check{cursor:pointer;align-items:center;gap:.55rem;font-size:.92rem;display:flex}.checks{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.5rem;display:grid}.form-actions{justify-content:flex-end;align-items:center;gap:.5rem;padding-top:.25rem;display:flex}.btn{font:inherit;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;min-height:40px;transition:background var(--fast) var(--ease), border-color var(--fast) var(--ease), color var(--fast) var(--ease), box-shadow var(--fast) var(--ease), transform var(--fast) var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:.45rem;padding:.55rem 1rem;font-size:.9rem;font-weight:600;line-height:1.2;display:inline-flex;text-decoration:none!important}.btn:active:not(:disabled){transform:translateY(1px)}.btn-primary{background:var(--brand);color:var(--brand-ink);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:color-mix(in srgb, var(--brand) 88%, black)}.btn-ghost{background:var(--panel);border-color:var(--line);color:var(--text-2)}.btn-ghost:hover{background:color-mix(in srgb, var(--text) 5%, var(--panel));border-color:color-mix(in srgb, var(--muted) 50%, var(--line));color:var(--text)}.btn-danger{border-color:color-mix(in srgb, var(--danger) 40%, transparent);color:var(--danger);background:0 0}.btn-danger:hover{background:var(--danger);color:#fff}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-sm{border-radius:7px;min-height:30px;padding:.3rem .65rem;font-size:.82rem}.btn-sm svg{width:14px;height:14px}.spinner{border:2px solid color-mix(in srgb, currentColor 30%, transparent);border-top-color:currentColor;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.table-wrap{margin:-.25rem -1.25rem;padding:0 1.25rem;overflow-x:auto}.card.tight .table-wrap{margin:0;padding:0}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--line-2);vertical-align:middle;padding:.65rem .75rem}th{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;background:var(--panel);font-size:.74rem;font-weight:600;position:sticky;top:0}thead th{border-bottom:1px solid var(--line)}tbody tr:last-child td{border-bottom:none}td.right,th.right{text-align:right;font-variant-numeric:tabular-nums}td.empty{text-align:center;color:var(--muted);padding:2.5rem 1rem}tbody tr{transition:background var(--fast) var(--ease)}tbody tr:hover td{background:color-mix(in srgb, var(--text) 3%, transparent)}td .btn+.btn,td .btn+a,td a+.btn{margin-left:.35rem}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86em}td .mono,td a.mono{background:color-mix(in srgb, var(--text) 5%, transparent);border-radius:5px;padding:.1rem .4rem}td a.mono{color:var(--brand)}.empty-state{text-align:center;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:2.5rem 1rem;display:flex}.empty-state svg{color:color-mix(in srgb, var(--muted) 55%, transparent)}.empty-state p{margin:0;font-size:.92rem}.skeleton{background:linear-gradient(90deg, color-mix(in srgb, var(--text) 6%, transparent) 25%, color-mix(in srgb, var(--text) 10%, transparent) 50%, color-mix(in srgb, var(--text) 6%, transparent) 75%);background-size:200% 100%;border-radius:6px;height:14px;animation:1.4s ease-in-out infinite shimmer;display:block}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.alert{border-radius:var(--radius-sm);border:1px solid #0000;align-items:flex-start;gap:.6rem;padding:.75rem .9rem;font-size:.9rem;display:flex}.alert svg{flex-shrink:0;margin-top:1px}.alert-error{background:var(--danger-soft);color:var(--danger);border-color:color-mix(in srgb, var(--danger) 25%, transparent)}.alert-ok{background:var(--ok-soft);color:var(--ok);border-color:color-mix(in srgb, var(--ok) 25%, transparent)}.alert-warn{background:var(--warn-soft);color:var(--warn);border-color:color-mix(in srgb, var(--warn) 25%, transparent)}.alert-info{background:var(--info-soft);color:var(--info);border-color:color-mix(in srgb, var(--info) 25%, transparent)}.badge{background:color-mix(in srgb, var(--text) 8%, transparent);color:var(--text-2);white-space:nowrap;border-radius:999px;align-items:center;gap:.35rem;padding:.12rem .55rem;font-size:.74rem;font-weight:600;line-height:1.5;display:inline-flex}.badge:before{content:"";opacity:.7;background:currentColor;border-radius:50%;width:6px;height:6px}.badge.ok{background:var(--ok-soft);color:var(--ok)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.bad{background:var(--danger-soft);color:var(--danger)}.badge.muted{color:var(--muted)}.badge.info{background:var(--info-soft);color:var(--info)}.plain-list{gap:.25rem;margin:.2rem 0 0;padding:0;font-size:.86rem;list-style:none;display:grid}.toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.toolbar input:not([type=checkbox]):not([type=radio]),.toolbar select{width:auto;min-width:220px}.muted{color:var(--muted)}.accent{color:var(--brand)}.link-row{text-align:center;color:var(--muted);margin-top:1.25rem;font-size:.9rem}.kv{gap:.4rem;font-size:.92rem;display:grid}.kv .muted{min-width:7.5rem;display:inline-block}.auth-shell{background:var(--bg);grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.auth-side{color:#fff;background:radial-gradient(900px 500px at 10% 0,#2dd4bf73,#0000 60%),radial-gradient(700px 500px at 100% 100%,#0f766e8c,#0000 60%),linear-gradient(160deg,#0f172a,#134e4a);flex-direction:column;justify-content:space-between;padding:2.5rem;display:flex;position:relative;overflow:hidden}.auth-side .brand{color:#fff;font-size:1.35rem}.auth-side .brand .halo{border-color:#5eead4;box-shadow:0 0 0 4px #5eead440,inset 0 0 0 2px #0f172a}.auth-side h2{color:#fff;text-transform:none;letter-spacing:-.02em;max-width:22ch;margin:0 0 1rem;font-size:2rem;font-weight:700;line-height:1.15}.auth-side p{color:#ffffffbf;max-width:44ch;font-size:1rem}.auth-feats{gap:.8rem;margin-top:1.5rem;display:grid}.auth-feat{color:#ffffffe6;align-items:center;gap:.75rem;font-size:.92rem;display:flex}.auth-feat span:first-child{background:#ffffff1a;border:1px solid #ffffff26;border-radius:9px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.auth-side small{color:#ffffff8c}.auth-form{place-items:center;padding:2rem 1rem;display:grid}.auth-card{width:100%;max-width:420px;box-shadow:var(--shadow);padding:2rem}.auth-card .brand{display:none}.auth-card h1{margin-bottom:.25rem;font-size:1.35rem}.tagline{color:var(--muted);margin:0 0 1.5rem;font-size:.92rem}.tenant-list{flex-direction:column;gap:.5rem;margin-top:1rem;display:flex}.tenant-btn{text-align:left;justify-content:space-between;min-height:52px;padding:.8rem 1rem}.tenant-btn small{text-transform:capitalize}@media (width<=900px){.auth-shell{grid-template-columns:1fr}.auth-side{display:none}.auth-card .brand{justify-content:center;margin-bottom:1rem;display:flex}.auth-card h1,.auth-card .tagline{text-align:center}}.task{text-align:center;padding:1rem 0 .5rem}.task-loc{letter-spacing:.05em;color:var(--brand);font-size:2.6rem;font-weight:800}.task-prod{margin-top:.25rem;font-size:1.1rem}.task-qty{margin-top:.25rem;font-size:1.6rem;font-weight:700}.picker{flex-direction:column;gap:.35rem;display:flex;position:relative}.picker-input{display:block;position:relative}.picker-input svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:.7rem;transform:translateY(-50%)}.picker-input input{padding-left:2.1rem}.picker-input svg.spin{animation:.7s linear infinite spin}.picker-list{z-index:40;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);max-height:320px;margin:0;padding:.3rem;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.picker-list li{cursor:pointer;border-radius:6px;align-items:center;gap:.6rem;min-width:0;padding:.5rem .6rem;font-size:.9rem;display:flex}.picker-list li.active{background:color-mix(in srgb, var(--brand) 12%, transparent)}.picker-list li .mono{background:color-mix(in srgb, var(--text) 6%, transparent);border-radius:5px;flex-shrink:0;padding:.1rem .4rem}.picker-list li.active b.mono{color:var(--brand)}.picker-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.picker-empty{color:var(--muted);cursor:default!important}.picker-empty:hover{background:0 0}.picker-selected{border:1px solid var(--brand-2);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--brand) 7%, var(--panel));flex-direction:row;align-items:center;gap:.5rem;min-height:40px;padding:.3rem .3rem .3rem .75rem}.picker-value{flex:1;align-items:center;gap:.6rem;min-width:0;font-size:.92rem;display:flex}.picker-value b.mono{color:var(--brand);flex-shrink:0}.picker-selected .icon-btn{width:30px;height:30px}.msgrid{flex-direction:column;gap:.5rem;display:flex}.msgrid-bar{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.msgrid-bar .search{flex:1;min-width:180px}.msgrid-count{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.84rem}.msgrid-body{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);overflow-y:auto}.msgrid-body table{border-collapse:collapse;width:100%}.msgrid-body thead th{z-index:1;background:var(--panel-2);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);text-align:left;border-bottom:1px solid var(--line);padding:.5rem .7rem;font-size:.74rem;font-weight:600;position:sticky;top:0}.msgrid-body tbody td{border-bottom:1px solid var(--line-2);padding:.4rem .7rem;font-size:.9rem}.msgrid-body tbody tr{cursor:pointer;transition:background var(--fast) var(--ease)}.msgrid-body tbody tr:hover{background:color-mix(in srgb, var(--text) 4%, transparent)}.msgrid-body tbody tr.selected{background:color-mix(in srgb, var(--brand) 9%, transparent)}.msgrid-body tbody tr.selected .mono{color:var(--brand);font-weight:600}.msgrid-body td.empty{text-align:center;padding:1.25rem}body.no-scroll{overflow:hidden}.drawer-backdrop{z-index:45;opacity:0;pointer-events:none;transition:opacity var(--normal) var(--ease);background:#02061773;position:fixed;inset:0}.drawer-backdrop.show{opacity:1;pointer-events:auto}.drawer{z-index:50;background:var(--panel);border-left:1px solid var(--line);width:min(560px,100vw);box-shadow:var(--shadow-lg);transition:transform var(--normal) var(--ease);visibility:hidden;flex-direction:column;display:flex;position:fixed;inset:0 0 0 auto;transform:translate(100%)}.drawer.open{visibility:visible;transform:none}.drawer:focus{outline:none}.drawer-head{border-bottom:1px solid var(--line);align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;display:flex}.drawer-title{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.drawer-title b{font-size:1.02rem}.drawer-title span{font-size:.86rem}.drawer-body{flex-direction:column;flex:1;gap:1.1rem;padding:1.25rem;display:flex;overflow-y:auto}.drawer-body h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .5rem;font-size:.8rem}.drawer-foot{border-top:1px solid var(--line);background:var(--panel-2);justify-content:flex-end;gap:.6rem;padding:.9rem 1.25rem;display:flex}.drawer-section{flex-direction:column;display:flex}.row-actions{flex-wrap:wrap;justify-content:flex-end;gap:.35rem;display:inline-flex}.msgrid-bar .search{flex:12rem}.msgrid-meta{align-items:center;gap:.5rem;margin-left:auto;display:flex}.photo-img{object-fit:cover;border-radius:var(--radius-sm);background:var(--panel-2);display:block}.photo-ph{border-radius:var(--radius-sm);background:var(--panel-2);color:var(--muted);border:1px solid var(--line-2);justify-content:center;align-items:center;display:inline-flex}.photo-ph.is-loading{background:linear-gradient(90deg, var(--panel-2) 25%, color-mix(in srgb, var(--text) 6%, var(--panel-2)) 37%, var(--panel-2) 63%);background-size:400% 100%;animation:1.4s infinite shimmer}.photos{flex-direction:column;gap:.75rem;display:flex}.photos-hero{flex-direction:column;align-items:center;gap:.4rem;display:flex}.photos-hero .photo-img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:260px}.photos-empty{border:1px dashed var(--line);border-radius:var(--radius-sm);min-height:160px;color:var(--muted);justify-content:center;align-items:center;gap:.5rem}.photos-strip{flex-wrap:wrap;gap:.5rem;display:flex}.photos-thumb{position:relative}.photos-thumb>button{border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:2px solid #0000;padding:0;line-height:0;position:relative}.photos-thumb.is-active>button{border-color:var(--brand)}.photos-badge{background:var(--brand);color:#fff;border-radius:50%;place-items:center;width:17px;height:17px;display:grid;position:absolute;bottom:2px;left:2px}.photos-acts{background:color-mix(in srgb, var(--panel) 85%, transparent);border-radius:var(--radius-sm);gap:.1rem;display:none;position:absolute;top:2px;right:2px}.photos-thumb:hover .photos-acts,.photos-thumb:focus-within .photos-acts{display:flex}.photos-bar{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.cell-thumb{align-items:center;display:inline-flex}.ordered{flex-direction:column;gap:.5rem;display:flex}.ordered-list{border:1px solid var(--line);border-radius:var(--radius-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ordered-list li{border-bottom:1px solid var(--line-2);align-items:center;gap:.6rem;padding:.35rem .6rem;font-size:.9rem;display:flex}.ordered-list li:last-child{border-bottom:none}.ordered-prio{background:color-mix(in srgb, var(--brand) 12%, transparent);min-width:1.4rem;height:1.4rem;color:var(--brand);border-radius:999px;place-items:center;font-size:.74rem;font-weight:700;display:inline-grid}.ordered-list .muted{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ordered-actions{gap:.15rem;display:inline-flex}.stepper{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);margin:0 0 1.25rem;padding:0;list-style:none;display:flex;overflow:hidden}.stepper .step{border-right:1px solid var(--line);flex:1;min-width:0}.stepper .step:last-child{border-right:none}.step-btn{width:100%;font:inherit;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.6rem;padding:.7rem .9rem;display:flex}.step-btn:disabled{cursor:default}.step-n{background:color-mix(in srgb, var(--text) 7%, transparent);border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:.72rem;font-weight:700;display:grid}.step-label{white-space:nowrap;text-overflow:ellipsis;flex-direction:column;min-width:0;font-size:.88rem;font-weight:500;display:flex;overflow:hidden}.step-sub{color:var(--muted);font-size:.74rem;font-weight:500}.step.done .step-btn{color:var(--brand)}.step.done .step-n{background:var(--brand-soft);color:var(--brand)}.step.cur .step-btn{color:var(--text);background:color-mix(in srgb, var(--brand) 8%, transparent);font-weight:600}.step.cur .step-n{background:var(--brand);color:var(--brand-ink)}.step-btn:not(:disabled):hover{background:color-mix(in srgb, var(--text) 4%, transparent)}@media (width<=700px){.step-label{display:none}.step.cur .step-label{display:flex}}.tabs{border-bottom:1px solid var(--line);gap:.15rem;margin-bottom:1rem;display:flex;overflow-x:auto}.tab{font:inherit;color:var(--muted);cursor:pointer;white-space:nowrap;transition:color var(--fast) var(--ease), border-color var(--fast) var(--ease);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.4rem;margin-bottom:-1px;padding:.55rem .8rem;font-size:.9rem;font-weight:500;display:inline-flex}.tab:hover{color:var(--text)}.tab.on{color:var(--brand);border-bottom-color:var(--brand);font-weight:600}.tab-count{background:color-mix(in srgb, var(--text) 8%, transparent);color:var(--text-2);border-radius:999px;padding:.05rem .45rem;font-size:.72rem;font-weight:600}.tab.on .tab-count{background:var(--brand-soft);color:var(--brand)}.chips{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.9rem;display:flex}.chip{font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--text-2);cursor:pointer;transition:all var(--fast) var(--ease);border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .75rem;font-size:.82rem;font-weight:500;display:inline-flex}.chip:hover{border-color:color-mix(in srgb, var(--muted) 50%, var(--line));color:var(--text)}.chip.on{background:var(--brand);border-color:var(--brand);color:var(--brand-ink);font-weight:600}.chip .n{opacity:.75;font-weight:600}.chips .spacer{flex:1}.chips input{width:auto;min-width:160px;min-height:34px;padding:.35rem .7rem;font-size:.86rem}.segmented{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);display:inline-flex;overflow:hidden}.segmented button{font:inherit;color:var(--muted);cursor:pointer;border:none;border-right:1px solid var(--line);transition:all var(--fast) var(--ease);background:0 0;padding:.5rem .9rem;font-size:.88rem}.segmented button:last-child{border-right:none}.segmented button.on{background:var(--brand);color:var(--brand-ink);font-weight:600}.segmented button:not(.on):hover{color:var(--text);background:color-mix(in srgb, var(--text) 4%, transparent)}.actionbar{z-index:5;background:var(--text);color:var(--bg);border-radius:var(--radius);box-shadow:var(--shadow-lg);flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1rem;padding:.8rem 1rem;font-size:.9rem;display:flex;position:sticky;bottom:1rem}.actionbar .grow{flex:1;min-width:200px}.actionbar .btn-ghost{color:var(--bg);border-color:color-mix(in srgb, var(--bg) 30%, transparent);background:0 0}.actionbar .btn-ghost:hover{background:color-mix(in srgb, var(--bg) 12%, transparent);color:var(--bg)}.actionbar .neg{color:#fca5a5}.actionbar .pos{color:#86efac}.cnt{flex-direction:column;align-items:center;min-width:30px;display:inline-flex}.cnt b{background:color-mix(in srgb, var(--text) 7%, transparent);font-variant-numeric:tabular-nums;border-radius:6px;padding:.05rem .4rem;font-size:.88rem;font-weight:600}.cnt.hit b{background:var(--brand-soft);color:var(--brand)}.cnt.audit b{background:var(--warn-soft);color:var(--warn)}.cnt small{color:var(--muted);letter-spacing:.04em;font-size:.66rem;line-height:1.3}.diff-neg{color:var(--danger);font-weight:600}.diff-pos{color:var(--ok);font-weight:600}.diff-zero{color:var(--muted)}tr.selected td{background:color-mix(in srgb, var(--brand) 7%, transparent)}tr.dim td{opacity:.6}.avatars{display:inline-flex}.av{width:26px;height:26px;color:var(--brand-ink);background:linear-gradient(135deg, var(--brand), var(--brand-2));border:2px solid var(--panel);border-radius:50%;place-items:center;margin-left:-6px;font-size:.66rem;font-weight:700;display:inline-grid}.av:first-child{margin-left:0}.av.lg{width:32px;height:32px;font-size:.74rem}.av.muted{background:var(--muted)}.sheet-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.sheet-head h1{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.sheet-head .sub{color:var(--muted);margin:.3rem 0 0;font-size:.92rem}.stats.four{grid-template-columns:repeat(4,1fr)}@media (width<=1100px){.stats.four{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.stats.four{grid-template-columns:1fr}}.stat.has-sub{grid-template-areas:"label icon""value icon""sub sub"}.stat-sub{color:var(--muted);grid-area:sub;margin-top:.1rem;font-size:.8rem}.loc-progress{gap:.5rem;display:grid}.loc-row{grid-template-columns:90px 1fr auto;align-items:center;gap:.75rem;font-size:.88rem;display:grid}.loc-row .bar{background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:999px;height:6px;overflow:hidden}.loc-row .bar i{background:var(--brand-2);height:100%;display:block}.loc-row .bar i.done{background:var(--ok)}.user-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.5rem;display:grid}.user-pick{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);cursor:pointer;transition:all var(--fast) var(--ease);align-items:center;gap:.6rem;padding:.55rem .7rem;font-size:.9rem;display:flex}.user-pick:hover{border-color:color-mix(in srgb, var(--muted) 50%, var(--line))}.user-pick.on{border-color:var(--brand);background:color-mix(in srgb, var(--brand) 7%, transparent)}.user-pick .who-name{flex-direction:column;flex:1;min-width:0;line-height:1.25;display:flex}.user-pick .who-name small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dialog{z-index:50;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);width:min(480px,100vw - 2rem);box-shadow:var(--shadow-lg);flex-direction:column;gap:.9rem;padding:1.25rem;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.dialog:focus{outline:none}.dialog h3{margin:0;font-size:1.05rem}.dialog-body{color:var(--text-2);font-size:.92rem}.dialog-actions{justify-content:flex-end;gap:.5rem;display:flex}.wizard-foot{z-index:5;box-shadow:var(--shadow-lg);border-radius:var(--radius);background:var(--text);color:var(--bg);flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1rem;padding:.8rem 1rem;font-size:.9rem;display:flex;position:sticky;bottom:1rem}.wizard-foot .grow{flex:1;min-width:160px}.wizard-foot .btn-ghost{color:var(--bg);border-color:color-mix(in srgb, var(--bg) 30%, transparent);background:0 0}.wizard-foot .btn-ghost:hover{background:color-mix(in srgb, var(--bg) 12%, transparent);color:var(--bg)}.lock{color:var(--warn);align-items:center;gap:.3rem;font-size:.8rem;display:inline-flex}.chip-x{background:color-mix(in srgb, currentColor 18%, transparent);width:18px;height:18px;color:inherit;cursor:pointer;border:none;border-radius:50%;place-items:center;margin-left:.15rem;padding:0;display:inline-grid}.chip-x:hover{background:color-mix(in srgb, currentColor 32%, transparent)}.inv-code{flex-direction:column;line-height:1.3;display:flex;text-decoration:none!important}.inv-code small{font-size:.78rem}.inv-stage{flex-direction:column;gap:.15rem;line-height:1.3;display:inline-flex}.inv-stage small{font-size:.76rem}.inv-progress{font-variant-numeric:tabular-nums;grid-template-columns:1fr auto;align-items:center;gap:.6rem;min-width:180px;font-size:.86rem;display:grid}.inv-progress .bar{background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:999px;height:6px;overflow:hidden}.inv-progress .bar i{background:var(--brand-2);height:100%;display:block}.inv-progress .bar i.done{background:var(--ok)}.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}.grid-card .table-wrap,.grid-bare .table-wrap{margin:0;padding:0}table.dgrid td{height:44px;padding:.55rem .75rem}.grid-foot{color:var(--muted);border-top:1px solid var(--line-2);font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem 1rem;font-size:.86rem;display:flex}.grid-bare .grid-foot{padding:.6rem .25rem}.grid-capped{color:var(--warn)}.grid-pager{gap:.4rem;display:inline-flex}.th-sort{all:unset;cursor:pointer;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;border-radius:4px;align-items:center;gap:.25rem;display:inline-flex}.th-sort:hover,.th-sort.on{color:var(--text)}.th-sort:focus-visible{box-shadow:var(--ring)}th.right .th-sort{flex-direction:row-reverse}td.nowrap{white-space:nowrap}.trunc{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:280px;display:inline-block;overflow:hidden}tr.clickable{cursor:pointer}tr.clickable:focus-visible{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--brand-2) 55%, transparent);outline:none}tr.row-flash td{animation:row-flash 2s var(--ease)}@keyframes row-flash{0%{background:color-mix(in srgb, var(--brand) 14%, transparent)}to{background:0 0}}th.col-check,td.col-check{width:36px;padding-right:0}th.col-menu,td.col-menu{text-align:right;width:44px;padding-left:0}th.col-primary,td.col-primary{white-space:nowrap;text-align:right;width:1%}.row-menu-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.row-menu-btn:hover,.row-menu-btn[aria-expanded=true]{background:color-mix(in srgb, var(--text) 6%, transparent);color:var(--text)}.row-menu-btn:focus-visible{box-shadow:var(--ring);outline:none}.menu{z-index:70;background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-lg);border-radius:var(--radius-sm);flex-direction:column;min-width:180px;padding:.3rem;display:flex}.menu [role=menuitem]{all:unset;color:var(--text);cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem .7rem;font-size:.9rem;display:flex}.menu [role=menuitem]:hover,.menu [role=menuitem]:focus-visible,.menu [role=menuitem]:focus{background:color-mix(in srgb, var(--text) 6%, transparent)}.menu [role=menuitem] svg{color:var(--muted)}.menu .danger,.menu .danger svg{color:var(--danger)}.grid-bulk{margin-top:-.5rem;margin-bottom:1.25rem}.search{align-items:center;min-width:0;display:inline-flex;position:relative}.search>svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:.7rem;transform:translateY(-50%)}.search input{padding-left:2.1rem}.search.with-clear input{padding-right:2.2rem}.search input::-webkit-search-cancel-button{appearance:none}.search .search-x{width:28px;height:28px;position:absolute;top:50%;right:.25rem;transform:translateY(-50%)}.gtb{border-bottom:1px solid var(--line-2);flex-direction:column;gap:.6rem;padding:.85rem 1rem;display:flex}.grid-bare .gtb{border-bottom:none;padding:0 0 .75rem}.gtb-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.gtb-row .chips{margin:0}.gtb-spacer{flex:1}.gtb-row .search{flex:0 280px;width:280px;min-width:200px}.gtb-row .search input{width:100%;min-height:36px;padding-top:.4rem;padding-bottom:.4rem}.gtb-filters{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;display:flex}.fsel{color:var(--muted);align-items:center;gap:.45rem;font-size:.8rem;display:inline-flex}.fsel>span,.fsel label>span{white-space:nowrap}.fsel label{align-items:center;gap:.45rem;display:inline-flex}.fsel select,.fsel input{width:auto;max-width:240px;min-height:34px;color:var(--text);padding-top:.3rem;padding-bottom:.3rem;font-size:.86rem}.fsel select{padding-right:2rem}.period input[type=date]{max-width:160px}.chip.toggle[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:var(--brand-ink);font-weight:600}.link-btn{all:unset;cursor:pointer;color:var(--brand);border-radius:4px;font-size:.84rem;font-weight:600}.link-btn:hover{text-decoration:underline}.link-btn:focus-visible{box-shadow:var(--ring)}.section-title{margin:1.75rem 0 .2rem;font-size:1.02rem}.section-hint{margin:0 0 .75rem;font-size:.88rem}.drawer-sm{width:min(440px,100vw)}.drawer-lg{width:min(760px,100vw)}.drawer-body .form-row{grid-template-columns:1fr}.drawer-foot .foot-left{margin-right:auto}.form-section{flex-direction:column;gap:.9rem;display:flex}.form-section+.form-section{border-top:1px solid var(--line-2);padding-top:1.1rem}.form-section>h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0;font-size:.8rem;font-weight:700}.form-section-hint{margin:-.5rem 0 0;font-size:.86rem}.field-label .opt{color:var(--muted);font-weight:400}.field small.muted{color:var(--muted)}.toggle-row{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:.55rem .75rem;display:flex}.toggle-row.disabled{cursor:not-allowed;opacity:.65}.toggle-text{flex-direction:column;gap:.15rem;min-width:0;display:flex}.toggle-text small{font-size:.82rem;line-height:1.35}input.switch{appearance:none;background:var(--line);cursor:pointer;width:36px;height:20px;min-height:0;transition:background var(--fast) var(--ease);border:none;border-radius:999px;flex-shrink:0;padding:0;position:relative}input.switch:after{content:"";width:16px;height:16px;transition:transform var(--fast) var(--ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000040}input.switch:checked{background:var(--brand)}input.switch:checked:after{transform:translate(16px)}input.switch:focus-visible{box-shadow:var(--ring)}input.switch:disabled{cursor:not-allowed}.footbar{z-index:5;border-radius:var(--radius);background:var(--text);color:var(--bg);box-shadow:var(--shadow-lg);flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1rem;padding:.8rem 1rem;font-size:.9rem;display:flex;position:sticky;bottom:1rem}.footbar .grow{flex:1;min-width:160px}.footbar .btn-ghost{color:var(--bg);border-color:color-mix(in srgb, var(--bg) 30%, transparent);background:0 0}.footbar .btn-ghost:hover{background:color-mix(in srgb, var(--bg) 12%, transparent);color:var(--bg)}.form-page{max-width:880px}.dialog-backdrop{z-index:55;background:#02061773;position:fixed;inset:0}.dialog{z-index:60}.toast-stack{z-index:80;pointer-events:none;flex-direction:column;align-items:flex-end;gap:.5rem;display:flex;position:fixed;bottom:1rem;right:1rem}.toast{pointer-events:auto;border-radius:var(--radius-sm);background:var(--panel);min-width:240px;max-width:min(420px,100vw - 2rem);color:var(--text);border:1px solid var(--line);box-shadow:var(--shadow-lg);animation:toast-in var(--normal) var(--ease);align-items:center;gap:.6rem;padding:.6rem .5rem .6rem .9rem;font-size:.9rem;display:flex}.toast span{flex:1}.toast .icon-btn{width:28px;height:28px}.toast.ok>svg{color:var(--ok)}.toast.error>svg{color:var(--danger)}.toast.info>svg{color:var(--info)}.toast.error{border-color:color-mix(in srgb, var(--danger) 35%, var(--line))}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.cat-pick{flex-direction:column;align-items:flex-start;gap:.4rem;display:flex}.cat-pick>.field{align-self:stretch}.cat-inline{align-self:stretch;align-items:center;gap:.4rem;display:flex}.cat-inline input{flex:1}.fprod .picker{width:300px;max-width:100%}.fprod .picker input,.fprod .picker-selected{min-height:34px;font-size:.86rem}.fprod .picker-selected{padding-top:.2rem;padding-bottom:.2rem}.card.grid-card{overflow:visible}.grid-card>.table-wrap:first-child thead th:first-child{border-top-left-radius:var(--radius)}.grid-card>.table-wrap:first-child thead th:last-child{border-top-right-radius:var(--radius)}.picker-bar{max-width:520px;margin-bottom:1rem}.fprod .picker>.search{width:100%}.fprod .picker input{width:100%;max-width:none}.items-table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:.9rem}.items-table th{background:0 0;padding:.35rem;font-size:.72rem;position:static}.items-table td{border-bottom:1px solid var(--line-2);vertical-align:top;padding:.35rem}.items-table tbody tr:hover td{background:0 0}.items-table tfoot td{border-bottom:none;padding-top:.6rem}.items-table input,.items-table select{min-height:38px;padding:.4rem .55rem;font-size:.88rem}.items-table input:user-invalid{border-color:var(--danger)}.items-table .it-product{width:auto}.items-table .it-qty{width:96px}.items-table .it-loc{width:22%}.items-table .it-lot{width:13%}.items-table .it-exp{width:140px}.items-table .it-del{text-align:center;width:44px}.items-table .it-price{width:140px}.items-table .picker-selected{min-height:38px}.items-table .picker-value{white-space:nowrap;text-overflow:ellipsis;min-width:0;display:block;overflow:hidden}.items-table .picker-value .mono.muted{display:none}.items-table .picker-input input{width:100%}.exec{grid-template-columns:minmax(0,1fr) minmax(340px,420px);align-items:start;gap:1.25rem;display:grid}.exec-main,.exec-side{min-width:0}@media (width<=1279px){.exec{grid-template-columns:minmax(0,1fr)}.exec-side{order:-1}}.conv-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.9rem;display:flex}.conv-assign{align-items:center;gap:.4rem;display:inline-flex}.conv-assign select{width:auto;min-width:200px}.conf-block{margin:.75rem 0 1rem}.conf-title{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .4rem;font-size:.8rem}tr.row-next td{background:color-mix(in srgb, var(--brand) 6%, transparent)}.gtb-filters .search{width:220px}.gtb-filters .search input{min-height:34px;padding-top:.3rem;padding-bottom:.3rem;font-size:.86rem}.legend{margin-top:.6rem;display:block}.av.av-inline{vertical-align:middle;margin-left:0;margin-right:.5rem}.price-cell{align-items:center;gap:.35rem;display:inline-flex}.price-cell .price-in{width:96px;min-width:0}.price-cell .lead-in{width:64px;min-width:0}.data-default{max-width:360px;margin-top:1.25rem}.flag-list{flex-direction:column;gap:.5rem;display:flex}.upload-bar{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.upload-hint{margin:.75rem 0 0;font-size:.88rem}.preview-card{border-color:color-mix(in srgb, var(--brand) 35%, var(--line))}.preview-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.preview-head h2{flex-wrap:wrap;align-items:center;gap:.5rem;margin:0;font-size:1rem;display:flex}.preview-actions{margin:.25rem 0 1rem}tr.row-error td{background:color-mix(in srgb, var(--danger) 6%, transparent)}.event-groups{flex-direction:column;gap:.6rem;margin-top:.35rem;display:flex}.event-group{border:1px solid var(--line);border-radius:var(--radius-sm);margin:0;padding:.5rem .75rem .65rem}.event-group legend{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:0 .3rem;font-size:.76rem;font-weight:700}.secret-once{flex-direction:column;gap:.75rem;display:flex}.secret-row{align-items:center;gap:.5rem;display:flex}.secret{overflow-wrap:anywhere;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-2);flex:1;min-width:0;padding:.55rem .7rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86rem}.conf-title.pay-history{margin-top:1rem}:is(body:has(.footbar) .toast-stack,body:has(.wizard-foot) .toast-stack,body:has(.actionbar) .toast-stack){bottom:5.5rem}.nav-badge{background:var(--warn-soft);min-width:1.4rem;color:var(--warn);text-align:center;font-variant-numeric:tabular-nums;border-radius:999px;margin-left:auto;padding:.05rem .45rem;font-size:.72rem;font-weight:700;line-height:1.5}.page-alert{margin-bottom:1rem}.toast-link{color:var(--brand);white-space:nowrap;font-weight:700}.reason-lines{flex-direction:column;gap:.1rem;font-size:.86rem;line-height:1.35;display:flex}.reason-badges{flex-wrap:wrap;gap:.3rem;display:inline-flex}.sug-status{align-items:center;gap:.4rem;display:inline-flex}.warn-ico{color:var(--warn);display:inline-flex}.sug-count{margin:0;font-size:.88rem}.run-cell{flex-direction:column;min-width:0;line-height:1.3;display:inline-flex}.run-cell .trunc{max-width:240px}.run-cell small{white-space:nowrap;font-size:.76rem}.run-warn{color:var(--warn)}.toggle-sub{border-left:2px solid var(--line-2);flex-direction:column;gap:.75rem;margin:-.35rem 0 0 .75rem;padding-left:.9rem;display:flex}.freq-trio{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.weekday-chips{margin:0}.chip-input{align-items:center;gap:.15rem;display:inline-flex}.chip-input input[type=time]{width:7.5rem}.sched-preview{z-index:2;background:var(--panel-2);border-top:1px solid var(--line);flex-direction:column;gap:.4rem;margin:0 -1.25rem -1.25rem;padding:.8rem 1.25rem 1rem;display:flex;position:sticky;bottom:-1.25rem;box-shadow:0 -6px 16px -12px #0f172a59}.sched-preview h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0;font-size:.8rem;font-weight:700}.sched-preview p{margin:0;font-size:.9rem}.sched-warn{color:var(--warn);align-items:center;gap:.35rem;font-size:.82rem;display:flex}.sched-preview summary{cursor:pointer;color:var(--brand);font-size:.86rem;font-weight:600}.sched-preview ul{flex-direction:column;gap:.3rem;max-height:min(220px,22vh);margin:.4rem 0 0;padding:0;font-size:.84rem;list-style:none;display:flex;overflow-y:auto}.field>.segmented{align-self:flex-start;max-width:100%}.inv-code .trunc{max-width:260px}.badges{flex-wrap:wrap;align-items:center;gap:.3rem;display:inline-flex}.bulk-actions{flex-wrap:wrap;align-items:center;gap:.4rem;display:inline-flex}.pf-progress{font-variant-numeric:tabular-nums;grid-template-columns:1fr 3.6rem;align-items:center;gap:.5rem;min-width:120px;font-size:.86rem;display:grid}.pf-progress .bar{background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:999px;height:6px;position:relative;overflow:hidden}.pf-progress .bar i{border-radius:inherit;position:absolute;top:0;bottom:0;left:0}.pf-progress .bar i.alloc{background:color-mix(in srgb, var(--brand-2) 35%, transparent)}.pf-progress .bar i.pick{background:var(--brand-2)}.pf-progress .bar i.pick.done{background:var(--ok)}.pf-progress>.muted{text-align:right}.pf-result{margin-bottom:1rem}.pf-result-list{gap:.3rem;margin:.4rem 0 0;padding-left:1.1rem;font-size:.92rem;display:grid}.items-table .it-notes{width:24%}.pf-lines .it-qty{width:120px}.pf-lines .it-qty small{margin-top:.15rem;font-size:.72rem;line-height:1.25;display:block}.pf-lines .picker-value{padding:.45rem 0}.pf-scan{max-width:520px;margin-bottom:.6rem}.tab-title{margin:1rem 0 .5rem;font-size:.95rem}.tab-title:first-of-type{margin-top:.5rem}.tab-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;margin:.5rem 0 .75rem;display:flex}.pf-more .row-menu-btn{border:1px solid var(--line);width:40px;height:40px}tr.row-warn td{background:color-mix(in srgb, var(--warn) 7%, transparent)}.pf-cancel{margin-top:.5rem}.pf-cancel td{vertical-align:middle}.pf-cancel .it-qty{width:150px}.pf-cancel small{font-size:.72rem;display:block}input.invalid{border-color:var(--danger)}.error-text{color:var(--danger)}.upload-bar:has(.field){align-items:flex-start}.upload-bar .field{flex:0 340px;min-width:220px;margin:0}.upload-bar:has(.field)>.btn{margin-top:1.55rem}.print-shell{background:var(--bg);min-height:100vh;padding:1.25rem 1rem 3rem}.print-shell>.print-bar{justify-content:space-between;gap:.75rem;max-width:210mm;margin:0 auto 1rem;display:flex}.print-page{color:#0f172a;border-radius:var(--radius-sm);max-width:210mm;box-shadow:var(--shadow-lg);background:#fff;margin:0 auto;padding:14mm 14mm 12mm;font-size:11pt;line-height:1.4}.print-page .mono{color:inherit}.print-head{border-bottom:2px solid #0f172a;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:.8rem;padding-bottom:.6rem;display:flex}.print-company{color:#475569;text-transform:uppercase;letter-spacing:.04em;font-size:10pt}.print-head h1{margin:.1rem 0 0;font-size:18pt}.print-note{color:#b45309;margin:.2rem 0 0;font-size:9pt}.print-kv{grid-template-columns:auto auto;gap:.15rem 1rem;margin:0;font-size:10pt;display:grid}.print-kv div{display:contents}.print-kv dt{color:#64748b}.print-kv dd{margin:0;font-weight:600}.print-notes{margin:0 0 .8rem;font-size:10pt}.print-doc{break-inside:avoid;page-break-inside:avoid;border:1px solid #cbd5e1;border-radius:6px;margin-bottom:.9rem;overflow:hidden}.print-doc-head{background:#f1f5f9;grid-template-columns:1fr 1fr;gap:.1rem 1rem;padding:.4rem .6rem;font-size:10pt;display:grid}.print-shipto{color:#334155;grid-column:1/-1}.print-table{border-collapse:collapse;width:100%;font-size:10pt}.print-table th,.print-table td{text-align:left;border-top:1px solid #e2e8f0;padding:.25rem .6rem}.print-table th{text-transform:uppercase;color:#64748b;letter-spacing:.03em;background:0 0;font-size:8.5pt}.print-table .right{text-align:right;font-variant-numeric:tabular-nums}.print-table tfoot td{border-top:1px solid #94a3b8;font-weight:700}.print-foot{margin-top:1rem}.print-totals{margin:0 0 2.4rem;font-weight:700}.print-signs{color:#334155;grid-template-columns:1fr 1fr;gap:3rem;font-size:10pt;display:grid}.print-signs span{border-top:1px solid #0f172a;margin-bottom:.25rem;display:block}@page{size:A4;margin:10mm}@media print{:root{--lightningcss-light:initial!important;--lightningcss-dark: !important;color-scheme:light!important}.no-print{display:none!important}body,.print-shell{background:#fff!important;padding:0!important}.print-page{box-shadow:none;border-radius:0;max-width:none;padding:0}}.doc-chip{align-items:center;gap:.3rem;margin-left:.4rem;display:inline-flex}.pallet-drawer{grid-template-columns:minmax(0,1fr);gap:1rem;display:grid}.pallet-badges{flex-wrap:wrap;gap:.5rem;display:flex}.pallet-stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:0}.pallet-stats .stat{padding:.8rem 1rem}.pallet-stats .stat-value{font-size:1.35rem}.pallet-kv .muted{min-width:8.5rem}.pallet-subform h3{margin:0;font-size:1rem}.split-preview{color:var(--text-2);font-size:.88rem}.split-preview.bad{color:var(--danger)}.coverage-line{border-radius:var(--radius-sm);background:var(--panel-2);border:1px solid var(--line);padding:.55rem .75rem;font-size:.88rem}.gen-segments{border:0;gap:.5rem;margin:0;padding:0;display:grid}.gen-seg{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,.8fr) auto;align-items:end;gap:.5rem;display:grid}.gen-seg .field{margin:0}.gen-preview{border-top:1px solid var(--line);gap:.4rem;padding-top:.75rem;display:grid}.gen-preview h3{align-items:center;gap:.5rem;margin:0;display:flex}.gen-codes{flex-wrap:wrap;gap:.35rem;font-size:.84rem;display:flex}.gen-codes span{background:color-mix(in srgb, var(--text) 6%, transparent);border-radius:6px;padding:.1rem .45rem}.row-gap{flex-wrap:wrap;gap:.5rem;display:flex}.small{font-size:.8rem}@media (width<=560px){.gen-seg{grid-template-columns:1fr 1fr}}.warn-input{border-color:var(--warn)!important}.card-foot{justify-content:flex-start;padding-top:.6rem;display:flex}.stock-options{margin-top:.6rem}.fsel .segmented button{padding:.3rem .7rem;font-size:.84rem}.sug-chips{flex-wrap:wrap;gap:.35rem;margin-top:.4rem;display:flex}.gtb-export{margin-left:auto}.report-tabs{margin-bottom:1rem}.pct-bar{justify-content:flex-end;align-items:center;gap:.4rem;min-width:5.5rem;display:inline-flex}.pct-bar .bar{background:var(--line);border-radius:999px;flex:0 0 2.75rem;height:6px;overflow:hidden}.pct-bar .bar>span{background:var(--brand);height:100%;display:block}.trace-search{margin-bottom:1.25rem;padding:.9rem 1.1rem}.trace-search .fsel input{width:200px}.trace-lots{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.6rem;display:flex}.trace-head h2{text-transform:none;letter-spacing:0;color:var(--text);font-size:1.05rem}.trace-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}.trace-below{gap:1.25rem;margin-top:1.25rem;display:grid}.trace-below>*,.trace-grid>*,.trace-side>*{min-width:0}.trace-side{gap:1.25rem;display:grid}@media (width<=1180px){.trace-grid{grid-template-columns:1fr}}.trace-section-title{justify-content:space-between;align-items:baseline;gap:1rem;margin:0 0 .6rem;display:flex}.trace-section-title h2{margin:0;font-size:1rem}.timeline{margin:0;padding:0;list-style:none;position:relative}.timeline:before{content:"";background:var(--line);width:2px;position:absolute;top:6px;bottom:6px;left:11px}.timeline li{grid-template-columns:24px 1fr auto;gap:.75rem;padding:.55rem 0;display:grid;position:relative}.timeline .dot{background:var(--panel);border:2px solid var(--line);z-index:1;width:24px;height:24px;color:var(--muted);border-radius:50%;place-items:center;display:grid}.timeline .dot.in{border-color:var(--ok);color:var(--ok)}.timeline .dot.out{border-color:var(--danger);color:var(--danger)}.timeline .dot.adj{border-color:var(--warn);color:var(--warn)}.timeline .dot.rcv,.timeline .dot.ship{border-color:var(--brand);color:var(--brand)}.timeline .ev-head{flex-wrap:wrap;align-items:baseline;gap:.25rem .6rem;display:flex}.timeline .ev-head b{font-weight:600}.timeline .ev-meta{flex-wrap:wrap;gap:.2rem .8rem;margin-top:.15rem;font-size:.84rem;display:flex}.timeline .ev-qty{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.timeline .ev-qty.neg{color:var(--danger)}.timeline .ev-qty.pos{color:var(--ok)}.print-root small,.print-root th,.print-root dt{color:#000}.print-root{color:#000;background:#e5e7eb;min-height:100vh;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.print-root>.print-bar{z-index:5;color:#0f172a;background:#fff;border-bottom:1px solid #cbd5e1;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.6rem 1rem;display:flex;position:sticky;top:0}.print-root>.print-bar .btn-ghost{color:#0f172a}.print-format{align-items:center;gap:.4rem;font-size:.9rem;display:inline-flex}.print-format select{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:.3rem .5rem}.print-hint{color:#475569;font-size:.85rem}.print-msg{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:12px;max-width:560px;margin:2rem auto;padding:1rem 1.25rem}.print-sheets{flex-direction:column;align-items:center;gap:8mm;padding:8mm 0 16mm;display:flex}.sheet{box-sizing:border-box;color:#000;break-after:page;page-break-after:always;background:#fff;position:relative;overflow:hidden;box-shadow:0 1px 4px #00000040}.sheet:last-child{break-after:auto;page-break-after:auto}.sheet-grid{align-content:start;display:grid}.sheet-flow{box-sizing:border-box;color:#000;background:#fff;box-shadow:0 1px 4px #00000040}.bc{flex-direction:column;align-items:center;display:flex}.bc svg{display:block}.bc-text{letter-spacing:.04em;color:#000;margin-top:.6mm;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;line-height:1.1}.bc-error{border:.3mm dashed #000;padding:1mm 2mm;font-family:ui-monospace,monospace}.bc-toolong{text-align:center;box-sizing:border-box;border:.4mm dashed #000;max-width:100%;padding:1.5mm 2mm;font-size:2.6mm;font-weight:700}.print-warn{color:#b91c1c;font-size:.9rem;font-weight:600}.lbl-test{flex-direction:column;gap:6mm;padding:8mm;display:flex}.lbl-test h1{margin:0;font-size:6mm}.lbl-test-hint{margin:0;font-size:3.4mm;line-height:1.35}.lbl-test-block{flex-direction:column;gap:2mm;font-size:3.2mm;display:flex}.lbl-test.big{gap:10mm;padding:20mm}.lbl-test.big h1{font-size:10mm}@media print{html,body{background:#fff!important;margin:0!important}.print-bar,.print-msg{display:none!important}.print-root{background:#fff;min-height:0}.print-sheets{padding:0;display:block}.sheet,.sheet-flow{box-shadow:none;margin:0}.print-root,.print-root *{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.lbl-pallet{box-sizing:border-box;flex-direction:column;gap:2.2em;width:100%;height:100%;padding:5em 6em;font-size:1mm;line-height:1.15;display:flex}.lbl-pallet.a4{gap:1.8em;padding:6em 16em;font-size:1.55mm}.lp-top{border-bottom:.5em solid #000;justify-content:space-between;align-items:baseline;gap:4em;padding-bottom:1.5em;display:flex}.lp-company{white-space:nowrap;text-overflow:ellipsis;font-size:3.6em;font-weight:600;overflow:hidden}.lp-kind{letter-spacing:.08em;font-size:5em}.lp-code{text-align:center;letter-spacing:.02em;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11.5em;font-weight:800;line-height:1}.lp-bars{justify-content:center;display:flex}.lp-sku{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:8em;font-weight:800;line-height:1}.lp-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.3em;font-size:4.6em;font-weight:500;display:-webkit-box;overflow:hidden}.lp-row{gap:8em;font-size:5em;display:flex}.lp-row small,.lp-qty small{letter-spacing:.06em;font-size:.62em;font-weight:700}.lp-qty{font-size:9em;line-height:1}.lp-foot{border-top:.14em solid #000;justify-content:space-between;align-items:center;gap:4em;margin-top:auto;padding-top:.6em;font-size:3.6em;display:flex}.lp-copy{white-space:nowrap;border:.2em solid #000;border-radius:.3em;padding:.1em .5em}.lbl-small{box-sizing:border-box;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1.2mm;width:100%;height:100%;padding:3mm 4mm;display:flex;overflow:hidden}.lbl-small.compact{gap:.7mm;padding:1.6mm 2.4mm}.ls-code{overflow-wrap:anywhere;max-width:100%;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-weight:800;line-height:1.05}.ls-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;font-size:3.4mm;line-height:1.15;display:-webkit-box;overflow:hidden}.lbl-small.compact .ls-name{font-size:2.5mm}.ls-sub{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:3.1mm;overflow:hidden}.lbl-small.compact .ls-sub{font-size:2.3mm}.sheet-grid .cell{box-sizing:border-box;overflow:hidden}@media screen{.sheet-grid .cell{outline-offset:-.1mm;outline:.1mm dashed #cbd5e1}}.sheet-flow{width:210mm;min-height:297mm;padding:12mm}.pick-sheet{color:#000;font-size:3.2mm;line-height:1.3}.ps-head{border-bottom:.5mm solid #000;justify-content:space-between;align-items:flex-start;gap:8mm;margin-bottom:3mm;padding-bottom:3mm;display:flex}.ps-company{font-weight:600}.ps-head h1{margin:1mm 0;font-size:6mm}.ps-code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:5mm;font-weight:800}.ps-info{grid-template-columns:repeat(3,1fr);gap:2mm 6mm;margin:0 0 4mm;display:grid}.ps-info dt{text-transform:uppercase;letter-spacing:.05em;color:#333;font-size:2.6mm}.ps-info dd{margin:0;font-weight:600}.ps-table{border-collapse:collapse;width:100%}.ps-table th,.ps-table td{text-align:left;vertical-align:top;border:.25mm solid #000;padding:1.6mm 1.8mm}.ps-table th{text-transform:uppercase;letter-spacing:.04em;background:#eee;font-size:2.7mm}.ps-table tr{break-inside:avoid;page-break-inside:avoid}.ps-table .num{text-align:right;white-space:nowrap}.ps-table .mono{white-space:nowrap;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}.ps-table .blank{width:20mm}.ps-table .chk{text-align:center;width:8mm}.ps-table .box{border:.3mm solid #000;width:4mm;height:4mm;display:inline-block}.ps-sign{break-inside:avoid;grid-template-columns:1fr 1fr;gap:16mm;margin-top:16mm;display:grid}.ps-sign div{flex-direction:column;gap:1.5mm;font-size:3mm;display:flex}.ps-sign .line{border-bottom:.3mm solid #000;height:10mm;display:block}@media print{.sheet-flow{width:auto;min-height:0;padding:0}}
