:root{
  --fac:#8b0f26;
  --fac-dark:#5a0718;
  --fac-light:#f6e8ec;
  --bg:#f7f5f4;
  --panel:#ffffff;
  --text:#15131a;
  --muted:#6f6670;
  --line:#ece4e6;
  --green:#18a957;
  --orange:#f28a00;
  --red:#ef3b4f;
  --purple:#6d50e8;
  --blue:#2783d9;
  --shadow:0 16px 42px rgba(30,20,25,.07);
  --shadow-soft:0 8px 24px rgba(30,20,25,.055);
  --radius:20px;
  --sidebar:290px;
}

*{box-sizing:border-box}
html,body{min-height:100%}
body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,Segoe UI,Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 10% 5%, rgba(255,255,255,.95), transparent 28%),
    linear-gradient(135deg,#fbfaf9,#f3f0ef);
  font-size:15px;
}
.hidden{display:none!important}

/* FAC OPS RC2572 · navegación superior por categorías */
.fac-top-brand,.fac-top-nav-host{display:none}
.app.fac-topnav-mode{display:block;min-height:100vh}
.app.fac-topnav-mode>.sidebar{display:none!important}
.app.fac-topnav-mode>.main{width:100%;min-width:0}
.app.fac-topnav-mode .topbar{position:sticky;top:0;z-index:900;display:grid;grid-template-columns:auto minmax(250px,1fr) auto auto;gap:22px;align-items:center;padding:12px 22px;background:rgba(255,255,255,.94);backdrop-filter:blur(22px);border-bottom:1px solid var(--line)}
.app.fac-topnav-mode .fac-top-brand{display:flex;align-items:center;gap:10px;min-width:155px}
.app.fac-topnav-mode .fac-top-brand img{width:34px;height:42px;object-fit:contain}
.app.fac-topnav-mode .fac-top-brand strong{display:block;color:var(--fac);font-size:16px;line-height:1}
.app.fac-topnav-mode .fac-top-brand small{display:block;color:var(--muted);font-size:10px;margin-top:4px}
.app.fac-topnav-mode .top-left{min-width:0}
.app.fac-topnav-mode .top-left h1{font-size:16px;white-space:nowrap}
.app.fac-topnav-mode .top-left p{font-size:11px}
.app.fac-topnav-mode .menu-btn{display:none}
.app.fac-topnav-mode .fac225-page-context{justify-self:center;min-width:150px}
.app.fac-topnav-mode .top-actions{justify-self:end;flex-wrap:nowrap}
.app.fac-topnav-mode .fac-top-nav-host{display:block;position:sticky;top:67px;z-index:850;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);box-shadow:0 8px 24px rgba(30,20,25,.035)}
.fac-top-nav{min-height:62px;display:flex;align-items:center;justify-content:center;gap:10px;padding:9px 22px;position:relative}
.fac-top-group{position:relative}
.fac-top-category,.fac-top-option{font:inherit;cursor:pointer}
.fac-top-category,.fac-top-dashboard{height:44px;border:1px solid #eadfe3;background:#fff;color:#261d21;border-radius:12px;padding:0 16px;display:flex;align-items:center;gap:9px;font-weight:850;white-space:nowrap;box-shadow:0 4px 12px rgba(30,20,25,.025)}
.fac-top-category:hover,.fac-top-category.current,.fac-top-group.open>.fac-top-category,.fac-top-dashboard.active{border-color:rgba(139,15,38,.22);background:linear-gradient(135deg,var(--fac),#a91534);color:#fff;box-shadow:0 10px 22px rgba(139,15,38,.18)}
.fac-top-category span,.fac-top-dashboard .fac-top-option-icon{width:19px;height:19px;display:grid;place-items:center}
.fac-top-category svg,.fac-top-option svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.fac-top-category i{font-style:normal;font-size:12px;transition:transform .18s ease}
.fac-top-group.open>.fac-top-category i{transform:rotate(180deg)}
.fac-top-dashboard{border:0}
.fac-top-menu{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;position:absolute;top:53px;left:50%;width:max-content;min-width:460px;max-width:min(760px,calc(100vw - 40px));padding:14px;transform:translate(-50%,-8px);opacity:0;visibility:hidden;pointer-events:none;background:#fff;border:1px solid rgba(139,15,38,.20);border-radius:16px;box-shadow:0 24px 55px rgba(65,24,37,.16);transition:opacity .16s ease,transform .16s ease,visibility .16s;z-index:1000}
.fac-top-menu:before{content:"";position:absolute;top:-7px;left:50%;width:13px;height:13px;background:#fff;border-left:1px solid rgba(139,15,38,.20);border-top:1px solid rgba(139,15,38,.20);transform:translateX(-50%) rotate(45deg)}
.fac-top-group.open>.fac-top-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.fac-top-option{min-height:58px;border:0;background:#fff;color:#2b2226;border-radius:12px;padding:10px 12px;display:grid;grid-template-columns:28px minmax(110px,1fr) auto;gap:9px;align-items:center;text-align:left;font-weight:800}
.fac-top-option:hover,.fac-top-option.active{background:#fff2f5;color:var(--fac)}
.fac-top-option-icon{display:grid;place-items:center}
.fac-top-option b{min-width:20px;height:20px;border-radius:999px;background:#d90d3b;color:#fff;display:grid;place-items:center;font-size:10px}
.app.fac-topnav-mode .panel{max-width:none}
@media(max-width:1250px){.app.fac-topnav-mode .topbar{grid-template-columns:auto 1fr auto}.app.fac-topnav-mode .fac225-page-context{display:none}.app.fac-topnav-mode .top-actions{gap:6px}.fac-top-nav{justify-content:flex-start;overflow-x:auto}.fac-top-category,.fac-top-dashboard{padding:0 12px}.fac-top-menu{position:fixed;top:126px;left:50%;transform:translate(-50%,-8px)}.fac-top-group.open>.fac-top-menu{transform:translate(-50%,0)}}
@media(max-width:900px){.app.fac-topnav-mode .topbar{display:flex;flex-wrap:wrap;padding:10px 14px}.app.fac-topnav-mode .fac-top-brand{min-width:auto}.app.fac-topnav-mode .top-left{flex:1}.app.fac-topnav-mode .top-actions{width:100%;overflow-x:auto;margin-top:0}.app.fac-topnav-mode .fac-top-nav-host{top:112px}.fac-top-nav{padding:8px 14px}.fac-top-menu{top:173px;min-width:min(94vw,460px);grid-template-columns:1fr 1fr}.app.fac-topnav-mode .panel{padding:14px}}

/* Login */
.login-view{
  min-height:100vh;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,var(--fac),var(--fac-dark));
  padding:20px;
}
.login-card{
  width:min(430px,100%);
  background:white;
  border-radius:28px;
  padding:30px;
  box-shadow:0 28px 80px rgba(0,0,0,.30);
}
.brand-mark{
  width:58px;height:58px;border-radius:18px;background:var(--fac);
  color:#fff;display:grid;place-items:center;font-weight:900;letter-spacing:.5px;
}
.login-card h1{margin:16px 0 4px;color:var(--fac)}
.login-card h1 span{font-size:12px;background:var(--fac);color:#fff;border-radius:999px;padding:3px 8px}
.login-card p{margin:0 0 18px;color:var(--muted)}
.login-card label{display:block;font-size:13px;color:var(--muted);font-weight:800;margin-top:12px}
.login-card input{
  width:100%;height:42px;margin-top:6px;border:1px solid var(--line);
  border-radius:13px;padding:0 12px;font:inherit;outline:none;
}
.login-card input:focus{border-color:var(--fac);box-shadow:0 0 0 4px rgba(139,15,38,.08)}
.login-card button{
  width:100%;height:42px;margin-top:18px;border:0;border-radius:13px;
  background:var(--fac);color:white;font-weight:900;cursor:pointer;
}
.login-error{margin-top:12px;color:var(--red);font-weight:800}

/* App shell */
.app{
  min-height:100vh;
  display:grid;
  grid-template-columns:var(--sidebar) 1fr;
}
.sidebar{
  position:sticky;
  top:0;
  height:100vh;
  background:rgba(255,255,255,.86);
  backdrop-filter:blur(22px);
  border-right:1px solid var(--line);
  padding:22px 18px;
  display:flex;
  flex-direction:column;
  gap:18px;
}
.mac-dots{display:flex;gap:8px;margin:0 0 8px 10px}
.mac-dots span{width:13px;height:13px;border-radius:50%}
.mac-dots span:nth-child(1){background:#ff6159}
.mac-dots span:nth-child(2){background:#ffbd2e}
.mac-dots span:nth-child(3){background:#28c840}

.side-brand{display:flex;align-items:center;gap:14px;padding:10px 8px 22px}
.shield{
  width:52px;height:52px;border-radius:18px;border:2px solid var(--fac);
  color:var(--fac);display:grid;place-items:center;font-weight:900;font-size:22px;
}
.side-brand strong{display:block;font-size:28px;letter-spacing:-.8px;color:var(--fac)}
.side-brand small{display:block;color:#312a2d;font-size:15px;margin-top:2px}

.side-nav{display:flex;flex-direction:column;gap:6px}
.nav-section{
  margin:18px 12px 6px;
  font-size:12px;
  color:#6d4c55;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.nav-btn{
  width:100%;
  border:0;
  background:transparent;
  color:#1f1a1d;
  min-height:54px;
  padding:0 16px;
  border-radius:13px;
  display:flex;
  align-items:center;
  gap:14px;
  font:inherit;
  font-weight:650;
  cursor:pointer;
  text-align:left;
  position:relative;
}
.nav-btn:hover{background:#fff}
.nav-btn.active{
  background:linear-gradient(135deg,var(--fac),#a91534);
  color:white;
  box-shadow:0 12px 28px rgba(139,15,38,.22);
}
.nav-ico{width:22px;text-align:center;font-size:21px;opacity:.9}
.nav-badge{
  margin-left:auto;
  min-width:28px;height:28px;border-radius:999px;
  display:grid;place-items:center;
  background:#f4dce3;color:var(--fac);font-weight:900;font-size:13px;
}
.nav-btn.active .nav-badge{background:#ff3155;color:#fff}

.side-user{margin-top:auto;border-top:1px solid var(--line);padding-top:20px}
.side-user > small{display:block;color:var(--muted);margin:0 0 10px 8px}
.side-user-card{
  display:grid;
  grid-template-columns:46px 1fr auto;
  gap:12px;align-items:center;
  padding:12px 10px;border-radius:16px;
}
.avatar{
  width:46px;height:46px;border-radius:50%;
  display:grid;place-items:center;background:var(--fac);color:#fff;font-weight:900;
}
.side-user-card strong{display:block}
.side-user-card span{display:block;color:var(--muted);font-size:13px}
.chev{color:var(--muted)}
.side-footer{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:13px;padding:4px 8px}

/* Main */
.main{min-width:0;display:flex;flex-direction:column}
.topbar{
  min-height:118px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:26px 34px;
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(22px);
  border-bottom:1px solid var(--line);
}
.top-left{display:flex;align-items:center;gap:22px}
.top-left h1{margin:0;font-size:27px;letter-spacing:-.7px}
.top-left p{margin:6px 0 0;color:#2e2a2d}
.icon-btn{
  width:38px;height:38px;border:0;background:transparent;border-radius:12px;
  font-size:24px;cursor:pointer;color:#5d4b52;
}
.icon-btn:hover{background:#f4eeee}
.top-actions{display:flex;align-items:center;gap:14px}
.date-control{
  height:48px;border:1px solid #e0d5d8;border-radius:14px;background:#fff;
  display:flex;align-items:center;gap:10px;padding:0 14px;color:var(--fac);font-weight:800;
}
.date-control input{border:0;outline:0;font:inherit;font-weight:800;background:transparent;color:#23191d}
.outline-btn{
  height:48px;border:1px solid rgba(139,15,38,.45);border-radius:14px;background:#fff;
  color:var(--fac);font-weight:900;padding:0 18px;cursor:pointer;font:inherit;
}
.outline-btn.logout{display:none}

.panel{display:none;padding:28px 34px}
.panel.show{display:block}

/* Dashboard */
.kpi-row{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:22px;
  margin-bottom:26px;
}
.kpi-card{
  background:white;border:1px solid var(--line);border-radius:17px;
  min-height:138px;padding:24px 20px;
  display:grid;grid-template-columns:58px 1fr;gap:18px;align-items:center;
  box-shadow:var(--shadow-soft);
}
.kpi-icon{
  width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font-size:30px;
}
.kpi-card h3{margin:0 0 8px;font-size:16px}
.kpi-card b{display:block;font-size:34px;line-height:1;letter-spacing:-.9px}
.kpi-card span{display:block;margin-top:8px;color:var(--muted);font-size:14px}
.kpi-bordo .kpi-icon{background:#f8e7ec;color:var(--fac)}
.kpi-green .kpi-icon{background:#e8faef;color:var(--green)}
.kpi-orange .kpi-icon{background:#fff1d8;color:var(--orange)}
.kpi-red .kpi-icon{background:#ffe4e9;color:var(--red)}
.kpi-purple .kpi-icon{background:#eeeaff;color:var(--purple)}

.alert-strip{
  background:linear-gradient(180deg,#fff0f3,#fff7f8);
  border:1px solid #f1d9df;
  border-radius:17px;
  padding:18px 28px 12px;
  box-shadow:var(--shadow-soft);
  margin-bottom:26px;
}
.strip-head{
  display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;
}
.strip-title{display:flex;align-items:center;gap:18px}
.strip-title .big-warning{font-size:40px;color:var(--fac)}
.strip-title h2{font-size:20px;margin:0}
.soft-btn{
  border:0;border-radius:13px;background:#f0d5dc;color:var(--fac);
  height:48px;padding:0 22px;font:inherit;font-weight:900;cursor:pointer;
}
.alert-table{
  background:#fff;border-radius:12px;overflow:hidden;
}
.alert-row{
  display:grid;
  grid-template-columns:24px 1.5fr 1fr .35fr .55fr 92px;
  gap:16px;align-items:center;
  padding:15px 18px;border-bottom:1px solid var(--line);
}
.alert-row:last-child{border-bottom:0}
.dot{width:11px;height:11px;border-radius:50%}
.dot.red{background:#ff4151}.dot.orange{background:#ff8a00}.dot.yellow{background:#f5a400}
.alert-row strong{font-weight:900}
.alert-row small{display:block;color:var(--muted);margin-top:4px}
.delay-red{color:#ff1e37;font-weight:900}
.delay-orange{color:#ff7a00;font-weight:900}
.row-actions{display:flex;gap:10px;justify-content:end}
.round-link{
  width:36px;height:36px;border-radius:50%;display:grid;place-items:center;
  text-decoration:none;background:#e9fbef;color:#0aae44;font-size:18px;
}
.round-link.chat{background:#fff;color:#7d5b64;border:1px solid var(--line)}

.dashboard-grid{
  display:grid;
  grid-template-columns:1fr .78fr .88fr;
  gap:22px;
}
.widget{
  background:#fff;border:1px solid var(--line);border-radius:17px;
  box-shadow:var(--shadow-soft);
  overflow:hidden;
}
.widget-head{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  padding:20px 22px 12px;
}
.widget-title{display:flex;align-items:center;gap:12px}
.widget-title h2{margin:0;font-size:20px}
.link-btn{
  border:0;background:transparent;color:var(--fac);font-weight:900;cursor:pointer;font:inherit;
}
.service-table{width:100%;border-collapse:collapse;font-size:14px}
.service-table th,.service-table td{
  padding:12px 22px;border-bottom:1px solid var(--line);text-align:left;
}
.service-table th{color:var(--muted);font-size:13px;font-weight:700}
.service-table tr:last-child td{border-bottom:0}
.status{
  display:inline-block;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:900;
}
.status.green{background:#e8f8ed;color:var(--green)}
.status.orange{background:#fff2d9;color:#ff7b00}
.status.red{background:#ffe2e6;color:#ff1e37}

.quick-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:12px 18px 22px;
}
.quick-card{
  min-height:122px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fff,#fbfafa);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;
  color:#15131a;text-decoration:none;font-weight:800;text-align:center;cursor:pointer;
}
.quick-card:hover{box-shadow:var(--shadow-soft)}
.quick-card .qicon{font-size:31px;color:var(--fac)}
.activity-list{padding:0 20px 12px}
.activity-item{
  display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;
  padding:13px 0;border-bottom:1px solid var(--line);
}
.activity-item:last-child{border-bottom:0}
.activity-icon{
  width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:900;
}
.activity-icon.ok{background:#e8f8ed;color:var(--green)}
.activity-icon.warn{background:#fff1d8;color:var(--orange)}
.activity-icon.red{background:#ffe4e9;color:var(--red)}
.activity-icon.blue{background:#eaf3ff;color:var(--blue)}
.activity-item strong{display:block}
.activity-item span{display:block;color:var(--muted);font-size:13px;margin-top:3px}
.activity-time{color:var(--muted);font-size:13px}

.footer{
  margin-top:auto;padding:10px 34px 20px;
  display:flex;justify-content:center;gap:30px;align-items:center;color:var(--muted);font-size:13px;
  border-top:1px solid var(--line);
}
.connected{position:absolute;right:34px}
.connected i{display:inline-block;width:8px;height:8px;background:#21c56b;border-radius:50%;margin-right:7px}

/* Generic pages */
.page-card{
  background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow-soft);
  padding:22px;margin-bottom:18px;
}
.page-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px}
.page-head h2{margin:0}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px;background:white}
table.full{width:100%;border-collapse:collapse}
table.full th,table.full td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left}
table.full th{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.action-row{display:flex;gap:8px;flex-wrap:wrap}
.primary-btn{
  border:0;background:var(--fac);color:white;border-radius:12px;padding:10px 14px;font-weight:900;cursor:pointer;
}
.danger-btn{background:var(--red)}
.ok-btn{background:var(--green)}
.secondary-btn{background:#f4e8ec;color:var(--fac)}
.form-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px}
.form-grid label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-weight:800;font-size:12px}
.form-grid input,.form-grid select,.form-grid textarea{min-height:38px;border:1px solid var(--line);border-radius:12px;padding:8px 10px;font:inherit}
.service-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}
.my-service{
  background:#fff;border:1px solid var(--line);border-radius:17px;padding:18px;box-shadow:var(--shadow-soft)
}
.my-service h3{margin:0 0 8px}
.my-service p{margin:5px 0;color:var(--muted)}
.my-service textarea{width:100%;margin-top:12px;border:1px solid var(--line);border-radius:12px;padding:10px;min-height:70px}
.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}
.check-grid label{display:flex;gap:8px;align-items:center;color:#241b1f;font-size:13px}
.mini-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
.mini-kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:var(--shadow-soft)}
.mini-kpi b{display:block;font-size:26px}
.mini-kpi span{color:var(--muted);font-size:13px}

@media(max-width:1250px){
  .kpi-row{grid-template-columns:repeat(2,1fr)}
  .dashboard-grid{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
  .app{display:block}
  .sidebar{height:auto;position:relative}
  .side-nav{display:grid;grid-template-columns:1fr 1fr}
  .topbar{display:block;padding:18px}
  .top-actions{margin-top:14px;flex-wrap:wrap}
  .panel{padding:18px}
  .kpi-row{grid-template-columns:1fr}
  .alert-row{grid-template-columns:20px 1fr;gap:8px}
  .row-actions{justify-content:start}
  .quick-grid{grid-template-columns:1fr 1fr}
  .connected{position:static}
  .footer{display:block;text-align:center}
}


/* ================================
   FAC OPS BETA 10.1 - CLEAN TYPOGRAPHY
   ================================ */

body{
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,"Segoe UI",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
  font-size:14px;
  letter-spacing:-.01em;
}

/* Header más Apple */
.top-left h1{
  font-size:23px;
  font-weight:650;
  letter-spacing:-.55px;
  color:#171319;
}
.top-left p{
  font-size:13px;
  font-weight:450;
  color:#70676d;
}

/* Marca lateral menos pesada */
.side-brand strong{
  font-size:25px;
  font-weight:700;
  letter-spacing:-.65px;
}
.side-brand small{
  font-size:13px;
  font-weight:450;
  color:#70676d;
}
.shield{
  width:48px;
  height:48px;
  border-radius:16px;
}

/* Menú más fino */
.nav-section{
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.12em;
  color:#80616b;
}
.nav-btn{
  min-height:48px;
  font-size:14px;
  font-weight:550;
  padding:0 15px;
}
.nav-btn.active{
  font-weight:650;
}
.nav-ico{
  font-size:19px;
}

/* KPIs más elegantes */
.kpi-card{
  min-height:128px;
  padding:20px 18px;
  border-radius:18px;
  box-shadow:0 10px 28px rgba(30,20,25,.055);
}
.kpi-card h3{
  font-size:14px;
  font-weight:560;
  color:#181318;
  margin-bottom:7px;
}
.kpi-card b{
  font-size:30px;
  font-weight:650;
  letter-spacing:-1px;
}
.kpi-card span{
  font-size:12.5px;
  font-weight:430;
  color:#7b7277;
}
.kpi-icon{
  width:54px;
  height:54px;
  font-size:26px;
}

/* Alertas más suaves */
.alert-strip{
  box-shadow:0 12px 32px rgba(122,16,35,.055);
}
.strip-title h2{
  font-size:19px;
  font-weight:620;
  letter-spacing:-.35px;
}
.big-warning{
  opacity:.9;
}
.alert-row{
  font-size:13px;
}
.alert-row strong{
  font-size:13.5px;
  font-weight:620;
  letter-spacing:-.15px;
}
.alert-row small{
  font-size:12px;
  font-weight:420;
  color:#7a7277;
}
.delay-red,
.delay-orange{
  font-size:13px;
  font-weight:700;
}

/* Widgets */
.widget{
  box-shadow:0 10px 30px rgba(30,20,25,.052);
}
.widget-title h2{
  font-size:18px;
  font-weight:620;
  letter-spacing:-.35px;
}
.widget-title span{
  opacity:.75;
}
.link-btn{
  font-size:13px;
  font-weight:650;
}

/* Tablas más limpias */
.service-table,
table.full{
  font-size:13px;
}
.service-table th,
table.full th{
  font-size:11px;
  font-weight:650;
  color:#8c8388;
  text-transform:none;
  letter-spacing:-.02em;
}
.service-table td,
table.full td{
  font-size:13px;
  font-weight:450;
  color:#282126;
}
.status{
  font-size:11.5px;
  font-weight:650;
  padding:5px 11px;
}

/* Accesos rápidos estilo app */
.quick-card{
  font-size:13px;
  font-weight:600;
  border-radius:15px;
  box-shadow:0 6px 18px rgba(30,20,25,.04);
}
.quick-card .qicon{
  font-size:29px;
  opacity:.96;
}

/* Actividad reciente */
.activity-item strong{
  font-size:13.5px;
  font-weight:600;
}
.activity-item span{
  font-size:12px;
  font-weight:420;
  color:#7a7277;
}
.activity-time{
  font-size:12px;
  font-weight:450;
}

/* Botones más sutiles */
.soft-btn,
.outline-btn,
.primary-btn,
.secondary-btn{
  font-size:13px;
  font-weight:620;
  letter-spacing:-.02em;
}
.soft-btn{
  background:#efd3db;
}
.outline-btn{
  font-weight:620;
}

/* Cards generales */
.page-card,
.widget,
.kpi-card,
.alert-strip,
.table-wrap,
.my-service{
  border-color:#eee4e6;
}

/* Footer más discreto */
.footer{
  font-size:12px;
  color:#8c8388;
}

/* Reducir sensación de tosquedad general */
strong{
  font-weight:620;
}
b{
  font-weight:650;
}
h1,h2,h3{
  font-weight:650;
}


/* ================================
   FAC OPS BETA 11 - PRODUCTIVIDAD
   ================================ */

.subtle{
  margin:6px 0 0;
  color:#7b7277;
  font-size:13px;
  font-weight:450;
}

.report-kpi{
  background:linear-gradient(180deg,#fff,#fffafa);
}

.notification-list{
  display:grid;
  gap:0;
  border:1px solid var(--line);
  border-radius:16px;
  overflow:hidden;
  background:white;
}

.notification-row{
  display:grid;
  grid-template-columns:42px 1fr auto;
  gap:12px;
  align-items:center;
  padding:13px 16px;
  border-bottom:1px solid var(--line);
}

.notification-row:last-child{
  border-bottom:0;
}

.notification-row strong{
  display:block;
  font-weight:600;
  font-size:13.5px;
}

.notification-row span{
  color:#7a7277;
  font-size:12px;
}

.activity-icon.warn{
  background:#fff1d8;
  color:#f28a00;
}

@media print{
  .sidebar,.topbar,.footer,.outline-btn,.primary-btn,.soft-btn,.nav-btn{
    display:none!important;
  }
  .app{
    display:block!important;
  }
  .panel{
    display:none!important;
    padding:0!important;
  }
  #panelReportes{
    display:block!important;
  }
  body{
    background:white!important;
  }
  .page-card,.table-wrap,.mini-kpi{
    box-shadow:none!important;
    border-color:#ddd!important;
  }
}


/* FAC OPS BETA 11.1 - Reportes de horas FIX */
.report-controls{
  align-items:end;
}
.report-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:end;
}
.report-preview{
  margin-top:16px;
}
.hours-weekly{
  margin-top:14px;
}
@media(max-width:900px){
  .report-actions button{
    width:100%;
  }
}


/* ================================
   FAC OPS BETA 12 - NOTIFICACIONES
   ================================ */

.bell-btn{
  height:48px;
  min-width:52px;
  border:1px solid rgba(139,15,38,.18);
  border-radius:15px;
  background:#fff;
  color:var(--fac);
  position:relative;
  font-size:18px;
  box-shadow:0 8px 24px rgba(30,20,25,.045);
}

.bell-btn span{
  position:absolute;
  right:-7px;
  top:-7px;
  min-width:22px;
  height:22px;
  border-radius:999px;
  background:#ef3b4f;
  color:#fff;
  display:grid;
  place-items:center;
  font-size:11px;
  font-weight:900;
  border:2px solid white;
}

.notification-drawer{
  position:fixed;
  right:24px;
  top:92px;
  width:min(430px,calc(100vw - 32px));
  max-height:calc(100vh - 120px);
  z-index:80;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(22px);
  border:1px solid var(--line);
  border-radius:24px;
  box-shadow:0 28px 90px rgba(30,20,25,.20);
  overflow:hidden;
}

.drawer-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:20px 20px 14px;
  border-bottom:1px solid var(--line);
}

.drawer-head h2{
  margin:0;
  font-size:20px;
  font-weight:650;
}

.drawer-head p{
  margin:4px 0 0;
  color:#7a7277;
  font-size:13px;
}

.icon-close{
  width:34px;
  height:34px;
  border-radius:50%;
  border:0;
  background:#f7eff2;
  color:var(--fac);
  font-size:22px;
  cursor:pointer;
}

.drawer-list{
  max-height:520px;
  overflow:auto;
}

.drawer-item{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:14px 18px;
  border-bottom:1px solid var(--line);
}

.drawer-item strong{
  display:block;
  font-size:13.5px;
  font-weight:600;
}

.drawer-item span{
  display:block;
  color:#7a7277;
  font-size:12px;
  margin-top:3px;
}

.drawer-item small{
  color:#8a8085;
  font-size:12px;
}

.drawer-empty{
  padding:28px;
  text-align:center;
  color:#7a7277;
}

.drawer-action{
  width:calc(100% - 32px);
  margin:16px;
  height:42px;
  border:0;
  border-radius:14px;
  background:var(--fac);
  color:white;
  font-weight:800;
  cursor:pointer;
}

.activity-icon.purple{
  background:#eeeaff;
  color:#6d50e8;
}

.activity-timeline{
  border:1px solid var(--line);
  border-radius:18px;
  overflow:hidden;
  background:white;
}

.timeline-item{
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:16px 18px;
  border-bottom:1px solid var(--line);
}

.timeline-item:last-child{
  border-bottom:0;
}

.timeline-item strong{
  display:block;
  font-size:14px;
  font-weight:620;
}

.timeline-item span{
  display:block;
  margin-top:3px;
  color:#7a7277;
  font-size:12.5px;
}

.timeline-item small{
  color:#8a8085;
  font-size:12.5px;
}

.timeline-empty{
  padding:30px;
  text-align:center;
  color:#7a7277;
}

@media(max-width:900px){
  .notification-drawer{
    right:12px;
    top:84px;
  }
  .timeline-item,
  .drawer-item{
    grid-template-columns:40px 1fr;
  }
  .timeline-item small,
  .drawer-item small{
    grid-column:2;
  }
}


/* ================================
   FAC OPS BETA 13.1 - DASHBOARD EJECUTIVO
   ================================ */

.exec-panel{
  display:grid;
  grid-template-columns:1fr 2fr 1.05fr;
  gap:18px;
  margin-bottom:26px;
}

.exec-state,
.exec-group,
.ranking-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:var(--shadow-soft);
}

.exec-state{
  padding:22px;
  display:grid;
  grid-template-columns:54px 1fr;
  gap:16px;
  align-items:center;
}

.state-icon{
  width:54px;
  height:54px;
  border-radius:18px;
  display:grid;
  place-items:center;
  font-size:25px;
  background:#f7eff2;
}

.exec-state small{
  display:block;
  font-size:11px;
  color:#8a8085;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:800;
}

.exec-state strong{
  display:block;
  font-size:23px;
  letter-spacing:-.55px;
  margin:4px 0;
}

.exec-state span{
  display:block;
  font-size:13px;
  color:#756b70;
  line-height:1.35;
}

.exec-state.normal .state-icon{background:#e8f8ed}
.exec-state.warning .state-icon{background:#fff1d8}
.exec-state.critical .state-icon{background:#ffe4e9}

.exec-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.exec-group{
  padding:16px;
}

.exec-group h3{
  font-size:15px;
  font-weight:650;
  margin:0 0 12px;
  color:#2b2025;
}

.exec-mini{
  display:grid;
  grid-template-columns:68px 1fr;
  align-items:baseline;
  gap:10px;
  padding:8px 0;
  border-top:1px solid #f0e7e9;
}

.exec-mini:first-of-type{
  border-top:0;
}

.exec-mini b{
  font-size:23px;
  font-weight:650;
  letter-spacing:-.65px;
  color:#171319;
}

.exec-mini span{
  font-size:12px;
  color:#776d72;
}

.exec-mini.danger b{
  color:#ef3b4f;
}

.ranking-card{
  padding:16px;
}

.ranking-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}

.ranking-head h3{
  margin:0;
  font-size:16px;
  font-weight:650;
}

.ranking-list{
  display:grid;
  gap:8px;
}

.ranking-row{
  display:grid;
  grid-template-columns:40px 1fr 44px;
  gap:10px;
  align-items:center;
  padding:10px;
  border:1px solid #f0e7e9;
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#fffafa);
}

.rank-pos{
  font-weight:800;
  font-size:15px;
}

.ranking-row strong{
  display:block;
  font-size:13.5px;
  font-weight:620;
}

.ranking-row small{
  display:block;
  color:#7a7277;
  font-size:11.5px;
  margin-top:2px;
}

.ranking-row b{
  justify-self:end;
  width:38px;
  height:38px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#f7eff2;
  color:var(--fac);
  font-size:14px;
}

.ranking-empty{
  padding:20px;
  border:1px dashed var(--line);
  border-radius:14px;
  color:#7a7277;
  text-align:center;
}

.ranking-page{
  margin-bottom:0;
}

@media(max-width:1300px){
  .exec-panel{
    grid-template-columns:1fr;
  }
  .exec-grid{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:800px){
  .exec-grid{
    grid-template-columns:1fr;
  }
  .exec-state{
    grid-template-columns:1fr;
  }
}


/* ================================
   FAC OPS BETA 13.1 REAL - REEMPLAZOS CON FECHAS
   ================================ */

.replacements-kpis{
  margin-bottom:18px;
}

.replacements-form{
  grid-template-columns:1.4fr 1fr 1fr 1fr auto;
  align-items:end;
}

.replacement-save{
  display:flex;
  align-items:end;
}

.replacement-save .primary-btn{
  height:40px;
  white-space:nowrap;
}

.uncovered-list{
  display:grid;
  gap:10px;
}

.empty-box{
  border:1px dashed var(--line);
  border-radius:16px;
  padding:22px;
  text-align:center;
  color:#7a7277;
  background:#fff;
}

.uncovered-card{
  display:grid;
  grid-template-columns:1fr auto;
  gap:14px;
  align-items:center;
  border:1px solid var(--line);
  border-radius:16px;
  padding:16px;
  background:linear-gradient(180deg,#fff,#fffafa);
}

.uncovered-card h3{
  margin:0 0 6px;
  font-size:16px;
  font-weight:650;
}

.uncovered-card p{
  margin:0;
  color:#70676d;
  font-size:13px;
}

.replacement-candidates{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.replacement-pill{
  border-radius:999px;
  padding:8px 11px;
  font-size:12px;
}

@media(max-width:1150px){
  .replacements-form{
    grid-template-columns:1fr 1fr;
  }
  .replacement-save{
    grid-column:1/-1;
  }
  .uncovered-card{
    grid-template-columns:1fr;
  }
  .replacement-candidates{
    justify-content:flex-start;
  }
}

@media(max-width:700px){
  .replacements-form{
    grid-template-columns:1fr;
  }
}


/* ================================
   FAC OPS BETA 14 - CENTRO OPERATIVO
   ================================ */

.centro-kpis{
  grid-template-columns:repeat(5,1fr);
  margin-bottom:18px;
}

.centro-card{
  overflow:hidden;
}

.centro-head{
  align-items:center;
}

.centro-search input{
  width:280px;
  height:42px;
  border:1px solid var(--line);
  border-radius:14px;
  padding:0 14px;
  font:inherit;
  outline:none;
}

.centro-search input:focus{
  border-color:rgba(139,15,38,.35);
  box-shadow:0 0 0 4px rgba(139,15,38,.07);
}

.centro-filters{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:14px;
}

.filter-pill{
  border:0;
  border-radius:999px;
  background:#f7eff2;
  color:var(--fac);
  padding:9px 13px;
  font-weight:650;
  cursor:pointer;
}

.filter-pill.active{
  background:var(--fac);
  color:#fff;
  box-shadow:0 8px 18px rgba(139,15,38,.16);
}

.centro-table-wrap{
  border-radius:18px;
}

.centro-table td{
  vertical-align:middle;
}

.table-sub{
  display:block;
  margin-top:3px;
  color:#8a8085;
  font-size:12px;
  font-weight:450;
}

.centro-actions{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}

.centro-link{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
}

.service-modal{
  position:fixed;
  inset:0;
  z-index:120;
}

.service-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(25,15,20,.28);
  backdrop-filter:blur(4px);
}

.service-modal-card{
  position:absolute;
  right:32px;
  top:90px;
  width:min(520px,calc(100vw - 40px));
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  box-shadow:0 28px 90px rgba(30,20,25,.24);
  overflow:hidden;
}

.modal-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  padding:22px 22px 16px;
  border-bottom:1px solid var(--line);
}

.modal-head h2{
  margin:0;
  font-size:22px;
  font-weight:650;
}

.modal-head p{
  margin:5px 0 0;
  color:#7a7277;
}

.detail-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  padding:18px 22px;
}

.detail-item{
  border:1px solid var(--line);
  border-radius:16px;
  padding:13px;
  background:linear-gradient(180deg,#fff,#fffafa);
}

.detail-item small,
.detail-box small{
  display:block;
  color:#8a8085;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-weight:800;
}

.detail-item b{
  display:block;
  margin-top:5px;
  font-size:16px;
  font-weight:620;
}

.detail-box{
  margin:0 22px 18px;
  border:1px solid var(--line);
  border-radius:16px;
  padding:14px;
  background:#fff;
}

.detail-box p{
  margin:8px 0 0;
  color:#2b2025;
}

.modal-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
  padding:16px 22px 22px;
  border-top:1px solid var(--line);
}

.centro-link-main{
  text-decoration:none;
}

@media(max-width:1200px){
  .centro-kpis{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:800px){
  .centro-head{
    display:block;
  }
  .centro-search input{
    width:100%;
    margin-top:12px;
  }
  .service-modal-card{
    right:12px;
    top:76px;
  }
  .detail-grid{
    grid-template-columns:1fr;
  }
}


/* ================================
   FAC OPS BETA 14.1 - EMPLEADOS Y CLAVES
   ================================ */

.empleados-form{
  grid-template-columns:1fr 1fr auto;
  align-items:end;
}

.employees-table td{
  vertical-align:middle;
}

.password-chip{
  display:inline-block;
  background:#fff1f3;
  color:var(--fac);
  border:1px solid #efd3db;
  border-radius:999px;
  padding:6px 10px;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:12px;
  font-weight:700;
}

.employee-actions{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}

.employee-actions .secondary-btn{
  border-radius:999px;
  font-size:12px;
  padding:8px 10px;
}

@media(max-width:950px){
  .empleados-form{
    grid-template-columns:1fr;
  }
  .employee-actions .secondary-btn{
    width:100%;
  }
}


/* ================================
   FAC OPS BETA 14.2 - EDITAR EMPLEADOS
   ================================ */

.employee-modal-card{
  width:min(480px,calc(100vw - 40px));
}

.employee-edit-form{
  display:grid;
  gap:12px;
  padding:18px 22px;
}

.employee-edit-form label{
  display:flex;
  flex-direction:column;
  gap:6px;
  color:#7a7277;
  font-size:12px;
  font-weight:800;
}

.employee-edit-form input,
.employee-edit-form select{
  height:40px;
  border:1px solid var(--line);
  border-radius:13px;
  padding:0 12px;
  font:inherit;
  outline:none;
}

.employee-edit-form input:focus,
.employee-edit-form select:focus{
  border-color:rgba(139,15,38,.35);
  box-shadow:0 0 0 4px rgba(139,15,38,.07);
}


/* FAC OPS BETA 14.3.2 - SERVICIOS SEMANAL ESTABLE */
.service-create-card{margin-bottom:16px}
.service-create-grid{grid-template-columns:1.3fr 1.3fr 1fr .7fr .7fr auto;align-items:end}
.services-kpis{grid-template-columns:repeat(4,1fr);margin-bottom:16px}
.services-control{overflow:hidden}
.services-head{align-items:center}
.services-filters{display:grid;grid-template-columns:1.7fr 1fr 1fr .8fr;gap:10px;margin-bottom:18px}
.services-filters input,.services-filters select{height:42px;border:1px solid var(--line);border-radius:14px;padding:0 12px;font:inherit;outline:none;background:#fff}
.services-filters input:focus,.services-filters select:focus{border-color:rgba(139,15,38,.35);box-shadow:0 0 0 4px rgba(139,15,38,.07)}
.weekly-services{display:grid;gap:18px}
.employee-week-group{border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,#fff,#fffafa);overflow:hidden}
.employee-week-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line);background:#fff}
.employee-week-head h3{margin:0;font-size:18px;font-weight:650}
.employee-week-head p{margin:4px 0 0;color:#7a7277;font-size:13px}
.week-grid{display:grid;grid-template-columns:repeat(7,minmax(170px,1fr));gap:0;overflow:auto}
.week-day-col{min-height:180px;border-right:1px solid var(--line);background:#fff}
.week-day-col:last-child{border-right:0}
.week-day-head{padding:12px;border-bottom:1px solid var(--line);background:#fbf8f7}
.week-day-head b{display:block;font-size:13px}
.week-day-head span{display:block;color:#7a7277;font-size:11.5px;margin-top:2px}
.week-day-list{display:grid;gap:8px;padding:10px}
.week-service-card{border:1px solid #efe2e5;border-radius:14px;padding:10px;background:#fff;box-shadow:0 5px 14px rgba(30,20,25,.035)}
.week-service-card b{display:block;font-size:13px;font-weight:650}
.week-service-card span:not(.status){display:block;color:#7a7277;font-size:11.5px;margin-top:3px}
.week-service-card .status{margin-top:8px}
.week-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}
.week-actions button{border:1px solid #efd3db;background:#fff;color:var(--fac);border-radius:999px;padding:6px 8px;font-size:10.5px;font-weight:700;cursor:pointer}
.week-actions button.danger-btn,.week-actions .danger-btn{background:#ffe4e9;color:#e11d48;border-color:#ffd1d8}
.week-actions button.ok-btn,.week-actions .ok-btn{background:#e8f8ed;color:#18a957;border-color:#d0f2da}
.week-empty{border:1px dashed var(--line);border-radius:12px;padding:14px 10px;color:#9a9094;text-align:center;font-size:12px}
@media(max-width:1300px){.service-create-grid{grid-template-columns:1fr 1fr 1fr}.services-filters{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.service-create-grid,.services-filters,.services-kpis{grid-template-columns:1fr}.employee-week-head{display:block}.employee-week-head button{margin-top:10px}}


/* FAC OPS BETA 14.3.3 - carga directa servicios */
.loading-note{
  padding:20px;
  color:#7a7277;
}


/* FAC OPS BETA 14.3.4 - FIX REPORTES */
.reportes-fix-note{
  display:none;
}


/* FAC OPS BETA 14.3.5 - REPORTES SAFE */
.report-controls{
  align-items:end;
}
.report-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.report-preview{
  margin-top:16px;
}
.loading-note{
  padding:20px;
  color:#7a7277;
}
@media(max-width:900px){
  .report-actions button{
    width:100%;
  }
}


/* FAC OPS BETA 14.3.9 - Accesos rápidos definitivos */
.quick-grid-fixed .quick-card,
button.quick-card{
  border:1px solid var(--line);
  background:linear-gradient(180deg,#fff,#fbfafa);
  color:#15131a;
  font-family:inherit;
  cursor:pointer!important;
  appearance:none;
}
.quick-grid-fixed .quick-card:hover{
  box-shadow:0 10px 24px rgba(30,20,25,.08);
  transform:translateY(-2px);
}
.quick-grid-fixed .quick-card span{
  pointer-events:none;
}




/* =========================================================
   FAC OPS - SCROLL COMPLETO BARRA LATERAL IZQUIERDA
   Permite subir y bajar TODO el sidebar: logo, menú,
   usuario y footer.
   ========================================================= */

/* Sidebar completo desplazable */
aside.sidebar{
  position: sticky !important;
  top: 0 !important;
  height: 100vh !important;
  max-height: 100vh !important;
  min-height: 100vh !important;

  overflow-y: auto !important;
  overflow-x: hidden !important;

  display: flex !important;
  flex-direction: column !important;

  scrollbar-width: thin !important;
  scrollbar-color: rgba(139,15,38,.45) rgba(139,15,38,.08) !important;
}

/* Scroll visual */
aside.sidebar::-webkit-scrollbar{
  width: 9px !important;
}

aside.sidebar::-webkit-scrollbar-track{
  background: rgba(139,15,38,.08) !important;
  border-radius: 999px !important;
}

aside.sidebar::-webkit-scrollbar-thumb{
  background: rgba(139,15,38,.45) !important;
  border-radius: 999px !important;
}

aside.sidebar::-webkit-scrollbar-thumb:hover{
  background: rgba(139,15,38,.65) !important;
}

/* El nav NO tiene scroll propio */
nav#mainNav.side-nav,
.side-nav#mainNav{
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
  flex: 0 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Usuario y footer van después del menú, como contenido normal */
aside.sidebar .side-user{
  margin-top: 18px !important;
  flex: 0 0 auto !important;
}

aside.sidebar .side-footer{
  flex: 0 0 auto !important;
  padding-bottom: 24px !important;
}

/* Evita que en pantallas chicas el menú se ponga en dos columnas */
@media(max-width:900px){
  aside.sidebar{
    position: sticky !important;
    height: 100vh !important;
    max-height: 100vh !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  nav#mainNav.side-nav,
  .side-nav#mainNav{
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    overflow: visible !important;
  }
}

/* Compacto para pantallas bajas */
@media(max-height:760px){
  aside.sidebar .nav-btn{
    min-height: 42px !important;
  }

  aside.sidebar .nav-section{
    margin-top: 10px !important;
  }

  aside.sidebar .side-brand{
    padding-bottom: 10px !important;
  }
}




/* =========================================================
   FAC OPS - FIX PANELES ACTIVOS
   Evita que Liquidación/Eventuales aparezcan dentro del Dashboard.
   Cada módulo sólo se ve cuando tiene clase .show.
   ========================================================= */

main.main > section.panel,
main.main section.panel{
  display: none !important;
}

main.main > section.panel.show,
main.main section.panel.show{
  display: block !important;
}

/* Protección específica módulos agregados */
#panelLiquidacion:not(.show),
#panelEventuales:not(.show),
#panelDespacho:not(.show),
#panelCRM:not(.show){
  display: none !important;
}

#panelLiquidacion.show,
#panelEventuales.show,
#panelDespacho.show,
#panelCRM.show{
  display: block !important;
}




/* FAC OPS - paneles ocultos por defecto para módulos beta */
#panelEventuales:not(.show),
#panelLiquidacion:not(.show){
  display:none !important;
}
#panelEventuales.show,
#panelLiquidacion.show{
  display:block !important;
}



/* =========================================================
   FAC OPS BETA 18.1 - Mejoras Liquidación/Eventuales
   ========================================================= */

.ev-help-box,.pr-help-box{
  background:#fff7f8;
  border:1px solid #f2d6de;
  color:#5a0718;
  border-radius:14px;
  padding:12px 14px;
  font-size:13px;
  margin:10px 0 14px;
}

.ev-badge,.pr-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 9px;
  border-radius:999px;
  background:#f4e8ec;
  color:#8b0f26;
  font-weight:900;
  font-size:12px;
}

.ev-table-wrap,.pr-table-wrap{
  max-height:460px;
  overflow:auto;
  border:1px solid var(--line,#ece4e6);
  border-radius:14px;
}

.pr-row-danger{
  background:#fff2f4;
}

.pr-row-ok{
  background:#f1fff6;
}

.pr-liquidacion-total{
  background:linear-gradient(135deg,#8b0f26,#5a0718);
  color:#fff;
  border-radius:16px;
  padding:16px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  margin-top:14px;
}

.pr-liquidacion-total b{
  font-size:28px;
}

.pr-mini-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin:12px 0;
}

.pr-mini{
  border:1px solid var(--line,#ece4e6);
  border-radius:13px;
  padding:10px;
  background:#fbfafa;
}

.pr-mini b{
  display:block;
  color:#8b0f26;
  font-size:20px;
}

.pr-mini span{
  color:#6f6670;
  font-size:12px;
}

@media(max-width:900px){
  .pr-mini-grid{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   FAC OPS - MOBILE SIMPLE PARA EMPLEADOS
   Objetivo: empleado mobile sin menú lateral ni módulos.
   Solo pantalla de servicio, ingreso/egreso y salida.
   ========================================================= */
@media(max-width:900px){
  body.employee-mode-body{
    background:linear-gradient(180deg,#faf4f6 0%,#ffffff 42%,#fff 100%) !important;
  }
  .app.employee-mode{
    display:block !important;
    min-height:100vh !important;
    background:linear-gradient(180deg,#faf4f6 0%,#fff 46%) !important;
  }
  .app.employee-mode .sidebar{
    display:none !important;
  }
  .app.employee-mode .main{
    min-height:100vh !important;
    margin:0 !important;
    padding:0 !important;
  }
  .app.employee-mode .topbar{
    position:sticky !important;
    top:0 !important;
    z-index:50 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    padding:14px 16px !important;
    border-bottom:1px solid rgba(139,15,38,.10) !important;
    background:rgba(255,255,255,.96) !important;
    backdrop-filter:blur(10px) !important;
    box-shadow:0 8px 24px rgba(30,20,25,.06) !important;
  }
  .app.employee-mode .top-left{
    display:flex !important;
    align-items:center !important;
    gap:0 !important;
    min-width:0 !important;
  }
  .app.employee-mode .menu-btn,
  .app.employee-mode .date-control,
  .app.employee-mode .bell-btn,
  .app.employee-mode #notificationBell,
  .app.employee-mode #refreshBtn{
    display:none !important;
  }
  .app.employee-mode .top-actions{
    display:flex !important;
    margin:0 !important;
    padding:0 !important;
    gap:0 !important;
    flex:0 0 auto !important;
  }
  .app.employee-mode #logoutBtn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:40px !important;
    padding:9px 13px !important;
    border-radius:999px !important;
    border:1px solid rgba(139,15,38,.18) !important;
    background:#fff !important;
    color:var(--fac) !important;
    font-weight:900 !important;
    box-shadow:0 8px 18px rgba(139,15,38,.08) !important;
  }
  .app.employee-mode #greeting{
    margin:0 !important;
    font-size:18px !important;
    line-height:1.15 !important;
    letter-spacing:-.02em !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    max-width:calc(100vw - 115px) !important;
  }
  .app.employee-mode #todayLabel{
    margin:3px 0 0 !important;
    font-size:12px !important;
    color:#8b747d !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    max-width:calc(100vw - 115px) !important;
  }
  .app.employee-mode .panel{
    padding:18px 14px 24px !important;
  }
  .app.employee-mode .panel:not(.show){
    display:none !important;
  }
  .app.employee-mode .service-card-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    max-width:520px !important;
    margin:0 auto !important;
  }
  .app.employee-mode .page-card{
    border-radius:24px !important;
    padding:22px !important;
    text-align:center !important;
    box-shadow:0 14px 38px rgba(30,20,25,.08) !important;
  }
  .app.employee-mode .my-service{
    border-radius:26px !important;
    padding:22px !important;
    border:1px solid rgba(139,15,38,.12) !important;
    box-shadow:0 18px 48px rgba(30,20,25,.10) !important;
    background:#fff !important;
  }
  .app.employee-mode .my-service h3{
    font-size:25px !important;
    line-height:1.08 !important;
    margin:0 0 10px !important;
    color:#241b1f !important;
    letter-spacing:-.03em !important;
  }
  .app.employee-mode .my-service p{
    font-size:16px !important;
    line-height:1.35 !important;
    margin:8px 0 !important;
    color:#6f6268 !important;
  }
  .app.employee-mode .my-service .status{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:34px !important;
    padding:7px 13px !important;
    border-radius:999px !important;
    font-size:13px !important;
    font-weight:950 !important;
  }
  .app.employee-mode .my-service .primary-btn{
    width:100% !important;
    min-height:64px !important;
    margin-top:14px !important;
    border-radius:20px !important;
    font-size:18px !important;
    letter-spacing:.02em !important;
    text-transform:uppercase !important;
    box-shadow:0 14px 28px rgba(139,15,38,.16) !important;
  }
  .app.employee-mode .my-service .ok-btn{
    background:#188a4c !important;
    box-shadow:0 14px 28px rgba(24,138,76,.18) !important;
  }
  .app.employee-mode .check-grid{
    grid-template-columns:1fr !important;
    gap:10px !important;
    margin:16px 0 10px !important;
    padding:14px !important;
    border-radius:18px !important;
    background:#fbf7f8 !important;
    border:1px solid rgba(139,15,38,.08) !important;
  }
  .app.employee-mode .check-grid label{
    min-height:34px !important;
    font-size:15px !important;
    color:#3b3035 !important;
  }
  .app.employee-mode .check-grid input{
    width:20px !important;
    height:20px !important;
    accent-color:var(--fac) !important;
  }
  .app.employee-mode .my-service textarea{
    width:100% !important;
    min-height:86px !important;
    margin-top:12px !important;
    border-radius:18px !important;
    padding:14px !important;
    font-size:16px !important;
    background:#fff !important;
  }
  .app.employee-mode .footer,
  .app.employee-mode .notification-drawer{
    display:none !important;
  }
}

/* FAC OPS - Clientes mejorado */
.clients-hero .page-head{align-items:flex-start;gap:18px;}
.client-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0;}
.client-kpis>div{background:linear-gradient(180deg,#fff,#fbf7f8);border:1px solid rgba(139,15,38,.10);border-radius:18px;padding:16px;box-shadow:0 10px 24px rgba(30,20,25,.05);}
.client-kpis small,.client-summary-grid small,.client-info-grid small{display:block;color:#7b6c72;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;}
.client-kpis b{display:block;font-size:26px;color:#241b1f;line-height:1;}
.client-kpis span{display:block;color:#8d7d83;font-size:13px;margin-top:6px;}
.client-form-grid{grid-template-columns:1fr 1fr 1fr;align-items:end;}
.client-layout{display:grid;grid-template-columns:minmax(360px, .95fr) minmax(520px, 1.45fr);gap:18px;align-items:start;}
.compact-head{margin-bottom:12px;}
.client-list{display:flex;flex-direction:column;gap:10px;}
.client-row{width:100%;text-align:left;border:1px solid rgba(139,15,38,.10);background:#fff;border-radius:18px;padding:15px;cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:flex-start;transition:.18s ease;}
.client-row:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(30,20,25,.08);border-color:rgba(139,15,38,.22);}
.client-row.selected{background:#fbf0f2;border-color:rgba(139,15,38,.36);box-shadow:0 12px 28px rgba(139,15,38,.10);}
.client-main b{display:block;font-size:15px;color:#241b1f;margin-bottom:4px;}
.client-main span{display:block;font-size:13px;color:#7b6c72;line-height:1.25;}
.client-badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;min-width:190px;}
.client-badges span,.client-type-pill{display:inline-flex;align-items:center;border-radius:999px;background:#f4ecef;color:#7a1630;border:1px solid rgba(139,15,38,.10);padding:5px 9px;font-size:11px;font-weight:850;white-space:nowrap;}
.client-detail{min-height:420px;}
.client-detail-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px;}
.client-detail-head h3{margin:8px 0 4px;font-size:28px;letter-spacing:-.03em;color:#241b1f;}
.client-detail-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.danger-soft{color:#9a1836!important;border-color:rgba(154,24,54,.25)!important;background:#fff7f8!important;}
.client-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0;}
.client-summary-grid>div{background:#fff;border:1px solid rgba(139,15,38,.10);border-radius:18px;padding:15px;}
.client-summary-grid b{font-size:25px;color:#241b1f;}
.client-info-box{background:#fbf7f8;border:1px solid rgba(139,15,38,.10);border-radius:20px;padding:16px;margin:16px 0;}
.client-info-box h4,.client-services-block h4{margin:0;color:#241b1f;}
.client-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;}
.client-info-grid>div{background:#fff;border-radius:14px;padding:12px;border:1px solid rgba(139,15,38,.06);}
.client-info-grid b{font-size:14px;color:#2c2226;word-break:break-word;}
.client-notes{margin-top:12px;background:#fff;border:1px solid rgba(139,15,38,.06);border-radius:14px;padding:12px;}
.client-notes p{margin:6px 0 0;color:#4b3f44;}
.client-services-block{margin-top:18px;}
.client-services-table .mini{padding:6px 10px;font-size:12px;border-radius:10px;}
.empty-state{padding:18px;border:1px dashed rgba(139,15,38,.22);border-radius:16px;color:#7b6c72;background:#fbf7f8;text-align:center;}
@media (max-width: 980px){
  .client-layout{grid-template-columns:1fr;}
  .client-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}
  .client-form-grid{grid-template-columns:1fr;}
  .client-detail-head{flex-direction:column;}
  .client-detail-actions{justify-content:flex-start;}
}
@media (max-width: 620px){
  .client-kpis,.client-summary-grid,.client-info-grid{grid-template-columns:1fr;}
  .client-row{flex-direction:column;}
  .client-badges{justify-content:flex-start;min-width:0;}
}

/* FAC OPS - Clientes PRO visual fix */
#panelClientes .clients-pro{
  display:grid !important;
  grid-template-columns: 390px minmax(0,1fr) !important;
  gap:22px !important;
  align-items:start !important;
}
#panelClientes .clients-pro-sidebar,
#panelClientes .client-detail-pro,
#panelClientes .client-card,
#panelClientes .client-metric-card{
  border:1px solid rgba(139,15,38,.10) !important;
  border-radius:22px !important;
  background:#fff !important;
  box-shadow:0 14px 35px rgba(30,20,25,.055) !important;
}
#panelClientes .clients-pro-sidebar{padding:22px !important;position:sticky !important;top:92px !important;max-height:calc(100vh - 118px) !important;overflow:hidden !important;display:flex !important;flex-direction:column !important;}
#panelClientes .clients-title-row{display:flex !important;align-items:flex-start !important;justify-content:space-between !important;gap:12px !important;margin-bottom:16px !important;}
#panelClientes .clients-title-row h2{font-size:28px !important;margin:0 0 6px !important;letter-spacing:-.035em !important;color:#20181c !important;}
#panelClientes .clients-title-row p{font-size:13px !important;color:#756970 !important;margin:0 !important;line-height:1.35 !important;}
#panelClientes .client-new-btn{padding:11px 14px !important;border-radius:12px !important;white-space:nowrap !important;}
#panelClientes .clients-search-row{display:grid !important;grid-template-columns:1fr 128px !important;gap:10px !important;margin:12px 0 16px !important;}
#panelClientes .clients-search-row input,
#panelClientes .clients-search-row select{
  height:44px !important;border:1px solid rgba(139,15,38,.14) !important;border-radius:14px !important;background:#fff !important;padding:0 14px !important;font-size:14px !important;color:#2d2529 !important;outline:none !important;
}
#panelClientes .clients-search-row input:focus,
#panelClientes .clients-search-row select:focus{border-color:rgba(139,15,38,.42) !important;box-shadow:0 0 0 4px rgba(139,15,38,.08) !important;}
#panelClientes .clients-list-title{font-size:13px !important;color:#342a2f !important;margin:0 0 10px !important;text-transform:uppercase !important;letter-spacing:.05em !important;}
#panelClientes .clients-pro-list{display:flex !important;flex-direction:column !important;gap:8px !important;overflow:auto !important;padding-right:4px !important;}
#panelClientes .client-card-row{
  width:100% !important;display:grid !important;grid-template-columns:46px 1fr auto !important;gap:12px !important;align-items:center !important;border:1px solid rgba(139,15,38,.10) !important;border-radius:18px !important;background:#fff !important;padding:12px !important;text-align:left !important;cursor:pointer !important;min-height:72px !important;color:#251c21 !important;transition:.18s ease !important;
}
#panelClientes .client-card-row:hover{transform:translateY(-1px) !important;box-shadow:0 12px 26px rgba(30,20,25,.075) !important;border-color:rgba(139,15,38,.22) !important;}
#panelClientes .client-card-row.selected{background:linear-gradient(90deg,#fff1f4,#fff) !important;border-color:rgba(139,15,38,.35) !important;box-shadow:inset 4px 0 0 #8b0f26,0 12px 28px rgba(139,15,38,.10) !important;}
#panelClientes .client-icon{width:42px !important;height:42px !important;border-radius:50% !important;display:grid !important;place-items:center !important;background:#f9e7eb !important;color:#8b0f26 !important;border:1px solid rgba(139,15,38,.12) !important;font-size:19px !important;}
#panelClientes .client-card-main b{display:block !important;font-size:15px !important;color:#21191d !important;margin:0 0 4px !important;line-height:1.2 !important;}
#panelClientes .client-card-main span{display:block !important;font-size:12px !important;color:#766a70 !important;}
#panelClientes .client-card-meta{text-align:right !important;min-width:72px !important;}
#panelClientes .client-card-meta b{display:block !important;font-size:14px !important;color:#2c2226 !important;}
#panelClientes .client-card-meta span{display:block !important;font-size:11px !important;color:#7d7076 !important;margin:1px 0 5px !important;}
#panelClientes .client-card-meta small{display:inline-flex !important;align-items:center !important;gap:4px !important;font-size:11px !important;color:#0c8a43 !important;font-weight:800 !important;}
#panelClientes .client-card-meta small:before{content:"";width:7px;height:7px;border-radius:50%;background:#18a957;display:inline-block;}
#panelClientes .clients-pro-main{display:flex !important;flex-direction:column !important;gap:18px !important;min-width:0 !important;}
#panelClientes .client-metrics-grid{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:16px !important;}
#panelClientes .client-metric-card{padding:18px 20px !important;min-height:112px !important;display:grid !important;grid-template-columns:auto 1fr !important;column-gap:14px !important;align-items:center !important;}
#panelClientes .client-metric-card span{grid-row:1 / span 2 !important;width:46px !important;height:46px !important;border-radius:16px !important;display:grid !important;place-items:center !important;background:#f7e4e9 !important;color:#8b0f26 !important;font-size:24px !important;}
#panelClientes .client-metric-card b{font-size:30px !important;line-height:1 !important;color:#20181c !important;}
#panelClientes .client-metric-card small{font-size:13px !important;color:#766a70 !important;font-weight:700 !important;}
#panelClientes .client-metric-card.blue span{background:#eaf3ff !important;color:#1e5d94 !important;}
#panelClientes .client-metric-card.green span{background:#eaf8ef !important;color:#14824a !important;}
#panelClientes .client-metric-card.yellow span{background:#fff5dd !important;color:#b36b00 !important;}
#panelClientes .client-detail-pro{padding:24px !important;}
#panelClientes .client-detail-top{display:flex !important;justify-content:space-between !important;align-items:flex-start !important;gap:18px !important;margin-bottom:18px !important;}
#panelClientes .client-detail-top h2{font-size:28px !important;letter-spacing:-.035em !important;margin:0 0 6px !important;color:#20181c !important;display:flex !important;align-items:center !important;gap:10px !important;flex-wrap:wrap !important;}
#panelClientes .client-detail-top p{margin:0 !important;color:#756970 !important;font-size:14px !important;}
#panelClientes .client-status-pill{display:inline-flex !important;align-items:center !important;border-radius:999px !important;background:#e9f8ee !important;color:#157c43 !important;border:1px solid rgba(21,124,67,.16) !important;padding:6px 10px !important;font-size:12px !important;font-weight:900 !important;}
#panelClientes .client-status-pill.off{background:#f3f0f1 !important;color:#81757b !important;}
#panelClientes .client-top-actions{display:flex !important;gap:10px !important;flex-wrap:wrap !important;justify-content:flex-end !important;}
#panelClientes .client-detail-grid{display:grid !important;grid-template-columns:minmax(0,1.35fr) minmax(300px,.9fr) !important;gap:16px !important;margin-bottom:16px !important;}
#panelClientes .client-card{padding:18px !important;box-shadow:0 10px 26px rgba(30,20,25,.045) !important;}
#panelClientes .client-card h4{margin:0 0 14px !important;font-size:16px !important;color:#20181c !important;}
#panelClientes .info-two-col{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px 18px !important;}
#panelClientes .info-two-col small{display:block !important;color:#83767c !important;font-size:11px !important;font-weight:900 !important;text-transform:uppercase !important;letter-spacing:.045em !important;margin-bottom:5px !important;}
#panelClientes .info-two-col b{font-size:14px !important;color:#241b1f !important;word-break:break-word !important;}
#panelClientes .notes-card{background:linear-gradient(180deg,#fffdf7,#fffaf0) !important;border-color:rgba(189,122,16,.18) !important;}
#panelClientes .notes-card p{margin:0 !important;line-height:1.55 !important;color:#53464b !important;font-size:14px !important;}
#panelClientes .client-bottom-grid{display:grid !important;grid-template-columns:minmax(0,1.4fr) 360px !important;gap:16px !important;align-items:start !important;}
#panelClientes .client-section-head{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;margin-bottom:10px !important;}
#panelClientes .soft-table-wrap{border:1px solid rgba(139,15,38,.08) !important;border-radius:16px !important;overflow:hidden !important;background:#fff !important;}
#panelClientes .modern-client-table{border-collapse:collapse !important;width:100% !important;font-size:13px !important;}
#panelClientes .modern-client-table th{background:#fbf7f8 !important;color:#6a5962 !important;font-size:11px !important;text-transform:uppercase !important;letter-spacing:.05em !important;padding:12px !important;border-bottom:1px solid rgba(139,15,38,.08) !important;text-align:left !important;}
#panelClientes .modern-client-table td{padding:12px !important;border-bottom:1px solid rgba(139,15,38,.07) !important;color:#2e2529 !important;vertical-align:middle !important;}
#panelClientes .modern-client-table td span{display:block !important;color:#857880 !important;font-size:12px !important;margin-top:3px !important;}
#panelClientes .modern-client-table tr:last-child td{border-bottom:0 !important;}
#panelClientes .client-side-stack{display:flex !important;flex-direction:column !important;gap:14px !important;}
#panelClientes .summary-grid-mini{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;}
#panelClientes .summary-grid-mini div{border:1px solid rgba(139,15,38,.08) !important;border-radius:16px !important;padding:14px !important;background:#fbf7f8 !important;}
#panelClientes .summary-grid-mini b{display:block !important;font-size:26px !important;color:#8b0f26 !important;line-height:1 !important;}
#panelClientes .summary-grid-mini span{display:block !important;font-size:12px !important;color:#756970 !important;margin-top:5px !important;}
#panelClientes .commercial-card p{display:flex !important;justify-content:space-between !important;gap:14px !important;margin:0 !important;padding:10px 0 !important;border-bottom:1px solid rgba(139,15,38,.08) !important;}
#panelClientes .commercial-card p:last-child{border-bottom:0 !important;}
#panelClientes .commercial-card span{color:#756970 !important;font-size:13px !important;}
#panelClientes .commercial-card b{font-size:13px !important;color:#241b1f !important;text-align:right !important;}
#panelClientes .employee-chips{display:flex !important;flex-wrap:wrap !important;gap:8px !important;}
#panelClientes .employee-chips span{display:inline-flex !important;border-radius:999px !important;background:#f4ecef !important;border:1px solid rgba(139,15,38,.10) !important;padding:7px 10px !important;font-size:12px !important;font-weight:800 !important;color:#6e1830 !important;}
@media (max-width: 1180px){#panelClientes .clients-pro{grid-template-columns:1fr !important;}#panelClientes .clients-pro-sidebar{position:static !important;max-height:none !important;}#panelClientes .clients-pro-list{max-height:420px !important;}#panelClientes .client-bottom-grid,#panelClientes .client-detail-grid{grid-template-columns:1fr !important;}#panelClientes .client-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}}
@media (max-width: 700px){#panelClientes .client-metrics-grid{grid-template-columns:1fr !important;}#panelClientes .clients-search-row{grid-template-columns:1fr !important;}#panelClientes .client-detail-top{flex-direction:column !important;}#panelClientes .client-top-actions{justify-content:flex-start !important;}#panelClientes .info-two-col{grid-template-columns:1fr !important;}#panelClientes .client-card-row{grid-template-columns:42px 1fr !important;}#panelClientes .client-card-meta{grid-column:2 !important;text-align:left !important;display:flex !important;gap:8px !important;align-items:center !important;}}

/* FAC OPS - Empleados Pro */
#panelEmpleados .employees-pro{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(560px,1.6fr);gap:18px;align-items:start;}
#panelEmpleados .employees-pro-sidebar{position:sticky;top:92px;max-height:calc(100vh - 112px);overflow:hidden;display:flex;flex-direction:column;}
#panelEmpleados .employees-title-row{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px;}
#panelEmpleados .employees-title-row h2{margin:0;font-size:26px;color:#20181c;letter-spacing:-.03em;}
#panelEmpleados .employees-title-row p{margin:5px 0 0;color:#766a70;font-size:13px;}
#panelEmpleados .employee-create-card{background:linear-gradient(180deg,#fff,#fbf6f8);border:1px solid rgba(139,15,38,.10);border-radius:18px;padding:14px;margin-bottom:14px;}
#panelEmpleados .employee-create-card h4{margin:0 0 10px;color:#20181c;font-size:15px;}
#panelEmpleados .employee-create-card p{margin:9px 0 0;color:#766a70;font-size:12px;line-height:1.35;}
#panelEmpleados .employee-create-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end;}
#panelEmpleados .employee-create-grid button{grid-column:1 / -1;}
#panelEmpleados .employees-search-row{display:grid;grid-template-columns:1fr 150px;gap:10px;margin-bottom:12px;}
#panelEmpleados .employees-list-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 0 10px;}
#panelEmpleados .employees-list-title b{font-size:14px;color:#20181c;}
#panelEmpleados .employees-pro-list{display:flex;flex-direction:column;gap:9px;overflow:auto;padding-right:4px;}
#panelEmpleados .employee-card-row{width:100%;border:1px solid rgba(139,15,38,.10);background:#fff;border-radius:18px;padding:13px;display:grid;grid-template-columns:42px 1fr 90px;gap:12px;align-items:center;text-align:left;cursor:pointer;transition:.18s ease;}
#panelEmpleados .employee-card-row:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(30,20,25,.075);border-color:rgba(139,15,38,.22);}
#panelEmpleados .employee-card-row.selected{background:linear-gradient(90deg,#fff1f4,#fff);border-color:rgba(139,15,38,.35);box-shadow:inset 4px 0 0 #8b0f26,0 12px 28px rgba(139,15,38,.10);}
#panelEmpleados .employee-avatar-mini,#panelEmpleados .employee-avatar-big{display:grid;place-items:center;border-radius:50%;background:#f7e4e9;color:#8b0f26;border:1px solid rgba(139,15,38,.12);font-weight:950;}
#panelEmpleados .employee-avatar-mini{width:42px;height:42px;font-size:14px;}
#panelEmpleados .employee-avatar-big{width:58px;height:58px;font-size:18px;}
#panelEmpleados .employee-card-main b{display:block;font-size:15px;color:#21191d;margin:0 0 4px;line-height:1.2;}
#panelEmpleados .employee-card-main span{display:block;font-size:12px;color:#766a70;word-break:break-word;}
#panelEmpleados .employee-card-meta{text-align:right;}
#panelEmpleados .employee-card-meta b{display:block;font-size:15px;color:#2c2226;}
#panelEmpleados .employee-card-meta span{display:block;font-size:11px;color:#7d7076;margin:1px 0 5px;}
#panelEmpleados .employee-card-meta small{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:#0c8a43;font-weight:850;}
#panelEmpleados .employee-card-meta small:before{content:"";width:7px;height:7px;border-radius:50%;background:#18a957;display:inline-block;}
#panelEmpleados .employee-card-meta small.off{color:#81757b;}
#panelEmpleados .employee-card-meta small.off:before{background:#999;}
#panelEmpleados .employee-metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px;}
#panelEmpleados .employee-metric-card{background:#fff;border:1px solid rgba(139,15,38,.10);border-radius:20px;padding:18px 20px;min-height:112px;display:grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:center;box-shadow:0 10px 26px rgba(30,20,25,.045);}
#panelEmpleados .employee-metric-card span{grid-row:1 / span 2;width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:#f7e4e9;color:#8b0f26;font-size:24px;}
#panelEmpleados .employee-metric-card b{font-size:30px;line-height:1;color:#20181c;}
#panelEmpleados .employee-metric-card small{font-size:13px;color:#766a70;font-weight:700;}
#panelEmpleados .employee-metric-card.blue span{background:#eaf3ff;color:#1e5d94;}
#panelEmpleados .employee-metric-card.green span{background:#eaf8ef;color:#14824a;}
#panelEmpleados .employee-metric-card.yellow span{background:#fff5dd;color:#b36b00;}
#panelEmpleados .employee-detail-pro{padding:24px;}
#panelEmpleados .employee-detail-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;}
#panelEmpleados .employee-profile-title{display:flex;gap:14px;align-items:center;}
#panelEmpleados .employee-detail-top h2{font-size:28px;letter-spacing:-.035em;margin:0 0 6px;color:#20181c;display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
#panelEmpleados .employee-detail-top p{margin:0;color:#756970;font-size:14px;}
#panelEmpleados .employee-status-pill{display:inline-flex;align-items:center;border-radius:999px;background:#e9f8ee;color:#157c43;border:1px solid rgba(21,124,67,.16);padding:6px 10px;font-size:12px;font-weight:900;}
#panelEmpleados .employee-status-pill.off{background:#f3f0f1;color:#81757b;}
#panelEmpleados .employee-top-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
#panelEmpleados .employee-detail-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:16px;margin-bottom:16px;}
#panelEmpleados .employee-card{background:#fff;border:1px solid rgba(139,15,38,.10);border-radius:20px;padding:18px;box-shadow:0 10px 26px rgba(30,20,25,.045);}
#panelEmpleados .employee-card h4{margin:0 0 14px;font-size:16px;color:#20181c;}
#panelEmpleados .employee-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
#panelEmpleados .employee-info-grid>div{background:#fbf7f8;border:1px solid rgba(139,15,38,.06);border-radius:14px;padding:12px;}
#panelEmpleados .employee-info-grid small{display:block;color:#7b6c72;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;}
#panelEmpleados .employee-info-grid b{font-size:14px;color:#2c2226;word-break:break-word;}
#panelEmpleados .employee-access-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
#panelEmpleados .employee-bottom-grid{display:grid;grid-template-columns:minmax(0,1.45fr) 340px;gap:16px;align-items:start;}
#panelEmpleados .employee-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;}
#panelEmpleados .modern-employee-table{border-collapse:collapse;width:100%;font-size:13px;}
#panelEmpleados .modern-employee-table th{background:#fbf7f8;color:#6a5962;font-size:11px;text-transform:uppercase;letter-spacing:.05em;padding:12px;border-bottom:1px solid rgba(139,15,38,.08);text-align:left;}
#panelEmpleados .modern-employee-table td{padding:12px;border-bottom:1px solid rgba(139,15,38,.07);color:#2e2529;vertical-align:middle;}
#panelEmpleados .modern-employee-table td span{display:block;color:#857880;font-size:12px;margin-top:3px;}
#panelEmpleados .modern-employee-table tr:last-child td{border-bottom:0;}
#panelEmpleados .employee-side-stack{display:flex;flex-direction:column;gap:14px;}
#panelEmpleados .quick-actions-card{display:flex;flex-direction:column;gap:10px;}
#panelEmpleados .quick-actions-card h4{margin-bottom:4px;}
#panelEmpleados .notes-card p{margin:0;color:#4f4449;line-height:1.45;}
#panelEmpleados .employee-summary-mini{grid-template-columns:repeat(2,minmax(0,1fr));}
#panelEmpleados .employee-summary-mini div{min-height:74px;}
@media (max-width:1180px){#panelEmpleados .employees-pro{grid-template-columns:1fr;}#panelEmpleados .employees-pro-sidebar{position:static;max-height:none;}#panelEmpleados .employees-pro-list{max-height:420px;}#panelEmpleados .employee-bottom-grid,#panelEmpleados .employee-detail-grid{grid-template-columns:1fr;}#panelEmpleados .employee-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:700px){#panelEmpleados .employee-metrics-grid{grid-template-columns:1fr;}#panelEmpleados .employees-search-row,.employee-create-grid{grid-template-columns:1fr !important;}#panelEmpleados .employee-detail-top{flex-direction:column;}#panelEmpleados .employee-top-actions{justify-content:flex-start;}#panelEmpleados .employee-info-grid{grid-template-columns:1fr;}#panelEmpleados .employee-card-row{grid-template-columns:42px 1fr;}#panelEmpleados .employee-card-meta{grid-column:2;text-align:left;display:flex;gap:8px;align-items:center;}#panelEmpleados .employee-profile-title{align-items:flex-start;}#panelEmpleados .employee-detail-top h2{font-size:23px;}}

/* FAC OPS Beta 25 - Rentabilidad Administración - diseño unificado Administración */
#panelAdministracion .admin25-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0;}
#panelAdministracion .admin25-kpi{background:#fff;border:1px solid rgba(139,15,38,.10);border-radius:20px;padding:18px 20px;min-height:116px;box-shadow:0 12px 26px rgba(30,20,25,.045);display:grid;grid-template-columns:54px 1fr;gap:14px;align-items:center;}
#panelAdministracion .admin25-kpi span{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;font-size:22px;font-weight:950;border:1px solid rgba(139,15,38,.08);}
#panelAdministracion .admin25-kpi small{display:block;color:#5d4d55;font-weight:950;text-transform:uppercase;font-size:11px;letter-spacing:.045em;margin-bottom:7px;}
#panelAdministracion .admin25-kpi b{display:block;font-size:26px;line-height:1;color:#120d10;letter-spacing:-.03em;}
#panelAdministracion .admin25-kpi em{display:block;font-style:normal;color:#71656b;font-size:12px;margin-top:7px;}
#panelAdministracion .admin25-kpi.blue span{background:#eaf3ff;color:#1e5d94;}
#panelAdministracion .admin25-kpi.orange span{background:#fff2e4;color:#d76500;}
#panelAdministracion .admin25-kpi.green span{background:#eaf8ef;color:#14824a;}
#panelAdministracion .admin25-kpi.violet span{background:#f3e9ff;color:#7a39ca;}
#panelAdministracion .admin25-note{margin:14px 0;padding:14px 18px;display:flex;align-items:flex-start;gap:12px;color:#4c4147;line-height:1.45;}
#panelAdministracion .admin25-note span{width:32px;height:32px;border-radius:12px;background:#fff7df;display:grid;place-items:center;flex:0 0 auto;}
#panelAdministracion .admin25-note p{margin:0;font-size:14px;}
#panelAdministracion .admin25-filters{display:grid;grid-template-columns:minmax(260px,1fr) 240px 240px auto;gap:10px;align-items:center;margin:14px 0;padding:14px;}
#panelAdministracion .admin25-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start;margin-top:16px;}
#panelAdministracion .admin25-table{padding:18px;min-width:0;}
#panelAdministracion .admin25-side{display:flex;flex-direction:column;gap:16px;position:sticky;top:14px;}
#panelAdministracion .admin25-summary{padding:18px;}
#panelAdministracion .admin25-summary h3{margin:0 0 14px;font-size:18px;color:#171115;}
#panelAdministracion .admin25-summary p{display:flex;justify-content:space-between;gap:14px;margin:0;padding:8px 0;border-bottom:1px solid rgba(139,15,38,.08);font-size:14px;}
#panelAdministracion .admin25-summary p:last-child{border-bottom:0;}
#panelAdministracion .admin25-summary span{color:#6f6268;}
#panelAdministracion .admin25-summary b{color:#191216;text-align:right;}
#panelAdministracion .admin25-alerts{padding:18px;background:linear-gradient(180deg,#fff,#fff7f8);}
#panelAdministracion .admin25-alert-row{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:10px;padding:12px 14px;border:1px solid rgba(214,35,51,.18);border-left:4px solid #d62333;border-radius:14px;background:#fff6f7;}
#panelAdministracion .admin25-alert-row b{display:block;color:#21191d;font-size:13px;margin-bottom:3px;}
#panelAdministracion .admin25-alert-row span{display:block;color:#d62333;font-size:12px;font-weight:800;}
#panelAdministracion .admin25-alert-row strong{font-size:12px;color:#d62333;white-space:nowrap;}
#panelAdministracion .admin25-profit-table{border-collapse:separate;border-spacing:0;overflow:hidden;border-radius:16px;border:1px solid rgba(139,15,38,.08);}
#panelAdministracion .admin25-profit-table th{background:#fbf7f8;color:#74666d;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.045em;padding:13px 12px;border-bottom:1px solid rgba(139,15,38,.08);text-align:left;}
#panelAdministracion .admin25-profit-table td{padding:13px 12px;border-bottom:1px solid rgba(139,15,38,.07);vertical-align:middle;color:#251d21;font-size:13px;}
#panelAdministracion .admin25-profit-table tr:last-child td{border-bottom:0;}
#panelAdministracion .admin25-profit-table td small{display:block;color:#8b7d84;margin-top:3px;font-size:11px;font-weight:700;}
#panelAdministracion .admin25-profit-table .profit-loss{background:rgba(214,35,51,.035);}
#panelAdministracion .income-text{color:#079047 !important;font-weight:950;}
#panelAdministracion .expense-text{color:#d62333 !important;font-weight:950;}
@media(max-width:1180px){#panelAdministracion .admin25-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}#panelAdministracion .admin25-layout{grid-template-columns:1fr;}#panelAdministracion .admin25-side{position:static;}#panelAdministracion .admin25-filters{grid-template-columns:1fr 1fr;}}
@media(max-width:680px){#panelAdministracion .admin25-kpis{grid-template-columns:1fr;}#panelAdministracion .admin25-kpi{grid-template-columns:46px 1fr;padding:16px;}#panelAdministracion .admin25-filters{grid-template-columns:1fr;}#panelAdministracion .admin25-alert-row{align-items:flex-start;flex-direction:column;} }

/* =========================================================
   FAC OPS BETA 51 - Vista Empleado Mobile Pro
   Pantalla simple: servicio actual, iniciar/finalizar, próximo servicio.
   ========================================================= */
body.employee-mode-body{background:#fff7f9!important;}
.app.employee-mode .sidebar{display:none!important;}
.app.employee-mode .main{margin:0!important;padding:0!important;max-width:none!important;}
.app.employee-mode .topbar{display:none!important;}
.app.employee-mode .panel{padding:0!important;}
.app.employee-mode .panel:not(.show){display:none!important;}
.app.employee-mode .footer,.app.employee-mode .notification-drawer{display:none!important;}
.emp-mobile-shell{min-height:100vh;max-width:560px;margin:0 auto;padding:18px 14px 28px;background:linear-gradient(180deg,#fff3f6 0%,#ffffff 34%,#ffffff 100%);}
.emp-mobile-brand{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;}
.emp-mobile-brand b{display:block;font-size:24px;letter-spacing:-.04em;color:#21161a;font-weight:950;}
.emp-mobile-brand span{display:block;color:#806c73;font-size:13px;font-weight:800;margin-top:2px;}
.emp-mobile-brand button{border:1px solid rgba(139,15,38,.14);background:#fff;color:#9b0d2b;border-radius:999px;padding:10px 13px;font-weight:950;box-shadow:0 8px 18px rgba(139,15,38,.08);}
.emp-today-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#24171c;color:#fff;padding:8px 12px;font-size:12px;font-weight:950;letter-spacing:.04em;margin-bottom:12px;}
.emp-service-card{background:#fff;border:1px solid rgba(139,15,38,.12);border-radius:30px;padding:22px;box-shadow:0 20px 52px rgba(31,18,23,.12);overflow:hidden;}
.emp-service-status{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:950;letter-spacing:.03em;margin-bottom:15px;}
.emp-service-status.pending{background:#fff0d8;color:#9b5a00;}
.emp-service-status.in_service{background:#dcf8e8;color:#087331;}
.emp-service-status.completed{background:#f0eef0;color:#554850;}
.emp-service-card h2{margin:0;color:#171014;font-size:31px;line-height:1.03;letter-spacing:-.055em;font-weight:980;}
.emp-client{margin:8px 0 18px;color:#71636a;font-size:16px;font-weight:800;}
.emp-time-box{border:1px solid rgba(139,15,38,.10);border-radius:22px;background:#fff9fb;padding:15px;margin:16px 0;}
.emp-time-box span{display:block;color:#87747b;text-transform:uppercase;font-size:11px;font-weight:950;letter-spacing:.06em;}
.emp-time-box b{display:block;color:#24171c;font-size:26px;margin-top:4px;}
.emp-mark-info{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0;}
.emp-mark-info>div{border-radius:18px;background:#f8f4f5;padding:13px;}
.emp-mark-info small{display:block;color:#806f76;font-size:11px;text-transform:uppercase;font-weight:950;letter-spacing:.05em;}
.emp-mark-info b{display:block;color:#1d1519;font-size:22px;margin-top:4px;}
.emp-action-btn{width:100%;min-height:76px;border:0;border-radius:24px;color:#fff;font-size:20px;font-weight:1000;letter-spacing:.02em;margin-top:16px;box-shadow:0 18px 32px rgba(0,0,0,.16);}
.emp-start{background:#168a4a;box-shadow:0 18px 32px rgba(22,138,74,.22);}
.emp-finish{background:#b20d31;box-shadow:0 18px 32px rgba(178,13,49,.20);}
.emp-ok-msg,.emp-completed-msg{border-radius:18px;background:#e4faed;color:#087331;padding:13px 14px;font-weight:950;margin:14px 0 0;text-align:center;}
.emp-completed-msg{background:#f2eff1;color:#584b52;}
.emp-observation{width:100%;min-height:78px;border:1px solid rgba(139,15,38,.12);border-radius:18px;padding:14px;font-size:16px;margin-top:14px;resize:vertical;background:#fff;}
.emp-problem-box{margin-top:14px;border:1px solid rgba(139,15,38,.10);border-radius:20px;background:#fff9fb;padding:12px 14px;}
.emp-problem-box summary{cursor:pointer;font-weight:950;color:#9b0d2b;list-style:none;}
.emp-problem-grid{display:grid;grid-template-columns:1fr;gap:9px;margin:12px 0;}
.emp-problem-grid label{display:flex;gap:10px;align-items:center;font-weight:850;color:#3c3035;}
.emp-problem-grid input{width:20px;height:20px;accent-color:#9b0d2b;}
.emp-problem-box p{margin:8px 0 0;color:#806f76;font-size:13px;}
.emp-next-card,.emp-day-list,.emp-empty-card{background:#fff;border:1px solid rgba(139,15,38,.10);border-radius:24px;padding:18px;margin-top:14px;box-shadow:0 12px 32px rgba(31,18,23,.07);}
.emp-next-card small{display:block;text-transform:uppercase;color:#86747c;font-size:11px;font-weight:950;letter-spacing:.06em;}
.emp-next-card h3,.emp-empty-card h2{margin:6px 0 4px;color:#22171c;font-size:22px;line-height:1.08;letter-spacing:-.03em;}
.emp-next-card p,.emp-empty-card p{margin:0;color:#73636a;font-weight:750;}
.emp-day-list h3{margin:0 0 12px;color:#21161a;font-size:18px;}
.emp-day-row{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-top:1px solid rgba(139,15,38,.08);}
.emp-day-row:first-of-type{border-top:0;}
.emp-day-row>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#f4eef1;color:#8d7780;font-weight:950;flex:0 0 auto;}
.emp-day-row.in_service>span{background:#dff8e9;color:#087331;}
.emp-day-row.completed>span{background:#24171c;color:#fff;}
.emp-day-row b{display:block;color:#20171b;font-size:15px;}
.emp-day-row small{display:block;color:#776870;margin-top:3px;font-weight:750;line-height:1.35;}
.emp-empty-card{text-align:center;padding:34px 22px;}
.emp-empty-ico{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;background:#e4faed;color:#087331;font-size:34px;font-weight:950;margin:0 auto 12px;}
@media(min-width:760px){.app.employee-mode .topbar{display:none!important;}.emp-mobile-shell{padding-top:24px;}}

/* =========================================================
   FAC OPS BETA 51.1 - Corrección visual empleado mobile
   Fuerza estética tipo app, no texto plano.
   ========================================================= */
html body.employee-mode-body{
  margin:0!important;
  background:radial-gradient(circle at top left, rgba(139,15,38,.16), transparent 34%), linear-gradient(180deg,#fff3f6 0%,#ffffff 48%,#fff 100%)!important;
  overflow-x:hidden;
}
.app.employee-mode{min-height:100vh!important;background:transparent!important;}
.app.employee-mode .main{width:100%!important;min-height:100vh!important;background:transparent!important;}
.app.employee-mode #panelMisServicios{display:block!important;width:100%!important;min-height:100vh!important;background:transparent!important;}
.emp-mobile-shell{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:430px!important;
  min-height:100vh!important;
  margin:0 auto!important;
  padding:22px 16px 32px!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  color:#20161a!important;
}
.emp-mobile-brand{
  min-height:56px!important;
  padding:0 2px!important;
  margin-bottom:18px!important;
}
.emp-mobile-brand b{font-size:28px!important;font-weight:1000!important;color:#1f1418!important;}
.emp-mobile-brand span{font-size:14px!important;color:#7b6971!important;font-weight:850!important;}
.emp-mobile-brand button{
  min-height:42px!important;
  padding:0 15px!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#8b0f26!important;
  border:1px solid rgba(139,15,38,.13)!important;
  box-shadow:0 12px 26px rgba(139,15,38,.10)!important;
}
.emp-today-pill{
  display:flex!important;
  width:fit-content!important;
  background:#20161a!important;
  color:#fff!important;
  border-radius:999px!important;
  padding:9px 13px!important;
  margin:0 0 14px!important;
  box-shadow:0 12px 22px rgba(32,22,26,.16)!important;
}
.emp-service-card{
  position:relative!important;
  border-radius:34px!important;
  padding:24px!important;
  background:linear-gradient(180deg,#ffffff 0%,#fff9fb 100%)!important;
  border:1px solid rgba(139,15,38,.10)!important;
  box-shadow:0 24px 58px rgba(36,18,24,.15)!important;
}
.emp-service-card::before{
  content:"";position:absolute;right:-42px;top:-42px;width:130px;height:130px;border-radius:50%;
  background:rgba(139,15,38,.08);pointer-events:none;
}
.emp-service-status{position:relative!important;z-index:1!important;border-radius:999px!important;font-weight:1000!important;}
.emp-service-card h2{position:relative!important;z-index:1!important;margin-top:4px!important;font-size:34px!important;line-height:1!important;letter-spacing:-.06em!important;color:#171014!important;}
.emp-client{position:relative!important;z-index:1!important;font-size:16px!important;color:#75636b!important;margin:10px 0 18px!important;}
.emp-time-box{position:relative!important;z-index:1!important;background:#fff!important;border-radius:24px!important;padding:16px!important;box-shadow:inset 0 0 0 1px rgba(139,15,38,.08)!important;}
.emp-time-box b{font-size:28px!important;font-weight:1000!important;}
.emp-mark-info{position:relative!important;z-index:1!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;}
.emp-mark-info>div{border-radius:20px!important;background:#f6eef1!important;padding:14px!important;}
.emp-action-btn{position:relative!important;z-index:1!important;display:block!important;width:100%!important;min-height:84px!important;border-radius:28px!important;font-size:22px!important;font-weight:1000!important;text-align:center!important;border:0!important;color:#fff!important;}
.emp-start{background:linear-gradient(180deg,#19a65a,#0f7e42)!important;box-shadow:0 22px 36px rgba(22,138,74,.28)!important;}
.emp-finish{background:linear-gradient(180deg,#c8153d,#8b0f26)!important;box-shadow:0 22px 36px rgba(139,15,38,.25)!important;}
.emp-ok-msg,.emp-completed-msg{position:relative!important;z-index:1!important;border-radius:20px!important;padding:15px!important;font-size:15px!important;}
.emp-observation{position:relative!important;z-index:1!important;box-sizing:border-box!important;width:100%!important;border-radius:20px!important;background:#fff!important;}
.emp-problem-box{position:relative!important;z-index:1!important;border-radius:22px!important;background:#fff!important;}
.emp-next-card,.emp-day-list,.emp-empty-card{
  border-radius:28px!important;
  background:#fff!important;
  border:1px solid rgba(139,15,38,.09)!important;
  box-shadow:0 16px 38px rgba(36,18,24,.09)!important;
}
.emp-day-row{border-top:1px solid rgba(139,15,38,.08)!important;}
.emp-day-row b{font-size:16px!important;}
@media(max-width:420px){
  .emp-mobile-shell{padding:18px 13px 28px!important;}
  .emp-service-card{padding:21px!important;border-radius:30px!important;}
  .emp-service-card h2{font-size:30px!important;}
  .emp-action-btn{min-height:78px!important;font-size:20px!important;}
}


/* BETA55 GEOCONTROL */
.emp-geo-badge.warn{background:#fff4d8;color:#9b5a00;border-color:#ffd28a}
.emp-geo-badge.danger{background:#ffe5e8;color:#b00020;border-color:#ffb7c0}
.round-link[href]{display:inline-grid;place-items:center;text-decoration:none}


/* BETA55.3 - Botón cerrar sesión visible para pruebas de empleados */
.emp-brand-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.emp-mobile-brand .emp-logout-btn{background:#9b0d2b!important;color:#fff!important;border-color:#9b0d2b!important;box-shadow:0 10px 22px rgba(155,13,43,.18)!important;}
.side-logout-btn{width:calc(100% - 24px);margin:10px 12px 12px;justify-content:center;font-weight:950;}
.employee-mode-body .top-actions #logoutBtn{display:inline-flex!important;}
@media(max-width:760px){
  .emp-mobile-brand{align-items:flex-start!important;}
  .emp-brand-actions{flex-direction:column;align-items:stretch;min-width:116px;}
  .emp-brand-actions button{width:100%;}
}


/* RC10 - botón de cierre de sesión visible para admin/supervisor */
.side-user{padding-bottom:12px!important;}
.side-logout-new{
  width:100%;
  margin-top:10px;
  border:1px solid rgba(139,15,38,.22);
  background:#fff;
  color:#8b0f26;
  border-radius:14px;
  height:40px;
  font-weight:950;
  cursor:pointer;
  box-shadow:0 10px 22px rgba(139,15,38,.06);
}
.side-logout-new:hover{background:#fff2f5;}
.side-footer{margin-top:8px!important;}


/* RC11 - cierre de sesión siempre visible */
.side-user{display:block!important;overflow:visible!important;}
#sideLogoutBtn.side-logout-new,.side-logout-new{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;margin-top:12px!important;border:1px solid rgba(139,15,38,.30)!important;
  background:#fff!important;color:#8b0f26!important;border-radius:14px!important;height:42px!important;
  font-weight:950!important;cursor:pointer!important;box-shadow:0 10px 22px rgba(139,15,38,.08)!important;
}
#sideLogoutBtn.side-logout-new:hover,.side-logout-new:hover{background:#fff2f5!important;}
.top-logout-new{
  display:inline-flex!important;align-items:center;justify-content:center;height:40px;padding:0 14px;
  border:1px solid rgba(139,15,38,.25);background:#fff;color:#8b0f26;border-radius:13px;
  font-weight:900;cursor:pointer;white-space:nowrap;
}
.employee-mode-body .top-logout-new{display:inline-flex!important;}


/* RC12 - cierre sesión dentro del menú lateral, imposible de tapar por footer */
.nav-logout-force{
  margin-top:8px!important;
  border:1px solid rgba(139,15,38,.28)!important;
  background:#fff6f8!important;
  color:#8b0f26!important;
  font-weight:950!important;
}
.nav-logout-force .nav-ico{color:#8b0f26!important;}
.nav-logout-force:hover{background:#ffeaf0!important;}

/* RC72 - Configuración premium */
.config-premium-page{display:flex;flex-direction:column;gap:18px}
.config-hero-card{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,#ffffff 0%,#fff7f9 58%,#f8eef1 100%);border:1px solid #ead7dc;border-radius:26px;padding:24px 26px;box-shadow:0 18px 50px rgba(90,20,38,.08)}
.config-hero-card h2{margin:4px 0 6px;font-size:28px;letter-spacing:-.02em;color:#14070b}
.config-hero-card p{margin:0;color:#7b6670;font-weight:700;max-width:660px}
.section-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:#a0082f;font-weight:900}
.config-hero-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.config-kpis-premium{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:12px}
.config-kpis-premium>div{background:#fff;border:1px solid #ead7dc;border-radius:20px;padding:16px 18px;box-shadow:0 12px 34px rgba(90,20,38,.06)}
.config-kpis-premium b{display:block;font-size:26px;line-height:1;color:#a0082f;letter-spacing:-.03em}
.config-kpis-premium span{display:block;margin-top:6px;color:#78636d;font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.config-kpis-premium .warn b{color:#f42f64}
.config-tools-premium{display:grid;grid-template-columns:1.2fr .8fr;gap:12px;align-items:stretch}
.config-tools-premium label,.reference-card-premium{background:#fff;border:1px solid #ead7dc;border-radius:20px;padding:12px 14px;box-shadow:0 10px 28px rgba(90,20,38,.045)}
.config-tools-premium label{font-size:12px;font-weight:900;color:#6e5661;text-transform:uppercase;letter-spacing:.04em}
.config-tools-premium input{margin-top:8px;border:0!important;background:#fbf7f8!important;border-radius:14px!important;padding:13px 14px!important;font-size:14px!important;width:100%;outline:none}
.reference-card-premium small{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#8b737d;font-weight:900}
.reference-card-premium b{display:block;margin-top:8px;color:#13070b;font-size:14px}
.config-table-premium{background:#fff;border:1px solid #ead7dc;border-radius:24px;overflow:auto;box-shadow:0 16px 44px rgba(90,20,38,.06)}
.config-table-premium table{border-collapse:separate;border-spacing:0}
.config-table-premium thead th{background:#fff8fa;color:#765d68;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:900;border-bottom:1px solid #ead7dc;padding:14px 14px}
.config-table-premium tbody td{padding:14px;border-bottom:1px solid #f1e2e6;vertical-align:middle}
.config-table-premium tbody tr:hover{background:#fffafd}
.login-user-row.is-inactive{opacity:.72;background:#fff9fa}
.user-cell-premium{display:flex;align-items:center;gap:12px;min-width:230px}
.user-avatar-premium{width:42px;height:42px;border-radius:16px;background:#9b0b2f;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:1000;letter-spacing:-.02em;box-shadow:0 8px 18px rgba(155,11,47,.18)}
.user-cell-premium b{font-size:14px;color:#18080d}.user-cell-premium small{color:#846d77;font-weight:800}
.email-pill{display:inline-flex;background:#fbf7f8;border:1px solid #f0e2e6;border-radius:999px;padding:8px 11px;font-weight:800;color:#4d3942;white-space:nowrap}
.role-picker-wrap{position:relative;display:inline-flex;align-items:center;min-width:138px;border-radius:999px;padding:9px 34px 9px 12px;font-weight:1000;border:1px solid #ead7dc;background:#fff;color:#7a0624;overflow:hidden}
.role-picker-wrap:after{content:'⌄';position:absolute;right:12px;top:50%;transform:translateY(-54%);font-weight:1000;color:inherit;pointer-events:none}
.role-picker-wrap.admin{background:#fff3f6;color:#a0082f;border-color:#f0bdcb}.role-picker-wrap.supervisor{background:#f4f0ff;color:#5832a6;border-color:#ddd1ff}.role-picker-wrap.employee{background:#f7fbf8;color:#118647;border-color:#d6efdf}
.role-picker-wrap select{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.status-pill-premium{display:inline-flex;align-items:center;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:1000;white-space:nowrap}
.status-pill-premium.active{background:#e9f9ef;color:#0f8e45}.status-pill-premium.inactive{background:#fff0f4;color:#f42f64}
.last-access-premium{font-weight:900;color:#3d2c33;white-space:nowrap}
.config-actions-premium{display:flex;gap:8px;justify-content:flex-end;min-width:150px}
.icon-action-btn{border:1px solid #e4bdc7;background:#fff;color:#9b0b2f;border-radius:14px;padding:10px 13px;font-weight:1000;cursor:pointer;transition:.15s ease;white-space:nowrap}
.icon-action-btn:hover{transform:translateY(-1px);box-shadow:0 10px 20px rgba(90,20,38,.09)}
.icon-action-btn.danger{background:#fff7f9;color:#b80a35;border-color:#edbcc9}.icon-action-btn.activate{background:#e9f9ef;color:#0f8e45;border-color:#bde8cb}
@media(max-width:900px){.config-hero-card{flex-direction:column;align-items:flex-start}.config-hero-actions{width:100%;justify-content:stretch}.config-hero-actions button{flex:1}.config-kpis-premium{grid-template-columns:repeat(2,minmax(0,1fr))}.config-tools-premium{grid-template-columns:1fr}.config-table-premium{border-radius:18px}.config-table-premium thead{display:none}.config-table-premium table,.config-table-premium tbody,.config-table-premium tr,.config-table-premium td{display:block;width:100%}.config-table-premium tbody tr{padding:12px;border-bottom:1px solid #ead7dc}.config-table-premium tbody td{border:0;padding:8px}.config-actions-premium{justify-content:flex-start}.email-pill{white-space:normal}}

/* RC73 - Configuración usuarios premium real */
.fac-config-v2{display:flex;flex-direction:column;gap:18px;padding:0;max-width:100%}
.fac-config-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;background:linear-gradient(135deg,#fff 0%,#fff7f9 54%,#f7edf0 100%);border:1px solid #ead7dc;border-radius:28px;padding:26px;box-shadow:0 18px 50px rgba(83,24,39,.08)}
.fac-eyebrow{display:inline-flex;color:#9b0d2b;font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.fac-config-hero h2{margin:0;font-size:30px;line-height:1.05;color:#16070d;font-weight:950;letter-spacing:-.03em}
.fac-config-hero p{margin:8px 0 0;color:#735d66;font-weight:700;font-size:14px}
.fac-config-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.fac-primary-btn,.fac-secondary-btn{border-radius:16px;min-height:48px;padding:0 18px;font-weight:950;cursor:pointer;transition:.18s ease;border:1px solid #b10d32}.fac-primary-btn{background:#a70b2d;color:#fff;box-shadow:0 14px 26px rgba(167,11,45,.18)}.fac-secondary-btn{background:#fff;color:#9b0d2b}.fac-primary-btn:hover,.fac-secondary-btn:hover{transform:translateY(-1px);box-shadow:0 18px 30px rgba(167,11,45,.14)}
.fac-config-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.fac-config-kpis>div{background:#fff;border:1px solid #ead7dc;border-radius:22px;padding:18px;box-shadow:0 12px 34px rgba(30,20,25,.055);min-height:110px;display:grid;gap:5px}.fac-config-kpis span{width:42px;height:42px;border-radius:15px;background:#fff0f3;display:grid;place-items:center;font-size:20px}.fac-config-kpis small{color:#7b6670;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:950}.fac-config-kpis b{font-size:28px;color:#13070b;line-height:1}.fac-config-kpis .warn span{background:#fff0f1}
.fac-config-searchbar{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:14px;align-items:stretch}.fac-config-searchbar>div,.fac-config-searchbar aside{background:#fff;border:1px solid #ead7dc;border-radius:20px;padding:16px;box-shadow:0 10px 28px rgba(30,20,25,.045)}.fac-config-searchbar label,.fac-config-searchbar small{display:block;color:#7b6670;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:950;margin-bottom:8px}.fac-config-searchbar input{width:100%;border:0;outline:0;font-size:18px;font-weight:800;color:#16070d;background:transparent}.fac-config-searchbar aside b{display:block;color:#16070d;font-size:14px}
.fac-users-grid{display:grid;gap:12px}.fac-user-card{display:grid;grid-template-columns:minmax(320px,1.25fr) minmax(260px,.8fr) auto;gap:16px;align-items:center;background:#fff;border:1px solid #ead7dc;border-radius:22px;padding:16px;box-shadow:0 12px 34px rgba(30,20,25,.05);transition:.18s ease}.fac-user-card:hover{transform:translateY(-1px);box-shadow:0 18px 44px rgba(30,20,25,.075);border-color:#d9b8c1}.fac-user-card.is-inactive{opacity:.78;background:#fff9fa}.fac-user-main{display:flex;align-items:center;gap:14px;min-width:0}.fac-user-avatar{flex:0 0 auto;width:54px;height:54px;border-radius:18px;background:#9b0d2b;color:#fff;display:grid;place-items:center;font-weight:950;font-size:16px;box-shadow:0 12px 26px rgba(155,13,43,.18)}.fac-user-avatar.supervisor{background:#5631a5}.fac-user-avatar.employee{background:#9b0d2b}.fac-user-avatar.admin{background:#151018}.fac-user-info{min-width:0}.fac-user-name-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fac-user-info h3{margin:0;font-size:16px;color:#13070b;font-weight:950}.fac-user-info p{margin:3px 0 8px;color:#7b6670;font-size:12px;font-weight:800}.fac-user-email{display:inline-flex;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#faf5f7;border:1px solid #ead7dc;border-radius:999px;padding:6px 10px;color:#3a222b;font-size:12px;font-weight:850}.fac-status-badge,.fac-role-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:950;white-space:nowrap}.fac-status-badge.active{background:#eaffeF;color:#078335}.fac-status-badge.inactive{background:#ffe9ee;color:#bd1238}.fac-role-badge.admin{background:#f0edf2;color:#151018}.fac-role-badge.supervisor{background:#f1edff;color:#5631a5}.fac-role-badge.employee{background:#fff0f3;color:#9b0d2b}.fac-user-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fac-user-meta small{display:block;color:#7b6670;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:950;margin-bottom:7px}.fac-user-meta b{font-size:14px;color:#16070d}.fac-user-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end;flex-wrap:wrap}.fac-role-select,.fac-soft-btn{height:40px;border-radius:13px;border:1px solid #ead7dc;background:#fff;color:#9b0d2b;font-weight:950;padding:0 12px;cursor:pointer}.fac-role-select{color:#2a1720;min-width:132px}.fac-soft-btn:hover,.fac-role-select:hover{border-color:#c98c9b;box-shadow:0 10px 22px rgba(155,13,43,.08)}.fac-soft-btn.danger{background:#fff5f7;color:#bd1238;border-color:#f0c5ce}.fac-soft-btn.activate{background:#f0fff5;color:#078335;border-color:#bfe8cb}
@media(max-width:1100px){.fac-config-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.fac-config-searchbar{grid-template-columns:1fr}.fac-user-card{grid-template-columns:1fr}.fac-user-actions{justify-content:flex-start}.fac-user-meta{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.fac-config-hero{align-items:flex-start;flex-direction:column;border-radius:22px;padding:20px}.fac-config-actions{width:100%}.fac-primary-btn,.fac-secondary-btn{width:100%}.fac-config-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.fac-config-kpis>div{min-height:96px}.fac-config-searchbar input{font-size:15px}.fac-user-main{align-items:flex-start}.fac-user-meta{grid-template-columns:1fr}.fac-user-actions>*{width:100%;justify-content:center}.fac-soft-btn{text-align:center}}

/* RC91 - Feriado sin prestación: explicar "sin carga" */
.holiday-no-work-card{border:1px solid rgba(218,158,11,.28);border-left:5px solid #d49a08;background:linear-gradient(135deg,#fffaf0,#fff);border-radius:16px;padding:12px;color:#37252c;box-shadow:0 8px 20px rgba(31,18,23,.045);font-size:12px;line-height:1.35;text-align:left}.holiday-no-work-card.compact{padding:10px}.holiday-no-work-card .holiday-no-work-top{display:flex;gap:7px;align-items:center;text-transform:uppercase;letter-spacing:.08em;color:#8b0f26;font-weight:950;font-size:10px;margin-bottom:4px}.holiday-no-work-card strong{display:block;font-size:14px;color:#24171d;margin-bottom:2px}.holiday-no-work-card small{display:block;color:#6f6268;font-weight:850}.holiday-no-work-card p{margin:6px 0 0;color:#5f5358;font-weight:850}.emp-holiday-card{background:linear-gradient(145deg,#fffaf0,#fff);border:1px solid rgba(218,158,11,.30);border-left:7px solid #d49a08;border-radius:26px;padding:26px 22px;margin-top:14px;box-shadow:0 16px 42px rgba(31,18,23,.08);text-align:left}.emp-holiday-card .emp-holiday-ico{width:58px;height:58px;border-radius:20px;background:#fff;display:grid;place-items:center;font-size:32px;box-shadow:0 10px 24px rgba(31,18,23,.07);margin-bottom:12px}.emp-holiday-card h2{margin:0 0 4px;color:#22171c;font-size:25px;line-height:1.05;letter-spacing:-.04em}.emp-holiday-card p{margin:0 0 12px;color:#8b0f26;font-weight:950}.emp-holiday-detail{border:1px solid rgba(139,15,38,.10);border-radius:18px;padding:12px;background:#fff;margin:12px 0}.emp-holiday-detail b,.emp-holiday-detail span{display:block}.emp-holiday-detail span{margin-top:3px;color:#6f6268;font-weight:850}.emp-holiday-card ul{margin:12px 0 14px;padding-left:20px;color:#53474c;font-weight:850;line-height:1.5}.emp-holiday-card>strong{display:block;color:#8b0f26;font-size:15px;line-height:1.35}


/* RC116 — acceso visible al informe de rentabilidad */
.profitability-entry-btn{
  display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;
  min-height:44px;padding:8px 14px;border:1px solid rgba(139,15,38,.28);border-radius:13px;
  background:linear-gradient(135deg,#8b0f26,#b51b3a);color:#fff;cursor:pointer;box-shadow:0 8px 20px rgba(139,15,38,.18);
}
.profitability-entry-btn>span{grid-row:1/3;font-size:21px}.profitability-entry-btn>b{font-size:13px;line-height:1.1;text-align:left}.profitability-entry-btn>small{font-size:10px;opacity:.85;text-align:left}
.profitability-entry-btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(139,15,38,.25)}
@media(max-width:760px){
  .admin22-head-actions{width:100%}.profitability-entry-btn{width:100%;order:-10}
  .admin24-tabs{overflow-x:auto;display:flex;flex-wrap:nowrap;padding-bottom:5px;-webkit-overflow-scrolling:touch}
  .admin24-tabs button{flex:0 0 auto}.admin24-tabs button:last-child{font-weight:800;border-color:rgba(139,15,38,.28)}
}
/* RC149 - Plantilla Fundemap editable real */
.fundemap-template-modal{position:fixed;inset:0;background:rgba(20,12,15,.55);z-index:10050;display:grid;place-items:center;padding:20px}.fundemap-template-dialog{width:min(720px,96vw);max-height:88vh;overflow:auto;background:#fff;border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,.24);padding:22px}.fundemap-template-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid #eee;padding-bottom:14px}.fundemap-template-head h3{margin:0 0 5px}.fundemap-template-head p{margin:0;color:#74656a}.fundemap-template-head button{border:0;background:#f7eef0;border-radius:10px;width:36px;height:36px;font-size:24px;cursor:pointer}.fundemap-template-list{display:grid;gap:9px;padding:16px 0}.fundemap-template-row{display:grid;grid-template-columns:1fr 220px;align-items:center;gap:14px;border:1px solid #eee;border-radius:13px;padding:11px 13px}.fundemap-template-check{display:flex;gap:10px;align-items:center;font-weight:800}.fundemap-template-row select{width:100%;border:1px solid #e2d7da;border-radius:10px;padding:9px;background:#fff}.fundemap-template-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid #eee;padding-top:15px}@media(max-width:650px){.fundemap-template-row{grid-template-columns:1fr}.fundemap-template-actions{flex-direction:column}.fundemap-template-actions button{width:100%}}

/* =========================================================
   FAC OPS RC2491 · AJUSTE VISUAL APROBADO 21/09/2026
   Desktop: sidebar más ancho + tipografía más legible.
   Sin cambios funcionales.
   ========================================================= */
@media (min-width: 901px){
  :root{ --sidebar:320px; }

  body{ font-size:15px; }

  .sidebar{
    padding-left:20px;
    padding-right:20px;
  }

  .nav-section{ font-size:11.5px; }
  .nav-btn{
    font-size:15px;
    min-height:50px;
    padding-left:16px;
    padding-right:16px;
  }
  .nav-ico{ font-size:20px; }
  .side-user-card strong{ font-size:15px; }
  .side-user-card span,
  .side-user > small,
  .side-footer{ font-size:13.5px; }

  /* Administración / cuenta corriente */
  #panelAdministracion{ font-size:15px; }
  #panelAdministracion .facadm-head h2{ font-size:24px; }
  #panelAdministracion .facadm-head p{ font-size:14px; }
  #panelAdministracion .facadm-tabs button{ font-size:12px; }
  #panelAdministracion .facadm-kpi small{ font-size:11.5px; }
  #panelAdministracion .facadm-kpi b{ font-size:25px; }
  #panelAdministracion .facadm-kpi em{ font-size:12.5px; }
  #panelAdministracion .facadm-section-head h3{ font-size:18px; }
  #panelAdministracion .facadm-section-head p{ font-size:13.5px; }
  #panelAdministracion .facadm-table{ font-size:13.5px; }
  #panelAdministracion .facadm-table th{ font-size:11.5px; }
  #panelAdministracion .facadm-table td{ font-size:13.5px; }
  #panelAdministracion .facadm-client b{ font-size:14px; }
  #panelAdministracion .facadm-client small{ font-size:12px; }
  #panelAdministracion .facadm-badge{ font-size:11.5px; }
  #panelAdministracion .mini-action{ font-size:12px; }

  /* Módulo Eventuales independiente */
  .eventuales-pro-page{ font-size:15px; }
  .evpro-head p,.evpro-section-title p,.evpro-detail-head p,.evpro-export p{ font-size:15px; }
  .evpro-kpi small,.evpro-summary small,.evpro-detail-kpis small{ font-size:12px; }
  .evpro-kpi em{ font-size:13px; }
  .evpro-table th{ font-size:12px; }
  .evpro-table td{ font-size:15px; }
  .evpro-job-main b{ font-size:16px; }
  .evpro-job-main small{ font-size:13px; }
  .evpro-status{ font-size:12.5px; }
}

