.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:var(--overlay);display:flex;align-items:flex-start;justify-content:center;padding-top:80px;animation:cmdk-fade-in var(--t-fast) ease}.cmdk{width:100%;max-width:640px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-modal);overflow:hidden;animation:cmdk-slide-down var(--t-fast) ease;display:flex;flex-direction:column;max-height:calc(100vh - 120px)}@keyframes cmdk-fade-in{0%{opacity:0}to{opacity:1}}@keyframes cmdk-slide-down{0%{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion: reduce){.cmdk-overlay,.cmdk{animation:none}}.cmdk-search{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--border);flex-shrink:0}.cmdk-search-icon{width:16px;height:16px;color:var(--text-muted);flex-shrink:0}.cmdk-input{flex:1;background:transparent;border:none;outline:none;font-family:var(--font-ui);font-size:15px;color:var(--text-primary);line-height:1.5;caret-color:var(--accent)}.cmdk-input::-moz-placeholder{color:var(--text-muted)}.cmdk-input::placeholder{color:var(--text-muted)}.cmdk-esc-hint{font-family:var(--font-mono);font-size:10px;padding:2px 6px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-muted);flex-shrink:0;letter-spacing:.05em}.cmdk-list{list-style:none;margin:0;padding:6px;overflow-y:auto;flex:1;scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){.cmdk-list{scroll-behavior:auto}}.cmdk-empty{padding:24px 12px;text-align:center;font-size:14px;color:var(--text-muted)}.cmdk-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--r-sm);cursor:pointer;font-size:14px;color:var(--text-secondary);transition:background var(--t-fast),color var(--t-fast);min-height:40px;outline:none}.cmdk-item:hover,.cmdk-item--active{background:var(--accent-bg);color:var(--accent)}.cmdk-item-icon{width:16px;height:16px;flex-shrink:0;color:inherit}.cmdk-item-icon--empty{display:inline-block}.cmdk-item-body{flex:1;min-width:0;display:flex;flex-direction:column}.cmdk-item-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.cmdk-item-hint{font-size:12px;color:var(--text-muted);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cmdk-item-shortcut{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);white-space:nowrap;flex-shrink:0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-sm);padding:1px 6px;letter-spacing:.05em}.cmdk-item--active .cmdk-item-shortcut{border-color:var(--accent);color:var(--accent);background:transparent}.cmdk-footer{display:flex;gap:16px;padding:10px 18px;border-top:1px solid var(--border);font-size:11px;color:var(--text-muted);flex-shrink:0}.cmdk-footer kbd{font-family:var(--font-mono);font-size:10px;padding:1px 5px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:3px;margin-right:3px}@media (max-width: 768px){.cmdk-overlay{padding-top:0;align-items:flex-end}.cmdk{max-width:100%;max-height:80vh;border-radius:var(--r-lg) var(--r-lg) 0 0;animation:cmdk-slide-up var(--t-normal) cubic-bezier(.2,.8,.2,1)}@keyframes cmdk-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.cmdk{animation:none}}}.app-shell{display:flex;min-height:100vh;background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-ui)}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:var(--overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:fade-in var(--t-fast) ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.sidebar-backdrop{animation:none}}.sidebar{width:240px;min-width:240px;background:var(--bg-card);border-right:1px solid var(--border);display:flex;flex-direction:column;height:100vh;position:sticky;top:0;overflow-y:auto;overflow-x:hidden;padding:22px 14px;z-index:50;flex-shrink:0;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.sidebar-brand{display:flex;align-items:center;gap:10px;margin-bottom:28px;padding:0 4px}.brand-logo{width:32px;height:32px;background:var(--accent-gradient);color:#1a1a1a;box-shadow:var(--accent-glow);border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:600;font-size:17px;flex-shrink:0}.brand-text{display:flex;flex-direction:column;gap:0}.brand-name{font-size:var(--fs-ui-lg);font-weight:600;color:var(--text-primary);line-height:1.2;letter-spacing:-.01em}.brand-version{font-size:var(--fs-ui-xxs);font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.08em;line-height:1}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:20px}.nav-section{display:flex;flex-direction:column;gap:1px}.nav-section-label{font-size:var(--fs-ui-xxs);font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--text-disabled);padding:0 10px;margin-bottom:4px;display:block}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 10px;margin:0;border-radius:var(--r-md);color:var(--text-secondary);font-size:var(--fs-ui-xs);font-weight:500;cursor:pointer;transition:background var(--t-fast),color var(--t-fast);min-height:36px;background:transparent;border:none;width:100%;text-align:left;text-decoration:none}.nav-item:hover{background:var(--bg-elevated);color:var(--text-primary)}.nav-item--active{background:var(--accent-bg);color:var(--accent);font-weight:600;box-shadow:inset 2px 0 0 0 var(--accent)}.nav-item--active:hover{background:var(--accent-bg);color:var(--accent)}.nav-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-item-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-badge{margin-left:auto;flex-shrink:0}@media (prefers-reduced-motion: reduce){.nav-item{transition:none}}.sidebar-footer{margin-top:20px;padding-top:16px;border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-footer-info{display:flex;align-items:center;gap:6px;min-width:0}.sidebar-footer-text{font-size:var(--fs-ui-xxs);font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-close-btn{display:none}.shell-main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:56px;min-height:56px;background:var(--bg-card);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-lg);position:sticky;top:0;z-index:10;gap:var(--space-md);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.topbar-left{display:flex;align-items:center;gap:var(--space-sm);min-width:0}.topbar-hamburger{display:none}.breadcrumbs{flex:1;min-width:0}.crumbs{display:flex;align-items:center;gap:4px;list-style:none;padding:0;margin:0}.crumb,.crumb-sep{display:flex;align-items:center;font-size:var(--fs-ui-xxs);text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);white-space:nowrap}.crumb-sep{color:var(--text-disabled)}.crumb-current span{color:var(--text-primary);font-weight:600}.topbar-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.topbar-sync.spinning svg{animation:spin 1s linear infinite}@media (prefers-reduced-motion: reduce){.topbar-sync.spinning svg{animation:none}}.user-pill{display:flex;align-items:center;gap:8px;padding:5px 10px 5px 5px;border:1px solid var(--border);border-radius:var(--r-xl);cursor:default;transition:background var(--t-fast)}.user-pill:hover{background:var(--bg-elevated)}.user-avatar{width:26px;height:26px;background:var(--accent);color:var(--btn-primary-text);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--fs-ui-xxs);font-weight:700;flex-shrink:0}.user-name{font-size:var(--fs-ui-xs);font-weight:500;color:var(--text-secondary)}.tab-slot{flex:1;padding:28px;min-height:0;outline:none}.page-header{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-lg);flex-wrap:wrap;margin-bottom:var(--space-xl);padding-bottom:16px;border-bottom:1px solid var(--border)}.page-header:after{content:"";position:absolute;left:0;bottom:-1px;width:56px;height:2px;background:var(--accent-gradient)}.page-header-text{display:flex;flex-direction:column;gap:4px;min-width:0}.page-title{font-family:var(--font-display);font-size:var(--fs-display-xl);font-weight:700;color:var(--text-primary);line-height:1.1;letter-spacing:-.022em;margin:0}.page-subtitle{font-size:var(--fs-ui-sm);font-weight:450;color:var(--text-secondary);letter-spacing:-.005em;margin:0;line-height:1.45}.page-actions{display:flex;align-items:center;gap:var(--space-xs);flex-shrink:0}.skeleton{background:var(--skeleton-bg);background-size:400% 100%;border-radius:var(--r-sm);animation:shimmer 1.6s ease infinite;display:block}@keyframes shimmer{0%{background-position:100% 50%}to{background-position:0% 50%}}@media (prefers-reduced-motion: reduce){.skeleton{animation:none;background:var(--bg-elevated)}}.skeleton-stack{display:flex;flex-direction:column;gap:0}.skeleton-title{margin-bottom:var(--space-md)}.skeleton-row{padding:14px 0;border-bottom:1px solid var(--border-subtle)}.skeleton-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--space-lg);display:flex;flex-direction:column;gap:8px}.skeleton-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md);margin-bottom:var(--space-xl)}.skeleton-body{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--space-lg)}.skeleton-dashboard{display:flex;flex-direction:column}@media (max-width: 768px){.sidebar{position:fixed;left:0;top:0;height:100%;height:100dvh;z-index:50;transform:translate(-100%);transition:transform var(--t-normal);box-shadow:var(--shadow-modal);width:280px;max-width:86vw}.sidebar--open{transform:translate(0)}@media (prefers-reduced-motion: reduce){.sidebar{transition:none}}.topbar-hamburger,.sidebar-close-btn{display:flex}.topbar{padding:0 var(--space-md);height:52px;min-height:52px}.tab-slot{padding:16px 14px}.page-header{flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-lg)}.page-actions{width:100%}.page-actions .btn{flex:1}.skeleton-kpi-row{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.crumb-static,.crumb-sep{display:none}.crumb-current{display:flex}.tab-slot{padding:14px 10px}.user-name{display:none}.skeleton-kpi-row{grid-template-columns:1fr 1fr}}@media (min-width: 1440px){.tab-slot{padding:32px 40px}}.topbar-cmdk{display:flex;align-items:center;gap:5px;padding:0 8px;min-width:40px}.topbar-cmdk-hint{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border);border-radius:3px;padding:1px 4px;letter-spacing:.05em;line-height:1}.topbar-cmdk:hover .topbar-cmdk-hint{border-color:var(--accent);color:var(--accent)}.user-pill-trigger{display:inline-flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;background:transparent;border:1px solid transparent;border-radius:var(--r-md, 8px);cursor:pointer;transition:background .12s ease,border-color .12s ease;color:var(--text-primary, #e8e8ea);font-family:inherit;font-size:14px;height:36px}.user-pill-trigger:hover,.user-pill-trigger[data-state=open]{background:var(--bg-elevated);border-color:var(--border)}.user-pill-trigger:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.user-pill-trigger .user-name{font-weight:500;letter-spacing:.01em}.user-menu-content{min-width:220px;background:var(--bg-card, #131316);border:1px solid var(--border, #26262b);border-radius:var(--r-md, 8px);padding:6px;box-shadow:var(--shadow-popover);z-index:1000;font-family:var(--font-sans, system-ui, sans-serif);font-size:14px;animation:user-menu-in .12s ease-out}@keyframes user-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.user-menu-content{animation:none}}.user-menu-header{padding:8px 12px 6px;display:flex;flex-direction:column;gap:2px}.user-menu-header-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary, #6a6a70)}.user-menu-header-name{font-size:14px;font-weight:500;color:var(--text-primary, #e8e8ea)}.user-menu-separator{height:1px;background:var(--border, #26262b);margin:4px -2px}.user-menu-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:6px;font-size:14px;color:var(--text-primary, #e8e8ea);cursor:pointer;outline:none;transition:background 80ms ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;min-height:36px}.user-menu-item[data-highlighted],.user-menu-item:focus{background:var(--bg-elevated)}.user-menu-item-danger[data-highlighted],.user-menu-item-danger:focus{background:var(--danger-bg);color:var(--danger)}.user-menu-item svg{flex-shrink:0;opacity:.7}.user-menu-item[data-highlighted] svg,.user-menu-item:focus svg{opacity:1}.dashboard-shell{display:flex;flex-direction:column;gap:20px;padding:24px;max-width:1440px;margin:0 auto}.alert-banner{border-radius:var(--r-md);padding:14px 18px;border:1px solid;background:var(--bg-card)}.alert-banner-danger{background:color-mix(in srgb,var(--danger) 10%,var(--bg-card));border-color:color-mix(in srgb,var(--danger) 35%,transparent)}.alert-banner-warning{background:color-mix(in srgb,var(--warning) 10%,var(--bg-card));border-color:color-mix(in srgb,var(--warning) 35%,transparent)}.alert-banner-header{display:flex;align-items:center;gap:10px}.alert-banner-icon{font-size:18px;line-height:1}.alert-banner-title{flex:1;font-size:15px;font-weight:600;color:var(--text-primary)}.alert-banner-toggle{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:6px 10px;border-radius:var(--r-sm);min-height:32px;min-width:32px;font-size:14px;transition:background .12s ease}.alert-banner-toggle:hover{background:var(--bg-hover)}.alert-banner-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.alert-banner-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.alert-banner-item{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-secondary)}.alert-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.alert-dot-expired{background:var(--danger)}.alert-dot-critical{background:var(--warning)}.alert-dot-warning{background:var(--info)}.alert-banner-name{font-weight:600;color:var(--text-primary)}.alert-banner-meta{color:var(--text-muted)}.alert-banner-tipo{margin-left:auto;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.kpi-card{position:relative;overflow:hidden;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:16px 18px;box-shadow:var(--shadow-sm);transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.kpi-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.kpi-card.star{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:var(--accent-glow);background:linear-gradient(180deg,var(--accent-bg-soft) 0%,transparent 60%),var(--bg-card)}.kpi-card.star:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--accent-gradient)}.kpi-card.star:after{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 22%,transparent),transparent);animation:kpi-shimmer 3.4s ease-in-out infinite;pointer-events:none}.kpi-card.star .kpi-label{color:var(--accent)}@keyframes kpi-shimmer{0%{left:-100%}55%,to{left:165%}}.kpi-label{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--text-muted);font-weight:600}.kpi-value{font-family:var(--font-mono);font-size:28px;font-weight:500;line-height:1.1;margin-top:6px;font-variant-numeric:tabular-nums;color:var(--text-primary)}.kpi-value.success{color:var(--success)}.kpi-value.warning{color:var(--warning)}.kpi-value.danger{color:var(--danger)}.kpi-value.info{color:var(--info)}.kpi-value.accent{color:var(--accent)}.kpi-sub{font-size:12px;color:var(--text-muted);margin-top:4px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:18px;box-shadow:var(--shadow-sm)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;flex-wrap:wrap;gap:8px}.card-title{font-size:15px;font-weight:600;color:var(--text-primary);margin:0}.card-sub{font-size:12px;color:var(--text-muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.card-body-text{font-size:14px;color:var(--text-secondary);margin:0 0 14px}.card-error{border-color:color-mix(in srgb,var(--danger) 35%,transparent);background:color-mix(in srgb,var(--danger) 6%,var(--bg-card))}.tv-chips-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.tv-chip{display:inline-flex;align-items:center;gap:8px;background:var(--bg-input, var(--bg-card));border:1px solid var(--border);border-radius:999px;padding:8px 14px;font-size:13px;min-height:36px}.tv-chip-playing{border-color:color-mix(in srgb,var(--info) 50%,transparent);background:color-mix(in srgb,var(--info) 8%,var(--bg-card))}.tv-chip-dot{width:8px;height:8px;border-radius:50%}.tv-chip-dot-on{background:var(--info);box-shadow:0 0 0 3px color-mix(in srgb,var(--info) 25%,transparent)}.tv-chip-dot-off{background:var(--text-muted);opacity:.4}.tv-chip-name{font-weight:600;color:var(--text-primary);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tv-chips{display:flex;flex-direction:column;gap:12px}.tv-chips-none-live{font-size:13px;color:var(--text-muted);margin:0}.tv-chips-idle{display:flex;flex-direction:column;gap:10px}.tv-chips-toggle{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--r-sm);padding:6px 12px;font-size:13px;font-weight:500;cursor:pointer;min-height:32px;transition:background .12s ease,color .12s ease}.tv-chips-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.tv-chips-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tv-chip-state{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);font-family:var(--font-mono)}.tv-chips-empty{padding:16px;text-align:center;color:var(--text-muted);font-size:13px}.pool-table-wrap{overflow-x:auto;margin:0 -2px}.pool-table{width:100%;border-collapse:collapse;font-size:13px}.pool-table thead th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:600;color:var(--text-muted);padding:10px 16px;border-bottom:1px solid var(--border);background:var(--bg-card)}.pool-table tbody td{padding:14px 16px;border-bottom:1px solid var(--border);color:var(--text-secondary);vertical-align:middle}.pool-table tbody tr:last-child td{border-bottom:none}.pool-table tbody tr:hover{background:var(--bg-hover)}.pool-row-error{background:color-mix(in srgb,var(--danger) 6%,transparent)}.pool-name{font-weight:600;color:var(--text-primary);margin-right:8px}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-primary)}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;border:1px solid transparent}.badge-success{background:color-mix(in srgb,var(--success) 14%,transparent);color:var(--success);border-color:color-mix(in srgb,var(--success) 30%,transparent)}.badge-info{background:color-mix(in srgb,var(--info) 14%,transparent);color:var(--info);border-color:color-mix(in srgb,var(--info) 30%,transparent)}.badge-warning{background:color-mix(in srgb,var(--warning) 14%,transparent);color:var(--warning);border-color:color-mix(in srgb,var(--warning) 30%,transparent)}.badge-danger{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}.badge-primary{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 30%,transparent);margin-left:6px}.badge-provider{background:color-mix(in srgb,var(--info) 14%,transparent);color:var(--info);border-color:color-mix(in srgb,var(--info) 30%,transparent);margin-left:6px;text-transform:none;letter-spacing:0}.status-pill{font-family:var(--font-mono);font-size:11px;padding:2px 8px;border-radius:var(--r-sm);background:var(--bg-input, var(--bg-card));color:var(--text-secondary)}.status-pill.status-active{color:var(--success);background:color-mix(in srgb,var(--success) 12%,transparent)}.status-pill.status-expired{color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,transparent)}.status-pill.status-banned,.status-pill.status-disabled{color:var(--text-muted);background:var(--bg-card)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 14px;height:40px;min-width:80px;font-size:14px;font-weight:500;border-radius:var(--r-md);border:1px solid var(--border);background:var(--bg-card);color:var(--text-primary);cursor:pointer;transition:background .12s ease,border-color .12s ease}.btn:hover{background:var(--bg-hover)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-primary{background:var(--accent-gradient);color:#1a1a1a;border-color:transparent;font-weight:600;box-shadow:var(--accent-glow)}.btn-primary:hover{background:var(--accent-gradient);transform:translateY(-1px)}.btn-cta{background:var(--cta-gradient);color:var(--cta-text);border-color:transparent;font-weight:600;box-shadow:var(--cta-glow)}.btn-cta:hover{transform:translateY(-1px)}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-muted)}.btn-ghost:hover{color:var(--text-primary);background:var(--bg-hover)}.btn-sm{height:32px;min-width:64px;padding:0 10px;font-size:13px}.dashboard-footer{display:flex;justify-content:space-between;align-items:center;padding-top:8px;border-top:1px solid var(--border)}.dashboard-footer-meta{font-size:12px;color:var(--text-muted);font-family:var(--font-mono)}.skeleton{background:linear-gradient(90deg,var(--bg-card) 0%,var(--bg-hover) 50%,var(--bg-card) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite;border-radius:var(--r-md);border:1px solid var(--border)}.skeleton-kpi{height:88px}.skeleton-card{height:220px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.skeleton{animation:none}.kpi-card.star:after{animation:none}.kpi-card:hover,.btn-primary:hover,.btn-cta:hover{transform:none}}@media (max-width: 768px){.dashboard-shell{padding:16px;gap:16px}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.pool-table{font-size:12px}.pool-table thead th,.pool-table tbody td{padding:10px 12px}.alert-banner-tipo{display:none}}.dash-hero{position:relative;overflow:hidden;background:var(--hero);border-radius:var(--r-xl);padding:28px 30px;color:#fff;box-shadow:var(--shadow-md)}.dash-hero:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--accent-gradient)}.dash-hero:after{content:"";position:absolute;top:-45%;right:-4%;width:360px;height:360px;background:radial-gradient(circle,rgba(230,184,0,.18),transparent 60%);pointer-events:none}.dash-hero-row{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap}.dash-hero-text{min-width:0}.dash-hero-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#ffffffb3;margin-bottom:10px}.dash-hero-dot{width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 28%,transparent);animation:hero-pulse 2s ease infinite}@keyframes hero-pulse{50%{opacity:.5}}.dash-hero-title{font-family:var(--font-display);font-size:30px;font-weight:700;letter-spacing:-.02em;line-height:1.1;margin:0}.dash-hero-sub{color:#ffffffb8;font-size:14px;margin:6px 0 0;max-width:460px}.dash-hero-btn{width:42px;height:42px;border-radius:var(--r-md);border:1px solid rgba(255,255,255,.16);background:#ffffff14;color:#fff;display:grid;place-items:center;cursor:pointer;transition:background .15s ease;flex-shrink:0}.dash-hero-btn:hover{background:#ffffff29}.dash-hero-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dash-hero-mini{position:relative;z-index:1;display:flex;gap:26px;margin-top:20px;flex-wrap:wrap}.dash-hero-mini div{display:flex;flex-direction:column}.dash-hero-mini b{font-family:var(--font-mono);font-size:20px;font-weight:600;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.dash-hero-mini span{font-size:10.5px;color:#fff9;text-transform:uppercase;letter-spacing:.1em;margin-top:2px}.kpi-card{padding:18px 20px}.kpi-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;min-height:42px}.kpi-ico{width:42px;height:42px;border-radius:var(--r-md);display:grid;place-items:center;flex-shrink:0}.kpi-ico-success{background:var(--success-bg);color:var(--success)}.kpi-ico-info{background:var(--info-bg);color:var(--info)}.kpi-ico-warning{background:var(--warning-bg);color:var(--warning)}.kpi-ico-danger{background:var(--danger-bg);color:var(--danger)}.kpi-ico-accent{background:var(--accent-bg);color:var(--accent)}.kpi-card.star .kpi-ico{background:var(--accent-gradient);color:#3a2c00}.kpi-trend{font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--text-muted)}.kpi-value{font-size:30px}.kpi-card:hover{box-shadow:var(--shadow-md)}@media (max-width: 768px){.dash-hero{padding:22px}.dash-hero-title{font-size:24px}}.cm-shell{display:flex;flex-direction:column;gap:20px;padding:24px;max-width:1440px;margin:0 auto}.cm-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.cm-title{font-size:28px;font-weight:600;margin:0;color:var(--text-primary);line-height:1.2}.cm-sub{margin:4px 0 0;color:var(--text-muted);font-size:14px}.cm-header-actions{display:flex;align-items:center;gap:12px}.cm-toggle{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cm-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.cm-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:64px 24px;background:var(--bg-card);border:1px dashed var(--border);border-radius:var(--r-md);gap:12px;margin-top:24px}.cm-empty-icon{color:var(--text-muted);margin-bottom:8px}.cm-empty-title{font-size:22px;font-weight:600;margin:0;color:var(--text-primary)}.cm-empty-msg{max-width:520px;color:var(--text-secondary);font-size:15px;line-height:1.6;margin:0 0 12px}.cm-table-wrap{overflow-x:auto}.cm-table{width:100%;border-collapse:separate;border-spacing:0;font-size:15px}.cm-table thead th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);font-weight:600;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg-card);position:sticky;top:0}.cm-table tbody td{padding:16px;border-bottom:1px solid var(--border);color:var(--text-primary);vertical-align:middle}.cm-table tbody tr:last-child td{border-bottom:none}.cm-table tbody tr:hover{background:var(--bg-hover)}.cm-row-archived{opacity:.55}.cm-col-num{width:48px;color:var(--text-muted)}.cm-col-actions{width:56px;text-align:right}.cm-col-nota{max-width:240px;color:var(--text-secondary);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cm-name-cell{display:flex;align-items:center;gap:10px}.cm-name{font-weight:600}.row-actions-trigger{background:transparent;border:1px solid transparent;color:var(--text-muted);cursor:pointer;padding:8px;border-radius:var(--r-sm);min-height:36px;min-width:36px;display:inline-flex;align-items:center;justify-content:center;transition:background .12s ease,border-color .12s ease}.row-actions-trigger:hover{background:var(--bg-hover);border-color:var(--border)}.row-actions-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dropdown-menu{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);padding:6px;min-width:180px;box-shadow:var(--shadow-popover);z-index:100}.dropdown-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--r-sm);font-size:14px;color:var(--text-primary);cursor:pointer;outline:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.dropdown-item[data-highlighted]{background:var(--bg-hover)}.dropdown-item-danger{color:var(--danger)}.dropdown-item-danger[data-highlighted]{background:color-mix(in srgb,var(--danger) 12%,var(--bg-card))}.dropdown-separator{height:1px;background:var(--border);margin:4px 0}.dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);z-index:200;animation:dlg-fade .14s ease-out}.dialog-content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);padding:24px;width:min(480px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow-y:auto;z-index:201;box-shadow:var(--shadow-modal);animation:dlg-pop .16s ease-out}.dialog-content-lg{width:min(640px,calc(100vw - 32px))}.dialog-title{font-size:20px;font-weight:600;margin:0 0 8px;color:var(--text-primary)}.dialog-desc{font-size:14px;color:var(--text-secondary);line-height:1.6;margin:0 0 16px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}@keyframes dlg-fade{0%{opacity:0}to{opacity:1}}@keyframes dlg-pop{0%{opacity:0;transform:translate(-50%,-48%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 16px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field-full{grid-column:1 / -1;display:flex;flex-direction:row;align-items:center;gap:12px;flex-wrap:wrap}.form-field-checkbox{flex-direction:row;align-items:center;gap:10px}.form-field-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}.form-label{font-size:13px;font-weight:600;color:var(--text-secondary)}.form-label-warn{color:var(--warning)}.form-input{width:100%;min-width:0;box-sizing:border-box;background:var(--bg-input, var(--bg-card));border:1px solid var(--border);border-radius:var(--r-sm);padding:10px 12px;color:var(--text-primary);font-size:15px;font-family:inherit;transition:border-color .12s ease}.form-input:focus{outline:none;border-color:var(--accent)}.form-input:disabled{opacity:.5;cursor:not-allowed}.form-error{grid-column:1 / -1;background:color-mix(in srgb,var(--danger) 12%,var(--bg-card));border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);color:var(--danger);padding:10px 12px;border-radius:var(--r-sm);font-size:14px}.val-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:13px;font-weight:500}.val-pill-success{background:color-mix(in srgb,var(--success) 14%,transparent);color:var(--success)}.val-pill-error{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}.val-pill-info{background:color-mix(in srgb,var(--info) 14%,transparent);color:var(--info)}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cm-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.cm-footer-meta{font-size:13px;color:var(--text-muted)}.toast-stack{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:10px;z-index:300;max-width:calc(100vw - 48px)}.toast{display:flex;align-items:flex-start;gap:12px;background:var(--bg-card);border:1px solid var(--border);border-left-width:4px;border-radius:var(--r-md);padding:12px 14px;min-width:280px;max-width:420px;box-shadow:var(--shadow-md);animation:toast-slide .18s ease-out}.toast-success{border-left-color:var(--success)}.toast-error{border-left-color:var(--danger)}.toast-warning{border-left-color:var(--warning)}.toast-info{border-left-color:var(--info)}.toast-body{flex:1;display:flex;flex-direction:column;gap:2px}.toast-title{font-size:14px;font-weight:600;color:var(--text-primary)}.toast-msg{font-size:13px;color:var(--text-secondary)}.toast-close{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:22px;line-height:1;padding:0 4px;border-radius:4px}.toast-close:hover{color:var(--text-primary)}@keyframes toast-slide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.badge-primary{background:color-mix(in srgb,var(--warning) 18%,transparent);color:var(--warning);border:1px solid color-mix(in srgb,var(--warning) 35%,transparent);padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.04em}.badge-muted{background:color-mix(in srgb,var(--text-muted) 12%,transparent);color:var(--text-muted);padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600}.btn-lg{font-size:15px;padding:12px 20px;min-height:44px;display:inline-flex;align-items:center;gap:8px}.btn-danger{background:var(--danger);color:#fff;border:1px solid var(--danger)}.btn-danger:hover{filter:brightness(1.1)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.canales-page{display:flex;flex-direction:column;gap:var(--space-lg)}.canales-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) minmax(220px,280px) auto;gap:var(--space-md);align-items:end;padding:var(--space-md);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-sm)}.canales-toolbar-search{display:flex;flex-direction:column}.canales-toolbar-search-input{width:100%}.canales-toolbar-category{display:flex;flex-direction:column;gap:6px}.canales-toolbar-label{font-size:var(--fs-ui-xxs);text-transform:uppercase;letter-spacing:.14em;font-weight:600;color:var(--text-muted)}.canales-toolbar-epg{display:flex;flex-direction:column;gap:6px}.canales-toolbar-pills{display:inline-flex;gap:var(--space-xs);flex-wrap:wrap}.canales-toolbar-epg{grid-column:1 / -1;flex-direction:row;align-items:center;flex-wrap:wrap;gap:var(--space-sm)}@media (max-width: 900px){.canales-toolbar{grid-template-columns:1fr}}.pill{display:inline-flex;align-items:center;height:36px;padding:0 14px;background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border);border-radius:18px;font-family:var(--font-ui);font-size:var(--fs-ui-sm);font-weight:500;cursor:pointer;transition:background var(--t-fast),color var(--t-fast),border-color var(--t-fast)}.pill:hover{background:var(--bg-hover);color:var(--text-primary)}.pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pill-active{background:var(--accent-bg);color:var(--accent);border-color:var(--accent)}.pill-active.pill-success{background:var(--success-bg);color:var(--success);border-color:var(--success)}.pill-active.pill-warning{background:var(--warning-bg);color:var(--warning);border-color:var(--warning)}.pill-active.pill-muted{background:var(--bg-hover);color:var(--text-primary);border-color:var(--text-muted)}.canales-summary{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--fs-ui-sm);color:var(--text-secondary);padding:0 var(--space-xxs);flex-wrap:wrap}.canales-summary strong{color:var(--text-primary);font-weight:600;font-feature-settings:"tnum"}.canales-summary-sep{color:var(--text-muted);-webkit-user-select:none;-moz-user-select:none;user-select:none}.canales-summary-epg-yes{color:var(--success);font-weight:600;font-feature-settings:"tnum"}.canales-summary-epg-orphan{color:var(--warning);font-weight:600;font-feature-settings:"tnum"}.canales-summary-muted{color:var(--text-muted)}.canales-summary-error{color:var(--danger);font-weight:500}.canales-table-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-sm);overflow:auto;max-width:100%}.canales-table{width:100%;border-collapse:collapse;font-size:var(--fs-ui-md);min-width:800px}.canales-table thead{background:var(--bg-elevated);position:sticky;top:0;z-index:1}.canales-table thead th{padding:12px 16px;text-align:left;font-size:var(--fs-ui-xxs);font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap}.canales-table tbody td{padding:14px 16px;border-bottom:1px solid var(--row-divider);vertical-align:middle}.canal-row{transition:background var(--t-fast)}.canal-row:hover{background:var(--bg-hover)}.canal-row-cell-icon{width:60px}.canal-row-icon{width:36px;height:36px;-o-object-fit:contain;object-fit:contain;border-radius:var(--r-sm);background:var(--bg-elevated)}.canal-row-icon-placeholder{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg-elevated);border-radius:var(--r-sm);font-size:18px;color:var(--text-muted)}.canal-row-name{font-size:var(--fs-ui-md);font-weight:500;color:var(--text-primary);line-height:1.4}.canal-row-name-raw{font-size:var(--fs-ui-xs);color:var(--text-muted);margin-top:2px;font-style:italic}.canal-row-cell-category{color:var(--text-secondary);font-size:var(--fs-ui-sm)}.provider-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.7rem;font-weight:700;letter-spacing:.03em;white-space:nowrap;border:1px solid transparent}.provider-badge--liontv{background:#f59e0b26;color:#b45309;border-color:#f59e0b66}.provider-badge--xtreamai{background:#3b82f626;color:#1d4ed8;border-color:#3b82f666}.provider-badge--free{background:#10b98126;color:#047857;border-color:#10b98166}.canal-row-muted{color:var(--text-muted)}.canal-row-cat-unassigned{display:flex;flex-direction:column;gap:2px}.canal-row-cat-badge{display:inline-block;width:-moz-fit-content;width:fit-content;font-size:var(--fs-ui-xs);font-weight:600;padding:1px 7px;border-radius:999px;background:#f59e0b26;color:#b45309;border:1px solid rgba(245,158,11,.4)}.canal-row-cat-raw{font-size:var(--fs-ui-xs);color:var(--text-muted);font-style:italic}.canal-row-cell-stream-id{font-family:var(--font-mono);font-size:var(--fs-mono-md)}.canal-row-id{color:var(--text-muted);font-feature-settings:"tnum";background:transparent}.canales-table-empty{padding:var(--space-2xl)!important;text-align:center;color:var(--text-muted);font-size:var(--fs-ui-md)}.epg-badge{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;font-family:var(--font-ui);font-size:var(--fs-ui-xs);font-weight:600;letter-spacing:.06em;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;transition:background var(--t-fast),border-color var(--t-fast),transform var(--t-fast)}.epg-badge:hover{background:var(--bg-hover);transform:translateY(-1px)}.epg-badge:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.epg-badge-success{background:var(--success-bg);border-color:var(--success);color:var(--success)}.epg-badge-success:hover{background:var(--success-bg);filter:brightness(1.15)}.epg-badge-warning{background:var(--warning-bg);border-color:var(--warning);color:var(--warning)}.epg-badge-warning:hover{background:var(--warning-bg);filter:brightness(1.15)}.epg-badge-muted{background:var(--bg-elevated);border-color:var(--border);color:var(--text-muted);border-style:dashed}.epg-badge-muted:hover{color:var(--text-secondary);border-color:var(--text-muted)}.epg-badge-symbol{font-size:14px;line-height:1;font-weight:700}.epg-badge-text{font-size:var(--fs-ui-xs)}.epg-popover{position:fixed;z-index:100;width:280px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-popover);padding:var(--space-sm);display:flex;flex-direction:column;gap:var(--space-sm);animation:epg-popover-in var(--t-fast) ease-out}@keyframes epg-popover-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.epg-popover-current{background:var(--bg-elevated);padding:var(--space-sm);border-radius:var(--r-sm);border:1px solid var(--border-subtle)}.epg-popover-current-label{font-size:var(--fs-ui-xxs);text-transform:uppercase;letter-spacing:.14em;font-weight:600;color:var(--text-muted);margin-bottom:4px}.epg-popover-current-name{font-size:var(--fs-ui-sm);color:var(--text-primary);font-weight:500;line-height:1.4;word-break:break-word}.epg-popover-current-meta{font-size:var(--fs-ui-xs);color:var(--text-muted);margin-top:4px;font-family:var(--font-mono)}.epg-popover-orphan{display:flex;gap:var(--space-xs);background:var(--warning-bg);border:1px solid var(--warning);padding:var(--space-sm);border-radius:var(--r-sm)}.epg-popover-orphan-icon{font-size:18px;color:var(--warning);flex-shrink:0;line-height:1.3}.epg-popover-orphan-text{flex:1;min-width:0}.epg-popover-orphan-title{font-size:var(--fs-ui-sm);font-weight:600;color:var(--warning);line-height:1.3}.epg-popover-orphan-msg{font-size:var(--fs-ui-xs);color:var(--text-secondary);line-height:1.5;margin-top:2px;word-break:break-word}.epg-popover-orphan-msg code{background:var(--bg-card);padding:1px 5px;border-radius:var(--r-sm);font-size:var(--fs-mono-sm);word-break:break-all}.epg-popover-actions{display:flex;flex-direction:column;gap:6px}.epg-popover-btn{display:flex;align-items:center;gap:var(--space-sm);padding:10px 12px;background:transparent;border:1px solid transparent;border-radius:var(--r-sm);cursor:pointer;text-align:left;width:100%;transition:background var(--t-fast),border-color var(--t-fast)}.epg-popover-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border)}.epg-popover-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.epg-popover-btn:disabled{opacity:.55;cursor:not-allowed}.epg-popover-btn-primary{background:var(--accent-bg-soft);border-color:var(--accent-bg)}.epg-popover-btn-primary:hover:not(:disabled){background:var(--accent-bg)}.epg-popover-btn-danger{color:var(--danger)}.epg-popover-btn-danger:hover:not(:disabled){background:var(--danger-bg);border-color:var(--danger)}.epg-popover-btn-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.epg-popover-btn-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.epg-popover-btn-title{font-size:var(--fs-ui-sm);font-weight:500;color:var(--text-primary);line-height:1.3}.epg-popover-btn-danger .epg-popover-btn-title{color:var(--danger)}.epg-popover-btn-hint{font-size:var(--fs-ui-xs);color:var(--text-muted);line-height:1.3}.epg-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);z-index:200;display:flex;align-items:center;justify-content:center;padding:var(--space-lg);animation:epg-modal-fade-in var(--t-fast) ease-out}@keyframes epg-modal-fade-in{0%{opacity:0}to{opacity:1}}.epg-modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-modal);width:100%;max-width:920px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:epg-modal-slide-in var(--t-normal) cubic-bezier(.2,.8,.2,1)}@keyframes epg-modal-slide-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.epg-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);padding:var(--space-lg);border-bottom:1px solid var(--border)}.epg-modal-title{font-family:var(--font-display);font-size:var(--fs-display-lg);font-weight:600;color:var(--text-primary);margin:0;line-height:1.2}.epg-modal-subtitle{font-size:var(--fs-ui-sm);color:var(--text-secondary);margin:6px 0 0;line-height:1.5}.epg-modal-subtitle strong{color:var(--text-primary);font-weight:600}.epg-modal-category{color:var(--text-muted)}.epg-modal-close{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:var(--r-sm);color:var(--text-muted);font-size:18px;cursor:pointer;transition:background var(--t-fast),color var(--t-fast);flex-shrink:0}.epg-modal-close:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.epg-modal-close:disabled{opacity:.4;cursor:not-allowed}.epg-modal-body{padding:var(--space-lg);overflow-y:auto;flex:1;min-height:0}.epg-modal-meta{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--fs-ui-xs);color:var(--text-muted);margin-bottom:var(--space-md);font-feature-settings:"tnum"}.epg-modal-meta-sep{-webkit-user-select:none;-moz-user-select:none;user-select:none}.epg-modal-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);padding:var(--space-2xl) var(--space-lg)}.epg-modal-spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:epg-spin .8s linear infinite}@keyframes epg-spin{to{transform:rotate(360deg)}}.epg-modal-loading-text{font-size:var(--fs-ui-md);color:var(--text-primary);margin:0;font-weight:500}.epg-modal-loading-hint{font-size:var(--fs-ui-xs);color:var(--text-muted);margin:0}.epg-modal-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);padding:var(--space-2xl);text-align:center}.epg-modal-error-icon{font-size:48px;color:var(--danger)}.epg-modal-error-text{color:var(--danger);font-size:var(--fs-ui-md);margin:0;max-width:480px}.epg-modal-empty{text-align:center;padding:var(--space-2xl) var(--space-lg);color:var(--text-secondary)}.epg-modal-empty-hint{font-size:var(--fs-ui-sm);color:var(--text-muted);margin-top:var(--space-sm)}.epg-suggest-cards{display:flex;flex-direction:row;gap:var(--space-md);overflow-x:auto;overflow-y:visible;scroll-snap-type:x proximity;scroll-padding:var(--space-md);padding-bottom:var(--space-sm);scrollbar-width:thin;scrollbar-color:var(--accent) var(--bg-elevated)}.epg-suggest-cards::-webkit-scrollbar{height:14px}.epg-suggest-cards::-webkit-scrollbar-track{background:var(--bg-elevated);border-radius:7px;margin:0 var(--space-md)}.epg-suggest-cards::-webkit-scrollbar-thumb{background:var(--accent);border-radius:7px;border:2px solid var(--bg-elevated);min-width:60px}.epg-suggest-cards::-webkit-scrollbar-thumb:hover{background:var(--accent-hover, var(--accent));opacity:.85}.epg-suggest-card{display:flex;flex-direction:column;gap:var(--space-xs);padding:var(--space-md);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md);transition:border-color var(--t-fast),background var(--t-fast),transform var(--t-fast);flex:0 0 320px;min-width:320px;max-width:320px;scroll-snap-align:start}.epg-suggest-card:hover{border-color:var(--accent);transform:translateY(-2px)}.epg-suggest-card-selected{border-color:var(--accent);background:var(--accent-bg-soft)}.epg-suggest-card-disabled{opacity:.45;pointer-events:none}.epg-suggest-card-header{display:flex;align-items:center;gap:var(--space-xs);margin-bottom:4px}.epg-suggest-card-rank{font-family:var(--font-display);font-size:var(--fs-display-md);font-weight:600;color:var(--accent);line-height:1}.epg-suggest-card-method{font-size:var(--fs-ui-xxs);text-transform:uppercase;letter-spacing:.14em;font-weight:600;color:var(--text-muted);background:var(--bg-card);padding:3px 8px;border-radius:12px;border:1px solid var(--border)}.epg-suggest-card-conf{margin-left:auto;font-family:var(--font-mono);font-size:var(--fs-ui-sm);font-weight:500;padding:4px 10px;border-radius:var(--r-sm);font-feature-settings:"tnum"}.epg-suggest-card-conf-success{background:var(--success-bg);color:var(--success)}.epg-suggest-card-conf-warning{background:var(--warning-bg);color:var(--warning)}.epg-suggest-card-conf-danger{background:var(--danger-bg);color:var(--danger)}.epg-suggest-card-name{font-size:var(--fs-ui-lg);font-weight:600;color:var(--text-primary);line-height:1.3;word-break:break-word}.epg-suggest-card-id{font-family:var(--font-mono);font-size:var(--fs-mono-sm);color:var(--text-muted)}.epg-suggest-card-id code{background:var(--bg-card);padding:2px 6px;border-radius:var(--r-sm);border:1px solid var(--border-subtle);word-break:break-all}.epg-suggest-card-country{font-size:var(--fs-ui-xs);color:var(--text-secondary)}.epg-suggest-card-sources{font-size:var(--fs-ui-xs);color:var(--text-muted);line-height:1.5}.epg-suggest-card-reasoning{font-size:var(--fs-ui-xs);color:var(--text-secondary);font-style:italic;line-height:1.5;padding:var(--space-xs);background:var(--bg-card);border-radius:var(--r-sm);border-left:2px solid var(--accent);margin-top:var(--space-xs)}.epg-suggest-card-btn{margin-top:auto;width:100%}.epg-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-top:1px solid var(--border);background:var(--bg-elevated);flex-wrap:wrap}.epg-modal-footer-hint{font-size:var(--fs-ui-xs);color:var(--text-muted);margin:0;flex:1;min-width:200px;line-height:1.5}.canales-pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-md);padding:var(--space-md)}.canales-pagination-info{font-size:var(--fs-ui-sm);color:var(--text-secondary);font-feature-settings:"tnum"}.canales-toolbar .form-input{height:40px;padding:0 12px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-primary);font-family:var(--font-ui);font-size:var(--fs-ui-md);width:100%;transition:border-color var(--t-fast),background var(--t-fast)}.canales-toolbar .form-input:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.canales-toolbar .form-input::-moz-placeholder{color:var(--text-muted)}.canales-toolbar .form-input::placeholder{color:var(--text-muted)}.preview-error-banner{padding:var(--space-sm) var(--space-md);background:#eab3081a;border:1px solid rgba(234,179,8,.3);border-radius:var(--r-md);color:var(--text-secondary);font-size:var(--fs-ui-sm);margin-bottom:var(--space-lg);display:flex;align-items:center;gap:var(--space-xs)}.epg-modal-header-content{flex:1;min-width:0}.epg-modal-override-row{display:flex;align-items:center;gap:10px;margin-top:14px;flex-wrap:wrap}.epg-modal-override-input-wrap{position:relative;flex:1;min-width:240px;display:flex;align-items:center}.epg-modal-override-icon{position:absolute;left:10px;font-size:14px;pointer-events:none;opacity:.6}.epg-modal-override-input{width:100%;padding:8px 32px;border-radius:6px;background:var(--bg-input);border:1px solid var(--border);color:var(--text-primary);font-size:14px;line-height:1.4;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease;min-height:38px}.epg-modal-override-input::-moz-placeholder{color:var(--text-muted);font-style:italic}.epg-modal-override-input::placeholder{color:var(--text-muted);font-style:italic}.epg-modal-override-input:focus{outline:none;border-color:var(--vip);box-shadow:0 0 0 2px var(--vip-bg)}.epg-modal-override-input:disabled{opacity:.5;cursor:not-allowed}.epg-modal-override-clear{position:absolute;right:8px;width:20px;height:20px;border-radius:4px;background:transparent;border:none;color:var(--text-muted);font-size:12px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.epg-modal-override-clear:hover{background:var(--danger-bg);color:var(--danger)}.epg-modal-override-btn{white-space:nowrap;background:transparent;border:1px solid var(--vip);color:var(--vip);padding:8px 14px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease;min-height:38px;display:inline-flex;align-items:center;gap:4px}.epg-modal-override-btn:hover:not(:disabled){background:var(--vip-bg);color:var(--text-primary)}.epg-modal-override-btn:focus-visible{outline:2px solid var(--vip);outline-offset:2px}.epg-modal-override-btn:disabled{opacity:.5;cursor:not-allowed}.epg-modal-override-hint{margin:8px 0 0;font-size:12px;line-height:1.5;color:var(--text-muted);font-style:italic}.canal-row-status-select{padding:2px 6px;font-size:.85rem}.canal-row-status-off{opacity:.85}.canal-row-status-del{opacity:.5;text-decoration:line-through}.canales-toolbar-batch{display:flex;flex-direction:column;gap:4px}.pill-danger{background:#dc26261f;color:#dc2626}.pill-danger:hover{background:#dc262638}.pill-fixed{background:#2563eb1f;color:#2563eb}.pill-fixed:hover{background:#2563eb38}.pill-active.pill-fixed{background:#2563eb33;color:#1d4ed8}.pill-muerto{background:#52525b29;color:#52525b}.pill-muerto:hover{background:#52525b47}.pill-active.pill-muerto{background:#52525b52;color:#27272a}.status-control{display:inline-flex;align-items:center;gap:var(--space-xs)}.status-dot{width:9px;height:9px;border-radius:50%;flex:0 0 auto}.status-dot--on{background:var(--success);box-shadow:0 0 0 3px var(--success-bg)}.status-dot--off{background:var(--text-muted);box-shadow:0 0 0 3px #8a8a8a24}.status-dot--del{background:var(--danger);box-shadow:0 0 0 3px var(--danger-bg)}.status-dot--fixed{background:#2563eb;box-shadow:0 0 0 3px #2563eb2e}.status-dot--muerto{background:#27272a;box-shadow:0 0 0 3px #52525b38}.canal-row-status-select{min-height:32px}.canales-toolbar-status{display:flex;flex-direction:column;gap:4px}.canales-toolbar-label-action{color:#f59e0b;font-weight:600}.canales-toolbar-batch-actions{display:flex;gap:6px}.canales-batch-btn{border:1px solid var(--border, #3a3a3a);background:#f59e0b0f;padding:4px 10px;border-radius:6px;font-size:.82rem;cursor:pointer}.canales-batch-btn:hover:not(:disabled){background:#f59e0b29}.canales-batch-btn-danger{border-color:#dc262680}.canales-batch-btn-danger:hover:not(:disabled){background:#dc26262e}.canal-row-cell-drag{width:44px;text-align:center;vertical-align:middle}.canal-row-drag-handle{display:inline-flex;align-items:center;justify-content:center;padding:4px;border:none;background:transparent;color:var(--muted, #888);cursor:grab;border-radius:6px;touch-action:none}.canal-row-drag-handle:hover{color:var(--fg, #fff);background:#ffffff0f}.canal-row-drag-handle:active{cursor:grabbing}.canal-row-dragging{background:#ffffff0a}.canal-row-name--editable{cursor:text}.canal-row-name--editable:hover{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.canal-row-name-input{width:100%;min-width:180px}.utv-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}@media (max-width: 768px){.utv-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.utv-kpi-grid{grid-template-columns:1fr}}.utv-kpi{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);padding:16px 18px;display:flex;align-items:center;gap:14px;border-left-width:4px;transition:box-shadow .15s ease}.utv-kpi:hover{box-shadow:0 4px 16px #0000001f}.utv-kpi-success{border-left-color:var(--success, #22c55e)}.utv-kpi-warning{border-left-color:var(--warning, #fb923c)}.utv-kpi-danger{border-left-color:var(--danger, #ef4444)}.utv-kpi-info{border-left-color:var(--accent, #6366f1)}.utv-kpi-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;flex-shrink:0}.utv-kpi-success .utv-kpi-icon{background:color-mix(in srgb,var(--success, #22c55e) 14%,transparent);color:var(--success, #22c55e)}.utv-kpi-warning .utv-kpi-icon{background:color-mix(in srgb,var(--warning, #fb923c) 14%,transparent);color:var(--warning, #fb923c)}.utv-kpi-danger .utv-kpi-icon{background:color-mix(in srgb,var(--danger, #ef4444) 14%,transparent);color:var(--danger, #ef4444)}.utv-kpi-info .utv-kpi-icon{background:color-mix(in srgb,var(--accent, #6366f1) 14%,transparent);color:var(--accent, #6366f1)}.utv-kpi-body{display:flex;flex-direction:column;gap:2px}.utv-kpi-value{font-size:26px;font-weight:700;color:var(--text-primary);line-height:1;font-variant-numeric:tabular-nums}.utv-kpi-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.utv-kpi-sub{font-size:12px;color:var(--text-muted)}.utv-row-warning{background:color-mix(in srgb,var(--warning, #fb923c) 7%,var(--bg-card))!important}.utv-row-warning:hover{background:color-mix(in srgb,var(--warning, #fb923c) 12%,var(--bg-card))!important}.utv-row-expired{background:color-mix(in srgb,var(--danger, #ef4444) 8%,var(--bg-card))!important}.utv-row-expired:hover{background:color-mix(in srgb,var(--danger, #ef4444) 13%,var(--bg-card))!important}.utv-days{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.utv-days-ok{background:color-mix(in srgb,var(--success, #22c55e) 14%,transparent);color:var(--success, #22c55e)}.utv-days-warning{background:color-mix(in srgb,var(--warning, #fb923c) 14%,transparent);color:var(--warning, #fb923c)}.utv-days-expired{background:color-mix(in srgb,var(--danger, #ef4444) 14%,transparent);color:var(--danger, #ef4444)}.utv-player-link{display:inline-flex;align-items:center;gap:4px;color:var(--accent, #6366f1);text-decoration:none;font-size:13px;padding:3px 8px;border-radius:var(--r-sm, 4px);transition:background .12s ease}.utv-player-link:hover{background:color-mix(in srgb,var(--accent, #6366f1) 12%,transparent)}.utv-copy-btn{display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px solid var(--border);color:var(--text-secondary);padding:4px 10px;border-radius:var(--r-sm, 4px);font-size:12px;font-family:inherit;cursor:pointer;transition:all .12s ease;white-space:nowrap}.utv-copy-btn:hover{background:var(--bg-hover);border-color:var(--accent);color:var(--accent)}.utv-player-section{margin-top:24px;padding-top:22px;border-top:1px solid var(--border)}.utv-section-head{display:flex;align-items:stretch;gap:13px;margin-bottom:18px}.utv-section-line{width:3px;align-self:stretch;min-height:36px;border-radius:999px;background:var(--accent, #6366f1);flex-shrink:0}.utv-section-title{margin:0;font-size:15px;font-weight:600;color:var(--text-primary);letter-spacing:-.012em;line-height:1.3}.utv-section-hint{margin:4px 0 0;font-size:12.5px;color:var(--text-muted);line-height:1.5;max-width:42ch}.utv-player-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 16px}.utv-player-grid .utv-field-full{grid-column:1 / -1}@media (max-width: 480px){.utv-player-grid{grid-template-columns:1fr}}.cm-table--resizable{table-layout:fixed}.cm-table--resizable thead th{position:relative;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cm-table--resizable tbody td{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cm-col-resize{position:absolute;top:0;right:0;width:7px;height:100%;cursor:col-resize;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.cm-col-resize:hover{background:#f5c518;opacity:.55}.cm-table--resizable thead th{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cm-table--resizable thead th:active{cursor:grabbing}.categorias-page{padding:var(--space-xl);display:flex;flex-direction:column;gap:var(--space-lg);max-width:960px}.categorias-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);overflow-x:auto;overflow-y:hidden}.categorias-tab{padding:10px 20px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;font-family:var(--font-ui);font-size:var(--fs-ui-sm);font-weight:500;cursor:pointer;color:var(--text-muted);transition:color var(--t-fast),border-color var(--t-fast);white-space:nowrap;letter-spacing:.01em}.categorias-tab:hover:not(:disabled){color:var(--text-primary)}.categorias-tab--active{color:var(--accent);border-bottom-color:var(--accent)}.categorias-tab:disabled{opacity:.4;cursor:not-allowed}.categorias-content{display:flex;flex-direction:column;min-height:200px}.categorias-loading,.categorias-error,.categorias-empty{padding:var(--space-xl);text-align:center;border-radius:var(--r-md);background:var(--bg-card);border:1px solid var(--border);color:var(--text-muted);font-size:var(--fs-ui-sm)}.categorias-error{background:#f871710f;border-color:#f8717133;color:var(--danger)}.categorias-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--r-md);overflow-y:auto;overflow-x:hidden;max-height:calc(100vh - 260px);scrollbar-width:thin;scrollbar-color:var(--border) transparent}.categorias-list::-webkit-scrollbar{width:10px}.categorias-list::-webkit-scrollbar-track{background:transparent}.categorias-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:5px;border:2px solid var(--bg-card)}.categorias-list::-webkit-scrollbar-thumb:hover{background:var(--text-disabled)}.categoria-row{display:grid;grid-template-columns:32px 44px 1fr auto auto;align-items:center;gap:var(--space-sm);padding:10px var(--space-md);background:var(--bg-card);border-bottom:1px solid var(--border-subtle);transition:background var(--t-fast);cursor:default;min-height:48px}.categoria-row:last-child{border-bottom:none}.categoria-row:hover{background:var(--bg-elevated)}.categoria-row--dragging{background:var(--bg-hover);opacity:.7;box-shadow:0 4px 16px #0006;z-index:10}.categoria-row--hidden{opacity:.45}.categoria-row-drag-handle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;cursor:grab;color:var(--text-disabled);border-radius:var(--r-sm);transition:color var(--t-fast),background var(--t-fast);flex-shrink:0}.categoria-row:hover .categoria-row-drag-handle{color:var(--text-muted)}.categoria-row-drag-handle:active{cursor:grabbing}.categoria-row-position{display:flex;align-items:center;justify-content:center;width:44px;flex-shrink:0}.categoria-pos-text{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:28px;padding:0 6px;font-family:var(--font-mono);font-size:var(--fs-ui-xs);font-weight:500;color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--r-sm);cursor:pointer;transition:color var(--t-fast),border-color var(--t-fast),background var(--t-fast);-webkit-user-select:none;-moz-user-select:none;user-select:none}.categoria-pos-text:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-bg-soft)}.categoria-pos-input{width:44px;height:28px;padding:0 6px;font-family:var(--font-mono);font-size:var(--fs-ui-xs);font-weight:600;color:var(--accent);background:var(--bg-primary);border:1px solid var(--accent);border-radius:var(--r-sm);outline:none;text-align:center;box-shadow:0 0 0 3px var(--accent-bg);-moz-appearance:textfield}.categoria-pos-input::-webkit-outer-spin-button,.categoria-pos-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.categoria-row-name{display:flex;align-items:center;gap:var(--space-xs);flex:1;min-width:0}.categoria-row-name-text{cursor:pointer;color:var(--text-primary);font-size:var(--fs-ui-sm);font-weight:500;padding:4px 8px;border-radius:var(--r-sm);border:1px solid transparent;transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.categoria-row-name-text:hover{background:var(--accent-bg-soft);border-color:var(--border);color:var(--text-primary)}.categoria-row-hint{font-size:var(--fs-ui-xxs);color:var(--text-disabled);flex-shrink:0;opacity:0;transition:opacity var(--t-fast)}.categoria-row-name-text:hover+.categoria-row-hint,.categoria-row-name:hover .categoria-row-hint{opacity:1}.categoria-row-name-input{flex:1;padding:4px 8px;background:var(--bg-primary);border:1px solid var(--accent);border-radius:var(--r-sm);font-family:var(--font-ui);font-size:var(--fs-ui-sm);font-weight:500;color:var(--text-primary);outline:none;box-shadow:0 0 0 3px var(--accent-bg);transition:box-shadow var(--t-fast)}.categoria-row-count{font-family:var(--font-mono);font-size:var(--fs-ui-xxs);color:var(--text-disabled);white-space:nowrap;letter-spacing:.02em}.btn-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1px solid transparent;border-radius:var(--r-sm);cursor:pointer;color:var(--text-disabled);transition:color var(--t-fast),background var(--t-fast),border-color var(--t-fast);flex-shrink:0}.btn-icon:hover{background:var(--bg-hover);border-color:var(--border);color:var(--text-secondary)}.categoria-row--hidden .btn-icon{color:var(--danger);opacity:.7}.categoria-row--hidden .btn-icon:hover{opacity:1;border-color:var(--danger);background:var(--danger-bg)}.categorias-actions{display:flex;align-items:center;gap:var(--space-sm)}.badge{padding:3px 10px;border-radius:var(--r-sm);font-size:var(--fs-ui-xxs);font-weight:600;text-transform:uppercase;letter-spacing:.08em}.badge-warning{background:var(--warning-bg);color:var(--warning)}@media (max-width: 768px){.categorias-page{padding:var(--space-md);gap:var(--space-md)}.categoria-row{grid-template-columns:28px 40px 1fr auto;padding:8px var(--space-sm);gap:var(--space-xs)}.categoria-row-count{display:none}.categoria-row-name-text{font-size:var(--fs-ui-xs)}.categorias-tab{padding:8px 14px;font-size:var(--fs-ui-xs)}}.categorias-create{display:flex;gap:8px;align-items:center;margin-bottom:16px}.categorias-create-input{max-width:360px}.categoria-row-delete:hover{color:var(--danger);border-color:var(--danger);background:var(--danger-bg)}.categoria-row-actions{display:flex;align-items:center;gap:4px;justify-content:flex-end}.fuentes-page{display:flex;flex-direction:column;gap:16px}.fuentes-filtros{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:14px 16px;background:var(--bg-card, var(--surface, transparent));border:1px solid var(--border);border-radius:var(--r-md, 10px);box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .06))}.fuentes-input,.fuentes-select{background:var(--bg-input, var(--surface, transparent));color:var(--text-primary, inherit);border:1px solid var(--border);border-radius:var(--r-sm, 8px);padding:9px 12px;font-size:13px;font-family:inherit;height:38px;box-sizing:border-box;transition:border-color .12s ease,box-shadow .12s ease}.fuentes-input::-moz-placeholder{color:var(--text-muted)}.fuentes-input::placeholder{color:var(--text-muted)}.fuentes-input:focus,.fuentes-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.fuentes-select{cursor:pointer}.fuentes-input{min-width:240px;flex:1 1 240px}.fuentes-input-fecha{min-width:150px;flex:0 0 auto}.fuentes-error,.fuentes-loading,.fuentes-empty{padding:32px 24px;text-align:center;color:var(--text-muted, inherit);border:1px dashed var(--border);border-radius:var(--r-md, 10px);background:var(--bg-card, transparent);font-size:14px}.fuentes-error{color:var(--danger, #e5484d);border-color:color-mix(in srgb,var(--danger) 35%,transparent);background:color-mix(in srgb,var(--danger) 8%,transparent)}.fuentes-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--r-md, 10px);background:var(--bg-card, transparent);box-shadow:var(--shadow-md, 0 4px 14px rgba(0, 0, 0, .1))}.fuentes-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.fuentes-table thead th{text-align:left;padding:11px 14px;border-bottom:1px solid var(--border);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);background:var(--bg-card, var(--surface, #16181d));white-space:nowrap;position:sticky;top:0;z-index:1}.fuentes-th-sort{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.fuentes-th-sort:hover{color:var(--accent, #f5a623)}.fuentes-table tbody td{padding:9px 14px;border-bottom:1px solid var(--border);color:var(--text-primary, inherit);white-space:nowrap;vertical-align:middle}.fuentes-table tbody tr{transition:background .11s ease}.fuentes-table tbody tr:hover{background:var(--bg-hover, rgba(128, 128, 128, .08))}.fuentes-table tbody tr:last-child td{border-bottom:none}.fuentes-table tbody tr.is-selected,.fuentes-table tbody tr:has(input[type=checkbox]:checked){background:color-mix(in srgb,var(--accent) 10%,transparent)}.fuentes-table tbody tr.is-selected td:first-child,.fuentes-table tbody tr:has(input[type=checkbox]:checked) td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.fuentes-row--caida{opacity:.5}.fuentes-td-nombre{max-width:340px;overflow:hidden;text-overflow:ellipsis;font-weight:500}.fuentes-td-server{font-family:var(--font-mono, monospace);font-size:12px;color:var(--text-secondary)}.fuentes-td-acciones{text-align:right;white-space:nowrap}.fuentes-pais-btn{display:inline-flex;align-items:center;gap:5px;background:none;border:1px solid transparent;color:inherit;cursor:pointer;padding:3px 7px;border-radius:var(--r-sm, 6px);font-size:13px;transition:background .11s ease,border-color .11s ease}.fuentes-pais-btn:hover{background:var(--bg-hover, rgba(128, 128, 128, .12));border-color:var(--border)}.fuentes-pais-edit-ico{opacity:.35}.fuentes-pais-input{width:60px;background:var(--bg-input, var(--surface, transparent));color:inherit;border:1px solid var(--accent);border-radius:var(--r-sm, 6px);padding:3px 7px;font-size:13px;text-transform:uppercase;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.fuentes-badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.02em;border:1px solid transparent}.fuentes-badge--viva{background:color-mix(in srgb,var(--success, #30a46c) 16%,transparent);color:var(--success, #30a46c);border-color:color-mix(in srgb,var(--success, #30a46c) 32%,transparent)}.fuentes-badge--caida{background:color-mix(in srgb,var(--danger, #e5484d) 16%,transparent);color:var(--danger, #e5484d);border-color:color-mix(in srgb,var(--danger, #e5484d) 32%,transparent)}.fuentes-actionbar{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--bg-card, var(--surface-2, rgba(255, 255, 255, .04)));border:1px solid var(--border, rgba(255, 255, 255, .1));border-radius:var(--r-md, 10px);box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .06));flex-wrap:wrap}.fuentes-actionbar--seleccion{background:color-mix(in srgb,var(--accent) 10%,var(--bg-card, transparent));border-color:color-mix(in srgb,var(--accent) 38%,transparent);box-shadow:var(--shadow-md, 0 4px 14px rgba(0, 0, 0, .1))}.fuentes-fuente-badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;background:var(--bg-hover, rgba(255, 255, 255, .08));border:1px solid var(--border, rgba(255, 255, 255, .15));color:var(--text-secondary, inherit)}.fuente--encoder{background:#f59e0b29;border-color:#f59e0b80;color:#f59e0b}.fuente--m3u8{background:#22c55e29;border-color:#22c55e80;color:#22c55e}.fuente--youtube{background:#ef444429;border-color:#ef444480;color:#ef4444}.fuente--facebook{background:#3b82f629;border-color:#3b82f680;color:#3b82f6}.fuente--iptv-org{background:#a855f729;border-color:#a855f780;color:#a855f7}.fuente--sin-url,.fuente--otro{opacity:.65}.fuentes-muted{color:var(--text-muted);opacity:.7}.fuentes-promoted-ico{color:var(--success, #22c55e)}.fuentes-preview-overlay,.fuentes-promote-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay, rgba(0, 0, 0, .65));display:flex;align-items:center;justify-content:center;z-index:200;animation:fuentes-fade .14s ease-out}.fuentes-preview-modal{background:var(--bg-card, var(--surface, #16181d));border:1px solid var(--border);border-radius:var(--r-md, 12px);padding:14px;width:min(720px,92vw);display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-lg, 0 24px 60px rgba(0, 0, 0, .5));animation:fuentes-pop .16s ease-out}.fuentes-preview-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--border)}.fuentes-preview-title{font-weight:600;font-size:15px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fuentes-promote-modal{background:var(--bg-card, var(--surface, #15171c));border:1px solid var(--border, rgba(255, 255, 255, .12));border-radius:var(--r-md, 12px);width:min(460px,92vw);padding:14px 0 16px;box-shadow:var(--shadow-lg, 0 24px 60px rgba(0, 0, 0, .5));animation:fuentes-pop .16s ease-out}.fuentes-promote-modal .fuentes-preview-head{padding:0 16px 12px}.fuentes-promote-body{padding:16px;display:flex;flex-direction:column;gap:14px}.fuentes-promote-modes{display:flex;gap:18px;font-size:13px}.fuentes-promote-modes label{display:flex;align-items:center;gap:7px;cursor:pointer;padding:7px 11px;border:1px solid var(--border);border-radius:var(--r-sm, 8px);transition:border-color .11s ease,background .11s ease}.fuentes-promote-modes label:hover{border-color:var(--accent);background:var(--bg-hover)}.fuentes-promote-modes input[type=radio]{accent-color:var(--accent);cursor:pointer}.fuentes-promote-nueva{display:flex;gap:8px}.fuentes-emoji-input{width:80px;flex:0 0 auto;text-align:center}.fuentes-promote-foot{display:flex;justify-content:flex-end;gap:10px;padding:0 16px}@keyframes fuentes-fade{0%{opacity:0}to{opacity:1}}@keyframes fuentes-pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.cat-picker{position:relative;width:100%}.cat-picker-list{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;max-height:260px;overflow-y:auto;background:var(--bg-card, var(--surface, #16181d));border:1px solid var(--border);border-radius:var(--r-md, 10px);box-shadow:var(--shadow-md, 0 4px 14px rgba(0, 0, 0, .25));padding:4px}.cat-picker-item{display:block;width:100%;text-align:left;padding:8px 10px;background:transparent;border:0;border-radius:var(--r-sm, 8px);color:var(--text-primary, inherit);cursor:pointer;font-size:.9rem}.cat-picker-item:hover{background:color-mix(in srgb,var(--accent) 16%,transparent)}.cat-picker-item.is-sel{background:color-mix(in srgb,var(--accent) 26%,transparent)}.cat-picker-empty{padding:10px;color:var(--text-muted);font-size:.85rem}.auth-screen{min-height:100vh;width:100%;display:grid;place-items:center;padding:32px 16px;background:radial-gradient(circle at 10% 10%,rgba(212,175,55,.06),transparent 50%),radial-gradient(circle at 90% 90%,rgba(212,175,55,.03),transparent 50%),var(--bg-app, #0a0a0b);font-family:var(--font-sans, system-ui, -apple-system, sans-serif)}.auth-card{width:100%;max-width:420px;background:var(--bg-card, #131316);border:1px solid var(--border, #26262b);border-radius:var(--r-lg, 12px);padding:40px 36px 28px;box-shadow:var(--shadow-modal),inset 0 1px #ffffff08;display:flex;flex-direction:column;gap:16px}.auth-card-wide{max-width:520px}.auth-brand{width:56px;height:56px;border-radius:14px;background:var(--accent-gradient);display:grid;place-items:center;margin:0 auto;box-shadow:var(--accent-glow),inset 0 1px #ffffff40}.auth-brand-mark{font-family:var(--font-display, "Playfair Display", Georgia, serif);font-size:32px;font-weight:700;color:#1a1a1c;line-height:1}.auth-title{font-family:var(--font-display, "Playfair Display", Georgia, serif);font-size:26px;font-weight:600;color:var(--text-primary, #e8e8ea);text-align:center;margin:4px 0 0;letter-spacing:-.01em;line-height:1.2}.auth-subtitle{font-size:14px;color:var(--text-secondary, #9a9aa0);text-align:center;margin:0 0 8px;line-height:1.5}.auth-banner{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--r-md, 8px);font-size:14px;line-height:1.4}.auth-banner-error{background:#ef444414;border:1px solid rgba(239,68,68,.25);color:#fca5a5}.auth-banner-warning{background:#f59e0b14;border:1px solid rgba(245,158,11,.25);color:#fcd34d}.auth-banner svg{flex-shrink:0}.auth-card form{display:flex;flex-direction:column;gap:16px;margin-top:4px}.auth-card .field{display:flex;flex-direction:column;gap:6px}.auth-card .field-label{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary, #9a9aa0)}.auth-card .input{width:100%;background:var(--bg-input, #0e0e10);border:1px solid var(--border, #26262b);border-radius:var(--r-md, 8px);padding:12px 14px;color:var(--text-primary, #e8e8ea);font-size:15px;min-height:44px;transition:border-color .12s ease,box-shadow .12s ease;font-family:inherit}.auth-card .input:focus-visible{outline:none;border-color:var(--accent, #d4af37);box-shadow:0 0 0 3px #d4af3726}.auth-card .input:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.auth-card .input{font-size:16px}}.auth-password-wrap{position:relative}.auth-password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:transparent;border:none;width:32px;height:32px;display:grid;place-items:center;cursor:pointer;color:var(--text-secondary, #9a9aa0);border-radius:6px;transition:color .12s ease,background .12s ease}.auth-password-toggle:hover{color:var(--text-primary);background:var(--bg-hover)}.auth-submit{width:100%;margin-top:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;font-size:15px;font-weight:600}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-otp-row{display:flex;gap:8px;justify-content:center;margin:16px 0 4px}.auth-otp-input{width:48px;height:56px;text-align:center;font-family:var(--font-mono, ui-monospace, "SF Mono", "JetBrains Mono", monospace);font-size:24px;font-weight:600;background:var(--bg-input, #0e0e10);border:1px solid var(--border, #26262b);border-radius:var(--r-md, 8px);color:var(--text-primary, #e8e8ea);transition:border-color .12s ease,box-shadow .12s ease,transform 80ms ease}.auth-otp-input:focus-visible{outline:none;border-color:var(--accent, #d4af37);box-shadow:0 0 0 3px #d4af3726;transform:translateY(-1px)}.auth-otp-input:disabled{opacity:.5}@media (max-width: 480px){.auth-otp-row{gap:6px}.auth-otp-input{width:42px;height:50px;font-size:20px}}.auth-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.2);border-top-color:#fffc;border-radius:50%;animation:auth-spin .72s linear infinite;display:inline-block}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.auth-spinner{animation-duration:2s}}.auth-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:var(--bg-app, #0a0a0b);color:var(--text-secondary, #9a9aa0)}.auth-loading-spinner{width:32px;height:32px;border:2px solid rgba(212,175,55,.2);border-top-color:#d4af37cc;border-radius:50%;animation:auth-spin .72s linear infinite}.auth-loading-text{font-size:14px;margin:0}.auth-footer{margin-top:12px;padding-top:16px;border-top:1px solid var(--border, #26262b);text-align:center;font-size:12px;color:var(--text-tertiary, #6a6a70);letter-spacing:.04em}.auth-link{background:none;border:none;color:var(--text-secondary, #9a9aa0);font-size:13px;cursor:pointer;padding:8px;margin:4px auto 0;display:block;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#9a9aa04d;transition:color .12s ease}.auth-link:hover{color:var(--text-primary, #e8e8ea)}.auth-link:disabled{opacity:.4;cursor:not-allowed}.auth-steps{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:24px;counter-reset:step}.auth-steps li{display:flex;gap:14px;align-items:flex-start}.auth-steps li>div{flex:1;min-width:0}.auth-steps li strong{display:block;font-size:15px;font-weight:600;color:var(--text-primary, #e8e8ea);margin-bottom:4px}.auth-steps li p{font-size:13px;color:var(--text-secondary, #9a9aa0);margin:0 0 8px;line-height:1.5}.auth-step-num{width:28px;height:28px;border-radius:50%;background:#d4af371f;border:1px solid rgba(212,175,55,.3);color:var(--accent, #d4af37);font-size:13px;font-weight:700;display:grid;place-items:center;flex-shrink:0}.auth-qr-wrap{display:grid;place-items:center;padding:12px;background:#fff;border-radius:var(--r-md, 8px);margin:12px 0;width:-moz-fit-content;width:fit-content}.auth-qr{width:180px;height:180px;display:block}.auth-qr-placeholder{width:204px;height:204px;background:var(--bg-input, #0e0e10);border:1px dashed var(--border, #26262b);border-radius:var(--r-md, 8px);display:grid;place-items:center;margin:12px 0}.auth-secret{display:inline-flex;align-items:center;gap:8px;background:var(--bg-input, #0e0e10);border:1px solid var(--border, #26262b);border-radius:var(--r-md, 8px);padding:8px 12px;font-family:var(--font-mono, ui-monospace, monospace);font-size:13px;color:var(--text-primary, #e8e8ea);cursor:pointer;transition:border-color .12s ease,background .12s ease}.auth-secret:hover{border-color:var(--accent, #d4af37)}.auth-secret code{letter-spacing:.05em;background:none;padding:0;font-size:inherit}.auth-secret-hint{font-size:11px;color:var(--text-secondary, #9a9aa0);letter-spacing:.06em;text-transform:uppercase;font-family:var(--font-sans, system-ui, sans-serif)}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-opsz-normal-CfYZpDVp.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-opsz-normal-BFQXbQ-f.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-opsz-normal-BmPQvyvo.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-opsz-normal-BM0NlUE_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-opsz-normal-Ci9T9ieq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-opsz-normal-DpK-iCPk.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-opsz-normal-BwkfbSeq.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:IBM Plex Mono,ui-monospace,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.sticky{position:sticky}.mb-4{margin-bottom:1rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.\!hidden{display:none!important}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-3{gap:.75rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--r-lg)}.border{border-width:1px}.bg-blue-500\/10{background-color:#3b82f61a}.bg-purple-500\/10{background-color:#a855f71a}.bg-red-500\/10{background-color:#ef44441a}.p-3{padding:.75rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.font-mono{font-family:IBM Plex Mono,ui-monospace,monospace}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-purple-500{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-success{color:var(--success)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/manrope-400-latin.woff2) format("woff2")}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/manrope-500-latin.woff2) format("woff2")}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/manrope-600-latin.woff2) format("woff2")}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/manrope-700-latin.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500.woff2) format("woff2")}:root{--font-display: "Manrope", -apple-system, BlinkMacSystemFont, "Inter Variable", ui-sans-serif, system-ui, sans-serif;--font-ui: -apple-system, BlinkMacSystemFont, "Inter Variable", "Manrope", ui-sans-serif, system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", monospace;--fs-display-xl: 32px;--fs-display-lg: 24px;--fs-display-md: 20px;--fs-ui-lg: 17px;--fs-ui-md: 16px;--fs-ui-sm: 15px;--fs-ui-xs: 14px;--fs-ui-xxs: 12px;--fs-mono-lg: 30px;--fs-mono-sm: 13px;--r-sm: 4px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--t-fast: .12s ease;--t-normal: .2s ease;--t-slow: .32s cubic-bezier(.2, .8, .2, 1);--space-xxs: 4px;--space-xs: 8px;--space-sm: 12px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--usagebar-track: var(--bg-elevated);--usagebar-height: 8px;--usagebar-radius: 4px;--accent-gradient: linear-gradient(135deg, #FFD24D 0%, #E6B800 100%);--accent-glow: 0 4px 20px rgba(230, 184, 0, .35);--cta-gradient: linear-gradient(135deg, #FF8555 0%, #FF6B35 100%);--cta-glow: 0 6px 22px rgba(255, 107, 53, .38);--vip-gradient: linear-gradient(135deg, #9D74F7 0%, #7C4DFF 100%);--vip-glow: 0 4px 20px rgba(124, 77, 255, .32);--font-sans: var(--font-ui);--bg-app: var(--bg-primary);--text: var(--text-primary);--color-bg-base: var(--bg-input);--color-bg-elevated: var(--bg-elevated);--color-border: var(--border);--color-text-primary: var(--text-primary);--color-text-secondary:var(--text-secondary);--color-text-muted: var(--text-muted)}:root,:root[data-theme=dark]{--bg-primary: #0A0A0A;--bg-card: #141414;--bg-elevated: #1A1A1A;--bg-hover: #202020;--bg-input: #0F0F11;--border: #2A2A2A;--border-subtle:#1A1A1A;--text-primary: #F5F5F5;--text-secondary:#C8C8C8;--text-muted: #8A8A8A;--text-disabled:#7A7A7A;--text-tertiary:#8A8A8A;--accent: #FFC83D;--accent-bg: rgba(255, 200, 61, .12);--accent-bg-soft:rgba(255, 200, 61, .06);--cta: #FF6B35;--cta-hover: #FF8555;--cta-text: #FFFFFF;--cta-bg: rgba(255, 107, 53, .14);--vip: #9D74F7;--vip-bg: rgba(157, 116, 247, .16);--success: #4ADE80;--success-bg: rgba(74, 222, 128, .12);--warning: #FBBF24;--warning-bg: rgba(251, 191, 36, .12);--danger: #F87171;--danger-bg: rgba(248, 113, 113, .12);--info: #60A5FA;--info-bg: rgba(96, 165, 250, .12);--shadow-modal: 0 10px 40px rgba(0, 0, 0, .6);--shadow-popover:0 4px 16px rgba(0, 0, 0, .4);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .45);--shadow-md: 0 10px 30px rgba(0, 0, 0, .55);--shadow-lg: 0 20px 56px rgba(0, 0, 0, .6);--hero: linear-gradient(135deg, #1B2A31 0%, #122026 55%, #0A0A0A 100%);--overlay: rgba(0, 0, 0, .65);--row-divider: rgba(255, 255, 255, .05);--btn-primary-text:#000;--skeleton-bg: linear-gradient( 90deg, var(--bg-elevated) 0%, var(--bg-hover) 50%, var(--bg-elevated) 100% )}:root[data-theme=light]{--bg-primary: #F6F1E7;--bg-card: #FFFFFF;--bg-elevated: #FBF7EF;--bg-hover: #F3ECDD;--bg-input: #FFFFFF;--border: #ECE3D2;--border-subtle:#F2EBDC;--text-primary: #1A1A1A;--text-secondary:#3F3F3F;--text-muted: #6B6B6B;--text-disabled:#8A8A8A;--text-tertiary:#6B6B6B;--accent: #8B6314;--accent-bg: rgba(139, 99, 20, .12);--accent-bg-soft:rgba(139, 99, 20, .06);--cta: #C9461F;--cta-hover: #B23C18;--cta-text: #FFFFFF;--cta-bg: rgba(201, 70, 31, .1);--vip: #6D28D9;--vip-bg: rgba(109, 40, 217, .1);--success: #1F9D55;--success-bg: rgba(31, 157, 85, .12);--warning: #B8730A;--warning-bg: rgba(184, 115, 10, .14);--danger: #C9342E;--danger-bg: rgba(201, 52, 46, .1);--info: #1D6FB8;--info-bg: rgba(29, 111, 184, .1);--shadow-modal: 0 10px 40px rgba(60, 40, 10, .16);--shadow-popover:0 4px 16px rgba(60, 40, 10, .1);--shadow-sm: 0 1px 2px rgba(60, 45, 15, .05), 0 2px 10px rgba(60, 45, 15, .07);--shadow-md: 0 8px 26px rgba(60, 45, 15, .12);--shadow-lg: 0 18px 50px rgba(60, 45, 15, .16);--hero: linear-gradient(135deg, #22323A 0%, #16242B 60%, #101B20 100%);--overlay: rgba(20, 20, 20, .45);--row-divider: rgba(0, 0, 0, .06);--btn-primary-text:#FFFFFF;--skeleton-bg: linear-gradient( 90deg, var(--bg-elevated) 0%, var(--bg-hover) 50%, var(--bg-elevated) 100% )}html{font-family:var(--font-ui);font-size:var(--fs-ui-md);background:var(--bg-primary);color:var(--text-primary);font-optical-sizing:auto;transition:background-color var(--t-normal),color var(--t-normal)}body{font-size:var(--fs-ui-md);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"cv11" 1,"ss01" 1,"calt" 1;margin:0;background:var(--bg-primary);color:var(--text-primary)}.cm-table td,.fuentes-table td,.kpi-value{font-variant-numeric:tabular-nums slashed-zero;font-feature-settings:"tnum" 1,"zero" 1}.dialog-title,.fuentes-preview-title{letter-spacing:-.018em}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--bg-glass: rgba(26, 26, 26, .72);--glass-blur: blur(28px) saturate(160%);--glass-border: rgba(255, 255, 255, .1);--scrim: rgba(0, 0, 0, .55);--scrim-blur: blur(8px) saturate(120%)}.glass{background:var(--bg-glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border)}.progress-bar{height:var(--usagebar-height);border-radius:var(--usagebar-radius);background:var(--usagebar-track);overflow:hidden}.progress-bar>span{display:block;height:100%;border-radius:inherit;background:var(--success);transition:width var(--t-normal)}.progress-bar.is-danger>span{background:var(--danger)}.progress-bar.is-warning>span{background:var(--warning)}.progress-bar.is-accent>span{background:var(--accent)}.metric-row{margin-bottom:24px}.metric-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px}.metric-name{font-size:15px;font-weight:500;color:var(--text-primary)}.metric-sub{font-size:13px;color:var(--text-muted)}.metric-val{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:20px;font-weight:500;color:var(--text-primary)}.metric-val.success{color:var(--success)}.metric-val.danger{color:var(--danger)}.metric-val.accent{color:var(--accent)}.metric-line{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:.5px solid var(--border-subtle)}.metric-line .label{font-size:15px;color:var(--text-secondary)}.metric-line .value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:15px;color:var(--text-primary)}.read-col{width:100%;max-width:720px;margin:0 auto;padding:40px 28px 48px}.read-section{margin-bottom:48px}.read-section-title{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:20px}.read-header{margin-bottom:44px}.read-divider{height:.5px;background:var(--border);margin:44px 0;border:0}
