/* 💬 Asistente de Atlas (módulo compartido: editar aquí y copiar con sync-asistente.sh) */
.asis-boton { position: fixed; left: 18px; bottom: 18px; z-index: 9000; width: 54px; height: 54px; border-radius: 50%; border: none; background: #1f5fbf; color: #fff; font-size: 26px; cursor: pointer; box-shadow: 0 4px 14px rgba(0,0,0,.25); }
.asis-boton.activo { background: #e8590c; }
.asis-caja { position: fixed; left: 18px; bottom: 82px; z-index: 9000; width: min(420px, calc(100vw - 36px)); height: min(560px, calc(100vh - 120px)); background: #fff; border: 1.5px solid #c9d6ea; border-radius: 14px; box-shadow: 0 10px 30px rgba(0,0,0,.22); display: flex; flex-direction: column; overflow: hidden; font-size: 14px; }
.asis-caja[hidden] { display: none; }
.asis-cab { display: flex; align-items: center; gap: 6px; padding: 8px 10px; background: #f2f6fc; border-bottom: 1px solid #dde6f3; }
.asis-cab b { flex: 1; }
.asis-cab button, .asis-cab select { border: 1px solid #c9d6ea; background: #fff; border-radius: 6px; padding: 3px 7px; cursor: pointer; font-size: 13px; color: #222; }
.asis-web { font-size: 13px; display: inline-flex; align-items: center; gap: 2px; cursor: pointer; }
.asis-msgs { flex: 1; overflow-y: auto; padding: 10px; display: flex; flex-direction: column; gap: 8px; }
.asis-m { padding: 8px 11px; border-radius: 12px; line-height: 1.4; max-width: 88%; }
.asis-user { align-self: flex-end; background: #1f5fbf; color: #fff; }
.asis-assistant { align-self: flex-start; background: #f4f1ea; color: #222; }
.asis-pensando { opacity: .6; font-style: italic; }
.asis-vacio { color: #6b6659; font-size: 13px; line-height: 1.45; }
.asis-form { display: flex; gap: 6px; padding: 8px; border-top: 1px solid #dde6f3; align-items: flex-end; }
.asis-txt { flex: 1; resize: none; border: 1px solid #c9d6ea; border-radius: 8px; padding: 6px 8px; font: inherit; }
.asis-mic, .asis-env { width: 40px; height: 40px; border-radius: 50%; border: none; background: #1f5fbf; color: #fff; font-size: 18px; cursor: pointer; }
.asis-mic { background: #2b8a3e; }
.asis-mic.activo { background: #c92a2a; animation: asis-lat 1s infinite; }
@keyframes asis-lat { 50% { transform: scale(1.12); } }
.asis-panel { display: flex; flex-direction: column; gap: 6px; padding: 8px 10px; background: #fbfaf6; border-bottom: 1px solid #ece6d6; font-size: 13px; }
.asis-panel[hidden] { display: none; }
.asis-panel label { display: flex; align-items: center; gap: 6px; }
.asis-panel select { flex: 1; min-width: 0; }
.asis-panel input[type=range] { flex: 1; }
.asis-probar { align-self: flex-start; border: 1px solid #1f5fbf !important; background: #fff !important; color: #1f5fbf !important; font-size: 13px; border-radius: 6px; padding: 3px 9px; cursor: pointer; }
.asis-aj { margin-top: 8px; padding: 8px; background: #fff; border: 1px solid #d8cfb8; border-radius: 8px; font-size: 13px; display: flex; flex-direction: column; gap: 3px; }
.asis-aj span { color: #6b6659; }
.asis-aj button { align-self: flex-start; margin-top: 4px; border: 1px solid #1f5fbf !important; background: #fff !important; color: #1f5fbf !important; border-radius: 6px; padding: 3px 9px; cursor: pointer; font-size: 13px; }
.asis-aj .asis-aj-si { background: #2b8a3e !important; color: #fff !important; border-color: #2b8a3e !important; }
.asis-aj-ok { color: #2b8a3e; }
/* 📝 Cuaderno para Claude */
.asis-cab .asis-cuad.activo { background: #fff3bf; border-color: #e8a33d; }
.asis-caja.modo-cuaderno .asis-msgs { background: #fffbea; }
.asis-nota { background: #fff; border: 1px solid #ecd9b0; border-radius: 8px; padding: 7px 9px; line-height: 1.4; }
.asis-nota.hecho { opacity: .65; }
.asis-nota-cab { display: flex; align-items: center; gap: 6px; font-size: 12px; color: #6b6659; margin-bottom: 3px; }
.asis-nota-cab button { margin-left: auto; border: none; background: none; cursor: pointer; font-size: 13px; }
.asis-nota-resp { margin-top: 5px; padding-top: 5px; border-top: 1px dashed #ecd9b0; color: #2b8a3e; }
/* 13/10/2026: 📝 Solicitudes (estados, opinión de la IA, aprobación del superadministrador, avisos) */
.asis-boton.con-avisos::after { content: attr(data-avisos); position: absolute; top: -3px; right: -3px; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 10px; background: #e03131; color: #fff; font-size: 12px; font-weight: 700; line-height: 20px; box-sizing: border-box; }
.asis-aviso { position: fixed; left: 82px; bottom: 22px; z-index: 9001; max-width: min(340px, calc(100vw - 100px)); background: #fff9db; border: 1.5px solid #e8a33d; border-radius: 12px; padding: 9px 12px; box-shadow: 0 6px 20px rgba(0,0,0,.2); font-size: 14px; line-height: 1.4; display: flex; flex-direction: column; gap: 7px; color: #222; }
.asis-aviso button { border: 1px solid #1f5fbf; background: #fff; color: #1f5fbf; border-radius: 6px; padding: 3px 10px; cursor: pointer; font-size: 13px; }
.asis-aviso .asis-aviso-si { background: #1f5fbf; color: #fff; }
.asis-modo { padding: 6px 10px; background: #fff3bf; border-top: 1px solid #ecd9b0; font-size: 13px; display: flex; align-items: center; gap: 8px; }
.asis-modo[hidden] { display: none; }
.asis-modo button { margin-left: auto; border: 1px solid #c9a24a; background: #fff; border-radius: 6px; padding: 2px 8px; cursor: pointer; font-size: 12px; }
.asis-sol-filtros { display: flex; flex-wrap: wrap; gap: 4px; }
.asis-sol-filtros button { border: 1px solid #ecd9b0; background: #fff; border-radius: 12px; padding: 2px 8px; cursor: pointer; font-size: 12px; color: #444; }
.asis-sol-filtros button.activo { background: #e8a33d; border-color: #e8a33d; color: #fff; }
.asis-sol-est { font-weight: 600; color: #444; }
.asis-nota-cab span:last-child { margin-left: auto; }
.asis-sol-pendiente { border-left: 4px solid #e8a33d; }
.asis-sol-aprobada, .asis-sol-en-curso { border-left: 4px solid #1f5fbf; }
.asis-sol-hecho { border-left: 4px solid #2b8a3e; opacity: .7; }
.asis-sol-rechazada { border-left: 4px solid #c92a2a; opacity: .7; }
.asis-sol-nueva { box-shadow: 0 0 0 2px #fab005; }
.asis-sol-op, .asis-sol-hist { margin-top: 6px; padding-top: 5px; border-top: 1px dashed #ecd9b0; font-size: 13px; color: #3b3a36; }
.asis-sol-op summary, .asis-sol-hist summary { cursor: pointer; color: #6b6659; }
.asis-sol-anal { color: #6b6659; font-style: italic; }
.asis-sol-hist div { color: #6b6659; font-size: 12px; }
.asis-sol-motivo { margin-top: 5px; color: #c92a2a; }
.asis-sol-acc { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 7px; }
.asis-sol-acc button { border: 1px solid #c9d6ea; background: #fff; border-radius: 6px; padding: 2px 8px; cursor: pointer; font-size: 12px; }
.asis-sol-acc button.si { border-color: #2b8a3e; color: #2b8a3e; }
.asis-sol-acc button.no { border-color: #c92a2a; color: #c92a2a; }

.asis-sol-pri { background: #1f5fbf; color: #fff; border-radius: 10px; padding: 0 6px; font-size: 11px; font-weight: 700; cursor: help; }
.asis-sol-porque { margin-top: 4px; font-size: 12px; color: #1f5fbf; }

.asis-sol-mej summary { color: #2b8a3e; font-weight: 600; }

/* 13/10/2026: tiradores para cambiar el tamaño (la caja crece hacia arriba y a la derecha) y cabecera de solicitudes siempre visible */
.asis-tir { position: absolute; z-index: 3; touch-action: none; }
.asis-tir-d { top: 12px; right: 0; width: 8px; bottom: 12px; cursor: ew-resize; }
.asis-tir-a { top: 0; left: 12px; right: 12px; height: 8px; cursor: ns-resize; }
.asis-tir-e { top: 0; right: 0; width: 16px; height: 16px; cursor: nesw-resize; background: linear-gradient(225deg, #8fa7cc 0 2px, transparent 2px 5px, #8fa7cc 5px 7px, transparent 7px); border-top-right-radius: 14px; }
.asis-tir-d:hover, .asis-tir-a:hover { background: rgba(31, 95, 191, .18); }
.asis-sol-cab { position: sticky; top: -10px; z-index: 2; margin: -10px -10px 0; padding: 10px 10px 8px; background: #fffbea; border-bottom: 1px solid #ecd9b0; display: flex; flex-direction: column; gap: 6px; }
.asis-sol-leyenda { font-size: 12px; color: #6b6659; font-style: italic; }
