/* Menú, barra de arriba, inicio, pestañas, calendario y chat: mismo aspecto que SETAN (ref. conversación 07/10:
   «pantallas, iconos, todo igual pero para Astotrans»). Es una copia: si SETAN cambia, este programa no cambia.
   Los colores de los iconos van en clases (.c-…) porque aquí no se permiten estilos en línea. */
.c-teal{--ico1:#1FA595;--ico2:#0E5F5E;} .c-gris{--ico1:#A7AEB8;--ico2:#5B636E;} .c-violeta{--ico1:#8B93FF;--ico2:#4F46E5;}
.c-azul{--ico1:#4DB2FF;--ico2:#0A64D6;} .c-rojo{--ico1:#FF8A80;--ico2:#D63A2F;} .c-rosa{--ico1:#F472B6;--ico2:#BE185D;}
.c-morado{--ico1:#B794F6;--ico2:#7C3AED;} .c-verde{--ico1:#5BD08A;--ico2:#1E8449;} .c-naranja{--ico1:#FFB45C;--ico2:#D9730D;}
.c-turquesa{--ico1:#2DD4BF;--ico2:#0F766E;} .c-pizarra{--ico1:#9AA6B8;--ico2:#4A5568;} .c-ambar{--ico1:#F5C451;--ico2:#B7791F;}

/* ---------- Barra de iconos de la izquierda ---------- */
.sidebar{
  width:92px;flex-shrink:0;background:linear-gradient(185deg,#FFFFFF 0%,#F5F6F2 100%);color:var(--ink);border-right:1px solid var(--line);
  display:flex;flex-direction:column;padding:12px 0 10px;box-shadow:var(--shadow-sm);z-index:2;
  position:sticky;top:0;height:100vh;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;
}
.nav-btn{
  display:flex;flex-direction:column;align-items:center;gap:5px;width:100%;padding:7px 4px 8px;margin:1px 0;position:relative;
  font-family:'Inter',sans-serif;font-size:10.5px;font-weight:600;line-height:1.2;text-align:center;color:#4A545E;text-decoration:none;
}
.nav-btn:hover{color:var(--ink);}
.nav-btn.active{color:var(--amber-deep);font-weight:700;}
.nav-text{display:block;max-width:84px;overflow-wrap:break-word;}
.nav-icon{width:42px;height:42px;border-radius:13px;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  transition:transform .12s ease,box-shadow .12s ease;}
.nav-icon svg{width:21px;height:21px;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.nav-icon.app-ico{background:linear-gradient(160deg,var(--ico1),var(--ico2));color:#fff;box-shadow:0 2px 5px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.25);}
.nav-icon.app-ico svg{stroke:#fff;}
.nav-btn:hover .nav-icon{transform:scale(1.06);}
.nav-btn.active .nav-icon{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--amber), 0 3px 8px rgba(0,0,0,.2);}
/* El icono del calendario, como el del iPhone: el mes en rojo y el día debajo. */
.nav-icon.cal-app{background:#fff;color:#1C1C1E;overflow:hidden;flex-direction:column;justify-content:flex-start;box-shadow:0 2px 5px rgba(0,0,0,.18), 0 0 0 1px rgba(0,0,0,.06);}
.nav-icon.cal-app b{display:block;width:100%;background:linear-gradient(180deg,#FF5A4E,#E5352B);color:#fff;font:700 9px/13px 'Inter',sans-serif;letter-spacing:.06em;text-align:center;text-transform:uppercase;}
.nav-icon.cal-app i{display:block;font:600 20px/27px 'Inter',sans-serif;font-style:normal;color:#1C1C1E;text-align:center;letter-spacing:-.02em;}
.chat-badge{background:#D64545;color:#fff;font-size:10.5px;font-weight:700;line-height:1;padding:3px 6px;border-radius:9px;flex-shrink:0;}
.nav-btn .chat-badge{position:absolute;top:2px;right:16px;padding:2px 5px;}
.chat-badge-topbar{position:absolute;top:-6px;right:-6px;}
.chat-badge.en-linea{margin-left:7px;}

/* ---------- Barra de arriba: logo, nombre, Inicio, Sistema, avisos y usuario ---------- */
.topbar > *{flex-shrink:0;}
.brand-top{display:flex;align-items:center;width:170px;height:58px;}
.brand-top img{max-width:100%;max-height:100%;display:block;}
.topbar-empresa{flex:1 1 auto;min-width:120px;text-align:center;font:800 20px 'Inter',sans-serif;color:var(--ink);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 12px;}
.topbar .global-search{flex:0 1 250px;}
.top-app{display:inline-flex;align-items:center;gap:8px;background:none;border:0;padding:3px 10px 3px 3px;border-radius:12px;cursor:pointer;font:600 13.5px 'Inter',sans-serif;color:var(--ink);text-decoration:none;transition:background .12s ease;}
.top-app:hover{background:rgba(19,26,34,.06);}
.top-app small{font-size:10px;color:var(--ink-soft);margin-left:-3px;}
.top-ico{width:34px;height:34px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:linear-gradient(160deg,var(--ico1),var(--ico2));box-shadow:0 2px 5px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.25);}
.top-ico svg{width:19px;height:19px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.top-ico.mini{width:28px;height:28px;border-radius:8px;} .top-ico.mini svg{width:16px;height:16px;}
.top-caja{position:relative;display:inline-flex;}
.top-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:600;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-md);padding:6px;min-width:230px;display:flex;flex-direction:column;gap:2px;}
.top-menu-op{display:flex;align-items:center;gap:10px;border-radius:8px;padding:5px 10px 5px 5px;font:500 13.5px 'Inter',sans-serif;color:var(--ink);text-decoration:none;}
.top-menu-op:hover{background:rgba(19,26,34,.06);}
.campana{position:relative;}
.usuario-top{display:flex;flex-direction:column;align-items:flex-end;gap:1px;font-size:12.5px;line-height:1.35;}
.usuario-top .enlace-salir{margin-top:0;}
@media (max-width:1450px){ .topbar .top-app{font-size:0;gap:0;padding:3px;} .topbar .top-app small{display:none;} .brand-top{width:130px;} .topbar-empresa{font-size:16px;} }
@media (max-width:1150px){ .usuario-top .topbar-date{display:none;} }

/* (La barra de cada pantalla —volver, camino y — ▢ ✕— está en iterya.css desde el 08/10.) */
body.escritorio .inicio-escritorio .view-title, body.escritorio .inicio-escritorio .view-eyebrow{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.6),0 0 12px rgba(0,0,0,.3);}

/* ---------- Inicio: los departamentos como apps ---------- */
/* Escritorio con fondo de pantalla y apps con foto, como en SETAN (ref. conversación 07/10). */
.inicio-escritorio{min-height:calc(100vh - 150px);padding:18px 4px;display:flex;flex-direction:column;}
.inicio-saludo{font-family:'Oswald',sans-serif;font-size:27px;font-weight:600;margin:0 0 4px;}
.inicio-apps{display:grid;grid-template-columns:repeat(auto-fill,120px);gap:26px 14px;justify-items:center;margin:26px 0 34px;}
.inicio-app{display:flex;flex-direction:column;align-items:center;gap:8px;width:104px;text-decoration:none;color:var(--ink);position:relative;}
.ia-foto{width:84px;height:84px;border-radius:22px;background:#3a3f47 var(--foto) center/cover no-repeat;box-shadow:0 8px 20px -6px rgba(0,0,0,.6),inset 0 0 0 1px rgba(255,255,255,.18);transition:transform .15s ease;}
.inicio-app:hover .ia-foto, .inicio-app:focus-visible .ia-foto{transform:translateY(-3px) scale(1.05);}
.ia-nombre{font-size:13.5px;font-weight:700;text-align:center;line-height:1.2;}
.inicio-app .chat-badge{position:absolute;top:-5px;right:4px;font-size:12px;padding:4px 7px;}
.inicio-cambiar-fondo{margin-top:auto;align-self:flex-end;background:rgba(255,255,255,.75);border:1px solid rgba(255,255,255,.6);border-radius:20px;padding:7px 14px;font:600 12px 'Inter',sans-serif;color:var(--ink);cursor:pointer;}
.inicio-cambiar-fondo:hover{background:#fff;}
body.escritorio::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:var(--fondo-escritorio) center/cover no-repeat #2b3440;}
body.escritorio .sidebar{background:rgba(255,255,255,.22);border-right-color:rgba(255,255,255,.35);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:none;}
body.escritorio .sidebar .nav-text{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.6);}
body.escritorio .topbar{position:relative;z-index:60;background:rgba(255,255,255,.68);border-bottom-color:rgba(255,255,255,.4);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:0 0 12px 12px;padding-left:14px;padding-right:14px;}
body.escritorio .inicio-saludo{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.6),0 0 12px rgba(0,0,0,.3);}
body.escritorio .inicio-app{color:#fff;}
body.escritorio .ia-nombre{text-shadow:0 1px 4px rgba(0,0,0,.8),0 0 10px rgba(0,0,0,.55);}
#escMenu{position:fixed;z-index:3000;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.2);padding:5px;min-width:240px;font:500 13.5px 'Inter',sans-serif;}
#escMenu button{display:flex;gap:10px;align-items:center;width:100%;background:none;border:0;border-radius:7px;padding:8px 10px;cursor:pointer;text-align:left;font:inherit;color:var(--ink);}
#escMenu button:hover{background:rgba(19,26,34,.06);}
.esc-fondos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;max-height:62vh;overflow-y:auto;padding:4px;}
.esc-fop{background:none;border:0;padding:0;cursor:pointer;display:flex;flex-direction:column;gap:5px;font:600 12.5px 'Inter',sans-serif;color:var(--ink);text-align:center;}
.esc-fop span{display:block;aspect-ratio:16/10;border-radius:10px;border:3px solid transparent;background:#E5E7EB center/cover no-repeat;box-shadow:0 1px 3px rgba(0,0,0,.15);}
.esc-fop.sel span{border-color:var(--amber);box-shadow:0 0 0 2px rgba(19,133,123,.3);}
.esc-fop:hover span{transform:scale(1.03);}

/* Foto del departamento detrás de sus pantallas: muy suave (velo del color del papel al 74 %) y fija, en su propia capa. */
.content.con-fondo::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;will-change:transform;
  background:linear-gradient(rgba(238,239,234,.74),rgba(238,239,234,.74)), var(--foto-seccion) center/cover no-repeat;}
.content.con-fondo .view-desc, .content.con-fondo .view-eyebrow, .content.con-fondo .pestanas-grupo{text-shadow:0 0 4px #fff,0 0 8px rgba(255,255,255,.9);}
@media print{ body.escritorio::before, .content.con-fondo::before{display:none;} }

/* ---------- Calendario ---------- */
.cal-cabecera{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.cal-mes{font-family:'Oswald',sans-serif;font-size:20px;font-weight:600;text-transform:capitalize;min-width:190px;}
.cal-rejilla{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);}
.cal-dia-nombre{padding:7px 8px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);border-right:1px solid var(--line);border-bottom:2px solid var(--ink);}
.cal-dia{min-height:104px;padding:5px 6px 7px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;cursor:pointer;display:flex;flex-direction:column;gap:3px;min-width:0;}
.cal-dia:hover{background:#FBFBF8;}
.cal-dia.otro-mes{background:#F5F6F2;color:var(--ink-faint);}
.cal-dia.finde{background:#FAFAF6;}
.cal-num{font:600 12px 'JetBrains Mono',monospace;align-self:flex-end;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;}
.cal-dia.hoy .cal-num{background:#E5352B;color:#fff;}
.cal-ev{display:block;width:100%;border:0;text-align:left;font:600 11px 'Inter',sans-serif;padding:3px 6px;border-radius:5px;background:var(--amber-soft);color:var(--amber-deep);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none;cursor:pointer;}
.cal-ev.privado{background:#E7E5F8;color:#4F46E5;}
.cal-ev.curso{background:#DDEBFB;color:#0A64D6;}
.cal-ev.caducidad{background:var(--red-soft);color:var(--red);}
.cal-ev.ausencia{background:#F3E8FD;color:#7C3AED;}
.cal-ev.seguro{background:#FDEBD3;color:#B7600A;}
.cal-leyenda{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;}
.cal-leyenda .cal-ev{width:auto;cursor:default;}

/* ---------- Chat ---------- */
.chat{display:grid;grid-template-columns:240px minmax(0,1fr);gap:0;padding:0;overflow:hidden;height:calc(100vh - 250px);min-height:380px;}
.chat-lista{border-right:1px solid var(--line);overflow-y:auto;background:#FBFBF8;}
.chat-con{display:flex;align-items:center;gap:10px;width:100%;border:0;border-bottom:1px solid var(--line);background:none;padding:12px 14px;font:600 13px 'Inter',sans-serif;color:var(--ink);cursor:pointer;text-align:left;}
.chat-con:hover{background:rgba(19,26,34,.05);}
.chat-con.activa{background:var(--amber-soft);}
.chat-con .chat-badge{margin-left:auto;}
.chat-inicial{width:32px;height:32px;border-radius:50%;background:linear-gradient(160deg,var(--ico1),var(--ico2));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0;}
.chat-panel{display:flex;flex-direction:column;min-width:0;}
.chat-mensajes{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:8px;}
.chat-msg{max-width:70%;align-self:flex-start;background:#F1F2ED;border-radius:14px 14px 14px 4px;padding:8px 12px;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere;}
.chat-msg.mio{align-self:flex-end;background:var(--amber-soft);border-radius:14px 14px 4px 14px;}
.chat-msg small{display:block;font:500 10px 'JetBrains Mono',monospace;color:var(--ink-faint);margin-bottom:2px;}
.chat-escribir{display:flex;gap:10px;padding:12px 14px;border-top:1px solid var(--line);}
.chat-escribir input{flex:1;font:inherit;font-size:13.5px;padding:10px 14px;border:1px solid var(--line-strong);border-radius:20px;}
.chat-escribir input:focus{outline:none;border-color:var(--amber);box-shadow:0 0 0 3px rgba(19,133,123,.15);}

.barra-cuenta{height:8px;border-radius:4px;background:var(--amber);min-width:2px;}
td.barra{width:30%;min-width:120px;}

@media(max-width:840px){
  .sidebar{position:static;width:100%;height:auto;flex-direction:row;overflow-x:auto;padding:8px;}
  .sidebar nav{display:flex;gap:4px;}
  .nav-btn{width:76px;}
  .topbar{flex-wrap:wrap;padding:10px 0;gap:8px;}
  .brand-top{width:110px;height:40px;}
  .topbar-empresa{display:none;}
  .topbar .global-search{flex:1 1 100%;order:5;max-width:none;}
  .chat{grid-template-columns:1fr;height:auto;}
  .chat-lista{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line);}
  .chat-con{width:auto;border-bottom:0;white-space:nowrap;}
  .chat-mensajes{min-height:320px;}
  .cal-dia{min-height:70px;}
  .inicio-apps{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media print{ .barra-volver, #barraMinimizadas{display:none !important;} }

/* ---------- Consejero de seguridad (14/10): papeles dentro de la ventana de cada ficha ---------- */
.consejo-papeles{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);}
.consejo-papeles .panel-title{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.consejo-docs{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:6px;}
.consejo-docs li{display:flex;align-items:center;gap:10px;}
.consejo-docs li a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

/* ---------- Comunicados del portal (14/10): barra de «leído» sin estilos en línea ---------- */
.leidos{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font-size:12.5px;}
.leidos-barra{display:inline-block;width:70px;height:7px;border-radius:4px;background:var(--line);overflow:hidden;}
.leidos-barra span{display:block;height:100%;background:var(--green);}
.leidos-0{width:0%;} .leidos-10{width:10%;} .leidos-20{width:20%;} .leidos-30{width:30%;} .leidos-40{width:40%;} .leidos-50{width:50%;} .leidos-60{width:60%;} .leidos-70{width:70%;} .leidos-80{width:80%;} .leidos-90{width:90%;} .leidos-100{width:100%;}

/* ---------- Chatterya (15/10): equipo y socios, vistos como WhatsApp pero en verde ---------- */
.chat.chatterya{grid-template-columns:290px minmax(0,1fr);}
.chat-seccion{padding:10px 14px 6px;font:700 10.5px 'Inter',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);background:#F3F4F6;border-bottom:1px solid var(--line);}
.chat-buscar{display:block;width:calc(100% - 20px);margin:8px 10px;padding:7px 12px;border:1px solid var(--line-strong);border-radius:16px;font:inherit;font-size:13px;}
.chat-con-texto{display:flex;flex-direction:column;min-width:0;flex:1;}
.chat-con-texto b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.chat-con-texto small{font-weight:400;font-size:11.5px;color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.chat-cabecera{display:flex;flex-direction:column;gap:1px;padding:10px 16px;border-bottom:1px solid var(--line);min-height:52px;}
.chat-cabecera small{font-size:11.5px;color:var(--ink-soft);}
.chat-cabecera a{color:var(--ink);text-decoration:none;}
.chat-hora{display:block;text-align:right;font-size:10.5px;color:var(--ink-faint);margin-top:3px;white-space:nowrap;}
.vv{font-size:12px;letter-spacing:-3px;margin-left:4px;color:#9CA3AF;font-weight:700;}
.vv.leido{color:#16A34A;}
.acciones-ficha{display:flex;justify-content:flex-end;margin-bottom:12px;}
@media (max-width:840px){ .chat.chatterya{grid-template-columns:1fr;} .chatterya .chat-lista{display:block;max-height:220px;overflow-y:auto;} }
/* ---------- Iterya @: cuentas de correo (15/10) ---------- */
.form-correo .ayuda{display:block;margin-top:3px;font-size:11.5px;color:var(--ink-soft);line-height:1.35;}
.pasos-proveedor{margin:4px 0 12px;padding:10px 14px;border-radius:10px;background:#EFF6FF;border:1px solid #BFDBFE;font-size:13px;}
.pasos-proveedor.aviso{background:#FFF7ED;border-color:#FED7AA;}
.pasos-proveedor ol{margin:6px 0 0;padding-left:20px;} .pasos-proveedor li{margin:3px 0;}
.resultado-correo{display:flex;flex-direction:column;gap:6px;margin:10px 0;}
.prueba-correo{padding:8px 12px;border-radius:8px;font-size:13px;}
.prueba-correo.bien{background:var(--green-soft);} .prueba-correo.mal{background:var(--red-soft);}