:root{--ink:#152019;--muted:#69736d;--line:#dfe6e2;--surface:rgba(255,255,255,.93);--canvas:#f4f7f5;--violet:#6755df;--violet-dark:#4f3fbe;--violet-soft:#eeebff;--green:#12bd71;--green-dark:#087a4b;--green-soft:#e6f8ef;--amber:#f3a51d;--amber-soft:#fff4dc;--red:#db4b4b;--red-soft:#ffeded;--navy:#182130;--shadow:0 12px 32px rgba(26,46,35,.08);--radius:18px;--sidebar:268px;--page-art:url("backgrounds/general.webp")}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(rgba(244,247,245,.88),rgba(244,247,245,.88)),var(--page-art) center/cover fixed;color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;line-height:1.5}body.route-catalog,body.route-suppliers{--page-art:url("backgrounds/catalogo.webp")}body.route-cart{--page-art:url("backgrounds/carrito.webp")}body.route-purchases,body.route-receiving,body.route-reports{--page-art:url("backgrounds/compras.webp")}body.route-inventory,body.route-movements,body.route-incidents{--page-art:url("backgrounds/inventario.webp")}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.muted{color:var(--muted)}.eyebrow{margin:0 0 8px;color:var(--violet);font-size:11px;font-weight:800;letter-spacing:.13em}.money{font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:var(--surface);border-right:1px solid var(--line);z-index:40;display:flex;flex-direction:column;transition:transform .25s ease}.brand{height:86px;padding:20px 22px;display:flex;align-items:center;border-bottom:1px solid var(--line)}.brand-mark{display:flex;align-items:center;gap:12px}.brand-mark>span{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,var(--violet),#8f81ff);color:#fff;font-size:23px;font-weight:900;box-shadow:0 8px 20px rgba(103,85,223,.28)}.brand-mark div{display:flex;flex-direction:column}.brand-mark b{font-size:19px;line-height:1}.brand-mark small{font-size:9px;letter-spacing:.1em;color:var(--muted);margin-top:5px}.nav{padding:14px 12px 20px;overflow:auto}.nav-group{padding:12px 12px 5px;font-size:10px;font-weight:800;letter-spacing:.12em;color:#99a19d}.nav a{min-height:45px;display:flex;align-items:center;gap:12px;border-radius:12px;padding:9px 12px;margin:3px 0;color:#414b45;font-weight:650}.nav a:hover{background:#f5f4ff;color:var(--violet-dark)}.nav a.active{color:#fff;background:linear-gradient(100deg,var(--violet),#7b68ed);box-shadow:0 8px 20px rgba(103,85,223,.22)}.nav-icon{font-size:18px;width:22px;text-align:center}.nav-badge{margin-left:auto;background:var(--red);color:#fff;min-width:21px;height:21px;padding:0 6px;border-radius:12px;display:grid;place-items:center;font-size:10px}.sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding:14px 12px}.sidebar-foot a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;color:var(--muted)}
.main{margin-left:var(--sidebar);min-height:100vh}.topbar{height:86px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;padding:0 28px;position:sticky;top:0;z-index:30;backdrop-filter:blur(12px)}.mobile-menu{display:none}.top-search{flex:1;max-width:520px;position:relative}.top-search input{width:100%;height:44px;border-radius:13px;border:1px solid var(--line);background:#f8faf9;padding:0 16px 0 42px}.top-search span{position:absolute;left:15px;top:11px;font-size:17px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:10px}.top-select{height:43px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 35px 0 12px;max-width:170px}.icon-btn{width:43px;height:43px;border:1px solid var(--line);border-radius:12px;background:#fff;display:grid;place-items:center;cursor:pointer;position:relative}.icon-btn:hover{border-color:#c8c0ff;background:var(--violet-soft)}.cart-count{position:absolute;right:-5px;top:-6px;background:var(--red);color:#fff;border-radius:12px;font-size:10px;font-weight:800;min-width:20px;height:20px;display:grid;place-items:center}.avatar{display:flex;align-items:center;gap:10px;padding-left:8px}.avatar-circle{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--green-soft);color:var(--green-dark);font-weight:900}.avatar small{display:block;color:var(--muted)}
.notice-banner{margin:18px 28px 0;padding:15px 18px;border-radius:15px;background:linear-gradient(100deg,#0bc477,#12bd71 60%,#6251dc 60%,#7e6af0);color:#fff;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow)}.notice-banner b{font-size:15px}.notice-banner .btn{margin-left:auto}.content{padding:24px 28px 54px;max-width:1640px;margin:auto}.page-head{display:flex;align-items:flex-end;gap:18px;margin-bottom:20px}.page-head h1{font-size:30px;line-height:1.15;margin:0;letter-spacing:-.025em}.page-head p{margin:6px 0 0;color:var(--muted)}.page-actions{margin-left:auto;display:flex;gap:10px;flex-wrap:wrap}.btn{min-height:42px;border:0;border-radius:11px;padding:10px 16px;font-weight:780;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:.18s ease}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--navy);color:#fff}.btn.violet{background:var(--violet);color:#fff}.btn.green{background:var(--green);color:#fff}.btn.ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn.danger{background:var(--red-soft);color:#a42727}.btn.warning{background:var(--amber-soft);color:#8b5b00}.btn.small{min-height:34px;padding:7px 10px;font-size:12px}.btn[disabled]{opacity:.5;pointer-events:none}.button-row{display:flex;gap:7px;flex-wrap:wrap}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:0 5px 18px rgba(26,46,35,.04);min-width:0}.stat.featured{background:linear-gradient(145deg,#7767ed,#5f4fd5);color:#fff;border-color:transparent}.stat-top{display:flex;justify-content:space-between;gap:10px}.stat-icon{width:38px;height:38px;border-radius:12px;background:var(--violet-soft);color:var(--violet);display:grid;place-items:center;font-size:18px}.featured .stat-icon{background:rgba(255,255,255,.16);color:#fff}.stat label{font-size:12px;color:var(--muted);font-weight:700}.featured label,.featured small{color:#eae7ff}.stat strong{display:block;font-size:27px;line-height:1.15;margin:14px 0 5px;letter-spacing:-.03em}.stat small{color:var(--muted)}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 5px 18px rgba(26,46,35,.04);padding:20px;margin-bottom:18px}.panel-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.panel-head h2,.panel h2{font-size:18px;margin:0}.panel-head p{margin:2px 0 0;color:var(--muted);font-size:12px}.panel-head .btn{margin-left:auto}.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.quick-card{border:1px solid var(--line);border-radius:15px;padding:17px;display:flex;align-items:center;gap:13px}.quick-card .stat-icon{flex:0 0 auto}.quick-card b{display:block}.quick-card span{font-size:12px;color:var(--muted)}
.filters{display:grid;grid-template-columns:2fr repeat(4,minmax(140px,1fr)) auto;gap:10px;align-items:end}.field,label{display:block}.field span,label>span{display:block;color:var(--muted);font-size:11px;font-weight:750;margin:0 0 6px}.input,input,select,textarea{width:100%;border:1px solid #dce3df;background:#fff;color:var(--ink);border-radius:11px;padding:10px 12px;outline:none;min-height:42px}.input:focus,input:focus,select:focus,textarea:focus{border-color:var(--violet);box-shadow:0 0 0 3px rgba(103,85,223,.12)}textarea{min-height:90px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid .wide{grid-column:1/-1}.form-grid hr{border:0;border-top:1px solid var(--line);margin:5px 0}.check{display:flex!important;align-items:center;gap:9px}.check input{width:18px;height:18px;min-height:0}.predictive{position:relative}.suggestions{position:absolute;left:0;right:0;top:calc(100% + 5px);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);z-index:25;max-height:300px;overflow:auto;display:none}.suggestions.open{display:block}.suggestion{padding:10px 12px;cursor:pointer;border-bottom:1px solid var(--line)}.suggestion:hover{background:var(--violet-soft)}.consult-only{display:inline-flex;align-items:center;min-height:34px;padding:7px 10px;border-radius:9px;background:#f2f5f4;color:#66736f;font-size:12px;font-weight:750;border:1px solid #dde5e2}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.product-card{background:#fff;border:1px solid var(--line);border-radius:17px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:.18s ease}.product-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#cec6ff}.product-photo{height:142px;background:linear-gradient(135deg,#eef4f0,#e3e8e5);display:grid;place-items:center;overflow:hidden;position:relative}.product-photo img{width:100%;height:100%;object-fit:cover}.product-photo .placeholder{font-size:42px;filter:saturate(.7)}.stock-chip{position:absolute;right:9px;top:9px;background:rgba(255,255,255,.93);border-radius:20px;padding:5px 9px;font-size:10px;font-weight:800;box-shadow:0 3px 9px rgba(0,0,0,.08)}.product-body{padding:15px;display:flex;flex-direction:column;flex:1}.product-body h3{font-size:15px;margin:0 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-meta{font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:8px}.product-price{font-size:18px;font-weight:850;margin:13px 0}.product-card .button-row{margin-top:auto}.qty-input{max-width:80px}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}table{border-collapse:collapse;width:100%;min-width:840px;background:#fff}th,td{padding:12px 13px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}th{background:#f7f9f8;color:#5a655f;font-size:10px;text-transform:uppercase;letter-spacing:.06em;position:sticky;top:0;z-index:1}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcfb}.cell-product{display:flex;align-items:center;gap:10px;min-width:190px}.cell-product img,.mini-photo{width:43px;height:43px;border-radius:10px;object-fit:cover;background:#edf1ef}.status{display:inline-flex;align-items:center;gap:5px;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:850;white-space:nowrap}.status.ok,.status.ENTREGADO,.status.INGRESADO,.status.COMPLETADA,.status.APROBADA{background:var(--green-soft);color:var(--green-dark)}.status.warn,.status.PENDIENTE,.status.EN_PROCESO,.status.PARCIAL,.status.COMPRADO{background:var(--amber-soft);color:#875700}.status.bad,.status.DANADO,.status.EQUIVOCADO,.status.AGOTADO,.status.RECHAZADA{background:var(--red-soft);color:#a62b2b}.status.info,.status.SOBRESTOCK{background:var(--violet-soft);color:var(--violet-dark)}.status.BAJO{background:#fff0d2;color:#8b5b00}.status::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.alerts{position:fixed;right:18px;top:98px;z-index:100;display:grid;gap:9px;max-width:min(420px,calc(100vw - 36px))}.alert{padding:13px 15px;border-radius:13px;border:1px solid;box-shadow:var(--shadow);background:#fff}.alert.success{background:var(--green-soft);color:var(--green-dark);border-color:#a9e5c8}.alert.error{background:var(--red-soft);color:#9d2828;border-color:#f0bcbc}.alert.warn{background:var(--amber-soft);color:#815300;border-color:#f2d393}
.cart-drawer{position:fixed;inset:0 0 0 auto;width:min(460px,100%);background:#fff;z-index:80;box-shadow:-18px 0 46px rgba(17,35,24,.18);transform:translateX(105%);transition:transform .25s ease;display:flex;flex-direction:column}.cart-drawer.open{transform:none}.drawer-backdrop{position:fixed;inset:0;background:rgba(11,22,16,.42);z-index:70;opacity:0;pointer-events:none;transition:.2s}.drawer-backdrop.open{opacity:1;pointer-events:auto}.drawer-head{padding:19px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px}.drawer-head h2{margin:0}.drawer-body{padding:17px;overflow:auto;flex:1}.cart-line{border:1px solid var(--line);border-radius:14px;padding:13px;margin-bottom:10px;display:grid;grid-template-columns:48px 1fr auto;gap:11px}.cart-line .mini-photo{width:48px;height:48px}.cart-line b{display:block}.cart-line small{color:var(--muted)}.drawer-foot{padding:17px 20px;border-top:1px solid var(--line);background:#fafcfb}.cart-total{display:flex;justify-content:space-between;font-size:18px;font-weight:850;margin-bottom:12px}.empty{padding:38px 18px;text-align:center;color:var(--muted)}.empty-icon{font-size:46px;display:block;margin-bottom:10px}
.modal{position:fixed;inset:0;z-index:90;background:rgba(11,22,16,.52);display:none;align-items:center;justify-content:center;padding:18px}.modal.open{display:flex}.modal-card{background:#fff;width:min(680px,100%);max-height:calc(100vh - 36px);overflow:auto;border-radius:20px;box-shadow:0 24px 60px rgba(0,0,0,.25);padding:22px}.modal-head{display:flex;align-items:center;gap:10px;margin-bottom:18px}.modal-head h2{margin:0}.modal-head .icon-btn{margin-left:auto}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.permission-item{border:1px solid var(--line);border-radius:10px;padding:9px;display:flex;gap:8px;align-items:flex-start}.permission-item input{width:17px;height:17px;min-height:0;margin-top:2px}
.login-page,.setup-page{min-height:100vh;background:radial-gradient(circle at 90% 10%,rgba(103,85,223,.18),transparent 34%),radial-gradient(circle at 5% 90%,rgba(18,189,113,.18),transparent 33%),#f3f6f4;display:grid;place-items:center;padding:24px}.login-shell{width:min(1060px,100%);display:grid;grid-template-columns:1.1fr .9fr;background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 30px 80px rgba(17,35,24,.16);min-height:630px}.login-art{background:linear-gradient(150deg,#11251b,#17462f 55%,#6653df);padding:50px;color:#fff;position:relative;overflow:hidden}.login-art:after{content:"";position:absolute;width:420px;height:420px;border:70px solid rgba(255,255,255,.08);border-radius:50%;right:-180px;bottom:-190px}.login-art .brand-mark small{color:#d9e7de}.login-art h1{font-size:45px;line-height:1.05;max-width:500px;margin:90px 0 20px}.login-art p{color:#d6e5dc;max-width:470px;font-size:16px}.feature-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:35px}.feature-pills span{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);padding:8px 11px;border-radius:20px}.login-panel{padding:50px;display:flex;flex-direction:column;justify-content:center}.login-panel h2{font-size:30px;margin:10px 0 6px}.login-panel form{display:grid;gap:14px;margin-top:26px}.login-links{display:flex;justify-content:space-between;gap:12px;margin-top:16px;color:var(--violet);font-weight:700}.setup-card{width:min(780px,100%);background:#fff;border-radius:24px;padding:34px;box-shadow:var(--shadow)}.setup-card h1{font-size:32px;margin:12px 0}.setup-card>.brand-mark{margin-bottom:28px}
.login-logo{position:relative;z-index:2;width:min(280px,78%);height:110px;padding:12px 18px;border-radius:18px;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 28px rgba(0,0,0,.16)}.login-logo img{width:100%;height:100%;object-fit:contain}.login-art.maintenance-art{background:linear-gradient(145deg,#061735,#0c3159 58%,#12a87a)}.password-field{display:grid;grid-template-columns:1fr 46px;gap:8px}.password-toggle{border:1px solid #dce3df;border-radius:11px;background:#fff;color:var(--violet);font-weight:900;cursor:pointer}.login-links a:last-child{margin-left:auto}
.portal-page{min-height:100vh;padding:34px;display:grid;place-items:center;background:radial-gradient(circle at 10% 90%,rgba(18,189,113,.19),transparent 34%),radial-gradient(circle at 90% 5%,rgba(103,85,223,.19),transparent 36%),#f3f6f4}.portal-shell{width:min(1180px,100%);padding:42px;border-radius:30px;background:rgba(255,255,255,.95);box-shadow:0 30px 80px rgba(17,35,24,.15)}.portal-heading{text-align:center;max-width:790px;margin:0 auto 26px}.portal-heading h1{font-size:clamp(34px,5vw,54px);line-height:1;margin:10px 0}.portal-heading>p:last-child{color:var(--muted);font-size:16px}.portal-logos{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:22px}.logo-tile{width:180px;height:80px;padding:10px 15px;border:1px solid var(--line);border-radius:16px;background:#fff;display:grid;place-items:center}.logo-tile.principal{width:250px;height:100px}.logo-tile img{width:100%;height:100%;object-fit:contain}.portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.portal-section-title{text-align:center;margin:30px 0 16px}.portal-section-title h2{font-size:27px;margin:4px 0}.portal-card{min-height:250px;padding:24px;border:1px solid var(--line);border-radius:21px;display:flex;flex-direction:column;gap:18px;transition:.2s;background:#fff;overflow:hidden;position:relative}.portal-card:after{content:"";position:absolute;width:150px;height:150px;border:26px solid currentColor;border-radius:50%;opacity:.055;right:-65px;bottom:-65px}.portal-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(21,32,25,.12)}.portal-card.maintenance{color:#087a62;border-top:5px solid #12bd71}.portal-card.company{color:#5745d4;border-top:5px solid #6755df}.portal-card.guest{color:#31547a;border-top:5px solid #4d7ba8}.portal-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:currentColor;color:#fff;font-size:25px}.portal-card small{font-weight:850;letter-spacing:.12em}.portal-card h2{color:var(--ink);font-size:20px;line-height:1.22;margin:5px 0 8px}.portal-card p{color:var(--muted);margin:0}.portal-card>b{margin-top:auto}.public-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px;border:1px solid #d8e2dd;border-radius:22px;background:#f8fbf9}.service-card{min-height:84px;border:0;border-radius:16px;padding:15px;display:flex;align-items:center;gap:13px;text-align:left;color:#fff;cursor:pointer;box-shadow:0 9px 22px rgba(20,43,31,.12);transition:.2s}.service-card:hover{transform:translateY(-2px)}.service-card span{flex:0 0 auto;padding:10px 12px;border-radius:12px;background:#65e6f0;color:#102f37;font-weight:900;font-size:16px}.service-card b{font-size:13px;line-height:1.35}.service-card.monthly,.service-card.maintenance-service{background:linear-gradient(135deg,#106fb0,#0b4d94)}.service-card.demo{background:linear-gradient(135deg,#13a892,#087c78)}.service-card.demo span{background:#68efd2}.service-modal>p{color:var(--muted);line-height:1.6;margin-top:-5px;margin-bottom:18px}
.company-brand{gap:10px}.company-brand img{width:52px;height:52px;object-fit:contain;border-radius:11px;background:#fff;padding:4px;border:1px solid var(--line)}.company-brand div{min-width:0}.company-brand b{display:block;max-width:178px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.company-brand small{display:block}
.system-lightbox,.loading-lightbox{position:fixed;inset:0;z-index:300;background:rgba(5,15,28,.72);backdrop-filter:blur(7px);display:none;align-items:center;justify-content:center;padding:18px}.system-lightbox.open,.loading-lightbox.open{display:flex}.system-dialog{width:min(620px,100%);border:1px solid #32a9cf;border-radius:24px;background:#092641;color:#fff;padding:34px;box-shadow:0 30px 90px rgba(0,0,0,.42);display:grid;grid-template-columns:74px 1fr;gap:24px}.dialog-symbol{width:68px;height:68px;border-radius:20px;background:#ff5473;display:grid;place-items:center;font-size:38px;font-weight:900}.system-lightbox[data-type="success"] .dialog-symbol{background:#12c98b}.system-lightbox[data-type="warn"] .dialog-symbol{background:#f1a72d}.dialog-copy small{color:#59dfff;font-weight:900;letter-spacing:.12em}.dialog-copy h2{font-size:28px;margin:7px 0 10px}.dialog-copy p{color:#c8d8e7;font-size:16px;line-height:1.55;margin:0}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.loading-card{width:min(420px,100%);text-align:center;border:1px solid #32a9cf;border-radius:24px;background:#092641;color:#fff;padding:32px;box-shadow:0 30px 90px rgba(0,0,0,.42)}.loading-card img{display:block;width:190px;height:72px;object-fit:contain;margin:0 auto 18px;background:#fff;border-radius:13px;padding:8px}.loading-card b{font-size:20px}.loading-card p{color:#bed1df;margin-bottom:0}.loading-orbit{width:58px;height:58px;border:5px solid rgba(89,223,255,.2);border-top-color:#59dfff;border-radius:50%;margin:0 auto 20px;animation:outworkSpin .8s linear infinite}@keyframes outworkSpin{to{transform:rotate(360deg)}}
.maintenance-company-grid{display:grid;gap:14px}.maintenance-company-card{border:1px solid var(--line);border-radius:17px;padding:18px;background:#fbfdfc}.company-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.company-card-head h3{font-size:19px;margin:2px 0 4px}.company-card-head small{color:var(--muted)}.company-metrics{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}.company-metrics span{border:1px solid var(--line);border-radius:12px;background:#fff;padding:9px 12px;color:var(--muted)}.company-metrics b{color:var(--ink)}.wide-modal{width:min(900px,100%)}.protected-users{display:grid;gap:8px;max-height:420px;overflow:auto}.protected-user-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:10px}.protected-user-row small{display:block;color:var(--muted);margin-top:3px}.user-edit-details{position:relative}.user-edit-details summary{list-style:none}.user-edit-details summary::-webkit-details-marker{display:none}.user-edit-form{position:absolute;right:0;top:42px;z-index:15;width:310px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);display:grid;gap:10px}.support-nav-card{margin:8px 3px 16px;padding:13px;border:1px solid #9ee9cd;background:var(--green-soft);border-radius:14px}.support-nav-card b,.support-nav-card small{display:block}.support-nav-card small{color:var(--green-dark);margin:3px 0 10px}.support-nav-card form,.support-nav-card button{width:100%}.support-company-switch{margin:0}.support-company-switch select{max-width:240px}.notice-banner.support-banner{background:linear-gradient(105deg,#087b67,#10b98a 62%,#31547a 62%,#183a60)}
.role-permission-sections{display:grid;gap:10px;margin-top:18px}.role-permission-block{border:1px solid var(--line);border-radius:14px;background:#fbfdfc;overflow:hidden}.role-permission-block>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;list-style:none}.role-permission-block>summary::-webkit-details-marker{display:none}.role-permission-block>summary:after{content:"＋";color:var(--violet);font-size:20px;font-weight:900}.role-permission-block[open]>summary:after{content:"−"}.role-permission-block>summary small{margin-left:auto;color:var(--muted)}.role-permission-block form{padding:0 14px 14px}.role-permission-block .btn{margin-top:12px}
.report-total{font-size:24px;font-weight:850}.bar-list{display:grid;gap:11px}.bar-row{display:grid;grid-template-columns:minmax(120px,1fr) 3fr auto;gap:11px;align-items:center}.bar-track{height:9px;background:#edf1ef;border-radius:10px;overflow:hidden}.bar-fill{height:100%;border-radius:10px;background:linear-gradient(90deg,var(--violet),#8e7df2)}.hide-desktop{display:none}
/* Fondos temáticos atenuados y superficies profesionales */
.sidebar{background:linear-gradient(rgba(255,255,255,.92),rgba(255,255,255,.92)),var(--page-art) center/cover}
.topbar{background:rgba(255,255,255,.9);backdrop-filter:blur(15px) saturate(1.1)}
.notice-banner{background:linear-gradient(100deg,rgba(11,196,119,.88),rgba(18,189,113,.88) 60%,rgba(98,81,220,.88) 60%,rgba(126,106,240,.88)),var(--page-art) center 42%/cover}
.btn{box-shadow:0 5px 14px rgba(24,33,48,.08)}
.panel{background:linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)),var(--page-art) center/cover;border-color:rgba(223,230,226,.9);box-shadow:0 7px 22px rgba(26,46,35,.07);backdrop-filter:blur(8px)}
.quick-card{background:linear-gradient(rgba(255,255,255,.82),rgba(255,255,255,.82)),var(--page-art) center/cover;transition:.18s ease}
.stat,.maintenance-company-card{background:linear-gradient(rgba(255,255,255,.86),rgba(255,255,255,.86)),var(--page-art) center/cover}
.quick-card:hover{border-color:#c8c0ff;transform:translateY(-2px);box-shadow:var(--shadow)}
.cart-drawer{background:linear-gradient(rgba(255,255,255,.94),rgba(255,255,255,.94)),url("backgrounds/carrito.webp") center/cover}
.modal{backdrop-filter:blur(5px)}
.modal-card{background:linear-gradient(rgba(255,255,255,.9),rgba(255,255,255,.9)),var(--page-art) center/cover;border:1px solid rgba(255,255,255,.68)}
.login-page,.setup-page{background:radial-gradient(circle at 90% 10%,rgba(103,85,223,.18),transparent 34%),radial-gradient(circle at 5% 90%,rgba(18,189,113,.18),transparent 33%),linear-gradient(rgba(243,246,244,.8),rgba(243,246,244,.8)),var(--page-art) center/cover fixed}
.portal-page{background:radial-gradient(circle at 10% 90%,rgba(18,189,113,.19),transparent 34%),radial-gradient(circle at 90% 5%,rgba(103,85,223,.19),transparent 36%),linear-gradient(rgba(243,246,244,.76),rgba(243,246,244,.76)),var(--page-art) center/cover fixed}
.portal-shell{background:rgba(255,255,255,.88);backdrop-filter:blur(8px)}
.portal-shell{border:1px solid rgba(255,255,255,.7);background:rgba(255,255,255,.9);backdrop-filter:blur(16px) saturate(1.08)}
.portal-card{background:linear-gradient(rgba(255,255,255,.84),rgba(255,255,255,.84)),var(--page-art) center/cover}
.portal-icon{width:58px;height:58px;border-radius:18px;align-self:center;font-size:27px;box-shadow:0 10px 24px rgba(21,32,25,.16)}
.system-dialog{background:linear-gradient(rgba(9,38,65,.86),rgba(9,38,65,.86)),var(--page-art) center/cover}
.route-cart .support-company-switch{display:none}

@media(max-width:1180px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{grid-template-columns:repeat(3,minmax(0,1fr))}.filters>:first-child{grid-column:span 2}}
@media(max-width:900px){:root{--sidebar:270px}.sidebar{transform:translateX(-105%);box-shadow:15px 0 40px rgba(0,0,0,.18)}.sidebar.open{transform:none}.main{margin-left:0}.mobile-menu{display:grid}.topbar{height:72px;padding:0 16px}.top-search{display:none}.avatar div:last-child{display:none}.notice-banner{margin:14px 16px 0}.content{padding:20px 16px 42px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:1fr}.top-select{max-width:145px}.hide-desktop{display:initial}.portal-grid,.public-services{grid-template-columns:1fr}.portal-card{min-height:0}.portal-shell{padding:28px}}
@media(max-width:650px){body{font-size:13px}.topbar{gap:8px}.top-select.company-select{display:none}.page-head{align-items:flex-start;flex-direction:column}.page-head h1{font-size:25px}.page-actions{margin-left:0;width:100%}.page-actions .btn{flex:1}.notice-banner{background:linear-gradient(105deg,rgba(12,191,116,.88),rgba(25,169,102,.88)),var(--page-art) center/cover;align-items:flex-start}.notice-banner .btn{display:none}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:15px}.stat strong{font-size:21px}.grid-2,.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.quick-grid{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.filters>:first-child{grid-column:auto}.product-grid{grid-template-columns:1fr 1fr;gap:10px}.product-photo{height:116px}.product-body{padding:12px}.product-body h3{font-size:13px}.product-price{font-size:15px}.product-card .button-row .btn.ghost{display:none}.panel{padding:14px;border-radius:15px}.table-wrap{border:0;overflow:visible}.responsive-table{min-width:0;display:block;background:transparent}.responsive-table thead{display:none}.responsive-table tbody{display:grid;gap:10px}.responsive-table tr{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;box-shadow:0 3px 12px rgba(0,0,0,.03)}.responsive-table td{display:grid;grid-template-columns:105px 1fr;gap:8px;padding:7px 3px;border:0;align-items:start}.responsive-table td:before{content:attr(data-label);font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase}.responsive-table td[data-label="Producto"],.responsive-table td[data-label="Artículo"]{display:block}.responsive-table td[data-label="Producto"]:before,.responsive-table td[data-label="Artículo"]:before{display:none}.responsive-table td[data-label="Acciones"]{grid-template-columns:1fr}.responsive-table td[data-label="Acciones"]:before{margin-bottom:5px}.responsive-table .button-row .btn{flex:1}.permission-grid{grid-template-columns:1fr}.login-shell{grid-template-columns:1fr;min-height:0}.login-art{display:none}.login-panel{padding:30px 22px}.setup-card{padding:24px 18px}.bar-row{grid-template-columns:1fr auto}.bar-track{grid-column:1/-1;grid-row:2}.top-actions{gap:6px}.language-select{width:67px;padding-left:7px;padding-right:5px}.content{padding-bottom:90px}.portal-page{padding:14px}.portal-shell{padding:22px 16px;border-radius:22px}.portal-logos{gap:7px}.logo-tile.principal{width:190px;height:82px}.portal-heading{margin-bottom:20px}.portal-heading h1{font-size:34px}.portal-card{padding:18px}.portal-card h2{font-size:18px}.public-services{padding:8px}.service-card{min-height:72px}.system-dialog{grid-template-columns:1fr;padding:24px}.dialog-symbol{width:58px;height:58px;border-radius:17px}.dialog-copy h2{font-size:23px}.dialog-actions{display:grid;grid-template-columns:1fr 1fr}.dialog-actions .btn{width:100%}.protected-user-row{grid-template-columns:1fr}.company-card-head{flex-direction:column}.support-company-switch select{max-width:135px}.maintenance-company-card>.button-row{display:grid}.maintenance-company-card>.button-row>*{width:100%}.maintenance-company-card>.button-row .btn{width:100%}}
@media(max-width:390px){.product-grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr}.icon-btn{width:40px;height:40px}.topbar{padding:0 10px}.avatar{padding-left:0}.avatar-circle{width:38px;height:38px}.product-photo{height:150px}}
@media print{.sidebar,.topbar,.notice-banner,.page-actions,.filters,.btn,.alerts{display:none!important}.main{margin:0}.content{padding:0}.panel,.stat{box-shadow:none;break-inside:avoid}body{background:#fff}}
@media(max-width:650px){.product-card .button-row .btn.ghost{display:inline-flex}}

/* OUTWORK INV · Tema operativo turquesa inspirado en sistemas de compras */
:root{
  --ink:#24384a;
  --muted:#718091;
  --line:#dce4e9;
  --surface:#fff;
  --canvas:#edf1f4;
  --violet:#16bda8;
  --violet-dark:#087f78;
  --violet-soft:#e1f8f4;
  --green:#1fc5a5;
  --green-dark:#087b6e;
  --green-soft:#e2f8f3;
  --amber:#edae3b;
  --amber-soft:#fff4df;
  --red:#e25861;
  --red-soft:#fff0f1;
  --navy:#29445b;
  --shadow:0 9px 24px rgba(35,62,82,.1);
  --radius:13px;
  --sidebar:246px
}
html{background:#20c8c4}
body{
  color:var(--ink);
  background:linear-gradient(135deg,#20cbc6 0%,#18b8bd 55%,#18aab3 100%);
  font-size:14px
}
.app-shell{
  min-height:calc(100vh - 20px);
  margin:10px;
  overflow:hidden;
  border-radius:23px;
  background:var(--canvas);
  box-shadow:0 18px 55px rgba(12,66,75,.22)
}
.sidebar{
  inset:10px auto 10px 10px;
  width:var(--sidebar);
  overflow:hidden;
  color:#fff;
  border:0;
  border-radius:23px 0 0 23px;
  background:#263f54;
  box-shadow:8px 0 24px rgba(24,51,70,.12)
}
.brand{
  height:92px;
  padding:17px 18px;
  border:0;
  background:linear-gradient(135deg,#27cdb5,#15b9ae)
}
.brand-mark{width:100%;color:#fff}
.brand-mark>span{
  border-radius:10px;
  background:#fff url("company-logo-placeholder.svg") center/76% auto no-repeat;
  color:#13ad9f;
  font-size:0;
  box-shadow:none
}
.brand-mark b{color:#fff;font-size:17px}
.brand-mark small{color:rgba(255,255,255,.8);font-size:8px}
.company-brand img{
  width:68px;
  height:52px;
  padding:5px;
  object-fit:contain;
  background:#fff;
  border:0;
  border-radius:10px;
  box-shadow:0 5px 15px rgba(16,80,81,.2)
}
.company-brand b{max-width:126px}
.nav{
  padding:14px 10px 20px;
  scrollbar-color:#547086 transparent;
  scrollbar-width:thin
}
.nav-group{
  padding:15px 13px 7px;
  color:#8fa5b5;
  font-size:9px
}
.nav a{
  min-height:43px;
  margin:3px 0;
  padding:9px 12px;
  color:#d4dee5;
  border-radius:8px;
  font-weight:650;
  border-left:3px solid transparent
}
.nav a:hover{
  color:#fff;
  background:#314f65;
  border-left-color:#5ee0cf
}
.nav a.active{
  color:#fff;
  background:linear-gradient(90deg,#1ebea8,#1cb4ad);
  border-left-color:#9ffff1;
  box-shadow:0 7px 17px rgba(9,33,48,.22)
}
.nav-icon{
  width:25px;
  color:inherit;
  font-size:17px;
  font-style:normal
}
.nav-badge{background:#ff6971}
.sidebar-foot{
  border-top:1px solid #38566c;
  padding:12px 10px;
  background:#20384c
}
.sidebar-foot a{
  color:#cbd7df;
  border-radius:8px
}
.sidebar-foot a:hover{background:#314f65;color:#fff}
.support-nav-card{
  border:1px solid #53d7c3;
  color:#173c42;
  background:#ccf5ed;
  border-radius:10px
}
.main{
  min-height:calc(100vh - 20px);
  margin-left:var(--sidebar);
  overflow:hidden;
  border-radius:0 23px 23px 0;
  background:var(--canvas)
}
.topbar{
  height:74px;
  top:10px;
  padding:0 24px;
  border-bottom:1px solid #d8e1e7;
  background:#fff;
  box-shadow:0 3px 12px rgba(35,62,82,.06);
  backdrop-filter:none
}
.top-search input{
  height:42px;
  border-color:#dce4e9;
  border-radius:8px;
  background:#f5f7f9
}
.top-search span{color:#80909d}
.top-select{
  height:41px;
  border-color:#d8e1e7;
  border-radius:8px;
  background:#f8fafb;
  color:#3d5365
}
.icon-btn{
  width:41px;
  height:41px;
  border:1px solid #d7e1e6;
  border-radius:9px;
  color:#29445b;
  background:#fff
}
.icon-btn:hover{
  color:#087f78;
  border-color:#6bd9ca;
  background:#e4f8f4
}
.top-actions>.icon-btn{
  color:#fff;
  border-color:#17b7a6;
  background:#19bda9
}
.avatar-circle{
  border-radius:10px;
  color:#fff;
  background:#29445b
}
.avatar b{color:#29445b}
.notice-banner,
.notice-banner.support-banner{
  min-height:60px;
  margin:0;
  padding:12px 24px;
  border:0;
  border-radius:0;
  color:#fff;
  background:#405b73;
  box-shadow:none
}
.notice-banner>span{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  color:#fff;
  background:#20c4ad
}
.notice-banner b{font-size:14px}
.notice-banner div div{color:#cfdbe3;font-size:12px}
.notice-banner .btn{
  border:1px solid rgba(255,255,255,.28);
  color:#fff;
  background:#1dbda7
}
.content{
  max-width:1640px;
  padding:24px 26px 54px;
  background:var(--canvas)
}
.page-head{
  align-items:center;
  margin-bottom:18px;
  padding:0 2px 14px;
  border-bottom:1px solid #d8e1e6
}
.page-head h1{
  color:#29445b;
  font-size:28px;
  letter-spacing:-.02em
}
.page-head p{color:var(--muted)}
.eyebrow{
  margin-bottom:6px;
  color:#11a994;
  font-size:10px
}
.btn{
  min-height:40px;
  border-radius:8px;
  box-shadow:none;
  font-weight:760
}
.btn:hover{transform:translateY(-1px);box-shadow:0 6px 15px rgba(34,68,88,.12)}
.btn.primary{background:#29445b;color:#fff}
.btn.violet{background:#18bba5;color:#fff}
.btn.green{background:#24c7a2;color:#fff}
.btn.ghost{border:1px solid #d7e1e6;background:#fff;color:#3d5365}
.btn.warning{border:1px solid #f1d9aa;background:#fff5e3;color:#8d620f}
.btn.danger{border:1px solid #efc8cb;background:#fff0f1;color:#ad3e47}
.btn.small{min-height:33px;border-radius:7px}
.stats{gap:13px}
.stat,
.maintenance-company-card{
  border:1px solid #dce4e9;
  border-radius:11px;
  background:#fff;
  box-shadow:0 4px 14px rgba(35,62,82,.06)
}
.stat{padding:18px;border-top:4px solid #5b9ed8}
.stat:nth-child(2){border-top-color:#21c5a6}
.stat:nth-child(3){border-top-color:#7a73e5}
.stat:nth-child(4){border-top-color:#f0b64d}
.stat.featured{
  border:0;
  border-top:4px solid #72ead7;
  color:#fff;
  background:linear-gradient(135deg,#15bda7,#19aeb2)
}
.stat-icon{
  border-radius:8px;
  color:#0e9689;
  background:#e2f8f4
}
.panel{
  padding:19px;
  border:1px solid #dce4e9;
  border-radius:12px;
  background:#fff;
  box-shadow:0 4px 16px rgba(35,62,82,.065);
  backdrop-filter:none
}
.panel-head{
  min-height:42px;
  margin:-19px -19px 17px;
  padding:13px 17px;
  border-bottom:1px solid #e1e7eb;
  border-radius:11px 11px 0 0;
  background:#fbfcfd
}
.panel-head h2,.panel h2{color:#1aad98}
.panel-head p{color:#7b8995}
.quick-card{
  border:1px solid #dce4e9;
  border-radius:9px;
  background:#f9fbfc
}
.quick-card:hover{
  border-color:#58d5c4;
  background:#eefaf8;
  box-shadow:0 5px 14px rgba(35,62,82,.08)
}
.input,input,select,textarea{
  min-height:41px;
  border:1px solid #d5dfe5;
  border-radius:7px;
  color:#2f4658;
  background:#fff
}
.input:focus,input:focus,select:focus,textarea:focus{
  border-color:#21bfa9;
  box-shadow:0 0 0 3px rgba(33,191,169,.14)
}
.field span,label>span{color:#687a89}
.suggestions{border-radius:8px}
.permission-item{
  border-radius:8px;
  background:#f9fbfc
}
.product-grid{gap:13px}
.product-card{
  border:1px solid #dbe4e9;
  border-radius:11px;
  box-shadow:0 3px 12px rgba(35,62,82,.055)
}
.product-card:hover{
  border-color:#4dd2c0;
  box-shadow:0 9px 22px rgba(35,62,82,.11)
}
.product-photo{background:linear-gradient(135deg,#eef3f6,#e2e9ed)}
.stock-chip{border:1px solid #dbe5e9;border-radius:7px}
.product-price{color:#119b8c}
.table-wrap{
  border:1px solid #dce4e9;
  border-radius:9px;
  background:#fff
}
table{background:#fff}
th{
  color:#4d6170;
  border-bottom:2px solid #d8e2e7;
  background:#f1f4f6
}
td{border-bottom-color:#e5eaed}
tbody tr:hover{background:#eff9f7}
.status{border-radius:6px}
.status.ok,.status.ENTREGADO,.status.INGRESADO,.status.COMPLETADA,.status.APROBADA{
  color:#087a6d;
  background:#dff7f1
}
.status.info,.status.SOBRESTOCK{color:#315d88;background:#e7f1fb}
.bar-track{background:#e2e8ec}
.bar-fill{background:linear-gradient(90deg,#18bba5,#43d5c2)}
.maintenance-company-card{
  padding:17px;
  border-left:5px solid #1ebca6
}
.company-identity{display:grid;grid-template-columns:62px 1fr;gap:13px;align-items:center}
.company-card-logo{
  width:62px;
  height:62px;
  display:grid;
  place-items:center;
  padding:7px;
  overflow:hidden;
  border:1px solid #d9e3e8;
  border-radius:9px;
  background:#fff
}
.company-card-logo img{width:100%;height:100%;object-fit:contain}

/* Identidad visual: el logotipo principal respira sin una caja sobredimensionada. */
.portal-logos .logo-tile.principal{
  width:min(370px,78vw);
  height:126px;
  padding:8px 14px;
  border:0;
  border-radius:0;
  background:transparent
}
.portal-logos .logo-tile.principal img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:650px){
  .portal-logos .logo-tile.principal{width:min(300px,84vw);height:104px;padding:6px 10px}
}

.sales-item-builder{border:1px solid #dce6ec;border-radius:16px;padding:16px;background:#f8fbfc}.sales-item-search{display:flex;align-items:end;gap:12px;margin-bottom:12px}.sales-item-search label{flex:1}.sales-line{display:grid;grid-template-columns:145px minmax(210px,1.7fr) 0 minmax(170px,1fr) 90px 110px 85px 42px;gap:8px;align-items:center;margin:8px 0}.sales-line input,.sales-line select{min-width:0}.sales-live-total{display:flex;justify-content:flex-end;align-items:center;gap:18px;margin-top:14px;padding-top:12px;border-top:1px solid #dce6ec}.sales-live-total b{font-size:24px;color:#5847c8}.invoice-page{min-height:100vh;background:#edf2f5;padding:20px}.invoice-toolbar{display:flex;justify-content:center;gap:12px;margin-bottom:18px}.invoice-sheet{width:min(900px,100%);min-height:1100px;margin:auto;padding:55px;background:#fff;box-shadow:0 20px 60px #18304722}.invoice-sheet header{display:flex;justify-content:space-between;border-bottom:4px solid #20c5b2;padding-bottom:25px}.invoice-sheet header img{width:150px;max-height:80px;object-fit:contain}.invoice-title{text-align:right}.invoice-title small{font-weight:900;color:#6554d9;letter-spacing:.08em}.invoice-parties{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0}.invoice-parties>div{background:#f6f9fb;border-radius:14px;padding:18px}.invoice-sheet table{width:100%;border-collapse:collapse}.invoice-sheet th{background:#18293a;color:white;padding:12px;text-align:left}.invoice-sheet td{padding:12px;border-bottom:1px solid #e0e8ed}.invoice-sheet th:not(:first-child),.invoice-sheet td:not(:first-child){text-align:right}.invoice-sheet footer{display:grid;grid-template-columns:1fr 300px;gap:25px;margin-top:28px}.invoice-totals p{display:flex;justify-content:space-between}.invoice-totals .grand{font-size:21px;border-top:2px solid #18293a;padding-top:12px}@media(max-width:900px){.sales-line{grid-template-columns:1fr 1fr}.sales-line [data-remove-sales-row]{grid-column:2;justify-self:end}.invoice-sheet{padding:25px;min-height:auto}.invoice-parties,.invoice-sheet footer{grid-template-columns:1fr}}@media print{.invoice-toolbar{display:none}.invoice-page{padding:0;background:#fff}.invoice-sheet{box-shadow:none;width:100%;min-height:0;padding:12mm}}
.billing-chip{display:inline-flex;flex-direction:column;gap:1px;min-width:max-content;padding:4px 7px;border:1px solid #d8e1e7;border-radius:8px;background:#f8fafb;line-height:1.05;color:#3d5365}.billing-chip small{font-size:8px;font-weight:800;letter-spacing:.06em;color:#748794}.billing-chip b{font-size:9px;font-weight:800;white-space:nowrap}.billing-chip.is-paid{border-color:#8ed9c9;background:#edf9f6;color:#087f78}.billing-chip.is-pending{border-color:#efcd88;background:#fff9ec;color:#956312}.maintenance-billing-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0;padding:8px 0;border-top:1px solid #e6ecef;border-bottom:1px solid #e6ecef}@media(max-width:900px){.billing-chip{padding:3px 6px}.billing-chip small{display:none}.billing-chip b{font-size:8px}.maintenance-billing-row{align-items:flex-start;flex-direction:column}}
.monthly-payment-modal{max-width:650px}.monthly-payment-modal form{margin-top:18px}.monthly-payment-modal label small{display:block;margin-top:6px;color:var(--muted);font-size:11px}.payment-assurance{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1px solid rgba(23,183,166,.28);border-radius:10px;background:rgba(23,183,166,.08);color:#31546a}.payment-assurance b{font-size:12px}.payment-assurance span{font-size:11px;color:var(--muted)}
.payment-confirm-lightbox{position:fixed;inset:0;z-index:1600;display:none;place-items:center;padding:22px;background:rgba(18,37,52,.72);backdrop-filter:blur(5px)}.payment-confirm-lightbox.open{display:grid}.payment-confirm-card{position:relative;width:min(620px,100%);padding:30px;border-top:6px solid #19bda9;border-radius:18px;background:#fff;box-shadow:0 28px 80px rgba(10,31,45,.3);color:#29445b}.payment-confirm-card h2{margin:4px 42px 8px 0;font-size:26px}.payment-confirm-card>p:not(.eyebrow){color:var(--muted)}.payment-confirm-close{position:absolute;top:18px;right:18px;width:38px;height:38px;border:1px solid #d7e1e6;border-radius:9px;background:#fff;color:#29445b;font-size:23px;cursor:pointer}.payment-confirm-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.payment-confirm-summary div{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid #dce7eb;border-radius:10px;background:#f7fafb}.payment-confirm-summary small{font-size:9px;font-weight:800;letter-spacing:.06em;color:#748794}.payment-confirm-summary b{font-size:14px;word-break:break-word}.payment-confirm-card .dialog-actions{justify-content:flex-end;margin-top:20px}@media(max-width:600px){.payment-confirm-card{padding:24px 18px}.payment-confirm-card h2{font-size:22px}.payment-confirm-summary{grid-template-columns:1fr}.payment-confirm-card .dialog-actions{display:grid;grid-template-columns:1fr}.payment-confirm-card .dialog-actions .btn{width:100%}}

.system-lightbox.sales-document-preview{z-index:1700;padding:22px;overflow:hidden}.sales-document-preview .system-dialog{display:block;width:min(1080px,calc(100vw - 44px));max-height:calc(100vh - 44px);overflow:auto;padding:30px;color:#29445b}.sales-document-preview .dialog-copy{display:block;width:100%;min-width:0}.sales-document-preview .dialog-copy h2{font-size:30px;margin:6px 0 12px}.sales-document-preview .payment-confirm-summary{grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.sales-document-preview .payment-confirm-summary div{min-width:0}.sales-document-preview .table-wrap{width:100%;max-width:100%;overflow:auto;border:1px solid #dce7eb;border-radius:12px}.sales-document-preview table{width:100%;min-width:720px;border-collapse:collapse;background:#fff}.sales-document-preview th{padding:11px;background:#20384d;color:#fff;text-align:left;white-space:nowrap}.sales-document-preview td{padding:11px;border-bottom:1px solid #e1e9ed;white-space:normal}.sales-document-preview th:not(:first-child),.sales-document-preview td:not(:first-child){text-align:right}.sales-document-preview .sales-live-total{margin:16px 0 0}.sales-document-preview .dialog-copy>p{margin-top:18px}.sales-document-preview .dialog-actions{display:flex;flex-wrap:wrap}.sales-document-preview .dialog-actions .btn{min-height:42px}@media(max-width:760px){.system-lightbox.sales-document-preview{padding:8px}.sales-document-preview .system-dialog{width:100%;max-height:calc(100vh - 16px);padding:20px 15px}.sales-document-preview .dialog-copy h2{font-size:23px}.sales-document-preview .payment-confirm-summary{grid-template-columns:1fr 1fr}.sales-document-preview .dialog-actions{display:grid;grid-template-columns:1fr}.sales-document-preview .dialog-actions .btn{width:100%}}@media(max-width:430px){.sales-document-preview .payment-confirm-summary{grid-template-columns:1fr}}
.compact-edit-modal{z-index:1650;padding:18px}.compact-edit-modal.open{display:flex;align-items:center;justify-content:center}.compact-edit-modal .modal-card{width:min(650px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:26px}.compact-edit-modal .panel-head{align-items:flex-start;margin-bottom:18px}.compact-edit-modal .panel-head h2{margin:2px 0 0}.compact-edit-modal .compact-edit{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%;padding:0;border:0;background:transparent;box-shadow:none}.compact-edit-modal .compact-edit textarea,.compact-edit-modal .compact-edit button{grid-column:1/-1}.compact-edit-modal .compact-edit input,.compact-edit-modal .compact-edit select,.compact-edit-modal .compact-edit textarea{width:100%;min-width:0}@media(max-width:600px){.compact-edit-modal{padding:8px}.compact-edit-modal .modal-card{padding:20px 15px;max-height:calc(100vh - 16px)}.compact-edit-modal .compact-edit{grid-template-columns:1fr}.compact-edit-modal .compact-edit>*{grid-column:1!important}}
.maintenance-user-edit-modal{z-index:1800}.maintenance-user-edit-modal .modal-card{width:min(680px,calc(100% - 24px));padding:26px}.maintenance-user-edit-modal .user-edit-form{position:static;width:100%;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;display:grid;grid-template-columns:1fr 1fr;gap:14px}.maintenance-user-edit-modal .user-edit-form .check,.maintenance-user-edit-modal .user-edit-form button{grid-column:1/-1}.maintenance-user-edit-modal .user-edit-form input,.maintenance-user-edit-modal .user-edit-form select{width:100%;min-width:0}@media(max-width:600px){.maintenance-user-edit-modal .user-edit-form{grid-template-columns:1fr}.maintenance-user-edit-modal .user-edit-form>*{grid-column:1!important}}
.company-metrics span{
  border-radius:7px;
  background:#f6f8fa
}
.role-permission-block{
  border-radius:9px;
  background:#fff
}
.role-permission-block>summary:after{color:#16ad9a}
.alert{
  border-radius:9px;
  box-shadow:0 10px 28px rgba(35,62,82,.16)
}
.cart-drawer{
  color:var(--ink);
  background:#fff;
  box-shadow:-18px 0 45px rgba(26,54,72,.22)
}
.drawer-head{
  color:#fff;
  border:0;
  background:#29445b
}
.drawer-head .stat-icon{background:#1dbba6;color:#fff}
.drawer-head .muted{color:#c8d6df}
.drawer-head .icon-btn{border-color:#688095;background:#405b73;color:#fff}
.drawer-foot{background:#f2f5f7}
.cart-line{border-radius:8px}
.modal{
  background:rgba(22,43,58,.58);
  backdrop-filter:blur(4px)
}
.modal-card{
  border:0;
  border-top:6px solid #1dbca6;
  border-radius:13px;
  color:var(--ink);
  background:#fff;
  box-shadow:0 24px 65px rgba(18,43,58,.3)
}
.system-lightbox,.loading-lightbox{
  background:rgba(22,43,58,.62);
  backdrop-filter:blur(5px)
}
.system-dialog{
  border:0;
  border-top:7px solid #22c6ad;
  border-radius:15px;
  color:var(--ink);
  background:#fff;
  box-shadow:0 28px 75px rgba(18,43,58,.32)
}
.dialog-symbol{border-radius:10px}
.dialog-copy small{color:#15a994}
.dialog-copy h2{color:#29445b}
.dialog-copy p{color:#657887}
.loading-card{
  border:0;
  border-top:6px solid #22c6ad;
  border-radius:14px;
  color:#29445b;
  background:#fff
}
.loading-card p{color:#718391}
.loading-orbit{border-color:#d7f4ef;border-top-color:#1dbca6}
.login-page,.setup-page,.portal-page{
  background:
    radial-gradient(circle at 15% 15%,rgba(255,255,255,.2),transparent 24%),
    linear-gradient(135deg,#22cbc3,#17aeb6)
}
.login-shell{
  min-height:610px;
  border:9px solid rgba(255,255,255,.22);
  border-radius:22px;
  box-shadow:0 28px 70px rgba(15,67,77,.27)
}
.login-art,
.login-art.maintenance-art{
  background:linear-gradient(145deg,#29465d,#20394e 60%,#17afaa)
}
.login-art:after{border-color:rgba(44,207,186,.14)}
.login-panel{background:#fff}
.login-panel h2{color:#29445b}
.login-links{color:#0d9d90}
.password-toggle{border-radius:7px;color:#0d9d90}
.portal-page{padding:25px}
.portal-shell{
  padding:36px;
  border:8px solid rgba(255,255,255,.22);
  border-radius:22px;
  background:#f4f7f8;
  box-shadow:0 28px 70px rgba(15,67,77,.25);
  backdrop-filter:none
}
.logo-tile{border-radius:10px}
.portal-heading h1{color:#29445b}
.public-services{
  border-color:#dbe4e8;
  border-radius:13px;
  background:#fff
}
.service-card{border-radius:9px;box-shadow:none}
.service-card.monthly,.service-card.maintenance-service{background:#35556e}
.service-card.demo{background:#18b8a4}
.service-card span{border-radius:7px}
.portal-card{
  border:1px solid #dbe4e8;
  border-radius:12px;
  color:#29445b;
  background:#fff;
  box-shadow:0 4px 14px rgba(35,62,82,.07)
}
.portal-card:hover{border-color:#42cfbd;box-shadow:0 10px 25px rgba(35,62,82,.12)}
.portal-card.maintenance,.portal-card.company,.portal-card.guest{border-top:5px solid #1dbca6;color:#159b8c}
.portal-card.company{border-top-color:#5b9ed8;color:#477da9}
.portal-card.guest{border-top-color:#405b73;color:#405b73}
.portal-icon{
  width:54px;
  height:54px;
  border-radius:10px;
  box-shadow:none
}
.portal-card:after{display:none}

@media(max-width:900px){
  html,body{background:var(--canvas)}
  .app-shell{min-height:100vh;margin:0;border-radius:0;box-shadow:none}
  .sidebar{inset:0 auto 0 0;width:270px;border-radius:0}
  .main{min-height:100vh;margin-left:0;border-radius:0}
  .topbar{top:0}
  .notice-banner{margin:0}
}
@media(max-width:650px){
  .content{padding:18px 14px 45px}
  .notice-banner{
    background:#405b73;
    border-radius:0
  }
  .page-head{padding-bottom:12px}
  .page-head h1{font-size:24px}
  .panel{padding:14px}
  .panel-head{margin:-14px -14px 14px;padding:12px 14px}
  .responsive-table tr{border-radius:8px;background:#fff}
  .portal-page{padding:10px}
  .portal-shell{padding:20px 14px;border-width:5px;border-radius:16px}
  .login-shell{border-width:5px;border-radius:16px}
}
@media print{
  html,body,.app-shell,.main,.content{background:#fff!important}
  .app-shell{margin:0;box-shadow:none}
}

/* OUTWORK INV · Flujo operativo 2026-07 */
.module-tabs{
  display:flex;
  gap:8px;
  margin:0 0 18px;
  padding:7px;
  overflow-x:auto;
  border:1px solid #d9e5e8;
  border-radius:12px;
  background:rgba(255,255,255,.92);
  box-shadow:0 5px 18px rgba(35,62,82,.07)
}
.module-tabs a{
  min-width:150px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:12px 16px;
  border-radius:8px;
  color:#4f6777;
  font-weight:800
}
.module-tabs a span{font-size:20px}
.module-tabs a:hover{background:#edf9f7;color:#0b8f82}
.module-tabs a.active{
  color:#fff;
  background:linear-gradient(135deg,#18bda8,#159ba3);
  box-shadow:0 7px 18px rgba(20,166,153,.22)
}
.purchase-state-pendiente{background:#fff9e9}
.purchase-state-comprado{background:#eaf4ff}
.purchase-state-unselected{background:#fff}
.status.COMPRADO{color:#315d88;background:#dceeff}
.purchase-state-pendiente:hover{background:#fff4d5!important}
.purchase-state-comprado:hover{background:#dceeff!important}
.receiving-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1.2fr) auto;gap:8px;align-items:center}
.inventory-catalog .product-body{display:flex;flex-direction:column;gap:10px}
.inventory-catalog .button-row{margin-top:auto}
.stock-total{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
  margin-top:8px;
  padding:13px;
  border-left:4px solid #1dbca6;
  border-radius:7px;
  background:#eff9f7
}
.stock-total small{color:#6b7e8b;font-weight:700}
.stock-total strong{color:#087a6d;font-size:18px}
.danger-zone{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:24px;
  padding:16px;
  border:1px solid #f1c8cb;
  border-radius:10px;
  background:#fff4f5
}
.danger-zone p{margin:4px 0 0;color:#806b70}
.edit-card{width:min(900px,calc(100% - 28px));max-width:900px}
.edit-card .brand-mark img{width:62px;height:62px;object-fit:contain;border-radius:9px;background:#fff}
.protected-permissions-note{border-left:5px solid #f0b444}
.permission-item small{display:none!important}
.category-new-field[hidden]{display:none!important}
.route-cart .company-select{display:none!important}
.sidebar .nav{overflow-y:auto;scroll-behavior:auto}

.portal-card .portal-icon{
  color:transparent;
  font-size:0;
  background-color:#18bba5;
  background-repeat:no-repeat;
  background-position:center;
  background-size:31px 31px
}
.portal-card.company .portal-icon{
  background-color:#eef8ff;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23477da9' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 13h8l5 28h30l5-19H19'/%3E%3Ccircle cx='27' cy='51' r='3'/%3E%3Ccircle cx='48' cy='51' r='3'/%3E%3Cpath d='M31 14h18M40 7v14'/%3E%3C/svg%3E")
}
.portal-card.guest .portal-icon{
  background-color:#eef2f5;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23405b73' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 32s10-16 27-16 27 16 27 16-10 16-27 16S5 32 5 32Z'/%3E%3Ccircle cx='32' cy='32' r='8'/%3E%3C/svg%3E")
}
.portal-card.maintenance .portal-icon{
  background-color:#e9fbf8;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23159b8c' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M38 10a13 13 0 0 0-16 16L8 40l16 16 14-14a13 13 0 0 0 16-16l-9 9-10-10 9-9a13 13 0 0 0-6-6Z'/%3E%3C/svg%3E")
}

.suggestion{
  width:100%;
  border:0;
  border-bottom:1px solid var(--line);
  border-radius:0;
  background:#fff;
  color:var(--ink);
  text-align:left
}
.suggestion small{display:block;margin-top:3px;color:var(--muted)}
.purchase-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:end}
.purchase-view-switch{display:flex;gap:8px}
.purchase-groups{display:grid;gap:18px}
.purchase-group{margin:0}
.purchase-group .panel-head{justify-content:space-between}
.purchase-group-total{color:#168f82;font-size:18px}
.approval-actions{display:grid;gap:8px;min-width:260px}.approval-actions textarea{min-height:60px}.status.PENDING{background:#fff4d5;color:#8b5b00}.status.APPROVED{background:#e2f7ef;color:#087a62}.status.REJECTED{background:#ffe8e8;color:#a62b2b}.maintenance-approval-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:14px}.approval-company{border:1px solid var(--line);border-radius:14px;background:#f8fbfa;padding:15px}.approval-company h3{margin:0 0 12px}.approval-company form{display:grid;gap:9px;padding:12px 0;border-top:1px solid var(--line)}.approval-company label span{display:block;font-size:11px;font-weight:800;color:var(--muted);margin-bottom:5px}
.output-draft-panel{border-top:5px solid #6755df}
.output-draft-panel .panel-head{justify-content:space-between}
.output-correction{display:flex;align-items:center;gap:8px}
.output-correction .button-row{flex-wrap:nowrap}
.output-correction input[name="comment"]{min-width:150px}
.output-send-form{display:flex;justify-content:flex-end;margin-top:16px}
.output-send-form .btn{min-width:220px}
.prepared-output{border-color:#73d6c8;background:#f2fbf9}
.prepared-message{display:flex;align-items:flex-start;gap:9px;padding:11px;border-radius:9px;background:#ddf6f1;color:#137b70}
.prepared-message>span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#19ad98;color:#fff;font-weight:900}
.prepared-message b,.prepared-message small{display:block}
.prepared-message small{margin-top:3px;color:#4f756f}
.article-photo[data-photo-lightbox]{cursor:zoom-in}
.article-photo[data-photo-lightbox]:focus-visible{outline:3px solid var(--violet);outline-offset:3px}
.photo-lightbox{position:fixed;inset:0;z-index:140;background:rgba(5,14,20,.9);display:grid;place-items:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .2s ease}
.photo-lightbox.open{opacity:1;pointer-events:auto}
.photo-lightbox-card{position:relative;display:grid;place-items:center;gap:12px;width:min(1100px,100%);max-height:94vh}
.photo-lightbox-card img{max-width:100%;max-height:82vh;object-fit:contain;border-radius:14px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.45)}
.photo-lightbox-card p{margin:0;color:#fff;font-size:15px;font-weight:750;text-align:center}
.photo-lightbox-close{position:absolute;right:-12px;top:-12px;z-index:2;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#173348;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 7px 20px rgba(0,0,0,.3)}
.catalog-add-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.quantity-stepper,.server-quantity-stepper{display:inline-flex;align-items:center;gap:5px}
.quantity-stepper{height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}
.quantity-stepper button,.server-quantity-stepper button{width:34px;height:34px;border:0;background:var(--violet-soft);color:var(--violet);font-size:19px;font-weight:900;cursor:pointer}
.quantity-stepper button:hover,.server-quantity-stepper button:hover{background:#dcd5ff}
.quantity-stepper input{width:58px!important;height:36px!important;padding:0 4px!important;border:0!important;border-left:1px solid var(--line)!important;border-right:1px solid var(--line)!important;border-radius:0!important;text-align:center;font-weight:850;-moz-appearance:textfield}
.quantity-stepper input::-webkit-outer-spin-button,.quantity-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.server-quantity-stepper form{margin:0}
.server-quantity-stepper button{border:1px solid #d5cdfd;border-radius:9px}
.server-quantity-stepper button:disabled{cursor:not-allowed;opacity:.35}
.server-quantity-stepper strong{min-width:42px;text-align:center;font-size:16px}
.server-quantity-stepper>span{margin-left:3px;color:var(--muted)}
.branch-card{grid-template-columns:auto minmax(0,1fr) auto;margin-bottom:8px}
.branch-danger{margin-top:20px;padding-top:18px;border-top:1px solid #f0c8c8}
.branch-danger p{margin:4px 0 0;color:var(--muted)}
.cleanup-panel{max-width:980px}
.cleanup-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cleanup-all{padding:14px;border:1px solid #f0b7b7;border-radius:12px;background:#fff4f4;color:#8b2424;font-weight:800}
.support-cleanup-link{display:flex!important;width:100%;margin-top:8px;justify-content:center}
.movement-search{grid-template-columns:repeat(4,minmax(150px,1fr)) auto}

@media(max-width:760px){
  .module-tabs a{min-width:128px;padding:10px 12px}
  .receiving-form{grid-template-columns:1fr}
  .danger-zone{align-items:stretch;flex-direction:column}
  .purchase-toolbar{grid-template-columns:1fr}
  .purchase-view-switch{display:grid;grid-template-columns:1fr 1fr}
  .output-correction,.output-correction .button-row{align-items:stretch;flex-direction:column}
  .output-correction input[name="comment"],.output-send-form .btn{width:100%;min-width:0}
  .cleanup-modules,.movement-search{grid-template-columns:1fr}
  .branch-card{grid-template-columns:auto minmax(0,1fr)}
  .branch-card .btn{grid-column:1/-1}
  .catalog-add-form{align-items:stretch}
  .catalog-add-form>.btn{flex:1}
  .photo-lightbox{padding:14px}
  .photo-lightbox-close{right:0;top:-50px}
}

/* Fondos profesionales con contraste controlado y presencia visible. */
.app-shell{
  background:
    linear-gradient(rgba(244,247,248,.78),rgba(244,247,248,.78)),
    var(--page-art) center/cover fixed
}
.sidebar{
  background:
    linear-gradient(rgba(32,58,78,.76),rgba(32,58,78,.76)),
    var(--page-art) center/cover
}
.brand{
  background:
    linear-gradient(135deg,rgba(39,205,181,.82),rgba(21,185,174,.82)),
    var(--page-art) center 30%/cover
}
.content{
  background:
    linear-gradient(rgba(244,247,248,.8),rgba(244,247,248,.8)),
    var(--page-art) center/cover fixed
}
.notice-banner,
.notice-banner.support-banner{
  background:
    linear-gradient(rgba(47,75,98,.72),rgba(47,75,98,.72)),
    var(--page-art) center 45%/cover
}
.panel,.stat,.quick-card,.maintenance-company-card{
  background:
    linear-gradient(rgba(255,255,255,.82),rgba(255,255,255,.82)),
    var(--page-art) center/cover
}
.cart-drawer{
  background:
    linear-gradient(rgba(255,255,255,.82),rgba(255,255,255,.82)),
    url("backgrounds/carrito.webp") center/cover
}
.modal-card,.system-dialog,.loading-card{
  background:
    linear-gradient(rgba(255,255,255,.84),rgba(255,255,255,.84)),
    var(--page-art) center/cover
}
.login-page,.setup-page,.portal-page{
  background:
    linear-gradient(135deg,rgba(24,184,185,.7),rgba(24,151,172,.7)),
    var(--page-art) center/cover fixed
}
.portal-shell{
  background:
    linear-gradient(rgba(244,247,248,.84),rgba(244,247,248,.84)),
    var(--page-art) center/cover
}
.portal-card{
  background:
    linear-gradient(rgba(255,255,255,.86),rgba(255,255,255,.86)),
    var(--page-art) center/cover
}
@media(max-width:900px){
  html,body{
    background:
      linear-gradient(rgba(244,247,248,.78),rgba(244,247,248,.78)),
      var(--page-art) center/cover
  }
  .app-shell,.content{background-attachment:scroll}
}
@media print{
  html,body,.app-shell,.main,.content,.panel,.stat{background:#fff!important}
}

/* Portada: reserva el espacio completo del logo y evita cruces con el título. */
.portal-heading{padding-top:8px}
.portal-heading .portal-logos{
  min-height:150px;
  margin:-28px auto 34px;
  align-items:flex-start
}
.portal-heading h1{
  position:relative;
  z-index:1;
  margin:0 0 16px
}
@media(max-width:650px){
  .portal-heading{padding-top:4px}
  .portal-heading .portal-logos{
    min-height:112px;
    margin:-14px auto 24px
  }
}

.country-context{display:flex;justify-content:space-between;gap:16px;margin:0 0 16px;padding:12px 16px;border-radius:12px;background:#eafaf7;color:#173b39}.country-context span{font-size:12px;color:#51706e}.predictive-builder{border:1px solid #dce6ec;border-radius:16px;padding:16px;background:#f8fbfc}.predictive-search,.customer-picker{position:relative}.predictive-results{position:absolute;z-index:30;left:0;right:0;max-height:330px;overflow:auto;background:#fff;border:1px solid #cddbe2;border-radius:12px;box-shadow:0 18px 45px #1731492b}.predictive-result{display:grid;grid-template-columns:1fr auto;gap:3px 14px;width:100%;padding:12px 14px;border:0;border-bottom:1px solid #edf1f3;background:#fff;text-align:left;cursor:pointer}.predictive-result:hover,.predictive-result:focus{background:#eefaf8}.predictive-result span{grid-column:1;color:#69808c;font-size:12px}.predictive-result strong{grid-column:2;grid-row:1/3;align-self:center;color:#5847c8}.predictive-empty{padding:16px;color:#69808c}.attached-lines{margin:14px 0}.attached-line{display:grid;grid-template-columns:minmax(220px,2fr) 100px 120px 100px 120px 42px;gap:8px;align-items:end;margin:8px 0;padding:10px;border-radius:12px;background:#fff;border:1px solid #e3eaee}.attached-line>input[type=hidden]{display:none}.attached-line label{margin:0}.attached-line [data-line-total]{align-self:center;text-align:right}.empty.compact{padding:18px}.sales-tabs{overflow-x:auto}.sales-tabs a{white-space:nowrap}.selected-customer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:8px;padding:12px;border-radius:10px;background:#eafaf7}.selected-customer span{flex:1;color:#5d737d;font-size:12px}.new-customer-fields{padding:10px;border:1px solid #e0e8ec;border-radius:10px}.new-customer-fields summary{cursor:pointer;font-weight:700}.compact-edit{display:grid;gap:8px;min-width:280px;padding:12px;background:#fff;border:1px solid #dce6ec;border-radius:10px;box-shadow:0 12px 30px #17314922}@media(max-width:900px){.attached-line{grid-template-columns:1fr 1fr}.attached-line [data-remove-sales-row]{grid-column:2;justify-self:end}.country-context,.selected-customer{flex-direction:column;align-items:stretch}}

/* Las capas cerradas nunca deben capturar clics, incluso tras volver desde la caché del navegador. */
.loading-lightbox,.system-lightbox,.payment-confirm-lightbox,.photo-lightbox,.modal,.drawer-backdrop{pointer-events:none}
.loading-lightbox.open,.system-lightbox.open,.payment-confirm-lightbox.open,.photo-lightbox.open,.modal.open,.drawer-backdrop.open{pointer-events:auto}
.credit-note-summary{margin-top:20px;border:2px solid #ef476f;border-radius:16px;padding:10px}.fiscal-qr{display:block;width:116px;height:116px;margin-top:12px;padding:6px;background:#fff;border:1px solid #dce7eb;border-radius:10px;object-fit:contain}.invoice-fiscal-qr{display:flex;align-items:center;gap:14px;margin-top:16px;padding:12px;border:1px solid #bfe8e2;border-radius:12px;background:#fff;break-inside:avoid}.invoice-fiscal-qr img{width:104px;height:104px;padding:5px;border:1px solid #dbe8eb;border-radius:9px;background:#fff;object-fit:contain}.invoice-fiscal-qr span{display:flex;min-width:0;flex-direction:column;gap:3px}.invoice-fiscal-qr small{font-size:9px;font-weight:900;letter-spacing:.08em;color:#15a998}.invoice-fiscal-qr b{font-size:15px;color:#183047}.invoice-fiscal-qr em{font-size:11px;font-style:normal;color:#66808d}@media(max-width:600px){.invoice-fiscal-qr{align-items:flex-start}.invoice-fiscal-qr img{width:88px;height:88px}}@media print{@page{size:A4;margin:10mm}html,body{background:#fff}.invoice-page{min-height:0}.invoice-sheet{width:auto!important;min-height:0!important;margin:0!important;padding:0!important;box-shadow:none!important}.invoice-sheet header,.invoice-parties,.invoice-sheet table,.invoice-sheet footer,.invoice-fiscal-qr,.credit-note-summary{break-inside:avoid}.invoice-fiscal-qr{margin-top:10px;padding:8px}.invoice-fiscal-qr img{width:82px;height:82px}.invoice-fiscal-qr em{font-size:9px}}
.route-sales-reports .sales-tabs{margin-bottom:16px}@media print{.route-sales-reports .sales-tabs,.route-sales-reports .filters,.route-sales-reports .sidebar,.route-sales-reports .topbar,.route-sales-reports .cart-drawer,.route-sales-reports .drawer-backdrop{display:none!important}.route-sales-reports .app-shell,.route-sales-reports .content,.route-sales-reports main{display:block!important;width:100%!important;margin:0!important;padding:0!important}.route-sales-reports .panel,.route-sales-reports .stat{box-shadow:none!important;break-inside:avoid}.route-sales-reports .stats{grid-template-columns:repeat(4,1fr)!important}.route-sales-reports .quick-grid{grid-template-columns:repeat(2,1fr)!important}}

/* Respaldo visual para editores de usuario aun cuando el navegador conserve JS anterior. */
.wide-modal:has(.user-edit-details[open]),.protected-users:has(.user-edit-details[open]){overflow:visible!important}
.user-edit-details[open]::before{content:"";position:fixed;inset:0;z-index:1740;background:rgba(20,42,58,.66);backdrop-filter:blur(5px)}
.user-edit-details[open] .user-edit-form{position:fixed!important;left:50%!important;right:auto!important;top:50%!important;transform:translate(-50%,-50%);z-index:1750!important;width:min(620px,calc(100vw - 32px))!important;max-height:calc(100vh - 40px);overflow:auto;padding:26px!important;border:0!important;border-top:6px solid #1dbca6!important;border-radius:16px!important;box-shadow:0 28px 75px rgba(10,29,42,.42)!important;background:#fff!important;grid-template-columns:1fr 1fr}
.user-edit-details[open] .user-edit-form .check,.user-edit-details[open] .user-edit-form button{grid-column:1/-1}
@media(max-width:600px){.user-edit-details[open] .user-edit-form{grid-template-columns:1fr;padding:20px 16px!important}.user-edit-details[open] .user-edit-form>*{grid-column:1!important}}
.wide-modal:has(.maintenance-user-server-modal.open),.protected-users:has(.maintenance-user-server-modal.open),.protected-user-row:has(.maintenance-user-server-modal.open){overflow:visible!important}
.maintenance-user-server-modal{z-index:1850!important}.maintenance-user-server-modal .modal-card{width:min(680px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto}.maintenance-user-server-modal .form-grid{grid-template-columns:1fr 1fr}.maintenance-user-server-modal .form-grid .check,.maintenance-user-server-modal .form-grid button{grid-column:1/-1}@media(max-width:600px){.maintenance-user-server-modal .form-grid{grid-template-columns:1fr}.maintenance-user-server-modal .form-grid>*{grid-column:1!important}}
.role-permission-block .permission-item{cursor:pointer;user-select:none;pointer-events:auto}.role-permission-block .permission-item input[type="checkbox"]{pointer-events:auto;position:relative;z-index:2;accent-color:#16b8a5}

/* OUTWORK · Cristal azul y oro. Presentation only; printing retains original styles. */
@media screen {
html:root {
 --ow-bg:#06111f;--ow-card:#0c1d2d;--ow-gold:#efcc86;--ow-blue:#48b9ff;--ow-mint:#82e4d1;
 --bg:#06111f;--bg-2:#0a1928;--panel:#0c1d2d;--panel-2:#102639;--surface:#0c1d2d;--canvas:#06111f;
 --ink:#eaf2fa;--text:#eaf2fa;--muted:#b2c4d5;--line:#324c63;--white:#fff;
 --cyan:#eac47d;--cyan-2:#c69542;--blue:#48b9ff;--blue2:#8ddaff;--purple:#83baff;
 --violet:#eac47d;--violet-dark:#c69542;--violet-soft:#273044;--green:#74dbc1;--green2:#39a9d8;
 --green-dark:#72e2bd;--green-soft:#123c38;--amber:#efcc86;--amber-soft:#3b301a;--red:#ff9ca7;--red-soft:#422633;
 --lime:#efcc86;--gold:#efcc86;--navy:#071522;--dark:#071522;
 --shadow:0 18px 48px #0005, inset 0 1px 0 #ffffff0b;
 color-scheme:dark;color:var(--text)!important;background:var(--bg)!important;
}
html body {
 color:#eaf2fa!important;background-color:#06111f!important;
 background-image:linear-gradient(90deg,#03101bef,#03101bc4),url('outwork-visual/atmosphere-v2.png')!important;
 background-position:center!important;background-size:cover!important;background-attachment:fixed!important;
}
body :is(.home-page,.portal-page,.portal-home,.login-page,.login,.app,.app-shell,.shell,.main,.portal-main,.portal-content,.content,.worker-portal-content-grid){background:transparent!important;color:#eaf2fa!important}
body .portal-page>.portal-shell{background:linear-gradient(135deg,#142b3deb,#06131fe8)!important;border-color:#49657a!important}
body :is(.public-services,.home-commercial-actions,.system-dialog,.loading-card,.user-edit-form,.cart-drawer,.permission-item,.protected-user-row){background:#102638!important;color:#eaf2fa!important;border-color:#456076!important}
body :is(.logo-tile.principal img,.portal-logos img){filter:brightness(0) invert(1)!important}
body .portal-choice>i{display:block;width:76px;height:76px;min-height:76px;flex-shrink:0}
body .portal-card .portal-icon::before{content:none}
body .access-icon{background-image:url('outwork-visual/people.svg')!important;background-size:75%!important;background-repeat:no-repeat!important;background-position:center!important}
body .access-card.mantenimiento .access-icon{background-image:url('outwork-visual/settings.svg')!important}
body .access-card.empresa .access-icon{background-image:url('outwork-visual/company.svg')!important}
body .access-icon img{visibility:hidden}
body :is(.home-hero,.home-hero-v6,.login-art,.login-hero,.login-brand){
 background:linear-gradient(90deg,#04111de8,#04111d66),url('outwork-visual/atmosphere-v2.png') center/cover!important;
 color:#f0f6fb!important;border-color:#526177!important;
}
body :is(h1,h2,h3,h4){color:#f1d49c!important}
body :is(.home-hero,.home-hero-v6,.login-brand) h1{color:#faf7ef!important;text-shadow:0 3px 24px #0008!important}
body :is(.home-hero,.home-hero-v6) h1 span{color:#f1cd87!important}
body :is(p,small,.muted,.subtitle,.description,.breadcrumb,.legend,.chart-note,.chart-label){color:#b8cad9!important}
body :is(label,legend,.access-copy b,.portal-card strong,.connection-row strong,.page-top strong){color:#e4eef6!important}
body :is(.eyebrow,.nav-label,.portal-section-title,.access-copy em){color:#efcc86!important}
body :is(.panel,.stat,.metric,.kpi,.card,.quick-card,.product-card,.order-card,.cashier-card,.table-card,.report-card,.integration-card,.document-card,.portal-card,.portal-choice,.access-card,.restaurant-portal,.service-card,.setup-card,.login-card,.login-panel,.login-form,.modal-card,.modal-box-pro,.provider-card,.worker-request-panel,.worker-payroll-panel,.maintenance-company-card,.company-panel,.branch-card,.workflow-card,.executive-card,.workforce-card,.service-period-card,.accounting-document-card,.filter-bar,.filters,.compact-list,.home-plans article){
 color:#eaf2fa!important;border-color:#47637b!important;
 background:linear-gradient(135deg,#ffffff09,transparent 42%),linear-gradient(155deg,#142b3deb,#06131ff5)!important;
 box-shadow:inset 0 1px 0 #e8cc883d,inset 0 -1px 0 #38b8ff33,0 12px 30px #0004!important;
 border-radius:16px;
}
body :is(.panel-head,.modal-head,.portal-head,.topbar,.home-nav,.maintenance-top,.ow-header-brand,.ow-nav-shell,.ow-primary-nav,.company-brand){background:#071726f5!important;color:#eaf2fa!important;border-color:#385269!important}
body :is(.sidebar,.portal-sidebar){background:linear-gradient(160deg,#112839,#05111f 75%)!important;color:#eaf2fa!important;border-color:#496178!important;box-shadow:5px 0 35px #0003!important}
body :is(.sidebar,.portal-sidebar) :is(a,button,.brand,.brand-copy,.brand small){color:#c7d9e8!important}
body :is(.sidebar,.portal-sidebar,.nav,.ow-primary-nav) :is(a.active,button.active),body .ow-nav-item.active{
 background:linear-gradient(110deg,#e8c17929,#2b9be92b)!important;color:#ffe1a4!important;border-color:#c49e59!important;
 box-shadow:inset 3px 0 #efcc86!important;
}
body :is(.ow-menu-panel,.nav-cluster-menu,.portal-action-dropdown,.dropdown-menu,.sidebar-action-menu .portal-action-dropdown){background:#0b2133!important;color:#e8f1fa!important;border-color:#47647a!important;box-shadow:0 14px 35px #0007!important}
body :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]):not([type=color]){
 background:#071725!important;color:#f0f6fc!important;border-color:#49647c!important;box-shadow:inset 0 2px 5px #0002!important;
}
body :is(input,textarea)::placeholder{color:#92a9bc!important;opacity:1}
body select option{background:#0b1d2e!important;color:#f0f6fc!important}
body :is(input,select,textarea):focus-visible{outline:2px solid #5bc8ff;outline-offset:2px;border-color:#6cd2ff!important}
body input:is([type=checkbox],[type=radio]){accent-color:#e8c179}
body :is(button,.btn,.button){color:#eaf2fa!important;border-color:#4d6880!important;background-color:#153148!important}
body :is(.btn.primary,button.primary,.button.primary,.btn.violet,button.violet,.btn.blue,button.blue,.btn.green,button.green,.access-enter){
 background:linear-gradient(125deg,#f4da9e,#d3a652)!important;color:#152030!important;border-color:#efd293!important;text-shadow:none!important;box-shadow:0 3px 14px #d8ad4c1f!important;
}
body :is(.btn.secondary,.secondary,.btn.ghost,.ghost){background:#0d2639!important;color:#cce9fd!important;border-color:#426b89!important}
body :is(button,.btn,a):focus-visible{outline:2px solid #82dcff;outline-offset:3px}
body :is(button,.btn):disabled{opacity:.5}
body :is(.btn.danger,button.danger,.btn.red,button.red){background:#532838!important;color:#ffc2cb!important;border-color:#c36c7e!important}
body :is(.portal-card,.portal-choice,.access-card,.quick-card,.restaurant-portal):hover{border-color:#e4c28a!important;box-shadow:0 0 22px #38b8ff20,inset 0 1px #efcc8880!important}
body :is(.nav-icon,.stat-icon,.executive-kpi-icon,.empty-icon,.portal-icon,.access-icon,.system-icon,.document-icon,.portal-choice>i){
 color:#f0d292!important;background:radial-gradient(circle at 35% 25%,#34536b,#071725 70%)!important;border:1px solid #89b6c8;border-radius:50%;
 box-shadow:inset 0 1px 5px #f1d39a44,0 0 14px #2daeff25!important;
}
body .portal-choice>i{background-image:url('outwork-visual/shop.svg')!important;background-size:65%!important;background-repeat:no-repeat!important;background-position:center!important;font-size:0}
body .portal-choice.maintenance>i{background-image:url('outwork-visual/settings.svg')!important}
body .portal-choice.restaurant>i{background-image:url('outwork-visual/company.svg')!important}
body .portal-icon{font-size:0;background-image:url('outwork-visual/company.svg')!important;background-size:65%!important;background-repeat:no-repeat!important;background-position:center!important}
body .maintenance .portal-icon{background-image:url('outwork-visual/settings.svg')!important}
body .guest .portal-icon{background-image:url('outwork-visual/eye.svg')!important}
body :is(table,.table-wrap,.table-responsive){color:#deebf6!important;background-color:#081a29!important}
body :is(th,thead th){background:#112a3e!important;color:#efd49e!important;border-color:#39556c!important}
body :is(td,tbody td){background-color:transparent!important;color:#deebf6!important;border-color:#2c4356!important}
body :is(td strong,.num,.amount,.kpi strong,.stat strong,.metric strong){color:#f0f5fa!important}
body tbody tr:nth-child(even){background:#ffffff03!important}
body tbody tr:hover{background:#1c3f5670!important}
body :is(.health,.detail-list div,.balance-bar,.payment-assurance,.feature-pills span,.pill,.active-portal-badge,.billing-plan-pill){background:#123142!important;color:#c8e4f1!important;border-color:#48738c!important}
body :is(.badge,.status-pill,.status,.notice,.alert,.toast,#toast,.ow-system-icon){background:#102f43!important;color:#d7eeff!important;border-color:#5286a4!important}
body :is(.success,.notice.success,.alert.success,.toast.success,.status-positive,.state-positive,.badge.green,.status-listo,.status-entregado){background:#10382f!important;color:#9cebd0!important;border-color:#4e9d87!important}
body :is(.error,.notice.error,.alert.error,.toast.error,.state-negative,.badge.red){background:#422330!important;color:#ffb9c4!important;border-color:#a86279!important}
body :is(.warning,.notice.warning,.alert.warning,.badge.amber,.status-pendiente){background:#3a301c!important;color:#f7d89a!important;border-color:#967d4b!important}
body :is(.badge.gray,.state-neutral){background:#263645!important;color:#cedae6!important}
body dialog{background:#0b1e2e!important;color:#eaf2fa!important;border:1px solid #66829a;box-shadow:0 25px 90px #0009!important}
body dialog::backdrop{background:#010b16bc!important;backdrop-filter:blur(6px)}
body :is(.modal-card,.modal-box-pro) :is(h2,h3){color:#f1d49c!important}
body .chart{background:repeating-linear-gradient(to top,transparent 0,transparent 44px,#38556a44 45px,#38556a44 46px)!important}
body .chart-bar{background:linear-gradient(#69d7ff,#1988dd)!important}
body .chart-bar.pale{background:linear-gradient(#f6dca3,#b88a3d)!important}
body .legend i{background:#48b9ff!important}body .legend i.pale{background:#eac47d!important}
body :is(.login-art,.login-brand,.home-hero-v6,.home-hero) p{color:#ccdce9!important}
body :is(.login-art,.login-brand) h2{color:#f4d9a1!important}
body .access-copy small,body .portal-card span{color:#bdcedb!important}
body .commercial-action{background:linear-gradient(135deg,#183247,#091a29)!important;border-color:#486779!important;color:#ecd09a!important}
body :is(.login-links,.text-link,.reference-list a){color:#90d5ff!important}
body :is(.connection-row,.flow-step,.workspace,.sidebar-foot,.sidebar-bottom,.page-footer){border-color:#31495e!important}
/* Paper documents retain their own light canvas, QR codes and original colours. */
body :is(.invoice-receipt-card,.invoice-letter,.slip-card-pro){color-scheme:light;background:#fff!important;color:#172033!important}
body :is(.invoice-receipt-card,.invoice-letter,.slip-card-pro) :is(h1,h2,h3,p,small,td,th,strong){color:#172033!important;background-color:transparent!important}
@media(max-width:700px){html body{background-attachment:scroll!important}body :is(.home-hero,.home-hero-v6,.login-art,.login-brand){background-position:65% center!important}}
@media(prefers-reduced-motion:reduce){body :is(.portal-card,.access-card,.portal-choice,.btn){transition:none}}
}

@media screen {body .portal-card.company .portal-icon{background-image:url('outwork-visual/company.svg')!important}body :is(.kpi>span,.empty,.empty strong,.empty-state,.empty-state strong,.chart-note,.flow-step>span,.breadcrumb strong,.stat-top,.stat-label){color:#c3d5e4!important}body .sidebar nav a.active>span{color:#f1d49c!important}body .kpi>strong:not(.kpi-amount){white-space:normal;overflow-wrap:anywhere;font-size:clamp(20px,2vw,28px)}body .access-card>.access-enter{background:linear-gradient(125deg,#f4da9e,#d3a652)!important;color:#152030!important}body :is(.ow-system-modal,.commercial-modal){background:#010b16b0!important;box-shadow:none!important;border-radius:0}body .responsive-table tr{background:#0b2031!important}body .notice.danger{background:#422330!important;color:#ffb9c4!important}}
@media screen {
body .portal-shell{background:#06111f!important}
body :is(.sales-dashboard-filter,.sales-ranking p,.predictive-results,.modifier-group,.modifier-option,.survey-question-grid>article,.table-manager-grid>article,.credential-result,.command-confirmation,.catalog-category-section>header,.catalog-product-card,.location-choice,.accounting-module-tabs,.accounting-filters,.accounting-export-bar,.accounting-context,.accounting-advanced,.admin-sensitive-permissions,.accounting-document-grid article,.accounting-purchase-total span,.system-loading>div,.system-confirm>article,.pickup-ready-alert>article,.cash-reopen-authorizers label,.payment-methods label>span,.support-nav-card){background:linear-gradient(135deg,#142b3d,#081725)!important;color:#deebf6!important;border-color:#45647b!important}
body :is(.sales-metrics,.ped-summary-metrics,.accounting-metrics) article{background:linear-gradient(145deg,#193c50,#071725)!important;border:1px solid #45677e;box-shadow:inset 0 2px #eac47d55,0 9px 24px #0003!important}
body :is(.sales-dashboard-filter,.accounting-filters,.accounting-advanced,.accounting-export-bar,.accounting-context,.support-nav-card) :is(label,b,strong,summary,span){color:#dbeaf6!important}
body :is(.active-portal-badge,.avatar,.avatar strong,.support-nav-card strong,.support-nav-card small){color:#cfe8f9!important}
body :is(.accounting-box-tabs,.accounting-module-tabs) button.active{background:linear-gradient(125deg,#f4da9e,#d3a652)!important;color:#152030!important}
body :is(.pos-receipt,.invoice-letter,.invoice-sheet,.financial-sheet){background:#fff!important;color:#172033!important;color-scheme:light}
body :is(.pos-receipt,.invoice-letter,.invoice-sheet,.financial-sheet) :is(h1,h2,h3,p,small,td,th,strong,span,label,b){color:#172033!important;background-color:transparent!important}
body :is(.pos-receipt,.invoice-letter,.invoice-sheet,.financial-sheet) table{background:#fff!important}
}
@media screen {body .active-portal-badge :is(b,strong,span){color:#efcc86!important}body .accounting-box-tabs{background:#10283b!important;border-color:#45647b!important}}

/* OUTWORK visual revision 2: internal modules */
@media screen {
body :is(.module-tabs,.country-context,.predictive-builder,.drawer-foot,.finance-line,.finance-notice,.finance-summary>div,.finance-suggestions,.approval-company,.stock-total,.prepared-output,.prepared-message,.quantity-stepper,.attached-line,.predictive-total,.brand,.login-shell,.login-card,.permission-group,.schedule-card,.worker-card,.report-card,.filter-bar,.summary-card){background:linear-gradient(135deg,#142b3d,#081725)!important;color:#deebf6!important;border-color:#496a82!important;box-shadow:inset 0 1px #eac47d44,0 5px 18px #0003!important}
body :is(.module-tabs a,.country-context span,.country-context b,.finance-summary strong,.finance-summary span,.predictive-builder label span,.predictive-total,.predictive-total strong,.brand small,.form-grid label>span){color:#d8eaf7!important}
body :is(.module-tabs a.active,.module-tabs a:hover){background:linear-gradient(125deg,#f4da9e,#d3a652)!important;color:#152030!important}
body :is(.finance-suggestions button,.route-finance-order details form,.route-finance-cash details form){background:#102638!important;color:#e4eff8!important;border-color:#496a82!important}
body :is(.finance-summary strong,.stock-total strong,.predictive-total strong){color:#f2d293!important}
body :is(.page-head,.page-header,hr,details,.predictive-builder,.attached-lines){border-color:#496a82!important}
body .danger-zone{background:#422330!important;color:#ffbdc8!important;border-color:#a86279!important}
body .sidebar .brand{background:linear-gradient(135deg,#173449,#091b2b)!important}
body :is(.nav-icon,.module-tabs a>span:first-child){font-size:0!important;width:30px;height:30px;min-width:30px;display:inline-block;background-image:url('outwork-visual/company.svg')!important;background-size:75%!important;background-position:center!important;background-repeat:no-repeat!important}
body .module-tabs a>span:first-child{background-color:#102638!important;border-radius:50%;border:1px solid #64879b}
body .sidebar nav a[data-nav]>span:first-child{font-size:0!important;width:27px;height:27px;flex:0 0 27px;background:url('outwork-visual/finance.svg') center/90% no-repeat!important}
body :is(.ow-nav-item,nav a:has(>img[src*="icon-"]),nav a:has(>span)):is([href*="route=workers"],[href*="route=units"],[href*="route=schedules"],[href*="route=payroll"],[href*="route=reports"]){color:#deebf6!important}
body nav a>img[src*="icon-"]{filter:sepia(1) saturate(.65) brightness(1.8)!important}
body .side-link[data-admin-section]{font-size:0!important;display:flex;align-items:center;gap:10px}
body .side-link[data-admin-section]::before{content:'';display:inline-block;flex:0 0 28px;width:28px;height:28px;background:url('outwork-visual/company.svg') center/90% no-repeat}
body .side-link[data-admin-section]::after{font-size:14px;content:attr(aria-label)}
}
@media screen{body a[href*="route=cart"] .nav-icon,body .module-tabs a[href*="route=cart"]>span:first-child{background-image:url('outwork-visual/shop.svg')!important} body a[href*="route=catalog"] .nav-icon,body .module-tabs a[href*="route=catalog"]>span:first-child{background-image:url('outwork-visual/shop.svg')!important} body a[href*="route=purchases"] .nav-icon,body .module-tabs a[href*="route=purchases"]>span:first-child{background-image:url('outwork-visual/shop.svg')!important} body a[href*="route=sales"] .nav-icon,body .module-tabs a[href*="route=sales"]>span:first-child{background-image:url('outwork-visual/shop.svg')!important} body a[href*="route=quotes"] .nav-icon,body .module-tabs a[href*="route=quotes"]>span:first-child{background-image:url('outwork-visual/shop.svg')!important} body a[href*="route=users"] .nav-icon,body .module-tabs a[href*="route=users"]>span:first-child{background-image:url('outwork-visual/people.svg')!important} body a[href*="route=workers"] .nav-icon,body .module-tabs a[href*="route=workers"]>span:first-child{background-image:url('outwork-visual/people.svg')!important} body a[href*="route=contacts"] .nav-icon,body .module-tabs a[href*="route=contacts"]>span:first-child{background-image:url('outwork-visual/people.svg')!important} body a[href*="route=settings"] .nav-icon,body .module-tabs a[href*="route=settings"]>span:first-child{background-image:url('outwork-visual/settings.svg')!important} body a[href*="route=maintenance"] .nav-icon,body .module-tabs a[href*="route=maintenance"]>span:first-child{background-image:url('outwork-visual/settings.svg')!important} body a[href*="route=work-home"] .nav-icon,body .module-tabs a[href*="route=work-home"]>span:first-child{background-image:url('outwork-visual/settings.svg')!important} body a[href*="route=fiscal"] .nav-icon,body .module-tabs a[href*="route=fiscal"]>span:first-child{background-image:url('outwork-visual/settings.svg')!important} body a[href*="route=finance"] .nav-icon,body .module-tabs a[href*="route=finance"]>span:first-child{background-image:url('outwork-visual/finance.svg')!important} body a[href*="route=reports"] .nav-icon,body .module-tabs a[href*="route=reports"]>span:first-child{background-image:url('outwork-visual/finance.svg')!important} body a[href*="route=accounting"] .nav-icon,body .module-tabs a[href*="route=accounting"]>span:first-child{background-image:url('outwork-visual/finance.svg')!important} body a[href*="route=audit"] .nav-icon,body .module-tabs a[href*="route=audit"]>span:first-child{background-image:url('outwork-visual/finance.svg')!important} body a[href*="route=movements"] .nav-icon,body .module-tabs a[href*="route=movements"]>span:first-child{background-image:url('outwork-visual/finance.svg')!important} body a[href*="route=inventory"] .nav-icon,body .module-tabs a[href*="route=inventory"]>span:first-child{background-image:url('outwork-visual/boxes.svg')!important} body a[href*="route=stock"] .nav-icon,body .module-tabs a[href*="route=stock"]>span:first-child{background-image:url('outwork-visual/boxes.svg')!important} body a[href*="route=receiving"] .nav-icon,body .module-tabs a[href*="route=receiving"]>span:first-child{background-image:url('outwork-visual/boxes.svg')!important} body a[href*="route=purchase-approvals"] .nav-icon,body .module-tabs a[href*="route=purchase-approvals"]>span:first-child{background-image:url('outwork-visual/boxes.svg')!important} body .side-link:is([data-admin-section="summary"],[data-maintenance-section="summary"])::after{content:'Resumen'} body .side-link:is([data-admin-section="catalog"],[data-maintenance-section="catalog"])::after{content:'Productos'} body .side-link:is([data-admin-section="commands"],[data-maintenance-section="commands"])::after{content:'Comandas QR'} body .side-link:is([data-admin-section="users"],[data-maintenance-section="users"])::after{content:'Usuarios y roles'} body .side-link:is([data-admin-section="surveys"],[data-maintenance-section="surveys"])::after{content:'Encuestas'} body .side-link:is([data-admin-section="accounting"],[data-maintenance-section="accounting"])::after{content:'Contabilidad'} body .side-link:is([data-admin-section="settings"],[data-maintenance-section="settings"])::after{content:'Configuración'} body .side-link:is([data-admin-section="companies"],[data-maintenance-section="companies"])::after{content:'Empresas'} body .side-link:is([data-admin-section="locations"],[data-maintenance-section="locations"])::after{content:'Sedes y áreas'} body .side-link:is([data-admin-section="tables"],[data-maintenance-section="tables"])::after{content:'Mesas y comandas QR'} body .side-link:is([data-admin-section="ads"],[data-maintenance-section="ads"])::after{content:'Anuncios y recomendaciones'} body .side-link:is([data-admin-section="customers"],[data-maintenance-section="customers"])::after{content:'Clientes fiscales'} body .side-link:is([data-admin-section="fiscal"],[data-maintenance-section="fiscal"])::after{content:'Facturación electrónica'} body .side-link:is([data-admin-section="audit"],[data-maintenance-section="audit"])::after{content:'Bitácora e historial'} }

@media screen{body label>span,body .finance-summary>div>span{color:#c5d9e9!important}body .ow-menu-link>i{font-size:0!important;background:url("outwork-visual/company.svg") center/75% no-repeat!important;border:1px solid #64879b;border-radius:50%}html body .sidebar a[href*="route=cart"] .nav-icon,html body .module-tabs a[href*="route=cart"]>span:first-child,html body .ow-menu-link[href*="route=cart"]>i{background-image:url('outwork-visual/shop.svg')!important}html body .sidebar a[href*="route=catalog"] .nav-icon,html body .module-tabs a[href*="route=catalog"]>span:first-child,html body .ow-menu-link[href*="route=catalog"]>i{background-image:url('outwork-visual/shop.svg')!important}html body .sidebar a[href*="route=purchases"] .nav-icon,html body .module-tabs a[href*="route=purchases"]>span:first-child,html body .ow-menu-link[href*="route=purchases"]>i{background-image:url('outwork-visual/shop.svg')!important}html body .sidebar a[href*="route=sales"] .nav-icon,html body .module-tabs a[href*="route=sales"]>span:first-child,html body .ow-menu-link[href*="route=sales"]>i{background-image:url('outwork-visual/shop.svg')!important}html body .sidebar a[href*="route=quotes"] .nav-icon,html body .module-tabs a[href*="route=quotes"]>span:first-child,html body .ow-menu-link[href*="route=quotes"]>i{background-image:url('outwork-visual/shop.svg')!important}html body .sidebar a[href*="route=users"] .nav-icon,html body .module-tabs a[href*="route=users"]>span:first-child,html body .ow-menu-link[href*="route=users"]>i{background-image:url('outwork-visual/people.svg')!important}html body .sidebar a[href*="route=workers"] .nav-icon,html body .module-tabs a[href*="route=workers"]>span:first-child,html body .ow-menu-link[href*="route=workers"]>i{background-image:url('outwork-visual/people.svg')!important}html body .sidebar a[href*="route=inactive-workers"] .nav-icon,html body .module-tabs a[href*="route=inactive-workers"]>span:first-child,html body .ow-menu-link[href*="route=inactive-workers"]>i{background-image:url('outwork-visual/people.svg')!important}html body .sidebar a[href*="route=contacts"] .nav-icon,html body .module-tabs a[href*="route=contacts"]>span:first-child,html body .ow-menu-link[href*="route=contacts"]>i{background-image:url('outwork-visual/people.svg')!important}html body .sidebar a[href*="route=company-users"] .nav-icon,html body .module-tabs a[href*="route=company-users"]>span:first-child,html body .ow-menu-link[href*="route=company-users"]>i{background-image:url('outwork-visual/people.svg')!important}html body .sidebar a[href*="route=settings"] .nav-icon,html body .module-tabs a[href*="route=settings"]>span:first-child,html body .ow-menu-link[href*="route=settings"]>i{background-image:url('outwork-visual/settings.svg')!important}html body .sidebar a[href*="route=maintenance"] .nav-icon,html body .module-tabs a[href*="route=maintenance"]>span:first-child,html body .ow-menu-link[href*="route=maintenance"]>i{background-image:url('outwork-visual/settings.svg')!important}html body .sidebar a[href*="route=work-home"] .nav-icon,html body .module-tabs a[href*="route=work-home"]>span:first-child,html body .ow-menu-link[href*="route=work-home"]>i{background-image:url('outwork-visual/settings.svg')!important}html body .sidebar a[href*="route=fiscal"] .nav-icon,html body .module-tabs a[href*="route=fiscal"]>span:first-child,html body .ow-menu-link[href*="route=fiscal"]>i{background-image:url('outwork-visual/settings.svg')!important}html body .sidebar a[href*="route=finance"] .nav-icon,html body .module-tabs a[href*="route=finance"]>span:first-child,html body .ow-menu-link[href*="route=finance"]>i{background-image:url('outwork-visual/finance.svg')!important}html body .sidebar a[href*="route=reports"] .nav-icon,html body .module-tabs a[href*="route=reports"]>span:first-child,html body .ow-menu-link[href*="route=reports"]>i{background-image:url('outwork-visual/finance.svg')!important}html body .sidebar a[href*="route=accounting"] .nav-icon,html body .module-tabs a[href*="route=accounting"]>span:first-child,html body .ow-menu-link[href*="route=accounting"]>i{background-image:url('outwork-visual/finance.svg')!important}html body .sidebar a[href*="route=audit"] .nav-icon,html body .module-tabs a[href*="route=audit"]>span:first-child,html body .ow-menu-link[href*="route=audit"]>i{background-image:url('outwork-visual/finance.svg')!important}html body .sidebar a[href*="route=movements"] .nav-icon,html body .module-tabs a[href*="route=movements"]>span:first-child,html body .ow-menu-link[href*="route=movements"]>i{background-image:url('outwork-visual/finance.svg')!important}html body .sidebar a[href*="route=payroll"] .nav-icon,html body .module-tabs a[href*="route=payroll"]>span:first-child,html body .ow-menu-link[href*="route=payroll"]>i{background-image:url('outwork-visual/finance.svg')!important}html body .sidebar a[href*="route=service-pay"] .nav-icon,html body .module-tabs a[href*="route=service-pay"]>span:first-child,html body .ow-menu-link[href*="route=service-pay"]>i{background-image:url('outwork-visual/finance.svg')!important}html body .sidebar a[href*="route=inventory"] .nav-icon,html body .module-tabs a[href*="route=inventory"]>span:first-child,html body .ow-menu-link[href*="route=inventory"]>i{background-image:url('outwork-visual/boxes.svg')!important}html body .sidebar a[href*="route=stock"] .nav-icon,html body .module-tabs a[href*="route=stock"]>span:first-child,html body .ow-menu-link[href*="route=stock"]>i{background-image:url('outwork-visual/boxes.svg')!important}html body .sidebar a[href*="route=receiving"] .nav-icon,html body .module-tabs a[href*="route=receiving"]>span:first-child,html body .ow-menu-link[href*="route=receiving"]>i{background-image:url('outwork-visual/boxes.svg')!important}html body .sidebar a[href*="route=purchase-approvals"] .nav-icon,html body .module-tabs a[href*="route=purchase-approvals"]>span:first-child,html body .ow-menu-link[href*="route=purchase-approvals"]>i{background-image:url('outwork-visual/boxes.svg')!important}html body .sidebar a[href*="route=units"] .nav-icon,html body .module-tabs a[href*="route=units"]>span:first-child,html body .ow-menu-link[href*="route=units"]>i{background-image:url('outwork-visual/company.svg')!important}html body .sidebar a[href*="route=attendance"] .nav-icon,html body .module-tabs a[href*="route=attendance"]>span:first-child,html body .ow-menu-link[href*="route=attendance"]>i{background-image:url('outwork-visual/eye.svg')!important}html body .sidebar a[href*="route=clock"] .nav-icon,html body .module-tabs a[href*="route=clock"]>span:first-child,html body .ow-menu-link[href*="route=clock"]>i{background-image:url('outwork-visual/eye.svg')!important}html body .sidebar a[href*="route=schedules"] .nav-icon,html body .module-tabs a[href*="route=schedules"]>span:first-child,html body .ow-menu-link[href*="route=schedules"]>i{background-image:url('outwork-visual/eye.svg')!important}html body .sidebar a[href*="route=incidents"] .nav-icon,html body .module-tabs a[href*="route=incidents"]>span:first-child,html body .ow-menu-link[href*="route=incidents"]>i{background-image:url('outwork-visual/eye.svg')!important}html body .sidebar a[href*="route=requests"] .nav-icon,html body .module-tabs a[href*="route=requests"]>span:first-child,html body .ow-menu-link[href*="route=requests"]>i{background-image:url('outwork-visual/eye.svg')!important}html body .sidebar a[href*="route=files"] .nav-icon,html body .module-tabs a[href*="route=files"]>span:first-child,html body .ow-menu-link[href*="route=files"]>i{background-image:url('outwork-visual/eye.svg')!important}html body .sidebar a[href*="route=emails"] .nav-icon,html body .module-tabs a[href*="route=emails"]>span:first-child,html body .ow-menu-link[href*="route=emails"]>i{background-image:url('outwork-visual/eye.svg')!important}html body .sidebar nav a[data-nav="overview"]>span:first-child{background-image:url('outwork-visual/finance.svg')!important}html body .sidebar nav a[data-nav="journal"]>span:first-child{background-image:url('outwork-visual/finance.svg')!important}html body .sidebar nav a[data-nav="accounts"]>span:first-child{background-image:url('outwork-visual/boxes.svg')!important}html body .sidebar nav a[data-nav="reports"]>span:first-child{background-image:url('outwork-visual/finance.svg')!important}html body .sidebar nav a[data-nav="integrations"]>span:first-child{background-image:url('outwork-visual/company.svg')!important}html body .sidebar nav a[data-nav="fiscal"]>span:first-child{background-image:url('outwork-visual/settings.svg')!important}html body .sidebar nav a[data-nav="periods"]>span:first-child{background-image:url('outwork-visual/eye.svg')!important}html body .sidebar nav a[data-nav="audit"]>span:first-child{background-image:url('outwork-visual/eye.svg')!important}html body .sidebar nav a[data-nav="settings"]>span:first-child{background-image:url('outwork-visual/settings.svg')!important}body .side-link[data-admin-section="summary"]::before{background-image:url('outwork-visual/finance.svg')!important}body .side-link[data-admin-section="catalog"]::before{background-image:url('outwork-visual/boxes.svg')!important}body .side-link[data-admin-section="commands"]::before{background-image:url('outwork-visual/eye.svg')!important}body .side-link[data-admin-section="users"]::before{background-image:url('outwork-visual/people.svg')!important}body .side-link[data-admin-section="surveys"]::before{background-image:url('outwork-visual/people.svg')!important}body .side-link[data-admin-section="accounting"]::before{background-image:url('outwork-visual/finance.svg')!important}body .side-link[data-admin-section="settings"]::before{background-image:url('outwork-visual/settings.svg')!important}}