:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--surface-1:#fff;--surface-2:#f8fafc;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--gridline:#e2e8f0;--baseline:#cbd5e1;--border:#0f172a14;--brand-1:#667eea;--brand-2:#764ba2;--brand-3:#f093fb;--brand-gradient:linear-gradient(135deg, var(--brand-1) 0%, var(--brand-2) 50%, var(--brand-3) 100%);--series-1:var(--brand-1);--series-2:#eb6834;--series-3:#1baf7a;--series-4:#eda100;--good:#16a34a;--warning:#fab219;--serious:#ec835a;--critical:#dc2626;--delta-up:#15803d;--aviso-bg:#e2e8f0;--aviso-fg:#475569;--heat-rgb:102, 126, 234;font-family:Segoe UI,system-ui,Roboto,Helvetica Neue,Arial,sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--surface-1:#1e293b;--surface-2:#0f172a;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--gridline:#334155;--baseline:#475569;--border:#ffffff14;--brand-1:#818cf8;--brand-2:#a78bfa;--brand-3:#f0abfc;--brand-gradient:linear-gradient(135deg, var(--brand-1) 0%, var(--brand-2) 50%, var(--brand-3) 100%);--series-1:var(--brand-1);--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--good:#22c55e;--delta-up:#22c55e;--aviso-bg:#475569;--aviso-fg:#e2e8f0;--heat-rgb:129, 140, 248}}*{box-sizing:border-box}body{background:var(--surface-2);color:var(--text-primary);margin:0}.page{max-width:1400px;margin:0 auto;padding:24px}button{font-family:inherit}a{color:var(--series-1)}.state-message{text-align:center;color:var(--text-secondary);padding:40px}.app-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-end;margin-bottom:20px;padding-bottom:16px;display:flex;position:relative}.app-header:after{content:"";background:var(--brand-gradient);border-radius:2px;width:100%;height:2px;position:absolute;bottom:-1px;left:0;right:0}.app-header h1{letter-spacing:-.01em;margin:0 0 4px;font-size:22px;font-weight:600}.app-header a{color:var(--text-secondary);font-size:13px;text-decoration:none}.app-header-sub{color:var(--text-secondary);font-size:13px}.month-badge{color:var(--text-secondary);background:var(--surface-1);border:1px solid var(--border);cursor:pointer;border-radius:999px;padding:6px 14px;font-size:13px}.month-select{font:inherit;color:var(--text-primary);cursor:pointer;background:0 0;border:none;font-weight:600}.kpi-bar{grid-template-columns:repeat(7,1fr);gap:10px;margin-bottom:20px;display:grid}.kpi-card{background:var(--surface-1);border:1px solid var(--border);border-radius:10px;padding:12px 14px}.kpi-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:6px;font-size:11px}.kpi-value{font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.kpi-value.good{color:var(--delta-up)}.kpi-value.critical{color:var(--critical)}.kpi-trend{color:var(--text-muted);margin-top:4px;font-size:10px}.kpi-trend.good{color:var(--delta-up)}.kpi-trend.critical{color:var(--critical)}.tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:16px;display:flex}.tabs button,.tabs a{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 16px;font-size:14px;text-decoration:none}.tabs button.tab-active,.tabs a.tab-active{color:var(--text-primary);border-bottom-color:var(--series-1);font-weight:600}.filter-bar{background:var(--surface-1);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:10px;margin-bottom:16px;padding:14px;display:flex}.filter-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.filter-group-label{color:var(--text-muted);flex-shrink:0;width:92px;font-size:12px}.chip-group{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--border);background:var(--surface-2);color:var(--text-secondary);cursor:pointer;border-radius:999px;padding:5px 12px;font-size:12px}.chip-active{background:var(--series-1);border-color:var(--series-1);color:#fff}.search-input{border:1px solid var(--border);background:var(--surface-2);color:var(--text-primary);border-radius:8px;flex:1;max-width:320px;padding:8px 12px;font-size:14px}.reset-btn{border:1px solid var(--border);background:var(--surface-2);color:var(--text-secondary);cursor:pointer;white-space:nowrap;border-radius:8px;padding:8px 12px;font-size:13px}.reset-btn:hover{color:var(--text-primary);border-color:var(--baseline)}.table-wrap{background:var(--surface-1);border:1px solid var(--border);border-radius:10px;padding:14px}.table-meta{color:var(--text-muted);margin-bottom:8px;font-size:12px}.kw-table{border-collapse:collapse;width:100%;font-size:13px}.kw-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--gridline);white-space:nowrap;padding:8px;font-size:11px;font-weight:500}.kw-table td{border-bottom:1px solid var(--gridline);font-variant-numeric:tabular-nums;padding:8px}.kw-table tbody tr:hover{background:var(--surface-2)}.empty-cell{color:var(--text-muted);text-align:center;padding:16px}.badge{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.badge-good{color:var(--delta-up);background:#0ca30c1f}.badge-critical{color:var(--critical);background:#d03b3b1f}.badge-muted{color:var(--text-muted)}.badge-neutral{background:var(--aviso-bg);color:var(--aviso-fg)}.tipo-badge{vertical-align:middle;background:var(--aviso-bg);color:var(--aviso-fg);cursor:help;border-radius:4px;margin-left:4px;padding:0 4px;font-size:9px;font-weight:600;line-height:14px;display:inline-block}.pagination{color:var(--text-secondary);justify-content:center;align-items:center;gap:16px;margin-top:12px;font-size:13px;display:flex}.pagination button{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;color:var(--text-primary);border-radius:6px;padding:6px 12px}.pagination button:disabled{opacity:.4;cursor:default}.dashboard{flex-direction:column;gap:16px;display:flex}.dashboard-grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.chart-card,.movers-card{background:var(--surface-1);border:1px solid var(--border);border-radius:10px;padding:14px}.chart-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:8px;font-size:12px}.resumen-table{border-collapse:collapse;width:100%;font-size:13px}.resumen-table th,.resumen-table td{border-bottom:1px solid var(--gridline);text-align:right;white-space:nowrap;padding:4px 8px}.resumen-table th:first-child,.resumen-table td:first-child{text-align:left;white-space:normal}.resumen-table th{color:var(--text-muted);font-size:12px;font-weight:500}.resumen-total-row td{font-weight:600}.resumen-footnote{color:var(--text-muted);margin-top:4px;font-size:12px}.delta-good{color:var(--delta-up)}.delta-bad{color:var(--critical)}.delta-neutral{color:var(--text-muted)}.tab-note{color:var(--text-secondary);max-width:900px;margin:0 0 12px;font-size:13px}.mode-switch{border:1px solid var(--border);background:var(--surface-1);border-radius:999px;gap:2px;margin-bottom:8px;padding:2px;display:inline-flex}.mode-switch button,.mode-switch a{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:4px 12px;font-size:12px;text-decoration:none}.mode-switch button.mode-active,.mode-switch a.mode-active{background:var(--series-1);color:#fff;font-weight:600}@media (max-width:900px){.kpi-bar{grid-template-columns:repeat(3,1fr)}.dashboard-grid-2{grid-template-columns:1fr}}.header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.header-logo{width:auto;height:28px;margin-bottom:6px;display:block}.link-button{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px}.link-button:hover{color:var(--text-primary);text-decoration:underline}.date-range{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.date-input{font:inherit;border:1px solid var(--border);background:var(--surface-1);color:var(--text-primary);border-radius:8px;padding:6px 10px;font-size:13px}.date-range .chip{padding:4px 10px}.compare-note{color:var(--text-muted);margin:-12px 0 16px;font-size:12px}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.kw-table th.num{text-align:right}.kw-table tfoot td{border-top:2px solid var(--gridline);border-bottom:none;font-weight:600}.delta{font-size:10px;font-weight:600;display:block}.heat{background:rgba(var(--heat-rgb), calc(var(--heat,0) * .32))}.approx{color:var(--text-muted);cursor:help;font-weight:400}.pie-legend{color:var(--text-secondary);grid-template-columns:1fr 1fr;gap:4px 12px;margin:0;padding:0;font-size:12px;list-style:none;display:grid}.pie-legend li{align-items:center;gap:6px;display:flex}.pie-legend .swatch{border-radius:2px;flex:none;width:10px;height:10px}.pie-legend .pct{font-variant-numeric:tabular-nums;margin-left:auto}.pie-wrap{grid-template-columns:200px 1fr;align-items:center;gap:12px;display:grid}.client-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.client-list a{background:var(--surface-1);border:1px solid var(--border);color:var(--text-primary);border-radius:10px;padding:16px;font-weight:600;text-decoration:none;display:block}.client-list a:hover{border-color:var(--series-1)}.login-shell{justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.login-card{background:var(--surface-1);border:1px solid var(--border);border-radius:10px;width:100%;max-width:360px;padding:28px;position:relative;overflow:hidden}.login-card:before{content:"";background:var(--brand-gradient);height:3px;position:absolute;inset:0 0 auto}.login-card h1{margin:0 0 4px;font-size:20px;font-weight:600}.field{color:var(--text-secondary);flex-direction:column;gap:4px;margin-bottom:14px;font-size:13px;display:flex}.field .search-input{max-width:none}.primary-btn{color:#fff;background:var(--series-1);cursor:pointer;border:none;border-radius:8px;width:100%;padding:10px 14px;font-size:14px;font-weight:600}.primary-btn:disabled{opacity:.6;cursor:default}.form-error{color:var(--critical);margin:0 0 12px;font-size:13px}@media (max-width:900px){.app-header{flex-direction:column;align-items:flex-start;gap:12px}.header-actions{justify-content:flex-start}.pie-wrap{grid-template-columns:1fr}}@media (max-width:640px){.page{padding:16px}.kpi-bar{grid-template-columns:repeat(2,1fr)}.table-wrap{overflow-x:auto}}.section-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;margin:0 0 8px;font-size:12px;font-weight:600}.kpi-bar.cols-4{grid-template-columns:repeat(4,1fr);margin-bottom:16px}.kpi-bar.cols-2{grid-template-columns:repeat(2,1fr);margin-bottom:12px}.split-2-1{grid-template-columns:2fr 1fr;align-items:start;gap:16px;display:grid}@media (max-width:900px){.split-2-1{grid-template-columns:1fr}}@media (max-width:640px){.kpi-bar.cols-4{grid-template-columns:repeat(2,1fr)}}.inline-legend{flex-wrap:wrap;gap:4px 16px;margin-bottom:8px;display:flex}.tabs{flex-wrap:wrap}.sub-tabs{align-items:center;margin-top:-12px}.sub-tabs a{padding:8px 12px;font-size:13px}.sub-tabs-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;padding:0 8px 0 0;font-size:11px}.year-picker{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.placeholder-card{background:var(--surface-2);border:1px dashed var(--baseline);color:var(--text-secondary);border-radius:10px;padding:16px;font-size:13px}.page-url{overflow-wrap:anywhere;max-width:320px;color:var(--text-secondary)}.query-cell{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.country-section{border-top:1px solid var(--gridline);padding-top:8px}.country-section h2{margin:4px 0 12px;font-size:16px;font-weight:600}.metric-grid{grid-template-columns:110px repeat(6,minmax(110px,1fr));align-items:stretch;gap:8px;display:grid}.metric-grid .row-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;align-items:center;font-size:11px;display:flex}.metric-grid .col-head{text-align:center;color:var(--text-secondary);font-size:12px;font-weight:600}.metric-grid .kpi-card{padding:8px 10px}.metric-grid .kpi-value{font-size:16px}@media (max-width:900px){.metric-grid{grid-template-columns:90px repeat(6,minmax(100px,1fr));overflow-x:auto}}.kpi-bar.cols-6{grid-template-columns:repeat(6,1fr);margin-bottom:0}@media (max-width:900px){.kpi-bar.cols-6{grid-template-columns:repeat(3,1fr)}}@media (max-width:640px){.kpi-bar.cols-6{grid-template-columns:repeat(2,1fr)}}.metric-grid-wrap{overflow-x:auto}.metric-grid{min-width:760px}.split-2-1.equal-height{align-items:stretch}.equal-height .chart-card{flex-direction:column;display:flex}.equal-height .pie-wrap{margin-block:auto}.chart-card:has(.chart-toolbar){position:relative}.chart-card:has(.chart-toolbar) .chart-title{padding-right:160px}.chart-toolbar{display:flex;position:absolute;top:14px;right:14px}.trend-toggle{color:var(--text-secondary);cursor:pointer;align-items:center;gap:6px;font-size:12px;display:inline-flex}.trend-toggle input{appearance:none;background:var(--baseline);cursor:pointer;border-radius:999px;flex:none;width:32px;height:18px;margin:0;transition:background .15s;position:relative}.trend-toggle input:before{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:2px;left:2px}.trend-toggle input:checked{background:var(--series-1)}.trend-toggle input:checked:before{transform:translate(14px)}.trend-toggle input:focus-visible{outline:2px solid var(--series-1);outline-offset:2px}.table-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.table-toolbar .table-meta{margin-bottom:0}.export-button{border:1px solid var(--border);background:var(--surface-2);color:var(--text-primary);cursor:pointer;white-space:nowrap;border-radius:6px;margin-left:auto;padding:4px 10px;font-size:12px}.export-button:hover:not(:disabled){border-color:var(--series-1)}.export-button:disabled{opacity:.5;cursor:default}.chart-tag{border:1px solid var(--series-1);color:var(--series-1);letter-spacing:0;text-transform:none;white-space:nowrap;border-radius:4px;margin-right:6px;padding:0 6px;font-size:11px;font-weight:700;line-height:16px;display:inline-block}
