:root{--fondo:#f4f4ef;--papel:#ffffff;--tinta:#1b1f26;--suave:#5f6670;--linea:#e2e3dc;--lateral:#1c2129;--lateral-texto:#e9ebe6;--lateral-suave:#9aa1ab;--acento:#0e7c61;--acento-hover:#0b6a53;--menta:#8ee0c3;--menta-tinta:#0b3b2e;--oscuro:#1c2129;--oscuro-texto:#f1f2ee;--ok:#1f8a5b;--ok-fondo:#e3f4ec;--aviso:#b26a00;--aviso-fondo:#fbf0dc;--gris-fondo:#ebece7;--radio:14px;--sombra:0 1px 2px rgba(27,31,38,.05)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--fondo:#14171c;--papel:#1e2229;--tinta:#eef0ea;--suave:#a4abb5;--linea:#2e333c;--lateral:#0f1216;--oscuro:#0f1216;--ok-fondo:#153a2b;--aviso-fondo:#3b2d12;--gris-fondo:#2a2f37;--sombra:none}}
:root[data-theme="dark"]{--fondo:#14171c;--papel:#1e2229;--tinta:#eef0ea;--suave:#a4abb5;--linea:#2e333c;--lateral:#0f1216;--oscuro:#0f1216;--ok-fondo:#153a2b;--aviso-fondo:#3b2d12;--gris-fondo:#2a2f37;--sombra:none}
*{box-sizing:border-box}html,body{margin:0;background:var(--fondo);color:var(--tinta);font:16px/1.5 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
a{color:var(--acento)}button{font:inherit;cursor:pointer}
h1{font-size:40px;line-height:1.1;letter-spacing:-.02em;font-weight:800;margin:0 0 14px}h2{font-size:22px;letter-spacing:-.01em;font-weight:800;margin:0 0 8px}h3{font-size:17px;font-weight:700;margin:0 0 6px}
p{margin:6px 0}.suave{color:var(--suave)}.cargando{padding:40px;text-align:center;color:var(--suave)}
.etq{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--suave);font-weight:600}
/* botones */
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;border-radius:999px;border:1px solid var(--acento);background:var(--acento);color:#fff;font-weight:700;font-size:16px;text-decoration:none}.btn:hover{background:var(--acento-hover)}.btn:disabled{opacity:.5;cursor:default}
.btn.sec{background:var(--papel);color:var(--tinta);border-color:var(--linea)}.btn.sec:hover{background:var(--gris-fondo)}.btn.mini{padding:8px 14px;font-size:14px}
.enlace{background:none;border:0;padding:0;color:var(--acento);font-weight:700;text-decoration:underline;text-underline-offset:3px}
/* tarjetas y estados */
.tarjeta{background:var(--papel);border:1px solid var(--linea);border-radius:var(--radio);padding:22px;box-shadow:var(--sombra)}.tarjeta.oscura{background:var(--oscuro);color:var(--oscuro-texto);border-color:transparent}.tarjeta.oscura .suave{color:#b7bdc6}.tarjeta.oscura a,.tarjeta.oscura .enlace{color:var(--menta)}
.pill{display:inline-block;padding:5px 12px;border-radius:999px;font-size:14px;font-weight:600;background:var(--gris-fondo);color:var(--suave)}.pill.ok{background:var(--ok-fondo);color:var(--ok)}.pill.aviso{background:var(--aviso-fondo);color:var(--aviso)}
.cifra{font-size:40px;font-weight:800;letter-spacing:-.02em;line-height:1.1}.cifra.sm{font-size:30px}
.rejilla{display:grid;gap:16px}.rejilla.c3{grid-template-columns:repeat(3,1fr)}.rejilla.c2{grid-template-columns:1fr 1fr}.rejilla.c6{grid-template-columns:repeat(6,1fr)}.rejilla.c5{grid-template-columns:repeat(5,1fr)}
@media(max-width:1100px){.rejilla.c6{grid-template-columns:repeat(3,1fr)}.rejilla.c5{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.rejilla.c3,.rejilla.c2,.rejilla.c6,.rejilla.c5{grid-template-columns:1fr}}
table{width:100%;border-collapse:collapse;font-size:15px}th{text-align:left;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--suave);font-weight:600;padding:12px 10px;background:var(--gris-fondo)}td{padding:14px 10px;border-top:1px solid var(--linea);vertical-align:top}tr:first-child td{border-top:0}.tabla{overflow:auto;border:1px solid var(--linea);border-radius:var(--radio);background:var(--papel)}
.acciones{display:flex;gap:14px;flex-wrap:wrap}
/* formularios */
label{display:block;font-size:14px;font-weight:600;color:var(--suave);margin:14px 0 6px}input,textarea,select{width:100%;padding:12px 14px;border:1px solid var(--linea);border-radius:10px;background:var(--papel);color:var(--tinta);font:inherit}input:focus,textarea:focus{outline:2px solid var(--menta);border-color:var(--acento)}textarea{min-height:90px}label.chk{display:flex;align-items:center;gap:10px;font-weight:500;color:var(--tinta);margin:8px 0}label.chk input{width:auto}
.plato{display:grid;grid-template-columns:2fr 1fr 2fr 44px;gap:8px;align-items:center;margin:8px 0}.plato button{height:44px;border-radius:10px;border:1px solid var(--linea);background:var(--papel);color:var(--suave)}@media(max-width:700px){.plato{grid-template-columns:1fr 1fr}}
.msgbox{margin-top:10px;font-size:14px;color:var(--suave)}.aviso-caja{border-left:4px solid var(--aviso);background:var(--aviso-fondo);padding:12px 14px;border-radius:8px;margin:12px 0;font-size:15px}.ok-caja{border-left:4px solid var(--ok);background:var(--ok-fondo);padding:12px 14px;border-radius:8px;margin:12px 0;font-size:15px}
code{background:var(--gris-fondo);padding:2px 6px;border-radius:5px;font-size:14px;word-break:break-all}
/* entrar */
.entrar{min-height:100vh;display:grid;place-items:center;padding:24px 16px}.entrar .tarjeta{width:100%;max-width:440px}.entrar .marca{font-size:28px;font-weight:800;margin-bottom:6px}
/* cabecera de páginas sin barra lateral */
.cab{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px;border-bottom:1px solid var(--linea);background:var(--papel);flex-wrap:wrap}.cab .marca{font-weight:800;font-size:22px}.cab nav{display:flex;gap:6px;flex-wrap:wrap}.cab nav a{padding:8px 14px;border-radius:999px;text-decoration:none;color:var(--tinta);font-weight:600;font-size:15px}.cab nav a.activo{background:var(--menta);color:var(--menta-tinta)}.cab .quien{font-size:13px;color:var(--suave)}
.pagina{max-width:1240px;margin:0 auto;padding:36px 24px 80px}@media(max-width:700px){.pagina{padding:24px 16px 60px}h1{font-size:30px}}
.titulo{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:28px}.titulo h1{margin-bottom:4px}
.tile{padding:22px}.tile .nombre{color:var(--suave);font-size:15px;margin-top:6px}
.canales li{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid var(--linea)}.canales li:first-child{border-top:0}.canales{list-style:none;margin:0;padding:0}
/* alta con barra lateral */
.alta{display:grid;grid-template-columns:300px minmax(0,1fr);min-height:100vh;max-width:100vw;overflow-x:hidden}.alta>*{min-width:0}.lateral{background:var(--lateral);color:var(--lateral-texto);padding:28px 24px;display:flex;flex-direction:column}.lateral .marca{font-size:30px;font-weight:800;margin-bottom:4px}.lateral .sub{color:var(--lateral-suave);font-size:14px;margin-bottom:28px}
.pasos{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.pasos li{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:12px;cursor:pointer;color:var(--lateral-texto);font-weight:500}.pasos li .n{width:30px;height:30px;border-radius:50%;background:#2b313a;display:grid;place-items:center;font-size:13px;font-weight:700;flex:none}.pasos li.activo{background:var(--menta);color:var(--menta-tinta);font-weight:700}.pasos li.activo .n{background:var(--menta-tinta);color:var(--menta)}.pasos li.hecho .n{background:var(--acento);color:#fff}
.lateral .pie{margin-top:auto;color:var(--lateral-suave);font-size:14px;padding-top:28px}.lateral .pie a{color:var(--menta)}
.principal{display:flex;flex-direction:column;min-height:100vh;min-width:0;width:100%}.principal>*{min-width:0;max-width:100%}.progreso{padding:28px 48px 0}.progreso .fila{display:flex;justify-content:space-between;color:var(--suave);font-size:15px;margin-bottom:10px}.barra{height:8px;border-radius:999px;background:var(--linea);overflow:hidden}.barra i{display:block;height:100%;background:var(--acento);transition:width .3s}
.contenido{padding:36px 48px 40px;flex:1 1 auto;width:100%;max-width:1100px;min-width:0;overflow-wrap:anywhere}.contenido .intro{font-size:20px;color:var(--suave);max-width:820px;margin-bottom:28px}
.piebar{border-top:1px solid var(--linea);padding:20px 48px;display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--fondo);position:sticky;bottom:0}
@media(max-width:900px){.alta{grid-template-columns:minmax(0,1fr)}.lateral{padding:18px 16px}.lateral .marca{font-size:22px}.pasos{flex-direction:row;overflow:auto;gap:6px;padding-bottom:4px}.pasos li{white-space:nowrap;padding:8px 12px}.lateral .pie{margin-top:12px;padding-top:0;font-size:13px}.progreso,.contenido,.piebar{padding-left:16px;padding-right:16px}.contenido .intro{font-size:17px}}
/* chat */
.chat{border:1px solid var(--linea);border-radius:var(--radio);padding:16px;height:420px;overflow:auto;background:var(--papel)}.msg{max-width:78%;padding:10px 14px;border-radius:14px;margin:8px 0;white-space:pre-wrap;line-height:1.45}.msg.yo{margin-left:auto;background:var(--acento);color:#fff}.msg.ella{background:var(--gris-fondo)}
.fila{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:14px}.fila input{flex:1;min-width:200px}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.45);display:grid;place-items:center;padding:16px;z-index:9}.modal .tarjeta{width:100%;max-width:560px;max-height:90vh;overflow:auto}
@media print{.cab,.piebar,.btn,.enlace{display:none!important}.pagina{padding:0}}
