:root{--bg:#090909;--bg-strong:#14110d;--panel:rgba(18,15,11,0.84);--panel-strong:rgba(28,23,16,0.96);--border:rgba(233,176,52,0.18);--text:#f5e8c9;--muted:#b9a07b;--primary:#ffb81d;--primary-dark:#c18911;--success:#1f7a5a;--danger:#b5442f;--warning:#f0b437;--shadow:0 24px 60px rgba(0,0,0,0.45);--radius:22px;--radius-sm:14px;--font-sans:"Avenir Next","Trebuchet MS","Segoe UI",sans-serif}*{box-sizing:border-box}html{min-height:100%;-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;font-family:var(--font-sans);color:var(--text);background:radial-gradient(circle at top center,rgba(255,184,29,.16),transparent 24%),radial-gradient(circle at bottom left,rgba(203,139,24,.12),transparent 24%),linear-gradient(145deg,#050505,#0d0b09 38%,#15110c);overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;font-size:16px}button{cursor:pointer}.page-shell{min-height:100vh}.auth-shell,.panel-shell{display:grid;min-height:100vh}.auth-shell{place-items:center;padding:24px}.auth-card,.panel-card,.scanner-card,.table-shell,.widget{background:var(--panel);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.auth-card{width:min(520px,100%);padding:36px}.auth-brand{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:12px;text-align:center}.auth-brand-title{font-size:clamp(2rem,3.2vw,3.25rem);letter-spacing:-.04em;color:#fff1d1}.auth-brand-subtitle{margin-top:0;margin-bottom:24px;text-align:center;font-size:1.08rem;font-weight:600}.eyebrow{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:rgba(255,184,29,.12);color:var(--primary);font-size:.85rem;font-weight:700;letter-spacing:.03em}.auth-card h1,.page-title,.section-title{margin:0;letter-spacing:-.03em}.auth-card h1{font-size:clamp(2rem,3vw,3rem);margin-top:14px}.subtitle{color:var(--muted);line-height:1.6}.field-grid,.form-grid{display:grid;grid-gap:16px;gap:16px}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field{display:grid;grid-gap:8px;gap:8px}.field label{font-size:.95rem;font-weight:700}.field input,.field select,.field textarea{width:100%;border:1px solid rgba(233,176,52,.18);border-radius:14px;background:rgba(255,248,235,.05);padding:13px 14px;color:var(--text)}.field select{background:linear-gradient(180deg,rgba(32,25,17,.96),rgba(19,15,10,.98));color:#fff2d0}.field select option{background:#f7edd8;color:#1e1509}.field input::placeholder,.inline-form input::placeholder{color:rgba(255,236,196,.78)}.field textarea{min-height:110px;resize:vertical}.button-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.external-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:10px 14px;border-radius:12px;border:1px solid rgba(255,184,29,.22);background:rgba(255,184,29,.08);color:#ffd27a;font-weight:700}.external-link:hover{background:rgba(255,184,29,.14)}.button,.button-danger,.button-ghost,.button-secondary{display:inline-flex;justify-content:center;align-items:center;gap:8px;border:none;border-radius:999px;padding:12px 18px;font-weight:700;transition:transform .18s ease,opacity .18s ease,background .18s ease}.button-danger:hover,.button-ghost:hover,.button-secondary:hover,.button:hover{transform:translateY(-1px)}.button{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#17120a}.button-secondary{background:rgba(255,184,29,.12);color:var(--primary)}.button-danger{background:var(--danger);color:white}.button-ghost{background:rgba(255,255,255,.02);border:1px solid rgba(233,176,52,.18);color:var(--text)}.button[disabled]{opacity:.6;cursor:not-allowed;transform:none}.alert,.notice{padding:14px 16px;border-radius:14px;font-size:.95rem}.alert-error{background:rgba(181,68,47,.14);color:#ffb6a7}.alert-success{background:rgba(31,122,90,.16);color:#94f0ce}.layout-grid{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{padding:28px 22px;border-right:1px solid var(--border);background:radial-gradient(circle at top center,rgba(255,184,29,.1),transparent 26%),linear-gradient(180deg,rgba(7,7,7,.98),rgba(18,14,10,.98));color:#fff2df;display:flex;flex-direction:column;gap:24px}.brand{display:grid;grid-gap:10px;gap:10px}.brand-badge{width:94px;display:grid;grid-gap:6px;gap:6px}.brand-arch{position:relative;width:94px;height:60px;background:linear-gradient(180deg,#ffbf2f,#d29011);-webkit-clip-path:polygon(14% 100%,28% 12%,72% 12%,86% 100%,67% 100%,59% 33%,41% 33%,33% 100%);clip-path:polygon(14% 100%,28% 12%,72% 12%,86% 100%,67% 100%,59% 33%,41% 33%,33% 100%);filter:drop-shadow(0 10px 16px rgba(255,184,29,.15))}.brand-arch-inner{position:absolute;inset:0;margin:auto;width:36px;height:38px;background:linear-gradient(180deg,#8e6315,#3f2d09);-webkit-clip-path:polygon(10% 100%,30% 14%,70% 14%,90% 100%);clip-path:polygon(10% 100%,30% 14%,70% 14%,90% 100%)}.brand-floor{width:88px;height:8px;margin-left:3px;border-radius:999px;background:radial-gradient(circle at center,rgba(255,214,129,.98),rgba(189,129,12,.28) 72%,transparent 100%)}.nav-list{display:grid;grid-gap:12px;gap:12px}.nav-link{padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.03);color:#fff5e8;border:1px solid rgba(255,184,29,.06)}.nav-link:hover{background:rgba(255,184,29,.1)}.main-area{padding:28px;display:grid;grid-gap:24px;gap:24px;min-width:0}.main-header{display:flex;justify-content:space-between;gap:18px;align-items:start}.page-title{font-size:clamp(1.8rem,3vw,2.7rem)}.muted{color:var(--muted)}.cards-grid,.content-grid,.stats-grid,.two-column{display:grid;grid-gap:18px;gap:18px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.content-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr)}.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.cards-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.panel-card,.scanner-card,.table-shell,.widget{padding:22px}.stat-card{display:grid;grid-gap:8px;gap:8px}.stat-value{font-size:2rem;font-weight:800;letter-spacing:-.04em}.table-shell{overflow:hidden}table{width:100%;border-collapse:collapse}td,th{padding:14px 10px;text-align:left;border-bottom:1px solid rgba(233,176,52,.08);vertical-align:top}.table-action-col{width:148px}.table-action-link{display:inline-flex;align-items:center;justify-content:center;min-width:126px;padding:10px 14px;border-radius:999px;background:rgba(255,184,29,.12);border:1px solid rgba(255,184,29,.18);color:var(--primary);font-weight:700;opacity:0;transform:translateY(4px);pointer-events:none;transition:opacity .18s ease,transform .18s ease,background .18s ease}.table-row-hover:focus-within .table-action-link,.table-row-hover:hover .table-action-link{opacity:1;transform:translateY(0);pointer-events:auto}.table-action-link:hover{background:rgba(255,184,29,.18)}th{font-size:.85rem;color:var(--muted)}.stock-pill,.tag{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;font-size:.85rem;font-weight:700}.stock-good{background:rgba(31,122,90,.16);color:#8cf1ca}.stock-low{background:rgba(240,180,55,.16);color:#ffcf75}.stack{display:grid;grid-gap:18px;gap:18px}.inline-form{display:flex;flex-wrap:wrap;gap:12px}.inline-form input,.inline-form select{min-width:180px;flex:1 1 220px;border:1px solid rgba(233,176,52,.2);border-radius:14px;background:linear-gradient(180deg,rgba(32,25,17,.96),rgba(19,15,10,.98));padding:13px 14px;color:#fff2d0}.inline-form select option{background:#f7edd8;color:#1e1509}.image-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.image-card{display:grid;grid-gap:10px;gap:10px;padding:14px;border-radius:18px;background:rgba(255,255,255,.03);border:1px solid rgba(233,176,52,.08)}.image-card img{border-radius:14px;background:#e7dbca}.image-card img,.scanner-video{width:100%;aspect-ratio:4/3;object-fit:cover}.scanner-video{min-height:280px;border-radius:18px;background:#1a130d}.scanner-frame{position:relative;overflow:hidden;border-radius:20px;border:1px solid rgba(255,255,255,.08)}.scanner-overlay{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.35),transparent 18%,transparent 82%,rgba(0,0,0,.35)),linear-gradient(180deg,rgba(0,0,0,.35),transparent 18%,transparent 82%,rgba(0,0,0,.35))}.scanner-focus{position:absolute;top:50%;left:50%;width:min(76vw,320px);height:min(32vw,150px);transform:translate(-50%,-50%);border:2px solid rgba(255,255,255,.92);border-radius:18px;box-shadow:0 0 0 200vmax rgba(0,0,0,.02)}.scanner-status{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(31,122,90,.12);color:#12513c;font-weight:700}.scanner-status:before{content:"";width:9px;height:9px;border-radius:999px;background:currentColor;animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}.mapping-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.kpi-note{font-size:.9rem;color:var(--muted)}.empty-state{padding:20px;border-radius:18px;border:1px dashed rgba(233,176,52,.22);color:var(--muted)}.barcode-label-page{min-height:100vh;padding:24px;display:grid;grid-gap:18px;gap:18px;background:radial-gradient(circle at top center,rgba(255,184,29,.08),transparent 22%),linear-gradient(180deg,#111111,#1a140d)}.barcode-spec,.barcode-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center}.barcode-spec{color:var(--muted);font-size:.95rem}.barcode-help{max-width:820px;margin:0 auto;display:grid;grid-gap:8px;gap:8px;color:var(--muted);font-size:.92rem;text-align:center}.barcode-label-sheet{display:grid;place-items:center;padding:18px}.barcode-label-card{padding:14px;background:#ffffff;border-radius:18px;box-shadow:0 24px 50px rgba(0,0,0,.3)}.barcode-invalid-card{width:min(560px,100%);padding:24px;border-radius:20px;border:1px solid rgba(233,176,52,.28);background:rgba(18,18,18,.92);color:#f7f1df;display:grid;grid-gap:12px;gap:12px;box-shadow:0 24px 50px rgba(0,0,0,.35)}.barcode-invalid-card p{margin:0;color:var(--muted)}.barcode-invalid-meta{display:grid;grid-gap:8px;gap:8px;padding-top:8px;border-top:1px solid rgba(233,176,52,.18);color:#d9cfb4;font-size:.95rem}.barcode-label-card svg{display:block}.print-hidden{display:flex}@media print{body{background:#ffffff}.print-hidden{display:none!important}.barcode-label-page{padding:0;background:#ffffff}.barcode-label-sheet{padding:0}.barcode-label-card{padding:0;border-radius:0;box-shadow:none}}@media (max-width:1100px){.content-grid,.layout-grid,.stats-grid,.two-column{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid rgba(255,255,255,.08);padding-top:calc(18px + env(safe-area-inset-top))}}@media (max-width:720px){.field-grid{grid-template-columns:1fr}.main-area{padding:calc(18px + env(safe-area-inset-top)) 18px calc(22px + env(safe-area-inset-bottom))}.auth-card,.panel-card,.scanner-card,.table-shell,.widget{padding:18px}td,th{padding-inline:6px}.main-header{align-items:stretch}.button,.button-danger,.button-ghost,.button-row,.button-secondary{width:100%}.scanner-focus{width:min(82vw,320px);height:min(42vw,170px)}.table-action-link{opacity:1;transform:none;pointer-events:auto;min-width:auto}}