/* Estilos del kit del back office (docs/kit-backoffice/neuro-backoffice.html), sin cambios. Lo propio va en propios.css. */
:root{--lienzo:#F4F6FA;--papel:#fff;--papel-2:#FAFBFD;--tinta:#1F2340;--tinta-2:#4A5070;--tinta-3:#8A90AE;--linea:#E3E7F0;--one:#F96A04;--one-2:#D95A00;--one-tinte:#FFEEDF;--one-linea:#F9D2B4;--azul:#2F6FED;--azul-tinte:#EAF1FD;--azul-linea:#C9DBFA;--verde:#1F8A5B;--verde-tinte:#E4F7EE;--verde-pt:#2DB36B;--ambar:#B86E00;--ambar-tinte:#FFF1D6;--sombra:0 2px 6px rgba(31,35,64,.05),0 14px 36px rgba(31,35,64,.08);--sombra-suave:0 1px 2px rgba(31,35,64,.05),0 6px 18px rgba(31,35,64,.05);--fuente:'Plus Jakarta Sans','Segoe UI',system-ui,sans-serif}
*{box-sizing:border-box}html,body{height:100%;margin:0}
body{font-family:var(--fuente);color:var(--tinta);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;background:var(--lienzo);overflow:hidden}
button{font:inherit;cursor:pointer}h1,h2,h3,h4{margin:0;font-weight:700;letter-spacing:-.015em}p{margin:0}
.b{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 22px;border-radius:999px;font-size:15px;font-weight:700;border:1px solid transparent}
.b.primario{background:var(--one);color:#fff}.b.primario:hover{background:var(--one-2)}
.b.secundario{background:var(--papel);color:var(--one-2);border-color:var(--one-linea)}.b.suave{background:var(--papel-2);color:var(--tinta-2);border-color:var(--linea)}
.b.sm{height:36px;padding:0 14px;font-size:13px}
.eti{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700}
.eti.v{background:var(--verde-tinte);color:var(--verde)}.eti.g{background:var(--lienzo);color:var(--tinta-2)}.eti.a{background:var(--ambar-tinte);color:var(--ambar)}.eti.o{background:var(--one-tinte);color:var(--one-2)}.eti.n{background:#E8EEF8;color:#0A3D91}
/* fondo escritorio */
.escritorio{position:fixed;inset:0;background:radial-gradient(1200px 700px at 20% -10%,#FFF1E3 0%,transparent 60%),radial-gradient(900px 600px at 90% 110%,#EAF1FD 0%,transparent 55%),linear-gradient(180deg,#F7F8FC,#EEF1F7);display:none}
.escritorio.ver{display:block}
/* login */
.login{position:fixed;inset:0;display:grid;place-items:center;background:radial-gradient(1200px 700px at 20% -10%,#FFF1E3 0%,transparent 60%),radial-gradient(900px 600px at 90% 110%,#EAF1FD 0%,transparent 55%),linear-gradient(180deg,#F7F8FC,#EEF1F7)}
.login.oculto{display:none}
.tarjeta-l{width:520px;background:var(--papel);border-radius:32px;box-shadow:var(--sombra);border:1px solid var(--linea);padding:44px 48px 36px;text-align:center}
.tarjeta-l img{width:84px;height:84px;border-radius:24px;margin-bottom:16px}
.tarjeta-l h1{font-size:30px;font-weight:800;letter-spacing:-.02em}
.tarjeta-l .lema{font-size:15px;color:var(--tinta-2);margin:6px 0 28px}
.tarjeta-l label{display:block;text-align:left;font-size:13px;color:var(--tinta-3);font-weight:600;margin:0 0 8px 4px}
.tarjeta-l input{width:100%;height:58px;border-radius:18px;border:1px solid var(--linea);padding:0 20px;font:inherit;font-size:18px;background:var(--papel-2);outline:none;text-align:left}
.tarjeta-l input:focus{border-color:var(--azul-linea);box-shadow:0 0 0 4px var(--azul-tinte)}
.tarjeta-l .codigo{display:flex;gap:12px;justify-content:center}
.tarjeta-l .codigo input{width:68px;height:78px;text-align:center;font-size:32px;font-weight:800;padding:0}
.tarjeta-l .paso{display:none}.tarjeta-l .paso.ver{display:block}
.tarjeta-l .b{width:100%;margin-top:16px;height:54px}
.tarjeta-l .wa{background:#F0F6EE;border:1px solid #D7E8D2;border-radius:16px;padding:12px 16px;font-size:14px;color:#2F4A2A;margin-bottom:18px;display:flex;align-items:center;gap:10px;text-align:left}
.tarjeta-l .wa i{width:10px;height:10px;border-radius:50%;background:#25D366;flex:none}
.tarjeta-l .pie{margin-top:20px;font-size:12px;color:var(--tinta-3)}
/* escritorio */
.top{position:fixed;top:0;left:0;right:0;height:64px;display:flex;align-items:center;padding:0 28px;gap:14px}
.top .marca{display:flex;align-items:center;gap:10px;font-weight:800;font-size:16px}
.top .marca img{width:30px;height:30px;border-radius:9px}
.top .marca span{color:var(--tinta-3);font-weight:600;font-size:13px}
.top .reloj{margin-left:auto;font-size:14px;color:var(--tinta-2);font-weight:600;font-variant-numeric:tabular-nums}
.top .perfil{display:flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;border-radius:999px;background:rgba(255,255,255,.7);border:1px solid var(--linea);font-size:14px;font-weight:700}
.top .perfil .av{width:32px;height:32px;border-radius:50%;background:var(--one-tinte);color:var(--one-2);display:grid;place-items:center;font-weight:800;font-size:13px}
.vista{position:fixed;top:64px;left:0;right:0;bottom:110px;overflow-y:auto;padding:16px 48px 24px}
.pantalla{display:none;max-width:1560px;margin:0 auto}.pantalla.ver{display:block}
.bienvenida{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding-bottom:40px}
.bienvenida h1{font-size:52px;font-weight:800;letter-spacing:-.03em}
.bienvenida p{font-size:19px;color:var(--tinta-2)}
.bienvenida .hora{font-size:84px;font-weight:800;letter-spacing:-.04em;line-height:1;color:var(--tinta);font-variant-numeric:tabular-nums}
.bienvenida .kpis{display:flex;gap:14px;margin-top:26px}
.bienvenida .kpi{background:rgba(255,255,255,.8);border:1px solid var(--linea);border-radius:20px;padding:16px 22px;min-width:170px;text-align:left;backdrop-filter:blur(8px)}
.bienvenida .kpi b{display:block;font-size:28px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.bienvenida .kpi span{font-size:13px;color:var(--tinta-3);font-weight:600}
/* dock */
.dock{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);display:flex;gap:10px;padding:10px;border-radius:28px;background:rgba(255,255,255,.75);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.9);box-shadow:var(--sombra)}
.dock button{display:flex;flex-direction:column;align-items:center;gap:6px;width:92px;padding:10px 6px 8px;border-radius:20px;border:0;background:transparent;font-size:12px;font-weight:700;color:var(--tinta-2);transition:background .15s,transform .15s}
.dock button:hover{background:var(--azul-tinte);color:var(--azul);transform:translateY(-3px)}
.dock button.sel{background:var(--one-tinte);color:var(--one-2)}
.dock button .ic{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;color:#fff}
.dock button .ic svg{width:22px;height:22px}
.dock .sep{width:1px;background:var(--linea);margin:8px 2px}
/* pantallas */
.cab-p{display:flex;align-items:flex-end;gap:16px;margin:10px 0 22px}
.cab-p h2{font-size:34px;font-weight:800;letter-spacing:-.025em}
.cab-p p{font-size:15px;color:var(--tinta-2)}
.cab-p .der{margin-left:auto;display:flex;gap:8px;align-items:center}
.card{background:var(--papel);border-radius:24px;padding:24px 26px;box-shadow:var(--sombra-suave);border:1px solid var(--linea)}
.card h3{font-size:18px;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between}
.card h3 small{font-size:13px;color:var(--tinta-3);font-weight:600}
.kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:22px}
.kpi{background:var(--papel);border-radius:20px;padding:18px 20px;border:1px solid var(--linea);box-shadow:var(--sombra-suave)}
.kpi b{display:block;font-size:30px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.kpi span{font-size:13px;color:var(--tinta-3);font-weight:600}
.kpi small{display:block;font-size:12px;color:var(--verde);font-weight:700;margin-top:4px}
.grid-d{display:grid;grid-template-columns:1.5fr 1fr;gap:22px}
.mapa{position:relative}
.mapa svg{width:100%;height:auto;display:block}
.mapa path{transition:fill .15s}.mapa path:hover{fill:rgba(249,106,4,.9)!important}
.fila-e{display:grid;grid-template-columns:150px 1fr 70px;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--linea);font-size:14px}
.fila-e:last-child{border:0}.fila-e b{text-align:right;font-variant-numeric:tabular-nums}
.b-e{height:10px;border-radius:5px;background:var(--lienzo);overflow:hidden}.b-e i{display:block;height:100%;background:var(--one);border-radius:5px}
.barras{display:flex;align-items:flex-end;gap:4px;height:140px;padding-top:10px}
.barras .bar{flex:1;background:var(--one-tinte);border-radius:4px 4px 0 0;position:relative;transition:background .15s}
.barras .bar:hover{background:var(--one)}
.barras .bar:nth-last-child(-n+7){background:var(--one);opacity:.85}
.ejes{display:flex;justify-content:space-between;font-size:12px;color:var(--tinta-3);font-weight:600;margin-top:8px}
/* tabla */
.herr-t{display:flex;gap:10px;align-items:center;margin-bottom:14px}
.herr-t input{height:46px;border-radius:999px;border:1px solid var(--linea);padding:0 18px;font:inherit;font-size:14px;width:320px;background:var(--papel-2);outline:none}
.herr-t .f{height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--linea);background:var(--papel);font-size:13px;font-weight:700;color:var(--tinta-2)}
.herr-t .f.sel{background:var(--tinta);color:#fff;border-color:var(--tinta)}
table{width:100%;border-collapse:collapse;font-size:14px}
th{text-align:left;font-size:12px;color:var(--tinta-3);font-weight:700;padding:10px 12px;border-bottom:1px solid var(--linea);text-transform:none}
td{padding:12px;border-bottom:1px solid var(--linea);vertical-align:middle}
tr:hover td{background:var(--azul-tinte)}
td .av{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--one-tinte);color:var(--one-2);font-weight:800;font-size:12px;margin-right:10px;vertical-align:middle}
.pag{display:flex;gap:6px;justify-content:center;margin-top:14px}
.pag button{min-width:36px;height:36px;padding:0 12px;border-radius:12px;border:1px solid var(--linea);background:var(--papel);font-size:13px;font-weight:700;color:var(--tinta-2)}
.pag button.sel{background:var(--tinta);color:#fff;border-color:var(--tinta)}
/* administración */
.grid-a{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.lin{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--linea);font-size:14px}
.lin:last-child{border:0}.lin b{display:block;font-size:15px}.lin span{font-size:13px;color:var(--tinta-2)}
.lin .der{margin-left:auto;display:flex;gap:8px;align-items:center}
.sw{width:48px;height:28px;border-radius:999px;background:var(--linea);position:relative;border:0}
.sw::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:var(--sombra-suave);transition:left .2s}
.sw.on{background:var(--one)}.sw.on::after{left:23px}
.avisos{position:fixed;right:28px;bottom:120px;display:flex;flex-direction:column;gap:10px;z-index:9}
.noti{background:var(--papel);border-radius:18px;padding:14px 18px;box-shadow:var(--sombra);border:1px solid var(--linea);font-size:14px;animation:sube .35s ease}
@keyframes sube{from{transform:translateY(12px);opacity:0}to{transform:none;opacity:1}}
