:root{
  --primary:#7c2d5b;--primary-strong:#5f1f45;--primary-soft:#f2e7ed;--accent:#d7b56d;
  --bg:#f6f4f2;--surface:#fff;--surface-2:#fbfaf9;--sidebar:#171217;--text:#1e1a1d;--muted:#776e74;
  --border:#e7e0e3;--success:#1f8a55;--warning:#b7791f;--danger:#c94343;--info:#2768c7;
  --shadow:0 12px 34px rgba(39,24,33,.08);--radius:18px;--radius-sm:12px;--sidebar-w:248px
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,system-ui,sans-serif;color:var(--text);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}
.loading-screen,.login-screen{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 20% 20%,#fff, var(--bg) 42%,#eee7ea);z-index:999}.loading-screen{flex-direction:column;gap:14px}.loader{width:34px;height:34px;border:3px solid #ddd;border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.login-card{width:min(430px,calc(100vw - 32px));background:rgba(255,255,255,.95);padding:34px;border:1px solid var(--border);border-radius:26px;box-shadow:0 30px 90px rgba(60,35,50,.18)}.login-card h1{font-size:27px;margin:28px 0 8px}.login-card>p{color:var(--muted);line-height:1.6;margin:0 0 22px}.login-card label,.form-grid label,.form-row label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;color:#544b51;margin-bottom:13px}.login-card input{width:100%;padding:13px 14px;border:1px solid var(--border);border-radius:12px;background:#fff;outline:none}.login-card input:focus,.input:focus,.select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent)}.form-error{padding:9px 11px;border-radius:10px;background:#fff0f0;color:#9f2727;font-size:12px;margin:4px 0 10px}
.brand-lockup{display:flex;align-items:center;gap:11px}.brand-mark{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,var(--primary),var(--primary-strong));color:#fff;font-weight:800;box-shadow:0 7px 18px color-mix(in srgb,var(--primary) 28%,transparent)}.brand-name{display:block;font-size:14px;letter-spacing:.13em}.brand-sub{display:block;font-size:10px;color:var(--muted);margin-top:2px}.sidebar .brand-name{color:#fff}.sidebar .brand-sub{color:rgba(255,255,255,.46)}
.app-shell{min-height:100vh;display:flex}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-w);background:linear-gradient(180deg,#191318,#120e12);color:#fff;display:flex;flex-direction:column;padding:17px 13px;z-index:50}.sidebar-brand{padding:5px 8px 18px}.side-nav{display:flex;flex-direction:column;gap:4px;overflow:auto;flex:1}.nav-group{font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:rgba(255,255,255,.26);font-weight:800;margin:16px 10px 5px}.nav-item{border:0;background:transparent;color:rgba(255,255,255,.61);padding:10px 11px;border-radius:11px;text-align:left;display:flex;gap:10px;align-items:center;font-weight:600;font-size:12px;transition:.16s}.nav-item:hover{background:rgba(255,255,255,.07);color:#fff}.nav-item.active{background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 65%,#b74f83));color:#fff;box-shadow:0 7px 17px color-mix(in srgb,var(--primary) 30%,transparent)}.user-box{border-top:1px solid rgba(255,255,255,.08);padding:14px 7px 2px;display:flex;align-items:center;gap:9px}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.1);font-size:10px;font-weight:800}.user-meta{min-width:0;flex:1}.user-meta strong,.user-meta span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-meta strong{font-size:11px}.user-meta span{font-size:9px;color:rgba(255,255,255,.4);margin-top:2px}
.main-area{margin-left:var(--sidebar-w);min-width:0;width:calc(100% - var(--sidebar-w));min-height:100vh}.topbar{height:72px;background:rgba(255,255,255,.9);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 24px;gap:12px;position:sticky;top:0;z-index:35}.topbar h2{font-size:17px;margin:3px 0 0}.eyebrow{font-size:9px;letter-spacing:.15em;font-weight:800;color:var(--primary);text-transform:uppercase}.topbar-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.view-wrap{padding:22px}.view{display:none}.view.active{display:block}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.section-head h1,.hero-strip h1{font-size:27px;letter-spacing:-.04em;margin:4px 0 6px}.section-head p,.hero-strip p{color:var(--muted);margin:0;line-height:1.5;font-size:13px}
.btn{border:0;border-radius:11px;padding:9px 14px;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:.15s}.btn-primary{background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 72%,#b45484));color:#fff;box-shadow:0 6px 16px color-mix(in srgb,var(--primary) 20%,transparent)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 20px color-mix(in srgb,var(--primary) 26%,transparent)}.btn-secondary{background:#fff;border:1px solid var(--border);color:var(--text)}.btn-secondary:hover,.btn-ghost:hover{border-color:var(--primary);color:var(--primary)}.btn-ghost{background:transparent;border:1px solid transparent;color:var(--muted);width:100%;margin-top:8px}.btn-lg{padding:12px 16px;width:100%}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none!important}.icon-btn{width:34px;height:34px;border-radius:10px;border:1px solid transparent;background:transparent;color:inherit;display:grid;place-items:center}.icon-btn:hover{background:rgba(0,0,0,.05)}.danger{color:var(--danger)}
.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.panel-head{padding:16px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.panel h3{margin:3px 0 0;font-size:15px}.hero-strip{background:linear-gradient(130deg,#fff 35%,color-mix(in srgb,var(--primary) 9%,white));border:1px solid var(--border);border-radius:24px;padding:25px 28px;margin-bottom:18px;display:flex;justify-content:space-between;gap:20px;align-items:center;box-shadow:var(--shadow)}.hero-badge{min-width:190px;padding:14px 17px;border-radius:16px;background:#fff;border:1px solid var(--border)}.hero-badge span,.hero-badge strong{display:block}.hero-badge span{font-size:9px;text-transform:uppercase;color:var(--muted);letter-spacing:.12em;font-weight:800}.hero-badge strong{margin-top:5px}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.kpi-grid.small{grid-template-columns:repeat(3,1fr)}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:17px;box-shadow:0 4px 18px rgba(32,23,29,.05)}.kpi span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-weight:800}.kpi strong{display:block;font-size:24px;margin-top:7px;letter-spacing:-.04em}.kpi small{display:block;color:var(--muted);margin-top:5px;font-size:10px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.toolbar{padding:12px 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:10px;background:var(--surface)}.toolbar.sticky{position:sticky;top:0;z-index:5}.search-box{display:flex;align-items:center;gap:8px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:0 11px;min-width:280px;flex:1}.search-box input{border:0;outline:0;background:transparent;padding:10px 0;width:100%;font-size:12px}.muted-text{font-size:10px;color:var(--muted)}.input,.select,textarea.input{border:1px solid var(--border);border-radius:10px;background:#fff;padding:9px 11px;outline:none;width:100%;font-size:12px}.select.compact{width:auto;min-width:160px;padding:8px 10px}.color-input{height:40px;padding:4px}
.pos-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;height:calc(100vh - 116px);margin:-22px;border-top:0}.catalog-column{overflow:auto;padding:0 18px 18px}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;padding-top:15px}.product-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:12px;cursor:pointer;transition:.16s;position:relative}.product-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 50%,var(--border));box-shadow:var(--shadow)}.product-image{aspect-ratio:1.05;border-radius:12px;background:linear-gradient(145deg,#f2ecef,#fbf8fa);overflow:hidden;display:grid;place-items:center;color:var(--primary);font-size:28px;margin-bottom:10px}.product-image img{width:100%;height:100%;object-fit:cover}.product-card h4{font-size:12px;margin:0 0 4px}.product-card .meta{font-size:9px;color:var(--muted);line-height:1.5}.product-card .price{font-family:'DM Mono',monospace;font-size:14px;font-weight:700;color:var(--primary);margin-top:8px}.product-card .stock-badge{position:absolute;top:18px;right:18px;background:rgba(255,255,255,.93);border:1px solid var(--border);padding:4px 7px;border-radius:999px;font-size:9px;font-weight:700}.cart-panel{border-left:1px solid var(--border);background:#fff;display:flex;flex-direction:column;min-height:0}.cart-header{padding:15px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.cart-header h3{margin:3px 0 0;font-size:15px}.pill{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:10px}.customer-block{padding:12px 14px;border-bottom:1px solid var(--border);background:#fffdfc}.customer-block>label{font-size:9px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.1em}.customer-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:6px}.autocomplete{position:relative}.suggestions{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:100;background:#fff;border:1px solid var(--border);box-shadow:0 12px 28px rgba(0,0,0,.14);border-radius:10px;max-height:180px;overflow:auto}.suggestion{padding:8px 10px;border-bottom:1px solid #f0ecee;font-size:11px;cursor:pointer}.suggestion:hover{background:var(--primary-soft)}.suggestion strong,.suggestion span{display:block}.suggestion span{font-size:9px;color:var(--muted);margin-top:2px}.match-hint{font-size:9px;color:var(--success);margin-top:5px}.cart-items{flex:1;overflow:auto;padding:6px 14px}.cart-item{padding:10px 0;border-bottom:1px solid var(--border);display:grid;grid-template-columns:1fr auto;gap:8px}.cart-item h4{font-size:11px;margin:0 0 3px}.cart-item .variant-text{font-size:9px;color:var(--muted)}.cart-item .cart-price{font-family:'DM Mono',monospace;font-size:11px;font-weight:700;color:var(--primary);text-align:right}.qty-control{display:flex;gap:4px;align-items:center;margin-top:7px}.qty-control button{width:24px;height:24px;border-radius:7px;border:1px solid var(--border);background:var(--surface-2)}.qty-control input{width:56px;height:24px;text-align:center;border:1px solid var(--border);border-radius:7px;font-size:10px}.cart-footer{border-top:1px solid var(--border);padding:12px 14px}.form-row{display:grid;grid-template-columns:1fr 80px;gap:7px}.form-row label{margin:0}.totals{display:grid;gap:5px;padding:10px 0}.totals span{display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.totals strong{color:var(--text)}.totals .grand-total{font-size:13px;color:var(--text);padding-top:6px;border-top:1px dashed var(--border)}.totals .grand-total strong{font-size:19px;color:var(--primary)}
.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:720px}.data-table th{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);background:#fbf9fa;text-align:left;padding:10px 13px;border-bottom:1px solid var(--border)}.data-table td{padding:11px 13px;border-bottom:1px solid #f0ecee;font-size:11px;vertical-align:middle}.data-table tbody tr:hover{background:#fdfbfc}.mono{font-family:'DM Mono',monospace}.tag{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:800;background:var(--primary-soft);color:var(--primary)}.tag.green{background:#e7f5ed;color:var(--success)}.tag.amber{background:#fff2dc;color:var(--warning)}.tag.red{background:#fdeaea;color:var(--danger)}
.warehouse-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.warehouse-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:18px;box-shadow:0 5px 18px rgba(30,20,26,.05)}.warehouse-card h3{margin:8px 0 5px}.warehouse-card p{color:var(--muted);font-size:11px;margin:0;line-height:1.5}.warehouse-card .warehouse-meta{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.warehouse-icon{width:42px;height:42px;border-radius:12px;background:var(--primary-soft);display:grid;place-items:center;color:var(--primary);font-size:20px}
.label-layout,.settings-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:16px}.form-panel{padding:18px}.form-panel h3{margin-top:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}.form-grid label{margin:0}.button-row{display:flex;gap:8px;margin-top:16px}.label-preview-panel{padding:22px;display:grid;place-items:center;min-height:280px}.thermal-label{background:#fff;color:#000;border:1px dashed #bbb;width:50mm;height:30mm;padding:2.5mm;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;font-family:Arial,sans-serif}.thermal-label.size-40x30{width:40mm;height:30mm}.thermal-label.size-60x40{width:60mm;height:40mm}.thermal-label .label-name{font-size:9pt;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.thermal-label .label-variant{font-size:7pt}.thermal-label .label-sku{font-size:7pt;font-family:monospace}.barcode-holder svg{width:100%;height:10mm}.qr-holder{display:flex;align-items:center;gap:3mm}.qr-box canvas,.qr-box img{width:14mm!important;height:14mm!important}.brand-preview{background:linear-gradient(135deg,#171217,#2b2029);color:#fff;border-radius:16px;padding:18px;display:flex;align-items:center;gap:12px}.brand-preview strong,.brand-preview span{display:block}.brand-preview span{font-size:10px;color:rgba(255,255,255,.55);margin-top:3px}.preview-card{margin-top:14px;border:1px solid var(--border);border-radius:14px;padding:16px;background:var(--surface-2)}.preview-card p{color:var(--muted);font-size:11px;line-height:1.5}
.empty-state{text-align:center;padding:55px 20px;color:var(--muted)}.empty-state.compact{padding:30px 15px}.empty-state span{font-size:28px;display:block;margin-bottom:7px}.empty-state strong{display:block;color:var(--text);font-size:12px}.empty-state p{font-size:10px;line-height:1.5;margin:5px auto 0;max-width:220px}.list{padding:0 16px}.list-row{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--border);font-size:11px}.list-row:last-child{border-bottom:0}.list-row small{color:var(--muted)}
.modal-backdrop{position:fixed;inset:0;background:rgba(24,15,21,.56);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:18px}.modal{width:min(720px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 30px 90px rgba(0,0,0,.3)}.modal.wide{width:min(980px,100%)}.modal-head{padding:19px 21px 13px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#fff;z-index:2}.modal-head h2{font-size:18px;margin:0}.modal-body{padding:18px 21px}.modal-actions{padding:14px 21px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px;position:sticky;bottom:0;background:#fff}.variant-builder{border:1px solid var(--border);border-radius:14px;overflow:hidden}.variant-row,.variant-head{display:grid;grid-template-columns:1fr .8fr 1.15fr .75fr .75fr .7fr 34px;gap:7px;align-items:center;padding:8px}.variant-head{background:#faf7f9;color:var(--muted);font-size:9px;text-transform:uppercase;font-weight:800;letter-spacing:.07em}.variant-row{border-top:1px solid var(--border)}.variant-row:first-of-type{border-top:0}.variant-row input{padding:7px 8px}.variant-picker{display:grid;grid-template-columns:1fr auto;gap:16px}.variant-list{border:1px solid var(--border);border-radius:14px;overflow:hidden}.variant-choice{display:grid;grid-template-columns:1fr 90px 80px;align-items:center;gap:8px;padding:10px;border-bottom:1px solid var(--border)}.variant-choice:last-child{border-bottom:0}.variant-choice .vmeta strong,.variant-choice .vmeta span{display:block}.variant-choice .vmeta strong{font-size:11px}.variant-choice .vmeta span{font-size:9px;color:var(--muted);margin-top:2px}.variant-choice input{width:80px;text-align:center}.variant-summary{min-width:180px;border:1px solid var(--border);border-radius:14px;padding:13px;background:#fcfafb;height:max-content}.variant-summary h4{margin:0 0 10px}.variant-summary span{display:flex;justify-content:space-between;font-size:10px;margin:6px 0}.toast-root{position:fixed;right:18px;bottom:18px;display:grid;gap:8px;z-index:999}.toast{background:#1d181c;color:#fff;padding:11px 14px;border-radius:12px;box-shadow:0 12px 35px rgba(0,0,0,.25);font-size:11px;min-width:240px}.toast.success{background:#17653e}.toast.error{background:#9d2f2f}
.mobile-only{display:none}
@media(max-width:1080px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.pos-layout{grid-template-columns:minmax(0,1fr) 330px}.label-layout,.settings-grid{grid-template-columns:1fr}.grid-2{grid-template-columns:1fr}}
@media(max-width:820px){:root{--sidebar-w:230px}.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.main-area{margin-left:0;width:100%}.mobile-only{display:grid}.topbar{padding:0 14px}.topbar-actions .btn-secondary{display:none}.view-wrap{padding:14px}.pos-layout{display:block;height:auto;margin:-14px}.cart-panel{border-left:0;border-top:1px solid var(--border);min-height:60vh}.catalog-column{max-height:none}.section-head{align-items:flex-start;flex-direction:column}.kpi-grid,.kpi-grid.small{grid-template-columns:1fr 1fr}.hero-strip{flex-direction:column;align-items:flex-start}.hero-badge{width:100%}.form-grid{grid-template-columns:1fr}.variant-picker{grid-template-columns:1fr}.topbar-actions .compact{max-width:150px}.product-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.topbar-actions .btn{display:none}.kpi-grid,.kpi-grid.small{grid-template-columns:1fr}.product-grid{grid-template-columns:1fr}.customer-grid{grid-template-columns:1fr}.variant-head{display:none}.variant-row{grid-template-columns:1fr 1fr}.variant-row .remove-variant{grid-column:2}.hero-strip h1,.section-head h1{font-size:23px}.view-wrap{padding:10px}.pos-layout{margin:-10px}.search-box{min-width:0}.topbar{height:64px}}
@media print{body *{visibility:hidden!important}#print-area,#print-area *{visibility:visible!important}#print-area{position:absolute;left:0;top:0}.thermal-label{break-after:page;border:0}}
