/* ================================================================
   ELECTROMIX · CORPORATE DESIGN SYSTEM
   Capa de presentación exclusiva. No modifica JS, datos ni flujos.
   ================================================================ */
:root {
  --emx-ink:#142b40;
  --emx-ink-2:#35526a;
  --emx-muted:#73889b;
  --emx-brand:#005c96;
  --emx-blue:#086fa9;
  --emx-cyan:#08a8d5;
  --emx-gold:#ffc849;
  --emx-canvas:#f3f6fa;
  --emx-paper:#fff;
  --emx-border:#dfe7ee;
  --emx-border-strong:#c9d8e4;
  --emx-shadow:0 9px 32px rgba(18,49,77,.055),0 1px 3px rgba(18,49,77,.025);
  --emx-shadow-hover:0 14px 36px rgba(18,49,77,.095),0 1px 3px rgba(18,49,77,.025);
  --emx-radius:18px;
  --navy:#0c2840;
  --navy-2:#11364f;
  --bg:var(--emx-canvas);
  --line:var(--emx-border);
  --radius:18px;
  --shadow:var(--emx-shadow);
  --blue:#0879b7;
  --blue-dark:#005c96;
  --yellow:var(--emx-gold);
}
html{scroll-behavior:smooth}
body{color:var(--emx-ink);background:var(--emx-canvas);font-size:14px;line-height:1.55;letter-spacing:-.008em}
body:not(:has(.login-wrap)){
  background:radial-gradient(80rem 34rem at 100% -18%,rgba(4,154,204,.045),transparent 70%),var(--emx-canvas);
}
h1,h2,h3,h4{color:var(--emx-ink);letter-spacing:-.035em}
a,button,input,select,textarea{font-family:var(--body)}
:focus-visible{outline:3px solid rgba(0,153,203,.56)!important;outline-offset:2px}
/* Navegación institucional */
.sidebar{
  width:268px;
  background:linear-gradient(171deg,#071b2d 0%,#0a263b 57%,#103750 100%);
  border-right:1px solid rgba(255,255,255,.07);
  box-shadow:5px 0 22px rgba(6,23,38,.09);
}
.main{margin-left:268px}
.brand{position:relative;gap:7px;padding:28px 17px 24px;background:linear-gradient(180deg,rgba(255,255,255,.035),transparent);border-color:rgba(255,255,255,.075)}
.brand::after{content:"";position:absolute;bottom:0;left:26px;right:26px;height:1px;background:linear-gradient(90deg,transparent,rgba(137,205,230,.2),transparent)}
.brand img{width:128px;max-width:80%;filter:drop-shadow(0 6px 12px rgba(0,0,0,.13))}
.brand .tag{font-size:10px;letter-spacing:2.15px;color:#eec85b;font-weight:750;opacity:.9}
.side-user{
  margin:17px 14px 6px;padding:12px;border-radius:13px;
  background:rgba(255,255,255,.048);border:1px solid rgba(205,238,249,.075);
  box-shadow:none;gap:11px;
}
.side-user .avatar{width:40px;height:40px;background:linear-gradient(150deg,#1485b9,#37b9dd);color:#fff;border-radius:12px;font-family:var(--body);font-size:13px;box-shadow:0 4px 10px rgba(0,140,190,.17)}
.side-user .who{min-width:0}
.side-user .who b{font-size:12.5px;font-weight:740;line-height:1.4;overflow-wrap:anywhere}
.side-user .who span{font-size:10px;letter-spacing:.65px;color:#bdd4e3;line-height:1.8}
.nav{padding:14px 11px 20px;scrollbar-width:thin;scrollbar-color:#2a4b61 transparent}
.nav-group{font-size:10px;letter-spacing:1.85px;color:#7d9fb1;margin:21px 14px 8px}
.nav-link{
  position:relative;min-height:44px;padding:10px 13px;margin:3px 0;
  font-size:12.7px;font-weight:580;border-radius:10px;border:1px solid transparent;
  color:#bdcedb;gap:12px;transition:background-color .17s,border-color .17s,color .17s,transform .17s;
}
.nav-link .ic{width:19px;display:grid;place-items:center;font-size:16px;color:#8eb0c4}
.nav-link:hover{background:rgba(255,255,255,.065);color:#fff;border-color:transparent;transform:none}
.nav-link.active{
  color:#fff;background:rgba(12,136,187,.22);border:1px solid rgba(63,177,217,.16);
  box-shadow:inset 0 0 0 1px rgba(44,172,212,.04);
}
.nav-link.active::before{content:"";height:20px;width:3px;border-radius:999px;position:absolute;left:0;top:calc(50% - 10px);background:#efc95c}
.nav-link.active::after{display:none}
.nav-link.active .ic{color:#6dd0ec}
.nav-foot{padding:16px 14px 20px;border-color:rgba(255,255,255,.09)}
.logout{padding:11px 13px;border-radius:10px;color:#d4e3ec;font-size:12.7px;background:rgba(255,255,255,.035)}
.logout:hover{background:rgba(255,255,255,.09);color:#fff}
/* Barra superior y área de trabajo */
.topbar{
  min-height:96px;padding:16px clamp(18px,2.4vw,40px);
  background:rgba(255,255,255,.965);border-bottom:1px solid #e5edf2;
  box-shadow:0 3px 18px rgba(11,38,62,.025);backdrop-filter:blur(16px);
}
.topbar .titles::before{content:"ELECTROMIX  /  PLATAFORMA DE GESTIÓN";display:block;color:#6c879b;font-size:9.5px;letter-spacing:1.65px;font-weight:800;margin-bottom:3px}
.topbar .titles h1{font-family:var(--display);font-size:29px;font-weight:800;line-height:1.04;letter-spacing:-.015em;color:#102a42}
.topbar .titles p{font-size:12px;color:#7c8c9e;line-height:1.5;margin-top:7px}
.topbar>.badge{font-size:10px;letter-spacing:.75px;border-radius:9px;padding:9px 13px}
.menu-btn{border-radius:11px;background:#102a42;box-shadow:none;min-width:42px;min-height:42px}
.content{padding:clamp(20px,2.5vw,38px) clamp(18px,2.55vw,42px) 72px;max-width:1810px;width:100%;margin:0 auto;min-width:0}
.content>h2:first-child,.content>h3:first-child{margin-bottom:19px}
/* Secciones y superficies */
.card{
  padding:clamp(19px,2vw,30px);margin-bottom:20px;background:#fff;
  border:1px solid var(--emx-border);border-radius:var(--emx-radius);
  box-shadow:var(--emx-shadow);
}
.card>h2:first-child,.card>h3:first-child{font-size:22px;font-weight:760;line-height:1.2;margin:0 0 21px;letter-spacing:-.02em}
.card .card{box-shadow:0 2px 10px rgba(12,38,59,.04)}
.grid{gap:20px}
.grid-2{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr)}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.grid>*{min-width:0}
.stat{
  padding:22px 19px;min-height:130px;gap:15px;align-items:center;
  border:1px solid var(--emx-border);border-radius:16px;
  background:#fff;box-shadow:var(--emx-shadow);overflow:hidden;
}
.stat::after{display:none}
.stat .num{font-family:var(--display);font-size:38px;letter-spacing:-.5px;color:#102e46;margin-top:12px}
.stat .ico{width:48px;height:48px;border-radius:14px;background:#eaf5fa;color:#127aa9;box-shadow:none}
.stat .muted{font-size:12px;color:#6a8093;font-weight:650}
/* Acciones: sistema semántico coherente */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;
  padding:10px 16px;border-radius:10px;border:1px solid transparent;
  font-size:12.8px;line-height:1.25;font-weight:735;letter-spacing:-.01em;
  box-shadow:none;transition:background-color .16s,border-color .16s,box-shadow .16s,transform .16s;
  white-space:normal;text-align:center;
}
.btn:active{transform:translateY(0)!important;box-shadow:none!important}
.btn:hover{transform:translateY(-1px)}
.btn-primary{
  color:#fff;background:linear-gradient(112deg,#006bad,#005b98);
  border-color:#005b98;box-shadow:0 4px 11px rgba(0,89,160,.14)
}
.btn-primary:hover{filter:none;background:linear-gradient(112deg,#0077b9,#0064a3);box-shadow:0 7px 18px rgba(0,89,160,.19)}
.btn-dark{background:#102b44;color:#fff;border-color:#102b44}
.btn-yellow{background:#ffda64;color:#433209;border-color:#f6cd50}
.btn-secondary{background:#f6f9fc;color:#344c62;border:1px solid #d8e3eb;box-shadow:none}
.btn-secondary:hover{background:#eaf2f7;filter:none;border-color:#c7d8e3}
.btn-ghost{background:transparent;color:#006b9e;box-shadow:none}
.btn-danger{background:#fff3f3;color:#c43e46;border:1px solid #f3d4d8;box-shadow:none}
.btn-sm{min-height:33px;padding:7px 11px;font-size:11.5px;border-radius:8px;white-space:nowrap}
.btn:disabled,.btn[disabled]{cursor:not-allowed;opacity:.52;transform:none;filter:none;box-shadow:none}
.actions,.row-actions{gap:9px;flex-wrap:wrap}
.toolbar{gap:14px;align-items:center;margin-bottom:19px}
.toolbar .search{min-width:240px;max-width:400px}
/* Campos compactos y accesibles */
.field{margin-bottom:18px;min-width:0}
label{font-size:11.8px;font-weight:730;color:#435b70;letter-spacing:.005em;margin-bottom:7px}
input,select,textarea{
  min-width:0;max-width:100%;min-height:44px;padding:11px 13px;
  border:1px solid #cfdee9;border-radius:10px;background:#fff;
  font-size:13px;line-height:1.5;color:#1c3348;
  box-shadow:0 1px 2px rgba(20,55,80,.018);
}
input::placeholder,textarea::placeholder{color:#97a8b7}
input:focus,select:focus,textarea:focus{border-color:#128cbe;box-shadow:0 0 0 3px rgba(12,162,211,.12);transform:none}
input:disabled,select:disabled,textarea:disabled{background:#f2f6f9;color:#8795a2}
input[type=checkbox],input[type=radio]{width:16px;height:16px;min-height:0;padding:0;accent-color:#0879b7;box-shadow:none}
textarea{min-height:98px;line-height:1.62}
.form-grid{gap:10px 18px;grid-template-columns:repeat(2,minmax(0,1fr))}
.form-grid>*{min-width:0}
fieldset{padding:19px 21px;margin-bottom:23px;border:1px solid #dce6ed;border-radius:14px;background:#fbfcfe}
fieldset legend{font-size:14px;color:#1f4562}
.hint{font-size:11.5px;color:#7b8e9f;line-height:1.55}
/* Listas, tablas, filtros */
.table-wrap{border:1px solid #dfe8ee;border-radius:13px;box-shadow:none;overflow-x:auto;overflow-y:auto;scrollbar-color:#a7c5d7 #f0f5f8;scrollbar-width:thin}
table{background:#fff;min-width:620px;border-collapse:separate;border-spacing:0}
th{background:#f5f8fb;color:#60768a;font-size:10.5px;font-weight:810;letter-spacing:.65px;padding:14px 14px;white-space:nowrap;border-bottom:1px solid #dce6ee}
td{padding:14px;color:#31475b;font-size:12.7px;border-bottom:1px solid #e9eef3}
tr:hover td{background:#f7fbfd}
th.sortable-th:hover{background:#ebf4f9;color:#076c9a}
.row-actions{align-items:center}
.tabs{padding:5px;gap:4px;background:#eef3f7;border:1px solid #e0e9ef;box-shadow:none;border-radius:12px;max-width:100%;flex-wrap:wrap}
.tab{font-size:12px;font-weight:700;color:#63788a;border-radius:8px;padding:9px 14px}
.tab.active{color:#0a557f;background:#fff;box-shadow:0 2px 9px rgba(23,61,88,.075)}
.badge{font-size:10px;line-height:1.25;font-weight:760;letter-spacing:.35px;padding:6px 10px;box-shadow:none}
.badge.real{background:#e5f7ee;color:#147c55}
.badge.pend{background:#fff4df;color:#a96b17}
.badge.anul{background:#ffeded;color:#ba4046}
.badge.tipo-impl{background:#e9f4fc;color:#135c8d}
.badge.rol-admin{background:#132d43;color:#fff}
.badge.rol-ing{background:#e4f3fb;color:#1a6b93}
.badge.rol-tec{background:#fff2dc;color:#94621e}
/* Modales y avisos */
.modal-bg{background:rgba(9,27,43,.58);backdrop-filter:blur(3px);padding:clamp(18px,4vh,48px) 16px}
.modal{padding:clamp(22px,2.7vw,36px);border:1px solid #e2ebf0;border-radius:20px;box-shadow:0 30px 95px rgba(0,0,0,.23)}
.modal-head{margin-bottom:20px}
.modal-close{width:36px;height:36px;border-radius:10px;background:#f0f5f8;color:#45627a}
.toast{background:#102e43;color:#fff;border:1px solid rgba(255,255,255,.07);border-radius:11px;font-size:12px;padding:13px 17px;box-shadow:0 15px 32px rgba(5,28,46,.18)}
.empty{padding:50px 24px;color:#7b8fa0}
.empty .big{font-size:39px;color:#8aaec4}
/* Pantallas de login */
.login-wrap{
  position:relative;overflow:hidden;
  background:linear-gradient(126deg,#071c2f 0%,#0a2c47 55%,#123f60 100%);
  padding:28px;
}
.login-wrap::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 82% 22%,rgba(7,160,198,.17),transparent 38%),linear-gradient(90deg,transparent 96%,rgba(255,255,255,.023) 96%),linear-gradient(transparent 96%,rgba(255,255,255,.023) 96%);
  background-size:auto,60px 60px,60px 60px;
}
.login-card{max-width:432px;padding:42px 38px 32px;border-radius:20px;border:1px solid #e8edf2;box-shadow:0 35px 92px rgba(0,0,0,.29);background:#fff}
.login-card::before{width:150px;height:150px;right:-85px;top:-85px;opacity:.12;background:#0aa2cc}
.login-card::after{display:none}
.login-logo{margin-bottom:30px}
.login-logo img{width:108px;margin-bottom:11px;filter:none}
.login-logo b{font-family:var(--display);font-size:29px;letter-spacing:0}
.login-logo span{font-size:10px;letter-spacing:1.55px;color:#4a819f}
.login-card .field{margin-bottom:16px}
.login-card button[type=submit]{min-height:48px;background:#005b96;border-radius:10px}
.login-demo{border:1px solid #e2eaf0;background:#f6f9fb;border-radius:11px;color:#60778a;font-size:11px;padding:13px 15px;margin-top:22px}
.login-error{border:1px solid #f0d4d7}
/* Visitas técnicas, croquis, equipo y RRHH */
.item-row{padding:16px 18px;background:#f9fbfd;border:1px solid #e3ebf1;border-radius:13px;box-shadow:none}
.item-row .item-name{font-size:19px}
.remove-btn{border-radius:9px;width:32px;height:32px}
.chip{background:#f3f7fa;border-color:#e0e9ef;padding:9px 11px}
.pad-wrap canvas,.sign-img,.sketch-img{border:1px solid #d4e2eb;border-radius:13px}
.tool-btn{border-radius:9px;background:#fff;border-color:#d6e3ec}
.tool-btn.active{background:#e8f5fb;color:#006b9e;border-color:#75c1de}
.attach-item{background:#fff;border-color:#e1eaf0;box-shadow:0 3px 10px rgba(16,46,71,.025);border-radius:13px}
.attach-thumb{border-radius:9px}
.marcar-card{padding:38px 22px;background:#fff;border-radius:18px;box-shadow:var(--emx-shadow)}
.reloj-hora{font-size:65px;letter-spacing:-.5px;color:#0a2a41}
.reloj-fecha{font-size:14px;color:#7b8a9a}
.btn-marcar{min-height:58px;padding:16px 40px;background:#0069a4;box-shadow:0 8px 22px rgba(0,105,164,.14)}
.cam-box{border-radius:17px;border:1px solid #d8e5ed}
.check-list li{border-radius:10px;padding:11px 13px}
/* Módulo Cotizaciones: la lógica y estructura quedan intactas */
#pageContent .quote-screen{--blue:#0879b7;--line:#dfe7ee;color:#223c53}
#pageContent .quote-screen .topline{margin-bottom:21px}
#pageContent .quote-screen .topline h2{font-family:var(--display);font-size:28px;font-weight:800;letter-spacing:-.015em;color:#142e44}
#pageContent .quote-screen .topline p{font-size:12.7px;color:#6e8293}
#pageContent .quote-screen .welcome-banner{
  border-radius:19px;padding:33px 36px;min-height:212px;
  background:linear-gradient(115deg,#0c2c45,#0a4b70 78%,#0d597c);
  box-shadow:0 15px 38px rgba(7,50,80,.13);
}
#pageContent .quote-screen .welcome-banner::after{opacity:.075}
#pageContent .quote-screen .welcome-banner h2{font-family:var(--display);font-size:31px;letter-spacing:-.01em;font-weight:800;color:#fff}
#pageContent .quote-screen .welcome-banner h2 em{color:#ffd479}
#pageContent .quote-screen .banner-eyebrow{font-size:10px;color:#8fe1fb}
#pageContent .quote-screen .stat{border-radius:16px;min-height:122px;background:#fff}
#pageContent .quote-screen .stat>span:not(.stat-icon){font-size:11.8px;color:#647b8d}
#pageContent .quote-screen .stat strong{font-size:34px;color:#132f47;font-family:var(--display);font-weight:800}
#pageContent .quote-screen .stat-icon{box-shadow:none;border-radius:12px}
#pageContent .quote-screen .listing-layout{gap:20px}
#pageContent .quote-screen .card{border-color:#dee8ef;box-shadow:var(--emx-shadow);border-radius:17px;padding:22px 23px}
#pageContent .quote-screen .card h2{font-family:var(--display);font-size:21px;font-weight:780;letter-spacing:-.01em;color:#19344a}
#pageContent .quote-screen .listing-layout .card h2{font-size:19px}
#pageContent .quote-screen .field label{font-size:11.5px;color:#506b80}
#pageContent .quote-screen .field input,#pageContent .quote-screen .field select,#pageContent .quote-screen .field textarea{min-height:43px;border-radius:10px;border-color:#d2e0e9;background:#fff}
#pageContent .quote-screen .tablewrap{border-radius:11px;border-color:#e1e9ef;box-shadow:none}
#pageContent .quote-screen .tablewrap th{background:#f5f8fb;color:#667e90;font-size:10px}
#pageContent .quote-screen .tablewrap td{font-size:11.8px;padding:13px 11px}
#pageContent .quote-screen .tablewrap .group td{background:#e6f1f8;color:#14496a}
#pageContent .quote-screen .tablewrap .subgroup td{background:#f3f9fc;color:#2a617c}
#pageContent .quote-screen .tablewrap input,#pageContent .quote-screen .tablewrap select,#pageContent .quote-screen .tablewrap textarea{border-radius:8px;border-color:#d0dfe8}
#pageContent .quote-screen .moneyrows .total{background:#fff1c5;color:#2f3a3f}
#pageContent .quote-screen .details-foot{border-radius:13px;border-color:#e0e9f0;background:#fff;box-shadow:0 5px 19px rgba(14,41,62,.035)}
#pageContent .quote-screen .steps{gap:10px}
#pageContent .quote-screen .step{border-radius:12px;box-shadow:none;border-color:#e2eaf0}
#pageContent .quote-screen .step.active{background:#e7f4fb;border-color:#69b5d8;box-shadow:0 0 0 2px rgba(78,179,219,.12)}
#pageContent .quote-screen .choice{border:1px solid #d9e5ee;box-shadow:0 4px 13px rgba(16,44,67,.035);border-radius:15px}
#pageContent .quote-screen .choice.selected{border-color:#1996cb;box-shadow:0 0 0 3px rgba(20,160,204,.10)}
#pageContent .quote-screen .headmeta{border-radius:13px;box-shadow:var(--emx-shadow)}
#pageContent .quote-screen .flow-point p{font-size:11.5px;line-height:1.6}
#pageContent .quote-screen .quick-card{border-radius:14px;box-shadow:none;background:#eaf5fb;border-color:#d2e7f3}
#pageContent .quote-screen .btn{min-height:39px;font-size:12px;border-radius:9px;box-shadow:none;font-weight:750}
#pageContent .quote-screen .btn.primary{background:#0067a4;border-color:#0067a4;box-shadow:0 4px 11px rgba(0,101,160,.13)}
#pageContent .quote-screen .btn.primary:hover{background:#005b92}
#pageContent .quote-screen .printsheet{background:#fff;box-shadow:0 13px 46px rgba(12,44,70,.14);border:1px solid #dde8f0;border-radius:16px}
/* Responsive: sin desbordes y sin convertir botones globalmente a ancho completo */
@media(max-width:1450px){
  .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  #pageContent .quote-screen .listing-layout{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:1130px){
  .grid-2{grid-template-columns:1fr}
  .grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .toolbar .search{min-width:180px}
}
@media(max-width:980px){
  .sidebar{transform:translateX(-105%);width:268px;transition:transform .2s}
  .sidebar.open{transform:translateX(0)}
  .main{margin-left:0}
  .content{padding:23px 20px 64px}
  .topbar{min-height:78px;padding:12px 20px}
  .topbar .titles h1{font-size:25px}
  .menu-btn{display:inline-flex}
  .grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  #pageContent .quote-screen .listing-layout{grid-template-columns:1fr}
}
@media(max-width:700px){
  .content{padding:18px 13px 48px}
  .topbar{padding:12px 14px;min-height:74px}
  .topbar .titles::before{font-size:8px;letter-spacing:.9px}
  .topbar .titles h1{font-size:23px}
  .topbar .titles p{font-size:11px}
  .topbar>.badge{padding:7px 9px;font-size:9px}
  .card{padding:18px;border-radius:15px;margin-bottom:16px}
  .card>h2:first-child,.card>h3:first-child{font-size:20px}
  .grid{gap:13px}
  .grid-2,.grid-3,.grid-4,.form-grid{grid-template-columns:1fr}
  .stat{min-height:108px;padding:16px}
  .stat .num{font-size:32px;margin-top:8px}
  .toolbar{align-items:stretch;gap:10px}
  .toolbar .search{width:100%;min-width:0;max-width:none}
  .tabs{width:100%;justify-content:space-between}
  .tab{flex:1;padding:9px 8px}
  .actions,.row-actions{gap:8px}
  .actions .btn{flex:1 1 132px}
  .row-actions .btn{flex:0 0 auto}
  .btn{width:auto;min-height:41px;max-width:100%}
  .btn-sm{min-height:33px}
  .login-wrap{padding:16px}
  .login-card{padding:30px 22px;max-width:430px}
  .marcar-card{padding:24px 15px}
  .reloj-hora{font-size:52px}
  .btn-marcar{width:100%}
  .modal{padding:20px 18px}
  #pageContent .quote-screen .welcome-banner{padding:24px 20px;min-height:0}
  #pageContent .quote-screen .welcome-banner h2{font-size:25px}
  #pageContent .quote-screen .card{padding:17px}
  #pageContent .quote-screen .card h2{font-size:20px}
  #pageContent .quote-screen .topline h2{font-size:23px}
  #pageContent .quote-screen .listing-aside{grid-template-columns:1fr}
  #pageContent .quote-screen .filters{grid-template-columns:1fr}
  #pageContent .quote-screen .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  #pageContent .quote-screen .details-foot .btn{flex:1 1 140px}
}
@media(max-width:390px){
  .topbar .titles h1{font-size:21px}
  .topbar>.badge{font-size:8px;padding:7px}
  .grid-4{gap:10px}
  #pageContent .quote-screen .stat{padding:13px}
  #pageContent .quote-screen .stat strong{font-size:28px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media print{
  .topbar,.sidebar,.nav-foot{display:none!important}
  .main{margin:0!important;display:block!important}
  .content{margin:0!important;padding:0!important;max-width:none!important}
  .card,.table-wrap{box-shadow:none!important}
  #pageContent .quote-screen .printsheet{border:0!important;box-shadow:none!important;border-radius:0!important}
}
/* Ajustes finos tras revisión visual real */
#visitasTable .table-wrap{overflow-x:auto}
#visitasTable table{min-width:1390px;width:100%;table-layout:auto}
#visitasTable th,#visitasTable td{white-space:nowrap}
#visitasTable td:nth-child(4),#visitasTable th:nth-child(4){white-space:normal;min-width:175px;max-width:260px}
#visitasTable td:nth-child(10){min-width:210px}
#visitasTable .row-actions{flex-wrap:nowrap}
#visitasTable .badge{margin:0 0 0 4px!important;vertical-align:middle}
#clientesTable table{min-width:1020px}
#usuariosTable table{min-width:980px}
#catalogoTable table{min-width:890px}
#pageContent .toolbar>div:last-child{flex-wrap:wrap;min-width:0;max-width:100%}
#pageContent #searchBox{max-width:350px;width:min(350px,100%)}
/* Panel de inicio — una entrada institucional de primera clase */
#pageContent>.grid:first-child>.card:first-child{
  position:relative;isolation:isolate;overflow:hidden;min-height:235px;
  display:flex;flex-direction:column;justify-content:center;
  border-radius:20px!important;
}
#pageContent>.grid:first-child>.card:first-child::before{
  content:"";position:absolute;z-index:-1;pointer-events:none;
  width:380px;height:380px;right:-155px;top:-140px;border:1px solid rgba(255,255,255,.10);
  border-radius:50%;box-shadow:0 0 0 42px rgba(255,255,255,.025),0 0 0 85px rgba(255,255,255,.015);
}
#pageContent>.grid:first-child>.card:first-child .actions{margin-top:9px}
#pageContent>.grid:first-child>.card:nth-child(2) a{
  border:1px solid #e0eaf0!important;background:#f7fafc!important;
  border-radius:10px!important;color:#304c63!important;
  transition:background-color .17s,border-color .17s;
}
#pageContent>.grid:first-child>.card:nth-child(2) a:hover{
  background:#eaf4f9!important;border-color:#b6dcea!important;
}
@media(min-width:1251px){.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){
  #visitasTable table{min-width:1320px}
  #pageContent #searchBox{width:100%;max-width:none}
  #pageContent .toolbar>div:last-child{width:100%}
}
/* Detalles específicos de navegación y catálogo */
.brand .tag{font-size:0;line-height:1.5}
.brand .tag::after{content:"GESTIÓN EMPRESARIAL";font-size:10.5px;letter-spacing:2px;font-weight:750}
#pageContent .toolbar:has(#filtroCategoria)>div:first-child{
  flex:1 1 520px;display:grid!important;grid-template-columns:minmax(200px,.9fr) minmax(250px,1.1fr);
  align-items:center;gap:11px;min-width:0;
}
#pageContent #filtroCategoria{width:100%;min-width:0!important;max-width:none}
#pageContent #catTable table{min-width:1000px}
@media(max-width:700px){
  #pageContent .toolbar:has(#filtroCategoria)>div:first-child{grid-template-columns:1fr}
  #pageContent #filtroCategoria,#pageContent .toolbar:has(#filtroCategoria) #searchBox{max-width:none;width:100%}
  #pageContent .toolbar:has(#filtroCategoria)>#newBtn{width:100%}
}
