:root{--bg:#f4f5f7;--surface:#fff;--border:#d9dce1;--text:#16191d;--muted:#667080;--primary:#1f5fbf;--primary-hover:#194d9c;--danger:#b3261e;--success:#1b7f4b;--radius:10px;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px}*{box-sizing:border-box}body{margin:0}h1{margin:0;font-size:24px}h2{margin:0 0 12px;font-size:16px}h3{color:var(--muted);margin:20px 0 8px;font-size:14px}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}.muted{color:var(--muted)}.strong{color:var(--text);font-weight:600}.error{color:var(--danger);font-size:14px}.success{color:var(--success);font-size:14px}.negative{color:var(--danger)}.numeric{text-align:right;font-variant-numeric:tabular-nums}.pad{margin:0;padding:16px}.center{place-items:center;min-height:100vh;padding:16px;display:grid}.shell{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;gap:20px;height:100vh;padding:20px 12px;display:flex;position:sticky;top:0}.brand{padding:0 10px;font-size:20px;font-weight:800}.sidebar nav{flex-direction:column;gap:2px;display:flex}.nav-link{color:var(--text);border-radius:8px;padding:9px 10px}.nav-link:hover{background:var(--bg);text-decoration:none}.nav-link.active{color:var(--primary);background:#e6effb;font-weight:600}.nav-toggle{width:100%;font:inherit;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;margin-top:8px;display:flex}.nav-toggle .chevron{font-size:18px;line-height:1;transition:transform .15s}.nav-toggle[aria-expanded=true] .chevron{transform:rotate(90deg)}.nav-more{flex-direction:column;gap:2px;padding-left:10px;display:flex}.nav-group{border-top:1px solid var(--border);flex-direction:column;gap:2px;margin-top:10px;padding-top:10px;display:flex}.nav-group-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text);padding:4px 10px;font-size:12px;font-weight:700}.sidebar-footer{margin-top:auto;padding:0 10px}.user-name{margin-bottom:4px;font-weight:600}.main{min-width:0;padding:24px 28px 48px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.back{margin-bottom:6px;font-size:14px;display:inline-block}.actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.button{border:1px solid var(--border);background:var(--surface);min-height:38px;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;padding:0 14px;font-weight:600;display:inline-flex}.button:hover{border-color:var(--primary);text-decoration:none}.button.primary{background:var(--primary);border-color:var(--primary);color:#fff}.button.primary:hover{background:var(--primary-hover)}.button:disabled,.button.disabled{opacity:.55;cursor:default}.link{font:inherit;color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0}.link:hover{text-decoration:underline}.link.danger{color:var(--danger)}.confirm{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.badge{color:var(--muted);vertical-align:middle;background:#eceef1;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}input,select,textarea{border:1px solid var(--border);background:var(--surface);width:100%;min-height:38px;color:var(--text);font:inherit;border-radius:8px;padding:7px 10px}textarea{resize:vertical}input:focus,select:focus,textarea:focus,.button:focus-visible,.chip:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.field{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.field>span:first-child{color:var(--muted);font-size:13px}.grid-2,.grid-3,.grid-4{gap:0 14px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.field.wide{grid-column:1/-1}.form h2{margin-top:18px}.form h2:first-child{margin-top:0}.inline-form{gap:8px;margin-top:10px;display:flex}.inline-form select{width:auto}.login{width:100%;max-width:380px;padding:28px}.login h1{font-size:28px}.login .button{width:100%;margin-top:6px}.toolbar{flex-direction:column;gap:12px;margin-bottom:14px;display:flex}.search{max-width:560px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--border);background:var(--surface);min-height:34px;font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.chip.selected{background:var(--primary);border-color:var(--primary);color:#fff}.chip .count{opacity:.75;font-size:12px}.table-card{padding:0;overflow-x:auto}.table{border-collapse:collapse;width:100%}.table th{text-align:left;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 12px;font-size:13px;font-weight:600}.table th.numeric{text-align:right}.table td{vertical-align:middle;border-bottom:1px solid #eceef1;padding:8px 12px}.table tr:last-child td{border-bottom:none}.table tr.clickable{cursor:pointer}.table tr.clickable:hover td{background:#f7f9fc}.table.compact td{padding:6px 8px;font-size:13px}.sort{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}.thumb{object-fit:cover;background:#eceef1;border-radius:6px;width:44px;height:44px;display:block}.pagination{justify-content:space-between;align-items:center;margin-top:14px;display:flex}.pager{align-items:center;gap:12px;display:flex}.columns{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.side{flex-direction:column;gap:20px;display:flex}.gallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.gallery figure{margin:0}.gallery img,.gallery .pending{aspect-ratio:1;object-fit:cover;background:#eceef1;border-radius:8px;width:100%;display:block}.gallery .pending{text-align:center;color:var(--muted);place-items:center;padding:8px;font-size:12px;display:grid}.gallery figcaption{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 6px;margin-top:6px;font-size:13px;display:flex}.gallery figcaption select{width:auto;min-height:30px;padding:2px 6px}.dropzone.drop{outline:2px dashed var(--primary);outline-offset:-2px;background:#e6effb}.dropzone .hint{margin:8px 0 0;font-size:13px}.links{margin:0;padding:0;list-style:none}.links li{border-bottom:1px solid #eceef1;justify-content:space-between;gap:12px;padding:6px 0;display:flex}.links a{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stock-list{margin:0 0 14px;padding:0;list-style:none}.stock-list li{border-bottom:1px solid #eceef1;justify-content:space-between;padding:6px 0;display:flex}.stock-form{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.reference-form{max-width:760px;margin-bottom:20px}@media (width<=1000px){.columns{grid-template-columns:1fr}}@media (width<=720px){.shell{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--border);flex-flow:wrap;align-items:center;gap:10px;height:auto;padding:10px 12px;position:static}.sidebar nav{flex-flow:wrap}.nav-group{border-top:none;margin-top:0;padding-top:0}.sidebar-footer{align-items:center;gap:10px;margin:0 0 0 auto;display:flex}.user-name{margin:0}.main{padding:16px}.grid-3,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}.small{font-size:13px}.warning{color:#9a6700}.sale-section{margin-bottom:20px}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.section-head h2{margin:0}.sale-lines td{vertical-align:top}.sale-lines input.narrow{width:110px;margin-left:auto;display:block}input.numeric{text-align:right}.picker{max-width:560px;margin-top:14px}.picker-results{border:1px solid var(--border);background:var(--surface);border-radius:8px;margin:6px 0 0;padding:4px;list-style:none}.picker-results button{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.picker-results button:hover,.picker-results button:focus-visible{background:#e6effb;outline:none}.fee-row{grid-template-columns:170px 1fr 150px auto;align-items:center;gap:8px;margin-bottom:8px;display:grid}.totals dl{grid-template-columns:1fr auto;gap:8px 16px;margin:0;display:grid}.totals dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.button.danger-outline{color:var(--danger)}.button.danger-outline:hover{border-color:var(--danger)}@media (width<=720px){.fee-row{grid-template-columns:1fr 1fr}}.table tr.dimmed td{opacity:.55}.table th select{min-height:32px;padding:2px 6px;font-weight:600}p.card{margin-top:0}.row-check{cursor:pointer;width:18px;height:18px;min-height:18px;accent-color:var(--primary);padding:0}.bulk-bar{border:1px solid var(--primary);border-radius:var(--radius);z-index:2;background:#e6effb;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:10px 14px;display:flex;position:sticky;top:8px}.bulk-bar select,.bulk-bar input{width:auto}.bulk-bar input{min-width:260px}.table tr.group-row td{background:var(--bg);border-bottom:1px solid var(--border);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:8px 12px;font-size:13px;font-weight:700}.table tr.group-row .count{margin-left:6px;font-weight:400}.details{grid-template-columns:190px 1fr;gap:0;margin:0;display:grid}.details dt,.details dd{border-bottom:1px solid #eceef1;margin:0;padding:9px 0}.details dt{color:var(--muted);font-size:14px}.details dd{white-space:pre-wrap;overflow-wrap:anywhere}.gallery.readonly figcaption{color:var(--muted);justify-content:center}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:4px;min-width:0;padding:14px 16px;display:flex}.kpi-label{color:var(--muted);font-size:13px}.kpi-value{font-variant-numeric:tabular-nums;font-size:22px}.kpi-hint{color:var(--muted);font-size:13px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:20px;margin-bottom:20px;display:grid}.stats-separator{background:var(--border);height:1px;margin:28px 0 20px}h2.pad-title{margin:0;padding:14px 12px 4px}.inline-field{color:var(--muted);align-items:center;gap:6px;font-size:14px;display:inline-flex}.inline-field input{width:auto}.plain-list{max-height:320px;margin:0;padding:0;list-style:none;overflow-y:auto}.plain-list li{border-bottom:1px solid #eceef1;padding:6px 0}.plain-list li:last-child{border-bottom:none}.table tr.total-row td{border-top:1px solid var(--border);font-weight:600}@media (width<=1000px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid{grid-template-columns:minmax(0,1fr)}}.stats-grid.single{grid-template-columns:minmax(0,1fr)}input.narrow-xs{width:64px;margin-left:auto;display:block}input.invalid{border-color:var(--danger)}.margin-result{border-radius:var(--radius);color:var(--success);background:#e8f5ee;flex-direction:column;gap:2px;margin:14px 0 8px;padding:14px 16px;display:flex}.margin-result strong{font-variant-numeric:tabular-nums;font-size:26px}.margin-result span{font-size:13px}.margin-result.loss{color:var(--danger);background:#fbeaea}.simulator .totals dd{font-variant-numeric:tabular-nums}.table-scroll{margin:0 -6px;overflow-x:auto}.vinted-settings{flex-direction:column;gap:20px;max-width:760px;display:flex}.vinted-sync-result{margin-bottom:14px}.vinted-sync-result p{margin:0 0 4px}.steps{color:var(--muted);margin:0 0 14px;padding-left:20px}.steps li{margin-bottom:4px}td .badge{white-space:nowrap;margin-left:0}.badge.status-active{color:var(--success);background:#dff3e7}.badge.status-sold{color:var(--primary);background:#e6effb}.badge.status-reserved{color:#9a6700;background:#fdf1d3}.copy-field{border-bottom:1px solid #eceef1;justify-content:space-between;align-items:flex-start;gap:12px;padding:9px 0;display:flex}.copy-field:last-child{border-bottom:none}.copy-field>div{min-width:0}.copy-field .button{flex-shrink:0;min-width:92px}.copy-value{overflow-wrap:anywhere}.copy-value.multiline{white-space:pre-wrap}.bordereau-columns{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px;display:grid}.sheet-wrap{justify-content:center;display:flex}.sheet{border:1px solid var(--border);touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;width:min(100%,70.7214vh - 106.082px);min-width:320px;height:auto;overflow:visible;box-shadow:0 2px 10px #16191d14}.sheet:focus{outline:none}.sheet:focus-visible{border-color:var(--primary)}.sheet-item{cursor:move}.sheet.erasing .sheet-item{cursor:crosshair}.sheet-erased{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.sheet-brush{fill:#fff9;stroke:var(--primary);stroke-width:1px;pointer-events:none}.brush-size{margin:14px 0 0}.brush-size input{min-height:24px;padding:0}.sheet-empty{cursor:pointer;outline:none}.sheet-empty rect{fill:#fafbfc}.sheet-empty:hover rect,.sheet-empty:focus-visible rect,.sheet-empty.drop rect{fill:#e6effb}.sheet-empty text{fill:var(--muted);text-anchor:middle;pointer-events:none;font-size:13px}.sheet-empty .sheet-plus{fill:var(--primary);font-size:34px}.sheet-guides line{stroke:var(--border);stroke-width:1px;stroke-dasharray:5 4;pointer-events:none}.sheet-selection{fill:none;stroke:var(--primary);stroke-width:1.2px;pointer-events:none}.sheet-handle{fill:#fff;stroke:var(--primary);stroke-width:1.2px}.sheet-handle.nwse{cursor:nwse-resize}.sheet-handle.nesw{cursor:nesw-resize}.sheet-handle.rotate{cursor:grab}.check{cursor:pointer;align-items:center;gap:8px;margin-top:14px;font-size:14px;display:flex}.check input{width:auto;min-height:0;margin:0}.section-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.section-list li{border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:4px 8px 4px 4px;display:flex}.section-list li.selected{border-color:var(--primary);background:#e6effb}.section-name{min-width:0;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;gap:1px;padding:4px 6px;display:flex}.section-name .muted{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tool-row{gap:8px;margin-top:10px}.print-frame{visibility:hidden;border:0;width:0;height:0;position:fixed}@media (width<=900px){.bordereau-columns{grid-template-columns:minmax(0,1fr)}}
