
:root{--ink:#12272d;--navy:#10333a;--teal:#17b8a6;--mint:#dff6f1;--paper:#f5f3ec;--line:#dfe5e2;--muted:#6c7c7f;--white:#fff;--orange:#ffb648}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}.hero{background:var(--navy);color:#fff;padding:26px max(28px,calc((100vw - 1440px)/2)) 58px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:520px;height:520px;border:1px solid #ffffff18;border-radius:50%;right:-110px;top:-210px;box-shadow:0 0 0 80px #ffffff05,0 0 0 160px #ffffff04}.hero nav{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}.brand{display:flex;gap:12px;align-items:center}.brand>span{background:var(--teal);color:#fff;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-size:12px;font-weight:900;letter-spacing:.06em}.brand b{font-size:17px;letter-spacing:-.02em}.privacy{border:1px solid #ffffff2e;background:#ffffff0b;padding:9px 14px;border-radius:999px;font-size:12px;color:#d8e5e5}.privacy i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#51e2a8;margin-right:8px}.hero-grid{display:grid;grid-template-columns:1.4fr .75fr;gap:80px;align-items:end;padding-top:62px;position:relative;z-index:1}.eyebrow,.panel-head span,.consult-head>div>span{font-size:11px;letter-spacing:.16em;font-weight:800;color:#63daca}.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(44px,6vw,80px);line-height:.95;letter-spacing:-.05em;margin:17px 0 24px;font-weight:500}.hero h1 em{color:#58d6c8;font-weight:500}.lede{max-width:670px;color:#c5d4d5;font-size:17px;line-height:1.65}.hero-card{background:#fff;color:var(--ink);border-radius:24px;padding:28px;box-shadow:0 22px 55px #061d2275}.hero-card>span{font-size:10px;letter-spacing:.13em;color:var(--muted);font-weight:800}.hero-card>strong{display:block;font-family:Georgia,serif;font-size:48px;margin:8px 0 18px}.hero-card>div{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:17px;font-size:12px;color:var(--muted)}.hero-card>div b{color:var(--teal);font-size:17px}.shell{max-width:1440px;margin:-18px auto 0;padding:0 28px 34px;position:relative}.tabs{background:#fff;border:1px solid var(--line);border-radius:16px;padding:6px;display:inline-flex;box-shadow:0 12px 28px #19394012;margin-bottom:28px}.tabs button{border:0;background:transparent;color:var(--muted);padding:11px 20px;border-radius:11px;font-weight:700;cursor:pointer}.tabs button.active{background:var(--teal);color:#fff}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:14px}.kpis article,.panel,.consult{background:#fff;border:1px solid var(--line);border-radius:20px}.kpis article{padding:20px}.kpis span{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:700}.kpis b{display:block;font-family:Georgia,serif;font-size:30px;margin:10px 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpis small{color:var(--muted)}.chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.panel{padding:24px;min-width:0}.panel.wide{grid-column:span 1}.panel-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:20px}.panel-head h2{margin:5px 0 0;font-size:19px}.panel-head small{color:var(--muted)}.bars{display:flex;flex-direction:column;gap:10px}.bar-row{display:grid;grid-template-columns:minmax(120px,1.2fr) 2fr 74px;gap:12px;align-items:center;border:0;background:transparent;padding:4px;border-radius:8px;text-align:left}.bar-row:not(:disabled){cursor:pointer}.bar-row:not(:disabled):hover,.bar-row.selected{background:var(--mint)}.bar-row strong{text-align:right;font-size:12px}.bar-label{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-track{height:8px;background:#edf1ef;border-radius:99px;overflow:hidden}.bar-fill{display:block;height:100%;border-radius:99px}.donut-layout{display:grid;grid-template-columns:170px 1fr;align-items:center;gap:24px;padding:16px}.donut{width:164px;height:164px;border-radius:50%;display:grid;place-items:center}.donut>div{width:98px;height:98px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}.donut b{font-family:Georgia,serif;font-size:20px}.donut span{font-size:10px;color:var(--muted)}.legend{display:flex;flex-direction:column;gap:8px}.legend button{display:grid;grid-template-columns:12px 1fr auto;gap:8px;border:1px solid transparent;background:transparent;border-radius:9px;padding:8px;text-align:left;cursor:pointer}.legend button.active,.legend button:hover{background:var(--mint);border-color:#b9e8df}.legend i{width:10px;height:10px;border-radius:3px;margin-top:4px}.legend b{font-size:12px}.consult{padding:28px}.consult-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:22px}.consult-head h2{font-family:Georgia,serif;font-size:34px;margin:6px 0}.consult-head p{color:var(--muted);margin:0}.selection-summary{text-align:right}.selection-summary b{display:block;font-family:Georgia,serif;font-size:32px;color:var(--teal)}.selection-summary span{font-size:11px;color:var(--muted)}.filters{display:grid;grid-template-columns:1.4fr 1.4fr .65fr .65fr 1fr;gap:12px;padding:22px 0}.filters label{display:flex;flex-direction:column;gap:7px}.filters label span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--muted)}.filters input,.filters select{width:100%;border:1px solid #ccd7d4;border-radius:10px;background:#fff;padding:11px 12px;color:var(--ink);outline:none}.filters input:focus,.filters select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #17b8a61a}.filters :disabled{background:#f1f2ef;color:#98a3a3}.result-bar{display:flex;align-items:center;justify-content:space-between;padding:13px 0}.result-bar span{color:var(--muted);font-size:12px}.result-bar button{border:0;background:var(--navy);color:#fff;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer}.result-bar button:disabled{opacity:.4}.table-wrap{border:1px solid var(--line);border-radius:14px;overflow:auto;max-height:620px;background:#fff}table{border-collapse:collapse;width:100%;min-width:1320px;font-size:12px}thead{position:sticky;top:0;z-index:2}th{background:#153b42;color:#fff;text-align:left;padding:12px 10px;font-size:10px;text-transform:uppercase;letter-spacing:.05em}td{padding:10px;border-bottom:1px solid #e7ecea;vertical-align:top}tbody tr:hover{background:#f0faf7}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.pagination{display:flex;justify-content:center;align-items:center;gap:18px;padding:18px}.pagination button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 12px;cursor:pointer}.pagination button:disabled{opacity:.35}.notice,.empty-state,.empty{padding:44px;text-align:center;color:var(--muted)}.notice{display:flex;justify-content:center;align-items:center;gap:12px}.notice.error{color:#b33838;background:#fff0ef;border-radius:12px}.empty-state span{display:grid;place-items:center;margin:auto;width:64px;height:64px;border-radius:20px;background:var(--mint);color:var(--teal);font-size:34px}.empty-state h3{color:var(--ink);margin:16px 0 4px}.spinner{width:24px;height:24px;border:3px solid #b9e8df;border-top-color:var(--teal);border-radius:50%;animation:spin .8s linear infinite}.loading-screen{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:10px}.loading-screen h1{margin:0;font-family:Georgia,serif}.loading-screen p{color:var(--muted)}footer{display:flex;justify-content:space-between;padding:28px 4px 0;color:var(--muted);font-size:12px}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr;gap:28px}.kpis{grid-template-columns:1fr 1fr}.chart-grid{grid-template-columns:1fr}.filters{grid-template-columns:1fr 1fr}.municipality-field{grid-column:span 2}.donut-layout{grid-template-columns:1fr;justify-items:center}.hero-card{max-width:500px}}
@media(max-width:620px){.hero{padding-inline:18px}.shell{padding-inline:12px}.privacy{display:none}.hero-grid{padding-top:40px}.hero h1{font-size:48px}.kpis{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.municipality-field{grid-column:span 1}.consult{padding:18px}.consult-head{align-items:start}.selection-summary{display:none}.bar-row{grid-template-columns:110px 1fr 58px}.tabs{width:100%}.tabs button{flex:1}footer{flex-direction:column;gap:8px}}

.hidden{display:none!important}

/* PEEPONY 2027 */
.brand>span{width:auto;min-width:82px;padding:0 14px;font-size:15px;letter-spacing:.02em}
.hero h1 em{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:.48em;font-style:normal;letter-spacing:-.025em}
.panel-action{width:100%;margin-top:18px;border:1px solid #b9e8df;background:var(--mint);color:#087f73;border-radius:11px;padding:12px 14px;font-weight:800;cursor:pointer;text-align:left}
.panel-action:hover{background:#c9f1e9}
.territory-filters{display:grid;grid-template-columns:1fr 1fr 1.7fr auto;gap:12px;padding:22px 0 10px;align-items:end}
.territory-filters label{display:flex;flex-direction:column;gap:7px}
.territory-filters label span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--muted)}
.territory-filters select{width:100%;border:1px solid #ccd7d4;border-radius:10px;background:#fff;padding:11px 12px;color:var(--ink);outline:none}
.territory-filters select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #17b8a61a}
.territory-filters button{border:0;background:var(--teal);color:#fff;border-radius:10px;padding:12px 18px;font-weight:800;cursor:pointer;white-space:nowrap}
.territory-filters button:disabled{opacity:.4;cursor:not-allowed}
.municipality-match{font-size:12px;color:#087f73;background:var(--mint);border-radius:9px;padding:9px 12px}
.filters{grid-template-columns:1.5fr .65fr .65fr .65fr 1fr;padding:16px 0 22px}
@media(max-width:980px){.territory-filters{grid-template-columns:1fr 1fr}.territory-filters .municipality-field{grid-column:span 2}}
@media(max-width:620px){.hero h1 em{font-size:.4em}.territory-filters{grid-template-columns:1fr}.territory-filters .municipality-field{grid-column:span 1}}

/* Identidad visual iPhony — morado, vino y verde fluorescente */
:root{--ink:#25142f;--navy:#220b38;--teal:#baff35;--mint:#f0ffcf;--paper:#f7f2f7;--line:#e5d8e8;--muted:#796c80;--orange:#d940a6;--wine:#78163f;--purple:#5a1a87;--neon:#baff35}
body{background:radial-gradient(circle at 10% 10%,#f1e5f4 0,transparent 28%),linear-gradient(180deg,#f8f4f8,#f2edf3);min-height:100vh}
.hero{background:radial-gradient(circle at 82% 20%,#baff3524 0,transparent 22%),radial-gradient(circle at 15% 100%,#8d2d9252 0,transparent 32%),linear-gradient(132deg,#1b082d 0%,#3c0c4e 45%,#75163e 100%);padding-top:22px;padding-bottom:74px;border-bottom:1px solid #baff3538}
.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,#0008,transparent 78%)}
.hero:after{border-color:#baff3528;box-shadow:0 0 0 80px #baff3508,0 0 0 160px #a7368a0b}
.hero nav{padding-bottom:18px;border-bottom:1px solid #ffffff18}
.brand{gap:13px}.brand-logo{width:60px;height:60px;border-radius:18px;overflow:hidden;border:2px solid var(--neon);box-shadow:0 0 26px #baff3545;background:#fff}.brand-logo img{width:100%;height:100%;object-fit:cover;object-position:center 18%;transform:scale(1.18)}
.brand-copy{display:flex;flex-direction:column}.brand-copy b{font-size:20px;letter-spacing:-.03em;color:#fff}.brand-copy small{color:#d7c8dd;font-size:11px;letter-spacing:.09em;text-transform:uppercase;margin-top:3px}
.privacy{border-color:#baff3552;background:#baff3510;color:#f1f7ea;box-shadow:inset 0 0 18px #baff3508}.privacy i{background:var(--neon);box-shadow:0 0 12px var(--neon)}
.hero-grid{padding-top:54px}.eyebrow,.panel-head span,.consult-head>div>span{color:#7e2bb0}.hero .eyebrow{color:var(--neon)}
.hero h1{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-weight:850;line-height:.91;letter-spacing:-.065em;text-shadow:0 14px 40px #13031e80}.hero h1 em{display:inline-block;margin-top:14px;color:#d9c5e7;font-size:.35em;letter-spacing:.01em;font-weight:600;text-transform:uppercase}
.lede{color:#ded1e4;max-width:720px}.hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.hero-chips span{border:1px solid #ffffff25;background:#ffffff0c;color:#f4ebf6;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:700;backdrop-filter:blur(8px)}.hero-chips span:first-child{border-color:#baff3566;color:var(--neon)}
.hero-card{position:relative;overflow:hidden;background:linear-gradient(155deg,#ffffff 0%,#fbf7fc 100%);border:1px solid #ffffff96;border-radius:28px;box-shadow:0 28px 70px #13031e80,0 0 0 1px #baff3520}.hero-card:before{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:#baff3521;right:-72px;top:-85px}.hero-card-label{display:flex!important;align-items:center!important;border:0!important;padding:0!important}.hero-card-label>span{font-size:10px;letter-spacing:.13em;color:var(--muted);font-weight:850}.hero-card-label i{font-style:normal;font-size:8px;font-weight:900;letter-spacing:.08em;background:var(--neon);color:#2b0c35;padding:5px 8px;border-radius:999px}.hero-card>strong{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-weight:900;letter-spacing:-.06em;color:#3f1057}.hero-card>div:last-child b{color:var(--wine)}
.shell{margin-top:-28px}.tabs{border-color:#d5c3da;border-radius:18px;box-shadow:0 18px 45px #35103e1c}.tabs button{padding:13px 24px}.tabs button.active{background:linear-gradient(135deg,#4d146e,#7a163f);color:#fff;box-shadow:0 8px 22px #57134735}
.kpis{gap:16px}.kpis article,.panel,.consult{border-color:#e2d3e6;box-shadow:0 14px 36px #34103c0c}.kpis article{position:relative;overflow:hidden;padding:22px}.kpis article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(var(--purple),var(--wine))}.kpis article:nth-child(2):before,.kpis article:nth-child(3):before{background:var(--neon)}.kpis b{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-weight:850;color:#351045}.kpis small{font-size:11px}
.chart-grid{gap:16px}.panel{border-radius:24px;padding:26px}.panel-head h2{font-size:20px;color:#2e1238}.panel-head small{font-size:10px;background:#f4edf6;border-radius:999px;padding:6px 9px}.bar-row{padding:6px 7px}.bar-row:not(:disabled):hover,.bar-row.selected{background:#f2e8f6}.bar-track{height:9px;background:#eee5f0}.bar-fill{box-shadow:0 0 12px currentColor}.panel-action{border:0;background:linear-gradient(135deg,#3f105e,#78163f);color:#fff;border-radius:12px;padding:13px 15px;box-shadow:0 10px 24px #60143d22}.panel-action:hover{background:linear-gradient(135deg,#551578,#941b4d);transform:translateY(-1px)}
.donut>div{box-shadow:0 0 0 8px #fff8}.legend button.active,.legend button:hover{background:#f0e5f4;border-color:#d5b9df}
.consult{border-radius:26px}.consult-head{border-color:#eadfeb}.consult-head h2{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-weight:850;letter-spacing:-.04em;color:#351045}.selection-summary b{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:var(--wine);font-weight:900}.territory-filters select,.filters input,.filters select{border-color:#d9c8de;background:#fdfbfd;border-radius:11px}.territory-filters select:focus,.filters input:focus,.filters select:focus{border-color:#7b2493;box-shadow:0 0 0 4px #7b249315}.territory-filters button{background:var(--neon);color:#2a0b34;box-shadow:0 8px 22px #97d92938}.territory-filters button:hover{filter:brightness(.96)}.municipality-match{background:linear-gradient(90deg,#efffca,#f4eafa);color:#49115e;border:1px solid #d8ef9d}
.result-bar button{background:linear-gradient(135deg,#4e146e,#79163f);box-shadow:0 8px 20px #5a163634}.table-wrap{border-color:#dccce1;box-shadow:0 12px 30px #36113d0b}th{background:linear-gradient(90deg,#2d0d46,#681438)}tbody tr:hover{background:#f6eff8}.pagination button{border-color:#d8c7dd}.pagination button:not(:disabled):hover{border-color:#7b2493;background:#f5ecf7}
footer{align-items:center;border-top:1px solid #e1d5e4;margin-top:26px;padding-top:24px}.footer-brand{display:flex;align-items:center;gap:10px}.footer-brand img{width:34px;height:34px;border-radius:10px;object-fit:cover;object-position:center 18%;border:1px solid #7a163f}.footer-brand b{color:#40114d}
@media(max-width:620px){.brand-logo{width:50px;height:50px}.brand-copy b{font-size:17px}.hero h1{font-size:46px}.hero h1 em{font-size:.34em}.hero-chips{gap:6px}.hero-chips span{font-size:10px}.panel{padding:19px}}

.priority-territory{grid-template-columns:minmax(280px,1fr) auto}.priority-filters{grid-template-columns:2fr 1fr 1fr}.priority-territory select{min-width:320px}@media(max-width:620px){.priority-territory,.priority-filters{grid-template-columns:1fr}.priority-territory select{min-width:0}}

/* iPhonyData · estudio profesional de consultas */
.brand-logo{width:76px;height:76px;background:#fff!important;border:3px solid #fff!important;border-radius:50%;padding:7px;box-shadow:0 0 0 2px #baff35,0 14px 34px #12031f80;overflow:hidden}
.brand-logo img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none;animation:logoOrbit 7s linear infinite;filter:drop-shadow(0 4px 5px #2a0a3730)}
@keyframes logoOrbit{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.brand-logo img{animation:none}}
.query-studio{margin:24px 0 4px;padding:22px;border-radius:22px;background:linear-gradient(135deg,#260b3d,#681438);color:#fff;box-shadow:0 18px 40px #35103e24;position:relative;overflow:hidden}.query-studio:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-85px;top:-110px;background:#baff3518;box-shadow:0 0 0 38px #ffffff07}.query-studio-title{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.query-studio-title span{color:#baff35;font-size:10px;font-weight:900;letter-spacing:.15em}.query-studio-title b{font-size:13px;color:#eadff0}.query-modes{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.query-modes button{border:1px solid #ffffff25;background:#ffffff0c;color:#fff;border-radius:16px;padding:15px;text-align:left;cursor:pointer;transition:.25s}.query-modes button:hover{transform:translateY(-2px);border-color:#baff3575}.query-modes button.active{background:#fff;color:#351045;border-color:#fff;box-shadow:0 12px 30px #12031f50}.query-modes i{display:block;font-style:normal;color:#baff35;font-weight:900;font-size:10px}.query-modes button.active i{color:#78163f}.query-modes strong{display:block;font-size:14px;margin:8px 0 3px}.query-modes small{display:block;font-size:10px;opacity:.72;line-height:1.35}.territory-filters{grid-template-columns:repeat(3,minmax(0,1fr)) auto}.mode-hidden{display:none!important}.municipality-match{font-weight:700;padding:12px 14px}.consult{background:linear-gradient(180deg,#fff,#fdfafd)}
@media(max-width:900px){.query-modes{grid-template-columns:1fr 1fr}.territory-filters{grid-template-columns:1fr 1fr}.brand-logo{width:64px;height:64px}}
@media(max-width:620px){.query-modes,.territory-filters{grid-template-columns:1fr}.query-studio-title{align-items:flex-start;flex-direction:column;gap:4px}.brand-logo{width:58px;height:58px}}
.table-wrap table{min-width:1480px}.table-wrap th:nth-child(9){background:#7b1c46}.table-wrap td:nth-child(9){font-weight:800;color:#4b155d;min-width:190px}
