*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:#f4f7fa;color:#17324a}a{color:inherit}.app{min-height:100vh;display:grid;grid-template-columns:235px 1fr}.sidebar{background:#083f6b;color:white;padding:18px 12px;position:sticky;top:0;height:100vh;overflow:auto}.brand{display:flex;align-items:center;gap:10px;padding:4px 8px 20px}.brand img{width:46px;height:54px;object-fit:contain;background:white;border-radius:8px}.brand div{display:flex;flex-direction:column}.brand small{font-size:10px;opacity:.8}.nav{display:block;text-decoration:none;padding:10px 12px;border-radius:9px;margin:3px 0;font-size:14px}.nav:hover{background:#ffffff18}.navcap{font-size:10px;opacity:.55;margin:18px 12px 6px}.top{height:70px;background:white;border-bottom:1px solid #dce6ee;display:flex;align-items:center;padding:0 22px;gap:12px;position:sticky;top:0;z-index:5}.top>div:first-of-type{display:flex;flex-direction:column}.top small{color:#74889a}.spacer{flex:1}.menu{display:none;border:0;background:transparent;font-size:22px}.profilechip{display:flex;gap:8px;align-items:center;text-decoration:none}.profilechip img,.profilechip>span{width:38px;height:38px;border-radius:50%;object-fit:cover;background:#dbeaf5;display:grid;place-items:center;font-weight:800}.profilechip div{display:flex;flex-direction:column;font-size:12px}.content{padding:22px;max-width:1500px;margin:0 auto}.welcome{background:linear-gradient(105deg,#0b4b7d,#197bb8);color:white;border-radius:18px;padding:22px 26px;display:flex;align-items:center;margin-bottom:16px;box-shadow:0 6px 18px #083b6520}.welcome h1{margin:0 0 5px}.welcome p{margin:0;opacity:.8}.shift{margin-left:auto;text-align:center;display:flex;flex-direction:column;background:#ffffff16;padding:10px 18px;border-radius:12px}.shift span{font-size:20px;font-weight:800}.card{background:white;border:1px solid #dfe8ef;border-radius:14px;padding:16px;margin-bottom:16px;box-shadow:0 2px 8px #163b5b0b}.sectionhead,.pagehead{display:flex;align-items:center;gap:10px;margin-bottom:14px}.sectionhead h2,.pagehead h1{margin:0}.sectionhead p,.pagehead p{margin:3px 0 0;color:#74889a}.pagehead>div:first-child{flex:1}.pill,.tag{display:inline-block;padding:5px 9px;border-radius:999px;background:#eaf3fb;color:#245d86;font-size:11px;text-decoration:none}.current{padding:11px 13px;background:#eef8ff;border:1px solid #c8e2f3;border-radius:10px;margin-bottom:12px}.current div{margin-top:4px;font-size:13px}.rostergrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.shiftbox{border:1px solid #e0e8ef;border-radius:12px;padding:10px;background:#fbfdff}.shiftbox.active{border:2px solid #1881d2;background:#eef8ff}.shiftbox h3{margin:0}.shiftbox>small{color:#7c8d9b}.staff{display:flex;gap:8px;align-items:center;border-top:1px solid #edf1f4;padding:7px 0}.staff:first-of-type{margin-top:6px}.staff img,.avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;background:#dcebf6;display:grid;place-items:center;font-weight:800;flex:none}.staff div{display:flex;min-width:0;flex-direction:column}.staff b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff small{font-size:10px;color:#788b9b}.staff em{font-size:9px;color:#a06c0b}.alerts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.alert{text-decoration:none;border-radius:13px;padding:14px;display:flex;align-items:center;gap:12px}.alert>span{font-size:28px}.alert>div{display:flex;flex:1;flex-direction:column}.alert strong{font-size:25px}.alert.task{background:#fff3d3;color:#76540b;border:1px solid #efd28a}.alert.order{background:#eaf5ff;color:#174f78;border:1px solid #b9d9f0}.modules{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.module{background:white;border:1px solid #dfe8ef;border-radius:13px;padding:16px;display:flex;align-items:center;gap:12px;text-decoration:none;min-height:90px}.module:hover{transform:translateY(-1px);box-shadow:0 5px 15px #123a5d12}.module>span{font-size:28px}.module div{display:flex;flex-direction:column}.module small{color:#778a9a;margin-top:4px}.twocol,.metagrid,.profilegrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.listrow,.orderrow,.taskrow{padding:11px 0;border-bottom:1px solid #edf1f4;display:flex;gap:10px;justify-content:space-between}.listrow div,.taskrow>div:nth-child(2){display:flex;flex-direction:column}.listrow small,.taskrow small{color:#778a9a;margin-top:3px}.btn{display:inline-block;border:1px solid #cfdae3;background:#fff;padding:9px 12px;border-radius:9px;text-decoration:none;cursor:pointer;color:#1d435f;font-weight:650}.btn.primary{background:#1478c9;color:#fff;border-color:#1478c9}.btn.danger{background:#fff0f0;color:#a42b34;border-color:#efc3c7}.btn.small{padding:6px 8px;font-size:11px}.btn.wide{width:100%}.actions,.rowactions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.rowactions form{display:inline}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:10px;border-bottom:1px solid #e8eef3;text-align:left;font-size:13px;vertical-align:top}th{font-size:11px;color:#668094;text-transform:uppercase}.click{cursor:pointer}.click:hover{background:#f6faff}td small{display:block;color:#80909d;margin-top:3px}.ok,.bad{font-size:11px;font-weight:800;padding:3px 7px;border-radius:999px}.ok{background:#e9f6ee;color:#257147}.bad{background:#ffe9eb;color:#a62834}.msg{padding:10px 12px;border-radius:10px;margin-bottom:10px;background:#eaf4ff}.msg.error{background:#ffecee;color:#9a2832}.msg.success{background:#eaf7ee;color:#2f6d49}.formcard{max-width:760px}.wideform{max-width:1050px}.formcard p{display:grid;gap:5px}.formcard input,.formcard select,.formcard textarea,.search{width:100%;padding:10px;border:1px solid #cfdbe5;border-radius:8px;font:inherit}.formcard input[type=checkbox]{width:auto}.formcard ul{list-style:none;padding:0}.formcard label{font-weight:650;font-size:13px}.warning{background:#fff2cf;padding:10px;border-radius:8px;color:#76540b}.photo{text-align:center;display:flex;flex-direction:column;align-items:center}.photo img,.bigavatar{width:150px;height:150px;border-radius:50%;object-fit:cover;background:#dcebf6;display:grid;place-items:center;font-size:50px;margin-bottom:12px}.plan{max-width:100%;border-radius:10px}.opsec h2{font-size:17px}.priority{font-size:20px}.priority.alta{color:#c92e3b}.priority.media{color:#dc8d00}.priority.baja{color:#3c8d64}.taskrow.done{opacity:.55}.orderrow.unread{border-left:4px solid #d63c4a;padding-left:10px}.repogrid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px}.repocard{border:1px solid #e0e8ef;border-radius:10px;padding:11px;text-decoration:none;display:flex;flex-direction:column}.repocard small{color:#778a9a;margin-bottom:4px}.muted{color:#7c8d9b}.login{min-height:100vh;background:linear-gradient(135deg,#083e6b,#0c6198);display:grid;place-items:center;padding:20px}.login-card{width:min(420px,100%);background:white;padding:32px;border-radius:20px;text-align:center;box-shadow:0 18px 45px #0004}.login-logo{height:160px;width:auto;max-width:85%;object-fit:contain}.login h1{margin:8px 0 0}.login h2{font-size:17px;margin:3px 0}.login p,.login small{color:#7d8d9b}.login form{text-align:left}.login form p{display:grid;gap:4px}.login input{padding:11px;border:1px solid #cddae4;border-radius:9px;font-size:16px}.demo{background:#edf6fd;padding:9px;border-radius:9px;font-size:12px;margin:15px 0}.menu-open .sidebar{display:block}
@media(max-width:1050px){.rostergrid{grid-template-columns:repeat(2,1fr)}.modules{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.app{display:block}.sidebar{display:none;position:fixed;z-index:20;width:250px;left:0;top:0}.menu{display:block}.top{padding:0 12px}.top>div:nth-of-type(1){display:none}.profilechip div{display:none}.content{padding:12px}.welcome{padding:16px;align-items:flex-start}.welcome h1{font-size:22px}.shift{padding:8px 10px}.rostergrid,.alerts,.modules,.twocol,.metagrid,.profilegrid,.repogrid{grid-template-columns:1fr}.pagehead{align-items:flex-start;flex-wrap:wrap}.pagehead .btn{margin-left:0}.tablewrap{padding:8px}.login-card{padding:24px}}

/* v2.0 Alpha 4 · menú completo recuperado */
.nav{position:relative;display:flex;align-items:center;gap:5px}.navbadge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#e3f2ff;color:#0b4f7c;display:inline-grid;place-items:center;font-size:10px;font-weight:900}.navbadge.red{background:#ffe4e7;color:#9e2733}.navversion{font-size:10px;opacity:.45;padding:18px 12px 6px}.topalerts{display:flex;gap:6px}.topalerts a{text-decoration:none;background:#edf5fb;padding:6px 9px;border-radius:9px;font-size:12px;font-weight:800}.submodules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.submodule{display:flex;gap:12px;margin-bottom:0;min-height:135px}.submodule h3{margin:0 0 6px}.submodule p{margin:0 0 10px;color:#738799;font-size:13px;line-height:1.35}.subicon{font-size:26px}.devtag{display:inline-block;font-size:10px;font-weight:800;border-radius:999px;background:#fff1cf;color:#83600b;padding:4px 7px}.devtag.restricted{background:#f0e9f8;color:#71489a}.migration-note{background:#f3f9fd}.migration-note p{margin-bottom:0;color:#637d91}.protocol-columns{display:grid;grid-template-columns:1.4fr .8fr;gap:14px}.protocolrow{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #edf1f4;text-decoration:none}.protocolrow>span{font-size:22px}.protocolrow div{display:flex;flex-direction:column}.protocolrow small{color:#788b99;margin-top:2px}.module.compact{min-height:78px}.searchbar{display:flex;gap:8px}.searchbar .search{flex:1}.searchsummary{margin:16px 0 8px;color:#60788a}.searchresult{display:flex;gap:12px;text-decoration:none;border-top:1px solid #edf1f4;padding:12px 2px}.searchresult>span{font-size:25px}.searchresult div{display:flex;flex-direction:column}.searchresult small{color:#6b8497;text-transform:uppercase;font-size:9px;font-weight:800}.searchresult p{margin:3px 0 0;color:#718696;font-size:12px}
@media(max-width:1050px){.submodules{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.submodules,.protocol-columns{grid-template-columns:1fr}.topalerts{display:none}.searchbar{flex-direction:column}}


/* v2.0 Alpha 5 · campana, servicio emergente y calendario */
.notification-wrap{position:relative;display:flex;align-items:center}
.notification-bell{position:relative;width:42px;height:42px;border:0;border-radius:50%;background:#edf5fb;display:grid;place-items:center;cursor:pointer;transition:.18s ease}
.notification-bell:hover{background:#dcecf8;transform:translateY(-1px)}
.notification-bell .bell-icon{font-size:20px;line-height:1}
.notification-bell.has-alerts{background:#fff4d9;box-shadow:0 0 0 1px #f2d99b inset}
.notification-bell.has-alerts .bell-icon{animation:bellRing 3.2s ease-in-out infinite;transform-origin:50% 10%}
.bell-count{position:absolute;right:-3px;top:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#d73543;color:#fff;border:2px solid #fff;display:grid;place-items:center;font-size:10px;font-weight:900}
@keyframes bellRing{0%,83%,100%{transform:rotate(0)}86%{transform:rotate(13deg)}89%{transform:rotate(-11deg)}92%{transform:rotate(8deg)}95%{transform:rotate(-5deg)}}
.notification-popover{position:absolute;right:0;top:50px;width:310px;background:#fff;border:1px solid #dbe5ed;border-radius:13px;box-shadow:0 14px 35px #123b5d26;padding:8px;display:none;z-index:40}
.notification-popover.open{display:block}
.notification-title{font-size:12px;font-weight:850;color:#446479;padding:7px 9px;border-bottom:1px solid #edf1f4}
.notification-item{display:flex;gap:10px;align-items:center;text-decoration:none;padding:10px;border-radius:9px}
.notification-item:hover{background:#f3f8fc}.notification-item>span{font-size:21px}.notification-item div{display:flex;flex-direction:column}.notification-item b{font-size:12px}.notification-item small{font-size:10px;color:#7c8d9b;margin-top:2px}
.notification-empty{font-size:12px;color:#7c8d9b;padding:12px}

.service-today-trigger{width:100%;border:1px solid #c8dfef;background:linear-gradient(90deg,#f5fbff,#edf7fe);border-radius:13px;padding:13px 15px;margin-bottom:16px;display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer;color:#204b68;box-shadow:0 2px 8px #163b5b0b}
.service-today-trigger:hover{border-color:#98c8e8;background:#edf8ff}
.service-trigger-icon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#dceefd;font-size:21px}
.service-trigger-text{display:flex;flex-direction:column;flex:1}.service-trigger-text b{font-size:14px}.service-trigger-text small{font-size:11px;color:#718899;margin-top:2px}
.service-trigger-arrow{font-size:29px;color:#6d99b6;font-weight:300}

.service-modal-backdrop{position:fixed;inset:0;background:#092f4b99;z-index:100;display:none;align-items:center;justify-content:center;padding:18px}
.service-modal-backdrop.open{display:flex}
.service-modal{width:min(1080px,100%);max-height:92vh;overflow:auto;background:#f7f9fb;border-radius:18px;box-shadow:0 24px 60px #001a2f55;padding:18px}
.service-modal-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.service-modal-head>div{flex:1}.service-modal-head h2{margin:0}.service-modal-head p{margin:3px 0 0;color:#74889a}
.modal-close{width:37px;height:37px;border:0;border-radius:50%;background:#e8eef3;font-size:25px;line-height:1;cursor:pointer;color:#536b7d}.modal-close:hover{background:#dbe5ed}
.service-calendar{display:flex;align-items:end;gap:8px;flex-wrap:wrap;background:#fff;border:1px solid #dfe8ef;border-radius:12px;padding:11px;margin-bottom:12px}
.service-calendar label{font-size:12px;font-weight:800;color:#446479;display:flex;flex-direction:column;gap:4px}
.service-calendar input{padding:9px 10px;border:1px solid #cad8e2;border-radius:8px;font:inherit;background:#fff}
.service-summary{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #dfe8ef;border-radius:12px;padding:10px 12px;margin-bottom:10px}.service-summary div{display:flex;flex-direction:column}.service-summary small{color:#74889a;margin-top:2px}
.service-loading{padding:10px 12px;background:#eaf5ff;color:#245d86;border-radius:9px;margin-bottom:10px}
.service-staff-list>.staff:first-child{margin-top:6px}.service-empty{display:block;color:#8b9aa6;font-size:11px;padding:10px 0}.modal-open{overflow:hidden}.hidden{display:none!important}

@media(max-width:760px){
 .notification-popover{position:fixed;right:10px;left:10px;top:66px;width:auto}
 .notification-bell{width:39px;height:39px}
 .service-modal-backdrop{padding:7px;align-items:flex-end}
 .service-modal{border-radius:17px 17px 0 0;max-height:94vh;padding:13px}
 .service-calendar{align-items:stretch}
 .service-calendar label{width:100%}
 .service-calendar input{width:100%}
 .service-calendar .btn{flex:1;text-align:center}
}


/* v2.0 Alpha 9 · estabilización visual */

/* Campana: contenido concreto, sin alterar la cabecera */
.notification-popover{
  width:380px;
  max-height:min(72vh,580px);
  overflow:auto;
  padding:7px;
}
.notification-section-title{
  padding:7px 9px 6px;
  color:#536d80;
  font-size:10px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.notification-section-title.with-separator{
  border-top:1px solid #e8eef3;
  margin-top:5px;
  padding-top:11px;
}
.notification-detail{
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 9px;
  border-radius:10px;
  text-decoration:none;
  color:inherit;
  border:1px solid transparent;
}
.notification-detail:hover{
  background:#f3f8fc;
  border-color:#dceaf4;
}
.notification-detail-body{
  min-width:0;
  flex:1;
  display:flex;
  flex-direction:column;
}
.notification-detail-body b{
  font-size:12px;
  line-height:1.3;
  white-space:normal;
}
.notification-detail-body small{
  color:#778b9a;
  font-size:10px;
  margin-top:3px;
  line-height:1.3;
}
.notification-chevron{
  color:#7d9aac;
  font-size:22px;
  font-weight:300;
}
.notification-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  flex:none;
  background:#d59a20;
  box-shadow:0 0 0 4px #d59a2018;
}
.notification-dot.priority-alta{
  background:#d94451;
  box-shadow:0 0 0 4px #d9445118;
}
.notification-dot.priority-baja{
  background:#3d9a69;
  box-shadow:0 0 0 4px #3d9a6918;
}
.notification-order-icon{
  width:25px;
  height:25px;
  border-radius:7px;
  display:grid;
  place-items:center;
  background:#eaf4ff;
  flex:none;
  font-size:13px;
}
.notification-more{
  display:block;
  text-align:center;
  text-decoration:none;
  color:#1b6ea8;
  font-weight:800;
  font-size:11px;
  padding:8px;
  border-radius:8px;
}
.notification-more:hover{background:#edf6fd}

.taskrow:target{
  background:#fff8df;
  border-radius:10px;
  box-shadow:0 0 0 2px #f0ce6a inset;
  padding-left:8px;
  padding-right:8px;
  scroll-margin-top:90px;
}

/* Alpha 10:
   - El menú lateral móvil vuelve a lista.
   - Solo el menú principal de módulos de Inicio pasa a 2 columnas. */
@media(max-width:760px){
  .notification-popover{
    position:fixed;
    right:8px;
    left:8px;
    top:64px;
    width:auto;
    max-height:72vh;
  }

  /* Menú lateral/hamburguesa: lista vertical, como antes */
  .sidebar{
    width:285px;
    max-width:86vw;
    padding:18px 14px;
    overflow-y:auto;
  }
  .sidebar nav{
    display:block;
  }
  .sidebar .navcap,
  .sidebar .navversion{
    display:block;
    width:auto;
  }
  .sidebar .nav{
    min-height:auto;
    margin:2px 0;
    padding:10px 12px;
    border:0;
    border-radius:9px;
    background:transparent;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    text-align:left;
    line-height:1.2;
    font-size:13px;
    white-space:normal;
  }
  .sidebar .nav:hover{
    background:#ffffff14;
  }
  .sidebar .navbadge{
    position:static;
    margin-left:auto;
  }

  /* Menú principal de Inicio: tarjetas en 2 columnas */
  .modulegrid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:9px !important;
  }
  .modulecard{
    min-height:104px;
    padding:12px 9px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    gap:7px !important;
  }
  .modulecard .moduleicon,
  .modulecard .icon{
    font-size:27px !important;
    line-height:1 !important;
    margin:0 !important;
  }
  .modulecard h3,
  .modulecard .moduletitle{
    font-size:11px !important;
    line-height:1.15 !important;
    margin:0 !important;
  }
  .modulecard p,
  .modulecard .muted,
  .modulecard .small{
    display:none !important;
  }
}

@media(max-width:760px){
  .modules-grid,
  .module-grid,
  .home-modules,
  .dashboard-modules{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:9px !important;
  }
  .modules-grid > a,
  .module-grid > a,
  .home-modules > a,
  .dashboard-modules > a,
  .modules-grid > .card,
  .module-grid > .card{
    min-height:100px;
  }
}


/* v2.0 Alpha 11 · menú principal móvil correcto + Agente simplificado */
@media(max-width:760px){

  /* Menú lateral: SIEMPRE lista vertical */
  .sidebar{
    width:250px !important;
    max-width:86vw !important;
    padding:18px 12px !important;
  }
  .sidebar nav{
    display:block !important;
  }
  .sidebar .navcap,
  .sidebar .navversion{
    display:block !important;
    width:auto !important;
  }
  .sidebar .nav{
    min-height:auto !important;
    margin:3px 0 !important;
    padding:10px 12px !important;
    border:0 !important;
    border-radius:9px !important;
    background:transparent !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-start !important;
    text-align:left !important;
    gap:5px !important;
    font-size:14px !important;
  }
  .sidebar .nav:hover{
    background:#ffffff18 !important;
  }
  .sidebar .navbadge{
    position:static !important;
    margin-left:auto !important;
  }

  /* ESTE es el menú principal real del Inicio */
  .modules{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:9px !important;
  }
  .module{
    min-height:105px !important;
    padding:12px 8px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    align-items:center !important;
    gap:7px !important;
    text-align:center !important;
  }
  .module>span{
    font-size:28px !important;
    line-height:1 !important;
  }
  .module>div{
    align-items:center !important;
  }
  .module b{
    font-size:11px !important;
    line-height:1.15 !important;
  }
  .module small{
    display:none !important;
  }

  /* Perfil AGENTE:
     las tareas se presentan exclusivamente mediante la campana cuando existan. */
  .agent-mobile-task,
  .agent-mobile-task-panel,
  .agent-mobile-notification-panels{
    display:none !important;
  }
}

/* En escritorio estas piezas siguen visibles y no cambia el diseño */
@media(min-width:761px){
  .agent-mobile-task,
  .agent-mobile-task-panel,
  .agent-mobile-notification-panels{
    display:flex;
  }
}


/* v2.0 Alpha 12 · cabecera mejorada + modal servicio más cómodo */
.welcome{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(105deg, rgba(8,52,86,.88), rgba(14,95,144,.72)),
    url('/static/img/header_cangas_bridge.jpg') center/cover no-repeat;
  color:white;
  border-radius:22px;
  padding:26px 28px;
  display:flex;
  align-items:stretch;
  gap:18px;
  margin-bottom:16px;
  box-shadow:0 10px 28px rgba(8,59,101,.18);
}
.welcome::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(0,0,0,.08), rgba(255,255,255,.03));
  pointer-events:none;
}
.welcome-copy,.weather-box{position:relative;z-index:1}
.welcome-copy{display:flex;flex-direction:column;justify-content:center;min-width:0}
.welcome-kicker{
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  opacity:.86;
  margin-bottom:8px;
}
.welcome h1{margin:0 0 6px;font-size:52px;line-height:1.02;text-shadow:0 2px 10px rgba(0,0,0,.18)}
.welcome p{margin:0;color:rgba(255,255,255,.93);font-size:19px;max-width:560px;text-shadow:0 1px 6px rgba(0,0,0,.18)}
.welcome-turn-pill{
  margin-top:14px;
  display:inline-flex;
  align-self:flex-start;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(4px);
  font-weight:700;
  font-size:13px;
}
.weather-box{
  margin-left:auto;
  min-width:290px;
  max-width:320px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:6px;
  padding:18px 20px;
  border-radius:20px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(6px);
  text-align:center;
}
.weather-box b{font-size:12px;letter-spacing:.04em}
.weather-box span{font-size:30px;font-weight:800;line-height:1.1}
.weather-box small{font-size:15px;color:rgba(255,255,255,.94)}
.weather-box em{font-style:normal;font-size:12px;color:rgba(255,255,255,.86)}

@media(max-width:1100px){
  .welcome h1{font-size:42px}
  .weather-box{min-width:250px}
}

@media(max-width:760px){
  .welcome{
    padding:18px 16px;
    border-radius:20px;
    flex-direction:column;
    gap:14px;
  }
  .welcome h1{font-size:28px}
  .welcome p{font-size:16px}
  .welcome-turn-pill{font-size:12px;margin-top:12px}
  .weather-box{
    margin-left:0;
    min-width:0;
    max-width:none;
    width:100%;
    padding:15px 16px;
    border-radius:18px;
  }
  .weather-box span{font-size:24px}
  .weather-box small{font-size:13px}

  .service-modal-backdrop{
    align-items:flex-start !important;
    padding:82px 8px 8px !important;
  }
  .service-modal{
    width:100%;
    max-height:calc(100vh - 90px) !important;
    border-radius:20px !important;
    padding:14px 14px 18px !important;
  }
  .service-modal-head{
    position:sticky;
    top:-14px;
    z-index:4;
    background:#f7f9fb;
    margin:-14px -14px 12px;
    padding:14px 14px 10px;
    border-radius:20px 20px 0 0;
    box-shadow:0 1px 0 #e5edf4;
    align-items:center;
  }
  .service-modal-head h2{font-size:20px}
  .service-modal-head p{font-size:13px;max-width:240px}
  .modal-close{
    width:48px;
    height:48px;
    font-size:34px;
    color:#3b5568;
    background:#e1e8ef;
    box-shadow:0 3px 10px rgba(26,57,83,.14);
    flex:none;
  }
}

/* v2.0 Alpha 14 · cabecera compacta SOLO móvil
   Escritorio (>760 px) conserva exactamente la maquetación de Alpha 13. */
@media(max-width:760px){
  /* Aprovechar mejor la altura útil del teléfono */
  .top{
    height:58px;
    padding:0 10px;
    gap:9px;
  }
  .menu{
    font-size:20px;
    padding:5px 3px;
  }
  .notification-bell{
    width:36px;
    height:36px;
  }
  .profilechip img,
  .profilechip>span{
    width:34px;
    height:34px;
  }
  .content{
    padding:10px 11px 12px;
  }

  /* Banner de Inicio: misma información, mucha menos altura */
  .welcome{
    padding:12px 14px;
    border-radius:17px;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    margin-bottom:10px;
  }
  .welcome-kicker{
    font-size:9px;
    letter-spacing:.07em;
    margin-bottom:3px;
  }
  .welcome h1{
    font-size:24px;
    line-height:1.02;
    margin:0 0 3px;
  }
  .welcome p{
    font-size:13px;
    line-height:1.2;
  }
  .welcome-turn-pill{
    margin-top:7px;
    padding:6px 10px;
    font-size:11px;
    line-height:1.15;
  }

  /* Meteo en dos líneas en lugar del bloque alto de escritorio */
  .weather-box{
    margin:0;
    min-width:0;
    max-width:none;
    width:100%;
    padding:8px 10px;
    border-radius:13px;
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    align-items:center;
    column-gap:9px;
    row-gap:2px;
    text-align:left;
  }
  .weather-box b{
    display:none;
  }
  .weather-box span{
    font-size:17px;
    line-height:1.1;
    white-space:nowrap;
  }
  .weather-box small{
    font-size:10.5px;
    line-height:1.2;
    text-align:right;
  }
  .weather-box em{
    grid-column:1 / -1;
    font-size:9.5px;
    line-height:1.15;
    text-align:center;
  }

  /* El acceso al servicio queda más cerca del banner */
  .service-today-trigger{
    margin-bottom:11px;
    padding:10px 12px;
  }
  .service-trigger-icon{
    width:36px;
    height:36px;
    font-size:19px;
  }
  .service-trigger-text b{font-size:13px}
  .service-trigger-text small{font-size:10px}
  .service-trigger-arrow{font-size:25px}
}

/* v2.0 Alpha 15 · integración de libros, hojas editables y alertas */
.notification-enable{display:block;width:100%;border:0;border-top:1px solid #e7eef3;background:#f7fbfe;color:#1f638f;font-weight:800;font-size:11px;padding:10px;cursor:pointer;border-radius:0 0 9px 9px}
.notification-enable:hover{background:#edf7fd}
.page-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.smallbtn{padding:7px 10px;font-size:11px}
.filterbar{display:flex;align-items:end;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid #dfe8ef;border-radius:12px;padding:11px;margin-bottom:14px}.filterbar label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:800;color:#526b7e}.filterbar select,.filterbar input,.data-toolbar input{border:1px solid #cad8e2;border-radius:8px;padding:9px 10px;background:#fff;font:inherit;color:#243f54}
.workbook-card{margin-bottom:14px}.workbook-card .sectionhead{align-items:flex-start}.sheetcards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:10px}.sheetcard{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid #dce7ee;border-radius:11px;text-decoration:none;color:#233f53;background:#fbfdff;min-width:0}.sheetcard:hover{background:#f1f8fd;border-color:#bdd9ea}.sheetcard>span{width:34px;height:34px;border-radius:9px;background:#e6f2fa;display:grid;place-items:center;font-size:18px;flex:none}.sheetcard>div{min-width:0;display:flex;flex-direction:column;flex:1}.sheetcard b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sheetcard small{font-size:10px;color:#738897;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sheetcard i{font-style:normal;font-size:24px;color:#7da1b9}.imported-module{margin-bottom:15px}.imported-module .sectionhead p{margin:2px 0 0}
.sheet-tabs{display:flex;gap:5px;overflow:auto;padding:0 0 9px;margin-bottom:3px}.sheet-tabs a{flex:none;padding:7px 10px;border:1px solid #d9e5ec;border-radius:999px;background:#fff;text-decoration:none;color:#4c697c;font-size:10px;font-weight:800}.sheet-tabs a.active{background:#155e8b;color:#fff;border-color:#155e8b}
.data-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;background:#fff;border:1px solid #dfe8ef;border-radius:11px;padding:9px 10px;margin-bottom:10px}.data-toolbar form{display:flex;gap:7px;align-items:center;flex:1}.data-toolbar input{min-width:220px;flex:1}.edit-state{display:flex;align-items:center;gap:7px}.edit-state small{font-size:10px;color:#7b8f9e}.devtag.ready{background:#e7f6ed;color:#2d7a4b}.history{margin-bottom:10px;padding:9px 12px}.history summary{cursor:pointer;font-size:11px;font-weight:850;color:#45657a}
.sheet-grid-wrap{overflow:auto;max-height:68vh;border:1px solid #cddbe4;border-radius:11px;background:#fff;box-shadow:0 3px 12px #173f5f0b}.sheet-grid{border-collapse:separate;border-spacing:0;min-width:max-content;width:auto;font-size:11px}.sheet-grid th,.sheet-grid td{border-right:1px solid #e1e8ed;border-bottom:1px solid #e1e8ed;padding:6px 7px;min-width:95px;max-width:320px;white-space:pre-wrap;vertical-align:top;background:#fff}.sheet-grid .rownum{position:sticky;left:0;z-index:3;min-width:44px;max-width:44px;text-align:right;background:#edf3f7;color:#6c8393;font-weight:800}.sheet-grid tr:first-child td,.sheet-grid tr:first-child th{border-top:0}.sheet-grid td[contenteditable=true]{cursor:text}.sheet-grid td[contenteditable=true]:focus{outline:2px solid #438fc0;outline-offset:-2px;background:#f4fbff}.sheet-grid td.formula-cell{background:#fbfcfd}.sheet-grid td.formula-cell:after{content:'ƒ';float:right;color:#a5b4bf;font-size:9px}.sheet-grid td.saving-cell{background:#fff8dc}.sheet-grid td.saved-cell{background:#e9f8ee}.pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:9px;font-size:10px;color:#718696}.pagination>div{display:flex;gap:6px}.data-pagehead{margin-bottom:8px}
.alert-list{display:grid;gap:11px}.alert-record{display:flex;gap:13px;align-items:flex-start;border-left:5px solid #8ba4b5}.alert-record.priority-importante{border-left-color:#e2a82f}.alert-record.priority-urgente{border-left-color:#d84450}.alert-record-icon{width:42px;height:42px;border-radius:50%;background:#f2f6f9;display:grid;place-items:center;font-size:22px;flex:none}.alert-record-body{flex:1;min-width:0}.alert-record h2{margin:0;font-size:16px}.alert-record p{font-size:12px;line-height:1.45}.alert-record small{font-size:10px;color:#7a8d9b}

@media(max-width:760px){
 .sheetcards{grid-template-columns:1fr}.workbook-card{padding:11px}.filterbar{align-items:stretch}.filterbar label{flex:1;min-width:130px}.data-toolbar{align-items:stretch}.data-toolbar form{width:100%}.data-toolbar input{min-width:0}.edit-state{width:100%;justify-content:space-between}.sheet-grid-wrap{max-height:66vh}.sheet-grid th,.sheet-grid td{min-width:88px;max-width:220px;padding:6px;font-size:10px}.sheet-grid .rownum{min-width:38px;max-width:38px}.alert-record{padding:12px;gap:9px}.alert-record-icon{width:36px;height:36px;font-size:19px}.alert-record h2{font-size:14px}.page-actions{width:100%}.page-actions .btn{flex:1;text-align:center}
}

/* v2.0 Alpha 16 · visores modernos de registros */
.eyebrow-link{display:inline-block;text-decoration:none;color:#5d7c91;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px}
.eyebrow-link:hover{color:#155e8b}.record-pagehead{margin-bottom:10px}.record-pagehead h1{margin-top:2px}
.record-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:11px}.record-kpis>div{background:#fff;border:1px solid #dce7ee;border-radius:13px;padding:11px 13px;display:flex;flex-direction:column;min-width:0}.record-kpis b{font-size:17px;color:#183f5a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.record-kpis span{font-size:9px;color:#7b8f9e;text-transform:uppercase;letter-spacing:.06em;margin-top:3px;font-weight:800}
.year-switch{display:flex;align-items:center;gap:6px;overflow:auto;margin-bottom:9px;padding:2px 0}.year-switch>span{font-size:10px;color:#748a9a;font-weight:800;flex:none}.year-switch a{flex:none;text-decoration:none;background:#fff;border:1px solid #d9e5ec;color:#4e6d80;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:850}.year-switch a.active{background:#155e8b;color:#fff;border-color:#155e8b}
.record-toolbar{background:#fff;border:1px solid #dce7ee;border-radius:12px;padding:8px 10px;margin-bottom:10px}.record-toolbar form{display:flex;align-items:center;gap:7px}.record-toolbar input{flex:1;min-width:0;border:0;outline:0;font:inherit;color:#25445a;padding:7px;background:transparent}.record-toolbar>form>span{opacity:.65}
.record-list{display:grid;gap:8px}.record-row-card{display:flex;align-items:stretch;gap:11px;background:#fff;border:1px solid #dce7ee;border-radius:14px;padding:11px;text-decoration:none;color:#203f55;box-shadow:0 2px 9px rgba(18,62,91,.035);transition:.12s ease}.record-row-card:hover{border-color:#b8d5e7;box-shadow:0 5px 16px rgba(18,62,91,.08);transform:translateY(-1px)}.record-index{width:40px;min-width:40px;height:40px;border-radius:11px;background:#eaf4fa;color:#1b658f;display:grid;place-items:center;font-size:10px;font-weight:900}.record-index.year{width:48px;min-width:48px}.record-main{flex:1;min-width:0}.record-main h2{font-size:14px;line-height:1.25;margin:0 0 7px;color:#173d57}.record-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 12px}.record-preview div{min-width:0}.record-preview small{display:block;color:#8295a3;font-size:8px;text-transform:uppercase;letter-spacing:.04em;font-weight:800;margin-bottom:2px}.record-preview b{display:block;font-size:10.5px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#456579}.record-chevron{font-size:28px;color:#82a5bb;display:flex;align-items:center;padding-left:2px}.record-source{display:block;margin-top:7px;color:#8a9aa5;font-size:8.5px}.empty-state{background:#fff;border:1px dashed #cbdbe5;border-radius:14px;padding:30px;text-align:center;color:#718796;display:flex;flex-direction:column;gap:4px}.empty-state b{font-size:15px;color:#476579}
.summary-visual{display:grid;gap:8px}.summary-visual h3{margin:8px 0 1px;color:#173f5a;font-size:15px}.summary-line{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:5px;background:#fff;border:1px solid #e0e9ef;border-radius:11px;padding:8px}.summary-line span{font-size:10px;color:#4c697d;padding:4px 6px;background:#f8fbfd;border-radius:7px;min-height:25px}
.viewer-family-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.viewer-family-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px}.viewer-family-card{background:#fff;border:1px solid #dce7ee;border-radius:15px;padding:13px;display:flex;gap:11px;min-width:0;box-shadow:0 2px 10px rgba(18,62,91,.035)}.family-icon{width:42px;height:42px;border-radius:12px;background:linear-gradient(145deg,#e7f3fa,#d8ecf7);display:grid;place-items:center;color:#15628e;font-size:22px;flex:none}.family-body{flex:1;min-width:0}.family-top{display:flex;justify-content:space-between;gap:5px;align-items:center}.module-pill,.year-pill{display:inline-flex;max-width:100%;padding:3px 6px;border-radius:999px;background:#f1f6f9;color:#648094;font-size:8px;text-transform:uppercase;font-weight:900;letter-spacing:.04em}.year-pill{background:#eef7f1;color:#4d7b5d}.family-body h2{font-size:14px;margin:7px 0 3px;color:#193e57;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.family-body p{font-size:9.5px;margin:0 0 9px;color:#7b8e9b}.family-actions{display:flex;gap:6px}.family-actions .btn{padding:6px 9px;font-size:9px}.family-body .stretched{font-size:10px;font-weight:850;text-decoration:none;color:#176894}.viewer-module-section{margin-bottom:15px}.legacy-structure summary{font-size:11px;font-weight:850;cursor:pointer;color:#60798a}.legacy-structure .submodules{margin-top:10px}
.record-form{padding:16px}.record-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.record-field{display:flex;flex-direction:column;gap:5px;min-width:0}.record-field.wide{grid-column:1/-1}.record-field>span{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#617d90;font-weight:900}.record-field textarea,.record-field input{width:100%;box-sizing:border-box;border:1px solid #cddbe4;border-radius:10px;padding:10px 11px;background:#fbfdfe;color:#24465e;font:inherit;font-size:11px;line-height:1.4;resize:vertical}.record-field textarea:focus{outline:2px solid #7db5d7;border-color:#579bc2;background:#fff}.record-field textarea:disabled,.record-field input:disabled{background:#f3f6f8;color:#667e8e}.record-form-actions{display:flex;gap:8px;justify-content:flex-end;border-top:1px solid #e7eef3;padding-top:12px;margin-top:15px}.readonly-note{background:#f3f6f8;color:#6f8595;border-radius:9px;padding:9px 11px;margin-top:13px;font-size:10px}.permission-panel{max-width:760px}.permission-table{border:1px solid #dce7ee;border-radius:12px;overflow:hidden}.permission-head,.permission-table label{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:center;padding:10px 12px}.permission-head{background:#edf5fa;color:#47687d;font-size:9px;text-transform:uppercase;letter-spacing:.05em}.permission-table label{border-top:1px solid #e6edf2}.permission-table label>span{display:flex;flex-direction:column}.permission-table label b{font-size:11px}.permission-table label small{font-size:9px;color:#8295a2;margin-top:2px}.permission-table select{border:1px solid #cddbe4;border-radius:8px;padding:8px;background:#fff;color:#294b62}.permission-explain{font-size:10px;color:#687f90;background:#f6f9fb;padding:10px;border-radius:9px;margin-top:10px}.visual-filter input{border:1px solid #cad8e2;border-radius:8px;padding:9px 10px;background:#fff;font:inherit;color:#243f54;min-width:220px}
@media(max-width:1000px){.viewer-family-grid,.viewer-family-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.record-preview{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.record-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.record-kpis>div{padding:8px 10px}.record-kpis b{font-size:13px}.record-toolbar{padding:6px 8px}.record-toolbar .btn{padding:7px 8px;font-size:9px}.record-row-card{padding:9px;gap:8px;border-radius:12px}.record-index{width:34px;min-width:34px;height:34px;border-radius:9px}.record-main h2{font-size:12px;margin-bottom:5px}.record-preview{grid-template-columns:1fr 1fr;gap:5px 8px}.record-preview b{font-size:9.5px}.record-preview small{font-size:7.5px}.record-chevron{font-size:23px}.viewer-family-grid,.viewer-family-grid.compact{grid-template-columns:1fr}.viewer-family-card{padding:10px}.family-icon{width:36px;height:36px;font-size:18px}.family-body h2{font-size:12px}.record-form{padding:11px}.record-form-grid{grid-template-columns:1fr;gap:9px}.record-field.wide{grid-column:auto}.record-form-actions{justify-content:stretch}.record-form-actions .btn{flex:1;text-align:center}.permission-head,.permission-table label{grid-template-columns:1fr;padding:9px}.permission-head b:last-child{display:none}.visual-filter input{min-width:0}.summary-line{grid-template-columns:1fr 1fr}}

/* v2.0 Alpha 17 · libro de novedades en calendario */
.logbook-head{align-items:center}.logbook-actions{display:flex;gap:7px}.calendar-toolbar{display:flex;align-items:center;justify-content:center;gap:22px;padding:11px 15px;margin-bottom:8px;text-align:center}.calendar-toolbar>div{min-width:190px}.calendar-toolbar b{display:block;font-size:18px;color:#153f5b}.calendar-toolbar small{display:block;font-size:9px;color:#7890a0;margin-top:2px}.month-arrow{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;text-decoration:none;font-size:28px;color:#1a628d;background:#edf6fb}.calendar-legend{display:flex;gap:13px;align-items:center;flex-wrap:wrap;font-size:9px;color:#617a8c;margin:0 3px 8px}.calendar-legend span{display:flex;align-items:center;gap:4px}.legend-dot{width:10px;height:10px;border-radius:3px;background:#cfdbe2}.legend-dot.m{background:#e7a729}.legend-dot.t{background:#2b83bd}.legend-dot.n{background:#5955a7}.month-calendar{padding:0;overflow:hidden;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-radius:14px}.weekday{padding:8px 5px;text-align:center;background:#edf5f9;color:#4e6b7d;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;border-right:1px solid #dce7ed}.weekday.weekend{background:#e7f0f5}.calendar-day{min-height:118px;padding:7px;border-top:1px solid #e1e9ee;border-right:1px solid #e1e9ee;background:#fff;position:relative}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{background:#f7f9fa;color:#adb9c0}.calendar-day.today{box-shadow:inset 0 0 0 2px #2a82b7;background:#fafdff}.calendar-day.day-closed{background:#fbfcfd}.day-number{display:flex;align-items:center;gap:5px;margin-bottom:6px}.day-number>span{font-size:13px;font-weight:900;color:#23475f}.outside .day-number>span{color:#aab6bd}.day-number small{font-size:6.5px;background:#1f7fb7;color:white;border-radius:999px;padding:2px 4px;font-weight:900}.day-number em{font-style:normal;margin-left:auto;font-size:9px}.shift-stack{display:grid;gap:4px}.shift-chip{border:1px solid #d9e4ea;background:#f5f8fa;border-radius:7px;height:24px;padding:0 5px;display:flex;align-items:center;gap:4px;cursor:pointer;color:#78909f;font:inherit;font-size:8px;font-weight:900;transition:.12s}.shift-chip:hover{transform:translateY(-1px);box-shadow:0 2px 6px rgba(20,67,95,.12)}.shift-chip span{width:14px;height:14px;border-radius:4px;display:grid;place-items:center;background:#dfe7ec;color:#607887}.shift-chip b{margin-left:auto;background:#fff;border-radius:999px;min-width:14px;height:14px;display:grid;place-items:center;font-size:7px}.shift-chip i{font-style:normal;font-size:8px}.shift-chip.has-activity{background:#eef5f8;color:#426a80;border-color:#c6dce7}.shift-chip.shift-m.has-novelty{background:#fff4d7;border-color:#efc760;color:#805a05}.shift-chip.shift-m.has-novelty span{background:#e7a729;color:#fff}.shift-chip.shift-t.has-novelty{background:#e7f3fb;border-color:#8bc0df;color:#145b84}.shift-chip.shift-t.has-novelty span{background:#2b83bd;color:#fff}.shift-chip.shift-n.has-novelty{background:#efeffb;border-color:#aaa8db;color:#494582}.shift-chip.shift-n.has-novelty span{background:#5955a7;color:#fff}.shift-chip.closed{border-style:dashed}.month-stats{margin-top:12px}.stat-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-group{border:1px solid #dce7ed;border-radius:12px;padding:10px;background:#fbfdfe}.stat-group h3{font-size:12px;color:#1b4a68;margin:0 0 7px}.stat-line{display:flex;align-items:center;gap:8px;padding:5px 0;border-top:1px solid #eef3f6;font-size:9px;color:#557184}.stat-line:first-of-type{border-top:0}.stat-line span{flex:1}.stat-line b{background:#e9f3f8;color:#175f89;border-radius:999px;min-width:24px;padding:3px 6px;text-align:center}.shift-modal{position:fixed;inset:0;z-index:3000;display:none}.shift-modal.open{display:block}.shift-modal-backdrop{position:absolute;inset:0;background:rgba(9,30,44,.48);backdrop-filter:blur(2px)}.shift-modal-panel{position:absolute;right:0;top:0;bottom:0;width:min(760px,94vw);background:#f4f8fa;box-shadow:-10px 0 30px rgba(10,34,50,.2);overflow:auto}.shift-modal-close{position:sticky;top:8px;float:right;margin:8px 10px 0 0;z-index:5;width:32px;height:32px;border:0;border-radius:50%;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.12);font-size:22px;color:#46677b;cursor:pointer}.shift-modal-body{padding:20px 20px 40px}.modal-loading,.modal-error{padding:30px;text-align:center;color:#607b8d}.modal-error{background:#fff0f0;color:#a23b3b;border-radius:10px}.shift-sheet{max-width:720px;margin:auto}.shift-sheet-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.shift-sheet-head h2{font-size:20px;color:#153e59;margin:7px 0 2px}.shift-sheet-head p{font-size:9px;color:#78909f;margin:0}.shift-tag{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;background:#e9f1f6;color:#496a7e}.shift-tag.shift-m{background:#fff0c7;color:#725007}.shift-tag.shift-t{background:#e4f2fb;color:#155d87}.shift-tag.shift-n{background:#ececf9;color:#4b4784}.shift-export{display:flex;gap:5px;margin-right:38px}.shift-export a{font-size:8px;font-weight:900;text-decoration:none;background:#fff;border:1px solid #d7e3ea;color:#37617b;padding:6px 8px;border-radius:8px}.shift-section{background:#fff;border:1px solid #dce7ed;border-radius:14px;padding:13px;margin-bottom:10px}.shift-section-title{display:flex;align-items:flex-start;gap:9px;margin-bottom:10px}.shift-section-title>span{width:24px;height:24px;min-width:24px;border-radius:8px;background:#e7f2f8;color:#16638e;display:grid;place-items:center;font-size:10px;font-weight:900}.shift-section-title h3{font-size:13px;color:#19425d;margin:1px 0}.shift-section-title p{font-size:8.5px;color:#8497a4;margin:2px 0}.no-service-check{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;background:#f5f7f8;border-radius:8px;font-size:9px;color:#617887;margin-bottom:8px}.staff-select-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.staff-select{border-left:4px solid #2a7db0;background:#f4fafe;border-radius:9px;padding:7px;display:flex;flex-direction:column;gap:4px}.staff-select.auxiliar{border-left-color:#8c68b5;background:#f8f4fb}.staff-select span,.shift-data-grid label>span,.novelty-form label>span{font-size:7.5px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:#607b8c}.staff-select select,.shift-data-grid input,.shift-data-grid select,.shift-data-grid textarea,.novelty-form input,.novelty-form select,.novelty-form textarea{width:100%;box-sizing:border-box;border:1px solid #cddce5;border-radius:8px;padding:8px;background:#fff;color:#24465c;font:inherit;font-size:9.5px}.staff-select select:disabled,.shift-data-grid :disabled{background:#f1f4f6;color:#758997}.shift-data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.shift-data-grid label,.novelty-form label{display:flex;flex-direction:column;gap:4px;min-width:0}.shift-data-grid label.wide,.novelty-form label.wide{grid-column:1/-1}.shift-savebar{display:flex;justify-content:flex-end;margin:4px 0 10px}.novelty-list{display:grid;gap:8px}.novelty-card{border:1px solid #dce6ec;border-radius:11px;padding:10px;background:#fbfdfe}.novelty-card.imported{border-left:4px solid #9baab4}.novelty-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.novelty-category{font-size:7.5px;font-weight:900;color:#17648f;background:#eaf4fa;border-radius:999px;padding:4px 7px}.novelty-top time{font-size:8px;color:#6e8594;font-weight:800}.novelty-card h4{font-size:11px;color:#203f55;margin:8px 0 3px}.novelty-card>small{font-size:8px;color:#708697}.novelty-card>p{font-size:9.5px;line-height:1.45;color:#425f72;margin:7px 0}.novelty-card footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e9eff3;padding-top:6px;margin-top:7px}.novelty-card footer span{font-size:7.5px;color:#7a8d99}.novelty-card footer button{border:0;background:none;color:#17658f;font-size:8px;font-weight:900;cursor:pointer}.empty-novelty{padding:16px;text-align:center;border:1px dashed #d4e0e7;border-radius:10px;color:#8495a0;font-size:9px}.novelty-form{border-top:1px solid #e2ebf0;margin-top:12px;padding-top:12px}.novelty-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.novelty-buttons{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}.form-feedback{font-size:9px;color:#a33b3b;margin-top:6px}.shift-closebar{display:flex;align-items:center;gap:9px;justify-content:flex-end;padding:8px 2px;flex-wrap:wrap}.shift-closebar small{font-size:8px;color:#7c909d}.closed-banner{font-size:9px;font-weight:850;color:#506c7e;background:#e9eff3;border-radius:8px;padding:7px 9px}.btn.danger{background:#a94343;border-color:#a94343;color:#fff}.staff.funcionario{border-left:3px solid #2a7db0;padding-left:7px}.staff.auxiliar{border-left:3px solid #8c68b5;padding-left:7px}.staff.auxiliar .avatar{background:#eee5f6!important;color:#6d4a94!important}
@media(max-width:760px){.logbook-actions .btn{padding:7px 8px;font-size:8px}.calendar-toolbar{padding:8px;gap:10px}.calendar-toolbar>div{min-width:150px}.calendar-toolbar b{font-size:15px}.calendar-legend{gap:8px;font-size:7.5px}.month-calendar{border-radius:10px}.weekday{font-size:6.5px;padding:6px 2px}.calendar-day{min-height:83px;padding:4px 3px}.day-number{margin-bottom:3px}.day-number>span{font-size:10px}.day-number small{display:none}.shift-stack{gap:2px}.shift-chip{height:18px;border-radius:5px;padding:0 2px;font-size:6.5px}.shift-chip span{width:12px;height:12px;border-radius:3px}.shift-chip b{min-width:11px;height:11px;font-size:6px}.shift-chip i{font-size:6px;margin-left:auto}.stat-groups{grid-template-columns:1fr}.shift-modal-panel{width:100vw}.shift-modal-body{padding:14px 10px 30px}.shift-sheet-head h2{font-size:16px}.shift-export{margin-right:34px}.staff-select-grid{grid-template-columns:1fr}.shift-data-grid{grid-template-columns:1fr 1fr}.shift-data-grid label.wide{grid-column:1/-1}.novelty-form-grid{grid-template-columns:1fr 1fr}.novelty-form label.wide{grid-column:1/-1}.shift-section{padding:10px;border-radius:11px}}
.logbook-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:3px 0 12px}.logbook-kpis>div{border:1px solid #e0e9ef;background:#f9fcfd;border-radius:10px;padding:9px;display:flex;flex-direction:column}.logbook-kpis b{font-size:15px;color:#174d6e}.logbook-kpis span{font-size:7.5px;color:#718797;text-transform:uppercase;font-weight:850;margin-top:2px}@media(max-width:760px){.logbook-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* v2.0 Alpha 18 · matriz visual del libro y ticker de comunicados */
.matrix-toolbar{display:flex;align-items:center;justify-content:center;gap:22px;padding:9px 14px;margin-bottom:7px;text-align:center}.matrix-toolbar>div{min-width:190px}.matrix-toolbar b{display:block;font-size:18px;color:#153f5b}.matrix-toolbar small{display:block;font-size:9px;color:#7890a0;margin-top:2px}.matrix-legend{display:flex;gap:13px;align-items:center;flex-wrap:wrap;font-size:9px;color:#617a8c;margin:0 3px 7px}.matrix-legend span{display:flex;align-items:center;gap:4px}.band-dot,.nov-dot{width:11px;height:11px;border-radius:3px;background:#d7e9cf;border:1px solid #aec99f}.band-dot.t{background:#fff0b8;border-color:#dfc96d}.band-dot.n{background:#ffc8cc;border-color:#dc989d}.nov-dot{background:#d84b55;border-color:#b73640}.logbook-matrix-card{padding:0;overflow:hidden}.logbook-matrix-scroll{overflow:auto;max-height:67vh;overscroll-behavior-inline:contain}.logbook-matrix{border-collapse:separate;border-spacing:0;min-width:max-content;width:100%;font-size:10px;background:#fff}.logbook-matrix th,.logbook-matrix td{border-right:1px solid #cbd6dd;border-bottom:1px solid #cbd6dd;height:25px;padding:0;text-align:center;box-sizing:border-box}.logbook-matrix thead th{position:sticky;top:0;z-index:9;background:#f3f7f9;color:#173e57}.matrix-corner{left:0!important;z-index:12!important;min-width:205px;width:205px;text-align:left!important;padding:0 9px!important;font-size:12px!important;text-transform:lowercase}.matrix-day{min-width:38px;width:38px}.matrix-day small{display:block;font-size:7px;line-height:10px;color:#6f8290}.matrix-day b{display:block;font-size:10px;line-height:13px}.matrix-day.saturday{background:#fff7da!important}.matrix-day.sunday{background:#ffe0e1!important;color:#a91f2d!important}.matrix-day.today{box-shadow:inset 0 -3px #187aae}.logbook-matrix tbody th{position:sticky;left:0;z-index:6;min-width:205px;width:205px;text-align:left;padding:0 9px;background:#fff;color:#293e4d;font-size:9px;font-weight:700}.shift-divider th{font-size:10px!important;font-weight:950!important;letter-spacing:.05em}.shift-divider td{text-align:left!important;padding-left:8px!important;font-size:8px;font-weight:900;letter-spacing:.13em}.shift-divider.shift-m th,.shift-divider.shift-m td,.matrix-row.shift-m th{background:#deedcf}.shift-divider.shift-t th,.shift-divider.shift-t td,.matrix-row.shift-t th{background:#fff0b8}.shift-divider.shift-n th,.shift-divider.shift-n td,.matrix-row.shift-n th{background:#ffc7cc}.matrix-cell{min-width:38px;width:38px;position:relative;cursor:pointer;background:#fff;transition:.08s}.matrix-cell:hover{box-shadow:inset 0 0 0 2px #2f86b9;background:#f1faff}.matrix-cell span{display:block;max-width:37px;padding:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:800;color:#345468}.matrix-cell.activity-present{background:#f0f7f1}.matrix-row.shift-t .matrix-cell.activity-present{background:#fffaf0}.matrix-row.shift-n .matrix-cell.activity-present{background:#fff5f6}.matrix-row.shift-m.row-novelties .matrix-cell.novelty-present{background:#61a853!important}.matrix-row.shift-t.row-novelties .matrix-cell.novelty-present{background:#d99b24!important}.matrix-row.shift-n.row-novelties .matrix-cell.novelty-present{background:#d4515c!important}.matrix-row.row-novelties .matrix-cell.novelty-present span{color:#fff;font-size:10px}.matrix-cell.closed i{position:absolute;right:0;top:-1px;font-style:normal;font-size:6px}.matrix-cell.no-service{background:#edf0f2!important}.matrix-help{font-size:8.5px;color:#728896;margin:0;padding:7px 10px;background:#f8fbfd;border-top:1px solid #e0e8ed}.news-ticker-shell{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:0;background:#fff;border:1px solid #d9e5ec;border-radius:12px;overflow:hidden;min-height:42px;margin-top:14px;box-shadow:0 2px 10px rgba(18,62,91,.04)}.news-ticker-label{height:42px;display:flex;align-items:center;padding:0 13px;background:#eaf4fa;color:#164f71;font-size:11px;white-space:nowrap;border-right:1px solid #d9e5ec}.news-ticker-window{overflow:hidden;white-space:nowrap;position:relative}.news-ticker-track{display:inline-flex;width:max-content;animation:newsTicker 42s linear infinite}.news-ticker-window:hover .news-ticker-track{animation-play-state:paused}.news-ticker-track a{display:inline-block;text-decoration:none;color:#37576c;font-size:10px;padding:0 30px 0 12px}.news-ticker-track a strong{color:#153f5b}.news-ticker-track a em{color:#8a9aa5;font-style:normal}.ticker-empty{font-size:10px;color:#7d909e;padding-left:12px}.news-ticker-actions{display:flex;height:42px;border-left:1px solid #d9e5ec}.news-ticker-actions a{display:flex;align-items:center;padding:0 10px;text-decoration:none;color:#17648f;font-size:9px;font-weight:900;border-left:1px solid #edf2f5}.news-ticker-actions a:first-child{border-left:0}@keyframes newsTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}.communication-section{margin-bottom:12px}.communication-card{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 4px;border-top:1px solid #e7eef2;text-decoration:none;color:#36566b}.communication-card:first-of-type{border-top:0}.communication-card.unread{border-left:4px solid #2c82b5;padding-left:10px;background:#fbfdff}.communication-card b{font-size:12px;color:#173e57}.communication-card p{font-size:10px;margin:4px 0;color:#60798a}.communication-card small{font-size:8.5px;color:#8999a4}.communication-card>span{font-size:10px;font-weight:900;color:#2374a3}.communication-detail{font-size:12px;line-height:1.6;max-width:900px}.read-note{margin-top:18px;padding-top:10px;border-top:1px solid #e2eaef;color:#678091;font-size:9px}.service-staff-list .staff.funcionario{background:#eef7fd;border-left-color:#2a7db0}.service-staff-list .staff.auxiliar{background:#f7f1fb;border-left-color:#8c68b5}.staff-rank{width:19px;height:19px;border-radius:50%;display:grid;place-items:center;background:#2a7db0;color:#fff;font-size:8px;font-weight:950;flex:none}.staff.auxiliar .staff-rank{display:none}
@media(max-width:760px){.matrix-toolbar{padding:7px 8px}.matrix-toolbar>div{min-width:135px}.matrix-toolbar b{font-size:14px}.matrix-legend{font-size:7px;gap:7px}.logbook-matrix-scroll{max-height:63vh}.matrix-corner,.logbook-matrix tbody th{min-width:150px;width:150px}.matrix-day,.matrix-cell{min-width:34px;width:34px}.matrix-cell span{max-width:33px;font-size:7px}.logbook-matrix tbody th{font-size:7.5px;padding-left:6px}.news-ticker-shell{grid-template-columns:auto 1fr;min-height:38px}.news-ticker-label{height:38px;padding:0 8px;font-size:9px}.news-ticker-actions{grid-column:1/-1;height:30px;border-left:0;border-top:1px solid #e4ebef;justify-content:flex-end}.news-ticker-actions a{font-size:8px}.news-ticker-track a{font-size:9px}.communication-card p{display:none}}

/* v2.0 Alpha 19 · navegación simplificada, comunicados enriquecidos y Jefatura */
.navgroup{margin:3px 0;border-radius:10px;overflow:hidden}.navgroup>summary{list-style:none;cursor:pointer;padding:10px 12px;border-radius:9px;font-size:14px;display:flex;align-items:center;gap:7px;user-select:none}.navgroup>summary::-webkit-details-marker{display:none}.navgroup>summary:hover,.navgroup[open]>summary{background:#ffffff18}.navgroup>summary>span{margin-left:auto;font-size:11px;opacity:.7;transition:.15s}.navgroup[open]>summary>span{transform:rotate(180deg)}.navchildren{padding:2px 0 5px 13px;border-left:1px solid #ffffff22;margin-left:16px}.navchildren .nav{font-size:12px;padding:8px 10px;margin:2px 0}.navgroup-headquarters{background:#ffffff08}
.dashboard-alert-grid{align-items:stretch}.communication-alert{background:#e8f6ff;color:#104d73;border:1px solid #acd7ee;overflow:hidden;min-width:0}.communication-alert>span{font-size:30px}.communication-alert-copy{min-width:0}.communication-alert-copy>b{font-size:17px;line-height:1.15}.dashboard-news-window{overflow:hidden;white-space:nowrap;margin-top:5px;min-width:0;position:relative}.dashboard-news-track{display:inline-flex;width:max-content;animation:dashboardNews 36s linear infinite}.dashboard-news-window:hover .dashboard-news-track{animation-play-state:paused}.dashboard-news-track>span{font-size:11px;padding-right:38px;color:#355d76}.dashboard-news-track>span strong{color:#0c4568}.operative-alert{background:#edf8ef;color:#295f3c;border:1px solid #bcdcc4}.operative-alert>span{font-size:29px}.operative-alert small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}@keyframes dashboardNews{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.headquarters-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.headquarters-module{border-color:#b8d7ea;background:#f6fbff}.stats-filter{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,260px) auto;gap:8px;align-items:center}.stats-filter select{padding:10px;border:1px solid #cfdbe5;border-radius:8px;background:#fff;color:#17324a}.important-flag{display:inline-block;padding:2px 6px;border-radius:999px;background:#ffe4e7;color:#a22531;font-size:8px;font-weight:900;letter-spacing:.04em;vertical-align:middle}.communication-image{display:block;max-width:min(760px,100%);max-height:520px;object-fit:contain;border-radius:12px;margin:0 0 16px;border:1px solid #dfe8ef;background:#f7fafc}.communication-body{font-size:14px;line-height:1.65}.communication-links{margin-top:18px;padding-top:12px;border-top:1px solid #e1e9ee;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.communication-links h3{width:100%;margin:0 0 4px;font-size:14px}.service-roster-page{max-width:1250px}.roster-legend{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:13px 0 0;color:#718697;font-size:11px}.legend-functionary,.legend-auxiliary{display:inline-flex;padding:5px 9px;border-radius:999px;font-weight:800}.legend-functionary{background:#e5f3fc;color:#246e9a}.legend-auxiliary{background:#f2eafb;color:#754b9c}
@media(max-width:1050px){.headquarters-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.headquarters-grid{grid-template-columns:1fr}.stats-filter{grid-template-columns:1fr}.communication-alert-copy>b{font-size:14px}.dashboard-news-track>span{font-size:10px}.dashboard-alert-grid{grid-template-columns:1fr}.navchildren .nav{font-size:13px}.communication-image{max-height:340px}}
.communication-alert-title{font-size:17px;line-height:1.15;font-weight:800;text-decoration:none;color:#104d73}.communication-alert-count{font-size:25px;font-weight:900;text-decoration:none;color:#104d73}.dashboard-news-track>a{display:inline-block;text-decoration:none;font-size:11px;padding-right:38px;color:#355d76}.dashboard-news-track>a strong{color:#0c4568}.dashboard-news-track>a:hover{text-decoration:underline}
@media(max-width:760px){.communication-alert-title{font-size:14px}.dashboard-news-track>a{font-size:10px}}

/* v2.0 Alpha 21 · corrección real de portada responsive.
   Corrige reglas antiguas !important, mantiene escritorio y compacta el móvil. */

/* Teletipo: siempre horizontal. La regla histórica .alert div ya no afecta a sus hijos. */
.communication-alert .dashboard-news-window{min-width:0;overflow:hidden;white-space:nowrap}
.communication-alert .dashboard-news-track{
  display:inline-flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  width:max-content;
  max-width:none;
}
.communication-alert .dashboard-news-track>a{
  display:inline-block !important;
  flex:0 0 auto !important;
  white-space:nowrap !important;
}

@media(max-width:760px){
  html,body{overflow-x:hidden}
  .content{padding:6px 7px 8px !important;max-width:100%;overflow-x:hidden}
  .dashboard-home{width:100%;max-width:100%;overflow:hidden}

  /* Cabecera de la app */
  .top{height:46px !important;padding:0 8px !important;gap:6px !important}
  .menu{font-size:18px !important;padding:2px !important}
  .notification-bell{width:31px !important;height:31px !important}
  .profilechip img,.profilechip>span{width:31px !important;height:31px !important}

  /* Banner: compacto pero legible */
  .dashboard-home .welcome{
    padding:7px 9px !important;
    border-radius:13px !important;
    gap:4px !important;
    margin-bottom:6px !important;
    min-height:0 !important;
  }
  .dashboard-home .welcome-kicker{font-size:7px !important;line-height:1 !important;margin-bottom:1px !important}
  .dashboard-home .welcome h1{font-size:18px !important;line-height:1 !important;margin:0 0 2px !important}
  .dashboard-home .welcome p{font-size:9.5px !important;line-height:1.05 !important;margin:0 !important}
  .dashboard-home .welcome-turn-pill{margin-top:3px !important;padding:3px 6px !important;font-size:8.5px !important;line-height:1 !important}
  .dashboard-home .weather-box{
    padding:4px 6px !important;
    border-radius:9px !important;
    gap:1px 5px !important;
    grid-template-columns:auto minmax(0,1fr) !important;
    min-height:0 !important;
  }
  .dashboard-home .weather-box b{display:none !important}
  .dashboard-home .weather-box span{font-size:11px !important;line-height:1 !important;white-space:nowrap}
  .dashboard-home .weather-box small{font-size:7.5px !important;line-height:1 !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .dashboard-home .weather-box em{font-size:6.8px !important;line-height:1 !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

  /* Servicio de hoy */
  .dashboard-home .service-today-trigger{
    width:100% !important;max-width:100% !important;
    margin-bottom:6px !important;
    padding:5px 7px !important;
    min-height:38px !important;
    border-radius:9px !important;
    gap:6px !important;
  }
  .dashboard-home .service-trigger-icon{width:26px !important;height:26px !important;font-size:14px !important}
  .dashboard-home .service-trigger-text b{font-size:10px !important;line-height:1 !important}
  .dashboard-home .service-trigger-text small{font-size:6.8px !important;line-height:1 !important;margin-top:2px !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .dashboard-home .service-trigger-arrow{font-size:17px !important}

  /* Cuatro avisos sin huecos: tareas + órdenes en la primera fila. */
  .dashboard-home .dashboard-alert-grid{
    width:100% !important;max-width:100% !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:4px !important;
    margin-bottom:6px !important;
  }
  .dashboard-home .alert{
    min-width:0 !important;
    min-height:42px !important;
    padding:5px 6px !important;
    border-radius:9px !important;
    gap:5px !important;
    overflow:hidden !important;
  }
  .dashboard-home .alert.task{order:1}
  .dashboard-home .alert.order{order:2}
  .dashboard-home .communication-alert{order:3;grid-column:1/-1 !important;min-height:46px !important}
  .dashboard-home .operative-alert{order:4;grid-column:1/-1 !important;min-height:40px !important}
  .dashboard-home .alert>span{font-size:17px !important;flex:none !important}
  .dashboard-home .alert>div{min-width:0 !important}
  .dashboard-home .alert b{font-size:9px !important;line-height:1 !important}
  .dashboard-home .alert small{font-size:6.7px !important;line-height:1 !important;margin-top:1px !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .dashboard-home .alert strong{font-size:15px !important;line-height:1 !important;flex:none !important}
  .dashboard-home .communication-alert-title{
    display:block !important;
    font-size:10px !important;
    line-height:1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  .dashboard-home .communication-alert-count{font-size:15px !important;line-height:1 !important}
  .dashboard-home .dashboard-news-window{height:14px !important;line-height:14px !important;margin-top:1px !important}
  .dashboard-home .dashboard-news-track{height:14px !important;line-height:14px !important;flex-direction:row !important}
  .dashboard-home .dashboard-news-track>a{font-size:7.5px !important;line-height:14px !important;padding-right:24px !important}

  /* Título mínimo */
  .dashboard-home>h2{font-size:15px !important;line-height:1 !important;margin:6px 0 5px !important}

  /* Sobrescribe expresamente Alpha 11: 3 columnas reales y tarjetas bajas. */
  .dashboard-home .modules,
  .modules{
    width:100% !important;
    max-width:100% !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:4px !important;
    margin-bottom:4px !important;
  }
  .dashboard-home .module,
  .modules>.module{
    min-width:0 !important;
    min-height:58px !important;
    height:58px !important;
    padding:4px 2px !important;
    border-radius:8px !important;
    gap:2px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
  }
  .dashboard-home .module>span,.modules>.module>span{font-size:18px !important;line-height:1 !important}
  .dashboard-home .module>div,.modules>.module>div{width:100% !important;min-width:0 !important;align-items:center !important}
  .dashboard-home .module b,.modules>.module b{
    font-size:8.2px !important;
    line-height:1.02 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden !important;
  }
  .dashboard-home .module small,.modules>.module small{display:none !important}
}

@media(max-width:380px){
  .dashboard-home .module,.modules>.module{height:54px !important;min-height:54px !important}
  .dashboard-home .module>span,.modules>.module>span{font-size:17px !important}
  .dashboard-home .module b,.modules>.module b{font-size:7.8px !important}
  .dashboard-home .welcome h1{font-size:17px !important}
}


/* v2.0 Alpha 22 · ajuste final de portada + autoría de comunicados */
/* Comunicados: título de bloque llamativo y teletipo legible en cualquier pantalla. */
.communication-alert-title{
  color:#b4232f !important;
  font-weight:900 !important;
  font-size:14px !important;
  line-height:1.1 !important;
}
.dashboard-news-track>a{color:#111 !important;font-weight:500}
.dashboard-news-track>a strong{color:#050505 !important;font-weight:900}
.dashboard-news-track .news-origin{
  display:inline-block;
  margin-right:6px;
  padding:1px 5px;
  border-radius:999px;
  background:#fff0f1;
  color:#a61f2a;
  font-weight:800;
  font-size:.88em;
}
.publisher-strip{display:flex;align-items:center;gap:10px;padding:11px 13px;margin-bottom:14px;border:1px solid #cfe0ec;border-radius:10px;background:#f5faff;color:#173f5c}
.publisher-strip>span{font-size:25px}.publisher-strip>div{display:flex;flex-direction:column;gap:2px}.publisher-strip small{font-size:9px;letter-spacing:.07em;color:#71899b;font-weight:800}.publisher-strip b{font-size:14px}
.communication-card small b{color:#a61f2a}

/* Escritorio: recorta ligeramente la cabecera para que el panel principal quepa mejor. */
@media(min-width:761px){
  .dashboard-home .welcome{padding:15px 20px !important;min-height:118px !important;margin-bottom:9px !important;border-radius:17px !important}
  .dashboard-home .welcome-kicker{font-size:10px !important;margin-bottom:4px !important}
  .dashboard-home .welcome h1{font-size:39px !important;margin-bottom:3px !important}
  .dashboard-home .welcome p{font-size:15px !important}
  .dashboard-home .welcome-turn-pill{margin-top:8px !important;padding:6px 10px !important;font-size:11px !important}
  .dashboard-home .weather-box{min-width:245px !important;max-width:280px !important;padding:10px 14px !important;border-radius:14px !important;gap:3px !important}
  .dashboard-home .weather-box b{font-size:9px !important}.dashboard-home .weather-box span{font-size:22px !important}.dashboard-home .weather-box small{font-size:11px !important}.dashboard-home .weather-box em{font-size:9px !important}
  .dashboard-home .service-today-trigger{padding:9px 12px !important;margin-bottom:9px !important;min-height:50px !important}
  .dashboard-home .dashboard-alert-grid{gap:8px !important;margin-bottom:9px !important}
  .dashboard-home .alert{padding:9px 12px !important;min-height:58px !important}
  .dashboard-home>h2{margin:8px 0 7px !important;font-size:21px !important}
  .dashboard-home .module{min-height:72px !important;padding:10px 12px !important}
}

@media(max-width:760px){
  /* Los tres avisos operativos tienen exactamente la misma altura. */
  .dashboard-home .alert.task,
  .dashboard-home .alert.order,
  .dashboard-home .operative-alert{
    height:50px !important;
    min-height:50px !important;
    max-height:50px !important;
    padding:6px 7px !important;
  }
  .dashboard-home .operative-alert{grid-column:1/-1 !important}
  .dashboard-home .communication-alert{height:58px !important;min-height:58px !important;max-height:58px !important;padding:6px 7px !important}
  .dashboard-home .communication-alert-title{font-size:9px !important;line-height:1 !important;color:#b4232f !important;font-weight:900 !important}
  .dashboard-home .dashboard-news-window{height:17px !important;line-height:17px !important;margin-top:3px !important}
  .dashboard-home .dashboard-news-track{height:17px !important;line-height:17px !important}
  .dashboard-home .dashboard-news-track>a{font-size:8px !important;line-height:17px !important;color:#111 !important;font-weight:500 !important;padding-right:28px !important}
  .dashboard-home .dashboard-news-track>a strong{color:#050505 !important;font-weight:900 !important}
  .dashboard-home .dashboard-news-track .news-origin{padding:0 4px !important;margin-right:4px !important;font-size:6.6px !important}
  .publisher-strip{padding:8px 10px}.publisher-strip>span{font-size:20px}.publisher-strip b{font-size:12px}
}

/* v2.0 Alpha 23 · portada adaptable + comunicados CRUD */
/* El nombre del bloque vuelve a su color normal; el TITULAR de cada noticia es el que destaca. */
.communication-alert-title{color:#104d73 !important;font-weight:850 !important}
.dashboard-news-track>a{color:#111 !important;font-weight:500 !important}
.dashboard-news-track>a strong{color:#b4232f !important;font-weight:900 !important;font-size:inherit !important}
.dashboard-news-track .news-origin{background:#f3f5f7 !important;color:#475d6c !important;font-weight:750 !important}
.communication-row{position:relative}.communication-card{width:100%}

/* Escritorio: el dashboard usa la altura disponible y reparte los módulos para llenar la pantalla. */
@media(min-width:761px){
  .content{max-width:none !important;width:100% !important;padding:14px 18px !important}
  .dashboard-home{min-height:calc(100vh - 98px);display:flex;flex-direction:column;overflow:hidden}
  .dashboard-home .welcome{min-height:98px !important;height:clamp(98px,13vh,112px) !important;padding:12px 18px !important;margin-bottom:7px !important}
  .dashboard-home .welcome h1{font-size:clamp(30px,2.2vw,36px) !important;line-height:1 !important}
  .dashboard-home .welcome p{font-size:13px !important}
  .dashboard-home .welcome-turn-pill{margin-top:6px !important;padding:5px 9px !important;font-size:10px !important}
  .dashboard-home .weather-box{padding:8px 12px !important;min-width:230px !important;max-width:270px !important}
  .dashboard-home .service-today-trigger{min-height:42px !important;height:42px !important;padding:6px 10px !important;margin-bottom:7px !important}
  .dashboard-home .dashboard-alert-grid{gap:7px !important;margin-bottom:7px !important}
  .dashboard-home .alert{min-height:50px !important;height:50px !important;padding:7px 10px !important}
  .dashboard-home .communication-alert{height:50px !important;min-height:50px !important}
  .dashboard-home>h2{font-size:19px !important;margin:5px 0 6px !important;line-height:1 !important}
  .dashboard-home .modules{flex:1;min-height:0;display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;grid-template-rows:repeat(4,minmax(54px,1fr)) !important;gap:7px !important;margin-bottom:0 !important}
  .dashboard-home .module{min-height:0 !important;height:auto !important;padding:8px 12px !important}
  .dashboard-home .module>span{font-size:clamp(24px,2vw,31px) !important}
  .dashboard-home .module b{font-size:clamp(12px,.9vw,15px) !important}
  .dashboard-home .module small{font-size:clamp(9px,.7vw,12px) !important}
}

@media(max-width:760px){
  /* Noticias justo debajo de Servicio de hoy. */
  .dashboard-home .communication-alert{order:1 !important;grid-column:1/-1 !important}
  .dashboard-home .alert.task{order:2 !important}
  .dashboard-home .alert.order{order:3 !important}
  .dashboard-home .operative-alert{order:4 !important;grid-column:1/-1 !important}

  /* Tareas, órdenes y operativos: misma altura exacta. */
  .dashboard-home .alert.task,
  .dashboard-home .alert.order,
  .dashboard-home .operative-alert{height:50px !important;min-height:50px !important;max-height:50px !important}

  /* El bloque Noticias no necesita ser más alto que los demás. */
  .dashboard-home .communication-alert{height:50px !important;min-height:50px !important;max-height:50px !important;padding:5px 7px !important}
  .dashboard-home .communication-alert-title{font-size:9px !important;color:#104d73 !important;font-weight:850 !important}
  .dashboard-home .dashboard-news-window{height:16px !important;line-height:16px !important;margin-top:2px !important}
  .dashboard-home .dashboard-news-track,.dashboard-home .dashboard-news-track>a{height:16px !important;line-height:16px !important}
  .dashboard-home .dashboard-news-track>a{font-size:7.7px !important;color:#111 !important;font-weight:500 !important}
  .dashboard-home .dashboard-news-track>a strong{font-size:inherit !important;color:#b4232f !important;font-weight:900 !important}
  .dashboard-home .dashboard-news-track .news-origin{font-size:6.3px !important;color:#475d6c !important;background:#f3f5f7 !important}
}

/* Alpha 24 · noticias: título real destacado; el autor solo aparece en la ficha. */
.dashboard-news-static{display:block;color:#111 !important;text-decoration:none;font-size:11px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-news-track>a strong{color:#b4232f !important;font-weight:900 !important;text-transform:uppercase}
@media(max-width:760px){.dashboard-news-static{font-size:7.7px !important;line-height:16px !important}.dashboard-home .dashboard-news-track>a strong{font-size:inherit !important}}

/* v2.0 Alpha 25 · flujos operativos, archivo y portada móvil adaptativa */
.grow{flex:1;min-width:0}.linkbutton{border:0;background:none;padding:0;color:inherit;text-align:left;cursor:pointer;font:inherit}.linkbutton:hover{text-decoration:underline}.archive-search{display:flex;gap:7px;align-items:center}.archive-search input{min-width:220px;padding:9px 10px;border:1px solid #cbd9e4;border-radius:8px}.record-modal{width:min(760px,92vw);max-height:88vh;overflow:auto;border:0;border-radius:16px;padding:22px;box-shadow:0 20px 70px #071c2d55;color:#17324a}.record-modal::backdrop{background:#071c2d99}.modal-x{float:right;border:0;background:#edf3f7;border-radius:50%;width:34px;height:34px;font-size:23px;cursor:pointer}.record-photo{display:block;max-width:100%;max-height:360px;object-fit:contain;border-radius:12px;margin:12px 0}.record-modal .actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.record-modal form{display:inline}.btn.danger{background:#fff0f1;border-color:#e9b6bb;color:#a31e2a}.operative-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.operative-card{border:1px solid #cbdde8;background:#f8fbfd;border-radius:11px;padding:12px;text-align:left;cursor:pointer;color:#17324a;display:flex;flex-direction:column;gap:4px}.operative-card.live{border-color:#e16969;background:#fff1f1}.operative-card small{color:#72889a}.operative-live{background:#fff0f0 !important;border-color:#e49494 !important;color:#9b1c25 !important;animation:operativePulse 1.8s ease-in-out infinite}@keyframes operativePulse{50%{box-shadow:0 0 0 3px #e6464620}}.locked-module{opacity:.72;cursor:not-allowed;border-style:dashed !important}.nav-locked{opacity:.7;cursor:not-allowed}.nav-locked small{display:block;font-size:9px;opacity:.7;margin-left:25px}.orderrow.unread{border-left:4px solid #e35d68}.orderrow .bad{white-space:nowrap}

@media(max-width:760px){
  .dashboard-home{height:calc(100dvh - 60px) !important;min-height:0 !important;display:flex !important;flex-direction:column !important;overflow:hidden !important}
  .dashboard-home .welcome{flex:0 0 auto}.dashboard-home .service-today-trigger{flex:0 0 auto}.dashboard-home .dashboard-alert-grid{flex:0 0 auto}
  .dashboard-home>h2{flex:0 0 auto;font-size:17px !important;margin:5px 0 5px !important}
  .dashboard-home .modules{flex:1 1 auto !important;min-height:0 !important;grid-template-rows:repeat(4,minmax(66px,1fr)) !important;align-content:stretch !important}
  .dashboard-home .module,.modules>.module{height:auto !important;min-height:66px !important;padding:6px 3px !important}
  .dashboard-home .module>span,.modules>.module>span{font-size:clamp(20px,5.8vw,27px) !important}
  .dashboard-home .module b,.modules>.module b{font-size:clamp(9px,2.65vw,12px) !important;line-height:1.08 !important}
  .dashboard-home .alert b{font-size:10px !important}.dashboard-home .alert small{font-size:7.5px !important}
  .archive-search{width:100%}.archive-search input{min-width:0;flex:1}.operative-cards{grid-template-columns:1fr}.record-modal{padding:16px}
}

/* Alpha 26 · navegación, operativos y visor documental */
.page-backbar{display:flex;margin:0 0 8px}.page-back{border:0;background:transparent;color:#22678f;font-weight:850;font-size:12px;padding:4px 2px;cursor:pointer}.page-back:hover{text-decoration:underline}
.corporate-splash{position:fixed;inset:0;z-index:99999;background:#fff;display:grid;place-items:center;transition:opacity .32s ease}.corporate-splash.hide{opacity:0;pointer-events:none}.corporate-splash-inner{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;color:#17324a}.corporate-splash-inner img{width:150px;height:150px;object-fit:contain}.corporate-splash-inner b{font-size:22px;letter-spacing:.02em}.corporate-splash-inner span{font-size:13px;color:#718598}
.operative-search,.document-viewer-search{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;margin-bottom:12px}.operative-search>div:first-child,.document-viewer-search>div:first-child{display:flex;flex-direction:column;gap:3px}.operative-search small,.document-viewer-search small{color:#738a9a}.operative-search-controls,.document-search-controls{display:flex;gap:7px;align-items:center;flex:1;justify-content:flex-end}.operative-search-controls input,.document-search-controls input,.document-search-controls select{height:38px;border:1px solid #cbd9e4;border-radius:9px;background:#fff;padding:0 11px;color:#17324a}.operative-search-controls input,.document-search-controls input{width:min(430px,52vw)}
.current-ops-section{margin-bottom:12px}.current-op-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.current-op-card{width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;text-align:left;border:1px solid #e78989;border-radius:14px;padding:15px;background:linear-gradient(135deg,#fff5f5,#fff);color:#17324a;cursor:pointer;box-shadow:0 6px 20px #9d1e1e10}.current-op-card:hover{border-color:#d95858;box-shadow:0 8px 26px #9d1e1e1e}.current-op-card>div{display:flex;flex-direction:column;min-width:0;gap:3px}.current-op-card b{font-size:15px;color:#8e1822;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.current-op-card small{font-size:9px;font-weight:900;color:#bd2530;letter-spacing:.04em}.current-op-card span:not(.status-light){font-size:10px;color:#627a8c}.current-op-card>strong{font-size:24px;color:#a6262f}
.status-light{width:11px;height:11px;border-radius:50%;display:inline-block;flex:none;box-shadow:0 0 0 4px #00000008}.status-light.green{background:#28a745;box-shadow:0 0 0 4px #28a74520}.status-light.orange{background:#ef8b22;box-shadow:0 0 0 4px #ef8b2220}.status-light.red{background:#d73d48;box-shadow:0 0 0 4px #d73d4820}.status-light.blue{background:#3489bc;box-shadow:0 0 0 4px #3489bc20}.operative-list,.document-list{display:flex;flex-direction:column}.operative-row,.document-row{display:flex;align-items:center;gap:10px;min-height:54px;padding:8px 4px;border-top:1px solid #e4edf2}.operative-row:first-child,.document-row:first-child{border-top:0}.operative-row .linkbutton,.document-row .linkbutton{display:flex;flex-direction:column;gap:3px;text-decoration:none}.operative-row .linkbutton b,.document-row .linkbutton b{font-size:12px;color:#173e57}.operative-row .linkbutton small,.document-row .linkbutton small{font-size:9px;color:#748a99}.operative-row form,.document-row form{display:inline;margin:0}.document-row.unread{background:#fffafa;border-left:4px solid #e15562;padding-left:8px}.document-icon{font-size:22px}.pill.attention{background:#fff0f1;color:#a51f2c;border-color:#efc3c7}.modal-kicker{font-size:9px;font-weight:900;color:#4e7891;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.modal-meta{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0 12px}.modal-meta span{font-size:9px;background:#f1f6f9;border:1px solid #dce7ed;padding:5px 8px;border-radius:999px}.modal-summary{font-size:12px;line-height:1.55}.document-modal h2,.operative-modal h2{padding-right:42px}
@media(max-width:760px){.page-backbar{margin:0 0 4px}.page-back{font-size:11px}.operative-search,.document-viewer-search{display:block;padding:10px 11px}.operative-search-controls,.document-search-controls{margin-top:8px;display:grid;grid-template-columns:1fr auto}.operative-search-controls input,.document-search-controls input{width:100%;min-width:0}.document-search-controls select{grid-column:1/-1;width:100%}.current-op-grid{grid-template-columns:1fr}.current-op-card{padding:12px}.current-op-card b{font-size:13px}.operative-row,.document-row{align-items:flex-start;flex-wrap:wrap}.operative-row .grow,.document-row .grow{flex:1 1 calc(100% - 32px)}.operative-row>.btn,.operative-row>form,.document-row>.btn,.document-row>form{margin-left:21px}.corporate-splash-inner img{width:126px;height:126px}.corporate-splash-inner b{font-size:18px;max-width:280px}}

/* v2.0 Alpha 27 · visores por fecha + Libro de Novedades simplificado */
.compact-pagehead h1{font-size:clamp(25px,3vw,38px);line-height:1.05}.compact-pagehead p{font-size:13px}.row-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.smart-search{display:flex;align-items:center;gap:16px}.smart-search-title{min-width:180px;display:flex;flex-direction:column;gap:2px}.smart-search-title small{color:#74899a}.smart-search-grid{display:grid;grid-template-columns:minmax(220px,1.8fr) minmax(120px,.7fr) minmax(130px,.8fr) auto auto;gap:7px;align-items:center;flex:1}.smart-search-grid input,.smart-search-grid select,.archive-filterbar input{height:39px;border:1px solid #cbd9e4;border-radius:9px;background:#fff;padding:0 10px;color:#17324a;min-width:0}.archive-filterbar{display:grid;grid-template-columns:minmax(220px,1.8fr) 160px 160px auto auto;gap:8px;align-items:end;margin-bottom:14px}.archive-filterbar label{display:flex;flex-direction:column;gap:4px;font-size:10px;font-weight:800;color:#647d8f}.communication-filter{margin-bottom:12px}

.simple-logbook-legend{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:8px 0 12px;font-size:10px;color:#637b8d}.cal-state{width:11px;height:11px;border-radius:50%;display:inline-block;margin-right:4px;vertical-align:-1px}.cal-state.red{background:#d93845}.cal-state.green{background:#35a75a}.cal-state.blank{background:#e5ebef;border:1px solid #c4d0d8}.shift-calendar-stack{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.shift-month{padding:12px}.shift-month-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.shift-month-title small{color:#73899a;font-size:10px}.weekday-head,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.weekday-head{margin-bottom:4px}.weekday-head b{text-align:center;font-size:8px;text-transform:uppercase;color:#6f8494}.month-cell{position:relative;aspect-ratio:1.12/1;border:1px solid #dbe5ec;border-radius:8px;background:#fbfdfe;color:#17324a;display:flex;align-items:center;justify-content:center;cursor:pointer;min-width:0;padding:2px}.month-cell b{font-size:15px}.month-cell .weekday-mini{display:none}.month-cell.empty{border-color:transparent;background:transparent;cursor:default}.month-cell.saturday{background:#f3f8fc}.month-cell.sunday{background:#fff3f3}.month-cell.today{outline:2px solid #2386c2;outline-offset:1px}.month-cell .cell-indicator{position:absolute;width:7px;height:7px;border-radius:50%;right:5px;top:5px;background:#dbe4ea}.month-cell.state-red{border-color:#e16a73;background:#fff0f1}.month-cell.state-red .cell-indicator{background:#d92f3d}.month-cell.state-green{border-color:#9ed9ad;background:#effaf2}.month-cell.state-green .cell-indicator{background:#32a755}.month-cell.state-amber{border-color:#e8c47c;background:#fff8e8}.month-cell.state-amber .cell-indicator{background:#dc9827}.month-cell em{position:absolute;right:4px;bottom:3px;font-size:8px;font-style:normal;font-weight:900;color:#b21d2a}.month-cell small{position:absolute;left:3px;bottom:2px;font-size:7px}.shift-m .shift-tag,.shift-t .shift-tag,.shift-n .shift-tag{font-weight:900}

.inline-field-action{display:flex;gap:6px}.inline-field-action input{flex:1;min-width:0}.voice-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px;border:1px dashed #b9d0de;border-radius:10px;background:#f8fbfd}.voice-tools small{width:100%;color:#657f91}.audio-upload{display:inline-flex!important;align-items:center;gap:6px;border:1px solid #cedbe4;background:white;border-radius:9px;padding:7px 9px;font-size:11px!important;cursor:pointer}.audio-upload input{max-width:160px}.novelty-card audio{width:min(420px,100%);height:34px;margin-top:8px}.hidden{display:none!important}

/* Teléfono: títulos y botones centrados, sin desbordamientos. */
@media(max-width:760px){
  .content{padding:10px!important;width:100%!important;max-width:100%!important;overflow-x:hidden}
  .compact-pagehead{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important;align-items:start!important;margin-bottom:10px!important}
  .compact-pagehead>div:first-child{min-width:0}.compact-pagehead h1{font-size:27px!important;line-height:1.04!important;overflow-wrap:anywhere}.compact-pagehead p{font-size:12px!important;line-height:1.25!important;margin-top:4px!important}.compact-pagehead>.btn,.compact-pagehead .logbook-actions{width:100%;margin:0!important}.compact-pagehead>.btn{text-align:center;padding:10px!important}.logbook-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:6px}
  .card{padding:12px!important;margin-bottom:10px!important;border-radius:12px!important}.card h2{font-size:20px;line-height:1.08}.sectionhead{align-items:flex-start!important;flex-wrap:wrap!important}.sectionhead p{font-size:11px!important}
  .taskrow{align-items:flex-start;flex-wrap:wrap}.taskrow .grow{flex:1 1 calc(100% - 28px)}.taskrow .row-actions{width:100%;padding-left:28px}.taskrow .btn{font-size:10px}
  .archive-filterbar,.smart-search{display:block!important}.archive-filterbar{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}.archive-filterbar label:first-child{grid-column:1/-1}.archive-filterbar .btn{width:100%;text-align:center}.smart-search-title{min-width:0;margin-bottom:8px}.smart-search-grid{grid-template-columns:1fr 1fr!important;gap:7px!important}.smart-search-grid input{grid-column:1/-1}.smart-search-grid select{width:100%;min-width:0}.smart-search-grid .btn{text-align:center}.smart-search-grid a.btn{display:flex;align-items:center;justify-content:center}
  .document-row,.operative-row{gap:7px}.document-row .linkbutton b,.operative-row .linkbutton b{font-size:12px}.document-row .linkbutton small,.operative-row .linkbutton small{font-size:9px}.document-row>.btn,.document-row>form,.operative-row>.btn,.operative-row>form{margin-left:0!important}
  .shift-calendar-stack{grid-template-columns:1fr!important;gap:8px}.shift-month{padding:9px!important}.month-cell{aspect-ratio:1.35/1;border-radius:7px}.month-cell b{font-size:15px}.weekday-head b{font-size:9px}.simple-logbook-legend{gap:8px;font-size:9px}.month-stats{display:none}
  .shift-modal-panel{width:calc(100vw - 10px)!important;max-width:none!important;max-height:94dvh!important;margin:3dvh 5px!important;border-radius:14px!important}.shift-modal-body{padding:9px!important}.shift-sheet-head h2{font-size:23px!important}.shift-section{padding:10px!important}.shift-section-title h3{font-size:16px!important}.staff-select-grid,.shift-data-grid,.novelty-form-grid{grid-template-columns:1fr!important}.staff-select-grid label,.shift-data-grid label,.novelty-form-grid label{min-width:0}.inline-field-action{display:grid;grid-template-columns:1fr auto}.voice-tools{align-items:stretch}.voice-tools .btn,.audio-upload{justify-content:center}.audio-upload input{max-width:120px}
  .dashboard-home .modules{grid-template-rows:repeat(4,minmax(76px,1fr))!important}.dashboard-home .module,.modules>.module{min-height:76px!important}.dashboard-home .module>span,.modules>.module>span{font-size:clamp(23px,6.5vw,30px)!important}.dashboard-home .module b,.modules>.module b{font-size:clamp(10px,2.8vw,12.5px)!important}
}
@media(max-width:390px){.compact-pagehead h1{font-size:24px!important}.month-cell b{font-size:13px}.dashboard-home .modules{grid-template-rows:repeat(4,minmax(70px,1fr))!important}}


/* Alpha 28 · Libro de Novedades operativo */
.current-shift-shell{padding:0;overflow:hidden;margin-bottom:22px;border:1px solid #b9d7e8;box-shadow:0 8px 24px rgba(17,57,88,.08)}
.current-shift-banner{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(100deg,#0d4f79,#14749e);color:#fff}.current-shift-banner small{font-weight:800;letter-spacing:.12em;opacity:.85}.current-shift-banner h2{margin:2px 0 3px;font-size:26px}.current-shift-banner p{margin:0;opacity:.9}.live-pill{background:#dcfce7;color:#166534;font-weight:900;border-radius:999px;padding:8px 13px;white-space:nowrap}.current-shift-shell #currentShiftPanel{padding:16px}
.history-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:8px 0 12px}.history-heading h2{margin:0;color:#102f49}.history-heading p{margin:3px 0 0;color:#6f8595}.history-period{display:flex;gap:8px}.history-period label{font-size:12px;font-weight:800;color:#45677f}.history-period select{display:block;min-width:110px;margin-top:3px;padding:8px 10px;border:1px solid #cbdce7;border-radius:10px;background:#fff;color:#17364e;font-weight:700}
.alpha28-calendars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.alpha28-calendars .shift-month{margin:0}.big-shift-title{margin:-12px -12px 10px;padding:0;overflow:hidden;border-radius:13px 13px 0 0}.big-shift-title .shift-tag{display:block;width:100%;text-align:center;border-radius:0;padding:11px 10px;font-size:19px;letter-spacing:.08em;font-weight:950}.big-shift-title small{display:block;text-align:center;padding:6px;background:#f8fbfd;color:#6c8393}.big-shift-title .shift-m{background:#f6c453;color:#4e3300}.big-shift-title .shift-t{background:#4ca5d8;color:#07334e}.big-shift-title .shift-n{background:#6d68b7;color:#fff}
.alpha28-shift-sheet{max-width:1100px;margin:0 auto}.alpha28-shift-sheet .shift-sheet-head{padding-bottom:12px;border-bottom:2px solid #e4edf3}.alpha28-shift-sheet .shift-sheet-head h2{margin:5px 0 2px}.alpha28-data-grid{margin-top:12px}.novelty-photo-link{display:block;margin:10px 0}.novelty-photo-link img{max-width:280px;max-height:220px;border-radius:12px;border:1px solid #d8e4ec;object-fit:cover}.novelty-audio{margin:10px 0;padding:8px 10px;background:#f6f9fb;border-radius:10px}.novelty-audio span{display:block;font-size:12px;font-weight:800;margin-bottom:4px}.novelty-audio audio{width:100%}.danger-link{color:#a51616!important;border-color:#edb7b7!important}.shift-section{scroll-margin-top:20px}
@media(max-width:900px){.alpha28-calendars{grid-template-columns:1fr}.history-heading{align-items:stretch;flex-direction:column}.history-period{width:100%}.history-period label{flex:1}.history-period select{width:100%}.current-shift-banner{align-items:flex-start;gap:8px;padding:12px 14px}.current-shift-banner h2{font-size:21px}.current-shift-banner p{font-size:12px}.current-shift-shell #currentShiftPanel{padding:10px}.alpha28-shift-sheet .shift-sheet-head{display:flex!important;align-items:flex-start;gap:8px}.alpha28-shift-sheet .shift-sheet-head h2{font-size:20px!important}.alpha28-shift-sheet .shift-tag{font-size:13px!important}.alpha28-shift-sheet .shift-section{padding:12px!important}.alpha28-shift-sheet .shift-section-title h3{font-size:18px!important}.staff-select-grid,.shift-data-grid,.novelty-form-grid{grid-template-columns:1fr!important}.big-shift-title .shift-tag{font-size:20px!important;padding:12px!important}.month-cell{min-height:52px!important}.month-cell b{font-size:16px!important}}

/* Alpha 29 · legibilidad y Libro registro de documentos */
.record-form .record-field>span{font-size:14px!important;font-weight:900!important;color:#123f61!important;letter-spacing:.03em!important}.record-form .record-field>span i{color:#c52d38;font-style:normal}.record-form input,.record-form textarea,.record-form select{font-size:17px!important;font-weight:650!important;color:#102f49!important;line-height:1.35!important;background:#fff!important;border:1.5px solid #b9cfde!important}.record-form input::placeholder,.record-form textarea::placeholder{color:#657d8f!important;opacity:1}.record-form input:disabled,.record-form textarea:disabled,.record-form select:disabled{color:#24495f!important;background:#f3f7fa!important;opacity:1!important}.registry-meta-bar{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:15px;padding:12px 14px;background:#eef7fd;border:1px solid #c8dfed;border-radius:11px}.registry-meta-bar div{display:flex;flex-direction:column;gap:3px}.registry-meta-bar span{font-size:11px;font-weight:900;color:#55788f}.registry-meta-bar b{font-size:16px;color:#123b57}.registry-ref-field{max-width:155px!important}.registry-ref-input{font-size:25px!important;font-weight:900!important;text-align:center!important;height:54px!important}.registry-extra-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px;padding-top:15px;border-top:1px solid #dfe8ef}.registry-file-current{display:inline-block;margin:0 0 7px;font-weight:800;color:#0d659f}.record-delete-form{display:flex;justify-content:flex-end;margin-top:-4px;margin-bottom:16px}.registry-category-add{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.registry-category-add label{font-size:14px;font-weight:900;color:#173f5b}.registry-category-add input{display:block;width:100%;margin-top:6px;height:43px;padding:0 11px;border:1px solid #c9d9e3;border-radius:9px;font-size:16px;color:#17324a}
@media(max-width:760px){.record-form .record-field>span{font-size:13px!important}.record-form input,.record-form textarea,.record-form select{font-size:16px!important}.registry-meta-bar,.registry-extra-grid{grid-template-columns:1fr}.registry-ref-field{max-width:130px!important}.registry-ref-input{font-size:23px!important}.registry-category-add{grid-template-columns:1fr}.registry-record-form{padding:12px!important}.record-form-grid{grid-template-columns:1fr!important}}


/* Alpha 30 · Libro de Novedades móvil, personal ordenado y novedades compactas */
.cal-state.black{background:#17191c;border:1px solid #050607}.month-cell.state-black{background:#1f2328!important;border-color:#111820!important;color:#fff!important}.month-cell.state-black .cell-indicator{background:#000!important}
.month-cell .cell-indicator{width:12px!important;height:12px!important;right:7px!important;top:7px!important;box-shadow:0 0 0 3px rgba(255,255,255,.7)}
.service-switches{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:9px 0 12px;padding:10px 12px;border-radius:10px;background:#f5f8fb;border:1px solid #dbe6ed}.service-switches label{display:flex;align-items:center;gap:7px;color:#183c56;font-size:13px}.service-switches input{width:17px;height:17px}
.alpha30-aux-grid{margin-top:8px}.alpha30-novelty-list{display:flex;flex-direction:column;gap:7px}.novelty-compact{padding:0!important;overflow:hidden}.novelty-compact summary{list-style:none;display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding:10px 12px;cursor:pointer;background:#f8fbfd}.novelty-compact summary::-webkit-details-marker{display:none}.novelty-compact summary:after{content:'⌄';font-weight:900;color:#6f8595;margin-left:4px}.novelty-compact[open] summary:after{content:'⌃'}.novelty-number{display:inline-flex;background:#e7f3fb;color:#0d608e;border-radius:999px;padding:4px 7px;font-size:11px;font-weight:900}.novelty-compact summary strong{font-size:13px;color:#173b54}.novelty-compact summary>span:last-of-type{font-weight:800;color:#5f7788;font-size:11px}.novelty-detail{padding:10px 12px;border-top:1px solid #e4edf3}.novelty-form-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}.novelty-form-head b{font-size:15px;color:#123f5d}.novelty-form-head span{font-size:11px;color:#708697}.voice-transcribe{display:flex!important;align-items:center;gap:7px;font-size:12px!important;font-weight:800!important;color:#183f5a!important}.voice-transcribe input{width:17px;height:17px}.alpha30-voice-tools{justify-content:flex-start}
@media(max-width:760px){
  .alpha28-calendars{width:calc(100% - 16px)!important;margin:0 auto!important;gap:14px!important}.alpha28-calendars .shift-month{width:100%!important;max-width:520px!important;margin:0 auto 6px!important;padding:8px!important}.big-shift-title{margin:-8px -8px 8px!important}.big-shift-title .shift-tag{font-size:24px!important;padding:10px 8px!important}.big-shift-title small{font-size:11px!important;padding:5px!important}.weekday-head,.month-grid{gap:3px!important}.month-cell{min-height:44px!important;aspect-ratio:1.12/1!important}.month-cell b{font-size:17px!important}.month-cell .cell-indicator{width:13px!important;height:13px!important;right:5px!important;top:5px!important}.month-cell em{font-size:9px!important;right:5px!important;bottom:3px!important}.simple-logbook-legend{font-size:10px!important;justify-content:center!important}.service-switches{gap:10px!important}.service-switches label{font-size:12px!important}.alpha30-novelty-list{gap:6px}.novelty-compact summary{grid-template-columns:auto minmax(0,1fr) auto;padding:9px}.novelty-compact summary strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.novelty-form-head{align-items:flex-start;flex-direction:column}.alpha30-voice-tools{display:grid!important;grid-template-columns:1fr 1fr!important}.alpha30-voice-tools .voice-transcribe{grid-column:1/-1}.alpha30-voice-tools small{grid-column:1/-1}.alpha30-staff-grid{grid-template-columns:1fr!important}
}


/* Alpha 31 · ficha de turno compacta, novedades por bloques y mejor legibilidad */
.alpha31-shift-sheet{max-width:1380px!important;width:100%!important}.alpha31-shift-sheet .shift-section{padding:18px 20px!important}.alpha31-shift-sheet .shift-section-title h3{font-size:21px!important;color:#102f49!important}.alpha31-shift-sheet .shift-section-title p{font-size:13px!important;color:#526f83!important}.alpha31-shift-sheet label>span,.alpha31-shift-sheet .staff-select>span{font-size:13px!important;font-weight:900!important;color:#173f5b!important}.alpha31-shift-sheet input,.alpha31-shift-sheet textarea,.alpha31-shift-sheet select{font-size:16px!important;color:#102f49!important;font-weight:650!important}.alpha31-staff-grid{grid-template-columns:1fr 1fr!important;gap:12px!important}.alpha31-switches{padding:10px 14px!important}.aux-count-wrap{display:flex!important;align-items:center!important;gap:8px!important}.aux-count-wrap select{width:75px!important;padding:7px!important}.alpha31-aux-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin:10px 0!important}.alpha31-service-data{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:12px;align-items:end}.alpha31-service-data .wide textarea{width:100%}.alpha31-call-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.alpha31-call-grid label{min-width:0}.alpha31-call-grid input{width:100%}.no-novelties-check{display:flex!important;align-items:center;gap:8px;margin:12px 0;padding:11px 13px;border:1px solid #bad7e8;border-radius:10px;background:#f2f9fd;color:#123e5a!important}.no-novelties-check input{width:18px;height:18px}.alpha31-drafts{display:flex;flex-direction:column;gap:12px}.alpha31-drafts.disabled-drafts{display:none}.draft-novelty{border:1px solid #c9dce8;border-radius:13px;background:#fff;overflow:hidden;box-shadow:0 3px 10px rgba(19,60,88,.05)}.draft-head{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#eef7fc;border-bottom:1px solid #d8e7f0}.draft-head b{font-size:16px;color:#0f4668}.draft-remove{border:0;background:transparent;color:#9b2530;font-size:24px;line-height:1;cursor:pointer}.alpha31-novelty-grid{padding:14px;display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important}.alpha31-novelty-grid .wide{grid-column:1/-1!important}.dictation-wrap{position:relative}.dictation-wrap textarea{width:100%;padding-right:52px!important;min-height:118px}.dictation-mic{position:absolute;right:9px;top:9px;width:38px;height:38px;border-radius:50%;border:1px solid #9fc7df;background:#e9f6fd;font-size:20px;cursor:pointer}.alpha31-media-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px}.media-picker,.audio-recorder{min-height:52px;border:1px solid #cfdee7;border-radius:10px;padding:9px 11px;background:#f9fcfe}.media-picker{display:flex!important;align-items:center;gap:10px}.media-picker input{font-size:13px!important;min-width:0}.audio-recorder{display:flex;align-items:center;gap:10px}.draft-audio-status{font-size:12px;color:#667e8f}.draft-audio-status.ready{color:#19723b;font-weight:800}.alpha31-add{width:100%;margin-top:10px!important;border-style:dashed!important;font-weight:900!important}.alpha31-finalbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:16px 0 4px;padding:15px 18px;border:2px solid #78b7da;border-radius:13px;background:#edf8fe}.alpha31-finalbar>div{display:flex;flex-direction:column;gap:3px}.alpha31-finalbar b{font-size:17px;color:#103f5d}.alpha31-finalbar small{font-size:12px;color:#60798a}.alpha31-finalbar .btn{font-size:16px!important;padding:11px 20px!important;white-space:nowrap}.shift-month{overflow:hidden}.month-grid,.weekday-head{grid-template-columns:repeat(7,minmax(0,1fr))!important}.month-cell{min-width:0!important;width:100%!important}.month-cell .cell-indicator{width:15px!important;height:15px!important;box-shadow:0 0 0 3px rgba(255,255,255,.75)!important}
@media(max-width:900px){.alpha31-shift-sheet{max-width:100%!important}.alpha31-shift-sheet .shift-section{padding:12px!important}.alpha31-service-data{grid-template-columns:1fr!important}.alpha31-staff-grid{grid-template-columns:1fr!important}.alpha31-aux-grid{grid-template-columns:1fr!important}.alpha31-call-grid{grid-template-columns:1fr 1fr!important;gap:7px!important}.alpha31-call-grid label>span{font-size:11px!important}.alpha31-call-grid input{font-size:16px!important;padding:8px!important}.alpha31-novelty-grid{grid-template-columns:1fr!important;padding:10px!important;gap:9px!important}.alpha31-novelty-grid .wide{grid-column:1!important}.alpha31-media-row{grid-template-columns:1fr 1fr!important;gap:7px!important}.media-picker,.audio-recorder{padding:8px!important;min-height:48px}.media-picker{flex-direction:column!important;align-items:flex-start!important}.audio-recorder{flex-direction:column;align-items:stretch}.draft-audio-btn{font-size:12px!important;padding:7px!important}.alpha31-finalbar{position:sticky;bottom:0;z-index:8;margin:10px -2px 0;padding:10px 12px;box-shadow:0 -6px 20px rgba(20,58,80,.12)}.alpha31-finalbar small{display:none}.alpha31-finalbar .btn{font-size:14px!important;padding:10px 13px!important}.alpha28-calendars{width:100%!important;padding:0 8px!important;box-sizing:border-box!important}.alpha28-calendars .shift-month{max-width:100%!important;width:100%!important;box-sizing:border-box!important;margin:0 auto 10px!important}.weekday-head,.month-grid{gap:2px!important}.month-cell{min-height:40px!important;aspect-ratio:1.18/1!important}.month-cell b{font-size:16px!important}.month-cell .cell-indicator{width:14px!important;height:14px!important;right:4px!important;top:4px!important}.big-shift-title .shift-tag{font-size:22px!important}.current-shift-shell #currentShiftPanel{padding:8px!important}.alpha31-shift-sheet label>span,.alpha31-shift-sheet .staff-select>span{font-size:12px!important}.alpha31-shift-sheet input,.alpha31-shift-sheet textarea,.alpha31-shift-sheet select{font-size:15px!important}}


/* Alpha 32 · móvil limpio, selector de asuntos por secciones y captura multimedia robusta */
.alpha32-shift-sheet .category-hidden-select{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.category-field{position:relative}.category-choice{width:100%;display:flex;align-items:center;justify-content:space-between;border:1px solid #9bb9ca;border-radius:9px;background:#fff;color:#102f49;padding:11px 13px;font-size:16px;font-weight:750;text-align:left;cursor:pointer}.category-picker{margin-top:7px;border:1px solid #b9cfdd;border-radius:12px;background:#fff;box-shadow:0 12px 28px rgba(15,47,73,.16);max-height:390px;overflow:auto;padding:8px;z-index:20}.category-picker-group{padding:5px 0 9px}.category-picker-group+ .category-picker-group{border-top:1px solid #dce7ee}.category-picker-group h4{margin:2px 4px 6px;padding:7px 10px;border-radius:8px;background:#e9f4fb;color:#0d527d;font-size:14px;text-transform:uppercase;letter-spacing:.04em}.category-picker-group:nth-child(2) h4{background:#eef7ec;color:#27633a}.category-picker-group:nth-child(3) h4{background:#fff5e5;color:#80551a}.category-picker-group:nth-child(4) h4{background:#f2edfa;color:#634290}.category-picker-group button{display:block;width:100%;border:0;border-radius:7px;background:transparent;color:#15364d;padding:9px 11px;text-align:left;font-size:15px;font-weight:650;cursor:pointer}.category-picker-group button:hover{background:#f1f7fb}
.alpha32-media-row .media-picker,.alpha32-media-row .audio-recorder{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:center;gap:6px;min-width:0}.alpha32-media-row .media-action,.alpha32-media-row .draft-audio-btn{width:100%;white-space:normal!important}.draft-photo-status,.draft-audio-status,.draft-dictation-status{display:block;font-size:12px!important;color:#587185!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-dictation-status{margin-top:4px;white-space:normal}.history-edit-zone{margin-top:12px}
@media(max-width:900px){.logbook-head{padding:4px 2px 6px!important;margin-bottom:4px!important}.logbook-head h1{font-size:25px!important;margin-bottom:0!important}.logbook-head p{font-size:12px!important;line-height:1.25!important;margin-top:2px!important}.logbook-actions{display:none!important}.current-shift-shell{margin-top:4px!important}.current-shift-banner{padding:10px 12px!important;min-height:0!important}.current-shift-banner small{font-size:10px!important}.current-shift-banner h2{font-size:20px!important;margin:2px 0!important}.current-shift-banner p{font-size:12px!important;line-height:1.25!important;margin:0!important}.current-shift-banner .live-pill{font-size:11px!important;padding:5px 8px!important}.alpha32-shift-sheet .shift-sheet-head{padding:8px 10px!important}.alpha32-shift-sheet .shift-sheet-head h2{font-size:20px!important}.alpha32-shift-sheet .shift-section{padding:10px!important}.alpha32-shift-sheet .shift-section-title{margin-bottom:8px!important}.alpha32-shift-sheet .shift-section-title h3{font-size:18px!important}.alpha32-shift-sheet .shift-section-title p{font-size:11px!important;line-height:1.25!important}.alpha31-switches{padding:7px 9px!important;gap:8px!important}.alpha31-service-data{gap:8px!important}.alpha31-service-data textarea{min-height:55px!important}.alpha31-call-grid{grid-template-columns:1fr 1fr!important}.draft-head{padding:8px 10px!important}.alpha31-novelty-grid{padding:9px!important}.category-choice{font-size:15px!important;padding:9px 10px!important}.category-picker{max-height:58vh}.category-picker-group h4{font-size:13px!important}.category-picker-group button{font-size:14px!important;padding:8px 9px!important}.dictation-wrap textarea{min-height:105px!important}.alpha32-media-row{grid-template-columns:1fr 1fr!important;gap:7px!important}.alpha32-media-row .media-picker,.alpha32-media-row .audio-recorder{padding:7px!important;min-height:0!important}.alpha32-media-row .media-action,.alpha32-media-row .draft-audio-btn{font-size:12px!important;padding:8px 5px!important}.draft-photo-status,.draft-audio-status{font-size:10px!important}.history-heading{margin-top:12px!important}.history-heading h2{font-size:22px!important}.history-heading p{font-size:12px!important}.shift-modal-panel .alpha32-shift-sheet[data-current-shift="0"] .history-edit-zone.hidden{display:none!important}}

/* Alpha 33 · novedades en borrador durante el turno + cierre definitivo */
.alpha32-shift-sheet .shift-section-title{align-items:center!important}.alpha32-shift-sheet .shift-section-title>div{display:flex;align-items:center}.alpha32-shift-sheet .shift-section-title p{display:none!important}
.shift-close-warning{margin:12px 0;padding:11px 14px;border:1px solid #e6bc5b;border-radius:11px;background:#fff8df;color:#664a0b;font-size:13px;line-height:1.4}
.draft-save-row{display:flex;align-items:center;gap:12px;padding-top:2px}.draft-save-row small{color:#60798a;font-size:12px;line-height:1.35}.draft-save-btn{min-width:190px}.dictation-mic.listening{background:#ffe7e7!important;border-color:#d8535e!important;color:#a21925!important;animation:dictationPulse 1.1s ease-in-out infinite}@keyframes dictationPulse{50%{box-shadow:0 0 0 7px rgba(216,83,94,.12)}}
.modal-success{padding:9px 12px;margin:7px 0;border:1px solid #a9d8b7;border-radius:9px;background:#effaf2;color:#1e6b36;font-weight:750}
@media(max-width:900px){.shift-close-warning{font-size:11px!important;padding:8px 10px!important;margin:8px 0!important}.draft-save-row{display:block}.draft-save-row .draft-save-btn{width:100%;min-width:0}.draft-save-row small{display:block;margin-top:5px;font-size:10px}.alpha32-shift-sheet .shift-section-title{margin-bottom:5px!important}.alpha32-shift-sheet .shift-section-title h3{margin:0!important}.alpha31-finalbar{padding:8px 10px!important}.alpha31-finalbar b{font-size:14px!important}.alpha31-finalbar .btn{font-size:13px!important}}

/* Alpha 34 · borradores del turno, fotos múltiples y dictado móvil */
.draft-state{font-style:normal;font-size:.72rem;font-weight:800;color:#a45b00;background:#fff2d5;border-radius:999px;padding:2px 7px}
.alpha32-media-row .media-picker{display:flex;flex-direction:column;gap:7px;align-items:stretch}
.alpha32-media-row .media-picker .media-action{width:100%;min-height:44px}
.alpha32-media-row .draft-photo-status{font-size:.82rem;color:#566b7a}
@media (min-width:900px){.current-shift-shell{max-width:none}.shift-sheet{max-width:1080px;margin-left:auto;margin-right:auto}}
@media (max-width:720px){
  .current-shift-shell.card{padding:0;margin-bottom:10px}.current-shift-banner{padding:10px 12px;min-height:0}.current-shift-banner small{font-size:.7rem}.current-shift-banner h2{font-size:1.2rem;margin:2px 0}.current-shift-banner p{display:none}.live-pill{font-size:.72rem;padding:5px 8px}
  .shift-section{padding:12px}.shift-section-title{margin-bottom:9px}.shift-section-title>span{width:25px;height:25px}.shift-section-title h3{font-size:1.05rem}
  .alpha32-media-row{grid-template-columns:1fr 1fr;gap:8px}.alpha32-media-row .btn{font-size:.88rem;padding:9px 7px}.draft-dictation-status{font-size:.78rem}
}

/* Alpha 35 · dictado separado, modal de voz y fotos múltiples */
.alpha35-text-field{display:flex;flex-direction:column;gap:6px}.alpha35-field-label{font-size:13px;font-weight:900;color:#173f5b}.alpha35-text-field textarea{width:100%;min-height:125px;resize:vertical}.alpha35-voice-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.alpha35-action{display:flex;align-items:center;gap:10px;min-height:72px;padding:11px 14px;border:1px solid #bfd4e1;border-radius:12px;background:#f8fbfd;color:#123e5a;cursor:pointer;text-align:left}.alpha35-action:hover{background:#eef8fd}.alpha35-action-icon{font-size:29px;line-height:1}.alpha35-action span:last-child{display:flex;flex-direction:column;gap:2px}.alpha35-action b{font-size:16px}.alpha35-action small{font-size:12px;color:#60798a;font-weight:500}.alpha35-dictate{background:#eaf6ff;border-color:#9ecce7}.alpha35-photo-picker{border:1px solid #a9d9d0;border-radius:12px;background:#eefaf7;padding:10px}.alpha35-photo-button{width:100%;display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;border:0;background:transparent;color:#087463;text-align:left;cursor:pointer;padding:3px}.alpha35-photo-button>span{grid-row:1/3;font-size:28px}.alpha35-photo-button>b{font-size:16px}.alpha35-photo-button>small{font-size:12px;color:#527b74}.draft-photo-previews{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.alpha35-photo-thumb{position:relative;width:92px;height:78px;border-radius:9px;overflow:hidden;border:1px solid #b7cad6;background:white}.alpha35-photo-thumb img{width:100%;height:100%;object-fit:cover}.alpha35-photo-thumb button{position:absolute;right:3px;top:3px;width:25px;height:25px;border-radius:50%;border:0;background:rgba(25,36,44,.82);color:white;font-size:18px;line-height:23px;cursor:pointer}.alpha35-dictation-modal{position:fixed;inset:0;z-index:5000;display:none;align-items:center;justify-content:center;padding:16px}.alpha35-dictation-modal.open{display:flex}.alpha35-dictation-backdrop{position:absolute;inset:0;background:rgba(7,30,45,.58)}.alpha35-dictation-panel{position:relative;width:min(560px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 25px 70px rgba(0,0,0,.28);padding:0 18px 18px}.alpha35-dictation-head{display:flex;align-items:center;justify-content:space-between;padding:16px 2px 10px;border-bottom:1px solid #dce7ee}.alpha35-dictation-head h3{margin:0;font-size:23px;color:#123e5a}.alpha35-dictation-head button{border:0;background:none;font-size:30px;color:#173f5b;cursor:pointer}.alpha35-listening{text-align:center;padding:20px 4px 12px}.alpha35-mic-orb{width:112px;height:112px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:#0b79cf;color:white;font-size:53px;box-shadow:0 0 0 18px #e1f0fb,0 0 0 34px #f0f8fd}.alpha35-dictation-title{display:block;margin-top:35px;font-size:24px;color:#123e5a}.alpha35-wave{height:35px;display:flex;align-items:center;justify-content:center;gap:5px;margin:8px 0}.alpha35-wave i{display:block;width:4px;border-radius:4px;background:#2e9be3;height:12px;animation:alpha35wave 1s ease-in-out infinite}.alpha35-wave i:nth-child(2),.alpha35-wave i:nth-child(6){height:20px;animation-delay:.12s}.alpha35-wave i:nth-child(3),.alpha35-wave i:nth-child(5){height:28px;animation-delay:.24s}.alpha35-wave i:nth-child(4){height:34px;animation-delay:.36s}@keyframes alpha35wave{50%{transform:scaleY(.45)}}.alpha35-dictation-help{color:#60798a;margin:0 auto;max-width:420px}.alpha35-dictation-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.alpha35-transcript-box{border:1px solid #c9dce8;border-radius:12px;background:#f6fbfe;padding:10px}.alpha35-transcript-box b{display:block;color:#123e5a;margin-bottom:6px}.alpha35-transcript{width:100%;font-size:16px!important;min-height:110px}.alpha35-dictation-message{margin:10px 0;padding:0;min-height:0;font-size:13px}.alpha35-dictation-message.ok,.alpha35-dictation-message.warn,.alpha35-dictation-message.error{padding:9px 11px;border-radius:9px}.alpha35-dictation-message.ok{background:#edf9f0;color:#196837}.alpha35-dictation-message.warn{background:#fff7dc;color:#785900}.alpha35-dictation-message.error{background:#fff0f0;color:#9b2430}.alpha35-insert-dictation{width:100%;font-size:16px!important;padding:12px!important}.dictation-open{overflow:hidden}.btn.danger{background:#ffeaea!important;color:#a8202d!important;border-color:#eca4aa!important}.hidden{display:none!important}
@media(max-width:720px){.alpha35-voice-row{grid-template-columns:1fr 1fr;gap:7px}.alpha35-action{min-height:62px;padding:8px 9px;gap:7px}.alpha35-action-icon{font-size:24px}.alpha35-action b{font-size:14px}.alpha35-action small{font-size:10px}.alpha35-photo-picker{padding:8px}.alpha35-photo-button>b{font-size:14px}.alpha35-photo-button>small{font-size:10px}.alpha35-photo-thumb{width:76px;height:66px}.alpha35-dictation-modal{padding:8px;align-items:flex-end}.alpha35-dictation-panel{width:100%;border-radius:18px 18px 0 0;max-height:94vh;padding:0 14px 14px}.alpha35-dictation-head{padding-top:13px}.alpha35-dictation-head h3{font-size:20px}.alpha35-listening{padding-top:16px}.alpha35-mic-orb{width:86px;height:86px;font-size:42px;box-shadow:0 0 0 12px #e1f0fb,0 0 0 24px #f0f8fd}.alpha35-dictation-title{margin-top:27px;font-size:21px}.alpha35-dictation-help{font-size:13px}.alpha35-dictation-controls .btn{font-size:13px!important;padding:10px 6px!important}}


/* Alpha 36 · acciones multimedia compactas y calendario por color de casilla */
.alpha36-media-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important;align-items:start}.alpha36-media-actions .audio-recorder,.alpha36-media-actions .media-picker{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:4px!important;min-width:0!important;min-height:0!important;padding:0!important;border:0!important;background:transparent!important}.alpha36-media-action{width:100%;height:48px!important;min-height:48px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;padding:7px 9px!important;border:1px solid #b9cedb!important;border-radius:10px!important;background:#f7fbfd!important;color:#123e5a!important;cursor:pointer!important;font-size:14px!important;font-weight:800!important;line-height:1!important;white-space:nowrap!important}.alpha36-media-action:hover{background:#eef7fc!important;border-color:#8fbad3!important}.alpha36-media-action>span{font-size:20px!important;line-height:1!important}.alpha36-media-action>b{font-size:14px!important}.alpha36-dictate{background:#eaf6ff!important;border-color:#9ecce7!important}.alpha36-photo-picker .alpha36-media-action{background:#eefaf7!important;border-color:#a9d9d0!important;color:#087463!important}.alpha36-media-actions .draft-photo-status,.alpha36-media-actions .draft-audio-status{font-size:10px!important;line-height:1.15!important;text-align:center!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;min-height:0!important;margin:0!important}.draft-photo-previews{grid-column:1/-1!important;margin-top:2px!important}.alpha36-media-actions + .draft-photo-previews:empty{display:none!important}

/* El estado del calendario se comunica por el fondo completo, no por una luz que tapa el día */
.month-cell .cell-indicator{display:none!important}.month-cell.state-red{background:#f5b7bd!important;border-color:#dc6671!important;color:#64131b!important}.month-cell.state-green{background:#bde8c8!important;border-color:#6fbe83!important;color:#174d27!important}.month-cell.state-black{background:#31363c!important;border-color:#161a1e!important;color:#fff!important}.month-cell.state-amber{background:#f8dfaa!important;border-color:#d3a64d!important;color:#62450c!important}.month-cell.state-blank{background:#fbfdfe!important;border-color:#dbe5ec!important;color:#17324a!important}.month-cell.saturday.state-blank{background:#f3f8fc!important}.month-cell.sunday.state-blank{background:#fff3f3!important}.month-cell b{position:relative!important;z-index:2!important}.month-cell.state-red em{color:#8b111d!important;background:rgba(255,255,255,.72)!important;border-radius:999px!important;min-width:16px!important;text-align:center!important;padding:1px 4px!important}.month-cell.state-black small{color:#fff!important}.cal-state{border-radius:4px!important;width:14px!important;height:14px!important}.cal-state.red{background:#f5b7bd!important;border:1px solid #dc6671!important}.cal-state.green{background:#bde8c8!important;border:1px solid #6fbe83!important}.cal-state.black{background:#31363c!important;border:1px solid #161a1e!important}.cal-state.blank{background:#fbfdfe!important;border:1px solid #dbe5ec!important}

@media(max-width:900px){.alpha36-media-actions{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}.alpha36-media-action{height:44px!important;min-height:44px!important;padding:6px 5px!important;gap:4px!important;border-radius:9px!important}.alpha36-media-action>span{font-size:18px!important}.alpha36-media-action>b{font-size:12px!important}.alpha36-media-actions .draft-photo-status,.alpha36-media-actions .draft-audio-status{font-size:9px!important}.month-cell{min-height:44px!important}.month-cell b{font-size:17px!important}.month-cell em{right:3px!important;bottom:2px!important;font-size:8px!important}.simple-logbook-legend{gap:9px!important}.cal-state{width:13px!important;height:13px!important}}
@media(max-width:390px){.alpha36-media-action>b{font-size:11px!important}.alpha36-media-action>span{font-size:17px!important}.alpha36-media-actions{gap:5px!important}}


/* Alpha 37 · turno sin servicio, numeración de borradores y cierre compacto */
.alpha37-turn-status{margin:10px 0 8px}.has-novelties-status{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #9bd1ad;background:#effaf2;color:#176a37;border-radius:10px;font-weight:900}.alpha37-turn-status .no-novelties-check{margin:0!important}.alpha37-shift-sheet[data-current-shift="1"]>#shiftFeedback{margin-top:0}.alpha37-shift-sheet .shift-section:first-of-type{margin-top:0}.service-switches #noServiceToggle:checked~b{color:#7b1f27}
@media(max-width:720px){.alpha37-turn-status{margin:7px 0 6px}.has-novelties-status{padding:8px 10px;font-size:13px}.alpha37-shift-sheet[data-current-shift="1"] .shift-form{margin-top:0}.alpha37-shift-sheet[data-current-shift="1"] .shift-section{padding-top:10px}}

/* Alpha 40: Libro de novedades más compacto */
.alpha39-service-section{padding:12px 14px!important}.alpha39-service-title{margin-bottom:8px!important;display:grid!important;grid-template-columns:auto 1fr auto!important;align-items:center!important;gap:10px!important}.alpha39-service-title>div{min-width:0}.alpha39-service-title h3{margin:0!important}.alpha39-service-summary{display:none;color:#4f6270;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alpha39-service-toggle{border:1px solid #b9c9d5;background:#f5f8fa;color:#173e57;border-radius:8px;padding:6px 10px;font-weight:800;cursor:pointer}.alpha39-service-section.is-collapsed{padding:8px 12px!important}.alpha39-service-section.is-collapsed .alpha39-service-body{display:none}.alpha39-service-section.is-collapsed .alpha39-service-title{margin-bottom:0!important}.alpha39-service-section.is-collapsed .alpha39-service-summary{display:block}.alpha39-service-section.is-collapsed .shift-section-title>span{width:28px;height:28px;line-height:28px}.alpha39-service-section.is-collapsed h3{font-size:1rem!important}.alpha31-novelties{padding-top:10px!important}.alpha31-novelties>.shift-section-title{margin-bottom:8px!important}.novelty-list.alpha30-novelty-list{display:grid;gap:5px!important}.novelty-card.novelty-compact summary{min-height:38px!important;padding:7px 9px!important;gap:7px!important}.novelty-card.novelty-compact summary .novelty-number{font-size:.88rem}.novelty-card.novelty-compact summary strong{font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alpha31-drafts{margin-top:7px!important}.draft-novelty{padding:10px!important}.draft-head{margin-bottom:7px!important}.alpha31-novelty-grid{gap:8px!important}.alpha35-text-field textarea{min-height:82px!important}.draft-save-row{margin-top:4px!important}.draft-save-row small{font-size:.74rem;line-height:1.25}.alpha37-turn-status{margin:7px 0 6px!important}.shift-close-warning{padding:8px 10px!important;margin:6px 0!important;font-size:.82rem!important}.alpha31-finalbar{padding:9px 10px!important}.history-heading{margin-top:14px!important}.matrix-toolbar{margin-top:7px!important}.simple-logbook-legend{margin:7px 0 9px!important}.shift-month{margin-bottom:10px!important}.month-cell.state-black,.month-cell.state-black b,.month-cell.state-black .weekday-mini,.month-cell.state-black em,.month-cell.state-black small{color:#fff!important}.month-cell.state-black b{font-weight:900!important}
@media(max-width:700px){.current-shift-shell.card{margin-bottom:10px!important}.current-shift-banner{padding:10px 12px!important}.current-shift-banner h2{font-size:1.02rem!important;margin:2px 0!important}.current-shift-banner p{font-size:.78rem!important;line-height:1.25!important;margin:2px 0 0!important}.alpha39-service-section{padding:9px!important}.alpha39-service-title{gap:7px!important}.alpha39-service-toggle{padding:5px 8px;font-size:.78rem}.alpha39-service-section.is-collapsed h3{font-size:.92rem!important}.alpha39-service-summary{font-size:.72rem}.alpha31-novelties{padding:9px!important}.draft-novelty{padding:8px!important}.alpha31-novelty-grid{gap:6px!important}.alpha35-text-field textarea{min-height:70px!important}.alpha36-media-actions{gap:5px!important}.alpha36-media-action{min-height:40px!important;padding:5px 3px!important}.alpha36-media-action span{font-size:1rem!important}.alpha36-media-action b{font-size:.7rem!important}.draft-save-row .btn{min-height:40px!important}.history-heading{margin-top:10px!important}.shift-calendar-stack{gap:8px!important}}


/* Alpha 41 · ficha histórica tipo folio */
.alpha41-ficha-shell{max-width:940px;margin:0 auto}.alpha41-ficha-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px}.alpha41-ficha-toolbar>div:first-child{display:flex;flex-direction:column}.alpha41-ficha-toolbar small{color:#5c7283}.alpha41-ficha-actions{display:flex;gap:8px;flex-wrap:wrap}.alpha41-folio{background:#fff;color:#183247;border:1px solid #d3e0e8;border-radius:4px;box-shadow:0 12px 34px rgba(10,48,73,.13);padding:18px 22px 24px;min-height:720px}.alpha41-folio-head{text-align:center;border-bottom:2px solid #0d4f7c;padding-bottom:10px;margin-bottom:14px}.alpha41-folio-head img{display:block;width:100%;max-height:126px;object-fit:contain;margin:0 auto 8px}.alpha41-folio-head h2{font-size:20px;letter-spacing:.02em;margin:4px 0;color:#0d4f7c}.alpha41-folio-head p{margin:0;font-weight:700;color:#52697a}.alpha41-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:14px}.alpha41-summary-grid>div{border:1px solid #cbdbe5;border-radius:7px;padding:8px 10px;background:#f8fbfd;display:flex;flex-direction:column;gap:2px}.alpha41-summary-grid span,.alpha41-data-list dt{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#688091;font-weight:800}.alpha41-summary-grid b{font-size:14px}.alpha41-summary-wide{grid-column:1/-1}.print-staff{display:none}.alpha41-novelty-list{display:flex;flex-direction:column;gap:15px}.alpha41-novelty-card{border:1px solid #bfcfda;border-radius:8px;overflow:hidden;break-inside:avoid;background:#fff}.alpha41-novelty-title{display:flex;justify-content:space-between;align-items:center;padding:8px 11px;background:#eaf3f8;border-bottom:1px solid #c8d9e4}.alpha41-novelty-title span{font-weight:900;color:#0d4f7c}.alpha41-novelty-title b{font-size:13px;color:#4d6678}.alpha41-data-list{display:grid;grid-template-columns:1fr 1fr;margin:0}.alpha41-data-list>div{padding:9px 11px;border-bottom:1px solid #e2ebf0}.alpha41-data-list>div:nth-child(odd):not(.wide){border-right:1px solid #e2ebf0}.alpha41-data-list .wide{grid-column:1/-1}.alpha41-data-list dt{margin-bottom:3px}.alpha41-data-list dd{margin:0;line-height:1.45;font-size:14px;white-space:normal}.alpha41-photo-block{padding:10px 11px 12px}.alpha41-photo-block h4{font-size:12px;letter-spacing:.05em;color:#52697a;margin:0 0 8px}.alpha41-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.alpha41-photo-grid figure{margin:0;border:1px solid #d5e1e8;border-radius:6px;background:#f6f9fb;padding:5px;display:flex;align-items:center;justify-content:center;min-height:160px}.alpha41-photo-grid img{max-width:100%;max-height:310px;object-fit:contain}.alpha41-attachment{padding:8px 11px;border-top:1px solid #e2ebf0;background:#f8fbfd}.alpha41-empty{padding:20px;text-align:center;color:#60788a;border:1px dashed #cbdbe5;border-radius:8px}.alpha41-folio-footer{margin-top:14px;padding-top:9px;border-top:1px solid #cbdbe5;font-size:12px;color:#60788a}.alpha41-admin-row{display:flex;justify-content:flex-end;margin-top:12px}.shift-modal-panel:has(.alpha41-ficha-shell){width:min(1020px,96vw);max-width:1020px}.shift-modal-body:has(.alpha41-ficha-shell){padding:18px;background:#edf3f7}.shift-modal-panel:has(.alpha41-ficha-shell) .shift-modal-close{z-index:4}
@media(max-width:700px){.alpha41-folio{padding:10px 10px 16px;min-height:0}.alpha41-ficha-toolbar{align-items:flex-start}.alpha41-ficha-actions{justify-content:flex-end}.alpha41-summary-grid{grid-template-columns:1fr 1fr}.alpha41-summary-grid>div:first-child,.alpha41-summary-wide{grid-column:1/-1}.alpha41-data-list{grid-template-columns:1fr}.alpha41-data-list>div,.alpha41-data-list .wide{grid-column:1}.alpha41-data-list>div:nth-child(odd):not(.wide){border-right:0}.alpha41-photo-grid{grid-template-columns:1fr}.alpha41-photo-grid figure{min-height:120px}.alpha41-folio-head h2{font-size:16px}.alpha41-folio-head img{max-height:90px}.shift-modal-body:has(.alpha41-ficha-shell){padding:10px}}
@media print{body *{visibility:hidden!important}.shift-modal,.shift-modal *{visibility:visible!important}.shift-modal{position:absolute!important;inset:0!important;background:#fff!important;overflow:visible!important}.shift-modal-backdrop,.shift-modal-close,.no-print{display:none!important}.shift-modal-panel{position:static!important;transform:none!important;width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;box-shadow:none!important;border:0!important}.shift-modal-body{padding:0!important;background:#fff!important;overflow:visible!important}.alpha41-folio{box-shadow:none!important;border:0!important;padding:0!important;min-height:0!important}.screen-staff{display:none!important}.print-staff{display:block!important}.alpha41-photo-grid{grid-template-columns:repeat(2,1fr)!important}.alpha41-photo-grid figure{break-inside:avoid!important;min-height:0!important}.alpha41-novelty-card{break-inside:avoid!important}}

/* Alpha 42: ficha institucional, cierre visible y exportación depurada */
.alpha42-folio-head{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:22px;text-align:left;border-bottom:2px solid #0d4f7c;padding:4px 0 12px;margin-bottom:14px}.alpha42-brand{display:flex;align-items:center;gap:12px}.alpha42-brand img{width:82px!important;height:96px!important;max-height:none!important;object-fit:contain!important;margin:0!important}.alpha42-brand div{display:flex;flex-direction:column;line-height:1.08}.alpha42-brand strong{font-size:16px;color:#0d4f7c;letter-spacing:.035em}.alpha42-brand span{font-size:11px;font-weight:800;color:#52697a;letter-spacing:.05em;margin-top:4px}.alpha42-ficha-heading{text-align:center;padding-right:28px}.alpha42-ficha-heading h2{font-size:20px;margin:0 0 5px;color:#0d4f7c}.alpha42-ficha-heading p{margin:0;font-weight:700;color:#52697a;font-size:13px}.alpha42-close-ficha{width:38px;height:38px;border:1px solid #c7d9e4;border-radius:50%;background:#fff;color:#23475f;font-size:27px;line-height:32px;display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 8px rgba(15,55,80,.12);padding:0}.alpha42-close-ficha:hover{background:#edf5fa;color:#0d4f7c}.alpha41-ficha-actions{align-items:center}.alpha42-internal-only{}
@media(max-width:700px){.alpha42-folio-head{grid-template-columns:1fr;gap:8px;text-align:center}.alpha42-brand{justify-content:center}.alpha42-brand img{width:62px!important;height:73px!important}.alpha42-brand strong{font-size:14px}.alpha42-ficha-heading{padding-right:0}.alpha42-ficha-heading h2{font-size:17px}.alpha42-ficha-heading p{font-size:11px}.alpha42-close-ficha{width:36px;height:36px}}
@media print{.alpha42-internal-only{display:none!important}.alpha42-close-ficha{display:none!important}.alpha42-folio-head{grid-template-columns:170px 1fr!important;gap:14px!important}.alpha42-brand img{width:62px!important;height:73px!important}.alpha42-brand strong{font-size:13px!important}.alpha42-brand span{font-size:9px!important}.alpha42-ficha-heading{padding-right:0!important}.alpha42-ficha-heading h2{font-size:17px!important}.alpha42-ficha-heading p{font-size:10px!important}}

/* Alpha 42.1: cierre funcional de ficha junto a exportación */
.alpha42-1-ficha-actions{justify-content:flex-start!important;gap:8px!important;flex-wrap:wrap}.alpha42-1-ficha-actions .alpha42-close-ficha{flex:0 0 auto}.alpha41-ficha-toolbar{align-items:center}.alpha41-ficha-actions{display:flex}
@media(max-width:700px){.alpha42-1-ficha-actions{width:100%;justify-content:flex-start!important}.alpha42-1-ficha-actions .btn{min-height:38px}.alpha42-1-ficha-actions .alpha42-close-ficha{margin-left:0}}

/* Alpha 42.2 · cierre fiable de ficha */
.alpha42-2-close-link{text-decoration:none!important;flex:0 0 auto}.shift-modal-panel:has(.alpha41-ficha-shell)>.shift-modal-close{display:none!important}.alpha42-1-ficha-actions{justify-content:flex-start!important}

/* Alpha 42.3 · cierre real del visor y ficha externa depurada */
.alpha42-3-close-link{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:40px;border:1px solid #b8c9d6;border-radius:10px;background:#fff;color:#8b1f28;font-size:27px;font-weight:800;text-decoration:none;line-height:1}
.alpha42-3-close-link:hover{background:#fff2f3;border-color:#dcaab0}
@media(max-width:700px){.alpha42-3-close-link{min-width:40px;height:38px;font-size:25px}}

/* Alpha 42.4: ficha histórica modal fiable */
.alpha42-4-close-button{border:0;cursor:pointer;font:inherit;line-height:1}

/* Alpha 42.5 · ficha histórica como modal real, sin sustituir la ficha operativa */
.shift-modal.open:has(.alpha41-ficha-shell){display:flex!important;align-items:center!important;justify-content:center!important;padding:2.5vh 2vw!important;box-sizing:border-box!important;}
.shift-modal:has(.alpha41-ficha-shell) .shift-modal-backdrop{position:fixed!important;inset:0!important;background:rgba(8,27,40,.62)!important;backdrop-filter:blur(3px)!important;}
.shift-modal:has(.alpha41-ficha-shell) .shift-modal-panel{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;width:min(1080px,96vw)!important;max-width:1080px!important;height:auto!important;max-height:94vh!important;border-radius:14px!important;overflow:auto!important;background:#edf3f7!important;box-shadow:0 22px 70px rgba(4,24,38,.38)!important;z-index:2!important;}
.shift-modal:has(.alpha41-ficha-shell) .shift-modal-body{padding:16px!important;}
.shift-modal:has(.alpha41-ficha-shell)>.shift-modal-panel>.shift-modal-close{display:none!important;}
.alpha42-4-close-button{width:40px!important;height:40px!important;border-radius:50%!important;border:1px solid #cad9e3!important;background:#fff!important;color:#174e70!important;font-size:22px!important;line-height:1!important;cursor:pointer!important;box-shadow:0 2px 8px rgba(10,48,73,.12)!important;}
.alpha42-4-close-button:hover{background:#f1f6f9!important;}
@media(max-width:700px){
  .shift-modal.open:has(.alpha41-ficha-shell){padding:1vh 6px!important;align-items:flex-start!important;}
  .shift-modal:has(.alpha41-ficha-shell) .shift-modal-panel{width:calc(100vw - 12px)!important;max-height:98vh!important;border-radius:12px!important;}
  .shift-modal:has(.alpha41-ficha-shell) .shift-modal-body{padding:8px!important;}
}

/* Alpha 43 · Libro de Novedades profesional: modal real, selección y pantalla compacta */
.shift-modal.ficha-open{display:flex!important;align-items:center!important;justify-content:center!important;padding:2.5vh 2vw!important;box-sizing:border-box!important;}
.shift-modal.ficha-open .shift-modal-backdrop{position:fixed!important;inset:0!important;background:rgba(8,27,40,.66)!important;backdrop-filter:blur(3px)!important;}
.shift-modal.ficha-open .shift-modal-panel{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;width:min(1080px,96vw)!important;max-width:1080px!important;height:auto!important;max-height:94vh!important;border-radius:14px!important;overflow:auto!important;background:#edf3f7!important;box-shadow:0 22px 70px rgba(4,24,38,.40)!important;z-index:2!important;}
.shift-modal.ficha-open .shift-modal-body{padding:16px!important;}
.shift-modal.ficha-open>.shift-modal-panel>.shift-modal-close{display:none!important;}
.alpha43-ficha-toolbar{gap:10px!important;align-items:flex-start!important;}
.alpha43-ficha-actions{justify-content:flex-start!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;}
.alpha43-close-button{order:50;width:40px!important;height:40px!important;border-radius:10px!important;font-size:24px!important;color:#7d1d27!important;border:1px solid #d4b1b7!important;background:#fff7f8!important;}
.alpha43-close-button:hover{background:#ffecee!important;}
.alpha43-selection-panel{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;padding:10px 12px;border:1px solid #c6d9e5;border-radius:12px;background:#f7fbfd;color:#183a52;}
.alpha43-selection-panel b{display:block;font-size:13px}.alpha43-selection-panel small{display:block;font-size:10px;color:#637b8d;margin-top:2px}.alpha43-selection-actions{display:flex;gap:6px;flex-wrap:wrap}.alpha43-novelty-check{display:flex;align-items:center;gap:8px;margin:0 0 8px;padding:8px 10px;border:1px solid #d9e5ec;border-radius:10px;background:#f9fcfe;font-size:11px;font-weight:900;color:#264f68}.alpha43-novelty-check input{width:17px;height:17px}.alpha43-not-selected{opacity:.45}.empty-novelty{display:none!important}.alpha31-novelties{padding-top:6px!important}.alpha31-novelties>.shift-section-title{margin-bottom:3px!important}.alpha31-drafts{margin-top:2px!important}.novelty-list.alpha30-novelty-list:empty{display:none!important;margin:0!important;padding:0!important}.alpha37-turn-status{margin-top:4px!important}.alpha36-media-actions{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}.alpha36-media-action{min-height:38px!important;padding:5px 6px!important}.alpha36-media-action span{font-size:17px!important}.alpha36-media-action b{font-size:11px!important}.draft-save-row .btn{padding:9px 14px!important}.draft-save-row small{font-size:11px!important}
@media print{.alpha43-not-selected{display:none!important}.alpha43-selection-panel,.alpha43-novelty-check,.alpha43-ficha-toolbar,.shift-modal-backdrop,.shift-modal-close{display:none!important}.shift-modal,.shift-modal.ficha-open,.shift-modal-panel,.shift-modal-body{display:block!important;position:static!important;inset:auto!important;width:auto!important;max-width:none!important;max-height:none!important;box-shadow:none!important;background:#fff!important;padding:0!important;overflow:visible!important}.alpha41-ficha-shell{background:#fff!important}.alpha41-folio{box-shadow:none!important;margin:0!important;border:0!important}}
@media(max-width:700px){.shift-modal.ficha-open{padding:1vh 6px!important;align-items:flex-start!important}.shift-modal.ficha-open .shift-modal-panel{width:calc(100vw - 12px)!important;max-height:98vh!important;border-radius:12px!important}.shift-modal.ficha-open .shift-modal-body{padding:8px!important}.alpha43-ficha-toolbar{align-items:flex-start!important}.alpha43-ficha-actions{width:100%!important}.alpha43-close-button{width:42px!important;height:40px!important}.alpha43-selection-panel{align-items:flex-start;flex-direction:column}.alpha36-media-actions{grid-template-columns:repeat(3,minmax(0,1fr))!important}.alpha36-media-action b{font-size:10px!important}}
.file-transfer-progress{position:fixed;inset:0;z-index:10000;background:rgba(8,27,40,.34);display:flex;align-items:flex-start;justify-content:center;padding:18px;backdrop-filter:blur(1px)}

/* Alpha 46 · Libro registro de documentos */
.register-filter{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px}.register-filter label{display:flex;flex-direction:column;gap:5px;min-width:0}.register-filter label.wide{grid-column:span 2}.register-filter label>span{font-size:10px;font-weight:900;color:#567185;text-transform:uppercase}.register-filter input,.register-filter select{width:100%;height:41px;border:1px solid #c8d7e1;border-radius:9px;padding:0 10px;background:#fff;color:#173b55;font:inherit}.register-filter-actions{display:flex;gap:7px;align-items:end}.register-list-head,.register-row{display:grid;grid-template-columns:90px minmax(230px,1.6fr) minmax(200px,1.3fr) minmax(155px,.9fr) 80px;gap:12px;align-items:center}.register-list-head{padding:7px 13px;font-size:9px;font-weight:900;color:#718797}.register-list{display:grid;gap:7px}.register-row{background:#fff;border:1px solid #dbe6ed;border-radius:12px;padding:11px 13px;text-decoration:none;color:#173b55}.register-row:hover{border-color:#9dc8df;box-shadow:0 4px 14px #153e5b12}.register-row>strong{font-size:25px;color:#126b9f}.register-row>strong small{font-size:12px;color:#7590a1}.register-row>div{min-width:0}.register-row>div>b,.register-row>div>small{display:block;overflow:hidden;text-overflow:ellipsis}.register-row>div>b{font-size:12px;white-space:nowrap}.register-row>div>small{font-size:9px;color:#748b9b;margin-top:4px;white-space:nowrap}.register-file-state{display:flex;align-items:center;justify-content:space-between}.register-file-state i{font-size:24px;color:#8aa8ba;font-style:normal}.register-number-notice,.register-import-info{display:flex;flex-direction:column;gap:4px;background:#fff7da;border:1px solid #ead58c;color:#664d0c;border-radius:11px;padding:12px 14px;margin-bottom:13px}.register-number-notice span,.register-import-info span{font-size:12px;line-height:1.45}.register-readonly{display:grid;grid-template-columns:1fr 1fr;gap:12px}.register-readonly>div{display:flex;flex-direction:column;gap:4px;border-bottom:1px solid #e7eef3;padding:9px}.register-readonly>div.wide{grid-column:1/-1}.register-readonly span{font-size:10px;color:#708697;font-weight:900;text-transform:uppercase}.register-readonly b{font-size:14px}.errorlist{margin:4px 0 0!important;padding:0!important;color:#a12632!important;font-size:11px!important}
@media(max-width:1000px){.register-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.register-list-head{display:none}.register-row{grid-template-columns:72px 1fr 1fr}.register-row>div:nth-child(4){grid-column:2}.register-file-state{grid-column:3;grid-row:2}}
@media(max-width:760px){.register-filter{grid-template-columns:1fr}.register-filter label.wide{grid-column:auto}.register-filter-actions .btn{flex:1;text-align:center}.register-row{grid-template-columns:58px 1fr;padding:10px}.register-row>strong{font-size:21px;grid-row:1/4}.register-row>div{grid-column:2!important;grid-row:auto!important}.register-row>div:nth-child(3){display:none}.register-file-state{justify-content:flex-start;gap:8px}.register-readonly{grid-template-columns:1fr}.register-readonly>div.wide{grid-column:auto}}
.file-transfer-progress[hidden]{display:none}
.file-transfer-card{width:min(560px,calc(100vw - 28px));background:#fff;border:1px solid #c8dce8;border-radius:14px;padding:13px 15px;box-shadow:0 14px 45px rgba(9,37,56,.28)}
.file-transfer-head{display:flex;align-items:center;gap:10px;color:#173f59}.file-transfer-head>span{width:34px;height:34px;border-radius:10px;background:#e8f4fb;display:grid;place-items:center;font-size:18px;color:#176b9c}.file-transfer-head>div{display:flex;flex-direction:column;min-width:0;flex:1}.file-transfer-head b{font-size:13px}.file-transfer-head small{font-size:9px;color:#6a8292;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-transfer-head strong{font-size:12px;color:#176b9c;min-width:38px;text-align:right}
.file-transfer-track{height:8px;background:#e6eef3;border-radius:999px;overflow:hidden;margin-top:10px}.file-transfer-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,#1781bd,#45b878);border-radius:inherit;transition:width .18s ease}.file-transfer-progress.indeterminate .file-transfer-track i{width:38%;animation:fileTransferMove 1.05s ease-in-out infinite}.file-transfer-progress.success .file-transfer-track i{width:100%;background:#35a866}.file-transfer-progress.error .file-transfer-track i{width:100%;background:#c43d49}
@keyframes fileTransferMove{0%{transform:translateX(-110%)}100%{transform:translateX(290%)}}
@media(max-width:760px){.file-transfer-progress{padding:8px;align-items:flex-start}.file-transfer-card{width:100%;padding:10px 12px;border-radius:11px}.file-transfer-head b{font-size:11px}.file-transfer-head small{font-size:8px}}


/* Alpha 46.2 · buscador móvil simplificado + nombres de hipervínculos históricos */
.register-mobile-search,.register-mobile-summary{display:none}.register-source-name{color:#2f6f96!important;font-weight:800}.register-file-state .neutral{color:#566f80;font-weight:900}.register-historical-link{display:flex;flex-direction:column;gap:4px;margin:0 0 13px;padding:11px 13px;border:1px solid #bfd6e4;border-radius:11px;background:#f5fbff;color:#244f69}.register-historical-link>span{font-size:9px;font-weight:900;letter-spacing:.03em}.register-historical-link>b{font-size:13px}.register-historical-link>small{font-size:9px;color:#6e8492;overflow-wrap:anywhere}
@media(max-width:760px){
  .register-filter-desktop{display:none!important}.register-mobile-search{display:block;padding:10px;margin-bottom:10px}.register-head{gap:8px}.register-head .page-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:6px}.register-head .page-actions .btn{min-width:0;text-align:center;padding:9px 7px;font-size:10px}.register-head .page-actions .btn.primary{grid-column:1/-1;font-size:12px}
  .register-kpis{grid-template-columns:1fr 1fr!important;gap:6px!important}.register-kpis>div:nth-child(2),.register-kpis>div:nth-child(4){display:none!important}.register-kpis>div{min-height:58px!important;padding:8px 10px!important}.register-kpis b{font-size:18px!important}.register-kpis span{font-size:8px!important}
  .register-mobile-search-main{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:6px;border:1px solid #a9c9dc;background:#fff;border-radius:12px;padding:5px 5px 5px 8px}.register-mobile-search-main>span{font-size:23px;color:#47758f;text-align:center}.register-mobile-search-main input{height:40px;min-width:0;border:0!important;outline:0!important;padding:0 4px!important;font-size:14px!important;background:transparent!important}.register-mobile-search-main .btn{height:38px;padding:0 12px;font-size:11px}
  .register-mobile-quick{display:grid;grid-template-columns:minmax(100px,.7fr) minmax(145px,1fr) auto;gap:7px;align-items:end;margin-top:8px}.register-mobile-quick>label{display:flex;flex-direction:column;gap:3px}.register-mobile-quick label>span{font-size:8px;font-weight:900;color:#637c8d;text-transform:uppercase}.register-mobile-quick select{width:100%;height:38px;min-width:0;border:1px solid #c8d8e2;border-radius:9px;background:#fff;padding:0 8px;font:inherit;font-size:11px}.register-mobile-clear{grid-column:3;grid-row:1;align-self:center;color:#78666a;font-size:9px;font-weight:900;text-decoration:none;padding:7px 2px}
  .register-mobile-more{position:relative}.register-mobile-more[open]{grid-column:1/-1}.register-mobile-more>summary{height:38px;display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid #c8d8e2;border-radius:9px;background:#fff;color:#315a73;font-size:10px;font-weight:900;cursor:pointer;list-style:none;padding:0 8px}.register-mobile-more>summary::-webkit-details-marker{display:none}.register-mobile-more>summary i{color:#0d83bd;font-size:17px;line-height:0}.register-mobile-more[open]>summary{border-color:#8dbcd4;background:#f2f9fd}.register-mobile-more-fields{grid-column:1/-1;display:grid;gap:8px;margin-top:7px;padding:10px;border:1px solid #cfe0ea;border-radius:10px;background:#f7fbfd}.register-mobile-more-fields label{display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:8px}.register-mobile-more-fields label>span{font-size:9px}.register-mobile-more-fields select{height:40px;font-size:11px}.register-mobile-more-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:2px}.register-mobile-more-actions .btn{text-align:center}
  .register-list{gap:6px}.register-row{grid-template-columns:52px minmax(0,1fr) 30px!important;grid-template-rows:auto auto auto!important;gap:3px 8px!important;padding:9px 9px!important;border-radius:10px}.register-row>strong{grid-column:1!important;grid-row:1/4!important;align-self:start;font-size:20px!important;line-height:1.05}.register-row>strong small{display:block;font-size:9px!important;margin-top:2px}.register-doc{grid-column:2!important;grid-row:1!important}.register-doc>b{font-size:12px!important;white-space:normal!important;line-height:1.2}.register-doc>small{font-size:8px!important;margin-top:2px!important;white-space:normal!important;line-height:1.25}.register-source-name{display:block!important;font-size:9px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;margin-top:4px!important}.register-involved,.register-agent{display:none!important}.register-file-state{grid-column:3!important;grid-row:1/4!important;align-self:stretch;display:flex!important;flex-direction:column;justify-content:center!important;gap:2px!important}.register-file-state span{display:none!important}.register-file-state i{font-size:26px!important}.register-mobile-summary{display:flex!important;grid-column:2!important;grid-row:2!important;flex-direction:column;min-width:0;gap:2px;margin-top:2px}.register-mobile-summary span{font-size:10px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#34566b}.register-mobile-summary small{font-size:8px;color:#718897;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pagination{gap:7px!important;align-items:center!important}.pagination>span{font-size:9px!important}.pagination .btn{padding:8px 9px!important;font-size:9px!important}
}
@media(max-width:430px){.register-mobile-quick{grid-template-columns:88px minmax(125px,1fr) auto}.register-mobile-search-main{grid-template-columns:25px minmax(0,1fr) auto}.register-mobile-search-main input{font-size:13px!important}.register-mobile-search-main .btn{padding:0 9px}.register-head .page-actions{grid-template-columns:1fr 1fr}}


/* Alpha 46.2.2 · interfaz compacta unica en PC/movil */
.register-filter-desktop{display:none!important}
.register-mobile-search{display:block!important;padding:10px;margin-bottom:10px}
.register-statusline{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0 0 10px;flex-wrap:wrap}
.register-statusline>div{display:flex;align-items:baseline;gap:6px;border:1px solid #d7e5ed;background:#fff;border-radius:11px;padding:8px 12px;min-height:39px;box-sizing:border-box}
.register-statusline .register-result-count{margin-right:auto;background:#f7fbfd}
.register-statusline b{font-size:16px;color:#176f9f}.register-statusline span{font-size:9px;font-weight:900;color:#617b8d;text-transform:uppercase;letter-spacing:.035em}
.register-next-number b{font-size:19px;color:#126b9f}
.register-mobile-search-main{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:7px;border:1px solid #a9c9dc;background:#fff;border-radius:12px;padding:5px 5px 5px 9px}
.register-mobile-search-main>span{font-size:23px;color:#47758f;text-align:center}.register-mobile-search-main input{height:42px;min-width:0;border:0!important;outline:0!important;padding:0 5px!important;font-size:14px!important;background:transparent!important}.register-mobile-search-main .btn{height:40px;padding:0 16px;font-size:11px}
.register-mobile-quick{display:grid;grid-template-columns:160px 190px auto;gap:8px;align-items:end;margin-top:8px}.register-mobile-quick>label{display:flex;flex-direction:column;gap:3px}.register-mobile-quick label>span{font-size:8px;font-weight:900;color:#637c8d;text-transform:uppercase}.register-mobile-quick select{width:100%;height:38px;min-width:0;border:1px solid #c8d8e2;border-radius:9px;background:#fff;padding:0 8px;font:inherit;font-size:11px}.register-mobile-clear{grid-column:3;grid-row:1;align-self:center;color:#78666a;font-size:9px;font-weight:900;text-decoration:none;padding:7px 2px}
.register-mobile-more{position:relative}.register-mobile-more[open]{grid-column:1/-1}.register-mobile-more>summary{height:38px;display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid #c8d8e2;border-radius:9px;background:#fff;color:#315a73;font-size:10px;font-weight:900;cursor:pointer;list-style:none;padding:0 8px}.register-mobile-more>summary::-webkit-details-marker{display:none}.register-mobile-more>summary i{color:#0d83bd;font-size:17px;line-height:0}.register-mobile-more[open]>summary{border-color:#8dbcd4;background:#f2f9fd}.register-mobile-more-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:8px;margin-top:7px;padding:10px;border:1px solid #cfe0ea;border-radius:10px;background:#f7fbfd}.register-mobile-more-fields label{display:flex;flex-direction:column;gap:4px;min-width:0}.register-mobile-more-fields select{height:40px;font-size:11px}.register-mobile-more-actions{display:flex;align-items:end;gap:7px}.register-mobile-more-actions .btn{text-align:center}
.register-upload-error{display:block;margin-top:5px;color:#a12632;font-size:10px;font-weight:800;line-height:1.35}.register-upload-error[hidden]{display:none!important}
@media(max-width:760px){
 .register-statusline{justify-content:stretch;gap:6px}.register-statusline>div{flex:1 1 auto;padding:7px 9px;min-height:36px}.register-statusline .register-result-count{margin-right:0}.register-statusline b{font-size:14px}.register-next-number b{font-size:17px}
 .register-mobile-search{padding:10px!important}.register-mobile-more-fields{grid-template-columns:1fr!important}.register-mobile-more-fields label{display:grid!important;grid-template-columns:92px minmax(0,1fr)!important;align-items:center!important;gap:8px!important}.register-mobile-more-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}.register-mobile-quick{grid-template-columns:minmax(100px,.7fr) minmax(145px,1fr) auto!important}
}
@media(max-width:430px){.register-mobile-quick{grid-template-columns:88px minmax(125px,1fr) auto!important}.register-statusline span{font-size:8px}.register-next-number b{font-size:16px}}


/* Alpha 46.2.3 · buscador visible en PC y lógica visual de libro vigente/histórico */
.register-unified-search{display:block!important;padding:10px;margin-bottom:10px}
@media(max-width:760px){.register-unified-search{display:block!important;padding:10px!important}}

/* v2.0 Alpha 47 · Objetos perdidos y depositados */
.objects-head .page-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.btn.primary.soft{background:#eef7fd;color:#126da8;border-color:#bcdced}.object-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 0 12px}.object-kpis a{background:#fff;border:1px solid #dce7ee;border-radius:12px;padding:12px;text-decoration:none;display:flex;flex-direction:column;box-shadow:0 2px 8px #163b5b0b}.object-kpis b{font-size:22px;color:#116da5}.object-kpis span{font-size:9px;color:#6f8494;text-transform:uppercase;font-weight:850;margin-top:2px}.object-tabs{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0 0 10px}.object-tabs a{background:#fff;border:1px solid #dce6ed;border-radius:12px;padding:11px 14px;text-decoration:none;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px}.object-tabs a>span{font-size:21px}.object-tabs a>b{font-size:13px}.object-tabs a>small{font-size:9px;color:#7890a0}.object-tabs a.active{border:2px solid #1778b8;background:#eff8fe}.object-search{background:#fff;border:1px solid #dfe8ef;border-radius:14px;padding:11px;margin-bottom:10px}.object-search-main{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;gap:8px}.object-search input,.object-search select,.object-form-card input,.object-form-card select,.object-form-card textarea,.object-state-card textarea,.object-exit-card input,.object-exit-card select,.object-exit-card textarea{width:100%;padding:10px;border:1px solid #cfdbe5;border-radius:8px;font:inherit;background:#fff}.object-search-main input[type=search]{font-size:15px}.object-advanced{margin-top:8px}.object-advanced summary{cursor:pointer;font-size:10px;font-weight:850;color:#39708f}.object-advanced>div{display:grid;grid-template-columns:150px 190px minmax(180px,1fr) auto;gap:8px;align-items:end;margin-top:8px}.object-advanced label{font-size:9px;font-weight:850;color:#657d8e}.object-advanced label>*{margin-top:3px}.object-search-result{font-size:10px;color:#687f90;margin-top:8px}.object-search-result a{color:#126da8}.object-list{display:grid;gap:7px}.object-row{display:grid;grid-template-columns:58px 128px minmax(260px,1.7fr) minmax(180px,1fr) 90px;align-items:center;gap:12px;text-decoration:none;background:#fff;border:1px solid #dce7ee;border-radius:12px;padding:9px 12px;min-height:74px}.object-row:hover{border-color:#9ec8df;box-shadow:0 4px 14px #123a5d12}.object-photo{width:54px;height:54px;border-radius:10px;background:#edf4f8;display:grid;place-items:center;overflow:hidden;font-size:24px}.object-photo img{width:100%;height:100%;object-fit:cover}.object-ref{display:flex;flex-direction:column}.object-ref b{font-size:14px;color:#176c9f}.object-ref small,.object-main small,.object-place small{font-size:8.5px;color:#7a8e9d;margin-top:3px}.object-main{min-width:0}.object-main>b{font-size:11px;color:#183e58}.object-main p{font-size:9.5px;color:#4f697b;margin:3px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.object-place{display:flex;flex-direction:column;min-width:0}.object-place>span{font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.object-status{justify-self:end;font-size:8px;font-weight:900;border-radius:999px;padding:5px 8px;background:#edf2f5;color:#536b7a}.status-pending,.status-deposited{background:#fff3d7!important;color:#8a5c08!important}.status-found{background:#e6f4ff!important;color:#12689b!important}.status-closed,.status-delivered{background:#e9f7ee!important;color:#247047!important}.status-destroyed{background:#ffe9eb!important;color:#a32a34!important}.status-sent{background:#eeeafd!important;color:#684da5!important}.status-other{background:#edf1f4!important;color:#5c6e79!important}.empty-object{text-align:center;color:#7a8d9a}.object-admin{margin-top:12px}.object-admin summary{font-weight:850;cursor:pointer}.object-admin p{color:#6b8191;font-size:10px}.object-detail-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:14px;align-items:start}.object-form-card fieldset{border:0;padding:0;margin:0}.object-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.object-form-grid label{display:flex;flex-direction:column;gap:4px;font-size:10px;font-weight:850;color:#486477}.object-form-grid .wide{grid-column:1/-1}.object-form-section{padding:8px 10px;background:#eef6fb;border-radius:8px;color:#17668f;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.object-photo-field img{width:150px;height:110px;object-fit:cover;border-radius:9px;border:1px solid #d7e2e9;margin-bottom:5px}.object-photo-field small{font-size:8px;color:#80909c}.object-form-card .errorlist{margin:0;padding:0;color:#a72b35;font-size:9px}.record-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:13px}.object-side{display:grid;gap:12px}.object-main-photo{padding:8px}.object-main-photo img{width:100%;max-height:300px;object-fit:contain;border-radius:10px;background:#f4f7f9}.object-state-card h3,.match-card h3,.custody-card h3{margin:0 0 8px;font-size:13px}.object-state-big{display:inline-block;padding:6px 9px;border-radius:999px;font-size:9px;font-weight:900;margin-bottom:10px}.object-state-card p{font-size:10px;color:#506a7c}.object-state-card label{font-size:9px;font-weight:800;color:#60798a;display:grid;gap:4px;margin:8px 0}.match-card>p{font-size:9px;color:#738797}.match-card>a,.match-link>a{display:flex;flex-direction:column;text-decoration:none;padding:8px 0;border-top:1px solid #e7eef2;min-width:0;flex:1}.match-card a b,.match-link a b{font-size:10px;color:#176c9f}.match-card a span,.match-link a span{font-size:9px;margin-top:2px;color:#466273}.match-card a small,.match-link a small{font-size:8px;margin-top:2px;color:#80909c}.match-link{display:flex;align-items:center;gap:8px;border-top:1px solid #e7eef2}.match-link>a{border-top:0}.custody-card>div{border-left:2px solid #d5e3ec;padding:3px 0 10px 10px;margin-left:3px;display:grid}.custody-card span{font-size:8px;color:#7d909d}.custody-card b{font-size:10px;color:#244b65}.custody-card small{font-size:8px;color:#738897}.custody-card p{font-size:9px;margin:3px 0 0;color:#526d7f}.object-exit-card .warning{margin-bottom:12px}.object-exit-card form p{display:grid;gap:4px}.object-exit-card label{font-size:10px;font-weight:850}.object-exit-summary{border-top:1px solid #e4ecf1;margin-top:8px;padding-top:5px}
@media(max-width:900px){.object-row{grid-template-columns:48px 105px minmax(200px,1fr) 75px}.object-place{display:none}.object-detail-grid{grid-template-columns:1fr}.object-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.objects-head .page-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.objects-head .page-actions .btn{text-align:center;padding:9px 6px;font-size:10px}.objects-head .page-actions .btn:last-child{grid-column:1/-1}.object-kpis{gap:6px}.object-kpis a{padding:9px}.object-kpis b{font-size:18px}.object-kpis span{font-size:7px}.object-tabs a{padding:9px;grid-template-columns:auto 1fr}.object-tabs a>small{display:none}.object-search-main{grid-template-columns:1fr 94px}.object-search-main button{grid-column:1/-1}.object-advanced>div{grid-template-columns:1fr 1fr}.object-advanced>div label:last-of-type{grid-column:1/-1}.object-advanced>div .btn{grid-column:1/-1}.object-row{grid-template-columns:50px minmax(0,1fr) auto;gap:8px;padding:8px;min-height:68px}.object-ref{grid-column:2}.object-ref b{font-size:12px}.object-ref small{font-size:7px}.object-main{grid-column:2;grid-row:2}.object-main b{font-size:10px}.object-main p{font-size:8.5px;max-width:58vw}.object-main small{font-size:7px}.object-photo{grid-row:1/3;width:46px;height:46px}.object-status{grid-column:3;grid-row:1/3;font-size:7px;padding:4px 6px}.object-form-grid{grid-template-columns:1fr}.object-form-grid .wide{grid-column:auto}.object-form-section{grid-column:auto!important}.object-form-card{padding:12px}.object-detail-head .page-actions{width:100%}.object-detail-head .page-actions .btn{width:100%;text-align:center}}
.signature-block{margin:12px 0;padding:10px;border:1px solid #dce6ed;border-radius:10px;background:#fbfdfe}.signature-block>label{display:block;font-size:10px;font-weight:850;margin-bottom:6px}.signature-block canvas{width:100%;height:120px;background:#fff;border:1px dashed #aebfca;border-radius:8px;touch-action:none}.signature-block>div{display:flex;justify-content:flex-end;margin-top:6px}


/* Alpha 47.4 · fotos multiplataforma, tipos normalizados y estados visuales */
.object-photo-tools{display:flex!important;flex-direction:column!important;align-items:flex-start;gap:7px}.object-photo-tools>span{font-size:10px;font-weight:850;color:#486477}.object-photo-buttons{display:flex;gap:7px;flex-wrap:wrap}.photo-button{position:relative;overflow:hidden;cursor:pointer;font-size:10px!important}.photo-button input[type=file]{position:absolute!important;inset:0!important;opacity:0!important;cursor:pointer!important;width:100%!important;height:100%!important}.object-current-photo,.camera-preview img{width:170px!important;height:120px!important;object-fit:cover!important;border-radius:9px!important;border:1px solid #d7e2e9!important}.camera-preview[hidden],.phone-camera-panel[hidden]{display:none!important}.phone-camera-panel{display:grid;grid-template-columns:1fr 150px;gap:10px;align-items:center;width:100%;padding:12px;border:1px solid #b9d7e8;border-radius:12px;background:#f2f9fd}.phone-camera-panel>div:first-child{display:flex;flex-direction:column}.phone-camera-panel b{font-size:11px}.phone-camera-panel span,.phone-camera-panel #phoneCameraState{font-size:9px;color:#607b8d}.phone-camera-panel img{width:145px;height:145px;background:#fff;border-radius:8px;padding:6px;grid-row:1/3;grid-column:2}.phone-camera-panel.ready{border-color:#8bc5a0;background:#f0fbf4}.phone-camera-panel.ready #phoneCameraState{color:#247047;font-weight:850}.object-row-delivered{background:#f0faf4!important;border-color:#b9dfc6!important;opacity:.92}.object-row-sent{background:#f4f1ff!important;border-color:#d4c9f3!important;opacity:.92}.object-row-destroyed{background:#fff5f5!important;opacity:.8}.object-row-delivered .object-main>b,.object-row-sent .object-main>b{font-weight:800}.status-sent{background:#e8e1ff!important;color:#5c419e!important}.status-delivered{background:#dcf3e5!important;color:#17683e!important}.mobile-camera-page{max-width:520px;margin:20px auto}.mobile-camera-card{text-align:center;padding:24px}.mobile-camera-icon{font-size:42px}.mobile-camera-card h1{font-size:20px;margin:8px 0}.mobile-camera-card p{font-size:12px;color:#5d7485}.mobile-camera-shot{display:flex;min-height:160px;border:2px dashed #98bdd3;border-radius:14px;align-items:center;justify-content:center;font-size:22px;font-weight:850;background:#f1f8fc;position:relative;overflow:hidden;margin:16px 0}.mobile-camera-shot input{position:absolute;inset:0;opacity:0}.mobile-camera-send{width:100%;font-size:14px;padding:13px}.camera-success{background:#e7f8ed;color:#17683e;padding:13px;border-radius:10px;font-weight:900}.mobile-camera-card details{margin-top:14px;text-align:left}.mobile-camera-card details form{display:grid;gap:8px;margin-top:8px}
@media(max-width:760px){.object-photo-buttons{display:grid;width:100%;grid-template-columns:1fr 1fr}.object-photo-buttons #usePhoneCamera{grid-column:1/-1}.phone-camera-panel{grid-template-columns:1fr 120px}.phone-camera-panel img{width:115px;height:115px}.object-row-delivered,.object-row-sent{opacity:1}.object-row-delivered{border-left:5px solid #4fa671!important}.object-row-sent{border-left:5px solid #7f67bb!important}}


/* Alpha 47.5 · depuracion operativa de objetos */
.objects-head .page-actions .btn{font-size:12px;font-weight:850;padding:9px 13px}.object-tabs a b{font-size:13px}.object-tabs a span{font-size:22px}.object-tabs a small{font-size:9px}.object-search-main-month{grid-template-columns:minmax(260px,1fr) 120px 150px auto!important}.object-search-main-month input,.object-search-main-month select{font-size:12px}.object-advanced summary{font-size:12px!important}.object-advanced-compact{grid-template-columns:190px minmax(220px,1fr) auto!important}.object-advanced-compact label{font-size:10px!important}.object-row-lost-pending{border-left:5px solid #d8a72c!important}.object-row-lost-found{background:#f0faf4!important;border-color:#b9dfc6!important;border-left:5px solid #4fa671!important}.object-row-lost-closed{background:#f4f6f7!important;border-left:5px solid #9aa8b0!important;opacity:.86}.object-row-lost-found .status-found{background:#dcf3e5!important;color:#17683e!important}.object-status-picker{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:13px;border-left:5px solid #2f84b8}.object-status-picker>div{display:flex;flex-direction:column;gap:3px}.object-status-picker>div b{font-size:13px;color:#183e58}.object-status-picker>div span{font-size:10px;color:#657e8e}.object-status-picker form{display:flex;gap:8px;align-items:center}.object-status-picker select{min-width:245px;font-size:11px}.lost-status-field small{font-size:8px;font-weight:500;color:#7b8d99}.object-import-card{max-width:720px}.object-import-card form p{display:grid;gap:5px}.object-import-card label{font-size:11px;font-weight:850}.object-import-card input{font-size:11px}
@media(max-width:760px){.object-kpis{display:none!important}.objects-head .page-actions .btn{font-size:12px!important;padding:11px 8px!important}.object-tabs{margin-top:8px}.object-tabs a{padding:12px 10px!important}.object-tabs a b{font-size:14px!important}.object-tabs a span{font-size:25px!important}.object-search{padding:12px!important}.object-search-main-month{grid-template-columns:1fr 105px!important;gap:8px!important}.object-search-main-month input{grid-column:1/-1;font-size:16px!important;min-height:46px}.object-search-main-month select{font-size:13px!important;min-height:42px}.object-search-main-month button{grid-column:1/-1;font-size:14px!important;padding:11px!important}.object-advanced summary{font-size:13px!important;padding:3px 0}.object-advanced-compact{grid-template-columns:1fr!important}.object-advanced-compact label,.object-advanced-compact .btn{grid-column:1!important}.object-advanced-compact label{font-size:11px!important}.object-advanced-compact select{font-size:13px!important;min-height:42px}.object-row{padding:10px!important}.object-status-picker{display:grid;gap:10px;padding:12px}.object-status-picker>div b{font-size:14px}.object-status-picker>div span{font-size:11px}.object-status-picker form{display:grid;grid-template-columns:1fr}.object-status-picker select{min-width:0;width:100%;font-size:13px;min-height:44px}.object-status-picker .btn{width:100%;font-size:13px;padding:10px}.object-form-grid label{font-size:12px!important}.object-form-section{font-size:11px!important}.object-photo-buttons{display:block!important}.photo-button{font-size:12px!important;padding:10px 12px!important}.object-import-btn{grid-column:1/-1!important}}

/* Alpha 47.6 - estados operativos, QR PC y recibos */
.object-row{position:relative;display:block!important;padding:0!important;overflow:visible!important}.object-row-open{display:grid;grid-template-columns:52px 122px minmax(240px,1fr) minmax(170px,.7fr) 132px;gap:10px;align-items:center;padding:11px 150px 11px 11px;text-decoration:none;color:inherit;min-height:78px}.object-row-actions{position:absolute;right:10px;bottom:8px;display:flex;gap:6px;z-index:3}.quick-status{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;padding:7px 10px;font-size:10px;font-weight:900;text-decoration:none;cursor:pointer;white-space:nowrap}.quick-found,.quick-deliver{background:#087443;color:#fff}.quick-send,.quick-send-solid{background:#5b36b2!important;color:#fff!important}.quick-archive{background:#667782;color:#fff}.quick-admin{background:#173f5f;color:#fff}.object-row-delivered{background:#e4f7e9!important;border:2px solid #15803d!important;border-left:10px solid #15803d!important}.object-row-sent{background:#eee9ff!important;border:2px solid #6d28d9!important;border-left:10px solid #6d28d9!important}.object-row-destroyed{border-left:10px solid #b42318!important}.status-delivered{background:#15803d!important;color:#fff!important;box-shadow:0 0 0 3px rgba(21,128,61,.12)}.status-sent{background:#6d28d9!important;color:#fff!important;box-shadow:0 0 0 3px rgba(109,40,217,.12)}.object-row-lost-found{background:#e3f7f2!important;border:2px solid #0f766e!important;border-left:10px solid #0f766e!important}.object-row-lost-pending{border-left:10px solid #d69e00!important}.object-row-lost-closed{opacity:.72;border-left:10px solid #64748b!important;background:#eef1f3!important}.status-found{background:#0f766e!important;color:#fff!important}.status-pending{background:#c27a00!important;color:#fff!important}.status-closed{background:#64748b!important;color:#fff!important}.object-final-banner{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 16px;margin-bottom:14px;border-radius:12px}.object-final-banner>div{display:grid;gap:4px}.object-final-banner b{font-size:15px}.object-final-banner span{font-size:10px}.status-banner-delivered{background:#dff6e6;border:2px solid #15803d;color:#0b5d2c}.status-banner-sent{background:#eee9ff;border:2px solid #6d28d9;color:#4c1d95}.status-banner-destroyed{background:#fff0ee;border:2px solid #b42318}.status-banner-lost-pending{background:#fff7dc;border:2px solid #d69e00}.status-banner-lost-found{background:#e3f7f2;border:2px solid #0f766e;color:#0f5d57}.status-banner-lost-closed{background:#eef1f3;border:2px solid #64748b}.status-locked{font-size:10px;font-weight:850;opacity:.8}.status-quick-links{display:flex;gap:8px;align-items:center}.status-quick-links form{margin:0}.object-doc-actions{flex-wrap:wrap}.object-extra-fields{border:1px solid #d7e2e9;border-radius:9px;padding:9px}.object-extra-fields summary{font-size:10px;font-weight:850;cursor:pointer}.object-extra-fields>div{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:9px}.custody-check{background:#fff8d9;border:1px solid #e5cf66;border-radius:8px;padding:9px!important}.custody-check>span{display:flex!important;gap:7px;align-items:center}.custody-check input{width:auto!important}.camera-modal[hidden]{display:none!important}.camera-modal{position:fixed;inset:0;z-index:10050;background:rgba(8,25,38,.72);display:flex;align-items:center;justify-content:center;padding:20px}.camera-modal-card{position:relative;background:#fff;border-radius:18px;width:min(620px,96vw);padding:24px;text-align:center;box-shadow:0 24px 80px rgba(0,0,0,.35)}.camera-modal-card h2{font-size:22px;margin:0 0 6px}.camera-modal-card p{font-size:12px;color:#566f80}.camera-modal-close{position:absolute;right:12px;top:8px;border:0;background:transparent;font-size:32px;cursor:pointer}.camera-qr-wrap{display:flex;justify-content:center;margin:12px 0}.camera-qr-wrap img{width:390px;height:390px;max-width:80vw;max-height:80vw;border:10px solid #fff;box-shadow:0 0 0 1px #cbd8df}.camera-url{font-size:10px!important;word-break:break-all}.camera-wait{font-size:13px;font-weight:850;margin:8px 0 14px}.camera-wait.ready{color:#087443}.camera-preview{display:flex;align-items:center;gap:10px;margin-top:8px}.camera-preview img{width:120px;height:90px;object-fit:cover;border-radius:8px}.desktop-camera-only{display:inline-flex}.object-exit-card form p{display:grid;grid-template-columns:210px minmax(0,1fr);gap:8px;align-items:center}.object-exit-card form p label{font-size:11px}.object-exit-card textarea{min-height:80px}
@media(max-width:900px){.object-row-open{grid-template-columns:48px 100px minmax(180px,1fr) 110px;padding-right:130px}.object-place{display:none}.object-row-actions{right:7px}.object-extra-fields>div{grid-template-columns:1fr}}
@media(max-width:760px){.desktop-camera-only{display:none!important}.object-row-open{grid-template-columns:50px minmax(0,1fr) auto!important;grid-template-rows:auto auto;gap:8px;padding:10px 10px 48px!important}.object-row-actions{left:68px;right:10px;bottom:8px;justify-content:flex-start}.object-row-actions .quick-status{font-size:10px;padding:7px 9px}.object-ref{grid-column:2}.object-main{grid-column:2;grid-row:2}.object-status{grid-column:3;grid-row:1/3}.object-photo{grid-row:1/3}.object-final-banner{display:grid}.status-quick-links{display:grid;grid-template-columns:1fr}.status-quick-links .btn,.status-quick-links form,.status-quick-links form button{width:100%}.object-doc-actions{width:100%;display:grid!important}.object-doc-actions .btn{width:100%;text-align:center}.object-exit-card form p{grid-template-columns:1fr}.camera-modal{display:none!important}}

/* Alpha 47.7 · reconstrucción estable de listados, miniaturas y navegación */
.page-backbar{display:flex!important;align-items:center;gap:8px;flex-wrap:wrap}.page-back,.page-home{display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid #cbd9e3;background:#fff;color:#174968;border-radius:9px;padding:8px 12px;text-decoration:none;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.page-back:hover,.page-home:hover{background:#eef7fc;border-color:#9cc7df}.page-home{background:#edf7fd;color:#0d659b;border-color:#bad9e9}
.object-color-legend{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:2px 4px 10px;font-size:10px;font-weight:750;color:#607887}.object-color-legend span{display:inline-flex;align-items:center;gap:6px}.legend-line{display:inline-block;width:24px;height:6px;border-radius:999px}.legend-line.lost-pending,.legend-line.dep-deposited{background:#d69e00}.legend-line.lost-found,.legend-line.dep-delivered{background:#0f766e}.legend-line.lost-closed,.legend-line.dep-other{background:#64748b}.legend-line.dep-sent{background:#6d28d9}.legend-line.dep-destroyed{background:#b42318}
.object-list-v47{display:grid;gap:9px}.obj-card{position:relative;background:#fff;border:1px solid #d7e4ec;border-left:9px solid #c8d5dd;border-radius:13px;min-height:92px;box-shadow:0 2px 8px rgba(23,50,74,.04);overflow:hidden}.obj-card:hover{box-shadow:0 5px 16px rgba(23,50,74,.10);border-top-color:#b8cedb;border-right-color:#b8cedb;border-bottom-color:#b8cedb}.obj-lost-pending,.obj-dep-deposited{border-left-color:#d69e00;background:#fffdf7}.obj-lost-found,.obj-dep-delivered{border-left-color:#0f766e;background:#f2fbf8}.obj-lost-closed,.obj-dep-other{border-left-color:#64748b;background:#f5f7f8}.obj-dep-sent{border-left-color:#6d28d9;background:#f7f4ff}.obj-dep-destroyed{border-left-color:#b42318;background:#fff5f4}.obj-card-open{display:grid!important;width:100%!important;min-width:0!important;grid-template-columns:72px 150px minmax(280px,1.7fr) minmax(210px,.85fr);gap:14px;align-items:center;padding:12px 160px 12px 14px;text-decoration:none;color:inherit}.obj-thumb{width:68px;height:68px;border-radius:11px;background:#edf4f8;display:grid;place-items:center;overflow:hidden;font-size:30px;border:1px solid #e0e9ef}.obj-thumb img{display:block;width:100%;height:100%;object-fit:cover}.obj-id,.obj-info,.obj-location{min-width:0;display:flex;flex-direction:column}.obj-id b{font-size:14px;color:#126c9f;line-height:1.2}.obj-id small,.obj-info small,.obj-location small{font-size:9px;color:#7a8d9b;margin-top:4px}.obj-info strong{font-size:13px;color:#183e58}.obj-info p{font-size:11px;line-height:1.35;color:#506b7c;margin:4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.obj-location span{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.obj-card-actions{position:absolute;right:12px;bottom:12px;display:flex;gap:7px;align-items:center;z-index:2}.obj-card-actions form{margin:0}.obj-card-actions:empty{display:none}.quick-status{font-size:11px!important;padding:8px 11px!important;box-shadow:0 1px 2px rgba(0,0,0,.10)}
.object-main-photo-large{padding:10px!important}.object-main-photo-large img{width:100%!important;max-height:480px!important;min-height:220px;object-fit:contain!important;background:#f4f7f9;border-radius:11px}.object-photo-field .object-current-photo{width:220px!important;height:150px!important;object-fit:cover!important}
@media(max-width:1100px){.obj-card-open{grid-template-columns:64px 125px minmax(220px,1fr);padding-right:150px}.obj-location{display:none}.obj-thumb{width:60px;height:60px}}
@media(max-width:760px){.page-backbar{gap:6px}.page-back,.page-home{font-size:12px;padding:8px 11px}.object-color-legend{gap:10px;font-size:10px;margin-bottom:9px}.legend-line{width:18px;height:5px}.obj-card{min-height:100px;border-left-width:7px}.obj-card-open{grid-template-columns:62px minmax(0,1fr)!important;grid-template-rows:auto auto!important;gap:7px 10px!important;padding:11px 10px 50px 11px!important}.obj-thumb{grid-column:1;grid-row:1/3;width:58px;height:58px;font-size:26px}.obj-id{grid-column:2;grid-row:1}.obj-id b{font-size:14px}.obj-id small{font-size:9px}.obj-info{grid-column:2;grid-row:2}.obj-info strong{font-size:12px}.obj-info p{font-size:10.5px;max-width:none;white-space:nowrap}.obj-info small{font-size:9px}.obj-location{display:none}.obj-card-actions{left:80px;right:10px;bottom:9px;justify-content:flex-start}.obj-card-actions .quick-status{font-size:10.5px!important;padding:7px 10px!important}.object-main-photo-large img{max-height:380px!important;min-height:180px}.object-photo-field .object-current-photo{width:100%!important;max-width:360px!important;height:auto!important;max-height:280px!important;object-fit:contain!important}}

/* Alpha 47.9 · restauración de la rejilla estable de Alpha 47.5 */
.object-row-lost-pending,.object-row-deposited{border-left:7px solid #d8a72c!important;background:#fffdf7!important}
.object-row-lost-found,.object-row-delivered{border-left:7px solid #16826f!important;background:#eefaf6!important;border-top-color:#b7ddd2!important;border-right-color:#b7ddd2!important;border-bottom-color:#b7ddd2!important}
.object-row-lost-closed{border-left:7px solid #7b8992!important;background:#f3f5f6!important}
.object-row-sent{border-left:7px solid #6d28d9!important;background:#f5f1ff!important;border-top-color:#d6cbf5!important;border-right-color:#d6cbf5!important;border-bottom-color:#d6cbf5!important}
.object-row-destroyed{border-left:7px solid #b42318!important;background:#fff3f2!important}
.object-row .object-status .btn{font-size:9px!important;padding:6px 8px!important;text-align:center!important;text-decoration:none!important;min-width:76px}
.object-row .object-photo{color:inherit;text-decoration:none}
.object-main-photo-large img{width:100%!important;max-height:500px!important;min-height:230px!important;object-fit:contain!important;background:#f4f7f9!important;border-radius:11px!important}
@media(max-width:760px){.object-row .object-status{grid-column:3!important;grid-row:1/3!important}.object-row .object-status .btn{font-size:8px!important;padding:5px 6px!important;min-width:66px}.object-main-photo-large img{min-height:180px!important;max-height:380px!important}}

/* Alpha 47.10 · firmas táctiles y PDF de objetos */
.signature-modal[hidden]{display:none!important}.signature-modal{position:fixed;inset:0;z-index:10060;background:rgba(8,25,38,.72);display:flex;align-items:center;justify-content:center;padding:20px}.signature-actions{display:flex!important;justify-content:flex-end!important;gap:8px;flex-wrap:wrap}.signature-existing,.signature-mobile-preview img{display:block;max-width:320px;width:100%;height:90px;object-fit:contain;background:#fff;border:1px solid #d9e5ec;border-radius:8px;margin:4px 0 8px}.signature-mobile-preview{display:flex!important;align-items:center;gap:10px;margin-top:8px}.signature-mobile-preview[hidden]{display:none!important}.signature-mobile-preview b{font-size:10px;color:#087443}.intake-signature{width:100%}.desktop-signature-only{display:inline-flex}
@media(max-width:760px){.desktop-signature-only{display:none!important}.signature-block canvas{height:160px}.signature-modal{display:none!important}}


/* Alpha 47.11 · alta de objetos clara y separada de la salida */
.object-intake-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}.object-intake-layout.new-intake{grid-template-columns:minmax(0,1040px);justify-content:center}.object-intake-card{padding:0!important;overflow:hidden;border:1px solid #cadbe5;box-shadow:0 12px 34px rgba(26,63,88,.09)}.object-intake-card fieldset{border:0;margin:0;padding:0}.intake-section{padding:18px 20px;border-bottom:1px solid #e1ebf0}.intake-section:last-of-type{border-bottom:0}.intake-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:0 0 12px;margin-bottom:12px;border-bottom:1px solid #e5edf2}.intake-section-title b{font-size:15px;color:#123e5d}.intake-section-title span{font-size:10px;color:#718796}.intake-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}.intake-grid>label{display:flex;flex-direction:column;gap:5px;min-width:0}.intake-grid>label>span,.object-photo-field>span{font-size:10px;font-weight:800;color:#294e66}.intake-grid .wide{grid-column:1/-1}.object-photo-field{padding:2px 0 0}.intake-actions{padding:14px 20px;background:#f6f9fb;border-top:1px solid #e0e9ef}.intake-side{display:grid;gap:12px}.object-intake-card input,.object-intake-card select,.object-intake-card textarea{font-size:13px}.object-intake-card textarea{min-height:84px}.object-intake-card .signature-block{background:#f8fbfc;border:1px solid #dbe7ed;border-radius:12px;padding:12px}.object-intake-card .signature-block canvas{height:150px!important}.object-exit-sheet{max-width:980px;margin:0 auto;padding:0!important;overflow:hidden}.object-exit-sheet .warning,.object-exit-sheet .info-banner{margin:16px 18px 0}.info-banner{padding:10px 12px;border-radius:10px;background:#eaf5fb;border:1px solid #c4dfed;color:#24556f;font-size:11px}.exit-section{padding:17px 20px;border-bottom:1px solid #e1eaf0}.exit-section h3{margin:0 0 12px;font-size:14px;color:#163f5d}.exit-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}.exit-grid>label{display:flex;flex-direction:column;gap:5px}.exit-grid>label>span{font-size:10px;font-weight:800;color:#294e66}.exit-grid .wide{grid-column:1/-1}.object-exit-sheet .record-form-actions{padding:14px 20px;background:#f6f9fb}.object-exit-sheet .signature-block canvas{height:160px!important}.object-state-card .status-archived{background:#eef1f3;color:#50616d;border-color:#9ba8b1}
@media(max-width:950px){.object-intake-layout{grid-template-columns:1fr}.intake-side{grid-template-columns:1fr 1fr}.intake-side .custody-card{grid-column:1/-1}}
@media(max-width:760px){.intake-section{padding:15px 13px}.intake-section-title{display:block}.intake-section-title span{display:block;margin-top:4px}.intake-grid,.exit-grid{grid-template-columns:1fr}.intake-grid .wide,.exit-grid .wide{grid-column:1}.intake-side{grid-template-columns:1fr}.object-exit-sheet{border-radius:12px}.exit-section{padding:15px 13px}.object-intake-card .signature-block canvas,.object-exit-sheet .signature-block canvas{height:150px!important}}

/* Alpha 47.12 · firmas compactas y controles de importación solo en PC */
.exit-signatures{display:grid!important;grid-template-columns:1fr 1fr;gap:14px;align-items:start;margin-top:2px}
.signature-panel{border:1px solid #d8e4eb;background:#f9fcfd;border-radius:12px;padding:10px;min-width:0}
.signature-panel>label{display:block;font-size:10px;font-weight:850;color:#294e66;margin-bottom:6px}
.signature-pad-frame{position:relative;height:112px;border:1px dashed #aebfca;border-radius:8px;background:#fff;overflow:hidden}
.signature-pad-frame canvas{position:absolute;inset:0;width:100%!important;height:100%!important;border:0!important;border-radius:0!important;background:#fff;touch-action:none;z-index:2}
.signature-pad-frame canvas.has-existing{opacity:0}
.signature-pad-existing,.signature-inline-preview{position:absolute;inset:5px;z-index:1;display:flex;align-items:center;justify-content:center;background:#fff}
.signature-pad-existing,.signature-inline-preview img{width:calc(100% - 10px);height:calc(100% - 10px);object-fit:contain!important;margin:0!important;max-width:none!important;border:0!important;background:#fff}
.signature-inline-preview{z-index:3}.signature-inline-preview[hidden]{display:none!important}.signature-inline-preview img{width:100%;height:100%}
.signature-panel .signature-actions{margin-top:7px!important;display:flex!important;gap:6px;justify-content:flex-end!important}
@media(max-width:760px){.exit-signatures{grid-template-columns:1fr!important}.signature-pad-frame{height:125px}.desktop-import-only{display:none!important}}

/* Alpha 47.13 · sin cambios visuales; PDFs en pestaña nueva. */


/* Alpha 47.16 · firma segura al hacer scroll y galería fotográfica */
.signature-block canvas,.signature-pad-frame canvas{touch-action:pan-y!important}
.signature-block canvas.signature-pad-active,.signature-pad-frame canvas.signature-pad-active{touch-action:none!important;cursor:crosshair;box-shadow:inset 0 0 0 2px #1685c5}
.signature-block canvas.signature-pad-locked,.signature-pad-frame canvas.signature-pad-locked{cursor:default}
.signature-canvas-wrap{position:relative;width:100%}
.signature-canvas-wrap canvas{display:block}
.signature-lock-hint{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:12px;text-align:center;color:#557286;font-size:11px;font-weight:800;pointer-events:none;background:rgba(248,252,254,.58);border-radius:8px}
.signature-lock-hint[hidden]{display:none!important}
.signature-mode-btn{border-color:#8ab9d4!important;background:#f2f9fd!important;color:#195d83!important}
.object-photo-gallery{display:flex;flex-wrap:wrap;gap:9px;align-items:flex-start}
.object-photo-gallery .object-current-photo{margin:0!important}
.desktop-extra-photos{display:inline-flex}
.desktop-extra-photo{display:block}
@media(max-width:760px){
  .desktop-extra-photos,.desktop-extra-photo{display:none!important}
  .object-photo-gallery{display:block;width:100%}
  .object-photo-gallery .object-primary-photo{display:block!important;width:100%!important;max-width:360px!important;height:auto!important;max-height:280px!important;object-fit:contain!important}
  .signature-lock-hint{font-size:12px}
}

/* Alpha 47.17 · módulo operativo de incidencias con animales */
.animal-pagehead{margin-bottom:12px}.animal-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 12px}.animal-kpis>div{background:#fff;border:1px solid #d8e5ec;border-radius:12px;padding:12px 14px;box-shadow:0 3px 10px rgba(20,57,81,.04)}.animal-kpis b{display:block;font-size:22px;color:#126b9f;line-height:1}.animal-kpis small{display:block;margin-top:5px;font-size:9px;font-weight:900;color:#617c8f;letter-spacing:.03em}.animal-searchbar{display:grid;grid-template-columns:minmax(320px,1fr) 118px 150px auto;gap:9px;align-items:center;padding:11px;background:#fff;border:1px solid #d9e5ec;border-radius:12px;margin-bottom:9px}.animal-searchbar>input,.animal-searchbar>select,.animal-advanced input,.animal-advanced select{height:41px;border:1px solid #c6d8e3;border-radius:9px;background:#fff;padding:0 10px;color:#173c56;font-size:13px}.animal-advanced{grid-column:1/-1}.animal-advanced summary{cursor:pointer;color:#22668f;font-size:11px;font-weight:850;padding:2px 0}.animal-advanced>div{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:10px;padding-top:9px}.animal-advanced label{display:flex;flex-direction:column;gap:4px;font-size:10px;font-weight:850;color:#365b72}.animal-color-legend{display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:0 4px 9px;font-size:10px;font-weight:800;color:#536f82}.animal-color-legend span{display:inline-flex;align-items:center;gap:6px}.a-legend{display:inline-block;width:24px;height:5px;border-radius:999px}.a-legend.custody{background:#d5a429}.a-legend.delivered{background:#13816f}.a-legend.vet{background:#1685c5}.a-legend.shelter{background:#7657c7}.a-legend.adopted{background:#bf6a19}.a-legend.closed{background:#778894}.animal-list{display:flex;flex-direction:column;gap:8px}.animal-card{position:relative;border:1px solid #d7e3e9;border-left:7px solid #d5a429;border-radius:12px;background:#fff;min-height:82px;overflow:hidden}.animal-card.animal-status-custody{border-left-color:#d5a429;background:#fffdf7}.animal-card.animal-status-delivered{border-left-color:#13816f;background:#eef9f6}.animal-card.animal-status-vet{border-left-color:#1685c5;background:#f0f8fd}.animal-card.animal-status-shelter{border-left-color:#7657c7;background:#f7f4ff}.animal-card.animal-status-adopted{border-left-color:#bf6a19;background:#fff7ef}.animal-card.animal-status-closed{border-left-color:#778894;background:#f3f5f6}.animal-card.animal-status-other{border-left-color:#526a78;background:#f7f9fa}.animal-card-open{display:grid;grid-template-columns:64px 150px minmax(280px,1fr) minmax(180px,300px);gap:14px;align-items:center;min-height:82px;padding:10px 132px 10px 12px;text-decoration:none;color:inherit}.animal-thumb{width:58px;height:58px;border:1px solid #d9e5eb;border-radius:10px;background:#eef5f8;display:flex;align-items:center;justify-content:center;font-size:28px;overflow:hidden}.animal-thumb img{width:100%;height:100%;object-fit:cover}.animal-ref{display:flex;flex-direction:column;min-width:0}.animal-ref b{font-size:14px;color:#126a9b}.animal-ref small{font-size:9px;color:#708794;margin-top:2px}.animal-ref em{align-self:flex-start;margin-top:4px;font-size:8px;font-style:normal;font-weight:900;background:#e6edf1;color:#526b79;padding:2px 5px;border-radius:999px}.animal-main{min-width:0}.animal-main strong{font-size:12px;color:#173b54}.animal-main p{margin:3px 0 2px;max-width:650px;font-size:10.5px;color:#4d6d80;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.animal-main small,.animal-place small{font-size:9px;color:#7590a0}.animal-place{display:flex;flex-direction:column;gap:4px;min-width:0}.animal-place span{font-size:10.5px;color:#28536c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.animal-card-actions{position:absolute;right:10px;top:50%;transform:translateY(-50%)}.animal-card-actions .quick-status{font-size:10px!important;padding:7px 10px!important;white-space:nowrap}.animal-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:14px;align-items:start}.animal-form-card{padding:0!important;overflow:hidden}.animal-form-section{padding:17px 18px;border-bottom:1px solid #e1ebf0}.animal-section-title{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid #e6edf1;padding-bottom:10px;margin-bottom:12px}.animal-section-title b{font-size:15px;color:#153f5d}.animal-section-title span{font-size:10px;color:#718796}.animal-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px 13px}.animal-grid>label,.animal-observations,.animal-photo-zone>label{display:flex;flex-direction:column;gap:5px;min-width:0}.animal-grid>label>span,.animal-observations>span,.animal-photo-zone>label>span{font-size:10px;font-weight:850;color:#2b5068}.animal-grid .wide{grid-column:1/-1}.animal-form-card input,.animal-form-card select,.animal-form-card textarea,.animal-exit-sheet input,.animal-exit-sheet select,.animal-exit-sheet textarea,.animal-management input,.animal-management textarea{width:100%;border:1px solid #c8d9e3;border-radius:8px;background:#fff;padding:9px 10px;font-size:13px;color:#17384f}.animal-form-card textarea{min-height:76px}.animal-observations textarea{min-height:96px}.animal-photo-zone{margin-top:12px;padding-top:12px;border-top:1px solid #e4edf2}.animal-gallery{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.animal-main-photo,.desktop-animal-extra{width:150px;height:112px;object-fit:contain;border:1px solid #d5e1e8;border-radius:9px;background:#f5f8fa}.desktop-animal-extra-upload{margin-top:8px;padding:10px;border:1px dashed #acc5d5;border-radius:10px;background:#f8fbfd}.desktop-animal-extra-upload small{font-size:9px;color:#718796}.animal-form-card .record-form-actions{padding:13px 18px;background:#f6f9fb}.animal-side{display:flex;flex-direction:column;gap:10px}.animal-side>.card{padding:14px}.animal-side h3{font-size:13px;color:#153e5a;margin:0 0 9px}.animal-state-card p{font-size:10px;color:#647f91}.animal-status-pill{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900;border:1px solid #d5e0e6}.animal-status-pill.animal-status-custody{background:#fff5d7;color:#7a5a04;border-color:#e6c55e}.animal-status-pill.animal-status-delivered{background:#ddf5ee;color:#086c5b;border-color:#87caba}.animal-status-pill.animal-status-vet{background:#e4f4fd;color:#0f6899;border-color:#90c8e5}.animal-status-pill.animal-status-shelter{background:#eee9ff;color:#5940a3;border-color:#b9aae8}.animal-status-pill.animal-status-adopted{background:#fff0de;color:#99500b;border-color:#e6b276}.animal-status-pill.animal-status-closed{background:#edf1f3;color:#596b76;border-color:#aebcc5}.animal-docs{display:flex!important;flex-direction:column;gap:7px}.animal-docs h3{margin-bottom:3px}.animal-docs a{display:block;padding:8px 9px;border:1px solid #d6e4eb;border-radius:8px;text-decoration:none;color:#165e87;font-size:10.5px;font-weight:800;background:#fbfdfe}.animal-management form{display:flex;flex-direction:column;gap:7px}.animal-management textarea{min-height:82px}.animal-history>div{padding:8px 0;border-bottom:1px solid #e4ecef}.animal-history>div:last-child{border-bottom:0}.animal-history b{display:block;font-size:10px;color:#244b63}.animal-history small{display:block;margin-top:2px;font-size:9px;color:#7690a0}.animal-history p{font-size:10px;color:#4c6879;margin:4px 0 0;white-space:pre-wrap}.animal-exit-sheet{max-width:980px;margin:0 auto;padding:0!important;overflow:hidden}.animal-exit-sheet .info-banner{margin:15px 18px 0}.animal-exit-sheet .exit-section{padding:17px 20px}.animal-exit-sheet .record-form-actions{padding:14px 20px;background:#f6f9fb}.animal-import-help{margin-bottom:12px}.animal-import-help h3{margin-top:0}.animal-import-help p{font-size:12px;color:#4f6f82}.species-other{display:none}
@media(max-width:1050px){.animal-card-open{grid-template-columns:62px 145px minmax(220px,1fr);padding-right:130px}.animal-place{display:none}.animal-detail-layout{grid-template-columns:minmax(0,1fr) 290px}}
@media(max-width:820px){.animal-detail-layout{grid-template-columns:1fr}.animal-side{grid-template-columns:1fr 1fr;display:grid}.animal-history,.animal-management{grid-column:1/-1}}
@media(max-width:760px){.animal-kpis{display:none!important}.animal-searchbar{grid-template-columns:minmax(0,1fr) 88px;gap:7px;padding:9px}.animal-searchbar>input{grid-column:1/-1;font-size:16px}.animal-searchbar>select{font-size:11px;padding:0 6px}.animal-searchbar>button{font-size:12px;padding:10px 8px}.animal-advanced>div{grid-template-columns:1fr}.animal-color-legend{gap:9px;font-size:9px}.a-legend{width:17px}.animal-card{min-height:96px}.animal-card-open{grid-template-columns:60px minmax(0,1fr);grid-template-rows:auto auto;padding:10px 10px 46px 10px;gap:5px 9px;min-height:96px}.animal-thumb{grid-row:1/3;width:56px;height:56px}.animal-ref{grid-column:2;grid-row:1}.animal-ref b{font-size:13px}.animal-main{grid-column:2;grid-row:2}.animal-main p{font-size:10px;white-space:nowrap}.animal-place{display:none}.animal-card-actions{left:78px;right:auto;bottom:8px;top:auto;transform:none}.animal-card-actions .quick-status{font-size:10px!important;padding:6px 9px!important}.animal-form-section{padding:14px 13px}.animal-section-title{display:block}.animal-section-title span{display:block;margin-top:3px}.animal-grid{grid-template-columns:1fr}.animal-grid .wide{grid-column:1}.desktop-animal-extra,.desktop-animal-extra-upload{display:none!important}.animal-main-photo{width:100%;max-width:360px;height:auto;max-height:300px}.animal-side{display:flex}.animal-exit-sheet .exit-section{padding:14px 13px}.animal-exit-sheet .info-banner{margin:12px 13px 0}}

/* Alpha 47.18 · Animales: firma en entrada y cámara móvil desde PC */
.animal-entry-signature{margin-top:2px}.animal-entry-signature canvas{height:145px!important}.animal-photo-buttons{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:8px}.animal-photo-buttons .photo-button{display:inline-flex;align-items:center;gap:6px}.animal-photo-buttons .photo-button input[type=file]{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.animal-photo-buttons .desktop-animal-extra-upload{margin:0;padding:0;border:0;background:transparent;display:inline-flex}.animal-photo-zone .camera-preview img{object-fit:cover}
@media(max-width:760px){.animal-entry-signature canvas{height:155px!important}.animal-photo-buttons .desktop-animal-extra-upload,.animal-photo-buttons .desktop-camera-only{display:none!important}}


/* Alpha 47.19 · Animales: ficha reorganizada, firmas dobles compactas y listado móvil fino */
.animal-signatures-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.animal-signature-card{margin:0;padding:10px;border:1px solid #d7e4ea;border-radius:11px;background:#fbfdfe}.animal-signature-card>label{display:block;font-size:10px;font-weight:850;color:#284f68;margin-bottom:6px}.animal-signature-card .signature-canvas-wrap.compact{min-height:98px}.animal-signature-card canvas{width:100%!important;height:96px!important}.animal-signature-card .signature-actions{margin-top:6px}.animal-signature-card .signature-existing.compact{width:100%;max-width:230px;max-height:70px;object-fit:contain;margin:0 0 6px}.animal-signature-card .signature-mobile-preview.compact{margin-top:6px}.animal-signature-card .signature-mobile-preview.compact img{max-width:190px;max-height:62px;object-fit:contain}.animal-signatures-section{padding-bottom:12px}.animal-photo-zone{margin-top:11px}.animal-observations textarea{min-height:78px}.animal-form-actions{display:flex;gap:8px;justify-content:flex-end;align-items:center}.mobile-action-label{display:none}
@media(max-width:760px){
 .animal-searchbar{padding:7px!important;gap:5px!important}.animal-searchbar>input{height:39px!important}.animal-searchbar>select{height:36px!important}.animal-searchbar>button{height:36px!important;padding:6px 8px!important}.animal-advanced summary{padding-top:1px!important}
 .animal-color-legend{padding:0 2px 6px!important;gap:7px 10px!important;font-size:8px!important}.a-legend{width:14px!important;height:4px!important}
 .animal-list{gap:5px!important}.animal-card{min-height:72px!important;border-left-width:5px!important;border-radius:10px!important}.animal-card-open{grid-template-columns:44px minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;gap:0 7px!important;min-height:72px!important;padding:6px 68px 6px 7px!important}.animal-thumb{grid-row:1/4!important;width:42px!important;height:42px!important;border-radius:8px!important;font-size:20px!important}.animal-ref{grid-column:2!important;grid-row:1!important;display:block!important;line-height:1.05!important}.animal-ref b{font-size:11px!important;margin-right:5px}.animal-ref small{font-size:7.5px!important;display:inline!important}.animal-ref em{font-size:6.8px!important;padding:1px 4px!important;margin:1px 0 0!important;display:inline-block!important}.animal-main{grid-column:2!important;grid-row:2/4!important;line-height:1.05!important}.animal-main strong{font-size:10px!important;line-height:1.05!important}.animal-main p{font-size:8.2px!important;margin:2px 0 1px!important;line-height:1.05!important;white-space:nowrap!important}.animal-main small{font-size:7.2px!important;line-height:1!important}.animal-card-actions{left:auto!important;right:5px!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important}.animal-card-actions .quick-status{font-size:8px!important;padding:5px 6px!important;min-width:52px!important;border-radius:8px!important}.desktop-action-label{display:none!important}.mobile-action-label{display:inline!important}
 .animal-signatures-grid{grid-template-columns:1fr;gap:8px}.animal-signature-card{padding:8px}.animal-signature-card canvas{height:105px!important}.animal-signature-card .signature-canvas-wrap.compact{min-height:107px}.animal-form-actions{flex-wrap:wrap}.animal-form-actions .btn{flex:1 1 auto}.animal-observations textarea{min-height:72px}
}
@media print{.animal-form-card,.animal-exit-sheet{box-shadow:none!important}.sidebar,.top,.page-backbar,.page-actions,.animal-side,.record-form-actions{display:none!important}.content{padding:0!important}.animal-detail-layout{display:block!important}.animal-form-section{break-inside:avoid;padding:8px!important}.animal-form-card{border:0!important}.animal-signature-card canvas{height:70px!important}}

/* Alpha 47.21 · Animales: listado móvil en filas finas y horizontales */
@media(max-width:760px){
  .animal-list{gap:3px!important}
  .animal-card{min-height:54px!important;border-left-width:3px!important;border-radius:8px!important;box-shadow:0 1px 3px rgba(20,57,81,.035)!important}
  .animal-card-open{display:grid!important;grid-template-columns:32px 108px minmax(0,1fr)!important;grid-template-rows:1fr!important;align-items:center!important;column-gap:6px!important;row-gap:0!important;min-height:54px!important;padding:4px 47px 4px 5px!important}
  .animal-thumb{grid-column:1!important;grid-row:1!important;align-self:center!important;width:30px!important;height:30px!important;border-radius:6px!important;font-size:15px!important;border-width:1px!important}
  .animal-ref{grid-column:2!important;grid-row:1!important;display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:0!important;line-height:1!important}
  .animal-ref b{font-size:10.2px!important;line-height:1.02!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .animal-ref small{font-size:6.9px!important;line-height:1.05!important;margin-top:2px!important;white-space:nowrap!important}
  .animal-ref em{font-size:6px!important;line-height:1!important;padding:1px 3px!important;margin-top:2px!important;max-width:max-content!important}
  .animal-main{grid-column:3!important;grid-row:1!important;display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:0!important;line-height:1!important}
  .animal-main strong{font-size:9.5px!important;line-height:1.03!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .animal-main p{font-size:7.4px!important;line-height:1.02!important;margin:2px 0 1px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important}
  .animal-main small{font-size:6.7px!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .animal-place{display:none!important}
  .animal-card-actions{left:auto!important;right:3px!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important}
  .animal-card-actions .quick-status{font-size:7px!important;line-height:1!important;padding:4px 5px!important;min-width:40px!important;border-radius:7px!important;box-shadow:none!important}
  .animal-color-legend{padding-bottom:5px!important;margin-bottom:0!important}
}
@media(max-width:420px){
  .animal-card-open{grid-template-columns:30px 96px minmax(0,1fr)!important;padding-right:45px!important;column-gap:5px!important}
  .animal-thumb{width:28px!important;height:28px!important;font-size:14px!important}
  .animal-ref b{font-size:9.6px!important}.animal-ref small{font-size:6.5px!important}.animal-ref em{font-size:5.7px!important}
  .animal-main strong{font-size:9px!important}.animal-main p{font-size:7px!important}.animal-main small{font-size:6.3px!important}
  .animal-card-actions .quick-status{font-size:6.7px!important;min-width:38px!important;padding:4px!important}
}

/* Alpha 47.23 · Módulo Vía pública */
.publicroad-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.publicroad-head h1{margin:2px 0 2px;font-size:31px;color:#153f5c}.publicroad-head p{margin:0;color:#6c8291}.publicroad-head .page-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.publicroad-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0 16px}.publicroad-kpis>div{background:#fff;border:1px solid #d4e1e9;border-radius:12px;padding:12px 14px;box-shadow:0 2px 7px rgba(17,62,89,.04)}.publicroad-kpis b{display:block;color:#1177b6;font-size:22px;line-height:1}.publicroad-kpis small{display:block;color:#647c8b;font-size:10px;margin-top:5px;font-weight:700}.publicroad-kpis .warn b{color:#c77a00}.publicroad-kpis .danger b{color:#b92b28}.terrace-reminder{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;text-decoration:none;padding:12px 14px;background:#fff7da;border:1px solid #e7c467;border-left:6px solid #dfa51d;border-radius:12px;color:#173e58;margin-bottom:12px}.terrace-reminder>span{font-size:28px}.terrace-reminder b{display:block;font-size:15px}.terrace-reminder small{display:block;color:#6c6250;margin-top:2px}.terrace-reminder strong{color:#926800;font-size:12px}.publicroad-modules{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.publicroad-module{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;text-decoration:none;border:1px solid #cfdee7;background:#fff;border-radius:14px;padding:16px;min-height:110px;color:#173f5b;box-shadow:0 3px 9px rgba(18,60,85,.04)}.publicroad-module:hover{border-color:#7eb8d9;background:#f8fcff}.publicroad-module>span{font-size:35px}.publicroad-module b{display:block;font-size:17px}.publicroad-module small{display:block;color:#668090;margin-top:4px;line-height:1.3}.publicroad-module em{font-style:normal;font-size:27px;color:#8da7b6}.publicroad-history{margin-top:14px}.history-chip-row{display:flex;gap:6px;flex-wrap:wrap}.history-chip-row a{padding:6px 9px;border:1px solid #d0dee6;border-radius:8px;background:#f8fbfd;color:#285d7c;text-decoration:none;font-size:11px}.publicroad-search{display:grid;grid-template-columns:minmax(240px,1fr) 120px 190px auto;gap:8px;padding:10px;border:1px solid #d3e0e8;background:#fff;border-radius:12px;margin:10px 0}.publicroad-search.compact{grid-template-columns:minmax(220px,1fr) 140px auto auto}.publicroad-search input,.publicroad-search select{min-width:0}.terrace-legend,.road-status-legend{display:flex;gap:14px;flex-wrap:wrap;align-items:center;padding:0 4px 8px;color:#526f82;font-size:10px;font-weight:700}.terrace-legend span{display:inline-flex;align-items:center;gap:5px}.terrace-legend i{width:22px;height:5px;border-radius:6px;background:#d9a81b}.terrace-legend span:nth-child(2) i{background:#268cb8}.terrace-legend b{font-size:8px;background:#edf3f6;padding:2px 4px;border-radius:5px}.terrace-reference-list,.commercial-list,.road-occupation-list{display:flex;flex-direction:column;gap:6px}.terrace-ref-row{display:grid;grid-template-columns:34px minmax(240px,1fr) 110px 110px auto;align-items:center;gap:10px;background:#fff;border:1px solid #d5e1e8;border-left:4px solid #d8a91d;border-radius:10px;padding:8px 10px}.terrace-ref-row.inactive{opacity:.6}.terrace-ref-num{width:28px;height:28px;border-radius:8px;background:#eef5f8;display:grid;place-items:center;font-weight:850;color:#2b607e;font-size:11px}.terrace-ref-main b{display:block;color:#164b6d;font-size:13px}.terrace-ref-main small{display:block;color:#6c8291;font-size:9px;margin-top:2px}.terrace-ref-area{display:flex;flex-direction:column;align-items:flex-start;border-left:1px solid #e2e9ee;padding-left:10px}.terrace-ref-area small{font-size:8px;color:#748794}.terrace-ref-area b{font-size:12px;color:#2a5e7d}.terrace-ref-area.q23 b{color:#227c9f}.mini-action{display:inline-flex;align-items:center;justify-content:center;padding:6px 9px;border:1px solid #c8d8e2;border-radius:8px;background:#fff;color:#1f648e;text-decoration:none;font-size:10px;font-weight:800;white-space:nowrap}.mini-action:hover{background:#eff8fd}.publicroad-form{background:#fff;border:1px solid #d4e1e9;border-radius:14px;overflow:hidden}.publicroad-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;padding:16px}.publicroad-form label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:800;color:#254e68}.publicroad-form label.wide{grid-column:1/-1}.publicroad-form input,.publicroad-form select,.publicroad-form textarea{font-weight:500}.publicroad-form .form-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;background:#f6f9fb;border-top:1px solid #dce6ec}.field-error{color:#a3232a!important}.control-toolbar,.control-complete{display:flex;align-items:center;gap:12px;justify-content:space-between;background:#f8fbfd;border:1px solid #d3e0e8;border-radius:11px;padding:9px 11px;margin-bottom:9px}.control-toolbar span,.control-complete span{font-size:10px;color:#60798a}.btn.success{background:#198b72!important;border-color:#198b72!important}.date-inline{display:flex;gap:6px}.date-inline input{min-height:38px}.daily-terrace-list{display:flex;flex-direction:column;gap:4px}.daily-terrace-row{display:grid;grid-template-columns:minmax(260px,1.4fr) 105px 125px minmax(250px,auto);align-items:center;gap:8px;background:#fff;border:1px solid #d5e2e9;border-left:4px solid #a9bac4;border-radius:9px;padding:6px 8px}.daily-terrace-row.result-ref{border-left-color:#168a70;background:#f8fdfb}.daily-terrace-row.result-zero{border-left-color:#8798a2;background:#fafcfd}.daily-terrace-row.result-excess{border-left-color:#c4312d;background:#fff8f7}.daily-terrace-row.result-other{border-left-color:#2b8db9;background:#f7fbfd}.daily-info b{display:block;font-size:11px;color:#174c6c}.daily-info small{display:block;font-size:8px;color:#708593;margin-top:1px}.daily-ref,.daily-current{display:flex;flex-direction:column}.daily-ref small,.daily-current small{font-size:7px;color:#7b8e9a}.daily-ref b,.daily-current b{font-size:10px;color:#294f66}.daily-actions{display:flex;gap:5px;justify-content:flex-end;align-items:center}.daily-actions form{display:flex;gap:4px}.quick{border:0;border-radius:7px;padding:6px 7px;font-size:8px;font-weight:850;cursor:pointer;white-space:nowrap}.quick.ref{background:#158a70;color:#fff}.quick.zero{background:#778c99;color:#fff}.quick.excess{background:#fff0ed;color:#a3352d;border:1px solid #e6aaa5;list-style:none}.daily-actions details{position:relative}.daily-actions details[open] .excess-form{display:grid}.excess-form{position:absolute;z-index:50;right:0;top:30px;width:290px;background:#fff;border:1px solid #cbdbe4;border-radius:10px;padding:9px;box-shadow:0 10px 30px rgba(0,0,0,.15);grid-template-columns:1fr 1fr;gap:6px}.excess-form input[name=notes],.excess-form input[type=file],.excess-form .btn{grid-column:1/-1}.close-control{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:12px}.close-control small{color:#687f8d}.report-table-wrap{overflow:auto;border:1px solid #d5e1e8;border-radius:12px;background:#fff}.report-table{width:100%;border-collapse:collapse;font-size:10px}.report-table th{background:#123f60;color:#fff;padding:7px 6px;text-align:left;white-space:nowrap}.report-table td{padding:6px;border-bottom:1px solid #e0e8ed}.report-table tr:nth-child(even) td{background:#f9fbfc}.commercial-row{display:grid;grid-template-columns:minmax(250px,1fr) 130px 130px auto;align-items:center;gap:10px;background:#fff;border:1px solid #d5e1e8;border-left:4px solid #4f9dbf;border-radius:9px;padding:8px 10px}.commercial-row>div b{display:block;color:#174d6e}.commercial-row small{font-size:8px;color:#718593}.commercial-row>span{display:flex;flex-direction:column}.commercial-row>span b{font-size:11px;color:#285f7f}.road-status-legend span{padding:3px 7px;border-radius:999px}.road-status-legend .pending{background:#fff0c3;color:#7b5c00}.road-status-legend .active{background:#def6ed;color:#14705b}.road-status-legend .incident{background:#ffe0dc;color:#a52823}.road-status-legend .expired{background:#ffead2;color:#a35a00}.road-status-legend .closed{background:#e9eef1;color:#60727e}.road-occ-row{display:grid;grid-template-columns:115px minmax(320px,1fr) 110px auto;align-items:center;gap:10px;background:#fff;border:1px solid #d5e1e8;border-left:4px solid #d5a81c;border-radius:9px;padding:8px 10px}.road-occ-row.status-active{border-left-color:#1a8b71}.road-occ-row.status-incident{border-left-color:#c3322d;background:#fff9f8}.road-occ-row.status-expired{border-left-color:#e18c22;background:#fffaf2}.road-occ-row.status-closed{border-left-color:#8798a2;background:#fafcfd}.road-ref b,.road-main b{display:block;color:#174e6f;font-size:11px}.road-ref small,.road-main small{display:block;font-size:8px;color:#718593;margin-top:2px}.road-state{font-size:9px;font-weight:850;color:#536d7e}.road-actions{display:flex;gap:5px}.protocol-hint{padding:10px 12px;background:#eaf5fa;border:1px solid #bcd8e6;border-radius:10px;color:#295b77;margin-bottom:10px;font-size:11px}.import-form{max-width:760px}
@media(max-width:900px){.publicroad-modules{grid-template-columns:1fr}.publicroad-kpis{grid-template-columns:repeat(2,1fr)}.terrace-ref-row{grid-template-columns:32px minmax(180px,1fr) 90px 90px auto}.daily-terrace-row{grid-template-columns:minmax(210px,1fr) 90px 100px auto}.road-occ-row{grid-template-columns:100px minmax(240px,1fr) 95px auto}}
@media(max-width:760px){.publicroad-head{display:block}.publicroad-head h1{font-size:23px}.publicroad-head p{font-size:11px}.publicroad-head .page-actions{margin-top:8px;justify-content:flex-start}.publicroad-kpis{display:none}.terrace-reminder{grid-template-columns:30px 1fr auto;padding:9px 10px}.terrace-reminder>span{font-size:22px}.terrace-reminder b{font-size:12px}.terrace-reminder small{font-size:8px}.publicroad-module{min-height:74px;padding:10px}.publicroad-module>span{font-size:27px}.publicroad-module b{font-size:13px}.publicroad-module small{font-size:9px}.publicroad-search,.publicroad-search.compact{grid-template-columns:minmax(0,1fr) 90px;gap:5px;padding:7px}.publicroad-search>input{grid-column:1/-1;font-size:14px}.publicroad-search>select{font-size:10px}.publicroad-search>button{font-size:11px}.publicroad-search.compact>span{grid-column:1/-1;font-size:8px;color:#6d8290}.terrace-ref-row{grid-template-columns:25px minmax(0,1fr) 63px 63px auto;gap:5px;padding:5px 6px;border-left-width:3px}.terrace-ref-num{width:22px;height:22px;font-size:8px}.terrace-ref-main b{font-size:10px}.terrace-ref-main small{font-size:6.8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.terrace-ref-area{padding-left:5px}.terrace-ref-area small{font-size:5.8px}.terrace-ref-area b{font-size:8px}.terrace-ref-row .mini-action{font-size:7px;padding:4px}.publicroad-form .form-grid{grid-template-columns:1fr;padding:11px}.publicroad-form label.wide{grid-column:1}.daily-terrace-row{grid-template-columns:minmax(0,1fr) 62px 66px;gap:4px;padding:5px 6px;border-left-width:3px}.daily-info b{font-size:9px}.daily-info small{font-size:6.5px}.daily-ref small,.daily-current small{font-size:5.8px}.daily-ref b,.daily-current b{font-size:7.6px}.daily-actions{grid-column:1/-1;justify-content:flex-start;border-top:1px solid #edf2f5;padding-top:4px}.quick{font-size:7px;padding:5px 6px}.excess-form{position:fixed;left:10px;right:10px;bottom:12px;top:auto;width:auto}.control-toolbar{display:block}.control-toolbar form{margin-bottom:5px}.close-control{display:block}.close-control .btn{width:100%}.commercial-row{grid-template-columns:minmax(0,1fr) 70px 70px auto;gap:5px;padding:6px}.commercial-row>div b{font-size:10px}.commercial-row>span b{font-size:8px}.commercial-row small{font-size:6.4px}.road-occ-row{grid-template-columns:76px minmax(0,1fr) 68px;gap:5px;padding:6px;border-left-width:3px}.road-ref b,.road-main b{font-size:9px}.road-ref small,.road-main small{font-size:6.5px}.road-state{font-size:7px}.road-actions{grid-column:1/-1;justify-content:flex-end}.road-actions .mini-action{font-size:7px;padding:4px 6px}.road-status-legend{font-size:7px;gap:5px}.report-table{font-size:8px}.report-table th,.report-table td{padding:4px}}

/* Alpha 47.24 · Control diario de terrazas más legible y editable */
.terrace-today-search{display:grid;grid-template-columns:22px minmax(260px,1fr) auto auto;align-items:center;gap:7px;margin:0 0 9px;padding:8px 10px;background:#fff;border:1px solid #d3e0e8;border-radius:11px}.terrace-today-search>span{font-size:17px}.terrace-today-search input{min-width:0;height:36px;border:1px solid #bfd0db;border-radius:8px;padding:0 11px;font-size:13px}.terrace-today-search small{font-size:9px;color:#698091;white-space:nowrap}.daily-terrace-row{grid-template-columns:minmax(260px,1.4fr) 105px 125px minmax(310px,auto);min-height:43px;padding:6px 9px}.daily-info b{font-size:12px}.daily-info small{font-size:8.5px}.daily-ref small,.daily-current small{font-size:7.5px}.daily-ref b,.daily-current b{font-size:10.5px}.daily-actions{gap:6px}.daily-actions .quick-actions-form{gap:6px}.quick{min-height:30px;padding:6px 10px;border-radius:8px;font-size:10px;line-height:1.1}.quick.ref{min-width:82px}.quick.zero{min-width:94px}.quick.excess{min-width:88px;display:inline-flex;align-items:center;justify-content:center}.measure-details>summary::-webkit-details-marker{display:none}.excess-form{top:35px;width:330px;grid-template-columns:1fr 1fr;padding:11px;gap:8px}.excess-form label{display:flex;flex-direction:column;gap:3px;font-size:9px;font-weight:800;color:#315d77}.excess-form label.wide,.excess-form .wide{grid-column:1/-1}.excess-form input,.excess-form select{min-width:0}.reference-review-backdrop{position:fixed;z-index:10000;inset:0;background:rgba(12,36,51,.52);display:flex;align-items:center;justify-content:center;padding:18px}.reference-review-card{width:min(520px,100%);background:#fff;border-radius:16px;border:1px solid #bfcfd9;box-shadow:0 24px 70px rgba(0,0,0,.28);padding:22px}.reference-review-icon{font-size:32px}.reference-review-card h2{margin:5px 0 8px;color:#123f60;font-size:21px}.reference-review-card p{margin:7px 0;color:#405d70;font-size:12px;line-height:1.45}.reference-review-values{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:13px 0}.reference-review-values span{display:flex;flex-direction:column;gap:3px;padding:10px;border-radius:9px;background:#f1f6f9;color:#617887;font-size:10px}.reference-review-values b{color:#123f60;font-size:15px}.reference-review-help{font-weight:700}.reference-review-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:16px}.reference-review-actions form{margin:0}
@media(max-width:900px){.daily-terrace-row{grid-template-columns:minmax(210px,1fr) 90px 100px minmax(280px,auto)}}
@media(max-width:760px){.terrace-today-search{grid-template-columns:20px minmax(0,1fr) auto;padding:6px 7px}.terrace-today-search input{height:34px;font-size:13px}.terrace-today-search small{grid-column:2/4}.daily-terrace-row{grid-template-columns:minmax(0,1fr) 62px 66px;min-height:0;gap:4px;padding:5px 6px;border-left-width:3px}.daily-actions{grid-column:1/-1;justify-content:flex-start;border-top:1px solid #edf2f5;padding-top:4px}.quick{min-height:28px;font-size:8px;padding:5px 7px}.quick.ref{min-width:72px}.quick.zero{min-width:82px}.quick.excess{min-width:74px}.excess-form{position:fixed;left:10px;right:10px;bottom:12px;top:auto;width:auto;max-height:70vh;overflow:auto}.reference-review-card{padding:16px}.reference-review-values{grid-template-columns:1fr}.reference-review-actions{display:grid;grid-template-columns:1fr;gap:7px}.reference-review-actions .btn{width:100%}}

/* Alpha 47.25 · Vía pública: control diario principal + mediciones de referencia completas */
.publicroad-modules-four{grid-template-columns:repeat(2,1fr)}
.publicroad-module.primary-module{border:2px solid #2389bd;background:#f3fbff;box-shadow:0 5px 16px rgba(31,122,169,.10)}
.publicroad-module.primary-module>span{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#168a70;color:#fff;font-size:25px;font-weight:900}
.publicroad-module.secondary-module{background:#fbfcfd}
.reference-search{grid-template-columns:minmax(280px,1fr) 110px 145px 185px auto}
.terrace-legend.readable{font-size:12px;gap:18px;padding:2px 6px 10px}
.terrace-legend.readable b{font-size:10px}
.terrace-ref-row{grid-template-columns:40px minmax(300px,1fr) 120px 120px 92px;padding:10px 12px;gap:12px}
.terrace-ref-num{width:32px;height:32px;font-size:12px}
.terrace-ref-main b{font-size:14px}
.terrace-ref-main small{font-size:10.5px;line-height:1.35;margin-top:3px}
.terrace-ref-area small{font-size:9px}.terrace-ref-area b{font-size:13px}.reference-open{font-size:11px;padding:7px 10px}
.terrace-reference-sheet{overflow:visible}.reference-section{border-bottom:1px solid #dde7ed}.reference-section:last-of-type{border-bottom:0}
.reference-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px 7px;color:#163f5b}.reference-section-title b{font-size:15px}.reference-section-title span{font-size:10px;color:#6d8290}
.reference-grid{padding-top:9px!important}.check-line .check-control{display:flex;align-items:center;gap:7px;min-height:42px;padding:8px 10px;background:#f7fafc;border:1px solid #cbdbe4;border-radius:9px}.check-line input{width:auto}.check-line small{color:#738793;font-weight:500}
.current-reference-strip{display:flex;gap:10px;padding:4px 16px 2px}.current-reference-strip span{padding:7px 10px;background:#eef5f8;border:1px solid #d5e2e9;border-radius:9px;font-size:10px;color:#667e8d}.current-reference-strip b{color:#164d6e;font-size:13px;margin-left:4px}
.reference-signatures-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:10px 16px 16px}.reference-signature-card{border:1px solid #d0dfe7;border-radius:11px;background:#fbfdfe;padding:10px}.reference-signature-card>b{display:block;color:#254e68;font-size:11px;margin-bottom:7px}.reference-signature-card .signature-canvas-wrap.compact{height:110px}.reference-signature-card canvas{height:100%;width:100%}
.reference-send-row{display:flex;align-items:center;gap:8px;margin:0 16px 12px;padding:10px 12px;background:#f3f8fb;border:1px solid #d4e2e9;border-radius:10px;color:#284f68;font-size:11px}.reference-send-row input{width:auto}.reference-send-row small{margin-left:auto;color:#8a6812}
.reference-actions{position:sticky;bottom:0;z-index:10;box-shadow:0 -5px 15px rgba(18,63,96,.05)}
.reference-history{margin-top:14px;padding:0;overflow:hidden}.reference-history>.reference-section-title{background:#f5f9fb;border-bottom:1px solid #d9e5eb}.reference-history-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid #e3eaee}.reference-history-row:last-child{border-bottom:0}.reference-history-row b{display:block;color:#174b6a;font-size:12px}.reference-history-row small{display:block;color:#708491;font-size:9px;margin-top:2px}.reference-history-actions{display:flex;gap:6px;align-items:center}.reference-history-actions form{margin:0}.empty.compact{padding:14px}
.terrace-today-search{grid-template-columns:22px minmax(260px,1fr) 150px auto auto auto}.terrace-today-search select{height:36px;border:1px solid #bfd0db;border-radius:8px;background:#fff;padding:0 8px;font-size:11px;color:#294f66}
.measure-details .excess-form{padding-top:38px}.measure-close{position:absolute;right:8px;top:7px;width:25px;height:25px;border-radius:50%;border:1px solid #cbd9e2;background:#fff;color:#315d77;font-size:19px;line-height:20px;cursor:pointer}.measure-close:hover{background:#eef6fa}.observed-field[hidden]{display:none!important}

@media(max-width:900px){.publicroad-modules-four{grid-template-columns:1fr}.reference-search{grid-template-columns:minmax(220px,1fr) 100px 130px auto}.reference-search select[name=zone]{grid-column:1/3}.terrace-ref-row{grid-template-columns:34px minmax(220px,1fr) 100px 100px auto}}
@media(max-width:760px){.publicroad-modules-four{grid-template-columns:1fr}.reference-search{grid-template-columns:1fr 1fr}.reference-search>input{grid-column:1/-1}.reference-search>select[name=zone]{grid-column:auto}.reference-search>button{grid-column:1/-1}.terrace-legend.readable{font-size:8px;gap:7px}.terrace-ref-row{grid-template-columns:25px minmax(0,1fr) 62px 62px;gap:5px;padding:6px}.terrace-ref-row .reference-open{grid-column:2/5;justify-self:start}.terrace-ref-main b{font-size:10px}.terrace-ref-main small{font-size:7px}.terrace-ref-area small{font-size:6px}.terrace-ref-area b{font-size:8px}.reference-signatures-grid{grid-template-columns:1fr;padding:8px 11px 12px}.reference-section-title{align-items:flex-start;flex-direction:column;gap:2px;padding:10px 11px 6px}.reference-section-title b{font-size:13px}.current-reference-strip{padding:3px 11px;overflow:auto}.current-reference-strip span{white-space:nowrap}.reference-send-row{margin:0 11px 10px;align-items:flex-start;flex-wrap:wrap}.reference-send-row small{margin-left:0;width:100%}.reference-actions{display:grid!important;grid-template-columns:1fr 1fr}.reference-actions .btn:last-child{grid-column:1/-1}.reference-history-row{grid-template-columns:1fr}.reference-history-actions{flex-wrap:wrap}.terrace-today-search{grid-template-columns:20px minmax(0,1fr) 105px}.terrace-today-search input{grid-column:2/4}.terrace-today-search select{grid-column:2/4}.terrace-today-search button,.terrace-today-search a{font-size:8px}.terrace-today-search small{grid-column:2/4}}

/* Alpha 47.26 · Jerarquía de Control de terrazas */
.terrace-module-switch{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:14px 0 18px}
.terrace-module-option{display:flex;align-items:center;gap:16px;min-height:122px;padding:20px;border:1px solid #c7d8e4;border-radius:14px;background:#fff;text-decoration:none;color:#17324a;box-shadow:0 2px 8px rgba(22,62,88,.05)}
.terrace-module-option>span{display:grid;place-items:center;flex:0 0 58px;width:58px;height:58px;border-radius:14px;background:#eef6fa;font-size:30px}
.terrace-module-option>div{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}.terrace-module-option b{font-size:18px;color:#124d74}.terrace-module-option small{font-size:13px;line-height:1.35;color:#5e7585}.terrace-module-option em{font-style:normal;font-size:12px;font-weight:700;color:#5b7180}
.terrace-module-option>strong{font-size:14px;white-space:nowrap;color:#1474a9}.terrace-module-option.primary{border:2px solid #1683bd;background:#f5fbfe}.terrace-module-option.secondary{border-left:5px solid #dfa71b}
.terrace-module-note{padding:16px 18px}.terrace-module-note p{margin:5px 0 0;color:#617584}
.inline-action-form{display:inline-flex;margin:0}.pdf-action-primary{background:#176f9c!important;color:#fff!important;border-color:#176f9c!important;font-weight:800}
@media(max-width:760px){.terrace-module-switch{grid-template-columns:1fr;gap:10px}.terrace-module-option{min-height:96px;padding:14px;gap:12px}.terrace-module-option>span{width:46px;height:46px;flex-basis:46px;font-size:24px}.terrace-module-option b{font-size:16px}.terrace-module-option small{font-size:12px}.terrace-module-option>strong{display:none}}

/* Alpha 47.27 - tramos de medicion de referencia de terrazas */
.measurement-parts{margin-top:12px;display:flex;flex-direction:column;gap:8px}.measurement-parts-head{display:flex;justify-content:space-between;align-items:end;gap:12px;color:#123f60}.measurement-parts-head small{color:#6b7f8c}.measurement-part-row{display:grid;grid-template-columns:34px minmax(180px,1.8fr) minmax(90px,.8fr) minmax(90px,.8fr) minmax(80px,.65fr) minmax(110px,.9fr) 34px;gap:8px;align-items:end;padding:9px;border:1px solid #cad9e2;border-radius:10px;background:#f8fbfc}.measurement-part-row label{margin:0}.measurement-part-row label>span{display:block;font-size:11px;font-weight:700;color:#405d70;margin-bottom:4px}.measurement-part-row input{width:100%;min-height:36px;border:1px solid #bfd0da;border-radius:7px;padding:6px 8px}.part-index{align-self:center;justify-self:center;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#eaf3f7;color:#0d638e;font-weight:800}.part-remove{width:30px;height:30px;border:1px solid #e5b8b2;border-radius:7px;background:#fff5f3;color:#a73327;font-size:20px;line-height:1;cursor:pointer}.add-measurement-part{margin-top:9px}.measurement-total-card{margin:12px 0 4px;padding:11px 14px;border-radius:10px;background:#eaf5f0;border:1px solid #b8d8ca;display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 14px}.measurement-total-card span{font-weight:700;color:#285846}.measurement-total-card strong{font-size:18px;color:#0e7256}.measurement-total-card small{grid-column:1/-1;color:#617584}.measurement-meta{margin-bottom:4px}
@media(max-width:760px){.measurement-parts-head{display:block}.measurement-part-row{grid-template-columns:28px 1fr 1fr;gap:6px}.measurement-part-row .part-label{grid-column:2/4}.measurement-part-row label>span{font-size:10px}.measurement-part-row .part-remove{grid-column:3;justify-self:end}.measurement-total-card{grid-template-columns:1fr auto}.measurement-part-row input{font-size:16px}}


/* Alpha 47.28 · Bajas de terrazas y acciones de referencia */
.terrace-status-card{margin:14px 0;padding:14px 16px;border:1px solid #cedbe3;border-radius:14px;background:#fff}.terrace-status-summary{display:flex;align-items:center;justify-content:space-between;gap:14px}.terrace-status-summary>div:first-child{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.terrace-status-summary small{width:100%;color:#687d8b}.status-pill{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:800}.status-pill.active{background:#dff5eb;color:#12664f}.status-pill.temporary{background:#fff2c9;color:#775600}.status-pill.permanent{background:#f8dede;color:#902b2b}.status-pill.tiny{font-size:9px;padding:2px 6px}.status-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.status-drop{position:relative}.status-drop>summary{list-style:none;cursor:pointer}.status-drop>summary::-webkit-details-marker{display:none}.status-drop-form,.daily-status-popover{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px;background:#fff;border:1px solid #cbd8e0;border-radius:12px;box-shadow:0 12px 30px rgba(20,55,75,.14);min-width:360px;z-index:30}.status-drop[open] .status-drop-form{position:absolute;right:0;top:calc(100% + 6px)}.status-drop-form label,.daily-status-popover label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:700;color:#28485c}.status-drop-form input,.daily-status-popover input{height:36px;border:1px solid #bdced9;border-radius:7px;padding:0 8px}.status-drop-form .wide,.daily-status-popover .wide{grid-column:1/-1}.btn.warning,.quick.pause{background:#f6b92c;color:#3d310d;border-color:#e0a116}.btn.danger{background:#bd352c;color:white;border-color:#a72922}.daily-status-details{position:relative}.daily-status-details>summary{list-style:none;cursor:pointer}.daily-status-details>summary::-webkit-details-marker{display:none}.daily-status-popover{position:absolute;right:0;top:calc(100% + 7px);width:390px}.reference-actions{flex-wrap:wrap}.pdf-action-primary{background:#176da0!important;color:#fff!important;border-color:#176da0!important}
@media(max-width:760px){.terrace-status-summary{align-items:stretch;flex-direction:column}.status-actions{width:100%}.status-drop{width:100%}.status-drop>summary{width:100%;text-align:center}.status-drop[open] .status-drop-form,.daily-status-popover{position:fixed;left:12px;right:12px;top:18%;width:auto;min-width:0;z-index:80}.daily-actions{flex-wrap:wrap}.quick.pause{min-width:62px}.reference-actions .btn{flex:1 1 45%}}

/* Alpha 47.29 · Acciones de medición simplificadas */
.reference-pdf-compact{display:inline-flex!important;align-items:center;justify-content:center;min-height:34px!important;padding:6px 12px!important;font-size:12px!important;font-weight:800!important;border:1px solid #1b719b!important;border-radius:8px!important;background:#eef7fb!important;color:#155f84!important;white-space:nowrap;text-decoration:none!important}
.reference-pdf-compact:hover{background:#dff0f8!important}
@media(max-width:760px){.reference-actions{grid-template-columns:1fr 1fr!important}.reference-actions .reference-pdf-compact{grid-column:auto!important;justify-self:start}.reference-actions .btn:last-child{grid-column:auto}}

/* Alpha 47.30 · archivo de fichas y acciones discretas */
.terrace-status-action{min-width:142px!important;min-height:34px!important;padding:6px 11px!important;font-size:12px!important;line-height:1.1!important;text-align:center!important}.status-actions .status-drop{flex:0 0 auto}.terrace-archive-card{padding:0;overflow:hidden}.terrace-archive-row{display:grid;grid-template-columns:38px minmax(260px,1fr) 95px 95px auto;gap:12px;align-items:center;padding:10px 14px;border-bottom:1px solid #e1eaef}.terrace-archive-row:last-child{border-bottom:0}.terrace-archive-row>div:nth-child(2){display:flex;flex-direction:column;min-width:0}.terrace-archive-row>div:nth-child(2)>b{font-size:13px;color:#174d6e}.terrace-archive-row small{font-size:9px;color:#6e8492}.archive-ref{width:30px;height:30px;border-radius:8px;background:#edf5f8;color:#17688f;display:grid;place-items:center;font-weight:800}.archive-areas{border-left:1px solid #dbe5ea;padding-left:10px}.archive-areas b{display:block;font-size:11px;color:#155c82}.terrace-archive-search{margin-bottom:12px}
@media(max-width:760px){.terrace-status-action{width:132px!important;min-width:132px!important}.status-actions{gap:6px!important}.status-actions .status-drop{width:auto!important}.status-drop>summary.terrace-status-action{width:132px!important}.terrace-archive-row{grid-template-columns:30px minmax(0,1fr) auto;gap:7px;padding:8px 9px}.terrace-archive-row .archive-areas{display:none}.terrace-archive-row .mini-action{grid-column:2/4;justify-self:start}.terrace-archive-search{grid-template-columns:1fr 1fr!important}.terrace-archive-search>input{grid-column:1/-1}.terrace-archive-search>button{grid-column:1/-1}}

/* Alpha 47.31 · móvil armónico y archivo documental de mediciones */
.measurement-folder-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;margin:14px 0;padding:11px 14px;border:1px solid #cbdce6;border-radius:12px;background:#fff;text-decoration:none;color:#173f59}.measurement-folder-icon{font-size:28px}.measurement-folder-card b{display:block;font-size:14px}.measurement-folder-card small{display:block;margin-top:2px;font-size:9px;color:#6c8290}.measurement-folder-card strong{font-size:11px;color:#1476a9}
.terrace-archive-folder{border-bottom:1px solid #e0e9ee}.terrace-archive-folder:last-child{border-bottom:0}.terrace-archive-folder>summary{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:11px 14px;cursor:pointer;list-style:none}.terrace-archive-folder>summary::-webkit-details-marker{display:none}.archive-folder-icon{font-size:24px}.archive-folder-main b{display:block;color:#174b6a;font-size:13px}.archive-folder-main small{display:block;color:#6c8190;font-size:9px;margin-top:2px}.archive-folder-count{font-size:9px;font-weight:800;color:#526e80;background:#edf4f7;border-radius:999px;padding:4px 8px}.archive-folder-open{font-size:10px;font-weight:850;color:#1474a9}.archive-folder-body{padding:0 14px 10px 58px;background:#fbfdfe}.archive-master-row,.archive-measure-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 0;border-top:1px solid #e3ebef}.archive-master-row{font-size:10px;color:#5d7585}.archive-measure-row b{display:block;font-size:11px;color:#214d68}.archive-measure-row small{display:block;font-size:8px;color:#708491;margin-top:2px}.archive-measure-actions{display:flex;gap:5px}.archive-measure-actions .pdf{color:#116b96}
@media(max-width:760px){
 .publicroad-head{gap:7px!important}.publicroad-head h1{font-size:24px!important;line-height:1.08!important}.publicroad-head p{font-size:12px!important;line-height:1.25!important;margin-top:2px!important}
 .publicroad-head .page-actions{display:flex!important;flex-wrap:wrap!important;gap:5px!important;width:100%!important}.publicroad-head .page-actions>.btn{flex:1 1 30%!important;min-width:0!important;min-height:42px!important;padding:7px 6px!important;font-size:10px!important;line-height:1.15!important;border-radius:9px!important}.publicroad-head .page-actions>.btn::first-line{font-size:10px!important}.publicroad-head .page-actions .date-inline{flex:1 1 100%!important;display:grid!important;grid-template-columns:1fr auto!important;gap:5px!important}.publicroad-head .page-actions .date-inline input{height:40px!important;font-size:12px!important}.publicroad-head .page-actions .date-inline .btn{height:40px!important;padding:6px 10px!important;font-size:10px!important}
 .reference-head .page-actions{display:grid!important;grid-template-columns:1fr 1fr!important}.reference-head .page-actions>.btn{min-height:40px!important;padding:6px 5px!important;font-size:9.5px!important}.reference-head .page-actions>.btn:first-child{grid-column:1/-1!important;min-height:36px!important}
 .reference-search{padding:8px!important;gap:5px!important}.reference-search input,.reference-search select{height:38px!important;font-size:11px!important}.reference-search .btn{height:38px!important;font-size:10px!important;padding:6px 8px!important}
 .terrace-today-search{padding:8px!important;gap:5px!important}.terrace-today-search input,.terrace-today-search select{height:38px!important;font-size:11px!important}.terrace-today-search button,.terrace-today-search a{height:36px!important;padding:5px 8px!important;font-size:9px!important}
 .measurement-folder-card{grid-template-columns:32px minmax(0,1fr) auto;padding:9px 10px;margin:10px 0}.measurement-folder-icon{font-size:22px}.measurement-folder-card b{font-size:12px}.measurement-folder-card small{font-size:8px}.measurement-folder-card strong{font-size:9px}
 .terrace-archive-folder>summary{grid-template-columns:28px minmax(0,1fr) auto;gap:6px;padding:9px}.archive-folder-icon{font-size:20px}.archive-folder-main b{font-size:11px}.archive-folder-main small{font-size:7.5px}.archive-folder-count{font-size:7px;padding:3px 5px}.archive-folder-open{display:none}.archive-folder-body{padding:0 9px 8px 43px}.archive-measure-row{grid-template-columns:1fr;padding:7px 0}.archive-measure-actions{justify-content:flex-start}.archive-measure-actions .mini-action{font-size:8px!important;padding:5px 7px!important}
}
/* Alpha 47.32 · legibilidad, checks operativos y accesos directos */
.novelty-action-checks{border:1px solid #d8e4eb;background:#f7fafc;border-radius:10px;padding:9px 10px}.novelty-action-checks>span{display:block;font-size:10px;font-weight:900;color:#315a73;margin-bottom:7px}.novelty-action-checks>span small{font-weight:600;color:#78909f}.novelty-action-checks>div{display:flex;flex-wrap:wrap;gap:6px}.novelty-action-checks label{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:4px;padding:5px 8px;border:1px solid #d4e0e7;border-radius:999px;background:#fff;font-size:9px!important;color:#36566a!important}.novelty-action-checks input{width:auto!important;margin:0}.novelty-action-badges{display:flex;flex-wrap:wrap;gap:4px;margin:5px 0}.novelty-action-badges b{font-size:8px;padding:3px 6px;border-radius:999px;background:#eaf4fa;color:#17658e;border:1px solid #c9e0ed}
.register-row{cursor:pointer}.register-direct-file{display:inline-grid!important;place-items:center;width:28px;height:28px;border-radius:8px;background:#e9f5fc;color:#126b9c!important;border:1px solid #bddceb;text-decoration:none!important;font-size:15px;font-weight:900;margin-right:5px}.register-direct-file:hover{background:#d7eefb}.register-file-state{display:flex;align-items:center;gap:4px}
/* Cerradas: siguen distinguiéndose, sin oscurecer ni perder contraste. */
.road-occ-row.status-closed{background:#f7f9fa!important;border-color:#d9e2e7!important;border-left:5px solid #8a9aa5!important;opacity:1!important}.road-occ-row.status-closed .road-ref b,.road-occ-row.status-closed .road-main b{color:#31556b!important}.road-occ-row.status-closed .road-ref small,.road-occ-row.status-closed .road-main small{color:#718592!important}.road-occ-row.status-closed .road-state{color:#667985!important}.road-occ-row.status-closed .road-state:before{content:'✓ ';font-weight:900}
.terrace-task-pulse{animation:terraceTaskPulse 1.15s ease-in-out infinite}@keyframes terraceTaskPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.9)}}
@media(max-width:760px){.novelty-action-checks>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.novelty-action-checks label{border-radius:8px;padding:7px}.register-direct-file{width:30px;height:30px}}

.terrace-top-task{display:inline-flex;align-items:center;gap:5px;margin-right:6px;padding:5px 7px;border:1px solid #e8c56a;border-radius:9px;background:#fff8df;color:#775300;text-decoration:none;font-size:9px;font-weight:850;white-space:nowrap}.terrace-top-task span{font-size:9px}@media(max-width:760px){.terrace-top-task{width:29px;height:29px;padding:0;justify-content:center;border-radius:50%;margin-right:3px}.terrace-top-task span{display:none}}

/* Alpha 47.34 · estados de Via Publica aislados de los estados globales de Objetos */
.road-occ-row.road-status-pending{background:#fff!important;border-color:#d5e1e8!important;border-left:4px solid #d5a81c!important;opacity:1!important}
.road-occ-row.road-status-active{background:#fff!important;border-color:#d5e1e8!important;border-left:4px solid #1a8b71!important;opacity:1!important}
.road-occ-row.road-status-incident{background:#fff9f8!important;border-color:#ead7d4!important;border-left:4px solid #c3322d!important;opacity:1!important}
.road-occ-row.road-status-expired{background:#fffaf2!important;border-color:#eadfce!important;border-left:4px solid #e18c22!important;opacity:1!important}
.road-occ-row.road-status-closed{background:#f7f9fa!important;border-color:#d9e2e7!important;border-left:4px solid #8a9aa5!important;opacity:1!important;filter:none!important}
.road-occ-row.road-status-closed .road-ref b,.road-occ-row.road-status-closed .road-main b{color:#31556b!important;opacity:1!important}
.road-occ-row.road-status-closed .road-ref small,.road-occ-row.road-status-closed .road-main small{color:#718592!important;opacity:1!important}
.road-occ-row.road-status-closed .road-state{color:#667985!important;opacity:1!important}
.road-occ-row.road-status-closed .road-state:before{content:'✓ ';font-weight:900}

/* Alpha 47.34 - estados operativos de ocupaciones */
.road-occ-row.road-status-expired{background:#fff0cf!important;border-color:#e8c16c!important;border-left:6px solid #e19012!important;box-shadow:0 1px 4px rgba(174,111,0,.10)!important}
.road-occ-row.road-status-expired .road-ref b,.road-occ-row.road-status-expired .road-main b{color:#174e6f!important}
.road-occ-row.road-status-expired .road-state{color:#9a5700!important;font-weight:900!important}
.road-occ-row.road-status-closed{background:#f5f7f8!important;border-color:#d8e0e5!important;border-left:4px solid #8b9ba5!important}
.road-finalize-form{margin:0;display:inline-flex}.road-finalize-form .mini-finalize{font-family:inherit;cursor:pointer;background:#f4f7f8;color:#4e6979;border-color:#bfcdd5}.road-finalize-form .mini-finalize:hover{background:#e9eff2;color:#284e65}
@media(max-width:760px){.road-occ-row.road-status-expired{border-left-width:5px!important}.road-actions{align-items:center;flex-wrap:wrap}.road-finalize-form .mini-finalize{font-size:7px;padding:4px 6px}}
/* Alpha 47.35 · Registros oficiales */
.official-grid .module{min-height:105px}.official-grid .module small+small{margin-top:5px;font-weight:700;opacity:.72}.backlink{display:inline-block;margin-bottom:8px;font-weight:700;text-decoration:none}
@media(max-width:700px){.official-grid .module{min-height:78px}.official-grid .module span{font-size:1.55rem}.official-grid .module small{line-height:1.2}.desktop-import-only{display:none!important}}

/* Alpha 47.37 · visor especializado de licencias de taxi */
.official-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:2px 0 14px}.official-tab{padding:10px 14px;border:1px solid #cbdbe5;border-radius:12px;background:#fff;color:#36596d;text-decoration:none;font-weight:800;font-size:13px}.official-tab.active{background:#0e4e78;color:#fff;border-color:#0e4e78}.official-taxi-search{margin-bottom:10px}.official-summary-line{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#688091;font-size:12px;margin:8px 4px 12px}.official-license-list{display:grid;gap:8px}.official-license-row{display:grid;grid-template-columns:74px minmax(220px,1.1fr) minmax(260px,1fr) minmax(210px,.8fr) 20px;gap:16px;align-items:center;background:#fff;border:1px solid #d9e5ec;border-radius:15px;padding:13px 14px;text-decoration:none;color:#153b54;box-shadow:0 1px 3px rgba(20,62,88,.04)}.official-license-row:hover{border-color:#8fb8cf;box-shadow:0 4px 14px rgba(20,62,88,.09)}.license-number{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#edf6fb;border-radius:11px;padding:8px 5px}.license-number small{font-size:8px;letter-spacing:.08em;color:#6d8798;font-weight:900}.license-number strong{font-size:24px;line-height:1;color:#0b5f8e}.license-holder,.license-operation,.license-meta{display:flex;flex-direction:column;gap:4px;min-width:0}.license-holder strong{font-size:14px}.license-holder span,.license-operation span,.license-meta small{font-size:11px;color:#647f90;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.license-operation b{color:#294f66;margin-right:4px}.license-meta{align-items:flex-start}.status-pill,.verify-pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:900;line-height:1.2}.status-pill{background:#eaf5ee;color:#237243}.status-anulada,.status-anulado,.status-baja{background:#f2f3f4;color:#6a7780}.status-suspendida{background:#fff1d6;color:#965e00}.status-pendiente-de-verificar{background:#fff4d7;color:#8d6300}.verify-pill{background:#fff0cf;color:#8b5900}.row-arrow{font-size:28px;color:#7da4b8}.license-title-line{display:flex;gap:14px;align-items:center}.license-big-number{display:grid;place-items:center;min-width:66px;height:66px;padding:0 10px;background:#0e5a86;color:#fff;border-radius:16px;font-size:28px;font-weight:900}.detail-head-status{display:flex;gap:8px;align-items:flex-end;flex-direction:column}.edit-note{font-size:10px;color:#6a8190}.taxi-current-card{margin-bottom:12px}.section-title small{font-weight:900;color:#7890a0;letter-spacing:.08em}.section-title h2{margin:2px 0 10px}.taxi-data-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px}.taxi-data-grid>div{padding:10px 12px;border-radius:10px;background:#f6f9fb;border:1px solid #e0e9ee}.taxi-data-grid small{display:block;color:#7890a0;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}.taxi-data-grid b{font-size:12px;color:#183e56}.taxi-current-note{margin-top:10px;padding:10px 12px;background:#fbfcfd;border-left:3px solid #9eb8c7}.taxi-current-note p{margin:4px 0 0;color:#566f7e}.taxi-detail-tabs{display:flex;gap:7px;overflow-x:auto;padding:4px 0 10px}.taxi-detail-tab{border:1px solid #cfdee6;background:#fff;color:#36576a;border-radius:11px;padding:9px 12px;font:inherit;font-weight:850;cursor:pointer;white-space:nowrap}.taxi-detail-tab span{background:#edf3f6;padding:2px 6px;border-radius:999px;font-size:9px;margin-left:4px}.taxi-detail-tab.active{background:#0e4e78;color:white;border-color:#0e4e78}.taxi-detail-tab.active span{background:rgba(255,255,255,.18)}.taxi-tab-panel{display:none}.taxi-tab-panel.active{display:block}.history-stack{display:grid;gap:8px}.history-entry{position:relative;display:grid;grid-template-columns:18px 1fr;gap:8px;background:#fff;border:1px solid #dbe6ec;border-radius:13px;padding:12px}.history-entry.needs-check{background:#fffaf0;border-color:#ead49b}.history-dot{width:10px;height:10px;border-radius:50%;background:#2879a4;margin-top:5px;box-shadow:0 0 0 4px #e4f1f7}.history-top{display:flex;justify-content:space-between;gap:12px;color:#698292;font-size:10px}.history-content h3{margin:3px 0;font-size:13px}.history-content p{margin:2px 0;color:#607887;font-size:11px}.transcription-note{display:block;color:#8a6a24;margin-top:5px;font-style:italic}.history-table-wrap{overflow-x:auto;background:#fff;border:1px solid #dce6eb;border-radius:13px}.history-table{width:100%;border-collapse:collapse;font-size:11px}.history-table th{background:#eef5f8;color:#4d6878;text-align:left;padding:8px;font-size:9px;text-transform:uppercase;letter-spacing:.04em}.history-table td{padding:9px 8px;border-top:1px solid #e8eef1;vertical-align:top}.history-table tr.needs-check-row{background:#fffaf0}.empty-panel{background:#fff;border:1px dashed #cadbe4;border-radius:12px;padding:18px;color:#6f8593;text-align:center}
@media(max-width:900px){.official-license-row{grid-template-columns:58px 1fr 20px;gap:10px}.license-operation{grid-column:2}.license-meta{grid-column:2}.row-arrow{grid-column:3;grid-row:1/4}.taxi-data-grid{grid-template-columns:repeat(2,minmax(130px,1fr))}}
@media(max-width:600px){.official-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px}.official-tab{text-align:center;padding:8px 6px;font-size:10px}.official-summary-line{font-size:10px}.official-summary-line span{display:none}.official-license-row{grid-template-columns:52px 1fr 14px;padding:10px;gap:8px}.license-number strong{font-size:20px}.license-holder strong{font-size:12px}.license-holder span,.license-operation span,.license-meta small{font-size:9px}.license-meta{flex-direction:row;flex-wrap:wrap}.status-pill,.verify-pill{font-size:8px;padding:3px 6px}.license-title-line{align-items:flex-start}.license-big-number{min-width:50px;height:50px;border-radius:12px;font-size:21px}.taxi-detail-head{align-items:flex-start}.detail-head-status{align-items:flex-start}.taxi-data-grid{grid-template-columns:1fr}.history-top{flex-direction:column;gap:2px}.history-table{font-size:9px}}

/* Alpha 48 · ficha compartimentada de licencias y trazabilidad editable */
.taxi-detail-tabs-five{margin:4px 0 12px;padding:6px;background:#eaf2f6;border:1px solid #d6e3ea;border-radius:14px}.taxi-detail-tabs-five .taxi-detail-tab{flex:0 0 auto}.taxi-panel-card{margin:0}.taxi-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:2px 0 10px}.taxi-panel-head h2{margin:2px 0 0}.taxi-action-btn{font-size:11px;padding:7px 10px;white-space:nowrap}.taxi-audit-line{display:block;margin-top:7px;padding-top:6px;border-top:1px solid #e7eef2;color:#78909d;font-size:9px;font-style:normal}.taxi-edit-card{max-width:920px}.taxi-edit-form{display:grid;gap:14px}.taxi-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:13px}.taxi-edit-grid label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:800;color:#49687a}.taxi-edit-grid label.wide{grid-column:1/-1}.taxi-edit-grid input,.taxi-edit-grid select,.taxi-edit-grid textarea{width:100%;box-sizing:border-box;border:1px solid #c8d8e2;border-radius:9px;background:#fff;padding:9px 10px;font:inherit;color:#173e56}.taxi-edit-grid textarea{min-height:86px;resize:vertical}.taxi-edit-grid .errorlist{list-style:none;margin:0;padding:0;color:#a73737;font-size:10px}.taxi-trace-warning{padding:10px 12px;border:1px solid #d5e3ea;border-left:4px solid #307da5;border-radius:10px;background:#f5f9fb;color:#567081;font-size:11px}.taxi-trace-warning b{color:#1f526f}
@media(max-width:700px){.taxi-detail-tabs-five{display:flex;overflow-x:auto;flex-wrap:nowrap}.taxi-panel-head{align-items:flex-start;flex-direction:column}.taxi-action-btn{width:auto}.taxi-edit-grid{grid-template-columns:1fr}.taxi-edit-grid label.wide{grid-column:auto}.taxi-edit-card{padding:12px}}
/* Alpha 48.1 · semáforos de estado y tres grupos de licencias */
.official-tabs-three{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));max-width:860px}
.traffic-state{display:inline-flex;align-items:center;gap:7px;font-size:11px;color:#4f6878;white-space:nowrap}
.traffic-state b{font-size:11px;color:#294b60}.traffic-state-large{padding:5px 9px;background:#fff;border:1px solid #d9e5eb;border-radius:999px}.traffic-state.mini{font-size:9px}.traffic-state.mini .status-light{width:9px;height:9px;box-shadow:0 0 0 3px #00000008}.history-top b{display:inline-flex;align-items:center;gap:4px}.history-top .status-light{width:9px;height:9px;box-shadow:0 0 0 3px #00000008}
@media(max-width:600px){.official-tabs-three{grid-template-columns:1fr}.traffic-state-large{padding:4px 7px}.history-table .traffic-state.mini{font-size:8px}}

/* Alpha 48.4 · filtros y edición trazable de históricos de taxi */
.official-taxi-search{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
.official-taxi-search label{display:flex;flex-direction:column;gap:4px}
.taxi-status-filter{min-width:145px;height:42px;border:1px solid #c9dae6;border-radius:9px;background:#fff;padding:0 34px 0 12px;font-weight:700;color:#173f5f}
.mini-history-edit{display:inline-flex!important;align-items:center;justify-content:center;margin-left:6px;padding:5px 9px!important;font-size:12px!important;white-space:nowrap}
.corrected-pill{background:#edf8f0!important;border-color:#a8d5b2!important;color:#28613a!important;margin-left:4px}
@media(max-width:760px){.official-taxi-search label{width:100%}.official-taxi-search input,.taxi-status-filter{width:100%;max-width:none}.mini-history-edit{margin:5px 0 0 0}}

/* Alpha 48.7 · ajuste visual: edición de titulares históricos */
#tab-titulares .history-content{position:relative;padding-right:76px}
#tab-titulares .mini-history-edit{position:absolute;right:0;top:50%;transform:translateY(-50%);margin:0!important;padding:4px 7px!important;font-size:10px!important;line-height:1.1;min-height:auto}
@media(max-width:760px){#tab-titulares .history-content{padding-right:0}#tab-titulares .mini-history-edit{position:static;transform:none;margin-top:6px!important;padding:4px 7px!important;font-size:10px!important}}

/* Alpha 48.8 · ajustes de interfaz solicitados */
/* Histórico de conductores: acción Editar compacta y pegada al extremo derecho. */
#tab-conductores .history-table th:last-child,
#tab-conductores .history-table td:last-child{
  width:72px;
  min-width:72px;
  text-align:right;
  white-space:nowrap;
}
#tab-conductores .mini-history-edit{
  margin:0!important;
  padding:4px 7px!important;
  min-height:auto!important;
  font-size:10px!important;
  line-height:1.1!important;
}

/* Móvil: buscador y desplegable Estado alineados y con exactamente la misma altura. */
@media(max-width:760px){
  .official-taxi-search{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:10px 12px!important;
    align-items:end!important;
  }
  .official-taxi-search>label{
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    display:flex!important;
    flex-direction:column!important;
    gap:6px!important;
  }
  .official-taxi-search>label input[type="search"],
  .official-taxi-search>label .taxi-status-filter{
    width:100%!important;
    max-width:none!important;
    height:60px!important;
    min-height:60px!important;
    box-sizing:border-box!important;
    margin:0!important;
  }
  .official-taxi-search>button.btn,
  .official-taxi-search>a.btn{
    justify-self:start;
    margin:0!important;
  }
}

/* Alpha 48.9 · corrección efectiva de caché y alineación solicitada */
/* Titulares: Editar siempre compacto y al extremo derecho de la ficha. */
#tab-titulares .history-content{
  position:relative!important;
  min-width:0!important;
  padding-right:78px!important;
}
#tab-titulares .mini-history-edit{
  position:absolute!important;
  right:0!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  margin:0!important;
  padding:4px 7px!important;
  min-height:28px!important;
  height:28px!important;
  font-size:10px!important;
  line-height:1!important;
  border-radius:7px!important;
  width:auto!important;
}

/* Conductores: columna de acción visible al extremo derecho, incluso con scroll horizontal. */
#tab-conductores .history-table th:last-child,
#tab-conductores .history-table td:last-child{
  position:sticky!important;
  right:0!important;
  z-index:2!important;
  width:68px!important;
  min-width:68px!important;
  max-width:68px!important;
  text-align:right!important;
  white-space:nowrap!important;
  background:#fff!important;
}
#tab-conductores .history-table tr.needs-check-row td:last-child{background:#fffaf0!important}
#tab-conductores .history-table th:last-child{background:#eef5f8!important;z-index:3!important}
#tab-conductores .mini-history-edit{
  margin:0!important;
  padding:4px 6px!important;
  min-height:28px!important;
  height:28px!important;
  font-size:10px!important;
  line-height:1!important;
  border-radius:7px!important;
  width:auto!important;
}

/* Móvil: Buscar y Estado comparten exactamente la misma rejilla y altura. */
@media(max-width:760px){
  .official-taxi-search{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-auto-rows:auto!important;
    column-gap:12px!important;
    row-gap:12px!important;
    align-items:start!important;
  }
  .official-taxi-search>input[type="hidden"]{display:none!important}
  .official-taxi-search>label{
    display:grid!important;
    grid-template-rows:24px 60px!important;
    align-items:end!important;
    width:auto!important;
    min-width:0!important;
    height:84px!important;
    margin:0!important;
    gap:0!important;
    line-height:24px!important;
  }
  .official-taxi-search>label>input[type="search"],
  .official-taxi-search>label>select.taxi-status-filter{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:60px!important;
    min-height:60px!important;
    max-height:60px!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding-top:0!important;
    padding-bottom:0!important;
    align-self:end!important;
  }
  .official-taxi-search>button.btn{
    grid-column:1/-1!important;
    justify-self:start!important;
    margin:0!important;
  }
  .official-taxi-search>a.btn{
    grid-column:1/-1!important;
    justify-self:start!important;
    margin-top:-6px!important;
  }
  #tab-titulares .history-content{padding-right:72px!important}
  #tab-titulares .mini-history-edit{
    position:absolute!important;
    right:0!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    margin:0!important;
  }
}

/* Alpha 48.10 · controles de búsqueda más compactos en móvil */
@media(max-width:760px){
  .official-taxi-search>label{
    grid-template-rows:20px 46px!important;
    height:66px!important;
    line-height:20px!important;
  }
  .official-taxi-search>label>input[type="search"],
  .official-taxi-search>label>select.taxi-status-filter{
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    padding-top:0!important;
    padding-bottom:0!important;
  }
}


/* Alpha 49 · Licencias de pastos */
.pasture-pagehead{align-items:flex-start}.pasture-yearbar{display:flex;align-items:center;gap:14px;margin:0 0 12px;padding:10px 13px;background:#eaf3f7;border:1px solid #d2e1e9;border-radius:13px}.pasture-yearbar>div:first-child{display:flex;align-items:baseline;gap:7px}.pasture-yearbar small{font-size:9px;color:#6d8796;font-weight:900;letter-spacing:.07em}.pasture-yearbar strong{font-size:20px;color:#0d527d}.pasture-year-tabs{display:flex;gap:6px;flex-wrap:wrap}.pasture-year-tabs a{padding:6px 10px;border-radius:9px;background:#fff;border:1px solid #c9dae4;color:#365d72;text-decoration:none;font-size:11px;font-weight:900}.pasture-year-tabs a.active{background:#0d5b87;color:#fff;border-color:#0d5b87}.pasture-update{margin-left:auto}.pasture-search{display:grid;grid-template-columns:minmax(280px,1fr) 190px auto auto;align-items:end;gap:10px;margin-bottom:10px;padding:12px}.pasture-search label{display:flex;flex-direction:column;gap:5px;color:#4a687a;font-size:11px;font-weight:900}.pasture-search input,.pasture-search select{height:42px;border:1px solid #c9d9e3;border-radius:10px;background:#fff;padding:0 12px;font:inherit;color:#173e57}.pasture-stats{display:flex;gap:16px;align-items:center;margin:6px 3px 11px;color:#637e8e;font-size:11px}.pasture-stats b{color:#174763}.pasture-shown{margin-left:auto}.pasture-list{display:grid;gap:8px}.pasture-row{display:grid;grid-template-columns:86px minmax(260px,1fr) 180px;gap:14px;align-items:center;background:#fff;border:1px solid #d8e5ec;border-radius:14px;padding:11px 13px;box-shadow:0 1px 3px rgba(20,62,88,.04)}.pasture-crotal{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:54px;background:#edf7fa;border-radius:11px}.pasture-crotal small,.pasture-phone small{font-size:8px;letter-spacing:.08em;font-weight:900;color:#718b99}.pasture-crotal strong{font-size:23px;line-height:1.05;color:#0d648f}.pasture-person{min-width:0}.pasture-person h3{margin:1px 0 3px;font-size:14px;color:#173f59}.pasture-person p{margin:0;color:#6b8290;font-size:11px;white-space:pre-line}.pasture-species{font-size:9px;font-weight:900;color:#5b7e91;text-transform:uppercase;letter-spacing:.04em}.pasture-phone{display:flex;flex-direction:column;gap:3px;align-items:flex-start}.pasture-phone b{font-size:12px;color:#244e66}
@media(max-width:700px){.pasture-pagehead{gap:12px}.pasture-pagehead .btn{width:100%;box-sizing:border-box;text-align:center}.pasture-yearbar{align-items:flex-start;flex-wrap:wrap}.pasture-update{width:100%;margin-left:0}.pasture-search{grid-template-columns:1fr 125px;padding:11px;gap:8px}.pasture-search label{min-width:0}.pasture-search input,.pasture-search select{width:100%;min-width:0;height:44px;box-sizing:border-box}.pasture-search .btn{height:42px}.pasture-stats{display:grid;grid-template-columns:1fr 1fr;gap:5px 10px}.pasture-shown{margin-left:0}.pasture-row{grid-template-columns:62px 1fr;padding:10px;gap:9px}.pasture-crotal{min-height:58px}.pasture-crotal strong{font-size:20px}.pasture-person h3{font-size:12px}.pasture-person p{font-size:10px}.pasture-phone{grid-column:2;flex-direction:row;align-items:baseline;gap:7px}.pasture-phone small{font-size:8px}.pasture-phone b{font-size:10px}}

/* Alpha 49.1 · búsqueda separada y ficha emergente de licencias de pastos */
.pasture-search-v2{grid-template-columns:minmax(240px,1fr) 150px 190px auto auto}
.pasture-row-open{position:relative;cursor:pointer;padding-right:38px;transition:border-color .15s,box-shadow .15s,transform .15s}.pasture-row-open:hover{border-color:#9fc7d8;box-shadow:0 4px 12px rgba(20,62,88,.08)}.pasture-chevron{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:30px;line-height:1;color:#74a3b7}.pasture-row-open:focus{outline:3px solid rgba(23,124,172,.16);outline-offset:1px}
.pasture-modal{position:fixed;inset:0;z-index:5000;display:none;align-items:center;justify-content:center;padding:18px}.pasture-modal.open{display:flex}.pasture-modal-backdrop{position:absolute;inset:0;background:rgba(7,28,42,.56);backdrop-filter:blur(2px)}.pasture-modal-card{position:relative;z-index:1;width:min(720px,100%);max-height:calc(100vh - 36px);overflow:auto;background:#fff;border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.28);padding:22px}.pasture-modal-close{position:absolute;right:13px;top:10px;width:34px;height:34px;border:0;border-radius:50%;background:#eef5f8;color:#234b61;font-size:25px;line-height:1;cursor:pointer}.pasture-modal-head{padding-right:42px;margin-bottom:18px}.pasture-modal-head small{font-size:9px;letter-spacing:.08em;font-weight:900;color:#7891a0}.pasture-modal-head h2{margin:3px 0 5px;color:#173f59}.pasture-modal-species{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e8f5f8;color:#126287;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.pasture-modal-grid{display:grid;grid-template-columns:150px 1fr;gap:13px}.pasture-modal-grid label{display:flex;flex-direction:column;gap:5px}.pasture-modal-grid label>span{font-size:10px;font-weight:900;color:#617f90}.pasture-modal-grid input,.pasture-modal-grid textarea{width:100%;box-sizing:border-box;border:1px solid #cbdce5;border-radius:10px;background:#fff;padding:10px 11px;color:#173e57;font:inherit}.pasture-modal-grid input{height:44px}.pasture-modal-grid textarea{resize:vertical;min-height:76px}.pasture-modal-grid [readonly]{background:#f5f8fa;color:#536e7e}.pasture-modal-wide{grid-column:2}.pasture-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.modal-open{overflow:hidden}
@media(max-width:700px){.pasture-search-v2{grid-template-columns:1fr 108px}.pasture-search-v2 label:nth-of-type(3){grid-column:1 / -1}.pasture-search-v2 .btn{height:42px}.pasture-row-open{padding-right:30px}.pasture-chevron{right:10px}.pasture-modal{padding:10px;align-items:flex-end}.pasture-modal-card{width:100%;max-height:90vh;border-radius:18px 18px 0 0;padding:18px}.pasture-modal-grid{grid-template-columns:1fr}.pasture-modal-wide{grid-column:auto}.pasture-modal-actions .btn{flex:1}}

/* Alpha 49.2 · Licencias de pastos: interfaz móvil más compacta */
@media(max-width:700px){
  .pasture-pagehead{margin-bottom:8px;gap:7px}
  .pasture-pagehead h1{font-size:28px;line-height:1.08;margin:0}
  .pasture-pagehead p{font-size:13px;line-height:1.25;margin-top:3px}
  .pasture-pagehead .backlink{font-size:12px}
  .pasture-pagehead .btn{padding:8px 10px;font-size:12px;border-radius:9px}

  .pasture-yearbar{padding:7px 9px;margin-bottom:8px;gap:8px;border-radius:11px;align-items:center}
  .pasture-yearbar>div:first-child{gap:5px}
  .pasture-yearbar strong{font-size:17px}
  .pasture-year-tabs a{padding:4px 8px;font-size:10px;border-radius:8px}
  .pasture-update{font-size:8px!important;width:auto;margin-left:auto}

  .pasture-search-v2{grid-template-columns:minmax(0,1fr) 88px;gap:6px;padding:8px;margin-bottom:7px;border-radius:12px}
  .pasture-search-v2 label{gap:3px;font-size:10px}
  .pasture-search-v2 input,.pasture-search-v2 select{height:38px;min-height:38px;padding:0 9px;border-radius:9px;font-size:12px}
  .pasture-search-v2 label:nth-of-type(3){grid-column:1 / -1}
  .pasture-search-v2 label:nth-of-type(3) select{height:38px;min-height:38px}
  .pasture-search-v2 .btn{height:36px;padding:6px 10px;font-size:12px;border-radius:9px}
  .pasture-search-v2 .btn-primary{grid-column:1 / 2;width:max-content;min-width:86px}

  .pasture-stats{margin:4px 3px 7px;font-size:10px;gap:3px 8px}
}

@media(max-width:430px){
  .pasture-pagehead h1{font-size:25px}
  .pasture-pagehead p{font-size:12px}
  .pasture-search-v2{grid-template-columns:minmax(0,1fr) 82px}
  .pasture-search-v2 input,.pasture-search-v2 select{font-size:11px}
}

/* Alpha 50 · Padrón municipal de vados */
.vado-pagehead{align-items:flex-start}.vado-yearbar{display:flex;align-items:center;gap:14px;margin:0 0 10px;padding:9px 12px;background:#eef4f7;border:1px solid #d5e2e9;border-radius:12px}.vado-yearbar>div:first-child{display:flex;align-items:baseline;gap:7px}.vado-yearbar small{font-size:9px;color:#6d8796;font-weight:900;letter-spacing:.07em}.vado-yearbar strong{font-size:20px;color:#0d527d}.vado-year-tabs{display:flex;gap:6px;flex-wrap:wrap}.vado-year-tabs a{padding:5px 9px;border-radius:8px;background:#fff;border:1px solid #c9dae4;color:#365d72;text-decoration:none;font-size:11px;font-weight:900}.vado-year-tabs a.active{background:#0d5b87;color:#fff;border-color:#0d5b87}.vado-update{margin-left:auto}.vado-search{display:grid;grid-template-columns:minmax(220px,1.25fr) 105px 150px minmax(180px,1fr) auto auto;align-items:end;gap:8px;margin-bottom:8px;padding:10px}.vado-search label{display:flex;flex-direction:column;gap:4px;color:#4a687a;font-size:10px;font-weight:900}.vado-search input{height:39px;border:1px solid #c9d9e3;border-radius:9px;background:#fff;padding:0 10px;font:inherit;color:#173e57;box-sizing:border-box;width:100%;min-width:0}.vado-search .btn{height:39px;padding-top:0;padding-bottom:0}.vado-stats{display:flex;gap:15px;align-items:center;margin:4px 3px 9px;color:#637e8e;font-size:11px}.vado-stats b{color:#174763}.vado-shown{margin-left:auto}.vado-list{display:grid;gap:8px}.vado-row{position:relative;display:grid;grid-template-columns:82px minmax(260px,1fr) 150px;gap:13px;align-items:center;background:#fff;border:1px solid #d8e5ec;border-radius:14px;padding:10px 38px 10px 12px;box-shadow:0 1px 3px rgba(20,62,88,.04);cursor:pointer}.vado-row:hover{border-color:#9fc7d8;box-shadow:0 4px 12px rgba(20,62,88,.08)}.vado-row:focus{outline:3px solid rgba(23,124,172,.16);outline-offset:1px}.vado-number{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:53px;background:#edf7fa;border-radius:11px}.vado-number small,.vado-nif small{font-size:8px;letter-spacing:.08em;font-weight:900;color:#718b99}.vado-number strong{font-size:22px;line-height:1.05;color:#0d648f}.vado-person{min-width:0}.vado-person h3{margin:1px 0 3px;font-size:14px;color:#173f59}.vado-person p{margin:0;color:#6b8290;font-size:11px;white-space:normal}.vado-nif{display:flex;flex-direction:column;gap:3px}.vado-nif b{font-size:12px;color:#244e66}.vado-chevron{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:29px;line-height:1;color:#74a3b7}.vado-modal{position:fixed;inset:0;z-index:5000;display:none;align-items:center;justify-content:center;padding:18px}.vado-modal.open{display:flex}.vado-modal-backdrop{position:absolute;inset:0;background:rgba(7,28,42,.56);backdrop-filter:blur(2px)}.vado-modal-card{position:relative;z-index:1;width:min(720px,100%);max-height:calc(100vh - 36px);overflow:auto;background:#fff;border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.28);padding:22px}.vado-modal-close{position:absolute;right:13px;top:10px;width:34px;height:34px;border:0;border-radius:50%;background:#eef5f8;color:#234b61;font-size:25px;line-height:1;cursor:pointer}.vado-modal-head{padding-right:42px;margin-bottom:16px}.vado-modal-head small{font-size:9px;letter-spacing:.08em;font-weight:900;color:#7891a0}.vado-modal-head h2{margin:3px 0 5px;color:#173f59}.vado-modal-number{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e8f5f8;color:#126287;font-size:10px;font-weight:900}.vado-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.vado-modal-grid label{display:flex;flex-direction:column;gap:5px}.vado-modal-grid label>span{font-size:10px;font-weight:900;color:#617f90}.vado-modal-grid input,.vado-modal-grid textarea{width:100%;box-sizing:border-box;border:1px solid #cbdce5;border-radius:10px;background:#fff;padding:10px 11px;color:#173e57;font:inherit}.vado-modal-grid input{height:43px}.vado-modal-grid textarea{resize:vertical;min-height:82px}.vado-modal-grid [readonly]{background:#f5f8fa;color:#536e7e}.vado-modal-wide{grid-column:1 / -1}.vado-modal-note{margin-top:8px;color:#718794;font-size:10px}.vado-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:16px}
@media(max-width:700px){.vado-pagehead{margin-bottom:7px;gap:7px}.vado-pagehead h1{font-size:26px;line-height:1.08;margin:0}.vado-pagehead p{font-size:12px;line-height:1.2;margin-top:3px}.vado-pagehead .backlink{font-size:12px}.vado-pagehead .btn{width:100%;box-sizing:border-box;text-align:center;padding:7px 9px;font-size:11px;border-radius:9px}.vado-yearbar{padding:7px 9px;margin-bottom:7px;gap:7px;border-radius:11px;align-items:center;flex-wrap:wrap}.vado-yearbar strong{font-size:17px}.vado-year-tabs a{padding:4px 8px;font-size:10px}.vado-update{font-size:8px!important;width:auto;margin-left:auto}.vado-search{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;padding:8px;margin-bottom:6px;border-radius:12px}.vado-search label{gap:3px;font-size:9px}.vado-search input{height:36px;min-height:36px;padding:0 8px;border-radius:8px;font-size:11px}.vado-search label:nth-of-type(3),.vado-search label:nth-of-type(4){grid-column:auto}.vado-search .btn{height:35px;padding:5px 9px;font-size:11px;border-radius:8px}.vado-search .btn-primary{grid-column:1;width:max-content;min-width:82px}.vado-stats{display:grid;grid-template-columns:1fr 1fr;gap:3px 8px;margin:3px 3px 6px;font-size:10px}.vado-shown{margin-left:0}.vado-row{grid-template-columns:62px 1fr;padding:9px 29px 9px 9px;gap:9px}.vado-number{min-height:56px}.vado-number strong{font-size:20px}.vado-person h3{font-size:12px}.vado-person p{font-size:10px}.vado-nif{grid-column:2;flex-direction:row;align-items:baseline;gap:7px}.vado-nif b{font-size:10px}.vado-chevron{right:9px}.vado-modal{padding:10px;align-items:flex-end}.vado-modal-card{width:100%;max-height:90vh;border-radius:18px 18px 0 0;padding:18px}.vado-modal-grid{grid-template-columns:1fr}.vado-modal-wide{grid-column:auto}.vado-modal-actions .btn{flex:1}}
@media(max-width:430px){.vado-pagehead h1{font-size:24px}.vado-search{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.vado-search input{font-size:10.5px}}

/* Alpha 51 · Animales potencialmente peligrosos + exportación discreta */
.official-head-actions,.ppp-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.mini-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid #c9dbe4;border-radius:8px;background:#fff;color:#24556f;text-decoration:none;font-size:15px;font-weight:900;box-shadow:0 1px 2px rgba(15,55,78,.05)}.mini-icon-btn:hover{background:#edf6fa;border-color:#9fc3d3}.ppp-pagehead{align-items:flex-start}.ppp-new-btn{height:34px;padding:6px 10px;font-size:11px}.ppp-search{display:grid;grid-template-columns:minmax(260px,1fr) 170px auto auto;gap:8px;align-items:end;padding:10px;margin-bottom:8px}.ppp-search label{display:flex;flex-direction:column;gap:4px;font-size:10px;font-weight:900;color:#527082}.ppp-search input,.ppp-search select{height:39px;min-height:39px;border:1px solid #c9d9e3;border-radius:9px;background:#fff;padding:0 10px;color:#173e57;font:inherit;box-sizing:border-box;width:100%}.ppp-search .btn{height:39px}.ppp-stats{display:flex;gap:13px;align-items:center;margin:4px 3px 9px;color:#657f8f;font-size:11px}.ppp-stats b{color:#174763}.ppp-green{color:#2f8b56}.ppp-red{color:#b34c4c}.ppp-grey{color:#7e8b93}.ppp-shown{margin-left:auto}.ppp-list{display:grid;gap:8px}.ppp-row{position:relative;display:grid;grid-template-columns:12px 58px minmax(240px,1fr) 190px;gap:11px;align-items:center;background:#fff;border:1px solid #d9e5eb;border-radius:14px;padding:9px 38px 9px 11px;box-shadow:0 1px 3px rgba(20,62,88,.04);cursor:pointer}.ppp-row:hover{border-color:#9fc6d8;box-shadow:0 4px 12px rgba(20,62,88,.08)}.ppp-row:focus{outline:3px solid rgba(23,124,172,.16);outline-offset:1px}.ppp-state-dot{width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 3px rgba(0,0,0,.04)}.ppp-state-dot.green{background:#38a169}.ppp-state-dot.red{background:#d9534f}.ppp-state-dot.amber{background:#dd9a25}.ppp-state-dot.grey{background:#a7b1b7}.ppp-photo-thumb{width:56px;height:56px;border-radius:12px;background:#eef5f8;display:flex;align-items:center;justify-content:center;overflow:hidden}.ppp-photo-thumb img{width:100%;height:100%;object-fit:cover}.ppp-photo-thumb span{font-size:26px}.ppp-main{min-width:0}.ppp-main h3{margin:0 0 3px;font-size:14px;color:#173f59}.ppp-main p{margin:0 0 3px;color:#536f80;font-size:11px}.ppp-main small{font-size:9px;color:#78909d}.ppp-chip{display:flex;flex-direction:column;gap:2px}.ppp-chip small{font-size:8px;letter-spacing:.08em;font-weight:900;color:#748d9a}.ppp-chip b{font-size:11px;color:#284f66;word-break:break-all}.ppp-chevron{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:28px;color:#75a4b8}.ppp-modal{position:fixed;inset:0;z-index:5000;display:none;align-items:center;justify-content:center;padding:16px}.ppp-modal.open{display:flex}.ppp-modal-backdrop{position:absolute;inset:0;background:rgba(7,28,42,.58);backdrop-filter:blur(2px)}.ppp-modal-card{position:relative;z-index:1;width:min(980px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.28);padding:22px}.ppp-modal-close{position:absolute;right:13px;top:10px;width:34px;height:34px;border:0;border-radius:50%;background:#eef5f8;color:#234b61;font-size:25px;line-height:1;cursor:pointer}.ppp-modal-head{padding-right:42px;margin-bottom:10px}.ppp-modal-head small{font-size:9px;letter-spacing:.08em;font-weight:900;color:#7891a0}.ppp-modal-head h2{margin:3px 0 4px;color:#173f59}.ppp-status-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#edf4f7;color:#28566e;font-size:10px;font-weight:900}.ppp-photo-box{display:grid;grid-template-columns:130px 1fr;gap:14px;align-items:center;margin:8px 0 14px;padding:10px;border:1px solid #dce8ee;border-radius:13px;background:#f8fbfc}.ppp-photo-preview{width:124px;height:100px;border-radius:11px;background:#edf4f7;display:flex;align-items:center;justify-content:center;overflow:hidden}.ppp-photo-preview img{width:100%;height:100%;object-fit:cover}.ppp-photo-preview span{font-size:40px}.ppp-photo-upload{display:flex;flex-direction:column;gap:5px}.ppp-photo-upload span{font-size:11px;font-weight:900;color:#527082}.ppp-photo-upload small{font-size:9px;color:#7a909d}.ppp-form-section{margin:12px 0 0;padding-top:10px;border-top:1px solid #e2ebef}.ppp-form-section h3{margin:0 0 9px;color:#1f5571;font-size:13px}.ppp-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ppp-form-grid label{display:flex;flex-direction:column;gap:4px}.ppp-form-grid label>span{font-size:9px;font-weight:900;color:#617f90}.ppp-form-grid input,.ppp-form-grid select,.ppp-form-grid textarea{width:100%;box-sizing:border-box;border:1px solid #cbdce5;border-radius:9px;background:#fff;padding:8px 9px;color:#173e57;font:inherit}.ppp-form-grid input,.ppp-form-grid select{height:39px}.ppp-form-grid textarea{resize:vertical;min-height:74px}.ppp-form-grid [readonly],.ppp-form-grid select:disabled{background:#f4f7f9;color:#526d7c}.ppp-wide{grid-column:span 2}.ppp-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
@media(max-width:700px){.desktop-import-only,.desktop-export-only{display:none!important}.official-head-actions{display:none!important}.ppp-pagehead{margin-bottom:6px;gap:6px}.ppp-pagehead h1{font-size:23px;line-height:1.08;margin:0}.ppp-pagehead p{font-size:11px;line-height:1.2;margin-top:3px}.ppp-pagehead .backlink{font-size:11px}.ppp-head-actions{width:100%;justify-content:flex-start}.ppp-new-btn{height:31px;font-size:10px;padding:5px 9px}.ppp-search{grid-template-columns:minmax(0,1fr) 112px;gap:6px;padding:8px;margin-bottom:6px;border-radius:12px}.ppp-search label{gap:3px;font-size:9px}.ppp-search input,.ppp-search select{height:36px;min-height:36px;padding:0 8px;border-radius:8px;font-size:11px}.ppp-search .btn{height:34px;padding:5px 9px;font-size:11px;border-radius:8px}.ppp-search .btn-primary{grid-column:1;width:max-content;min-width:82px}.ppp-stats{display:grid;grid-template-columns:1fr 1fr;gap:3px 8px;margin:3px 3px 6px;font-size:9px}.ppp-shown{margin-left:0}.ppp-row{grid-template-columns:9px 46px 1fr;padding:8px 28px 8px 8px;gap:8px}.ppp-photo-thumb{width:44px;height:44px;border-radius:9px}.ppp-photo-thumb span{font-size:21px}.ppp-main h3{font-size:12px}.ppp-main p{font-size:10px}.ppp-main small{font-size:8.5px}.ppp-chip{grid-column:3;flex-direction:row;align-items:baseline;gap:6px}.ppp-chip b{font-size:9px}.ppp-chevron{right:8px}.ppp-modal{padding:8px;align-items:flex-end}.ppp-modal-card{width:100%;max-height:92vh;border-radius:18px 18px 0 0;padding:16px}.ppp-photo-box{grid-template-columns:92px 1fr;gap:9px}.ppp-photo-preview{width:88px;height:76px}.ppp-form-grid{grid-template-columns:1fr 1fr;gap:8px}.ppp-form-grid input,.ppp-form-grid select{height:36px;font-size:11px}.ppp-form-grid textarea{font-size:11px}.ppp-wide{grid-column:1 / -1}.ppp-modal-actions .btn{flex:1}}
@media(max-width:430px){.ppp-form-grid{grid-template-columns:1fr}.ppp-wide{grid-column:auto}.ppp-search{grid-template-columns:minmax(0,1fr) 102px}.ppp-search input,.ppp-search select{font-size:10.5px}}


/* Alpha 51.2 · PPP: estado inicial activo y año de alta destacado */
.ppp-row{grid-template-columns:12px 58px minmax(240px,1fr) 92px 190px}
.ppp-year{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:48px;padding:5px 8px;border:1px solid #d7e7ee;border-radius:11px;background:#eef7fa;text-align:center}
.ppp-year small{font-size:8px;letter-spacing:.09em;font-weight:900;color:#6f8997}
.ppp-year b{font-size:22px;line-height:1.05;color:#0d648f}
.ppp-inline-state{display:inline-flex;align-items:center;gap:4px;color:#2f8b56;font-weight:900}
.ppp-inline-state:before{content:'●';color:#38a169;font-size:9px}
@media(max-width:700px){
  .ppp-row{grid-template-columns:9px 46px minmax(0,1fr) 66px;padding:8px 28px 8px 8px}
  .ppp-year{grid-column:4;grid-row:1 / span 2;min-height:44px;padding:4px 5px;border-radius:9px}
  .ppp-year b{font-size:18px}
  .ppp-year small{font-size:7px}
  .ppp-chip{grid-column:3 / 5;grid-row:auto;flex-direction:row;align-items:baseline;gap:6px;margin-top:1px}
  .ppp-main small{display:block;margin-top:2px;font-size:8.5px}
}


/* Alpha 51.3 · corrección visual definitiva del listado PPP */
.ppp-row{grid-template-columns:12px 58px minmax(260px,1fr) 96px 205px;min-height:76px;align-items:center}
.ppp-year{display:flex!important;flex-direction:column;align-items:center;justify-content:center;min-width:78px;min-height:50px;padding:5px 8px;border:1px solid #cfe2eb;border-radius:11px;background:#eef7fa;text-align:center;box-sizing:border-box}
.ppp-year small{display:block;font-size:8px;line-height:1;letter-spacing:.09em;font-weight:900;color:#6f8997;margin-bottom:3px}
.ppp-year b{display:block;font-size:22px;line-height:1;color:#0d648f;white-space:nowrap}
.ppp-chip{display:flex;flex-direction:column;gap:2px;min-width:0}
.ppp-chip small{display:block;font-size:8px;line-height:1.1;letter-spacing:.08em;font-weight:900;color:#748d9a}
.ppp-chip b{display:block;font-size:11px;line-height:1.2;color:#284f66;white-space:nowrap;word-break:normal;overflow-wrap:normal}
@media(max-width:700px){
 .ppp-row{grid-template-columns:9px 46px minmax(0,1fr) 64px;min-height:68px;padding:8px 28px 8px 8px;gap:8px}
 .ppp-year{grid-column:4;grid-row:1 / span 2;min-width:58px;min-height:44px;padding:4px;border-radius:9px}
 .ppp-year b{font-size:17px}
 .ppp-year small{font-size:7px;margin-bottom:2px}
 .ppp-chip{grid-column:3 / 5;display:flex;flex-direction:row;align-items:baseline;gap:6px;margin-top:1px}
 .ppp-chip b{font-size:9px;white-space:nowrap}
}

/* Alpha 52 · Registro de armas de aire comprimido */
.air-pagehead{align-items:flex-start}.air-new-btn{height:34px;padding:6px 10px;font-size:11px}.air-search{display:grid;grid-template-columns:minmax(230px,1fr) 220px 150px auto auto;gap:8px;align-items:end;padding:10px;margin-bottom:8px}.air-search label{display:flex;flex-direction:column;gap:4px;font-size:10px;font-weight:900;color:#527082}.air-search input,.air-search select{height:39px;min-height:39px;border:1px solid #c9d9e3;border-radius:9px;background:#fff;padding:0 10px;color:#173e57;font:inherit;box-sizing:border-box;width:100%}.air-search .btn{height:39px}.air-stats{display:flex;gap:13px;align-items:center;margin:4px 3px 9px;color:#657f8f;font-size:11px}.air-stats b{color:#174763}.air-green{color:#2f8b56}.air-red{color:#b34c4c}.air-shown{margin-left:auto}.air-list{display:grid;gap:8px}.air-row{position:relative;display:grid;grid-template-columns:12px 62px minmax(250px,1fr) 88px 110px 210px;gap:11px;align-items:center;background:#fff;border:1px solid #d9e5eb;border-radius:14px;padding:9px 38px 9px 11px;box-shadow:0 1px 3px rgba(20,62,88,.04);cursor:pointer;min-height:72px}.air-row:hover{border-color:#9fc6d8;box-shadow:0 4px 12px rgba(20,62,88,.08)}.air-row:focus{outline:3px solid rgba(23,124,172,.16);outline-offset:1px}.air-dot{width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 3px rgba(0,0,0,.04)}.air-dot.green{background:#38a169}.air-dot.red{background:#d9534f}.air-number{width:58px;height:54px;border-radius:12px;background:#eef7fa;display:flex;flex-direction:column;align-items:center;justify-content:center}.air-number small,.air-year small,.air-expiry small,.air-serial small{font-size:8px;letter-spacing:.08em;font-weight:900;color:#748d9a}.air-number b{font-size:22px;line-height:1;color:#0d648f}.air-main{min-width:0}.air-main h3{margin:0 0 3px;font-size:14px;color:#173f59}.air-main p{margin:0 0 3px;color:#536f80;font-size:11px}.air-main small{font-size:9px;color:#78909d}.air-year,.air-expiry,.air-serial{display:flex;flex-direction:column;gap:3px;min-width:0}.air-year{align-items:center;justify-content:center;background:#eef8fc;border:1px solid #cfe4ee;border-radius:10px;padding:6px 8px;text-align:center}.air-year b{font-size:18px;line-height:1;color:#126b96}.air-expiry b{font-size:12px;color:#31566b;white-space:nowrap}.air-serial b{font-size:11px;color:#284f66;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.air-chevron{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:28px;color:#75a4b8}.air-modal{position:fixed;inset:0;z-index:5000;display:none;align-items:center;justify-content:center;padding:16px}.air-modal.open{display:flex}.air-modal-backdrop{position:absolute;inset:0;background:rgba(7,28,42,.58);backdrop-filter:blur(2px)}.air-modal-card{position:relative;z-index:1;width:min(880px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.28);padding:22px}.air-modal-close{position:absolute;right:13px;top:10px;width:34px;height:34px;border:0;border-radius:50%;background:#eef5f8;color:#234b61;font-size:25px;line-height:1;cursor:pointer}.air-modal-head{padding-right:42px;margin-bottom:12px}.air-modal-head small{font-size:9px;letter-spacing:.08em;font-weight:900;color:#7891a0}.air-modal-head h2{margin:3px 0 5px;color:#173f59}.air-status-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#edf6ef;color:#2f7f4c;font-size:10px;font-weight:900}.air-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.air-form-grid label{display:flex;flex-direction:column;gap:4px}.air-form-grid label>span{font-size:9px;font-weight:900;color:#617f90}.air-form-grid input{width:100%;height:39px;box-sizing:border-box;border:1px solid #cbdce5;border-radius:9px;background:#fff;padding:8px 9px;color:#173e57;font:inherit}.air-form-grid [readonly]{background:#f4f7f9;color:#526d7c}.air-wide{grid-column:span 2}.air-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
@media(max-width:700px){.air-pagehead{margin-bottom:6px;gap:6px}.air-pagehead h1{font-size:23px;line-height:1.08;margin:0}.air-pagehead p{font-size:11px;line-height:1.2;margin-top:3px}.air-pagehead .backlink{font-size:11px}.air-new-btn{height:31px;font-size:10px;padding:5px 9px}.air-search{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;padding:8px;margin-bottom:6px;border-radius:12px}.air-search label{gap:3px;font-size:9px}.air-search label:nth-child(3){grid-column:1 / -1}.air-search input,.air-search select{height:36px;min-height:36px;padding:0 8px;border-radius:8px;font-size:10.5px}.air-search .btn{height:34px;padding:5px 9px;font-size:11px;border-radius:8px}.air-search .btn-primary{grid-column:1;width:max-content;min-width:82px}.air-stats{display:grid;grid-template-columns:1fr 1fr;gap:3px 8px;margin:3px 3px 6px;font-size:9px}.air-shown{margin-left:0}.air-row{grid-template-columns:9px 46px minmax(0,1fr) 60px 72px;min-height:66px;padding:8px 28px 8px 8px;gap:8px}.air-number{width:44px;height:44px;border-radius:9px}.air-number b{font-size:18px}.air-main h3{font-size:12px}.air-main p{font-size:10px}.air-main small{font-size:8.5px}.air-year{grid-column:4;grid-row:1 / span 2;padding:4px}.air-year b{font-size:14px}.air-expiry{grid-column:5;grid-row:1 / span 2;align-items:center;justify-content:center;background:#f4f8fa;border:1px solid #dbe8ee;border-radius:9px;padding:4px;text-align:center}.air-expiry b{font-size:9px;white-space:normal}.air-serial{grid-column:3 / 6;flex-direction:row;align-items:baseline;gap:6px}.air-serial b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.air-chevron{right:7px}.air-modal{padding:8px;align-items:flex-end}.air-modal-card{width:100%;max-height:92vh;border-radius:18px 18px 0 0;padding:16px}.air-form-grid{grid-template-columns:1fr 1fr;gap:8px}.air-form-grid input{height:36px;font-size:11px}.air-wide{grid-column:1 / -1}.air-modal-actions .btn{flex:1}}
@media(max-width:430px){.air-form-grid{grid-template-columns:1fr}.air-wide{grid-column:auto}.air-search{grid-template-columns:1fr 1fr}}
.air-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
@media(max-width:700px){.air-head-actions{width:100%;justify-content:flex-start}.air-head-actions .desktop-export-only{display:none!important}}
/* Alpha 52.2 · fotografías de armas */
.air-photo-section{margin-top:14px;padding-top:14px;border-top:1px solid #d9e5eb}.air-photo-title{display:flex;align-items:baseline;gap:10px;margin-bottom:9px}.air-photo-title small{color:#718896}.air-photo-gallery{display:flex;gap:9px;overflow-x:auto;padding:2px 0 8px}.air-photo-gallery a{display:block;flex:0 0 auto}.air-photo-gallery img{width:96px;height:76px;object-fit:cover;border:1px solid #cbdde6;border-radius:10px;background:#f3f7f9}.air-photo-empty{font-size:13px;color:#7b909d;padding:8px 0}.air-photo-upload{display:inline-flex;align-items:center;position:relative;border:1px solid #c4d8e3;border-radius:9px;padding:8px 11px;font-weight:700;color:#184d70;cursor:pointer;background:#fff}.air-photo-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}
@media(max-width:760px){.air-photo-gallery img{width:84px;height:68px}.air-photo-upload{font-size:13px;padding:7px 9px}}

/* Alpha 52.4 · corrección definitiva de maquetación del listado de armas */
@media (min-width:701px){
  .air-row{grid-template-columns:12px 62px minmax(320px,1fr) 96px 108px minmax(180px,220px);align-items:center}
  .air-dot{grid-column:1;grid-row:1}
  .air-number{grid-column:2;grid-row:1}
  .air-main{grid-column:3;grid-row:1}
  .air-year{grid-column:4;grid-row:1;align-self:center;justify-self:stretch;min-width:88px;background:#eef8fc;border:1px solid #cfe4ee;border-radius:10px;padding:7px 8px;text-align:center}
  .air-year b{font-size:18px;line-height:1;color:#126b96;white-space:nowrap}
  .air-expiry{grid-column:5;grid-row:1;align-self:center;min-width:0}
  .air-serial{grid-column:6;grid-row:1;align-self:center;min-width:0}
  .air-serial b{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-break:normal;overflow-wrap:normal}
}
@media (max-width:700px){
  .air-row{grid-template-columns:9px 46px minmax(0,1fr) 60px 72px;grid-template-rows:auto auto;align-items:center}
  .air-dot{grid-column:1;grid-row:1}
  .air-number{grid-column:2;grid-row:1}
  .air-main{grid-column:3;grid-row:1}
  .air-year{grid-column:4;grid-row:1;background:#eef8fc;border:1px solid #cfe4ee;border-radius:9px;padding:5px 4px;text-align:center}
  .air-expiry{grid-column:5;grid-row:1}
  .air-serial{grid-column:3 / 6;grid-row:2;display:flex;flex-direction:row;align-items:center;gap:6px;min-width:0}
  .air-serial b{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-break:normal;overflow-wrap:normal}
}

/* Alpha 52.6 · año de alta al final de la línea en armas */
@media (min-width:701px){
  .air-row{grid-template-columns:12px 62px minmax(320px,1fr) 108px minmax(180px,220px) 96px;align-items:center}
  .air-expiry{grid-column:4;grid-row:1}
  .air-serial{grid-column:5;grid-row:1}
  .air-year{grid-column:6;grid-row:1;justify-self:stretch}
}

/* Alpha 53 · Padrón anual de vehículos ITM */
.vehitm-search{display:grid;grid-template-columns:minmax(220px,1.35fr) 140px 150px minmax(170px,.9fr) minmax(190px,1fr) auto auto;align-items:end;gap:8px;margin-bottom:8px;padding:10px}.vehitm-search label{display:flex;flex-direction:column;gap:4px;color:#4a687a;font-size:10px;font-weight:900}.vehitm-search input{height:39px;border:1px solid #c9d9e3;border-radius:9px;background:#fff;padding:0 10px;font:inherit;color:#173e57;box-sizing:border-box;width:100%;min-width:0}.vehitm-search .btn{height:39px;padding-top:0;padding-bottom:0}.vehitm-list{display:grid;gap:8px}.vehitm-row{position:relative;display:grid;grid-template-columns:105px minmax(320px,1fr) minmax(210px,280px);gap:14px;align-items:center;background:#fff;border:1px solid #d8e5ec;border-radius:14px;padding:10px 38px 10px 12px;box-shadow:0 1px 3px rgba(20,62,88,.04);cursor:pointer}.vehitm-row:hover{border-color:#9fc7d8;box-shadow:0 4px 12px rgba(20,62,88,.08)}.vehitm-plate{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:53px;background:#edf7fa;border-radius:11px}.vehitm-plate small,.vehitm-side small{font-size:8px;letter-spacing:.08em;font-weight:900;color:#718b99}.vehitm-plate strong{font-size:18px;color:#0d648f}.vehitm-main{min-width:0}.vehitm-main h3{margin:1px 0 3px;font-size:14px;color:#173f59}.vehitm-main p{margin:0 0 3px;color:#5d7888;font-size:11px}.vehitm-main small{color:#8399a5;font-size:9px}.vehitm-side{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;align-items:baseline}.vehitm-side b{font-size:10px;color:#244e66;overflow-wrap:anywhere}.vehitm-pages{display:flex;justify-content:center;align-items:center;gap:12px;margin:12px 0}.vehitm-pages span{font-size:11px;color:#607c8d}.vehitm-modal-card{width:min(980px,100%)}.vehitm-modal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.vehitm-modal-grid label{display:flex;flex-direction:column;gap:4px}.vehitm-modal-grid label>span{font-size:9px;font-weight:900;color:#617f90}.vehitm-modal-grid input{height:40px;width:100%;box-sizing:border-box;border:1px solid #cbdce5;border-radius:9px;background:#fff;padding:8px 10px;color:#173e57;font:inherit}.vehitm-modal-grid input[readonly]{background:#f5f8fa;color:#536e7e}.vehitm-wide{grid-column:span 2}
@media(max-width:700px){.vehitm-search{grid-template-columns:1fr 1fr;gap:6px;padding:8px}.vehitm-search label{font-size:9px}.vehitm-search input{height:36px;min-height:36px;font-size:11px}.vehitm-search label:first-of-type,.vehitm-search label:last-of-type{grid-column:1/-1}.vehitm-search .btn{height:35px;font-size:11px}.vehitm-row{grid-template-columns:76px 1fr;padding:9px 29px 9px 9px;gap:9px}.vehitm-plate{min-height:55px}.vehitm-plate strong{font-size:15px}.vehitm-main h3{font-size:12px}.vehitm-main p{font-size:10px}.vehitm-side{grid-column:2;grid-template-columns:auto 1fr;font-size:9px}.vehitm-modal-grid{grid-template-columns:1fr}.vehitm-wide{grid-column:auto}.vehitm-pages{position:sticky;bottom:6px;background:rgba(244,248,250,.94);padding:7px;border-radius:10px}}

/* Alpha 53.1 · Maquetación Padrón de vehículos ITM */
.vehitm-search.card{background:#fff;border:1px solid #d8e5ec;border-radius:14px;box-shadow:0 1px 3px rgba(20,62,88,.04)}
.vehitm-search{grid-template-columns:minmax(250px,1.8fr) 135px 145px minmax(185px,1fr) minmax(200px,1.2fr) auto auto;gap:9px;padding:11px 12px}
.vehitm-search label>span{min-height:13px;display:flex;align-items:center}
.vehitm-search input{height:40px;border-radius:10px;font-size:12px}
.vehitm-search .btn{height:40px;border-radius:10px;white-space:nowrap}
.vehitm-list{gap:7px}
.vehitm-row{grid-template-columns:118px minmax(320px,1fr) minmax(260px,340px);min-height:72px;padding:9px 40px 9px 11px;border-radius:13px;gap:15px}
.vehitm-plate{min-height:58px;border:1px solid #d9edf4;background:#eef8fb;padding:4px 8px}
.vehitm-plate small{font-size:8px}
.vehitm-plate strong{font-size:19px;line-height:1.05;letter-spacing:.01em;white-space:nowrap}
.vehitm-main h3{font-size:14px;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vehitm-main p{font-size:11px;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vehitm-main small{display:block;font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vehitm-side{grid-template-columns:68px minmax(0,1fr);gap:4px 8px;padding:7px 9px;background:#f8fbfc;border:1px solid #e2edf2;border-radius:10px}
.vehitm-side small{font-size:7.5px;line-height:1.1}
.vehitm-side b{font-size:10px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vehitm-pages{margin:10px 0 4px}
.vehitm-modal-card{padding:20px 22px}
.vehitm-modal-grid{gap:9px 10px}
.vehitm-modal-grid input{height:38px;font-size:12px}

@media(max-width:1000px) and (min-width:701px){
 .vehitm-search{grid-template-columns:2fr 1fr 1fr;}
 .vehitm-search label:nth-of-type(4),.vehitm-search label:nth-of-type(5){grid-column:auto}
 .vehitm-row{grid-template-columns:105px minmax(250px,1fr) 260px}
}

@media(max-width:700px){
 .vado-pagehead.vehitm-pagehead,.vado-pagehead{align-items:flex-start}
 .vehitm-search.card{padding:8px;border-radius:12px}
 .vehitm-search{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:6px}
 .vehitm-search label{font-size:8.5px;gap:3px}
 .vehitm-search label:first-of-type{grid-column:1/-1}
 .vehitm-search label:nth-of-type(4),.vehitm-search label:nth-of-type(5){grid-column:auto}
 .vehitm-search input{height:35px;min-height:35px;padding:0 8px;border-radius:8px;font-size:10.5px}
 .vehitm-search .btn{height:34px;padding:4px 10px;font-size:10.5px;border-radius:8px}
 .vehitm-search .btn-primary{grid-column:1;width:max-content;min-width:78px}
 .vehitm-row{grid-template-columns:76px minmax(0,1fr);min-height:72px;padding:8px 29px 8px 8px;gap:8px;border-radius:12px}
 .vehitm-plate{min-height:55px;padding:3px 5px}
 .vehitm-plate strong{font-size:14px;max-width:68px;overflow:hidden;text-overflow:ellipsis}
 .vehitm-main h3{font-size:12px;margin-bottom:3px}
 .vehitm-main p{font-size:9.5px;margin-bottom:3px}
 .vehitm-main small{font-size:8.5px}
 .vehitm-side{grid-column:2;grid-template-columns:52px minmax(0,1fr);padding:5px 7px;gap:3px 6px;border-radius:8px}
 .vehitm-side small{font-size:6.8px}
 .vehitm-side b{font-size:8.8px}
 .vehitm-pages{gap:7px;margin:8px 0}.vehitm-pages .btn{padding:6px 9px;font-size:10px}
 .vehitm-modal-card{padding:16px 14px 18px}
 .vehitm-modal-grid{grid-template-columns:1fr 1fr;gap:7px}
 .vehitm-modal-grid label>span{font-size:8px}
 .vehitm-modal-grid input{height:35px;padding:6px 8px;font-size:10px}
 .vehitm-wide{grid-column:1/-1}
}
@media(max-width:430px){
 .vehitm-modal-grid{grid-template-columns:1fr}
 .vehitm-wide{grid-column:auto}
 .vehitm-search label:nth-of-type(4),.vehitm-search label:nth-of-type(5){grid-column:1/-1}
}


/* Alpha 54 · búsqueda flexible de matrícula ITM */
.vehitm-plate-search-row{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:5px;align-items:center}
.vehitm-search select{height:40px;min-height:40px;border:1px solid #c9d9e3;border-radius:10px;background:#fff;padding:0 8px;color:#173e57;font:inherit;box-sizing:border-box;width:100%;font-size:11px}
@media(max-width:700px){
 .vehitm-plate-search-row{grid-template-columns:minmax(0,1fr) 78px;gap:4px}
 .vehitm-search select{height:35px;min-height:35px;border-radius:8px;padding:0 5px;font-size:9.5px}
}


/* Alpha 54.2 · Navegación armonizada: el Back/Home global sustituye breadcrumbs duplicados */
.pagehead .backlink{display:none!important;}
.pagehead a.eyebrow-link[href^="/"]{ }

/* Alpha 54.3 · Importación discreta: solo administración en escritorio */
.mini-load-btn{display:inline-flex;align-items:center;justify-content:center;height:30px;min-width:58px;padding:0 10px;border:1px solid #c9dbe4;border-radius:8px;background:#fff;color:#24556f;text-decoration:none;font-size:11px;font-weight:800;line-height:1;box-shadow:0 1px 2px rgba(15,55,78,.05)}
.mini-load-btn:hover{background:#edf6fa;border-color:#9fc3d3}
@media(max-width:700px){.mini-load-btn{display:none!important}}


/* Alpha 54.5 · Matrícula ITM con aspecto de placa española */
.vehitm-plate{
  min-height:58px;
  padding:5px 6px 6px;
  background:#f3f9fb;
  border:1px solid #d7e7ee;
  border-radius:11px;
  gap:4px;
}
.vehitm-plate>small{
  display:block;
  width:100%;
  text-align:center;
  font-size:7.5px;
  line-height:1;
  letter-spacing:.11em;
  color:#6f8a9b;
}
.vehitm-license-plate{
  width:100%;
  min-height:34px;
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  align-items:stretch;
  overflow:hidden;
  box-sizing:border-box;
  background:#fff;
  border:2px solid #182126;
  border-radius:5px;
  box-shadow:0 1px 1px rgba(0,0,0,.08);
}
.vehitm-eu-strip{
  background:#0856b7;
  color:#fff;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:space-between;
  padding:3px 1px 2px;
  min-width:0;
}
.vehitm-eu-stars{
  display:block;
  max-width:14px;
  overflow:hidden;
  font-size:4px;
  line-height:5px;
  letter-spacing:-.5px;
  color:#ffd83d;
  text-align:center;
  word-break:break-all;
}
.vehitm-eu-strip>b{
  color:#fff;
  font-size:9px;
  line-height:1;
}
.vehitm-license-plate>strong{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  padding:0 4px;
  color:#0b0e10;
  font-family:"DejaVu Sans Condensed","Liberation Sans Narrow","Arial Narrow",Arial,sans-serif;
  font-size:18px;
  font-weight:800;
  line-height:1;
  letter-spacing:.035em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
@media(max-width:700px){
  .vehitm-plate{padding:4px 4px 5px;gap:3px}
  .vehitm-license-plate{grid-template-columns:15px minmax(0,1fr);min-height:31px;border-width:1.7px}
  .vehitm-license-plate>strong{font-size:13px;padding:0 2px;letter-spacing:.02em}
  .vehitm-eu-strip>b{font-size:7px}
  .vehitm-eu-stars{font-size:3px;line-height:4px;max-width:12px}
}


/* Alpha 56 · Registro VioGén */
.viogen-pagehead{align-items:flex-start}.viogen-search{display:grid;grid-template-columns:minmax(260px,1.5fr) 150px 150px 170px auto;gap:8px;align-items:end;padding:10px;margin-bottom:7px}.viogen-search label{display:flex;flex-direction:column;gap:4px;font-size:9px;font-weight:900;color:#526f81}.viogen-search input,.viogen-search select{height:38px;border:1px solid #cadbe4;border-radius:9px;background:#fff;padding:0 9px;color:#173e57;box-sizing:border-box;width:100%}.viogen-search .btn{height:38px}.viogen-stats{display:flex;align-items:center;gap:12px;margin:3px 2px 8px;color:#637e8e;font-size:10px}.viogen-shown{margin-left:auto}.vg-active{color:#2c9156}.vg-review{color:#ad7017}.viogen-list{display:grid;gap:7px}.viogen-row{position:relative;display:grid;grid-template-columns:54px 12px minmax(280px,1.3fr) minmax(220px,1fr) 125px 140px;gap:12px;align-items:center;background:#fff;border:1px solid #d7e5ec;border-radius:13px;padding:10px 38px 10px 11px;cursor:pointer}.viogen-row:hover{border-color:#9bc5d8;box-shadow:0 3px 12px rgba(21,67,91,.07)}.vg-number{width:46px;height:46px;border-radius:12px;background:#eef7fb;border:1px solid #d5e7ef;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#0f638c;line-height:1}.vg-number small{font-size:7px;letter-spacing:.08em;font-weight:900;color:#7993a1;margin-bottom:2px}.vg-number strong{font-size:19px;font-weight:900}.vg-light{width:10px;height:10px;border-radius:50%;background:#9caab1;box-shadow:0 0 0 4px #edf2f4}.vg-light.on{background:#32a25f}.vg-light.off{background:#c85151}.vg-person,.vg-author,.vg-risk,.vg-vper{min-width:0}.vg-person small,.vg-author small,.vg-risk small,.vg-vper small{display:block;font-size:7px;letter-spacing:.08em;font-weight:900;color:#77909e}.vg-person h3{font-size:13px;margin:2px 0;color:#173f59;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vg-person p{font-size:9px;color:#78909d;margin:0}.vg-author b{display:block;font-size:11px;color:#244e65;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vg-risk strong{display:block;font-size:12px;color:#2d7650}.vg-risk span{display:block;font-size:8px;color:#7c909b;margin-top:2px}.risk-medio{color:#b66f16!important}.risk-alto,.risk-extremo{color:#b84444!important}.risk-bajo_sm{color:#8d7a23!important}.vg-vper b{font-size:12px;color:#153f59}.vg-vper em{display:block;font-size:8px;color:#a56d1d;font-style:normal}.vg-chevron{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:27px;color:#78a5b9}.viogen-dialog{border:0;padding:0;background:transparent;width:min(1060px,calc(100vw - 26px));max-width:none}.viogen-dialog::backdrop{background:rgba(6,25,38,.62);backdrop-filter:blur(2px)}.viogen-modal{background:#fff;border-radius:18px;max-height:92vh;overflow:auto;padding:20px;box-shadow:0 25px 80px rgba(0,0,0,.28)}.viogen-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;border-bottom:1px solid #dfebf0;padding-bottom:12px;margin-bottom:12px}.viogen-modal-head h2{margin:3px 0 2px;color:#173f59}.viogen-modal-head p{margin:0;color:#6e8795;font-size:11px}.viogen-sections{display:grid;gap:12px}.viogen-sections section{border:1px solid #dce8ee;border-radius:13px;padding:12px;background:#fbfdfe}.viogen-sections h3,.vg-docs h3{margin:0 0 9px;color:#174b68;font-size:13px}.viogen-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.viogen-grid label{display:flex;flex-direction:column;gap:4px;font-size:8px;font-weight:900;color:#668193}.viogen-grid input,.viogen-grid select,.viogen-grid textarea{width:100%;box-sizing:border-box;border:1px solid #cadce5;border-radius:8px;background:#fff;padding:7px 9px;color:#173e57;font:inherit}.viogen-grid input,.viogen-grid select{height:36px}.viogen-grid textarea{min-height:64px;resize:vertical}.viogen-grid [readonly],.viogen-grid select:disabled,.viogen-grid textarea[readonly]{background:#f5f8fa;color:#536d7c}.viogen-grid .span2{grid-column:span 2}.viogen-grid .span3{grid-column:1/-1}.viogen-grid .check{flex-direction:row;align-items:center;align-self:end;height:36px}.viogen-grid .check input{width:auto;height:auto}.vg-source{background:#fff7e7;border:1px solid #eed8ac;border-radius:8px;padding:8px;color:#78531c;font-size:10px}.vg-source p{margin:3px 0 0}.vg-docs{margin-top:14px;border-top:1px solid #dce8ee;padding-top:13px}.vg-doc-head{display:flex;justify-content:space-between;align-items:center}.vg-doc-head span{font-size:9px;color:#8195a0}.vg-doc{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:7px 8px;border:1px solid #e0eaef;border-radius:9px;margin-top:6px}.vg-doc>a{font-size:10px;font-weight:800;color:#185a7e;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vg-doc small{font-size:8px;color:#8296a1}.vg-doc form button{border:0;background:#fbeeee;color:#a33;border-radius:7px;width:25px;height:25px;cursor:pointer}.vg-empty{font-size:10px;color:#7a909d}.vg-doc-add{display:grid;grid-template-columns:135px minmax(180px,1fr) minmax(220px,1.2fr) auto;gap:7px;align-items:center;margin-top:9px}.vg-doc-add input{height:34px;border:1px solid #cbdce5;border-radius:8px;padding:0 8px;box-sizing:border-box;width:100%;font-size:10px}
@media(max-width:700px){.viogen-pagehead h1{font-size:25px}.viogen-pagehead p{font-size:11px}.viogen-search{grid-template-columns:1fr 1fr;gap:6px;padding:8px}.viogen-search label:first-child{grid-column:1/-1}.viogen-search input,.viogen-search select{height:35px;font-size:10px}.viogen-search .btn{height:34px;width:max-content}.viogen-stats{display:grid;grid-template-columns:1fr 1fr;gap:3px 6px}.viogen-shown{margin-left:0}.viogen-row{grid-template-columns:42px 9px minmax(0,1fr) 82px;padding:9px 28px 9px 9px;gap:8px}.vg-number{width:38px;height:38px;border-radius:10px}.vg-number strong{font-size:16px}.vg-number small{font-size:6px}.vg-person h3{font-size:11px}.vg-author{grid-column:2}.vg-author b{font-size:9px}.vg-risk{grid-column:3;grid-row:1}.vg-vper{grid-column:3;grid-row:2}.viogen-dialog{width:100vw;max-width:none}.viogen-modal{border-radius:18px 18px 0 0;max-height:92vh;padding:14px}.viogen-grid{grid-template-columns:1fr 1fr}.viogen-grid .span2{grid-column:1/-1}.viogen-grid .span3{grid-column:1/-1}.vg-doc{grid-template-columns:minmax(0,1fr) auto}.vg-doc small{grid-column:1}.vg-doc-add{grid-template-columns:1fr}.vg-doc-add .mini-load-btn{display:inline-flex!important;width:max-content}.viogen-modal-head h2{font-size:18px}}
@media(max-width:430px){.viogen-grid{grid-template-columns:1fr}.viogen-grid .span2,.viogen-grid .span3{grid-column:auto}.viogen-row{grid-template-columns:38px 8px minmax(0,1fr) 74px}.vg-risk strong,.vg-vper b{font-size:10px}}

/* Alpha 56.2 · numeración VioGén reforzada */
.vg-number{flex:0 0 auto;overflow:hidden}.vg-number strong{display:block!important;visibility:visible!important;opacity:1!important;color:#0f638c!important;min-height:18px;text-align:center}.vg-number small{display:block!important}.viogen-row .vg-number{z-index:1}

/* Alpha 56.3 · numeración visible y ficha diferenciada */
.viogen-row .vg-number{width:50px;height:50px;border-radius:12px;background:#e7f4fb;border:1px solid #b9dbe9;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;color:#075f8c!important;line-height:1!important;}
.viogen-row .vg-number small{display:block!important;font-size:7px!important;font-weight:900!important;color:#688a9c!important;margin:0 0 3px!important;}
.viogen-row .vg-number strong{display:block!important;font-size:21px!important;font-weight:900!important;color:#075f8c!important;line-height:1!important;min-height:21px!important;}
.viogen-sections .vg-victim-card{background:#fff1f5!important;border-color:#efc8d4!important;}
.viogen-sections .vg-victim-card h3{color:#9d3658!important;}
.viogen-sections .vg-author-card{background:#eef6ff!important;border-color:#c6dcef!important;}
.viogen-sections .vg-author-card h3{color:#24618d!important;}
@media(max-width:700px){.viogen-row .vg-number{width:42px;height:42px}.viogen-row .vg-number strong{font-size:18px!important}}


/* Alpha 56.4 · VioGén compacto, numeración visible y alerta VPER */
.viogen-list{gap:5px!important}
.viogen-row{
  grid-template-columns:62px minmax(300px,1.35fr) minmax(220px,1fr) 105px 128px!important;
  gap:10px!important;
  min-height:54px!important;
  padding:5px 34px 5px 8px!important;
  border-radius:11px!important;
}
.viogen-row .vg-number{
  position:relative!important;width:52px!important;height:44px!important;margin:0!important;
  border-radius:10px!important;overflow:visible!important;background:#e7f4fb!important;
  border:1px solid #b9dbe9!important;display:flex!important;flex-direction:column!important;
  align-items:center!important;justify-content:center!important;line-height:1!important;
  grid-column:1!important;grid-row:1!important;
}
.viogen-row .vg-number .vg-light{
  position:absolute!important;left:-5px!important;top:50%!important;transform:translate(-50%,-50%)!important;
  width:9px!important;height:9px!important;z-index:3!important;
}
.viogen-row .vg-number small{font-size:6px!important;margin-bottom:2px!important}
.viogen-row .vg-number strong{font-size:18px!important;min-height:18px!important;color:#075f8c!important}
.viogen-row .vg-person{grid-column:2!important;grid-row:1!important}
.viogen-row .vg-author{grid-column:3!important;grid-row:1!important}
.viogen-row .vg-risk{grid-column:4!important;grid-row:1!important}
.viogen-row .vg-vper{grid-column:5!important;grid-row:1!important}
.viogen-row .vg-person h3{font-size:12px!important;margin:1px 0!important}
.viogen-row .vg-person p,.viogen-row .vg-author b,.viogen-row .vg-risk strong,.viogen-row .vg-vper b{line-height:1.15!important}
.viogen-row.vper-overdue{border-color:#e7a4a4!important;background:#fff8f8!important}
.vper-alert{color:#b42318!important;font-weight:900!important}
.vg-auto{font-size:7px!important;font-weight:700!important;color:#8297a4!important}
@media(max-width:700px){
  .viogen-row{grid-template-columns:48px minmax(0,1fr) 76px!important;grid-template-rows:auto auto!important;gap:4px 8px!important;min-height:58px!important;padding:6px 26px 6px 8px!important}
  .viogen-row .vg-number{width:42px!important;height:40px!important;grid-column:1!important;grid-row:1/3!important}
  .viogen-row .vg-number strong{font-size:16px!important}
  .viogen-row .vg-person{grid-column:2!important;grid-row:1!important}
  .viogen-row .vg-author{grid-column:2!important;grid-row:2!important}
  .viogen-row .vg-risk{grid-column:3!important;grid-row:1!important}
  .viogen-row .vg-vper{grid-column:3!important;grid-row:2!important}
}

/* Alpha 56.5 · VioGén: filas más finas y tarjeta de número aislada */
.viogen-list{gap:4px!important}
.viogen-row{grid-template-columns:58px minmax(300px,1.35fr) minmax(220px,1fr) 105px 128px!important;min-height:46px!important;padding:4px 34px 4px 8px!important;gap:8px!important}
.viogen-row .vg-number{align-self:center!important;justify-self:start!important}
.viogen-row .vg-person h3{font-size:11.5px!important;margin:0!important}
.viogen-row .vg-person p{font-size:8px!important}
.viogen-row .vg-author b{font-size:10px!important}
.viogen-row .vg-risk strong,.viogen-row .vg-vper b{font-size:11px!important}
.viogen-sections .vg-victim-card{background:#fff0f4!important;border-color:#eebdcb!important}
.viogen-sections .vg-author-card{background:#edf6ff!important;border-color:#bcd7ee!important}
@media(max-width:700px){
  .viogen-row{grid-template-columns:54px minmax(0,1fr) 76px!important;min-height:52px!important;padding:5px 26px 5px 7px!important;gap:4px 7px!important}
  .viogen-row .vg-number{width:46px!important;height:36px!important;min-width:46px!important}
}

/* Alpha 56.6 · VioGén: separación visual de nombres respecto al número */
.viogen-row .vg-person{padding-left:12px!important}
.viogen-row .vg-author{padding-left:6px!important}
@media(max-width:700px){
  .viogen-row .vg-person{padding-left:5px!important}
  .viogen-row .vg-author{padding-left:0!important}
}


/* Alpha 56.7 · VioGén: numeración estable 1..N y nombres sin solape */
.viogen-row{grid-template-columns:58px minmax(320px,1.35fr) minmax(220px,1fr) 105px 128px!important;}
.viogen-row .vg-number{grid-column:1!important;}
.viogen-row .vg-person{grid-column:2!important;padding-left:18px!important;}
.viogen-row .vg-author{grid-column:3!important;padding-left:10px!important;}
@media(max-width:700px){
  .viogen-row{grid-template-columns:50px minmax(0,1fr) 76px!important;}
  .viogen-row .vg-person{padding-left:8px!important;}
  .viogen-row .vg-author{padding-left:8px!important;}
}
\n\n/* Alpha 56.8 · VioGén: numeración visual 1..N y separación real del nombre */\n.viogen-row{\n  grid-template-columns:76px minmax(320px,1.35fr) minmax(220px,1fr) 105px 128px!important;\n  column-gap:12px!important;\n}\n.viogen-row .vg-number{\n  width:54px!important;height:40px!important;min-width:54px!important;\n  justify-self:start!important;overflow:hidden!important;\n}\n.viogen-row .vg-number .vg-light{left:5px!important;top:5px!important;transform:none!important;width:7px!important;height:7px!important;}\n.viogen-row .vg-number strong{font-size:18px!important;}\n.viogen-row .vg-person{padding-left:10px!important;min-width:0!important;}\n.viogen-row .vg-author{padding-left:6px!important;min-width:0!important;}\n@media(max-width:700px){\n  .viogen-row{grid-template-columns:58px minmax(0,1fr) 76px!important;column-gap:8px!important;}\n  .viogen-row .vg-number{width:50px!important;height:36px!important;min-width:50px!important;}\n  .viogen-row .vg-person{padding-left:4px!important;}\n  .viogen-row .vg-author{padding-left:4px!important;}\n}\n
/* Alpha 56.9 · VioGén: reserva real de espacio para el contador */
.viogen-row{
  grid-template-columns:92px minmax(320px,1.35fr) minmax(220px,1fr) 105px 128px!important;
  column-gap:14px!important;
}
.viogen-row .vg-number{
  grid-column:1!important;
  width:54px!important;
  min-width:54px!important;
  margin-left:2px!important;
}
.viogen-row .vg-person{
  grid-column:2!important;
  padding-left:0!important;
  margin-left:0!important;
}
.viogen-row .vg-author{
  grid-column:3!important;
  padding-left:0!important;
  margin-left:0!important;
}
@media(max-width:700px){
  .viogen-row{
    grid-template-columns:66px minmax(0,1fr) 76px!important;
    column-gap:10px!important;
  }
  .viogen-row .vg-number{width:50px!important;min-width:50px!important;margin-left:0!important;}
  .viogen-row .vg-person{grid-column:2!important;padding-left:0!important;margin-left:0!important;}
  .viogen-row .vg-author{grid-column:2!important;padding-left:0!important;margin-left:0!important;}
}

/* Alpha 56.10 · alerta VPER Policía Local */
.viogen-vper-top-alert{display:inline-flex;align-items:center;gap:5px;height:34px;padding:0 9px;border-radius:10px;background:#b91c1c;color:#fff!important;text-decoration:none;font-size:11px;font-weight:800;box-shadow:0 0 0 1px rgba(127,29,29,.25) inset;white-space:nowrap}
.viogen-vper-top-alert span{font-size:15px}.viogen-vper-top-alert em{font-style:normal;font-size:9px;font-weight:700;opacity:.92}
.viogen-vper-top-alert:hover{background:#991b1b}
.viogen-row.pl-vper-alert{background:#ffe4e6!important;border-color:#ef9a9a!important;box-shadow:inset 4px 0 0 #dc2626!important}
.viogen-row.pl-vper-overdue{background:#ffd6d6!important;border-color:#e86969!important}
.viogen-row.pl-vper-alert .vg-person h3,.viogen-row.pl-vper-alert .vg-author b,.viogen-row.pl-vper-alert .vg-vper b{color:#7f1d1d!important}
@media(max-width:760px){.viogen-vper-top-alert{height:31px;padding:0 7px}.viogen-vper-top-alert em{display:none}}


/* Alpha 57.1 · VioGén: ficha PC legible, seguimiento/Agente y listado móvil compacto */
.viogen-sections .vg-victim-card{background:#fff0f4!important;border-color:#eebdcb!important}.viogen-sections .vg-victim-card h3{color:#9d3658!important}.viogen-sections .vg-author-card{background:#dcecff!important;border-color:#9fc5e8!important}.viogen-sections .vg-author-card h3{color:#174f7a!important}.viogen-row{border-width:1px!important;box-shadow:none!important}.viogen-row.vper-overdue,.viogen-row.pl-vper-overdue{border-color:#dbe5ea!important;background:#fffafa!important;box-shadow:inset 3px 0 0 #cf3030!important}.viogen-row.pl-vper-alert:not(.pl-vper-overdue){border-color:#dbe5ea!important;background:#fffdf5!important;box-shadow:inset 3px 0 0 #d58a17!important}.vg-follow{display:block;margin-top:2px;font-size:8px;color:#6e8795;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vper-alert{display:inline-block!important;margin-top:3px!important;padding:2px 5px!important;border-radius:5px!important;background:#b42318!important;color:#fff!important;font-size:8px!important;font-weight:900!important;line-height:1.1!important}.vper-warning{display:inline-block!important;margin-top:3px!important;padding:2px 5px!important;border-radius:5px!important;background:#fff0c7!important;color:#8a5b00!important;font-size:8px!important;font-weight:900!important;line-height:1.1!important}.vg-agent-field>small{display:block;margin-top:2px;font-size:8px!important;font-weight:700!important;color:#738b99!important}.vg-agent-field[hidden]{display:none!important}
@media(min-width:701px){.viogen-dialog{width:min(1160px,calc(100vw - 34px))!important}.viogen-modal{padding:22px!important}.viogen-modal-head h2{font-size:27px!important;line-height:1.1!important}.viogen-modal-head p{font-size:13px!important}.viogen-dialog .welcome-kicker{font-size:10px!important}.viogen-sections{gap:13px!important}.viogen-sections section{padding:14px!important}.viogen-sections h3,.vg-docs h3{font-size:16px!important;margin-bottom:11px!important}.viogen-grid{gap:10px!important}.viogen-grid label{font-size:10.5px!important;line-height:1.25!important}.viogen-grid input,.viogen-grid select,.viogen-grid textarea{font-size:13px!important;font-weight:600!important;padding:8px 10px!important}.viogen-grid input,.viogen-grid select{height:42px!important}.viogen-grid textarea{min-height:78px!important;line-height:1.35!important}.viogen-grid .check{height:42px!important;font-size:11px!important}.vg-auto{font-size:8.5px!important}.vg-doc>a{font-size:12px!important}.vg-doc small{font-size:10px!important}.vg-empty{font-size:11px!important}.vg-doc-add input{font-size:12px!important;height:38px!important}}
@media(max-width:700px){.viogen-list{gap:5px!important}.viogen-row{grid-template-columns:52px minmax(0,1fr) 86px!important;grid-template-rows:auto auto!important;column-gap:7px!important;row-gap:2px!important;min-height:0!important;padding:6px 22px 6px 7px!important;border:1px solid #dbe5ea!important;border-radius:10px!important}.viogen-row .vg-number{grid-column:1!important;grid-row:1/3!important;width:44px!important;height:42px!important;min-width:44px!important;margin:0!important;border-width:1px!important;border-radius:9px!important;overflow:hidden!important}.viogen-row .vg-number .vg-light{left:4px!important;top:4px!important;transform:none!important;width:7px!important;height:7px!important;box-shadow:none!important}.viogen-row .vg-number small{font-size:6px!important;margin:0 0 1px!important}.viogen-row .vg-number strong{font-size:18px!important;min-height:0!important}.viogen-row .vg-person{grid-column:2!important;grid-row:1!important;padding:0!important;margin:0!important}.viogen-row .vg-person small{font-size:7px!important}.viogen-row .vg-person h3{font-size:12.5px!important;line-height:1.08!important;margin:1px 0!important}.viogen-row .vg-person p{font-size:8.5px!important;line-height:1.05!important}.viogen-row .vg-author{grid-column:2!important;grid-row:2!important;padding:0!important;margin:0!important}.viogen-row .vg-author small{font-size:7px!important}.viogen-row .vg-author b{font-size:10.5px!important;line-height:1.08!important}.vg-follow{font-size:7.5px!important;line-height:1.05!important;margin-top:1px!important}.viogen-row .vg-risk{grid-column:3!important;grid-row:1!important;align-self:start!important}.viogen-row .vg-risk small{font-size:6.5px!important}.viogen-row .vg-risk strong{font-size:10.5px!important;line-height:1.05!important}.viogen-row .vg-risk span{font-size:7.5px!important;margin-top:1px!important}.viogen-row .vg-vper{grid-column:3!important;grid-row:2!important;align-self:end!important}.viogen-row .vg-vper small{font-size:6.5px!important}.viogen-row .vg-vper b{font-size:10.5px!important;line-height:1.05!important}.vper-alert,.vper-warning{font-size:7px!important;padding:2px 4px!important;margin-top:2px!important;white-space:nowrap!important}.vg-chevron{right:6px!important;font-size:20px!important}.viogen-modal{font-size:12px!important}.viogen-grid label{font-size:9.5px!important}.viogen-grid input,.viogen-grid select,.viogen-grid textarea{font-size:12px!important}.vg-agent-field>small{font-size:7.5px!important}}

/* Alpha 57.2 · VioGén: ficha de escritorio más legible y seguimiento discreto en listado */
/* El tipo de seguimiento es un dato secundario en el listado: no compite con víctima/autor. */
.viogen-list .vg-follow{
  font-size:9px!important;
  font-weight:600!important;
  line-height:1.1!important;
  margin-top:1px!important;
  color:#718895!important;
}
@media(min-width:701px){
  .viogen-dialog{width:min(1180px,calc(100vw - 30px))!important;}
  .viogen-modal{padding:24px!important;}
  .viogen-modal-head h2{font-size:29px!important;line-height:1.12!important;}
  .viogen-modal-head p{font-size:14px!important;line-height:1.3!important;}
  .viogen-dialog .welcome-kicker{font-size:12px!important;letter-spacing:.04em!important;}
  .viogen-sections{gap:14px!important;}
  .viogen-sections section{padding:16px!important;}
  .viogen-sections h3,.vg-docs h3{font-size:18px!important;line-height:1.2!important;margin-bottom:12px!important;}
  .viogen-grid{gap:11px!important;}
  .viogen-dialog .viogen-grid label{
    font-size:13px!important;
    line-height:1.25!important;
    font-weight:800!important;
    gap:6px!important;
  }
  .viogen-dialog .viogen-grid input,
  .viogen-dialog .viogen-grid select,
  .viogen-dialog .viogen-grid textarea{
    font-size:15px!important;
    line-height:1.35!important;
    font-weight:600!important;
    padding:9px 11px!important;
  }
  .viogen-dialog .viogen-grid input,
  .viogen-dialog .viogen-grid select{height:46px!important;}
  .viogen-dialog .viogen-grid textarea{min-height:88px!important;}
  .viogen-dialog .viogen-grid .check{height:46px!important;font-size:13px!important;}
  .viogen-dialog .vg-auto{font-size:11px!important;font-weight:700!important;}
  .viogen-dialog .vg-agent-field>small{font-size:11px!important;line-height:1.25!important;}
  .viogen-dialog .vg-source{font-size:13px!important;}
  .viogen-dialog .vg-doc>a{font-size:14px!important;}
  .viogen-dialog .vg-doc small{font-size:11.5px!important;}
  .viogen-dialog .vg-empty{font-size:12px!important;}
  .viogen-dialog .vg-doc-add input{font-size:14px!important;height:42px!important;}
  .viogen-list .vg-follow{font-size:9px!important;}
}
@media(max-width:700px){
  .viogen-list .vg-follow{font-size:7.5px!important;font-weight:600!important;}
}

/* Alpha 57.3 · VioGén: prioridad real a la legibilidad de la ficha.
   Además se cambia el identificador de caché en base.html para que los equipos
   y móviles carguen este CSS nuevo tras actualizar el paquete. */

/* En el LISTADO, Seguimiento tiene el mismo tamaño que el resto de datos normales. */
.viogen-row .vg-follow{
  font-size:11px!important;
  font-weight:600!important;
  line-height:1.15!important;
  margin-top:2px!important;
  color:#244e65!important;
}

/* FICHA VioGén - ESCRITORIO: texto claramente mayor, no solo encabezados. */
@media(min-width:701px){
  .viogen-dialog{width:min(1220px,calc(100vw - 28px))!important;}
  .viogen-modal{padding:26px!important;font-size:16px!important;}
  .viogen-modal-head{padding-bottom:14px!important;margin-bottom:14px!important;}
  .viogen-modal-head h2{font-size:32px!important;line-height:1.12!important;}
  .viogen-modal-head p{font-size:16px!important;line-height:1.35!important;}
  .viogen-dialog .welcome-kicker{font-size:14px!important;line-height:1.25!important;letter-spacing:.04em!important;}

  .viogen-sections{gap:16px!important;}
  .viogen-sections section{padding:18px!important;}
  .viogen-sections h3,.vg-docs h3{font-size:21px!important;line-height:1.2!important;margin-bottom:14px!important;}
  .viogen-grid{gap:13px!important;}

  .viogen-dialog .viogen-grid label{
    font-size:15px!important;
    line-height:1.3!important;
    font-weight:800!important;
    gap:7px!important;
  }
  .viogen-dialog .viogen-grid input,
  .viogen-dialog .viogen-grid select,
  .viogen-dialog .viogen-grid textarea{
    font-size:17px!important;
    line-height:1.4!important;
    font-weight:600!important;
    padding:10px 12px!important;
  }
  .viogen-dialog .viogen-grid input,
  .viogen-dialog .viogen-grid select{height:50px!important;}
  .viogen-dialog .viogen-grid textarea{min-height:104px!important;}
  .viogen-dialog .viogen-grid .check{height:50px!important;font-size:15px!important;}
  .viogen-dialog .vg-auto{font-size:12.5px!important;font-weight:700!important;}
  .viogen-dialog .vg-agent-field>small{font-size:13px!important;line-height:1.3!important;}
  .viogen-dialog .vg-source{font-size:15px!important;line-height:1.4!important;}
  .viogen-dialog .vg-doc-head span{font-size:13px!important;}
  .viogen-dialog .vg-doc>a{font-size:16px!important;}
  .viogen-dialog .vg-doc small{font-size:13px!important;}
  .viogen-dialog .vg-empty{font-size:14px!important;}
  .viogen-dialog .vg-doc-add input{font-size:16px!important;height:46px!important;}
  .viogen-dialog .pi-btn,.viogen-dialog .mini-load-btn{font-size:15px!important;}
}

/* FICHA VioGén - MÓVIL: un punto más grande, manteniendo la ficha utilizable. */
@media(max-width:700px){
  .viogen-row .vg-follow{font-size:10.5px!important;line-height:1.1!important;color:#244e65!important;}
  .viogen-modal{padding:15px!important;font-size:14px!important;}
  .viogen-modal-head h2{font-size:23px!important;line-height:1.15!important;}
  .viogen-modal-head p{font-size:13px!important;line-height:1.3!important;}
  .viogen-dialog .welcome-kicker{font-size:10.5px!important;}
  .viogen-sections{gap:11px!important;}
  .viogen-sections section{padding:13px!important;}
  .viogen-sections h3,.vg-docs h3{font-size:17px!important;margin-bottom:10px!important;}
  .viogen-dialog .viogen-grid label{font-size:12px!important;line-height:1.25!important;gap:5px!important;}
  .viogen-dialog .viogen-grid input,
  .viogen-dialog .viogen-grid select,
  .viogen-dialog .viogen-grid textarea{font-size:15px!important;line-height:1.35!important;padding:8px 10px!important;}
  .viogen-dialog .viogen-grid input,
  .viogen-dialog .viogen-grid select{height:44px!important;}
  .viogen-dialog .viogen-grid textarea{min-height:82px!important;}
  .viogen-dialog .viogen-grid .check{height:44px!important;font-size:12.5px!important;}
  .viogen-dialog .vg-auto{font-size:10px!important;}
  .viogen-dialog .vg-agent-field>small{font-size:10px!important;line-height:1.25!important;}
  .viogen-dialog .vg-doc>a{font-size:14px!important;}
  .viogen-dialog .vg-doc small{font-size:11px!important;}
}


/* Alpha 57.4 · VioGén: listado PC elegante y VPER coherente */
/* Víctima y autor se leen como dos zonas distintas sin engordar la fila. */
.viogen-row .vg-person{
  border-left:3px solid #dda0b2!important;
  border-radius:6px!important;
  background:rgba(255,243,247,.60)!important;
  padding:3px 9px!important;
}
.viogen-row .vg-author{
  border-left:3px solid #91bdd8!important;
  border-radius:6px!important;
  background:rgba(240,247,253,.72)!important;
  padding:3px 9px!important;
}
.viogen-row .vg-author-line{display:flex;align-items:baseline;gap:7px;min-width:0;white-space:nowrap;}
.viogen-row .vg-author-line b{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto;}
.viogen-row .vg-author-line .vg-follow{display:inline!important;margin:0!important;flex:0 0 auto;font-size:10px!important;font-weight:600!important;line-height:1.15!important;color:#5c7889!important;}
/* Una VPER vencida se identifica por el fondo/borde de la fila: sin etiqueta redundante al final. */
.viogen-row .vper-alert{display:none!important;}
@media(min-width:701px){
  .viogen-row{grid-template-columns:92px minmax(330px,1.3fr) minmax(330px,1.25fr) 105px 128px!important;}
  .viogen-row .vg-person,.viogen-row .vg-author{min-height:36px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;}
  .viogen-row .vg-person h3{font-size:11.5px!important;}
  .viogen-row .vg-author b,.viogen-row .vg-follow{font-size:10px!important;}
}
@media(max-width:700px){
  .viogen-row .vg-person,.viogen-row .vg-author{padding:2px 5px!important;border-left-width:2px!important;background:transparent!important;}
  .viogen-row .vg-author-line{display:flex;flex-wrap:wrap;gap:2px 5px;white-space:normal;}
  .viogen-row .vg-author-line .vg-follow{font-size:9px!important;}
}

/* Alpha 57.5 · VioGén: responsable separado del autor en listado PC */
.viogen-row .vg-responsible{min-width:0;}
.viogen-row .vg-responsible small{display:block;font-size:7px;letter-spacing:.08em;font-weight:900;color:#77909e;}
.viogen-row .vg-responsible b{display:block;font-size:10px;font-weight:700;line-height:1.15;color:#244e65;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
@media(min-width:701px){
  .viogen-row{grid-template-columns:92px minmax(300px,1.30fr) minmax(280px,1.15fr) 118px 90px 124px!important;column-gap:10px!important;}
  .viogen-row .vg-person{grid-column:2!important;}
  .viogen-row .vg-author{grid-column:3!important;}
  .viogen-row .vg-responsible{grid-column:4!important;grid-row:1!important;align-self:center!important;}
  .viogen-row .vg-risk{grid-column:5!important;}
  .viogen-row .vg-vper{grid-column:6!important;}
  .viogen-row .vg-responsible b{font-size:10px!important;}
}
@media(max-width:700px){
  /* En móvil se mantiene el listado compacto; el responsable se consulta en la ficha. */
  .viogen-row .vg-responsible{display:none!important;}
}


/* Alpha 57.6 · VioGén: responsable compacto antes de riesgo + cache bust */
/* En escritorio, RESPONSABLE se presenta igual que RIESGO: etiqueta pequeña arriba y valor debajo. */
.viogen-row .vg-responsible{min-width:0!important;align-self:center!important;}
.viogen-row .vg-responsible small{
  display:block!important;
  font-size:7px!important;
  letter-spacing:.08em!important;
  font-weight:900!important;
  color:#77909e!important;
  line-height:1.05!important;
  margin:0 0 2px!important;
}
.viogen-row .vg-responsible b{
  display:block!important;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1.08!important;
  color:#244e65!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
@media(min-width:701px){
  .viogen-row{
    grid-template-columns:76px minmax(280px,1.28fr) minmax(250px,1.12fr) 102px 82px 112px!important;
    column-gap:10px!important;
    align-items:center!important;
  }
  .viogen-row .vg-number{grid-column:1!important;grid-row:1!important;}
  .viogen-row .vg-person{grid-column:2!important;grid-row:1!important;}
  .viogen-row .vg-author{grid-column:3!important;grid-row:1!important;}
  .viogen-row .vg-responsible{grid-column:4!important;grid-row:1!important;}
  .viogen-row .vg-risk{grid-column:5!important;grid-row:1!important;}
  .viogen-row .vg-vper{grid-column:6!important;grid-row:1!important;}
  .viogen-row .vg-risk strong,.viogen-row .vg-responsible b{font-size:11px!important;}
}
@media(max-width:700px){
  .viogen-row .vg-responsible{display:none!important;}
}
/* Alpha 57.8 · importación automática de fichas VioGén + fotografías */
.vg-section-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px}
.vg-section-title h3{margin:0!important}
.vg-photo-button{border:1px solid #bad5e3;background:#fff;border-radius:12px;padding:3px;cursor:pointer;box-shadow:0 1px 4px #0001;flex:0 0 auto}
.vg-photo-button img{display:block;width:72px;height:72px;object-fit:cover;border-radius:9px}
.vg-import-box{display:grid!important;grid-template-columns:minmax(250px,1fr) 150px minmax(190px,1fr) minmax(230px,1fr) auto!important;gap:10px!important;align-items:end!important}
.vg-import-hint{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border:1px solid #a9d5e8;background:#f0f9fd;border-radius:10px;color:#244e65;line-height:1.3}
.vg-import-hint b{font-size:13px}.vg-import-hint span{font-size:12px}
.vg-import-new{border-color:#86bfd8!important;background:#f7fcff!important}
.vg-photo-dialog{border:0;padding:0;background:transparent;max-width:min(92vw,920px);max-height:92vh}
.vg-photo-dialog::backdrop{background:rgba(8,25,38,.78)}
.vg-photo-dialog>div{background:#fff;padding:12px;border-radius:16px;box-shadow:0 20px 60px #0007}
.vg-photo-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:2px 4px 10px;font-size:16px;color:#153f59}
.vg-photo-dialog img{display:block;max-width:86vw;max-height:82vh;object-fit:contain;border-radius:10px;margin:auto}
@media(max-width:760px){
 .vg-photo-button img{width:60px;height:60px}
 .vg-import-box{grid-template-columns:1fr!important}
 .vg-import-hint{grid-column:1/-1}
 .viogen-dialog .viogen-grid label small{font-size:10px!important}
}

/* ALPHA 58 · Repositorio de plantillas */
.repo-kicker{display:block;font-size:10px;letter-spacing:.11em;color:#6d8391;font-weight:800;margin-bottom:3px}.repo-pagehead .pill{align-self:flex-start}.repo-search-card{position:sticky;top:82px;z-index:3}.repo-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.repo-categories{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:11px}.repo-cat{border:1px solid #d7e2e9;background:#f8fbfd;border-radius:10px;padding:8px 9px;display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:6px;text-align:left;color:#234c67;cursor:pointer;min-height:48px}.repo-cat:hover,.repo-cat.active{background:#eaf5fb;border-color:#7eb7d4}.repo-cat>span{font-size:20px}.repo-cat b{font-size:10px;line-height:1.15}.repo-cat small{font-size:9px;color:#728795;background:white;border:1px solid #dce6ec;border-radius:999px;padding:2px 5px}.repo-section{scroll-margin-top:190px}.repo-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #e5edf2;padding-bottom:10px;margin-bottom:8px}.repo-section-head>div{display:flex;align-items:center;gap:10px}.repo-section-icon{font-size:28px}.repo-section-head h2{margin:0;color:#153f5d;font-size:18px}.repo-section-head p{margin:2px 0 0;color:#728795;font-size:11px}.repo-list{display:flex;flex-direction:column;gap:4px}.repo-row{display:grid;grid-template-columns:55px minmax(0,1fr) 55px auto;align-items:center;gap:9px;border:1px solid #dfe8ee;border-radius:9px;padding:7px 9px;background:#fff}.repo-row:hover{background:#f8fcff;border-color:#b8d7e7}.repo-row.complete{border-left:4px solid #1a8a71;background:#f8fdfb}.repo-code{display:grid;place-items:center;min-height:32px;border-radius:7px;background:#edf5f9;color:#155b82;font-size:10px;font-weight:900}.repo-main{min-width:0}.repo-main b{display:block;color:#173f5c;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.repo-main small{display:block;color:#728693;font-size:8.5px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.repo-type{font-size:8px;font-weight:850;color:#708491;background:#eff4f7;border-radius:6px;padding:4px 5px;text-align:center}.repo-actions{display:flex;gap:5px;justify-content:flex-end}.repo-group{border:1px solid #d8e4eb;border-radius:10px;margin:7px 0;overflow:hidden;background:#fbfdfe}.repo-group>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:9px 11px;color:#174764}.repo-group>summary::-webkit-details-marker{display:none}.repo-group>summary b{display:block;font-size:12px}.repo-group>summary small{display:block;font-size:8px;color:#778b97;margin-top:2px}.repo-group>summary>span{font-size:9px;color:#658092}.repo-group[open]>summary{background:#eef6fa;border-bottom:1px solid #dbe7ed}.repo-list.nested{padding:7px}.repo-empty{padding:9px}.repo-form{padding:0;overflow:hidden}.repo-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;padding:16px}.repo-form-grid label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:800;color:#254f68}.repo-form-grid label.wide{grid-column:1/-1}.repo-form-grid input,.repo-form-grid select,.repo-form-grid textarea{width:100%;border:1px solid #cad9e3;border-radius:9px;padding:10px;font:inherit;color:#17324a;background:#fff}.repo-signatures{padding:0 16px 16px;border-top:1px solid #e0e8ed}.repo-signatures h3{margin:13px 0 2px}.repo-signature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:9px}.repo-signature{border:1px solid #d5e1e8;border-radius:10px;padding:9px;background:#fafcfd}.repo-signature>b{display:block;font-size:11px;margin-bottom:5px}.repo-signature canvas{width:100%;height:110px;background:#fff;border:1px dashed #b8cbd6;border-radius:8px;touch-action:pan-y}.repo-signature canvas.active{border-style:solid;border-color:#1780bf;box-shadow:0 0 0 2px #1780bf1a;touch-action:none}.repo-signature>div{display:flex;gap:6px;margin-top:6px}.repo-form-actions{display:flex;justify-content:flex-end;gap:8px;background:#f6f9fb;border-top:1px solid #dce6ec;padding:12px 16px}
@media(max-width:900px){.repo-categories{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.repo-search-card{position:static}.repo-categories{grid-template-columns:1fr 1fr}.repo-cat{grid-template-columns:22px minmax(0,1fr) auto;min-height:43px;padding:6px}.repo-cat>span{font-size:17px}.repo-cat b{font-size:8px}.repo-section{padding:10px}.repo-section-head h2{font-size:14px}.repo-section-head p{font-size:8px}.repo-row{grid-template-columns:40px minmax(0,1fr) 35px;gap:5px;padding:6px}.repo-code{font-size:8px}.repo-main b{font-size:10px}.repo-main small{font-size:6.8px}.repo-type{font-size:6.5px}.repo-actions{grid-column:2/-1;justify-content:flex-start;border-top:1px solid #edf2f5;padding-top:4px}.repo-actions .btn{font-size:8px;padding:5px 7px}.repo-group>summary b{font-size:10px}.repo-group>summary small,.repo-group>summary>span{font-size:7px}.repo-form-grid{grid-template-columns:1fr;padding:11px}.repo-form-grid label.wide{grid-column:1}.repo-signature-grid{grid-template-columns:1fr}.repo-signature canvas{height:120px}.repo-form-actions{position:sticky;bottom:0;z-index:2}.repo-form-actions .btn{flex:1;text-align:center}}

/* Alpha 58.2 · Repositorio: maquetación estable y cache bust */
.repo-search-card,.repo-section{box-sizing:border-box}
.repo-search-card .repo-search-row .search{min-width:0;width:100%}
.repo-categories{align-items:stretch}
.repo-cat{width:100%;font-family:inherit}
.repo-section{margin-top:14px}
.repo-row>*{min-width:0}
.repo-actions .btn{white-space:nowrap}
@media(min-width:901px){
  .repo-categories{grid-template-columns:repeat(5,minmax(150px,1fr))}
  .repo-row{grid-template-columns:64px minmax(0,1fr) 58px minmax(88px,auto)}
}

/* Alpha 58.3 · Repositorio con portada a pantalla completa y submenús por categoría */
.repo-home-head{margin-bottom:10px}.repo-home-search{padding:14px 16px;margin-bottom:14px}.repo-home-search-form{display:flex;flex-direction:column;gap:6px}.repo-home-search-form>small,.repo-category-search>small{color:#718794;font-size:10px}.repo-home-search-box{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;gap:8px;align-items:center}.repo-home-search-box>span{font-size:20px;text-align:center}.repo-home-search-box .search{width:100%;min-width:0}.repo-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;min-height:calc(100vh - 330px);align-content:stretch;padding-bottom:18px}.repo-home-card{display:flex;flex-direction:column;min-height:190px;border:1px solid #d3e0e8;border-radius:16px;background:linear-gradient(145deg,#fff,#f7fbfd);padding:20px;text-decoration:none;box-shadow:0 3px 14px rgba(17,62,91,.06);transition:.16s ease;color:#173f5c}.repo-home-card:hover{transform:translateY(-2px);border-color:#75b4d4;box-shadow:0 8px 24px rgba(17,62,91,.11);background:#fbfeff}.repo-home-icon{font-size:40px;line-height:1;margin-bottom:14px}.repo-home-card-body{flex:1}.repo-home-card h2{font-size:18px;line-height:1.16;margin:0 0 8px;color:#123f60}.repo-home-card p{font-size:12px;line-height:1.42;margin:0;color:#6f8492}.repo-home-card-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #e2ebf0;margin-top:15px;padding-top:11px;font-size:10px;color:#6b8190}.repo-home-card-foot strong{font-size:11px;color:#136b99}.repo-search-results{margin-top:12px}.repo-result-category{display:block;font-size:8.5px;font-weight:800;color:#738a97;margin-bottom:2px;text-transform:uppercase;letter-spacing:.03em}.repo-no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:5px;min-height:180px;color:#637b89}.repo-no-results b{font-size:15px;color:#254f68}.repo-no-results span{font-size:11px}.repo-subnav{display:flex;gap:7px;margin-bottom:10px}.repo-category-head{margin-bottom:10px}.repo-category-search{padding:12px 14px;margin-bottom:12px}.repo-category-section{margin-top:0;min-height:calc(100vh - 310px)}
@media(min-width:1450px){.repo-home-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.repo-home-card{min-height:205px}.repo-home-card h2{font-size:19px}.repo-home-card p{font-size:12.5px}}
@media(max-width:1050px){.repo-home-grid{grid-template-columns:repeat(2,minmax(0,1fr));min-height:auto}.repo-home-card{min-height:165px}}
@media(max-width:760px){.repo-home-head{align-items:flex-start}.repo-home-search{padding:10px}.repo-home-search-box{grid-template-columns:24px minmax(0,1fr) auto}.repo-home-search-box .btn:not(.primary){grid-column:2/-1}.repo-home-grid{grid-template-columns:1fr;gap:9px;padding-bottom:10px}.repo-home-card{min-height:0;padding:14px;border-radius:12px;display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:10px}.repo-home-icon{font-size:31px;margin:2px 0 0}.repo-home-card-body{min-width:0}.repo-home-card h2{font-size:14px}.repo-home-card p{font-size:10px}.repo-home-card-foot{grid-column:1/-1;margin-top:10px;padding-top:8px}.repo-category-search{padding:10px}.repo-category-section{min-height:0}.repo-search-results{padding:10px}.repo-search-hit .repo-result-category{font-size:7px}}
/* Alpha 58.5 - formularios sobre plantilla original */
.repo-checkgroup{display:flex;flex-wrap:wrap;gap:8px 14px;padding:10px 12px;border:1px solid #cfdbe2;border-radius:9px;background:#fff;min-height:45px;align-items:center}.repo-checkopt{display:inline-flex!important;align-items:center;gap:6px;font-weight:500!important;margin:0!important}.repo-checkopt input{width:auto!important;margin:0!important;accent-color:#174f71}.repo-checkopt span{margin:0!important}@media(max-width:720px){.repo-checkgroup{display:grid;grid-template-columns:1fr;gap:8px}}

.repo-checkfield{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:800;color:#254f68}.repo-checkfield.wide{grid-column:1/-1}.repo-field-label{display:block}@media(max-width:760px){.repo-checkfield.wide{grid-column:1}}

/* Alpha 58.6 · flujo borrador → registro → buzón Jefatura */
.repo-form-actions-compact{align-items:center}.repo-pdf-btn{min-width:66px!important;max-width:88px!important;flex:0 0 auto!important;padding:8px 16px!important}
.repo-dictation-wrap{position:relative}.repo-dictation-wrap textarea{padding-right:48px!important}.repo-dictation-btn{position:absolute;right:8px;bottom:8px;width:34px;height:34px;border:1px solid #b9ceda;border-radius:50%;background:#fff;color:#174e70;display:grid;place-items:center;cursor:pointer;box-shadow:0 1px 5px #173f5c18;font-size:15px}.repo-dictation-btn.listening{background:#c82828;color:#fff;border-color:#c82828;animation:repoPulse 1.1s infinite}@keyframes repoPulse{50%{box-shadow:0 0 0 6px #c8282824}}
.repo-preview-page{display:flex;flex-direction:column;gap:8px;height:calc(100vh - 110px)}.repo-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;flex:0 0 auto}.repo-preview-toolbar>div:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}.repo-preview-toolbar small{font-size:8px;letter-spacing:.09em;color:#758b97;font-weight:900}.repo-preview-toolbar b{color:#173f5c;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.repo-preview-controls{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.repo-register-final{display:inline-flex}.repo-preview-note{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:3px 6px;color:#637b89;font-size:10px}.link-button{border:0;background:none;color:#176c99;font:inherit;font-weight:800;cursor:pointer}.repo-preview-frame{width:100%;flex:1;min-height:520px;border:1px solid #ccdce5;border-radius:12px;background:#dfe5e8}
.register-lock-notice{display:flex;align-items:center;gap:12px;padding:10px 14px;margin:8px 0;border:1px solid #c8dce7;background:#f3f9fc;border-radius:10px;color:#214e68}.register-lock-notice b{white-space:nowrap}.register-lock-notice span{font-size:11px}.register-admin-actions{margin-top:12px;padding:14px}.register-admin-actions h3{margin:0 0 3px}.register-admin-actions p{margin:0 0 10px;color:#728795;font-size:11px}.register-admin-actions form{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:10px;align-items:end}.register-admin-actions label{display:flex;flex-direction:column;gap:5px;font-size:10px;font-weight:800;color:#244d66}.register-admin-actions input{width:100%;border:1px solid #cad9e3;border-radius:8px;padding:9px}.btn.danger{background:#b4232b;color:#fff;border-color:#b4232b}.btn.danger[disabled]{opacity:.45;cursor:not-allowed}.register-history-icon{font-size:12px!important;text-decoration:none!important}.register-history-list{padding:8px}.register-history-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-bottom:1px solid #e3ebef}.register-history-row:last-child{border-bottom:0}.register-history-row>div{min-width:0;display:flex;flex-direction:column;gap:2px}.register-history-row span{font-size:8px;font-weight:900;color:#728996;letter-spacing:.08em}.register-history-row b{font-size:12px;color:#163f5c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.register-history-row small{font-size:9px;color:#718692}
.hq-inbox-module em{font-style:normal;background:#c3222b;color:white;border-radius:999px;padding:2px 7px;margin-left:4px;font-size:10px}.hq-inbox-filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.hq-inbox-list{display:flex;flex-direction:column;gap:8px}.hq-inbox-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,auto);gap:12px;padding:12px 14px;border-left:4px solid #d39b2d}.hq-inbox-item.status-in_progress{border-left-color:#2c82b5}.hq-inbox-item.status-processed{border-left-color:#2a8f62}.hq-inbox-main{display:grid;grid-template-columns:80px minmax(0,1fr);gap:12px;align-items:center}.hq-inbox-ref{display:flex;flex-direction:column;align-items:center;border:1px solid #cfe0e8;border-radius:9px;padding:8px;background:#f7fbfd}.hq-inbox-ref span{font-size:7px;font-weight:900;color:#78909d}.hq-inbox-ref b{font-size:16px;color:#145f88}.hq-inbox-main h3{margin:2px 0;font-size:13px;color:#17435f}.hq-inbox-main p{margin:0;font-size:10px;color:#4c6878}.hq-inbox-main small{font-size:9px;color:#78909d}.hq-inbox-actions{display:flex;align-items:center;gap:6px;justify-content:flex-end}.hq-inbox-actions form{display:grid;grid-template-columns:120px minmax(160px,260px) auto;gap:6px}.hq-inbox-actions select,.hq-inbox-actions input{border:1px solid #cbdbe4;border-radius:7px;padding:7px;font-size:10px}
@media(min-width:761px){.repo-dictation-btn{width:32px;height:32px;font-size:14px;opacity:.78}.repo-dictation-btn:hover{opacity:1}}
@media(max-width:760px){.repo-form-actions-compact .btn{flex:0 0 auto!important}.repo-form-actions-compact{justify-content:space-between}.repo-pdf-btn{min-width:72px!important}.repo-preview-page{height:calc(100vh - 92px)}.repo-preview-toolbar{align-items:flex-start;flex-direction:column}.repo-preview-controls{width:100%;justify-content:flex-start}.repo-preview-controls .btn{font-size:9px;padding:7px 8px}.repo-register-final{margin-left:auto}.repo-preview-note{font-size:8px;align-items:flex-start}.repo-preview-frame{min-height:420px}.register-admin-actions form{grid-template-columns:1fr}.register-history-row{align-items:flex-start;flex-direction:column}.hq-inbox-item{grid-template-columns:1fr}.hq-inbox-actions{justify-content:flex-start;flex-wrap:wrap}.hq-inbox-actions form{width:100%;grid-template-columns:1fr}.hq-inbox-main{grid-template-columns:60px minmax(0,1fr)}}

/* Alpha 58.7: micrófono visible en todos los campos de texto largo; en móvil es táctil y permanece dentro del campo. */
@media(max-width:760px){.repo-dictation-btn{display:grid!important;width:38px;height:38px;font-size:18px;right:7px;bottom:7px}.repo-dictation-wrap textarea{padding-right:54px!important}}

/* Alpha 58.8 · rúbrica de perfil reutilizable */
.profile-signature-box{margin:18px 0;padding:16px;border:1px solid #cbdbe5;border-radius:16px;background:#f8fbfd}.profile-signature-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.profile-signature-head div{display:flex;flex-direction:column;gap:3px}.profile-signature-head small{color:#6f8492}.profile-signature-current{min-height:88px;display:flex;align-items:center;justify-content:center;border:1px dashed #bdd0dc;border-radius:12px;background:white;margin-bottom:10px}.profile-signature-current img{max-height:76px;max-width:92%}.profile-signature-canvas{width:100%;height:150px;border:1px dashed #9fb7c6;border-radius:12px;background:white;display:block;opacity:.55}.profile-signature-canvas.active{opacity:1;box-shadow:0 0 0 2px #c9e9f8}.profile-signature-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.warning-mini{font-size:12px;color:#9a6510;font-weight:700}.danger-soft{color:#a72d26}
@media(max-width:760px){.profile-signature-canvas{height:210px}.profile-signature-head{align-items:flex-start}.profile-signature-actions .btn{flex:1 1 46%}}

/* Alpha 58.8 · firmas automáticas de agente y firma externa móvil */
.repo-agent-signature-auto{min-height:120px;display:flex;flex-direction:column;justify-content:center}.repo-auto-signature-note{margin-top:10px;padding:16px;border:1px solid #cce2d9;background:#f2fbf7;border-radius:12px;color:#25624f;font-weight:700}.repo-mobile-signature-preview{display:flex;gap:10px;align-items:center;margin:8px 0;padding:8px;border-radius:10px;background:#eef9f5;color:#17614d}.repo-mobile-signature-preview img{max-height:70px;max-width:180px;background:white;border-radius:6px}.repo-signature-modal[hidden]{display:none}.repo-signature-modal{position:fixed;inset:0;z-index:9999;background:rgba(13,38,55,.55);display:flex;align-items:center;justify-content:center;padding:18px}.repo-signature-modal-card{position:relative;background:white;border-radius:18px;padding:20px;width:min(430px,96vw);box-shadow:0 20px 50px rgba(0,0,0,.25);text-align:center}.repo-signature-modal-close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:28px}.repo-signature-qr{width:260px;height:260px;max-width:80vw;display:block;margin:10px auto}.repo-signature-modal-card small{display:block;word-break:break-all;margin-bottom:8px;color:#657b89}.signature-auto-agent .info-banner.compact{margin-top:10px}

/* Alpha 58.10 · Libro registro: columna Archivo más limpia y profesional */
@media(min-width:1001px){
  .register-list-head,.register-row{grid-template-columns:90px minmax(230px,1.6fr) minmax(200px,1.3fr) minmax(155px,.9fr) 116px}
}
.register-file-state{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  min-width:0;
}
.register-direct-file.register-file-action{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  width:auto!important;
  min-width:72px!important;
  height:32px!important;
  padding:0 10px!important;
  margin:0!important;
  border:1px solid #c7dce8!important;
  border-radius:999px!important;
  background:#f8fcfe!important;
  color:#145f86!important;
  text-decoration:none!important;
  font-size:10px!important;
  font-weight:900!important;
  line-height:1!important;
  box-shadow:0 1px 2px rgba(22,78,108,.04)!important;
  transition:background .15s ease,border-color .15s ease,transform .15s ease,box-shadow .15s ease;
}
.register-direct-file.register-file-action:hover{
  background:#eaf6fc!important;
  border-color:#8fc3dc!important;
  box-shadow:0 3px 8px rgba(22,78,108,.10)!important;
  transform:translateY(-1px);
}
.register-file-action-icon{
  display:inline-grid!important;
  place-items:center!important;
  width:18px!important;
  height:18px!important;
  border-radius:50%!important;
  background:#dff1fa!important;
  color:#0d6f9e!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1!important;
}
.register-file-action-text{display:inline!important;color:inherit!important;font-size:10px!important;font-weight:900!important}
.register-file-badge{
  display:inline-flex!important;
  align-items:center!important;
  min-height:27px!important;
  padding:0 9px!important;
  border-radius:999px!important;
  font-size:9px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.register-file-badge.neutral{background:#f0f5f8!important;border:1px solid #d8e3e9!important;color:#567080!important}
.register-file-badge.pending{background:#fff6df!important;border:1px solid #ecd69e!important;color:#8b6512!important}
.register-row-chevron{
  flex:0 0 auto;
  font-size:19px!important;
  line-height:1!important;
  color:#9ab0bd!important;
  font-style:normal!important;
  margin-left:1px;
}
@media(max-width:760px){
  .register-file-state{justify-content:center!important;gap:2px!important}
  .register-direct-file.register-file-action{min-width:30px!important;width:30px!important;height:30px!important;padding:0!important;border-radius:9px!important}
  .register-file-action-text{display:none!important}
  .register-file-action-icon{width:auto!important;height:auto!important;background:transparent!important;font-size:16px!important}
  .register-file-badge{display:none!important}
  .register-row-chevron{font-size:24px!important}
}


/* Alpha 58.11 · firmas compactas, perfil móvil y botón PDF */
.profile-signature-upload{display:flex!important;flex-direction:column;gap:5px;margin:12px 0;padding:10px 12px;border:1px solid #d4e1e8;border-radius:10px;background:#fff;font-size:10px;font-weight:800;color:#234d66}.profile-signature-upload input{font-weight:500}.profile-signature-upload small{font-weight:500;color:#718692}.profile-signature-canvas{touch-action:pan-y}.profile-signature-canvas.active{touch-action:none}
.repo-agent-signature-compact{min-height:84px!important;display:flex;flex-direction:column;gap:8px;justify-content:flex-start!important}.repo-agent-signature-line{display:flex;align-items:center;gap:10px;min-height:44px}.repo-agent-sign-btn{min-width:86px}.repo-agent-sign-btn.signed{background:#eaf7f1!important;border-color:#9bcdb8!important;color:#176049!important}.repo-agent-signature-preview{display:flex;align-items:center;gap:8px;min-width:0}.repo-agent-signature-preview img{max-width:150px;max-height:48px;object-fit:contain;background:#fff;border-bottom:1px solid #b6c9d4}.repo-agent-signature-preview span{font-size:9px;color:#617987;white-space:nowrap}.repo-auto-signature-note{display:none!important}
.register-direct-file.register-file-action{min-width:68px!important;height:32px!important;border-radius:8px!important;background:#f5fbff!important;border:1px solid #9cc9df!important;color:#0d628d!important;gap:7px!important;padding:0 11px!important}.register-file-action-icon{width:auto!important;height:auto!important;background:transparent!important;border-radius:0!important;font-size:18px!important;line-height:1!important}.register-file-action-text{display:inline!important;font-size:10px!important;letter-spacing:.04em}.register-row-chevron{display:none!important}
@media(max-width:760px){.profile-signature-canvas{height:240px}.profile-signature-actions{display:grid;grid-template-columns:1fr 1fr}.profile-signature-actions .btn{width:100%}.repo-agent-signature-compact{min-height:72px!important}.repo-agent-signature-line{align-items:flex-start;flex-direction:column;gap:6px}.repo-agent-signature-preview img{max-width:130px;max-height:42px}.register-direct-file.register-file-action{min-width:58px!important;width:auto!important;height:30px!important;padding:0 8px!important;border-radius:8px!important}.register-file-action-text{display:inline!important;font-size:9px!important}.register-file-action-icon{font-size:15px!important}.register-file-state{justify-content:flex-end!important}}


/* Alpha 58.12 · botón PDF horizontal estable */
.register-direct-file.register-file-action{
  display:inline-flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:center!important;
  width:74px!important;
  min-width:74px!important;
  max-width:74px!important;
  height:32px!important;
  padding:0 10px!important;
  box-sizing:border-box!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  border:1px solid #9fc8dc!important;
  border-radius:8px!important;
  background:#f5fbff!important;
  color:#0d628d!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:30px!important;
  text-decoration:none!important;
  letter-spacing:.02em!important;
}
.register-direct-file.register-file-action:hover{background:#e8f5fb!important;border-color:#71afd0!important}
.register-file-action-icon,.register-file-action-text{display:none!important}
@media(max-width:760px){
 .register-direct-file.register-file-action{width:68px!important;min-width:68px!important;max-width:68px!important;height:30px!important;font-size:10px!important;line-height:28px!important;padding:0 8px!important}
}

/* Alpha 58.13 · rúbrica sin deformación y controles de firma adaptados a PC/móvil */
.profile-mobile-sign-button,.profile-mobile-help{display:none!important}
.profile-signature-canvas-wrap{position:relative;background:#fff;border-radius:12px;overflow:hidden}
.profile-signature-canvas{opacity:1!important;object-fit:contain;background:#fff!important;cursor:crosshair}
.profile-signature-canvas-wrap .profile-signature-hint{position:absolute;right:10px;bottom:8px;padding:4px 7px;border-radius:8px;background:rgba(245,249,251,.92);font-size:9px;color:#708795;pointer-events:none}
.profile-signature-current{min-height:105px!important}.profile-signature-current img{display:block!important;width:min(100%,600px)!important;height:92px!important;max-width:100%!important;max-height:92px!important;object-fit:contain!important}
.profile-signature-upload input[type=file]{max-width:100%}
@media(max-width:760px){
  .profile-mobile-sign-button{display:inline-flex!important}.profile-mobile-help{display:inline!important}
  .profile-signature-canvas{height:210px!important;cursor:default}.profile-signature-canvas:not(.active){opacity:.45!important}
  .profile-signature-actions .btn{flex:1 1 46%}
}


/* Alpha 58.14 · firmas sin deformación + parte 2610 simplificado */
.profile-signature-canvas{width:100%!important;height:auto!important;aspect-ratio:11/5!important;background:#fff!important;object-fit:contain!important}
.profile-signature-current{min-height:118px!important;aspect-ratio:11/5!important;max-height:220px!important}
.profile-signature-current img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}
.repo-agent-signature-preview img,.repo-mobile-signature-preview img{object-fit:contain!important}
.repo-form-grid label{font-size:13px!important;line-height:1.25}
.repo-form-grid input,.repo-form-grid select,.repo-form-grid textarea{font-size:15px!important;line-height:1.42!important}
.repo-form-grid textarea{min-height:140px;resize:vertical}
.repo-form-grid textarea.repo-main-narrative{min-height:260px!important;font-size:16px!important;line-height:1.5!important;padding:14px!important}
@media(max-width:760px){
  .profile-signature-canvas{aspect-ratio:11/5!important;height:auto!important;min-height:0!important}
  .repo-form-grid label{font-size:13px!important}
  .repo-form-grid input,.repo-form-grid select,.repo-form-grid textarea{font-size:16px!important}
  .repo-form-grid textarea.repo-main-narrative{min-height:300px!important;font-size:17px!important}
}

/* Alpha 58.17: edicion clara de foto y rubrica en Mi perfil */
.profile-edit-title{margin:0 0 14px;color:#123b59}.profile-field{display:flex!important;flex-direction:column;gap:6px;margin-bottom:14px;font-weight:800;color:#173d58}.profile-field input{font-weight:500}.profile-edit-panel{margin:14px 0 18px;padding:14px;border:1px solid #cbdbe5;border-radius:14px;background:#f8fbfd}.profile-edit-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.profile-edit-panel-head>div{display:flex;flex-direction:column;gap:3px}.profile-edit-panel-head small{color:#708795}.profile-file-row{display:flex!important;flex-direction:column;gap:6px;font-weight:800;color:#234d66}.profile-edit-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}.profile-signature-primary-actions{margin:4px 0 10px}.profile-save-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.danger-soft{border-color:#e8b8b3!important;background:#fff7f6!important;color:#a52d25!important}.danger-soft:hover{background:#fde9e7!important}.profile-signature-current{background:#fff}.profile-signature-current img{object-fit:contain!important}.profile-signature-canvas-wrap{margin-top:8px}.profile-signature-upload{margin-top:12px!important}@media(max-width:760px){.profile-edit-panel-head{align-items:flex-start}.profile-save-row .btn{flex:1 1 45%}}

/* Alpha 58.19 · anulados visibles sin recuento + limpieza segura del modo de pruebas */
.register-row.annulled{background:#cfd5d9!important;border-color:#7f8b94!important;box-shadow:inset 5px 0 0 #59656d!important;color:#4c5961!important}
.register-row.annulled:hover{background:#c8cfd4!important;border-color:#687680!important;box-shadow:inset 5px 0 0 #4d5961,0 3px 10px #26343d18!important}
.register-row.annulled>strong,.register-row.annulled>strong small,.register-row.annulled .register-doc b,.register-row.annulled .register-involved b,.register-row.annulled .register-agent b{color:#4a555c!important}
.register-row.annulled .register-doc small,.register-row.annulled .register-involved small,.register-row.annulled .register-agent small{color:#66747d!important}
.register-row.annulled .register-direct-file{filter:grayscale(.75);opacity:.85}
.register-annulled-label{display:inline-flex!important;margin-left:8px;padding:2px 6px;border-radius:999px;background:#5b646b;color:#fff!important;font-size:8px!important;font-weight:950!important;letter-spacing:.08em;vertical-align:middle}
.register-reset-btn{border-color:#c9a6a8!important;color:#8d3035!important;background:#fff8f8!important}.register-reset-btn:hover{background:#fae9ea!important}
.register-reset-card{max-width:880px;padding:18px;display:grid;gap:16px}.register-reset-warning{display:flex;flex-direction:column;gap:5px;padding:13px 15px;border-radius:11px;border:1px solid #ddb9bb;background:#fff4f4;color:#733036}.register-reset-warning span{font-size:11px;line-height:1.45}.register-reset-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.register-reset-stats>div{padding:13px;border:1px solid #d5e1e8;border-radius:10px;background:#f8fbfd;display:flex;flex-direction:column;gap:4px}.register-reset-stats span{font-size:9px;color:#6b8290;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.register-reset-stats b{font-size:21px;color:#164b6d}.register-reset-explain{margin:0;color:#526b7a;font-size:12px;line-height:1.5}.register-reset-form{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:12px;align-items:end}.register-reset-form label{display:flex;flex-direction:column;gap:6px;font-size:11px;color:#35546a}.register-reset-form input{height:42px;border:1px solid #c5d5df;border-radius:9px;padding:0 11px;font:inherit}.register-reset-form>div{display:flex;gap:8px}
@media(max-width:760px){.register-reset-stats{grid-template-columns:1fr}.register-reset-form{grid-template-columns:1fr}.register-reset-form>div{justify-content:space-between}.register-annulled-label{font-size:7px!important;margin-left:5px;padding:2px 5px}}

/* Alpha 58.20 · PIN de firma y autorización segura de segundo agente */
.profile-signature-pin-box{margin:16px 0 4px;padding:14px;border:1px solid #cbdbe5;border-radius:14px;background:#f8fbfd}.profile-pin-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}.profile-pin-grid label,.agent-sign-auth-field{display:flex!important;flex-direction:column;gap:6px;font-size:11px;font-weight:850;color:#234d66}.profile-pin-grid input,.agent-sign-auth-field input,.agent-sign-auth-field select{height:42px;border:1px solid #c5d6df;border-radius:9px;background:#fff;padding:0 11px;font:inherit;color:#17324a}.agent-sign-auth-card{max-width:520px!important}.agent-sign-auth-card p{margin-top:0;color:#607887}.agent-sign-auth-error{margin-top:10px;padding:9px 11px;border-radius:9px;background:#fff0ef;border:1px solid #efc2bd;color:#9b2e27;font-size:11px;font-weight:750}.agent-sign-auth-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.agent-sign-auth-field+ .agent-sign-auth-field{margin-top:10px}.repo-agent-signature-preview span{font-size:10px!important}.repo-agent-signature-preview img{max-width:170px!important;max-height:54px!important}
@media(max-width:760px){.profile-pin-grid{grid-template-columns:1fr}.agent-sign-auth-card{width:min(92vw,520px)!important}.agent-sign-auth-actions .btn{flex:1}.repo-agent-signature-preview img{max-width:145px!important;max-height:48px!important}}


/* Alpha 58.21 · segundo agente vinculado, cierre firma móvil y sintaxis 2610 */
.repo-agent2-select{font-weight:750!important;color:#173f5c!important;background:#fff!important}.agent-sign-linked-agent{margin:8px 0 2px;padding:10px 12px;border:1px solid #bad8e6;border-radius:9px;background:#f1f9fd;color:#174f6d;font-size:12px;font-weight:850}.agent-sign-auth-field[hidden],.agent-sign-linked-agent[hidden]{display:none!important}
/* Alpha 58.23: una sola superficie de rúbrica en Mi perfil */
.profile-signature-single{margin-top:8px!important}
.profile-signature-single .profile-signature-canvas{opacity:1!important;background:#fff!important}

/* Alpha 58.28 · contraste reforzado en fondos claros */
/* El gris medio usado como texto secundario perdía legibilidad sobre azul claro. */
.pagehead p,.sectionhead p,.muted,.repo-home-card p,.repo-home-card small,
.repo-category-section p,.repo-result-category,.repo-preview-note,.repo-preview-toolbar small,
.repo-agent-signature-preview span,.repo-mobile-signature-preview span,
.repo-form-grid label>span,.repo-field-label,.repo-checkopt span,
.profile-edit-panel-head small,.profile-signature-head small,.profile-signature-upload small,
.register-admin-actions p,.register-history-row span,.register-history-row small,
.register-reset-explain,.register-reset-stats span,.agent-sign-auth-card p,
.hq-inbox-main p,.hq-inbox-main small,.hq-inbox-ref span,
.module small,.repocard small,.listrow small,.taskrow small,td small,
.top small,.staff small,.shiftbox>small{
  color:#111827!important;
}
.repo-home-card,.repo-category-section,.repo-search-results,.repo-form,.card,
.current,.alert.order,.register-reset-stats>div,.profile-edit-panel,.profile-signature-pin-box,
.agent-sign-linked-agent,.repo-preview-toolbar{
  --secondary-text:#111827;
}

/* Alpha 58.29 · Fotos en plantillas del repositorio */
.repo-photo-field{display:flex;flex-direction:column;gap:6px;min-width:0;padding:10px;border:1px solid #d6e3ea;border-radius:11px;background:#fbfdfe;color:#111827}.repo-photo-picker{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.repo-photo-select{position:relative;overflow:hidden;cursor:pointer}.repo-photo-select input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.repo-photo-preview{display:flex;align-items:center;gap:10px;padding:8px;border:1px dashed #b8cbd6;border-radius:9px;background:#fff}.repo-photo-preview img{width:118px;height:88px;object-fit:contain;border:1px solid #dce6ec;border-radius:7px;background:#f7f9fb}.repo-photo-preview small{font-size:10px;line-height:1.35;color:#111827;font-weight:650}.repo-photo-clear{color:#7b1f2c}.repo-form-grid .repo-photo-field .repo-field-label{color:#111827!important}
@media(max-width:760px){.repo-photo-field{padding:9px}.repo-photo-picker .btn{flex:1;text-align:center}.repo-photo-preview{align-items:flex-start}.repo-photo-preview img{width:104px;height:82px}.repo-photo-preview small{font-size:9px}}

/* Alpha 58.40 · repositorio compacto: todas las acciones en una sola fila */
.repo-row{grid-template-columns:55px minmax(0,1fr) auto auto!important;min-height:58px;align-items:center!important}
.repo-kind{display:flex;align-items:center;gap:5px;justify-content:flex-end;white-space:nowrap}
.repo-kind .pill{font-size:8px!important;padding:4px 8px}
.repo-actions{display:flex!important;align-items:center;justify-content:flex-end!important;gap:5px!important;grid-column:auto!important;border-top:0!important;padding-top:0!important;flex-wrap:nowrap}
.repo-actions .btn{white-space:nowrap;font-size:9px;padding:6px 8px}
.repo-actions .btn.writer{background:#f2f7fb;border-color:#bfd2df;color:#164d70}
.repo-actions .btn.quiet{background:#fff;color:#627987}
.writer-session-card,.writer-finish{max-width:980px;margin-inline:auto}
.writer-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:18px}
.writer-flow span{padding:8px;border:1px solid #d8e4eb;border-radius:8px;background:#f8fbfd;font-size:10px;font-weight:800;text-align:center;color:#607986}
.writer-flow span.done{background:#eaf8f3;border-color:#a9dac8;color:#12634d}
.writer-state{border:1px solid #d7e2e9;border-radius:10px;padding:14px;margin:14px 0;display:flex;flex-direction:column;gap:3px}
.writer-state.waiting{background:#fffaf0}.writer-state.ready{background:#eefaf5;border-color:#a8d8c5}.writer-state span{font-size:10px;color:#667c89}
.writer-person-sign{padding:14px 16px;border-top:1px solid #dce6ec}.writer-person-sign canvas{display:block;width:100%;max-width:680px;height:150px;background:#fff;border:1px dashed #aebfca;border-radius:8px;touch-action:none;margin:8px 0}.writer-person-sign>div{display:flex;gap:6px}
@media(max-width:900px){.repo-row{grid-template-columns:44px minmax(0,1fr)!important}.repo-kind{grid-column:2;justify-content:flex-start}.repo-actions{grid-column:2!important;justify-content:flex-start!important;overflow-x:auto}.repo-actions .btn{font-size:8px;padding:5px 7px}.writer-flow{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.writer-flow{grid-template-columns:1fr}.repo-actions{gap:4px!important}.repo-actions .btn{font-size:7.5px}.repo-kind .pill{font-size:7px!important}}

/* Alpha 58.41: repositorio compacto sin etiquetas técnicas */
.repo-row{grid-template-columns:55px minmax(0,1fr) auto!important;min-height:48px!important;padding:6px 9px!important}.repo-actions{grid-column:auto!important}.repo-kind{display:none!important}@media(max-width:900px){.repo-row{grid-template-columns:44px minmax(0,1fr)!important}.repo-actions{grid-column:2!important}}

/* Alpha 58.42 · repositorio operativo limpio.
   No mostrar etiquetas técnicas (OTT/WRITER/FICHA PDF) en listados de uso diario. */
.repo-type,.repo-kind,.repo-format,.repo-format-badges{display:none!important}
.repo-row{grid-template-columns:55px minmax(0,1fr) auto!important;min-height:46px!important;padding:6px 9px!important}
.repo-main small{display:none!important}
.repo-actions{display:flex!important;align-items:center!important;gap:6px!important;justify-content:flex-end!important;flex-wrap:nowrap!important;grid-column:auto!important;border-top:0!important;padding-top:0!important;overflow-x:auto}
@media(max-width:900px){.repo-row{grid-template-columns:44px minmax(0,1fr)!important}.repo-actions{grid-column:2!important;justify-content:flex-start!important}}

/* Alpha 58.50 · Buzón Jefatura: controles más legibles */
.hq-inbox-actions form{
  grid-template-columns:150px minmax(240px,360px) auto;
  gap:8px;
}
.hq-inbox-actions select,
.hq-inbox-actions input{
  min-height:40px;
  padding:9px 11px;
  font-size:14px;
  font-weight:700;
  line-height:1.2;
  color:#173f59;
  background:#fff;
  border:1px solid #aebfca;
  opacity:1;
}
.hq-inbox-actions select option{
  font-size:14px;
  color:#173f59;
  background:#fff;
}
.hq-inbox-actions input::placeholder{
  color:#607788;
  opacity:1;
  font-weight:600;
}
.hq-inbox-actions .btn{
  min-height:40px;
  font-size:13px;
  padding:9px 13px;
}
@media(max-width:760px){
  .hq-inbox-actions form{grid-template-columns:1fr;}
  .hq-inbox-actions select,.hq-inbox-actions input{font-size:16px;min-height:44px;}
}

/* Alpha 58.51 · borradores identificables y responsable exclusivo */
.draft-row{grid-template-columns:70px minmax(0,1fr) auto!important;min-height:78px;padding:11px 13px!important;gap:14px!important}
.draft-main>b{font-size:15px!important;color:#173f5c!important;margin-bottom:7px!important}
.draft-meta{display:flex!important;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:13px!important;line-height:1.35;color:#344f61!important}
.draft-meta span{display:inline-flex;align-items:center;gap:4px}
.draft-state{font-weight:900;color:#8a4d00!important;background:#fff1cf;border:1px solid #efc66a;border-radius:999px;padding:4px 9px;letter-spacing:.03em}
.draft-atestado{font-weight:850;color:#6b2d7c!important;background:#f5eafd;border-radius:999px;padding:4px 8px}
.draft-owner-lock{display:inline-flex;align-items:center;min-height:34px;padding:7px 10px;border-radius:8px;background:#eef3f6;color:#435966;font-size:12px;font-weight:800;white-space:nowrap}
@media(max-width:760px){.draft-row{grid-template-columns:52px minmax(0,1fr)!important}.draft-row .repo-actions{grid-column:2!important}.draft-main>b{font-size:13px!important}.draft-meta{font-size:11px!important;gap:5px 9px}.draft-owner-lock{white-space:normal;font-size:10px}}


/* Alpha 58.52 · legibilidad PC en repositorio y listados operativos.
   Solo escritorio: aprovechamos el espacio horizontal sin cambiar la vista móvil. */
@media (min-width:901px){
  .repo-category-search{padding:16px 18px!important}
  .repo-home-search-box{gap:10px!important;align-items:center!important}
  .repo-home-search-box .search,
  .repo-category-search .search{
    min-height:46px!important;
    padding:11px 14px!important;
    font-size:16px!important;
    font-weight:600!important;
    color:#173f5c!important;
    border-color:#aebfca!important;
    background:#fff!important;
  }
  .repo-home-search-box .search::placeholder,
  .repo-category-search .search::placeholder{font-size:16px!important;color:#607788!important;opacity:1!important}
  .repo-home-search-box>.btn,
  .repo-category-search .btn{min-height:46px!important;font-size:14px!important;padding:10px 17px!important;font-weight:800!important}

  .repo-category-section .repo-list{gap:7px!important}
  .repo-category-section .repo-row,
  .repo-search-results .repo-row{
    grid-template-columns:72px minmax(0,1fr) auto!important;
    min-height:62px!important;
    padding:9px 12px!important;
    gap:14px!important;
    align-items:center!important;
  }
  .repo-category-section .repo-code,
  .repo-search-results .repo-code{
    min-width:62px!important;
    min-height:36px!important;
    padding:8px 10px!important;
    font-size:12px!important;
    font-weight:900!important;
    line-height:1.1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .repo-category-section .repo-main b,
  .repo-search-results .repo-main b{
    font-size:15px!important;
    line-height:1.25!important;
    font-weight:850!important;
    color:#173f5c!important;
  }
  .repo-category-section .repo-actions,
  .repo-search-results .repo-actions{gap:9px!important;overflow:visible!important}
  .repo-category-section .repo-actions .btn,
  .repo-search-results .repo-actions .btn{
    min-height:38px!important;
    padding:8px 13px!important;
    font-size:13px!important;
    line-height:1.15!important;
    font-weight:800!important;
    border-radius:9px!important;
  }
  .repo-category-section .repo-actions .btn.quiet,
  .repo-search-results .repo-actions .btn.quiet{color:#294f68!important;border-color:#b9cbd6!important;background:#fff!important}

  .repo-group summary b{font-size:15px!important;color:#173f5c!important}
  .repo-group summary small,.repo-group summary span{font-size:12px!important;color:#435f72!important}

  .repo-subnav .btn{font-size:13px!important;padding:9px 13px!important}
  .repo-category-head h1{font-size:32px!important;line-height:1.05!important}
  .repo-category-head p{font-size:16px!important;color:#2f4f63!important}
  .repo-kicker{font-size:11px!important;font-weight:850!important;letter-spacing:.08em!important}

  /* Borradores: los datos deben poder leerse de un vistazo en PC. */
  .draft-row{grid-template-columns:82px minmax(0,1fr) auto!important;min-height:90px!important;padding:13px 15px!important}
  .draft-row .repo-code{font-size:12px!important;min-height:38px!important}
  .draft-main>b{font-size:16px!important}
  .draft-meta{font-size:14px!important;gap:7px 16px!important}
  .draft-state,.draft-atestado{font-size:12px!important}
  .draft-owner-lock{font-size:13px!important;min-height:38px!important;padding:8px 12px!important}
  .draft-row .repo-actions .btn{font-size:13px!important;min-height:38px!important;padding:8px 12px!important}
}

/* Alpha 58.62: vista y descarga PDF separadas */
.register-file-state{gap:6px}.register-file-download{min-width:38px;padding-left:10px;padding-right:10px}


/* Alpha 58.63 · Libro Registro: legibilidad PC y flujo de anulación simplificado */
.register-final-actions{margin-top:16px;padding-top:14px;border-top:1px solid #dbe6ed;justify-content:flex-end;gap:10px}
.register-final-actions>a:first-child{margin-right:auto}
.register-annul-dialog{border:0!important;border-radius:16px!important;padding:0!important;max-width:560px!important;width:calc(100% - 32px)!important;box-shadow:0 24px 70px #102c3f55!important}
.register-annul-dialog::backdrop{background:#0e273a66;backdrop-filter:blur(2px)}
.register-annul-dialog-card{padding:24px;display:flex;flex-direction:column;gap:15px;background:#fff;color:#173b55}
.register-annul-dialog-card h3{font-size:22px;margin:0}.register-annul-dialog-card p{font-size:14px;line-height:1.5;margin:0;color:#587184}.register-annul-dialog-card label{display:flex;flex-direction:column;gap:7px;font-weight:800}.register-annul-dialog-card textarea{font:inherit;font-size:15px;border:1px solid #bfd0db;border-radius:10px;padding:11px;resize:vertical;min-height:84px}
@media(min-width:1001px){
  .register-list-head{font-size:11px!important;padding:9px 14px!important;letter-spacing:.025em}
  .register-row{padding:14px 15px!important;min-height:72px!important;gap:15px!important}
  .register-row>strong{font-size:30px!important;line-height:1!important}.register-row>strong small{font-size:14px!important}
  .register-row>div>b{font-size:15px!important;line-height:1.25!important}.register-row>div>small{font-size:11.5px!important;line-height:1.35!important;margin-top:5px!important}
  .register-mobile-summary{display:none!important}
  .register-direct-file.register-file-action{min-width:74px!important;height:38px!important;font-size:13px!important}
  .register-file-action-text{font-size:12px!important}
  .register-annulled-label{font-size:10px!important;padding:4px 7px!important;margin-left:9px!important}
}

/* Alpha 58.64 · Asientos anulados: documentos solo Administración */
.register-file-badge.restricted{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border-radius:10px;background:#eceff2;color:#68727d;border:1px solid #cfd6dc;font-weight:800;font-size:13px;white-space:nowrap}
.register-row.annulled .register-file-badge.restricted{background:#e4e7ea;color:#5e6770;border-color:#c6ccd2}
/* Alpha 59 - Cuadrante de servicio */
.schedule-pagehead .actions,.schedule-titlebar,.schedule-toolbar,.schedule-admin-top,.schedule-config form,.month-state,.schedule-history-grid,.import-history form{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.schedule-toolbar{justify-content:space-between;margin-bottom:14px}.schedule-toolbar form{display:flex;gap:8px;align-items:center}.schedule-toolbar select,.schedule-admin-top select,.schedule-admin-top input,.schedule-config input{font-size:16px;min-height:42px}.schedule-titlebar{justify-content:space-between;margin:12px 0}.schedule-titlebar h2{margin:0;font-size:25px}.schedule-titlebar span{font-weight:700;color:#31536d}.schedule-scroll{overflow:auto;width:100%;border:1px solid #cad5de;border-radius:10px;background:#fff}.schedule-grid{border-collapse:separate;border-spacing:0;min-width:max-content;width:100%;font-size:14px}.schedule-grid th,.schedule-grid td{border-right:1px solid #d7dfe5;border-bottom:1px solid #d7dfe5;min-width:33px;height:36px;text-align:center;padding:2px}.schedule-grid thead th{position:sticky;top:0;background:#dce8f2;z-index:3;font-size:13px}.schedule-grid .sticky-name{position:sticky;left:0;z-index:4;min-width:175px;max-width:175px;text-align:left;padding:6px 9px;background:#f8fafb;font-size:14px}.schedule-grid thead .sticky-name{z-index:5;background:#dce8f2}.schedule-grid .sticky-name small{display:block;font-size:10px;font-weight:500}.schedule-grid td b{font-size:13px}.schedule-grid td i{font-style:normal;font-size:17px;line-height:8px}.my-schedule-row .sticky-name{box-shadow:inset 4px 0 0 #2563eb}.code-m{background:#dff3ff!important}.code-t{background:#fff1c7!important}.code-n{background:#e8e3ff!important}.code-c{background:#D8C7A7!important}.code-d,.code-dc{background:#eeeeee!important}.code-v,.code-va{background:#d7f0ff!important}.code-ap{background:#ffd8ec!important}.code-b{background:#ffd6d6!important}.code-p,.code-pa{background:#f4dfc7!important}.code-g{background:#d6eadf!important}.code-jv{background:#fff0b8!important}.schedule-legend{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px;font-size:13px}.schedule-legend span{padding:5px 8px;border-radius:6px;border:1px solid #d2d8dd}.my-service-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:8px}.my-service-day{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid #dbe2e7;border-radius:10px;padding:10px}.my-service-day>strong{font-size:21px;width:30px}.my-service-day div{display:flex;flex-direction:column;gap:3px}.my-service-day .badge{display:inline-block;width:max-content;min-width:35px;text-align:center;padding:4px 8px;border-radius:6px}.my-service-day.today{outline:3px solid #2563eb}.schedule-history-grid{align-items:stretch}.history-year{min-width:230px;flex:1}.history-year h2{font-size:29px;margin:0}.import-history{margin-top:16px}.schedule-admin-top{justify-content:space-between}.schedule-admin-top>form{display:flex;gap:10px;align-items:end}.schedule-admin-top label{display:flex;flex-direction:column;gap:4px}.month-state{justify-content:flex-end}.schedule-config{margin:14px 0}.schedule-config h2{margin-top:0}.schedule-config label{display:flex;align-items:center;gap:6px}.schedule-config .check{font-weight:700}.admin-grid .schedule-grid td{padding:0}.cell-form,.cell-form select{width:100%;height:100%;margin:0}.cell-form select{border:0;background:transparent;text-align:center;font-weight:700;min-height:34px;appearance:auto}.schedule-summary{margin-top:15px}.schedule-summary table{border-collapse:collapse;width:100%;font-size:14px}.schedule-summary th,.schedule-summary td{padding:7px;border-bottom:1px solid #ddd;text-align:center}.schedule-summary th:first-child,.schedule-summary td:first-child{text-align:left}.headquarters-quick{margin-bottom:14px}.headquarters-quick .module{max-width:520px}
@media (max-width:700px){.schedule-grid{font-size:12px}.schedule-grid .sticky-name{min-width:132px;max-width:132px;font-size:12px}.schedule-grid th,.schedule-grid td{min-width:29px;height:34px}.schedule-pagehead .actions{width:100%}.schedule-toolbar{align-items:stretch}.schedule-toolbar form{order:-1;width:100%}.schedule-titlebar{align-items:flex-start}.schedule-admin-top>form{width:100%}.schedule-config form{align-items:flex-start;flex-direction:column}}
.service-hq-status{margin:8px 0 12px;padding:9px 12px;border-radius:8px;background:#eef5fb;border:1px solid #c9dbea;font-size:14px}
/* Modulo 59.1 - cuadrante: colores fieles al Calc original y mayor legibilidad */
.schedule-grid td b{font-size:17px;font-weight:800;line-height:1}.admin-grid .cell-form select{font-size:16px;font-weight:800}.code-m{background:#ffd7d7!important}.code-t{background:#b4c7dc!important}.code-n{background:#b2b2b2!important}.code-c{background:#D8C7A7!important}.code-d{background:#fff!important}.code-dc{background:#ffa6a6!important}.code-v{background:#bbe33d!important}.code-va{background:#76ff03!important}.code-ap{background:#63bbee!important}.code-b{background:#dc85e9!important}.code-p{background:#ffde59!important}.code-pa{background:#18ffff!important}.code-g{background:#18a303!important}.code-jv{background:#ffff00!important}.schedule-person-admin{margin:14px 0}.schedule-person-admin h2{margin:0 0 4px}.schedule-person-admin p{margin:0 0 12px}.schedule-add-person{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.schedule-add-person label{display:flex;flex-direction:column;gap:4px;font-weight:700}.schedule-add-person input,.schedule-add-person select{min-height:42px;font-size:15px}.schedule-add-person input[type=text]{min-width:280px}.schedule-row-editor{margin-top:12px}.schedule-row-editor summary{cursor:pointer;font-weight:800}.schedule-row-editor-list{display:grid;gap:7px;margin-top:10px}.schedule-row-editor-list form{display:grid;grid-template-columns:minmax(220px,1fr) 130px auto auto;gap:7px;align-items:center}.schedule-row-editor-list input,.schedule-row-editor-list select{min-height:38px;font-size:14px}.btn.danger{border-color:#d44;color:#a11;background:#fff5f5}
@media (max-width:700px){.schedule-grid td b{font-size:14px}.schedule-add-person{align-items:stretch;flex-direction:column}.schedule-add-person input[type=text]{min-width:0;width:100%}.schedule-row-editor-list form{grid-template-columns:1fr 110px}.schedule-row-editor-list .btn{width:100%}}
/* Modulo 59.2 - cuadrante: rejilla reforzada, cabeceras, festivos y enfoque hoy */
.schedule-grid{border-collapse:collapse!important}
.schedule-grid th,.schedule-grid td{border:1.35px solid #5e6b75!important}
.schedule-grid td{height:40px!important;vertical-align:middle!important;text-align:center!important;padding:0!important}
.schedule-grid td b{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:18px!important;font-weight:800;line-height:1!important}
.schedule-grid thead th.schedule-day-head{min-width:36px;height:50px;padding:2px 1px!important;vertical-align:middle!important;text-align:center!important;background:#f7f8f9}
.schedule-day-head strong{display:block;font-size:15px;line-height:18px}
.schedule-day-head small{display:block;font-size:10px;line-height:12px;text-transform:lowercase;font-weight:800;color:#233746}
.schedule-day-head.sunday{background:#ef3e3e!important;color:#111!important}
.schedule-day-head.sunday small{color:#111!important}
.schedule-day-head.holiday{background:#f4a340!important;color:#111!important}
.schedule-day-head.holiday em{display:inline-block;margin-top:1px;padding:0 3px;border-radius:3px;background:#111;color:#fff;font-style:normal;font-size:8px;line-height:11px}
.schedule-grid .today-col{position:relative;box-shadow:inset 2px 0 0 #1367a8,inset -2px 0 0 #1367a8!important}
.schedule-grid thead .today-col{outline:3px solid #1367a8;outline-offset:-3px;z-index:6!important}
.admin-grid .cell-form,.admin-grid .cell-form select{height:100%!important;min-height:39px!important}
.admin-grid .cell-form select{display:flex;align-items:center;justify-content:center;text-align:center!important;text-align-last:center!important;font-size:17px!important;padding:0!important}
.schedule-holidays{margin:14px 0}.schedule-holidays h2{margin:0 0 4px}.schedule-holidays p{margin:0 0 12px}.holiday-add{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.holiday-add label{display:flex;flex-direction:column;gap:4px;font-weight:700}.holiday-add input,.holiday-add select{min-height:42px;font-size:15px}.holiday-add input[type=text]{min-width:250px}.holiday-list{display:grid;gap:6px;margin-top:12px}.holiday-list form{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 9px;border:1px solid #d6dde3;border-radius:8px;background:#fafbfc}
@media(max-width:700px){.schedule-grid td b{font-size:15px!important}.schedule-grid thead th.schedule-day-head{min-width:31px}.holiday-add{flex-direction:column;align-items:stretch}.holiday-add input[type=text]{min-width:0}.holiday-list form{align-items:flex-start;flex-direction:column}}

/* Modulo 59.3 · cabecera fiel al cuadrante Calc, centrado real y móvil Libro Registro */
.schedule-grid{border-collapse:collapse!important}
.schedule-grid th,.schedule-grid td{border:1.55px solid #45535e!important}
.schedule-grid tbody td{height:42px!important;min-height:42px!important;vertical-align:middle!important;text-align:center!important;padding:0!important;position:relative!important}
.schedule-grid tbody td .shift-code{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:40px!important;min-height:40px!important;line-height:40px!important;font-size:18px!important;font-weight:850!important;color:#092e48!important}
.schedule-grid tbody td>i{position:absolute!important;right:2px!important;top:1px!important;font-size:12px!important;line-height:1!important}
.schedule-grid thead th{position:sticky!important;background:#fff!important;color:#111!important;font-weight:850!important;text-align:center!important;vertical-align:middle!important;padding:0!important}
.schedule-grid thead .schedule-month-label{top:0!important;min-width:175px!important;height:58px!important;background:#fff!important;font-size:19px!important;text-align:center!important;text-transform:lowercase!important;z-index:7!important}
.schedule-weekday-head{top:0!important;height:26px!important;min-width:36px!important;font-size:11px!important;line-height:26px!important;text-transform:lowercase!important;background:#fff!important;z-index:5!important}
.schedule-number-head{top:26px!important;height:32px!important;min-width:36px!important;font-size:15px!important;line-height:32px!important;background:#fff!important;z-index:5!important}
.schedule-number-head b{display:inline!important;font-size:15px!important;font-weight:900!important;margin-left:1px!important}
.schedule-weekday-head.sunday{background:#ef2f2f!important;color:#111!important}
.schedule-number-head.holiday{background:#f28c28!important;color:#111!important}
.schedule-number-head.holiday-local{background:#f28c28!important}
.schedule-number-head.holiday-regional{background:#f28c28!important}
.schedule-number-head.holiday-national{background:#f28c28!important}
.schedule-grid .today-col{position:relative!important;box-shadow:inset 3px 0 0 #0a65a6,inset -3px 0 0 #0a65a6!important}
.schedule-grid thead .today-col{box-shadow:inset 3px 0 0 #0a65a6,inset -3px 0 0 #0a65a6!important}
.schedule-weekday-head.today-col{border-top:3px solid #0a65a6!important}
.schedule-number-head.today-col{border-bottom:3px solid #0a65a6!important}
/* Paleta tomada del formato condicional del Cuadrante 2026 original. */
.code-m{background:#ffd7d7!important}.code-t{background:#b4c7dc!important}.code-n{background:#b2b2b2!important}.code-d{background:#fff!important}.code-dc{background:#ffa6a6!important}.code-v{background:#bbe33d!important}.code-va{background:#76ff03!important}.code-ap{background:#63bbee!important}.code-b{background:#dc85e9!important}.code-p{background:#ffde59!important}.code-pa{background:#18ffff!important}.code-g{background:#18a303!important}.code-jv{background:#ffff00!important}.code-c{background:#D8C7A7!important}
.admin-grid .cell-form{display:flex!important;align-items:center!important;justify-content:center!important;height:40px!important;min-height:40px!important}
.admin-grid .cell-form select{display:block!important;height:40px!important;min-height:40px!important;line-height:40px!important;padding:0 2px!important;margin:0!important;text-align:center!important;text-align-last:center!important;vertical-align:middle!important;font-size:17px!important;font-weight:850!important;color:#092e48!important;background:transparent!important;border:0!important}
@media(max-width:700px){.schedule-grid thead .schedule-month-label{min-width:132px!important;font-size:15px!important}.schedule-weekday-head,.schedule-number-head{min-width:31px!important}.schedule-grid tbody td .shift-code{height:38px!important;min-height:38px!important;line-height:38px!important;font-size:15px!important}}

@media(max-width:760px){
  .register-list{gap:7px!important}
  .register-row{grid-template-columns:54px minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;column-gap:9px!important;row-gap:5px!important;padding:10px 11px!important;border:1px solid #cbd9e1!important;border-radius:10px!important;box-shadow:none!important}
  .register-row.annulled{border-left:4px solid #5d6a72!important}
  .register-row>strong{grid-column:1!important;grid-row:1/4!important;font-size:20px!important;line-height:1.02!important;align-self:start!important}
  .register-row>strong small{font-size:9px!important;margin-top:3px!important}
  .register-doc{grid-column:2!important;grid-row:1!important;padding-right:0!important}
  .register-doc>b{font-size:12px!important;line-height:1.18!important;white-space:normal!important}
  .register-doc>small{font-size:8.5px!important;line-height:1.25!important;margin-top:2px!important;white-space:normal!important}
  .register-annulled-label{font-size:7px!important;padding:2px 5px!important;margin-left:5px!important;vertical-align:middle!important}
  .register-mobile-summary{display:flex!important;grid-column:2!important;grid-row:2!important;flex-direction:column!important;gap:2px!important;margin:0!important;padding:2px 0 0!important;border-top:1px solid #edf2f5!important}
  .register-mobile-summary span,.register-mobile-summary small{display:block!important;font-size:8.7px!important;line-height:1.24!important;color:#567184!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;margin:0!important}
  .register-mobile-summary span b,.register-mobile-summary small b{color:#294e65!important;font-weight:850!important}
  .register-mobile-annul-reason{color:#7a3a3a!important}
  .register-file-state{grid-column:2!important;grid-row:3!important;align-self:auto!important;display:flex!important;flex-direction:row!important;justify-content:flex-start!important;gap:5px!important;margin-top:2px!important}
  .register-direct-file.register-file-action{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:58px!important;height:29px!important;min-height:29px!important;padding:0 10px!important;border-radius:8px!important;font-size:9.5px!important;line-height:1!important}
  .register-direct-file.register-file-download{min-width:35px!important;padding:0 9px!important}
  .register-file-badge.restricted{display:inline-flex!important;min-height:28px!important;height:28px!important;padding:0 9px!important;font-size:8px!important;border-radius:8px!important}
}

/* Modulo 59.4 · cuadrante compacto, Jefatura privada y Libro Registro móvil fino */
@media (min-width:761px){
  .schedule-fit-wrap{width:100%;overflow:visible}
  .schedule-primary-grid{overflow:visible!important}
  .schedule-primary-grid .schedule-grid,.schedule-aux-grid{width:100%!important;min-width:0!important;table-layout:fixed!important}
  .schedule-primary-grid .schedule-grid .sticky-name,.schedule-aux-grid .sticky-name{width:152px!important;min-width:152px!important;max-width:152px!important}
  .schedule-primary-grid .schedule-grid th:not(.sticky-name),.schedule-primary-grid .schedule-grid td,
  .schedule-aux-grid th:not(.sticky-name),.schedule-aux-grid td{min-width:0!important;width:auto!important}
  .schedule-grid tbody td{height:29px!important;min-height:29px!important}
  .schedule-grid tbody td .shift-code{height:28px!important;min-height:28px!important;line-height:28px!important;font-size:15px!important}
  .schedule-weekday-head{height:20px!important;line-height:20px!important;font-size:9px!important;min-width:0!important}
  .schedule-number-head{height:24px!important;line-height:24px!important;font-size:12px!important;min-width:0!important}
  .schedule-number-head b{font-size:11px!important}
  .schedule-grid thead .schedule-month-label{height:44px!important;min-width:152px!important;max-width:152px!important;font-size:16px!important}
  /* No hace falta cabecera vertical pegajosa en una rejilla que ya cabe completa.
     Evita que el número del día actual salte sobre la primera fila. */
  .schedule-primary-grid .schedule-grid thead th,.schedule-aux-grid thead th{position:static!important;top:auto!important}
}
.schedule-person-name{color:#050505!important;font-weight:900!important;font-size:13px!important;letter-spacing:.005em}
.schedule-grid .today-col{box-shadow:inset 2px 0 0 #0a65a6,inset -2px 0 0 #0a65a6!important}
.schedule-weekday-head.today-col{border-top:2px solid #0a65a6!important}
.schedule-number-head.today-col{border-bottom:2px solid #0a65a6!important;transform:none!important;translate:none!important}
.schedule-aux-details{margin-top:8px;border:1px solid #cbd8e1;border-radius:9px;background:#fff;overflow:hidden}
.schedule-aux-details>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;padding:8px 11px;font-weight:850;color:#173b55;background:#f1f6f9}
.schedule-aux-details>summary::-webkit-details-marker{display:none}
.schedule-aux-details>summary:before{content:'▸';font-size:14px}.schedule-aux-details[open]>summary:before{content:'▾'}
.schedule-aux-details>summary b{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:#dceaf3;font-size:11px}
.schedule-aux-details>summary span{margin-left:auto;font-size:10px;color:#647e90;font-weight:700}
.schedule-aux-details .schedule-scroll{border:0!important;border-radius:0!important}

/* Las notas del cuadrante son anotaciones internas de Jefatura. */
.admin-grid .schedule-grid tbody td{position:relative!important}
.schedule-note-corner{position:absolute!important;right:0!important;top:0!important;width:0!important;height:0!important;padding:0!important;border:0!important;border-style:solid!important;border-width:0 12px 12px 0!important;border-color:transparent #aab6be transparent transparent!important;background:transparent!important;cursor:pointer!important;z-index:8!important;opacity:.18}
.admin-grid td:hover .schedule-note-corner{opacity:.55}
.schedule-note-corner.active{border-right-color:#d71920!important;opacity:1!important}
.schedule-note-corner:focus{outline:2px solid #0a65a6;outline-offset:1px}

@media(max-width:760px){
  .schedule-person-name{font-size:11px!important;color:#050505!important}
  .schedule-aux-details>summary{padding:8px 9px}
}

/* Libro Registro móvil: ficha baja, acciones a la derecha y metadatos junto a ellas. */
@media(max-width:760px){
  .register-list{gap:5px!important}
  .register-row{
    grid-template-columns:43px minmax(0,1fr) auto!important;
    grid-template-rows:auto auto!important;
    column-gap:7px!important;row-gap:2px!important;
    padding:7px 8px!important;
    min-height:0!important;
    border:1px solid #cbd9e1!important;border-radius:9px!important;
  }
  .register-row.annulled{border-left:3px solid #5d6a72!important;box-shadow:none!important}
  .register-row>strong{grid-column:1!important;grid-row:1/3!important;font-size:19px!important;line-height:1!important;align-self:start!important;padding-top:1px!important}
  .register-row>strong small{font-size:8.5px!important;margin-top:2px!important}
  .register-doc{grid-column:2!important;grid-row:1!important;min-width:0!important;align-self:center!important}
  .register-doc>b{font-size:11.5px!important;line-height:1.12!important;white-space:normal!important}
  .register-doc>small{font-size:8px!important;line-height:1.15!important;margin-top:2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .register-annulled-label{font-size:6.8px!important;padding:2px 5px!important;margin-left:4px!important}
  .register-file-state{grid-column:3!important;grid-row:1/3!important;align-self:center!important;display:flex!important;flex-direction:row!important;justify-content:flex-end!important;gap:3px!important;margin:0!important}
  .register-direct-file.register-file-action{min-width:45px!important;width:45px!important;height:27px!important;min-height:27px!important;padding:0 6px!important;border-radius:7px!important;font-size:9px!important;margin:0!important}
  .register-direct-file.register-file-download{min-width:28px!important;width:28px!important;padding:0!important}
  .register-file-badge.restricted{min-height:26px!important;height:26px!important;padding:0 6px!important;font-size:7px!important}
  .register-mobile-summary{
    display:flex!important;grid-column:2!important;grid-row:2!important;
    flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;
    gap:1px 7px!important;margin:0!important;padding:2px 0 0!important;
    border-top:1px solid #edf2f5!important;min-width:0!important;
  }
  .register-mobile-summary span,.register-mobile-summary small{
    display:inline!important;font-size:7.8px!important;line-height:1.12!important;
    color:#567184!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
    max-width:100%!important;margin:0!important;
  }
  .register-mobile-summary span b,.register-mobile-summary small b{color:#294e65!important;font-weight:850!important}
  .register-mobile-observation{max-width:72%!important}.register-mobile-annul-reason{max-width:100%!important;color:#7a3a3a!important}
}


/* Modulo 59.5 · visor de agentes limpio y cuadrante movil compacto */
.schedule-legend-mobile{display:none}
@media(max-width:760px){
  /* Cabecera: prioriza el cuadrante y elimina altura que no aporta en móvil. */
  .schedule-pagehead{margin-bottom:6px!important;align-items:center!important}
  .schedule-pagehead h1{font-size:21px!important;line-height:1.05!important}
  .schedule-pagehead p{display:none!important}

  /* Navegación del mes en una sola franja. */
  .schedule-toolbar{
    display:grid!important;grid-template-columns:34px minmax(0,1fr) 34px!important;
    align-items:center!important;gap:4px!important;padding:6px!important;margin-bottom:7px!important;
    border-radius:10px!important;
  }
  .schedule-toolbar form{
    order:0!important;width:100%!important;min-width:0!important;display:grid!important;
    grid-template-columns:64px minmax(92px,1fr) 38px!important;gap:4px!important;align-items:center!important;
  }
  .schedule-toolbar select{min-width:0!important;width:100%!important;min-height:32px!important;height:32px!important;padding:2px 4px!important;font-size:11px!important;border-radius:7px!important}
  .schedule-toolbar form .btn{min-height:32px!important;height:32px!important;padding:0 6px!important;font-size:10px!important;border-radius:7px!important}
  .schedule-nav-btn{display:grid!important;place-items:center!important;min-width:34px!important;width:34px!important;height:32px!important;padding:0!important;font-size:20px!important;line-height:1!important;border-radius:7px!important}
  .schedule-nav-text{display:none!important}

  /* Título, estado y las únicas acciones públicas útiles. */
  .schedule-titlebar{margin:5px 0 7px!important;gap:5px!important;align-items:center!important;flex-wrap:nowrap!important}
  .schedule-titlebar>div:first-child{min-width:0!important;flex:1!important}
  .schedule-titlebar h2{font-size:16px!important;line-height:1.05!important;white-space:nowrap!important}
  .schedule-titlebar>div:first-child>span{font-size:9px!important;line-height:1!important}
  .schedule-public-actions{display:flex!important;gap:3px!important;flex-wrap:nowrap!important}
  .schedule-public-actions .btn{padding:5px 6px!important;min-height:28px!important;font-size:8.5px!important;line-height:1!important;white-space:nowrap!important;border-radius:7px!important}

  /* Rejilla: más días visibles sin perder legibilidad de los turnos. */
  .schedule-scroll{border-radius:8px!important}
  .schedule-grid .sticky-name,
  .schedule-primary-grid .schedule-grid .sticky-name,
  .schedule-aux-grid .sticky-name{min-width:122px!important;width:122px!important;max-width:122px!important}
  .schedule-grid .schedule-person-name{padding:3px 5px!important;font-size:10.5px!important;line-height:1.08!important;white-space:normal!important}
  .schedule-grid th:not(.sticky-name),.schedule-grid td{min-width:28px!important;width:28px!important}
  .schedule-grid tbody td{height:27px!important;min-height:27px!important}
  .schedule-grid tbody td .shift-code{height:26px!important;min-height:26px!important;line-height:26px!important;font-size:13.5px!important}
  .schedule-weekday-head{height:18px!important;line-height:18px!important;font-size:8px!important;min-width:28px!important}
  .schedule-number-head{height:22px!important;line-height:22px!important;font-size:11px!important;min-width:28px!important}
  .schedule-number-head b{font-size:9px!important}
  .schedule-grid thead .schedule-month-label{height:40px!important;min-width:122px!important;max-width:122px!important;font-size:13px!important;line-height:1.05!important;padding:2px 4px!important}

  /* Corrección común principal + auxiliares: el día actual permanece en su fila de cabecera.
     Antes .today-col forzaba position:relative y heredaba top:26px de la cabecera sticky,
     desplazando el número 21 sobre la primera fila. */
  .schedule-grid thead .schedule-weekday-head.today-col{position:sticky!important;top:0!important}
  .schedule-grid thead .schedule-number-head.today-col{position:sticky!important;top:18px!important;transform:none!important;translate:none!important}
  .schedule-grid .today-col{box-shadow:inset 2px 0 0 #0a65a6,inset -2px 0 0 #0a65a6!important}
  .schedule-weekday-head.today-col{border-top:2px solid #0a65a6!important}
  .schedule-number-head.today-col{border-bottom:2px solid #0a65a6!important}

  .schedule-aux-details{margin-top:6px!important}
  .schedule-aux-details>summary{padding:6px 8px!important;font-size:11px!important;min-height:32px!important}
  .schedule-aux-details>summary b{min-width:20px!important;height:20px!important;font-size:10px!important}
  .schedule-aux-details>summary span{font-size:8px!important}

  /* La leyenda no ocupa permanentemente media pantalla. */
  .schedule-legend-desktop{display:none!important}
  .schedule-legend-mobile{display:block;margin-top:6px;border:1px solid #cbd8e1;border-radius:8px;background:#fff;overflow:hidden}
  .schedule-legend-mobile>summary{cursor:pointer;list-style:none;padding:6px 8px;font-size:10px;font-weight:850;color:#31536d;background:#f4f8fa}
  .schedule-legend-mobile>summary::-webkit-details-marker{display:none}
  .schedule-legend-mobile>summary:before{content:'▸ ';}.schedule-legend-mobile[open]>summary:before{content:'▾ '}
  .schedule-legend-mobile .schedule-legend{margin:0!important;padding:6px!important;gap:3px!important;font-size:8px!important}
  .schedule-legend-mobile .schedule-legend span{padding:3px 4px!important;border-radius:4px!important}
}


/* Modulo 59.6 · correccion de sangrado bajo la primera columna fija en movil */
@media(max-width:760px){
  /* Con bordes colapsados algunos navegadores Android pintan celdas desplazables
     por encima de una celda sticky. En movil usamos bordes separados sin duplicarlos. */
  .schedule-grid{
    border-collapse:separate!important;
    border-spacing:0!important;
  }
  .schedule-grid th,.schedule-grid td{
    border:0!important;
    border-right:1.55px solid #45535e!important;
    border-bottom:1.55px solid #45535e!important;
  }
  .schedule-grid tr>*:first-child{border-left:1.55px solid #45535e!important}
  .schedule-grid thead tr:first-child>*{border-top:1.55px solid #45535e!important}

  /* La columna de nombres forma su propia capa opaca por encima de todo lo que se desplaza. */
  .schedule-grid .sticky-name,
  .schedule-primary-grid .schedule-grid .sticky-name,
  .schedule-aux-grid .sticky-name{
    position:sticky!important;
    left:0!important;
    z-index:40!important;
    background:#f8fafb!important;
    background-clip:border-box!important;
    transform:translateZ(0)!important;
    -webkit-transform:translateZ(0)!important;
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
  }
  .schedule-grid thead .sticky-name{
    z-index:60!important;
    background:#fff!important;
  }
  /* Máscara mínima en la junta: evita que asome 1-2 px de una celda coloreada al deslizar. */
  .schedule-grid .sticky-name:after{
    content:'';
    position:absolute;
    top:0;
    right:-2px;
    bottom:0;
    width:2px;
    background:#f8fafb;
    pointer-events:none;
    z-index:2;
  }
  .schedule-grid thead .sticky-name:after{background:#fff}
}

/* Modulo 59.7 · alineacion exacta de la primera columna + cabecera AGENTES en visor */
.schedule-grid{
  --schedule-name-column-width:175px;
}
.schedule-grid .sticky-name,
.schedule-grid thead .sticky-name,
.schedule-grid thead .schedule-month-label{
  box-sizing:border-box!important;
  width:var(--schedule-name-column-width)!important;
  min-width:var(--schedule-name-column-width)!important;
  max-width:var(--schedule-name-column-width)!important;
}

@media(max-width:760px){
  .schedule-grid{
    --schedule-name-column-width:122px;
  }

  /* La cabecera y todas las filas usan exactamente la misma caja de 122 px.
     Se elimina la mascara desplazada de 59.6, que podía hacer que el divisor
     superior pareciera 1-2 px fuera del eje de las filas. */
  .schedule-grid .sticky-name:after{
    display:none!important;
    content:none!important;
  }

  .schedule-grid .sticky-name,
  .schedule-primary-grid .schedule-grid .sticky-name,
  .schedule-aux-grid .sticky-name{
    box-sizing:border-box!important;
    width:var(--schedule-name-column-width)!important;
    min-width:var(--schedule-name-column-width)!important;
    max-width:var(--schedule-name-column-width)!important;
    border-right:0!important;
    background:#f8fafb!important;
    /* 2 px opacos hacia la derecha evitan el sangrado durante el scroll;
       el divisor se dibuja dentro de la celda, exactamente en su borde real. */
    box-shadow:2px 0 0 #f8fafb, inset -1.55px 0 0 #45535e!important;
  }
  .schedule-grid thead .sticky-name{
    background:#fff!important;
    box-shadow:2px 0 0 #fff, inset -1.55px 0 0 #45535e!important;
  }
}

/* Modulo 59.8 · cabecera Agentes/Días, alineación móvil exacta y filas uniformes */
.schedule-grid thead .schedule-month-label{
  text-transform:none!important;
}
.schedule-grid .schedule-person-name{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:clip!important;
  vertical-align:middle!important;
  line-height:1!important;
}
.schedule-corner-label{
  position:relative!important;
  overflow:hidden!important;
  color:#1f5f86!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
}
.schedule-corner-label .schedule-corner-agents,
.schedule-corner-label .schedule-corner-days{
  position:absolute;
  z-index:2;
  display:block;
  line-height:1!important;
  white-space:nowrap;
}

@media(min-width:761px){
  /* En PC la esquina identifica los dos ejes sin confundirse con un nombre de agente. */
  .schedule-corner-label:before{
    content:'';
    position:absolute;
    inset:0;
    z-index:1;
    pointer-events:none;
    background:linear-gradient(to top right,
      transparent calc(50% - .8px),
      #8ea4b3 calc(50% - .8px),
      #8ea4b3 calc(50% + .8px),
      transparent calc(50% + .8px));
  }
  .schedule-corner-label .schedule-corner-agents{
    left:9px;
    bottom:6px;
    font-size:12px!important;
    color:#144d73!important;
  }
  .schedule-corner-label .schedule-corner-days{
    right:9px;
    top:6px;
    font-size:10px!important;
    color:#587589!important;
  }
  .schedule-grid tbody tr{height:29px!important;min-height:29px!important;max-height:29px!important}
  .schedule-grid .schedule-person-name{
    height:29px!important;
    min-height:29px!important;
    max-height:29px!important;
    padding:3px 7px!important;
  }
}

@media(max-width:760px){
  /* Las dos filas de cabecera miden exactamente 18 + 22 px. El line-height queda
     por debajo de la caja útil para que los bordes no ensanchen las filas en Android. */
  .schedule-grid thead tr.schedule-weekdays{height:18px!important;min-height:18px!important;max-height:18px!important}
  .schedule-grid thead tr.schedule-daynumbers{height:22px!important;min-height:22px!important;max-height:22px!important}
  .schedule-grid thead .schedule-weekday-head{
    box-sizing:border-box!important;
    height:18px!important;min-height:18px!important;max-height:18px!important;
    line-height:14px!important;
    padding:0!important;
    vertical-align:middle!important;
  }
  .schedule-grid thead .schedule-number-head{
    box-sizing:border-box!important;
    height:22px!important;min-height:22px!important;max-height:22px!important;
    line-height:19px!important;
    padding:0!important;
    vertical-align:middle!important;
  }
  .schedule-grid thead .schedule-month-label{
    box-sizing:border-box!important;
    height:40px!important;min-height:40px!important;max-height:40px!important;
    line-height:1!important;
    padding:0!important;
    vertical-align:middle!important;
  }
  /* En móvil se prioriza limpieza: solo "Agentes", centrado y en color de cabecera. */
  .schedule-corner-label:before{display:none!important;content:none!important}
  .schedule-corner-label .schedule-corner-days{display:none!important}
  .schedule-corner-label .schedule-corner-agents{
    position:absolute!important;
    inset:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:12px!important;
    color:#144d73!important;
  }
  /* Todas las filas conservan idéntica altura; solo se reduce la letra del nombre
     cuando sea necesario, mediante el ajuste automático del visor. */
  .schedule-grid tbody tr{height:27px!important;min-height:27px!important;max-height:27px!important}
  .schedule-grid .schedule-person-name{
    height:27px!important;
    min-height:27px!important;
    max-height:27px!important;
    padding:2px 5px!important;
  }
}

/* Modulo 59.8.1 · ajuste final de geometría del visor */
@media(min-width:761px){
  /* 59.4 tenía un selector más específico que dejaba la columna en 152 px.
     Se fuerza aquí la anchura real de 175 px para evitar saltos de línea en nombres. */
  .schedule-primary-grid .schedule-grid .sticky-name,
  .schedule-aux-grid .sticky-name{
    width:175px!important;
    min-width:175px!important;
    max-width:175px!important;
  }
}
@media(max-width:760px){
  /* En el visor móvil solo necesitamos fijación horizontal. Quitar el sticky vertical
     evita que la segunda fila de cabecera se desplace unos píxeles hacia abajo. */
  .schedule-grid thead .schedule-weekday-head,
  .schedule-grid thead .schedule-number-head,
  .schedule-grid thead .schedule-weekday-head.today-col,
  .schedule-grid thead .schedule-number-head.today-col{
    position:static!important;
    top:auto!important;
    transform:none!important;
    translate:none!important;
  }
  .schedule-grid thead .schedule-month-label{
    top:auto!important;
  }
}

/* Modulo 59.8.2 · anclar la diagonal a la celda de esquina en PC */
@media(min-width:761px){
  .schedule-primary-grid .schedule-grid thead .schedule-corner-label{
    position:relative!important;
    top:auto!important;
  }
}

/* Modulo 59.9 · marco exterior reforzado de la cabecera de fechas */
.schedule-grid thead tr.schedule-weekdays > th{
  border-top:2.6px solid #344955!important;
}
.schedule-grid thead tr.schedule-daynumbers > th{
  border-bottom:2.6px solid #344955!important;
}
/* La celda de esquina ocupa las dos filas: su borde inferior completa la línea
   gruesa que separa claramente las fechas de los turnos de los agentes. */
.schedule-grid thead .schedule-month-label{
  border-top:2.6px solid #344955!important;
  border-bottom:2.6px solid #344955!important;
  border-left:2.6px solid #344955!important;
}
/* Cierre derecho del bloque de fechas, sin engrosar divisiones interiores. */
.schedule-grid thead tr.schedule-weekdays > th:last-child,
.schedule-grid thead tr.schedule-daynumbers > th:last-child{
  border-right:2.6px solid #344955!important;
}


/* Modulo 59.10 · cabecera de fechas elegante en visor PC */
@media(min-width:761px){
  /* Sustituye el marco oscuro de 59.9 por un contorno azul institucional, fino y limpio. */
  .schedule-primary-grid .schedule-grid thead tr.schedule-weekdays > th,
  .schedule-primary-grid .schedule-grid thead tr.schedule-daynumbers > th{
    border-top-color:#c8d6e0!important;
    border-bottom-color:#c8d6e0!important;
  }
  .schedule-primary-grid .schedule-grid thead tr.schedule-weekdays > th{
    border-top:2px solid #1b75bb!important;
    background:#f8fbfd!important;
  }
  .schedule-primary-grid .schedule-grid thead tr.schedule-daynumbers > th{
    border-bottom:2px solid #1b75bb!important;
    background:#fff!important;
  }
  .schedule-primary-grid .schedule-grid thead .schedule-month-label{
    border-top:2px solid #1b75bb!important;
    border-bottom:2px solid #1b75bb!important;
    border-left:2px solid #1b75bb!important;
    background:linear-gradient(180deg,#fbfdff 0%,#f4f9fc 100%)!important;
  }
  .schedule-primary-grid .schedule-grid thead tr.schedule-weekdays > th:last-child,
  .schedule-primary-grid .schedule-grid thead tr.schedule-daynumbers > th:last-child{
    border-right:2px solid #1b75bb!important;
  }
  /* La sombra queda fuera del encabezado y da separación sin aspecto de recuadro pesado. */
  .schedule-primary-grid .schedule-grid thead{
    filter:drop-shadow(0 2px 2px rgba(20,72,108,.11));
  }
  /* Divisiones interiores discretas. */
  .schedule-primary-grid .schedule-grid thead th{
    border-right-color:#cbd8e2!important;
    color:#193d58!important;
  }
  .schedule-primary-grid .schedule-grid thead .schedule-weekday-head{
    font-weight:850!important;
    color:#38566b!important;
  }
  .schedule-primary-grid .schedule-grid thead .schedule-number-head{
    font-weight:900!important;
    color:#17384f!important;
  }
  /* Fin de semana más fino que el rojo macizo anterior. */
  .schedule-primary-grid .schedule-grid thead .schedule-weekday-head.sunday{
    background:#fde7ea!important;
    color:#c62636!important;
  }
  /* Conserva el festivo naranja y el día actual azul, que son señales operativas. */
  .schedule-primary-grid .schedule-grid thead .schedule-number-head.holiday{
    background:#f28c28!important;
    color:#111!important;
  }
  .schedule-primary-grid .schedule-grid thead .today-col{
    box-shadow:inset 2px 0 0 #0a65a6,inset -2px 0 0 #0a65a6!important;
  }
  .schedule-primary-grid .schedule-grid thead .schedule-weekday-head.today-col{
    border-top:2px solid #0a65a6!important;
    background:#eef7fd!important;
    color:#0a5688!important;
  }
  .schedule-primary-grid .schedule-grid thead .schedule-number-head.today-col{
    border-bottom:2px solid #0a65a6!important;
    background:#f8fcff!important;
  }
  /* Remates redondeados solo en el exterior del bloque. */
  .schedule-primary-grid .schedule-grid thead .schedule-month-label{
    border-top-left-radius:5px;
    border-bottom-left-radius:5px;
  }
  .schedule-primary-grid .schedule-grid thead tr.schedule-weekdays > th:last-child{
    border-top-right-radius:5px;
  }
  .schedule-primary-grid .schedule-grid thead tr.schedule-daynumbers > th:last-child{
    border-bottom-right-radius:5px;
  }
}

/* Módulo 59.11 · desplegables móviles unificados y compactos */
.mobile-select-trigger,.mobile-select-sheet{display:none}
@media(max-width:900px){
  /* El select real sigue habilitado y dentro del formulario, pero el usuario maneja
     un botón visual para evitar el menú nativo gigante de Android. */
  select[data-mobile-smart="1"]{display:none!important}
  .mobile-select-trigger{
    display:flex;position:relative;align-items:center;justify-content:space-between;gap:8px;
    width:100%;min-width:0;min-height:42px;margin:0;padding:8px 34px 8px 11px;
    border:1px solid #c3d2dc;border-radius:9px;background:#fff;color:#17324a;
    font:inherit;font-size:15px;font-weight:650;line-height:1.2;text-align:left;cursor:pointer;
    box-shadow:0 1px 2px rgba(20,55,78,.04);
  }
  .mobile-select-trigger:focus-visible{outline:2px solid #1784c7;outline-offset:2px}
  .mobile-select-trigger:disabled{background:#f1f4f6;color:#84939d;cursor:not-allowed}
  .mobile-select-trigger.is-placeholder .mobile-select-trigger-text{color:#687f90;font-weight:550}
  .mobile-select-trigger-text{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .mobile-select-trigger-chevron{position:absolute;right:10px;top:50%;translate:0 -52%;font-size:16px;line-height:1;color:#45667b;font-weight:900}

  /* Ajustes para barras compactas ya existentes. */
  .schedule-toolbar .mobile-select-trigger{height:32px!important;min-height:32px!important;padding:2px 23px 2px 6px!important;font-size:11px!important;border-radius:7px!important}
  .schedule-toolbar .mobile-select-trigger-chevron{right:6px;font-size:12px}
  .filterbar .mobile-select-trigger,.publicroad-search .mobile-select-trigger{min-height:40px}
  .hq-inbox-actions .mobile-select-trigger{min-height:44px;font-size:15px}

  /* Celdas del cuadrante: la celda conserva el código; el significado se muestra
     completo en la hoja de selección. */
  .admin-grid .cell-form .mobile-schedule-trigger{
    display:flex!important;align-items:center!important;justify-content:center!important;
    width:100%!important;height:40px!important;min-height:40px!important;padding:0 12px 0 2px!important;
    border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
    color:#092e48!important;font-size:14px!important;font-weight:900!important;text-align:center!important;
  }
  .admin-grid .cell-form .mobile-schedule-trigger .mobile-select-trigger-text{overflow:visible;text-overflow:clip}
  .admin-grid .cell-form .mobile-schedule-trigger .mobile-select-trigger-chevron{right:2px;font-size:10px;color:#24485e}

  body.mobile-select-open{overflow:hidden!important;touch-action:none}
  .mobile-select-sheet{display:block;position:fixed;inset:0;z-index:10050;opacity:0;transition:opacity .14s ease}
  .mobile-select-sheet[hidden]{display:none!important}
  .mobile-select-sheet.open{opacity:1}
  .mobile-select-backdrop{position:absolute;inset:0;background:rgba(7,25,39,.48);backdrop-filter:blur(1.5px)}
  .mobile-select-panel{
    position:absolute;left:50%;bottom:0;translate:-50% 10px;width:min(570px,calc(100% - 12px));
    max-height:min(82dvh,690px);display:flex;flex-direction:column;overflow:hidden;
    background:#f8fbfd;border:1px solid rgba(164,187,202,.9);border-bottom:0;
    border-radius:20px 20px 0 0;box-shadow:0 -18px 55px rgba(5,32,50,.22);
    transition:translate .16s ease;
  }
  .mobile-select-sheet.open .mobile-select-panel{translate:-50% 0}
  .mobile-select-handle{width:42px;height:4px;border-radius:999px;background:#b9c8d2;margin:7px auto 2px;flex:none}
  .mobile-select-head{display:flex;align-items:center;gap:10px;padding:8px 12px 9px;border-bottom:1px solid #d8e3ea;background:#fff;flex:none}
  .mobile-select-heading{min-width:0;display:flex;flex:1;flex-direction:column;gap:2px}
  .mobile-select-heading b{font-size:15px;line-height:1.15;color:#103c59;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobile-select-heading small{font-size:10px;line-height:1.2;color:#6d8291;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobile-select-close{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;padding:0;border:0;border-radius:50%;background:#eef4f7;color:#31556c;font-size:25px;line-height:1;cursor:pointer}
  .mobile-select-search-wrap{display:flex;align-items:center;gap:7px;margin:8px 9px 4px;padding:0 10px;border:1px solid #c7d7e1;border-radius:10px;background:#fff;flex:none}
  .mobile-select-search-wrap span{font-size:18px;color:#678195}
  .mobile-select-search-wrap input{width:100%;height:38px;min-height:38px;padding:0;border:0!important;outline:0!important;background:transparent!important;color:#17324a;font-size:16px!important;box-shadow:none!important}
  .mobile-select-options{overflow:auto;overscroll-behavior:contain;padding:5px 7px max(10px,env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}
  .mobile-select-options.is-list{display:grid;grid-template-columns:1fr;gap:3px}
  .mobile-select-options.is-compact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  .mobile-select-options.is-schedule{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  .mobile-select-option{
    position:relative;display:grid;grid-template-columns:minmax(0,1fr) 22px;align-items:center;gap:7px;
    width:100%;min-height:44px;padding:8px 9px;border:1px solid #d8e3ea;border-radius:10px;
    background:#fff;color:#17324a;font:inherit;font-size:14px;font-weight:680;line-height:1.22;text-align:left;cursor:pointer;
  }
  .mobile-select-option:active{background:#edf6fb}
  .mobile-select-option.selected{border-color:#62a9d2;background:#edf7fc;box-shadow:inset 3px 0 0 #1479b8}
  .mobile-select-option.disabled{opacity:.45;cursor:not-allowed}
  .mobile-select-option[hidden]{display:none!important}
  .mobile-select-option-label{min-width:0;overflow-wrap:anywhere}
  .mobile-select-check{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#fff;border:1px solid #c9d8e1;color:transparent;font-size:12px;font-weight:900}
  .mobile-select-option.selected .mobile-select-check{background:#1479b8;border-color:#1479b8;color:#fff}

  .mobile-select-option.coded-option{grid-template-columns:53px minmax(0,1fr) 22px;min-height:48px;padding:7px 8px}
  .mobile-select-doccode{display:inline-grid;place-items:center;align-self:stretch;min-height:31px;padding:0 6px;border-radius:7px;background:#e9f2f7;color:#174f70;font-size:12px;font-weight:900;letter-spacing:.01em}
  .mobile-select-option.coded-option .mobile-select-option-label{font-size:13.5px;font-weight:730;line-height:1.18}

  .mobile-select-option.schedule-option{grid-template-columns:39px minmax(0,1fr) 18px;min-height:50px;padding:6px 7px;gap:6px}
  .mobile-select-code{display:grid;place-items:center;width:36px;height:34px;border:1px solid rgba(40,64,78,.25);border-radius:8px;background:var(--code-bg,#fff);color:#0a2f47;font-size:13px;font-weight:950}
  .mobile-select-option.schedule-option .mobile-select-option-label{font-size:12.2px;font-weight:760;line-height:1.15}
  .mobile-select-option.schedule-option .mobile-select-check{width:18px;height:18px;font-size:10px}

  @media(orientation:landscape) and (max-height:650px){
    .mobile-select-panel{width:min(650px,calc(100% - 18px));max-height:92dvh;border-radius:17px 17px 0 0}
    .mobile-select-head{padding-top:5px;padding-bottom:6px}
    .mobile-select-options.is-schedule{grid-template-columns:repeat(3,minmax(0,1fr))}
    .mobile-select-option{min-height:39px;padding-top:6px;padding-bottom:6px}
    .mobile-select-option.schedule-option{min-height:43px}
    .mobile-select-search-wrap{margin-top:5px}
  }
}
@media(max-width:900px){.mobile-select-search-wrap[hidden]{display:none!important}}

/* ===== Módulo 59.15 · editor PC de Jefatura + selección múltiple por arrastre ===== */
@media (min-width:901px){
  .schedule-pc-toolbar{background:#fff;border:1px solid #c9d7e4;border-radius:12px;margin:0 0 10px;padding:10px 12px;box-shadow:0 2px 8px rgba(13,79,124,.07);position:sticky;top:8px;z-index:32}
  .schedule-pc-toolbar-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:8px}
  .schedule-pc-toolbar-top>div:first-child{display:flex;align-items:baseline;gap:12px;min-width:0}
  .schedule-pc-toolbar-top strong{color:#123d5c;font-size:15px;white-space:nowrap}
  .schedule-pc-toolbar-top #pcScheduleStatus{font-size:12px;color:#61798c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .schedule-pc-toolbar.is-busy #pcScheduleStatus{color:#0d6fb8}
  .schedule-pc-toolbar.has-error #pcScheduleStatus{color:#b42318}
  .schedule-pc-toolbar-actions{display:flex;gap:6px;flex:0 0 auto}
  .schedule-pc-toolbar-actions .btn{padding:6px 10px;font-size:12px}
  .schedule-pc-palette{display:flex;align-items:stretch;gap:5px;flex-wrap:wrap}
  .schedule-pc-palette-btn{height:36px;border:1px solid #d1dbe4;border-radius:8px;background:#f8fafc;color:#143a55;display:flex;align-items:center;gap:6px;padding:4px 8px;cursor:pointer;transition:.12s ease;font:inherit}
  .schedule-pc-palette-btn:hover{border-color:#8db4d1;background:#f1f7fb}
  .schedule-pc-palette-btn.active{border-color:#1478bd;box-shadow:0 0 0 2px rgba(20,120,189,.16);background:#eef7fd}
  .schedule-pc-palette-btn b{font-size:13px;min-width:18px;text-align:center}
  .schedule-pc-palette-btn span:last-child{font-size:11px;white-space:nowrap}
  .schedule-pc-swatch{display:block;width:9px;height:22px;border-radius:3px;border:1px solid rgba(13,51,77,.14);flex:0 0 auto}
  .schedule-pc-help{display:flex;gap:16px;color:#71879a;font-size:10px;margin-top:6px}
  .schedule-pc-help span+span:before{content:'•';margin-right:16px;color:#a4b5c2}
  .schedule-pc-enhanced .admin-grid .schedule-code-select{display:none!important}
  .schedule-pc-cell-button{width:100%;height:100%;min-height:39px;border:0;background:transparent;color:#0c324e;font:700 16px/1 Arial,sans-serif;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;user-select:none;-webkit-user-select:none}
  .schedule-pc-cell-button.range-selected{position:relative;z-index:5;outline:3px solid #0d78bd;outline-offset:-3px;background:rgba(13,120,189,.17);box-shadow:inset 0 0 0 1px rgba(255,255,255,.72)}
  .schedule-pc-cell-button.range-selected:hover{outline:3px solid #0b6fae;outline-offset:-3px;background:rgba(13,120,189,.22)}
  .schedule-pc-toolbar.has-range-selection{border-color:#7fb4d7;box-shadow:0 2px 10px rgba(13,120,189,.14)}
  .schedule-pc-toolbar.has-range-selection #pcScheduleStatus{color:#0d5f94;font-weight:600}
  .schedule-pc-cell-button:hover{outline:2px solid #1c83c5;outline-offset:-2px;background:rgba(255,255,255,.18)}
  .schedule-pc-cell-button.saving{opacity:.5;cursor:wait}
  .admin-grid tbody tr:hover>th.sticky-name{background:#eaf3f9!important;color:#0e4c77}
  .admin-grid tbody tr:hover>td{box-shadow:inset 0 1px rgba(18,76,115,.18),inset 0 -1px rgba(18,76,115,.18)}
  .schedule-pc-menu{position:fixed;width:350px;max-height:510px;overflow:hidden;background:#fff;border:1px solid #b8cad8;border-radius:12px;box-shadow:0 14px 40px rgba(13,45,70,.24);z-index:5000;padding:8px}
  .schedule-pc-menu[hidden]{display:none!important}
  .schedule-pc-menu-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:5px 6px 9px;border-bottom:1px solid #e1e9ef}
  .schedule-pc-menu-head>div{display:flex;flex-direction:column;gap:2px;min-width:0}
  .schedule-pc-menu-head b{color:#123d5c;font-size:14px}
  .schedule-pc-menu-head small{color:#6a8193;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:285px}
  .schedule-pc-menu-head button{border:0;background:transparent;font-size:22px;line-height:1;color:#607889;cursor:pointer;padding:0 2px}
  .schedule-pc-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding-top:8px;max-height:445px;overflow:auto}
  .schedule-pc-menu-option{min-height:42px;border:1px solid #d5e0e8;border-radius:8px;background:#fbfcfd;display:grid;grid-template-columns:10px 30px 1fr;align-items:center;gap:7px;text-align:left;padding:5px 7px;cursor:pointer;color:#123d5c}
  .schedule-pc-menu-option:hover{border-color:#8db6d2;background:#f0f7fb}
  .schedule-pc-menu-option.current{border-color:#167bbc;box-shadow:inset 0 0 0 1px #167bbc;background:#eef7fd}
  .schedule-pc-menu-option b{font-size:13px;text-align:center}
  .schedule-pc-menu-option span:last-child{font-size:11px;line-height:1.15}
  .schedule-pc-month-nav{display:flex;align-items:center;gap:6px;margin-left:auto}
  .schedule-pc-month-nav .btn{padding:7px 10px;font-size:12px;white-space:nowrap}
  .schedule-admin-top{gap:10px;align-items:center}
}
@media (max-width:900px){.schedule-pc-toolbar,.schedule-pc-menu,.schedule-pc-cell-button,.schedule-pc-month-nav{display:none!important}}

/* ===== Módulo 59.16 · Jefatura con el mismo aspecto del visor de agentes ===== */
@media (min-width:901px){
  .schedule-admin-public-shell .pagehead{align-items:center;margin-bottom:8px}
  .schedule-admin-public-shell .pagehead h1{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
  .schedule-admin-mode-badge{display:inline-flex;align-items:center;min-height:24px;padding:4px 9px;border-radius:999px;background:#eaf4fb;border:1px solid #b9d7e9;color:#155f8e;font-size:10px;font-weight:900;letter-spacing:.035em;text-transform:uppercase;vertical-align:middle}

  /* Barra de mes idéntica en composición a la vista publicada. */
  .schedule-admin-view-toolbar{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:10px!important;margin:0 0 10px!important;padding:11px 14px!important;border-radius:12px!important}
  .schedule-admin-view-toolbar .schedule-admin-date-form{display:flex!important;align-items:center!important;gap:8px!important;margin:0 auto!important}
  .schedule-admin-view-toolbar .schedule-admin-picker-label{font-size:0!important;display:block!important;margin:0!important}
  .schedule-admin-view-toolbar .schedule-admin-picker-label input,
  .schedule-admin-view-toolbar .schedule-admin-picker-label select{font-size:14px!important;min-height:40px!important;height:40px!important;margin:0!important;border-radius:7px!important;padding:7px 9px!important;color:#173f59!important;background:#fff!important}
  .schedule-admin-view-toolbar .schedule-admin-picker-label input[name="year"]{width:82px!important;text-align:center}
  .schedule-admin-view-toolbar .schedule-admin-picker-label select[name="month"]{min-width:126px!important}
  .schedule-admin-view-toolbar .schedule-admin-date-form>.btn{height:40px!important;min-height:40px!important;padding:7px 15px!important}
  .schedule-admin-view-toolbar .schedule-nav-btn{min-width:142px!important;text-align:center!important;font-weight:800!important;white-space:nowrap!important}

  .schedule-admin-titlebar{margin:8px 0 9px!important;align-items:center!important}
  .schedule-admin-titlebar h2{font-size:25px!important;color:#153b57!important}
  .schedule-admin-titlebar>div:first-child>span{font-size:13px!important;color:#31536d!important}
  .schedule-admin-title-actions{display:flex!important;gap:7px!important;flex-wrap:nowrap!important}
  .schedule-admin-title-actions .btn{white-space:nowrap!important}

  /* Herramientas de Jefatura: una sola banda, sin formularios invadiendo el cuadrante. */
  .schedule-admin-tools{display:flex;align-items:center;gap:16px;padding:10px 12px!important;margin:0 0 8px!important;border:1px solid #d1dee7!important;background:linear-gradient(180deg,#fff 0%,#f8fbfd 100%)!important;box-shadow:0 2px 8px rgba(13,79,124,.055)!important}
  .schedule-admin-tools-copy{min-width:220px;display:flex;flex-direction:column;gap:2px}
  .schedule-admin-tools-copy strong{font-size:13px;color:#173f5b}
  .schedule-admin-tools-copy small{font-size:9.5px;line-height:1.2;color:#73899a}
  .schedule-admin-tools-buttons{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:6px;flex:1;min-width:0}
  .schedule-admin-tool-btn{appearance:none;border:1px solid #d4e0e8;background:#fff;border-radius:9px;min-height:50px;padding:6px 8px;display:grid;grid-template-columns:30px minmax(0,1fr) auto 12px;align-items:center;gap:7px;text-align:left;color:#173e58;cursor:pointer;transition:background .12s,border-color .12s,box-shadow .12s,transform .12s;font:inherit}
  .schedule-admin-tool-btn:hover{background:#f0f7fb;border-color:#94bdd8;box-shadow:0 3px 10px rgba(14,91,142,.10);transform:translateY(-1px)}
  .schedule-admin-tool-icon{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:#e9f4fb;color:#176b9e;font-size:15px}
  .schedule-admin-tool-text{min-width:0;display:flex;flex-direction:column;gap:1px}
  .schedule-admin-tool-text b{font-size:11px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .schedule-admin-tool-text small{font-size:8px;line-height:1.15;color:#718798;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .schedule-admin-tool-btn em{font-style:normal;font-size:8px;font-weight:850;color:#537188;background:#eff4f7;border-radius:999px;padding:3px 6px;white-space:nowrap}
  .schedule-admin-tool-arrow{font-size:21px;color:#7c9aad;font-weight:300}

  /* Ficha emergente de configuración reutilizable. */
  .schedule-admin-panel-store[hidden]{display:none!important}
  .schedule-admin-modal-backdrop{position:fixed;inset:0;z-index:7000;background:rgba(8,31,47,.52);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;transition:opacity .14s ease}
  .schedule-admin-modal-backdrop[hidden]{display:none!important}
  .schedule-admin-modal-backdrop.open{opacity:1}
  .schedule-admin-modal{width:min(1020px,calc(100vw - 48px));max-height:90vh;display:flex;flex-direction:column;background:#f6f9fb;border:1px solid #d1e0e9;border-radius:16px;box-shadow:0 24px 70px rgba(0,22,38,.34);overflow:hidden;transform:translateY(5px) scale(.995);transition:transform .14s ease}
  .schedule-admin-modal-backdrop.open .schedule-admin-modal{transform:none}
  .schedule-admin-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 18px 13px;background:#fff;border-bottom:1px solid #dce7ed}
  .schedule-admin-modal-head>div{min-width:0}
  .schedule-admin-modal-kicker{display:block;font-size:8px;letter-spacing:.08em;font-weight:900;color:#2e7aa5;margin-bottom:4px}
  .schedule-admin-modal-head h2{margin:0;color:#173e59;font-size:21px;line-height:1.1}
  .schedule-admin-modal-head p{margin:4px 0 0;color:#6f8696;font-size:11px}
  .schedule-admin-modal-close{width:35px;height:35px;min-width:35px;border:0;border-radius:50%;background:#edf3f6;color:#526f82;font-size:24px;line-height:1;cursor:pointer}
  .schedule-admin-modal-close:hover{background:#dfeaf0;color:#173f59}
  .schedule-admin-modal-body{overflow:auto;padding:14px 16px 18px}
  .schedule-admin-modal-body>.card{margin:0!important;border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important}
  .schedule-admin-modal-body .schedule-person-admin>div:first-child h2,
  .schedule-admin-modal-body .schedule-config>h2,
  .schedule-admin-modal-body .schedule-holidays>div:first-child h2{display:none!important}
  .schedule-admin-modal-body .schedule-person-admin>div:first-child p,
  .schedule-admin-modal-body .schedule-holidays>div:first-child p{margin:0 0 12px!important;font-size:11px!important;color:#60798b!important}

  .schedule-admin-panel-intro{margin-bottom:12px}
  .schedule-admin-panel-intro h2{margin:0 0 3px;font-size:16px;color:#173f59}
  .schedule-admin-panel-intro p{margin:0;color:#6e8393;font-size:10px}
  .schedule-admin-state-panel .month-state{display:grid!important;grid-template-columns:minmax(180px,1fr) minmax(160px,1fr);align-items:center!important;gap:10px!important;background:#fff;border:1px solid #d9e5ec;border-radius:11px;padding:12px!important}
  .schedule-admin-state-panel .month-state>b{font-size:16px;color:#173f59}
  .schedule-admin-state-panel .month-state>span{font-size:12px;color:#536f82}
  .schedule-admin-state-panel .month-state>form{grid-column:1/-1;display:flex;gap:7px;flex-wrap:wrap;padding-top:8px;border-top:1px solid #e5edf2}

  .schedule-admin-modal-body .schedule-add-person{display:grid!important;grid-template-columns:minmax(250px,2fr) 140px 230px auto;gap:9px!important;align-items:end!important;background:#fff;border:1px solid #d9e5ec;border-radius:11px;padding:12px!important}
  .schedule-admin-modal-body .schedule-add-person input[type=text]{min-width:0!important;width:100%!important}
  .schedule-admin-modal-body .schedule-row-editor{background:#fff;border:1px solid #d9e5ec;border-radius:11px;padding:11px 12px;margin-top:10px!important}
  .schedule-admin-modal-body .schedule-row-editor summary{color:#1a4c6b;font-size:12px}
  .schedule-admin-modal-body .schedule-row-editor-list form{grid-template-columns:minmax(250px,1fr) 130px auto auto!important}

  .schedule-admin-modal-body .schedule-config form{display:grid!important;grid-template-columns:minmax(260px,1.3fr) 190px 190px minmax(250px,1fr) auto;gap:10px!important;align-items:end!important;background:#fff;border:1px solid #d9e5ec;border-radius:11px;padding:13px!important}
  .schedule-admin-modal-body .schedule-config label{min-width:0!important;font-size:11px;color:#274b63}
  .schedule-admin-modal-body .schedule-config input{min-height:40px!important;font-size:13px!important}

  .schedule-admin-modal-body .holiday-add{display:grid!important;grid-template-columns:150px 150px minmax(280px,1fr) auto;gap:9px!important;align-items:end!important;background:#fff;border:1px solid #d9e5ec;border-radius:11px;padding:12px!important}
  .schedule-admin-modal-body .holiday-list{margin-top:10px!important;display:grid!important;gap:6px!important}
  .schedule-admin-modal-body .holiday-list form{background:#fff!important;border:1px solid #d9e5ec!important;border-radius:9px!important;padding:8px 9px!important}

  /* Cuadrante de administración = visor de agentes + controles de edición discretos. */
  .schedule-admin-public-grid{margin-top:0!important;overflow:visible!important;border-color:#cad5de!important}
  .schedule-admin-public-grid .schedule-grid{width:100%!important;min-width:0!important;table-layout:fixed!important}
  .schedule-admin-public-grid .schedule-grid th:not(.sticky-name),
  .schedule-admin-public-grid .schedule-grid td{min-width:0!important;width:auto!important}
  .schedule-admin-public-grid .schedule-grid tbody tr{height:29px!important;min-height:29px!important;max-height:29px!important}
  .schedule-admin-public-grid .schedule-grid tbody td{height:29px!important;min-height:29px!important;max-height:29px!important;padding:0!important}
  .schedule-admin-public-grid .cell-form{height:28px!important;min-height:28px!important;position:relative!important}
  .schedule-admin-public-grid .schedule-pc-cell-button{height:28px!important;min-height:28px!important;font-size:13px!important;line-height:28px!important;color:#092e48!important;font-weight:850!important}
  .schedule-admin-public-grid .schedule-pc-cell-button:hover{outline:2px solid #1c83c5!important;outline-offset:-2px!important;background:rgba(255,255,255,.18)!important}
  .schedule-admin-public-grid .schedule-note-corner{border-width:0 9px 9px 0!important}
  .schedule-admin-public-grid .schedule-person-name{height:29px!important;min-height:29px!important;max-height:29px!important;padding:3px 7px!important}

  /* La edición rápida es una excepción funcional, pero no rompe el lenguaje visual del visor. */
  .schedule-admin-edit-toolbar{position:relative!important;top:auto!important;margin:0 0 8px!important;padding:8px 10px!important;border-radius:10px!important;box-shadow:0 2px 7px rgba(13,79,124,.055)!important;background:linear-gradient(180deg,#fff,#fbfdfe)!important}
  .schedule-admin-edit-toolbar .schedule-pc-toolbar-top{margin-bottom:6px!important}
  .schedule-admin-edit-toolbar .schedule-pc-toolbar-top strong{font-size:13px!important}
  .schedule-admin-edit-toolbar .schedule-pc-toolbar-top #pcScheduleStatus{font-size:10px!important}
  .schedule-admin-edit-toolbar .schedule-pc-palette{gap:4px!important}
  .schedule-admin-edit-toolbar .schedule-pc-palette-btn{height:31px!important;padding:3px 6px!important;border-radius:7px!important}
  .schedule-admin-edit-toolbar .schedule-pc-palette-btn b{font-size:11px!important}
  .schedule-admin-edit-toolbar .schedule-pc-palette-btn span:last-child{font-size:9px!important}
  .schedule-admin-edit-toolbar .schedule-pc-swatch{height:18px!important;width:7px!important}
  .schedule-admin-edit-toolbar .schedule-pc-help{font-size:8.5px!important;margin-top:5px!important;gap:12px!important}
  .schedule-admin-edit-toolbar .schedule-pc-help span+span:before{margin-right:12px!important}

  /* Los recuentos siguen siendo privados, pero quedan visualmente separados del visor. */
  .schedule-admin-public-shell .schedule-summary{margin-top:12px!important;border-top:3px solid #e5edf2!important}
}

@media (min-width:901px) and (max-width:1250px){
  .schedule-admin-tools{align-items:stretch!important;flex-direction:column!important;gap:8px!important}
  .schedule-admin-tools-copy{min-width:0!important}
  .schedule-admin-tools-buttons{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .schedule-admin-modal-body .schedule-add-person{grid-template-columns:1fr 140px 200px!important}
  .schedule-admin-modal-body .schedule-add-person>.btn{grid-column:1/-1;width:max-content}
  .schedule-admin-modal-body .schedule-config form{grid-template-columns:1fr 1fr!important}
  .schedule-admin-modal-body .schedule-config form>.btn{width:max-content}
}

/* ===== Módulo 59.17 · Jefatura: edición directa, reglas y festivos ===== */
@media (min-width:901px){
  .schedule-admin-undo{white-space:nowrap}
  .schedule-admin-undo:disabled{opacity:.45;cursor:not-allowed}
  .schedule-edit-toast{position:fixed;right:20px;bottom:20px;z-index:7600;max-width:420px;padding:10px 14px;border-radius:10px;background:#143f5d;color:#fff;font-size:12px;font-weight:750;box-shadow:0 10px 30px rgba(0,30,50,.25);opacity:0;transform:translateY(8px);transition:.16s ease;pointer-events:none}
  .schedule-edit-toast.show{opacity:1;transform:none}.schedule-edit-toast.error{background:#922f36}

  /* El cuadrante de Jefatura es espejo del visor público. */
  .schedule-admin-grid-main.schedule-admin-public-grid,.schedule-admin-aux-grid.schedule-admin-public-grid{overflow:visible!important;border:1px solid #cad5de!important;border-radius:0!important}
  .schedule-admin-grid-main .schedule-grid,.schedule-admin-aux-grid .schedule-grid{width:100%!important;min-width:0!important;table-layout:fixed!important}
  .schedule-admin-grid-main .schedule-grid .sticky-name,.schedule-admin-aux-grid .schedule-grid .sticky-name{width:175px!important;min-width:175px!important;max-width:175px!important}
  .schedule-admin-grid-main .schedule-grid th:not(.sticky-name),.schedule-admin-grid-main .schedule-grid td,.schedule-admin-aux-grid .schedule-grid th:not(.sticky-name),.schedule-admin-aux-grid .schedule-grid td{min-width:0!important;width:auto!important}
  .schedule-admin-grid-main .schedule-grid tbody tr,.schedule-admin-aux-grid .schedule-grid tbody tr{height:29px!important}
  .schedule-admin-grid-main .schedule-grid tbody td,.schedule-admin-aux-grid .schedule-grid tbody td{height:29px!important;padding:0!important}
  .schedule-admin-grid-main .cell-form,.schedule-admin-aux-grid .cell-form{height:28px!important;min-height:28px!important}
  .schedule-admin-grid-main .schedule-pc-cell-button,.schedule-admin-aux-grid .schedule-pc-cell-button{height:28px!important;min-height:28px!important;font-size:13px!important;line-height:28px!important;font-weight:850!important}
  .schedule-admin-aux-details{margin-top:8px!important}

  /* Personal: incluye posición elegible sin recargar visualmente la ficha. */
  .schedule-admin-modal-body .schedule-add-person{grid-template-columns:minmax(220px,2fr) 120px minmax(190px,1.2fr) minmax(190px,1.2fr) auto!important;gap:9px!important}
  .schedule-admin-modal-body .schedule-add-person label{min-width:0}
  .schedule-admin-modal-body .schedule-add-person select,.schedule-admin-modal-body .schedule-add-person input{width:100%;min-height:40px}
  .schedule-inline-position{display:flex!important;align-items:center!important;gap:5px!important;font-size:10px!important;color:#60798b!important}.schedule-inline-position input{width:74px!important;min-height:34px!important}
  .schedule-admin-modal-body .schedule-row-editor-list form{grid-template-columns:minmax(220px,1fr) 120px 110px auto auto!important;align-items:center}

  /* Modal más grande: toda la ficha queda visible y el desplazamiento queda dentro del cuerpo. */
  .schedule-admin-modal{width:min(1180px,calc(100vw - 28px))!important;max-height:96vh!important;border-radius:15px!important}
  .schedule-admin-modal-body{padding:15px 17px 20px!important;max-height:calc(96vh - 88px)!important;overflow:auto!important}

  /* Configuración anual separada en reglas legibles. */
  .schedule-admin-modal-body .schedule-config form.schedule-config-rules{display:flex!important;flex-direction:column!important;gap:10px!important;background:transparent!important;border:0!important;padding:0!important}
  .schedule-rule-row{display:grid;grid-template-columns:minmax(300px,1.7fr) minmax(150px,.7fr) minmax(170px,.8fr) minmax(170px,.8fr);gap:10px;align-items:end;background:#fff;border:1px solid #d7e4ec;border-radius:12px;padding:13px 14px}
  .schedule-rule-title{display:flex;gap:10px;align-items:center;align-self:center}.schedule-rule-title>div{display:flex;flex-direction:column;gap:2px}.schedule-rule-title b{font-size:14px;color:#153f5b}.schedule-rule-title small{font-size:10px;line-height:1.25;color:#6a8394}
  .schedule-rule-icon{width:36px;height:36px;border-radius:9px;background:#eaf4fa;display:grid;place-items:center;font-size:18px;flex:0 0 auto}
  .schedule-rule-row label{display:flex!important;flex-direction:column!important;gap:4px!important;font-size:10px!important;font-weight:800!important;color:#395970!important}.schedule-rule-row input[type=date],.schedule-rule-row input[type=number]{min-height:40px!important;width:100%!important;box-sizing:border-box!important;font-size:13px!important}
  .schedule-rule-row .schedule-rule-check{flex-direction:row!important;align-items:center!important;align-self:center!important;font-size:12px!important}.schedule-rule-row .schedule-rule-check input{width:18px!important;height:18px!important;min-height:0!important}
  .schedule-rule-ratio{grid-column:auto}.schedule-rule-ratio input[type=number]{width:74px!important;display:inline-block!important;margin-top:4px}
  .schedule-config-actions{display:flex;justify-content:flex-end;padding-top:2px}

  /* Festivos anual/mensual con lista de fechas y calendario nativo. */
  .schedule-holiday-mode{display:flex;gap:7px;margin:0 0 10px}.schedule-holiday-mode .btn.active{background:#157fc5;color:#fff;border-color:#157fc5}
  .holiday-bulk-form{background:#fff;border:1px solid #d7e4ec;border-radius:12px;padding:12px!important}
  .holiday-draft-head,.holiday-existing-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;color:#173f5b}.holiday-draft-head small{font-size:10px;color:#718797;font-weight:600}.holiday-existing-head span{display:grid;place-items:center;min-width:24px;height:24px;border-radius:999px;background:#e4eff6;font-size:10px;font-weight:900}
  .holiday-draft-list{display:flex;flex-direction:column;gap:7px}.holiday-draft-row{display:grid;grid-template-columns:165px 150px minmax(300px,1fr) 40px;gap:8px;align-items:end;padding:8px;border:1px solid #e2ebf0;border-radius:9px;background:#fbfdfe}.holiday-draft-row label{display:flex;flex-direction:column;gap:4px;font-size:10px;font-weight:800;color:#395970}.holiday-draft-row input,.holiday-draft-row select{width:100%;min-height:38px;box-sizing:border-box}.holiday-remove-draft{width:38px!important;height:38px!important;padding:0!important;font-size:20px!important}
  .holiday-draft-actions{display:flex;justify-content:space-between;gap:10px;margin-top:10px}.holiday-existing{margin-top:13px}.holiday-list{max-height:260px;overflow:auto;padding-right:2px}
  .holiday-list form[hidden]{display:none!important}
}
@media (max-width:1150px) and (min-width:901px){
  .schedule-rule-row{grid-template-columns:1fr 1fr!important}.schedule-rule-title{grid-column:1/-1}.schedule-admin-modal-body .schedule-add-person{grid-template-columns:1fr 1fr!important}.schedule-admin-modal-body .schedule-add-person>.btn{grid-column:1/-1;width:max-content}.holiday-draft-row{grid-template-columns:1fr 1fr 40px}.holiday-name-field{grid-column:1/3}
}
@media (min-width:901px){.schedule-rule-covadonga{grid-template-columns:minmax(420px,1fr) 190px!important}.schedule-rule-covadonga .schedule-rule-title{grid-column:auto!important}}

/* ===== Módulo 59.19 · Jornadas / Servicios especiales ===== */
.schedule-special-intro{margin:0 0 12px}.schedule-special-intro h2{margin:0 0 3px;font-size:17px;color:#173f59}.schedule-special-intro p{margin:0;color:#6f8595;font-size:11px}
.schedule-special-subpanel{margin-top:14px!important;padding:13px!important;background:#fff!important;border:1px solid #d7e4ec!important;border-radius:12px!important;box-shadow:none!important}
.schedule-subpanel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.schedule-subpanel-head>div{display:flex;align-items:center;gap:10px}.schedule-subpanel-head>div>div{display:flex;flex-direction:column;gap:2px}.schedule-subpanel-head b{font-size:14px;color:#153f5b}.schedule-subpanel-head small{font-size:10px;line-height:1.25;color:#6a8394}.schedule-subpanel-icon{width:36px;height:36px;border-radius:9px;background:#eaf4fa;display:grid;place-items:center;font-size:18px;flex:0 0 auto}
.schedule-special-days .schedule-config-rules,.schedule-special-services .schedule-config-rules{display:flex!important;flex-direction:column!important;gap:10px!important;background:transparent!important;border:0!important;padding:0!important}
.schedule-special-days .schedule-config-actions,.schedule-special-services .schedule-config-actions{display:flex;justify-content:flex-end;padding-top:2px}
.schedule-rule-covadonga-dates{grid-template-columns:minmax(330px,1.55fr) 170px 180px 180px!important}
.schedule-rule-covadonga-dates .schedule-rule-title{grid-column:auto!important}.schedule-rule-covadonga-dates .schedule-rule-check{margin-bottom:8px}
.schedule-admin-modal-body>.schedule-special-days,.schedule-admin-modal-body>.schedule-special-services{margin:0!important;border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important}
.schedule-admin-modal-body>.schedule-special-days>.schedule-special-intro h2,.schedule-admin-modal-body>.schedule-special-services>.schedule-special-intro h2{display:none}
.schedule-admin-modal-body>.schedule-special-days>.schedule-special-intro p,.schedule-admin-modal-body>.schedule-special-services>.schedule-special-intro p{margin:0 0 12px!important}

.schedule-aux-service{position:relative}
.schedule-aux-service-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:7px}.schedule-aux-service-head .schedule-subpanel-head{margin:0;min-width:0}.schedule-aux-limit{display:flex;flex-direction:column;align-items:flex-end;gap:1px;white-space:nowrap}.schedule-aux-limit>div{display:flex;align-items:baseline;gap:4px}.schedule-aux-limit b{font-size:22px;line-height:1;color:#174c6d}.schedule-aux-limit span{font-size:12px;font-weight:800;color:#536f82}.schedule-aux-limit small{font-size:10px;color:#607b8e;font-weight:700}
.schedule-aux-progress{height:8px;background:#e6eef3;border-radius:999px;overflow:hidden;margin:4px 0 5px}.schedule-aux-progress>span{display:block;height:100%;max-width:100%;background:linear-gradient(90deg,#2f86b7,#56a16f);border-radius:inherit}.schedule-aux-limit-note{margin:0 0 11px;font-size:10px;color:#667f90}
.schedule-aux-period-new,.schedule-aux-period-card{background:#fbfdfe;border:1px solid #dce8ee;border-radius:10px;overflow:hidden}.schedule-aux-period-new>summary,.schedule-aux-period-card>summary{cursor:pointer;list-style:none;padding:10px 12px;color:#194a68;font-size:12px;font-weight:900;display:flex;align-items:center;justify-content:space-between;gap:10px}.schedule-aux-period-new>summary::-webkit-details-marker,.schedule-aux-period-card>summary::-webkit-details-marker{display:none}.schedule-aux-period-new[open]>summary,.schedule-aux-period-card[open]>summary{background:#f1f7fa;border-bottom:1px solid #dce8ee}.schedule-aux-period-card>summary span{display:flex;min-width:0;flex-direction:column;gap:2px}.schedule-aux-period-card>summary small{font-size:10px;color:#6c8494;font-weight:700}.schedule-aux-period-card>summary em{font-style:normal;font-size:10px;font-weight:900;color:#2b708f;background:#e8f3f8;border-radius:999px;padding:4px 8px;white-space:nowrap}
.schedule-aux-period-form{display:grid;grid-template-columns:minmax(230px,1.4fr) 160px 160px 80px;gap:9px;padding:11px 12px;background:#fff}.schedule-aux-period-form>label{display:flex;flex-direction:column;gap:4px;min-width:0;font-size:10px;font-weight:800;color:#395970}.schedule-aux-period-form input,.schedule-aux-period-form textarea{width:100%;box-sizing:border-box}.schedule-aux-period-form input[type=text],.schedule-aux-period-form input[type=date]{min-height:38px}.schedule-aux-period-form textarea{resize:vertical;min-height:58px}.aux-period-days{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #dce7ed;background:#f6fafc;border-radius:8px;min-height:38px}.aux-period-days span{font-size:9px;font-weight:800;color:#6a8292}.aux-period-days b{font-size:18px;color:#173f59}.aux-period-people{grid-column:1/-1;border:1px solid #dce7ed;border-radius:9px;padding:9px 10px;margin:0}.aux-period-people legend{padding:0 5px;font-size:10px;font-weight:900;color:#365971}.aux-people-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.aux-people-chips label{position:relative;cursor:pointer}.aux-people-chips input{position:absolute;opacity:0;pointer-events:none}.aux-people-chips span{display:block;padding:6px 9px;border:1px solid #cfdde6;border-radius:999px;background:#fff;color:#36566c;font-size:10px;font-weight:800}.aux-people-chips input:checked+span{background:#dff1fb;border-color:#6faed0;color:#124f73;box-shadow:inset 0 0 0 1px #6faed0}.aux-other{display:flex!important;flex-direction:column;gap:4px;font-size:10px;font-weight:800;color:#395970}.aux-period-observations{grid-column:1/-1}.aux-period-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}.schedule-aux-period-list{display:flex;flex-direction:column;gap:7px;margin-top:11px}.schedule-aux-period-list-head{display:flex;align-items:center;justify-content:space-between;color:#173f5b;font-size:11px}.schedule-aux-period-list-head span{display:grid;place-items:center;min-width:24px;height:24px;border-radius:999px;background:#e4eff6;font-size:10px;font-weight:900}

@media(max-width:1050px){.schedule-rule-covadonga-dates{grid-template-columns:1fr 1fr!important}.schedule-rule-covadonga-dates .schedule-rule-title{grid-column:1/-1!important}.schedule-aux-period-form{grid-template-columns:1fr 1fr}.aux-period-name{grid-column:1/-1}.aux-period-days{min-height:38px}.aux-period-people,.aux-period-observations,.aux-period-actions{grid-column:1/-1}}
@media(max-width:700px){.schedule-aux-service-head{align-items:flex-start;flex-direction:column}.schedule-aux-limit{align-items:flex-start}.schedule-aux-period-form{grid-template-columns:1fr}.aux-period-name,.aux-period-people,.aux-period-observations,.aux-period-actions{grid-column:1}.schedule-rule-covadonga-dates{grid-template-columns:1fr!important}.schedule-rule-covadonga-dates>*{grid-column:1!important}.schedule-admin-modal-body{padding:10px!important}.schedule-special-subpanel{padding:10px!important}}

/* Módulo 59.20 · edición segura del cuadrante de Jefatura */
@media (min-width:901px){
  .schedule-safe-edit-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding-right:4px;margin-right:3px;border-right:1px solid #dbe6ed}
  .schedule-pending-badge{display:inline-flex;align-items:center;min-height:31px;padding:0 9px;border:1px solid #efc46f;border-radius:999px;background:#fff8e8;color:#7a5310;font-size:10px;font-weight:850;white-space:nowrap}
  .schedule-admin-save{min-height:34px!important;white-space:nowrap;box-shadow:0 2px 7px rgba(13,79,124,.12)}
  .schedule-admin-discard,.schedule-admin-undo{min-height:34px!important;white-space:nowrap}
  .schedule-pc-cell-button.pending-change{position:relative!important;outline:2px solid #e6a72c!important;outline-offset:-2px!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.78)!important}
  .schedule-pc-cell-button.pending-change:after{content:'';position:absolute;right:2px;bottom:2px;width:5px;height:5px;border-radius:50%;background:#a86d00;box-shadow:0 0 0 1px rgba(255,255,255,.85)}
  .schedule-pc-cell-button.pending-change.saving{outline-color:#177fc1!important;opacity:.78}
  .schedule-pc-cell-button.pending-change.saving:after{background:#177fc1}
}
@media (max-width:1150px) and (min-width:901px){
  .schedule-safe-edit-actions{width:100%;justify-content:flex-end;border-right:0;padding-right:0;margin-right:0;margin-bottom:4px}
  .schedule-admin-title-actions{flex-wrap:wrap;justify-content:flex-end}
}

/* ===== Módulo 59.23 · calendarios laborales de Servicios especiales ===== */
.schedule-special-calendar-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.schedule-special-calendar-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px solid #d6e3eb;border-radius:13px;background:#fff;box-shadow:0 2px 8px rgba(20,66,94,.04)}
.schedule-special-calendar-card-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:#eef5f8;font-size:21px}
.schedule-special-calendar-card.covadonga .schedule-special-calendar-card-icon{background:#f4eee4}
.schedule-special-calendar-card.auxiliary .schedule-special-calendar-card-icon{background:#e9f5f5}
.schedule-special-calendar-card-copy{min-width:0;display:flex;flex-direction:column;gap:4px}
.schedule-special-calendar-card-copy>b{font-size:14px;color:#173f59}
.schedule-special-calendar-card-copy>small{font-size:10px;line-height:1.25;color:#6e8595}
.schedule-special-calendar-meta{display:flex;align-items:baseline;gap:5px;margin-top:3px;color:#567184}
.schedule-special-calendar-meta>strong{font-size:22px;line-height:1;color:#174d6d}
.schedule-special-calendar-meta>span{font-size:10px;font-weight:800}
.schedule-special-calendar-progress{height:7px;background:#e7eff3;border-radius:999px;overflow:hidden;margin-top:3px}
.schedule-special-calendar-progress>span{display:block;height:100%;background:linear-gradient(90deg,#438f9b,#6bb5a5);border-radius:inherit;max-width:100%}
.schedule-special-calendar-card-actions{display:flex;flex-direction:column;gap:7px;min-width:155px}
.schedule-special-calendar-card-actions .btn{text-align:center;justify-content:center;white-space:nowrap}

.schedule-year-calendar-backdrop{position:fixed;inset:0;z-index:9100;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(5,27,43,.64);backdrop-filter:blur(3px);opacity:0;transition:opacity .14s ease}
.schedule-year-calendar-backdrop[hidden]{display:none!important}
.schedule-year-calendar-backdrop.open{opacity:1}
.schedule-year-calendar-modal{width:min(1460px,calc(100vw - 36px));height:min(94vh,920px);display:flex;flex-direction:column;overflow:hidden;background:#f5f8fa;border:1px solid #cbdce6;border-radius:17px;box-shadow:0 28px 80px rgba(0,19,34,.42);transform:translateY(6px) scale(.995);transition:transform .14s ease}
.schedule-year-calendar-backdrop.open .schedule-year-calendar-modal{transform:none}
.schedule-year-calendar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:15px 18px 12px;background:#fff;border-bottom:1px solid #d9e5ec}
.schedule-year-calendar-head>div:first-child{min-width:0}
.schedule-year-calendar-head span{display:block;font-size:8px;letter-spacing:.08em;font-weight:900;color:#2c79a4;margin-bottom:3px}
.schedule-year-calendar-head h2{margin:0;color:#153e59;font-size:22px;line-height:1.1}
.schedule-year-calendar-head p{margin:4px 0 0;color:#6b8292;font-size:10.5px}
.schedule-year-calendar-head-actions{display:flex;align-items:center;gap:7px}
.schedule-year-calendar-close{width:36px;height:36px;border:0;border-radius:50%;background:#edf3f6;color:#536f82;font-size:24px;cursor:pointer}
.schedule-year-calendar-close:hover{background:#dfeaf0;color:#173f59}
.schedule-year-calendar-toolbar{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(360px,1.4fr) auto;align-items:center;gap:14px;padding:9px 18px;background:#fbfdfe;border-bottom:1px solid #dce7ed}
.schedule-year-calendar-counter{display:flex;align-items:baseline;gap:6px;color:#60798a}
.schedule-year-calendar-counter strong{font-size:25px;line-height:1;color:#154b6d}
.schedule-year-calendar-counter span{font-size:10px;font-weight:850}
.schedule-year-calendar-legend{display:flex;align-items:center;justify-content:center;gap:17px;color:#5f7788;font-size:10px;font-weight:800}
.schedule-year-calendar-legend span{display:flex;align-items:center;gap:5px;white-space:nowrap}
.schedule-year-calendar-legend i{display:inline-block;width:15px;height:15px;border-radius:4px;border:1px solid #c8d7e0}
.schedule-year-calendar-modal.service-auxiliary .legend-service{background:#5aa7a7}
.schedule-year-calendar-modal.service-covadonga .legend-service{background:#D8C7A7}
.legend-holiday{background:#ffe3e3!important;border-color:#efb9b9!important}.legend-sunday{background:#fff1f1!important;border-color:#e9cccc!important}
.schedule-year-calendar-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px}
.schedule-year-calendar-pdf.disabled{opacity:.45;pointer-events:auto;cursor:not-allowed}
.schedule-year-calendar-status{padding:7px 18px;background:#edf6fb;border-bottom:1px solid #d7e7f0;color:#255f80;font-size:10px;font-weight:800}
.schedule-year-calendar-status.error{background:#fff0f0;color:#a12f2f;border-color:#efcccc}.schedule-year-calendar-status.ok{background:#edf8ef;color:#287144;border-color:#cce9d3}
.schedule-year-calendar-scroll{flex:1;min-height:0;overflow:auto;padding:13px 15px 18px;overscroll-behavior:contain}
.schedule-year-calendar-grid{display:grid;grid-template-columns:repeat(4,minmax(240px,1fr));gap:11px;max-width:1400px;margin:0 auto}
.schedule-year-month{background:#fff;border:1px solid #d2e0e8;border-radius:12px;overflow:hidden;box-shadow:0 1px 4px rgba(19,66,94,.035);user-select:none}
.schedule-year-month h3{margin:0;padding:8px 10px;text-align:center;background:#edf4f8;color:#173e58;font-size:13px;border-bottom:1px solid #dce7ed}
.schedule-year-weekdays,.schedule-year-days{display:grid;grid-template-columns:repeat(7,1fr)}
.schedule-year-weekdays{padding:4px 5px 0}
.schedule-year-weekdays b{display:grid;place-items:center;height:20px;color:#61798a;font-size:8px}.schedule-year-weekdays b.sun{color:#b32d2d}
.schedule-year-days{padding:0 5px 6px;gap:2px}
.schedule-year-day{position:relative;appearance:none;border:1px solid #e0e8ed;background:#fff;border-radius:6px;min-height:31px;padding:0;display:grid;place-items:center;color:#173c55;font:800 10px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;transition:background .08s,border-color .08s,transform .06s,box-shadow .08s;touch-action:manipulation}
.schedule-year-day:hover{border-color:#82aec8;box-shadow:inset 0 0 0 1px #82aec8}
.schedule-year-day:active{transform:scale(.97)}
.schedule-year-day.blank{border-color:transparent;background:transparent;pointer-events:none}
.schedule-year-day.sunday:not(.selected){background:#fff4f4;border-color:#f1dddd;color:#a73030}
.schedule-year-day.holiday:not(.selected){background:#ffe8e8;border-color:#f0c8c8;color:#9c2525}
.schedule-year-day em{position:absolute;right:3px;top:3px;width:11px;height:11px;display:grid;place-items:center;border-radius:50%;background:#d93636;color:#fff;font:900 7px/1 system-ui;font-style:normal}
.schedule-year-calendar-modal.service-auxiliary .schedule-year-day.selected{background:#5aa7a7;border-color:#3c8282;color:#062f35;box-shadow:inset 0 0 0 1px rgba(255,255,255,.44)}
.schedule-year-calendar-modal.service-covadonga .schedule-year-day.selected{background:#D8C7A7;border-color:#ad9570;color:#3a2d1e;box-shadow:inset 0 0 0 1px rgba(255,255,255,.46)}
.schedule-year-day.selected em{background:#bd2c2c;color:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.7)}
body.year-calendar-open{overflow:hidden}

@media(max-width:1180px){.schedule-special-calendar-cards{grid-template-columns:1fr}.schedule-year-calendar-grid{grid-template-columns:repeat(3,minmax(220px,1fr))}.schedule-year-calendar-toolbar{grid-template-columns:1fr auto}.schedule-year-calendar-legend{grid-column:1/-1;grid-row:2;justify-content:flex-start}}
@media(max-width:850px){.schedule-year-calendar-backdrop{padding:8px}.schedule-year-calendar-modal{width:calc(100vw - 16px);height:calc(100vh - 16px);border-radius:12px}.schedule-year-calendar-head{padding:11px 12px}.schedule-year-calendar-head-actions .btn{display:none}.schedule-year-calendar-toolbar{grid-template-columns:1fr;padding:8px 12px;gap:7px}.schedule-year-calendar-legend{grid-column:auto;grid-row:auto;justify-content:flex-start;overflow-x:auto}.schedule-year-calendar-toolbar-actions{justify-content:stretch}.schedule-year-calendar-toolbar-actions .btn{flex:1}.schedule-year-calendar-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}.schedule-special-calendar-card{grid-template-columns:42px minmax(0,1fr)}.schedule-special-calendar-card-actions{grid-column:1/-1;flex-direction:row}.schedule-special-calendar-card-actions .btn{flex:1}}
@media(max-width:560px){.schedule-year-calendar-grid{grid-template-columns:1fr}.schedule-year-calendar-scroll{padding:9px}.schedule-year-day{min-height:36px}.schedule-special-calendar-card{grid-template-columns:1fr}.schedule-special-calendar-card-icon{display:none}.schedule-special-calendar-card-actions{flex-direction:column}}

/* ===== Módulo 59.24 · Gestión del cuadrante móvil compacta y segura ===== */
@media(max-width:900px){
  body.schedule-admin-mobile-ui .content{padding:8px!important;max-width:none!important}
  body.schedule-admin-mobile-ui .pagehead{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;margin:0 0 8px!important;align-items:start!important}
  body.schedule-admin-mobile-ui .pagehead h1{font-size:25px!important;line-height:1.05!important;display:flex!important;align-items:center!important;gap:7px!important;margin:0!important;color:#173c58!important}
  body.schedule-admin-mobile-ui .pagehead p{display:none!important}
  .schedule-mobile-jefatura-badge{font-size:9px!important;line-height:1!important;padding:5px 7px;border-radius:999px;background:#e8f3fa;border:1px solid #c4ddeb;color:#17648f;text-transform:uppercase;letter-spacing:.05em}
  .schedule-mobile-quick-actions{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:5px!important;width:100%!important}
  .schedule-mobile-quick-actions .btn{display:flex!important;align-items:center!important;justify-content:center!important;min-height:34px!important;padding:5px 6px!important;font-size:10px!important;line-height:1!important;border-radius:8px!important;white-space:nowrap!important}

  .schedule-mobile-admin-top{padding:7px!important;margin:0 0 7px!important;border-radius:11px!important;display:block!important;background:#fff!important}
  .schedule-mobile-monthbar{display:grid!important;grid-template-columns:34px minmax(0,1fr) 34px!important;gap:5px!important;align-items:center!important}
  .schedule-mobile-month-arrow{width:34px!important;height:36px!important;min-height:36px!important;padding:0!important;display:grid!important;place-items:center!important;border-radius:8px!important;font-size:21px!important;line-height:1!important}
  .schedule-mobile-date-form{display:grid!important;grid-template-columns:64px minmax(98px,1fr) 43px!important;gap:5px!important;align-items:center!important;width:100%!important}
  .schedule-mobile-picker-label{display:block!important;font-size:0!important;min-width:0!important;margin:0!important}
  .schedule-mobile-picker-label input,.schedule-mobile-picker-label select{width:100%!important;min-width:0!important;height:36px!important;min-height:36px!important;padding:5px 7px!important;font-size:12px!important;border-radius:8px!important;background:#fff!important}
  .schedule-mobile-picker-label input[name="year"]{text-align:center!important}
  .schedule-mobile-date-form>.btn{height:36px!important;min-height:36px!important;padding:0 7px!important;font-size:10px!important;border-radius:8px!important}
  .schedule-mobile-date-form .mobile-select-trigger{height:36px!important;min-height:36px!important;padding:5px 27px 5px 8px!important;font-size:12px!important;border-radius:8px!important}
  .schedule-mobile-month-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;padding:6px 8px;border-radius:8px;background:#f4f8fa;color:#173e58}
  .schedule-mobile-month-summary strong{font-size:12px}
  .schedule-mobile-month-summary span{font-size:9px;font-weight:850;padding:4px 7px;border-radius:999px;background:#e8f2f8;color:#32617d;white-space:nowrap}

  .schedule-mobile-tools{margin:0 0 7px;padding:7px;border:1px solid #d5e2ea;border-radius:11px;background:#fff;box-shadow:0 1px 4px rgba(20,64,92,.04)}
  .schedule-mobile-tools-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:0 1px 6px}
  .schedule-mobile-tools-title strong{font-size:11px;color:#214963}
  .schedule-mobile-tools-title small{font-size:8px;color:#7a8f9e}
  .schedule-mobile-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  .schedule-mobile-tool-btn{appearance:none;border:1px solid #d6e1e8;background:#fbfdfe;border-radius:9px;min-height:48px;padding:6px;display:grid;grid-template-columns:25px minmax(0,1fr) auto 10px;align-items:center;gap:5px;text-align:left;color:#173e58;font:inherit}
  .schedule-mobile-tool-btn>span{width:25px;height:25px;display:grid;place-items:center;border-radius:7px;background:#eaf4fa;font-size:13px}
  .schedule-mobile-tool-btn>div{min-width:0;display:flex;flex-direction:column;gap:1px}
  .schedule-mobile-tool-btn b{font-size:10px;line-height:1.05}
  .schedule-mobile-tool-btn small{font-size:7.5px;line-height:1.12;color:#778c9b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .schedule-mobile-tool-btn em{font-style:normal;font-size:7.5px;font-weight:850;color:#557185;background:#edf3f6;border-radius:999px;padding:3px 5px;max-width:72px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .schedule-mobile-tool-btn>i{font-style:normal;color:#7893a4;font-size:17px}
  .schedule-mobile-panel-store[hidden]{display:none!important}

  .schedule-mobile-admin-modal{position:fixed;inset:0;z-index:9200;display:flex;align-items:flex-end;justify-content:center;opacity:0;transition:opacity .14s ease}
  .schedule-mobile-admin-modal[hidden]{display:none!important}
  .schedule-mobile-admin-modal.open{opacity:1}
  .schedule-mobile-admin-modal-backdrop{position:absolute;inset:0;background:rgba(5,27,43,.58);backdrop-filter:blur(2px)}
  .schedule-mobile-admin-sheet{position:relative;z-index:1;width:100%;max-height:94dvh;display:flex;flex-direction:column;background:#f5f8fa;border-radius:17px 17px 0 0;overflow:hidden;box-shadow:0 -14px 44px rgba(0,24,40,.28);translate:0 8px;transition:translate .14s ease}
  .schedule-mobile-admin-modal.open .schedule-mobile-admin-sheet{translate:0 0}
  .schedule-mobile-sheet-handle{width:42px;height:4px;border-radius:999px;background:#c1d0da;margin:7px auto 4px;flex:0 0 auto}
  .schedule-mobile-admin-sheet>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:6px 12px 9px;background:#fff;border-bottom:1px solid #d9e5ec}
  .schedule-mobile-admin-sheet>header>div{min-width:0}
  .schedule-mobile-admin-sheet>header small{display:block;font-size:7px;font-weight:900;letter-spacing:.08em;color:#2d78a4;margin-bottom:2px}
  .schedule-mobile-admin-sheet>header h2{margin:0;font-size:18px;line-height:1.05;color:#173e59}
  .schedule-mobile-admin-sheet>header p{margin:3px 0 0;font-size:9px;line-height:1.2;color:#718696}
  .schedule-mobile-admin-sheet>header button{width:33px;height:33px;border:0;border-radius:50%;background:#edf3f6;color:#557184;font-size:22px;line-height:1;flex:0 0 auto}
  .schedule-mobile-admin-body{overflow:auto;padding:9px 9px calc(14px + env(safe-area-inset-bottom));overscroll-behavior:contain}
  .schedule-mobile-admin-body>.card,.schedule-mobile-admin-body>.schedule-mobile-config-panel{margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
  body.schedule-mobile-config-open{overflow:hidden!important}

  .schedule-mobile-state-panel .schedule-mobile-panel-intro{margin-bottom:8px;padding:8px 9px;border-radius:9px;background:#eef5f9;display:flex;flex-direction:column;gap:2px}
  .schedule-mobile-state-panel .schedule-mobile-panel-intro b{font-size:12px}.schedule-mobile-state-panel .schedule-mobile-panel-intro small{font-size:9px;color:#708696}
  .schedule-mobile-state-panel .month-state{display:block!important;padding:9px!important;border:1px solid #d7e3eb;border-radius:10px;background:#fff}
  .schedule-mobile-state-panel .month-state>b{display:block;font-size:16px;margin-bottom:2px}.schedule-mobile-state-panel .month-state>span{font-size:11px;color:#60798b}
  .schedule-mobile-state-panel .month-state>form{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:5px!important;margin-top:9px}
  .schedule-mobile-state-panel .month-state .btn{min-height:38px!important;padding:6px 4px!important;font-size:10px!important}

  .schedule-mobile-admin-body .schedule-person-admin>div:first-child{margin:0 0 8px!important;padding:8px 9px;border-radius:9px;background:#eef5f9}
  .schedule-mobile-admin-body .schedule-person-admin>div:first-child h2{margin:0 0 2px!important;font-size:13px!important}.schedule-mobile-admin-body .schedule-person-admin>div:first-child p{margin:0!important;font-size:9px!important;line-height:1.2!important;color:#718696!important}
  .schedule-mobile-admin-body .schedule-add-person{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;align-items:end!important;padding:9px!important;border:1px solid #d7e3eb;border-radius:10px;background:#fff}
  .schedule-mobile-admin-body .schedule-add-person label{min-width:0!important;display:flex!important;flex-direction:column!important;gap:3px!important;font-size:10px!important;font-weight:800!important;color:#31536b!important}
  .schedule-mobile-admin-body .schedule-add-person label:first-of-type{grid-column:1/-1}
  .schedule-mobile-admin-body .schedule-add-person label:nth-of-type(4){grid-column:1/-1}
  .schedule-mobile-admin-body .schedule-add-person input,.schedule-mobile-admin-body .schedule-add-person select{width:100%!important;min-width:0!important;min-height:39px!important;font-size:12px!important;border-radius:8px!important}
  .schedule-mobile-admin-body .schedule-add-person .mobile-select-trigger{min-height:39px!important;font-size:12px!important}
  .schedule-mobile-admin-body .schedule-add-person>.btn{grid-column:1/-1;width:100%!important;min-height:40px!important;font-size:12px!important}
  .schedule-mobile-admin-body .schedule-row-editor{margin-top:8px!important;padding:9px!important;border:1px solid #d7e3eb;border-radius:10px;background:#fff}
  .schedule-mobile-admin-body .schedule-row-editor summary{font-size:11px!important;color:#214b67}
  .schedule-mobile-admin-body .schedule-row-editor-list{gap:8px!important}
  .schedule-mobile-admin-body .schedule-row-editor-list form{display:grid!important;grid-template-columns:1fr 90px!important;gap:5px!important;padding:7px!important;border:1px solid #e2eaf0;border-radius:8px;background:#fbfdfe}
  .schedule-mobile-admin-body .schedule-row-editor-list input,.schedule-mobile-admin-body .schedule-row-editor-list select,.schedule-mobile-admin-body .schedule-row-editor-list .mobile-select-trigger{min-height:36px!important;font-size:11px!important}
  .schedule-mobile-admin-body .schedule-row-editor-list .schedule-inline-position{display:flex!important;align-items:center!important;gap:4px!important;font-size:9px!important;color:#60798b!important}.schedule-mobile-admin-body .schedule-row-editor-list .schedule-inline-position input{width:62px!important;min-height:34px!important}
  .schedule-mobile-admin-body .schedule-row-editor-list .btn{min-height:34px!important;padding:5px!important;font-size:10px!important}

  .schedule-mobile-admin-body .schedule-special-intro{margin:0 0 8px!important;padding:8px 9px;border-radius:9px;background:#eef5f9}
  .schedule-mobile-admin-body .schedule-special-intro h2{margin:0 0 2px!important;font-size:13px!important}.schedule-mobile-admin-body .schedule-special-intro p{margin:0!important;font-size:9px!important;line-height:1.2!important;color:#718696!important}
  .schedule-mobile-admin-body .schedule-special-days-form{display:flex!important;flex-direction:column!important;gap:8px!important;margin:0!important}
  .schedule-mobile-admin-body .schedule-rule-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;align-items:end!important;padding:9px!important;border:1px solid #d7e3eb;border-radius:10px;background:#fff}
  .schedule-mobile-admin-body .schedule-rule-title{grid-column:1/-1;display:flex!important;align-items:center!important;gap:8px!important;margin:0!important}
  .schedule-mobile-admin-body .schedule-rule-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;background:#eaf4fa;font-size:16px;flex:0 0 auto}
  .schedule-mobile-admin-body .schedule-rule-title>div{display:flex;flex-direction:column;gap:1px;min-width:0}.schedule-mobile-admin-body .schedule-rule-title b{font-size:12px!important;color:#173f5b}.schedule-mobile-admin-body .schedule-rule-title small{font-size:8.5px!important;line-height:1.18!important;color:#718696!important}
  .schedule-mobile-admin-body .schedule-rule-row>label{display:flex!important;flex-direction:column!important;gap:3px!important;min-width:0!important;font-size:9px!important;font-weight:800!important;color:#375970!important}
  .schedule-mobile-admin-body .schedule-rule-row input{width:100%!important;min-width:0!important;min-height:38px!important;font-size:11px!important}
  .schedule-mobile-admin-body .schedule-rule-ratio{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr 68px auto!important;align-items:center!important;gap:6px!important}
  .schedule-mobile-admin-body .schedule-rule-ratio input{width:68px!important;min-height:36px!important}
  .schedule-mobile-admin-body .schedule-config-actions{display:block!important}.schedule-mobile-admin-body .schedule-config-actions .btn{width:100%!important;min-height:40px!important;font-size:11px!important}

  .schedule-mobile-admin-body .schedule-holidays{margin-top:9px!important;padding:9px!important;border:1px solid #d7e3eb;border-radius:10px;background:#fff}
  .schedule-mobile-admin-body .schedule-subpanel-head>div{display:flex!important;align-items:center!important;gap:8px!important}.schedule-mobile-admin-body .schedule-subpanel-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:8px;background:#edf4f8;flex:0 0 auto}.schedule-mobile-admin-body .schedule-subpanel-head b{font-size:12px}.schedule-mobile-admin-body .schedule-subpanel-head small{display:block;font-size:8.5px;line-height:1.2;color:#718696}
  .schedule-mobile-admin-body .schedule-holiday-mode{display:grid!important;grid-template-columns:1fr 1fr!important;gap:5px!important;margin:8px 0!important}.schedule-mobile-admin-body .schedule-holiday-mode .btn{min-height:35px!important;padding:5px!important;font-size:10px!important}
  .schedule-mobile-admin-body .holiday-bulk-form{padding:8px!important;border:1px solid #e0e9ef!important;border-radius:9px!important;background:#fbfdfe!important}
  .schedule-mobile-admin-body .holiday-draft-head{display:flex!important;justify-content:space-between!important;align-items:baseline!important;gap:7px!important;margin-bottom:6px!important}.schedule-mobile-admin-body .holiday-draft-head b{font-size:11px}.schedule-mobile-admin-body .holiday-draft-head small{font-size:8px!important;color:#748997!important}
  .schedule-mobile-admin-body .holiday-draft-list{display:flex!important;flex-direction:column!important;gap:6px!important}
  .schedule-mobile-admin-body .holiday-draft-row{display:grid!important;grid-template-columns:1fr 1fr 36px!important;gap:5px!important;padding:7px!important;border:1px solid #e2eaf0!important;border-radius:8px!important;background:#fff!important}
  .schedule-mobile-admin-body .holiday-draft-row label{display:flex!important;flex-direction:column!important;gap:3px!important;font-size:9px!important;font-weight:800!important;color:#385970!important;min-width:0!important}.schedule-mobile-admin-body .holiday-draft-row .holiday-name-field{grid-column:1/3!important}.schedule-mobile-admin-body .holiday-draft-row input,.schedule-mobile-admin-body .holiday-draft-row select,.schedule-mobile-admin-body .holiday-draft-row .mobile-select-trigger{width:100%!important;min-height:36px!important;font-size:11px!important}.schedule-mobile-admin-body .holiday-remove-draft{grid-column:3;grid-row:1/3;width:36px!important;height:36px!important;align-self:end!important;padding:0!important;font-size:18px!important}
  .schedule-mobile-admin-body .holiday-draft-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:5px!important;margin-top:7px!important}.schedule-mobile-admin-body .holiday-draft-actions .btn{min-height:36px!important;padding:5px!important;font-size:10px!important}
  .schedule-mobile-admin-body .holiday-existing{margin-top:8px!important}.schedule-mobile-admin-body .holiday-existing-head{display:flex!important;justify-content:space-between!important;align-items:center!important;font-size:11px!important;margin-bottom:5px!important}.schedule-mobile-admin-body .holiday-existing-head span{display:grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:#e4eff6;font-size:9px;font-weight:900}
  .schedule-mobile-admin-body .holiday-list{max-height:230px!important;overflow:auto!important;display:flex!important;flex-direction:column!important;gap:5px!important}.schedule-mobile-admin-body .holiday-list form{display:grid!important;grid-template-columns:1fr auto!important;gap:5px!important;align-items:center!important;padding:6px 7px!important;border:1px solid #e1eaf0!important;border-radius:8px!important;background:#fff!important}.schedule-mobile-admin-body .holiday-list form span{font-size:9.5px!important;line-height:1.2!important}.schedule-mobile-admin-body .holiday-list .btn{min-height:32px!important;padding:4px 7px!important;font-size:9px!important}

  .schedule-mobile-admin-body .schedule-special-calendar-cards{grid-template-columns:1fr!important;gap:7px!important}
  .schedule-mobile-admin-body .schedule-special-calendar-card{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:6px!important;padding:9px!important;border-radius:10px!important}
  .schedule-mobile-admin-body .schedule-special-calendar-card-icon{display:none!important}
  .schedule-mobile-admin-body .schedule-special-calendar-card-copy{gap:2px!important}.schedule-mobile-admin-body .schedule-special-calendar-card-copy>b{font-size:12px!important}.schedule-mobile-admin-body .schedule-special-calendar-card-copy>small{font-size:8.5px!important;line-height:1.2!important}.schedule-mobile-admin-body .schedule-special-calendar-meta strong{font-size:18px!important}.schedule-mobile-admin-body .schedule-special-calendar-meta span{font-size:8.5px!important}
  .schedule-mobile-admin-body .schedule-special-calendar-card-actions{display:grid!important;grid-template-columns:1fr 74px!important;gap:5px!important;min-width:0!important}.schedule-mobile-admin-body .schedule-special-calendar-card-actions .btn{min-height:36px!important;padding:5px!important;font-size:10px!important}

  /* Rejilla móvil: espejo del visor de agentes, sin flechas ni controles de formulario visibles. */
  .schedule-mobile-cell-editor .admin-grid .schedule-code-select,.schedule-mobile-cell-editor .admin-grid .mobile-schedule-trigger{display:none!important}
  .schedule-mobile-public-grid{border-radius:8px!important;overflow:auto!important}
  .schedule-mobile-public-grid .schedule-grid{--schedule-name-column-width:124px!important;border-spacing:0!important;min-width:max-content!important;width:auto!important;table-layout:auto!important}
  .schedule-mobile-public-grid .schedule-grid .sticky-name{width:124px!important;min-width:124px!important;max-width:124px!important}
  .schedule-mobile-public-grid .schedule-grid .schedule-person-name{height:31px!important;min-height:31px!important;max-height:31px!important;padding:3px 5px!important;font-size:10.5px!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .schedule-mobile-public-grid .schedule-grid th:not(.sticky-name),.schedule-mobile-public-grid .schedule-grid td{width:30px!important;min-width:30px!important;max-width:30px!important}
  .schedule-mobile-public-grid .schedule-grid tbody tr{height:31px!important;min-height:31px!important;max-height:31px!important}
  .schedule-mobile-public-grid .schedule-grid tbody td{height:31px!important;min-height:31px!important;max-height:31px!important;padding:0!important}
  .schedule-mobile-public-grid .cell-form{height:30px!important;min-height:30px!important;position:relative!important}
  .schedule-mobile-cell-button{appearance:none;width:100%;height:30px;min-height:30px;border:0;background:transparent;color:#092e48;font:850 14px/30px Arial,sans-serif;padding:0;display:block;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .schedule-mobile-cell-button:active{background:rgba(9,91,145,.12)}
  .schedule-mobile-cell-button.pending-change{outline:2px solid #e5a52d;outline-offset:-2px;position:relative;z-index:2}
  .schedule-mobile-cell-button.pending-change:after{content:'';position:absolute;right:2px;bottom:2px;width:4px;height:4px;border-radius:50%;background:#8f5c00}
  .schedule-mobile-public-grid .schedule-note-corner{z-index:4!important;border-width:0 8px 8px 0!important}
  .schedule-mobile-public-grid .schedule-weekday-head{min-width:30px!important;width:30px!important;max-width:30px!important;font-size:8px!important}
  .schedule-mobile-public-grid .schedule-number-head{min-width:30px!important;width:30px!important;max-width:30px!important;font-size:11px!important}
  .schedule-mobile-public-grid .schedule-grid thead .schedule-month-label{width:124px!important;min-width:124px!important;max-width:124px!important;height:40px!important}
  .schedule-mobile-public-grid .schedule-corner-label .schedule-corner-agents{font-size:12px!important}
  .schedule-admin-aux-details{margin-top:6px!important}.schedule-admin-aux-details>summary{min-height:34px!important;padding:7px 9px!important;font-size:11px!important}

  .schedule-mobile-savebar{position:fixed;left:7px;right:7px;bottom:calc(7px + env(safe-area-inset-bottom));z-index:10020;display:grid;grid-template-columns:minmax(0,1fr) 38px auto auto;gap:5px;align-items:center;padding:6px;border:1px solid #c8d9e4;border-radius:12px;background:rgba(255,255,255,.97);box-shadow:0 8px 30px rgba(0,28,48,.26);backdrop-filter:blur(8px)}
  .schedule-mobile-savebar[hidden]{display:none!important}.schedule-mobile-savebar-count{min-width:0;display:flex;flex-direction:column;padding-left:3px}.schedule-mobile-savebar-count b{font-size:14px;line-height:1;color:#8a5b0a}.schedule-mobile-savebar-count span{font-size:7.5px;color:#6b8292;white-space:nowrap}.schedule-mobile-savebar .btn{min-height:36px!important;padding:5px 8px!important;font-size:9.5px!important;border-radius:8px!important}.schedule-mobile-undo{font-size:18px!important;padding:0!important}.schedule-mobile-savebar.saving{opacity:.72;pointer-events:none}

  .schedule-mobile-shift-sheet{position:fixed;inset:0;z-index:10100;display:flex;align-items:flex-end;justify-content:center;opacity:0;transition:opacity .14s ease}.schedule-mobile-shift-sheet[hidden]{display:none!important}.schedule-mobile-shift-sheet.open{opacity:1}.schedule-mobile-shift-backdrop{position:absolute;inset:0;background:rgba(5,27,43,.56)}
  .schedule-mobile-shift-panel{position:relative;z-index:1;width:100%;max-height:82dvh;background:#f7fafc;border-radius:17px 17px 0 0;box-shadow:0 -12px 38px rgba(0,26,45,.3);overflow:hidden;translate:0 8px;transition:translate .14s ease}.schedule-mobile-shift-sheet.open .schedule-mobile-shift-panel{translate:0 0}
  .schedule-mobile-shift-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:6px 11px 9px;background:#fff;border-bottom:1px solid #dbe6ed}.schedule-mobile-shift-panel>header>div{display:flex;flex-direction:column;gap:2px;min-width:0}.schedule-mobile-shift-panel>header b{font-size:15px;color:#173e59}.schedule-mobile-shift-panel>header small{font-size:9px;color:#6c8394;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-mobile-shift-panel>header button{width:31px;height:31px;border:0;border-radius:50%;background:#edf3f6;color:#557184;font-size:21px}
  .schedule-mobile-shift-options{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:8px 8px calc(11px + env(safe-area-inset-bottom));max-height:68dvh;overflow:auto}
  .schedule-mobile-shift-option{appearance:none;min-height:48px;border:1px solid #d6e1e8;border-radius:9px;background:#fff;display:grid;grid-template-columns:8px 28px minmax(0,1fr) 17px;align-items:center;gap:6px;padding:5px 6px;text-align:left;color:#173d58;font:inherit}.schedule-mobile-shift-option>i{width:8px;height:30px;border-radius:3px;border:1px solid rgba(0,0,0,.08)}.schedule-mobile-shift-option strong{font-size:12px;text-align:center}.schedule-mobile-shift-option span{font-size:9.5px;line-height:1.12}.schedule-mobile-shift-option em{font-style:normal;color:#1679b8;font-weight:900;opacity:0}.schedule-mobile-shift-option.current{border-color:#1b7fbd;box-shadow:inset 0 0 0 1px #1b7fbd;background:#f1f8fc}.schedule-mobile-shift-option.current em{opacity:1}
  body.schedule-mobile-shift-open{overflow:hidden!important}

  .schedule-mobile-summary-details{margin:7px 0 0;border:1px solid #d4e0e8;border-radius:9px;background:#fff;overflow:hidden}.schedule-mobile-summary-details>summary{padding:7px 9px;font-size:10px;font-weight:850;color:#31536c;background:#f3f7fa}.schedule-mobile-summary-details>h2{display:none!important}.schedule-mobile-summary-details>p{display:none!important}.schedule-mobile-summary-details>.schedule-scroll{border:0!important;border-radius:0!important}
}

@media(max-width:420px){
  .schedule-mobile-date-form{grid-template-columns:58px minmax(86px,1fr) 40px!important}
  .schedule-mobile-tool-btn{grid-template-columns:23px minmax(0,1fr) 9px!important}.schedule-mobile-tool-btn>em{display:none!important}
  .schedule-mobile-tool-btn>span{width:23px;height:23px;font-size:12px}.schedule-mobile-tool-btn b{font-size:9.5px!important}.schedule-mobile-tool-btn small{font-size:7px!important}
  .schedule-mobile-admin-body .schedule-rule-ratio{grid-template-columns:1fr 64px!important}.schedule-mobile-admin-body .schedule-rule-ratio:after{content:''}.schedule-mobile-admin-body .schedule-rule-ratio input{width:64px!important}
  .schedule-mobile-shift-options{grid-template-columns:1fr 1fr!important}
}
@media(max-width:850px){
  .schedule-year-calendar-mobile .schedule-year-calendar-head-actions{display:flex!important;gap:4px!important;align-items:center!important}
  .schedule-year-calendar-mobile .schedule-year-calendar-head-actions .btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:31px!important;padding:4px 7px!important;font-size:9px!important}
  .schedule-year-calendar-mobile .schedule-year-calendar-head h2{font-size:16px!important}
  .schedule-year-calendar-mobile .schedule-year-calendar-head p{font-size:8.5px!important;line-height:1.15!important}
  .schedule-year-calendar-mobile .schedule-year-calendar-toolbar{position:sticky!important;top:0!important;z-index:4!important;background:#fff!important}
  .schedule-year-calendar-mobile .schedule-year-calendar-counter strong{font-size:20px!important}
  .schedule-year-calendar-mobile .schedule-year-calendar-counter span{font-size:8.5px!important}
  .schedule-year-calendar-mobile .schedule-year-calendar-legend{gap:9px!important;font-size:8px!important}
  .schedule-year-calendar-mobile .schedule-year-calendar-toolbar-actions .btn{min-height:35px!important;font-size:10px!important}
}

/* ===== Módulo 59.25 · calendarios anuales compactos y selección por arrastre ===== */
.schedule-year-calendar-backdrop .schedule-year-calendar-modal{
  width:min(1420px,calc(100vw - 28px));
  height:min(92vh,850px);
}
.schedule-year-calendar-backdrop .schedule-year-calendar-head{padding:10px 14px 8px}
.schedule-year-calendar-backdrop .schedule-year-calendar-head h2{font-size:19px}
.schedule-year-calendar-backdrop .schedule-year-calendar-head p{font-size:9px;margin-top:2px}
.schedule-year-calendar-backdrop .schedule-year-calendar-toolbar{padding:6px 14px;gap:9px}
.schedule-year-calendar-backdrop .schedule-year-calendar-counter strong{font-size:21px}
.schedule-year-calendar-backdrop .schedule-year-calendar-scroll{padding:8px 10px 10px}
.schedule-year-calendar-backdrop .schedule-year-calendar-grid{grid-template-columns:repeat(4,minmax(215px,1fr));gap:7px;max-width:1360px}
.schedule-year-calendar-backdrop .schedule-year-month{border-radius:9px;border-color:#c5d5df}
.schedule-year-calendar-backdrop .schedule-year-month h3{padding:5px 7px;font-size:11px}
.schedule-year-calendar-backdrop .schedule-year-weekdays{padding:2px 4px 0}
.schedule-year-calendar-backdrop .schedule-year-weekdays b{height:16px;font-size:7px}
.schedule-year-calendar-backdrop .schedule-year-days{padding:0 4px 4px;gap:1px}
.schedule-year-calendar-backdrop .schedule-year-day{
  min-height:25px;
  border-radius:4px;
  border-color:#d3dfe6;
  font-size:9px;
  touch-action:none;
  user-select:none;
  -webkit-user-select:none;
}
.schedule-year-calendar-backdrop .schedule-year-day:hover{border-color:#5e96b5;box-shadow:inset 0 0 0 1px #5e96b5}
/* Selección inequívoca, incluso si el día es domingo o festivo. */
.schedule-year-calendar-backdrop.service-auxiliary .schedule-year-day.selected{
  background:#2f8f8f!important;
  border:2px solid #176d6d!important;
  color:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.34),0 0 0 1px rgba(23,109,109,.16)!important;
  font-weight:950!important;
}
.schedule-year-calendar-backdrop.service-covadonga .schedule-year-day.selected{
  background:#c39a5b!important;
  border:2px solid #8f6c37!important;
  color:#2f2416!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.42),0 0 0 1px rgba(143,108,55,.15)!important;
  font-weight:950!important;
}
.schedule-year-calendar-backdrop .schedule-year-day.selected em{background:#b32020!important;color:#fff!important}
.schedule-year-calendar-backdrop .legend-service{border-width:2px!important}
.schedule-year-calendar-backdrop.service-auxiliary .legend-service{background:#2f8f8f!important;border-color:#176d6d!important}
.schedule-year-calendar-backdrop.service-covadonga .legend-service{background:#c39a5b!important;border-color:#8f6c37!important}

@media(max-width:1180px){
  .schedule-year-calendar-backdrop .schedule-year-calendar-grid{grid-template-columns:repeat(3,minmax(205px,1fr))}
}
@media(max-width:850px){
  .schedule-year-calendar-backdrop .schedule-year-calendar-modal{height:calc(100dvh - 10px);width:calc(100vw - 10px)}
  .schedule-year-calendar-backdrop .schedule-year-calendar-grid{grid-template-columns:repeat(2,minmax(150px,1fr));gap:5px}
  .schedule-year-calendar-backdrop .schedule-year-day{min-height:30px}
  .schedule-year-calendar-backdrop .schedule-year-calendar-scroll{padding:6px}
}
@media(max-width:430px){
  .schedule-year-calendar-backdrop .schedule-year-calendar-grid{grid-template-columns:1fr 1fr;gap:4px}
  .schedule-year-calendar-backdrop .schedule-year-month h3{padding:4px;font-size:10px}
  .schedule-year-calendar-backdrop .schedule-year-day{min-height:28px;font-size:8.5px}
  .schedule-year-calendar-backdrop .schedule-year-day em{right:1px;top:1px;width:9px;height:9px;font-size:6px}
}

/* ===== Módulo 59.26 · importación histórica inteligente + jornadas especiales ordenadas ===== */
.schedule-history-head{align-items:flex-end}
.schedule-history-import{border:1px solid #cbdce7;background:linear-gradient(135deg,#fff 0%,#f5fafe 100%);padding:18px!important;margin-bottom:15px}
.history-import-copy{display:flex;gap:13px;align-items:flex-start}.history-import-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#e7f3fb;font-size:25px;flex:none}.history-import-copy h2{margin:0 0 3px;color:#153d59}.history-import-copy p{margin:0;color:#577286;font-size:13px}
.history-import-detects{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}.history-import-detects span{padding:6px 9px;border:1px solid #d2e2ec;background:#fff;border-radius:999px;color:#31556e;font-size:11px;font-weight:800}
.history-import-form{display:grid;grid-template-columns:minmax(320px,1fr) auto;gap:12px;align-items:end}.history-file-picker{display:grid;gap:5px;padding:11px 13px;border:1px dashed #9cb8ca;border-radius:11px;background:#fff;color:#274c65}.history-file-picker input{min-height:38px}.history-file-picker small{color:#708796;font-size:10px}.history-import-form>.btn{min-height:46px;padding-inline:20px}
.history-year-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.history-year-title h2{margin:0}.history-year-title p{margin:2px 0 0;color:#658094}.history-year-badge{padding:5px 8px;border-radius:999px;background:#eaf3f8;color:#315a74;font-size:10px;font-weight:900}.history-year .actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.history-year .actions form{display:inline-flex}
.history-archive-list{margin-top:14px}.history-archive-list summary{cursor:pointer;font-weight:900;color:#1a4664}.history-archive-items{display:grid;gap:7px;margin-top:10px}.history-archive-items>div{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:3px 12px;align-items:center;padding:8px 10px;border:1px solid #dbe6ed;border-radius:9px;background:#fff}.history-archive-items small{grid-column:1;color:#728794}.history-archive-items .btn{grid-column:2;grid-row:1/3}

.schedule-import-review-hero{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:12px}.import-kpi{padding:13px 14px;border:1px solid #d6e3eb;border-radius:12px;background:#fff}.import-kpi b{display:block;font-size:23px;line-height:1;color:#123e5c}.import-kpi span{display:block;margin-top:5px;color:#688092;font-size:11px;font-weight:700}
.schedule-import-warning{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px 13px;margin-bottom:12px;border:1px solid #f0c06f;border-radius:10px;background:#fff7e6;color:#70490c}.schedule-import-warning span{font-size:11px}
.schedule-import-review-form{display:grid;gap:11px}.import-review-section{padding:14px!important;margin:0!important}.import-review-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}.import-review-title>div{display:flex;gap:10px;align-items:flex-start}.import-review-title h2{margin:0 0 2px;font-size:18px;color:#173f5b}.import-review-title p{margin:0;color:#6c8392;font-size:11px}.import-review-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#e9f3f8;font-size:20px;flex:none}.confidence,.import-count{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border-radius:999px;font-size:10px;font-weight:900;white-space:nowrap}.confidence-alta{background:#e6f6ea;color:#176a2d}.confidence-media{background:#fff4d7;color:#805d00}.confidence-baja{background:#fce8e8;color:#953535}.import-count{background:#e6f1f7;color:#25536f}
.import-review-toggle,.import-replace{display:flex;gap:9px;align-items:flex-start;padding:9px 10px;border:1px solid #dce7ed;border-radius:9px;background:#fbfdfe;cursor:pointer}.import-review-toggle input,.import-replace input{margin-top:3px}.import-review-toggle span,.import-replace span{display:grid;gap:2px}.import-review-toggle small,.import-replace small{color:#708797;font-size:10px}.import-replace{margin-top:7px;border-color:#f1c578;background:#fff9ed}
.jv-review-fields{display:grid;grid-template-columns:180px 180px minmax(260px,1fr);gap:8px;margin-top:10px}.jv-review-fields label{display:grid;gap:4px;font-size:10px;font-weight:900;color:#395a70}.jv-review-fields input{width:100%;min-height:40px;box-sizing:border-box}.jv-review-fields label:last-child{display:flex;align-items:center;gap:8px;padding-top:14px}.jv-review-fields label:last-child input{width:70px;flex:none}.import-evidence{margin-top:9px;padding:7px 9px;border-radius:8px;background:#f5f9fb;color:#547083;font-size:10px}.import-evidence summary{cursor:pointer;font-weight:900}.import-evidence ul{margin:6px 0 0 18px;padding:0}
.import-holiday-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:9px}.import-holiday-grid span{display:grid;gap:2px;padding:7px 8px;border:1px solid #e0e8ee;border-radius:8px;background:#fff}.import-holiday-grid b{font-size:10px;color:#1f4b67}.import-holiday-grid small{font-size:9px;color:#718897;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.optional-import{border-style:dashed!important}.schedule-import-notes{padding:10px 13px;border:1px solid #d8e4eb;border-radius:10px;background:#f8fbfd;color:#526f82;font-size:11px}.schedule-import-notes ul{margin:5px 0 0 18px}.schedule-import-review-actions{position:sticky;bottom:8px;z-index:4;display:flex;justify-content:flex-end;gap:8px;padding:9px;border:1px solid #d5e2ea;border-radius:12px;background:rgba(255,255,255,.94);backdrop-filter:blur(7px);box-shadow:0 8px 25px rgba(11,58,86,.12)}

.schedule-special-intro-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.schedule-history-analyze-link{white-space:nowrap}.schedule-special-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:11px 0}.schedule-special-overview>div{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center;padding:9px 10px;border:1px solid #d9e5ec;border-radius:10px;background:#fff}.schedule-special-overview>div>span{grid-row:1/3;font-size:19px}.schedule-special-overview b{font-size:11px;color:#194661}.schedule-special-overview small{font-size:9px;color:#728897;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.schedule-number-head.holiday-imported{background:#f1a34d!important;color:#111!important}

@media(max-width:700px){
  .schedule-history-import{padding:12px!important}.history-import-form{grid-template-columns:1fr}.history-import-form>.btn{width:100%}.history-import-detects{display:grid;grid-template-columns:1fr 1fr}.history-import-detects span{font-size:9px;text-align:center}.schedule-history-grid{grid-template-columns:1fr!important}.history-archive-items>div{grid-template-columns:1fr}.history-archive-items small,.history-archive-items .btn{grid-column:1;grid-row:auto}
  .schedule-import-review-hero{grid-template-columns:1fr 1fr;gap:6px}.import-kpi{padding:9px 10px}.import-kpi b{font-size:19px}.schedule-import-warning{display:grid;font-size:11px}.import-review-title h2{font-size:15px}.jv-review-fields{grid-template-columns:1fr 1fr}.jv-review-fields label:last-child{grid-column:1/-1;padding-top:2px}.import-holiday-grid{grid-template-columns:1fr 1fr}.schedule-import-review-actions{display:grid;grid-template-columns:1fr 1fr}.schedule-import-review-actions .btn{min-height:42px;padding:7px;font-size:11px}
  .schedule-special-intro-actions{display:grid}.schedule-history-analyze-link{width:100%;box-sizing:border-box;text-align:center}.schedule-special-overview{grid-template-columns:1fr}.schedule-special-overview>div{padding:7px 8px}
}

/* ===== Módulo 59.27 · calendarios anuales más compactos + móvil solo edición puntual ===== */
@media (min-width:901px){
  .schedule-year-calendar-modal{width:min(1240px,calc(100vw - 44px));height:min(90vh,790px);border-radius:14px}
  .schedule-year-calendar-head{padding:9px 12px 8px;align-items:center}
  .schedule-year-calendar-brand{display:flex;align-items:center;gap:9px;min-width:0}
  .schedule-year-calendar-brand>img{width:36px;height:36px;object-fit:contain;flex:0 0 auto}
  .schedule-year-calendar-head span{font-size:7px;margin-bottom:1px}
  .schedule-year-calendar-head h2{font-size:17px}
  .schedule-year-calendar-head p{font-size:9px;margin-top:2px}
  .schedule-year-calendar-head-actions .btn{min-height:31px;padding:5px 9px;font-size:9px}
  .schedule-year-calendar-close{width:31px;height:31px;font-size:20px}
  .schedule-year-calendar-toolbar{grid-template-columns:minmax(190px,.72fr) minmax(330px,1.25fr) auto;gap:9px;padding:6px 12px}
  .schedule-year-calendar-counter strong{font-size:20px}.schedule-year-calendar-counter span{font-size:9px}
  .schedule-year-calendar-legend{gap:11px;font-size:8.5px}.schedule-year-calendar-legend i{width:12px;height:12px;border-radius:3px}
  .schedule-year-calendar-toolbar-actions .btn{min-height:31px;padding:5px 9px;font-size:9px}
  .schedule-year-calendar-status{padding:5px 12px;font-size:9px}
  .schedule-year-calendar-scroll{padding:8px 10px 10px}
  .schedule-year-calendar-grid{grid-template-columns:repeat(4,minmax(205px,1fr));gap:7px;max-width:1180px}
  .schedule-year-month{border-radius:8px;border-color:#bfd0db;box-shadow:none}
  .schedule-year-month h3{padding:5px 7px;font-size:11px}
  .schedule-year-weekdays{padding:2px 3px 0}.schedule-year-weekdays b{height:16px;font-size:7px}
  .schedule-year-days{padding:0 3px 4px;gap:1px}
  .schedule-year-day{min-height:24px;border-radius:4px;font-size:9px;border-color:#ccd9e1}
  .schedule-year-day em{right:2px;top:2px;width:10px;height:10px;font-size:6.5px}
  .schedule-year-calendar-modal.service-auxiliary .schedule-year-day.selected{background:#318B8B!important;border:2px solid #145C62!important;color:#fff!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.30),0 0 0 1px rgba(20,92,98,.12)!important;font-weight:950!important}
  .schedule-year-calendar-modal.service-covadonga .schedule-year-day.selected{background:#B98845!important;border:2px solid #76511E!important;color:#fff!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28),0 0 0 1px rgba(118,81,30,.12)!important;font-weight:950!important}
  .schedule-year-day.selected em{background:#B91C1C!important;border:1px solid #fff;box-shadow:none!important}
}

@media(max-width:900px){
  body.schedule-admin-mobile-quick-only .schedule-mobile-tools,
  body.schedule-admin-mobile-quick-only .schedule-mobile-admin-modal{display:none!important}
  body.schedule-admin-mobile-quick-only .schedule-mobile-quick-actions{display:flex!important;justify-content:flex-end!important;gap:4px!important;margin:0!important}
  body.schedule-admin-mobile-quick-only .schedule-mobile-quick-actions .btn{min-height:32px!important;padding:4px 8px!important;font-size:9px!important}
  body.schedule-admin-mobile-quick-only .schedule-mobile-month-summary{margin:4px 0 6px!important;min-height:32px!important;padding:6px 8px!important;border-radius:8px!important}
  body.schedule-admin-mobile-quick-only .schedule-mobile-month-summary strong{font-size:12px!important}
  body.schedule-admin-mobile-quick-only .schedule-mobile-month-summary span{font-size:8px!important}
  body.schedule-admin-mobile-quick-only .schedule-mobile-monthbar{margin:0 0 4px!important;gap:4px!important}
  body.schedule-admin-mobile-quick-only .schedule-mobile-date-form{padding:4px!important;gap:4px!important;border-radius:8px!important}
  body.schedule-admin-mobile-quick-only .schedule-mobile-month-arrow{width:33px!important;min-width:33px!important;height:33px!important;min-height:33px!important;padding:0!important}
  body.schedule-admin-mobile-quick-only .pagehead{margin-bottom:5px!important}
  body.schedule-admin-mobile-quick-only .pagehead h1{font-size:22px!important}
  body.schedule-admin-mobile-quick-only .pagehead p{font-size:9px!important;line-height:1.2!important;margin:1px 0 0!important;color:#6d8291!important}
  body.schedule-admin-mobile-quick-only .schedule-summary{display:none!important}
}

/* ===== Módulo 59.28 · barra compacta de Jefatura + importación histórica segura ===== */
@media (min-width:901px){
  .schedule-admin-titlebar{min-height:54px!important;padding:7px 10px!important}
  .schedule-admin-title-actions{align-items:center!important;gap:6px!important}
  .schedule-admin-compactbar{display:flex;align-items:center;gap:6px;position:relative}
  .schedule-safe-actions{display:none!important;align-items:center;gap:5px!important;margin-right:2px}
  body.schedule-has-pending .schedule-safe-actions{display:flex!important}
  .schedule-safe-actions .btn{min-height:34px!important;padding:6px 10px!important;font-size:11px!important;border-radius:9px!important}
  .schedule-safe-actions .schedule-admin-undo{width:36px!important;overflow:hidden;color:transparent!important;position:relative;padding:0!important}
  .schedule-safe-actions .schedule-admin-undo::after{content:'↶';color:#244b65;font-size:18px;position:absolute;inset:0;display:grid;place-items:center}
  .schedule-pending-badge{font-size:9px!important;padding:5px 8px!important}
  .schedule-compact-drop{position:relative}
  .schedule-compact-trigger{min-height:35px!important;padding:6px 11px!important;border-radius:9px!important;font-size:11px!important;font-weight:850!important;white-space:nowrap!important}
  .schedule-compact-popover{position:absolute;right:0;top:calc(100% + 7px);z-index:1200;width:300px;padding:7px;border:1px solid #cbdbe5;border-radius:12px;background:#fff;box-shadow:0 14px 38px rgba(15,53,77,.20)}
  .schedule-compact-popover[hidden]{display:none!important}
  .schedule-compact-menu-item{width:100%!important;min-height:43px!important;border:0!important;border-radius:8px!important;padding:6px 7px!important;grid-template-columns:28px minmax(0,1fr) auto 10px!important;box-shadow:none!important;background:#fff!important}
  .schedule-compact-menu-item:hover{background:#f0f7fb!important;transform:none!important}
  .schedule-compact-menu-item .schedule-admin-tool-text small{display:none!important}
  .schedule-compact-menu-item em{font-size:7px!important;padding:2px 5px!important}
  .schedule-compact-link{display:flex!important;align-items:center!important;width:100%!important;min-height:39px!important;border:0!important;background:#fff!important;justify-content:flex-start!important;padding:7px 9px!important;border-radius:8px!important;font-size:11px!important;box-shadow:none!important}
  .schedule-compact-link:hover{background:#f0f7fb!important}
  .schedule-admin-tools{display:none!important}
}

.import-destination-card{border:1.5px solid #8eb9d5!important;background:linear-gradient(135deg,#f8fcff,#fff)!important}
.import-destination-grid{display:grid;grid-template-columns:180px 1fr 1fr;gap:9px;align-items:stretch}
.import-target-year{display:grid;align-content:start;gap:5px;font-size:10px;font-weight:850;color:#31556d}.import-target-year input{height:48px;font-size:18px;font-weight:850}
.import-mode-option{display:flex;gap:9px;align-items:flex-start;padding:11px;border:1px solid #d5e2ea;border-radius:10px;background:#fff;cursor:pointer}.import-mode-option:has(input:checked){border-color:#2f91cd;background:#eef8fe;box-shadow:0 0 0 2px rgba(47,145,205,.08)}.import-mode-option input{margin-top:3px}.import-mode-option span{display:grid;gap:3px}.import-mode-option b{font-size:12px;color:#173f5b}.import-mode-option small{font-size:9.5px;line-height:1.35;color:#657e8f}
.schedule-import-warning.compact{margin-top:10px!important}.import-confirm-replace{display:flex;gap:8px;align-items:flex-start;margin-top:8px;padding:8px 10px;border-radius:9px;background:#fff5e8;border:1px solid #f1c98d;color:#704c17}.import-confirm-replace span{display:grid;gap:2px}.import-confirm-replace b{font-size:11px}.import-confirm-replace small{font-size:9px;color:#8a6a3a}.import-secondary-option{margin-top:7px!important;padding-left:34px!important;opacity:.9}
@media(max-width:900px){.import-destination-grid{grid-template-columns:1fr}.import-mode-option{min-height:70px}.import-secondary-option{padding-left:0!important}}

/* Módulo 59.29 · herramientas básicas de filas tipo Calc en Jefatura */
@media (min-width: 769px){
  .schedule-data-row.schedule-row-collapsed{display:none!important}
  .schedule-row-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:6px 0;padding:6px 8px;border:1px solid #cbd9e3;border-radius:10px;background:#f8fbfd;box-shadow:0 2px 8px rgba(13,79,124,.06);position:relative;z-index:5}
  .schedule-row-tools[hidden]{display:none!important}
  .schedule-row-tools-count{font-size:11px;font-weight:800;color:#1b4968;margin-right:2px}
  .schedule-row-tools .btn{min-height:30px!important;padding:5px 9px!important;font-size:11px!important}
  .schedule-folded-rows{margin:6px 0!important;min-height:30px!important;padding:5px 10px!important;font-size:11px!important;border-style:dashed!important}
  .schedule-folded-rows[hidden]{display:none!important}
  .schedule-data-row.schedule-row-selected .schedule-person-name{box-shadow:inset 0 0 0 2px #1685d1!important;background:#e7f4fd!important}
  .schedule-row-select-handle{width:18px;height:18px;min-width:18px;border:1px solid #b6c8d5;border-radius:5px;background:#fff;color:transparent;margin-right:5px;padding:0;vertical-align:middle;cursor:pointer;font-size:11px;line-height:16px}
  .schedule-data-row.schedule-row-selected .schedule-row-select-handle{background:#1685d1;border-color:#1685d1;color:#fff}
  .schedule-row-label{vertical-align:middle}
  .schedule-row-color-pop{position:absolute;top:100%;left:130px;margin-top:4px;display:flex;align-items:center;gap:8px;padding:8px;border:1px solid #bfcfda;border-radius:10px;background:#fff;box-shadow:0 10px 28px rgba(14,52,77,.18);z-index:40}
  .schedule-row-color-pop label{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:#2a516c}
  .schedule-row-color-pop input[type=color]{width:34px;height:28px;padding:1px;border:1px solid #c7d4dd;border-radius:6px;background:#fff}
}

/* ===== Motor 61.2 PRUEBA · Calc maestro + visor público compacto ===== */
.schedule-master-reader-report{margin:12px 0}
.schedule-master-reader-title{display:flex;align-items:center;justify-content:space-between;gap:12px}
.schedule-master-reader-title>div{display:flex;align-items:flex-start;gap:10px}.schedule-master-reader-title>div>span{font-size:28px}
.schedule-master-reader-title h2{margin:0 0 3px;font-size:20px}.schedule-master-reader-title p{margin:0;color:#60798b}
.schedule-master-reader-title>b{padding:6px 10px;border-radius:999px;background:#e9f3f8;color:#285e7e;white-space:nowrap}
.schedule-master-reader-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:10px}
.schedule-master-reader-kpis span{padding:9px;border:1px solid #d8e4eb;border-radius:9px;background:#fbfdfe;font-size:12px;color:#60798b}
.schedule-master-reader-kpis b{display:block;font-size:19px;color:#173f59}
.schedule-master-recounts-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:9px}
.schedule-master-recounts-head h2{margin:0 0 3px}.schedule-master-recounts-head p{margin:0;font-size:12px;color:#60798b}
.schedule-master-aux-kpi{white-space:nowrap;background:#eef6fa;border:1px solid #d5e4ec;border-radius:999px;padding:6px 9px;font-size:11px;color:#456579}
.schedule-master-aux-kpi b{font-size:16px;color:#12577f}
.schedule-master-recount-scroll table{min-width:max-content}.schedule-master-recount-scroll th{position:sticky;top:0;background:#eef4f7;z-index:1;white-space:nowrap;font-size:11px}
.schedule-master-recount-scroll td{white-space:nowrap;font-size:11px}.schedule-master-recount-scroll .recount-person{position:sticky;left:0;background:#fff;z-index:1;text-align:left!important;font-weight:750}
.schedule-master-detail{margin-top:8px;border:1px solid #d9e4eb;border-radius:9px;overflow:hidden}.schedule-master-detail>summary{padding:8px 10px;cursor:pointer;font-size:12px;font-weight:800;background:#f5f8fa;color:#31536c}

@media(max-width:760px){
  .schedule-public-pagehead{margin:0 0 4px!important;padding:0!important;min-height:0!important}
  .schedule-public-pagehead h1{font-size:17px!important;line-height:1.05!important;margin:0!important}
  .schedule-public-pagehead p{display:none!important}
  .schedule-public-toolbar{display:grid!important;grid-template-columns:31px minmax(0,1fr) 31px!important;gap:4px!important;align-items:center!important;margin:4px 0 5px!important;padding:4px!important;border-radius:9px!important}
  .schedule-public-toolbar .schedule-nav-btn{width:31px!important;min-width:31px!important;min-height:31px!important;height:31px!important;padding:0!important;display:grid!important;place-items:center!important;font-size:19px!important}
  .schedule-public-toolbar .schedule-nav-text{display:none!important}
  .schedule-public-toolbar form{order:0!important;width:100%!important;display:grid!important;grid-template-columns:57px minmax(82px,1fr) 39px!important;gap:4px!important;align-items:center!important}
  .schedule-public-toolbar select{width:100%!important;min-width:0!important;min-height:31px!important;height:31px!important;padding:2px 4px!important;font-size:10px!important;border-radius:7px!important}
  .schedule-public-toolbar form .btn{min-height:31px!important;height:31px!important;padding:2px 4px!important;font-size:9px!important;border-radius:7px!important}
  .schedule-public-titlebar{margin:4px 0 5px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:5px!important;flex-wrap:nowrap!important}
  .schedule-public-titlebar>div:first-child{min-width:0}.schedule-public-titlebar h2{font-size:15px!important;line-height:1!important;margin:0!important;white-space:nowrap}.schedule-public-titlebar>div:first-child>span{font-size:8px!important;display:block!important;margin-top:2px!important}
  .schedule-public-titlebar .actions{display:flex!important;gap:3px!important;flex-wrap:nowrap!important;margin:0!important}
  .schedule-public-titlebar .actions .btn{min-height:28px!important;height:28px!important;padding:3px 5px!important;font-size:8px!important;border-radius:6px!important;white-space:nowrap!important}
  .schedule-public-titlebar .schedule-pdf-year{display:none!important}
  .schedule-public-grid{margin:0!important}
  .schedule-public-grid .schedule-scroll{border-radius:7px!important}
  .schedule-public-grid .schedule-grid{--schedule-name-column-width:108px!important;min-width:max-content!important;width:auto!important;font-size:10px!important}
  .schedule-public-grid .schedule-grid .sticky-name{width:108px!important;min-width:108px!important;max-width:108px!important}
  .schedule-public-grid .schedule-grid .schedule-person-name{height:28px!important;min-height:28px!important;max-height:28px!important;padding:2px 4px!important;font-size:9.5px!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .schedule-public-grid .schedule-grid th:not(.sticky-name),.schedule-public-grid .schedule-grid td{width:27px!important;min-width:27px!important;max-width:27px!important}
  .schedule-public-grid .schedule-grid tbody tr,.schedule-public-grid .schedule-grid tbody td{height:28px!important;min-height:28px!important;max-height:28px!important}
  .schedule-public-grid .schedule-grid tbody td .shift-code{height:27px!important;min-height:27px!important;line-height:27px!important;font-size:12.5px!important}
  .schedule-public-grid .schedule-grid thead .schedule-month-label{height:37px!important;min-height:37px!important;width:108px!important;min-width:108px!important;max-width:108px!important}
  .schedule-public-grid .schedule-corner-label .schedule-corner-agents{font-size:11px!important}.schedule-public-grid .schedule-corner-label .schedule-corner-days{font-size:7px!important}
  .schedule-public-grid .schedule-weekday-head{width:27px!important;min-width:27px!important;max-width:27px!important;height:18px!important;min-height:18px!important;font-size:7.5px!important;line-height:18px!important}
  .schedule-public-grid .schedule-number-head{width:27px!important;min-width:27px!important;max-width:27px!important;height:19px!important;min-height:19px!important;font-size:9.5px!important;line-height:19px!important}
  .schedule-public-grid .schedule-number-head b{font-size:7px!important;margin-left:1px!important}
  .schedule-public-grid .schedule-aux-details{margin-top:4px!important;border-radius:7px!important}.schedule-public-grid .schedule-aux-details>summary{min-height:30px!important;padding:5px 7px!important;font-size:9.5px!important}.schedule-public-grid .schedule-aux-details>summary span{font-size:8px!important}
  .schedule-legend-mobile{margin-top:5px!important}.schedule-legend-mobile>summary{padding:5px 7px!important;font-size:9px!important}.schedule-legend-mobile .schedule-legend{gap:3px!important;margin-top:5px!important;font-size:8px!important}.schedule-legend-mobile .schedule-legend span{padding:3px 4px!important;border-radius:4px!important}
  .schedule-master-reader-kpis{grid-template-columns:1fr 1fr}.schedule-master-reader-title{align-items:flex-start}.schedule-master-reader-title h2{font-size:16px}.schedule-master-reader-title p{font-size:9px}.schedule-master-reader-title>b{font-size:9px;padding:4px 6px}
  .schedule-master-recounts-head{display:block}.schedule-master-aux-kpi{display:inline-block;margin-top:7px}.schedule-master-recount-scroll th,.schedule-master-recount-scroll td{font-size:9px!important;padding:5px!important}
}

/* 61.1 ajuste final: densidad móvil del visor público */
@media(max-width:760px){
  .schedule-public-grid .schedule-grid{--schedule-name-column-width:96px!important;font-size:9px!important}
  .schedule-public-grid .schedule-grid .sticky-name{width:96px!important;min-width:96px!important;max-width:96px!important}
  .schedule-public-grid .schedule-grid .schedule-person-name{height:26px!important;min-height:26px!important;max-height:26px!important;font-size:8.7px!important;padding:2px 3px!important}
  .schedule-public-grid .schedule-grid th:not(.sticky-name),.schedule-public-grid .schedule-grid td{width:25px!important;min-width:25px!important;max-width:25px!important}
  .schedule-public-grid .schedule-grid tbody tr,.schedule-public-grid .schedule-grid tbody td{height:26px!important;min-height:26px!important;max-height:26px!important}
  .schedule-public-grid .schedule-grid tbody td .shift-code{height:25px!important;min-height:25px!important;line-height:25px!important;font-size:11.5px!important}
  .schedule-public-grid .schedule-grid thead .schedule-month-label{width:96px!important;min-width:96px!important;max-width:96px!important;height:34px!important;min-height:34px!important}
  .schedule-public-grid .schedule-weekday-head,.schedule-public-grid .schedule-number-head{width:25px!important;min-width:25px!important;max-width:25px!important}
  .schedule-public-grid .schedule-weekday-head{height:17px!important;min-height:17px!important;line-height:17px!important;font-size:7px!important}
  .schedule-public-grid .schedule-number-head{height:18px!important;min-height:18px!important;line-height:18px!important;font-size:9px!important}
}

/* Motor 61.4 · importación parcial y lector profundo Calc */
.schedule-sheet-map{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:7px;margin-top:10px}
.schedule-sheet-map span{border:1px solid #d8e4eb;background:#fbfdfe;border-radius:9px;padding:8px;display:flex;flex-direction:column;gap:2px}
.schedule-sheet-map b{font-size:12px;color:#183f57}.schedule-sheet-map small{font-size:10px;color:#6b7f8d}
.import-scope-options{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}
.schedule-partial-import{margin-top:12px;padding-top:12px;border-top:1px solid #dce7ed}.schedule-partial-import[hidden]{display:none!important}
.schedule-month-picker{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:9px 0}
.schedule-month-picker label{display:flex;align-items:center;gap:6px;border:1px solid #d7e2e8;background:#fff;border-radius:8px;padding:7px;font-size:11px;font-weight:700;cursor:pointer}
.schedule-month-picker input{margin:0}.schedule-select-shortcuts{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.schedule-select-shortcuts .btn{padding:5px 8px;font-size:10px}
.schedule-master-block-picker{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.schedule-master-block-picker label{display:flex;gap:8px;align-items:flex-start;border:1px solid #d8e4eb;background:#fbfdfe;border-radius:9px;padding:9px;cursor:pointer}
.schedule-master-block-picker label span{display:flex;flex-direction:column;gap:2px}.schedule-master-block-picker small{color:#6c7f8d}
.schedule-import-all-hint{margin-top:10px;padding:9px 11px;border-radius:9px;background:#eef7fb;color:#315c74;font-size:11px}
.schedule-recount-tabs{display:grid;gap:8px}.schedule-wide-recount table{min-width:1400px}
.schedule-aux-control-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:7px;padding:8px 0}
.schedule-aux-control-cards>div{border:1px solid #d7e3e9;background:#fbfdfe;border-radius:9px;padding:8px;display:flex;flex-direction:column;gap:2px}
.schedule-aux-control-cards b{font-size:12px;color:#183f57}.schedule-aux-control-cards span,.schedule-aux-control-cards small{font-size:10px;color:#60798b}
@media(max-width:760px){
  .import-scope-options,.schedule-master-block-picker{grid-template-columns:1fr}
  .schedule-month-picker{grid-template-columns:repeat(3,minmax(0,1fr))}
  .schedule-sheet-map{grid-template-columns:1fr 1fr}
}

/* ===== Motor 61.8 · calendarios anuales más compactos y legibles =====
   Objetivo: mantener los 12 meses a la vista en PC (4x3), reducir altura y
   espacios muertos, pero aumentar claramente el tamaño/contraste del número. */
.schedule-year-calendar-modal{
  width:min(1440px,calc(100vw - 22px));
  height:min(95vh,900px);
}
.schedule-year-calendar-head{padding:11px 14px 9px;gap:12px}
.schedule-year-calendar-head h2{font-size:20px}
.schedule-year-calendar-head p{margin-top:2px;font-size:9.5px}
.schedule-year-calendar-toolbar{padding:6px 14px;gap:10px;grid-template-columns:minmax(185px,.7fr) minmax(330px,1.35fr) auto}
.schedule-year-calendar-counter strong{font-size:23px}
.schedule-year-calendar-counter span{font-size:9.5px}
.schedule-year-calendar-legend{gap:13px;font-size:9.5px}
.schedule-year-calendar-legend i{width:13px;height:13px;border-radius:3px}
.schedule-year-calendar-status{padding:5px 14px;font-size:9.5px}
.schedule-year-calendar-scroll{padding:8px 10px 10px}
.schedule-year-calendar-grid{
  grid-template-columns:repeat(4,minmax(210px,1fr));
  gap:7px;
  max-width:1320px;
}
.schedule-year-month{border-radius:9px;box-shadow:0 1px 3px rgba(19,66,94,.03)}
.schedule-year-month h3{padding:5px 8px;font-size:12px;line-height:1.05}
.schedule-year-weekdays{padding:2px 4px 0}
.schedule-year-weekdays b{height:15px;font-size:8px;font-weight:900}
.schedule-year-days{padding:0 4px 4px;gap:1.5px}
.schedule-year-day{
  min-height:26px;
  border-radius:5px;
  border-color:#d8e3e9;
  color:#123b56;
  font:900 13px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:-.01em;
}
.schedule-year-day>span{transform:translateY(.2px)}
.schedule-year-day:hover{border-color:#5f98b8;box-shadow:inset 0 0 0 1px #5f98b8}
.schedule-year-day.sunday:not(.selected){background:#fff2f2;border-color:#efcdcd;color:#b32626}
.schedule-year-day.holiday:not(.selected){background:#ffe2e2;border-color:#e8b7b7;color:#9d1f1f}
.schedule-year-day em{
  right:2px;top:2px;width:13px;height:13px;
  font:900 8.5px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  box-shadow:0 0 0 1px rgba(255,255,255,.86);
}
.schedule-year-calendar-modal.service-auxiliary .schedule-year-day.selected{
  background:#348e90;border-color:#176d70;color:#fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.45),0 1px 1px rgba(8,68,71,.12);
}
.schedule-year-calendar-modal.service-covadonga .schedule-year-day.selected{
  background:#c9ae82;border-color:#98784e;color:#2d2114;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.5),0 1px 1px rgba(69,48,24,.10);
}
.schedule-year-day.selected em{background:#c72020;color:#fff}

@media(max-width:1180px){
  .schedule-year-calendar-grid{grid-template-columns:repeat(3,minmax(205px,1fr));max-width:980px}
}
@media(max-width:850px){
  .schedule-year-calendar-modal{width:calc(100vw - 10px);height:calc(100vh - 10px)}
  .schedule-year-calendar-head{padding:8px 9px 7px}
  .schedule-year-calendar-head h2{font-size:18px}
  .schedule-year-calendar-toolbar{padding:5px 9px;gap:5px}
  .schedule-year-calendar-scroll{padding:6px}
  .schedule-year-calendar-grid{grid-template-columns:repeat(2,minmax(185px,1fr));gap:5px}
  .schedule-year-month h3{padding:4px 6px;font-size:11.5px}
  .schedule-year-day{min-height:25px;font-size:12.5px}
}
@media(max-width:560px){
  .schedule-year-calendar-grid{grid-template-columns:1fr;max-width:360px;margin:0 auto}
  .schedule-year-calendar-scroll{padding:5px}
  .schedule-year-day{min-height:30px;font-size:14px}
  .schedule-year-weekdays b{height:16px;font-size:8.5px}
  .schedule-year-day em{width:14px;height:14px;font-size:9px}
}


/* ===== Motor 61.9 · simplificación de Jefatura, histórico anual y tablas compactas ===== */
.hq-command-icon,.hq-command-mini{display:inline-grid;place-items:center;background:#123f68;color:#f6c744;border:2px solid #f6c744;border-radius:50%;font-weight:900;line-height:1;box-shadow:inset 0 0 0 2px #123f68}
.hq-command-icon{width:38px;height:38px;font-size:22px;vertical-align:middle;margin-right:7px}.hq-command-mini{width:22px;height:22px;font-size:13px;margin-right:3px}.hq-clean-grid{grid-template-columns:repeat(2,minmax(260px,1fr))}.hq-clean-grid .module{min-height:86px}.hq-schedule-module{border-color:#a9cce5;background:#f7fbff}
.crumbs{display:flex;align-items:center;gap:7px;font-size:12px;color:#6b8193;margin:-4px 0 12px}.crumbs a{text-decoration:none;color:#2b668e}.crumbs b{color:#173f59}
.history-year-v619{padding:18px}.history-version-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.history-version-actions form{margin:0}.history-year-updates{margin-top:12px;border-top:1px solid #e4edf3;padding-top:10px}.history-year-updates>summary{cursor:pointer;font-weight:800;color:#315a77}.history-download-menu{position:relative}.history-download-menu>summary{list-style:none;cursor:pointer}.history-download-menu>summary::-webkit-details-marker{display:none}.history-download-menu>div{position:absolute;z-index:30;top:42px;left:0;min-width:170px;padding:6px;background:#fff;border:1px solid #d4e0e8;border-radius:10px;box-shadow:0 10px 25px #123a5d24}.history-download-menu a{display:block;padding:9px 10px;text-decoration:none;border-radius:7px;font-size:12px;font-weight:700}.history-download-menu a:hover{background:#edf6fc}.history-archive-items>div{display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center;padding:9px 0;border-bottom:1px solid #edf1f4}.history-archive-items small{grid-column:1;color:#718698}.history-archive-items .btn{grid-row:1/3;grid-column:2}
.aux-contract-panel{grid-column:1/-1;width:100%;margin-top:12px;border-top:1px solid #dce8ef;padding-top:12px}.aux-contract-head b{display:block;color:#173f59}.aux-contract-head small{color:#718698}.aux-contract-form{display:grid;grid-template-columns:130px 130px minmax(220px,1.4fr) minmax(220px,1fr) auto;gap:8px;align-items:end;margin:10px 0}.aux-contract-form label{display:grid;gap:4px;font-size:11px;font-weight:800;color:#4b6a80}.aux-contract-form input,.aux-contract-form textarea,.aux-contract-edit input,.aux-contract-edit textarea,.aux-date-query input{width:100%;padding:8px;border:1px solid #cddce7;border-radius:8px;font:inherit}.aux-date-query{display:flex;align-items:center;gap:10px;padding:10px;background:#f5f9fc;border:1px solid #dbe7ef;border-radius:10px;margin-bottom:10px}.aux-date-query label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800}.aux-query-result{font-size:12px;color:#244d69}.aux-contract-cards{display:grid;grid-template-columns:repeat(3,minmax(230px,1fr));gap:8px}.aux-contract-cards>article{border:1px solid #d7e4ec;border-radius:10px;padding:10px;background:#fff}.aux-contract-cards article>div>b{display:block;color:#183f5a}.aux-contract-cards article small{color:#7890a0}.aux-contract-cards article p{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.aux-contract-cards article p span{background:#eaf4fa;border-radius:999px;padding:4px 7px;font-size:11px;font-weight:700}.aux-contract-cards details>summary{width:max-content}.aux-contract-edit{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.aux-contract-edit textarea,.aux-contract-edit input[type=text]{grid-column:1/-1}
.schedule-master-recount-scroll table,.schedule-wide-recount table{width:max-content;min-width:100%;table-layout:auto}.schedule-master-recount-scroll th,.schedule-master-recount-scroll td,.schedule-wide-recount th,.schedule-wide-recount td{padding:5px 6px!important;font-size:11px!important;text-align:center!important;white-space:nowrap}.schedule-master-recount-scroll th:first-child,.schedule-master-recount-scroll td:first-child,.schedule-wide-recount th:first-child,.schedule-wide-recount td:first-child{position:sticky;left:0;z-index:2;text-align:left!important;min-width:150px;background:#fff;font-weight:800}.schedule-master-recount-scroll thead th,.schedule-wide-recount thead th{background:#eaf2f7;color:#244f6d;border-right:1px solid #d5e1e8}.schedule-master-recount-scroll thead th:nth-child(2),.schedule-master-recount-scroll thead th:nth-child(3),.schedule-master-recount-scroll thead th:nth-child(4),.schedule-wide-recount thead th:nth-child(2),.schedule-wide-recount thead th:nth-child(3),.schedule-wide-recount thead th:nth-child(4){background:#dbe7f1}.schedule-wide-recount thead th:nth-child(n+6):nth-child(-n+17){background:#eef0c8}.schedule-wide-recount thead th:nth-child(n+18){background:#fff3a8}.schedule-master-detail summary{font-size:13px}.schedule-master-recounts-head{margin-bottom:8px}
@media(max-width:900px){.hq-clean-grid{grid-template-columns:1fr}.aux-contract-form{grid-template-columns:1fr 1fr}.aux-contract-form .aux-contract-names,.aux-contract-form .aux-contract-observations{grid-column:1/-1}.aux-contract-form button{grid-column:1/-1}.aux-contract-cards{grid-template-columns:1fr}.aux-date-query{align-items:stretch;flex-direction:column}.history-archive-items>div{display:block}.history-archive-items .btn{margin-top:6px}}

/* ===== Motor 61.11 · calendario anual de servicios con mayor definición =====
   Más legibilidad sin perder la vista anual 4x3 en PC. */
.schedule-year-calendar-modal{
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.schedule-year-calendar-head span{font-size:9px;font-weight:950;letter-spacing:.075em}
.schedule-year-calendar-head h2{font-size:23px;font-weight:900;letter-spacing:-.015em;color:#103b59}
.schedule-year-calendar-head p{font-size:10.5px;font-weight:600;color:#60798b}
.schedule-year-calendar-counter strong{font-size:26px;font-weight:950}
.schedule-year-calendar-counter span{font-size:10.5px;font-weight:900}
.schedule-year-calendar-legend{font-size:10.5px;font-weight:900;color:#526e82}
.schedule-year-calendar-legend i{width:14px;height:14px;border-color:#9fb6c6}
.schedule-year-month{
  border-color:#aec4d2;
  box-shadow:0 1px 3px rgba(17,58,84,.08),inset 0 0 0 1px rgba(255,255,255,.9);
}
.schedule-year-month h3{
  padding:5px 8px;
  font-size:14px;
  line-height:1.1;
  font-weight:950;
  color:#103c59;
  border-bottom-color:#b8ccd8;
  background:#e9f2f7;
}
.schedule-year-weekdays{padding:3px 4px 1px}
.schedule-year-weekdays b{
  height:17px;
  font-size:9.5px;
  font-weight:950;
  color:#4c687b;
}
.schedule-year-weekdays b.sun{color:#a61f1f}
.schedule-year-days{gap:2px}
.schedule-year-day{
  min-height:28px;
  border:1px solid #b9ccd7;
  border-radius:5px;
  color:#0f3852;
  font:950 15px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:0;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.72);
}
.schedule-year-day:hover{
  border-color:#397fa7;
  box-shadow:inset 0 0 0 1px #397fa7,0 0 0 1px rgba(57,127,167,.18);
}
.schedule-year-day.sunday:not(.selected){background:#fff0f0;border-color:#e4bcbc;color:#a41f1f}
.schedule-year-day.holiday:not(.selected){background:#ffdddd;border-color:#dcaaaa;color:#921919}
.schedule-year-day em{
  right:2px;top:2px;width:14px;height:14px;
  font:950 9px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  box-shadow:0 0 0 1px #fff,0 1px 2px rgba(120,0,0,.18);
}
.schedule-year-calendar-modal.service-auxiliary .schedule-year-day.selected{
  border:2px solid #17676a;
  background:#398f91;
  color:#fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.55),0 1px 2px rgba(8,68,71,.18);
}
.schedule-year-calendar-modal.service-covadonga .schedule-year-day.selected{
  border:2px solid #88683f;
  background:#c8a66f;
  color:#23190e;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.56),0 1px 2px rgba(69,48,24,.18);
}
.schedule-year-day.selected em{background:#bd1d1d;border:0;color:#fff}

@media(max-width:850px){
  .schedule-year-calendar-head h2{font-size:20px}
  .schedule-year-month h3{font-size:13.5px}
  .schedule-year-weekdays b{font-size:9px}
  .schedule-year-day{min-height:28px;font-size:14.5px}
}
@media(max-width:560px){
  .schedule-year-day{min-height:33px;font-size:16px}
  .schedule-year-weekdays b{font-size:10px}
}

/* ===== Motor 61.12 · importación simplificada + fichas de cómputos ===== */
.schedule-import-ok{margin:0 0 14px;padding:12px 16px;border:1px solid #86d6a1;background:#effcf3;color:#166534;border-radius:12px;font-weight:800;font-size:15px}
.schedule-import-simple{display:grid;gap:14px}.simple-import-card{padding:18px}.simple-import-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:14px}.simple-import-head h2{margin:0 0 3px;font-size:21px;color:#123b5d}.simple-import-head p{margin:0;color:#667f94}.simple-import-head>span{background:#edf6fb;color:#24577b;border-radius:999px;padding:6px 10px;font-weight:800;font-size:12px}
.simple-import-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:10px}.simple-import-option{display:flex;align-items:center;gap:11px;border:1px solid #c9dbe7;border-radius:12px;padding:13px;background:#fff;cursor:pointer;min-height:72px}.simple-import-option:hover{border-color:#4d9fd1;background:#f6fbff}.simple-import-option:has(input:checked){border-color:#2688c8;box-shadow:0 0 0 2px #d7effd inset;background:#f7fcff}.simple-import-option input{width:18px;height:18px;flex:0 0 auto}.simple-import-option .ico{font-size:23px;width:28px;text-align:center}.simple-import-option b{display:block;color:#173f5f;font-size:15px}.simple-import-option small{display:block;color:#6e8496;margin-top:3px;line-height:1.25}.small-grid{margin-top:10px;grid-template-columns:repeat(2,minmax(220px,1fr))}
.simple-month-picker{margin-top:14px;padding-top:14px;border-top:1px solid #dce7ee}.simple-month-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;color:#214c6b}.linkbtn{border:0;background:none;color:#1976b8;font-weight:800;cursor:pointer;padding:4px 7px}.simple-month-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.simple-month-grid label{display:flex;align-items:center;gap:6px;border:1px solid #d1dee7;border-radius:8px;padding:7px 9px;background:#fff;font-weight:700;color:#284d67;cursor:pointer}.simple-month-grid label:has(input:checked){background:#eaf6fd;border-color:#7ebee5}.simple-advanced{border:1px solid #dce6ec;border-radius:10px;padding:9px 12px;background:#fafcfd}.simple-advanced summary{cursor:pointer;font-weight:800;color:#355c77}.diag-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.diag-grid span{padding:10px;border-radius:9px;background:#f2f7fa;color:#527086}.diag-grid b{font-size:18px;color:#173f5f}
.simple-destination-row{display:grid;grid-template-columns:180px 1fr 1fr;gap:10px}.simple-year,.simple-mode{border:1px solid #cbdbe6;border-radius:11px;padding:11px;background:#fff}.simple-year{font-weight:800;color:#31556e}.simple-year input{display:block;width:100%;margin-top:6px;font-size:18px;font-weight:800;padding:8px}.simple-mode{display:flex;align-items:flex-start;gap:8px;cursor:pointer}.simple-mode:has(input:checked){border-color:#2688c8;background:#f3fbff}.simple-mode b,.simple-mode small{display:block}.simple-mode b{color:#173f5f}.simple-mode small{margin-top:3px;color:#6a8091}.simple-confirm{display:flex;gap:8px;margin-top:10px;color:#885b0a;font-weight:700}.simple-import-actions{display:flex;justify-content:flex-end;gap:10px;margin:2px 0 18px}.btn.big{font-size:16px;padding:11px 20px}
.computos-click{cursor:pointer!important;text-decoration:underline dotted #7aa6bf;text-underline-offset:3px}.computos-click:hover{background:#eaf6fd!important;color:#0b5c91!important}.computos-launch-card{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 18px}.computos-launch-card h2{margin:0 0 4px;font-size:19px}.computos-launch-card p{margin:0;color:#668094}.computos-tip{white-space:nowrap;border-radius:999px;background:#edf7fd;color:#1b628f;padding:7px 11px;font-weight:800;font-size:12px}
.computos-modal[hidden]{display:none!important}.computos-modal{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:24px}.computos-backdrop{position:absolute;inset:0;background:rgba(10,30,45,.48);backdrop-filter:blur(2px)}.computos-panel{position:relative;width:min(880px,94vw);max-height:88vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.28);border:1px solid #c4d7e3}.computos-panel header{display:flex;justify-content:space-between;align-items:center;padding:18px 20px 12px;border-bottom:1px solid #dde8ef}.computos-panel header small{font-size:11px;letter-spacing:.12em;color:#5a7d95;font-weight:900}.computos-panel h2{margin:2px 0 0;font-size:25px;color:#103a59}.computos-close{border:0;background:#eef5f8;width:38px;height:38px;border-radius:50%;font-size:27px;color:#456b82;cursor:pointer}.computos-tabs{display:flex;gap:8px;padding:12px 20px 0}.computos-tabs button{border:1px solid #c9dae5;background:#fff;border-radius:9px;padding:8px 14px;font-weight:800;color:#41647b;cursor:pointer}.computos-tabs button.active{background:#137cc0;border-color:#137cc0;color:#fff}.computos-content{padding:16px 20px 22px}.computos-cards{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px}.computos-stat{border:1px solid #d5e2ea;border-radius:12px;padding:12px;background:#fbfdfe;min-height:84px;display:flex;flex-direction:column;justify-content:space-between}.computos-stat span{font-size:12px;color:#5e7a8e;font-weight:800;text-transform:uppercase;line-height:1.2}.computos-stat b{font-size:25px;color:#113e5e;line-height:1}.computos-empty{padding:28px;text-align:center;color:#758c9b;background:#f7fafc;border-radius:12px}.modal-open{overflow:hidden}
@media(max-width:900px){.simple-import-grid{grid-template-columns:1fr 1fr}.simple-month-grid{grid-template-columns:repeat(3,1fr)}.simple-destination-row{grid-template-columns:1fr}.computos-cards{grid-template-columns:1fr 1fr}}@media(max-width:560px){.simple-import-grid,.small-grid{grid-template-columns:1fr}.simple-month-grid{grid-template-columns:1fr 1fr}.computos-cards{grid-template-columns:1fr 1fr}.computos-modal{padding:8px}.computos-stat b{font-size:22px}}

/* ===== Motor 61.13 · Mi servicio mensual compacto + cómputos Jefatura ===== */
.my-service-calendar-card{max-width:760px;margin:0 auto;background:#fff;border:1px solid #d8e3eb;border-radius:18px;padding:16px 16px 14px;box-shadow:0 8px 28px rgba(19,55,80,.08)}
.my-service-compact-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}.my-service-title{display:flex;align-items:center;gap:9px}.my-service-title>span{font-size:29px;line-height:1}.my-service-title h1{margin:0;color:#0d3151;font-size:30px;line-height:1.05}.my-service-general-link{font-size:12px;font-weight:800;color:#1a6592;text-decoration:none;border:1px solid #cadce8;border-radius:9px;padding:7px 9px;background:#f8fbfd}
.my-service-month-nav{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:8px;margin:5px 0 12px}.my-service-month-nav h2{margin:0;text-align:center;color:#143b5c;font-size:25px;line-height:1.1}.my-service-month-nav a{display:grid;place-items:center;text-decoration:none;color:#103d63;font-size:40px;font-weight:700;line-height:1;border-radius:10px;min-height:40px}.my-service-month-nav a:hover{background:#eef6fb}
.my-service-weekdays,.my-service-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.my-service-weekdays{border-bottom:1px solid #d8e1e7}.my-service-weekdays span{text-align:center;font-size:13px;font-weight:900;letter-spacing:.015em;color:#163c5d;padding:4px 0 8px}.my-service-weekdays .sunday{color:#e52323}
.my-service-calendar{border-left:1px solid #dce4e9}.my-service-cell{position:relative;min-height:78px;border-right:1px solid #dce4e9;border-bottom:1px solid #dce4e9;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:8px 3px 6px;gap:6px}.my-service-cell.empty{background:#fff}.my-service-day-number{font-size:20px;font-weight:900;line-height:1;color:#123756}.my-service-cell.sunday .my-service-day-number{color:#e52323}.my-service-cell.today{box-shadow:inset 0 0 0 2px #1b78cb;z-index:1}.my-service-cell.today .my-service-day-number{background:#165f9e;color:#fff;border-radius:999px;min-width:28px;height:28px;display:grid;place-items:center;padding:0 5px}.my-service-cell.sunday.today .my-service-day-number{background:#e52323;color:#fff}
.my-service-shift{display:inline-grid!important;place-items:center;min-width:38px;height:30px;padding:0 8px;border-radius:7px;border:0!important;font-size:18px!important;font-weight:900!important;line-height:1!important;color:#123754!important;box-sizing:border-box}.my-service-shift.code-m{background:#cfe4f3!important}.my-service-shift.code-t{background:#a9d9fb!important}.my-service-shift.code-n{background:#ffc5c1!important}.my-service-shift.code-d,.my-service-shift.code-dc{background:#e6e8ea!important}.my-service-shift.code-jv{background:#ffe600!important;color:#152f45!important}.my-service-shift.code-c{background:#dcc69f!important}.my-service-shift.code-v,.my-service-shift.code-va{background:#cdeec0!important}.my-service-shift.code-ap{background:#c8e1fb!important}.my-service-shift.code-b{background:#e5c4ef!important}.my-service-shift.code-p,.my-service-shift.code-pa{background:#ffe0a8!important}.my-service-shift.code-g{background:#cde8d7!important}
.my-service-note-dot{position:absolute;top:4px;right:6px;color:#2382c2;font-size:20px;line-height:1}.my-service-legend{display:flex;align-items:center;justify-content:center;gap:9px 18px;flex-wrap:wrap;padding:14px 4px 4px}.my-service-legend>span{display:inline-flex;align-items:center;gap:7px;color:#153954;font-size:13px;font-weight:700}.my-service-legend .my-service-shift{min-width:34px;height:27px;font-size:15px!important;padding:0 6px}.my-service-notes{margin-top:9px;border-top:1px solid #e0e8ed;padding-top:8px}.my-service-notes summary{cursor:pointer;font-weight:800;color:#2f617f;font-size:13px}.my-service-notes p{display:grid;grid-template-columns:70px 1fr;gap:8px;margin:7px 0;padding:7px 9px;background:#f7fafc;border-radius:8px;font-size:13px}.my-service-notes p b{color:#173c59}.my-service-notes p span{color:#456b83}.my-service-empty{margin-top:14px}
.computos-click{cursor:pointer!important}.computos-click:focus{outline:2px solid #1882c1!important;outline-offset:-2px}
@media(max-width:760px){.my-service-calendar-card{margin:-2px -7px 0;padding:11px 8px 12px;border-radius:13px}.my-service-title h1{font-size:26px}.my-service-title>span{font-size:25px}.my-service-general-link{font-size:0;padding:7px 9px}.my-service-general-link:after{content:'← Cuadrante';font-size:11px}.my-service-month-nav{grid-template-columns:34px 1fr 34px;margin:4px 0 8px}.my-service-month-nav h2{font-size:22px}.my-service-month-nav a{font-size:34px;min-height:34px}.my-service-weekdays span{font-size:11px;padding:4px 0 6px}.my-service-cell{min-height:62px;padding:5px 2px 4px;gap:4px}.my-service-day-number{font-size:17px}.my-service-shift{min-width:31px;height:25px;font-size:15px!important;border-radius:6px;padding:0 5px}.my-service-cell.today .my-service-day-number{min-width:24px;height:24px}.my-service-note-dot{font-size:17px;top:2px;right:3px}.my-service-legend{gap:7px 11px;padding-top:11px;justify-content:flex-start}.my-service-legend>span{font-size:11px}.my-service-legend .my-service-shift{min-width:29px;height:23px;font-size:13px!important}.my-service-notes p{grid-template-columns:55px 1fr;font-size:12px}}
@media(max-width:390px){.my-service-calendar-card{padding-left:5px;padding-right:5px}.my-service-cell{min-height:57px}.my-service-weekdays span{font-size:10px}.my-service-day-number{font-size:16px}.my-service-shift{min-width:29px;height:23px;font-size:14px!important}.my-service-general-link{display:none}}

/* ===== Motor 61.14 · ficha Cómputos visual, ordenada por conceptos ===== */
.computos-panel{width:min(980px,96vw);background:#f7fafc;border-color:#bcd1df;overflow:auto}
.computos-panel header{background:#fff;position:sticky;top:0;z-index:4;padding:16px 20px 12px}
.computos-panel header small{color:#52758c}.computos-panel h2{font-size:27px}
.computos-tabs{background:#fff;position:sticky;top:70px;z-index:3;padding:10px 20px 12px;border-bottom:1px solid #e0e9ef}
.computos-tabs button{min-width:112px;padding:9px 16px;border-radius:10px}.computos-tabs button.active{box-shadow:0 4px 12px rgba(19,124,192,.18)}
.computos-content{padding:16px 18px 22px}.computos-groups{display:grid;gap:14px}
.computos-group{--group:#607d8b;--group-bg:#f1f5f7;background:#fff;border:1px solid #d7e3ea;border-radius:15px;overflow:hidden;box-shadow:0 2px 8px rgba(18,58,84,.04)}
.computos-group-service{--group:#176da2;--group-bg:#eaf5fb}.computos-group-absence{--group:#7557a3;--group-bg:#f3eef9}.computos-group-summer{--group:#a87900;--group-bg:#fff8dc}.computos-group-hours{--group:#3959a8;--group-bg:#eef1fb}.computos-group-balance{--group:#65721c;--group-bg:#f3f6df}.computos-group-other{--group:#667985;--group-bg:#f1f4f6}
.computos-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;background:var(--group-bg);border-bottom:1px solid color-mix(in srgb,var(--group) 22%,#fff)}
.computos-group-head>div{border-left:4px solid var(--group);padding-left:9px}.computos-group-head h3{margin:0;color:#173d59;font-size:15px;line-height:1.15}.computos-group-head small{display:block;margin-top:2px;color:#6c8292;font-size:11px}.computos-group-head>span{min-width:27px;height:27px;padding:0 7px;border-radius:999px;display:grid;place-items:center;background:#fff;color:var(--group);font-size:11px;font-weight:900;border:1px solid color-mix(in srgb,var(--group) 24%,#fff)}
.computos-group .computos-cards{padding:10px;grid-template-columns:repeat(4,minmax(135px,1fr));gap:8px}
.computos-stat{--tone:#5f7d90;--tone-bg:#f6f9fb;position:relative;overflow:hidden;min-height:78px;border:1px solid color-mix(in srgb,var(--tone) 22%,#fff);border-left:5px solid var(--tone);background:var(--tone-bg);padding:11px 12px 10px;border-radius:11px;box-shadow:none}
.computos-stat:before{content:'';position:absolute;inset:0 0 auto 0;height:3px;background:var(--tone);opacity:.14}.computos-stat span{color:#557084;font-size:11.5px;letter-spacing:.01em}.computos-stat b{font-size:27px;color:#103a59}.computos-stat.has-value{background:var(--tone-bg);border-color:color-mix(in srgb,var(--tone) 32%,#fff);box-shadow:0 2px 5px color-mix(in srgb,var(--tone) 7%,transparent)}.computos-stat.has-value b{color:color-mix(in srgb,var(--tone) 50%,#0a2e49)}.computos-stat.is-zero{background:color-mix(in srgb,var(--tone-bg) 72%,#fff);border-color:color-mix(in srgb,var(--tone) 14%,#fff);border-left-color:color-mix(in srgb,var(--tone) 34%,#fff)}.computos-stat.is-zero:before{display:none}.computos-stat.is-zero span{color:#748b99}.computos-stat.is-zero b{color:#7e909c}.computos-stat.is-total{min-height:82px}.computos-stat.is-total b{font-size:30px}
/* Motor 61.15: la ficha Cómputos reutiliza los mismos tonos del cuadrante, suavizados para consulta. */
.computos-stat.tone-m{--tone:#d28f8f;--tone-bg:#fff0f0}.computos-stat.tone-t{--tone:#7d9fbe;--tone-bg:#eef3f8}.computos-stat.tone-n{--tone:#8f8f8f;--tone-bg:#f1f1f1}.computos-stat.tone-d{--tone:#bcc5cb;--tone-bg:#fbfcfc}.computos-stat.tone-uni{--tone:#6f9e9b;--tone-bg:#f0f7f6}.computos-stat.tone-c{--tone:#a98d61;--tone-bg:#f6f1e8}.computos-stat.tone-total{--tone:#5e8196;--tone-bg:#eef4f7}
.computos-stat.tone-dc{--tone:#d28e8e;--tone-bg:#fff1f1}.computos-stat.tone-p{--tone:#c4a43b;--tone-bg:#fff9e5}.computos-stat.tone-v{--tone:#8eac36;--tone-bg:#f3f8df}.computos-stat.tone-b{--tone:#aa70b5;--tone-bg:#f8eefb}.computos-stat.tone-ap{--tone:#559dcc;--tone-bg:#edf7fd}.computos-stat.tone-pa{--tone:#58b6b6;--tone-bg:#ecfbfb}.computos-stat.tone-g{--tone:#5c9a52;--tone-bg:#edf7ea}
.computos-stat.tone-jv{--tone:#b8ad14;--tone-bg:#fffde5}.computos-stat.tone-hours{--tone:#7b8fbe;--tone-bg:#f1f3fa}.computos-stat.tone-hours-total{--tone:#647ba8;--tone-bg:#eef1f8}.computos-stat.tone-balance{--tone:#8b9552;--tone-bg:#f6f8ed}.computos-stat.tone-other{--tone:#82949e;--tone-bg:#f4f6f7}
@media(max-width:900px){.computos-group .computos-cards{grid-template-columns:repeat(3,minmax(120px,1fr))}.computos-tabs{top:68px}}
@media(max-width:650px){.computos-panel{width:100%;max-height:96vh;border-radius:15px}.computos-content{padding:10px}.computos-group .computos-cards{grid-template-columns:1fr 1fr;padding:8px;gap:7px}.computos-group-head{padding:9px 10px}.computos-group-head small{display:none}.computos-stat{min-height:71px;padding:9px 9px 8px}.computos-stat span{font-size:10.5px}.computos-stat b{font-size:24px}.computos-stat.is-total b{font-size:26px}}

/* Motor 61.22 · validación mensual, importación independiente y servicios especiales */
.schedule-validation-banner{margin:8px 0 12px;padding:12px 16px;border-radius:11px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;border:1px solid}.schedule-validation-banner b{font-size:14px;letter-spacing:.02em}.schedule-validation-banner span{font-size:12px}.schedule-validation-banner.pending{background:#fff3cd;border-color:#e7c75b;color:#684f00}.schedule-validation-banner.valid{background:#eaf7ef;border-color:#8bc6a0;color:#185c36}
.month-validation-state{display:flex!important;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:11px 13px;border-radius:10px}.month-validation-state.status-prep{background:#fff7df;border:1px solid #e8cc73}.month-validation-state.status-published{background:#eef8f2;border:1px solid #a8d3b8}.month-validation-state.status-closed{background:#f1f3f5;border:1px solid #ccd3d9}.month-validation-state>div{display:flex;flex-direction:column;gap:2px}.month-validation-state small{color:#617485}.btn.warning{background:#fff4d9;border-color:#e0bd58;color:#705400}
.simple-import-block-label{font-weight:800;color:#234f6e;margin:12px 0 8px;display:flex;align-items:baseline;gap:8px}.simple-import-block-label small{font-weight:500;color:#72899a}.simple-month-picker.is-disabled{opacity:.45;pointer-events:none}
.schedule-special-menu-cards{margin-bottom:14px}.service-menu-card{min-height:122px}.aux-contract-manager{border-top:1px solid #dce7ee;padding-top:15px;margin-top:4px}.aux-contract-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.aux-contract-head b{font-size:18px;color:#173f59}.aux-contract-head small{display:block;color:#6f8493;margin-top:2px}.aux-limit-pill{background:#edf7f7;color:#245d5d;border:1px solid #bddddd;padding:6px 10px;border-radius:999px;font-weight:800;white-space:nowrap}.aux-contract-query{margin:10px 0;padding:10px 12px;border:1px solid #d5e4ec;border-radius:10px;background:#f6fafc;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.aux-contract-query input{max-width:180px}
@media(max-width:760px){.schedule-validation-banner{padding:9px 10px;gap:4px}.schedule-validation-banner b{font-size:11px}.schedule-validation-banner span{font-size:9px}.month-validation-state{align-items:stretch}.month-validation-state form{display:flex;gap:5px;flex-wrap:wrap}.aux-contract-head{align-items:flex-start;flex-direction:column}.aux-limit-pill{font-size:11px}}

/* ===== Motor 61.23 · auxiliares visuales + Covadonga más legible ===== */
/* Resumen de auxiliares: calendario visible, periodos cerrados por defecto. */
.aux-summary-card{grid-template-columns:48px minmax(0,1fr)!important}
.aux-contract-calendar-panel{margin-top:10px;padding:10px 11px;border:1px solid #d8e5ec;border-radius:12px;background:#f9fcfe}
.aux-contract-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.aux-contract-calendar-head b{display:block;color:#173f59;font-size:14px}.aux-contract-calendar-head small{display:block;color:#718698;font-size:10px;margin-top:2px}
.aux-mini-year-grid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:6px}
.aux-mini-month{background:#fff;border:1px solid #d6e3ea;border-radius:8px;overflow:hidden}
.aux-mini-month h3{margin:0;padding:4px 6px;background:#edf5f9;border-bottom:1px solid #d6e3ea;text-align:center;color:#173f59;font-size:11px;line-height:1.1}
.aux-mini-weekdays,.aux-mini-days{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;padding:0 3px}.aux-mini-weekdays{padding-top:2px}
.aux-mini-weekdays b{height:13px;display:grid;place-items:center;font-size:7px;color:#61798a}.aux-mini-weekdays .sun{color:#c22b2b}
.aux-mini-days{padding-bottom:3px}
.aux-mini-days span{position:relative;min-height:20px;display:grid;place-items:center;border:1px solid #e0e8ed;border-radius:3px;background:#fff;color:#173f59;font-size:10px;font-weight:800;line-height:1}
.aux-mini-days span.empty{border-color:transparent;background:transparent}.aux-mini-days span.sunday:not(.contracted){color:#c22b2b;background:#fff7f7}
.aux-mini-days span.contracted{background:#dff2ee;border-color:#88c7bb;color:#123f55;font-weight:900}
.aux-mini-days span.holiday{box-shadow:inset 0 0 0 1px #e8b0b0}.aux-mini-days span i{position:absolute;right:1px;top:1px;width:9px;height:9px;border-radius:50%;display:grid;place-items:center;background:#cf2e2e;color:#fff;font-style:normal;font-size:5.5px;font-weight:900}
.aux-periods-details{margin-top:9px;border:1px solid #d9e5ed;border-radius:10px;background:#fff;overflow:hidden}.aux-periods-details>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;color:#214e6b;font-size:12px;font-weight:800;list-style:none}.aux-periods-details>summary::-webkit-details-marker{display:none}.aux-periods-details>summary:after{content:'▾';margin-left:auto;color:#56758b}.aux-periods-details[open]>summary:after{transform:rotate(180deg)}.aux-periods-details>summary b{font-size:10px;background:#edf5f9;border-radius:999px;padding:3px 7px}.aux-periods-details .aux-contract-cards{padding:0 9px 9px}

/* Calendario anual de Covadonga: más compacto pero con números mucho más claros. */
.schedule-year-calendar-modal.service-covadonga .schedule-year-calendar-scroll{padding:6px 8px 8px}
.schedule-year-calendar-modal.service-covadonga .schedule-year-calendar-grid{grid-template-columns:repeat(4,minmax(205px,1fr));gap:6px;max-width:1320px}
.schedule-year-calendar-modal.service-covadonga .schedule-year-month h3{padding:4px 7px;font-size:13px;font-weight:900;color:#143e59}
.schedule-year-calendar-modal.service-covadonga .schedule-year-weekdays{padding:1px 3px 0}
.schedule-year-calendar-modal.service-covadonga .schedule-year-weekdays b{height:14px;font-size:8.5px;font-weight:900;color:#577184}
.schedule-year-calendar-modal.service-covadonga .schedule-year-days{padding:0 3px 3px;gap:1px}
.schedule-year-calendar-modal.service-covadonga .schedule-year-day{min-height:27px;border-radius:4px;font-size:14px;font-weight:900;color:#123b56;border-color:#d1dde5;background:#fff}
.schedule-year-calendar-modal.service-covadonga .schedule-year-day.selected{background:#f2dfbd;border-color:#bd8d48;color:#123b56;box-shadow:inset 0 0 0 1px rgba(131,83,28,.08)}
.schedule-year-calendar-modal.service-covadonga .schedule-year-day.sunday:not(.selected){background:#fff7f7;border-color:#efd7d7;color:#bd2828}
.schedule-year-calendar-modal.service-covadonga .schedule-year-day.holiday:not(.selected){background:#ffeaea;border-color:#e9c4c4;color:#a92121}
.schedule-year-calendar-modal.service-covadonga .schedule-year-day.selected.holiday,.schedule-year-calendar-modal.service-covadonga .schedule-year-day.selected.sunday{color:#123b56}
.schedule-year-calendar-modal.service-covadonga .schedule-year-day em{width:14px;height:14px;font-size:8.5px;right:1px;top:1px}

@media(max-width:1100px){.aux-mini-year-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}}
@media(max-width:760px){.aux-mini-year-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}.aux-contract-calendar-head{align-items:flex-start}.aux-mini-days span{min-height:23px;font-size:11px}}
@media(max-width:430px){.aux-mini-year-grid{grid-template-columns:1fr 1fr;gap:4px}.aux-contract-calendar-panel{padding:7px}.aux-mini-month h3{font-size:10px}.aux-mini-days span{min-height:21px;font-size:10px}}


/* ===== Motor 61.24 · validación visible, calendarios legibles y estructura ODS ===== */
.schedule-primary-grid .schedule-grid thead .schedule-number-head.holiday.today-col,
.schedule-grid thead .schedule-number-head.holiday.today-col{background:#f28c28!important;color:#111!important;box-shadow:inset 2px 0 0 #0a65a6,inset -2px 0 0 #0a65a6!important;border-top:2px solid #0a65a6!important;border-bottom:2px solid #0a65a6!important}
.schedule-row-select-handle,.schedule-row-tools,.schedule-row-color-pop{display:none!important}
.month-validation-state{display:flex!important;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-radius:12px;border:1px solid #c8dbe7;background:#f8fbfd}
.month-validation-state.status-prep{border-color:#e5b85b;background:#fff8e8}.month-validation-state.status-published{border-color:#8bc79a;background:#effaf2}.month-validation-state.status-closed{border-color:#aebbc4;background:#f2f5f7}
.month-validation-state>div{display:flex;flex-direction:column;gap:3px}.month-validation-state>div b{font-size:18px}.month-validation-state>form{display:flex;gap:8px;flex-wrap:wrap}
.schedule-year-calendar-grid{gap:5px!important;max-width:1360px!important}.schedule-year-month h3{font-size:14px!important;padding:4px 7px!important}.schedule-year-weekdays{padding:2px 3px 1px!important;gap:1px!important}.schedule-year-weekdays b{font-size:10px!important;height:18px!important;font-weight:950!important;text-transform:lowercase!important}.schedule-year-days{gap:1px!important;padding:0 3px 3px!important}.schedule-year-day{min-height:27px!important;font-size:15px!important;font-weight:950!important}
.schedule-year-calendar-modal.service-covadonga .schedule-year-day.selected{background:#f2dfbd!important;border-color:#bd8d48!important;color:#123b56!important}.schedule-year-calendar-modal.service-covadonga .schedule-year-day.selected.holiday{background:#f2c58e!important;border-color:#d67c22!important;color:#5a2b00!important}.schedule-year-calendar-modal.service-covadonga .schedule-year-day.selected.holiday em{background:#b91c1c!important;color:#fff!important}
.aux-contract-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.aux-calendar-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.aux-calendar-head-actions .btn{min-height:32px;padding:5px 10px}.aux-mini-weekdays b{font-size:10px!important;font-weight:950!important;text-transform:lowercase!important}.aux-mini-days>*{font-size:14px!important;font-weight:900!important;min-height:25px!important}.aux-mini-month h3{font-size:13.5px!important;font-weight:950!important}
@media(max-width:900px){.schedule-year-weekdays b{font-size:9.5px!important}.schedule-year-day{font-size:14.5px!important}.aux-mini-weekdays b{font-size:9px!important}}

/* ===== Motor 61.25 · Jefatura móvil compacta + acciones de cuadrante simplificadas ===== */
@media (max-width:760px){
  /* En móvil el cuadrante queda para consulta y cambios puntuales. La gestión avanzada sigue en PC. */
  .schedule-desktop-only-action{display:none!important}
  body.schedule-admin-mobile-ui .schedule-mobile-quick-actions{justify-content:flex-start!important}
  body.schedule-admin-mobile-ui .schedule-mobile-quick-actions .btn:not(.schedule-desktop-only-action){
    min-height:38px!important;padding:7px 12px!important;font-size:12px!important;border-radius:10px!important
  }

  /* Panel Jefatura: dos columnas, sin descripciones largas y con zonas táctiles claras. */
  .hq-pagehead{margin:0 0 9px!important;min-height:0!important}
  .hq-pagehead h1{font-size:29px!important;line-height:1.05!important;display:flex!important;align-items:center!important;gap:7px!important}
  .hq-pagehead p{font-size:13px!important;line-height:1.15!important;margin:3px 0 0!important}
  .hq-command-icon{width:34px!important;height:34px!important;font-size:20px!important;margin-right:2px!important}
  .hq-clean-grid,.headquarters-grid.hq-clean-grid{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;margin:0 0 8px!important
  }
  .hq-clean-grid .module{
    min-width:0!important;min-height:78px!important;height:78px!important;
    padding:7px 5px!important;border-radius:12px!important;gap:4px!important;
    flex-direction:column!important;justify-content:center!important;align-items:center!important;text-align:center!important;
    box-shadow:0 1px 3px rgba(18,63,96,.04)!important
  }
  .hq-clean-grid .module>span{font-size:27px!important;line-height:1!important;margin:0!important}
  .hq-clean-grid .module>div{min-width:0!important;width:100%!important;align-items:center!important;justify-content:center!important}
  .hq-clean-grid .module b{font-size:11.6px!important;line-height:1.12!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .hq-clean-grid .module small{display:none!important}
  .hq-clean-grid .hq-schedule-module{background:#f7fbff!important;border-color:#a9cce5!important}
}
@media (max-width:410px){
  .hq-pagehead h1{font-size:26px!important}.hq-pagehead p{font-size:12px!important}
  .hq-clean-grid,.headquarters-grid.hq-clean-grid{gap:6px!important}
  .hq-clean-grid .module{height:72px!important;min-height:72px!important;padding:6px 4px!important}
  .hq-clean-grid .module>span{font-size:24px!important}.hq-clean-grid .module b{font-size:10.8px!important}
}


/* ===== Motor 61.26 · Jefatura móvil a pantalla completa + validación rápida segura ===== */
.schedule-pagehead .actions form.schedule-quick-validate-form{display:inline-flex;align-items:center;margin:0}.schedule-pagehead .actions .schedule-quick-validate-btn{white-space:nowrap}
@media (max-width:760px){
  .hq-clean-grid,.headquarters-grid.hq-clean-grid{
    align-content:stretch!important;
    grid-auto-rows:1fr!important;
    min-height:calc(100dvh - 250px)!important;
  }
  .hq-clean-grid .module{
    height:auto!important;
    min-height:0!important;
    padding:8px 6px!important;
  }
  body.schedule-admin-mobile-ui .schedule-mobile-quick-actions{gap:8px!important;align-items:stretch!important}
  body.schedule-admin-mobile-ui .schedule-mobile-quick-actions .schedule-quick-validate-form{display:inline-flex!important;margin:0!important}
  body.schedule-admin-mobile-ui .schedule-mobile-quick-actions .schedule-quick-validate-form .btn{
    min-height:38px!important;padding:7px 12px!important;font-size:12px!important;border-radius:10px!important
  }
}
@media (max-width:410px){
  .hq-clean-grid,.headquarters-grid.hq-clean-grid{min-height:calc(100dvh - 232px)!important}
}


/* ===== Motor 61.32 · SOLO domingos en calendarios PC y móvil ===== */
/* Cuadrante general y de Jefatura: domingo inequívoco y cierre visual de semana. */
.schedule-grid thead .schedule-weekday-head.sunday{
  background:#b4232f!important;color:#fff!important;font-weight:950!important;
  border-right:3px solid #7f1620!important;
}
.schedule-grid thead .schedule-number-head.sunday-col{
  background:#fff0f1!important;color:#a71f2a!important;font-weight:950!important;
  border-right:3px solid #7f1620!important;
}
.schedule-grid thead .schedule-number-head.sunday-col.holiday{
  background:#ffe1c2!important;color:#a71f2a!important;
}
.schedule-grid tbody td.sunday-col{
  border-right:3px solid #7f1620!important;
}
/* El día actual sigue siendo visible aunque coincida con domingo. */
.schedule-grid thead .schedule-weekday-head.sunday.today-col,
.schedule-grid thead .schedule-number-head.sunday-col.today-col{
  box-shadow:inset 2px 0 0 #1367a8,inset -2px 0 0 #1367a8!important;
}
/* Mi servicio: mismo criterio de domingo y final de semana. */
.my-service-weekdays .sunday{
  background:#b4232f!important;color:#fff!important;border-radius:5px 5px 0 0;
}
.my-service-cell.sunday{
  background:#fff7f7!important;border-right:3px solid #7f1620!important;
}
.my-service-cell.sunday .my-service-day-number{color:#b4232f!important}
.my-service-cell.sunday.today .my-service-day-number{background:#b4232f!important;color:#fff!important}
@media(max-width:760px){
  .schedule-grid thead .schedule-weekday-head.sunday,
  .schedule-grid thead .schedule-number-head.sunday-col,
  .schedule-grid tbody td.sunday-col{border-right-width:2.5px!important}
  .schedule-grid thead .schedule-weekday-head.sunday{font-weight:950!important}
  .my-service-cell.sunday{border-right-width:2.5px!important}
}


/* ===== Motor 61.35 · Restauración portada clásica + teletipo superior ===== */
.top-teletype{display:grid;grid-template-columns:210px 1fr 54px;align-items:center;gap:0;margin:0 0 14px;background:#fff;border:1px solid #d8e2ea;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(20,55,88,.05)}
.top-teletype-label{background:linear-gradient(90deg,#ff2c33,#e1121d);color:#fff;font-weight:900;letter-spacing:.02em;padding:10px 14px;display:flex;align-items:center;gap:8px;justify-content:center;min-height:42px}.top-teletype-label span{white-space:nowrap}.top-teletype-window{overflow:hidden;white-space:nowrap;position:relative;padding:0 12px;min-height:42px;display:flex;align-items:center}.top-teletype-track{display:inline-flex;width:max-content;animation:topTickerMove 34s linear infinite}.top-teletype:hover .top-teletype-track{animation-play-state:paused}.top-teletype-track a,.top-teletype-static{display:inline-block;text-decoration:none;color:#214a67;font-size:14px;padding-right:42px}.top-teletype-track a strong,.top-teletype-static strong{color:#083d62}.top-teletype-static.muted{color:#6d8394}.top-teletype-count{display:grid;place-items:center;align-self:stretch;text-decoration:none;background:#f3f7fb;color:#124a73;font-weight:900;font-size:22px;border-left:1px solid #d8e2ea}.top-teletype.empty .top-teletype-label{background:linear-gradient(90deg,#7b90a2,#6c8294)}
@keyframes topTickerMove{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (max-width:760px){.top-teletype{grid-template-columns:114px 1fr 36px;margin-bottom:10px;border-radius:11px}.top-teletype-label{padding:8px 6px;min-height:34px;font-size:10px;gap:5px}.top-teletype-window{min-height:34px;padding:0 8px}.top-teletype-track a,.top-teletype-static{font-size:11px;padding-right:26px}.top-teletype-count{font-size:16px}.dashboard-home .alerts.dashboard-alert-grid{margin-top:0}}


/* ===== Motor 61.37 · Portada clásica + teletipo integrado en banner ===== */
.welcome{flex-wrap:wrap!important}.welcome-copy,.weather-box{position:relative;z-index:1}.welcome-integrated-ticker{position:relative;z-index:1;flex:1 0 100%;overflow:hidden;min-height:34px;margin-top:8px;border-radius:10px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(4px)}.welcome-integrated-track{display:inline-flex;align-items:center;min-height:34px;width:max-content;animation:welcomeIntegratedTicker 34s linear infinite}.welcome:hover .welcome-integrated-track{animation-play-state:paused}.welcome-integrated-item{display:inline-flex;align-items:center;gap:11px;padding:0 42px 0 10px;min-height:34px;text-decoration:none;color:#fff;white-space:nowrap;font-size:13px}.welcome-integrated-item strong{font-size:14px;color:#fff}.welcome-integrated-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:linear-gradient(90deg,#ff2c33,#e1121d);font-weight:900;color:#fff;flex:0 0 auto}.welcome-integrated-emptyline{min-height:34px}.welcome-integrated-ticker.empty{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.10)}@keyframes welcomeIntegratedTicker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:760px){.welcome-integrated-ticker{min-height:30px;margin-top:6px;border-radius:9px}.welcome-integrated-track{min-height:30px}.welcome-integrated-item{gap:8px;padding:0 28px 0 8px;min-height:30px;font-size:11px}.welcome-integrated-item strong{font-size:12px}.welcome-integrated-badge{padding:4px 8px;font-size:10px}.welcome-integrated-emptyline{min-height:30px}}


/* ===== Motor 62 · Portada PC y móvil consolidada ===== */
.dashboard-v62{display:grid;gap:12px}.welcome-v62{display:flex;flex-wrap:wrap;gap:14px}.welcome-v62 .welcome-copy,.welcome-v62 .weather-box{position:relative;z-index:1}.welcome-integrated-ticker-v62{flex:1 0 100%;overflow:hidden;min-height:38px;border-radius:12px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(5px)}.welcome-integrated-track-v62{display:inline-flex;align-items:center;min-height:38px;width:max-content;animation:welcomeTicker62 34s linear infinite}.welcome-v62:hover .welcome-integrated-track-v62{animation-play-state:paused}.welcome-integrated-item-v62{display:inline-flex;align-items:center;gap:12px;padding:0 48px 0 10px;min-height:38px;text-decoration:none;color:#fff;white-space:nowrap;font-size:15px}.welcome-integrated-item-v62 strong{font-size:16px;color:#fff}.welcome-integrated-badge-v62{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:linear-gradient(90deg,#ff3a41,#e41520);font-weight:900;color:#fff;flex:0 0 auto}.welcome-integrated-emptyline-v62{min-height:38px}.welcome-integrated-ticker-v62.empty{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.10)}@keyframes welcomeTicker62{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.service-shortcuts-v62{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.service-shortcut-card-v62{display:flex;align-items:center;gap:12px;background:#f8fbfe;border:1px solid #cfe0eb;border-radius:15px;padding:14px 16px;text-decoration:none;color:#163a5e;min-height:78px;box-shadow:0 2px 8px rgba(16,50,83,.04)}button.service-shortcut-card-v62{width:100%;font:inherit;cursor:pointer}.service-shortcut-card-v62 .icon{width:48px;height:48px;border-radius:14px;background:#eef4fb;display:grid;place-items:center;font-size:26px;flex:0 0 auto}.service-shortcut-card-v62 b{display:block;font-size:16px}.service-shortcut-card-v62 small{display:block;margin-top:3px;color:#698091;font-size:13px}.service-shortcut-card-v62 .arrow{margin-left:auto;font-size:28px;color:#7894a9}.status-grid-v62{display:grid;grid-template-columns:1fr 1fr;gap:10px}.status-card-v62{display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:14px;border-radius:16px;padding:14px 16px;text-decoration:none;background:#fff;border:1px solid #dbe5ec;box-shadow:0 2px 8px rgba(16,50,83,.04)}.status-card-v62 .status-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#f1f7fb;font-size:26px}.status-card-v62 .status-text b{display:block;font-size:15px;color:#17395d}.status-card-v62 .status-text small{display:block;margin-top:3px;color:#667d8f}.status-card-v62 strong{font-size:46px;line-height:1;color:#17435f}.status-card-v62.tasks{background:#fff8eb;border-color:#efd6a3}.status-card-v62.tasks strong,.status-card-v62.tasks .status-text b{color:#915f08}.status-card-v62.operatives{background:#f3fbf6;border-color:#cae5d2}.status-card-v62.operatives strong,.status-card-v62.operatives .status-text b{color:#1d7642}.status-card-v62.operatives.live{background:#fff0f0;border-color:#f2c8c8}.status-card-v62.operatives.live strong,.status-card-v62.operatives.live .status-text b{color:#b62429}.status-line-v62{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:10px 14px;text-decoration:none;background:#f5faff;border:1px solid #cfe0ef;border-radius:14px;color:#16395e}.status-line-v62 .status-line-icon{font-size:26px}.status-line-v62 b{display:block;font-size:15px}.status-line-v62 small{display:block;color:#6c8495}.status-line-v62 strong{font-size:32px;line-height:1;color:#1f4e7b}.modules-head-v62{display:flex;justify-content:space-between;align-items:end}.modules-head-v62 h2{margin:0;color:#153c61}.modules-head-v62 p{margin:4px 0 0;color:#7a8e9d}.modules-v62{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.modules-v62 .module{min-height:96px}.modules-v62 .module b{font-size:16px}.modules-v62 .module small{font-size:12px;line-height:1.28}.modules-v62 .module span{font-size:2rem}.sidebar .brand img{width:88px;height:88px;object-fit:contain}.sidebar .brand b{font-size:18px;line-height:1.05}.sidebar .brand small{font-size:14px}.sidebar-quick-entry{margin:10px 0 14px;padding:0 0 4px}.sidebar-quick-title{font-size:13px;font-weight:800;color:#c8d8e8;text-transform:uppercase;letter-spacing:.03em;margin:0 0 8px 2px}.sidebar-quick-list{display:flex;flex-direction:column;gap:6px}.sidebar-quick-link{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;padding:9px 10px;border-radius:11px;background:rgba(255,255,255,.06);text-decoration:none;color:#fff;border:1px solid rgba(255,255,255,.08)}.sidebar-quick-link span{font-size:18px}.sidebar-quick-link b{font-size:15px;font-weight:700}.sidebar-quick-link em{font-style:normal;min-width:24px;height:24px;border-radius:999px;background:#2c6fcb;display:grid;place-items:center;font-size:12px;font-weight:800}.sidebar-quick-link:nth-child(2) em{background:#f2b937;color:#17324a}.sidebar-quick-link:nth-child(3) em{background:#90a4b8}.sidebar-quick-link:nth-child(4) em{background:#4caf50}.sidebar-quick-link:nth-child(5) em{background:#ef5350}.desktop-only{display:block}@media(min-width:761px){.desktop-secondary-link{display:none!important}.sidebar .navcap:first-of-type{margin-top:4px}}
@media(max-width:760px){.desktop-only{display:none!important}.dashboard-v62{gap:10px}.welcome-integrated-ticker-v62{min-height:34px}.welcome-integrated-track-v62{min-height:34px}.welcome-integrated-item-v62{font-size:13px;gap:8px;padding:0 32px 0 8px;min-height:34px}.welcome-integrated-item-v62 strong{font-size:14px}.welcome-integrated-badge-v62{padding:6px 10px;font-size:12px}.welcome-integrated-emptyline-v62{min-height:34px}.service-shortcuts-v62{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.service-shortcut-card-v62{padding:10px 8px;min-height:86px;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:6px}.service-shortcut-card-v62 .icon{width:42px;height:42px;font-size:23px}.service-shortcut-card-v62 b{font-size:14px}.service-shortcut-card-v62 small{font-size:11px;line-height:1.2}.service-shortcut-card-v62 .arrow{display:none}.status-grid-v62{grid-template-columns:1fr 1fr;gap:8px}.status-card-v62{grid-template-columns:1fr;justify-items:center;text-align:center;padding:12px 8px;gap:5px}.status-card-v62 .status-icon{width:44px;height:44px;font-size:24px}.status-card-v62 .status-text b{font-size:13px}.status-card-v62 .status-text small{font-size:11px;line-height:1.15}.status-card-v62 strong{font-size:30px}.status-line-v62{grid-template-columns:36px 1fr auto;padding:8px 10px;gap:10px}.status-line-v62 .status-line-icon{font-size:22px}.status-line-v62 b{font-size:13px;line-height:1.15}.status-line-v62 small{font-size:11px;line-height:1.15}.status-line-v62 strong{font-size:24px}.modules-head-v62 h2{font-size:17px}.modules-head-v62 p{font-size:12px}.modules-v62{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.modules-v62 .module{padding:10px 7px;min-height:126px;justify-content:flex-start;text-align:center;align-items:center;display:flex;flex-direction:column}.modules-v62 .module span{font-size:2rem;margin-bottom:6px}.modules-v62 .module div{display:flex;flex-direction:column;align-items:center}.modules-v62 .module b{font-size:12px;line-height:1.15}.modules-v62 .module small{display:none}.sidebar .brand img{width:54px;height:54px}.sidebar .brand b{font-size:16px}.sidebar .brand small{font-size:12px}}


/* ===== Motor 62.1 · Ajuste de equilibrio PC/móvil y módulo avisos ===== */
.service-shortcuts-v62{align-items:stretch}.service-shortcut-card-v62{min-height:66px;padding:10px 14px}.service-shortcut-card-v62 .icon{width:40px;height:40px;font-size:22px}.service-shortcut-card-v62 b{font-size:15px}.service-shortcut-card-v62 small{font-size:12px}.status-grid-v62{align-items:stretch}.status-card-v62{min-height:92px;padding:12px 14px}.status-card-v62 .status-icon{width:42px;height:42px;font-size:22px}.status-card-v62 .status-text b{font-size:14px}.status-card-v62 .status-text small{font-size:12px;line-height:1.2}.status-card-v62 strong{font-size:34px}.status-line-v62{min-height:58px;padding:8px 14px}.status-line-v62 .status-line-icon{font-size:24px}.modules-v62 .module{min-height:108px}.modules-v62 .module b{font-size:15px}.modules-v62 .module small{font-size:11.5px}.modules-v62 .module span{font-size:1.9rem}.modules-v62{grid-template-columns:repeat(3,minmax(0,1fr))}.welcome-v62{margin-bottom:0}
@media(max-width:760px){.service-shortcuts-v62{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.service-shortcut-card-v62{min-height:74px;padding:8px 6px;gap:4px}.service-shortcut-card-v62 .icon{width:36px;height:36px;font-size:20px}.service-shortcut-card-v62 b{font-size:12.5px;line-height:1.1}.service-shortcut-card-v62 small{font-size:10px;line-height:1.1}.status-grid-v62{grid-template-columns:1fr 1fr;gap:8px}.status-card-v62{min-height:108px;padding:10px 8px;gap:5px}.status-card-v62 .status-icon{width:38px;height:38px;font-size:21px}.status-card-v62 .status-text b{font-size:12.5px}.status-card-v62 .status-text small{font-size:10.5px}.status-card-v62 strong{font-size:28px}.status-line-v62{min-height:52px;padding:8px 10px}.status-line-v62 b{font-size:12.5px}.status-line-v62 small{font-size:10.5px}.status-line-v62 strong{font-size:22px}.modules-v62{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.modules-v62 .module{min-height:112px;padding:10px 6px}.modules-v62 .module span{font-size:1.8rem;margin-bottom:5px}.modules-v62 .module b{font-size:11.8px;line-height:1.12}.modules-v62 .module small{display:none}}


/* ===== Motor 62.2 · Avisos visibles en PC y compactación móvil ===== */
.notices-section-v62{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:12px;padding:10px 14px;border:1px solid #d7e4ee;border-radius:15px;background:#f8fbfe;text-decoration:none;color:#16395e;box-shadow:0 2px 8px rgba(16,50,83,.04)}.notices-icon-v62{width:42px;height:42px;border-radius:13px;background:#eef4fb;display:grid;place-items:center;font-size:24px}.notices-copy-v62 b{display:block;font-size:15px}.notices-copy-v62 small{display:block;margin-top:3px;color:#6a8294}.notices-section-v62 strong{font-size:32px;line-height:1;color:#1f4e7b}.service-shortcuts-v62{gap:8px}.service-shortcut-card-v62{min-height:60px;padding:9px 12px}.service-shortcut-card-v62 .icon{width:36px;height:36px;font-size:20px}.service-shortcut-card-v62 b{font-size:14px}.service-shortcut-card-v62 small{font-size:11px}.status-grid-v62{gap:8px}.status-card-v62{min-height:84px;padding:10px 12px}.status-card-v62 strong{font-size:30px}.status-card-v62 .status-icon{width:38px;height:38px;font-size:20px}.status-card-v62 .status-text b{font-size:13.5px}.status-card-v62 .status-text small{font-size:11px}.status-line-v62{min-height:54px;padding:7px 12px}.status-line-v62 b{font-size:14px}.status-line-v62 small{font-size:11px}.modules-v62{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.modules-v62 .module{min-height:104px;padding:12px 12px}.modules-v62 .module span{font-size:1.85rem}.modules-v62 .module b{font-size:14px}.modules-v62 .module small{font-size:11px}
@media (max-width:760px){.notices-section-v62{grid-template-columns:42px 1fr auto;gap:8px;padding:8px 10px;border-radius:12px}.notices-icon-v62{width:34px;height:34px;font-size:20px;border-radius:10px}.notices-copy-v62 b{font-size:12.5px;line-height:1.1}.notices-copy-v62 small{font-size:10px;line-height:1.1}.notices-section-v62 strong{font-size:22px}.service-shortcuts-v62{gap:6px}.service-shortcut-card-v62{min-height:64px;padding:7px 5px;border-radius:14px}.service-shortcut-card-v62 .icon{width:32px;height:32px;font-size:18px;border-radius:10px}.service-shortcut-card-v62 b{font-size:11.5px;line-height:1.05}.service-shortcut-card-v62 small{font-size:9.5px;line-height:1.05}.status-grid-v62{gap:6px}.status-card-v62{min-height:96px;padding:8px 6px;border-radius:14px}.status-card-v62 .status-icon{width:34px;height:34px;font-size:18px;border-radius:10px}.status-card-v62 .status-text b{font-size:11.5px;line-height:1.05}.status-card-v62 .status-text small{font-size:9.5px;line-height:1.08}.status-card-v62 strong{font-size:24px}.status-line-v62{min-height:46px;padding:7px 9px;border-radius:12px}.status-line-v62 .status-line-icon{font-size:20px}.status-line-v62 b{font-size:11.8px;line-height:1.08}.status-line-v62 small{font-size:9.5px;line-height:1.05}.status-line-v62 strong{font-size:20px}.modules-head-v62 h2{font-size:16px}.modules-head-v62 p{font-size:11.5px}.modules-v62{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.modules-v62 .module{min-height:92px;padding:8px 4px;border-radius:12px}.modules-v62 .module span{font-size:1.55rem;margin-bottom:4px}.modules-v62 .module b{font-size:10.8px;line-height:1.08}.modules-v62 .module small{display:none}}


/* ===== Motor 62.3 · Avisos integrados exactamente en el banner ===== */
.welcome-integrated-ticker-v62{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:42px;padding:4px 8px;background:rgba(70,137,200,.72);border:1px solid rgba(191,220,245,.55);border-radius:14px;overflow:hidden}.welcome-integrated-badge-v62{display:flex;align-items:center;justify-content:center;min-width:126px;height:34px;padding:0 16px;border-radius:10px;background:linear-gradient(90deg,#ff4039,#f3211d);color:#fff;text-decoration:none;font-weight:900;font-size:15px;letter-spacing:.02em;box-shadow:inset 0 1px 0 rgba(255,255,255,.2)}.welcome-integrated-marquee-v62{overflow:hidden;white-space:nowrap;min-width:0}.welcome-integrated-track-v62{display:inline-flex;align-items:center;width:max-content;animation:welcomeTicker623 34s linear infinite}.welcome-v62:hover .welcome-integrated-track-v62{animation-play-state:paused}.welcome-integrated-copy-v62{display:inline-block;color:#fff;text-decoration:none;font-size:17px;font-weight:600;padding-right:56px}.welcome-integrated-copy-v62 strong{font-weight:900;color:#fff}.welcome-integrated-count-v62{display:grid;place-items:center;min-width:34px;height:34px;padding:0 10px;border-radius:10px;background:rgba(29,88,143,.82);color:#fff;text-decoration:none;font-size:15px;font-weight:900}.welcome-integrated-count-v62.empty{opacity:0}.welcome-integrated-emptyline-v62{min-height:24px}.welcome-integrated-ticker-v62.empty{background:rgba(70,137,200,.35)}@keyframes welcomeTicker623{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.notices-section-v62{display:none!important}
@media (max-width:760px){.welcome-integrated-ticker-v62{gap:8px;min-height:36px;padding:3px 6px;border-radius:12px}.welcome-integrated-badge-v62{min-width:96px;height:28px;padding:0 10px;border-radius:8px;font-size:12px}.welcome-integrated-copy-v62{font-size:13px;padding-right:34px}.welcome-integrated-count-v62{min-width:28px;height:28px;padding:0 6px;border-radius:8px;font-size:12px}}


/* ===== Motor 62.4 · Banner de avisos robusto y portada móvil ajustada ===== */
.welcome-v62{display:grid;grid-template-columns:minmax(0,1fr) 250px;grid-template-areas:"copy weather" "ticker ticker";gap:12px;align-items:start}.welcome-v62 .welcome-copy{grid-area:copy}.welcome-v62 .weather-box{grid-area:weather}.welcome-v62 .welcome-integrated-ticker-v62{grid-area:ticker}.welcome-integrated-ticker-v62{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:44px;padding:5px 10px;background:linear-gradient(90deg,rgba(69,132,191,.92),rgba(85,154,220,.88));border:1px solid rgba(191,220,245,.58);border-radius:14px;overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}.welcome-integrated-badge-v62{display:flex!important;align-items:center;justify-content:center;min-width:128px;height:34px;padding:0 16px;border-radius:10px;background:linear-gradient(180deg,#ff4b41,#e91e1e);color:#fff;text-decoration:none;font-weight:900;font-size:15px;letter-spacing:.02em}.welcome-integrated-marquee-v62{overflow:hidden;white-space:nowrap;min-width:0}.welcome-integrated-track-v62{display:inline-flex!important;align-items:center;width:max-content;animation:welcomeTicker624 34s linear infinite}.welcome-integrated-copy-v62{display:inline-block!important;color:#fff;text-decoration:none;font-size:17px;font-weight:700;padding-right:60px;white-space:nowrap}.welcome-integrated-copy-v62 strong{font-weight:900}.welcome-integrated-count-v62{display:grid!important;place-items:center;min-width:36px;height:34px;padding:0 10px;border-radius:10px;background:rgba(29,88,143,.92);color:#fff;text-decoration:none;font-size:16px;font-weight:900}.welcome-integrated-count-v62.empty{visibility:hidden}.welcome-integrated-emptyline-v62{display:block;min-height:24px}.dashboard-home .notices-section-v62{display:none!important}@keyframes welcomeTicker624{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.service-shortcuts-v62{gap:8px}.service-shortcut-card-v62{min-height:58px;padding:8px 12px;border-radius:14px}.service-shortcut-card-v62 .icon{width:34px;height:34px;font-size:18px;border-radius:10px}.service-shortcut-card-v62 b{font-size:14px}.service-shortcut-card-v62 small{font-size:11px}.status-grid-v62{gap:8px}.status-card-v62{min-height:82px;padding:10px 12px;border-radius:14px}.status-card-v62 .status-icon{width:36px;height:36px;font-size:20px;border-radius:10px}.status-card-v62 .status-text b{font-size:13px}.status-card-v62 .status-text small{font-size:10.5px;line-height:1.12}.status-card-v62 strong{font-size:28px}.status-line-v62{min-height:50px;padding:7px 12px;border-radius:12px}.status-line-v62 .status-line-icon{font-size:22px}.status-line-v62 b{font-size:13px;line-height:1.08}.status-line-v62 small{font-size:10.5px;line-height:1.08}.status-line-v62 strong{font-size:22px}.modules-v62{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.modules-v62 .module{min-height:96px;padding:10px 8px;border-radius:12px}.modules-v62 .module span{font-size:1.65rem;margin-bottom:5px}.modules-v62 .module b{font-size:12.5px;line-height:1.08}.modules-v62 .module small{display:none}
@media (max-width:760px){.welcome-v62{grid-template-columns:1fr;grid-template-areas:"copy" "weather" "ticker";gap:8px}.welcome-integrated-ticker-v62{min-height:34px;padding:4px 6px;gap:6px;border-radius:11px}.welcome-integrated-badge-v62{min-width:92px;height:26px;padding:0 8px;border-radius:8px;font-size:11px}.welcome-integrated-copy-v62{font-size:12.5px;padding-right:30px}.welcome-integrated-count-v62{min-width:26px;height:26px;padding:0 6px;border-radius:8px;font-size:11px}.service-shortcuts-v62{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.service-shortcut-card-v62{min-height:58px;padding:7px 4px;gap:3px;border-radius:12px}.service-shortcut-card-v62 .icon{width:28px;height:28px;font-size:16px;border-radius:8px}.service-shortcut-card-v62 b{font-size:10.8px;line-height:1.05}.service-shortcut-card-v62 small{font-size:9px;line-height:1.02}.status-grid-v62{gap:6px}.status-card-v62{min-height:88px;padding:8px 5px;gap:4px;border-radius:12px}.status-card-v62 .status-icon{width:30px;height:30px;font-size:16px;border-radius:8px}.status-card-v62 .status-text b{font-size:10.8px;line-height:1.02}.status-card-v62 .status-text small{font-size:8.9px;line-height:1.02}.status-card-v62 strong{font-size:22px}.status-line-v62{min-height:42px;padding:6px 8px;gap:8px;border-radius:11px}.status-line-v62 .status-line-icon{font-size:18px}.status-line-v62 b{font-size:10.8px;line-height:1.02}.status-line-v62 small{font-size:8.9px;line-height:1.02}.status-line-v62 strong{font-size:18px}.modules-head-v62 h2{font-size:15px}.modules-head-v62 p{font-size:10.8px}.modules-v62{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.modules-v62 .module{min-height:84px;padding:7px 3px;border-radius:11px}.modules-v62 .module span{font-size:1.38rem;margin-bottom:4px}.modules-v62 .module b{font-size:10.2px;line-height:1.02}.modules-v62 .module small{display:none}}


/* ===== Motor 62.5 · Limpieza final avisos y compactación móvil ===== */
.dashboard-v62 .notices-section-v62{display:none !important}.dashboard-v62 .module[href$="/comunicaciones/"], .dashboard-v62 .module[href*="communications"]{display:none !important}.welcome-v62{display:grid !important;grid-template-columns:minmax(0,1fr) 250px !important;grid-template-areas:"copy weather" "ticker ticker" !important;gap:12px !important;align-items:start !important;overflow:visible !important}.welcome-v62 .welcome-copy{grid-area:copy}.welcome-v62 .weather-box{grid-area:weather}.welcome-v62 .welcome-integrated-ticker-v62{grid-area:ticker;display:grid !important;grid-template-columns:auto 1fr auto !important;align-items:center !important;gap:12px !important;min-height:42px !important;padding:5px 10px !important;margin-top:2px !important;background:linear-gradient(90deg,rgba(76,145,208,.96),rgba(61,129,194,.93)) !important;border:1px solid rgba(197,223,244,.72) !important;border-radius:14px !important;overflow:hidden !important;visibility:visible !important;opacity:1 !important}.welcome-v62 .welcome-integrated-ticker-v62.empty{background:linear-gradient(90deg,rgba(76,145,208,.82),rgba(61,129,194,.78)) !important}.welcome-v62 .welcome-integrated-badge-v62{display:flex !important;align-items:center !important;justify-content:center !important;min-width:130px !important;height:32px !important;padding:0 16px !important;border-radius:10px !important;background:linear-gradient(180deg,#ff4f45,#e91f1f) !important;color:#fff !important;text-decoration:none !important;font-weight:900 !important;font-size:15px !important}.welcome-v62 .welcome-integrated-marquee-v62{overflow:hidden !important;white-space:nowrap !important;min-width:0 !important;display:block !important}.welcome-v62 .welcome-integrated-track-v62{display:inline-flex !important;align-items:center !important;width:max-content !important;animation:welcomeTicker625 34s linear infinite !important}.welcome-v62 .welcome-integrated-copy-v62{display:inline-block !important;color:#fff !important;text-decoration:none !important;font-size:17px !important;font-weight:700 !important;padding-right:56px !important;white-space:nowrap !important}.welcome-v62 .welcome-integrated-copy-v62 strong{font-weight:900 !important}.welcome-v62 .welcome-integrated-count-v62{display:grid !important;place-items:center !important;min-width:34px !important;height:32px !important;padding:0 8px !important;border-radius:10px !important;background:rgba(31,84,132,.95) !important;color:#fff !important;text-decoration:none !important;font-size:15px !important;font-weight:900 !important}.welcome-v62 .welcome-integrated-count-v62.empty{visibility:hidden !important}.welcome-v62 .welcome-integrated-emptyline-v62{display:block !important;min-height:22px !important;width:100% !important}@keyframes welcomeTicker625{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (max-width:760px){.mobile-hide-comm-nav{display:none !important}.welcome-v62{grid-template-columns:1fr !important;grid-template-areas:"copy" "weather" "ticker" !important;gap:8px !important}.welcome-v62 .welcome-integrated-ticker-v62{min-height:34px !important;padding:4px 6px !important;gap:6px !important;border-radius:11px !important}.welcome-v62 .welcome-integrated-badge-v62{min-width:92px !important;height:24px !important;padding:0 8px !important;border-radius:8px !important;font-size:11px !important}.welcome-v62 .welcome-integrated-copy-v62{font-size:12px !important;padding-right:24px !important}.welcome-v62 .welcome-integrated-count-v62{min-width:24px !important;height:24px !important;padding:0 5px !important;border-radius:8px !important;font-size:11px !important}.service-shortcuts-v62{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:5px !important}.service-shortcut-card-v62{min-height:52px !important;padding:6px 3px !important;gap:2px !important;border-radius:11px !important}.service-shortcut-card-v62 .icon{width:26px !important;height:26px !important;font-size:15px !important;border-radius:7px !important}.service-shortcut-card-v62 b{font-size:10px !important;line-height:1.0 !important}.service-shortcut-card-v62 small{font-size:8.4px !important;line-height:1.0 !important}.status-grid-v62{gap:5px !important}.status-card-v62{min-height:82px !important;padding:7px 4px !important;gap:3px !important;border-radius:11px !important}.status-card-v62 .status-icon{width:28px !important;height:28px !important;font-size:15px !important;border-radius:7px !important}.status-card-v62 .status-text b{font-size:10.2px !important;line-height:1.0 !important}.status-card-v62 .status-text small{font-size:8.3px !important;line-height:1.0 !important}.status-card-v62 strong{font-size:20px !important}.status-line-v62{min-height:38px !important;padding:5px 7px !important;gap:6px !important;border-radius:10px !important}.status-line-v62 .status-line-icon{font-size:16px !important}.status-line-v62 b{font-size:10.3px !important;line-height:1.0 !important}.status-line-v62 small{font-size:8.3px !important;line-height:1.0 !important}.status-line-v62 strong{font-size:17px !important}.modules-head-v62 h2{font-size:14px !important}.modules-head-v62 p{font-size:10px !important}.modules-v62{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:5px !important}.modules-v62 .module{min-height:76px !important;padding:6px 2px !important;border-radius:10px !important}.modules-v62 .module span{font-size:1.2rem !important;margin-bottom:3px !important}.modules-v62 .module b{font-size:9.5px !important;line-height:1.0 !important}.modules-v62 .module small{display:none !important}}


/* ===== Motor 62.6 · Ajuste fino móvil y mejor integración PC ===== */
/* PC: integrar mejor el teletipo dentro del banner, sin hueco visible */
@media (min-width:761px){
  .dashboard-home .welcome-v62{padding:18px 24px 14px !important;gap:8px !important;border-radius:18px !important;margin-bottom:10px !important}
  .dashboard-home .welcome-v62 .weather-box{align-self:start !important}
  .dashboard-home .welcome-v62 .welcome-integrated-ticker-v62{margin-top:-2px !important;border-radius:12px !important;min-height:38px !important;padding:4px 10px !important;background:linear-gradient(90deg,rgba(73,138,198,.98),rgba(62,128,190,.96)) !important}
  .dashboard-home .welcome-v62 .welcome-integrated-badge-v62{height:30px !important;min-width:122px !important;font-size:14px !important}
  .dashboard-home .welcome-v62 .welcome-integrated-copy-v62{font-size:15px !important;padding-right:44px !important}
  .dashboard-home .welcome-v62 .welcome-integrated-count-v62{height:30px !important;min-width:30px !important;font-size:14px !important}
}
/* Móvil: bajar un poco más tareas/operativos y compactar módulos */
@media (max-width:760px){
  .dashboard-home .status-grid-v62{gap:4px !important;margin-bottom:6px !important}
  .dashboard-home .status-card-v62{min-height:72px !important;padding:6px 4px !important;gap:2px !important;border-radius:10px !important}
  .dashboard-home .status-card-v62 .status-icon{width:24px !important;height:24px !important;font-size:13px !important;margin-bottom:0 !important}
  .dashboard-home .status-card-v62 .status-text b{font-size:9.6px !important;line-height:0.98 !important}
  .dashboard-home .status-card-v62 .status-text small{font-size:8px !important;line-height:0.96 !important}
  .dashboard-home .status-card-v62 strong{font-size:18px !important;line-height:0.95 !important}
  .dashboard-home .status-line-v62{min-height:36px !important;padding:4px 7px !important;gap:6px !important;margin-bottom:6px !important}
  .dashboard-home .status-line-v62 .status-line-icon{font-size:15px !important}
  .dashboard-home .status-line-v62 b{font-size:9.9px !important;line-height:0.98 !important}
  .dashboard-home .status-line-v62 small{font-size:8px !important;line-height:0.95 !important}
  .dashboard-home .status-line-v62 strong{font-size:16px !important}
  .dashboard-home .modules-head-v62{margin-bottom:6px !important}
  .dashboard-home .modules-v62{gap:4px !important}
  .dashboard-home .modules-v62 .module{min-height:72px !important;padding:5px 2px !important}
  .dashboard-home .modules-v62 .module span{font-size:1.1rem !important;margin-bottom:2px !important}
  .dashboard-home .modules-v62 .module b{font-size:9.1px !important;line-height:0.98 !important}
}


/* ===== Motor 62.10 · Corrección PC sobre base 62.6 ===== */
/* La cabecera antigua imponía una altura fija en escritorio. Eso hacía que el teletipo
   quedara fuera de la caja y pisara Servicio/Cuadrante/Mi servicio. En 62.10 el banner
   crece de forma natural y contiene su propia fila de AVISOS. Móvil no se modifica. */
@media (min-width:761px){
  .dashboard-home .welcome-v62{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 250px !important;
    grid-template-areas:
      "copy weather"
      "ticker ticker" !important;
    align-items:start !important;
    gap:8px 16px !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:hidden !important;
    padding:14px 18px 12px !important;
    margin-bottom:8px !important;
    border-radius:18px !important;
  }
  .dashboard-home .welcome-v62 .welcome-copy{grid-area:copy !important;min-width:0 !important}
  .dashboard-home .welcome-v62 .weather-box{grid-area:weather !important;align-self:start !important}
  .dashboard-home .welcome-v62 .welcome-integrated-ticker-v62{
    grid-area:ticker !important;
    position:relative !important;
    inset:auto !important;
    width:100% !important;
    margin:0 !important;
    min-height:38px !important;
    height:38px !important;
    padding:4px 9px !important;
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:10px !important;
    overflow:hidden !important;
    border-radius:12px !important;
    background:linear-gradient(90deg,rgba(73,138,198,.98),rgba(62,128,190,.96)) !important;
    border:1px solid rgba(197,223,244,.72) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.12) !important;
    z-index:1 !important;
  }
  .dashboard-home .welcome-v62 .welcome-integrated-badge-v62{
    min-width:116px !important;height:28px !important;padding:0 13px !important;
    border-radius:9px !important;font-size:13px !important;
  }
  .dashboard-home .welcome-v62 .welcome-integrated-marquee-v62{min-width:0 !important;overflow:hidden !important;white-space:nowrap !important}
  .dashboard-home .welcome-v62 .welcome-integrated-track-v62{display:inline-flex !important;align-items:center !important;width:max-content !important}
  .dashboard-home .welcome-v62 .welcome-integrated-copy-v62{font-size:14px !important;line-height:1 !important;padding-right:42px !important}
  .dashboard-home .welcome-v62 .welcome-integrated-count-v62{min-width:28px !important;height:28px !important;font-size:13px !important;border-radius:9px !important}
  .dashboard-home .service-shortcuts-v62{margin-top:0 !important}
}


/* ===== Motor 62.11 · Banner móvil estilo opción 2 ===== */
@media (max-width:760px){
  .dashboard-home .welcome-v62{
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-areas:"copy" "weather" "ticker" !important;
    gap:10px !important;
    padding:14px 14px 12px !important;
    border-radius:18px !important;
    overflow:hidden !important;
    background:linear-gradient(120deg,rgba(8,55,97,.93),rgba(23,96,155,.80)) !important;
  }
  .dashboard-home .welcome-v62 .welcome-copy{grid-area:copy !important;}
  .dashboard-home .welcome-v62 .welcome-kicker{font-size:12px !important;letter-spacing:.08em !important;opacity:.9 !important;margin-bottom:2px !important;}
  .dashboard-home .welcome-v62 h1{font-size:28px !important;line-height:1.02 !important;margin:0 0 4px 0 !important;color:#fff !important;}
  .dashboard-home .welcome-v62 p{font-size:13px !important;line-height:1.1 !important;margin:0 !important;color:rgba(255,255,255,.92) !important;}
  .dashboard-home .welcome-turn-pill{display:inline-flex !important;align-self:flex-start !important;margin-top:8px !important;padding:7px 12px !important;font-size:11px !important;line-height:1 !important;border-radius:999px !important;background:rgba(255,255,255,.18) !important;border:1px solid rgba(255,255,255,.22) !important;color:#fff !important;}

  .dashboard-home .welcome-v62 .weather-box{
    grid-area:weather !important;
    width:100% !important;
    min-width:0 !important;max-width:none !important;
    padding:12px 14px !important;
    border-radius:16px !important;
    background:rgba(105,156,198,.28) !important;
    border:1px solid rgba(206,225,244,.28) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10) !important;
    display:grid !important;
    grid-template-columns:1fr auto !important;
    grid-template-areas:"main temp" "meta meta" !important;
    column-gap:14px !important;
    row-gap:5px !important;
    align-items:center !important;
  }
  .dashboard-home .welcome-v62 .weather-box b{display:none !important;}
  .dashboard-home .welcome-v62 .weather-box span{grid-area:main !important;font-size:18px !important;line-height:1.05 !important;font-weight:800 !important;white-space:normal !important;color:#fff !important;}
  .dashboard-home .welcome-v62 .weather-box small{grid-area:temp !important;font-size:14px !important;line-height:1.05 !important;color:#fff !important;white-space:nowrap !important;align-self:center !important;justify-self:end !important;}
  .dashboard-home .welcome-v62 .weather-box em{grid-area:meta !important;font-size:10.5px !important;line-height:1.15 !important;color:rgba(255,255,255,.88) !important;white-space:normal !important;overflow:visible !important;text-overflow:clip !important;}

  .dashboard-home .welcome-v62 .welcome-integrated-ticker-v62{
    grid-area:ticker !important;
    min-height:36px !important;
    padding:4px 6px !important;
    gap:8px !important;
    border-radius:12px !important;
    background:linear-gradient(90deg,rgba(11,59,103,.60),rgba(51,118,183,.72)) !important;
    border:1px solid rgba(190,220,243,.38) !important;
  }
  .dashboard-home .welcome-v62 .welcome-integrated-badge-v62{
    min-width:100px !important;
    height:28px !important;
    padding:0 10px !important;
    border-radius:10px !important;
    font-size:12px !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.20) !important;
  }
  .dashboard-home .welcome-v62 .welcome-integrated-marquee-v62{min-width:0 !important;overflow:hidden !important;white-space:nowrap !important;}
  .dashboard-home .welcome-v62 .welcome-integrated-track-v62{animation:welcomeTicker6211 34s linear infinite !important;}
  .dashboard-home .welcome-v62 .welcome-integrated-copy-v62{font-size:13px !important;line-height:1 !important;font-weight:700 !important;padding-right:30px !important;}
  .dashboard-home .welcome-v62 .welcome-integrated-count-v62{min-width:26px !important;height:28px !important;padding:0 6px !important;border-radius:9px !important;font-size:12px !important;background:rgba(24,74,121,.95) !important;}
  .dashboard-home .welcome-v62 .welcome-integrated-emptyline-v62{min-height:18px !important;}
}
@keyframes welcomeTicker6211{from{transform:translateX(0)}to{transform:translateX(-50%)}}


/* ===== Motor 62.12 · Banner móvil compacto + ajuste visual PC ===== */
@media (max-width:760px){
  .dashboard-home .welcome-v62{
    grid-template-columns:minmax(0,1fr) 108px !important;
    grid-template-areas:
      "copy weather"
      "ticker ticker" !important;
    gap:8px 10px !important;
    padding:12px 12px 10px !important;
    border-radius:17px !important;
    min-height:auto !important;
    align-items:start !important;
  }
  .dashboard-home .welcome-v62 .welcome-copy{min-width:0 !important;padding-right:0 !important}
  .dashboard-home .welcome-v62 .welcome-kicker{font-size:11px !important;letter-spacing:.06em !important;margin-bottom:1px !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important}
  .dashboard-home .welcome-v62 h1{font-size:23px !important;line-height:1.02 !important;margin:0 0 3px 0 !important}
  .dashboard-home .welcome-v62 p{font-size:11.5px !important;line-height:1.08 !important}
  .dashboard-home .welcome-turn-pill{margin-top:6px !important;padding:5px 9px !important;font-size:9.7px !important;line-height:1 !important;max-width:100% !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important}

  .dashboard-home .welcome-v62 .weather-box{
    min-width:0 !important;max-width:none !important;width:100% !important;
    padding:8px 8px !important;
    border-radius:14px !important;
    grid-template-columns:1fr !important;
    grid-template-areas:"main" "temp" !important;
    row-gap:3px !important;
    align-self:start !important;
    background:rgba(118,167,204,.22) !important;
  }
  .dashboard-home .welcome-v62 .weather-box span{font-size:11.8px !important;line-height:1.02 !important;text-align:center !important;white-space:normal !important}
  .dashboard-home .welcome-v62 .weather-box small{font-size:10px !important;line-height:1.02 !important;white-space:normal !important;justify-self:center !important;text-align:center !important}
  .dashboard-home .welcome-v62 .weather-box em{display:none !important}

  .dashboard-home .welcome-v62 .welcome-integrated-ticker-v62{min-height:32px !important;padding:3px 5px !important;gap:6px !important;border-radius:11px !important}
  .dashboard-home .welcome-v62 .welcome-integrated-badge-v62{min-width:90px !important;height:24px !important;padding:0 8px !important;font-size:11px !important;border-radius:8px !important}
  .dashboard-home .welcome-v62 .welcome-integrated-copy-v62{font-size:11.8px !important;padding-right:20px !important;line-height:1 !important}
  .dashboard-home .welcome-v62 .welcome-integrated-count-v62{min-width:23px !important;height:24px !important;font-size:11px !important;padding:0 5px !important;border-radius:8px !important}
  .dashboard-home .welcome-v62 .welcome-integrated-emptyline-v62{min-height:16px !important}

  .dashboard-home .service-shortcuts-v62{gap:5px !important}
  .dashboard-home .service-shortcut-card-v62{min-height:50px !important;padding:5px 3px !important;gap:2px !important}
  .dashboard-home .service-shortcut-card-v62 .icon{width:24px !important;height:24px !important;font-size:14px !important;margin-bottom:1px !important}
  .dashboard-home .service-shortcut-card-v62 b{font-size:9.6px !important;line-height:1 !important}
  .dashboard-home .service-shortcut-card-v62 small{font-size:8.1px !important;line-height:1 !important}

  .dashboard-home .status-grid-v62{gap:5px !important}
  .dashboard-home .status-card-v62{min-height:78px !important;padding:6px 4px !important;gap:3px !important}
  .dashboard-home .status-card-v62 .status-icon{width:26px !important;height:26px !important;font-size:14px !important}
  .dashboard-home .status-card-v62 .status-text b{font-size:9.8px !important;line-height:1 !important}
  .dashboard-home .status-card-v62 .status-text small{font-size:8.1px !important;line-height:1 !important}
  .dashboard-home .status-card-v62 strong{font-size:19px !important}

  .dashboard-home .status-line-v62{min-height:36px !important;padding:5px 7px !important;gap:6px !important}
  .dashboard-home .status-line-v62 .status-line-icon{font-size:15px !important}
  .dashboard-home .status-line-v62 b{font-size:10px !important;line-height:1 !important}
  .dashboard-home .status-line-v62 small{font-size:8.1px !important;line-height:1 !important}
  .dashboard-home .status-line-v62 strong{font-size:16px !important}

  .dashboard-home .modules-head-v62{margin-bottom:4px !important}
  .dashboard-home .modules-head-v62 h2{font-size:13.5px !important}
  .dashboard-home .modules-head-v62 p{font-size:9.7px !important}
  .dashboard-home .modules-v62{gap:5px !important}
  .dashboard-home .modules-v62 .module{min-height:73px !important;padding:5px 2px !important}
  .dashboard-home .modules-v62 .module span{font-size:1.16rem !important;margin-bottom:2px !important}
  .dashboard-home .modules-v62 .module b{font-size:9.1px !important;line-height:1 !important}
}

@media (min-width:761px){
  .dashboard-home .welcome-v62{
    background:
      radial-gradient(circle at 50% 40%, rgba(255,255,255,.09), rgba(255,255,255,0) 32%),
      linear-gradient(115deg, rgba(8,52,93,.94), rgba(15,84,135,.82)) !important;
  }
  .dashboard-home .welcome-v62 .welcome-copy{max-width:760px !important}
  .dashboard-home .welcome-v62 .welcome-copy::after{
    content:'Servicio a la ciudadanía';
    display:block;
    margin-top:8px;
    font-size:12px;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:rgba(255,255,255,.32);
    font-weight:700;
  }
}


/* ===== Motor 62.16 · SOLO PC: banner opción 3 sobre base móvil 62.12 intacta ===== */
.desktop-banner-only{display:none}
@media (min-width:761px){
  .desktop-banner-only{display:flex}
  .dashboard-home .welcome-v62{
    display:grid !important;
    grid-template-columns:minmax(0,1.45fr) minmax(280px,.9fr) minmax(235px,.62fr) !important;
    grid-template-areas:
      "copy service weather"
      "ticker ticker ticker" !important;
    gap:12px 16px !important;
    align-items:stretch !important;
    padding:18px 20px 14px !important;
    border-radius:20px !important;
    overflow:hidden !important;
    background:
      radial-gradient(circle at 50% 42%,rgba(255,255,255,.08),rgba(255,255,255,0) 31%),
      linear-gradient(115deg,rgba(7,52,94,.96),rgba(17,91,145,.84)) !important;
  }
  .dashboard-home .welcome-v62 .welcome-copy{grid-area:copy !important;min-width:0 !important;justify-content:flex-start !important;padding-top:2px !important}
  .dashboard-home .welcome-v62 .welcome-kicker{font-size:13px !important;letter-spacing:.10em !important;margin-bottom:3px !important}
  .dashboard-home .welcome-v62 h1{font-size:38px !important;line-height:1.02 !important;margin:0 0 7px 0 !important}
  .dashboard-home .welcome-v62 .welcome-copy p{font-size:18px !important;line-height:1.15 !important;margin:0 !important;color:rgba(255,255,255,.94) !important;font-weight:600 !important}
  .dashboard-home .desktop-clock-v6216{display:inline-flex !important;align-items:center !important;justify-content:center !important;margin-left:9px !important;padding:5px 11px !important;border-radius:10px !important;background:rgba(255,255,255,.11) !important;border:1px solid rgba(255,255,255,.19) !important;color:#fff !important;font-size:20px !important;font-weight:900 !important;letter-spacing:.06em !important;vertical-align:middle !important}
  .dashboard-home .welcome-v62 .welcome-turn-pill{display:none !important}

  .dashboard-home .desktop-service-box-v6216{
    grid-area:service !important;
    flex-direction:column !important;
    min-width:0 !important;
    padding:13px 15px !important;
    border-radius:18px !important;
    background:linear-gradient(180deg,rgba(91,151,204,.25),rgba(43,95,145,.23)) !important;
    border:1px solid rgba(202,226,245,.35) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
    color:#fff !important;
  }
  .dashboard-home .desktop-service-head-v6216{display:flex !important;align-items:center !important;gap:8px !important;font-size:15px !important;letter-spacing:.05em !important;text-transform:uppercase !important;border-bottom:1px solid rgba(255,255,255,.20) !important;padding-bottom:8px !important;margin-bottom:8px !important}
  .dashboard-home .desktop-service-shift-v6216{font-size:13px !important;color:rgba(255,255,255,.88) !important;margin-bottom:7px !important}
  .dashboard-home .desktop-service-people-v6216{display:flex !important;flex-direction:column !important;gap:4px !important;min-height:38px !important}
  .dashboard-home .desktop-service-people-v6216 span{font-size:18px !important;font-weight:800 !important;line-height:1.15 !important;color:#fff !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important}

  .dashboard-home .welcome-v62 .weather-box{
    grid-area:weather !important;
    min-width:0 !important;max-width:none !important;width:auto !important;
    padding:13px 14px !important;
    border-radius:18px !important;
    background:linear-gradient(180deg,rgba(91,151,204,.28),rgba(43,95,145,.23)) !important;
    border:1px solid rgba(202,226,245,.35) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
    align-self:stretch !important;
  }
  .dashboard-home .welcome-v62 .weather-box b{font-size:10px !important;letter-spacing:.07em !important}
  .dashboard-home .welcome-v62 .weather-box span{font-size:22px !important;line-height:1.08 !important}
  .dashboard-home .welcome-v62 .weather-box small{font-size:11px !important;line-height:1.2 !important}
  .dashboard-home .welcome-v62 .weather-box em{font-size:9px !important;line-height:1.15 !important}

  .dashboard-home .welcome-v62 .welcome-integrated-ticker-v62{
    grid-area:ticker !important;
    position:relative !important;
    left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;
    width:100% !important;
    margin:0 !important;
    min-height:40px !important;height:40px !important;
    padding:4px 8px !important;
    border-radius:13px !important;
    background:linear-gradient(90deg,rgba(41,130,206,.86),rgba(63,146,220,.80)) !important;
    border:1px solid rgba(201,227,247,.48) !important;
    display:grid !important;
    grid-template-columns:auto 1fr auto !important;
    align-items:center !important;
    gap:12px !important;
    overflow:hidden !important;
  }
  .dashboard-home .welcome-v62 .welcome-integrated-badge-v62{min-width:118px !important;height:30px !important;padding:0 14px !important;font-size:14px !important;border-radius:10px !important}
  .dashboard-home .welcome-v62 .welcome-integrated-copy-v62{font-size:15px !important;line-height:1 !important;padding-right:44px !important;font-weight:700 !important}
  .dashboard-home .welcome-v62 .welcome-integrated-count-v62{min-width:30px !important;height:30px !important;font-size:14px !important;border-radius:10px !important}
}


/* ===== Motor 62.17 · ajuste final PC + módulos móvil ===== */
@media (min-width:761px){
  /* Quitar el texto residual heredado de la 62.12 */
  .dashboard-home .welcome-v62 .welcome-copy::after{content:none !important;display:none !important}
  /* Hora claramente visible junto a la fecha */
  .dashboard-home .desktop-clock-v6216{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:82px !important;
    margin-left:10px !important;
    padding:6px 13px !important;
    border-radius:11px !important;
    background:rgba(7,39,70,.34) !important;
    border:1px solid rgba(255,255,255,.22) !important;
    color:#fff !important;
    font-size:21px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:.07em !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
  }
}

@media (max-width:760px){
  /* Mantener el móvil 62.12 y optimizar SOLO la zona de módulos */
  .dashboard-home .modules-head-v62{margin:2px 0 3px !important}
  .dashboard-home .modules-head-v62 h2{font-size:15px !important;line-height:1 !important;margin:0 !important}
  .dashboard-home .modules-head-v62 p{display:none !important}
  .dashboard-home .modules-v62{gap:4px !important}
  .dashboard-home .modules-v62 .module{
    min-height:64px !important;
    padding:4px 2px !important;
    border-radius:9px !important;
    justify-content:center !important;
  }
  .dashboard-home .modules-v62 .module span{
    font-size:1.05rem !important;
    margin-bottom:2px !important;
    line-height:1 !important;
  }
  .dashboard-home .modules-v62 .module b{
    font-size:10.2px !important;
    line-height:1.02 !important;
    font-weight:800 !important;
  }
  .dashboard-home .modules-v62 .module small{display:none !important}
}


/* ===== Motor 62.18 · reloj debajo de la fecha en PC ===== */
@media (min-width:761px){
  .dashboard-home .welcome-v62 .welcome-copy p{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:6px !important;
  }
  .dashboard-home .desktop-clock-v6216{
    margin-left:0 !important;
    margin-top:0 !important;
  }
}


/* ===== Motor 62.20 · cabecera simple de cuadrante SOLO PC ===== */
@media(min-width:761px){
  /* Cabecera limpia de dos filas, sin fila adicional de semanas. */
  .schedule-grid thead tr.schedule-weekdays > th{
    background:#f3f7fa!important;
    color:#35566b!important;
    border-top:2px solid #1b75bb!important;
    border-bottom:1px solid #c9d7e1!important;
  }
  .schedule-grid thead tr.schedule-daynumbers > th{
    background:#ffffff!important;
    color:#17384f!important;
    border-bottom:2px solid #1b75bb!important;
  }
  .schedule-grid thead .schedule-weekday-head{
    height:28px!important;
    line-height:28px!important;
    font-size:12px!important;
    font-weight:850!important;
    letter-spacing:.01em!important;
  }
  .schedule-grid thead .schedule-number-head{
    height:34px!important;
    line-height:34px!important;
    font-size:16px!important;
    font-weight:900!important;
  }

  /* Domingo: señal visual clara pero sin bloque rojo agresivo. */
  .schedule-grid thead .schedule-weekday-head.sunday{
    background:#fbeaec!important;
    color:#c42938!important;
    font-weight:900!important;
  }
  .schedule-grid thead .schedule-number-head.sunday-col{
    background:#fff6f7!important;
    color:#c42938!important;
    font-weight:900!important;
  }

  /* Cada domingo cierra visualmente la semana. */
  .schedule-grid thead .schedule-weekday-head.sunday,
  .schedule-grid thead .schedule-number-head.sunday-col,
  .schedule-grid tbody td.sunday-col{
    border-right:3px solid #78a9ca!important;
  }

  /* Mantener los festivos como señal operativa prioritaria. */
  .schedule-grid thead .schedule-number-head.holiday{
    background:#f3a13a!important;
    color:#111!important;
  }
  .schedule-grid thead .schedule-number-head.holiday.sunday-col{
    color:#111!important;
  }

  /* Día actual: azul discreto por encima del resto de señales. */
  .schedule-grid thead .schedule-weekday-head.today-col{
    background:#eaf4fb!important;
    color:#0c5d92!important;
    box-shadow:inset 2px 0 0 #0a65a6,inset -2px 0 0 #0a65a6!important;
  }
  .schedule-grid thead .schedule-number-head.today-col{
    background:#f5fbff!important;
    color:#0c5d92!important;
    box-shadow:inset 2px 0 0 #0a65a6,inset -2px 0 0 #0a65a6!important;
  }

  /* Esquina Agentes/Días: mismo lenguaje visual, sin sobrecargar. */
  .schedule-grid thead .schedule-month-label{
    background:linear-gradient(180deg,#f7fbfe 0%,#edf5fa 100%)!important;
    border-top:2px solid #1b75bb!important;
    border-bottom:2px solid #1b75bb!important;
    border-left:2px solid #1b75bb!important;
    color:#144d73!important;
  }

  /* Rejilla interior neutra; el separador de domingo marca la semana. */
  .schedule-grid thead th:not(.schedule-month-label){
    border-right-color:#d6e1e8!important;
  }
}


/* ===== Motor 62.21 · cierre semanal azul y enfoque rojo SOLO PC ===== */
@media(min-width:761px){
  /* Mantener visible y continua la linea azul que marca el final de cada semana. */
  .schedule-grid thead .schedule-weekday-head.sunday,
  .schedule-grid thead .schedule-number-head.sunday-col,
  .schedule-grid tbody td.sunday-col{
    border-right:3px solid #1b75bb!important;
  }

  .schedule-grid thead .schedule-weekday-head.sunday{
    background:#fbeaec!important;
    color:#c42938!important;
  }
  .schedule-grid thead .schedule-number-head.sunday-col{
    background:#fff6f7!important;
    color:#c42938!important;
  }

  /* Dia en enfoque / actual en rojo para distinguirlo del separador semanal azul. */
  .schedule-grid .today-col{
    position:relative!important;
    box-shadow:inset 2px 0 0 #cc2f2f,inset -2px 0 0 #cc2f2f!important;
  }
  .schedule-grid thead .schedule-weekday-head.today-col{
    background:#fdecec!important;
    color:#b32020!important;
    outline:2px solid #cc2f2f!important;
    outline-offset:-2px!important;
    z-index:6!important;
  }
  .schedule-grid thead .schedule-number-head.today-col{
    background:#fff1f1!important;
    color:#b32020!important;
    outline:2px solid #cc2f2f!important;
    outline-offset:-2px!important;
    z-index:6!important;
  }
  .schedule-grid tbody td.today-col{
    box-shadow:inset 2px 0 0 #cc2f2f,inset -2px 0 0 #cc2f2f!important;
  }

  /* Si el dia actual coincide con festivo, se conserva el naranja pero con enfoque rojo. */
  .schedule-grid thead .schedule-number-head.holiday.today-col{
    background:#f3a13a!important;
    color:#111!important;
    outline:2px solid #cc2f2f!important;
    outline-offset:-2px!important;
    box-shadow:none!important;
  }
}


/* ===== Motor 62.22 · aplicación forzada PC ===== */
@media(min-width:761px){
  /* Separador de fin de semana: continuo desde DOM hasta el final del cuadrante. */
  .schedule-grid thead .schedule-weekday-head.sunday,
  .schedule-grid thead .schedule-number-head.sunday-col,
  .schedule-grid tbody td.sunday-col{
    border-right:3px solid #1b75bb!important;
  }

  /* Día actual/enfoque: rojo, distinto del separador semanal azul. */
  .schedule-grid thead .schedule-weekday-head.today-col,
  .schedule-grid thead .schedule-number-head.today-col{
    outline:3px solid #d62828!important;
    outline-offset:-3px!important;
    color:#b51f1f!important;
    box-shadow:none!important;
    z-index:8!important;
  }
  .schedule-grid thead .schedule-weekday-head.today-col{background:#ffe9e9!important;}
  .schedule-grid thead .schedule-number-head.today-col{background:#fff4f4!important;}
  .schedule-grid tbody td.today-col{
    box-shadow:inset 2px 0 0 #d62828,inset -2px 0 0 #d62828!important;
  }
  .schedule-grid thead .schedule-number-head.holiday.today-col{
    background:#f3a13a!important;
    color:#111!important;
    outline:3px solid #d62828!important;
    outline-offset:-3px!important;
  }
}


/* ===== Motor 62.24 · separador semanal completo SOLO PC / Agentes ===== */
@media (min-width:761px){
  /* En Agentes, el cambio de semana se dibuja sobre el LUNES para evitar
     el conflicto de border-collapse que hacía desaparecer el borde del domingo
     en las dos filas de cabecera. Visualmente queda justo después del domingo. */
  .schedule-primary-grid .schedule-grid thead .week-start-pc,
  .schedule-primary-grid .schedule-grid tbody td.week-start-pc,
  .schedule-admin-grid-main .schedule-grid thead .week-start-pc,
  .schedule-admin-grid-main .schedule-grid tbody td.week-start-pc{
    border-left:3px solid #1b75bb !important;
  }

  /* No duplicar visualmente el separador: en Agentes manda el borde del lunes. */
  .schedule-primary-grid .schedule-grid thead .schedule-weekday-head.sunday,
  .schedule-primary-grid .schedule-grid thead .schedule-number-head.sunday-col,
  .schedule-primary-grid .schedule-grid tbody td.sunday-col,
  .schedule-admin-grid-main .schedule-grid thead .schedule-weekday-head.sunday,
  .schedule-admin-grid-main .schedule-grid thead .schedule-number-head.sunday-col,
  .schedule-admin-grid-main .schedule-grid tbody td.sunday-col{
    border-right:1px solid #d6e1e8 !important;
  }

  /* Domingo conserva el mismo aspecto que Auxiliares. */
  .schedule-primary-grid .schedule-grid thead .schedule-weekday-head.sunday,
  .schedule-admin-grid-main .schedule-grid thead .schedule-weekday-head.sunday{
    background:#fbeaec !important;
    color:#c42938 !important;
  }
  .schedule-primary-grid .schedule-grid thead .schedule-number-head.sunday-col,
  .schedule-admin-grid-main .schedule-grid thead .schedule-number-head.sunday-col{
    background:#fff6f7 !important;
    color:#c42938 !important;
  }

  /* Día actual/enfoque en rojo, claramente distinto del separador semanal azul. */
  .schedule-primary-grid .schedule-grid thead .schedule-weekday-head.today-col,
  .schedule-primary-grid .schedule-grid thead .schedule-number-head.today-col,
  .schedule-admin-grid-main .schedule-grid thead .schedule-weekday-head.today-col,
  .schedule-admin-grid-main .schedule-grid thead .schedule-number-head.today-col{
    outline:3px solid #d62828 !important;
    outline-offset:-3px !important;
    color:#b51f1f !important;
    box-shadow:none !important;
    z-index:8 !important;
  }
  .schedule-primary-grid .schedule-grid thead .schedule-weekday-head.today-col,
  .schedule-admin-grid-main .schedule-grid thead .schedule-weekday-head.today-col{
    background:#ffe9e9 !important;
  }
  .schedule-primary-grid .schedule-grid thead .schedule-number-head.today-col,
  .schedule-admin-grid-main .schedule-grid thead .schedule-number-head.today-col{
    background:#fff4f4 !important;
  }
  .schedule-primary-grid .schedule-grid tbody td.today-col,
  .schedule-admin-grid-main .schedule-grid tbody td.today-col{
    box-shadow:inset 2px 0 0 #d62828,inset -2px 0 0 #d62828 !important;
  }
  .schedule-primary-grid .schedule-grid thead .schedule-number-head.holiday.today-col,
  .schedule-admin-grid-main .schedule-grid thead .schedule-number-head.holiday.today-col{
    background:#f3a13a !important;
    color:#111 !important;
  }
}


/* ===== Motor 62.25 · separador semanal superpuesto SOLO cabecera Agentes PC ===== */
@media (min-width:761px){
  /* La tabla principal de Agentes usa una linea pintada encima de la celda dominical.
     Así no depende de la resolución de bordes de border-collapse. */
  .schedule-admin-grid-main .schedule-grid thead .schedule-weekday-head.sunday,
  .schedule-admin-grid-main .schedule-grid thead .schedule-number-head.sunday-col,
  .schedule-primary-grid .schedule-grid thead .schedule-weekday-head.sunday,
  .schedule-primary-grid .schedule-grid thead .schedule-number-head.sunday-col{
    position:relative!important;
    overflow:visible!important;
  }
  .schedule-admin-grid-main .schedule-grid thead .schedule-weekday-head.sunday::after,
  .schedule-admin-grid-main .schedule-grid thead .schedule-number-head.sunday-col::after,
  .schedule-primary-grid .schedule-grid thead .schedule-weekday-head.sunday::after,
  .schedule-primary-grid .schedule-grid thead .schedule-number-head.sunday-col::after{
    content:''!important;
    position:absolute!important;
    top:-1px!important;
    bottom:-1px!important;
    right:-2px!important;
    width:3px!important;
    background:#1b75bb!important;
    z-index:30!important;
    pointer-events:none!important;
  }
  /* Mantener el dia actual rojo sin confundirlo con el cierre semanal azul. */
  .schedule-admin-grid-main .schedule-grid thead .today-col,
  .schedule-primary-grid .schedule-grid thead .today-col{
    outline-color:#cf2e2e!important;
  }
}


/* ===== Motor 63.1 · icono Jefatura coherente SOLO PC ===== */
@media (min-width:761px){
  .dashboard-home .modules-v62 .module .hq-module-icon-v63{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:36px!important;
    height:36px!important;
    margin:0 0 5px 0!important;
    border-radius:10px!important;
    background:#eaf4fb!important;
    color:#1b75bb!important;
    font-size:25px!important;
    font-weight:900!important;
    line-height:1!important;
    box-shadow:inset 0 0 0 1px #cfe1ee!important;
  }
}


/* ===== Motor 63.2 · prácticas de tiro oficiales ===== */
@media(min-width:1181px){.schedule-special-menu-cards{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
.schedule-special-calendar-card.shooting{background:linear-gradient(180deg,#fffdf0,#fffaf0);border-color:#ead48b}.schedule-special-calendar-card.shooting .schedule-special-calendar-card-icon{background:#fff5b8}.shooting-pagehead{align-items:center}.shooting-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px}.shooting-toolbar form label{display:flex;align-items:center;gap:8px;font-weight:800}.shooting-toolbar select{min-height:40px;font-size:16px}.shooting-toolbar>div{display:flex;flex-direction:column;gap:2px;color:#587184}.shooting-toolbar>div b{color:#173f59}.shooting-table-wrap{overflow:auto}.shooting-table{width:100%;border-collapse:collapse;table-layout:fixed}.shooting-table th,.shooting-table td{border:1px solid #64717a;padding:6px;text-align:center}.shooting-table thead th{background:#fff200;color:#111;font-weight:900;font-size:14px}.shooting-table thead th:first-child{background:#f4f6f8}.shooting-table tbody th{text-align:left;background:#f7f9fa;color:#102f45;font-weight:850;width:34%}.shooting-table input{width:100%;box-sizing:border-box;border:1px solid #c9d6df;border-radius:6px;padding:8px 7px;text-align:center;font:inherit;font-weight:700;color:#153f59;background:#fff}.shooting-table input:focus{outline:2px solid #e0b500;border-color:#cda900}.shooting-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.shooting-add-person form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(240px,420px) auto;gap:10px;align-items:center}.shooting-add-person b,.shooting-add-person small{display:block}.shooting-add-person small{color:#6f8493;margin-top:2px}.shooting-add-person input{min-height:40px;border:1px solid #ccd9e2;border-radius:8px;padding:8px 10px;font:inherit}
@media(max-width:760px){.shooting-toolbar{align-items:stretch;flex-direction:column}.shooting-table{min-width:720px}.shooting-add-person form{grid-template-columns:1fr}.shooting-actions{display:grid;grid-template-columns:1fr}.shooting-actions .btn{width:100%}}


/* ===== Motor 63.4 · prácticas de tiro: filas manuales, PDF trimestral y menús ===== */
.shooting-pagehead{position:relative!important;padding-right:58px!important}
.shooting-close-btn{position:absolute;right:10px;top:4px;width:38px;height:38px;border:0;border-radius:50%;display:grid;place-items:center;text-decoration:none;background:#edf4f8;color:#567488;font-size:26px;line-height:1;font-weight:500;transition:.15s}
.shooting-close-btn:hover{background:#dcecf5;color:#174f73}
.shooting-agent-cell{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.shooting-agent-cell>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.shooting-row-remove{width:24px;height:24px;min-width:24px;border:1px solid #e3b6b6;border-radius:50%;background:#fff6f6;color:#ae2929;font-size:17px;line-height:20px;cursor:pointer;display:grid;place-items:center;padding:0}
.shooting-row-remove:hover{background:#fde4e4;border-color:#d88181}
.shooting-inline-add{display:flex;align-items:end;gap:8px;padding-top:12px;margin-top:10px;border-top:1px solid #e1e8ed}
.shooting-inline-add label{display:flex;flex-direction:column;gap:5px;min-width:310px;font-weight:850;color:#173f59}
.shooting-inline-add input{min-height:40px;border:1px solid #ccd9e2;border-radius:8px;padding:8px 10px;font:inherit;background:#fff}
.shooting-pdf-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px}
.shooting-pdf-panel>div{display:flex;flex-direction:column;gap:2px}
.shooting-pdf-panel>div>b{font-size:16px;color:#173f59}.shooting-pdf-panel>div>small{color:#6e8494}
.shooting-pdf-panel form{display:flex;align-items:center;gap:8px}.shooting-pdf-panel select{min-height:40px;border:1px solid #ccd9e2;border-radius:8px;padding:7px 10px;font:inherit;background:#fff;color:#173f59;font-weight:750}

@media(min-width:1000px){
  .schedule-special-menu-cards{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
  .schedule-special-menu-cards .service-menu-card{grid-template-columns:48px minmax(0,1fr)!important;grid-template-rows:auto auto!important;align-content:start!important;align-items:center!important;gap:10px 12px!important;min-height:188px!important;padding:14px!important}
  .schedule-special-menu-cards .service-menu-card.auxiliary{align-content:center!important}
  .schedule-special-menu-cards .schedule-special-calendar-card-copy{min-width:0!important}
  .schedule-special-menu-cards .schedule-special-calendar-card-copy>b{font-size:14px!important;line-height:1.15!important}
  .schedule-special-menu-cards .schedule-special-calendar-card-copy>small{font-size:10px!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important}
  .schedule-special-menu-cards .schedule-special-calendar-card-actions{grid-column:1/-1!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(115px,.72fr)!important;gap:7px!important;min-width:0!important;align-self:end!important}
  .schedule-special-menu-cards .schedule-special-calendar-card-actions .btn{min-width:0!important;white-space:normal!important;line-height:1.15!important;min-height:42px!important}
}
@media(max-width:760px){
  .shooting-inline-add{align-items:stretch;flex-direction:column}.shooting-inline-add label{min-width:0;width:100%}
  .shooting-pdf-panel{align-items:stretch;flex-direction:column}.shooting-pdf-panel form{display:grid;grid-template-columns:1fr}.shooting-pdf-panel .btn{width:100%}
}

/* ===== Motor 63.5 · posición manual + minicalendario de servicio para tiro ===== */
.shooting-inline-add-v635{display:grid!important;grid-template-columns:minmax(260px,1.15fr) minmax(280px,1fr) auto!important;align-items:end!important}
.shooting-inline-add-v635 label{min-width:0!important}
.shooting-inline-add-v635 select{min-height:40px;border:1px solid #ccd9e2;border-radius:8px;padding:8px 10px;font:inherit;background:#fff;color:#173f59;font-weight:750;width:100%;box-sizing:border-box}
.shooting-date-input{cursor:pointer!important;padding-right:28px!important;background-image:linear-gradient(45deg,transparent 50%,#2d78a7 50%),linear-gradient(135deg,#2d78a7 50%,transparent 50%)!important;background-position:calc(100% - 15px) 50%,calc(100% - 10px) 50%!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important}
.shooting-calendar-popover{position:fixed;z-index:6000;box-sizing:border-box;padding:12px;border:1px solid #b9d2e2;border-radius:14px;background:#fff;box-shadow:0 16px 38px rgba(13,55,81,.24);color:#153f59}
.shooting-calendar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid #e2ebf0}
.shooting-calendar-head>div{display:flex;flex-direction:column;gap:2px;min-width:0}.shooting-calendar-head small{font-size:9px;text-transform:uppercase;letter-spacing:.04em;color:#6c8595;font-weight:850}.shooting-calendar-head b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.shooting-calendar-head>button{width:28px;height:28px;border:0;border-radius:50%;background:#edf4f8;color:#567488;font-size:20px;line-height:1;cursor:pointer}.shooting-calendar-head>button:hover{background:#dcecf5}
.shooting-calendar-nav{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:6px;margin:9px 0 7px}.shooting-calendar-nav strong{text-align:center;font-size:14px}.shooting-calendar-nav button{height:30px;border:1px solid #c9dae5;border-radius:8px;background:#f8fbfd;color:#174f73;font-size:22px;line-height:1;cursor:pointer}.shooting-calendar-nav button:disabled{opacity:.28;cursor:default}
.shooting-calendar-filter{display:flex;align-items:center;gap:6px;margin:0 0 8px;font-size:10px;color:#577185}.shooting-calendar-filter input{margin:0}
.shooting-calendar-weekdays,.shooting-calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.shooting-calendar-weekdays{margin-bottom:3px}.shooting-calendar-weekdays b{font-size:8.5px;text-align:center;color:#587487;font-weight:900;padding:2px 0}.shooting-calendar-weekdays .sun{color:#c72f38}
.shooting-calendar-empty{height:42px}.shooting-calendar-day{position:relative;min-width:0;height:42px;border:1px solid #d8e3ea;border-radius:7px;background:#fbfdfe;color:#173f59;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:3px;padding:3px;transition:.08s}.shooting-calendar-day:hover{transform:translateY(-1px);border-color:#66a5cb;box-shadow:0 2px 5px rgba(20,70,100,.12)}.shooting-calendar-day b{font-size:13px;line-height:1}.shooting-calendar-day small{font-size:8px;font-weight:950;background:rgba(255,255,255,.72);border-radius:4px;padding:2px 3px;line-height:1}.shooting-calendar-day i{position:absolute;right:2px;top:2px;width:10px;height:10px;border-radius:50%;display:grid;place-items:center;background:#d73333;color:#fff;font-style:normal;font-size:6px;font-weight:900}.shooting-calendar-day.sunday b{color:#c72f38}.shooting-calendar-day.holiday{box-shadow:inset 0 0 0 1px #e8b0b0}.shooting-calendar-day.today{outline:2px solid #cf2e2e;outline-offset:-2px}.shooting-calendar-day.selected{outline:3px solid #e1ad00;outline-offset:-3px}.shooting-calendar-day.filtered{opacity:.20;pointer-events:none;filter:grayscale(.55)}
.shooting-calendar-day.shoot-code-m{background:#ffd7d7}.shooting-calendar-day.shoot-code-t{background:#b4c7dc}.shooting-calendar-day.shoot-code-n{background:#b2b2b2}.shooting-calendar-day.shoot-code-c{background:#D8C7A7}.shooting-calendar-day.shoot-code-d{background:#fff}.shooting-calendar-day.shoot-code-dc{background:#ffa6a6}.shooting-calendar-day.shoot-code-v{background:#bbe33d}.shooting-calendar-day.shoot-code-va{background:#76ff03}.shooting-calendar-day.shoot-code-ap{background:#63bbee}.shooting-calendar-day.shoot-code-b{background:#dc85e9}.shooting-calendar-day.shoot-code-p{background:#ffde59}.shooting-calendar-day.shoot-code-g{background:#18a303}.shooting-calendar-day.shoot-code-pa{background:#18ffff}.shooting-calendar-day.shoot-code-jv{background:#ffff00}
.shooting-calendar-legend{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px;padding-top:7px;border-top:1px solid #e5edf2;font-size:8.5px;color:#60798a}.shooting-calendar-legend span{display:flex;align-items:center;gap:3px}.shooting-calendar-legend i{width:10px;height:10px;border:1px solid #c6d2da;border-radius:3px;display:inline-block}.shooting-calendar-legend i.code-m{background:#ffd7d7!important}.shooting-calendar-legend i.code-t{background:#b4c7dc!important}.shooting-calendar-legend i.code-n{background:#b2b2b2!important}.shooting-calendar-legend i.code-c{background:#D8C7A7!important}.shooting-calendar-legend i.code-d{background:#fff!important}.shooting-calendar-legend i.code-v{background:#bbe33d!important}
.shooting-calendar-status{margin-top:8px;padding-top:7px;border-top:1px solid #e5edf2}.shooting-calendar-status>small{display:block;margin-bottom:5px;font-size:9px;color:#687f90}.shooting-calendar-status>div{display:flex;gap:5px;flex-wrap:wrap}.shooting-calendar-status button{border:1px solid #cbdbe5;border-radius:999px;background:#f8fbfd;color:#204c68;padding:5px 9px;font-size:9px;font-weight:800;cursor:pointer}.shooting-calendar-status button:hover{background:#eaf4fa}
@media(max-width:760px){.shooting-inline-add-v635{grid-template-columns:1fr!important}.shooting-calendar-popover{left:8px!important;right:8px!important;width:auto!important;max-height:80vh;overflow:auto}.shooting-calendar-day{height:39px}.shooting-calendar-empty{height:39px}}

/* ===== Motor 63.6 · hora + preparación PDF + firma de Jefatura ===== */
.shooting-slot{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:6px;align-items:center}
.shooting-slot .shooting-date-input{min-width:0}
.shooting-slot .shooting-time-input{min-width:0;padding:8px 5px!important;background:#fff!important;cursor:pointer}
.shooting-slot .shooting-time-input::-webkit-calendar-picker-indicator{cursor:pointer}
.shooting-pdf-panel-v636{display:block!important;margin-top:12px!important;padding:16px!important}
.shooting-pdf-intro{display:flex!important;flex-direction:column!important;gap:3px!important;margin-bottom:12px!important}
.shooting-pdf-intro>b{font-size:17px!important;color:#173f59!important}
.shooting-pdf-intro>small{font-size:11px!important;line-height:1.35!important;color:#6e8494!important}
.shooting-pdf-form-v636{display:grid!important;grid-template-columns:minmax(180px,.75fr) minmax(220px,1fr) minmax(240px,1.15fr)!important;gap:10px 12px!important;align-items:end!important}
.shooting-pdf-form-v636 label{display:flex!important;flex-direction:column!important;gap:5px!important;min-width:0!important;color:#173f59!important;font-weight:850!important;font-size:11px!important}
.shooting-pdf-form-v636 label>span{font-size:10px!important;text-transform:uppercase!important;letter-spacing:.035em!important;color:#557287!important}
.shooting-pdf-form-v636 select,.shooting-pdf-form-v636 input,.shooting-pdf-form-v636 textarea{width:100%!important;box-sizing:border-box!important;border:1px solid #cbd9e2!important;border-radius:8px!important;background:#fff!important;color:#173f59!important;font:inherit!important;padding:9px 10px!important}
.shooting-pdf-form-v636 select,.shooting-pdf-form-v636 input{min-height:41px!important}
.shooting-pdf-form-v636 textarea{resize:vertical!important;min-height:92px!important;line-height:1.4!important}
.shooting-pdf-instructions{grid-column:1/-1!important}
.shooting-pdf-signature-note{grid-column:1/3!important;display:flex!important;flex-direction:column!important;gap:2px!important;align-self:center!important;padding:9px 11px!important;border:1px solid #d7e4ec!important;border-radius:9px!important;background:#f6fafc!important;color:#315a73!important}
.shooting-pdf-signature-note b{font-size:11px!important}.shooting-pdf-signature-note small{font-size:9.5px!important;line-height:1.3!important;color:#6b8190!important}
.shooting-pdf-submit{grid-column:3!important;display:flex!important;justify-content:flex-end!important;align-items:center!important;height:100%!important}
.shooting-pdf-submit .btn{min-width:170px!important;min-height:42px!important}
@media(max-width:900px){
  .shooting-slot{grid-template-columns:1fr!important}.shooting-slot .shooting-time-input{min-height:34px!important}
  .shooting-pdf-form-v636{grid-template-columns:1fr!important}
  .shooting-pdf-instructions,.shooting-pdf-signature-note,.shooting-pdf-submit{grid-column:1!important}
  .shooting-pdf-submit .btn{width:100%!important}
}


/* ===== Motor 63.7 · información persistente prácticas de tiro ===== */
.shooting-pdf-submit-v637{display:flex!important;gap:8px!important;justify-content:flex-end!important;flex-wrap:wrap!important}
.shooting-pdf-form-v637 .shooting-pdf-instructions textarea{min-height:105px!important}
@media(max-width:760px){.shooting-pdf-submit-v637{display:grid!important;grid-template-columns:1fr!important}.shooting-pdf-submit-v637 .btn{width:100%!important}}


/* ===== Motor 63.8 · menú lateral móvil cerrable y siempre por encima ===== */
.sidebar-mobile-close,.sidebar-mobile-backdrop{display:none}
@media(max-width:760px){
  body.menu-open{overflow:hidden!important;touch-action:none}
  .sidebar{
    display:block!important;
    position:fixed!important;
    left:0!important;top:0!important;bottom:0!important;
    width:min(300px,86vw)!important;
    height:100dvh!important;
    max-height:100dvh!important;
    z-index:20001!important;
    transform:translateX(-102%)!important;
    visibility:hidden!important;
    transition:transform .18s ease,visibility 0s linear .18s!important;
    box-shadow:12px 0 32px rgba(2,24,42,.34)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.menu-open .sidebar{
    transform:translateX(0)!important;
    visibility:visible!important;
    transition:transform .18s ease,visibility 0s!important;
  }
  .sidebar-mobile-backdrop{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    z-index:20000!important;
    border:0!important;
    padding:0!important;
    margin:0!important;
    background:rgba(6,25,40,.46)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .18s ease,visibility 0s linear .18s!important;
  }
  body.menu-open .sidebar-mobile-backdrop{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transition:opacity .18s ease,visibility 0s!important;
  }
  .sidebar-mobile-close{
    display:grid!important;
    place-items:center!important;
    position:absolute!important;
    right:10px!important;
    top:10px!important;
    width:38px!important;
    height:38px!important;
    z-index:3!important;
    border:1px solid rgba(255,255,255,.25)!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.12)!important;
    color:#fff!important;
    font:400 30px/1 Arial,sans-serif!important;
    cursor:pointer!important;
  }
  .sidebar-mobile-close:active{background:rgba(255,255,255,.22)!important}
  .sidebar .brand{padding-right:42px!important}
  /* El menú debe ganar siempre a nombres/cabeceras sticky del cuadrante. */
  body.menu-open .schedule-grid .sticky-name,
  body.menu-open .schedule-grid thead th,
  body.menu-open .schedule-pc-toolbar,
  body.menu-open .schedule-mobile-savebar{
    z-index:1!important;
  }
}


/* ===== Motor 63.9 · módulo Vehículos con cuatro submenús ===== */
.vehicle-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:12px}
.vehicle-menu-card{display:grid;grid-template-columns:58px minmax(0,1fr) 28px;gap:14px;align-items:center;min-height:132px;padding:18px;border:1px solid #cfdde7;border-radius:16px;background:#fff;text-decoration:none;color:#17384f;box-shadow:0 3px 12px rgba(20,67,95,.05);transition:.15s}
.vehicle-menu-card:hover{transform:translateY(-1px);border-color:#8cb9d7;box-shadow:0 6px 18px rgba(20,67,95,.10)}
.vehicle-menu-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:14px;background:#edf6fb;font-size:29px}
.vehicle-menu-card h2{margin:0 0 5px;font-size:18px;color:#153f5b}
.vehicle-menu-card p{margin:0;color:#6d8393;font-size:12px;line-height:1.35}
.vehicle-menu-arrow{font-size:30px;color:#6d9bb8;text-align:right}
.vehicle-section-ready{display:flex;gap:18px;align-items:center;padding:26px;min-height:130px}
.vehicle-section-bigicon{width:70px;height:70px;min-width:70px;border-radius:18px;background:#edf6fb;display:grid;place-items:center;font-size:38px}
.vehicle-section-ready h2{margin:0 0 5px;color:#153f5b}.vehicle-section-ready p{margin:0;color:#6d8393}
@media(max-width:760px){
 .vehicle-menu-grid{grid-template-columns:1fr;gap:8px;margin-top:8px}
 .vehicle-menu-card{grid-template-columns:45px minmax(0,1fr) 20px;gap:10px;min-height:86px;padding:11px;border-radius:12px}
 .vehicle-menu-icon{width:42px;height:42px;border-radius:11px;font-size:23px}
 .vehicle-menu-card h2{font-size:14px;margin-bottom:2px}.vehicle-menu-card p{font-size:9.5px}.vehicle-menu-arrow{font-size:23px}
 .vehicle-section-ready{padding:15px;gap:12px}.vehicle-section-bigicon{width:50px;height:50px;min-width:50px;font-size:27px;border-radius:13px}
}


/* ===== Motor 63.10 · módulos pendientes de Jefatura ===== */
.hq-pending-module{position:relative!important}
.hq-pending-count{margin-left:auto;min-width:34px;height:34px;padding:0 8px;border-radius:999px;display:grid;place-items:center;background:#eef4f8;color:#174b6b;font-size:18px;font-weight:900;line-height:1}
.hq-pending-module.reports{border-color:#b8d7ea;background:#f7fbfe}
.hq-pending-module.allegations{border-color:#dfcfaa;background:#fffdf8}
@media(max-width:900px){.hq-pending-count{position:absolute;right:8px;top:8px;min-width:25px;height:25px;font-size:12px}}


/* ===== Motor 64.0 · flujo Jefatura / tareas ===== */
.task-form-shell{position:relative;max-width:1120px;margin:auto}.task-form-close{position:absolute;right:14px;top:12px;z-index:3;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;text-decoration:none;background:#edf4f8;color:#264e68;font-size:27px;font-weight:700}.task-form-close:hover{background:#dcebf4}.task64-form{display:grid;gap:16px}.task64-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.task64-grid label,.task64-notes{display:flex;flex-direction:column;gap:5px}.task64-grid label>span,.task64-notes>span{font-weight:850;color:#35566b;font-size:12px}.task64-form input,.task64-form select,.task64-form textarea{width:100%;box-sizing:border-box;border:1px solid #c9d8e2;border-radius:9px;padding:9px 10px;background:#fff}.task64-specific{padding:12px;border:1px solid #d7e4ec;border-radius:11px;background:#f8fbfd}.task64-specific h3{margin:0 0 9px;color:#1b4b68}.task64-optional{border:1px dashed #c8d8e2;border-radius:10px;padding:9px 11px}.task64-optional summary{cursor:pointer;font-weight:850;color:#41657b}.task64-other-options{display:contents}.task64-check{flex-direction:row!important;align-items:center!important}.task64-check input{width:auto!important}.hq64-head{align-items:flex-end}.hq64-tabs{display:flex;gap:7px;flex-wrap:wrap}.hq64-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:12px}.hq64-kpis>div{background:#fff;border:1px solid #d6e2e9;border-radius:11px;padding:11px 13px;display:flex;align-items:center;justify-content:space-between}.hq64-kpis small{font-weight:800;color:#607b8d}.hq64-kpis b{font-size:24px;color:#174e70}.hq64-kpis .ready{border-color:#e7ba6d;background:#fffaf0}.hq64-section{margin-bottom:12px}.hq64-task{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 3px;border-top:1px solid #e7eef2}.hq64-task:first-of-type{border-top:0}.hq64-task h3{margin:4px 0;font-size:15px;color:#183f59}.hq64-task p{margin:2px 0;font-size:12px;color:#587386}.hq64-task .badge{display:inline-flex;padding:3px 7px;border-radius:999px;background:#eaf3f8;color:#2b627f;font-size:9px;font-weight:900}.hq64-task .badge.ready{background:#dff3e6;color:#176b3d}.hq64-task.review{grid-template-columns:minmax(260px,.8fr) minmax(500px,1.2fr);align-items:start;background:#fcfefc}.hq64-close-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.hq64-close-form label{display:flex;flex-direction:column;gap:3px;font-size:10px;font-weight:850;color:#496b7e}.hq64-close-form label.wide{grid-column:1/-1}.hq64-close-form input,.hq64-close-form select{border:1px solid #cbd9e2;border-radius:7px;padding:7px 8px;background:#fff}.hq64-close-form .actions{grid-column:1/-1}.hq64-table{overflow:auto}.hq64-table table{min-width:1050px}.hq64-table th{white-space:nowrap}
@media(max-width:760px){.task64-grid{grid-template-columns:1fr}.task-form-shell{padding-top:46px}.task-form-close{top:8px}.hq64-kpis{grid-template-columns:1fr}.hq64-task,.hq64-task.review{grid-template-columns:1fr}.hq64-close-form{grid-template-columns:1fr}.hq64-tabs{width:100%}.hq64-tabs .btn{flex:1}.hq64-table{font-size:10px}}

.hq64-return-form{margin-top:8px;display:flex;justify-content:flex-end}

/* ===== Motor 64.1 · históricos Jefatura separados ===== */
.hq64-subfilters{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0 12px}
.hq64-history-head{align-items:flex-start!important;gap:12px}.hq64-history-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.hq64-import-form{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.hq64-import-form input[type=file]{max-width:270px;border:1px solid #cddbe4;border-radius:8px;background:#fff;padding:6px;font-size:11px}.hq64-history-section .hq64-table{margin-top:8px}
@media(max-width:760px){.hq64-history-actions,.hq64-import-form{width:100%;justify-content:stretch}.hq64-history-actions .btn,.hq64-import-form .btn{flex:1}.hq64-import-form input[type=file]{width:100%;max-width:none}.hq64-subfilters .btn{flex:1;min-width:110px}}


/* ===== Motor 64.2 · visor simple de peticiones / alegaciones ===== */
.hq-simple-head{align-items:flex-end}.hq-simple-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 10px}.hq-simple-card{padding:12px}.hq-simple-search{display:flex;gap:7px;align-items:center;margin-bottom:10px}.hq-simple-search input{flex:1;min-width:240px;border:1px solid #c8d7e1;border-radius:9px;padding:10px 12px;font-size:13px;background:#fff}.hq-simple-table{overflow:auto;border:1px solid #cbd9e2;border-radius:9px}.hq-simple-table table{width:100%;min-width:1120px;border-collapse:collapse;background:#fff;font-size:11px}.hq-simple-table th{background:#f0b22f;color:#111;font-weight:900;text-align:center;padding:8px 6px;border:1px solid #7c8790;white-space:nowrap}.hq-simple-table td{padding:7px 7px;border:1px solid #aab4bb;vertical-align:middle}.hq-simple-table tbody tr:nth-child(odd){background:#f5fbf1}.hq-simple-state{display:inline-flex;padding:3px 7px;border-radius:999px;background:#fff2bf;color:#7a5900;font-size:9px;font-weight:900}.hq-simple-state.done{background:#ddf3e4;color:#1b6d40}.hq-simple-history{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:10px;color:#607b8d;font-size:10px}.hq-simple-history form{display:flex;gap:6px;align-items:center}.hq-simple-history input[type=file]{max-width:260px}.task64-form select[multiple]{min-height:150px;padding:6px}.task64-form label small{color:#718899;font-size:9px}
@media(max-width:760px){.hq-simple-search{display:grid;grid-template-columns:1fr auto}.hq-simple-search input{grid-column:1/-1;min-width:0}.hq-simple-tabs .btn{flex:1}.hq-simple-history{align-items:stretch}.hq-simple-history form{width:100%;display:grid;grid-template-columns:1fr auto}.hq-simple-history input[type=file]{max-width:none;width:100%}}


/* ===== Motor 64.3 · Jefatura simple e interactiva ===== */
.hq-simple-search select{border:1px solid #c8d7e1;border-radius:9px;padding:10px 12px;background:#fff;font-weight:800;color:#244b64}
.hq-row td{transition:background .12s}.hq-row-pendiente td{background:#fff9dd!important}.hq-row-validado td{background:#eaf8ee!important}.hq-row-rechazado td{background:#fdecec!important}
.hq-validation-light{display:inline-flex;align-items:center;justify-content:center;min-width:76px;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:900}.hq-validation-light.pendiente{background:#ffe89b;color:#735400}.hq-validation-light.validado{background:#ccefd7;color:#17623a}.hq-validation-light.rechazado{background:#ffd1d1;color:#9b2020}
.hq-review-alert{display:block;margin:5px 0;color:#a66400;font-size:9px}.hq-agent-result{display:block;font-weight:850;color:#244d66}.hq-simple-table td small{display:block;margin-top:3px;color:#657d8d}.btn.tiny{padding:3px 6px!important;min-height:0!important;font-size:9px!important;margin-top:4px}.hq-row-edit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.hq-row-edit label{display:flex;flex-direction:column;gap:4px;font-weight:850;color:#496a7d;font-size:11px}.hq-row-edit input,.hq-row-edit select,.hq-row-edit textarea{border:1px solid #c8d7e1;border-radius:8px;padding:8px;background:#fff}.hq-row-edit .wide{grid-column:1/-1}.task-agent-response{display:grid;gap:9px;margin-top:14px;padding-top:12px;border-top:1px solid #dce6ec}.task-agent-response label{display:grid;gap:5px}.task-agent-response textarea,.task-agent-response input{width:100%;box-sizing:border-box;border:1px solid #c8d7e1;border-radius:8px;padding:8px}
@media(max-width:760px){.hq-simple-search{grid-template-columns:1fr 1fr}.hq-simple-search select{grid-column:1/-1}.hq-row-edit{grid-template-columns:1fr}.hq-row-edit .wide{grid-column:1}}


/* ===== Motor 64.4 · tareas compactas, destinatarios y validación ===== */
.task644-shell{max-width:1050px!important}.task644-head{margin-bottom:8px!important}.task644-head h1{margin-bottom:2px!important}.task644-form{gap:11px!important}
.task644-main-grid{display:grid;grid-template-columns:1.05fr 1.35fr .8fr .9fr;gap:9px}.task644-main-grid label,.task644-target-row label,.task644-data-grid label{display:flex;flex-direction:column;gap:4px}.task644-main-grid label>span,.task644-target-row label>span,.task644-data-grid label>span,.task644-recipient-box>.field-title{font-size:10.5px;font-weight:900;color:#35566b}.task644-form input,.task644-form select,.task644-form textarea{padding:8px 9px!important;min-height:38px}.task644-form textarea{min-height:76px}.task644-target-row{display:grid;grid-template-columns:1.5fr 1fr;gap:9px}.task644-recipient-box{display:flex;flex-direction:column;gap:4px}.task644-multi{position:relative}.task644-multi>summary{list-style:none;border:1px solid #c9d8e2;border-radius:9px;background:#fff;min-height:38px;padding:8px 34px 8px 10px;display:flex;align-items:center;font-weight:750;color:#234b64;cursor:pointer;position:relative}.task644-multi>summary::-webkit-details-marker{display:none}.task644-multi>summary:after{content:'⌄';position:absolute;right:11px;top:7px;font-size:18px;color:#58758a}.task644-multi-menu{position:absolute;z-index:50;left:0;right:0;top:calc(100% + 4px);max-height:260px;overflow:auto;border:1px solid #bcd0dd;border-radius:10px;background:#fff;padding:5px;box-shadow:0 12px 28px rgba(20,54,76,.18)}.task644-multi-menu label{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:7px 8px;border-radius:7px;cursor:pointer}.task644-multi-menu label:hover{background:#eef6fb}.task644-multi-menu input{width:auto!important;min-height:0!important}.task644-multi-menu small{font-size:9px;color:#7890a0}.task644-target-row>label small,.task644-recipient-box>small,.task644-main-grid small{font-size:9px;color:#6e8595}.task644-specific{padding:9px 10px!important}.task644-specific h3{font-size:14px;margin-bottom:7px!important}.task644-data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.task644-title-required span:after{content:' · obligatorio';font-size:8px;color:#b54545}.due-warning-title{color:#9b6200!important}.due-warning-item{background:#fff9e8}.due-warning-item:hover{background:#fff3ca}
.hq644-validation-modal{width:min(760px,94vw)!important;max-width:760px!important;padding:0!important;overflow:hidden!important;border-radius:16px!important}.hq644-validation-modal>.modal-x{top:12px!important;right:12px!important}.hq644-modal-head{padding:20px 22px 14px;background:linear-gradient(180deg,#f7fbfd,#edf5fa);border-bottom:1px solid #d7e3ea}.hq644-modal-head>span{font-size:9px;font-weight:900;letter-spacing:.08em;color:#4b7187}.hq644-modal-head h2{margin:4px 42px 4px 0;font-size:22px;color:#153f5b}.hq644-modal-head p{margin:0;color:#607b8d;font-size:12px}.hq644-row-edit{display:block!important}.hq644-status{padding:12px 22px;background:#fff8df;border-bottom:1px solid #f0dfad}.hq644-status label{display:grid;grid-template-columns:170px 1fr;align-items:center;gap:12px;font-size:12px!important}.hq644-fields{padding:16px 22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.hq644-fields label{display:flex;flex-direction:column;gap:4px;font-size:10.5px;font-weight:900;color:#496a7d}.hq644-fields input,.hq644-fields select,.hq644-fields textarea,.hq644-status select{width:100%;box-sizing:border-box;border:1px solid #c8d7e1;border-radius:8px;padding:9px;background:#fff;font:inherit}.hq644-fields .wide{grid-column:1/-1}.hq644-file{padding:9px;background:#f7fafc;border-radius:9px;border:1px dashed #c9d8e2}.hq644-file small{font-size:9px;font-weight:500;color:#718899}.hq644-modal-actions{padding:12px 22px 18px;display:flex;justify-content:flex-end;gap:7px;border-top:1px solid #e1e9ee;background:#fbfcfd}
@media(max-width:760px){.task644-main-grid,.task644-target-row,.task644-data-grid{grid-template-columns:1fr}.task644-multi-menu{position:fixed;left:14px;right:14px;top:20vh;max-height:60vh}.hq644-status label{grid-template-columns:1fr}.hq644-fields{grid-template-columns:1fr}.hq644-fields .wide{grid-column:1}.hq644-modal-actions{justify-content:stretch}.hq644-modal-actions .btn{flex:1}}


/* ===== Motor 64.5 · calendario de otras tareas y registros de Jefatura ===== */
.task645-scheduler-box{display:flex!important;flex-direction:column!important;gap:6px!important;min-width:0!important}.task645-scheduler-box>select{display:none!important}.task645-calendar-open{justify-content:center!important}.task645-schedule-summary{display:flex;gap:5px;flex-wrap:wrap;min-height:22px;color:#607b8d;font-size:11px}.task645-schedule-summary span{padding:3px 7px;border:1px solid #cfdee8;border-radius:999px;background:#f6fafc;color:#244d67}.task645-calendar-modal{width:min(620px,94vw)!important;padding:18px!important;border:0!important;border-radius:18px!important}.task645-cal-head{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:end;margin-bottom:12px}.task645-cal-head small{font-weight:900;color:#6d8798;letter-spacing:.05em}.task645-cal-head h2{margin:2px 0;font-size:22px;color:#153e59}.task645-cal-head p{margin:0;color:#6d8392;font-size:11px}.task645-month-nav{display:flex;align-items:center;gap:7px}.task645-month-nav b{min-width:130px;text-align:center;color:#174c6d}.task645-weekdays,.task645-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.task645-weekdays{margin-bottom:4px}.task645-weekdays b{text-align:center;font-size:9px;text-transform:uppercase;color:#678294}.task645-weekdays b:last-child{color:#c42b37}.task645-days .empty{min-height:42px}.task645-day{min-height:46px;border:1px solid #d5e2ea;border-radius:8px;background:#fff;color:#183f58;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer}.task645-day strong{font-size:13px}.task645-day small{font-size:8px;font-weight:900;color:#13679a}.task645-day.sunday{background:#fff6f7;color:#c42938}.task645-day.selected{border:2px solid #1982c4;background:#eaf6fd}.task645-day-editor{margin-top:10px;padding:10px;border:1px solid #d6e3eb;border-radius:10px;background:#f8fbfd;display:flex;justify-content:space-between;gap:12px;align-items:center}.task645-day-editor[hidden]{display:none!important}.task645-day-editor small{display:block;color:#718797;margin-top:2px}.task645-shifts{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.task645-shifts button{border:1px solid #cbdbe5;border-radius:7px;background:#fff;color:#274e68;padding:7px 9px;font-weight:800;cursor:pointer}.task645-shifts button.active{background:#1679b9;color:#fff;border-color:#1679b9}.task645-cal-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:12px}
.hq645-registry{overflow:auto;border:1px solid #d8e4eb;border-radius:13px;background:#fff}.hq645-registry table{width:100%;border-collapse:separate;border-spacing:0;min-width:1100px;font-size:12px}.hq645-registry thead th{position:sticky;top:0;z-index:2;background:#edf5fa!important;color:#31566f!important;text-transform:none!important;letter-spacing:0!important;font-size:10px!important;font-weight:900!important;padding:10px 9px!important;border-bottom:1px solid #cfdee7!important;text-align:left!important}.hq645-registry tbody td{padding:10px 9px!important;border-bottom:1px solid #e4ebf0!important;vertical-align:top!important;background:#fff!important;color:#173d55!important}.hq645-registry tbody tr:hover td{background:#f7fbfd!important}.hq645-registry tbody tr.hq-row-validado td{background:#f2fbf5!important}.hq645-registry tbody tr.hq-row-rechazado td{background:#fff5f5!important}.hq645-registry tbody tr.hq-row-pendiente td{background:#fffcf1!important}.hq645-registry .hq-validation-light{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900}.hq645-registry .hq-validation-light.validado{background:#d9f3e2;color:#18723b}.hq645-registry .hq-validation-light.rechazado{background:#fde1e1;color:#a72424}.hq645-registry .hq-validation-light.pendiente{background:#fff0bd;color:#8a6500}.hq645-registry .btn.tiny{display:inline-flex;margin-top:4px}.hq-simple-card{padding:13px!important}.hq-simple-search{margin-bottom:10px!important}
@media(max-width:760px){.task645-cal-head{grid-template-columns:1fr}.task645-month-nav{justify-content:space-between}.task645-day-editor{align-items:stretch;flex-direction:column}.task645-shifts{justify-content:flex-start}.task645-day{min-height:42px}.hq645-registry table{min-width:980px}}


/* ===== Motor 64.6 · calendario moderno + registros Jefatura tipo ficha ===== */
.task645-calendar-modal{width:min(720px,95vw)!important;padding:20px!important;border-radius:20px!important;background:#fff!important;box-shadow:0 24px 70px rgba(9,46,72,.28)!important}
.task645-cal-head{align-items:center!important;margin-bottom:14px!important}.task645-cal-head h2{font-size:26px!important;margin:2px 0 4px!important}.task645-cal-head p{font-size:13px!important;max-width:480px!important}.task645-month-nav{padding:5px!important;border:1px solid #d8e6ef!important;border-radius:12px!important;background:#f6fafc!important}.task645-month-nav .btn{width:36px!important;height:36px!important;padding:0!important;border-radius:9px!important;font-size:20px!important}.task645-month-nav b{font-size:15px!important;min-width:150px!important}.task645-weekdays{gap:6px!important;padding:0 2px!important}.task645-weekdays b{font-size:10px!important;padding:5px 0!important}.task645-days{gap:6px!important}.task645-days .empty{min-height:52px!important}.task645-day{min-height:54px!important;border:1px solid #d3e1ea!important;border-radius:10px!important;background:#f9fcfe!important;box-shadow:0 1px 2px rgba(14,62,91,.04)!important;transition:.12s!important}.task645-day:hover{border-color:#77b7db!important;transform:translateY(-1px)!important;background:#f1f9fd!important}.task645-day strong{font-size:15px!important}.task645-day small{font-size:9px!important}.task645-day.sunday{background:#fff5f6!important;border-color:#efd0d4!important}.task645-day.selected{background:#dff1fc!important;border:2px solid #187db9!important;box-shadow:0 0 0 2px rgba(24,125,185,.09)!important}.task645-day-editor{padding:12px 14px!important;border-radius:12px!important;background:#f4f9fc!important}.task645-shifts button{padding:8px 11px!important;border-radius:9px!important}.task645-cal-actions{padding-top:4px!important}
.hq646-head{margin-bottom:8px!important}.hq646-tabs{display:flex;gap:7px;margin-bottom:10px}.hq646-shell{padding:14px!important}.hq646-search{display:grid;grid-template-columns:150px minmax(260px,1fr) auto auto;gap:8px;align-items:center;margin-bottom:8px}.hq646-search select,.hq646-search input{min-height:42px;border:1px solid #cbdbe5;border-radius:10px;padding:8px 10px;background:#fff;color:#173e58;font:inherit}.hq646-summary{font-size:10px;color:#678091;display:flex;align-items:center;gap:7px;margin:5px 2px 12px}.hq646-summary>b{font-size:13px;color:#154c6e}.hq646-summary .dot{width:9px;height:9px;border-radius:50%;display:inline-block}.hq646-summary .dot.pending{background:#e8ad22}.hq646-summary .dot.valid{background:#3cba6c}.hq646-summary .dot.rejected{background:#dc4f4f}.hq646-list{display:grid;gap:9px}.hq646-item{display:grid;grid-template-columns:76px minmax(0,1fr) 150px;align-items:stretch;border:1px solid #d7e4ec;border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 2px 7px rgba(14,60,88,.045)}.hq646-item:hover{border-color:#9bc6df;box-shadow:0 4px 13px rgba(14,60,88,.08)}.hq646-item.pendiente{border-left:5px solid #e1a51d}.hq646-item.validado{border-left:5px solid #35a865}.hq646-item.rechazado{border-left:5px solid #d94b4b}.hq646-number{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#eef7fb;color:#17618b}.hq646-number small{font-size:7px;font-weight:900;letter-spacing:.08em}.hq646-number b{font-size:25px;line-height:1.1}.hq646-main{padding:12px 14px;min-width:0}.hq646-topline{display:flex;gap:10px;align-items:center;margin-bottom:8px}.hq646-kind{font-size:8px;font-weight:900;letter-spacing:.06em;color:#6d8797}.hq646-topline>b{font-size:15px;color:#123f5d}.hq646-grid{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));gap:10px}.hq646-grid span{min-width:0}.hq646-grid small{display:block;font-size:7px;font-weight:900;color:#8295a2;letter-spacing:.06em;margin-bottom:2px}.hq646-grid b{display:block;font-size:10.5px;color:#1a4967;white-space:normal}.hq646-observations{margin:8px 0 0;padding-top:7px;border-top:1px solid #edf2f5;color:#576f7e;font-size:10px}.hq646-statusbox{position:relative;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:6px;padding:10px 44px 10px 10px;background:#fbfdfe}.hq646-light,.hq646-result{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:8px;font-weight:900}.hq646-light.pendiente{background:#fff1bf;color:#856200}.hq646-light.validado{background:#d9f3e2;color:#176f39}.hq646-light.rechazado{background:#fde1e1;color:#a22424}.hq646-result.rectifica{background:#d9f3e2;color:#176f39}.hq646-result.ratifica{background:#fde1e1;color:#a22424}.hq646-result.otro{background:#e8f0f5;color:#49677a}.hq646-review{font-size:9px;color:#9a6700}.hq646-open{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#68a3c4;font-size:32px;cursor:pointer}.hq646-empty{padding:35px;text-align:center;border:1px dashed #cfdde6;border-radius:13px;color:#69818f;display:flex;flex-direction:column;align-items:center;gap:5px}.hq646-empty span{font-size:28px}.hq646-empty b{font-size:14px;color:#31566f}.hq646-history{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid #e4edf2;font-size:10px;color:#748a98}.hq646-history form{display:flex;align-items:center;gap:7px}.hq646-modal{width:min(760px,94vw)!important;padding:20px!important;border-radius:18px!important}.hq646-modal-head{padding-right:42px;margin-bottom:12px}.hq646-modal-head>span{font-size:9px;font-weight:900;letter-spacing:.07em;color:#6c8798}.hq646-modal-head h2{margin:2px 0 4px;font-size:24px;color:#153e59}.hq646-modal-head p{margin:0;color:#668091}.hq646-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hq646-form-grid label{display:flex;flex-direction:column;gap:4px;font-size:10px;font-weight:850;color:#31566f}.hq646-form-grid input,.hq646-form-grid select,.hq646-form-grid textarea{width:100%;box-sizing:border-box;border:1px solid #cadbe5;border-radius:9px;padding:9px;background:#fff;color:#183f59;font:inherit}.hq646-form-grid .wide{grid-column:1/-1}.hq646-form-grid small{font-weight:500;color:#7b909d}.hq646-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:12px}
@media(max-width:900px){.hq646-grid{grid-template-columns:repeat(3,1fr)}.hq646-item{grid-template-columns:60px minmax(0,1fr) 115px}.hq646-search{grid-template-columns:1fr}.hq646-form-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.task645-calendar-modal{padding:14px!important}.task645-day{min-height:47px!important}.task645-days{gap:4px!important}.hq646-item{grid-template-columns:52px 1fr}.hq646-statusbox{grid-column:1/-1;flex-direction:row;justify-content:flex-start;align-items:center;padding:7px 40px 7px 10px}.hq646-grid{grid-template-columns:1fr 1fr}.hq646-form-grid{grid-template-columns:1fr}.hq646-history{align-items:flex-start;flex-direction:column}.hq646-history form{width:100%;flex-wrap:wrap}}


/* ===== Motor 64.7 · selección múltiple calendario + legibilidad listados ===== */
.task645-days{user-select:none!important;-webkit-user-select:none!important;touch-action:none!important}
.task645-day{user-select:none!important;-webkit-user-select:none!important}
.task645-day.selected{background:#d8effc!important;border-color:#187db9!important;box-shadow:inset 0 0 0 1px #187db9!important}
.task645-cal-head p{font-weight:600!important;color:#557487!important}
@media(min-width:761px){
  .hq646-main{padding:10px 14px!important}
  .hq646-topline{margin-bottom:6px!important}
  .hq646-kind{font-size:8.5px!important;font-weight:950!important;color:#58788d!important}
  .hq646-topline>b{font-size:15.5px!important;font-weight:900!important}
  .hq646-grid{gap:7px 10px!important}
  .hq646-grid small{font-size:7.5px!important;font-weight:950!important;color:#708a9b!important;margin-bottom:1px!important}
  .hq646-grid b{font-size:11.5px!important;font-weight:800!important;line-height:1.15!important;color:#123f5d!important}
  .hq646-observations{margin-top:6px!important;padding-top:5px!important;font-size:10.5px!important;line-height:1.2!important}
  .hq646-statusbox{padding-top:8px!important;padding-bottom:8px!important}
}

/* Motor 64.8 · un único selector de destinatarios */
.task644-target-row{grid-template-columns:1fr!important}
.task648-recipient-box{width:100%!important}
.task648-all{border-bottom:1px solid #dce8f0!important;background:#f4f9fc!important;font-weight:900!important}


/* Motor 64.9 · eliminación segura en registros de Jefatura */
.hq646-delete-form{margin-top:14px;padding-top:12px;border-top:1px solid #e4ebf0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.hq646-delete-form small{color:#7b8790;font-size:11px}.hq646-delete-form .btn.danger{background:#fff4f4;border-color:#e7a2a2;color:#a61f1f;font-weight:850}.hq646-delete-form .btn.danger:hover{background:#ffe8e8;border-color:#d56b6b}

/* Motor 65.0 · Notificaciones */
.hq646-item.validado .hq646-result{background:#e5f7ea;color:#1c6b38;border-color:#a9ddb8}.hq646-item.rechazado .hq646-result{background:#fdeaea;color:#9e2525;border-color:#e6b2b2}


/* Motor 65.1 · Notificaciones: alta en bloque e histórico limpio */
.task651-bulk{margin-top:10px;border:1px dashed #b8cfdf;border-radius:12px;background:#f8fbfd;padding:0 12px}.task651-bulk summary{cursor:pointer;font-weight:850;color:#195a84;padding:10px 0}.task651-bulk label{display:block;padding:0 0 12px}.task651-bulk textarea{width:100%;min-height:88px;resize:vertical}.task651-bulk small{display:block;margin-top:4px;color:#6d8392;font-size:11px}.hq651-history-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.hq651-history-actions form{margin:0}.hq651-file{display:none!important}

/* ===== Motor 65.2 · flujo completo y trazabilidad de tareas ===== */
.task652-card{overflow:visible}.task652-row{position:relative;border:1px solid #d8e5ed!important;border-left-width:6px!important;border-radius:12px!important;margin:8px 0!important;padding:10px 12px!important;background:#fff!important;box-shadow:0 2px 7px rgba(13,66,96,.04);min-height:58px;align-items:center}.task652-row.task652-informe,.task652-row.task652-informe_notificacion{border-left-color:#3187c7!important;background:#f8fcff!important}.task652-row.task652-alegacion{border-left-color:#9967c7!important;background:#fcf9ff!important}.task652-row.task652-notificacion{border-left-color:#df9d26!important;background:#fffdf7!important}.task652-row.task652-otra{border-left-color:#47a56b!important;background:#f9fdfb!important}.task652-row.task652-awaiting{background:#fffaf0!important;border-style:solid!important}.task652-type{min-width:118px;max-width:150px}.task652-type span{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:#eef5f9;color:#315d78;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.045em}.task652-informe .task652-type span,.task652-informe_notificacion .task652-type span{background:#e2f1fb;color:#17608d}.task652-alegacion .task652-type span{background:#f0e7f9;color:#70429b}.task652-notificacion .task652-type span{background:#fff0cf;color:#8b5c00}.task652-otra .task652-type span{background:#e4f5ea;color:#256f40}.task652-main small{display:block;margin-top:2px}.task652-wait{color:#8b6500!important;font-weight:800!important}.task652-actions{display:flex!important;align-items:center!important;gap:6px!important;flex-wrap:wrap!important}.task652-actions form{margin:0}.task652-row.done{opacity:1!important;background:#fbfcfd!important}.task652-row.done .task652-type span{filter:saturate(.7)}
@media(max-width:760px){.task652-row{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}.task652-type{min-width:0;max-width:none}.task652-actions{justify-content:flex-start!important}.task652-actions .btn{min-height:36px}.task652-row .grow{width:100%}}


/* ===== Motor 66.2 · edición segura en mes validado ===== */
@media (min-width:901px){
  /* El botón visible hereda el mismo color del código mientras el cambio está pendiente. */
  .schedule-pc-cell-button.code-m{background:#ffd7d7!important}
  .schedule-pc-cell-button.code-t{background:#b4c7dc!important}
  .schedule-pc-cell-button.code-n{background:#b2b2b2!important}
  .schedule-pc-cell-button.code-d{background:#fff!important}
  .schedule-pc-cell-button.code-dc{background:#ffa6a6!important}
  .schedule-pc-cell-button.code-v{background:#bbe33d!important}
  .schedule-pc-cell-button.code-va{background:#76ff03!important}
  .schedule-pc-cell-button.code-ap{background:#63bbee!important}
  .schedule-pc-cell-button.code-b{background:#dc85e9!important}
  .schedule-pc-cell-button.code-p{background:#ffde59!important}
  .schedule-pc-cell-button.code-pa{background:#18ffff!important}
  .schedule-pc-cell-button.code-g{background:#18a303!important}
  .schedule-pc-cell-button.code-jv{background:#ffff00!important}
  .schedule-pc-cell-button.code-c{background:#D8C7A7!important}
  body.schedule-has-pending .schedule-safe-actions{display:flex!important}
}

/* ===== Motor 66.3 · resalte continuo del día actual =====
   El contorno se dibuja por encima de los bordes de cada celda y se solapa
   2px con la anterior/siguiente para que la columna no aparezca cortada. */
.schedule-grid th.today-col,
.schedule-grid td.today-col{
  position:relative!important;
}
.schedule-grid th.today-col::before,
.schedule-grid td.today-col::before,
.schedule-grid th.today-col::after,
.schedule-grid td.today-col::after{
  content:"";
  position:absolute;
  top:-2px;
  bottom:-2px;
  width:2px;
  background:#0a65a6;
  z-index:20;
  pointer-events:none;
}
.schedule-grid th.today-col::before,
.schedule-grid td.today-col::before{left:-1px}
.schedule-grid th.today-col::after,
.schedule-grid td.today-col::after{right:-1px}
.schedule-grid thead .schedule-weekday-head.today-col{
  border-top:2px solid #0a65a6!important;
}
.schedule-grid tbody tr:last-child td.today-col{
  border-bottom:2px solid #0a65a6!important;
}
/* El borde de selección/edición no debe ocultar el resalte del día actual. */
.schedule-grid td.today-col .cell-form,
.schedule-grid td.today-col .schedule-code-select{
  position:relative;
  z-index:1;
}
.schedule-grid td.today-col::before,
.schedule-grid td.today-col::after{z-index:22}

/* ===== Motor 66.4 · restaurar enfoque rojo continuo del día actual ===== */
.schedule-grid th.today-col,
.schedule-grid td.today-col{
  box-shadow:none!important;
}
.schedule-grid th.today-col::before,
.schedule-grid td.today-col::before,
.schedule-grid th.today-col::after,
.schedule-grid td.today-col::after{
  background:#d62828!important;
}
.schedule-grid thead .schedule-weekday-head.today-col{
  border-top:2px solid #d62828!important;
  color:#b51f1f!important;
  background:#ffe9e9!important;
}
.schedule-grid thead .schedule-number-head.today-col{
  color:#b51f1f!important;
  background:#fff4f4!important;
}
.schedule-grid thead .schedule-number-head.holiday.today-col{
  color:#111!important;
  background:#f3a13a!important;
}
.schedule-grid tbody tr:last-child td.today-col{
  border-bottom:2px solid #d62828!important;
}

/* ===== Motor 66.7 · aviso de sincronización automática ===== */
.schedule-live-sync-notice{position:fixed;right:18px;bottom:18px;z-index:10050;display:flex;gap:10px;align-items:center;max-width:620px;padding:12px 14px;border:1px solid #e2b13f;border-radius:14px;background:#fff8df;color:#173f59;box-shadow:0 12px 30px rgba(18,58,84,.22);font-size:14px}.schedule-live-sync-notice[hidden]{display:none!important}.schedule-live-sync-notice b{white-space:nowrap}.schedule-live-sync-notice span{color:#526d7e}.schedule-live-sync-notice button{border:1px solid #9cb7c9;border-radius:9px;background:white;color:#174965;font-weight:700;padding:7px 10px;cursor:pointer}@media(max-width:760px){.schedule-live-sync-notice{left:10px;right:10px;bottom:10px;flex-wrap:wrap}.schedule-live-sync-notice b{white-space:normal}.schedule-live-sync-notice button{margin-left:auto}}

/* ===== Motor 68 · Barrera Lagos ===== */
.lag68-toolbar{padding:12px 14px;display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap}.lag68-search{display:grid;grid-template-columns:160px 170px minmax(280px,1fr) auto;gap:8px;flex:1}.lag68-search select,.lag68-search input,.lag68-form input,.lag68-form select,.lag68-form textarea{border:1px solid #c8d9e8;border-radius:10px;padding:10px 12px;background:#fff;color:#113a5a;font:inherit}.lag68-actions{display:flex;gap:8px;align-items:center}.lag68-actions form{margin:0}.lag68-summary{font-size:.86rem;color:#59758d;margin:8px 2px}.lag68-list{display:grid;gap:8px}.lag68-row{display:grid;grid-template-columns:84px 1fr auto 24px;align-items:stretch;text-decoration:none;color:inherit;background:#fff;border:1px solid #cfe0ec;border-left:5px solid #9db7c9;border-radius:14px;overflow:hidden;min-height:88px;box-shadow:0 1px 2px rgba(13,54,83,.04)}.lag68-row.active{border-left-color:#24b66b}.lag68-row.pending{border-left-color:#e6a916}.lag68-row.finished{border-left-color:#8ca2b2}.lag68-num{background:#eef7fb;display:flex;flex-direction:column;align-items:center;justify-content:center}.lag68-num small,.lag68-meta small{display:block;font-size:.62rem;letter-spacing:.05em;color:#6a879c;font-weight:700}.lag68-num b{font-size:1.8rem;color:#0e5f8e}.lag68-main{padding:10px 14px;min-width:0}.lag68-plate{font-size:1.1rem;font-weight:800;color:#0d3e60;margin-bottom:7px}.lag68-meta{display:grid;grid-template-columns:130px 110px 110px minmax(210px,1fr) minmax(180px,1fr);gap:12px;font-size:.82rem;font-weight:700;color:#17415e}.lag68-meta span{min-width:0}.lag68-obs{margin-top:7px;border-top:1px solid #e5eef4;padding-top:6px;color:#60788a;font-size:.85rem}.lag68-status{align-self:center;margin-right:10px;padding:6px 10px;border-radius:999px;font-size:.74rem;font-weight:800;white-space:nowrap}.lag68-status.active{background:#ddf7e9;color:#15784a}.lag68-status.pending{background:#fff1c6;color:#8a6200}.lag68-status.finished{background:#edf1f4;color:#637482}.lag68-arrow{display:flex;align-items:center;font-size:2rem;color:#6ca0bd;padding-right:9px}.lag68-empty{padding:35px;text-align:center;color:#60788a}.lag68-form{padding:16px}.lag68-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px}.lag68-grid.two{grid-template-columns:1fr 1fr;margin-top:12px}.lag68-form label{display:flex;flex-direction:column;gap:5px;font-weight:700;color:#315772}.lag68-form label>span{font-size:.8rem}.lag68-full{margin-top:12px}.lag68-form textarea{resize:vertical}.lag68-submit{display:flex;gap:8px;margin-top:16px}.lag68-headline{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid #dce8f0;color:#5b7385}
@media(max-width:760px){.lag68-search{grid-template-columns:1fr 1fr}.lag68-search input{grid-column:1/-1}.lag68-search .btn{grid-column:1/-1}.lag68-actions{width:100%;justify-content:flex-end}.lag68-row{grid-template-columns:58px 1fr 20px}.lag68-status{grid-column:2;margin:0 10px 9px 14px;justify-self:start}.lag68-arrow{grid-column:3;grid-row:1/3}.lag68-num b{font-size:1.4rem}.lag68-meta{grid-template-columns:1fr 1fr;gap:8px}.lag68-meta span:nth-child(4),.lag68-meta span:nth-child(5){grid-column:1/-1}.lag68-grid,.lag68-grid.two{grid-template-columns:1fr}.lag68-toolbar{padding:10px}.lag68-main{padding:9px 10px}.lag68-plate{font-size:1rem}}

/* ===== Motor 69.3 · Nota rápida móvil + documentación agenda ===== */
.mobile-quick-note-icon{display:none;text-decoration:none;color:#0d4f7c;align-items:center;gap:3px;padding:5px 7px;border:1px solid #c7dbe8;border-radius:10px;background:#f7fbfd;line-height:1}
.mobile-quick-note-icon span{font-size:1.15rem}.mobile-quick-note-icon small{font-size:.55rem;font-weight:900;white-space:nowrap}
.protocol-agenda-link{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;margin-bottom:12px}.protocol-agenda-link>span{font-size:1.8rem}.protocol-agenda-link>div{flex:1}.protocol-agenda-link small{display:block;color:#60798c;margin-top:3px}.protocol-agenda-link>strong{font-size:1.6rem;color:#79a8c4}
@media(max-width:760px){.mobile-quick-note-icon{display:inline-flex}.top>div:first-of-type{display:none}.mobile-quick-note-icon small{display:none}.mobile-quick-note-icon{width:36px;height:36px;justify-content:center;padding:0;border-radius:10px}.mobile-quick-note-icon span{font-size:1.05rem}}

/* ===== Motor 70.0 · Dispositivos policiales ===== */
.op70-row{display:flex;align-items:center;gap:14px;padding:12px 14px;border:1px solid #d8e5ee;border-radius:14px;margin:8px 0;background:#fff;text-decoration:none;color:#123b58}.op70-row>strong{min-width:62px;font-size:20px;color:#0b5b88}.op70-row div{display:flex;flex-direction:column;gap:3px}.op70-row small{color:#617d90}.op70-row.live{border-left:5px solid #38a866}.op70-row.upcoming{border-left:5px solid #2c8fd0}.op70-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.op70-summary div{display:flex;flex-direction:column}.op70-summary small{font-size:10px;color:#6d8595;font-weight:800}.op70-pdfviewer{width:100%;height:78vh;border:1px solid #d6e2e9;border-radius:12px;background:#eef3f6}.op70-form details{border:1px solid #d4e3ed;border-radius:12px;margin:12px 0;padding:0;background:#fbfdff}.op70-form summary{cursor:pointer;font-size:18px;font-weight:800;padding:14px}.op70-grid{display:grid;gap:12px;padding:14px}.op70-grid.cols4{grid-template-columns:repeat(4,minmax(0,1fr))}.op70-grid.cols2{grid-template-columns:repeat(2,minmax(0,1fr))}.op70-grid .span2{grid-column:span 2}.op70-grid label{font-weight:700;color:#25465d}.op70-grid input,.op70-grid select,.op70-grid textarea{width:100%;box-sizing:border-box;margin-top:5px}.op70-grid small{font-weight:400;color:#6b8191}
@media(max-width:760px){.op70-grid.cols4,.op70-grid.cols2,.op70-summary{grid-template-columns:1fr}.op70-grid .span2{grid-column:auto}.op70-row{gap:8px;padding:10px}.op70-row>strong{min-width:48px;font-size:17px}.op70-pdfviewer{height:70vh}.op70-row .btn{display:none}}
/* ===== Motor 70.1 · fichas visor y plantillas por modalidad ===== */
.op701-row-main{appearance:none;border:0;background:transparent;padding:0;margin:0;display:grid;grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:14px;text-align:left;color:inherit;cursor:pointer;min-width:0;flex:1;font:inherit}.op701-row-main>strong{font-size:20px;color:#0b5b88}.op701-row-main>span{display:flex;flex-direction:column;gap:3px;min-width:0}.op701-row-main b{font-size:16px;color:#153f5b}.op701-row-main small{color:#617d90;white-space:normal}.op701-row-main em{font-style:normal;font-weight:800;color:#39718f;white-space:nowrap}.op701-row-main:focus-visible{outline:3px solid #65aee0;outline-offset:4px;border-radius:8px}.op701-modal{width:min(1180px,96vw);max-width:1180px}.op701-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.op701-meta-grid>div{padding:10px 12px;border:1px solid #d8e5ee;border-radius:10px;background:#f7fbfd;display:flex;flex-direction:column;gap:3px}.op701-meta-grid small{font-size:10px;font-weight:900;color:#6a8496}.op701-summary{padding:12px;border-left:4px solid #7ea9c3;background:#f5fafc;border-radius:8px;margin:10px 0}.op701-pdfbox{margin-top:12px}.op701-pdf-title{font-weight:800;margin-bottom:7px}.op701-pdfviewer{width:100%;height:62vh;min-height:480px;border:1px solid #ccdce6;border-radius:10px;background:#eef3f6}.op701-plan{margin-top:12px}.op701-template-banner{margin:12px 14px 0;padding:12px 14px;border:1px solid #b7d8ee;background:#eef8ff;border-radius:12px;display:flex;gap:10px;align-items:flex-start}.op701-template-banner[hidden]{display:none}.op701-template-banner span{color:#4b687b}.op701-annex-note{padding:12px;border:1px dashed #bdd0dc;border-radius:10px;color:#537184;background:#fbfdff}
@media(max-width:760px){.op701-row-main{grid-template-columns:55px minmax(0,1fr) auto;gap:8px}.op701-row-main>strong{font-size:17px}.op701-row-main b{font-size:15px}.op701-modal{width:96vw}.op701-meta-grid{grid-template-columns:1fr 1fr}.op701-pdfviewer{height:58vh;min-height:390px}.op701-template-banner{margin:10px 0;flex-direction:column}.operative-modal .actions .btn[target="_blank"]{display:none}}
/* ===== Motor 70.2 · listado unificado, tablas editables, PDF previo y croquis ===== */
.op702-list{display:grid;gap:8px}.op702-record{display:flex;align-items:stretch;background:#fff;border:1px solid #cfe0eb;border-left:5px solid #93adbf;border-radius:14px;overflow:hidden;min-height:82px;box-shadow:0 1px 2px rgba(13,54,83,.04)}.op702-record.is-live{border-left-color:#28a663}.op702-record.is-upcoming{border-left-color:#2d8fcf}.op702-open{appearance:none;border:0;background:transparent;display:grid;grid-template-columns:88px minmax(0,1fr) auto 24px;gap:12px;align-items:center;width:100%;padding:0;cursor:pointer;color:inherit;text-align:left;font:inherit;min-width:0}.op702-ref{height:100%;min-height:82px;background:#eef7fb;display:flex;align-items:center;justify-content:center;font-size:1.35rem;font-weight:900;color:#0b5d8a}.op702-body{display:flex;flex-direction:column;gap:4px;min-width:0;padding:10px 0}.op702-body b{font-size:1rem;color:#143f5b}.op702-body small{font-size:.78rem;color:#617b8e;white-space:normal}.op702-state{font-size:.68rem;font-weight:900;padding:5px 8px;border-radius:999px;background:#eef3f6;color:#557084;white-space:nowrap}.op702-arrow{font-size:1.8rem;color:#6c9bb7}.op702-edit{display:flex;align-items:center;justify-content:center;width:42px;text-decoration:none;color:#286c94;border-left:1px solid #e0eaf0;font-size:1.15rem}.op702-edit:hover{background:#f1f8fc}.op702-modebar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:12px 14px;padding:10px 12px;border:1px solid #d3e2ec;border-radius:11px;background:#f8fbfd}.op702-modebar span{color:#607b8e;font-size:.82rem}.op702-modebar .active,.op702-croquis-toolbar .active{background:#176f9f;color:#fff;border-color:#176f9f}.op702-tablebox{margin:12px 14px;padding:12px;border:1px solid #d7e4ec;border-radius:12px;background:#fff}.op702-tablehead{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.op702-tablewrap{overflow-x:auto}.op702-tablebox table{width:100%;border-collapse:collapse;min-width:640px}.op702-tablebox th{background:#eaf3f8;color:#244e68;font-size:.75rem;text-align:left;padding:7px;border:1px solid #c9dbe6}.op702-tablebox td{border:1px solid #d5e1e8;padding:4px;vertical-align:top}.op702-tablebox textarea{width:100%;min-width:110px;border:0;resize:vertical;padding:6px;box-sizing:border-box;font:inherit;background:#fff}.op702-tablebox textarea:focus{outline:2px solid #78b5d8;border-radius:4px}.op702-x{border:0;background:transparent;color:#b32626;font-size:1.35rem;cursor:pointer;padding:4px 8px}.op702-hiddenfields.really-hidden{display:none}.op702-croquis{margin:12px 14px}.op702-croquis-toolbar{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin-bottom:8px}.op702-canvaswrap{position:relative;border:1px solid #c9dbe6;border-radius:12px;overflow:hidden;background:#f1f5f7}.op702-canvaswrap canvas{display:block;width:100%;height:auto;max-height:650px;touch-action:none;background:#fff}.op702-canvaswrap #op702CanvasHint{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#6a8292;font-weight:700;pointer-events:none}.op702-actions{position:sticky;bottom:8px;background:rgba(255,255,255,.96);padding:10px;border:1px solid #d8e4eb;border-radius:12px;z-index:5;box-shadow:0 8px 26px rgba(19,62,88,.12)}
@media(max-width:760px){.op702-open{grid-template-columns:60px minmax(0,1fr) 20px;gap:8px}.op702-ref{min-height:74px;font-size:1rem}.op702-state{grid-column:2;justify-self:start;margin-bottom:6px}.op702-arrow{grid-column:3;grid-row:1/3}.op702-edit{width:36px}.op702-body{padding:8px 0}.op702-tablebox{margin:10px 0}.op702-modebar{margin:10px 0}.op702-croquis{margin:10px 0}.op702-actions{position:static}.op702-tablebox table{min-width:560px}}
/* ===== Motor 70.3 · Documentos, anexos y croquis avanzado ===== */
.op703-delete-form{display:flex;align-items:center;border-left:1px solid #e0eaf0}.op703-delete{width:42px;height:100%;min-height:82px;border:0;background:#fff;color:#b4232d;font-size:1.35rem;font-weight:800;cursor:pointer}.op703-delete:hover{background:#fff2f2}.op703-existing-annexes{margin:0 14px 12px;padding:10px 12px;border:1px solid #d7e4ec;border-radius:10px;background:#fbfdff;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.op703-existing-annexes>b{width:100%;color:#244e68}.op703-existing-annexes span{display:inline-flex;align-items:center;gap:4px}.op703-annex-list{margin-top:12px;padding:10px 12px;border:1px solid #d7e4ec;border-radius:10px;background:#fbfdff;display:flex;gap:7px;align-items:center;flex-wrap:wrap}.op703-annex-list>b{width:100%}.op703-toolbar{padding:8px;border:1px solid #d5e3eb;border-radius:10px;background:#f8fbfd}.op703-toolopt{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;font-weight:800;color:#31566f;background:#fff;border:1px solid #d5e3eb;border-radius:8px;padding:4px 7px}.op703-toolopt input[type=color]{width:34px;height:28px;padding:0;border:0;background:none}.op703-toolopt input[type=range]{width:90px}.op703-toolopt select{font:inherit;padding:3px 5px}.op703-croquis-help{margin:7px 2px 0;font-size:.78rem}.op702-record .op702-state{max-width:110px;text-align:center}.op702-state{background:#eef6fa;color:#355d75}
@media(max-width:760px){.op703-delete{width:36px;min-height:74px}.op703-delete-form{display:none}.op703-toolbar{align-items:stretch}.op703-toolopt{flex:1 1 145px}.op703-toolbar .btn{flex:0 0 auto}.op703-existing-annexes{margin:0 0 10px}}
/* Motor 70.4: paleta plegable y controles tactiles */
.op704-palette{border:1px solid #94a3b8;border-radius:8px;margin-bottom:10px;background:#f8fafc;color:#172033}.op704-palette>summary{padding:12px;cursor:pointer;font-weight:750;font-size:16px}.op704-tools{padding:10px;display:grid;gap:8px}.op704-group{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px;border-top:1px solid #cbd5e1}.op704-group>b{width:100%;font-size:14px}.op704-group label{display:flex;align-items:center;gap:5px;font-size:14px}.op704-group input[type=color]{width:40px;height:32px;padding:2px}.op704-group input[type=range]{width:85px}.op704-group input[type=checkbox]{width:18px;height:18px}.op704-group input[type=number]{width:65px}.op704-group input[type=text]{width:190px}.op704-group button.active{background:#174f8c;color:white;outline:2px solid #123a68}#op702Canvas{touch-action:none;user-select:none}#op704Status{font-size:14px;font-weight:600}

/* Motor 70.9 · columnas compactas y selectores nativos de fecha/hora */
.op702-tablebox table{table-layout:fixed}
.op702-tablebox th.opcol-date,.op702-tablebox td.opcol-date{width:132px;min-width:132px;max-width:132px}
.op702-tablebox th.opcol-time,.op702-tablebox td.opcol-time{width:104px;min-width:104px;max-width:104px}
.op702-tablebox th.opcol-datetime,.op702-tablebox td.opcol-datetime{width:235px;min-width:235px;max-width:235px}
.op702-tablebox th.opcol-actions,.op702-tablebox td.opcol-actions{width:42px;min-width:42px;max-width:42px;text-align:center}
.op702-tablebox th.opcol-text,.op702-tablebox td.opcol-text{width:auto}
.op702-tablebox input[type=date],.op702-tablebox input[type=time]{width:100%;min-width:0;border:0;background:#fff;padding:7px 6px;box-sizing:border-box;font:inherit}
.op702-tablebox input[type=date]:focus,.op702-tablebox input[type=time]:focus{outline:2px solid #78b5d8;border-radius:4px}
.op702-datetime{display:grid;grid-template-columns:minmax(126px,1.35fr) minmax(86px,.85fr);gap:4px;align-items:center}
@media(max-width:760px){.op702-tablebox th.opcol-date,.op702-tablebox td.opcol-date{width:128px;min-width:128px;max-width:128px}.op702-tablebox th.opcol-time,.op702-tablebox td.opcol-time{width:100px;min-width:100px;max-width:100px}.op702-tablebox th.opcol-datetime,.op702-tablebox td.opcol-datetime{width:220px;min-width:220px;max-width:220px}}

/* Motor 70.12 · campos compactos y reparto de espacio operativo */
.op701-main-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;padding:14px}
.op701-main-grid .opmain-ref{grid-column:span 2}.op701-main-grid .opmain-name{grid-column:span 5}.op701-main-grid .opmain-type{grid-column:span 2}.op701-main-grid .opmain-status{grid-column:span 3}
.op701-main-grid .opmain-date{grid-column:span 2}.op701-main-grid .opmain-time{grid-column:span 2}.op701-main-grid .opmain-staff{grid-column:span 3}.op701-main-grid .opmain-organizer{grid-column:span 3}
.op701-main-grid label{font-weight:700;color:#25465d}.op701-main-grid input,.op701-main-grid select,.op701-main-grid textarea{width:100%;box-sizing:border-box;margin-top:5px}
.op702-tablebox th.opcol-date,.op702-tablebox td.opcol-date,.op702-tablebox th.opcol-time,.op702-tablebox td.opcol-time,.op702-tablebox th.opcol-datetime,.op702-tablebox td.opcol-datetime{min-width:0;max-width:none}
.op702-tablebox[data-target="id_pre_tasks"] th:nth-child(1),.op702-tablebox[data-target="id_pre_tasks"] td:nth-child(1),.op702-tablebox[data-target="id_final_instructions"] th:nth-child(1),.op702-tablebox[data-target="id_final_instructions"] td:nth-child(1){width:18%}
.op702-tablebox[data-target="id_pre_tasks"] th:nth-child(2),.op702-tablebox[data-target="id_pre_tasks"] td:nth-child(2),.op702-tablebox[data-target="id_final_instructions"] th:nth-child(2),.op702-tablebox[data-target="id_final_instructions"] td:nth-child(2){width:17%}
.op702-tablebox[data-target="id_pre_tasks"] th:nth-child(3),.op702-tablebox[data-target="id_pre_tasks"] td:nth-child(3),.op702-tablebox[data-target="id_final_instructions"] th:nth-child(3),.op702-tablebox[data-target="id_final_instructions"] td:nth-child(3){width:65%}
.op702-tablebox[data-target="id_phases"] th:nth-child(1),.op702-tablebox[data-target="id_phases"] td:nth-child(1){width:22%}.op702-tablebox[data-target="id_phases"] th:nth-child(2),.op702-tablebox[data-target="id_phases"] td:nth-child(2){width:28%}.op702-tablebox[data-target="id_phases"] th:nth-child(3),.op702-tablebox[data-target="id_phases"] td:nth-child(3){width:35%}.op702-tablebox[data-target="id_phases"] th:nth-child(4),.op702-tablebox[data-target="id_phases"] td:nth-child(4){width:15%}
.op702-tablebox[data-target="id_parking"] th:nth-child(1),.op702-tablebox[data-target="id_parking"] td:nth-child(1){width:22%}.op702-tablebox[data-target="id_parking"] th:nth-child(2),.op702-tablebox[data-target="id_parking"] td:nth-child(2){width:33%}.op702-tablebox[data-target="id_parking"] th:nth-child(3),.op702-tablebox[data-target="id_parking"] td:nth-child(3){width:45%}
.op702-tablebox[data-target="id_signage"] th:nth-child(1),.op702-tablebox[data-target="id_signage"] td:nth-child(1){width:20%}.op702-tablebox[data-target="id_signage"] th:nth-child(2),.op702-tablebox[data-target="id_signage"] td:nth-child(2){width:25%}.op702-tablebox[data-target="id_signage"] th:nth-child(3),.op702-tablebox[data-target="id_signage"] td:nth-child(3){width:30%}.op702-tablebox[data-target="id_signage"] th:nth-child(4),.op702-tablebox[data-target="id_signage"] td:nth-child(4){width:25%}
@media(max-width:760px){.op701-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.op701-main-grid label{grid-column:span 1}.op701-main-grid .opmain-name,.op701-main-grid .opmain-organizer{grid-column:span 2}}

/* ===== Motor 70.14 · visor exclusivo agentes + cabecera compacta ===== */
.op713-agent-head{margin-bottom:12px}.op713-agent-section{margin-bottom:14px}.op713-agent-empty{text-align:center;padding:46px 18px}.op713-agent-empty>span{font-size:2.4rem}.op713-agent-empty h2{margin:8px 0 4px}.op713-agent-empty p{color:#60798c;margin:0}.op713-agent-section .op702-record{min-height:72px}.op713-agent-section .op702-ref{min-height:72px}.op713-agent-section .op702-edit,.op713-agent-section .op703-delete-form{display:none!important}
.op701-main-grid{display:grid;grid-template-columns:110px minmax(280px,2.5fr) minmax(150px,1fr) minmax(140px,1fr);gap:8px 10px;padding:10px 12px;align-items:end}.op701-main-grid label{grid-column:auto!important;margin:0;font-size:.88rem;line-height:1.15}.op701-main-grid label:nth-child(8),.op701-main-grid label:nth-child(9){grid-column:span 2!important}.op701-main-grid input,.op701-main-grid select{height:36px;margin-top:3px;padding:5px 8px}
@media(max-width:900px){.op701-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.op701-main-grid label:nth-child(n){grid-column:span 1!important}.op701-main-grid label:nth-child(2),.op701-main-grid label:nth-child(8),.op701-main-grid label:nth-child(9){grid-column:span 2!important}}
@media(max-width:560px){.op701-main-grid{grid-template-columns:1fr}.op701-main-grid label:nth-child(n){grid-column:1!important}}

/* Motor 71.5 · aviso de turno sin servicio sin modificar la maquetación del panel */
.service-shortcut-card-v62.service-alert-v715{background:#fff5f5 !important;border-color:#d92d35 !important;box-shadow:0 0 0 1px rgba(217,45,53,.08),0 2px 8px rgba(16,50,83,.04) !important;}
.service-shortcut-card-v62.service-alert-v715 .icon{background:#ffe8e8 !important;}
.service-shortcut-card-v62.service-alert-v715 b,.service-shortcut-card-v62 .service-alert-copy-v715{color:#b4232a !important;font-weight:800 !important;}
.service-shortcut-card-v62.service-alert-v715 .arrow{color:#b4232a !important;}


/* Motor 71.6 · solo el texto de la alerta late, rojo y negrita */
.service-shortcut-card-v62 .service-alert-copy-v715.service-alert-pulse-v716{
  color:#c1121f !important;
  font-weight:900 !important;
  display:inline-block;
  transform-origin:left center;
  animation:serviceAlertTextPulse716 1.15s ease-in-out infinite;
}
@keyframes serviceAlertTextPulse716{
  0%,100%{transform:scale(1);opacity:1;text-shadow:0 0 0 rgba(193,18,31,0)}
  50%{transform:scale(1.045);opacity:.72;text-shadow:0 0 7px rgba(193,18,31,.20)}
}
@media (prefers-reduced-motion: reduce){
  .service-shortcut-card-v62 .service-alert-copy-v715.service-alert-pulse-v716{animation:none}
}

/* ===== Motor 71.22 · menú Jefatura directo + ficha diaria vertical segura ===== */
.sidebar .nav-home-main{font-size:17px!important;padding:13px 12px!important;margin:4px 0 12px!important;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10)}
.sidebar .nav-home-main:hover{background:rgba(255,255,255,.14)}
.hq-main-direct{font-size:16px!important;font-weight:800;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);padding:12px!important;margin-bottom:6px!important}
.hq-main-direct .hq-command-mini{color:#ffd34d;font-size:18px}
.hq-diary-shortcuts{display:flex;flex-direction:column;gap:4px;margin-bottom:6px;padding:0 6px 6px}
.hq-diary-shortcuts .nav{margin:0;font-size:14px;padding:10px 10px;background:rgba(255,255,255,.045)}
.hq-diary-shortcuts .hq-note-button{width:100%;text-align:left;color:#fff;font:inherit;border:0;cursor:pointer}
.hq-more>summary{font-size:12px!important;opacity:.88;padding:8px 12px!important}
@media(max-width:760px){.sidebar .nav-home-main{font-size:18px!important}.hq-main-direct{font-size:17px!important}}


/* MOTOR 72.7 · CABECERAS MOVILES ARMONIZADAS */
@media (max-width:760px){
  /* Sistema común de cabecera para menús y submenús */
  .content > .pagehead,
  .content > .publicroad-head,
  .content > .vehicle-section-head,
  .content > .repo-pagehead,
  .content > .record-pagehead,
  .content > .hq-pagehead,
  .content > .cam66-pagehead,
  .content > .lag68-pagehead{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-items:start!important;
    gap:8px!important;
    margin:0 0 10px!important;
    padding:11px 12px!important;
    background:#fff!important;
    border:1px solid #d6e2ec!important;
    border-radius:14px!important;
    box-shadow:0 2px 8px rgba(18,58,84,.06)!important;
  }
  .content > .pagehead > div:first-child,
  .content > .publicroad-head > div:first-child,
  .content > .vehicle-section-head > div:first-child,
  .content > .repo-pagehead > div:first-child,
  .content > .record-pagehead > div:first-child,
  .content > .hq-pagehead > div:first-child,
  .content > .cam66-pagehead > div:first-child,
  .content > .lag68-pagehead > div:first-child{min-width:0!important;width:100%!important}

  .content > .pagehead h1,
  .content > .publicroad-head h1,
  .content > .vehicle-section-head h1,
  .content > .repo-pagehead h1,
  .content > .record-pagehead h1,
  .content > .hq-pagehead h1,
  .content > .cam66-pagehead h1,
  .content > .lag68-pagehead h1{
    margin:0!important;
    font-size:23px!important;
    line-height:1.08!important;
    letter-spacing:-.015em!important;
    color:#173a59!important;
    overflow-wrap:anywhere!important;
  }

  /* En móvil los textos explicativos de cabecera no aportan navegación */
  .content > .pagehead > div > p,
  .content > .publicroad-head > div > p,
  .content > .vehicle-section-head > div > p,
  .content > .repo-pagehead > div > p,
  .content > .record-pagehead > div > p,
  .content > .hq-pagehead > div > p,
  .content > .cam66-pagehead > div > p,
  .content > .lag68-pagehead > div > p{
    display:none!important;
  }

  .content > .pagehead .welcome-kicker,
  .content > .pagehead .repo-kicker,
  .content > .pagehead .eyebrow,
  .content > .pagehead .eyebrow-link,
  .content > .publicroad-head .welcome-kicker,
  .content > .vehicle-section-head .welcome-kicker,
  .content > .repo-pagehead .repo-kicker,
  .content > .record-pagehead .eyebrow-link,
  .content > .cam66-pagehead .eyebrow,
  .content > .lag68-pagehead .eyebrow{
    display:block!important;
    margin:0 0 3px!important;
    font-size:9px!important;
    line-height:1.1!important;
    font-weight:900!important;
    letter-spacing:.08em!important;
    color:#688096!important;
    text-transform:uppercase!important;
  }

  /* Acciones principales: compactas, legibles y alineadas */
  .content > .pagehead > .btn,
  .content > .publicroad-head > .btn,
  .content > .vehicle-section-head > .btn,
  .content > .repo-pagehead > .btn,
  .content > .record-pagehead > .btn,
  .content > .cam66-pagehead > .btn,
  .content > .lag68-pagehead > .btn,
  .content > .pagehead > .actions,
  .content > .pagehead > .page-actions,
  .content > .publicroad-head > .page-actions{
    margin:0!important;
    width:100%!important;
  }
  .content > .pagehead > .btn,
  .content > .publicroad-head > .btn,
  .content > .vehicle-section-head > .btn,
  .content > .repo-pagehead > .btn,
  .content > .record-pagehead > .btn,
  .content > .cam66-pagehead > .btn,
  .content > .lag68-pagehead > .btn{
    min-height:40px!important;
    padding:9px 11px!important;
    font-size:13px!important;
    line-height:1.1!important;
    text-align:center!important;
  }
  .content > .pagehead > .actions,
  .content > .pagehead > .page-actions,
  .content > .publicroad-head > .page-actions{
    display:flex!important;
    gap:6px!important;
    flex-wrap:wrap!important;
    justify-content:flex-start!important;
  }

  /* Los submenús/tarjetas mantienen una escala tipográfica coherente */
  .headquarters-grid .module,
  .modules .module{min-height:72px!important;padding:12px!important;gap:10px!important}
  .headquarters-grid .module>span,
  .modules .module>span{font-size:25px!important}
  .headquarters-grid .module b,
  .modules .module b{font-size:14px!important;line-height:1.15!important}
  .headquarters-grid .module small,
  .modules .module small{font-size:10px!important;line-height:1.2!important;margin-top:3px!important}
}
@media (max-width:430px){
  .content > .pagehead h1,
  .content > .publicroad-head h1,
  .content > .vehicle-section-head h1,
  .content > .repo-pagehead h1,
  .content > .record-pagehead h1,
  .content > .hq-pagehead h1,
  .content > .cam66-pagehead h1,
  .content > .lag68-pagehead h1{font-size:21px!important}
}

/* MOTOR 72.8 · AUDITORIA GLOBAL CABECERAS MOVIL */
@media (max-width:760px){
  .content .pagehead,
  .content .publicroad-head,
  .content .r72-head,
  .content .ag69-head,
  .content .aq69-head,
  .content .d71-head,
  .content .b71-head,
  .content .ua-head,
  .content .user-admin-head,
  .content .my-service-compact-head,
  .content .pi-pagehead{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:7px!important;
    align-items:start!important;
    margin:0 0 10px!important;
    padding:10px 11px!important;
    background:#fff!important;
    border:1px solid #d6e2ec!important;
    border-radius:14px!important;
    box-shadow:0 2px 8px rgba(18,58,84,.055)!important;
  }
  .content .pagehead h1,
  .content .publicroad-head h1,
  .content .r72-head h1,
  .content .ag69-head h1,
  .content .aq69-head h1,
  .content .d71-head h1,
  .content .b71-head h1,
  .content .ua-head h1,
  .content .user-admin-head h1,
  .content .my-service-compact-head h1,
  .content .pi-pagehead h1{
    margin:0!important;
    font-size:22px!important;
    line-height:1.08!important;
    letter-spacing:-.015em!important;
    color:#173a59!important;
    overflow-wrap:anywhere!important;
  }
  .content .pagehead > div > p,
  .content .publicroad-head > div > p,
  .content .r72-head > div > p,
  .content .ag69-head > div > p,
  .content .aq69-head > div > p,
  .content .d71-head > div > p,
  .content .b71-head > div > p,
  .content .ua-head > div > p,
  .content .user-admin-head > div > p,
  .content .my-service-compact-head > div > p,
  .content .pi-pagehead > div > p,
  .content .pagehead > p,
  .content .publicroad-head > p,
  .content .r72-head > p{
    display:none!important;
  }
  .content .pagehead .eyebrow,
  .content .pagehead .eyebrow-link,
  .content .pagehead .welcome-kicker,
  .content .publicroad-head .welcome-kicker,
  .content .r72-head .eyebrow,
  .content .ag69-head .eyebrow,
  .content .d71-head .eyebrow,
  .content .b71-head .eyebrow{
    display:block!important;
    margin:0 0 3px!important;
    font-size:9px!important;
    line-height:1.1!important;
    font-weight:900!important;
    letter-spacing:.08em!important;
    color:#6a8194!important;
    text-transform:uppercase!important;
  }
  .content .pagehead > .actions,
  .content .pagehead > .page-actions,
  .content .publicroad-head > .page-actions,
  .content .r72-head > .r72-actions{
    width:100%!important;
    margin:0!important;
    display:flex!important;
    gap:6px!important;
    flex-wrap:wrap!important;
  }
  .content .pagehead > .actions .btn,
  .content .pagehead > .page-actions .btn,
  .content .publicroad-head > .page-actions .btn,
  .content .r72-head > .r72-actions .btn,
  .content .pagehead > .btn,
  .content .publicroad-head > .btn{
    min-height:38px!important;
    padding:8px 10px!important;
    font-size:13px!important;
    line-height:1.1!important;
  }
}
@media (max-width:430px){
  .content .pagehead h1,
  .content .publicroad-head h1,
  .content .r72-head h1,
  .content .ag69-head h1,
  .content .aq69-head h1,
  .content .d71-head h1,
  .content .b71-head h1,
  .content .ua-head h1,
  .content .user-admin-head h1,
  .content .my-service-compact-head h1,
  .content .pi-pagehead h1{font-size:20px!important}
}
/* ===== Motor 73.1 · Personal y dotación ===== */
.p73-shell,.p73-head{color:#183b57}.p73-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.p73-head h1{margin:2px 0 0;font-size:29px;line-height:1.05}.p73-head.compact h1{font-size:25px}.p73-subline{margin-top:5px;color:#718596;font-size:11px}.p73-kpis{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}.p73-kpis span,.p73-count{background:#eef5fa;border:1px solid #d7e5ef;border-radius:999px;padding:7px 11px;color:#4c6b80;font-size:11px}.p73-kpis b{color:#153f5b;font-size:14px}.p73-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.p73-menu-card,.p73-person-row,.p73-equipment-card{display:flex;align-items:center;gap:12px;text-decoration:none;color:#183b57;background:#fff;border:1px solid #d8e3eb;border-radius:15px;box-shadow:0 3px 14px #173e5710}.p73-menu-card{padding:18px}.p73-menu-card>span{font-size:30px}.p73-menu-card div{flex:1}.p73-menu-card b{display:block;font-size:17px}.p73-menu-card small{display:block;color:#748998;margin-top:3px}.p73-menu-card i,.p73-person-row i,.p73-equipment-card i{font-style:normal;font-size:28px;color:#82a8bf}.p73-search{display:grid;grid-template-columns:minmax(260px,2fr) minmax(150px,.7fr) minmax(150px,.7fr) auto;gap:9px;align-items:end}.p73-search label,.p73-grid label,.p73-assign-form label{display:flex;flex-direction:column;gap:4px;font-size:10px;font-weight:800;color:#61798a}.p73-search input,.p73-search select,.p73-grid input,.p73-grid select,.p73-assign-form input,.p73-assign-form select,.p73-assign-form textarea,.p73-section textarea{width:100%;box-sizing:border-box;border:1px solid #cbd9e4;border-radius:10px;padding:10px 11px;background:#fff}.p73-count{display:inline-block;margin:10px 0}.p73-list{display:flex;flex-direction:column;gap:7px}.p73-person-row{padding:10px 12px}.p73-avatar{width:42px;height:42px;border-radius:12px;background:#e9f4fa;display:grid;place-items:center;font-weight:950;color:#185a82}.p73-main{flex:1;min-width:0}.p73-main b{display:block;font-size:13px}.p73-main span{display:block;font-size:10px;color:#718697;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p73-meta{display:flex;align-items:flex-end;flex-direction:column;gap:4px}.p73-meta small{font-size:9px;color:#8a9ba7}.p73-state{padding:4px 8px;border-radius:999px;background:#eef2f5;font-size:9px;font-weight:900}.p73-state.state-activo{background:#e4f7e9;color:#20723e}.p73-state.state-cesado,.p73-state.state-baja{background:#f5ecec;color:#8f4141}.p73-tabs{position:sticky;top:0;z-index:4;display:flex;gap:6px;overflow:auto;background:#f7fafc;padding:7px 0 9px;margin-bottom:8px}.p73-tabs a{white-space:nowrap;text-decoration:none;color:#315b75;background:#fff;border:1px solid #d8e3eb;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:800}.p73-profile{display:flex;flex-direction:column;gap:9px}.p73-section h2{font-size:14px;margin:0 0 10px;color:#1a4b69}.p73-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.p73-grid .wide{grid-column:span 2}.p73-seasons{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.p73-seasons span{padding:5px 8px;border-radius:999px;background:#f1f5f8;font-size:9px}.p73-assignment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.p73-assignment{border:1px solid #e0e8ee;border-radius:10px;padding:8px;background:#fbfdfe}.p73-assignment b,.p73-assignment span,.p73-assignment small{display:block}.p73-assignment b{font-size:10px}.p73-assignment span{font-size:9px;color:#567184;margin-top:2px}.p73-assignment small{font-size:8px;color:#8a9ca8;margin-top:3px}.p73-save{display:flex;justify-content:flex-end}.p73-equipment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.p73-equipment-card{padding:12px}.p73-eq-icon{font-size:24px}.p73-equipment-card>div:nth-child(2){flex:1}.p73-equipment-card b,.p73-equipment-card span,.p73-equipment-card small{display:block}.p73-equipment-card span{font-size:9px;color:#718697;margin-top:2px}.p73-equipment-card small{font-size:9px;color:#557287;margin-top:5px}.p73-detail-cols{display:grid;grid-template-columns:1.45fr .75fr;gap:10px}.p73-issue-row{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid #edf1f4}.p73-issue-row:last-child{border-bottom:0}.p73-issue-row b,.p73-issue-row span,.p73-issue-row small{display:block}.p73-issue-row b{font-size:11px}.p73-issue-row span{font-size:9px;color:#557184}.p73-issue-row small{font-size:8px;color:#8a9ca8;margin-top:2px}.p73-assign-form{display:flex;flex-direction:column;gap:8px}
@media(max-width:760px){.p73-head{align-items:center}.p73-head h1,.p73-head.compact h1{font-size:22px}.p73-head .eyebrow{font-size:10px}.p73-menu{grid-template-columns:1fr}.p73-menu-card{padding:14px}.p73-menu-card b{font-size:15px}.p73-menu-card small{display:none}.p73-kpis{gap:5px}.p73-kpis span{padding:5px 8px;font-size:9px}.p73-search{grid-template-columns:1fr 1fr}.p73-search label:first-child{grid-column:1/-1}.p73-search .btn{min-height:43px}.p73-person-row{padding:9px}.p73-avatar{width:38px;height:38px}.p73-meta small{display:none}.p73-grid{grid-template-columns:1fr 1fr}.p73-grid .wide{grid-column:1/-1}.p73-assignment-grid{grid-template-columns:1fr 1fr}.p73-equipment-grid{grid-template-columns:1fr}.p73-detail-cols{grid-template-columns:1fr}.p73-issue-row{align-items:flex-start}.p73-tabs{top:52px}.p73-head .btn{font-size:10px;padding:8px 10px}.p73-subline{font-size:9px}}
/* Motor 73.1 - Personal, dotación e inventario */
.p73-menu-4{grid-template-columns:repeat(2,minmax(0,1fr))}.p73-menu-card.police{border-left:5px solid #2f76ad}.p73-menu-card.aux{border-left:5px solid #d89b20}.p73-menu-card.equip{border-left:5px solid #51865a}.p73-menu-card.inventory{border-left:5px solid #7b6aa5}.p73-person-rich{min-height:72px;padding:12px 14px}.p73-person-rich.police{border-left:4px solid #7cb1d2}.p73-person-rich.aux{border-left:4px solid #e5b34b}.p73-photo-mini{width:52px;height:52px;flex:0 0 52px;border-radius:14px;background:#edf6fb;overflow:hidden;display:grid;place-items:center;font-weight:950;color:#185a82}.p73-photo-mini img{width:100%;height:100%;object-fit:cover}.p73-chips,.p73-summary-chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}.p73-chips em,.p73-summary-chips span{font-style:normal;font-size:8px;font-weight:800;padding:4px 7px;border-radius:999px;background:#eef4f8;color:#41657c}.p73-chips em.warn{background:#fff3da;color:#8a5b00}.p73-profile-head{display:grid;grid-template-columns:115px minmax(0,1fr) auto;gap:16px;align-items:center;margin-bottom:10px}.p73-profile-photo{width:100px;height:112px;border-radius:16px;background:#eef5f9;border:1px dashed #aec6d6;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;color:#7890a0}.p73-profile-photo img{width:100%;height:100%;object-fit:cover}.p73-profile-photo span{font-size:30px}.p73-profile-photo small{font-size:9px}.p73-profile-title h1{margin:2px 0;font-size:28px;color:#173d59}.p73-profile-actions{display:flex;gap:7px;flex-direction:column}.p73-section-title{display:flex;justify-content:space-between;align-items:center;gap:10px}.p73-docs{display:flex;gap:7px;flex-wrap:wrap}.p73-docs a,.p73-docs span{padding:9px 11px;border:1px solid #dbe5eb;border-radius:10px;text-decoration:none;color:#315d77;background:#fbfdfe;font-size:10px}.p73-assignment.returned{opacity:.65;background:#f4f6f7}.p73-inline-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.p73-stock-strip{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 10px}.p73-stock-strip span{background:#eef5fa;border:1px solid #d5e3ec;padding:7px 10px;border-radius:999px;font-size:10px;color:#496b80}.p73-stock-strip b{font-size:15px;color:#164d6d}.p73-two{display:grid;grid-template-columns:1fr 1fr;gap:7px}.p73-return-form{display:flex;align-items:flex-end;gap:7px;flex-direction:column;font-size:9px}.p73-movements{display:flex;flex-direction:column;gap:5px}.p73-movements span{font-size:9px;padding:7px 8px;border-radius:8px;background:#f7fafc}.p73-search-simple{grid-template-columns:minmax(260px,1fr) auto}.p73-inventory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.p73-inventory-card{display:grid;grid-template-columns:1fr auto;gap:6px 10px;align-items:center;background:#fff;border:1px solid #d8e3eb;border-radius:14px;padding:12px;text-decoration:none;color:#193f59;box-shadow:0 3px 14px #173e5710}.p73-inventory-card b{display:block;font-size:12px}.p73-inventory-card small{display:block;color:#728899;font-size:9px;margin-top:3px}.p73-inventory-card strong{font-size:24px;background:#e6f5ea;color:#236b3c;min-width:40px;text-align:center;border-radius:11px;padding:7px}.p73-inventory-card strong.low{background:#fff0df;color:#a55d00}.p73-stock-sizes{grid-column:1/-1;display:flex;gap:4px;flex-wrap:wrap}.p73-stock-sizes span{font-size:8px;background:#f0f5f8;border-radius:999px;padding:4px 6px}.p73-inventory-card i{position:absolute;opacity:0}.p73-receipt-form{max-width:900px;margin:auto}.p73-receipt-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:16px}.p73-receipt-items label{display:flex;align-items:flex-start;gap:8px;border:1px solid #dce6ec;border-radius:10px;padding:9px;background:#fbfdfe}.p73-receipt-items b,.p73-receipt-items small{display:block}.p73-receipt-items b{font-size:10px}.p73-receipt-items small{font-size:8px;color:#718898}.p73-signature{width:100%;height:180px;border:2px dashed #a9c1d1;border-radius:12px;background:#fff;touch-action:none}.muted{color:#718797;font-size:10px}
@media(max-width:760px){.p73-menu-4{grid-template-columns:1fr}.p73-profile-head{grid-template-columns:76px 1fr;gap:10px}.p73-profile-photo{width:70px;height:82px;border-radius:12px}.p73-profile-actions{grid-column:1/-1;flex-direction:row}.p73-profile-title h1{font-size:21px}.p73-summary-chips{gap:4px}.p73-summary-chips span{font-size:7px}.p73-person-rich{min-height:64px}.p73-photo-mini{width:46px;height:46px;flex-basis:46px}.p73-chips em{font-size:7px;padding:3px 5px}.p73-inventory-grid{grid-template-columns:1fr}.p73-receipt-items{grid-template-columns:1fr}.p73-signature{height:150px}.p73-two{grid-template-columns:1fr 1fr}.p73-section-title{align-items:flex-start}.p73-inline-actions{justify-content:flex-end}}

/* Motor 73.2 - ficha emergente de personal */
body.p73m-open{overflow:hidden}.p73m-backdrop{position:fixed;inset:0;z-index:9998;background:rgba(14,37,55,.62);backdrop-filter:blur(2px);display:grid;place-items:center;padding:18px}.p73m-backdrop[hidden]{display:none!important}.p73m-host{width:min(1120px,96vw);max-height:94vh}.p73m-loading{background:#fff;border-radius:18px;padding:28px;text-align:center;color:#45657a;box-shadow:0 20px 70px #0004}.p73m-shell{background:#f7fafc;border-radius:18px;box-shadow:0 24px 80px #071b2a55;overflow:hidden;max-height:94vh;display:flex;flex-direction:column;border:1px solid #d2e0ea}.p73m-topbar{height:46px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;background:#fff;border-bottom:1px solid #dbe6ed;color:#173f5a}.p73m-topbar strong{font-size:15px}.p73m-close{border:0;background:transparent;font-size:28px;line-height:1;color:#234e69;cursor:pointer}.p73m-body{padding:16px 18px;overflow:auto}.p73m-head{display:grid;grid-template-columns:105px minmax(0,1fr) auto;gap:16px;align-items:center}.p73m-photo{width:100px;height:118px;border-radius:14px;background:#eaf2f7;border:1px solid #d1e0ea;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#7891a2}.p73m-photo img{width:100%;height:100%;object-fit:cover}.p73m-photo span{font-size:30px}.p73m-photo small{font-size:9px}.p73m-titleline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.p73m-title h2{margin:0;color:#173e59;font-size:27px;line-height:1.05}.p73m-title p{margin:6px 0 0;color:#527084;font-size:12px}.p73m-actions{display:flex;gap:7px;align-self:start}.p73m-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}.p73m-kpis>div{background:#edf5fa;border:1px solid #dce8ef;border-radius:12px;padding:10px 12px}.p73m-kpis span,.p73m-kpis b{display:block}.p73m-kpis span{font-size:9px;color:#688093}.p73m-kpis b{margin-top:3px;font-size:14px;color:#153f5b}.p73m-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.p73m-card{background:#fff;border:1px solid #d7e3eb;border-radius:13px;overflow:hidden;min-width:0}.p73m-card h3{margin:0;padding:9px 11px;background:#0e4f7c;color:#fff;font-size:12px}.p73m-card dl{margin:0;padding:10px 12px;display:grid;grid-template-columns:105px 1fr;gap:7px 10px;font-size:10px}.p73m-card dt{color:#6a8192}.p73m-card dd{margin:0;color:#173e59;font-weight:700;overflow-wrap:anywhere}.p73m-wide{grid-column:span 1}.p73m-cardhead{display:flex;align-items:center;justify-content:space-between;background:#0e4f7c;padding:0 10px}.p73m-cardhead h3{padding-left:0}.p73m-cardhead a,.p73m-cardhead span{font-size:9px;color:#fff;text-decoration:none}.p73m-tiles,.p73m-equip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:9px}.p73m-tiles>div,.p73m-equip>div{border:1px solid #e2eaf0;border-radius:9px;padding:7px;background:#fbfdfe}.p73m-tiles b,.p73m-tiles span,.p73m-equip b,.p73m-equip span{display:block}.p73m-tiles b,.p73m-equip b{font-size:9px;color:#1a4663}.p73m-tiles span,.p73m-equip span{font-size:8px;color:#6a8192;margin-top:2px}.p73m-docs{padding:9px;display:flex;flex-direction:column;gap:5px}.p73m-docs a{font-size:9px;text-decoration:none;color:#285a78;padding:7px 8px;border:1px solid #e2eaf0;border-radius:8px;background:#fbfdfe}.p73m-empty{font-size:9px;color:#7c909f;margin:8px}.p73m-footer{display:flex;justify-content:flex-end;padding:10px 18px;background:#fff;border-top:1px solid #dbe6ed}.p73-person-row[data-p73-modal]{cursor:pointer}
@media(max-width:900px){.p73m-backdrop{padding:8px}.p73m-host{width:100%;max-height:96vh}.p73m-shell{max-height:96vh;border-radius:14px}.p73m-body{padding:12px}.p73m-head{grid-template-columns:78px 1fr}.p73m-photo{width:74px;height:88px}.p73m-actions{grid-column:1/-1;justify-content:flex-end}.p73m-title h2{font-size:20px}.p73m-kpis{grid-template-columns:1fr 1fr}.p73m-grid{grid-template-columns:1fr}.p73m-card dl{grid-template-columns:95px 1fr}.p73m-topbar{height:42px}.p73m-footer{padding:8px 12px}}

/* Motor 73.3 - ficha emergente operativa real */
.p73m-shell{background:#f5f8fb}
.p73m-body{scrollbar-gutter:stable}
.p73m-photo{position:relative;background:linear-gradient(145deg,#eef4f8,#e3edf3)}
.p73m-photo:has(img){border-style:solid}
.p73m-photo:not(:has(img)){border:1px dashed #a9bfce}
.p73m-actions .btn{white-space:nowrap}
.p73m-cardhead a{background:#ffffff14;border:1px solid #ffffff3a;border-radius:7px;padding:4px 7px;font-weight:800}
.p73-person-row[data-p73-modal]:focus{outline:3px solid #1684d8;outline-offset:2px}
@media(max-width:900px){.p73m-backdrop{align-items:stretch}.p73m-host{height:100%;max-height:none}.p73m-shell{height:100%;max-height:none;border-radius:12px}.p73m-body{flex:1}.p73m-footer{position:sticky;bottom:0}}

/* Motor 73.4 - tipografía legible + orden/filtros de personal */
.p73-search-aux{grid-template-columns:minmax(260px,2fr) minmax(145px,.7fr) minmax(145px,.7fr) auto}
.p73m-topbar strong{font-size:18px}.p73m-body{font-size:15px}.p73m-title h2{font-size:32px}.p73m-title p{font-size:16px;line-height:1.35}.p73m-photo small{font-size:13px}.p73m-kpis span{font-size:13px}.p73m-kpis b{font-size:18px}.p73m-card h3{font-size:16px;padding:12px 14px}.p73m-card dl{font-size:14px;line-height:1.35;grid-template-columns:125px 1fr;gap:9px 12px;padding:13px 15px}.p73m-cardhead a,.p73m-cardhead span{font-size:13px}.p73m-tiles b,.p73m-equip b{font-size:13px}.p73m-tiles span,.p73m-equip span{font-size:12px;line-height:1.3}.p73m-docs a{font-size:13px}.p73m-empty{font-size:13px}.p73m-footer .btn,.p73m-actions .btn{font-size:15px}.p73-state{font-size:13px!important}
@media(max-width:900px){.p73m-title h2{font-size:25px}.p73m-title p{font-size:15px}.p73m-kpis span{font-size:12px}.p73m-kpis b{font-size:16px}.p73m-card h3{font-size:16px}.p73m-card dl{font-size:14px;grid-template-columns:115px 1fr}.p73m-tiles b,.p73m-equip b,.p73m-docs a{font-size:13px}.p73m-tiles span,.p73m-equip span{font-size:12px}.p73-search-aux{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.p73-search-aux{grid-template-columns:1fr}.p73m-card dl{grid-template-columns:105px 1fr}.p73m-body{font-size:15px}}

/* Motor 73.5 - modal móvil con scroll real + foto de perfil desde DNI */
.p73-field-help{display:block;margin-top:5px;color:#718797;font-size:11px;font-weight:500;line-height:1.35}
.p73m-topbar,.p73m-footer{flex:0 0 auto}
.p73m-body{min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}
@media(max-width:900px){
  .p73m-backdrop{padding:6px;display:flex;align-items:stretch;justify-content:center;overflow:hidden}
  .p73m-host{width:100%;height:calc(100dvh - 12px);max-height:calc(100dvh - 12px);min-height:0;overflow:hidden}
  .p73m-shell{height:100%;max-height:100%;min-height:0;overflow:hidden;border-radius:14px;display:flex;flex-direction:column}
  .p73m-topbar{position:relative;z-index:3;height:48px;min-height:48px;padding:0 16px}
  .p73m-body{flex:1 1 auto;min-height:0;height:auto;overflow-y:auto!important;overflow-x:hidden;padding:14px 14px 24px;scrollbar-gutter:auto}
  .p73m-footer{position:relative!important;bottom:auto;padding:10px 14px;z-index:2}
  .p73m-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .p73m-backdrop{padding:0}
  .p73m-host{height:100dvh;max-height:100dvh}
  .p73m-shell{height:100dvh;max-height:100dvh;border-radius:0}
  .p73m-topbar{height:52px;min-height:52px;padding:0 18px}
  .p73m-topbar strong{font-size:20px}
  .p73m-close{font-size:31px;padding:7px}
  .p73m-body{padding:14px 16px 30px}
  .p73m-head{grid-template-columns:126px minmax(0,1fr);gap:16px;align-items:start}
  .p73m-photo{width:122px;height:150px}
  .p73m-title h2{font-size:28px;line-height:1.08}
  .p73m-title p{font-size:17px;line-height:1.35}
  .p73m-actions{grid-column:2;justify-content:flex-start;margin-top:-54px;align-self:end}
  .p73m-actions .btn{font-size:17px;padding:11px 16px}
  .p73m-kpis{gap:10px;margin:18px 0}
  .p73m-kpis>div{padding:13px 14px;min-height:80px}
  .p73m-kpis span{font-size:14px}
  .p73m-kpis b{font-size:20px;margin-top:5px}
  .p73m-grid{gap:12px}
  .p73m-card h3{font-size:18px;padding:14px 16px}
  .p73m-card dl{grid-template-columns:42% 58%;font-size:16px;line-height:1.45;gap:12px 10px;padding:16px}
  .p73m-cardhead{padding:0 13px}
  .p73m-cardhead a,.p73m-cardhead span{font-size:14px;padding:6px 9px}
  .p73m-tiles,.p73m-equip{grid-template-columns:1fr;gap:8px;padding:12px}
  .p73m-tiles>div,.p73m-equip>div{padding:11px 12px}
  .p73m-tiles b,.p73m-equip b{font-size:15px}
  .p73m-tiles span,.p73m-equip span{font-size:14px}
  .p73m-docs{padding:12px}.p73m-docs a{font-size:15px;padding:11px}
  .p73m-empty{font-size:14px}
  .p73m-footer{padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff}
  .p73m-footer .btn{font-size:16px;min-height:44px}
}

/* MOTOR 73.6 — Personal: listado PC amplio, foto desde documento, antigüedad e histórico */
@media (min-width:901px){
  .p73-person-rich{display:grid;grid-template-columns:64px minmax(220px,1.55fr) minmax(110px,.65fr) minmax(115px,.7fr) minmax(115px,.7fr) minmax(120px,.75fr) auto 18px;gap:18px;align-items:center;min-height:86px;padding:14px 18px}
  .p73-person-rich.aux{grid-template-columns:64px minmax(260px,1.8fr) minmax(120px,.7fr) minmax(120px,.7fr) minmax(140px,.8fr) auto 18px}
  .p73-photo-mini{width:58px;height:58px;flex-basis:58px}
  .p73-main-wide b{font-size:17px;line-height:1.15}.p73-main-wide .p73-list-role{font-size:13px;margin-top:5px;color:#587287}
  .p73-list-fact{min-width:0}.p73-list-fact small{display:block;font-size:11px;color:#8195a4;margin-bottom:4px}.p73-list-fact strong{display:block;font-size:15px;color:#173e59;white-space:nowrap}.p73-list-dot em{display:block;font-size:10px;color:#9a5d00;font-style:normal;margin-top:3px}
  .p73-meta{min-width:105px}.p73-meta .p73-state{font-size:12px!important;padding:6px 10px}.p73-meta small{font-size:10px;margin-top:3px}
  .p73-count-big{font-size:16px!important;font-weight:900;padding:9px 14px!important;color:#184d6d!important}
}
@media(max-width:900px){.p73-list-fact{display:none}.p73-count-big{font-size:14px!important;font-weight:900}.p73-main-wide b{font-size:15px}.p73-main-wide .p73-list-role{font-size:12px}}
.p73-photo-form{margin:0}.p73-file-hidden{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}.p73-photo-click{cursor:pointer;position:relative}.p73-photo-overlay{position:absolute;left:6px;right:6px;bottom:6px;background:rgba(11,56,84,.86);color:#fff;border-radius:8px;padding:5px 6px;font-size:10px!important;text-align:center;opacity:0;transition:opacity .15s}.p73-photo-click:hover .p73-photo-overlay,.p73-photo-click:focus-within .p73-photo-overlay{opacity:1}.p73-photo-help{font-size:11px;color:#6b8191;margin:-4px 0 10px 132px}.p73-field-help{font-weight:500;color:#8092a0}.p73-interim[hidden]{display:none!important}
.p73-auto-counter{border:1px solid #cbd9e4;border-radius:11px;background:#f8fbfd;padding:10px 12px;display:grid;grid-template-columns:1fr 1fr;gap:4px 10px;align-items:end}.p73-auto-counter span{grid-column:1/-1;font-size:10px;font-weight:800;color:#61798a}.p73-auto-counter b,.p73-auto-counter strong{font-size:18px;color:#174766}.p73-auto-counter small{grid-column:1/-1;font-size:9px;color:#8294a1;font-weight:500}
.p73-history{display:flex;flex-direction:column;gap:8px}.p73-history article{display:grid;grid-template-columns:130px 1fr;gap:12px;border-left:4px solid #72a9c9;background:#f9fcfe;border-radius:10px;padding:10px 12px}.p73-history time{font-size:10px;font-weight:900;color:#557286}.p73-history p{margin:0 0 5px;display:grid;grid-template-columns:165px 1fr;gap:8px;font-size:10px}.p73-history p:last-child{margin-bottom:0}.p73-history p b{color:#184a69}.p73-history p span{color:#647b8b}
.p73-document-upload{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:10px}.p73-document-upload label{display:flex;flex-direction:column;gap:5px;font-size:10px;font-weight:800;color:#61798a}.p73-document-upload input{border:1px solid #cbd9e4;border-radius:10px;padding:9px;background:#fff}
.p73-assignment-open{appearance:none;text-align:left;width:100%;font-family:inherit;cursor:pointer;position:relative}.p73-assignment-open:hover{border-color:#7db2d1;box-shadow:0 3px 12px #174f7214}.p73-assignment-open em{display:block;font-size:8px;color:#2b6b92;font-style:normal;font-weight:900;margin-top:5px}
.p73-detail-backdrop{position:fixed;inset:0;z-index:10020;background:rgba(14,37,55,.62);display:grid;place-items:center;padding:16px}.p73-detail-backdrop[hidden]{display:none!important}.p73-detail-modal{width:min(520px,94vw);background:#fff;border-radius:16px;padding:18px;box-shadow:0 22px 70px #0d2c3f55}.p73-detail-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e1e9ee;padding-bottom:10px;margin-bottom:12px}.p73-detail-head h3{margin:0;color:#174767;font-size:19px}.p73-detail-head button{border:0;background:transparent;font-size:28px;color:#31566e;cursor:pointer}.p73-detail-modal dl{display:grid;grid-template-columns:155px 1fr;gap:9px 12px;margin:0 0 16px;font-size:13px}.p73-detail-modal dt{color:#718697}.p73-detail-modal dd{margin:0;font-weight:800;color:#173e59;overflow-wrap:anywhere}
@media(max-width:760px){.p73-photo-help{margin:0 0 10px;font-size:11px}.p73-photo-overlay{opacity:1}.p73-document-upload{grid-template-columns:1fr}.p73-history article{grid-template-columns:1fr}.p73-history p{grid-template-columns:1fr;gap:2px}.p73-detail-modal dl{grid-template-columns:125px 1fr}.p73-auto-counter{grid-column:1/-1}}

/* MOTOR 73.7 — situación/antigüedad e historial administrativo emergente */
.p73-history-card{cursor:pointer;padding:0!important;overflow:hidden;border:1px solid #cddde8;transition:border-color .15s,box-shadow .15s,transform .15s}.p73-history-card:hover,.p73-history-card:focus{border-color:#6aa8cf;box-shadow:0 6px 18px #174f7217;outline:none}.p73-history-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px}.p73-history-summary>div{display:flex;align-items:center;gap:14px;min-width:0}.p73-history-icon{display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;border-radius:12px;background:#eaf4fa;font-size:23px}.p73-history-summary h2{margin:0 0 5px;font-size:17px;color:#173f5b}.p73-history-summary p{margin:0;color:#6a8192;font-size:12px;line-height:1.4}.p73-history-summary p strong{color:#31566f}.p73-history-arrow{white-space:nowrap;color:#176da6;font-size:13px;font-weight:900}.p73-history-backdrop{position:fixed;inset:0;z-index:10030;background:rgba(14,37,55,.66);display:flex;align-items:center;justify-content:center;padding:20px}.p73-history-backdrop[hidden]{display:none!important}.p73-history-modal{width:min(820px,96vw);max-height:min(84vh,820px);overflow:auto;background:#fff;border-radius:18px;padding:20px;box-shadow:0 24px 80px #0d2c3f66}.p73-history-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.p73-history-toolbar p{margin:0;color:#6b8293;font-size:12px}.p73-history-timeline{display:flex;flex-direction:column;gap:9px}.p73-history-entry{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 14px;border:1px solid #d9e5ed;border-left:5px solid #2e88bd;border-radius:12px;background:#fbfdfe}.p73-history-date b,.p73-history-date span{display:block}.p73-history-date b{font-size:13px;color:#173f5b}.p73-history-date span{margin-top:3px;font-size:11px;color:#758b9b}.p73-history-entry-body strong{font-size:14px;color:#123f5f}.p73-history-entry-body p{margin:4px 0 0;font-size:12px;color:#687f90}.p73-history-empty{padding:24px;text-align:center;border:1px dashed #c7d8e4;border-radius:12px;color:#708696;background:#f9fcfe}.p73-history-form{margin-top:16px;padding:16px;border:1px solid #bed5e4;border-radius:14px;background:#f7fbfd}.p73-history-form[hidden]{display:none!important}.p73-history-form h4{margin:0 0 12px;color:#174866;font-size:16px}.p73-history-form-actions,.p73-history-footer{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}.p73-history-footer{border-top:1px solid #e1e9ee;padding-top:14px}.p73-modal-open{overflow:hidden}.p73-auto-counter{grid-template-columns:auto auto 1fr!important;align-items:center!important}.p73-auto-counter span{grid-column:auto!important;font-size:12px!important}.p73-auto-counter b,.p73-auto-counter strong{font-size:20px!important;white-space:nowrap}.p73-auto-counter small{grid-column:1/-1!important;font-size:10px!important}.p73-assignment-open{min-height:88px!important;padding:12px 14px!important}.p73-assignment-open b{font-size:13px!important}.p73-assignment-open span{font-size:11px!important}.p73-assignment-open em{font-size:10px!important}.p73-detail-backdrop[hidden],.p73-history-backdrop[hidden]{display:none!important}
@media(max-width:760px){.p73-history-backdrop{padding:8px;align-items:stretch}.p73-history-modal{width:100%;max-height:calc(100dvh - 16px);border-radius:14px}.p73-history-toolbar{align-items:stretch;flex-direction:column}.p73-history-entry{grid-template-columns:1fr auto}.p73-history-date{grid-column:1/-1}.p73-history-summary{padding:15px}.p73-history-arrow{font-size:0}.p73-history-arrow:after{content:'›';font-size:26px}.p73-auto-counter{grid-template-columns:1fr 1fr!important}.p73-auto-counter span{grid-column:1/-1!important}}

/* MOTOR 73.8 · entregas, recibis e historial */
.p73-delivery-section{border-left:5px solid #6aa7c9}.p73-delivery-section#vestuario{border-left-color:#ba8b39}.p73-section-sub{margin:2px 0 0;color:#718797;font-size:11px}.p73-empty{color:#718797;font-size:12px}.p73-receipt-history{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.p73-receipt-history a{display:flex;flex-direction:column;gap:3px;padding:12px;border:1px solid #d8e5ed;border-radius:11px;text-decoration:none;color:#183f5a;background:#fbfdfe}.p73-receipt-history a strong{font-size:14px}.p73-receipt-history a span,.p73-receipt-history a small{font-size:10px;color:#6d8495}.p73-receipt-history a b{font-size:10px;color:#176fa6;margin-top:4px}.p73-delivery-form{display:flex;flex-direction:column;gap:14px}.p73-delivery-top{display:grid;grid-template-columns:240px 1fr;gap:16px;align-items:end}.p73-delivery-top label{display:flex;flex-direction:column;gap:5px;font-weight:800;color:#49697e}.p73-delivery-top input{padding:11px;border:1px solid #cad9e4;border-radius:10px}.p73-delivery-top div{display:flex;flex-direction:column;gap:3px}.p73-delivery-top span{color:#6c8292;font-size:11px}.p73-delivery-lines{display:flex;flex-direction:column;gap:8px}.p73-delivery-line{display:grid;grid-template-columns:2fr .55fr .7fr 1fr 2fr auto;gap:8px;align-items:end;padding:11px;border:1px solid #d9e5ec;border-radius:12px;background:#fbfdfe}.p73-delivery-line label{display:flex;flex-direction:column;gap:4px;font-size:10px;font-weight:800;color:#5f788b}.p73-delivery-line input,.p73-delivery-line select{padding:9px;border:1px solid #cad9e4;border-radius:9px;background:white}.p73-line-remove{width:36px;height:36px;border-radius:9px;border:1px solid #e0c9c9;background:#fff;color:#9b4545;font-size:20px;cursor:pointer}.p73-crop-backdrop{position:fixed;inset:0;z-index:10060;background:#102c3ec7;display:flex;align-items:center;justify-content:center;padding:18px}.p73-crop-backdrop[hidden]{display:none!important}.p73-crop-modal{width:min(610px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:18px;padding:18px;box-shadow:0 30px 80px #0006}.p73-crop-stage{display:flex;justify-content:center;margin:12px 0;background:#e8eef2;border-radius:14px;padding:12px}.p73-crop-stage canvas{width:min(360px,80vw);height:auto;aspect-ratio:4/5;background:white;border-radius:12px;box-shadow:0 3px 14px #163f571e}.p73-crop-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.p73-crop-controls label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:800;color:#557084}.p73m-situation-card{cursor:pointer}.p73m-situation-card:hover{box-shadow:0 4px 14px #174f7218;border-color:#7db1d1}.p73m-openhint{float:right;font-size:10px;font-weight:800}.p73m-subbackdrop{position:fixed;inset:0;z-index:10080;background:#102c3eaa;display:flex;align-items:center;justify-content:center;padding:16px}.p73m-subbackdrop[hidden]{display:none!important}.p73m-submodal{width:min(720px,95vw);max-height:86vh;overflow:auto;background:white;border-radius:16px;padding:18px}.p73m-status-dl{display:grid;grid-template-columns:150px 1fr;gap:8px 14px}.p73m-status-history{display:flex;flex-direction:column;gap:8px;margin:10px 0 16px}.p73m-status-history article{display:grid;grid-template-columns:160px 180px 1fr;gap:10px;padding:10px;border:1px solid #dbe6ed;border-radius:10px}.p73m-status-history span,.p73m-status-history small{color:#6a8192;font-size:11px}
@media(max-width:760px){.p73-receipt-history{grid-template-columns:1fr}.p73-delivery-top{grid-template-columns:1fr}.p73-delivery-line{grid-template-columns:1fr 1fr}.p73-delivery-line label:first-child,.p73-delivery-line .wide{grid-column:1/-1}.p73-crop-controls{grid-template-columns:1fr}.p73m-status-history article{grid-template-columns:1fr}.p73-section-title{align-items:flex-start;flex-direction:column}.p73-section-title .btn{width:100%;text-align:center}}


/* MOTOR 73.9 — entrega profesional y popup administrativo real */
.p73-delivery-head{align-items:flex-end}.p73-delivery-head h1{margin-bottom:5px}.p73-delivery-form-v2{max-width:1180px;margin:0 auto;padding:20px!important;gap:18px!important}.p73-delivery-summary{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:16px;align-items:stretch}.p73-delivery-date{display:flex;flex-direction:column;gap:7px;padding:15px;border:1px solid #d6e3eb;border-radius:14px;background:#f9fcfe;color:#385d75;font-weight:900}.p73-delivery-date span{font-size:12px;text-transform:uppercase;letter-spacing:.03em}.p73-delivery-date input{font-size:16px!important;font-weight:800;padding:11px 12px!important;border:1px solid #bfcfd9!important;border-radius:10px!important;background:white}.p73-delivery-notice{display:flex!important;flex-direction:row!important;align-items:center;gap:13px;padding:14px 16px;border:1px solid #bcd9e9;border-radius:14px;background:#eef8fd}.p73-delivery-notice-icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:12px;background:#fff;color:#116da7;font-size:22px}.p73-delivery-notice b{font-size:14px;color:#184d6d}.p73-delivery-notice p{margin:4px 0 0;font-size:12px;line-height:1.45;color:#58758a}.p73-delivery-section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:4px}.p73-delivery-section-title h2{margin:0;font-size:18px;color:#153f5a}.p73-delivery-section-title p{margin:3px 0 0;font-size:11px;color:#718797}.p73-delivery-lines{gap:12px!important}.p73-delivery-line-v2{border:1px solid #d4e2eb;border-radius:15px;background:#fbfdfe;padding:14px 15px;box-shadow:0 2px 7px #123d5510}.p73-line-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.p73-line-number{font-size:13px;font-weight:900;color:#164b6d}.p73-line-number span{display:inline-grid;place-items:center;min-width:25px;height:25px;margin-left:5px;padding:0 7px;border-radius:999px;background:#e5f2f9;color:#145f8b}.p73-line-grid{display:grid;grid-template-columns:minmax(250px,2.2fr) minmax(90px,.55fr) minmax(135px,.8fr) minmax(170px,1fr) minmax(230px,1.7fr);gap:12px;align-items:end}.p73-line-grid label{display:flex;flex-direction:column;gap:5px;min-width:0}.p73-line-grid label>span{font-size:11px;font-weight:900;color:#5a7487}.p73-line-grid input,.p73-line-grid select{width:100%;min-height:42px;padding:9px 11px;border:1px solid #c6d7e2;border-radius:10px;background:#fff;font-size:13px;color:#183f59}.p73-line-grid select{font-weight:700}.p73-line-grid input:focus,.p73-line-grid select:focus{outline:2px solid #7fc0e5;outline-offset:1px;border-color:#5ba4cf}.p73-line-note{min-width:0}.p73-line-remove{width:34px!important;height:34px!important;border-radius:50%!important;font-size:18px!important}.p73-delivery-footer{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding-top:4px;border-top:1px solid #e3ebf0}.p73-delivery-submit{min-width:275px;font-size:14px!important;padding:11px 16px!important}
.p73m-subbackdrop{position:fixed!important;inset:0!important;z-index:120000!important;background:rgba(8,31,47,.72)!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:18px!important}.p73m-subbackdrop[hidden]{display:none!important}.p73m-situation-popup{position:relative!important;width:min(820px,94vw)!important;max-height:86vh!important;overflow:auto!important;background:#fff!important;border-radius:18px!important;padding:18px!important;box-shadow:0 30px 90px rgba(0,0,0,.38)!important}.p73m-status-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:12px 0 18px}.p73m-status-kpis>div{padding:12px;border:1px solid #d7e4ec;border-radius:12px;background:#f5fafc}.p73m-status-kpis span,.p73m-status-kpis b,.p73m-status-kpis small{display:block}.p73m-status-kpis span{font-size:10px;color:#6d8393;margin-bottom:4px}.p73m-status-kpis b{font-size:15px;color:#173f5a}.p73m-status-kpis small{font-size:10px;color:#6c8291;margin-top:2px}.p73m-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:4px;border-top:1px solid #e2eaf0}.p73m-history-head h4{font-size:16px;margin:13px 0 2px;color:#174866}.p73m-history-head p{font-size:11px;color:#738797;margin:0}.p73m-status-history article{grid-template-columns:minmax(0,1fr) auto!important;align-items:center}.p73m-status-history article>div{display:grid;grid-template-columns:150px 180px minmax(0,1fr);gap:10px;align-items:center}.p73m-status-history article small{line-height:1.35}.p73m-history-empty{margin:12px 0;padding:22px;text-align:center;border:1px dashed #cbdbe5;border-radius:12px;background:#fafcfd;color:#708696}.p73m-history-form{margin-top:14px;padding:14px;border:1px solid #bdd6e6;border-radius:14px;background:#f7fbfd}.p73m-history-form[hidden]{display:none!important}.p73m-history-form h4{margin:0 0 10px;color:#174866}.p73m-history-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.p73m-history-fields label{display:flex;flex-direction:column;gap:5px}.p73m-history-fields label>span{font-size:10px;font-weight:900;color:#587286}.p73m-history-fields input,.p73m-history-fields select,.p73m-history-fields textarea{width:100%;padding:9px 10px;border:1px solid #c7d8e3;border-radius:9px;background:#fff}.p73m-history-fields .wide{grid-column:1/-1}.p73m-subfooter{display:flex;justify-content:flex-end;margin-top:15px;padding-top:12px;border-top:1px solid #e1e9ee}
@media(max-width:900px){.p73-line-grid{grid-template-columns:2fr .6fr 1fr 1.3fr}.p73-line-note{grid-column:1/-1}}
@media(max-width:760px){.p73-delivery-form-v2{padding:13px!important}.p73-delivery-summary{grid-template-columns:1fr}.p73-delivery-section-title{align-items:stretch;flex-direction:column}.p73-delivery-section-title .btn{width:100%}.p73-delivery-line-v2{padding:12px}.p73-line-grid{grid-template-columns:1fr 1fr}.p73-line-item,.p73-line-note{grid-column:1/-1}.p73-delivery-footer{flex-direction:column-reverse;align-items:stretch}.p73-delivery-footer .btn,.p73-delivery-submit{width:100%;min-width:0}.p73m-status-kpis{grid-template-columns:1fr 1fr}.p73m-history-head{align-items:stretch;flex-direction:column}.p73m-history-head .btn{width:100%}.p73m-status-history article>div{grid-template-columns:1fr}.p73m-history-fields{grid-template-columns:1fr}.p73m-situation-popup{width:96vw!important;max-height:88vh!important;padding:14px!important}}

/* Motor 73.11 */
.p73-sign-choice{width:100%;min-height:160px;border:2px dashed #9dbbd0;border-radius:14px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#173f59;cursor:pointer}.p73-sign-choice span{font-size:32px}.p73-sign-choice b{font-size:18px}.p73-sign-choice small{color:#6e8494}.p73-sign-method-backdrop{position:fixed;inset:0;z-index:10150;background:#102c3eb8;display:flex;align-items:center;justify-content:center;padding:18px}.p73-sign-method-backdrop[hidden]{display:none!important}.p73-sign-method-modal{width:min(620px,96vw);background:#fff;border-radius:18px;padding:18px;box-shadow:0 30px 80px #0005}.p73-sign-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.p73-sign-method{padding:20px;border:1px solid #cddde7;border-radius:14px;background:#f8fbfd;text-align:left;cursor:pointer}.p73-sign-method b,.p73-sign-method span{display:block}.p73-sign-method b{font-size:16px;color:#164d6d}.p73-sign-method span{font-size:11px;color:#6e8494;margin-top:5px}.p73-qr-panel{display:grid;grid-template-columns:190px 1fr;gap:18px;align-items:center;border:1px solid #d6e4ec;background:#f8fbfd;border-radius:14px;padding:16px;margin:15px 0}.p73-qr-panel h3{grid-column:1/-1;margin:0}.p73-qr-panel img{width:180px;height:180px}.p73-receipt-archive summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;list-style:none;font-size:15px}.p73-receipt-tools{margin:14px 0 8px}.p73-receipt-tools select{padding:8px 10px;border:1px solid #cbdce7;border-radius:9px}.p73-receipt-list{display:flex;flex-direction:column;gap:6px}.p73-receipt-list article{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;border:1px solid #dce7ed;border-radius:10px;padding:9px 11px}.p73-receipt-list article div{display:flex;gap:9px;align-items:center}.p73-receipt-list span{color:#6d8495;font-size:10px}.p73-receipt-list em{font-style:normal;font-size:9px;background:#f7dede;color:#983b3b;padding:3px 6px;border-radius:999px}.p73-receipt-list article.annulled{opacity:.62}.p73-receipt-list a{font-size:11px;font-weight:800;color:#176fa6;text-decoration:none}.p73-receipt-x{width:28px;height:28px;border-radius:8px;border:1px solid #e0c4c4;background:#fff;color:#9b4141;font-size:18px;cursor:pointer}@media(max-width:760px){.p73-sign-method-grid{grid-template-columns:1fr}.p73-qr-panel{grid-template-columns:1fr;text-align:center}.p73-qr-panel img{margin:auto}.p73-receipt-list article{grid-template-columns:1fr auto}.p73-receipt-list article a{grid-column:1/2}.p73-receipt-list article form{grid-column:2;grid-row:1/3}}

/* Motor 73.12 · firma de recibís y archivo compacto */
.p73-sign-choice{min-height:190px;background:#fff;border:2px dashed #8fb4ce;box-shadow:inset 0 0 0 1px #fff;transition:.15s ease}
.p73-sign-choice:hover{background:#f8fcff;border-color:#4e94be}.p73-sign-choice.signed{border-style:solid;background:#f4fbf6;border-color:#9bd0aa}
.p73-sign-preview{max-width:330px;max-height:110px;object-fit:contain;margin:2px auto 7px;display:block}
.p73-sign-method-modal .p73-two input{font-size:15px;padding:11px 12px}.p73-sign-method.selected{outline:2px solid #1f80c5;background:#edf7fd}
.p73-receipts-compact{padding:13px 16px}.p73-receipts-compact .p73-receipt-archive:not([open]){min-height:26px}.p73-receipt-archive summary strong{font-size:12px;color:#607d90}.p73-receipt-list article{min-height:42px}.p73-receipt-list article div b{font-size:12px}.p73-receipt-list article div span{text-transform:capitalize}
@media(max-width:760px){.p73-sign-choice{min-height:165px}.p73-sign-preview{max-width:250px}.p73-receipts-compact{padding:11px 12px}}


/* Motor 73.13 - firma visual, QR fiable y cabecera móvil compacta */
.p73-sign-method-modal{width:min(720px,94vw);padding:0;overflow:hidden;border-radius:20px;background:#fff}
.p73-sign-method-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:22px 24px 18px;border-bottom:1px solid #dce8ef;background:linear-gradient(180deg,#fafdff,#f4f9fc)}
.p73-sign-method-head h3{margin:3px 0 4px;font-size:24px;color:#173f5a}.p73-sign-method-head p{margin:0;color:#6a8192;font-size:13px}
.p73-sign-kicker{font-size:10px;font-weight:800;letter-spacing:.08em;color:#317cab}.p73-sign-close{border:0;background:#eef5f9;color:#25516b;width:36px;height:36px;border-radius:10px;font-size:25px;line-height:1;cursor:pointer}
.p73-sign-method-grid{padding:18px 24px 10px;margin:0;gap:14px}.p73-sign-method{min-height:112px;padding:18px;border:1px solid #cfdfe9;border-radius:16px;background:#fff;display:grid;grid-template-columns:48px 1fr 24px;align-items:center;gap:13px;box-shadow:0 3px 12px #244b6410;transition:.15s ease}
.p73-sign-method:hover,.p73-sign-method:focus{border-color:#58a2cf;background:#f2f9fd;transform:translateY(-1px);box-shadow:0 8px 20px #244b6418;outline:none}.p73-sign-method.selected{border-color:#1f80c5;background:#edf7fd;outline:none}
.p73-sign-method-icon{width:48px;height:48px;border-radius:13px;background:#eaf4fa;display:grid;place-items:center;font-size:24px}.p73-sign-method-copy b{font-size:18px;color:#174764}.p73-sign-method-copy small{font-size:12px;line-height:1.35;color:#6e8494;margin-top:5px}.p73-sign-chevron{font-size:30px;color:#7ea5bd;text-align:right}
.p73-profile-sign-box{margin:8px 24px 22px;padding:18px;border:1px solid #cfe0ea;border-radius:15px;background:#f8fbfd}.p73-profile-sign-title{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:13px}.p73-profile-sign-title b{color:#174764;font-size:16px}.p73-profile-sign-title span{color:#6e8494;font-size:11px}.p73-profile-sign-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}
.p73-qr-panel{grid-template-columns:220px 1fr;grid-template-areas:"title title" "qr copy";padding:20px;gap:18px;background:#fff}.p73-qr-title{grid-area:title;display:flex;gap:10px;align-items:center}.p73-qr-title>span{font-size:28px}.p73-qr-title h3{margin:0;font-size:21px;color:#173f5a}.p73-qr-title p{margin:3px 0 0;color:#6e8494;font-size:12px}.p73-qr-image{grid-area:qr;width:220px;min-height:220px;display:grid;place-items:center;background:#fff;border:1px solid #d6e4ec;border-radius:14px;padding:10px}.p73-qr-panel .p73-qr-image img{width:200px;height:200px;display:block}.p73-qr-copy{grid-area:copy;align-self:center}.p73-qr-copy p{color:#5d7688;line-height:1.45}.p73-qr-error{text-align:center;color:#8b3f3f}.p73-qr-error b,.p73-qr-error span{display:block}.p73-qr-error span{font-size:11px;margin-top:6px}.p73-sign-status{margin-top:16px;padding:10px 12px;border-radius:10px;background:#edf5fa;color:#365b71}
@media(max-width:760px){.p73-sign-method-head{padding:18px}.p73-sign-method-grid{grid-template-columns:1fr;padding:14px 18px 8px}.p73-sign-method{min-height:96px}.p73-profile-sign-box{margin:8px 18px 18px}.p73-profile-sign-title{align-items:flex-start;flex-direction:column}.p73-qr-panel{grid-template-columns:1fr;grid-template-areas:"title" "qr" "copy";text-align:left}.p73-qr-image{margin:auto}.p73-qr-copy{text-align:center}}
@media(max-width:560px){.p73m-actions{grid-column:1!important;justify-content:center!important;margin-top:2px!important;align-self:start!important}.p73m-actions .btn{font-size:12px!important;padding:6px 9px!important;min-height:30px!important;border-radius:8px!important}.p73m-head{row-gap:6px!important}.p73m-title{grid-column:2;grid-row:1/3}.p73m-photo{grid-column:1;grid-row:1}}


/* Motor 73.14 · QR LAN y cabecera móvil corregida */
.p73m-photo-col{display:flex;flex-direction:column;align-items:center;gap:7px}.p73m-edit-mobile{display:none!important}.p73-mobile-url{display:block;margin-top:9px;color:#718796;word-break:break-all;font-size:10px}
@media(max-width:560px){
  .p73m-head{display:grid!important;grid-template-columns:126px minmax(0,1fr)!important;column-gap:16px!important;row-gap:8px!important;align-items:start!important}
  .p73m-photo-col{grid-column:1!important;grid-row:1!important;width:126px!important;align-items:center!important}
  .p73m-photo{grid-column:auto!important;grid-row:auto!important;width:126px!important;height:150px!important}
  .p73m-title{grid-column:2!important;grid-row:1!important;min-width:0!important}
  .p73m-title h2{font-size:27px!important;line-height:1.02!important;overflow-wrap:anywhere!important}
  .p73m-title p{font-size:15px!important;margin-top:10px!important}
  .p73m-actions{display:none!important}
  .p73m-edit-mobile{display:inline-flex!important;font-size:12px!important;line-height:1!important;padding:6px 10px!important;min-height:30px!important;border-radius:8px!important;width:auto!important;max-width:84px!important;justify-content:center!important}
}


/* Motor 73.15 · firma móvil unificada, historial seguro y secciones plegables */
.p73-section-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.p73-collapse-toggle{border:1px solid #c9dbe6;background:#fff;color:#23536f;border-radius:9px;padding:8px 11px;font-weight:800;cursor:pointer}.p73-collapsible.is-collapsed{padding-bottom:12px}.p73-collapsible.is-collapsed .p73-section-sub{margin-bottom:0}.p73-history-row-actions,.p73m-history-actions{display:flex;gap:7px;align-items:center}.p73-history-x{width:34px;height:34px;border-radius:9px;border:1px solid #e3c2c2;background:#fff;color:#9b3e3e;font-size:20px;line-height:1;cursor:pointer}.p73-history-x:hover{background:#fff1f1}.p73m-history-actions form{margin:0}.p73-sign-choice{border:2px dashed #8fb4ce;background:#fff;width:100%;min-height:170px}.p73-sign-choice:focus,.p73-sign-choice:hover{border-color:#3d92c4;background:#f7fcff;outline:none}.p73-qr-panel[hidden],.p73-profile-sign-box[hidden],.p73-sign-method-grid[hidden]{display:none!important}
@media(max-width:760px){.p73m-head{grid-template-columns:126px minmax(0,1fr)!important}.p73m-photo-col{width:126px!important}.p73m-edit-mobile{display:inline-flex!important;font-size:11px!important;padding:5px 8px!important;min-height:28px!important;max-width:76px!important;margin-top:4px!important}.p73m-actions{display:none!important}.p73-section-title{align-items:flex-start}.p73-section-actions{width:100%;justify-content:stretch}.p73-section-actions .btn{flex:1}.p73-collapse-toggle{flex:0 0 auto}.p73-sign-choice{min-height:150px}}

/* Motor 73.16 */
.p73-collapse-head{cursor:pointer;user-select:none;border-radius:12px;transition:background .15s ease}.p73-collapse-head:hover{background:#f5fafc}.p73-collapse-head:focus-visible{outline:2px solid #3b91c4;outline-offset:3px}.p73-collapse-arrow{display:inline-block;margin-left:6px;font-size:18px;color:#5e7c90;vertical-align:-1px}.p73-collapsible.is-collapsed .p73-section-sub{margin-bottom:0}.p73-docs-managed{display:grid;gap:7px}.p73-doc-row{display:flex;align-items:center;gap:8px;border:1px solid #d8e4eb;border-radius:10px;padding:7px 9px;background:#fff}.p73-doc-row>a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.p73-doc-x{flex:0 0 30px;width:30px;height:30px;border-radius:8px;border:1px solid #e4c3c3;background:#fff;color:#9d3d3d;font-size:19px;line-height:1;cursor:pointer}.p73-doc-x:hover{background:#fff1f1}.p73-sign-choice.is-signed{border-style:solid;border-color:#74bc96;background:#eef9f2;color:#17643d}.p73-sign-choice.is-signed small{color:#4f7d66}.p73-section-actions [data-collapse-action]{position:relative;z-index:2}
@media(max-width:760px){.p73-collapse-head{gap:8px}.p73-collapse-head .p73-section-actions{width:auto!important;margin-left:auto}.p73-collapse-head .p73-section-actions .btn{font-size:12px;padding:8px 10px}.p73-doc-row{align-items:flex-start}.p73-doc-row>a{white-space:normal;overflow-wrap:anywhere}}

/* Motor 73.17 */
.p73-catalog-backdrop{position:fixed;inset:0;z-index:2600;background:#0d2e4266;display:grid;place-items:center;padding:18px}.p73-catalog-backdrop[hidden]{display:none}.p73-catalog-modal{width:min(720px,96vw);background:#fff;border-radius:18px;padding:18px;box-shadow:0 24px 80px #06263a55}.p73-catalog-error{color:#a32424;font-weight:800;background:#fff0f0;border:1px solid #f0c4c4;border-radius:10px;padding:9px}.p73-detail-edit-modal{width:min(780px,96vw)!important}.p73-detail-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.p73-detail-edit-grid label{display:flex;flex-direction:column;gap:5px;font-weight:800;color:#355c73}.p73-detail-edit-grid label.wide{grid-column:1/-1}.p73-detail-edit-grid input,.p73-detail-edit-grid select,.p73-detail-edit-grid textarea{width:100%;padding:10px 11px;border:1px solid #c8d8e3;border-radius:10px;background:#fff;font:inherit;color:#173f59}.p73-detail-edit-grid textarea{resize:vertical}.p73-line-item select option[value="__new__"]{font-weight:900;color:#0d6fae}.p73-assignment-open{cursor:pointer}.p73-assignment-open:hover{border-color:#56a9d6;box-shadow:0 0 0 2px #7ec6ec22}@media(max-width:760px){.p73-detail-edit-grid{grid-template-columns:1fr}.p73-detail-edit-grid label.wide{grid-column:auto}.p73-catalog-modal{max-height:88vh;overflow:auto}}
/* Motor 73.18 · depuración definitiva Personal y dotación */
.p73-item-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.p73-item-group{border:1px solid #d8e5ed;border-radius:13px;background:#fbfdfe;overflow:hidden}.p73-item-group>summary{list-style:none;cursor:pointer;padding:12px;display:flex;justify-content:space-between;gap:10px;align-items:center}.p73-item-group>summary::-webkit-details-marker{display:none}.p73-item-group>summary b,.p73-item-group>summary span{display:block}.p73-item-group>summary b{font-size:13px;color:#173f59}.p73-item-group>summary span{font-size:9px;color:#708696;margin-top:3px}.p73-item-group>summary strong{font-size:10px;color:#176fa6;background:#eaf5fb;padding:5px 7px;border-radius:8px;text-align:right}.p73-item-history{border-top:1px solid #e2ebf0;padding:7px;display:flex;flex-direction:column;gap:6px;background:#fff}.p73-history-delivery{border:1px solid #e0e8ed;background:#f9fbfc;border-radius:9px;padding:8px;text-align:left;display:grid;grid-template-columns:78px 1fr auto;gap:7px;align-items:center;color:#294f67;cursor:pointer}.p73-history-delivery span{font-size:9px;color:#718797}.p73-history-delivery b{font-size:10px}.p73-history-delivery em{font-style:normal;font-size:8px;color:#176fa6}.p73-delivery-form-v3{max-width:980px;margin:0 auto;padding:18px!important}.p73-delivery-summary-v3{display:grid;grid-template-columns:230px 1fr;gap:12px;align-items:center}.p73-delivery-summary-v3 label{display:flex;flex-direction:column;gap:5px;font-weight:900;color:#385d75}.p73-delivery-summary-v3 label span{font-size:11px}.p73-delivery-summary-v3 input{padding:10px;border:1px solid #c6d7e2;border-radius:10px}.p73-delivery-summary-v3>div{background:#eef8fd;border:1px solid #c2deed;border-radius:12px;padding:11px 13px}.p73-delivery-summary-v3 b,.p73-delivery-summary-v3 small{display:block}.p73-delivery-summary-v3 small{margin-top:3px;color:#607b8d}.p73-delivery-line-v3{border:1px solid #d4e2eb;border-radius:14px;background:#fbfdfe;padding:12px}.p73-line-grid-v3{display:grid;grid-template-columns:minmax(250px,2fr) minmax(130px,.8fr) 95px minmax(170px,1fr) minmax(180px,1.3fr);gap:10px;align-items:end}.p73-line-grid-v3 label{display:flex;flex-direction:column;gap:4px;min-width:0}.p73-line-grid-v3 label>span{font-size:10px;font-weight:900;color:#5a7487}.p73-line-grid-v3 input,.p73-line-grid-v3 select{width:100%;min-height:40px;padding:8px 10px;border:1px solid #c6d7e2;border-radius:9px;background:#fff}.p73-catalog-inline{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px dashed #dbe5eb}.p73-catalog-inline small{color:#708696}.p73-detail-help{display:block;color:#718797;margin-top:3px}.p73-detail-edit-modal{width:min(720px,94vw)!important}.p73-detail-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.p73-detail-edit-grid label>span,.p73-detail-edit-grid label{font-size:11px}.p73-detail-edit-grid input,.p73-detail-edit-grid select,.p73-detail-edit-grid textarea{box-sizing:border-box}.p73-photo-overlay{font-size:9px!important;padding:3px 6px!important;bottom:4px!important;left:50%!important;transform:translateX(-50%)!important;top:auto!important;width:auto!important;height:auto!important;border-radius:7px!important;background:#173f59dd!important;color:#fff!important;white-space:nowrap}
@media(max-width:900px){.p73-item-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.p73-line-grid-v3{grid-template-columns:1fr 1fr}.p73-line-item,.p73-line-note{grid-column:1/-1}}
@media(max-width:760px){.p73-profile-head{grid-template-columns:1fr!important}.p73-photo-form{display:flex!important;justify-content:center}.p73-profile-photo{width:150px!important;height:188px!important;margin:0 auto 4px!important}.p73-profile-title{text-align:center}.p73-profile-actions{grid-column:auto!important;justify-content:center!important}.p73-profile-actions .btn{padding:6px 9px!important;font-size:10px!important}.p73-item-groups{grid-template-columns:1fr}.p73-history-delivery{grid-template-columns:72px 1fr}.p73-history-delivery em{grid-column:1/-1;text-align:right}.p73-delivery-form-v3{padding:12px!important}.p73-delivery-summary-v3{grid-template-columns:1fr}.p73-line-grid-v3{grid-template-columns:1fr 92px}.p73-line-item,.p73-line-note,[data-size-label],[data-serial-label]{grid-column:1/-1}.p73-catalog-inline{align-items:stretch;flex-direction:column}.p73-detail-edit-modal{width:96vw!important;max-height:88vh!important;overflow:auto!important;padding:13px!important}.p73-detail-edit-grid{grid-template-columns:1fr!important;gap:9px!important}.p73-detail-edit-grid label.wide{grid-column:auto!important}.p73-detail-edit-grid input,.p73-detail-edit-grid select,.p73-detail-edit-grid textarea{min-height:42px;font-size:16px!important}.p73-detail-edit-grid textarea{min-height:80px}.p73-photo-overlay{position:absolute!important;bottom:5px!important}}

/* Motor 73.19 · buzón interno y firma con perfil diferida */
.internal-inbox-top{position:relative;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;text-decoration:none;background:#eef5fa;border:1px solid #d8e5ee;color:#164f73;transition:.16s ease;flex:none}
.internal-inbox-top:hover{background:#dcecf7;transform:translateY(-1px)}
.internal-inbox-top svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.internal-inbox-top.has-mail{background:#edf7ff;border-color:#b8d8ee;box-shadow:0 0 0 2px rgba(24,121,190,.05)}
.internal-inbox-count{position:absolute;right:-4px;top:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#d73b48;color:#fff;display:grid;place-items:center;font-size:10px;font-weight:900;border:2px solid #fff;line-height:1}
.inbox73-pagehead{align-items:center}.inbox73-kicker{font-size:10px;font-weight:900;letter-spacing:.08em;color:#4380a8}.inbox73-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 12px}.inbox73-stat{display:flex;align-items:center;gap:11px;padding:12px 14px;border:1px solid #dce7ee;border-radius:13px;background:#fff;text-decoration:none;min-width:0}.inbox73-stat.active{border-color:#8ebbd7;background:#f5fbff;box-shadow:0 0 0 2px rgba(30,126,188,.05)}.inbox73-stat>span{font-size:23px}.inbox73-stat div{display:flex;flex-direction:column}.inbox73-stat b{font-size:18px;line-height:1}.inbox73-stat small{font-size:10px;color:#728899;margin-top:3px}.inbox73-tabs{display:flex;gap:5px;margin-bottom:10px;overflow:auto}.inbox73-tabs a{padding:8px 12px;border-radius:999px;text-decoration:none;background:#edf3f7;color:#47677c;font-size:12px;font-weight:800;white-space:nowrap}.inbox73-tabs a.active{background:#145f91;color:#fff}.inbox73-list{padding:4px 14px}.inbox73-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;text-decoration:none;padding:13px 6px;border-bottom:1px solid #e8eef2;min-height:78px}.inbox73-row:last-child{border-bottom:0}.inbox73-row:hover{background:#f8fbfd}.inbox73-row.is-new{background:#f6fbff;border-left:4px solid #2e85ba;padding-left:9px}.inbox73-row.needs-signature{box-shadow:inset 4px 0 0 #d59018}.inbox73-row-icon{width:38px;height:38px;border-radius:11px;background:#edf5fa;display:grid;place-items:center;font-size:19px}.inbox73-row-main{min-width:0}.inbox73-row-title{display:flex;align-items:center;gap:7px;min-width:0}.inbox73-row-title b{font-size:13px;color:#163f59;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inbox73-row-title em{font-style:normal;font-size:8px;font-weight:900;background:#fff0d5;color:#8b5b00;padding:3px 5px;border-radius:999px}.inbox73-row-main>small{display:block;font-size:10px;color:#7a8e9c;margin-top:3px}.inbox73-row-main p{font-size:11px;color:#577184;margin:5px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inbox73-row-state{display:flex;align-items:center;gap:8px;text-align:right}.inbox73-row-state strong{font-size:10px;color:#607889}.inbox73-row-state strong.pending{color:#a76a00}.inbox73-row-state strong.new{color:#176e9f}.inbox73-row-state strong.done{color:#28744c}.inbox73-row-state small{display:block;font-size:9px;color:#8a9aa5}.inbox73-row-state>span{font-size:18px;color:#8da0ad}.inbox73-empty{padding:30px 12px;text-align:center;color:#7b8d9b;font-size:13px}.inbox73-compose{max-width:980px}.inbox73-compose>label,.inbox73-compose-grid>label{display:grid;gap:6px;font-size:12px;font-weight:800}.inbox73-compose input[type=text],.inbox73-compose select,.inbox73-compose textarea,.inbox73-compose input[type=file]{width:100%;padding:10px;border:1px solid #ccdbe5;border-radius:9px;font:inherit;background:#fff}.inbox73-compose-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:13px}.inbox73-compose>label{margin-bottom:13px}.inbox73-recipient-box{border:1px solid #dce6ed;border-radius:12px;padding:12px;margin:12px 0 14px}.inbox73-recipient-box>div:first-child{display:flex;flex-direction:column;margin-bottom:9px}.inbox73-recipient-box>div:first-child small{font-size:10px;color:#7b8d9a}.inbox73-recipient-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:300px;overflow:auto;padding:2px}.inbox73-recipient-list label{display:flex;align-items:center;gap:8px;border:1px solid #e0e9ef;border-radius:9px;padding:8px;cursor:pointer;background:#fbfdfe}.inbox73-recipient-list label:has(input:checked){border-color:#79aed0;background:#eef8fe}.inbox73-recipient-list input{width:17px;height:17px}.inbox73-recipient-list span{display:flex;flex-direction:column;min-width:0}.inbox73-recipient-list b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inbox73-recipient-list small{font-size:9px;color:#7b8d9b}.inbox73-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:9px!important;border:1px solid #dce6ed;border-radius:10px;padding:10px}.inbox73-check input{width:18px;height:18px}.inbox73-check span{display:flex;flex-direction:column}.inbox73-check small{font-weight:400;color:#738796}.inbox73-message{max-width:1000px;padding:20px}.inbox73-message.important{border-left:5px solid #d69b28}.inbox73-important{display:inline-flex;padding:6px 9px;border-radius:999px;background:#fff1d9;color:#8b5e0c;font-size:10px;font-weight:900;margin-bottom:12px}.inbox73-body{font-size:14px;line-height:1.65;color:#294b61;margin-bottom:14px}.inbox73-attachment{display:flex;align-items:center;gap:10px;border:1px solid #dbe6ed;border-radius:11px;padding:10px;text-decoration:none;background:#f8fbfd;margin:12px 0}.inbox73-attachment>span{font-size:22px}.inbox73-attachment>div{display:flex;flex-direction:column;min-width:0;flex:1}.inbox73-attachment small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inbox73-attachment>strong{font-size:11px;color:#176d9e}.inbox73-receipt-box{border:1px solid #bfd7e6;background:#f8fcff;border-radius:14px;padding:14px;margin-top:15px}.inbox73-receipt-head{display:flex;gap:10px;align-items:center;padding-bottom:11px;border-bottom:1px solid #dce8ef}.inbox73-receipt-head>span{font-size:26px}.inbox73-receipt-head div{display:flex;flex-direction:column}.inbox73-receipt-head b{font-size:14px}.inbox73-receipt-head small{font-size:10px;color:#718695}.inbox73-receipt-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:11px 0}.inbox73-receipt-items>div{background:#fff;border:1px solid #e2eaf0;border-radius:9px;padding:9px;display:flex;flex-direction:column}.inbox73-receipt-items b{font-size:11px}.inbox73-receipt-items small{font-size:9px;color:#748895;margin-top:3px}.inbox73-sign-panel{border-top:1px solid #dce8ef;padding-top:12px}.inbox73-sign-panel>div:first-child b{font-size:13px}.inbox73-sign-panel>div:first-child p{font-size:11px;color:#617a8b;margin:4px 0 11px}.inbox73-sign-form{display:flex;align-items:end;gap:9px;flex-wrap:wrap}.inbox73-sign-form label{display:grid;gap:5px;font-size:11px;font-weight:800;min-width:210px}.inbox73-sign-form input{padding:10px;border:1px solid #c9d8e2;border-radius:9px;font-size:16px}.inbox73-completed{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:11px;border-radius:10px;background:#eaf7ef;color:#285f43}.inbox73-completed b{font-size:12px}.inbox73-completed small{font-size:10px;flex:1}.inbox73-ack{margin-top:14px}.inbox73-archive{margin-top:14px;padding-top:12px;border-top:1px solid #e1e9ef}.inbox73-trace{max-width:1000px}.inbox73-trace h2{margin:0 0 10px;font-size:15px}
@media(max-width:760px){.internal-inbox-top{width:31px;height:31px}.internal-inbox-top svg{width:17px;height:17px}.internal-inbox-count{right:-5px;top:-6px;min-width:17px;height:17px;font-size:9px}.inbox73-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.inbox73-stat{padding:9px 10px}.inbox73-stat>span{font-size:19px}.inbox73-row{grid-template-columns:36px minmax(0,1fr);gap:8px;padding:10px 3px}.inbox73-row-icon{width:34px;height:34px;font-size:17px}.inbox73-row-state{grid-column:2;justify-content:flex-start;text-align:left;margin-top:-3px}.inbox73-row-main p{display:none}.inbox73-compose-grid{grid-template-columns:1fr}.inbox73-recipient-list{grid-template-columns:1fr}.inbox73-receipt-items{grid-template-columns:1fr}.inbox73-sign-form{display:grid}.inbox73-sign-form label{min-width:0}.inbox73-sign-form .btn{width:100%}.inbox73-message{padding:13px}.inbox73-pagehead .btn{width:100%;text-align:center}}
.p73-profile-destination{display:flex;align-items:center;gap:11px;padding:12px;border:1px solid #cfe0ea;border-radius:12px;background:#f7fbfe}.p73-profile-destination>span{width:38px;height:38px;border-radius:10px;background:#e7f2f9;display:grid;place-items:center;font-size:20px}.p73-profile-destination>div{display:flex;flex-direction:column}.p73-profile-destination b{font-size:13px;color:#174864}.p73-profile-destination small{font-size:10px;color:#6d8392;margin-top:3px}.p73-profile-help{font-size:11px;line-height:1.5;color:#526f82;margin:11px 2px}.p73-profile-link-error{padding:12px;border-radius:11px;background:#fff3e6;border:1px solid #efcf9f;color:#80561b}.p73-profile-link-error b{font-size:12px}.p73-profile-link-error p{font-size:10px;line-height:1.45;margin:5px 0 0}.p73-pending-receipts{margin:10px 0 12px;padding:10px;border:1px solid #e4c982;background:#fffaf0;border-radius:10px}.p73-pending-receipts>b{display:block;font-size:11px;color:#7e5a0c;margin-bottom:6px}.p73-pending-receipts>a{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;gap:8px;align-items:center;padding:7px 5px;border-top:1px solid #f0dfb4;text-decoration:none}.p73-pending-receipts>a:first-of-type{border-top:0}.p73-pending-receipts span{font-size:11px;font-weight:800}.p73-pending-receipts small{font-size:9px;color:#75684d}.p73-pending-receipts strong{font-size:10px;color:#9a6800}
@media(max-width:760px){.p73-pending-receipts>a{grid-template-columns:1fr auto}.p73-pending-receipts small{grid-column:1/-1;grid-row:2}.p73-profile-destination{align-items:flex-start}}
.profile-inbox-alert{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;text-decoration:none;background:#fff7e6;border:1px solid #efd393;border-radius:12px;padding:10px 12px;margin-bottom:12px;color:#6c4a0d}.profile-inbox-alert>span{width:36px;height:36px;border-radius:10px;background:#ffe9b9;display:grid;place-items:center;font-size:18px}.profile-inbox-alert>div{display:flex;flex-direction:column}.profile-inbox-alert b{font-size:12px}.profile-inbox-alert small{font-size:9px;color:#8a6c34;margin-top:2px}.profile-inbox-alert>strong{font-size:20px}
.inbox73-cancelled{display:flex;flex-direction:column;gap:3px;padding:11px;border-radius:10px;background:#f2f4f6;color:#5d6a74}.inbox73-cancelled b{font-size:12px}.inbox73-cancelled small{font-size:10px}


/* Motor 73.24 · Buzón: anulación administrativa y cierre limpio tras firma */
.inbox73-row-wrap{position:relative;border-bottom:1px solid #e8eef2}.inbox73-row-wrap:last-child{border-bottom:0}.inbox73-row-wrap .inbox73-row{border-bottom:0;padding-right:46px}.inbox73-cancel-inline{position:absolute;right:8px;top:8px;z-index:3}.inbox73-cancel-inline button,.inbox73-detail-cancel{width:28px;height:28px;border-radius:8px;border:1px solid #e0baba;background:#fff;color:#9b3030;font-size:20px;line-height:1;display:grid;place-items:center;cursor:pointer}.inbox73-cancel-inline button:hover,.inbox73-detail-cancel:hover{background:#fff1f1;border-color:#c98383}.inbox73-detail-actions{display:flex;align-items:center;gap:8px}.inbox73-detail-actions form{margin:0}.inbox73-detail-cancel{width:34px;height:34px;font-size:22px}.inbox73-cancelled{padding:10px 12px;border-radius:10px;background:#f5f5f5;color:#69747c;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.inbox73-cancelled small{font-size:10px}
@media(max-width:760px){.inbox73-row-wrap .inbox73-row{padding-right:42px}.inbox73-cancel-inline{right:5px;top:6px}.inbox73-detail-actions{width:100%;justify-content:flex-end}}

/* Motor 73.25 · Buzón depurado: X estable y acción de firma inequívoca */
.inbox73-row-wrap{position:relative!important;overflow:visible}
.inbox73-row-wrap .inbox73-row{padding-right:54px!important}
.inbox73-cancel-inline{
  position:absolute!important;
  left:auto!important;
  right:10px!important;
  top:50%!important;
  bottom:auto!important;
  transform:translateY(-50%)!important;
  margin:0!important;
  z-index:8!important;
}
.inbox73-cancel-inline button{
  width:24px!important;height:24px!important;border-radius:7px!important;
  padding:0!important;margin:0!important;font-size:17px!important;font-weight:700!important;
  line-height:1!important;background:#fff!important;color:#9a3434!important;border:1px solid #d9aaaa!important;
  box-shadow:0 1px 2px rgba(34,61,78,.08)!important;
}
.inbox73-cancel-inline button:hover{background:#fff2f2!important;border-color:#bd6e6e!important}
.inbox73-row-state{padding-right:2px}
.inbox73-row-state strong.sign-now{
  display:inline-flex;align-items:center;justify-content:center;
  padding:5px 8px;border-radius:999px;background:#e9f6ee;color:#216a42;
  font-size:9px;font-weight:900;letter-spacing:.02em;white-space:nowrap;
}
.inbox73-sign-panel-ready{margin-top:4px;padding:16px;border-radius:12px;background:#f4fbf7;border:1px solid #b9dfc8}
.inbox73-sign-panel-manager{margin-top:4px;padding:14px;border-radius:12px;background:#fff9ed;border:1px solid #eed29a}
.inbox73-sign-badge{display:inline-flex!important;width:max-content;margin:0 0 7px;padding:4px 7px;border-radius:999px;background:#dff3e7;color:#216a42;font-size:9px!important;font-weight:900!important;letter-spacing:.05em}
.inbox73-sign-badge.waiting{background:#fff0cf;color:#8b5f10}
.inbox73-sign-panel-ready>div:first-child,.inbox73-sign-panel-manager>div:first-child{display:flex;flex-direction:column}
.inbox73-sign-button{min-height:42px;font-weight:900}
.inbox73-detail-cancel{display:grid!important;place-items:center!important;padding:0!important}
@media(max-width:760px){
  .inbox73-row-wrap .inbox73-row{padding-right:46px!important}
  .inbox73-cancel-inline{right:7px!important;top:50%!important}
  .inbox73-cancel-inline button{width:23px!important;height:23px!important;font-size:16px!important}
  .inbox73-row-state strong.sign-now{font-size:8px;padding:4px 7px}
}

/* Motor 73.26 · Dotación individual como cuadro operativo (sin duplicar ficha personal) */
.p73-dot-subtitle{margin:4px 0 0;color:#607b8d;font-size:12px;max-width:820px}.p73-dot-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:12px 0}.p73-dot-kpis>div{background:#fff;border:1px solid #d6e4ec;border-radius:14px;padding:12px;display:grid;grid-template-columns:34px auto;grid-template-rows:auto auto;column-gap:8px;align-items:center}.p73-dot-kpis>div>span{grid-row:1/3;font-size:24px}.p73-dot-kpis b{font-size:20px;color:#123f5c}.p73-dot-kpis small{font-size:9px;color:#718899}.p73-dot-kpis .warn{background:#fffaf0;border-color:#ead49a}.p73-dot-kpis .danger{background:#fff5f3;border-color:#efc5bc}.p73-dot-kpis .info{background:#f3faff;border-color:#badced}.p73-dot-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 12px}.p73-dot-tabs a{display:inline-flex;align-items:center;gap:6px;text-decoration:none;border:1px solid #cfe0e9;border-radius:999px;background:#fff;color:#28556f;padding:9px 14px;font-size:12px;font-weight:800}.p73-dot-tabs a.active{background:#126fa6;color:#fff;border-color:#126fa6}.p73-dot-search{grid-template-columns:minmax(260px,1fr) auto!important}.p73-dot-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:10px;color:#617a8b;margin:8px 2px 10px}.p73-dot-legend span{display:flex;align-items:center;gap:5px}.p73-dot-legend i,.p73-dot-light{display:block;width:10px;height:10px;border-radius:50%}.p73-dot-legend .green,.p73-dot-light.green{background:#2ca66f}.p73-dot-legend .amber,.p73-dot-light.amber{background:#e3a51f}.p73-dot-legend .red,.p73-dot-light.red{background:#d64e48}.p73-dot-list{display:flex;flex-direction:column;gap:9px}.p73-dot-person{background:#fff;border:1px solid #d8e5ec;border-left:5px solid #80b49a;border-radius:14px;overflow:hidden}.p73-dot-person.traffic-amber{border-left-color:#e2ae43}.p73-dot-person.traffic-red{border-left-color:#d85b55}.p73-dot-person-main{display:grid;grid-template-columns:14px minmax(220px,1.7fr) repeat(4,minmax(80px,.65fr)) minmax(230px,1.25fr);gap:10px;align-items:center;padding:12px}.p73-dot-person-name b,.p73-dot-person-name small{display:block}.p73-dot-person-name b{font-size:13px;color:#153f59}.p73-dot-person-name small{font-size:9px;color:#6e8595;margin-top:2px}.p73-dot-metric{text-align:center;border-left:1px solid #e4edf2;padding-left:8px}.p73-dot-metric strong,.p73-dot-metric span{display:block}.p73-dot-metric strong{font-size:13px;color:#214d68}.p73-dot-metric span{font-size:8px;color:#7c8e9a;margin-top:2px;text-transform:uppercase;letter-spacing:.03em}.p73-dot-metric.bad strong{color:#b33a34}.p73-dot-person-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.p73-dot-details{border-top:1px solid #e7eef2;background:#fbfdfe}.p73-dot-details>summary{cursor:pointer;list-style:none;padding:9px 12px;font-size:10px;font-weight:800;color:#527086}.p73-dot-details>summary::-webkit-details-marker{display:none}.p73-dot-details>summary span{float:right;font-weight:500;color:#8495a0}.p73-dot-detail-actions{padding:8px 12px;display:flex;justify-content:flex-end;gap:7px;border-top:1px solid #edf2f5}.p73-dot-detail-actions form{margin:0}.p73-dot-items{padding:0 12px 12px;display:grid;gap:7px}.p73-dot-item{display:grid;grid-template-columns:minmax(220px,1fr) minmax(520px,2fr);gap:10px;align-items:center;background:#fff;border:1px solid #dce7ed;border-radius:10px;padding:9px}.p73-dot-item>div b,.p73-dot-item>div small,.p73-dot-item>div em{display:block}.p73-dot-item>div b{font-size:11px;color:#204b65}.p73-dot-item>div small{font-size:9px;color:#758b99;margin-top:2px}.p73-dot-item>div em{font-style:normal;color:#9b6512;font-size:8px;font-weight:800;margin-top:4px}.p73-dot-state-form{display:grid;grid-template-columns:185px minmax(150px,1fr) 120px auto;gap:6px;align-items:center}.p73-dot-state-form select,.p73-dot-state-form input[type=text]{min-height:34px;border:1px solid #cbdbe4;border-radius:8px;padding:6px 8px;font-size:10px;background:#fff}.p73-dot-stock{font-size:8px;color:#657f90;display:flex;align-items:center;gap:4px}.p73-dot-history{margin:0 12px 12px;border:1px dashed #d7e3ea;border-radius:10px;background:#fff}.p73-dot-history>summary{cursor:pointer;padding:8px 10px;font-size:9px;font-weight:800;color:#607b8d}.p73-dot-history>div{padding:0 10px 9px;display:grid;gap:4px}.p73-dot-history span{font-size:9px;color:#6e8391}.p73-collective-intro{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;margin-bottom:12px}.p73-collective-intro b{font-size:13px;color:#184762}.p73-collective-intro p{font-size:10px;color:#637d8e;margin:4px 0}.p73-collective-flow{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.p73-collective-flow span,.p73-collective-flow strong{font-size:9px;padding:6px 8px;border-radius:8px;background:#edf6fb;color:#356078}.p73-collective-flow strong{background:#126fa6;color:#fff}.p73-ready-campaigns{margin-bottom:12px}.p73-ready-campaigns h2{font-size:13px;margin:0 0 8px}.p73-ready-campaigns>div{display:flex;gap:7px;flex-wrap:wrap}.p73-collective-form{padding:14px!important}.p73-collective-head{display:grid;grid-template-columns:1.5fr .8fr 1.2fr;gap:9px}.p73-collective-head label{display:flex;flex-direction:column;gap:4px;font-size:9px;font-weight:800;color:#587387}.p73-collective-head label.wide{grid-column:1/-1}.p73-collective-head input{min-height:38px;border:1px solid #cbdbe4;border-radius:9px;padding:7px 9px}.p73-collective-toolbar{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e4edf2;margin-top:12px;padding-top:12px}.p73-collective-toolbar b,.p73-collective-toolbar small{display:block}.p73-collective-toolbar b{font-size:12px;color:#254f68}.p73-collective-toolbar small{font-size:9px;color:#728897;margin-top:2px}.p73-collective-lines{display:grid;gap:7px;margin-top:9px}.p73-collective-line{display:grid;grid-template-columns:minmax(180px,1.35fr) minmax(190px,1.4fr) 80px 65px 110px minmax(140px,1fr) minmax(140px,1fr) 30px;gap:6px;align-items:end;border:1px solid #dbe7ed;border-radius:11px;background:#fbfdfe;padding:8px}.p73-collective-line label{display:flex;flex-direction:column;gap:3px;font-size:8px;font-weight:800;color:#607a8b}.p73-collective-line input,.p73-collective-line select{width:100%;min-height:36px;border:1px solid #c9dbe4;border-radius:8px;padding:6px 7px;background:#fff;font-size:10px}.p73-line-remove{width:30px;height:36px;border:1px solid #e1c0c0;border-radius:8px;background:#fff;color:#a03e3e;font-size:18px;cursor:pointer}.p73-collective-sign{display:flex;gap:10px;align-items:flex-start;margin:12px 0 0;padding:10px;border-radius:10px;background:#eef8fd;border:1px solid #c9e1ee}.p73-collective-sign b,.p73-collective-sign small{display:block}.p73-collective-sign b{font-size:11px;color:#204f69}.p73-collective-sign small{font-size:9px;color:#6e8493;margin-top:2px}.p73-collective-submit{display:flex;justify-content:flex-end;margin-top:10px}.p73-collective-history{margin-top:15px;display:grid;gap:8px}.p73-collective-history article{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:11px!important}.p73-collective-history article b,.p73-collective-history article small{display:block}.p73-collective-history article b{font-size:11px}.p73-collective-history article small,.p73-collective-history article p,.p73-collective-history article span{font-size:9px;color:#708694;margin:2px 0}.p73-collective-history article p{grid-column:1/-1}.p73-collective-history article span{grid-column:2;text-align:right}
@media(max-width:1100px){.p73-dot-person-main{grid-template-columns:14px minmax(210px,1.5fr) repeat(3,minmax(72px,.6fr)) minmax(180px,1fr)}.p73-dot-person-main>.p73-dot-metric:nth-of-type(5){display:none}.p73-dot-item{grid-template-columns:1fr}.p73-dot-state-form{grid-template-columns:180px 1fr 120px auto}.p73-collective-line{grid-template-columns:1.2fr 1.2fr 80px 65px 1fr 1fr 30px}.p73-collective-note{grid-column:1/-2}}
@media(max-width:760px){.p73-dot-kpis{grid-template-columns:1fr 1fr}.p73-dot-tabs{display:grid;grid-template-columns:1fr}.p73-dot-tabs a{justify-content:center}.p73-dot-search{grid-template-columns:1fr!important}.p73-dot-person-main{grid-template-columns:12px 1fr 68px 68px;padding:10px;gap:7px}.p73-dot-person-name{grid-column:2/-1}.p73-dot-metric{border-left:0;background:#f5f9fb;border-radius:8px;padding:6px}.p73-dot-person-main>.p73-dot-metric:nth-of-type(4),.p73-dot-person-main>.p73-dot-metric:nth-of-type(5){display:none}.p73-dot-person-actions{grid-column:1/-1;justify-content:stretch}.p73-dot-person-actions .btn{flex:1}.p73-dot-detail-actions{flex-direction:column}.p73-dot-detail-actions .btn{width:100%}.p73-dot-item{grid-template-columns:1fr}.p73-dot-state-form{grid-template-columns:1fr}.p73-dot-state-form select,.p73-dot-state-form input[type=text]{min-height:42px;font-size:14px}.p73-dot-stock{font-size:10px}.p73-collective-intro{grid-template-columns:1fr}.p73-collective-flow{justify-content:flex-start}.p73-collective-head{grid-template-columns:1fr}.p73-collective-head label.wide{grid-column:auto}.p73-collective-toolbar{align-items:flex-start;gap:8px;flex-direction:column}.p73-collective-line{grid-template-columns:1fr 1fr}.p73-collective-line label:nth-child(1),.p73-collective-line label:nth-child(2),.p73-collective-note{grid-column:1/-1}.p73-line-remove{grid-column:2;justify-self:end}.p73-collective-line input,.p73-collective-line select{min-height:42px;font-size:14px}.p73-collective-history article{grid-template-columns:1fr}.p73-collective-history article span{grid-column:1;text-align:left}}
/* Motor 73.26 · kits de incorporación / entrega colectiva */
.p73-kit-panel{margin-bottom:12px;padding:14px!important}.p73-kit-panel .p73-section-title h2{margin:0;font-size:14px;color:#184762}.p73-kit-panel .p73-section-title p{margin:3px 0 0;font-size:10px;color:#6a8190}.p73-kit-loader{display:grid;grid-template-columns:minmax(280px,1fr) auto minmax(260px,.9fr);gap:10px;align-items:end;margin-top:12px;padding:11px;border:1px solid #d6e6ee;border-radius:11px;background:#f6fbfe}.p73-kit-loader label{display:flex;flex-direction:column;gap:4px;font-size:9px;font-weight:800;color:#5f7889}.p73-kit-loader select{min-height:40px;border:1px solid #cbdce5;border-radius:9px;padding:7px 9px;background:#fff}.p73-kit-loader small{font-size:9px;color:#6f8492;align-self:center}.p73-kit-config{margin-top:10px;border-top:1px solid #e4edf2;padding-top:9px}.p73-kit-config>summary{cursor:pointer;font-size:10px;font-weight:900;color:#466a80}.p73-kit-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:9px}.p73-kit-form{border:1px solid #dce7ed;border-radius:11px;background:#fbfdfe;padding:11px}.p73-kit-form h3{margin:0;font-size:12px;color:#234f68}.p73-kit-form>p{margin:3px 0 9px;font-size:9px;color:#708694}.p73-kit-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;max-height:240px;overflow:auto;margin-bottom:9px}.p73-kit-checks label{display:flex;align-items:flex-start;gap:7px;border:1px solid #e1e9ee;border-radius:8px;padding:7px;background:#fff;font-size:9px;color:#355a70}.p73-kit-checks label>span{display:block;min-width:0}.p73-kit-checks small{display:block;color:#81929e;font-size:8px;margin-top:2px}.p73-kit-checks input{margin-top:2px}
@media(max-width:760px){.p73-kit-panel .p73-section-title{align-items:flex-start;flex-direction:column}.p73-kit-loader{grid-template-columns:1fr}.p73-kit-loader .btn{width:100%;min-height:42px}.p73-kit-config-grid{grid-template-columns:1fr}.p73-kit-checks{grid-template-columns:1fr}.p73-kit-loader small{align-self:auto}.p73-kit-form .btn{width:100%}}
.p73-collective-document{display:grid;grid-template-columns:minmax(280px,1.5fr) minmax(280px,1fr);gap:10px;margin-top:12px}.p73-collective-document .p73-collective-sign{margin:0}.p73-document-policy{display:flex;flex-direction:column;gap:4px;padding:9px 10px;border:1px solid #d8e5ec;border-radius:10px;background:#fbfdfe;font-size:9px;font-weight:800;color:#587387}.p73-document-policy select{min-height:36px;border:1px solid #cbdbe4;border-radius:8px;background:#fff;padding:6px 8px}.p73-document-policy small{font-size:8px;font-weight:500;color:#748b99}
@media(max-width:760px){.p73-collective-document{grid-template-columns:1fr}}
/* 73.26 · caducidades */
.p73-collective-line{grid-template-columns:minmax(170px,1.3fr) minmax(180px,1.35fr) 78px 62px 105px 112px minmax(125px,.9fr) minmax(135px,1fr) 30px}.p73-expiry{font-style:normal!important;font-size:8px!important;font-weight:900!important;margin-top:4px!important}.p73-expiry.expired{color:#b73630!important}.p73-expiry.soon{color:#a76800!important}
@media(max-width:1100px){.p73-collective-line{grid-template-columns:1.25fr 1.25fr 78px 62px 100px 110px 1fr 30px}.p73-collective-note{grid-column:1/-2}}
@media(max-width:760px){.p73-collective-line{grid-template-columns:1fr 1fr}}
.p73-dot-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}
@media(max-width:1180px){.p73-dot-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.p73-dot-kpis{grid-template-columns:1fr 1fr}}
.p73-dot-state-form{grid-template-columns:185px 185px minmax(140px,1fr) 120px auto}.p73-transfer-target[hidden]{display:none!important}
@media(max-width:1100px){.p73-dot-state-form{grid-template-columns:170px 170px 1fr 110px auto}}
@media(max-width:760px){.p73-dot-state-form{grid-template-columns:1fr}.p73-dot-state-form select,.p73-dot-state-form input[type=text]{min-height:42px;font-size:14px}}

/* Motor 73.28 · alta compacta de personal junto al contador de activos */
.p73-countbar{display:flex;align-items:stretch;gap:8px;margin:10px 0;flex-wrap:wrap}
.p73-countbar .p73-count{margin:0!important;min-width:108px;display:flex;align-items:center;justify-content:center;box-sizing:border-box}
.p73-add-person{border:1px solid #bfd3e1;background:#fff;color:#17557d;border-radius:11px;padding:9px 14px;min-width:108px;font-size:14px;font-weight:900;cursor:pointer;box-shadow:0 2px 8px #173e570b}
.p73-add-person:hover{background:#edf7fd;border-color:#8fb9d4}
.p73-add-backdrop{position:fixed;inset:0;z-index:2100;background:#0c2d4268;display:grid;place-items:center;padding:18px}
.p73-add-backdrop[hidden]{display:none!important}
.p73-add-modal{width:min(720px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 24px 70px #071c2b52;padding:18px;border:1px solid #d7e4ec}
.p73-add-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding-bottom:13px;border-bottom:1px solid #e2ebf1}
.p73-add-head h2{margin:2px 0 4px;color:#143f5d;font-size:24px}.p73-add-head small{color:#6d8494;font-size:11px}
.p73-add-head>button{border:0;background:#f0f6f9;border-radius:10px;width:38px;height:38px;font-size:23px;cursor:pointer;color:#315c75}
.p73-add-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:15px}
.p73-add-grid label{display:flex;flex-direction:column;gap:5px;font-size:10px;font-weight:900;color:#5e7788}
.p73-add-grid input,.p73-add-grid textarea{width:100%;box-sizing:border-box;border:1px solid #cbd9e4;border-radius:10px;padding:10px 11px;background:#fff;font:inherit;color:#173d59}
.p73-add-grid label.wide{grid-column:1/-1}.p73-add-grid label small{font-size:8px;font-weight:600;color:#8a9ca8}
.p73-add-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid #e5edf2}
@media(max-width:760px){.p73-countbar{display:grid;grid-template-columns:1fr 1fr}.p73-countbar .p73-count,.p73-add-person{width:100%;min-width:0}.p73-add-grid{grid-template-columns:1fr 1fr}.p73-add-grid label.wide{grid-column:1/-1}.p73-add-modal{padding:14px}.p73-add-head h2{font-size:21px}}
@media(max-width:520px){.p73-add-grid{grid-template-columns:1fr}.p73-add-grid label.wide{grid-column:auto}.p73-add-actions{position:sticky;bottom:-14px;background:#fff;padding-bottom:4px}.p73-add-person{font-size:13px}}

/* Motor 73.28 · Dotación simplificada, tipografía PC legible y alta con ficha completa */
.p73-add-person{display:flex;align-items:center;justify-content:center;text-decoration:none!important;min-width:108px;min-height:39px;box-sizing:border-box}
.p73-new-profile-head{margin-bottom:12px}.p73-new-photo{cursor:default}.p73-new-photo span{font-size:34px}.p73-new-profile-form .p73-section{padding:18px}.p73-new-profile-form .p73-section h2{font-size:17px;margin-bottom:14px}.p73-new-profile-form .p73-grid label{font-size:12px;gap:6px;color:#49687c}.p73-new-profile-form .p73-grid input,.p73-new-profile-form .p73-grid select,.p73-new-profile-form textarea{font-size:14px;min-height:42px}.p73-new-after-save{display:flex;gap:10px;align-items:center;padding:13px 16px!important;background:#f2f8fc}.p73-new-after-save b{font-size:13px;color:#184865}.p73-new-after-save span{font-size:12px;color:#5e7889}.p73-new-save{gap:9px;position:sticky;bottom:8px;z-index:5;padding:10px 0;background:linear-gradient(transparent,#f7fafc 30%)}.p73-new-save .btn{min-height:42px;font-size:13px}

/* Cuadro de mando: menos controles, texto de escritorio claramente legible. */
.p73-dot-subtitle{font-size:14px;line-height:1.4}.p73-dot-search label{font-size:12px!important}.p73-dot-search input,.p73-dot-search select{font-size:14px!important;min-height:42px}.p73-dot-legend{font-size:12px}.p73-dot-kpis small{font-size:11px;line-height:1.2}.p73-dot-kpis b{font-size:22px}
.p73-dot-person-main{grid-template-columns:14px minmax(250px,1.7fr) repeat(3,minmax(82px,.58fr)) minmax(155px,.9fr) auto;gap:12px;padding:14px 16px}.p73-dot-person-name b{font-size:16px;line-height:1.2}.p73-dot-person-name small{font-size:12px;color:#60798a;margin-top:4px}.p73-dot-metric strong{font-size:18px}.p73-dot-metric span{font-size:10px;font-weight:800;color:#708694}.p73-dot-last{border-left:1px solid #e4edf2;padding-left:12px}.p73-dot-last span,.p73-dot-last b,.p73-dot-last small{display:block}.p73-dot-last span{font-size:10px;text-transform:uppercase;font-weight:800;color:#758a98}.p73-dot-last b{font-size:14px;color:#214d68;margin-top:2px}.p73-dot-last small{font-size:11px;color:#6f8594;margin-top:2px}.p73-dot-person-actions .btn{font-size:12px;min-height:36px;padding:8px 12px}
.p73-dot-details>summary{padding:11px 16px;font-size:13px}.p73-dot-details>summary .p73-dot-summary-title{float:none;font-weight:900;color:#315f79}.p73-dot-details>summary>span:last-child{font-size:11px}.p73-dot-detail-actions{padding:10px 16px;align-items:center}.p73-dot-detail-actions .btn{font-size:12px;min-height:36px;padding:8px 12px}.p73-dot-detail-actions form{display:flex}
.p73-dot-more{position:relative}.p73-dot-more>summary{list-style:none;cursor:pointer}.p73-dot-more>summary::-webkit-details-marker{display:none}.p73-dot-more-menu{position:absolute;right:0;top:42px;z-index:35;width:245px;padding:7px;background:#fff;border:1px solid #cfdde6;border-radius:12px;box-shadow:0 12px 30px rgba(20,57,79,.18);display:grid;gap:3px}.p73-dot-more-menu a,.p73-dot-more-menu button{width:100%;border:0;background:transparent;text-align:left;text-decoration:none;color:#244f69;padding:9px 10px;border-radius:8px;font:inherit;font-size:12px;cursor:pointer}.p73-dot-more-menu a:hover,.p73-dot-more-menu button:hover{background:#edf6fb}
.p73-dot-items{padding:2px 16px 14px;gap:7px}.p73-dot-item-wrap{position:relative}.p73-dot-item.p73-dot-item-compact{grid-template-columns:minmax(260px,1fr) auto auto;gap:12px;padding:10px 12px;min-height:48px}.p73-dot-item-main b{font-size:14px!important}.p73-dot-item-main small{font-size:11px!important;color:#607989!important;margin-top:3px!important;line-height:1.3}.p73-dot-item-main em{display:inline-flex!important;margin-right:6px!important;font-size:10px!important}.p73-dot-status{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900;background:#eaf4fa;color:#245f82}.p73-dot-status.status-pendiente_devolucion{background:#fff0d6;color:#916000}.p73-dot-status.status-asignado{background:#e8f5ec;color:#287046}
.p73-dot-action-menu{position:relative}.p73-dot-action-menu>summary{list-style:none;cursor:pointer;min-width:104px;text-align:center;border:1px solid #bfd3e0;background:#fff;color:#205878;border-radius:9px;padding:8px 10px;font-size:12px;font-weight:900}.p73-dot-action-menu>summary::-webkit-details-marker{display:none}.p73-dot-action-menu[open]>summary{background:#eaf5fb}.p73-dot-action-popover{position:absolute;right:0;top:42px;z-index:50;width:260px;background:#fff;border:1px solid #cbdce6;border-radius:12px;padding:7px;box-shadow:0 14px 34px rgba(15,49,69,.2);display:grid;gap:3px}.p73-dot-action-popover>form>button,.p73-dot-action-popover>.p73-dot-history-toggle,.p73-dot-action-sub>summary{width:100%;box-sizing:border-box;border:0;background:transparent;text-align:left;color:#244f69;padding:9px 10px;border-radius:8px;font:inherit;font-size:12px;cursor:pointer;list-style:none}.p73-dot-action-popover>form>button:hover,.p73-dot-action-popover>.p73-dot-history-toggle:hover,.p73-dot-action-sub>summary:hover{background:#edf6fb}.p73-dot-action-sub>summary::-webkit-details-marker{display:none}.p73-dot-action-sub[open]{background:#f7fafc;border-radius:9px;padding-bottom:7px}.p73-dot-action-sub[open]>summary{font-weight:900}.p73-dot-action-sub form{display:grid;gap:6px;padding:0 8px}.p73-dot-action-sub input[type=text],.p73-dot-action-sub select{width:100%;box-sizing:border-box;min-height:37px;border:1px solid #cbdbe4;border-radius:8px;padding:7px 8px;background:#fff;font-size:12px}.p73-dot-action-sub label{font-size:11px;color:#5f7888;display:flex;align-items:center;gap:5px}.p73-dot-action-sub form button{border:0;border-radius:8px;background:#1475ad;color:#fff;padding:8px 10px;font-size:12px;font-weight:900;cursor:pointer}.p73-dot-item-history{margin:5px 0 2px;padding:10px 12px;border:1px dashed #cfdde6;border-radius:10px;background:#f8fbfd}.p73-dot-item-history p{font-size:12px;margin:0 0 7px;color:#4d6879}.p73-dot-item-history span{display:block;font-size:11px;color:#607989;padding:5px 0;border-top:1px solid #e6eef2}.p73-dot-item-history span:first-of-type{border-top:0}.p73-dot-history>summary{font-size:12px;padding:10px 12px}.p73-dot-history span{font-size:11px;line-height:1.4}

/* Legibilidad general en PC del módulo 73. */
@media(min-width:761px){
  .p73-head.compact h1{font-size:29px}.p73-tabs a{font-size:12px;padding:8px 12px}.p73-search label,.p73-grid label,.p73-assign-form label{font-size:12px}.p73-person-row{padding:12px 14px}.p73-main b{font-size:15px}.p73-main span{font-size:12px}.p73-meta small{font-size:11px}.p73-state{font-size:11px;padding:5px 9px}.p73-section h2{font-size:17px}.p73-grid input,.p73-grid select,.p73-section textarea{font-size:14px}.p73-count{font-size:13px}.p73-list-fact small{font-size:10px}.p73-list-fact strong{font-size:13px}.p73-add-person{font-size:13px}
}
@media(max-width:1180px){.p73-dot-person-main{grid-template-columns:14px minmax(220px,1.5fr) repeat(3,minmax(74px,.6fr)) auto}.p73-dot-last{display:none}}
@media(max-width:760px){
 .p73-new-profile-head{grid-template-columns:76px 1fr}.p73-new-profile-form .p73-section{padding:13px}.p73-new-profile-form .p73-grid{grid-template-columns:1fr}.p73-new-profile-form .p73-grid .wide{grid-column:auto}.p73-new-after-save{align-items:flex-start;flex-direction:column}.p73-new-save{bottom:0}.p73-new-save .btn{flex:1}
 .p73-dot-person-main{grid-template-columns:12px 1fr 70px 70px!important;padding:11px!important}.p73-dot-person-name b{font-size:15px}.p73-dot-person-name small{font-size:11px}.p73-dot-person-main>.p73-dot-metric:nth-of-type(4){display:none}.p73-dot-person-actions{grid-column:1/-1}.p73-dot-last{display:none}.p73-dot-item.p73-dot-item-compact{grid-template-columns:1fr auto;gap:8px}.p73-dot-item-main{grid-column:1/-1}.p73-dot-status{font-size:10px}.p73-dot-action-menu>summary{min-width:96px}.p73-dot-action-popover{position:fixed;left:12px;right:12px;bottom:12px;top:auto;width:auto;max-height:70vh;overflow:auto}.p73-dot-detail-actions{display:grid;grid-template-columns:1fr 1fr}.p73-dot-detail-actions>a:first-child{grid-column:1/-1}.p73-dot-more{position:static}.p73-dot-more-menu{position:absolute;left:12px;right:12px;top:auto;width:auto}.p73-dot-details>summary>span:last-child{display:none}
}

/* Motor 73.29 · derechos automáticos y borrado controlado de fichas */
.p73-rights-section{border-left:5px solid #2e88bd}.p73-rights-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.p73-right-card{border:1px solid #cfe0ea;border-radius:13px;background:#f7fbfd;padding:14px 16px;min-height:90px;display:flex;flex-direction:column;justify-content:center}.p73-right-card>span{font-size:12px;font-weight:900;color:#587184}.p73-right-card>b{display:block;font-size:25px;line-height:1.1;color:#124d72;margin:7px 0 4px}.p73-right-card>small{font-size:11px;color:#6a8292;line-height:1.35}.p73-right-card.neutral{background:#fbfcfd}.p73-rights-rule{margin-top:10px;padding:10px 12px;border-radius:10px;background:#eef6fa;color:#526f81;font-size:11px;line-height:1.45}.p73-rights-rule b{color:#204e69}.p73-list-rights strong{color:#176b9f!important}
.p73-person-card-wrap{position:relative}.p73-person-card-wrap>.p73-person-row{padding-right:52px}.p73-person-delete-form{position:absolute;right:11px;top:9px;z-index:6;margin:0}.p73-person-delete-x{width:25px;height:25px;border-radius:8px;border:1px solid #e1b7b7;background:#fff;color:#a33c3c;font-size:19px;line-height:20px;font-weight:500;display:grid;place-items:center;cursor:pointer;box-shadow:0 1px 4px #5b1e1e12}.p73-person-delete-x:hover{background:#fff0f0;border-color:#cb7777;color:#8d2222}.p73-person-delete-x:focus{outline:3px solid #e9b6b6;outline-offset:2px}
@media(min-width:901px){.p73-person-rich{grid-template-columns:64px minmax(205px,1.45fr) minmax(95px,.58fr) minmax(105px,.62fr) minmax(105px,.62fr) minmax(130px,.78fr) minmax(105px,.62fr) auto 18px!important;gap:15px!important}.p73-person-rich.aux{grid-template-columns:64px minmax(220px,1.55fr) minmax(100px,.6fr) minmax(105px,.62fr) minmax(135px,.78fr) minmax(125px,.72fr) auto 18px!important}.p73-list-rights small{color:#5f8195!important}.p73-list-rights strong{font-size:14px!important}}
@media(max-width:900px){.p73-person-card-wrap>.p73-person-row{padding-right:42px}.p73-person-delete-form{right:7px;top:7px}.p73-person-delete-x{width:23px;height:23px;font-size:17px}.p73-rights-grid{grid-template-columns:1fr 1fr}.p73-right-card.neutral{grid-column:1/-1}}
@media(max-width:600px){.p73-rights-grid{grid-template-columns:1fr}.p73-right-card.neutral{grid-column:auto}.p73-right-card>b{font-size:22px}.p73-rights-rule{font-size:10px}}

/* Motor 73.30 · Dotación individual enfocada a entrega/devolución y ficha más limpia. */
.p73-dot-kpis-simple{grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;margin-bottom:12px}.p73-dot-kpis-simple>div{min-height:76px;padding:12px 14px}.p73-dot-kpis-simple b{font-size:24px!important}.p73-dot-kpis-simple small{font-size:12px!important;color:#536f82!important}.p73-dot-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;margin:10px 0 12px}.p73-dot-search-simple{margin:0!important}.p73-tools-menu{position:relative}.p73-tools-menu>summary{list-style:none;cursor:pointer;min-height:42px;display:flex;align-items:center}.p73-tools-menu>summary::-webkit-details-marker{display:none}.p73-tools-menu>div{position:absolute;right:0;top:48px;z-index:40;width:190px;padding:7px;background:#fff;border:1px solid #cbdbe5;border-radius:11px;box-shadow:0 12px 28px rgba(20,52,73,.18);display:grid;gap:3px}.p73-tools-menu a{padding:9px 10px;text-decoration:none;color:#214f6b;border-radius:8px;font-size:13px;font-weight:800}.p73-tools-menu a:hover{background:#edf6fb}
.p73-dot-person-simple{margin-bottom:10px}.p73-dot-person-main-simple{grid-template-columns:14px minmax(300px,1.8fr) minmax(92px,.52fr) minmax(100px,.58fr) minmax(150px,.78fr) auto!important;gap:14px!important;padding:15px 17px!important}.p73-dot-person-main-simple .p73-dot-person-name b{font-size:17px!important}.p73-dot-person-main-simple .p73-dot-person-name small{font-size:13px!important;color:#526f82!important}.p73-dot-person-main-simple .p73-dot-metric strong{font-size:20px!important}.p73-dot-person-main-simple .p73-dot-metric span{font-size:11px!important}.p73-dot-person-actions-simple{display:flex;gap:7px;align-items:center}.p73-dot-person-actions-simple .btn{font-size:13px!important;min-height:38px!important;padding:8px 13px!important}.p73-dot-details-simple>summary{padding:12px 17px!important;font-size:14px!important;background:#fbfdfe}.p73-dot-details-simple>summary strong{font-size:12px;color:#9b5d00;background:#fff1d7;border-radius:999px;padding:5px 9px}.p73-dot-detail-actions-simple{padding:10px 17px!important;border-top:1px solid #eef3f6}.p73-dot-detail-actions-simple .btn{font-size:13px!important}.p73-dot-items-simple{padding:4px 17px 14px!important}.p73-dot-item-simple{grid-template-columns:minmax(300px,1fr) auto auto auto!important;gap:10px!important;padding:11px 12px!important;min-height:54px!important}.p73-dot-item-simple .p73-dot-item-main b{font-size:15px!important}.p73-dot-item-simple .p73-dot-item-main small{font-size:12px!important;color:#557184!important}.p73-dot-item-simple .p73-dot-item-main em{font-size:11px!important}.p73-return-fast{margin:0}.p73-return-fast .btn{min-height:36px;font-size:12px;padding:7px 10px;white-space:nowrap}.p73-dot-action-menu-simple>summary{min-width:38px!important;width:38px!important;height:36px!important;padding:4px!important;display:grid!important;place-items:center;font-size:20px!important;line-height:1!important}.p73-dot-history-simple{margin:4px 17px 14px}.p73-dot-history-simple>summary{font-size:13px!important}.p73-dot-history-simple span{font-size:12px!important}
.p73-rights-section.p73-collapsible .p73-collapse-head{cursor:pointer}.p73-rights-section.p73-collapsible.is-collapsed{border-left-color:#8db7ce}.p73-rights-section .p73-collapse-head .p73-section-sub{font-size:12px;color:#58758a}.p73-rights-section .p73-collapse-body{padding-top:4px}
@media(min-width:761px){.p73-simple-head h1{font-size:30px!important}.p73-simple-head .p73-dot-subtitle{font-size:15px!important}.p73-dot-tabs a{font-size:14px!important;padding:10px 15px!important}.p73-dot-search-simple label{font-size:13px!important}.p73-dot-search-simple input,.p73-dot-search-simple select{font-size:15px!important}}
@media(max-width:1180px){.p73-dot-person-main-simple{grid-template-columns:14px minmax(230px,1.4fr) 82px 90px auto!important}.p73-dot-person-main-simple .p73-dot-last{display:none}.p73-dot-person-actions-simple{justify-self:end}}
@media(max-width:760px){.p73-dot-kpis-simple{grid-template-columns:1fr 1fr}.p73-dot-toolbar{grid-template-columns:1fr}.p73-tools-menu{justify-self:stretch}.p73-tools-menu>summary{justify-content:center}.p73-tools-menu>div{left:0;right:0;width:auto}.p73-dot-person-main-simple{grid-template-columns:12px 1fr 72px!important}.p73-dot-person-main-simple>.p73-dot-metric:nth-of-type(4){display:none}.p73-dot-person-actions-simple{grid-column:1/-1;justify-self:stretch}.p73-dot-person-actions-simple .btn{flex:1}.p73-dot-item-simple{grid-template-columns:1fr auto auto!important}.p73-dot-item-simple .p73-dot-item-main{grid-column:1/-1}.p73-return-fast .btn{min-width:94px}.p73-dot-action-menu-simple>summary{min-width:38px!important}.p73-dot-detail-actions-simple{grid-template-columns:1fr!important}.p73-dot-detail-actions-simple .p73-dot-more{width:100%}.p73-dot-detail-actions-simple .p73-dot-more>summary{justify-content:center}}

/* Motor 73.31 · Entregas individuales, inventario/almacén y entrega colectiva guiada */
.p73-delivery-toolbar{display:grid;grid-template-columns:minmax(0,820px) auto;gap:12px;align-items:start;margin:12px 0}.p73-delivery-search{display:grid;grid-template-columns:minmax(220px,1fr) 150px 120px auto;gap:10px;align-items:end;margin:0!important;padding:12px 14px}.p73-delivery-search label{display:grid;gap:5px;font-size:12px;font-weight:900;color:#345d74}.p73-delivery-search input,.p73-delivery-search select{height:40px;border:1px solid #b9ceda;border-radius:9px;padding:0 10px;background:#fff;font-size:14px}.p73-delivery-list{display:grid;gap:10px}.p73-delivery-person{padding:0!important;overflow:visible}.p73-delivery-person>summary{list-style:none}.p73-delivery-person>summary::-webkit-details-marker{display:none}.p73-delivery-person-summary{display:grid;grid-template-columns:14px minmax(260px,1.7fr) 88px 92px 135px 22px;gap:13px;align-items:center;padding:14px 16px;cursor:pointer}.p73-delivery-person-summary:hover{background:#f8fbfd}.p73-delivery-person-summary .person b{display:block;font-size:17px;color:#173f58}.p73-delivery-person-summary .person small{font-size:12px;color:#5b7788}.p73-delivery-person-summary .metric{text-align:center}.p73-delivery-person-summary .metric b{display:block;font-size:19px;color:#214e68}.p73-delivery-person-summary .metric span{font-size:9px;font-weight:900;color:#6c8492}.p73-delivery-person-summary .metric.bad b{color:#a65a00}.p73-delivery-person-summary .last span{display:block;font-size:10px;color:#6b8291}.p73-delivery-person-summary .last b{font-size:13px}.p73-delivery-person-summary .chev{font-size:20px;transition:.18s}.p73-delivery-person[open] .chev{transform:rotate(180deg)}.p73-delivery-person-body{border-top:1px solid #e5edf2;padding:13px 16px 16px;background:#fbfdfe}.p73-delivery-person-actions{display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap;margin-bottom:12px}.p73-low-return{position:relative}.p73-low-return>summary{list-style:none}.p73-low-return>summary::-webkit-details-marker{display:none}.p73-return-notice-form{position:absolute;z-index:30;top:45px;left:0;width:min(520px,80vw);padding:14px;background:#fff;border:1px solid #c7d8e2;border-radius:12px;box-shadow:0 14px 34px #183d5429}.p73-return-notice-form>label{display:grid;gap:5px;font-size:12px;font-weight:900}.p73-return-notice-form select{height:38px;border:1px solid #bfd0da;border-radius:8px}.p73-return-notice-form p{font-size:12px;margin:10px 0 7px}.p73-return-checks{display:grid;grid-template-columns:1fr 1fr;gap:6px;max-height:260px;overflow:auto;margin-bottom:10px}.p73-return-checks label{display:flex;gap:7px;align-items:flex-start;padding:8px;border:1px solid #e1e9ee;border-radius:8px;font-size:12px}.p73-return-checks small{display:block;color:#6d8391}.p73-current-dotation h3{font-size:14px;color:#315f78;margin:8px 0}.p73-delivery-item{display:grid;grid-template-columns:minmax(260px,1fr) auto auto 38px;gap:10px;align-items:center;padding:10px 11px;border:1px solid #e0e9ee;border-radius:10px;background:#fff;margin-bottom:7px}.p73-delivery-item .main b{font-size:14px}.p73-delivery-item .main small{display:block;font-size:11px;color:#5d7889;margin-top:2px}.p73-return-destination{position:relative}.p73-return-destination>summary{list-style:none}.p73-return-destination>summary::-webkit-details-marker{display:none}.p73-return-destination>div{position:absolute;right:0;top:40px;z-index:32;width:250px;background:#fff;border:1px solid #c8d8e1;border-radius:10px;box-shadow:0 12px 28px #183d5429;padding:7px}.p73-return-destination form button,.p73-return-destination details>summary{width:100%;border:0;background:#fff;text-align:left;padding:9px;border-radius:7px;font-size:12px;font-weight:800;color:#28566f;cursor:pointer}.p73-return-destination form button:hover,.p73-return-destination details>summary:hover{background:#edf6fa}.p73-return-destination details form{padding:7px}.p73-return-destination select{width:100%;height:36px;margin-bottom:6px}.p73-delivery-history{margin-top:13px;border-top:1px solid #e0e9ee;padding-top:9px}.p73-delivery-history>summary{font-size:13px;font-weight:900;color:#315f78;cursor:pointer}.p73-history-table{margin-top:8px;border:1px solid #dce7ed;border-radius:9px;overflow:hidden}.p73-history-table .head,.p73-history-table .row{display:grid;grid-template-columns:105px minmax(160px,.9fr) minmax(220px,1.5fr) 135px;gap:8px;padding:8px 10px;align-items:center}.p73-history-table .head{background:#eef5f8;font-size:10px;font-weight:900;color:#587383}.p73-history-table .row{font-size:12px;border-top:1px solid #edf2f5}.p73-history-table .row:first-of-type{border-top:0}
.p73-inventory-controlled .p73-inventory-card{grid-template-columns:minmax(230px,1fr) auto 18px}.p73-inv-numbers{display:flex;gap:10px}.p73-inv-numbers span{min-width:65px;text-align:center;padding:6px 9px;background:#f1f6f9;border-radius:8px}.p73-inv-numbers b{display:block;font-size:18px}.p73-inv-numbers small{font-size:9px;color:#627c8b}
.p73-collective-wizard{display:grid;gap:12px}.p73-step-card{padding:16px!important}.p73-step-title{display:flex;gap:11px;align-items:flex-start;margin-bottom:12px}.p73-step-title>span{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#1879ad;color:#fff;font-weight:900}.p73-step-title h2{font-size:18px;margin:1px 0 3px;color:#164866}.p73-step-title p{margin:0;color:#617b8b;font-size:12px}.p73-kind-switch{display:flex;gap:8px;margin-bottom:10px}.p73-kind-switch button{border:1px solid #b9cfdb;background:#fff;color:#315f78;border-radius:10px;padding:10px 15px;font-weight:900;cursor:pointer}.p73-kind-switch button.active{background:#166f9e;color:#fff;border-color:#166f9e}.p73-person-filter-row{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin-bottom:10px}.p73-person-filter-row label{display:grid;gap:4px;font-size:11px;font-weight:900}.p73-person-filter-row select{height:38px;border:1px solid #bfd0da;border-radius:8px;padding:0 9px}.p73-person-check-grid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:7px}.p73-person-check{display:flex;gap:8px;align-items:flex-start;border:1px solid #dbe6ec;border-radius:9px;padding:8px 9px;background:#fff;cursor:pointer}.p73-person-check:has(input:checked){border-color:#5ca2c7;background:#f0f8fc}.p73-person-check b{display:block;font-size:12px}.p73-person-check small{display:block;font-size:10px;color:#69818e;margin-top:2px}.p73-selection-count{margin-top:8px;font-size:11px;color:#5c7584}.p73-selection-count b{font-size:16px;color:#176f9e}.p73-collective-head-clean{grid-template-columns:1.2fr .7fr 1fr}.p73-upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px}.p73-upload-grid label{border:1px dashed #b7ccd8;border-radius:10px;padding:11px;background:#f9fcfd;display:grid;gap:4px}.p73-upload-grid b{font-size:13px}.p73-upload-grid span{font-size:10px;color:#6a818f}.p73-upload-grid input{font-size:11px}.p73-add-material-bar{display:grid;grid-template-columns:minmax(280px,1fr) auto;gap:9px;align-items:end;margin-bottom:11px}.p73-add-material-bar label{display:grid;gap:5px;font-size:11px;font-weight:900}.p73-add-material-bar select{height:41px;border:1px solid #bdd0da;border-radius:9px;padding:0 10px}.p73-collective-lines-clean{display:grid;gap:7px}.p73-collective-line-clean{display:grid;grid-template-columns:minmax(160px,1fr) minmax(170px,1fr) 85px 70px 115px minmax(135px,.8fr) 30px;gap:7px;align-items:end;padding:9px;border:1px solid #dce7ec;border-radius:9px;background:#fff}.p73-collective-line-clean .who b,.p73-collective-line-clean .what b{display:block;font-size:12px}.p73-collective-line-clean small{font-size:9px;color:#6a818e}.p73-collective-line-clean label{display:grid;gap:3px;font-size:9px;font-weight:900;color:#5b7483}.p73-collective-line-clean input{height:34px;border:1px solid #c7d7e0;border-radius:7px;padding:0 7px;font-size:12px}.p73-line-remove{height:34px;border:0;background:#fff0f0;color:#a13939;border-radius:8px;font-size:19px;cursor:pointer}.p73-empty-lines{text-align:center;padding:18px;border:1px dashed #ccdbe3;border-radius:9px;color:#718895;font-size:12px}.p73-collective-advanced{margin-top:10px}.p73-collective-advanced>summary{font-size:12px;font-weight:900;color:#4e7185;cursor:pointer}
@media(max-width:1100px){.p73-person-check-grid{grid-template-columns:repeat(3,1fr)}.p73-collective-line-clean{grid-template-columns:1fr 1fr 80px 65px}.p73-collective-line-clean .p73-line-remove{grid-column:auto}.p73-delivery-person-summary{grid-template-columns:12px minmax(220px,1fr) 76px 82px 20px}.p73-delivery-person-summary .last{display:none}}
@media(max-width:760px){.p73-delivery-toolbar{grid-template-columns:1fr}.p73-delivery-search{grid-template-columns:1fr 1fr}.p73-delivery-search .search{grid-column:1/-1}.p73-delivery-person-summary{grid-template-columns:10px 1fr 60px 18px;padding:11px}.p73-delivery-person-summary .metric:nth-of-type(4),.p73-delivery-person-summary .last{display:none}.p73-delivery-person-summary .person b{font-size:14px}.p73-delivery-person-actions{display:grid;grid-template-columns:1fr 1fr}.p73-low-return{grid-column:1/-1}.p73-return-notice-form{position:fixed;left:12px;right:12px;bottom:12px;top:auto;width:auto;max-height:75vh;overflow:auto}.p73-return-checks{grid-template-columns:1fr}.p73-delivery-item{grid-template-columns:1fr auto auto}.p73-delivery-item .main{grid-column:1/-1}.p73-history-table .head{display:none}.p73-history-table .row{grid-template-columns:90px 1fr}.p73-history-table .row span:nth-child(3),.p73-history-table .row span:nth-child(4){grid-column:2}.p73-person-check-grid{grid-template-columns:1fr 1fr}.p73-upload-grid{grid-template-columns:1fr}.p73-collective-head-clean{grid-template-columns:1fr}.p73-add-material-bar{grid-template-columns:1fr}.p73-collective-line-clean{grid-template-columns:1fr 1fr}.p73-collective-line-clean .who,.p73-collective-line-clean .what{grid-column:span 1}.p73-collective-line-clean .p73-line-remove{justify-self:end}.p73-inventory-controlled .p73-inventory-card{grid-template-columns:1fr 18px}.p73-inv-numbers{grid-column:1/-1}}


/* Motor 73.32 · Maquetación profesional y cache-bust de Entregas */
@media (min-width:761px){
  .p73-delivery-toolbar{display:grid!important;grid-template-columns:minmax(600px,760px) auto 1fr!important;gap:12px!important;align-items:start!important;margin:14px 0!important}
  .p73-delivery-search{display:grid!important;grid-template-columns:minmax(280px,1fr) 160px 125px auto!important;gap:10px!important;align-items:end!important;padding:12px 14px!important;border-radius:14px!important}
  .p73-delivery-search label{font-size:13px!important;color:#284f68!important}.p73-delivery-search input,.p73-delivery-search select{height:42px!important;font-size:15px!important}
  .p73-tools-menu{align-self:start!important}.p73-tools-menu>summary{height:44px!important;display:flex!important;align-items:center!important}
  .p73-delivery-list{gap:11px!important}
  .p73-delivery-person{min-height:0!important;border-radius:14px!important;overflow:visible!important}
  .p73-delivery-person-summary{display:grid!important;grid-template-columns:12px minmax(300px,1fr) 105px 110px 155px 24px!important;gap:14px!important;align-items:center!important;min-height:72px!important;padding:12px 16px!important}
  .p73-delivery-person-summary .person{min-width:0!important}.p73-delivery-person-summary .person b{display:block!important;font-size:17px!important;line-height:1.2!important;color:#173f58!important}.p73-delivery-person-summary .person small{display:block!important;margin-top:4px!important;font-size:13px!important;line-height:1.25!important;color:#60798a!important}
  .p73-delivery-person-summary .metric{display:block!important;text-align:center!important;border-left:1px solid #e3edf2!important;padding-left:12px!important}.p73-delivery-person-summary .metric b{display:block!important;font-size:21px!important;line-height:1!important}.p73-delivery-person-summary .metric span{display:block!important;margin-top:5px!important;font-size:10px!important;letter-spacing:.04em!important}
  .p73-delivery-person-summary .last{display:block!important;border-left:1px solid #e3edf2!important;padding-left:14px!important}.p73-delivery-person-summary .last span{font-size:10px!important;text-transform:uppercase!important;letter-spacing:.04em!important}.p73-delivery-person-summary .last b{display:block!important;margin-top:4px!important;font-size:14px!important}
  .p73-delivery-person-summary .chev{justify-self:end!important}
  .p73-delivery-person-body{padding:14px 16px 16px!important}.p73-delivery-item{min-height:58px!important;padding:10px 12px!important}.p73-delivery-item .main b{font-size:15px!important}.p73-delivery-item .main small{font-size:12px!important}

  .p73-collective-v32{gap:14px!important}.p73-collective-v32 .p73-step-card{padding:18px 20px!important;border-radius:15px!important}.p73-collective-v32 .p73-step-title{margin-bottom:15px!important}.p73-collective-v32 .p73-step-title>span{width:36px!important;height:36px!important;font-size:16px!important}.p73-collective-v32 .p73-step-title h2{font-size:21px!important;margin:0 0 4px!important}.p73-collective-v32 .p73-step-title p{font-size:13px!important;line-height:1.35!important}
  .p73-collective-v32 .p73-kind-switch{gap:10px!important;margin-bottom:14px!important}.p73-collective-v32 .p73-kind-switch button{min-width:170px!important;height:43px!important;padding:0 16px!important;font-size:14px!important}
  .p73-collective-v32 .p73-person-filter-row{display:flex!important;align-items:end!important;gap:10px!important;margin-bottom:10px!important}.p73-collective-v32 .p73-person-filter-row label{font-size:12px!important;gap:5px!important}.p73-collective-v32 .p73-person-filter-row select{min-width:210px!important;height:40px!important;font-size:14px!important}
  .p73-person-select-actions{display:flex!important;gap:8px!important}.p73-selection-strip{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;background:#f2f8fb!important;border:1px solid #d8e7ef!important;border-radius:10px!important;padding:8px 11px!important;margin:8px 0 10px!important}.p73-selection-strip span{font-size:13px!important;color:#335e76!important}.p73-selection-strip span b{font-size:18px!important;color:#126fa6!important}.p73-selection-strip small{font-size:12px!important;color:#6c8290!important}
  .p73-collective-v32 .p73-person-check-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}.p73-collective-v32 .p73-person-check{min-height:48px!important;display:grid!important;grid-template-columns:22px 1fr!important;align-items:center!important;gap:9px!important;padding:9px 11px!important;border-radius:10px!important}.p73-collective-v32 .p73-person-check input{width:18px!important;height:18px!important;margin:0!important}.p73-collective-v32 .p73-person-check b{display:block!important;font-size:14px!important;line-height:1.2!important;color:#173f58!important}.p73-collective-v32 .p73-person-check small{display:block!important;font-size:11px!important;line-height:1.2!important;color:#6b8290!important;margin-top:3px!important}
  .p73-add-material-primary{display:grid!important;grid-template-columns:minmax(360px,1fr) auto!important;gap:10px!important;align-items:end!important;background:#f7fbfd!important;border:1px solid #dbe8ef!important;border-radius:12px!important;padding:12px!important;margin-bottom:12px!important}.p73-add-material-primary label{font-size:12px!important}.p73-add-material-primary select{height:43px!important;font-size:14px!important}
  .p73-collective-v32 .p73-empty-lines{display:grid!important;place-items:center!important;gap:4px!important;min-height:76px!important;padding:14px!important}.p73-collective-v32 .p73-empty-lines b{font-size:14px!important;color:#4a687a!important}.p73-collective-v32 .p73-empty-lines span{font-size:12px!important;color:#7b8f9b!important}
  .p73-collective-v32 .p73-collective-line-clean{grid-template-columns:minmax(180px,1.15fr) minmax(180px,1.15fr) 90px 72px 120px minmax(160px,.95fr) 34px!important;gap:8px!important;padding:10px 11px!important;border-radius:10px!important}.p73-collective-v32 .p73-collective-line-clean .who b,.p73-collective-v32 .p73-collective-line-clean .what b{font-size:13px!important}.p73-collective-v32 .p73-collective-line-clean small{font-size:10px!important}.p73-collective-v32 .p73-collective-line-clean label{font-size:10px!important}.p73-collective-v32 .p73-collective-line-clean input{height:37px!important;font-size:13px!important}
  .p73-collective-v32 .p73-collective-head-clean{display:grid!important;grid-template-columns:1.25fr .65fr 1fr!important;gap:10px!important}.p73-collective-v32 .p73-collective-head label{font-size:12px!important}.p73-collective-v32 .p73-collective-head input{height:42px!important;font-size:14px!important}
  .p73-provider-docs{margin-top:12px!important;border:1px solid #d8e6ed!important;border-radius:11px!important;background:#fafcfd!important}.p73-provider-docs>summary{list-style:none!important;cursor:pointer!important;padding:11px 13px!important;font-size:13px!important;font-weight:900!important;color:#315f78!important}.p73-provider-docs>summary::-webkit-details-marker{display:none}.p73-provider-docs>summary small{margin-left:7px!important;font-size:11px!important;font-weight:500!important;color:#718895!important}.p73-provider-docs[open]>summary{border-bottom:1px solid #e3edf2!important}.p73-provider-docs .p73-upload-grid{padding:12px!important;margin:0!important}.p73-provider-docs .p73-upload-grid label{min-height:105px!important;align-content:start!important}.p73-provider-docs .p73-upload-grid b{font-size:14px!important}.p73-provider-docs .p73-upload-grid span{font-size:11px!important}.p73-provider-docs input[type=file]{width:100%!important;font-size:12px!important;margin-top:6px!important}.p73-provider-docs input[type=file]::file-selector-button{border:1px solid #a9c5d5!important;background:#fff!important;color:#245871!important;border-radius:8px!important;padding:7px 10px!important;font-weight:800!important;margin-right:8px!important;cursor:pointer!important}
  .p73-collective-v32 .p73-collective-advanced{margin-top:10px!important;border:1px solid #e0e9ee!important;border-radius:10px!important;padding:0!important}.p73-collective-v32 .p73-collective-advanced>summary{padding:10px 12px!important;font-size:12px!important}.p73-submit-large{min-width:235px!important;height:45px!important;font-size:14px!important}
}
@media(max-width:760px){
 .p73-selection-strip{display:block!important}.p73-selection-strip small{display:block!important;margin-top:3px!important}.p73-person-select-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important}.p73-provider-docs>summary small{display:block!important;margin:3px 0 0!important}.p73-provider-docs .p73-upload-grid{padding:9px!important}.p73-submit-large{width:100%!important}.p73-collective-v32 .p73-person-check-grid{grid-template-columns:1fr!important}.p73-delivery-person-summary .person small{font-size:12px!important}
}


/* Motor 73.33 · Ficha emergente de entregas, separación Medios/Uniformidad e histórico por artículo */
.p73-delivery-toolbar-v33{grid-template-columns:minmax(0,760px) auto 1fr!important}.p73-delivery-list-v33{display:grid;gap:10px}.p73-delivery-person-card{width:100%;border:1px solid #d9e6ed;border-left:5px solid #73b08f;border-radius:14px;background:#fff;display:grid;grid-template-columns:12px minmax(300px,1fr) 100px 108px 155px 105px;gap:14px;align-items:center;padding:13px 16px;text-align:left;cursor:pointer;color:inherit;font:inherit}.p73-delivery-person-card.traffic-amber{border-left-color:#e2ae43}.p73-delivery-person-card.traffic-red{border-left-color:#d85b55}.p73-delivery-person-card:hover{background:#f7fbfd;border-color:#bcd4e1}.p73-delivery-person-card .person b{display:block;font-size:17px;color:#173f58}.p73-delivery-person-card .person small{display:block;font-size:12px;color:#60798a;margin-top:4px}.p73-delivery-person-card .metric{text-align:center;border-left:1px solid #e4edf2;padding-left:10px}.p73-delivery-person-card .metric b{display:block;font-size:21px;color:#214e68}.p73-delivery-person-card .metric small{font-size:10px;font-weight:900;color:#718592}.p73-delivery-person-card .metric.bad b{color:#a65a00}.p73-delivery-person-card .last{border-left:1px solid #e4edf2;padding-left:12px}.p73-delivery-person-card .last small{display:block;font-size:10px;color:#708592;font-weight:800}.p73-delivery-person-card .last b{display:block;font-size:14px;color:#214e68;margin-top:3px}.p73-delivery-person-card .open-label{justify-self:end;font-size:12px;font-weight:900;color:#156f9f}
.p73-dotation-modal,.p73-item-history-modal{position:fixed;inset:0;z-index:3000;background:rgba(9,32,46,.54);padding:22px;display:grid;place-items:center}.p73-dotation-modal[hidden],.p73-item-history-modal[hidden]{display:none!important}.p73-dotation-modal-dialog{width:min(1100px,96vw);max-height:92vh;background:#f7fafc;border-radius:18px;box-shadow:0 24px 70px rgba(4,24,36,.35);overflow:hidden;display:flex;flex-direction:column}.p73-dotation-modal-head{background:#fff;border-bottom:1px solid #dce8ee;padding:17px 20px;display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.p73-dotation-modal-head h2{margin:3px 0 2px;font-size:25px;color:#123e59}.p73-dotation-modal-head p{margin:0;color:#607a8a;font-size:13px}.p73-modal-x{width:38px;height:38px;border:1px solid #d7e4eb;border-radius:10px;background:#f5f9fb;color:#27566f;font-size:25px;line-height:1;cursor:pointer}.p73-dotation-modal-actions{display:flex;gap:9px;padding:12px 20px;background:#fff;border-bottom:1px solid #e2ebf0}.p73-dotation-modal-actions .btn{min-height:40px;font-size:14px}.btn.danger-soft{border-color:#e0bfc0;color:#8a393b;background:#fff}.btn.danger-soft:hover{background:#fff4f4}.p73-dotation-modal-scroll{overflow:auto;padding:16px 20px 22px;display:grid;gap:15px}.p73-current-section{background:#fff;border:1px solid #dce8ee;border-radius:14px;overflow:hidden}.p73-current-section-title{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 15px;border-bottom:1px solid #e5edf2;background:#fbfdfe}.p73-current-section-title h3{margin:0;font-size:17px;color:#1c506d}.p73-current-section-title p{margin:3px 0 0;font-size:11px;color:#718896}.p73-current-section-title>span{display:grid;place-items:center;min-width:30px;height:30px;border-radius:999px;background:#eaf5fb;color:#156f9f;font-weight:900}.p73-current-grid{padding:8px;display:grid;gap:7px}.p73-current-item{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto 86px;gap:11px;align-items:center;border:1px solid #e0e9ee;border-radius:10px;background:#fff;padding:10px 12px;text-align:left;color:inherit;font:inherit;cursor:pointer}.p73-current-item:hover{border-color:#a9c9da;background:#f7fbfd}.p73-current-item .main b{display:block;font-size:14px;color:#173f58}.p73-current-item .main small{display:block;font-size:11px;color:#607a8a;margin-top:3px}.p73-current-item .history-link{font-size:11px;font-weight:900;color:#156f9f;text-align:right}.p73-empty-current{margin:8px;color:#728896;font-size:12px}
.p73-return-panel{background:#eef7fb;border-bottom:1px solid #cfe2eb;padding:12px 20px}.p73-return-form-v33{display:grid;gap:10px}.p73-return-panel-head{display:flex;justify-content:space-between;align-items:flex-start}.p73-return-panel-head b{font-size:15px;color:#1e526e}.p73-return-panel-head small{display:block;font-size:11px;color:#68808f;margin-top:2px}.p73-inline-close{border:0;background:transparent;color:#466779;font-size:22px;cursor:pointer}.p73-return-mode,.p73-return-destination-v33 label{display:grid;gap:4px;font-size:11px;font-weight:900;color:#41677c}.p73-return-mode select,.p73-return-destination-v33 select{height:39px;border:1px solid #bdd0dc;border-radius:8px;background:#fff;padding:0 9px;font-size:13px}.p73-return-checks-v33{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:175px;overflow:auto}.p73-return-checks-v33 label{display:grid;grid-template-columns:19px 1fr;gap:7px;align-items:start;padding:8px;background:#fff;border:1px solid #d9e6ed;border-radius:8px}.p73-return-checks-v33 b{display:block;font-size:12px;color:#204f69}.p73-return-checks-v33 small{display:block;font-size:10px;color:#718795;margin-top:2px}.p73-return-destination-v33{display:grid;grid-template-columns:1fr 1fr;gap:8px}.p73-return-submit{display:flex;justify-content:flex-end}
.p73-item-history-dialog{width:min(820px,94vw);max-height:86vh;background:#fff;border-radius:17px;overflow:hidden;box-shadow:0 24px 70px rgba(4,24,36,.38)}.p73-item-history-dialog>header{display:flex;justify-content:space-between;gap:14px;padding:15px 18px;border-bottom:1px solid #dce8ee;background:#fbfdfe}.p73-item-history-dialog h3{font-size:21px;margin:2px 0;color:#174762}.p73-item-history-dialog header p{margin:0;color:#6b8291;font-size:12px}.p73-item-history-body{padding:10px;overflow:auto;max-height:68vh}.p73-item-history-body article{display:grid;grid-template-columns:115px minmax(0,1fr) auto;gap:12px;align-items:start;padding:11px;border-bottom:1px solid #e7eef2}.p73-item-history-body article:last-child{border-bottom:0}.p73-item-history-body .date b{display:block;font-size:13px}.p73-item-history-body .date small{display:block;font-size:10px;color:#718795;margin-top:3px}.p73-item-history-body .event>b{display:block;font-size:13px;color:#214f69}.p73-item-history-body .event>small{display:block;font-size:11px;color:#6d8492;margin-top:2px}.p73-item-history-body .event>span{display:block;font-size:10px;color:#617887;margin-top:5px;padding-left:9px;border-left:2px solid #d7e7ef}
@media(max-width:1000px){.p73-delivery-person-card{grid-template-columns:12px minmax(240px,1fr) 80px 88px 95px}.p73-delivery-person-card .last{display:none}.p73-return-checks-v33{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.p73-dotation-modal,.p73-item-history-modal{padding:0;align-items:end}.p73-dotation-modal-dialog,.p73-item-history-dialog{width:100vw;max-width:none;max-height:94vh;border-radius:18px 18px 0 0}.p73-dotation-modal-head{padding:13px 14px}.p73-dotation-modal-head h2{font-size:20px}.p73-dotation-modal-actions{padding:10px 12px;display:grid;grid-template-columns:1fr 1fr}.p73-dotation-modal-actions .btn:last-child{grid-column:1/-1}.p73-dotation-modal-scroll{padding:10px 12px 18px}.p73-delivery-person-card{grid-template-columns:10px 1fr 58px 18px;padding:11px 12px;gap:8px}.p73-delivery-person-card .person b{font-size:14px}.p73-delivery-person-card .person small{font-size:10px}.p73-delivery-person-card .metric:nth-of-type(4),.p73-delivery-person-card .last{display:none}.p73-delivery-person-card .metric{padding-left:5px}.p73-delivery-person-card .metric b{font-size:17px}.p73-delivery-person-card .metric small{font-size:8px}.p73-delivery-person-card .open-label{font-size:0}.p73-delivery-person-card .open-label:after{content:'›';font-size:22px}.p73-current-item{grid-template-columns:1fr auto}.p73-current-item .main{grid-column:1/-1}.p73-current-item .history-link{font-size:10px}.p73-return-panel{padding:10px 12px}.p73-return-checks-v33{grid-template-columns:1fr}.p73-return-destination-v33{grid-template-columns:1fr}.p73-item-history-body article{grid-template-columns:82px 1fr}.p73-item-history-body article>.p73-dot-status{grid-column:2;justify-self:start}}


/* Motor 73.34 · sincronización visual, filtros auxiliares y Personal solo consulta */
.communication-global-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.communication-global-row form{margin:0}.p73-history-readonly{cursor:default!important}.p73-history-readonly:hover{transform:none!important}.p73-manage-delivery-link{white-space:nowrap}
@media(max-width:760px){
  /* El membrete visible en móvil debe ocupar una sola línea y no ganar altura. */
  .dashboard-home .welcome-kicker{font-size:10.5px!important;line-height:1.05!important;letter-spacing:.035em!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important;max-width:100%!important}
  .corporate-splash-inner b{font-size:13px!important;white-space:nowrap!important;letter-spacing:.015em!important}
  .communication-global-row{grid-template-columns:1fr}.communication-global-row form .btn{width:100%}
}

/* Motor 73.34 · histórico administrativo de avisos retirados */
.communication-retired-global summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;color:#244d67;font-size:14px}.communication-retired-global summary span{min-width:30px;text-align:center;border-radius:999px;background:#eef3f6;padding:4px 9px;font-weight:800}.communication-retired-list{margin-top:10px;border-top:1px solid #e4ebef}.communication-retired-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:9px 3px;border-bottom:1px solid #edf2f5}.communication-retired-row>div{display:flex;flex-direction:column;gap:2px}.communication-retired-row small{color:#708594}.communication-retired-row>span{font-size:10px;font-weight:900;color:#8a6262;background:#f7eded;border-radius:999px;padding:4px 8px}
@media(max-width:760px){.communication-retired-row{align-items:flex-start}.communication-retired-row>span{flex:none}.corporate-splash-inner b{max-width:94vw!important;font-size:12.5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.dashboard-home .welcome-v62{padding-top:15px!important}.dashboard-home .welcome-kicker{font-size:10.5px!important}}


/* Motor 73.35 · modal con scroll real PC/móvil + menú móvil compacto */
.p73-title-mobile,.p73-tab-mobile,.p73-tools-mobile{display:none}
.p73-dotation-modal{overflow:hidden}
.p73-dotation-modal-dialog{
  height:min(92vh,900px);
  max-height:calc(100dvh - 44px);
  min-height:0;
}
.p73-dotation-modal-head,.p73-dotation-modal-actions,.p73-return-panel{flex:0 0 auto}
.p73-dotation-modal-scroll{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto!important;
  overflow-x:hidden;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
.p73-item-history-dialog{display:flex;flex-direction:column;min-height:0}
.p73-item-history-dialog>header{flex:0 0 auto}
.p73-item-history-body{flex:1 1 auto;min-height:0;overflow-y:auto!important;-webkit-overflow-scrolling:touch}
body.p73-modal-open{overflow:hidden!important}

@media(max-width:760px){
  .p73-title-desktop,.p73-tab-desktop,.p73-tools-desktop{display:none!important}
  .p73-title-mobile,.p73-tab-mobile,.p73-tools-mobile{display:inline!important}
  .p73-simple-head{display:block!important;margin-bottom:6px!important}
  .p73-simple-head .p73-inline-actions{display:none!important}
  .p73-simple-head .eyebrow{font-size:9px!important;margin-bottom:2px!important}
  .p73-simple-head h1{font-size:23px!important;line-height:1.05!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .p73-simple-head .p73-dot-subtitle{display:none!important}
  .p73-dot-tabs{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:6px!important;margin:7px 0 8px!important;padding-bottom:1px!important;scrollbar-width:none}
  .p73-dot-tabs::-webkit-scrollbar{display:none}
  .p73-dot-tabs a{flex:1 0 auto!important;justify-content:center!important;min-height:38px!important;padding:7px 10px!important;font-size:11.5px!important;white-space:nowrap!important}
  .p73-dot-tabs .p73-tab-icon{font-size:13px}
  .p73-delivery-toolbar-v33{display:grid!important;grid-template-columns:minmax(0,1fr) 44px!important;gap:7px!important;margin:7px 0 10px!important;align-items:start!important}
  .p73-delivery-search{grid-column:1!important;display:grid!important;grid-template-columns:minmax(0,1fr) 104px!important;gap:6px!important;padding:8px!important;border-radius:13px!important}
  .p73-delivery-search .search{grid-column:1/-1!important}
  .p73-delivery-search label{gap:3px!important;font-size:9.5px!important}
  .p73-delivery-search .search{font-size:0!important}
  .p73-delivery-search .search:before{content:'Buscar';font-size:9.5px!important;font-weight:900;color:#345d74}
  .p73-delivery-search input,.p73-delivery-search select{height:36px!important;font-size:12.5px!important;padding:0 9px!important}
  .p73-delivery-search #p73YearWrap{grid-column:1!important}
  .p73-delivery-search button{grid-column:2!important;align-self:end!important;height:36px!important;min-height:36px!important;padding:5px 9px!important;font-size:11.5px!important}
  .p73-tools-menu{grid-column:2!important;grid-row:1!important;justify-self:stretch!important}
  .p73-tools-menu>summary{width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;display:grid!important;place-items:center!important;font-size:26px!important;border-radius:12px!important}
  .p73-tools-menu>div{left:auto!important;right:0!important;width:180px!important;top:49px!important}
  .p73-delivery-person-card{min-height:70px!important;padding:10px 11px!important;border-radius:13px!important}
  .p73-delivery-person-card .person b{font-size:14.5px!important;line-height:1.15!important}
  .p73-delivery-person-card .person small{font-size:10px!important;line-height:1.2!important;margin-top:3px!important}
  .p73-delivery-person-card .metric b{font-size:18px!important}
  .p73-delivery-person-card .metric small{font-size:8px!important}
  .p73-dotation-modal{padding:0!important;align-items:end!important;overflow:hidden!important}
  .p73-dotation-modal-dialog{
    width:100vw!important;max-width:none!important;
    height:calc(100dvh - max(6px, env(safe-area-inset-top)))!important;
    max-height:calc(100dvh - max(6px, env(safe-area-inset-top)))!important;
    min-height:0!important;border-radius:18px 18px 0 0!important;
  }
  .p73-dotation-modal-scroll{padding:10px 12px calc(26px + env(safe-area-inset-bottom))!important;min-height:0!important;overflow-y:auto!important}
  .p73-dotation-modal-head{padding:12px 14px!important}
  .p73-dotation-modal-head .eyebrow{font-size:9px!important}
  .p73-dotation-modal-head h2{font-size:20px!important;line-height:1.1!important}
  .p73-dotation-modal-actions{padding:9px 12px!important;gap:7px!important}
  .p73-dotation-modal-actions .btn{min-height:38px!important;font-size:12.5px!important}
  .p73-current-section-title{padding:11px 12px!important}
  .p73-current-section-title h3{font-size:16px!important}
  .p73-current-section-title p{font-size:10px!important}
}

@media(min-width:761px){
  .p73-dotation-modal-scroll{scrollbar-gutter:stable}
}

/* Motor 73.36 · corrección regresión Entregas: PC limpio + móvil compacto + scroll estable */
/* Escritorio: recuperar jerarquía y proporciones de 73.34. */
@media (min-width:761px){
  .p73-simple-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;margin-bottom:14px!important}
  .p73-simple-head h1{font-size:25px!important;line-height:1.08!important;margin:2px 0 0!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
  .p73-simple-head .p73-dot-subtitle{display:block!important;margin-top:5px!important}
  .p73-simple-head .p73-inline-actions{display:flex!important}
  .p73-dot-tabs{display:flex!important;gap:8px!important;overflow:visible!important;margin:0 0 10px!important}
  .p73-dot-tabs a{display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;padding:8px 14px!important;font-size:13px!important}
  .p73-delivery-toolbar-v33{display:grid!important;grid-template-columns:minmax(620px,760px) auto!important;gap:12px!important;align-items:start!important;margin:12px 0!important}
  .p73-delivery-search{display:grid!important;grid-template-columns:minmax(260px,1fr) 160px 125px auto!important;gap:10px!important;align-items:end!important;padding:12px 14px!important}
  .p73-delivery-search .search{grid-column:auto!important;font-size:12px!important}
  .p73-delivery-search label{font-size:12px!important}
  .p73-delivery-search input,.p73-delivery-search select{height:40px!important;font-size:14px!important;padding:0 10px!important}
  .p73-delivery-search button{height:40px!important;min-height:40px!important;font-size:14px!important;padding:0 16px!important}
  .p73-tools-menu{grid-column:auto!important;grid-row:auto!important;justify-self:start!important}
  .p73-tools-menu>summary{width:auto!important;height:auto!important;min-height:40px!important;padding:9px 14px!important;font-size:14px!important;display:flex!important;place-items:unset!important;border-radius:10px!important}
  .p73-delivery-person-card{grid-template-columns:12px minmax(300px,1fr) 100px 108px 155px 105px!important;gap:14px!important;padding:13px 16px!important;min-height:0!important}
  .p73-delivery-person-card .person b{font-size:17px!important}
  .p73-delivery-person-card .person small{font-size:12px!important}
  .p73-delivery-person-card .metric b{font-size:21px!important}
  .p73-delivery-person-card .metric small{font-size:10px!important}
  .p73-delivery-person-card .last{display:block!important}
  .p73-delivery-person-card .open-label{font-size:12px!important}
}

/* Móvil: compacto sin duplicar textos ni alterar el diseño de escritorio. */
@media (max-width:760px){
  .p73-simple-head{display:block!important;margin:4px 0 6px!important}
  .p73-simple-head .p73-inline-actions{display:none!important}
  .p73-simple-head .eyebrow{font-size:9px!important;margin-bottom:2px!important}
  .p73-simple-head h1{font-size:20px!important;line-height:1.05!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .p73-simple-head .p73-dot-subtitle{display:none!important}
  .p73-dot-tabs{display:grid!important;grid-template-columns:.85fr 1.35fr 1.1fr!important;gap:5px!important;margin:6px 0 8px!important;padding:0!important;overflow:visible!important}
  .p73-dot-tabs a{display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;min-height:36px!important;padding:6px 5px!important;font-size:10.5px!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .p73-delivery-toolbar-v33{display:grid!important;grid-template-columns:minmax(0,1fr) 42px!important;gap:6px!important;margin:6px 0 9px!important;align-items:start!important}
  .p73-delivery-search{grid-column:1!important;display:grid!important;grid-template-columns:minmax(0,1fr) 92px!important;gap:5px!important;padding:7px!important;border-radius:12px!important}
  .p73-delivery-search .search{grid-column:1/-1!important;font-size:0!important}
  .p73-delivery-search .search:before{content:'Buscar';font-size:9.5px!important;font-weight:900;color:#345d74}
  .p73-delivery-search label{gap:3px!important;font-size:9.5px!important;min-width:0!important}
  .p73-delivery-search input,.p73-delivery-search select{height:34px!important;font-size:12px!important;padding:0 8px!important;min-width:0!important}
  .p73-delivery-search #p73YearWrap{grid-column:1!important}
  .p73-delivery-search button{grid-column:2!important;align-self:end!important;height:34px!important;min-height:34px!important;padding:4px 7px!important;font-size:11px!important}
  .p73-tools-menu{grid-column:2!important;grid-row:1!important;justify-self:stretch!important}
  .p73-tools-menu>summary{width:42px!important;height:42px!important;min-height:42px!important;padding:0!important;display:grid!important;place-items:center!important;font-size:0!important;border-radius:11px!important}
  .p73-tools-menu>summary:after{content:'⋮';font-size:25px!important;line-height:1!important}
  .p73-tools-menu>div{left:auto!important;right:0!important;width:180px!important;top:47px!important}
  .p73-delivery-person-card{grid-template-columns:9px minmax(0,1fr) 56px 18px!important;gap:7px!important;min-height:66px!important;padding:9px 10px!important;border-radius:12px!important}
  .p73-delivery-person-card .person b{font-size:14px!important;line-height:1.15!important}
  .p73-delivery-person-card .person small{font-size:9.5px!important;line-height:1.2!important;margin-top:2px!important}
  .p73-delivery-person-card .metric:nth-of-type(4),.p73-delivery-person-card .last{display:none!important}
  .p73-delivery-person-card .metric{padding-left:4px!important}
  .p73-delivery-person-card .metric b{font-size:17px!important}
  .p73-delivery-person-card .metric small{font-size:7.5px!important}
  .p73-delivery-person-card .open-label{font-size:0!important}
  .p73-delivery-person-card .open-label:after{content:'›';font-size:21px!important}
}

/* Modal: área visible fija y contenido central desplazable en todos los tamaños. */
.p73-dotation-modal{overflow:hidden!important}
.p73-dotation-modal-dialog{display:flex!important;flex-direction:column!important;height:min(92vh,900px)!important;max-height:calc(100dvh - 44px)!important;min-height:0!important;overflow:hidden!important}
.p73-dotation-modal-head,.p73-dotation-modal-actions,.p73-return-panel{flex:0 0 auto!important}
.p73-dotation-modal-scroll{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important}
.p73-item-history-dialog{display:flex!important;flex-direction:column!important;min-height:0!important;max-height:86vh!important;overflow:hidden!important}
.p73-item-history-dialog>header{flex:0 0 auto!important}
.p73-item-history-body{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}
body.p73-modal-open{overflow:hidden!important}
@media (max-width:760px){
  .p73-dotation-modal,.p73-item-history-modal{padding:0!important;align-items:end!important}
  .p73-dotation-modal-dialog,.p73-item-history-dialog{width:100vw!important;max-width:none!important;height:calc(100dvh - max(6px,env(safe-area-inset-top)))!important;max-height:calc(100dvh - max(6px,env(safe-area-inset-top)))!important;border-radius:18px 18px 0 0!important}
  .p73-dotation-modal-scroll{padding-bottom:calc(28px + env(safe-area-inset-bottom))!important}
}


/* Motor 73.37 · Entregas: filtros PC en una línea, sin Herramientas y móvil realmente compacto */
.p73-delivery-toolbar-v33{display:block!important;margin:10px 0!important}
.p73-delivery-toolbar-v33 .p73-tools-menu{display:none!important}
@media (min-width:761px){
  .p73-delivery-toolbar-v33{width:100%!important}
  .p73-delivery-search{
    width:100%!important;max-width:none!important;
    display:grid!important;
    grid-template-columns:minmax(340px,1fr) 170px 135px auto!important;
    gap:10px!important;align-items:end!important;
    padding:10px 12px!important;border-radius:12px!important;
  }
  .p73-delivery-search .search,.p73-delivery-search label,#p73YearWrap{grid-column:auto!important;margin:0!important;min-width:0!important}
  .p73-delivery-search input,.p73-delivery-search select{width:100%!important;height:39px!important;min-height:39px!important}
  .p73-delivery-search button{grid-column:auto!important;height:39px!important;min-height:39px!important;margin:0!important}
}
@media (max-width:760px){
  .p73-simple-head{margin:1px 0 4px!important}
  .p73-simple-head .eyebrow{font-size:8px!important;line-height:1!important;margin:0 0 2px!important}
  .p73-simple-head h1{font-size:18px!important;line-height:1.05!important;margin:0!important;letter-spacing:-.2px!important}
  .p73-dot-tabs{
    display:grid!important;grid-template-columns:.8fr 1.35fr 1.05fr!important;
    gap:4px!important;margin:4px 0 5px!important;padding:0!important;
  }
  .p73-dot-tabs a{
    min-height:32px!important;height:32px!important;
    padding:4px 5px!important;font-size:10px!important;line-height:1!important;
    border-radius:18px!important;
  }
  .p73-delivery-toolbar-v33{display:block!important;margin:4px 0 6px!important}
  .p73-delivery-search{
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.15fr) 88px 72px!important;
    gap:4px!important;padding:6px!important;border-radius:11px!important;
    align-items:end!important;
  }
  .p73-delivery-search .search{grid-column:1/-1!important;display:block!important;font-size:0!important;margin:0!important}
  .p73-delivery-search .search:before{display:none!important;content:none!important}
  .p73-delivery-search label{display:grid!important;gap:2px!important;font-size:8px!important;line-height:1!important;margin:0!important;min-width:0!important}
  .p73-delivery-search input[type=search]{height:34px!important;min-height:34px!important;font-size:12.5px!important;padding:0 9px!important;border-radius:9px!important}
  .p73-delivery-search select{height:32px!important;min-height:32px!important;font-size:11px!important;padding:0 6px!important;border-radius:8px!important}
  .p73-delivery-search #p73YearWrap{grid-column:2!important;grid-row:2!important}
  .p73-delivery-search label:not(.search):first-of-type{grid-column:1!important;grid-row:2!important}
  .p73-delivery-search button{
    grid-column:3!important;grid-row:2!important;
    height:32px!important;min-height:32px!important;padding:0 7px!important;
    font-size:10.5px!important;border-radius:8px!important;margin:0!important;
  }
  .p73-delivery-list-v33{gap:6px!important}
  .p73-delivery-person-card{
    grid-template-columns:8px minmax(0,1fr) 50px 15px!important;
    gap:6px!important;min-height:58px!important;
    padding:7px 9px!important;border-radius:11px!important;
  }
  .p73-delivery-person-card .person b{font-size:13.5px!important;line-height:1.08!important}
  .p73-delivery-person-card .person small{font-size:9px!important;line-height:1.1!important;margin-top:2px!important}
  .p73-delivery-person-card .metric{padding-left:3px!important}
  .p73-delivery-person-card .metric b{font-size:16px!important;line-height:1!important}
  .p73-delivery-person-card .metric small{font-size:7px!important;line-height:1!important}
  .p73-delivery-person-card .open-label:after{font-size:19px!important}
  .p73-delivery-person-card .p73-dot-light{width:8px!important;height:8px!important}
}

/* Motor 73.38 · móvil: búsqueda y filtros de Entregas en una sola línea */
@media (max-width:760px){
  .p73-delivery-toolbar-v33{
    margin:3px 0 5px!important;
  }
  .p73-delivery-search{
    display:grid!important;
    grid-template-columns:minmax(115px,1fr) 74px 58px 38px!important;
    grid-template-rows:34px!important;
    gap:3px!important;
    align-items:stretch!important;
    width:100%!important;
    padding:5px!important;
    min-height:44px!important;
    border-radius:10px!important;
  }
  .p73-delivery-search .search{
    grid-column:1!important;
    grid-row:1!important;
    display:block!important;
    min-width:0!important;
    margin:0!important;
    font-size:0!important;
  }
  .p73-delivery-search label:nth-of-type(2){
    grid-column:2!important;
    grid-row:1!important;
    display:block!important;
    min-width:0!important;
    margin:0!important;
    font-size:0!important;
  }
  .p73-delivery-search #p73YearWrap{
    grid-column:3!important;
    grid-row:1!important;
    display:block!important;
    min-width:0!important;
    margin:0!important;
    font-size:0!important;
  }
  .p73-delivery-search #p73YearWrap[hidden]{display:none!important}
  .p73-delivery-search input[type=search],
  .p73-delivery-search select{
    box-sizing:border-box!important;
    width:100%!important;
    height:34px!important;
    min-height:34px!important;
    margin:0!important;
    border-radius:8px!important;
  }
  .p73-delivery-search input[type=search]{
    padding:0 8px!important;
    font-size:11.5px!important;
    line-height:34px!important;
  }
  .p73-delivery-search select{
    padding:0 18px 0 5px!important;
    font-size:10px!important;
    line-height:34px!important;
  }
  .p73-delivery-search button{
    grid-column:4!important;
    grid-row:1!important;
    width:38px!important;
    height:34px!important;
    min-height:34px!important;
    padding:0!important;
    margin:0!important;
    border-radius:8px!important;
    font-size:0!important;
    line-height:34px!important;
  }
  .p73-delivery-search button:after{
    content:'✓';
    font-size:17px!important;
    font-weight:800!important;
    line-height:1!important;
  }
  .p73-delivery-search:has(#p73YearWrap[hidden]){
    grid-template-columns:minmax(120px,1fr) 82px 38px!important;
  }
  .p73-delivery-search:has(#p73YearWrap[hidden]) button{
    grid-column:3!important;
  }
}

/* Motor 73.39 · Entregas: modal completo y filtros móviles robustos */
/* Ninguna sección ni rejilla puede recortar artículos. El diálogo completo es el
   único contenedor desplazable, evitando el fallo de scroll anidado en PC/móvil. */
.p73-current-section,.p73-current-grid{max-height:none!important;overflow:visible!important}
.p73-current-section-title>span{width:auto!important;min-width:52px!important;padding:0 9px!important;white-space:nowrap!important}
.p73-dotation-modal-dialog{
  height:auto!important;
  max-height:calc(100vh - 24px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
}
.p73-dotation-modal-scroll{
  flex:0 0 auto!important;
  min-height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}

/* Escritorio: una sola línea, sin Herramientas. */
.p73-mobile-filter-toggle{display:none!important}
.p73-delivery-filter-controls{display:contents}
@media (min-width:761px){
  .p73-delivery-search{
    display:grid!important;
    grid-template-columns:minmax(360px,1fr) 170px 140px auto!important;
    align-items:end!important;gap:10px!important;
  }
  .p73-delivery-search>.search{grid-column:1!important;grid-row:1!important}
  .p73-delivery-filter-controls{display:contents!important}
  .p73-delivery-filter-controls>label:first-child{grid-column:2!important;grid-row:1!important}
  .p73-delivery-filter-controls>#p73YearWrap{grid-column:3!important;grid-row:1!important}
  .p73-delivery-filter-controls>button{grid-column:4!important;grid-row:1!important}
}

/* Móvil: una única fila visible [Buscar][Filtros]. Los filtros se abren solo si
   hacen falta, evitando forzar selects diminutos o solapados. */
@media (max-width:760px){
  .p73-delivery-toolbar-v33{margin:4px 0 6px!important}
  .p73-delivery-search{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 70px!important;
    grid-template-rows:36px auto!important;
    gap:5px!important;padding:5px!important;align-items:stretch!important;
    min-height:46px!important;border-radius:11px!important;
  }
  .p73-delivery-search>.search{grid-column:1!important;grid-row:1!important;display:block!important;margin:0!important;font-size:0!important;min-width:0!important}
  .p73-delivery-search>.search:before{display:none!important;content:none!important}
  .p73-delivery-search input[type=search]{width:100%!important;height:36px!important;min-height:36px!important;margin:0!important;padding:0 10px!important;font-size:12.5px!important;border-radius:9px!important;box-sizing:border-box!important}
  .p73-mobile-filter-toggle{display:block!important;grid-column:2!important;grid-row:1!important;width:70px!important;height:36px!important;min-height:36px!important;padding:0 6px!important;margin:0!important;border:1px solid #b8d0dc!important;border-radius:9px!important;background:#fff!important;color:#1a5878!important;font-weight:900!important;font-size:10.5px!important}
  .p73-delivery-filter-controls{display:none!important;grid-column:1/-1!important;grid-row:2!important;grid-template-columns:minmax(0,1fr) 92px 68px!important;gap:5px!important;padding-top:1px!important}
  .p73-delivery-filter-controls.is-open{display:grid!important}
  .p73-delivery-filter-controls label{display:grid!important;gap:2px!important;margin:0!important;font-size:8.5px!important;line-height:1!important;min-width:0!important}
  .p73-delivery-filter-controls select{width:100%!important;height:32px!important;min-height:32px!important;padding:0 6px!important;font-size:10.5px!important;border-radius:8px!important}
  .p73-delivery-filter-controls button{width:68px!important;height:32px!important;min-height:32px!important;padding:0 5px!important;margin:0!important;align-self:end!important;font-size:10px!important;border-radius:8px!important}
  .p73-delivery-filter-controls #p73YearWrap[hidden]{display:none!important}
  .p73-dotation-modal-dialog{height:calc(100dvh - max(6px,env(safe-area-inset-top)))!important;max-height:calc(100dvh - max(6px,env(safe-area-inset-top)))!important;overflow-y:auto!important}
  .p73-dotation-modal-scroll{padding-bottom:calc(34px + env(safe-area-inset-bottom))!important}
}

/* Motor 73.40 · secciones plegables y filtros móviles independientes */
.p73-section-toggle{
  width:100%;
  border:0;
  border-radius:0;
  font:inherit;
  color:inherit;
  text-align:left;
  cursor:pointer;
}
.p73-section-toggle:hover{background:#f4f9fc}
.p73-section-toggle:focus-visible{outline:2px solid #2485bd;outline-offset:-2px}
.p73-section-caret{display:inline-block;min-width:14px;color:#17668f;font-weight:900}
.p73-current-grid[hidden]{display:none!important}

/* Dos formularios intencionadamente independientes: evita que estilos de PC
   deformen el buscador móvil. */
.p73-filter-mobile{display:none!important}
.p73-filter-desktop{
  display:grid!important;
  grid-template-columns:minmax(360px,1fr) 170px 140px auto!important;
  align-items:end!important;
  gap:10px!important;
  padding:12px!important;
}
.p73-filter-desktop label{display:grid!important;gap:5px!important;min-width:0!important;margin:0!important}
.p73-filter-desktop label>span{font-size:12px!important;font-weight:800!important;color:#264f66!important}
.p73-filter-desktop input,.p73-filter-desktop select{width:100%!important;box-sizing:border-box!important}
.p73-filter-desktop button{height:42px!important;min-height:42px!important;align-self:end!important}

@media (max-width:760px){
  .p73-filter-desktop{display:none!important}
  .p73-filter-mobile{
    display:block!important;
    padding:6px!important;
    margin:0!important;
    border-radius:12px!important;
    min-width:0!important;
  }
  .p73-filter-mobile-main{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:6px!important;
    align-items:center!important;
    min-width:0!important;
  }
  .p73-filter-mobile-main input[type=search]{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:40px!important;
    min-height:40px!important;
    margin:0!important;
    padding:0 11px!important;
    border:1px solid #b7cfdb!important;
    border-radius:10px!important;
    box-sizing:border-box!important;
    font-size:13px!important;
    line-height:1!important;
    background:#fff!important;
  }
  .p73-filter-mobile-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:72px!important;
    max-width:84px!important;
    height:40px!important;
    min-height:40px!important;
    margin:0!important;
    padding:0 9px!important;
    border:1px solid #b7cfdb!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#175675!important;
    font-size:11px!important;
    font-weight:900!important;
    white-space:nowrap!important;
  }
  .p73-filter-mobile-panel{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 92px 64px!important;
    gap:6px!important;
    align-items:end!important;
    margin-top:6px!important;
    padding:7px!important;
    border-top:1px solid #e0eaf0!important;
    min-width:0!important;
  }
  .p73-filter-mobile-panel[hidden]{display:none!important}
  .p73-filter-mobile-panel label{display:grid!important;gap:3px!important;min-width:0!important;margin:0!important}
  .p73-filter-mobile-panel label>span{font-size:9px!important;font-weight:800!important;color:#42657a!important}
  .p73-filter-mobile-panel select{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    height:34px!important;
    min-height:34px!important;
    margin:0!important;
    padding:0 7px!important;
    border-radius:8px!important;
    font-size:11px!important;
    box-sizing:border-box!important;
  }
  .p73-filter-mobile-apply{
    width:64px!important;
    min-width:64px!important;
    height:34px!important;
    min-height:34px!important;
    margin:0!important;
    padding:0 5px!important;
    font-size:10px!important;
    border-radius:8px!important;
  }
  .p73-delivery-toolbar-v40{margin:4px 0 7px!important}
  .p73-current-section-title{min-height:54px!important}
  .p73-section-toggle{padding:10px 12px!important}
}

/* Motor 73.41 · corrige duplicación de filtros en móvil.
   Los selects de Mostrar/Año usan el control nativo en este panel y no el
   mobile-smart-select global; además, Año respeta realmente el atributo hidden. */
@media (max-width:760px){
  .p73-filter-mobile-panel [data-year-wrap][hidden]{display:none!important}
  .p73-filter-mobile-panel select.no-mobile-smart-select{
    display:block!important;
    width:100%!important;
    min-width:0!important;
  }
  .p73-filter-mobile-panel .mobile-select-trigger{display:none!important}
}
/* Motor 73.42 · Inventario / almacén / catálogo + munición */
.p73-inv-tabs{margin-bottom:12px}.p73-inv-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:10px 0 14px}.p73-inv-section-head>div{display:flex;flex-direction:column;gap:3px}.p73-inv-section-head b{font-size:18px;color:#173f5d}.p73-inv-section-head small{color:#678196}.p73-inv-search{max-width:820px}.p73-inv-button{width:100%;text-align:left;border:1px solid #d6e2ea;background:#fff;cursor:pointer}.p73-inv-card-main{display:flex;flex-direction:column;gap:3px;min-width:0}.p73-inv-card-main b{font-size:17px;color:#173f5d}.p73-inv-card-main small{color:#6b8394}.p73-inv-modal{position:fixed;inset:0;z-index:12050;background:rgba(8,32,48,.48);display:flex;align-items:center;justify-content:center;padding:24px}.p73-inv-modal[hidden]{display:none!important}.p73-inv-dialog{width:min(900px,96vw);max-height:88vh;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 24px 70px rgba(0,0,0,.26)}.p73-inv-dialog.small{width:min(560px,94vw)}.p73-inv-dialog>header{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:20px 22px;border-bottom:1px solid #dce7ee;background:#fff}.p73-inv-dialog>header h2{margin:2px 0 4px;color:#123f5d}.p73-inv-dialog>header p{margin:0;color:#6b8394}.p73-inv-modal-section{padding:18px 22px;border-bottom:1px solid #e3ebf0}.p73-inv-modal-section h3{margin:0 0 12px}.p73-inv-summary-line{display:flex;justify-content:space-between;align-items:center;padding:14px;border:1px solid #dce7ee;border-radius:14px}.p73-inv-summary-line b{font-size:26px}.p73-simple-list{display:flex;flex-direction:column;gap:8px}.p73-simple-list>div{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:11px 12px;border:1px solid #e0e8ed;border-radius:12px}.p73-simple-list span{display:flex;flex-direction:column}.p73-simple-list small{color:#6e8594}.p73-status-text{text-align:right}.p73-stock-pills{display:flex;flex-wrap:wrap;gap:8px}.p73-stock-pills span{padding:7px 10px;border-radius:999px;background:#eef6fa;color:#1b587d}.p73-inv-form{display:flex;flex-direction:column;gap:12px;padding:18px 22px}.p73-inv-form-grid{display:grid;grid-template-columns:1fr 1fr}.p73-inv-form label{display:flex;flex-direction:column;gap:5px;font-weight:700;color:#254d68}.p73-inv-form input,.p73-inv-form select,.p73-inv-form textarea{font:inherit;padding:10px 11px;border:1px solid #c9d8e2;border-radius:10px;background:#fff}.p73-inv-form .wide{grid-column:1/-1}.p73-warehouse-grid,.p73-catalog-grid-v42{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.p73-warehouse-card{display:grid;grid-template-columns:66px 1fr auto;gap:14px;align-items:center;text-align:left;padding:14px;border:1px solid #d5e2e9;background:#fff;border-radius:16px;cursor:pointer}.p73-warehouse-card img,.p73-warehouse-photo{width:58px;height:58px;object-fit:cover;border-radius:12px;background:#eef5f8;display:grid;place-items:center;font-size:27px}.p73-warehouse-card>div{display:flex;flex-direction:column;gap:4px;min-width:0}.p73-warehouse-card>div>b{font-size:17px;color:#173f5d}.p73-warehouse-card>div>small{color:#728796}.p73-warehouse-card>strong{font-size:24px;color:#0d5f8e;text-align:right}.p73-warehouse-card>strong small{font-size:11px;display:block;color:#728796}.p73-warehouse-detail{display:grid;grid-template-columns:180px 1fr;gap:18px;padding:18px 22px}.p73-warehouse-detail-photo{width:180px;height:150px;object-fit:cover;border-radius:14px;border:1px solid #d6e1e8}.p73-catalog-card-v42{display:grid;grid-template-columns:84px 1fr auto;gap:14px;padding:14px;border:1px solid #d5e2e9;border-radius:16px;background:#fff}.p73-catalog-card-v42 img,.p73-catalog-photo-empty{width:78px;height:78px;object-fit:cover;border-radius:12px;background:#eef5f8;display:grid;place-items:center;font-size:30px}.p73-catalog-card-v42>div:nth-child(2){display:flex;flex-direction:column;gap:3px}.p73-catalog-card-v42 b{font-size:17px;color:#173f5d}.p73-catalog-card-v42 small,.p73-catalog-card-v42 span,.p73-catalog-card-v42 em,.p73-catalog-card-v42 p{color:#6b8292;font-style:normal;margin:0}.p73-catalog-card-v42>strong{white-space:nowrap;color:#0d5f8e;font-size:19px}.p73-delivery-kind-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}.p73-delivery-kind-tabs a{padding:9px 14px;border:1px solid #c8d9e3;border-radius:999px;text-decoration:none;font-weight:700;color:#24506c;background:#fff}.p73-delivery-kind-tabs a.active{background:#147fb8;color:#fff;border-color:#147fb8}
@media(max-width:760px){.p73-inv-section-head{align-items:stretch}.p73-inv-section-head .btn{flex:0 0 auto}.p73-inv-tabs{display:flex;overflow-x:auto;white-space:nowrap}.p73-inv-tabs a{flex:0 0 auto}.p73-inv-modal{padding:8px;align-items:flex-end}.p73-inv-dialog{width:100%;max-height:92dvh;border-radius:20px 20px 0 0}.p73-inv-form-grid{grid-template-columns:1fr}.p73-inv-form .wide{grid-column:auto}.p73-warehouse-grid,.p73-catalog-grid-v42{grid-template-columns:1fr}.p73-warehouse-card{grid-template-columns:52px 1fr auto}.p73-warehouse-card img,.p73-warehouse-photo{width:48px;height:48px}.p73-warehouse-detail{grid-template-columns:1fr}.p73-warehouse-detail-photo{width:100%;height:180px}.p73-catalog-card-v42{grid-template-columns:64px 1fr auto}.p73-catalog-card-v42 img,.p73-catalog-photo-empty{width:58px;height:58px}.p73-delivery-kind-tabs{overflow-x:auto;flex-wrap:nowrap}.p73-delivery-kind-tabs a{flex:0 0 auto}}

/* Motor 73.44 · restauración incremental de Entregas sobre la base 73.43.
   No modifica Inventario/Almacén/Catálogo. */
@media (min-width:761px){
  .p73-delivery-toolbar.p73-delivery-toolbar-v40{
    display:block!important;
    width:100%!important;
    min-width:100%!important;
    max-width:none!important;
    margin:10px 0 12px!important;
    padding:0!important;
  }
  .p73-delivery-toolbar-v40 > form.p73-filter-desktop{
    display:grid!important;
    width:100%!important;
    min-width:100%!important;
    max-width:none!important;
    justify-self:stretch!important;
    box-sizing:border-box!important;
    grid-template-columns:minmax(0,1fr) 170px 140px 92px!important;
    gap:10px!important;
    align-items:end!important;
    margin:0!important;
  }
  .p73-delivery-toolbar-v40 .p73-filter-search,
  .p73-delivery-toolbar-v40 .p73-filter-search input{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
}

/* Motor 73.45 · Inventario / Almacén / Catálogo: modelo físico y maquetación definitiva.
   Entregas de dotación individual queda congelado; estas reglas solo afectan inventario. */
.p73-ia-head{margin-bottom:8px}
.p73-inv-search-v45{display:grid;grid-template-columns:minmax(280px,1fr) auto;gap:10px;align-items:end;padding:12px;margin-bottom:12px}
.p73-inv-search-v45 label{display:grid;gap:5px;margin:0;min-width:0}.p73-inv-search-v45 label>span{font-size:12px;font-weight:850;color:#315a72}
.p73-inv-search-v45 input{width:100%;height:42px;box-sizing:border-box;border:1px solid #bfd1dc;border-radius:10px;padding:0 12px;font:inherit}.p73-inv-search-v45 button{height:42px}
.p73-inv-section-head-v45{margin:8px 0 12px}.p73-inv-section-head-v45 b{font-size:18px}.p73-inv-section-head-v45 small{font-size:12px}

.p73-inventory-grid-v45{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.p73-inventory-card-v45{display:grid;grid-template-columns:minmax(170px,1fr) minmax(300px,auto) 18px;gap:14px;align-items:center;width:100%;padding:15px 16px;border:1px solid #d2e0e8;border-radius:16px;background:#fff;color:#173f5d;text-align:left;cursor:pointer;box-shadow:0 3px 12px rgba(23,62,87,.05)}
.p73-inventory-card-v45:hover{border-color:#9fc5d9;box-shadow:0 6px 18px rgba(23,62,87,.09)}.p73-inv-card-main-v45{display:flex;flex-direction:column;gap:3px;min-width:0}.p73-inv-card-main-v45 b{font-size:17px}.p73-inv-card-main-v45 small{font-size:11px;color:#758b99}
.p73-inv-numbers-v45{display:grid;grid-template-columns:repeat(3,minmax(82px,1fr));gap:8px}.p73-inv-numbers-v45 span{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:58px;border-radius:12px;background:#eef5f9}.p73-inv-numbers-v45 b{font-size:21px;line-height:1;color:#144c6d}.p73-inv-numbers-v45 small{margin-top:5px;font-size:10px;color:#748895}.p73-inventory-card-v45>i{font-style:normal;font-size:26px;color:#4683a6}

.p73-inv-dialog-v45{width:min(960px,96vw)}.p73-inv-kpi-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.p73-inv-kpi-row span{display:flex;flex-direction:column;align-items:center;padding:14px;border-radius:13px;background:#eef6fa}.p73-inv-kpi-row b{font-size:25px;color:#155478}.p73-inv-kpi-row small{font-size:10px;color:#738996;margin-top:4px}
.p73-simple-list-v45>div{min-height:48px}.p73-inv-admin-tools details{border:1px solid #dce6ec;border-radius:13px;background:#f9fbfc}.p73-inv-admin-tools summary{padding:12px 14px;font-weight:850;color:#315a72;cursor:pointer}.p73-inv-admin-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:12px;padding:0 12px 12px}.p73-inv-form.compact-form{padding:12px;border:1px solid #e0e8ed;border-radius:12px;background:#fff}

.p73-warehouse-grid-v45{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.p73-warehouse-card-v45{display:grid;grid-template-columns:64px minmax(0,1fr) auto 16px;gap:12px;align-items:center;width:100%;min-height:92px;padding:13px;border:1px solid #d4e1e8;border-radius:15px;background:#fff;color:#173f5d;text-align:left;cursor:pointer}.p73-warehouse-card-v45:hover{border-color:#9ec5d8}.p73-warehouse-card-v45 img,.p73-warehouse-photo-v45{width:58px;height:58px;border-radius:12px;object-fit:cover;background:#eef5f8;display:grid;place-items:center;font-size:28px}.p73-warehouse-main-v45{display:flex;flex-direction:column;gap:3px;min-width:0}.p73-warehouse-main-v45>b{font-size:16px}.p73-warehouse-main-v45>small{font-size:10px;color:#758b99}.p73-stock-preview-v45{display:flex;gap:5px;flex-wrap:wrap;margin-top:3px}.p73-stock-preview-v45 span{padding:3px 6px;border-radius:999px;background:#eef6fa;color:#2f617d;font-size:9px}.p73-warehouse-card-v45>strong{font-size:24px;color:#15587f;text-align:right}.p73-warehouse-card-v45>strong small{display:block;font-size:9px;color:#748895}.p73-warehouse-card-v45>i{font-style:normal;color:#4583a6;font-size:22px}
.p73-variant-list-v45{display:grid;gap:9px}.p73-variant-list-v45 article{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:11px;align-items:center;padding:10px;border:1px solid #dee8ee;border-radius:12px}.p73-variant-list-v45 img,.p73-variant-list-v45 .photo-empty{width:50px;height:50px;border-radius:10px;object-fit:cover;background:#eef5f8;display:grid;place-items:center;font-size:23px}.p73-variant-list-v45 article>div:nth-child(2){display:flex;flex-direction:column;gap:2px}.p73-variant-list-v45 article>div:nth-child(2) span,.p73-variant-list-v45 article>div:nth-child(2) small{color:#708695}.p73-variant-list-v45 article>strong{font-size:20px;color:#15587f}.p73-variant-list-v45 article>strong small{display:block;font-size:9px;color:#7c8d98}

.p73-catalog-grid-v45{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.p73-catalog-card-v45{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:13px;align-items:center;width:100%;min-height:104px;padding:13px;border:1px solid #d3e1e8;border-radius:15px;background:#fff;text-align:left;color:#173f5d;cursor:pointer}.p73-catalog-card-v45.inactive{opacity:.58}.p73-catalog-card-v45 img,.p73-catalog-photo-empty-v45{width:70px;height:70px;border-radius:12px;object-fit:cover;background:#eef5f8;display:grid;place-items:center;font-size:28px}.p73-catalog-card-v45>div:nth-child(2){display:flex;flex-direction:column;gap:3px}.p73-catalog-card-v45 b{font-size:16px}.p73-catalog-card-v45 small,.p73-catalog-card-v45 span,.p73-catalog-card-v45 em{font-size:10px;color:#738897;font-style:normal}.p73-catalog-card-v45>strong{font-size:19px;color:#15587f;text-align:right}.p73-catalog-card-v45>strong small{display:block;font-size:9px;color:#7a8d98}.p73-inv-toggle-form{padding:0 22px 18px}

@media(max-width:1100px){.p73-inventory-grid-v45{grid-template-columns:1fr}.p73-warehouse-grid-v45{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  .p73-ia-head h1{font-size:24px}.p73-ia-head .p73-dot-subtitle{display:none}.p73-inv-search-v45{grid-template-columns:minmax(0,1fr) auto;padding:7px}.p73-inv-search-v45 label>span{display:none}.p73-inv-search-v45 input{height:38px}.p73-inv-search-v45 button{height:38px;padding:0 10px}
  .p73-inv-section-head-v45{align-items:center}.p73-inv-section-head-v45 b{font-size:15px}.p73-inv-section-head-v45 small{font-size:10px}.p73-inv-section-head-v45 .btn{font-size:11px;padding:8px 10px}
  .p73-inventory-grid-v45,.p73-warehouse-grid-v45,.p73-catalog-grid-v45{grid-template-columns:1fr}
  .p73-inventory-card-v45{grid-template-columns:minmax(100px,1fr) minmax(174px,auto) 10px;gap:7px;padding:10px}.p73-inv-card-main-v45 b{font-size:13px}.p73-inv-card-main-v45 small{font-size:9px}.p73-inv-numbers-v45{grid-template-columns:repeat(3,56px);gap:4px}.p73-inv-numbers-v45 span{min-height:46px}.p73-inv-numbers-v45 b{font-size:17px}.p73-inv-numbers-v45 small{font-size:7.5px}
  .p73-warehouse-card-v45{grid-template-columns:48px minmax(0,1fr) auto 10px;min-height:74px;padding:9px;gap:8px}.p73-warehouse-card-v45 img,.p73-warehouse-photo-v45{width:44px;height:44px}.p73-warehouse-main-v45>b{font-size:13px}.p73-warehouse-card-v45>strong{font-size:19px}.p73-stock-preview-v45{max-height:24px;overflow:hidden}
  .p73-catalog-card-v45{grid-template-columns:52px minmax(0,1fr) auto;min-height:76px;padding:9px}.p73-catalog-card-v45 img,.p73-catalog-photo-empty-v45{width:48px;height:48px}.p73-catalog-card-v45 b{font-size:13px}.p73-catalog-card-v45>strong{font-size:16px}
  .p73-inv-kpi-row{gap:5px}.p73-inv-kpi-row span{padding:9px}.p73-inv-kpi-row b{font-size:20px}.p73-inv-admin-grid{grid-template-columns:1fr}.p73-variant-list-v45 article{grid-template-columns:46px minmax(0,1fr) auto}.p73-variant-list-v45 img,.p73-variant-list-v45 .photo-empty{width:42px;height:42px}
}

/* === Motor 73.49 · auxiliares, almacén y catálogo === */
.p73-aux-work-v49{grid-column:1/-1;margin-top:12px;border:1px solid #cfe0e9;border-radius:14px;background:#f8fbfd;overflow:hidden}
.p73-aux-work-head-v49{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:13px 15px;border-bottom:1px solid #dbe8ee}.p73-aux-work-head-v49>div:first-child{display:flex;flex-direction:column;gap:3px}.p73-aux-work-head-v49 b{color:#174d70}.p73-aux-work-head-v49 small{color:#6f8795;font-size:11px}.p73-aux-year-meter-v49{min-width:145px;text-align:right}.p73-aux-year-meter-v49 strong{font-size:21px;color:#135a83}.p73-aux-year-meter-v49 span{font-size:11px;margin-left:4px;color:#536f80}.p73-aux-year-meter-v49 small{display:block}
.p73-aux-period-row-v49{display:grid;grid-template-columns:minmax(135px,1fr) minmax(135px,1fr) minmax(130px,.85fr) auto auto 34px;gap:8px;align-items:end;padding:10px 13px;border-bottom:1px solid #e1ebf0;background:#fff}.p73-aux-period-row-v49 label{margin:0}.p73-aux-period-row-v49 label>input[type=date]{width:100%}.p73-aux-primary-v49{grid-template-columns:minmax(260px,1fr) auto auto;background:#fbfdfe;align-items:center}.p73-aux-period-dates-v49{display:flex;gap:24px}.p73-aux-period-dates-v49 span{display:flex;flex-direction:column}.p73-aux-period-dates-v49 small{color:#748a97}.p73-aux-period-meta-v49{display:flex;flex-direction:column;padding-bottom:7px}.p73-aux-period-meta-v49 b{font-size:13px}.p73-aux-period-meta-v49 small{font-size:9px;color:#77909e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p73-summer-check-v49{display:flex!important;align-items:center;gap:6px;padding:8px 10px!important;border:1px solid #d5e3ea;border-radius:10px;background:#f8fbfd;white-space:nowrap;font-size:11px;font-weight:700;color:#315c75}.p73-summer-check-v49 input{width:auto!important;margin:0}.p73-summer-badge-v49{display:none;padding:7px 9px;border-radius:999px;background:#fff2bf;color:#795b00;font-size:9px;font-weight:800;white-space:nowrap}.p73-aux-period-row-v49.is-summer{background:#fffaf0;border-left:4px solid #e6b32b}.p73-aux-period-row-v49.is-summer .p73-summer-check-v49{border-color:#e5c35f;background:#fff5ce;color:#6d5400}.p73-aux-period-row-v49.is-summer .p73-summer-badge-v49{display:inline-block}.p73-period-x-v49,.p73-row-x-v49,.p73-card-x-v49{border:1px solid #efc7c7;background:#fff7f7;color:#b34b4b;border-radius:9px;cursor:pointer;font-weight:800}.p73-period-x-v49{width:32px;height:32px}.p73-source-lock-v49{font-size:9px;color:#5a7788;white-space:nowrap;padding-bottom:9px}.p73-more-periods-v49{margin:10px 13px}.p73-aux-sync-note-v49{margin:0;padding:0 14px 13px;font-size:10px;color:#718996}
.p73-warehouse-card-wrap-v49,.p73-catalog-card-wrap-v49{position:relative}.p73-card-delete-form-v49{position:absolute;right:8px;top:8px;z-index:3}.p73-card-x-v49{width:28px;height:28px;background:rgba(255,255,255,.96)}.p73-warehouse-card-wrap-v49 .p73-warehouse-card-v45,.p73-catalog-card-wrap-v49 .p73-catalog-card-v45{height:100%}.p73-variant-list-v45 article{grid-template-columns:54px minmax(0,1fr) auto 34px}.p73-row-x-v49{width:30px;height:30px}.p73-variant-delete-form-v49{margin:0}
.p73-catalog-gallery-v49{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px 22px 0}.p73-catalog-gallery-v49 figure{margin:0;min-height:210px;border:1px solid #dbe7ed;border-radius:13px;background:#f7fafc;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.p73-catalog-gallery-v49 img{display:block;width:100%;height:230px;object-fit:contain;background:#fff}.p73-catalog-gallery-v49 figcaption{width:100%;padding:6px 10px;font-size:10px;color:#647e8d;text-align:center}.p73-catalog-file-preview-v49{display:block;max-width:120px;max-height:90px;object-fit:contain;margin-top:6px;border:1px solid #d9e5eb;border-radius:8px;background:#fff}.p73-catalog-actions-v49{display:flex;justify-content:space-between;gap:10px;padding:0 22px 18px}.p73-catalog-actions-v49 .p73-inv-toggle-form{padding:0}.btn.danger{border-color:#e0a9a9;color:#9c3434;background:#fff8f8}
@media(max-width:760px){.p73-aux-work-head-v49{align-items:flex-start;flex-direction:column}.p73-aux-year-meter-v49{text-align:left}.p73-aux-period-row-v49{grid-template-columns:1fr 1fr}.p73-aux-period-meta-v49{grid-column:1/2}.p73-summer-check-v49{grid-column:1/2}.p73-summer-badge-v49{grid-column:2/3;justify-self:start}.p73-period-x-v49,.p73-source-lock-v49{grid-column:2/3;grid-row:3;justify-self:end}.p73-aux-primary-v49{grid-template-columns:1fr}.p73-aux-period-dates-v49{justify-content:space-between}.p73-catalog-gallery-v49{grid-template-columns:1fr;padding:10px 14px 0}.p73-catalog-gallery-v49 figure{min-height:170px}.p73-catalog-gallery-v49 img{height:190px}.p73-variant-list-v45 article{grid-template-columns:46px minmax(0,1fr) auto 30px}.p73-catalog-actions-v49{padding:0 14px 14px;flex-wrap:wrap}}

/* === Motor 73.50 · periodos sincronizados, regularización y uso común === */
.p73-aux-status-grid-v50{grid-template-columns:minmax(220px,.7fr) minmax(340px,1.3fr)}
.p73-aux-work-v50>summary{list-style:none;cursor:pointer}.p73-aux-work-v50>summary::-webkit-details-marker{display:none}.p73-aux-work-v50>summary:after{content:'⌄';font-size:19px;color:#4e7185;margin-left:8px}.p73-aux-work-v50:not([open])>summary:after{content:'›'}.p73-aux-work-summary-v50{border-bottom:0}.p73-aux-work-v50[open]>.p73-aux-work-summary-v50{border-bottom:1px solid #dbe8ee}.p73-aux-work-body-v50{background:#fff}.p73-aux-primary-v50{grid-template-columns:minmax(135px,1fr) minmax(135px,1fr) minmax(130px,.85fr) auto auto auto}.p73-summer-auto-note-v50{padding-top:0!important;color:#765f16!important}
.p73-current-item-row-v50{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center}.p73-current-item-row-v50 .p73-current-item{height:100%}.p73-cancel-return-v50{margin:0}.p73-cancel-return-v50 button{border:1px solid #e1b66a;background:#fff8e8;color:#8a5c06;border-radius:9px;padding:8px 10px;font-weight:800;font-size:11px;cursor:pointer;white-space:nowrap}.p73-cancel-return-v50 button:hover{background:#fff1cf}.p73-common-use-badge-v50{display:inline-block;font-style:normal;font-size:9px;line-height:1;padding:4px 6px;border-radius:999px;background:#e8f4ff;color:#17628b;vertical-align:middle;margin-left:5px}.p73-history-status-actions-v50{display:flex;flex-direction:column;gap:6px;align-items:flex-end}.p73-history-status-actions-v50 form{margin:0}
.p73-variant-list-v45 article{grid-template-columns:54px minmax(0,1fr) auto minmax(245px,.8fr) 34px}.p73-stock-adjust-v50{display:grid;grid-template-columns:78px minmax(120px,1fr) auto;gap:6px;align-items:end;margin:0}.p73-stock-adjust-v50 label{margin:0}.p73-stock-adjust-v50 label span{display:block;font-size:9px;color:#66808f;margin-bottom:2px}.p73-stock-adjust-v50 input{min-width:0;height:34px;padding:5px 7px}.p73-stock-adjust-v50 .btn{height:34px;padding:5px 10px}.p73-variant-list-v45 article.is-zero-stock-v50{background:#fafbfc;opacity:.78}.p73-variant-list-v45 article.is-zero-stock-v50>strong{color:#7b8d98}
.aux-contract-summer-v50{display:flex;flex-direction:column;gap:5px}.aux-summer-check-v50{display:flex;align-items:center;gap:6px;border:1px solid #dfc36a;background:#fff8d9;border-radius:9px;padding:8px 10px;color:#6e5500;font-weight:800}.aux-summer-check-v50 input{width:auto!important;margin:0}.aux-contract-summer-v50 small{font-size:10px;color:#7d6f43}.aux-contract-cards article.is-summer-campaign-v50{border-left:4px solid #d9aa1c;background:#fffaf0}.aux-summer-badge-v50{display:inline-block;margin-left:6px;padding:3px 7px;border-radius:999px;background:#fff0b3;color:#775600;font-size:10px;vertical-align:middle}
@media(max-width:900px){.p73-variant-list-v45 article{grid-template-columns:46px minmax(0,1fr) auto 30px}.p73-stock-adjust-v50{grid-column:1/-1;grid-row:auto}.p73-variant-delete-form-v49{grid-column:4;grid-row:1;justify-self:end}.p73-aux-primary-v50{grid-template-columns:1fr 1fr}.p73-aux-primary-v50 .p73-aux-period-meta-v49{grid-column:1/2}.p73-aux-status-grid-v50{grid-template-columns:1fr}}
@media(max-width:760px){.p73-current-item-row-v50{grid-template-columns:1fr}.p73-cancel-return-v50{justify-self:stretch}.p73-cancel-return-v50 button{width:100%}.p73-history-status-actions-v50{grid-column:2;align-items:flex-start}.p73-stock-adjust-v50{grid-template-columns:74px 1fr}.p73-stock-adjust-v50 .btn{grid-column:1/-1}.p73-aux-primary-v50{grid-template-columns:1fr 1fr}.p73-aux-primary-v50 .p73-summer-check-v49{grid-column:1/2}}

/* === Motor 73.51 · días de contrato, estabilidad de guardado y almacén compacto === */
.p73-aux-status-grid-v51{grid-template-columns:minmax(220px,.65fr) minmax(360px,1.35fr);align-items:stretch}
.p73-aux-seniority-v51{min-height:62px}
.p73-contract-days-v51{margin-top:10px;background:#f8fbfd}
.p73-contract-summary-v51{padding:12px 14px!important;min-height:64px}
.p73-contract-summary-v51>div:first-child{display:flex;flex-direction:column;gap:3px}.p73-contract-summary-v51>div:first-child b{font-size:14px}.p73-contract-summary-v51>div:first-child small{font-size:10px;color:#728896}
.p73-contract-body-v51{padding:0}
.p73-contract-row-v51{grid-template-columns:minmax(135px,1fr) minmax(135px,1fr) minmax(125px,.72fr) minmax(150px,auto) auto minmax(90px,auto);align-items:center;padding:9px 12px}
.p73-contract-row-v51 .p73-aux-period-meta-v49{padding-bottom:0}.p73-contract-row-v51 .p73-source-lock-v49{padding-bottom:0}
.p73-contract-actions-v51{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:88px}
.p73-contract-actions-v51 .p73-period-x-v49{flex:0 0 32px}
.p73-contract-row-v51.is-annulled-v51{opacity:.58;background:#f5f6f7!important;border-left:4px solid #a9b4bc}
.p73-contract-row-v51.is-annulled-v51 input,.p73-contract-row-v51.is-annulled-v51 .p73-summer-check-v49{pointer-events:none}
.p73-contract-row-v51.is-annulled-v51 .p73-summer-badge-v49{display:none!important}

.p73-inv-dialog-v51{width:min(1040px,96vw);max-height:90vh;overflow:auto}
.p73-inv-dialog-v51>header{position:sticky;top:0;z-index:5;background:#fff;border-bottom:1px solid #dde7ed}
.p73-inv-dialog-v51 .p73-inv-modal-section{padding:18px 22px}
.p73-inv-dialog-v51 .p73-inv-modal-section h3{margin:0 0 12px;font-size:17px;color:#1d4057}
.p73-variant-list-v51{gap:10px}
.p73-variant-list-v51 .p73-variant-card-v51{grid-template-columns:54px minmax(180px,1fr) 70px 34px!important;gap:12px;align-items:center;padding:11px 12px}
.p73-variant-list-v51 .p73-variant-card-v51>strong{text-align:right;min-width:54px}
.p73-variant-list-v51 .p73-variant-delete-form-v49{grid-column:4;grid-row:1;justify-self:end;align-self:center}
.p73-stock-adjust-v51{grid-column:2/5;display:grid;grid-template-columns:130px minmax(210px,1fr) auto;gap:8px;align-items:end;margin-top:5px;padding-top:9px;border-top:1px dashed #dbe5eb}
.p73-stock-adjust-v51 label{margin:0}.p73-stock-adjust-v51 label span{display:block;margin:0 0 3px;font-size:9px;font-weight:800;color:#66808f}
.p73-stock-adjust-v51 input{width:100%;height:34px;min-width:0;padding:5px 8px}.p73-stock-adjust-v51 .btn{height:34px;padding:5px 11px;white-space:nowrap}
.p73-adjust-note-v51{min-width:0}
.p73-inv-dialog-v51 .p73-inv-form-grid{gap:10px 12px}.p73-inv-dialog-v51 .p73-inv-form-grid .wide{grid-column:1/-1}

@media(max-width:980px){
  .p73-contract-row-v51{grid-template-columns:1fr 1fr minmax(110px,.7fr) minmax(145px,auto) minmax(85px,auto)}
  .p73-contract-actions-v51{grid-column:5}.p73-contract-row-v51 .p73-summer-badge-v49{display:none!important}
}
@media(max-width:760px){
  .p73-aux-status-grid-v51{grid-template-columns:1fr}.p73-contract-summary-v51{align-items:flex-start!important}.p73-contract-row-v51{grid-template-columns:1fr 1fr!important;align-items:end}.p73-contract-row-v51 .p73-aux-period-meta-v49{grid-column:1/2}.p73-contract-row-v51 .p73-summer-check-v49{grid-column:1/2}.p73-contract-actions-v51{grid-column:2/3;grid-row:auto;justify-self:end}.p73-contract-row-v51 .p73-summer-badge-v49{grid-column:2/3;justify-self:start}
  .p73-inv-dialog-v51{width:100%;max-height:calc(100dvh - 12px)}.p73-inv-dialog-v51 .p73-inv-modal-section{padding:14px}
  .p73-variant-list-v51 .p73-variant-card-v51{grid-template-columns:46px minmax(0,1fr) 54px 32px!important}.p73-stock-adjust-v51{grid-column:1/-1;grid-template-columns:95px 1fr}.p73-stock-adjust-v51 .btn{grid-column:1/-1;width:100%}
}


/* === Motor 73.52 · devolución directa y regularización histórica === */
.p73-current-item-row-v52{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center}
.p73-current-item-v52{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important;cursor:default!important;padding:8px 10px!important}
.p73-current-info-v52{min-width:0;border:0;background:transparent;padding:2px;text-align:left;color:inherit;font:inherit;cursor:pointer}
.p73-current-info-v52:hover .main b{color:#0f6d9b}.p73-current-info-v52 .main b{display:block;font-size:14px;color:#173f58}.p73-current-info-v52 .main small{display:block;font-size:11px;color:#607a8a;margin-top:3px}
.p73-current-actions-v52{display:flex;align-items:center;justify-content:flex-end;gap:8px;white-space:nowrap}
.p73-returned-btn-v52{border:1px solid #8fc9a2;background:#f0fbf4;color:#24713d;border-radius:9px;padding:7px 10px;font-size:11px;font-weight:900;cursor:pointer}.p73-returned-btn-v52:hover{background:#e1f7e8;border-color:#68b681}
.p73-history-btn-v52{border:0;background:transparent;padding:6px 2px;cursor:pointer}
.p73-direct-return-backdrop-v52{position:fixed;inset:0;z-index:4100;background:rgba(9,32,46,.56);display:grid;place-items:center;padding:18px}.p73-direct-return-backdrop-v52[hidden]{display:none!important}
.p73-direct-return-dialog-v52{width:min(590px,95vw);background:#fff;border-radius:16px;box-shadow:0 26px 80px rgba(5,28,43,.4);overflow:hidden}.p73-direct-return-dialog-v52 header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid #e1ebf0}.p73-direct-return-dialog-v52 h3{margin:3px 0 2px;color:#173f58;font-size:21px}.p73-direct-return-dialog-v52 header p{margin:0;color:#667f8e;font-size:12px}.p73-direct-return-body-v52{padding:16px 18px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.p73-direct-return-body-v52 label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:800;color:#294f66}.p73-direct-return-body-v52 input,.p73-direct-return-body-v52 select{height:40px;border:1px solid #cbdce6;border-radius:9px;padding:7px 9px;background:#fff}.p73-direct-return-body-v52 .wide,.p73-direct-return-help-v52{grid-column:1/-1}.p73-direct-return-help-v52{margin:0;padding:9px 11px;border-radius:9px;background:#f5f9fb;color:#587383;font-size:11px;line-height:1.4}.p73-direct-return-dialog-v52 footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid #e1ebf0;background:#fafcfd}
@media(max-width:760px){.p73-current-item-row-v52{grid-template-columns:1fr}.p73-current-item-v52{grid-template-columns:1fr!important}.p73-current-actions-v52{justify-content:flex-start;flex-wrap:wrap}.p73-current-actions-v52 .p73-history-btn-v52{margin-left:auto}.p73-direct-return-backdrop-v52{padding:0;align-items:end}.p73-direct-return-dialog-v52{width:100%;border-radius:16px 16px 0 0}.p73-direct-return-body-v52{grid-template-columns:1fr}.p73-direct-return-body-v52 .wide,.p73-direct-return-help-v52{grid-column:1}.p73-direct-return-dialog-v52 footer .btn{flex:1}}


/* === Motor 73.53 · devolución directa operativa y refresco de ficha === */
.p73-direct-return-backdrop-v52{z-index:12050!important}
.p73-returned-btn-v52{appearance:none!important;-webkit-appearance:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:30px!important}
.p73-direct-return-dialog-v52{position:relative;z-index:12051}
.p73-direct-return-dialog-v52 footer .btn.primary[disabled]{opacity:.65;cursor:wait}

/* === Motor 73.54 · devolución nativa robusta + periodos activos depurados === */
.p73-direct-return-inline-v54{display:inline-block;margin:0}
.p73-direct-return-inline-v54>summary{list-style:none}.p73-direct-return-inline-v54>summary::-webkit-details-marker{display:none}
.p73-direct-return-inline-v54[open]::before{content:"";position:fixed;inset:0;z-index:12060;background:rgba(9,32,46,.56)}
.p73-direct-return-inline-form-v54{position:fixed;z-index:12061;left:50%;top:50%;transform:translate(-50%,-50%);width:min(560px,calc(100vw - 32px));background:#fff;border:1px solid #d7e4eb;border-radius:16px;box-shadow:0 26px 80px rgba(5,28,43,.42);padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:12px;white-space:normal;text-align:left}
.p73-direct-return-inline-form-v54::before{content:"Registrar devolución";grid-column:1/-1;font-size:20px;font-weight:900;color:#173f58;padding-bottom:10px;border-bottom:1px solid #e4edf2}
.p73-direct-return-inline-form-v54 label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:800;color:#294f66}.p73-direct-return-inline-form-v54 label.wide{grid-column:1/-1}.p73-direct-return-inline-form-v54 input,.p73-direct-return-inline-form-v54 select{height:40px;border:1px solid #cbdce6;border-radius:9px;padding:7px 9px;background:#fff;min-width:0}.p73-direct-return-inline-form-v54 .actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;padding-top:4px}
.p73-annulled-periods-v54{margin-top:9px;border-top:1px dashed #d8e5eb;padding-top:8px}.p73-annulled-periods-v54>summary{cursor:pointer;color:#6d7f89;font-size:11px;font-weight:800}.p73-annulled-periods-v54>div{display:grid;gap:5px;margin-top:7px}.p73-annulled-periods-v54 article{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(160px,1fr);gap:10px;align-items:center;padding:7px 9px;border-radius:8px;background:#f6f8f9;color:#71818a;font-size:11px}.p73-annulled-periods-v54 article b{color:#5c6d76}.p73-annulled-periods-v54 article small{text-align:right}
@media(max-width:760px){.p73-direct-return-inline-form-v54{grid-template-columns:1fr;top:auto;bottom:0;left:0;transform:none;width:100%;border-radius:16px 16px 0 0}.p73-direct-return-inline-form-v54::before,.p73-direct-return-inline-form-v54 label.wide,.p73-direct-return-inline-form-v54 .actions{grid-column:1}.p73-direct-return-inline-form-v54 .actions .btn{flex:1}.p73-annulled-periods-v54 article{grid-template-columns:1fr auto}.p73-annulled-periods-v54 article small{grid-column:1/-1;text-align:left}}

/* Motor 73.61 · Periodos de contratación en lista + ficha emergente */
.aux-periods-list-v61 .aux-contract-list-v61{padding:0 9px 9px;display:flex;flex-direction:column;gap:6px}
.aux-contract-row-v61{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid #d8e5ed;border-radius:9px;background:#fff;min-height:52px;overflow:hidden}
.aux-contract-row-v61.is-summer-campaign-v50{border-left:4px solid #d9aa1c;background:#fffaf0}
.aux-contract-row-main-v61{appearance:none;border:0;background:transparent;text-align:left;padding:8px 10px;display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.5fr);align-items:center;gap:12px;cursor:pointer;color:inherit;font:inherit;width:100%}
.aux-contract-row-main-v61:hover{background:#f7fbfd}
.aux-contract-date-v61{display:flex;align-items:center;gap:7px;min-width:0}.aux-contract-date-v61 b{font-size:13px;color:#173f59;white-space:nowrap}
.aux-contract-meta-v61{display:flex;align-items:center;gap:10px;min-width:0;color:#6d8596;font-size:11px}.aux-contract-meta-v61 strong{color:#254d68;white-space:nowrap}.aux-contract-meta-v61>span{white-space:nowrap;padding:2px 7px;border-radius:999px;background:#edf5f9;color:#385c73;font-weight:800}.aux-contract-meta-v61 em{font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#7a8e9c}
.aux-contract-edit-btn-v61{margin-right:8px;white-space:nowrap}.aux-contract-empty-v61{padding:10px}
.aux-period-modal-v61[hidden]{display:none!important}.aux-period-modal-v61{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:20px}.aux-period-modal-backdrop-v61{position:absolute;inset:0;background:rgba(17,42,58,.48)}
.aux-period-modal-panel-v61{position:relative;z-index:1;width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:16px;box-shadow:0 20px 60px rgba(12,39,57,.28)}
.aux-period-modal-panel-v61>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid #e0e9ef}.aux-period-modal-panel-v61>header small{display:block;color:#6f8797;font-weight:800;font-size:10px;letter-spacing:.05em}.aux-period-modal-panel-v61>header h2{margin:2px 0 0;color:#173f59;font-size:20px}.aux-period-modal-close-v61{width:36px;height:36px;border:1px solid #d4e1e9;background:#f7fafc;border-radius:10px;font-size:22px;color:#28536d;cursor:pointer}
.aux-period-modal-form-v61{padding:16px 18px 18px;display:grid;gap:12px}.aux-period-modal-form-v61 label{display:grid;gap:5px;color:#365a71;font-size:11px;font-weight:800}.aux-period-modal-form-v61 input[type=date],.aux-period-modal-form-v61 input[type=text],.aux-period-modal-form-v61 textarea{width:100%;border:1px solid #cadbe6;border-radius:9px;padding:9px 10px;font:inherit;background:#fff}.aux-period-modal-dates-v61{display:grid;grid-template-columns:1fr 1fr;gap:10px}.aux-period-modal-names-v61 textarea{min-height:125px;resize:vertical}.aux-period-modal-summer-v61{display:flex!important;flex-direction:row!important;width:max-content}.aux-period-modal-actions-v61{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}
@media(max-width:760px){.aux-contract-row-main-v61{grid-template-columns:1fr;gap:5px}.aux-contract-meta-v61{flex-wrap:wrap;gap:6px}.aux-contract-meta-v61 em{width:100%}.aux-contract-date-v61 b{white-space:normal}.aux-period-modal-v61{padding:8px}.aux-period-modal-panel-v61{width:100%;max-height:calc(100vh - 16px);border-radius:12px}.aux-period-modal-dates-v61{grid-template-columns:1fr}.aux-period-modal-actions-v61{display:grid;grid-template-columns:1fr 1fr}.aux-period-modal-actions-v61 .primary{grid-column:1/-1}.aux-contract-edit-btn-v61{margin-right:6px}}

/* Motor 74.1 · Recursos de Jefatura */
.r74-shell{max-width:1320px;margin:0 auto;padding:0 2px}.r74-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.r74-head.compact{align-items:center}.r74-head h1{margin:3px 0 4px;color:#17324a}.r74-head p{margin:0;color:#607484}.r74-kpis{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.r74-kpis span{background:#fff;border:1px solid #dbe5eb;border-radius:12px;padding:9px 13px;min-width:108px;box-shadow:0 4px 14px rgba(26,50,70,.04)}.r74-kpis b{display:block;color:#17324a;font-size:1.1rem}.r74-kpis small{color:#6d808e}.r74-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.r74-home-card{display:flex;align-items:center;gap:16px;text-decoration:none;color:#17324a;background:#fff;border:1px solid #d8e3e9;border-radius:18px;padding:22px;box-shadow:0 8px 26px rgba(26,50,70,.06);transition:.18s}.r74-home-card:hover{transform:translateY(-2px);border-color:#a9c7d8}.r74-home-card>span{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;background:#edf5f9;font-size:1.75rem}.r74-home-card div{flex:1}.r74-home-card b{font-size:1.05rem}.r74-home-card small{display:block;margin-top:4px;color:#6a7c88;line-height:1.35}.r74-home-card i{font-size:1.8rem;color:#7a9bad}.r74-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.r74-toolbar span{color:#607484}.r74-filter{display:grid;grid-template-columns:minmax(260px,1fr) 180px 220px auto;gap:10px;align-items:end;padding:12px;margin-bottom:14px}.r74-filter label,.r74-form-grid label{display:flex;flex-direction:column;gap:5px;font-size:.76rem;font-weight:700;color:#4a6272}.r74-filter input,.r74-filter select,.r74-form-grid input,.r74-form-grid select,.r74-form-grid textarea{width:100%;box-sizing:border-box;border:1px solid #cbd9e1;border-radius:9px;padding:8px 9px;background:#fff;color:#203947;font:inherit}.r74-doc-list{display:flex;flex-direction:column;gap:8px}.r74-doc-row{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #dbe5eb;border-radius:13px;padding:12px}.r74-doc-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:10px;background:#c83b3b;color:#fff;font-size:.72rem;font-weight:900}.r74-doc-main{flex:1;min-width:0}.r74-doc-main h3{margin:3px 0;color:#18384d}.r74-doc-main p{margin:4px 0 0;color:#667985;font-size:.82rem}.r74-doc-main small{color:#718491}.r74-doc-meta{display:flex;flex-wrap:wrap;gap:7px;color:#778a96;font-size:.7rem}.r74-doc-meta .pill{background:#eaf3f8;color:#24526e;border-radius:999px;padding:2px 7px;font-weight:800}.r74-doc-actions{display:flex;align-items:center;gap:7px}.r74-x{width:32px;height:32px;border:1px solid #dfc4c4;border-radius:9px;background:#fff;color:#a93636;font-size:1.2rem;cursor:pointer}.r74-dialog{width:min(860px,95vw);max-height:90vh;border:0;border-radius:18px;padding:0;box-shadow:0 24px 80px rgba(10,32,45,.3)}.r74-dialog::backdrop{background:rgba(18,40,54,.48)}.r74-dialog-card{padding:18px;background:#fff;overflow:auto;max-height:86vh}.r74-dialog-card>header{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;border-bottom:1px solid #e3ebef;padding-bottom:11px;margin-bottom:14px}.r74-dialog-card header h2{margin:2px 0;color:#18384d}.r74-dialog-card header p{margin:2px 0;color:#6c7f8b}.r74-close{border:0;background:#edf3f6;border-radius:50%;width:34px;height:34px;cursor:pointer;font-size:1.15rem}.r74-dialog-card>footer{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.r74-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.r74-form-grid .wide{grid-column:1/-1}.r74-viewer-actions{display:flex;gap:8px;flex-wrap:wrap}.r74-pdf-frame{height:calc(100vh - 205px);min-height:580px;border:1px solid #d3e0e7;border-radius:14px;overflow:hidden;background:#eef3f6}.r74-pdf-frame iframe{width:100%;height:100%;border:0}.r74-tabs{display:flex;gap:4px;flex-wrap:wrap;margin:0 0 12px}.r74-tabs a{text-decoration:none;color:#426174;background:#f1f5f7;border:1px solid #d9e3e8;border-radius:9px;padding:8px 12px;font-weight:750;font-size:.82rem}.r74-tabs a.active{background:#173f59;color:#fff;border-color:#173f59}.r74-street-filter{grid-template-columns:minmax(260px,1fr) auto}.r74-street-list{display:flex;flex-direction:column;gap:6px}.r74-street-row{display:grid;grid-template-columns:minmax(290px,1fr) 105px 105px 105px auto auto;align-items:center;gap:10px;width:100%;text-align:left;background:#fff;border:1px solid #dbe5eb;border-radius:11px;padding:10px 12px;color:#244357;cursor:pointer}.r74-street-row:hover{border-color:#a8c3d2;background:#fbfdfe}.r74-street-row span{display:block}.r74-street-row span b{display:block;color:#17384e}.r74-street-row span small{display:block;color:#758894;font-size:.68rem;margin-top:2px}.r74-street-row .r74-alert{background:#fff1e3;border-radius:8px;padding:5px 8px}.r74-street-row i{font-size:1.4rem;color:#86a4b5}.r74-street-dialog{width:min(980px,96vw)}.r74-street-edit{padding-bottom:12px}.r74-inline-actions{display:flex;justify-content:flex-end}.r74-modal-section{border-top:1px solid #e4ebef;padding-top:12px;margin-top:12px}.r74-modal-section h3{margin:0 0 8px;color:#284b61;font-size:.92rem}.r74-modal-section summary{cursor:pointer;color:#245875;font-weight:800}.r74-subform{margin-top:10px;background:#f7fafb;padding:10px;border-radius:10px}.r74-mini-table{display:flex;flex-direction:column;gap:4px}.r74-mini-table>div{display:grid;grid-template-columns:130px minmax(220px,1fr) 100px minmax(100px,180px);gap:9px;align-items:center;padding:7px 8px;border-radius:8px;background:#f7fafb;font-size:.76rem}.r74-mini-table span,.r74-mini-table small{color:#647984}.r74-table-wrap{overflow:auto;border:1px solid #dbe5eb;border-radius:12px;background:#fff}.r74-table{width:100%;border-collapse:collapse;min-width:760px}.r74-table th{position:sticky;top:0;background:#edf3f6;color:#38596c;font-size:.72rem;text-align:left;padding:9px;border-bottom:1px solid #d5e1e7}.r74-table td{padding:9px;border-bottom:1px solid #edf2f5;font-size:.8rem;color:#385261}.r74-table td small{display:block;color:#7a8b95}.r74-table .num{text-align:right;font-weight:800}.r74-pending-list{display:flex;flex-direction:column;gap:8px}.r74-pending-list article{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;border:1px solid #dbe5eb;border-radius:12px;padding:12px}.r74-pending-list h3{margin:3px 0;color:#23465d}.r74-pending-list p,.r74-pending-list small{margin:0;color:#70828d}.r74-priority{display:inline-block;border-radius:999px;padding:2px 7px;font-size:.66rem;font-weight:900}.r74-priority.alta{background:#fee2e2;color:#9b1c1c}.r74-priority.media{background:#fff2c7;color:#8a6110}.r74-priority.baja{background:#e3f3e8;color:#2d6b43}
@media(max-width:800px){.r74-home-grid{grid-template-columns:1fr}.r74-head,.r74-head.compact{display:block}.r74-head .btn,.r74-viewer-actions{margin-top:10px}.r74-filter,.r74-street-filter{grid-template-columns:1fr}.r74-doc-row{align-items:flex-start;flex-wrap:wrap}.r74-doc-main{min-width:calc(100% - 60px)}.r74-doc-actions{width:100%;justify-content:flex-end}.r74-street-row{grid-template-columns:1fr auto}.r74-street-row>span:not(.r74-street-name):not(.r74-alert){display:none}.r74-form-grid{grid-template-columns:1fr}.r74-form-grid .wide{grid-column:auto}.r74-mini-table>div{grid-template-columns:1fr auto}.r74-mini-table>div span,.r74-mini-table>div small{grid-column:1/-1}.r74-pdf-frame{height:72vh;min-height:480px}.r74-kpis span{min-width:94px;flex:1}.r74-dialog-card{padding:13px}}

/* Motor 74.6 · reorganización Jefatura y Biblioteca */
.r74-library-hint{margin-top:12px;padding:15px 16px;border:1px dashed #c9dae4;border-radius:13px;background:#fff;color:#718694;text-align:center;font-size:.82rem}
.personnel-management-grid{max-width:1100px}
.hq-clean-grid .hq-bottom-tools{margin-top:14px}
@media(min-width:850px){.hq-clean-grid .hq-bottom-tools{grid-row:auto}.hq-clean-grid .hq-bottom-tools:nth-last-child(2){clear:both}}

/* Motor 75.33 · Gestión de personal y permisos */
.p75-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.p75-card{display:grid;grid-template-columns:54px 1fr 24px;align-items:center;gap:13px;padding:18px;background:#fff;border:1px solid #d7e4ec;border-radius:16px;text-decoration:none;color:#183f58;box-shadow:0 5px 18px rgba(20,58,82,.06)}.p75-card>span{width:50px;height:50px;border-radius:13px;display:grid;place-items:center;background:#eef6fa;font-size:27px}.p75-card b{display:block;font-size:17px}.p75-card small{display:block;color:#6b8190;margin-top:5px;line-height:1.35}.p75-card i{font-size:28px;color:#85a7bb;font-style:normal}.p75-toolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:0 0 14px;padding:12px 14px;background:#fff;border:1px solid #dce6ed;border-radius:13px}.p75-toolbar label,.p75-panel label,.p75-pop label,.p75-window label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:800;color:#587286}.p75-toolbar select,.p75-toolbar input,.p75-panel input,.p75-panel select,.p75-pop input,.p75-pop select,.p75-window input{padding:9px 10px;border:1px solid #cbdbe5;border-radius:9px;background:#fff}.p75-key{display:flex;gap:7px;flex-wrap:wrap;margin-left:auto}.p75-key span{padding:5px 8px;border-radius:999px;background:#eef4f8;color:#4d6e83;font-size:10px;font-weight:800}.p75-table-wrap{overflow:auto;background:#fff;border:1px solid #dbe6ed;border-radius:14px}.p75-table{width:100%;border-collapse:collapse;min-width:980px}.p75-table th{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#607989;background:#f5f9fb;padding:10px;border-bottom:1px solid #dbe6ed;text-align:left}.p75-table td{padding:10px;border-bottom:1px solid #e8eef2;font-size:12px;vertical-align:middle}.p75-table tbody tr:last-child td{border-bottom:0}.p75-table td small{display:block;color:#708594;margin-top:3px}.p75-money td:not(:first-child):not(:last-child),.p75-money th:not(:first-child):not(:last-child){text-align:center}.p75-mini,.p75-choice{border:1px solid #c9dce7;background:#f7fbfd;border-radius:8px;padding:6px 9px;font-size:10px;font-weight:800;cursor:pointer;color:#2a607f}.p75-pop{position:absolute;z-index:50;width:min(420px,88vw);display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:6px;padding:13px;background:#fff;border:1px solid #bfd5e2;border-radius:13px;box-shadow:0 18px 45px rgba(12,45,64,.2)}.p75-pop .wide{grid-column:1/-1}.p75-help,.p75-alert{margin-top:13px;padding:11px 13px;border-radius:11px;background:#f2f8fb;color:#536f80;font-size:11px;line-height:1.45;border:1px solid #d8e8f0}.p75-alert{background:#fff8e8;border-color:#ead39c;color:#6e5a2a}.p75-neg{color:#b42318}.p75-order{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#174d6d;color:#fff}.p75-warning{color:#a15c00!important}.p75-badge{display:inline-flex;padding:4px 7px;border-radius:999px;background:#eef3f6;color:#607687;font-size:9px;font-weight:900}.p75-badge.ok{background:#e8f7ef;color:#237249}.p75-badge.warn{background:#fff1d7;color:#8a5a06}.p75-window{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.p75-window label:first-of-type{flex-direction:row;align-items:center;margin-bottom:9px}.p75-two{display:grid;grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);gap:14px}.p75-panel{background:#fff;border:1px solid #dbe6ed;border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:10px}.p75-panel h3{margin:0 0 4px;color:#184a68}.p75-inline{display:flex;gap:9px;align-items:end}.p75-inline>*{flex:1}.p75-list{display:flex;flex-direction:column;gap:7px}.p75-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px;border:1px solid #e0e9ee;border-radius:10px}.p75-list article small{display:block;color:#708594;margin-top:4px}.p75-list article.void{opacity:.55;text-decoration:line-through}.p75-x{border:0;background:#feeceb;color:#a92822;border-radius:50%;width:27px;height:27px;font-size:19px;cursor:pointer}
@media(max-width:820px){.p75-menu,.p75-two{grid-template-columns:1fr}.p75-card{grid-template-columns:48px 1fr 20px;padding:14px}.p75-toolbar{align-items:stretch}.p75-key{margin-left:0}.p75-pop{position:fixed;left:6vw;right:6vw;top:20vh;width:auto;max-height:65vh;overflow:auto}.p75-window{width:100%}}

/* Motor 75.1 · rediseño integral asuntos de personal */
.p75-shell{max-width:1320px;margin:0 auto}.p75-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin:0 0 18px}.p75-head>div{min-width:0}.p75-head small,.p75-section-title small{display:block;color:#6d8798;font-size:11px;font-weight:900;letter-spacing:.06em}.p75-head h1,.p75-section-title h2{margin:4px 0 5px;color:#173f59}.p75-head p,.p75-section-title p{margin:0;color:#6b8090;line-height:1.4}.p75-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.p75-card{min-height:108px;border-radius:17px;padding:20px;transition:.16s}.p75-card:hover{transform:translateY(-2px);border-color:#aac8d8;box-shadow:0 10px 28px rgba(20,58,82,.1)}.p75-card>span{width:56px;height:56px;font-size:30px}.p75-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 14px}.p75-kpis>div{background:#fff;border:1px solid #d9e5ec;border-radius:14px;padding:14px 16px;box-shadow:0 4px 16px rgba(20,58,82,.04)}.p75-kpis b{display:block;color:#15527a;font-size:25px;line-height:1}.p75-kpis span{display:block;margin-top:5px;color:#718696;font-size:11px;font-weight:700}.p75-months{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:-3px 0 12px;padding:10px 12px;background:#fff;border:1px solid #dbe7ee;border-radius:12px;color:#526f81;font-size:11px}.p75-months span{background:#eef6fa;border-radius:999px;padding:4px 8px;color:#2c607d;font-weight:800}.p75-pop-one{grid-template-columns:1fr}.p75-inline-form{display:inline-block;margin-top:4px}.p75-people-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.p75-person-card{background:#fff;border:1px solid #dbe6ed;border-radius:15px;padding:14px;box-shadow:0 4px 15px rgba(20,58,82,.04)}.p75-person-card-main{display:flex;justify-content:space-between;align-items:center;gap:10px}.p75-person-card-main b{display:block;color:#173f59}.p75-person-card-main small{display:block;color:#7a8d99;margin-top:3px}.p75-person-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px}.p75-person-metrics span{padding:8px;border-radius:9px;background:#f5f9fb;text-align:center;color:#718392;font-size:9px;font-weight:800}.p75-person-metrics b{display:block;color:#184e6d;font-size:15px;margin-bottom:2px}.p75-dialog{width:min(920px,96vw);max-height:92vh;border:0;border-radius:17px;padding:0;box-shadow:0 24px 80px rgba(15,42,60,.3)}.p75-dialog::backdrop{background:rgba(17,42,58,.5)}.p75-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 18px;border-bottom:1px solid #e0e9ef}.p75-dialog-head small{color:#7990a0;font-size:10px;font-weight:900;letter-spacing:.05em}.p75-dialog-head h2{margin:3px 0 0;color:#173f59}.p75-dialog-head button{width:34px;height:34px;border:0;border-radius:50%;background:#eef4f7;color:#315d76;font-size:22px;cursor:pointer}.p75-dialog-body{padding:16px;max-height:calc(92vh - 70px);overflow:auto;display:grid;gap:14px}.p75-form-card,.p75-history,.p75-offer-form{background:#f8fbfd;border:1px solid #dce8ef;border-radius:13px;padding:13px}.p75-form-card h3,.p75-history h3{margin:0 0 10px;color:#28546e}.p75-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:10px}.p75-form-grid label{display:flex;flex-direction:column;gap:5px;color:#587286;font-size:11px;font-weight:800}.p75-form-grid input,.p75-form-grid select,.p75-form-grid textarea{width:100%;box-sizing:border-box;padding:9px 10px;border:1px solid #cadbe6;border-radius:9px;background:#fff;font:inherit}.p75-form-grid .wide{grid-column:1/-1}.p75-history-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.p75-history-head h3{margin:0}.p75-history-row{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding:9px;border-top:1px solid #e4edf2;cursor:pointer}.p75-history-row span b{display:block;color:#254b63}.p75-history-row span small{display:block;color:#7a8d99;margin-top:2px}.p75-history-row em{font-style:normal;color:#67808f;font-size:10px;font-weight:800}.p75-history-row.void{opacity:.5}.p75-offers{margin-top:22px}.p75-section-title{margin-bottom:12px}.p75-offer-form{background:#fff;margin-bottom:12px}.p75-offer-list{display:flex;flex-direction:column;gap:9px}.p75-offer-card{background:#fff;border:1px solid #dbe6ed;border-radius:14px;padding:13px}.p75-offer-card>header{display:flex;justify-content:space-between;align-items:center;gap:12px}.p75-offer-card header b{display:block;color:#173f59}.p75-offer-card header small{display:block;color:#718693;margin-top:3px}.p75-offer-card summary{margin-top:10px;cursor:pointer;color:#236082;font-weight:800}.p75-candidates{margin-top:10px;border-top:1px solid #e4edf2}.p75-candidate{display:grid;grid-template-columns:minmax(230px,1.2fr) minmax(230px,1fr) auto auto;align-items:center;gap:10px;padding:9px 3px;border-bottom:1px solid #edf2f5;font-size:11px}.p75-candidate>b{color:#244a62}.p75-candidate>span{color:#718592}.p75-candidate>span strong{color:#26734c}.p75-response-buttons{display:flex;gap:4px}.p75-response-buttons form{margin:0}.p75-close-offer{display:flex;justify-content:flex-end;margin-top:10px}.p75-empty{padding:18px;text-align:center;background:#fff;border:1px dashed #cadbe5;border-radius:12px;color:#718693}.p75-table td,.p75-table th{white-space:nowrap}.p75-table td:nth-child(2){white-space:normal;min-width:190px}
@media(max-width:900px){.p75-people-grid,.p75-menu{grid-template-columns:1fr}.p75-kpis{grid-template-columns:repeat(2,1fr)}.p75-head{display:block}.p75-head>.btn{margin-top:10px}.p75-person-metrics{grid-template-columns:repeat(2,1fr)}.p75-candidate{grid-template-columns:1fr auto}.p75-candidate>span{grid-column:1/-1}.p75-response-buttons{grid-column:1/-1}.p75-form-grid{grid-template-columns:1fr}.p75-form-grid .wide{grid-column:auto}.p75-dialog{width:100vw;max-width:none;height:100vh;max-height:none;border-radius:0}.p75-dialog-body{max-height:calc(100vh - 70px)}}

/* Motor 75.2 · Centro de gestión y libro común de movimientos */
.p75-attention{background:#fff;border:1px solid #d9e6ed;border-radius:16px;padding:14px 16px;margin:0 0 16px;box-shadow:0 4px 16px rgba(20,58,82,.05)}
.p75-attention-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;color:#214f69}.p75-attention-title span{font-size:11px;color:#758b99;font-weight:700}
.p75-attention-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.p75-attention-grid a{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #e1ebf0;border-radius:11px;background:#f8fbfd;text-decoration:none}.p75-attention-grid a b{font-size:22px;color:#15527a}.p75-attention-grid a span{font-size:10px;line-height:1.25;color:#617b8b;font-weight:800}
.p75-card em{display:block;margin-top:8px;color:#2b6f92;font-size:10px;font-style:normal;font-weight:800}.p75-balances td small{display:block;color:#7b8d98;margin-top:2px}.p75-ledger{min-width:390px;max-height:290px;overflow:auto;padding:6px}.p75-ledger>div{display:flex;justify-content:space-between;gap:14px;padding:8px 4px;border-bottom:1px solid #edf2f5}.p75-ledger span b{display:block;color:#244d66}.p75-ledger span small{display:block;color:#7a8d99;margin-top:2px}.p75-ledger>div>strong{color:#1c6c54;white-space:nowrap}
@media(max-width:850px){.p75-attention-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.p75-ledger{min-width:280px}.p75-menu{grid-template-columns:1fr}}
/* Motor 75.3 · solicitudes y automatización */
.p75-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 16px}.p75-panel{background:#fff;border:1px solid #dbe6ed;border-radius:16px;padding:16px;box-shadow:0 5px 18px rgba(20,58,82,.05)}.p75-panel-space{margin-top:16px}.p75-request-list{display:flex;flex-direction:column;gap:9px}.p75-request-card{border:1px solid #e0e9ef;border-radius:12px;padding:12px;background:#fbfdfe}.p75-request-main{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:10px;align-items:center}.p75-request-main b{display:block;color:#173f59}.p75-request-main small{display:block;color:#718693;margin-top:3px}.p75-signal{font-size:10px;font-weight:900;border-radius:999px;padding:6px 9px}.p75-signal.green{background:#e8f7ef;color:#23734d}.p75-signal.amber{background:#fff5d8;color:#8a650d}.p75-signal.red{background:#fde9e9;color:#9b3030}.p75-analysis{display:flex;justify-content:space-between;gap:12px;margin-top:9px;padding:8px 10px;background:#f3f7fa;border-radius:9px;color:#526f81;font-size:11px}.p75-request-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}.p75-request-actions form{display:flex;gap:6px;flex-wrap:wrap}.p75-request-actions input{padding:8px;border:1px solid #cadbe6;border-radius:8px}.p75-why{display:block;margin-top:3px;color:#758b99}.p75-person-metrics{grid-template-columns:repeat(5,1fr)}
@media(max-width:850px){.p75-action-grid{grid-template-columns:1fr}.p75-request-main{grid-template-columns:1fr auto}.p75-request-main em{grid-column:1/-1}.p75-analysis{flex-direction:column}.p75-person-metrics{grid-template-columns:repeat(2,1fr)}}
/* Motor 75.4 · Pluses, cierres e histórico */
.p75-plus-status{display:grid;grid-template-columns:1.3fr .8fr .8fr minmax(320px,1.5fr);gap:10px;align-items:center;margin:0 0 14px;padding:13px 15px;background:#fff;border:1px solid #d9e5ec;border-radius:14px}.p75-plus-status small{display:block;color:#718796;font-size:9px;font-weight:900;letter-spacing:.06em}.p75-plus-status b,.p75-plus-status strong{display:block;margin-top:3px;color:#174d6d}.p75-plus-status.cerrado{border-left:5px solid #2f7d59}.p75-plus-status.validado{border-left:5px solid #2878a5}.p75-plus-status.reabierto{border-left:5px solid #c8831a}.p75-plus-actions{display:flex;justify-content:flex-end;gap:7px;align-items:center;flex-wrap:wrap}.p75-plus-actions form{margin:0}.p75-reopen{display:flex!important;gap:6px}.p75-reopen input{min-width:220px;padding:8px 9px;border:1px solid #ccdce6;border-radius:8px}.p75-anomalies{margin:0 0 14px;padding:12px 14px;background:#fff7df;border:1px solid #ebd08a;border-radius:12px;color:#705a1e}.p75-anomalies>b{display:block;margin-bottom:6px}.p75-anomalies div{font-size:11px;padding:3px 0}.p75-number{position:relative}.p75-number summary{list-style:none;cursor:pointer;font-weight:900;color:#155c83;padding:4px 7px;border-radius:7px;background:#eff7fb}.p75-number summary::-webkit-details-marker{display:none}.p75-number[open]{z-index:30}.p75-number[open]>span{display:block;white-space:nowrap;text-align:left;padding:3px 0;font-size:10px;color:#577181}.p75-number[open]{min-width:145px;padding:6px;background:#fff;border:1px solid #c9dce7;border-radius:9px;box-shadow:0 8px 22px rgba(17,54,75,.14)}.p75-close-history{display:flex;flex-direction:column;gap:7px}.p75-close-history article{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px;border:1px solid #e0e9ef;border-radius:10px;background:#fbfdfe}.p75-close-history article b{display:block;color:#204f69}.p75-close-history article small,.p75-close-history article span{color:#748997;font-size:10px}
@media(max-width:900px){.p75-plus-status{grid-template-columns:1fr 1fr}.p75-plus-actions{grid-column:1/-1;justify-content:flex-start}.p75-reopen{width:100%;flex-direction:column}.p75-reopen input{min-width:0;width:100%;box-sizing:border-box}}

/* Motor 75.5 · orden de plantilla como cuadrante */
.p75-group-row td{background:#eaf3f8!important;color:#174d6d!important;font-size:10px!important;font-weight:900!important;letter-spacing:.08em;text-transform:uppercase;border-top:2px solid #bfd3df!important;border-bottom:1px solid #cbdde7!important;padding:8px 10px!important}.p75-staff-group{grid-column:1/-1;margin-top:8px;padding:8px 11px;border-radius:10px;background:#eaf3f8;border:1px solid #cbdde7;color:#174d6d;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.p75-people-grid>.p75-staff-group:first-child{margin-top:0}

/* Motor 75.6 · Horas extra en lista compacta */
.p75-overtime-list{display:flex;flex-direction:column;gap:0;margin-top:12px;background:#fff;border:1px solid #dbe6ed;border-radius:15px;overflow:hidden;box-shadow:0 4px 15px rgba(20,58,82,.04)}
.p75-overtime-list .p75-list-group{margin:0;border:0;border-radius:0;border-top:1px solid #cbdde7;padding:9px 14px}
.p75-overtime-list .p75-list-group:first-child{border-top:0}
.p75-overtime-header,.p75-overtime-row{display:grid;grid-template-columns:minmax(250px,1.8fr) repeat(5,minmax(85px,.65fr)) 36px;align-items:center;column-gap:10px}
.p75-overtime-header{padding:7px 14px;background:#f4f8fb;border-bottom:1px solid #dce7ee;color:#6a8190;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.p75-overtime-header span:not(:first-child){text-align:center}
.p75-overtime-row{padding:10px 14px;border-bottom:1px solid #e7eef3;min-height:48px}
.p75-overtime-row:last-child{border-bottom:0}
.p75-overtime-row:hover{background:#f2f8fb}
.p75-overtime-person b{display:block;color:#173f59;font-size:14px;line-height:1.15}
.p75-overtime-person small{display:block;color:#7a8d99;margin-top:3px;font-size:10px}
.p75-overtime-value{text-align:center;color:#184e6d;font-size:12px;font-weight:800}
.p75-overtime-value small{display:none}
.p75-open-person{justify-self:end;white-space:nowrap}
@media(max-width:900px){
 .p75-overtime-list{background:transparent;border:0;border-radius:0;box-shadow:none;gap:8px;overflow:visible}
 .p75-overtime-list .p75-list-group{border:1px solid #cbdde7;border-radius:10px;margin-top:5px}
 .p75-overtime-header{display:none}
 .p75-overtime-row{grid-template-columns:minmax(0,1fr) repeat(3,62px);gap:7px;padding:11px;background:#fff;border:1px solid #dbe6ed;border-radius:12px;box-shadow:0 3px 12px rgba(20,58,82,.04);min-height:0}
 .p75-overtime-person{grid-column:1/-2}
 .p75-open-person{grid-column:-2/-1;grid-row:1;align-self:center}
 .p75-overtime-value{padding:7px 5px;background:#f5f9fb;border-radius:8px;font-size:12px}
 .p75-overtime-value small{display:block;font-size:7px;color:#718392;margin-top:2px;font-weight:800}
}
@media(max-width:620px){
 .p75-overtime-row{grid-template-columns:repeat(2,minmax(0,1fr))}
 .p75-overtime-person{grid-column:1/2}
 .p75-open-person{grid-column:2/3;grid-row:1}
 .p75-overtime-value{min-width:0}
}

/* Motor 75.7 · configuración anual del Módulo 75 */
.p75-config-link{display:flex;justify-content:flex-end;margin-top:14px}.p75-config-state{margin-left:auto;padding:7px 11px;border-radius:999px;font-size:11px;font-weight:900}.p75-config-state.ok{background:#e8f7ef;color:#237249}.p75-config-state.warn{background:#fff2d8;color:#8a5a06}.p75-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.p75-check{flex-direction:row!important;align-items:center!important}.p75-check input{width:auto!important}.p75-config-group{margin:8px 0 3px;padding:7px 9px;border-radius:8px;background:#eaf3f8;color:#174d6d;font-size:10px;font-weight:900;letter-spacing:.06em}.p75-config-person{display:grid;grid-template-columns:minmax(0,1fr) 110px 80px;gap:9px;align-items:center;padding:8px 5px;border-bottom:1px solid #e8eef2;font-size:11px}.p75-config-person>b{color:#244a62}.p75-config-person>span{text-align:right;color:#718592}.p75-config-person strong{color:#184e6d}.p75-config-sequence{display:flex;flex-direction:column;gap:6px}.p75-config-sequence>div{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:8px;padding:7px 5px;border-bottom:1px solid #e7eef3}.p75-config-sequence b{color:#244a62}.p75-config-holidays{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.p75-config-holidays>div{padding:9px 10px;background:#f5f9fb;border-radius:9px}.p75-config-holidays b{display:block;color:#184e6d;font-size:11px}.p75-config-holidays span{display:block;color:#718592;font-size:10px;margin-top:2px}.p75-config-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:14px}.p75-config-actions form{margin:0}@media(max-width:850px){.p75-config-grid{grid-template-columns:1fr}.p75-config-person{grid-template-columns:minmax(0,1fr) 90px 70px}.p75-config-holidays{grid-template-columns:1fr}}


/* Motor 75.8 · filas completas clicables en listados de personal */
.p75-overtime-row-clickable{cursor:pointer;transition:background .14s ease,box-shadow .14s ease}
.p75-overtime-row-clickable:hover{background:#eef6fa}
.p75-overtime-row-clickable:focus-visible{outline:3px solid rgba(28,126,188,.28);outline-offset:-3px;background:#eef6fa}
.p75-row-open{justify-self:center;color:#5f7f93;font-size:25px;line-height:1;font-weight:700;transition:transform .14s ease,color .14s ease}
.p75-overtime-row-clickable:hover .p75-row-open,.p75-overtime-row-clickable:focus-visible .p75-row-open{transform:translateX(2px);color:#1479b8}
@media(max-width:900px){.p75-row-open{grid-column:-2/-1;grid-row:1;align-self:center;justify-self:end;padding-right:5px}.p75-overtime-person{padding-right:18px}}
@media(max-width:620px){.p75-row-open{grid-column:2/3;grid-row:1}}

/* Motor 75.9 · Importación y conciliación */
.p75-import-box{margin-bottom:14px}.p75-import-form{display:grid;grid-template-columns:130px minmax(280px,1fr) auto;gap:10px;align-items:end}.p75-import-form label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:800;color:#587286}.p75-import-form input{padding:9px 10px;border:1px solid #cbdbe5;border-radius:9px;background:#fff}.p75-import-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.p75-map-list{display:flex;flex-direction:column}.p75-map-list>div{display:grid;grid-template-columns:100px 1fr;gap:10px;padding:8px 4px;border-bottom:1px solid #e7eef2}.p75-map-list b{color:#184e6d}.p75-map-list span{color:#687f8e}.p75-import-points{margin:0;padding-left:20px;color:#587286;line-height:1.8}.p75-import-results{margin-top:20px}.p75-import-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.p75-import-card{background:#fff;border:1px solid #dbe6ed;border-radius:14px;padding:14px}.p75-import-card.error{border-color:#e4b5b0;background:#fff7f6}.p75-import-card header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.p75-import-card header b{display:block;color:#173f59}.p75-import-card header small{display:block;margin-top:3px;color:#6f8796;font-weight:800}.p75-import-card header>span{padding:4px 8px;background:#eef6fa;border-radius:999px;color:#2c607d;font-size:10px;font-weight:800}.p75-import-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0}.p75-import-kpis span{padding:9px;background:#f5f9fb;border-radius:9px;text-align:center;color:#6f8493;font-size:9px;font-weight:800}.p75-import-kpis b{display:block;color:#184e6d;font-size:16px}.p75-code-cloud{display:flex;flex-wrap:wrap;gap:5px}.p75-code-cloud span{padding:4px 7px;border-radius:999px;background:#edf5f9;color:#356b89;font-size:9px;font-weight:800}.p75-sheet-names{display:block;margin-top:10px;color:#7b8e99}.p75-config-link{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:800px){.p75-import-form,.p75-import-grid,.p75-import-results-grid{grid-template-columns:1fr}.p75-import-kpis{grid-template-columns:1fr 1fr}.p75-import-form .wide{grid-column:auto}}

/* Motor 75.10 · lotes auditables de importación */
.p75-import-card.warning{border-color:#ead49f;background:#fffdf7}.p75-import-warning{margin-top:10px;padding:8px 10px;border-radius:9px;background:#fff2d8;color:#7b570a;font-size:10px}.p75-import-issues{margin:9px 0 0;padding-left:18px;color:#7b570a;font-size:10px;line-height:1.5}.p75-import-error{color:#a03c35}.p75-batch-table{padding:0;overflow:hidden}.p75-batch-head,.p75-batch-row{display:grid;grid-template-columns:160px minmax(280px,1fr) 130px 110px minmax(180px,auto);gap:10px;align-items:center;padding:10px 12px}.p75-batch-head{background:#eaf3f8;color:#557386;font-size:9px;font-weight:900;letter-spacing:.04em}.p75-batch-row{border-top:1px solid #e5edf2;font-size:10px}.p75-batch-row>div:first-child b{display:block;color:#174d6d}.p75-batch-row small{display:block;color:#7b8e99;margin-top:2px}.p75-file-pill{display:inline-flex;margin:2px 4px 2px 0;padding:4px 7px;border-radius:999px;background:#eef5f9;color:#356b89;font-size:9px;font-weight:800}.p75-batch-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:900}.p75-batch-status.simulado{background:#fff2d8;color:#805b08}.p75-batch-status.revisado{background:#e7f6ed;color:#247047}.p75-batch-status.anulado{background:#f3e8e8;color:#9a4545}.p75-batch-actions{display:flex;justify-content:flex-end;gap:6px}.p75-batch-actions form{margin:0}.p75-batch-actions .btn{padding:6px 9px;font-size:9px}.p75-batch-actions .danger{background:#a94343;color:#fff;border-color:#a94343}.p75-empty{padding:18px;color:#718796;text-align:center}@media(max-width:950px){.p75-batch-head{display:none}.p75-batch-row{grid-template-columns:1fr 1fr}.p75-batch-actions{justify-content:flex-start}.p75-batch-row>div:nth-child(2){grid-column:1/-1}}@media(max-width:600px){.p75-batch-row{grid-template-columns:1fr}.p75-batch-row>div:nth-child(2){grid-column:auto}}

/* Motor 75.11 · consolidación controlada y reversión de lotes */
.p75-batch-status.consolidado{background:#dff2ff;color:#17628d}.p75-batch-status.revertido{background:#f1eef7;color:#6d5687}.p75-source-ok{color:#27734b!important;font-weight:800}.p75-source-missing{color:#a16831!important;font-weight:800}.p75-revert-form{display:flex!important;gap:6px;align-items:center}.p75-revert-form input{width:150px;padding:6px 8px;border:1px solid #d2dee6;border-radius:7px;font-size:9px}@media(max-width:950px){.p75-revert-form{grid-column:1/-1;flex-wrap:wrap}.p75-revert-form input{width:min(100%,240px)}}

/* MOTOR 75.17 · separación visual de utilidades en Centro de gestión de personal */
.p75-shell > .p75-config-link{
  margin-top:30px;
  padding-top:16px;
  border-top:1px solid #dfe9ef;
  justify-content:flex-start;
  gap:10px;
}
.p75-shell > .p75-config-link + .p75-help{margin-top:12px}
@media(max-width:800px){
  .p75-shell > .p75-config-link{margin-top:22px;padding-top:14px}
}


/* === Motor 75.30 · rediseño móvil específico Módulo 75 === */
.p75-history-details>summary,.p75-coverage-details>summary,.p75-vac-config>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px}.p75-history-details>summary::-webkit-details-marker,.p75-coverage-details>summary::-webkit-details-marker,.p75-vac-config>summary::-webkit-details-marker{display:none}.p75-history-details[open]>summary span:last-child,.p75-vac-config[open]>summary span:last-child{transform:rotate(90deg)}.p75-history-body{padding-top:12px}.p75-coverage-details{margin-bottom:16px}.p75-coverage-details>summary{padding:0}.p75-coverage-details>summary small{display:block;color:#718796;font-size:10px;font-weight:900;letter-spacing:.06em}.p75-coverage-details>summary b{display:block;color:#174d6d;font-size:18px;margin-top:3px}.p75-summary-hint{font-size:11px;color:#5f7b8d;font-weight:800}.p75-coverage-body{padding-top:12px}.p75-coverage-body>p{color:#6f8493;margin:0 0 12px}.p75-date-pickers{display:grid;grid-template-columns:1fr 1fr;gap:8px}.p75-date-picker-btn{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:9px 11px;border-radius:10px;border:1px solid #ccdce6;background:#fff;color:#234e68;font-weight:800;cursor:pointer}.p75-date-picker-btn.amber{border-left:5px solid #d9a900}.p75-date-picker-btn.red{border-left:5px solid #cf3f3f}.p75-date-picker-btn b{font-size:11px}.p75-mini-calendar{border:1px solid #d8e5ec;border-radius:12px;background:#f9fbfd;padding:10px}.p75-cal-head{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:6px}.p75-cal-head b{text-align:center;text-transform:capitalize;color:#1d526f}.p75-cal-head button{height:38px;border:1px solid #cbdce6;background:#fff;border-radius:9px;font-size:22px;color:#245a78}.p75-cal-mode{margin:7px 0;padding:6px 8px;border-radius:8px;font-size:11px;font-weight:900;text-align:center}.p75-cal-mode.amber{background:#fff4c9;color:#785c00}.p75-cal-mode.red{background:#fde7e7;color:#963232}.p75-cal-week,.p75-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.p75-cal-week span{text-align:center;font-size:10px;color:#6d8391;font-weight:900;padding:4px}.p75-cal-grid button{aspect-ratio:1/1;border:1px solid #dce6ec;border-radius:8px;background:#fff;color:#214e68;font-weight:800;touch-action:pan-y}.p75-cal-grid button.amber{background:#ffe89a;border-color:#d9a900;color:#604900}.p75-cal-grid button.red{background:#f7b0b0;border-color:#cf3f3f;color:#762323}.p75-cal-help{display:block;margin-top:7px;color:#748997}.p75-aux-hidden{display:none!important}.p75-group-row .p75-aux-toggle{font:inherit;text-transform:inherit;letter-spacing:inherit}

@media(max-width:700px){
  /* navegación y encabezados */
  .p75-shell{padding-left:0!important;padding-right:0!important}.p75-head{margin-bottom:10px!important}.p75-head small{font-size:9px!important}.p75-head h1{font-size:27px!important;line-height:1.08!important;margin:4px 0 4px!important}.p75-head p{font-size:14px!important;line-height:1.35!important;margin:0!important}.p75-head>.btn{display:inline-flex!important;min-height:38px!important;padding:7px 10px!important;margin-top:8px!important;font-size:12px!important}.pagehead.hq-pagehead{margin-bottom:10px!important}.pagehead.hq-pagehead h1{font-size:25px!important;margin-bottom:2px!important}.pagehead.hq-pagehead p{display:none!important}.pagehead.hq-pagehead>.btn{padding:7px 10px!important;font-size:12px!important}
  /* Gestión de personal: accesos bajos, no tarjetas gigantes */
  .personnel-management-grid{display:flex!important;flex-direction:column!important;gap:8px!important}.personnel-management-grid .module{min-height:0!important;height:auto!important;padding:12px 13px!important;display:grid!important;grid-template-columns:42px minmax(0,1fr) 18px!important;align-items:center!important;border-radius:13px!important}.personnel-management-grid .module>span{font-size:28px!important;margin:0!important}.personnel-management-grid .module>div b{font-size:15px!important}.personnel-management-grid .module>div small{display:none!important}.personnel-management-grid .module:after{content:'›';font-size:24px;color:#6b8798}
  /* Centro 75 */
  .p75-attention{padding:10px!important;margin-bottom:10px!important}.p75-attention-title{margin-bottom:7px!important}.p75-attention-grid{grid-template-columns:1fr 1fr!important;gap:6px!important}.p75-attention-grid a{padding:8px!important}.p75-attention-grid a b{font-size:18px!important}.p75-menu{gap:8px!important}.p75-card{padding:11px 12px!important;min-height:0!important;grid-template-columns:36px 1fr 14px!important}.p75-card>span{font-size:25px!important}.p75-card b{font-size:14px!important}.p75-card small{display:none!important}.p75-card em{margin-top:3px!important;font-size:9px!important}.p75-config-link{gap:6px!important}.p75-config-link .btn{flex:1 1 46%;font-size:10px!important;padding:7px!important}.p75-help{font-size:10px!important;padding:8px 10px!important}
  /* KPIs y formularios */
  .p75-kpis{display:flex!important;gap:6px!important;overflow-x:auto!important;padding-bottom:3px}.p75-kpis>div{min-width:108px!important;padding:9px 10px!important;border-radius:11px!important}.p75-kpis>div b{font-size:22px!important}.p75-kpis>div span{font-size:9px!important}.p75-toolbar{padding:9px!important;gap:8px!important}.p75-toolbar label{font-size:10px!important}.p75-toolbar input,.p75-toolbar select{min-height:40px!important;font-size:16px!important}.p75-window{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}.p75-window label:first-of-type,.p75-window .btn{grid-column:1/-1}.p75-months{font-size:10px!important;padding:9px!important}.p75-months span{font-size:9px!important;padding:5px 7px!important}.p75-vac-config{border:1px solid #dce6ed;border-radius:12px;background:#fff;margin:8px 0 10px;overflow:hidden}.p75-vac-config>summary{padding:10px 12px;color:#245873}.p75-vac-config>.p75-toolbar{border:0!important;border-top:1px solid #e4edf2!important;border-radius:0!important;margin:0!important}
  /* Pluses */
  .p75-filter-details{margin-bottom:8px!important}.p75-filter-details>summary{padding:9px 11px!important;gap:4px!important}.p75-filter-details>summary>span:first-child{font-size:14px!important}.p75-filter-summary{font-size:10px!important}.p75-plus-status{grid-template-columns:1fr 1fr!important;padding:10px!important;gap:7px!important;margin-bottom:8px!important}.p75-plus-status .p75-period-summary{grid-column:1/-1;display:grid!important;grid-template-columns:1fr 1fr;gap:7px!important}.p75-plus-status .p75-period-summary b{font-size:12px!important}.p75-plus-status strong{font-size:15px!important}.p75-plus-actions{grid-column:1/-1!important}.p75-plus-actions .btn{min-height:38px!important;padding:7px 11px!important;font-size:12px!important}.p75-source-banner,.p75-source-box{padding:8px 10px!important;font-size:10px!important}.p75-history-details{padding:0!important}.p75-history-details>summary{padding:10px 12px!important}.p75-history-body{padding:0 10px 10px!important}
  /* Permisos: Jefatura centrada en solicitudes y saldos */
  .p75-key{display:none!important}.p75-coverage-details{padding:11px!important;margin-bottom:8px!important}.p75-coverage-details>summary b{font-size:15px!important}.p75-coverage-body>p{font-size:11px!important}.p75-date-pickers{grid-template-columns:1fr!important}.p75-request-card{padding:9px!important}.p75-request-main{grid-template-columns:1fr auto!important;gap:6px!important}.p75-request-main b{font-size:13px!important}.p75-request-main small{font-size:10px!important}.p75-analysis{padding:7px!important;font-size:10px!important}.p75-request-actions form{width:100%!important}.p75-request-actions input{flex:1!important;min-width:0!important}.p75-request-actions .btn{font-size:11px!important;padding:7px 9px!important}.p75-panel{padding:11px!important;border-radius:13px!important}.p75-section-title{margin-bottom:8px!important}.p75-section-title small{font-size:9px!important}.p75-section-title h2{font-size:19px!important;margin:2px 0!important}.p75-section-title p{font-size:11px!important;margin:2px 0!important}
  /* Saldos: tabla convertida en fichas verticales, sin scroll horizontal */
  .p75-table-wrap:has(.p75-balances){overflow:visible!important}.p75-balances{min-width:0!important;width:100%!important;border-collapse:separate!important;border-spacing:0 7px!important}.p75-balances thead{display:none!important}.p75-balances tbody{display:block!important}.p75-balances tr.p75-person-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;padding:10px!important;border:1px solid #dbe6ed!important;border-radius:12px!important;background:#fff!important;margin-bottom:7px!important}.p75-balances tr.p75-person-row td{display:block!important;border:0!important;padding:0!important;min-width:0!important;white-space:normal!important}.p75-balances tr.p75-person-row td:first-child{grid-column:1/-1;padding-bottom:4px!important;border-bottom:1px solid #edf2f5!important}.p75-balances tr.p75-person-row td:last-child{display:none!important}.p75-balances .p75-metric{min-width:0!important;width:100%!important;box-sizing:border-box!important;padding:6px 7px!important}.p75-balances .p75-metric b{font-size:13px!important}.p75-balances .p75-metric small{font-size:9px!important}.p75-group-row{display:block!important}.p75-group-row td{display:block!important;width:100%!important;box-sizing:border-box!important}.p75-aux-person-row.p75-aux-hidden{display:none!important}
  /* Horas extra */
  .p75-overtime-list{gap:6px!important}.p75-overtime-row{grid-template-columns:1fr 1fr!important;padding:9px!important;gap:6px!important}.p75-overtime-person{grid-column:1/-1!important;padding-right:0!important}.p75-overtime-value{display:block!important;padding:7px!important;border-radius:8px!important;background:#f5f9fb!important}.p75-overtime-value small{display:block!important}.p75-annual-total{background:#e8f4fb!important}.p75-row-open{display:none!important}.p75-staff-group{padding:8px 10px!important;margin-top:5px!important}
  /* tablas generales del módulo 75: scroll local y no de página */
  .p75-table-wrap{max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}.p75-table{font-size:10px!important}
}


/* === Motor 75.31 · mobile-first real + plegables operativos === */
.p75-requests-details>summary,.p75-pool-history>summary,.p75-pool-stats>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;justify-content:space-between}.p75-requests-details>summary::-webkit-details-marker,.p75-pool-history>summary::-webkit-details-marker,.p75-pool-stats>summary::-webkit-details-marker{display:none}.p75-pending-count{display:grid;place-items:center;min-width:28px;height:28px;padding:0 7px;border-radius:999px;background:#1769a0;color:#fff}.p75-requests-body{padding-top:10px}.p75-pool-history,.p75-pool-stats{margin-top:10px;border:1px solid #dbe6ed;border-radius:12px;background:#fff;overflow:hidden}.p75-pool-history>summary,.p75-pool-stats>summary{padding:10px 12px;color:#245873;font-weight:900}.p75-pool-history>.p75-offer-list,.p75-pool-stats>.p75-table-wrap{border-top:1px solid #e3ebf0;padding:10px}.p75-pool-history[open]>summary span:last-child,.p75-pool-stats[open]>summary span:last-child{transform:rotate(90deg)}
@media(max-width:760px){
 body .pagehead.hq-pagehead{display:grid!important;grid-template-columns:1fr auto!important;gap:6px!important;padding:0!important;margin:0 0 8px!important} body .pagehead.hq-pagehead h1{font-size:20px!important;line-height:1.1!important;margin:0!important} body .pagehead.hq-pagehead>.btn{margin:0!important;min-height:34px!important;padding:5px 8px!important}
 body .personnel-management-grid{display:grid!important;grid-template-columns:1fr!important;gap:6px!important} body .personnel-management-grid .module{min-height:58px!important;height:58px!important;padding:7px 10px!important;display:grid!important;grid-template-columns:34px 1fr 16px!important;gap:8px!important;border-radius:11px!important} body .personnel-management-grid .module>span{font-size:23px!important;width:auto!important;height:auto!important} body .personnel-management-grid .module>div b{font-size:14px!important;line-height:1.15!important} body .personnel-management-grid .module>div small{display:none!important}
 body .p75-head{display:grid!important;grid-template-columns:1fr auto!important;gap:6px!important;align-items:start!important;margin:0 0 8px!important} body .p75-head small{font-size:8px!important} body .p75-head h1{font-size:22px!important;line-height:1.05!important;margin:2px 0!important} body .p75-head p{display:none!important} body .p75-head>.btn{margin:0!important;min-height:34px!important;padding:5px 7px!important;font-size:10px!important;align-self:start!important}
 body .p75-module-tabs{margin:0 0 7px!important;padding-bottom:6px!important;gap:5px!important} body .p75-module-tabs a{padding:7px 8px!important;font-size:11px!important;flex:1;text-align:center}
 body .p75-help{margin:5px 0!important;padding:6px 8px!important;font-size:9px!important;line-height:1.25!important} body .p75-toolbar{margin:5px 0 7px!important;padding:7px!important}
 body .p75-filter-details{margin:4px 0 6px!important} body .p75-filter-details>summary{min-height:40px!important;padding:7px 9px!important;flex-direction:row!important;align-items:center!important} body .p75-filter-summary{font-size:8.5px!important;line-height:1.2!important;max-width:62%!important}
 body .p75-plus-status{display:grid!important;grid-template-columns:1fr auto auto!important;padding:7px 8px!important;gap:5px!important} body .p75-plus-status .p75-period-summary{grid-column:1/-1!important;display:flex!important;gap:10px!important;overflow:hidden!important} body .p75-plus-status .p75-period-summary>div{min-width:0!important} body .p75-plus-status .p75-period-summary small{font-size:7px!important} body .p75-plus-status .p75-period-summary b{font-size:10px!important;white-space:nowrap!important} body .p75-plus-status strong{font-size:12px!important} body .p75-plus-actions{grid-column:1/-1!important;display:flex!important;gap:5px!important} body .p75-plus-actions form{flex:0 0 auto!important} body .p75-plus-actions .btn{min-height:32px!important;padding:5px 8px!important;font-size:10px!important}
 body .p75-source-banner,body .p75-source-box{margin:5px 0!important;padding:6px 8px!important;font-size:8.5px!important;line-height:1.25!important} body .p75-source-banner b,body .p75-source-box b{font-size:9px!important}
 body .p75-panel{padding:8px!important;gap:6px!important} body .p75-panel-space{margin-top:7px!important} body .p75-section-title{margin-bottom:5px!important} body .p75-section-title h2{font-size:17px!important} body .p75-section-title p{display:none!important}
 body .p75-requests-details{padding:0!important} body .p75-requests-details>summary{padding:8px 9px!important} body .p75-requests-details>summary small{font-size:8px!important} body .p75-requests-details>summary b{font-size:13px!important} body .p75-pending-count{min-width:24px;height:24px;font-size:11px!important} body .p75-requests-body{padding:0 8px 8px!important}
 body .p75-balances tr.p75-person-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:4px!important;padding:7px!important;margin-bottom:4px!important;border-radius:9px!important} body .p75-balances tr.p75-person-row td:first-child{padding-bottom:3px!important} body .p75-balances tr.p75-person-row td:first-child b{font-size:12px!important} body .p75-balances tr.p75-person-row td:first-child small{font-size:8px!important} body .p75-balances .p75-metric{padding:4px 6px!important;border-radius:7px!important} body .p75-balances .p75-metric b{font-size:11px!important} body .p75-balances .p75-metric small{font-size:8px!important;line-height:1.1!important}
 body .p75-overtime-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:7px!important;gap:4px!important;min-height:0!important} body .p75-overtime-person{grid-column:1/-1!important} body .p75-overtime-person b{font-size:12px!important} body .p75-overtime-person small{font-size:8px!important} body .p75-overtime-value{padding:5px!important} body .p75-overtime-value b{font-size:11px!important} body .p75-overtime-value small{font-size:8px!important}
 body .p75-offer-form{padding:8px!important;margin-bottom:6px!important} body .p75-form-grid{grid-template-columns:1fr 1fr!important;gap:6px!important;margin-bottom:7px!important} body .p75-form-grid .wide{grid-column:1/-1!important} body .p75-form-grid label{font-size:9px!important} body .p75-form-grid input,body .p75-form-grid select,body .p75-form-grid textarea{min-height:36px!important;padding:6px 7px!important;font-size:14px!important} body .p75-offer-form>.btn{width:100%!important;min-height:36px!important;font-size:11px!important}
 body .p75-pool-intro{margin-bottom:6px!important} body .p75-pool-history,body .p75-pool-stats{margin-top:6px!important} body .p75-pool-history>summary,body .p75-pool-stats>summary{padding:8px 9px!important;font-size:11px!important}
 body .p75-kpis{display:grid!important;grid-template-columns:repeat(4,1fr)!important;overflow:visible!important;gap:4px!important} body .p75-kpis>div{min-width:0!important;padding:6px!important} body .p75-kpis>div b{font-size:17px!important} body .p75-kpis>div span{font-size:7.5px!important}
}


/* MOTOR 75.38 · Semáforo de disponibilidad: calendario mensual compacto tipo Libro de novedades */
.p75-mini-calendar{
  width:min(100%,390px)!important;
  max-width:390px!important;
  box-sizing:border-box!important;
  justify-self:start!important;
  align-self:start!important;
  padding:10px!important;
  border-radius:12px!important;
  box-shadow:0 8px 24px rgba(22,74,105,.10)!important;
}
.p75-cal-head{grid-template-columns:34px 1fr 34px!important;gap:6px!important}
.p75-cal-head button{width:34px!important;height:30px!important;border-radius:8px!important;font-size:20px!important;line-height:1!important;padding:0!important}
.p75-cal-head b{font-size:14px!important}
.p75-cal-mode{margin:6px 0!important;padding:5px 7px!important;font-size:10px!important}
.p75-cal-week,.p75-cal-grid{gap:3px!important}
.p75-cal-week span{font-size:8.5px!important;padding:2px 0!important}
.p75-cal-grid button{
  aspect-ratio:auto!important;
  width:100%!important;
  height:42px!important;
  min-height:42px!important;
  padding:2px!important;
  border-radius:7px!important;
  font-size:12px!important;
}
.p75-cal-help{margin-top:6px!important;font-size:9px!important;line-height:1.3!important}
@media(max-width:760px){
  .p75-mini-calendar{width:100%!important;max-width:360px!important;margin:0 auto!important;justify-self:center!important;padding:8px!important}
  .p75-cal-grid button{height:39px!important;min-height:39px!important;font-size:12px!important}
  .p75-cal-head button{height:30px!important}
}

/* =========================================================
   Módulo 78 · Vehículos y transporte
   ========================================================= */
.v78-toolbar{display:flex;gap:14px;align-items:end;justify-content:space-between;flex-wrap:wrap;margin-bottom:14px;padding:14px 16px}
.v78-filter,.v78-import,.v78-repo-links{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.v78-filter label,.v78-grid-form label{display:flex;flex-direction:column;gap:5px;font-weight:600;color:#17324a}.v78-filter input,.v78-filter select,.v78-grid-form input,.v78-grid-form select,.v78-grid-form textarea{min-height:40px;border:1px solid #bfd0dd;border-radius:9px;padding:8px 10px;background:#fff;font:inherit}.v78-filter input{min-width:280px}.v78-import input[type=file]{max-width:290px}
.v78-warning{background:#fff3cd;border:1px solid #f0cf67;border-radius:12px;padding:13px 16px;margin:12px 0;color:#6e4b00}.v78-mini-list{display:flex;flex-direction:column;gap:4px;margin-top:8px;font-size:.92rem}
.v78-formbox{padding:0;margin:14px 0}.v78-formbox summary{cursor:pointer;padding:15px 17px;list-style:none}.v78-formbox summary::-webkit-details-marker{display:none}.v78-formbox[open] summary{border-bottom:1px solid #d8e3eb}.v78-grid-form{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px;padding:16px}.v78-grid-form .wide{grid-column:1/-1}
.v78-table-card{padding:0;overflow:hidden}.v78-section-title{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 16px;border-bottom:1px solid #d8e3eb;flex-wrap:wrap}.v78-section-title h2{margin:0}.v78-section-title span{color:#567086;font-size:.9rem}.v78-table{width:100%;border-collapse:collapse;min-width:980px;font-size:.91rem}.v78-table th{background:#eef5f9;color:#17324a;text-align:left;padding:9px 8px;border-bottom:1px solid #b8cad6;white-space:nowrap}.v78-table td{padding:8px;border-bottom:1px solid #dde7ed;vertical-align:top}.v78-table tbody tr:hover{background:#f8fbfd}.v78-table .empty,.empty{text-align:center;color:#6a7f90;padding:24px}.muted{color:#6a7f90}
.v78-tabs{display:flex;gap:8px;margin:4px 0 14px;flex-wrap:wrap}.v78-tabs a{padding:11px 15px;border:1px solid #bed1df;border-radius:10px;text-decoration:none;color:#153a57;background:#fff;font-weight:700}.v78-tabs a.active{background:#153a57;color:white;border-color:#153a57}
.taxi-calendar{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:1px;background:#bfd0dd;border-top:1px solid #bfd0dd}.taxi-calendar .dow{background:#edf4f8;padding:8px;text-align:center;font-weight:800;font-size:.8rem}.taxi-calendar .weekend{color:#c83030}.taxi-day{min-height:116px;background:#fff;padding:8px;text-decoration:none;color:#17324a;display:flex;flex-direction:column;gap:6px}.taxi-day:hover{background:#f2f8fb}.taxi-day.selected{outline:3px solid #1f6d9c;outline-offset:-3px}.taxi-day.blank{background:#f2f5f7}.daynum{font-size:1.05rem}.taxi-duty-group{display:flex;justify-content:space-between;gap:5px;align-items:center;border-radius:7px;background:#edf6fb;padding:5px 6px}.taxi-duty-group strong{font-size:.78rem}.taxi-duty-group small{font-size:.72rem;color:#527087}.taxi-none{font-size:.75rem;color:#93a3ad;margin-top:auto}
.v78-card-list{display:grid;gap:8px;padding:14px}.v78-row-card{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:11px 12px;border:1px solid #d6e2ea;border-radius:10px;background:#fbfdfe}.v78-row-card>div{display:flex;flex-direction:column;gap:4px}.btn.tiny{padding:5px 8px;min-height:0;width:max-content;font-size:.8rem}.v78-coming{display:flex;gap:18px;align-items:flex-start;padding:22px}
@media(max-width:980px){.v78-grid-form{grid-template-columns:repeat(2,minmax(150px,1fr))}.taxi-calendar{grid-template-columns:repeat(7,minmax(92px,1fr));overflow:auto}.taxi-day{min-height:105px}.v78-row-card{grid-template-columns:1fr}}
@media(max-width:680px){.v78-grid-form{grid-template-columns:1fr}.v78-grid-form .wide{grid-column:auto}.v78-filter,.v78-import{width:100%}.v78-filter label,.v78-filter input,.v78-filter select{width:100%;min-width:0}.taxi-calendar{min-width:760px}.v78-toolbar{align-items:stretch}.v78-repo-links{width:100%}}

/* Módulo 78.2 · listas y calendarios coherentes con el resto de la aplicación */
.v78-formbox summary{display:flex;justify-content:space-between;gap:12px;align-items:center}.v78-formbox summary span{font-size:.85rem;color:#6a7f90;font-weight:500}
.v78-file-label{display:flex;flex-direction:column;gap:5px;font-weight:600;color:#17324a}.v78-file-label span{font-size:.82rem}.v78-file-label input{max-width:330px}
.v78-module-switch{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:4px 0 16px}.v78-switch-card{display:flex;gap:14px;align-items:center;padding:16px 18px;border:1px solid #c7d7e2;border-radius:14px;background:#fff;color:#123b59;text-decoration:none;box-shadow:0 1px 2px rgba(15,45,65,.04)}.v78-switch-card>span{font-size:1.65rem}.v78-switch-card div{display:flex;flex-direction:column;gap:3px}.v78-switch-card b{font-size:1.02rem}.v78-switch-card small{color:#6a7f90}.v78-switch-card.active{border-color:#1d6f9f;box-shadow:inset 0 0 0 2px #1d6f9f;background:#f4faff}.v78-switch-card:hover{background:#f7fbfd}
.v78-calendar-card{padding:0;overflow:hidden}.v78-taxi-legend{display:flex;gap:18px;flex-wrap:wrap;color:#4e687d;font-size:.88rem}.v78-taxi-legend span{display:flex;align-items:center;gap:6px}.v78-taxi-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}.v78-taxi-legend i.tasitur{background:#2e83b7}.v78-taxi-legend i.independientes{background:#d49a2f}.taxi-calendar{border:1px solid #bfd0dd;border-top:0}.taxi-day{position:relative}.taxi-duty-group.tasitur{border-left:4px solid #2e83b7;background:#edf6fb}.taxi-duty-group.independientes{border-left:4px solid #d49a2f;background:#fff8e8}.taxi-none{opacity:.7}
.v78-action-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 14px}.v78-action-card{display:flex;gap:12px;align-items:center;padding:14px 16px;border:1px solid #c9d8e2;background:#fff;border-radius:13px;text-decoration:none;color:#17324a}.v78-action-card>span{font-size:1.5rem}.v78-action-card div{display:flex;flex-direction:column;gap:3px}.v78-action-card small{color:#6a7f90}.v78-action-card:hover{background:#f5fafc;border-color:#8eb9d1}
.v78-list-card{padding:0;overflow:hidden}.v78-record-head,.v78-record-row{display:grid;align-items:center;gap:12px}.v78-record-head{padding:9px 14px;background:#eef5f9;border-top:1px solid #d7e3eb;border-bottom:1px solid #bdceda;color:#587086;font-size:.72rem;font-weight:800;letter-spacing:.02em}.v78-record-list{display:flex;flex-direction:column}.v78-record-row{padding:11px 14px;border-bottom:1px solid #dce6ec;background:#fff}.v78-record-row:last-child{border-bottom:0}.v78-record-row:hover{background:#f8fbfd}.v78-record-row>div{display:flex;flex-direction:column;gap:3px;min-width:0}.v78-record-row b{color:#17324a}.v78-record-row small{color:#687f90;line-height:1.25}.v78-plate{font-size:1rem;letter-spacing:.03em}.v78-badge,.v78-status{display:inline-flex;width:max-content;max-width:100%;padding:3px 7px;border-radius:999px;background:#e7f2f8;color:#14506f;font-size:.76rem;font-weight:800}.v78-badge.warning{background:#fff0d0;color:#805500}.v78-status.state-cerrado,.v78-status.state-ret_propietario,.v78-status.state-ret_pl_desguace{background:#e7f4e9;color:#25643a}.v78-status.state-pendiente,.v78-status.state-requerimiento{background:#fff0d0;color:#805500}.v78-traffic-grid{grid-template-columns:1.1fr .8fr 1fr 1.8fr .8fr}.v78-taxiincident-grid{grid-template-columns:1.1fr .85fr 2fr 1fr .7fr}.v78-immob-grid{grid-template-columns:1.1fr 1fr 1.6fr 1.3fr .7fr}.v78-abandoned-grid{grid-template-columns:.8fr 1.15fr 1.6fr 1.7fr 1fr}
@media(max-width:980px){.v78-module-switch{grid-template-columns:1fr}.v78-action-cards{grid-template-columns:1fr}.v78-record-head{display:none}.v78-record-row{grid-template-columns:1fr 1fr!important;align-items:start;border:1px solid #d4e0e8;border-radius:12px;margin:8px 10px;padding:12px}.v78-record-list{background:#f5f8fa}.v78-record-row>div:last-child{align-items:flex-start}}
@media(max-width:650px){.v78-record-row{grid-template-columns:1fr!important}.v78-switch-card{padding:13px}.v78-action-card{padding:12px}.v78-taxi-legend{display:grid;gap:6px}}

/* Módulo 78.3 · Denuncias JPT */
.v78-import-note{display:block;color:#6b7f8e;font-size:.72rem;margin-top:3px;text-align:right}
.v78-readonly-status{background:#f3f6f8!important;color:#17324a!important;font-weight:800}
.v78-clickable-row{cursor:pointer;transition:background .12s ease,box-shadow .12s ease}
.v78-clickable-row:hover{background:#eef7fc;box-shadow:inset 4px 0 0 #2b7db6}
.v78-clickable-row:focus{outline:2px solid #2b7db6;outline-offset:-2px}
.v78-badge.type-itv{background:#dceefe;color:#125a89}
.v78-badge.type-soa{background:#f6e8ff;color:#713a8f}
.v78-badge.type-otra{background:#fff0d0;color:#805500}
.v78-status.traffic-pending{background:#ffe3e3;color:#9a2424;border:1px solid #f3b8b8}
.v78-status.traffic-done{background:#dff4e4;color:#1f6a39;border:1px solid #a8d8b4}
body.v78-modal-open{overflow:hidden}
.v78-modal{display:none;position:fixed;inset:0;z-index:4000;padding:3vh 2vw}
.v78-modal.open{display:flex;align-items:center;justify-content:center}
.v78-modal-backdrop{position:absolute;inset:0;background:rgba(10,27,40,.62);backdrop-filter:blur(2px)}
.v78-modal-dialog{position:relative;z-index:1;width:min(96vw,1500px);max-height:94vh;background:#fff;border-radius:16px;box-shadow:0 28px 70px rgba(0,0,0,.28);overflow:hidden;display:flex;flex-direction:column}
.v78-modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid #d7e3eb;background:#f7fafc}
.v78-modal-head small{color:#60798c;font-weight:800;letter-spacing:.06em}.v78-modal-head h2{margin:2px 0 0;color:#16344d;font-size:1.35rem}
.v78-modal-close{border:0;background:#e7eef3;color:#17324a;border-radius:10px;width:38px;height:38px;font-size:1.7rem;line-height:1;cursor:pointer}
.v78-traffic-detail{display:grid;grid-template-columns:minmax(360px,40%) minmax(0,60%);min-height:70vh;overflow:hidden}
.v78-detail-data{padding:18px;overflow:auto;background:#fff}
.v78-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.v78-detail-grid>div{border:1px solid #d8e3ea;border-radius:10px;padding:10px 12px;background:#fbfdfe;display:flex;flex-direction:column;gap:4px;min-width:0}
.v78-detail-grid small,.v78-detail-observations small{font-size:.72rem;color:#667f91;font-weight:800;text-transform:uppercase;letter-spacing:.03em}
.v78-detail-grid b{color:#17324a;overflow-wrap:anywhere}
.v78-detail-observations{margin-top:12px;border:1px solid #d8e3ea;border-radius:10px;padding:11px 12px;background:#fbfdfe}.v78-detail-observations p{margin:5px 0 0;color:#29465b}
.v78-processed-box{margin-top:12px;padding:11px 13px;border-radius:10px;background:#e5f6e9;border:1px solid #b4ddbe;color:#215e35;display:flex;flex-direction:column;gap:3px}
.v78-status-form{margin-top:14px;padding-top:14px;border-top:1px solid #d8e3ea;display:grid;grid-template-columns:minmax(180px,260px) auto;align-items:end;gap:10px}.v78-status-form label{display:flex;flex-direction:column;gap:5px;font-weight:800;color:#17324a}.v78-status-form small{grid-column:1/-1;color:#687f90}
.v78-document-pane{background:#e9eff3;border-left:1px solid #cfdce4;display:flex;flex-direction:column;min-width:0}
.v78-document-head{height:50px;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f6f9fb;border-bottom:1px solid #ccd9e1;color:#17324a}
.v78-document-pane iframe{width:100%;height:calc(70vh - 50px);border:0;background:#fff}
.v78-document-empty{flex:1;min-height:420px;display:flex;align-items:center;justify-content:center;color:#758b9a;font-weight:800}
.v78-duplicate-dialog{width:min(92vw,620px)}.v78-duplicate-body{padding:18px}.v78-duplicate-body p{margin-top:0;color:#29465b}.v78-duplicate-card{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:10px;background:#fff5e1;border:1px solid #ebc779;color:#614711}.v78-duplicate-card span{font-size:.9rem}.v78-duplicate-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px;flex-wrap:wrap}.btn.danger{background:#a93636;color:#fff;border-color:#a93636}
@media(max-width:900px){.v78-traffic-detail{grid-template-columns:1fr;overflow:auto}.v78-document-pane{border-left:0;border-top:1px solid #cfdce4}.v78-document-pane iframe{height:52vh}.v78-modal{padding:1.5vh 1vw}.v78-modal-dialog{max-height:97vh}.v78-detail-grid{grid-template-columns:1fr}.v78-status-form{grid-template-columns:1fr}.v78-document-empty{min-height:250px}}

/* Módulo 78.4 · Taxis, fichas emergentes y calendario compacto */
.taxi-calendar-compact{grid-template-columns:repeat(7,minmax(94px,1fr))}
.taxi-day-compact{min-height:72px!important;padding:6px 7px!important;border:0;text-align:left;font:inherit;cursor:pointer}
.taxi-day-compact.empty{cursor:default}.taxi-day-compact .daynum{font-size:.95rem}
.taxi-stand-summary{display:flex;flex-direction:column;gap:4px;margin-top:2px}
.taxi-duty-pill{display:block;border-radius:6px;padding:4px 6px;font-size:.72rem;font-weight:800;line-height:1.12;white-space:normal}
.taxi-duty-pill.jose{background:#e5f3fb;border-left:4px solid #2e83b7;color:#164d70}
.taxi-duty-pill.emilio{background:#fff5df;border-left:4px solid #d49a2f;color:#6d4b0e}
.taxi-duty-pill.other{background:#eef1f4;border-left:4px solid #7a8b98;color:#3d5060}
.v78-taxi-legend i.jose{background:#2e83b7}.v78-taxi-legend i.emilio{background:#d49a2f}
.v78-taxi-day-dialog{width:min(94vw,980px)}.v78-taxi-day-detail{padding:16px;overflow:auto;background:#f5f8fa}
.v78-duty-section{background:#fff;border:1px solid #d6e2ea;border-radius:12px;overflow:hidden;margin-bottom:14px}.v78-duty-section:last-child{margin-bottom:0}
.v78-duty-section-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 13px;background:#eef5f9;border-left:5px solid #7a8b98}.v78-duty-section-head.jose{border-left-color:#2e83b7}.v78-duty-section-head.emilio{border-left-color:#d49a2f}.v78-duty-section-head h3{margin:0;color:#17324a;font-size:1rem}.v78-duty-section-head span{font-size:.78rem;color:#60798c}
.v78-duty-list{display:flex;flex-direction:column}.v78-duty-person{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 13px;border-top:1px solid #e2e9ee}.v78-duty-person:first-child{border-top:0}.v78-duty-person-main{display:flex;flex-direction:column;gap:2px;min-width:0}.v78-duty-person-main b{color:#17324a}.v78-duty-person-main strong{font-size:.9rem}.v78-duty-person-main small{color:#6a8191}.v78-duty-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.btn.danger-outline{background:#fff5f5;color:#9a2424;border-color:#dca8a8}
.v78-taxi-case-dialog{width:min(92vw,760px)}.v78-modal-form{padding:18px;overflow:auto}.v78-case-context{padding:11px 13px;border:1px solid #cfdde6;background:#f3f8fb;border-radius:10px;color:#17324a}
@media(max-width:800px){.taxi-calendar-compact{min-width:650px}.taxi-day-compact{min-height:65px!important}.v78-duty-person{grid-template-columns:1fr}.v78-duty-actions{justify-content:flex-start}}
.v78-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.v78-photo-grid a{display:block;border:1px solid #d6e1e8;border-radius:10px;overflow:hidden;background:#eef3f6}.v78-photo-grid img{display:block;width:100%;height:220px;object-fit:contain;background:#eef3f6}
@media(max-width:700px){.v78-photo-grid{grid-template-columns:1fr}.v78-photo-grid img{height:180px}}

/* Módulo 78.5 · firmas móviles, adjuntos JPT y guardias por turnos */
.v78-document-upload-zone{height:100%;min-height:360px;margin:0;display:grid;place-items:center;background:#edf4f8}
.v78-document-upload-zone label{width:100%;height:100%;min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;color:#5c778b;text-align:center;border:2px dashed transparent;transition:.16s ease}
.v78-document-upload-zone label:hover{background:#e5f1f8;border-color:#79aecd}.v78-upload-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #c8dbe7;font-size:28px;color:#176fa9}.v78-document-upload-zone small{font-size:.8rem}.v78-document-replace{position:absolute;right:14px;bottom:14px;z-index:3}.v78-document-pane{position:relative}
.v78-day-stand{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;margin-bottom:12px;border:1px solid #d4e1ea;border-radius:11px;background:#fff}.v78-day-stand b{font-size:1.05rem;color:#173d60}.v78-day-stand small{color:#708596}
.v78-shift-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.v78-shift-card{background:#fff;border:1px solid #d5e2ea;border-radius:14px;overflow:hidden}.v78-shift-head{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#f0f7fb;border-bottom:1px solid #dce7ee}.v78-shift-card.night .v78-shift-head{background:#f2f3f9}.v78-shift-head>span{font-size:24px}.v78-shift-head h3{margin:0;color:#173b5e;font-size:1rem}.v78-shift-head small{color:#718494}.v78-shift-empty{padding:18px;text-align:center;color:#8193a1;font-size:.86rem}
.v78-signature-box{border:1px solid #cfdde6;border-radius:12px;padding:12px;background:#f8fbfd}.v78-signature-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.v78-signature-head b,.v78-signature-head small{display:block}.v78-signature-head small{color:#708493;margin-top:2px}.v78-signature-head select{max-width:260px}.v78-sign-pad-wrap{margin-top:10px}.v78-sign-pad{width:100%;height:130px;background:#fff;border:1px dashed #8fa8ba;border-radius:10px;touch-action:none}.v78-sign-actions{margin-top:7px;display:flex;justify-content:flex-end}.v78-stored-sign{margin-top:12px;border:1px solid #d9e3e9;border-radius:10px;padding:10px;background:#fff}.v78-stored-sign small{display:block;color:#6d8292}.v78-stored-sign img{display:block;max-width:320px;max-height:120px;object-fit:contain;margin-top:6px;background:#fff}
@media(max-width:800px){.v78-shift-columns{grid-template-columns:1fr}.v78-signature-head{align-items:stretch;flex-direction:column}.v78-signature-head select{max-width:none;width:100%}.v78-document-upload-zone,.v78-document-upload-zone label{min-height:260px}}

/* Módulo 78.6 · calendario, anulaciones y expedientes abandonados */
.taxi-day-compact{min-height:58px!important;padding:5px 6px!important;text-align:center!important;position:relative}
.taxi-day-compact .daynum{display:block;text-align:left;margin-bottom:2px}
.taxi-stand-summary{align-items:center;justify-content:center;margin-top:0}
.taxi-duty-pill{display:inline-flex!important;width:auto!important;max-width:94%;justify-content:center;text-align:center;padding:3px 8px!important;white-space:nowrap!important}
.taxi-day-compact.is-today{outline:3px solid #1d79bb;outline-offset:-3px;background:#eaf5fc!important;box-shadow:inset 0 0 0 1px #fff}
.taxi-day-compact.is-today .daynum{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 6px;border-radius:999px;background:#1d79bb;color:#fff}
.v78-annulled-row{opacity:.58;background:#f3f4f5!important;text-decoration:line-through}
.v78-inline-x{display:inline-flex!important;margin-top:4px}.v78-x-btn{width:26px;height:26px;border:1px solid #d9a7a7;border-radius:7px;background:#fff4f4;color:#a32424;font-weight:900;font-size:18px;line-height:1;cursor:pointer}.v78-x-btn:hover{background:#ffe5e5}
.v78-document-actions{position:absolute;right:14px;bottom:14px;z-index:3;display:flex;gap:7px;align-items:center;flex-wrap:wrap}.v78-document-actions form{margin:0}
.v78-linked-register{margin-top:14px;border-top:1px solid #dbe5eb;padding-top:12px}.v78-linked-register h3{margin:0 0 8px;color:#173b5e;font-size:1rem}.v78-linked-doc{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:8px 0;border-top:1px solid #edf1f4}.v78-linked-doc:first-of-type{border-top:0}.v78-linked-doc small{color:#708493;margin-right:auto}

/* Motor 78.14 */
.v78-reason-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;padding:12px;border:1px solid #d6e1ea;border-radius:12px;background:#f8fbfd}.v78-reason-grid label{display:flex;align-items:flex-start;gap:8px;font-weight:600}.v78-reason-grid input{margin-top:3px}@media(max-width:760px){.v78-reason-grid{grid-template-columns:1fr}}

/* Módulo 81.0 · Libro de novedades: teléfono corporativo y captura rápida */
.corp-phone-panel{margin-top:12px;padding:12px;border:1px solid #cfe0ed;border-radius:14px;background:#f8fbfd}
.corp-phone-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.corp-phone-head div{display:flex;flex-direction:column;gap:2px}.corp-phone-head small{color:#60778a}
.corp-auto-badge{font-size:11px;font-weight:800;letter-spacing:.05em;color:#096a46;background:#e6f7ef;border:1px solid #b8e6d2;padding:5px 8px;border-radius:999px}
.corp-phone-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.corp-phone-kpis>div{background:#fff;border:1px solid #d9e6ef;border-radius:10px;padding:9px;text-align:center}.corp-phone-kpis b{display:block;font-size:20px;color:#0b4f77}.corp-phone-kpis span{display:block;font-size:12px;color:#62798a}
.corp-phone-details{margin-top:10px}.corp-phone-details summary{cursor:pointer;font-weight:700;color:#174f70}.corp-phone-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}.corp-phone-columns>div{background:#fff;border:1px solid #d9e6ef;border-radius:10px;padding:10px;max-height:250px;overflow:auto}.corp-phone-columns h4{margin:0 0 8px}.corp-row{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid #edf2f5;font-size:13px}.corp-row:last-child{border-bottom:0}.corp-row b{font-weight:650}.corp-row small{color:#6a7f8f}
.novelty-video{margin-top:10px}.novelty-video span{display:block;font-size:12px;font-weight:700;margin-bottom:4px}.novelty-video video{display:block;width:min(460px,100%);max-height:360px;border-radius:10px;background:#111}
@media(max-width:700px){.corp-phone-kpis{grid-template-columns:repeat(2,1fr)}.corp-phone-columns{grid-template-columns:1fr}.corp-row{grid-template-columns:auto 1fr}.corp-row small{grid-column:2}.corp-phone-head{align-items:flex-start}.corp-auto-badge{flex:0 0 auto}}

/* Módulo 81.0.1 · histórico plegable del Libro de novedades */
.history-heading-collapsible{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:32px;margin-bottom:10px}
.history-heading-collapsible h2{margin:0}
.history-collapsed-hint{margin:4px 0 0;color:#6d8398;font-size:.92rem}
.history-toggle-btn{white-space:nowrap}
.history-collapsible-body[hidden]{display:none!important}
.history-period-inside{display:flex;justify-content:flex-end;gap:10px;margin:0 0 10px}
@media (max-width:700px){.history-heading-collapsible{align-items:stretch;flex-direction:column}.history-toggle-btn{width:100%}.history-period-inside{justify-content:stretch}.history-period-inside label{flex:1}}

/* Módulo 81.0.1 · histórico plegable del Libro de novedades */
.history-heading-collapsible{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:32px;margin-bottom:10px}
.history-heading-collapsible h2{margin:0}
.history-collapsed-hint{margin:4px 0 0;color:#6d8398;font-size:.92rem}
.history-toggle-btn{white-space:nowrap}
.history-collapsible-body[hidden]{display:none!important}
.history-period-inside{display:flex;justify-content:flex-end;gap:10px;margin:0 0 10px}
@media (max-width:700px){.history-heading-collapsible{align-items:stretch;flex-direction:column}.history-toggle-btn{width:100%}.history-period-inside{justify-content:stretch}.history-period-inside label{flex:1}}


/* Módulo 81.0.2 · Libro de novedades: navegación, plegables y teléfono corporativo */
.logbook81-main-tabs{display:flex;gap:10px;margin:8px 0 14px;border-bottom:1px solid #cdddea;padding:0 2px}
.logbook81-main-tabs button{border:0;background:#eaf1f7;color:#163b5e;font-weight:800;font-size:16px;padding:12px 24px;border-radius:10px 10px 0 0;cursor:pointer}
.logbook81-main-tabs button.active{background:#1478c9;color:#fff;box-shadow:0 -2px 0 #0d5e9f inset}
.logbook81-history-view{padding-top:2px}.logbook81-history-head{display:flex;justify-content:space-between;align-items:end;margin:8px 0 6px}.logbook81-history-head h2{margin:0;color:#0d385d}.logbook81-history-head p{margin:3px 0 0;color:#67829a}
.logbook81-clickhead{cursor:pointer;user-select:none}.logbook81-clickhead:hover{background:#edf6fc}.logbook81-chevron{margin-left:auto;font-size:20px;color:#315e7e;font-weight:900}.logbook81-section.logbook81-section-collapsed>.logbook81-section-body{display:none}.logbook81-section.logbook81-section-collapsed{padding-bottom:0}
.logbook81-phone-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:4px 0}.logbook81-activity-card{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;width:100%;background:#fff;border:1px solid #cfe0ed;border-radius:12px;padding:14px;text-align:left;cursor:pointer;color:#153d5e}.logbook81-activity-card:hover{border-color:#4d9bd2;background:#f6fbff}.logbook81-activity-icon{font-size:28px}.logbook81-activity-card b{display:block;font-size:16px}.logbook81-activity-card small{display:block;color:#66839b;margin-top:2px}.logbook81-activity-kpis{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.logbook81-activity-kpis i{font-style:normal;font-size:11px;background:#edf5fa;border-radius:99px;padding:4px 7px;color:#466b84}
.logbook81-corp-modal{position:fixed;inset:0;display:none;z-index:10050}.logbook81-corp-modal.open{display:block}.logbook81-corp-backdrop{position:absolute;inset:0;background:rgba(8,28,45,.48)}.logbook81-corp-panel{position:relative;margin:7vh auto;width:min(820px,92vw);max-height:84vh;overflow:auto;background:#fff;border-radius:14px;box-shadow:0 18px 60px rgba(0,0,0,.28);padding:0 18px 18px}.logbook81-corp-head{position:sticky;top:0;z-index:2;background:#fff;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d9e5ee;padding:16px 2px 12px}.logbook81-corp-head h3{margin:0;color:#113e61}.logbook81-corp-head small{color:#6b8295}.logbook81-corp-head button{border:0;background:#eef4f8;border-radius:8px;width:34px;height:34px;font-size:24px;cursor:pointer}.logbook81-corp-content{padding-top:12px}.logbook81-corp-summary{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.logbook81-corp-summary span{background:#edf6fb;border:1px solid #d1e4ef;border-radius:10px;padding:8px 12px}.logbook81-corp-summary b{color:#0d679f;font-size:20px;margin-right:4px}
.logbook81-saved-novelty{--nov-color:#1f7ae0;border-left:5px solid var(--nov-color)}.logbook81-saved-novelty>summary{display:grid;grid-template-columns:auto 12px 1fr auto;align-items:center;gap:9px}.logbook81-category-dot{width:10px;height:10px;border-radius:50%;background:var(--nov-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--nov-color) 16%,transparent)}.logbook81-saved-novelty>summary strong{color:var(--nov-color)}.logbook81-summary-chevron{margin-left:auto;color:#55768f}.logbook81-draft-head{cursor:pointer}.logbook81-draft-head .logbook81-draft-category-summary{margin-left:10px;color:#567890;font-weight:700}.logbook81-draft.logbook81-draft-collapsed .logbook81-draft-body{display:none}
.logbook81-draft .alpha31-novelty-grid{grid-template-columns:minmax(260px,1fr) minmax(260px,1fr)}.logbook81-draft .wide{grid-column:1/-1}.logbook81-media-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mobile-only81{display:none!important}
@media(max-width:760px){.logbook81-main-tabs{position:sticky;top:0;z-index:40;background:#f5f8fb;padding-top:4px}.logbook81-main-tabs button{flex:1;font-size:14px;padding:11px 8px}.logbook81-phone-buttons{grid-template-columns:1fr}.logbook81-activity-card{grid-template-columns:auto 1fr auto}.logbook81-activity-kpis{grid-column:2/4;justify-content:flex-start}.logbook81-draft .alpha31-novelty-grid{grid-template-columns:1fr}.logbook81-media-actions{grid-template-columns:1fr 1fr}.mobile-only81{display:flex!important}.logbook81-corp-panel{margin:3vh auto;max-height:92vh;width:96vw}.logbook81-saved-novelty>summary{grid-template-columns:auto 10px 1fr auto}.logbook81-saved-novelty>summary strong{font-size:13px}}


/* Módulo 81.0.3 · personal limpio y medios según dispositivo */
@media (min-width:761px){
  .logbook81-media-responsive{grid-template-columns:1fr 1fr!important}
  .logbook81-media-responsive>.alpha36-photo-picker,.logbook81-media-responsive>.alpha36-video-picker{display:block!important}
}

/* Módulo 81.0.4: separar título y texto secundario en cabeceras del Libro de novedades. */
.alpha32-shift-sheet .shift-section-title>div.logbook81-title-stack{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:2px!important;min-width:0!important}
.alpha32-shift-sheet .shift-section-title .logbook81-title-stack h3{display:block!important;margin:0!important;line-height:1.15!important}
.alpha32-shift-sheet .shift-section-title .logbook81-title-stack small{display:block!important;margin-top:2px!important;line-height:1.2!important;color:#6f8797!important;font-size:.78rem!important;font-weight:500!important}
@media(max-width:900px){.alpha32-shift-sheet .shift-section-title .logbook81-title-stack small{font-size:.72rem!important}}


/* Módulo 81.0.5: cabeceras en una sola línea con separación clara. */
.alpha32-shift-sheet .shift-section-title>div.logbook81-title-stack{display:flex!important;flex-direction:row!important;align-items:baseline!important;justify-content:flex-start!important;gap:28px!important;min-width:0!important;flex:1 1 auto!important;overflow:hidden!important}
.alpha32-shift-sheet .shift-section-title .logbook81-title-stack h3{display:block!important;margin:0!important;line-height:1.2!important;flex:0 0 auto!important;white-space:nowrap!important}
.alpha32-shift-sheet .shift-section-title .logbook81-title-stack small{display:block!important;margin:0!important;line-height:1.2!important;color:#6f8797!important;font-size:.82rem!important;font-weight:500!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;min-width:0!important}
@media(max-width:760px){.alpha32-shift-sheet .shift-section-title>div.logbook81-title-stack{gap:12px!important}.alpha32-shift-sheet .shift-section-title .logbook81-title-stack small{font-size:.72rem!important}}
