:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f4f5f8;--sidebar-bg:#fff;--surface:#fff;--surface-muted:#eef0f4;--border:#dde1e8;--text:#171a21;--text-muted:#5d6573;--accent:#d92f25;--accent-strong:#b42318;--accent-soft:#d92f251a;--accent-contrast:#fff;--accent-shadow:0 6px 16px #d92f2547;--input-bg:#fff;--input-text:#171a21;--input-border:#cdd2db;--input-placeholder:#8a92a0;--danger:#b42318;--danger-surface:#fdecea;--success:#1d6b3a;--success-surface:#e6f4ea;--warning:#8a5a00;--warning-surface:#fff4d6;--focus:#1a5fd0;--radius:10px;--radius-lg:14px;color:var(--text);background:var(--bg);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0b0e13;--sidebar-bg:#10141b;--surface:#10141b;--surface-muted:#1a1f29;--border:#232a36;--text:#eef0f4;--text-muted:#98a1b0;--accent:#ee5a4f;--accent-strong:#ff7d73;--accent-soft:#ee5a4f24;--accent-contrast:#fff;--accent-shadow:0 6px 18px #ee5a4f4d;--input-bg:#fff;--input-text:#171a21;--input-border:#3a4252;--input-placeholder:#8a92a0;--danger:#f2877f;--danger-surface:#3a1f1f;--success:#7fd29b;--success-surface:#1b3025;--warning:#f0c36a;--warning-surface:#3a2f14;--focus:#7aa7ff}}*,:before,:after{box-sizing:border-box}body{background:var(--bg);min-height:100vh;color:var(--text);margin:0}h1,h2{margin:0 0 .25rem;line-height:1.2}h1{letter-spacing:-.01em;font-size:1.75rem;font-weight:700}h2{font-size:1.15rem}a{color:var(--accent-strong)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.1em;height:1.1em}.muted{color:var(--text-muted);margin:0}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem}.app-shell{grid-template-columns:14rem 1fr;min-height:100vh;display:grid}.skip-link{background:var(--surface);border:2px solid var(--focus);border-radius:var(--radius);z-index:10;padding:.5rem 1rem;position:absolute;top:-4rem;left:1rem}.skip-link:focus{top:1rem}.sidebar{background:var(--sidebar-bg);border-right:1px solid var(--border);padding:1.25rem 1rem}.brand{border-bottom:1px solid var(--border);margin-bottom:1.25rem;padding-bottom:1.25rem}.brand-logo{border-radius:var(--radius-lg);width:100%;height:auto;display:block;box-shadow:0 8px 22px #c40a0a59}.sidebar nav{flex-direction:column;display:flex}.nav-link{border-radius:var(--radius);color:var(--text-muted);align-items:center;gap:.75rem;margin-bottom:.25rem;padding:.6rem .85rem;font-size:.95rem;text-decoration:none;display:flex}.nav-link .icon{width:1.2rem;height:1.2rem}.nav-link:hover{background:var(--surface-muted);color:var(--text)}.nav-link.is-active{background:var(--accent);color:var(--accent-contrast);box-shadow:var(--accent-shadow);font-weight:600}.content{width:100%;min-width:0;max-width:76rem;padding:2rem clamp(1rem,4vw,2.5rem)}.topbar,.drawer-backdrop,.sidebar .brand .button{display:none}@media (width<=860px){.app-shell{display:block}.topbar{z-index:20;padding:.5rem 1rem;padding-top:calc(.5rem + env(safe-area-inset-top,0px));background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:.75rem;display:flex;position:sticky;top:0}.topbar .brand-logo{width:auto;height:2.5rem}.drawer-backdrop{z-index:30;background:#00000073;border:0;padding:0;position:fixed;inset:0}.drawer-backdrop[data-open=true]{display:block}.sidebar{z-index:40;width:min(18rem,85vw);padding-top:calc(1rem + env(safe-area-inset-top,0px));border-right:1px solid var(--border);visibility:hidden;transition:transform .2s,visibility 0s linear .2s;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%)}.sidebar[data-open=true]{visibility:visible;transition:transform .2s;transform:none}.sidebar .brand{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.sidebar .brand-logo{flex:1;min-width:0}.sidebar .brand .button{display:inline-flex}.content{padding-block:1.25rem}}@media (width<=860px) and (prefers-reduced-motion:reduce){.sidebar,.sidebar[data-open=true]{transition:none}}.page-header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.75rem;padding-bottom:1.25rem;display:flex}.page-title{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.page-title h1{margin:0}.page-subtitle{color:var(--text-muted);margin:.35rem 0 0;font-size:.9rem}.badge-type{border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent-strong);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:.15rem .6rem;font-size:.7rem;font-weight:600}.back-link{align-items:center;gap:.4rem;margin-bottom:1rem;font-size:.9rem;text-decoration:none;display:inline-flex}.back-link:hover{text-decoration:underline}.button{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-height:2.5rem;color:var(--text);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:.4rem;padding:.45rem 1rem;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-flex}.button:hover:not(:disabled){background:var(--surface-muted)}.button:disabled{opacity:.55;cursor:not-allowed}.button-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);box-shadow:var(--accent-shadow);font-weight:600}.button-primary:hover:not(:disabled){background:var(--accent-strong)}.button-icon{width:2.5rem;padding:0}.button-danger{color:var(--danger);border-color:var(--danger)}.form{gap:1.5rem;min-width:0;display:grid}.form-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);gap:1.1rem;min-width:0;margin:0;padding:1.5rem 1.25rem 1.25rem;display:grid}.form-section legend{border:1px solid var(--border);background:var(--surface);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;gap:.45rem;margin-left:.25rem;padding:.25rem .75rem;font-size:.72rem;font-weight:600;display:inline-flex}.form-section legend .icon{color:var(--accent)}.form-grid{grid-template-columns:repeat(auto-fit,minmax(min(14rem,100%),1fr));gap:1rem;display:grid}.form-actions{flex-wrap:wrap;gap:.75rem;display:flex}.form-footer{z-index:5;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;padding:.9rem 1.25rem;display:flex;position:sticky;bottom:.75rem;box-shadow:0 -6px 24px #0000001f}.form-footer-note{color:var(--text-muted);align-items:center;gap:.5rem;margin:0;font-size:.8rem;display:inline-flex}.form-footer-note .icon{color:var(--accent)}.field{align-content:start;gap:.3rem;display:grid}.field label,.field-label{justify-content:space-between;align-items:center;gap:.5rem;font-size:.82rem;font-weight:600;display:flex}.field label.is-required:after{content:"*";color:var(--accent);margin-left:-.3rem;margin-right:auto}.field-optional{border:1px solid var(--border);color:var(--text-muted);border-radius:4px;padding:0 .4rem;font-size:.68rem;font-weight:400}.field input,.field select,.field textarea{border:1px solid var(--input-border);border-radius:var(--radius);background:var(--input-bg);width:100%;min-height:2.6rem;color:var(--input-text);font:inherit;padding:.5rem .8rem;font-size:.92rem}.field input::placeholder,.field textarea::placeholder{color:var(--input-placeholder)}.input-wrap{align-items:center;display:flex;position:relative}.input-prefix,.input-suffix{color:var(--input-placeholder);pointer-events:none;font-size:.8rem;position:absolute}.input-prefix{color:var(--accent);font-weight:600;left:.8rem}.input-suffix{right:.8rem}.input-wrap input[data-affix=prefix]{padding-left:2.6rem}.input-wrap:has(.input-suffix) input{padding-right:4.2rem}.field textarea{resize:vertical}.field input[readonly],.field textarea[readonly]{background:var(--surface-muted);border-color:var(--border);color:var(--text-muted)}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--danger)}.field-hint{color:var(--text-muted);align-items:flex-start;gap:.4rem;margin:0;font-size:.78rem;display:flex}.field-hint .icon{width:.85rem;height:.85rem;margin-top:.15rem}.field-error{color:var(--danger);margin:0;font-size:.9rem;font-weight:500}.field-static{margin:0;font-weight:500}.form-error,.form-success{border-radius:var(--radius);margin:0 0 1rem;padding:.7rem 1rem;font-weight:500}.form-error{background:var(--danger-surface);color:var(--danger);border:1px solid var(--danger)}.form-success{background:var(--success-surface);color:var(--success);border:1px solid var(--success)}.segmented{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-muted);flex-wrap:wrap;justify-self:start;gap:.25rem;padding:.25rem;display:inline-flex}.segmented-option{border-radius:calc(var(--radius) - 3px);min-height:2.3rem;color:var(--text-muted);cursor:pointer;border:1px solid #0000;align-items:center;gap:.45rem;padding:.35rem .9rem;font-size:.85rem;font-weight:500;display:inline-flex}.segmented-option input{opacity:0;width:1px;height:1px;position:absolute}.segmented-option.is-selected{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);font-weight:600}.segmented-option:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.edit-layout{grid-template-columns:minmax(0,1fr) 20rem;align-items:start;gap:1.5rem;display:grid}@media (width<=960px){.edit-layout{grid-template-columns:1fr}}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);gap:.75rem;padding:1.25rem;display:grid}.image-picker{gap:.75rem;display:grid}.dropzone{border:2px dashed var(--border);border-radius:var(--radius-lg);background:var(--surface);cursor:pointer;flex-wrap:wrap;align-items:center;gap:1rem 1.25rem;padding:1.25rem;display:flex}.dropzone.has-image{cursor:default}.dropzone[data-active]{border-color:var(--accent);background:var(--accent-soft)}.dropzone-tile{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-muted);width:3.4rem;height:3.4rem;color:var(--text-muted);place-items:center;display:grid}.dropzone-tile .icon{width:1.5rem;height:1.5rem}.dropzone-text{flex:1;gap:.15rem;min-width:12rem;display:grid}.dropzone-title{margin:0;font-size:.95rem;font-weight:600}.dropzone-hint{color:var(--text-muted);margin:0;font-size:.8rem}.dropzone .image-preview{width:5rem;height:5rem}.image-preview{object-fit:contain;border-radius:var(--radius);background:var(--surface-muted);width:100%;max-height:18rem}.toast-region{z-index:30;pointer-events:none;justify-content:flex-end;display:flex;position:fixed;top:1rem;left:1rem;right:1rem}.toast{border-radius:var(--radius);border:1px solid;max-width:26rem;margin:0;padding:.75rem 1.1rem;font-weight:500;box-shadow:0 6px 20px #0000002e}.toast-success{background:var(--success-surface);color:var(--success);border-color:var(--success)}.toast-warning{background:var(--warning-surface);color:var(--warning);border-color:var(--warning)}@media (prefers-reduced-motion:no-preference){.toast{animation:.16s ease-out toast-in}}@keyframes toast-in{0%{opacity:0;transform:translateY(-.5rem)}}.notice{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-muted);color:var(--text-muted);margin:0;padding:.7rem 1rem}.line-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);gap:.9rem;padding:1rem;display:grid}.new-product{border-left:3px solid var(--border);gap:1rem;padding-left:1rem;display:grid}.new-product .form-section{background:var(--surface-muted)}.line-card-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.line-card h3,.line-card h4{margin:0}.line-card h4{font-size:.95rem}.roll-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.roll-row{grid-template-columns:5rem minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:.75rem;display:grid}.roll-number{color:var(--text-muted);align-self:center;font-weight:600}@media (width<=700px){.roll-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.roll-number{grid-column:1/-1}}.summary{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.summary h2{margin-bottom:.75rem}.summary dl,.facts{gap:.5rem;margin:0;display:grid}.summary dl>div,.facts>div{justify-content:space-between;gap:1rem;display:flex}.summary dt,.facts dt{color:var(--text-muted)}.summary dd,.facts dd{font-variant-numeric:tabular-nums;margin:0}.summary-total{border-top:1px solid var(--border);padding-top:.5rem;font-weight:700}.summary-total dt{color:var(--text)}.detail{gap:1.5rem;display:grid}.detail h3{margin:.5rem 0 .25rem;font-size:1rem}.numeric{text-align:right;font-variant-numeric:tabular-nums}.filters{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1.25rem;display:grid}.filters-four{grid-template-columns:minmax(0,2fr) minmax(0,1.5fr) repeat(2,minmax(0,1fr))}.filters-two{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.filters-three{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}@media (width<=700px){.filters,.filters-two,.filters-three,.filters-four{grid-template-columns:1fr}}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.table-wrap[aria-busy=true]{opacity:.6}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{text-align:left;vertical-align:middle;border-bottom:1px solid var(--border);padding:.7rem .9rem}th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:var(--surface-muted);white-space:nowrap;font-size:.8rem}tbody tr:last-child td{border-bottom:0}tr.is-inactive td{color:var(--text-muted)}.thumbnail{object-fit:cover;background:var(--surface-muted);border-radius:6px;width:3.5rem;height:3.5rem;display:block}.thumbnail-empty{text-align:center;color:var(--text-muted);place-items:center;font-size:.65rem;line-height:1.1;display:grid}.badge{white-space:nowrap;border-radius:999px;padding:.15rem .6rem;font-size:.8rem;font-weight:600;display:inline-block}.badge-active{background:var(--success-surface);color:var(--success)}.badge-warning{background:var(--warning-surface);color:var(--warning)}.badge-inactive{background:var(--surface-muted);color:var(--text-muted)}.row-actions{flex-wrap:wrap;gap:.5rem;display:flex}.confirm{gap:.5rem;max-width:18rem;display:grid}.confirm p{margin:0;font-size:.9rem}.pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;display:flex}.pagination-buttons{gap:.5rem;display:flex}.state{background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius);justify-items:start;gap:.75rem;padding:2rem;display:grid}.state p{margin:0}@media (prefers-reduced-motion:no-preference){.button,.nav-link{transition:background-color .12s}}.tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:.25rem;margin-bottom:1.25rem;display:flex}.tab{color:var(--text-muted);border-bottom:2px solid #0000;margin-bottom:-1px;padding:.6rem 1rem;font-weight:600;text-decoration:none}.tab.is-active{color:var(--text);border-bottom-color:var(--accent,currentColor)}.field-check{align-self:end}.field-check label{align-items:center;gap:.5rem;min-height:2.5rem;display:flex}.link-button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.line-total{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.unavailable-notes{gap:.25rem;margin:0;padding-left:1.25rem;display:grid}@media (width<=700px){.table-cards,.table-cards tbody{display:block}.table-cards thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.table-cards tr{border-bottom:1px solid var(--border);padding:.5rem .9rem;display:block}.table-cards tbody tr:last-child{border-bottom:0}.table-cards td{text-align:right;overflow-wrap:anywhere;border-bottom:0;justify-content:space-between;align-items:center;gap:1rem;padding:.4rem 0;display:flex}.table-cards td:before{content:attr(data-label);text-align:left;text-transform:uppercase;letter-spacing:.04em;max-width:45%;color:var(--text-muted);flex:none;font-size:.78rem;font-weight:600}.table-cards .row-actions{justify-content:flex-end}.state{padding:1.25rem}}@media (width<=520px){h1{font-size:1.35rem}.content{padding-inline:1rem}.form-section,.panel,.summary{padding:1rem}.line-card{padding:.85rem}.new-product{padding-left:.6rem}.form-actions .button{flex:10rem}.page-header>.button{width:100%}.facts>div,.summary dl>div{flex-wrap:wrap;gap:.15rem 1rem}.pagination-buttons{width:100%}.pagination-buttons .button{flex:1}.roll-row{grid-template-columns:minmax(0,1fr) auto}.roll-row>.roll-number{grid-area:1/1}.roll-row>:last-child{grid-area:1/2}.roll-row>.field{grid-column:1/-1}}@media (pointer:coarse){.button,.field input,.field select{min-height:2.75rem}.button-icon{width:2.75rem}.nav-link,.tab{align-items:center;min-height:2.75rem;display:inline-flex}}.header-actions{flex-wrap:wrap;gap:.5rem;display:flex}.inline-actions{justify-content:flex-end;margin-bottom:.75rem;display:flex}.selection-bar{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.6rem .9rem;display:flex}.selection-bar span{flex:auto;font-weight:600}.select-cell{width:2.5rem}.select-cell input{width:1.15rem;height:1.15rem}@media (width<=700px){.table-cards td.select-cell{justify-content:flex-start;width:auto}.table-cards td.select-cell:before{content:none}}.label-sheet{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.label{text-align:center;color:#000;break-inside:avoid;background:#fff;border:1px dashed #888;border-radius:4px;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem;display:flex}.label .code-image{width:100%;max-width:8rem;height:auto}.label-sku{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;font-weight:700}.label-code{color:#444;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.6rem}.label-name{overflow-wrap:anywhere;font-size:.75rem}@media print{.no-print,.topbar,.sidebar,.drawer-backdrop,.skip-link{display:none!important}:root,body{color:#000;background:#fff}.app-shell{display:block}.content{max-width:none;padding:0}.label-sheet{grid-template-columns:repeat(auto-fill,minmax(45mm,1fr));gap:3mm}.label{border-color:#000}}.scan-panel{gap:1rem;display:grid}.scan-manual{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.scan-manual .field{flex:14rem}.scan-result-head{align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.scan-result-head h2{margin:0}.scan-price{font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:700}.scanner{border-radius:var(--radius);background:#000;max-width:28rem;position:relative;overflow:hidden}.scanner-video{aspect-ratio:1;object-fit:cover;width:100%;display:block}.scanner-frame{pointer-events:none;border:3px solid #fff;border-radius:12px;position:absolute;inset:18%;box-shadow:0 0 0 100vmax #00000059}
