@charset "UTF-8";:root{--app-font: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--app-font-scale: 1;--desktop-promo-height: 92px;--app-bg: #f5f7fb;--app-surface: #ffffff;--app-surface-soft: #f8fafc;--app-surface-muted: #f1f5f9;--app-text: #0f172a;--app-text-secondary: #475569;--app-text-muted: #64748b;--app-text-subtle: #94a3b8;--app-border: #e2e8f0;--app-border-strong: #cbd5e1;--app-border-soft: #e8edf5;--app-nav-bg: rgba(255, 255, 255, .96);--app-shadow: rgba(15, 23, 42, .14);--app-primary: #2563eb;--app-primary-text: #1d4ed8;--app-primary-soft: #eff6ff;--app-primary-muted: #dbeafe;--app-success-soft: #dcfce7;--app-warning-soft: #fffbeb;--app-danger-soft: #fef2f2;--app-purple-soft: #f5f3ff;--app-orange-soft: #fff7ed;--app-pink-soft: #fae8ff;--surface: var(--app-surface);--surface-soft: var(--app-surface-soft);--text-primary: var(--app-text);--text-secondary: var(--app-text-muted);--border-color: var(--app-border);--app-on-primary: #ffffff;--app-primary-hover: #1d4ed8;--app-info-text: #1d4ed8;--app-success-text: #15803d;--app-warning-text: #b45309;--app-danger-text: #b91c1c;--app-purple-text: #7e22ce;--app-orange-text: #c2410c;--app-success-border: #bbf7d0;--app-warning-border: #fde68a;--app-danger-border: #fecaca;--app-purple-border: #e9d5ff;--app-info-border: #bfdbfe;--app-overlay: rgba(15, 23, 42, .58);--app-focus-ring: rgba(37, 99, 235, .28);--app-shadow-soft: 0 8px 24px rgba(15, 23, 42, .06);--app-shadow-elevated: 0 22px 60px rgba(15, 23, 42, .18)}html[data-theme=dark]{--app-bg: #08111f;--app-surface: #111c2e;--app-surface-soft: #162337;--app-surface-muted: #1c2b40;--app-text: #f8fafc;--app-text-secondary: #d2dcec;--app-text-muted: #aab8ca;--app-text-subtle: #8393a9;--app-border: #2a3a50;--app-border-strong: #3c4e66;--app-border-soft: #223248;--app-nav-bg: rgba(8, 17, 31, .94);--app-shadow: rgba(0, 0, 0, .42);--app-primary-text: #93c5fd;--app-primary-soft: #172b4d;--app-primary-muted: #1e3a5f;--app-success-soft: #123526;--app-warning-soft: #3a2b11;--app-danger-soft: #3d1c24;--app-purple-soft: #2c2442;--app-orange-soft: #3b2818;--app-pink-soft: #3b2140;--app-primary-hover: #3b82f6;--app-info-text: #93c5fd;--app-success-text: #86efac;--app-warning-text: #fcd34d;--app-danger-text: #fca5a5;--app-purple-text: #d8b4fe;--app-orange-text: #fdba74;--app-success-border: #276749;--app-warning-border: #7c5a16;--app-danger-border: #7f3343;--app-purple-border: #5b4776;--app-info-border: #315f99;--app-overlay: rgba(0, 0, 0, .76);--app-focus-ring: rgba(96, 165, 250, .38);--app-shadow-soft: 0 10px 30px rgba(0, 0, 0, .28);--app-shadow-elevated: 0 26px 72px rgba(0, 0, 0, .5)}html{min-height:100%;font-size:calc(16px * var(--app-font-scale));background:var(--app-bg);color-scheme:light}html[data-theme=dark]{color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--app-bg);color:var(--app-text);font-family:var(--app-font);transition:background-color .22s ease,color .22s ease}body,button,input,select,textarea{font-family:var(--app-font)}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}::selection{background:color-mix(in srgb,var(--app-primary) 28%,transparent)}app-dashboard-public,app-public-predictions,app-public-assistant,app-login,app-admin-layout,app-dashboard-admin,app-partidos,app-candidatos,app-elecciones,app-encuestas,app-resultados,app-reportes,app-usuarios,app-auditoria,app-analista-layout,app-dashboard-analista,app-candidatos-analista,app-partidos-analista,app-encuestas-analista,app-resultados-analista,app-predicciones-analista,app-reportes-analista,app-asistente-analista,app-estadisticas-analista{font-family:var(--app-font)!important;color:var(--app-text)}html[data-theme=dark] app-root{background:var(--app-bg);color:var(--app-text)}html[data-theme=dark] :is(.admin-wrapper,.analista-wrapper,.login-container,.page-shell,.main-content,.admin-main,.analista-main){background-color:var(--app-bg)!important;color:var(--app-text)!important}html[data-theme=dark] :is(.navbar,.sidebar,.card,.stat-card,.filters-card,.filter-card,.login-card,.modal,.chat-card,.chat-header,.chat-input,.chat-note,.quick-action,.new-chat,.clear-chat,.btn-outline,.btn--secondary,.tabs button.active,.reporte-card,.seg-card,.crit-card,.accion-card){background:var(--app-surface)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}html[data-theme=dark] :is(input,select,textarea,.search-box,.input-wrap,.input-icon,.history-loading,.message-body,.typing-content,.tabs,.progress,.mini-progress,.prog-bar,.prog-bar-mini,.int-bar-track,.dist-bar-track){background-color:var(--app-surface-soft)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}html[data-theme=dark] :is(.leader-card,.chat-header){background-image:linear-gradient(135deg,var(--app-surface) 0%,var(--app-primary-soft) 100%)!important}html[data-theme=dark] :is(table,.admin-table,.analista-table,.data-table,.territory-table,.detail-table){color:var(--app-text)!important}html[data-theme=dark] :is(th,td,.card-header,.modal-header,.modal-footer,.sidebar-brand,.sidebar-footer,.chat-header,.chat-input,.source-list){border-color:var(--app-border)!important}html[data-theme=dark] :is(.nav-title,.brand-title,.user-name,.table-title,.td-bold,h1,h2,h3,h4,h5,h6,label,strong){color:var(--app-text)}html[data-theme=dark] :is(.nav-subtitle,.brand-sub,.page-header p,.stat-label,.stat-sub,.card-sub,small,.chat-note,.footer-text,.td-gray,.td-correo,.td-detalle){color:var(--app-text-muted)!important}html[data-theme=dark] :is(.nav-item:hover,.quick-action:hover,.btn-outline:hover,.new-chat:hover,.clear-chat:hover){background:var(--app-surface-muted)!important}html[data-theme=dark] :is(.nav-item.active,.nav-section.active,.nav-actions>a.active,.tab-btn.active){background:var(--app-primary-soft)!important;color:var(--app-primary-text)!important}html[data-theme=dark] .modal-overlay{background:#000000b8!important}html[data-theme=dark] .message--user .message-body,html[data-theme=dark] :is(.btn-primary,.btn--primary,.btn-admin,.btn-ingresar){color:#fff!important}html[data-theme=dark] .message--user small{color:#ffffffc2!important}html[data-theme=dark] :is(.alert--success,.alert-success,.badge-system,.user-card){background:var(--app-success-soft)!important;border-color:#276749!important}html[data-theme=dark] :is(.alert--warning,.notice,.message-disclaimer){background:var(--app-warning-soft)!important;border-color:#7c5a16!important}html[data-theme=dark] :is(.alert--danger,.alert-danger,.alert-error,.chat-error,.prediction-warning){background:var(--app-danger-soft)!important;border-color:#7f3343!important}html[data-theme=dark] img{filter:brightness(.92) contrast(1.04)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.admin-parties-page .record-summary{display:block;margin-top:4px;color:var(--app-text-muted);font-size:.75rem}.admin-parties-page .parties-card{overflow:hidden}.admin-parties-page .table-wrapper{overflow-x:auto;margin:0 -4px;padding:0 4px}.admin-parties-page .admin-table{min-width:900px}.admin-parties-page .party-mark{width:10px;height:26px;border-radius:999px;flex:0 0 auto;box-shadow:inset 0 0 0 1px #0f172a1a}.admin-parties-page .badge-cand--empty{background:var(--app-warning-soft);color:#b45309}.admin-parties-page .icon-btn:disabled,.admin-parties-page .icon-btn--disabled{cursor:not-allowed;opacity:.42;filter:grayscale(1)}.admin-parties-page .loading-state,.admin-parties-page .empty-state{min-height:240px;display:flex;align-items:center;justify-content:center;text-align:center}.admin-parties-page .loading-state{gap:14px;color:var(--app-text-secondary)}.admin-parties-page .loading-state p{margin-top:4px;color:var(--app-text-muted);font-size:.8125rem}.admin-parties-page .loading-spinner{width:30px;height:30px;border:3px solid var(--app-border);border-top-color:#2563eb;border-radius:50%;animation:partySpin .8s linear infinite}.admin-parties-page .empty-state{flex-direction:column;padding:32px}.admin-parties-page .empty-state h4{margin:8px 0 6px;font-size:1rem}.admin-parties-page .empty-state p{max-width:420px;margin:0 0 18px;color:var(--app-text-muted);font-size:.8125rem}.admin-parties-page .empty-state__icon{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:var(--app-primary-soft);font-size:1.5rem}.admin-parties-page .modal-header p{margin-top:4px;color:var(--app-text-muted);font-size:.75rem}.admin-parties-page .field-help{margin:-2px 0 4px;color:var(--app-text-muted);font-size:.75rem}.admin-parties-page .color-palette{display:grid;grid-template-columns:repeat(6,minmax(38px,1fr));gap:10px}.admin-parties-page .color-swatch{position:relative;aspect-ratio:1;min-width:38px;border:3px solid var(--app-surface);border-radius:12px;background:var(--swatch-color);box-shadow:0 0 0 1px var(--app-border);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.admin-parties-page .color-swatch span{display:none;color:#fff;font-size:1rem;font-weight:900;text-shadow:0 1px 3px rgba(0,0,0,.45)}.admin-parties-page .color-swatch:hover{transform:translateY(-2px);box-shadow:0 0 0 2px var(--app-surface),0 0 0 4px color-mix(in srgb,var(--swatch-color),white 30%)}.admin-parties-page .color-swatch:focus-visible{outline:3px solid rgba(37,99,235,.35);outline-offset:3px}.admin-parties-page .color-swatch--selected{box-shadow:0 0 0 2px var(--app-surface),0 0 0 5px #2563eb;transform:scale(.94)}.admin-parties-page .color-swatch--selected span{display:inline}.admin-parties-page .custom-color{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-soft)}.admin-parties-page .custom-color__preview{width:44px;height:44px;border:3px solid var(--app-surface);border-radius:12px;box-shadow:0 0 0 1px var(--app-border)}.admin-parties-page .custom-color__text{display:flex;flex-direction:column;min-width:0}.admin-parties-page .custom-color__text strong{font-size:.8125rem}.admin-parties-page .custom-color__text span{color:var(--app-text-muted);font-size:.75rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.admin-parties-page .custom-color__button{padding:8px 12px;border:1px solid var(--app-border);border-radius:9px;background:var(--app-surface);color:var(--app-text-secondary)!important;cursor:pointer;font-size:.75rem!important;font-weight:700!important;white-space:nowrap}.admin-parties-page .custom-color__button:hover{border-color:#93c5fd;background:var(--app-primary-soft)}.admin-parties-page #party-color{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.admin-parties-page .party-summary{padding:14px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-soft)}.admin-parties-page .party-summary div{display:flex;justify-content:space-between;gap:16px}.admin-parties-page .party-summary span,.admin-parties-page .party-summary p{color:var(--app-text-muted);font-size:.75rem}.admin-parties-page .party-summary p{margin-top:6px}.admin-parties-page .status-switch{display:grid!important;grid-template-columns:auto 1fr;gap:12px;align-items:center;padding:14px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-soft);cursor:pointer}.admin-parties-page .status-switch input{position:absolute;opacity:0}.admin-parties-page .status-switch strong,.admin-parties-page .status-switch small{display:block}.admin-parties-page .status-switch small{margin-top:3px;color:var(--app-text-muted);font-size:.72rem;font-weight:400}.admin-parties-page .status-switch__control{position:relative;width:44px;height:24px;border-radius:999px;background:var(--app-border-strong);transition:background .2s ease}.admin-parties-page .status-switch__control:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0f172a40;transition:transform .2s ease}.admin-parties-page .status-switch input:checked+.status-switch__control{background:#22c55e}.admin-parties-page .status-switch input:checked+.status-switch__control:after{transform:translate(20px)}.admin-parties-page .status-switch input:focus-visible+.status-switch__control{outline:3px solid rgba(37,99,235,.3);outline-offset:3px}@media(max-width:768px){.admin-parties-page .page-header{gap:18px}.admin-parties-page .header-actions{width:100%;justify-content:stretch}.admin-parties-page .header-actions button{flex:1;justify-content:center}.admin-parties-page .card-header{align-items:stretch;gap:14px}.admin-parties-page .search-box{min-width:0;width:100%}.admin-parties-page .color-palette{grid-template-columns:repeat(4,1fr)}.admin-parties-page .custom-color{grid-template-columns:44px 1fr}.admin-parties-page .custom-color__button{grid-column:1/-1;text-align:center}}@keyframes partySpin{to{transform:rotate(360deg)}}app-candidatos .candidate-page{max-width:1500px;margin:0 auto}app-candidatos .eyebrow,app-candidatos .modal-eyebrow{margin:0 0 6px;color:var(--app-primary-text);font-size:.6875rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}app-candidatos .page-header h1{margin:0}app-candidatos .page-header .btn-primary:disabled,app-candidatos .btn-primary:disabled,app-candidatos .btn-outline:disabled,app-candidatos .btn-danger:disabled{cursor:not-allowed;opacity:.58}app-candidatos .notice{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;padding:14px 16px;margin-bottom:18px;border:1px solid;border-radius:14px}app-candidatos .notice>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font-weight:800}app-candidatos .notice strong{display:block;font-size:.8125rem}app-candidatos .notice p{margin:3px 0 0;font-size:.78125rem;line-height:1.45}app-candidatos .notice button{border:0;background:transparent;color:inherit;cursor:pointer;font-size:1.1rem}app-candidatos .notice--error{border-color:#fecaca;background:var(--app-danger-soft);color:#b91c1c}app-candidatos .notice--error>span{background:#fee2e2}app-candidatos .notice--success{border-color:#bbf7d0;background:var(--app-success-soft);color:#15803d}app-candidatos .notice--success>span{background:#dcfce7}app-candidatos .management-card{min-height:360px}app-candidatos .toolbar{display:grid;grid-template-columns:minmax(260px,1.6fr) repeat(3,minmax(150px,.7fr)) auto;gap:12px;align-items:end;margin-bottom:24px}app-candidatos .candidate-search{min-width:0;height:42px}app-candidatos .filter-control{display:flex;flex-direction:column;gap:5px}app-candidatos .filter-control>span{color:var(--app-text-muted);font-size:.6875rem;font-weight:700}app-candidatos .filter-control select{width:100%;min-width:0;height:42px;padding:0 12px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface-soft);color:var(--app-text);font-size:.8125rem;outline:none}app-candidatos .filter-control select:focus{border-color:var(--app-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--app-primary) 14%,transparent)}app-candidatos .refresh-button{height:42px;justify-content:center;white-space:nowrap}app-candidatos .spin{display:inline-block;animation:spin .8s linear infinite}app-candidatos .list-heading{display:flex;justify-content:space-between;gap:16px;align-items:end;margin-bottom:10px}app-candidatos .list-heading h2{margin:0;font-size:1rem}app-candidatos .list-heading p{margin:4px 0 0;color:var(--app-text-muted);font-size:.75rem}app-candidatos .clear-filters{padding:5px 0;border:0;background:transparent;color:var(--app-primary-text);cursor:pointer;font-size:.75rem;font-weight:700}app-candidatos .table-scroll{overflow-x:auto;overscroll-behavior-inline:contain}app-candidatos .candidate-table{min-width:1180px}app-candidatos .candidate-table th,app-candidatos .candidate-table td{padding-inline:10px}app-candidatos .candidate-table tbody tr{transition:background-color .18s ease}app-candidatos .candidate-table tbody tr:hover{background:var(--app-surface-soft)}app-candidatos .candidate-identity,app-candidatos .party-cell{display:flex;gap:10px;align-items:center;min-width:0}app-candidatos .candidate-identity strong,app-candidatos .party-cell strong{display:block;color:var(--app-text);font-size:.8125rem}app-candidatos .candidate-identity small,app-candidatos .party-cell small{display:block;margin-top:2px;color:var(--app-text-subtle);font-size:.6875rem}app-candidatos .candidate-avatar{display:grid;flex:0 0 auto;place-items:center;width:38px;height:38px;border:2px solid color-mix(in srgb,var(--candidate-color) 70%,white);border-radius:12px;background:color-mix(in srgb,var(--candidate-color) 16%,var(--app-surface));color:var(--candidate-color);font-size:.75rem;font-weight:800}app-candidatos .party-color{flex:0 0 auto;width:10px;height:28px;border-radius:99px}app-candidatos .election-cell{min-width:185px}app-candidatos .election-cell strong{display:block;max-width:230px;overflow:hidden;color:var(--app-text);font-size:.78125rem;text-overflow:ellipsis;white-space:nowrap}app-candidatos .election-cell span{display:block;margin-top:3px;color:var(--app-text-muted);font-size:.6875rem}app-candidatos .scope-badge{display:inline-flex;padding:5px 9px;border-radius:99px;background:var(--app-primary-soft);color:var(--app-primary-text);font-size:.6875rem;font-weight:700;white-space:nowrap}app-candidatos .scope-badge--regional{background:var(--app-purple-soft);color:#7e22ce}app-candidatos .status-pill{display:inline-flex;gap:6px;align-items:center;padding:5px 10px;border-radius:99px;background:var(--app-success-soft);color:#15803d;font-size:.6875rem;font-weight:700;white-space:nowrap}app-candidatos .status-pill>span{width:7px;height:7px;border-radius:50%;background:#22c55e}app-candidatos .status-pill--inactive{background:var(--app-surface-muted);color:var(--app-text-muted)}app-candidatos .status-pill--inactive>span{background:var(--app-text-subtle)}app-candidatos .dependency-cell{display:flex;flex-direction:column;gap:3px;min-width:92px;color:var(--app-text-muted);font-size:.6875rem}app-candidatos .actions-column{position:sticky;right:0;background:var(--app-surface);box-shadow:-10px 0 18px color-mix(in srgb,var(--app-shadow) 7%,transparent)}app-candidatos .candidate-table tbody tr:hover .actions-column{background:var(--app-surface-soft)}app-candidatos .icon-btn--disabled{opacity:.48}app-candidatos .muted{color:var(--app-text-subtle)}app-candidatos .loading-state,app-candidatos .empty-state{display:flex;min-height:260px;flex-direction:column;align-items:center;justify-content:center;padding:32px;text-align:center}app-candidatos .loading-state strong,app-candidatos .loading-state h3,app-candidatos .empty-state strong,app-candidatos .empty-state h3{margin:12px 0 4px;font-size:1rem}app-candidatos .loading-state span,app-candidatos .loading-state p,app-candidatos .empty-state span,app-candidatos .empty-state p{max-width:430px;margin:0 0 16px;color:var(--app-text-muted);font-size:.8125rem}app-candidatos .spinner{width:34px;height:34px;border:3px solid var(--app-primary-muted);border-top-color:var(--app-primary);border-radius:50%;animation:spin .8s linear infinite}app-candidatos .empty-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:var(--app-primary-soft);font-size:1.5rem}app-candidatos .pagination{display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center;padding-top:18px;margin-top:8px;border-top:1px solid var(--app-border-soft);color:var(--app-text-muted);font-size:.75rem}app-candidatos .pagination label{display:flex;gap:8px;align-items:center}app-candidatos .pagination select{padding:6px 9px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-text)}app-candidatos .pagination-actions{display:flex;gap:10px;align-items:center}app-candidatos .pagination-actions button{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-text);cursor:pointer;font-size:1.2rem}app-candidatos .pagination-actions button:disabled{cursor:not-allowed;opacity:.4}app-candidatos .candidate-cards{display:none}app-candidatos .candidate-modal{max-width:720px}app-candidatos .modal-header h2{margin:0;font-size:1.125rem}app-candidatos .modal-eyebrow{margin-bottom:4px}app-candidatos .form-intro{padding:12px 14px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-soft);color:var(--app-text-secondary);font-size:.75rem;line-height:1.5}app-candidatos .form-group label{color:var(--app-text-secondary)}app-candidatos .input-error{border-color:#ef4444!important;box-shadow:0 0 0 3px color-mix(in srgb,#ef4444 12%,transparent)!important}app-candidatos .field-error{color:#dc2626;font-size:.6875rem}app-candidatos .optional{margin-left:4px;color:var(--app-text-subtle);font-size:.625rem;font-weight:500}app-candidatos .election-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:12px;border:1px solid #bfdbfe;border-radius:12px;background:var(--app-primary-soft)}app-candidatos .election-preview div{min-width:0}app-candidatos .election-preview span,app-candidatos .election-preview strong{display:block}app-candidatos .election-preview span{color:var(--app-text-muted);font-size:.625rem}app-candidatos .election-preview strong{margin-top:2px;overflow:hidden;color:var(--app-text);font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}app-candidatos .status-switch{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--app-border);border-radius:12px;cursor:pointer}app-candidatos .status-switch input{position:absolute;opacity:0;pointer-events:none}app-candidatos .status-switch strong,app-candidatos .status-switch small{display:block}app-candidatos .status-switch strong{font-size:.8125rem}app-candidatos .status-switch small{margin-top:3px;color:var(--app-text-muted);font-size:.6875rem;line-height:1.4}app-candidatos .status-switch__control{position:relative;flex:0 0 auto;width:42px;height:24px;border-radius:99px;background:var(--app-border-strong);transition:.2s}app-candidatos .status-switch__control:after{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #0003;content:"";transition:.2s}app-candidatos .status-switch input:checked+.status-switch__control{background:#22c55e}app-candidatos .status-switch input:checked+.status-switch__control:after{transform:translate(18px)}app-candidatos .status-switch input:focus-visible+.status-switch__control{outline:3px solid color-mix(in srgb,var(--app-primary) 28%,transparent);outline-offset:2px}app-candidatos .confirm-modal{max-width:430px;padding:30px;text-align:center}app-candidatos .confirm-modal h2{margin:14px 0 8px;font-size:1.125rem}app-candidatos .confirm-modal p{margin:0;color:var(--app-text-secondary);font-size:.8125rem;line-height:1.55}app-candidatos .confirm-icon{display:grid;place-items:center;width:52px;height:52px;margin:0 auto;border-radius:16px;background:var(--app-danger-soft);color:#dc2626;font-size:1.25rem;font-weight:900}app-candidatos .confirm-actions{display:flex;justify-content:center;gap:10px;margin-top:24px}app-candidatos .btn-danger,app-candidatos .btn-danger-outline{border-radius:10px;padding:9px 16px;font-size:.8125rem;font-weight:700;cursor:pointer}app-candidatos .btn-danger{border:1px solid #dc2626;background:#dc2626;color:#fff}app-candidatos .btn-danger-outline{border:1px solid #fecaca;background:var(--app-danger-soft);color:#b91c1c}app-candidatos .btn-danger-outline:disabled{cursor:not-allowed;opacity:.45}app-candidatos .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1280px){app-candidatos .toolbar{grid-template-columns:minmax(240px,1fr) repeat(2,minmax(150px,.65fr))}app-candidatos .refresh-button{grid-column:3}}@media(max-width:900px){app-candidatos .toolbar{grid-template-columns:1fr 1fr}app-candidatos .candidate-search{grid-column:1/-1}app-candidatos .refresh-button{grid-column:auto}app-candidatos .desktop-list{display:none}app-candidatos .candidate-cards{display:grid;gap:12px}app-candidatos .candidate-card{padding:16px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface-soft)}app-candidatos .candidate-card__header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}app-candidatos .candidate-card h3,app-candidatos .candidate-card p{margin:0}app-candidatos .candidate-card h3{font-size:.875rem}app-candidatos .candidate-card p{margin-top:3px;color:var(--app-text-muted);font-size:.6875rem}app-candidatos .candidate-card dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}app-candidatos .candidate-card dt{color:var(--app-text-muted);font-size:.625rem}app-candidatos .candidate-card dd{margin:3px 0 0;font-size:.75rem;line-height:1.4}app-candidatos .candidate-card__actions{display:flex;gap:8px}app-candidatos .candidate-card__actions button{flex:1;justify-content:center}}@media(max-width:680px){app-candidatos .page-header{flex-direction:column;gap:16px}app-candidatos .page-header .btn-primary{width:100%;justify-content:center}app-candidatos .stats-grid{grid-template-columns:1fr}app-candidatos .card{padding:16px}app-candidatos .toolbar{grid-template-columns:1fr}app-candidatos .candidate-search,app-candidatos .refresh-button{grid-column:auto}app-candidatos .list-heading{align-items:flex-start;flex-direction:column}app-candidatos .candidate-card__header{flex-direction:column}app-candidatos .candidate-card dl{grid-template-columns:1fr}app-candidatos .pagination{grid-template-columns:1fr;justify-items:start}app-candidatos .form-row,app-candidatos .election-preview{grid-template-columns:1fr}app-candidatos .modal-overlay{align-items:flex-end}app-candidatos .modal{max-height:92vh;border-radius:20px 20px 0 0}app-candidatos .modal-header,app-candidatos .modal-body,app-candidatos .modal-footer{padding-inline:18px}app-candidatos .modal-footer button{flex:1;justify-content:center}}@media(prefers-reduced-motion:reduce){app-candidatos .spin,app-candidatos .spinner{animation-duration:1.8s}}app-elecciones .elections-page{display:flex;flex-direction:column;gap:24px}app-elecciones .elections-header{align-items:flex-start;margin-bottom:0}app-elecciones .eyebrow,app-elecciones .modal-eyebrow{margin:0 0 6px!important;color:#2563eb!important;font-size:.6875rem!important;font-weight:800;letter-spacing:.08em;text-transform:uppercase}app-elecciones .header-actions{display:flex;align-items:flex-end;gap:14px}app-elecciones .generated-at{color:var(--app-text-subtle);font-size:.6875rem;text-align:right}app-elecciones .notice{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;border:1px solid;border-radius:12px;padding:12px 14px;font-size:.8125rem}app-elecciones .notice>span:first-child{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font-weight:800}app-elecciones .notice button{border:0;background:transparent;color:inherit;cursor:pointer;font-size:1rem}app-elecciones .success-notice{border-color:#86efac;background:var(--app-success-soft);color:#166534}app-elecciones .success-notice>span:first-child{background:#dcfce7}app-elecciones .error-notice{border-color:#fca5a5;background:var(--app-danger-soft);color:#991b1b}app-elecciones .error-notice>span:first-child{background:#fee2e2}app-elecciones .stats-grid{margin-bottom:0}app-elecciones .stat-card{display:flex;align-items:center;justify-content:space-between}app-elecciones .section-heading,app-elecciones .list-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}app-elecciones .section-heading h2,app-elecciones .list-heading h2{margin:0;font-size:1rem}app-elecciones .section-heading p,app-elecciones .list-heading p{margin:5px 0 0;color:var(--app-text-muted);font-size:.75rem}app-elecciones .text-button,app-elecciones .clear-button{border:0;background:transparent;color:#2563eb;cursor:pointer;font:inherit;font-size:.75rem;font-weight:700}app-elecciones .text-button:hover,app-elecciones .clear-button:hover{text-decoration:underline}app-elecciones .state-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:18px}app-elecciones .state-card{display:flex;align-items:center;gap:9px;min-height:64px;padding:12px 14px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-soft);color:var(--app-text-primary);cursor:pointer;text-align:left;transition:border-color .2s,transform .2s,box-shadow .2s}app-elecciones .state-card strong{display:block;font-size:1rem}app-elecciones .state-card:hover,app-elecciones .state-card.selected{border-color:#93c5fd;box-shadow:0 6px 18px #2563eb1a;transform:translateY(-1px)}app-elecciones .state-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto;background:currentColor}app-elecciones .state-configurada{color:#475569}app-elecciones .state-abierta{color:#16a34a}app-elecciones .state-en-conteo{color:#2563eb}app-elecciones .state-cerrada{color:#7c3aed}app-elecciones .state-archivada{color:#64748b}app-elecciones .elections-list{padding:22px}app-elecciones .filters{display:grid;grid-template-columns:minmax(240px,1.5fr) repeat(3,minmax(150px,.8fr)) auto;gap:12px;align-items:center;margin:20px 0}app-elecciones .filters select,app-elecciones .filters input{width:100%;min-height:42px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface-soft);color:var(--app-text-primary);font:inherit;font-size:.7812rem;outline:none}app-elecciones .filters select:focus,app-elecciones .filters input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}app-elecciones .filters select{padding:0 12px}app-elecciones .search-field{display:flex;align-items:center;gap:8px;min-height:42px;padding:0 12px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface-soft)}app-elecciones .search-field:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}app-elecciones .search-field input{min-height:38px;padding:0;border:0;box-shadow:none!important;background:transparent}app-elecciones .loading-state,app-elecciones .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:260px;text-align:center;color:var(--app-text-muted)}app-elecciones .loading-state h3,app-elecciones .empty-state h3{margin:12px 0 4px;color:var(--app-text-primary);font-size:1rem}app-elecciones .loading-state p,app-elecciones .empty-state p{max-width:420px}app-elecciones .empty-icon{font-size:2rem}app-elecciones .spinner{width:28px;height:28px;border:3px solid var(--app-border);border-top-color:#2563eb;border-radius:50%;animation:spin .8s linear infinite}app-elecciones .table-wrapper{overflow-x:auto}app-elecciones .elections-table{width:100%;min-width:1000px;border-collapse:collapse}app-elecciones .elections-table th,app-elecciones .elections-table td{padding:14px 12px;border-bottom:1px solid var(--app-border);text-align:left;vertical-align:middle}app-elecciones .elections-table th{color:var(--app-text-muted);font-size:.6875rem;font-weight:700}app-elecciones .elections-table td{font-size:.7812rem}app-elecciones .elections-table tbody tr:hover{background:var(--app-surface-soft)}app-elecciones .actions-column{width:100px}app-elecciones .election-name{max-width:260px;font-weight:700;line-height:1.35}app-elecciones .row-meta,app-elecciones .state-help,app-elecciones .progress-head span:last-child,app-elecciones .elections-table small{display:block;margin-top:4px;color:var(--app-text-subtle);font-size:.6563rem}app-elecciones .date-value{font-weight:600}app-elecciones .tag-row,app-elecciones .mobile-tags{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:6px}app-elecciones .type-badge,app-elecciones .round-label{display:inline-flex;align-items:center;border-radius:999px;padding:3px 9px;font-size:.6563rem;font-weight:700}app-elecciones .type-presidencia{background:var(--app-primary-soft);color:#1d4ed8}app-elecciones .type-senado{background:var(--app-success-soft);color:#15803d}app-elecciones .type-camara{background:var(--app-warning-soft);color:#b45309}app-elecciones .round-label{background:var(--app-surface-muted);color:var(--app-text-secondary)}app-elecciones .progress-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:190px;font-weight:700}app-elecciones .progress-head span:last-child{margin-top:0}app-elecciones .progress-track{height:7px;margin-top:8px;overflow:hidden;border-radius:999px;background:var(--app-surface-muted)}app-elecciones .progress-value{height:100%;border-radius:inherit;background:linear-gradient(90deg,#2563eb,#60a5fa)}app-elecciones .dependency-list{display:flex;flex-direction:column;gap:4px;color:var(--app-text-secondary);font-size:.7188rem}app-elecciones .dependency-list strong{color:var(--app-text-primary)}app-elecciones .state-badge{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;border-radius:999px;padding:5px 10px;font-size:.6875rem;font-weight:700}app-elecciones .state-configurada{background:var(--app-surface-muted);color:#475569}app-elecciones .state-abierta{background:var(--app-success-soft);color:#15803d}app-elecciones .state-en-conteo{background:var(--app-primary-soft);color:#1d4ed8}app-elecciones .state-cerrada{background:var(--app-purple-soft);color:#6d28d9}app-elecciones .state-archivada{background:var(--app-surface-muted);color:#64748b}app-elecciones .row-actions{display:flex;gap:7px}app-elecciones .icon-button{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--app-border);border-radius:9px;background:var(--app-surface);color:var(--app-text-primary);cursor:pointer;font-size:.9rem}app-elecciones .icon-button:hover{border-color:#93c5fd;background:var(--app-primary-soft)}app-elecciones .icon-button.danger:hover{border-color:#fca5a5;background:var(--app-danger-soft);color:#b91c1c}app-elecciones .icon-button.disabled-look{opacity:.5}app-elecciones .mobile-list{display:none}app-elecciones .pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px;color:var(--app-text-muted);font-size:.7188rem}app-elecciones .pagination>div{display:flex;align-items:center;gap:10px}app-elecciones .pagination button{width:32px;height:32px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-text-primary);cursor:pointer}app-elecciones .pagination button:disabled{opacity:.4;cursor:not-allowed}app-elecciones .election-modal{width:min(680px,100vw - 32px)}app-elecciones .form-intro{margin-bottom:18px;border-radius:10px;padding:12px 14px;background:var(--app-primary-soft);color:var(--app-text-secondary);font-size:.75rem;line-height:1.5}app-elecciones .form-intro.warning{border:1px solid #fde68a;background:var(--app-warning-soft);color:#92400e}app-elecciones .form-group small:not(.field-error){margin-top:5px;color:var(--app-text-subtle);font-size:.6563rem}app-elecciones .input-error{border-color:#ef4444!important}app-elecciones .field-error{color:#dc2626!important;font-size:.6875rem!important}app-elecciones .dependency-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}app-elecciones .dependency-summary div{display:flex;flex-direction:column;gap:3px;border:1px solid var(--app-border);border-radius:10px;padding:12px;background:var(--app-surface-soft)}app-elecciones .dependency-summary strong{font-size:1rem}app-elecciones .dependency-summary span{color:var(--app-text-muted);font-size:.6563rem}app-elecciones .confirm-modal{width:min(440px,100vw - 32px);padding:28px;text-align:center}app-elecciones .confirm-modal h2{margin:12px 0 8px;font-size:1.125rem}app-elecciones .confirm-modal p{color:var(--app-text-secondary);line-height:1.55}app-elecciones .confirm-icon{display:grid;place-items:center;width:48px;height:48px;margin:0 auto;border-radius:50%;background:var(--app-danger-soft);color:#dc2626;font-size:1.25rem;font-weight:800}app-elecciones .centered{justify-content:center}app-elecciones .danger-button{border:0;border-radius:10px;padding:10px 16px;background:#dc2626;color:#fff;cursor:pointer;font:inherit;font-size:.75rem;font-weight:700}app-elecciones .danger-button:disabled{opacity:.6;cursor:not-allowed}app-elecciones .danger-outline{color:#b91c1c}app-elecciones .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1180px){app-elecciones .state-grid{grid-template-columns:repeat(3,minmax(0,1fr))}app-elecciones .filters{grid-template-columns:1fr 1fr}app-elecciones .clear-button{justify-self:start}}@media(max-width:820px){app-elecciones .elections-header,app-elecciones .header-actions,app-elecciones .list-heading,app-elecciones .section-heading{align-items:stretch;flex-direction:column}app-elecciones .generated-at{text-align:left}app-elecciones .state-grid{grid-template-columns:1fr 1fr}app-elecciones .filters{grid-template-columns:1fr}app-elecciones .table-wrapper{display:none}app-elecciones .mobile-list{display:grid;gap:12px}app-elecciones .election-mobile-card{border:1px solid var(--app-border);border-radius:14px;padding:16px;background:var(--app-surface-soft)}app-elecciones .mobile-card-head{display:flex;justify-content:space-between;gap:12px}app-elecciones .mobile-card-head h3{margin:0;font-size:.875rem}app-elecciones .mobile-card-head p{margin:4px 0 0;color:var(--app-text-muted);font-size:.6875rem}app-elecciones .mobile-tags{color:var(--app-text-secondary);font-size:.6875rem}app-elecciones .mobile-progress{margin-top:14px}app-elecciones .mobile-progress>div:first-child{display:flex;justify-content:space-between;font-size:.7188rem}app-elecciones .mobile-actions{display:flex;gap:10px;margin-top:16px}app-elecciones .mobile-actions button{flex:1}app-elecciones .pagination{align-items:flex-start;flex-direction:column}}@media(max-width:560px){app-elecciones .state-grid,app-elecciones .dependency-summary{grid-template-columns:1fr}app-elecciones .elections-list{padding:16px}app-elecciones .mobile-card-head{flex-direction:column}app-elecciones .form-row{grid-template-columns:1fr}}app-encuestas .poll-page{min-width:0}app-encuestas .header-actions{flex-wrap:wrap;justify-content:flex-end}app-encuestas .file-button{cursor:pointer}app-encuestas .file-button input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}app-encuestas .file-button.is-disabled{cursor:wait;opacity:.65}app-encuestas button:disabled,app-encuestas select:disabled,app-encuestas input:disabled,app-encuestas textarea:disabled{cursor:not-allowed;opacity:.62}app-encuestas .page-feedback{min-height:0}app-encuestas .alert-error,app-encuestas .alert-success{border-radius:10px;margin:0 0 18px;padding:11px 14px;font-size:.8125rem;line-height:1.45}app-encuestas .alert-error{color:#b91c1c;background:var(--app-danger-soft);border:1px solid #fecaca}app-encuestas .alert-success{color:#166534;background:var(--app-success-soft);border:1px solid #bbf7d0}app-encuestas .poll-list-card{overflow:hidden}app-encuestas .poll-filters{align-items:flex-end}app-encuestas .flex-search{flex:1 1 300px;min-width:min(100%,280px)}app-encuestas .filter-control{display:flex;flex:0 1 220px;flex-direction:column;gap:5px;color:var(--app-text-secondary);font-size:.75rem;font-weight:600}app-encuestas .filter-control select{min-height:38px;color:var(--app-text)}app-encuestas .list-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}app-encuestas .list-heading h2{margin:0;font-size:.9375rem}app-encuestas .list-heading p{margin:4px 0 0;color:var(--app-text-muted);font-size:.75rem}app-encuestas .table-wrapper{width:100%;overflow-x:auto;overscroll-behavior-inline:contain}app-encuestas .poll-table{min-width:980px}app-encuestas .poll-table th,app-encuestas .poll-table td{white-space:nowrap}app-encuestas .poll-table td:nth-child(1),app-encuestas .poll-table td:nth-child(2){white-space:normal}app-encuestas .selectable-row{cursor:pointer;transition:background-color .18s ease,box-shadow .18s ease}app-encuestas .selectable-row:hover,app-encuestas .selectable-row:focus-visible{background:var(--app-surface-soft);outline:none}app-encuestas .selectable-row:focus-visible{box-shadow:inset 3px 0 var(--app-primary)}app-encuestas .selected-row{background:var(--app-primary-soft);box-shadow:inset 3px 0 var(--app-primary)}app-encuestas .source-cell,app-encuestas .election-cell{display:flex;flex-direction:column;gap:3px}app-encuestas .source-cell strong,app-encuestas .source-cell span,app-encuestas .election-cell strong,app-encuestas .election-cell span{color:var(--app-text)}app-encuestas .source-cell>span:last-child,app-encuestas .source-cell small,app-encuestas .election-cell>span:last-child,app-encuestas .election-cell small{color:var(--app-text-muted);font-size:.7188rem;font-weight:500}app-encuestas .source-cell{max-width:230px}app-encuestas .election-cell{max-width:260px}app-encuestas .result-count{display:inline-flex;min-width:28px;height:28px;align-items:center;justify-content:center;border-radius:999px;background:var(--app-success-soft);color:#15803d;font-size:.75rem;font-weight:700}app-encuestas .poll-table td:nth-child(6) small{display:block;margin-top:4px;color:var(--app-text-muted);font-size:.6875rem}app-encuestas .actions-heading{text-align:center!important}app-encuestas .td-actions{justify-content:center}app-encuestas .refresh-icon{display:inline-block}app-encuestas .spinning{animation:spin .8s linear infinite}app-encuestas .pagination{display:flex;align-items:center;justify-content:flex-end;gap:18px;padding-top:18px;color:var(--app-text-muted);font-size:.75rem}app-encuestas .pagination label{display:flex;align-items:center;gap:8px}app-encuestas .pagination select{padding:6px 28px 6px 9px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-text)}app-encuestas .pagination-actions{display:flex;gap:6px}app-encuestas .pagination-actions button{width:34px;height:34px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-text);cursor:pointer;font-size:1.125rem}app-encuestas .pagination-actions button:hover:not(:disabled){background:var(--app-primary-soft);border-color:#bfdbfe}app-encuestas .empty-state,app-encuestas .loading-state{display:flex;min-height:260px;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:36px 16px;text-align:center}app-encuestas .empty-state h3,app-encuestas .empty-state strong,app-encuestas .loading-state h3,app-encuestas .loading-state strong{margin:0;color:var(--app-text)}app-encuestas .empty-state p,app-encuestas .empty-state span,app-encuestas .loading-state p,app-encuestas .loading-state span{max-width:440px;margin:0;color:var(--app-text-muted);font-size:.8125rem}app-encuestas .empty-icon{display:grid;width:52px;height:52px;place-items:center;border-radius:14px;background:var(--app-primary-soft);color:var(--app-primary-text);font-size:1.4rem}app-encuestas .loading-state{min-height:420px;border:1px solid var(--app-border);border-radius:16px;background:var(--app-surface)}app-encuestas .loading-spinner{width:34px;height:34px;border:3px solid var(--app-border);border-top-color:var(--app-primary);border-radius:50%;animation:spin .8s linear infinite}app-encuestas .detail-grid{align-items:stretch}app-encuestas .detail-grid .card{min-width:0}app-encuestas .detail-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}app-encuestas .detail-card-header h3{margin-bottom:5px}app-encuestas .detail-card-header p{margin:0;color:var(--app-text-muted);font-size:.75rem}app-encuestas .intencion-list{display:flex;flex-direction:column;gap:16px}app-encuestas .int-item{min-width:0}app-encuestas .int-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:7px;font-size:.8125rem}app-encuestas .int-name{min-width:0;overflow:hidden;color:var(--app-text);font-weight:600;text-overflow:ellipsis;white-space:nowrap}app-encuestas .int-name small{margin-left:5px;color:var(--app-text-muted);font-size:.6875rem;font-weight:500}app-encuestas .int-pct{flex:0 0 auto;color:var(--app-text)}app-encuestas .int-bar-track{width:100%;height:8px;overflow:hidden;border-radius:999px;background:var(--app-surface-muted)}app-encuestas .int-bar-fill{min-width:2px;height:100%;border-radius:inherit;transition:width .25s ease}app-encuestas .detail-list{margin:0}app-encuestas .detail-list>div{display:grid;grid-template-columns:minmax(130px,.75fr) minmax(0,1.25fr);gap:16px;padding:12px 0;border-bottom:1px solid var(--app-surface-muted)}app-encuestas .detail-list>div:last-child{border-bottom:0}app-encuestas .detail-list dt{color:var(--app-text-muted);font-size:.7813rem}app-encuestas .detail-list dd{margin:0;color:var(--app-text);font-size:.8125rem;font-weight:600;line-height:1.45;text-align:right;overflow-wrap:anywhere}app-encuestas .inline-empty,app-encuestas .empty-detail p{margin:0;color:var(--app-text-muted);font-size:.8125rem;line-height:1.5}app-encuestas .validation-card{margin-bottom:0}app-encuestas .poll-modal{max-width:860px}app-encuestas .modal-header{align-items:flex-start}app-encuestas .modal-header h3{margin:0}app-encuestas .modal-header p{margin:4px 0 0;color:var(--app-text-muted);font-size:.75rem}app-encuestas .modal-body{max-height:min(72vh,760px)}app-encuestas .full-row{grid-column:1/-1}app-encuestas .three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}app-encuestas .form-group label{color:var(--app-text-secondary)}app-encuestas .form-group textarea{resize:vertical}app-encuestas .field-help{align-self:flex-end;color:var(--app-text-muted);font-size:.6875rem}app-encuestas .result-editor{padding:16px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface-soft)}app-encuestas .result-editor-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}app-encuestas .form-help{margin-top:4px;color:var(--app-text-muted);font-size:.75rem}app-encuestas .result-summary{margin-bottom:12px;color:var(--app-text-secondary);font-size:.75rem;text-align:right}app-encuestas .result-summary.over-limit{color:#b91c1c}app-encuestas .result-row{display:grid;grid-template-columns:minmax(0,1fr) 170px 36px;gap:12px;align-items:end;margin-top:10px}app-encuestas .percentage-input{display:flex;align-items:center;overflow:hidden;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface)}app-encuestas .percentage-input:focus-within{border-color:var(--app-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--app-primary) 12%,transparent)}app-encuestas .percentage-input input{width:100%;border:0;box-shadow:none!important}app-encuestas .percentage-input span{padding-right:12px;color:var(--app-text-muted);font-size:.8125rem}app-encuestas .remove-result{margin-bottom:1px}app-encuestas .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1024px){app-encuestas .page-header{gap:18px}app-encuestas .header-actions{max-width:520px}app-encuestas .three-columns{grid-template-columns:1fr 1fr}app-encuestas .three-columns .form-group:last-child{grid-column:1/-1}}@media(max-width:768px){app-encuestas .page-header{flex-direction:column}app-encuestas .header-actions{width:100%;max-width:none;justify-content:stretch}app-encuestas .header-actions .btn-outline,app-encuestas .header-actions .btn-primary,app-encuestas .header-actions .file-button{flex:1 1 160px;justify-content:center}app-encuestas .poll-filters{align-items:stretch}app-encuestas .filter-control,app-encuestas .flex-search{flex-basis:100%}app-encuestas .pagination{flex-wrap:wrap;justify-content:space-between}app-encuestas .detail-card-header,app-encuestas .result-editor-header{align-items:flex-start;flex-direction:column}app-encuestas .form-row,app-encuestas .three-columns,app-encuestas .result-row{grid-template-columns:1fr}app-encuestas .three-columns .form-group:last-child{grid-column:auto}app-encuestas .remove-result{width:100%}app-encuestas .modal-overlay{align-items:flex-end}app-encuestas .poll-modal{max-height:96vh;border-radius:18px 18px 0 0}app-encuestas .modal-body{max-height:calc(96vh - 150px);padding:20px}app-encuestas .modal-header,app-encuestas .modal-footer{padding-right:20px;padding-left:20px}}@media(max-width:520px){app-encuestas .stats-grid{grid-template-columns:1fr}app-encuestas .card{padding:18px}app-encuestas .detail-list>div{grid-template-columns:1fr;gap:5px}app-encuestas .detail-list dd{text-align:left}app-encuestas .modal-footer{display:grid;grid-template-columns:1fr 1fr}}app-resultados .results-page{min-width:0}app-resultados .page-feedback{min-height:0}app-resultados .alert-success,app-resultados .alert-error{border-radius:10px;padding:11px 14px;margin:0 0 16px;font-size:.8125rem;line-height:1.45}app-resultados .alert-success{color:#166534;background:var(--app-success-soft);border:1px solid color-mix(in srgb,#22c55e 35%,var(--app-border))}app-resultados .alert-error{color:#b91c1c;background:var(--app-danger-soft);border:1px solid color-mix(in srgb,#ef4444 35%,var(--app-border))}app-resultados button:disabled,app-resultados .is-disabled{opacity:.58;cursor:not-allowed}app-resultados button:focus-visible,app-resultados a:focus-visible,app-resultados input:focus-visible,app-resultados select:focus-visible,app-resultados .file-button:focus-within,app-resultados .action-card:focus-visible{outline:3px solid color-mix(in srgb,var(--app-primary) 32%,transparent);outline-offset:2px}app-resultados .file-button,app-resultados .file-card{position:relative;overflow:hidden}app-resultados .file-button input[type=file],app-resultados .file-card input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}app-resultados .progress-bar{width:100%;height:6px;margin-top:9px;overflow:hidden;border-radius:999px;background:var(--app-surface-muted)}app-resultados .prog-fill{height:100%;border-radius:inherit;transition:width .25s ease}app-resultados .traceability-value{font-size:1.15rem;line-height:1.25}app-resultados .traceability-completa{color:#15803d}app-resultados .traceability-incompleta,app-resultados .traceability-requiere_revision{color:#b45309}app-resultados .traceability-sin_datos{color:var(--app-text-muted)}app-resultados .results-list-card{padding-bottom:18px}app-resultados .result-filters{align-items:flex-end}app-resultados .flex-search{flex:1 1 270px}app-resultados .filter-control{display:flex;flex:0 1 180px;min-width:150px;flex-direction:column;gap:5px}app-resultados .filter-control>span{font-size:.6875rem;font-weight:700;color:var(--app-text-muted)}app-resultados .filter-control select{width:100%}app-resultados .list-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:8px 0 14px}app-resultados .list-heading h2,app-resultados .list-heading h3{margin:0;font-size:1rem}app-resultados .list-heading p{margin:4px 0 0;font-size:.75rem;color:var(--app-text-muted)}app-resultados .table-wrapper{width:100%;overflow-x:auto;border:1px solid var(--app-border-soft);border-radius:12px}app-resultados .results-table{min-width:1180px}app-resultados .results-table th,app-resultados .results-table td{white-space:nowrap}app-resultados .results-table tbody tr{transition:background-color .18s ease}app-resultados .results-table tbody tr:hover{background:var(--app-surface-soft)}app-resultados .results-table small{display:block;margin-top:3px;color:var(--app-text-muted);font-size:.6875rem}app-resultados .numeric-column{text-align:right!important}app-resultados .actions-heading{text-align:center!important}app-resultados .candidate-cell{display:flex;align-items:center;gap:9px}app-resultados .candidate-cell strong{display:block;max-width:190px;overflow:hidden;text-overflow:ellipsis}app-resultados .party-dot{width:11px;height:11px;border-radius:50%;flex:0 0 auto;box-shadow:0 0 0 3px var(--app-surface-muted)}app-resultados .territory-cell,app-resultados .trace-cell{display:flex;flex-direction:column;gap:2px}app-resultados .territory-cell strong,app-resultados .territory-cell span,app-resultados .trace-cell strong,app-resultados .trace-cell span{max-width:180px;overflow:hidden;text-overflow:ellipsis}app-resultados .tables-value{font-weight:700}app-resultados .status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.6875rem;font-weight:700}app-resultados .status-validado{color:#15803d;background:var(--app-success-soft)}app-resultados .status-pendiente{color:#b45309;background:var(--app-warning-soft)}app-resultados .status-rechazado{color:#b91c1c;background:var(--app-danger-soft)}app-resultados .validation-detail{max-width:150px;overflow:hidden;text-overflow:ellipsis}app-resultados .td-actions{justify-content:center}app-resultados .pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px;color:var(--app-text-muted);font-size:.75rem}app-resultados .pagination label{display:flex;align-items:center;gap:8px}app-resultados .pagination select{padding:6px 9px;border:1px solid var(--app-border);border-radius:8px;color:var(--app-text);background:var(--app-surface)}app-resultados .pagination-actions{display:flex;gap:6px}app-resultados .pagination-actions button{width:34px;height:34px;border:1px solid var(--app-border);border-radius:8px;color:var(--app-text);background:var(--app-surface);cursor:pointer}app-resultados .empty-state,app-resultados .loading-state{min-height:260px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:34px;border:1px dashed var(--app-border);border-radius:14px;background:var(--app-surface-soft)}app-resultados .empty-state h3,app-resultados .empty-state strong,app-resultados .loading-state h3,app-resultados .loading-state strong{margin:8px 0 4px}app-resultados .empty-state p,app-resultados .loading-state p{max-width:520px;margin:0 0 16px;color:var(--app-text-muted);font-size:.8125rem}app-resultados .empty-icon{font-size:2rem;color:var(--app-primary-text)}app-resultados .loading-state{min-height:420px}app-resultados .loading-spinner{width:34px;height:34px;border:3px solid var(--app-border);border-top-color:var(--app-primary);border-radius:50%;animation:spin .8s linear infinite}app-resultados .refresh-icon{display:inline-block}app-resultados .spinning{animation:spin .8s linear infinite}app-resultados .detail-grid{align-items:stretch}app-resultados .summary-card,app-resultados .reconciliation-card{margin-bottom:0}app-resultados .detail-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}app-resultados .detail-card-header h3{margin:0}app-resultados .detail-card-header p{margin:4px 0 0;color:var(--app-text-muted);font-size:.75rem;line-height:1.45}app-resultados .compact-button{padding:7px 12px}app-resultados .summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0}app-resultados .summary-grid div{padding:12px 0;border-bottom:1px solid var(--app-border-soft)}app-resultados .summary-grid div:nth-child(odd){padding-right:18px}app-resultados .summary-grid dt{font-size:.7188rem;color:var(--app-text-muted)}app-resultados .summary-grid dd{margin:4px 0 0;font-weight:700;overflow-wrap:anywhere}app-resultados .inline-empty-state{padding:24px;border:1px dashed var(--app-border);border-radius:12px;background:var(--app-surface-soft)}app-resultados .inline-empty-state p{margin:6px 0 0;color:var(--app-text-muted);font-size:.8125rem;line-height:1.5}app-resultados .reconciliation-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;font-weight:800}app-resultados .reconciliation-icon.is-ok{color:#15803d;background:var(--app-success-soft)}app-resultados .reconciliation-icon.is-warning{color:#b45309;background:var(--app-warning-soft)}app-resultados .reconciliation-message{padding:13px 14px;margin:0 0 14px;border-radius:10px;color:var(--app-text-secondary);background:var(--app-surface-soft);font-size:.8125rem;line-height:1.5}app-resultados .quality-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}app-resultados .quality-list div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;border:1px solid var(--app-border-soft);border-radius:10px}app-resultados .quality-list span{color:var(--app-text-muted);font-size:.75rem}app-resultados .bulk-options{margin-top:24px}app-resultados .action-card{width:100%;color:var(--app-text);font:inherit;text-decoration:none}app-resultados button.action-card{appearance:none}app-resultados .file-card{cursor:pointer}app-resultados .result-modal,app-resultados .summary-modal{max-width:760px}app-resultados .modal-header{align-items:flex-start}app-resultados .modal-header h3{margin:0}app-resultados .modal-header p{margin:4px 0 0;color:var(--app-text-muted);font-size:.75rem}app-resultados .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}app-resultados .form-group>span{color:var(--app-text-secondary);font-size:.7813rem;font-weight:700}app-resultados .form-group b{color:#dc2626}app-resultados .form-group small{color:var(--app-text-muted);font-size:.6875rem;line-height:1.4}app-resultados .full-width{grid-column:1/-1}app-resultados .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1150px){app-resultados .header-actions{flex-wrap:wrap;justify-content:flex-end}app-resultados .result-filters .filter-control{flex:1 1 180px}}@media(max-width:820px){app-resultados .page-header{flex-direction:column;gap:16px}app-resultados .header-actions{width:100%;justify-content:flex-start}app-resultados .header-actions>*{flex:1 1 180px;justify-content:center}app-resultados .form-grid,app-resultados .summary-grid,app-resultados .quality-list{grid-template-columns:1fr}app-resultados .summary-grid div:nth-child(odd){padding-right:0}}@media(max-width:640px){app-resultados .stats-grid{grid-template-columns:1fr}app-resultados .card,app-resultados .stat-card{padding:18px}app-resultados .list-heading,app-resultados .pagination{align-items:stretch;flex-direction:column}app-resultados .pagination-actions{justify-content:flex-end}app-resultados .modal-overlay{align-items:flex-end}app-resultados .modal{max-height:94vh;border-radius:18px 18px 0 0}app-resultados .modal-body{max-height:68vh;padding:20px}app-resultados .modal-header,app-resultados .modal-footer{padding-left:20px;padding-right:20px}}:where(button,input,select,textarea){color:var(--app-text)}:where(input,textarea)::placeholder{color:var(--app-text-subtle);opacity:1}:where(button,a,input,select,textarea):focus-visible{outline-color:var(--app-focus-ring)}html[data-theme=dark]{scrollbar-color:var(--app-border-strong) var(--app-bg)}html[data-theme=dark] body{background:var(--app-bg)!important}html[data-theme=dark] :is(.accessibility-toolbar,.card,.stat-card,.filters-card,.filter-card,.modal,.login-card,.ranking-card,.chart-card,.territory-card,.history-card,.summary-card,.result-card,.prediction-card,.candidate-card,.party-card,.election-card,.poll-card,.report-card,.report-preview,.export-card,.formats-grid article,.roles-grid article,.security-grid article,.quick-action,.accion-card,.crit-card,.seg-card,.reporte-card){background-color:var(--app-surface)!important;color:var(--app-text)!important;border-color:var(--app-border)!important;box-shadow:var(--app-shadow-soft)!important}html[data-theme=dark] :is(.card-header,.modal header,.modal footer,.modal-header,.modal-footer,.section-header,.generation-grid,.sidebar-brand,.sidebar-footer,.chart,th,td){border-color:var(--app-border)!important}html[data-theme=dark] :is(input,select,textarea,option,.search-box,.input-wrap,.input-icon,.field input,.field select,.filter-group input,.filter-group select,.pagination button,.icon-button,.icon-btn,.btn-outline,.btn--secondary,.search-box .clear,.tabs,.tabs button,.history-loading,.message-body,.typing-content){background-color:var(--app-surface-soft)!important;color:var(--app-text)!important;border-color:var(--app-border)!important}html[data-theme=dark] :is(input:disabled,select:disabled,textarea:disabled,button:disabled,.disabled,[aria-disabled=true]){color:var(--app-text-subtle)!important;border-color:var(--app-border-soft)!important}html[data-theme=dark] :is(input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill){-webkit-text-fill-color:var(--app-text)!important;-webkit-box-shadow:0 0 0 1000px var(--app-surface-soft) inset!important;caret-color:var(--app-text)}html[data-theme=dark] :is(h1,h2,h3,h4,h5,h6,.stat-value,.bold,.td-bold,.table-title,.brand-title,.nav-title,.user-name,.bar-value,.bar-label){color:var(--app-text)!important}html[data-theme=dark] :is(small,.subtitle,.stat-label,.stat-sub,.card-sub,.record-summary,.bar-label,.generation-grid span,.pagination span,.loading-state,.empty-state,.td-gray,.td-correo,.td-detalle,.party-name,.nav-subtitle,.brand-sub){color:var(--app-text-muted)!important}html[data-theme=dark] :is(tbody tr:hover,.nav-item:hover,.quick-action:hover,.icon-button:hover,.icon-btn:hover,.btn-outline:hover,.btn--secondary:hover,.accessibility-button:hover:not(:disabled),.font-size-indicator:hover){background-color:var(--app-surface-muted)!important}html[data-theme=dark] :is(.nav-item.active,.nav-section.active,.nav-actions>a.active,.tab-btn.active,.tabs button.active,.rank-badge,.leader-tag,.territory-leader,.role-badge,.badge-muestra,.badge-count,.badge-cand,.badge-activo-reg,.action-update){background-color:var(--app-primary-soft)!important;color:var(--app-info-text)!important;border-color:var(--app-info-border)!important}html[data-theme=dark] :is(.badge-activo,.badge-aprobado,.badge-aprobada,.badge-procesado,.badge-exitoso,.status-badge.success,.status-badge.active,.progress-badge,.action-create,.alert.success,.alert--success,.alert-success){background-color:var(--app-success-soft)!important;color:var(--app-success-text)!important;border-color:var(--app-success-border)!important}html[data-theme=dark] :is(.badge-pendiente,.badge-revision,.tag-camara,.alert.warning,.alert--warning,.notice,.message-disclaimer){background-color:var(--app-warning-soft)!important;color:var(--app-warning-text)!important;border-color:var(--app-warning-border)!important}html[data-theme=dark] :is(.badge-rechazado,.badge-error,.badge-fallido,.status-badge.failed,.action-danger,.alert.error,.alert--danger,.alert-danger,.alert-error,.chat-error,.prediction-warning){background-color:var(--app-danger-soft)!important;color:var(--app-danger-text)!important;border-color:var(--app-danger-border)!important}html[data-theme=dark] :is(.role-badge.admin,.action-neutral,.accion-login,.badge-nivel.regional){background-color:var(--app-purple-soft)!important;color:var(--app-purple-text)!important;border-color:var(--app-purple-border)!important}html[data-theme=dark] :is(.stat-card i.blue,.stat-icon.icon-blue,.icon-blue){background:var(--app-primary-soft)!important;color:var(--app-info-text)!important}html[data-theme=dark] :is(.stat-card i.green,.stat-icon.icon-green,.icon-green){background:var(--app-success-soft)!important;color:var(--app-success-text)!important}html[data-theme=dark] :is(.stat-card i.red,.stat-icon.icon-red,.icon-red){background:var(--app-danger-soft)!important;color:var(--app-danger-text)!important}html[data-theme=dark] :is(.stat-card i.purple,.stat-icon.icon-purple,.icon-purple){background:var(--app-purple-soft)!important;color:var(--app-purple-text)!important}html[data-theme=dark] :is(.stat-card i.orange,.stat-icon.icon-orange,.icon-orange){background:var(--app-orange-soft)!important;color:var(--app-orange-text)!important}html[data-theme=dark] :is(.btn-primary,.btn--primary,.btn-admin,.btn-ingresar,.search-box>button:not(.clear)){background:var(--app-primary)!important;border-color:var(--app-primary)!important;color:var(--app-on-primary)!important}html[data-theme=dark] :is(.btn-primary,.btn--primary,.btn-admin,.btn-ingresar,.search-box>button:not(.clear)):hover:not(:disabled){background:var(--app-primary-hover)!important;border-color:var(--app-primary-hover)!important}html[data-theme=dark] :is(.btn-danger,.danger-button){color:var(--app-on-primary)!important}html[data-theme=dark] .modal-overlay{background:var(--app-overlay)!important;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}html[data-theme=dark] :is(.leader-card,.chat-header,.login-container){background-image:linear-gradient(135deg,var(--app-surface) 0%,var(--app-primary-soft) 100%)!important}html[data-theme=dark] :is(.progress-bar,.prog-bar,.prog-bar-mini,.mini-progress,.int-bar-track,.dist-bar-track,.bar-track){background-color:var(--app-surface-muted)!important}html[data-theme=dark] :is(.bar,.prog-fill,.mini-progress>span,.progress-fill){filter:saturate(.9) brightness(1.08)}html[data-theme=dark] .accessibility-toolbar{background:color-mix(in srgb,var(--app-surface) 94%,transparent)!important;box-shadow:var(--app-shadow-elevated)!important}html[data-theme=dark] img:not([src$=".svg"]){filter:brightness(.88) contrast(1.06)}@media(forced-colors:active){:where(button,a,input,select,textarea):focus-visible{outline:2px solid CanvasText}}html[data-theme=dark] .message--user .message-body{background:var(--app-primary)!important;border-color:var(--app-primary)!important;color:var(--app-on-primary)!important}html[data-theme=dark] .message--user .message-body :is(p,span,strong,small){color:var(--app-on-primary)!important}html[data-theme=dark] :is(.new-chat,.clear-chat,.source-list span){color:var(--app-info-text)!important}html[data-theme=dark] .factor{background:var(--app-surface-soft)!important;border-color:var(--app-border)!important}html[data-theme=dark] .rol-item.badge-full-bg{background:var(--app-purple-soft)!important;border-color:var(--app-purple-border)!important}html[data-theme=dark] .tag-partido.verde{background:var(--app-success-soft)!important;color:var(--app-success-text)!important}html[data-theme=dark] .stat-icon.cyan{background:#12333a!important;color:#67e8f9!important}html[data-theme=dark] .assistant-status{background:var(--app-success-soft)!important;color:var(--app-success-text)!important;border-color:var(--app-success-border)!important}html[data-theme=dark] .assistant-status--limited{background:var(--app-warning-soft)!important;color:var(--app-warning-text)!important;border-color:var(--app-warning-border)!important}html[data-theme=dark] :is(.notice,.message-disclaimer) :is(p,strong,span),html[data-theme=dark] :is(.alert.warning,.alert--warning) :is(p,strong,span,button){color:var(--app-warning-text)!important}html[data-theme=dark] :is(.alert.error,.alert-danger,.alert-error,.chat-error) :is(p,strong,span,button),html[data-theme=dark] :is(.badge-rechazado,.badge-error,.badge-fallido,.status-badge.failed) :is(span,strong){color:var(--app-danger-text)!important}html[data-theme=dark] :is(.alert.success,.alert-success,.alert--success) :is(p,strong,span,button),html[data-theme=dark] :is(.badge-activo,.badge-aprobado,.badge-aprobada,.badge-exitoso,.status-badge.success,.status-badge.active) :is(span,strong){color:var(--app-success-text)!important}html.native-platform,html.native-platform body{min-height:100dvh;overscroll-behavior-y:none}html.native-platform{--desktop-promo-height: 0px}html.native-platform body{padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left)}img,svg,canvas,video{max-width:100%}:is(button,a,input,select,textarea){touch-action:manipulation}:is(.table-wrap,.table-wrapper,.table-scroll,.table-container,.responsive-table,.results-table-wrapper,.usuarios-table-wrapper){display:block;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;scrollbar-gutter:stable}:is(.table-wrap,.table-wrapper,.table-scroll,.table-container,.responsive-table,.results-table-wrapper,.usuarios-table-wrapper):focus-visible{outline:3px solid var(--app-focus-ring);outline-offset:3px;border-radius:10px}:is(table,.data-table,.results-table){border-collapse:collapse}:is(.modal-overlay,.dialog-backdrop){padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}@media(max-width:900px){:root{--desktop-promo-height: 0px}:is(.page-header,.header,.page-title-row,.toolbar,.section-header,.title-row){align-items:flex-start;flex-wrap:wrap;gap:12px}:is(.page-header,.header,.page-title-row,.title-row)>:is(.actions,.header-actions,.buttons,.action-buttons){width:100%;display:flex;flex-wrap:wrap;gap:8px}:is(.page-header,.header,.page-title-row,.title-row)>:is(.actions,.header-actions,.buttons,.action-buttons)>:is(button,a){flex:1 1 150px;min-height:44px}:is(.stats-grid,.stat-grid,.cards-stats,.summary-grid,.metric-grid,.kpi-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important}:is(.content-grid,.details-grid,.cards-grid,.report-grid,.form-grid,.filters-grid,.dashboard-grid,.roles-grid,.export-grid,.criteria-grid,.metodologia-grid){grid-template-columns:minmax(0,1fr)!important}:is(.filters,.filter-row,.search-filters,.filter-controls){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}:is(.card,.stat-card,.filters-card,.filter-card,.section-card,.table-card,.panel,.reporte-card){max-width:100%}:is(.modal,.dialog,.modal-content){width:min(100%,680px)!important;max-height:calc(100dvh - 32px);overflow-y:auto}:is(.admin-table,.analista-table,.elections-table,.data-table,.results-table,.territory-table){width:max(100%,720px);min-width:720px}:is(.table-wrap,.table-wrapper,.table-scroll,.table-container,.responsive-table,.results-table-wrapper,.usuarios-table-wrapper){margin-inline:-4px;padding-inline:4px;padding-bottom:8px}:is(.table-wrap,.table-wrapper,.table-scroll,.table-container,.responsive-table,.results-table-wrapper,.usuarios-table-wrapper):after{content:"Desliza horizontalmente para ver m\e1s columnas";position:sticky;left:4px;display:block;width:max-content;margin-top:7px;color:var(--app-text-subtle);font-size:.68rem;font-weight:650}:is(.chart-container,.chart-wrapper,.chart-area,canvas){max-width:100%}}@media(max-width:600px){:is(.stats-grid,.stat-grid,.cards-stats,.summary-grid,.metric-grid,.kpi-grid),:is(.filters,.filter-row,.search-filters,.filter-controls){grid-template-columns:minmax(0,1fr)!important}:is(.card,.stat-card,.filters-card,.filter-card,.section-card,.table-card,.panel,.reporte-card){border-radius:14px!important}:is(.modal-overlay,.dialog-backdrop){align-items:flex-end!important;padding:0!important}:is(.modal,.dialog,.modal-content){width:100%!important;max-width:none!important;max-height:min(92dvh,820px);border-radius:20px 20px 0 0!important;padding-bottom:max(20px,env(safe-area-inset-bottom))!important}:is(.actions,.form-actions,.modal-actions,.header-actions,.button-row){flex-wrap:wrap}:is(.actions,.form-actions,.modal-actions,.header-actions,.button-row)>:is(button,a){flex:1 1 100%;min-height:44px}:is(input,select,textarea){font-size:16px!important}}@media(hover:none)and (pointer:coarse){:is(button,a,input,select){min-height:44px}:is(.icon-button,.btn-icon,.action-button){min-width:44px}}html,body,app-root{width:100%;max-width:100%;overflow-x:clip}app-root,.app-viewport,main,.main-content,.page-shell,.admin-main,.analista-main{min-width:0}html.native-platform,html.native-platform body,html.native-platform app-root{width:100%;max-width:100vw;overflow-x:clip}@media(max-width:760px){table[data-responsive=cards]{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;border-collapse:separate!important}table[data-responsive=cards] caption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}table[data-responsive=cards] thead{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}table[data-responsive=cards] tbody{display:grid!important;width:100%;gap:12px}table[data-responsive=cards] tbody tr{display:block!important;width:100%;min-width:0;padding:10px 12px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface);box-shadow:var(--app-shadow-soft);overflow:hidden}table[data-responsive=cards] tbody tr:hover{background:var(--app-surface)}table[data-responsive=cards] tbody td{display:grid!important;width:100%!important;min-width:0!important;max-width:100%!important;grid-template-columns:minmax(104px,36%) minmax(0,1fr);gap:10px;align-items:start;padding:9px 0!important;border:0!important;border-bottom:1px solid var(--app-border-soft)!important;color:var(--app-text-secondary);text-align:left!important;white-space:normal!important;overflow-wrap:anywhere}table[data-responsive=cards] tbody td:last-child{border-bottom:0!important}table[data-responsive=cards] tbody td:before{content:attr(data-label);color:var(--app-text-muted);font-size:.68rem;font-weight:850;line-height:1.35;letter-spacing:.045em;text-transform:uppercase}table[data-responsive=cards] tbody td>*{min-width:0!important;max-width:100%!important;grid-column:2}table[data-responsive=cards] tbody td[data-label=Acciones]{display:flex!important;align-items:center;flex-wrap:wrap;gap:8px}table[data-responsive=cards] tbody td[data-label=Acciones]:before{flex:0 0 min(104px,36%)}table[data-responsive=cards] tbody td[colspan]{display:block!important;padding:18px 8px!important;text-align:center!important}table[data-responsive=cards] tbody td[colspan]:before{display:none}table[data-responsive=cards] :is(.candidate-cell,.percent-cell,.territory-name,.progress-cell,.trace-cell,.party-cell,.election-cell,.source-cell){width:100%;min-width:0!important}table[data-responsive=cards] .mini-progress,table[data-responsive=cards] .progress-track,table[data-responsive=cards] .dist-bar-track{width:100%;max-width:240px}:is(.table-wrap,.table-wrapper,.table-scroll,.table-container,.responsive-table,.results-table-wrapper,.usuarios-table-wrapper):has(table[data-responsive=cards]){width:100%;max-width:100%;margin-inline:0!important;padding:0!important;overflow:visible!important;scrollbar-gutter:auto}:is(.table-wrap,.table-wrapper,.table-scroll,.table-container,.responsive-table,.results-table-wrapper,.usuarios-table-wrapper):has(table[data-responsive=cards]):after{display:none!important;content:none!important}}@media(max-width:420px){table[data-responsive=cards] tbody td{grid-template-columns:minmax(88px,34%) minmax(0,1fr);gap:8px}table[data-responsive=cards] tbody td[data-label=Acciones]:before{flex-basis:min(88px,34%)}}app-encuestas .modal-overlay{z-index:2147483100;pointer-events:auto;touch-action:none}app-encuestas .poll-modal{position:relative;pointer-events:auto;touch-action:auto;isolation:isolate}app-encuestas .poll-modal :is(.modal-header,.modal-body,.modal-footer,.form-group,.result-editor){pointer-events:auto}app-encuestas .poll-modal :is(input,select,textarea,button,label){position:relative;z-index:1;pointer-events:auto!important;touch-action:auto!important}app-encuestas .poll-modal :is(input,textarea){-webkit-user-select:text;user-select:text;caret-color:var(--app-text)}app-encuestas .poll-modal select{-webkit-user-select:auto;user-select:auto}app-encuestas .poll-modal :is(input,select,textarea):disabled{pointer-events:none!important}@media(hover:none),(pointer:coarse){app-encuestas .poll-modal{animation:none!important;transform:none!important}app-encuestas .poll-modal .modal-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}}html.native-platform app-encuestas .poll-modal .modal-body{max-height:calc(100dvh - 164px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}
