:root{--primary:#0f4c81;--primary-dark:#0b3a63;--primary-light:#e8f1f8;--accent:#0e9594;--accent-light:#e6f4f4;--bg:#f4f6f9;--card:#fff;--border:#e2e8f0;--text:#1e293b;--muted:#64748b;--green:#16a34a;--green-bg:#dcfce7;--amber:#d97706;--amber-bg:#fef3c7;--blue:#2563eb;--blue-bg:#dbeafe;--red:#dc2626;--red-bg:#fee2e2;--purple:#7c3aed;--purple-bg:#ede9fe;--radius:10px;--shadow:0 1px 3px #0f284614, 0 4px 14px #0f28460f}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px}h2{color:var(--primary-dark);margin:0 0 20px;font-size:21px;font-weight:800}h3{color:var(--primary-dark);font-size:15px}.loading{text-align:center;color:var(--muted);padding:2rem}input,select,textarea,button{font:inherit}input,select,textarea{border:1px solid var(--border);color:var(--text);background:#fff;border-radius:8px;outline:none;padding:10px 12px;transition:border .15s}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%}input:focus,select:focus,textarea:focus{border-color:var(--primary)}button{cursor:pointer;background:var(--primary);color:#fff;border:none;border-radius:8px;padding:10px 18px;font-weight:600;transition:filter .15s}button:hover{filter:brightness(1.08)}button:disabled{opacity:.5;cursor:not-allowed;filter:none}.error{color:var(--red)}input.qo-locked{color:var(--muted);background:#f8fafc}.warn{color:var(--amber)}.ok{color:var(--green);font-weight:600}.hint{color:var(--muted);font-size:12.5px}.btn-sm{padding:6px 12px;font-size:13px}.btn-ghost{color:var(--primary);border:1px solid var(--border);background:0 0}.btn-ghost:hover{background:var(--primary-light);filter:none}.btn-danger{background:var(--red-bg);color:var(--red)}.right{text-align:right}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-pad{padding:20px}.frow{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.frow label{margin-bottom:0}.field{margin-bottom:16px}.field label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.qo-suggest-anchor{position:relative}.qo-suggest-box{z-index:40;background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:8px;max-height:280px;position:absolute;top:4px;left:0;right:0;overflow:auto}.qo-suggest-item{cursor:pointer;border-bottom:1px solid #f1f5f9;padding:8px 12px;font-size:13.5px}.qo-suggest-item:last-child{border-bottom:none}.qo-suggest-item:hover,.qo-suggest-item.highlighted{background:var(--primary-light)}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;display:flex}.page-head h1{color:var(--primary-dark);margin:0;font-size:21px;font-weight:800}.page-head .sub{color:var(--muted);margin-top:3px;font-size:13px}.filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.chip{border:1px solid var(--border);color:var(--muted);background:#fff;border-radius:20px;padding:7px 15px;font-size:13px;font-weight:600}.chip.active{background:var(--primary);border-color:var(--primary);color:#fff}.filters select,.filters input{padding:7px 10px}.filters input{min-width:220px}.filters select,.filters input:not([type=checkbox]):not([type=radio]){width:auto}.breadcrumb{flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:16px;font-size:13.5px;font-weight:600;display:flex}.breadcrumb a{color:var(--primary);cursor:pointer}.breadcrumb a:hover{text-decoration:underline}.breadcrumb span{color:var(--text)}.breadcrumb .sep{color:var(--muted);margin:0 2px;font-weight:400}.browse-opts{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px;display:grid}.browse-opt{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);text-align:left;cursor:pointer;padding:28px 26px;transition:transform .12s,box-shadow .12s,border-color .12s}.browse-opt:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 6px 20px #0f284621}.browse-opt .bo-label{color:var(--primary-dark);font-size:19px;font-weight:700}.browse-opt .bo-count{color:var(--muted);margin-top:6px;font-size:14px}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px;display:grid}.pcard{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:10px;padding:18px;transition:transform .12s,box-shadow .12s;display:flex;position:relative}.pcard:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0f284621}.pcard .cat{letter-spacing:.7px;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:700}.favbtn{color:#cbd5e1;background:0 0;border:none;padding:0;font-size:21px;line-height:1;transition:color .15s,transform .1s;position:absolute;top:12px;right:12px}.favbtn:hover{color:var(--amber);filter:none;transform:scale(1.15)}.favbtn.on{color:var(--amber)}.pcard h3{margin:0;font-size:15.5px}.badges{flex-wrap:wrap;gap:6px;display:flex}.badge{background:var(--primary-light);color:var(--primary);border-radius:6px;padding:3px 8px;font-size:11.5px;font-weight:600}.badge.warn{background:var(--amber-bg);color:var(--amber)}.pcard .rng{color:var(--muted);font-size:12.5px;line-height:1.6}.pcard .foot{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.sku{color:var(--muted);font-family:ui-monospace,monospace;font-size:11.5px}.empty{text-align:center;color:var(--muted);grid-column:1/-1;padding:56px 20px}.empty .big{margin-bottom:10px;font-size:40px}.cart-prod{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);margin-bottom:14px;overflow:hidden}.cart-prod .hd{border-bottom:1px solid var(--border);background:#fafbfc;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.cart-prod .hd b{color:var(--primary-dark)}.lines{flex-wrap:wrap;gap:8px;padding:12px 16px;display:flex}.line-pill{background:var(--primary-light);color:var(--primary-dark);border-radius:8px;align-items:center;gap:8px;padding:5px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.line-pill .x{cursor:pointer;color:var(--red);font-weight:800}.muted{color:var(--muted)}.mt{margin-top:14px}.mb{margin-bottom:14px}.onum{color:var(--primary-dark);font-family:ui-monospace,monospace;font-weight:800}.ordbox{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);margin-bottom:12px;overflow:hidden}.ordbox .hd{cursor:pointer;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:13px 18px;display:flex}.ordbox .hd:hover{background:#f8fafc}.ordbox .body{border-top:1px solid var(--border);padding:16px 18px;display:none}.ordbox.open .body{display:block}.ordbox.printed{background:var(--accent-light);border-color:var(--accent)}.ordbox.printed .hd:hover{background:#d9eeee}.badge-re{background:var(--accent);color:#fff;letter-spacing:.3px;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:700}.badge-deposito{background:var(--purple);color:#fff;letter-spacing:.3px;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:700}.timeline{flex-direction:column;gap:0;margin:8px 0;display:flex}.tl-item{gap:12px;font-size:13px;display:flex}.tl-item .dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:11px;height:11px;margin-top:3px}.tl-item .bar{background:var(--border);flex:1;width:2px;margin:2px 0 2px 4.5px}.re-panel{border:1px solid var(--accent);background:var(--accent-light);border-radius:var(--radius);margin-bottom:12px;padding:11px 13px}.re-panel .re-head{color:var(--accent);letter-spacing:.3px;margin-bottom:5px;font-size:12.5px;font-weight:800}.re-panel .re-eye{color:var(--text);margin-top:3px;font-family:ui-monospace,monospace;font-size:12.5px}.re-panel .re-eye b{color:var(--primary-dark);margin-right:6px}.ship-input{border:1px solid var(--border);text-align:center;border-radius:6px;width:52px;padding:3px 5px;font-weight:700}.ship-input.short{border-color:var(--purple);background:var(--purple-bg);color:var(--purple)}.topbar{background:var(--primary);color:#fff;z-index:50;height:58px;box-shadow:var(--shadow);align-items:center;gap:22px;padding:0 26px;display:flex;position:sticky;top:0}.topbar .brand{letter-spacing:.4px;white-space:nowrap;font-size:17px;font-weight:800}.topbar .brand span{color:#7fd4d3}.topbar nav{flex:1;align-items:center;gap:4px;display:flex}.topbar nav button{color:#cfe0ee;background:0 0;border:none;border-radius:8px;padding:8px 14px;font-size:14px;font-weight:600}.topbar nav button:hover{color:#fff;filter:none;background:#ffffff1f}.topbar nav button.active{color:#fff;background:#ffffff2e}.userchip{align-items:center;gap:10px;font-size:13px;display:flex}.userchip .avatar{background:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-weight:700;display:flex}.userchip .meta{text-align:right;line-height:1.25}.userchip .meta .co{font-weight:700}.userchip .meta .rl{color:#a9c4da;font-size:11px}.topbar .logout{color:#fff;background:#ffffff24;padding:7px 12px;font-size:12.5px}.topbar .logout:hover{background:#ffffff38}main{max-width:1240px;margin:0 auto;padding:26px 26px 70px}.login-wrap{background:linear-gradient(135deg,#0b3a63 0%,#0f4c81 55%,#0e9594 130%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-box{background:#fff;border-radius:16px;width:92vw;max-width:400px;margin:0;padding:42px 40px;box-shadow:0 20px 60px #0000004d}.login-box h1{text-align:center;color:var(--primary);margin:0 0 28px;font-size:24px;font-weight:800}.login-box form{flex-direction:column;gap:16px;display:flex}.login-box label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.eye-panel,.product-detail,.customer-form,.import-upload,.re-upload{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:14px;padding:20px;display:flex}.eye-panel label,.product-detail label,.customer-form label,.import-upload label,.re-upload label,.card label{color:var(--muted);text-transform:uppercase;letter-spacing:.3px;flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.product-detail>button,.customer-form>button,.import-upload>button,.remote-edging>button{align-self:flex-start}table{border-collapse:collapse;background:var(--card);border-radius:var(--radius);width:100%;box-shadow:var(--shadow);overflow:hidden}th,td{text-align:left;vertical-align:middle;border-bottom:1px solid #eef2f6;padding:11px 14px}th{text-transform:uppercase;letter-spacing:.6px;color:var(--muted);border-bottom:2px solid var(--border);background:#fafbfc;font-size:11.5px;font-weight:700}tr.detail td{background:#f8fafc;padding:16px 18px}tr.active td{background:var(--primary-light)}tr.clickable:hover td{cursor:pointer;background:#f8fafc}.kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:20px;display:grid}.kpi{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 18px}.kpi .n{color:var(--primary-dark);font-size:26px;font-weight:800}.kpi .l{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-top:2px;font-size:12px;font-weight:600}.pulse{background:var(--green);border-radius:50%;width:9px;height:9px;margin-right:7px;animation:1.6s infinite pulse;display:inline-block}@keyframes pulse{0%{box-shadow:0 0 #16a34a80}70%{box-shadow:0 0 0 8px #16a34a00}to{box-shadow:0 0 #16a34a00}}.status{border-radius:20px;align-items:center;gap:6px;padding:4px 12px;font-size:12px;font-weight:700;display:inline-flex}.st-received{background:var(--amber-bg);color:var(--amber)}.st-processing{background:var(--blue-bg);color:var(--blue)}.st-shipped{background:var(--green-bg);color:var(--green)}.st-partial{background:var(--purple-bg);color:var(--purple)}.st-cancelled{background:var(--red-bg);color:var(--red)}.tele-top{grid-template-columns:300px 1fr;align-items:start;gap:18px;display:grid}@media (width<=900px){.tele-top{grid-template-columns:1fr}}.tele-drop{border:2px dashed var(--border);border-radius:var(--radius);text-align:center;cursor:pointer;background:#fbfdff;padding:22px 14px;transition:all .15s;display:block}.tele-drop:hover,.tele-drop.hot{border-color:var(--accent);background:var(--accent-light)}.tele-drop .g{margin-bottom:8px;font-size:26px;line-height:1}.tele-drop b{color:var(--primary-dark);font-size:14px;display:block}.tele-drop span{color:var(--muted);margin-top:5px;font-family:ui-monospace,monospace;font-size:12px;display:block}.tele-ro{grid-template-columns:1fr 1fr;gap:10px;display:grid}.tele-cell{border:1px solid var(--border);background:#f8fafc;border-radius:8px;padding:9px 11px}.tele-cell .k{text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-size:10.5px;font-weight:600}.tele-cell .v{color:var(--primary-dark);margin-top:2px;font-family:ui-monospace,monospace;font-size:18px;font-weight:700}.tele-split{grid-template-columns:1fr 1fr;align-items:start;gap:16px;margin-top:16px;display:grid}@media (width<=900px){.tele-split{grid-template-columns:1fr}}.tele-eyehead{letter-spacing:.6px;color:var(--primary-dark);text-align:center;border-bottom:2px solid var(--primary-light);margin-bottom:12px;padding-bottom:9px;font-size:12px;font-weight:800}.tele-eyehead small{color:var(--muted);letter-spacing:.3px;margin-top:2px;font-weight:600;display:block}.tele-avail{color:var(--muted);margin-top:10px;font-size:12px}.tele-avail b{color:var(--primary-dark);font-family:ui-monospace,monospace}.st-idle{color:var(--muted);background:#eef2f6}.eye-svg{aspect-ratio:1;border:1px solid var(--border);border-radius:var(--radius);background:#fbfdff;width:100%;display:block;overflow:hidden}.eye-svg .blank-circle{fill:none;stroke:#bbb;stroke-width:.5px;stroke-dasharray:2 1.5}.eye-svg .shape-path{fill:var(--accent-light);stroke:var(--primary);stroke-width:.6px}.eye-svg .oc-point{fill:var(--red)}.tele-eye-view .none{color:var(--muted);text-align:center;aspect-ratio:1;border:1px solid var(--border);border-radius:var(--radius);background:#fbfdff;justify-content:center;align-items:center;padding:20px;font-size:12px;display:flex}.print-only{display:none}.ticket-meta{flex-wrap:wrap;gap:4px 20px;margin-bottom:8px;font-size:13px;display:flex}.ticket-table{border-collapse:collapse;width:100%;margin-top:10px}.ticket-table th,.ticket-table td{border:1px solid var(--border);text-align:left;padding:6px 9px;font-size:12.5px}.ticket-footnote{color:var(--muted);margin-top:14px;font-size:11px}@media print{#app>header.topbar,#app>main>:not(#printTicket){display:none!important}#printTicket{padding:24px;display:block!important}}.print-modal{z-index:100;background:#0f172a80;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.print-modal-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);width:380px;max-width:90vw;padding:22px 24px}.print-modal-card h2{margin:0 0 14px;font-size:17px}.print-modal-card label{font-size:14px}.grids-table{box-shadow:none;border:1px solid var(--border);margin-top:.75rem}.grids-table .checkbox{text-transform:none;color:var(--text);flex-direction:row;align-items:center;gap:.4rem;font-size:.85rem;font-weight:400}.unavailable-powers{border-top:1px solid var(--border);margin-top:1.5rem;padding-top:1rem}.unavailable-table{box-shadow:none;border:1px solid var(--border);margin-bottom:.75rem}.exclude-form{flex-wrap:wrap;align-items:end;gap:.75rem;display:flex}.exclude-form label{color:var(--muted);text-transform:uppercase;letter-spacing:.3px;flex-direction:column;gap:.2rem;font-size:12px;font-weight:600;display:flex}.re-summary{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.5rem;font-size:.9rem}.re-summary p{margin:.3rem 0}.grid-scroll,.grid-table-wrap{border:1px solid var(--border);border-radius:var(--radius);background:#fff;overflow:auto}.grid-picker-table{border-collapse:separate;border-spacing:0;box-shadow:none;font-size:12px;overflow:visible}.grid-picker-table th,.grid-picker-table td{text-align:center;border-bottom:1px solid #eef2f6;border-right:1px solid #eef2f6;padding:3px}.grid-picker-table thead th{background:var(--primary);color:#fff;z-index:3;border-color:#ffffff26;position:sticky;top:0}.grid-picker-table thead th.corner{z-index:5;background:var(--primary-dark);left:0}.grid-picker-table tbody th.rowhead,.grid-picker-table tbody th{background:var(--primary-light);color:var(--primary-dark);white-space:nowrap;border-right:2px solid var(--primary);z-index:2;position:sticky;left:0}.grid-picker-table td.cell-unavailable{background:#f1f5f9}.grid-picker-table td.cell-available input{text-align:center;background:0 0;border:none;width:3.2rem;padding:6px 4px}.grid-picker-table td.cell-available input:focus{background:var(--accent-light)}.grid-picker-table td.cell-available input.filled{color:#065f46;background:#d3f1e9;font-weight:700}.grid-picker-table thead th.hl{background:var(--accent)}.grid-picker-table tbody th.hl{background:var(--accent);color:#fff}.gridbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin:14px 0;display:flex}.gridbar .tot{color:var(--primary-dark);font-weight:700}.legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:14px;font-size:12px;display:flex}.legend .sw{vertical-align:-2px;border:1px solid var(--border);border-radius:4px;width:14px;height:14px;margin-right:5px;display:inline-block}.mini-note{color:var(--muted);margin:6px 0 12px;font-size:12px}.import-diff{flex-direction:column;gap:1rem;margin-top:1.5rem;display:flex}.import-diff>p{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 18px;font-weight:600}.import-diff details{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem 1rem}.import-diff summary{cursor:pointer;color:var(--primary-dark);font-weight:700}.diff-table{box-shadow:none;margin-top:.5rem;font-size:.85rem}
