/* Flowz Proyectos · estilos v0 (de la maqueta aprobada el 15-nov-2026) */
:root{--tinta:#242031;--gris:#655F70;--linea:#EEE9F2;--linea2:#E3DCE8;--violeta:#674187;--violeta2:#4E3166;--lavanda:#F1E7F2;--fondo:#F7F5F9;
--ok:#1F5C38;--ok-bg:#E1F4E8;--warn:#7A3A0A;--warn-bg:#FFE9D6;--calm:#4A4558;--calm-bg:#EFEDF2}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--tinta);background:#fff;font-size:15px;line-height:1.45}
a{color:var(--violeta)}a:hover{color:var(--violeta2)}
:focus-visible{outline:2px solid var(--violeta);outline-offset:2px}
.barra{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 24px;border-bottom:1px solid var(--linea)}
.marca{font-size:22px;font-weight:800;letter-spacing:-.5px;color:var(--tinta);text-decoration:none}
.sub{font-size:14px;color:var(--gris)}
.vivo{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--gris)}
.punto{width:8px;height:8px;border-radius:50%;display:inline-block;background:#2E8A4F}
main{max-width:1232px;margin:0 auto;padding:20px 24px 48px}
h1{font-size:28px;margin:4px 0 6px;letter-spacing:-.4px;font-weight:700}
h1.serif{font-family:Georgia,serif;font-weight:400}
h2{font-size:17px;margin:0 0 10px}
.muted{color:var(--gris)}.small{font-size:13px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.grid-p{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.card{border:1px solid var(--linea);border-radius:16px;padding:16px 18px;min-width:0}
a.card{display:flex;flex-direction:column;gap:10px;color:var(--tinta);text-decoration:none;border-color:var(--linea2)}
a.card:hover{border-color:var(--violeta)}
.num{font-size:30px;font-weight:700}.num small{font-size:16px;color:var(--gris);font-weight:600}
.barra-av{height:8px;border-radius:99px;background:var(--lavanda);overflow:hidden}.barra-av>span{display:block;height:100%;background:var(--violeta);border-radius:99px}
.chip{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}
.chip.ok{background:var(--ok-bg);color:var(--ok)}.chip.warn{background:var(--warn-bg);color:var(--warn)}.chip.calm{background:var(--calm-bg);color:var(--calm)}.chip.brand{background:var(--lavanda);color:var(--violeta2)}.chip.dark{background:var(--tinta);color:#fff}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0 18px}
.tabs a{min-height:40px;display:inline-flex;align-items:center;padding:0 16px;border-radius:999px;font-weight:600;text-decoration:none;border:1px solid var(--linea2);color:var(--violeta2)}
.tabs a[aria-current=page]{background:var(--violeta);border-color:var(--violeta);color:#fff}
.fila{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-top:1px solid var(--linea)}
.fila:first-of-type{border-top:0}
.fila>div{flex:1;min-width:0}
.dot{width:9px;height:9px;border-radius:50%;margin-top:7px;flex-shrink:0}.dot.warn{background:#C98A1B}.dot.ok{background:#2E8A4F}.dot.bad{background:#B42318}
.dos{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px}.dos>section{flex:1 1 360px}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--linea);vertical-align:top}
thead th{font-size:13px;color:var(--gris);font-weight:500;border-bottom:1px solid var(--linea2)}
.tabla{overflow-x:auto;border:1px solid var(--linea);border-radius:16px}
.lista a.item{display:flex;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid var(--linea);color:var(--tinta);text-decoration:none}
.lista a.item:hover{background:#FBF8FC}
.lista{border:1px solid var(--linea);border-radius:16px;overflow:hidden}
.boton{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:10px;border:1px solid var(--linea2);background:#fff;color:var(--violeta2);font-weight:600;text-decoration:none}
.fase{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) 56px;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--linea)}
.aviso{padding:10px 14px;border-radius:12px;background:var(--warn-bg);color:var(--warn);font-size:14px;margin:0 0 14px}
.filtros{display:flex;gap:6px;flex-wrap:wrap}
.filtros a{min-height:36px;display:inline-flex;align-items:center;padding:0 12px;border-radius:999px;font-size:13px;font-weight:600;text-decoration:none;border:1px solid var(--linea2);color:var(--violeta2)}
.filtros a[aria-current=true]{background:var(--tinta);border-color:var(--tinta);color:#fff}
@media (max-width:640px){main{padding:14px}.barra{padding:12px 14px}h1{font-size:23px}.fase{grid-template-columns:1fr 56px}.fase .barra-av{grid-column:1/-1;order:3}}
