:root {
    --artemisa-borgona: #6D1615;
    --artemisa-rosa: #D0B9BA;
    --artemisa-petroleo: #096266;
    --artemisa-salvia: #739899;
    --page: #160d0e;
    --header: rgba(30, 16, 17, .94);
    --surface: #241718;
    --surface-raised: #302021;
    --surface-soft: #2a1b1c;
    --surface-hover: #3a2829;
    --border: #503839;
    --border-soft: rgba(208, 185, 186, .10);
    --text: #f7eeee;
    --text-soft: #D0B9BA;
    --muted: #a58c8d;
    --green: #096266;
    --green-bright: #739899;
    --red: #6D1615;
    --max-width: 1240px;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
    margin: 0;
    min-width: 320px;
    color: var(--text);
    background:
        radial-gradient(ellipse 760px 430px at 78% 60px, rgba(9, 98, 102, .16), transparent 68%),
        radial-gradient(ellipse 680px 390px at 12% 330px, rgba(109, 22, 21, .19), transparent 70%),
        var(--page);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
}

a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }
svg { display: block; width: 1em; height: 1em; fill: currentColor; }

.site-header {
    position: sticky;
    top: 0;
    z-index: 30;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    min-height: 72px;
    padding: 12px max(24px, calc((100vw - var(--max-width)) / 2));
    border-bottom: 1px solid var(--border-soft);
    background: var(--header);
    backdrop-filter: blur(20px);
}

.brand, .footer-brand { display: flex; align-items: center; gap: 11px; }
.brand-copy, .footer-brand > span:last-child { display: grid; gap: 1px; }
.brand strong, .footer-brand strong { font-size: .9rem; letter-spacing: .09em; }
.brand small, .footer-brand small { color: var(--muted); font-size: .68rem; }

.brand-symbol {
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 12px;
    color: white;
    background: linear-gradient(145deg, var(--artemisa-borgona), var(--artemisa-petroleo));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .14), 0 8px 24px rgba(0, 0, 0, .18);
}
.brand-symbol svg { width: 24px; height: 24px; }
.brand-symbol.small { width: 35px; height: 35px; border-radius: 10px; }
.brand-symbol.small svg { width: 20px; height: 20px; }

.top-nav {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px;
    border: 1px solid var(--border-soft);
    border-radius: 11px;
    background: rgba(0, 0, 0, .12);
}
.top-nav a { padding: 8px 16px; border-radius: 8px; color: var(--muted); font-size: .78rem; font-weight: 600; transition: color .2s, background .2s; }
.top-nav a:hover, .top-nav a.active { color: var(--text); background: var(--surface-raised); }

.header-audience { display: flex; align-items: center; justify-self: end; gap: 8px; color: var(--muted); font-size: .75rem; }
.header-audience strong { color: var(--text); }

.status-dot {
    display: inline-block;
    flex: 0 0 auto;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--green-bright);
    box-shadow: 0 0 0 3px rgba(115, 152, 153, .1);
    animation: pulse 2s ease-out infinite;
}

main { width: min(calc(100% - 40px), var(--max-width)); margin: 0 auto; }

.intro {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 48px;
    padding: 68px 0 34px;
}

.section-label { display: flex; align-items: center; gap: 8px; margin-bottom: 14px; color: var(--green-bright); font-size: .67rem; font-weight: 750; letter-spacing: .14em; }
.section-label i { width: 18px; height: 1px; background: var(--green-bright); }
.intro h1 { margin: 0; font-size: clamp(2.45rem, 5.2vw, 4.6rem); line-height: .98; letter-spacing: -.055em; font-weight: 650; }
.intro h1 span { color: #D0B9BA; }
.intro > div > p { margin: 19px 0 0; color: var(--muted); font-size: .95rem; }

.stats { display: flex; align-items: stretch; flex: 0 0 auto; border: 1px solid var(--border); border-radius: 15px; background: var(--surface); box-shadow: 0 16px 40px rgba(0, 0, 0, .12); }
.stats article { display: flex; align-items: center; gap: 12px; min-width: 175px; padding: 18px 20px; }
.stats article + article { border-left: 1px solid var(--border); }
.stat-icon { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 10px; color: var(--text-soft); background: var(--surface-raised); }
.stat-icon svg { width: 18px; height: 18px; }
.stats article > span:last-child { display: grid; gap: 2px; }
.stats strong { font-size: 1.35rem; line-height: 1; letter-spacing: -.03em; }
.stats small { color: var(--muted); font-size: .66rem; }

.watch-layout { display: grid; grid-template-columns: 275px minmax(0, 1fr); gap: 14px; }

.channel-panel, .player-card { border: 1px solid var(--border); border-radius: 17px; background: var(--surface); box-shadow: 0 24px 60px rgba(0, 0, 0, .16); }
.channel-panel { display: flex; min-height: 100%; flex-direction: column; overflow: hidden; padding: 10px; }
.panel-heading { display: flex; align-items: center; justify-content: space-between; padding: 10px 9px 15px; color: var(--muted); font-size: .62rem; font-weight: 750; letter-spacing: .12em; }
.panel-heading small { font-size: .62rem; font-weight: 500; letter-spacing: 0; }

.channel-button {
    display: grid;
    grid-template-columns: auto 1fr auto auto;
    align-items: center;
    gap: 11px;
    width: 100%;
    margin-bottom: 7px;
    padding: 12px;
    text-align: left;
    border: 1px solid transparent;
    border-radius: 12px;
    background: transparent;
    cursor: pointer;
    transition: border-color .2s, background .2s;
}
.channel-button:hover { background: var(--surface-raised); }
.channel-button.active { border-color: rgba(9, 98, 102, .42); background: rgba(9, 98, 102, .11); }
.channel-logo { display: grid; width: 39px; height: 39px; place-items: center; border: 1px solid var(--border); border-radius: 10px; color: var(--text-soft); background: var(--surface-soft); font-size: .82rem; font-weight: 800; }
.channel-button.active .channel-logo { border-color: rgba(9, 98, 102, .35); color: white; background: var(--green); }
.channel-copy { display: grid; gap: 4px; min-width: 0; }
.channel-copy strong { font-size: .84rem; }
.channel-copy small { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: .62rem; }
.channel-copy .status-dot { width: 5px; height: 5px; box-shadow: none; }
.channel-viewers { display: grid; justify-items: end; gap: 1px; }
.channel-viewers b { font-size: .75rem; }
.channel-viewers small { color: var(--muted); font-size: .55rem; }
.chevron { width: 14px; height: 14px; fill: none; stroke: var(--muted); stroke-width: 1.8; }
.channel-button.active .chevron { stroke: var(--green-bright); }

.channel-help { display: flex; gap: 10px; margin-top: auto; padding: 14px 10px 8px; border-top: 1px solid var(--border-soft); color: #9b8283; }
.channel-help svg { flex: 0 0 auto; width: 14px; height: 14px; margin-top: 2px; }
.channel-help p { margin: 0; font-size: .62rem; line-height: 1.5; }

.player-card { min-width: 0; overflow: hidden; }
.player-header, .player-bottom { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 60px; padding: 11px 15px; }
.now-playing { display: flex; align-items: center; gap: 12px; }
.now-playing > span:last-child { display: grid; gap: 2px; }
.now-playing strong { font-size: .84rem; }
.now-playing small { color: var(--muted); font-size: .62rem; }
.live-tag { display: inline-flex; align-items: center; gap: 6px; padding: 6px 8px; border-radius: 7px; color: white; background: var(--red); font-size: .56rem; font-weight: 850; letter-spacing: .08em; }
.live-tag i { width: 5px; height: 5px; border-radius: 50%; background: white; }
.player-tools { display: flex; align-items: center; gap: 8px; }
.audio-tag { display: flex; align-items: center; gap: 6px; padding: 7px 9px; border: 1px solid var(--border); border-radius: 8px; color: var(--muted); font-size: .63rem; }
.audio-tag svg { width: 14px; height: 14px; color: var(--text-soft); }
.icon-button { display: grid; width: 32px; height: 32px; place-items: center; padding: 0; border: 1px solid var(--border); border-radius: 8px; background: var(--surface-raised); cursor: pointer; }
.icon-button svg { width: 15px; height: 15px; }
.icon-button:hover:not(:disabled) { background: var(--surface-hover); }
.icon-button:disabled { opacity: .35; cursor: not-allowed; }

.player-stage { position: relative; width: 100%; aspect-ratio: 16 / 9; border-block: 1px solid var(--border); background: #000; }
.player-stage iframe { display: block; width: 100%; height: 100%; border: 0; background: #000; }
.start-overlay { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; padding: 28px; text-align: center; background: radial-gradient(circle at 50% 45%, #302021, #120a0b 62%, #0c0708); }
.start-overlay::before { position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px); background-size: 34px 34px; content: ""; mask-image: radial-gradient(circle, black, transparent 70%); }
.start-overlay.hidden { display: none; }
.play-orbit { position: relative; display: grid; width: 75px; height: 75px; place-items: center; border: 1px solid rgba(9, 98, 102, .24); border-radius: 50%; background: rgba(9, 98, 102, .06); box-shadow: 0 0 55px rgba(9, 98, 102, .08); }
.play-orbit::before { position: absolute; inset: 8px; border: 1px solid rgba(9, 98, 102, .24); border-radius: 50%; content: ""; }
.play-orbit span { position: relative; z-index: 1; display: grid; width: 45px; height: 45px; place-items: center; border-radius: 50%; color: white; background: var(--green); box-shadow: 0 8px 30px rgba(9, 98, 102, .2); }
.play-orbit svg { width: 22px; height: 22px; }
.start-overlay h2 { position: relative; margin: 18px 0 4px; font-size: 1.55rem; letter-spacing: -.025em; }
.start-overlay p { position: relative; margin: 0 0 19px; color: var(--muted); font-size: .79rem; }
.start-overlay button { position: relative; display: inline-flex; align-items: center; gap: 8px; padding: 11px 17px; border: 0; border-radius: 9px; color: white; background: var(--green); font-size: .76rem; font-weight: 700; cursor: pointer; box-shadow: 0 10px 28px rgba(9, 98, 102, .16); }
.start-overlay button:hover { background: #0b777b; }
.start-overlay button svg { width: 16px; height: 16px; }
.start-overlay small { position: relative; margin-top: 10px; color: #8f7778; font-size: .58rem; }
.player-bottom { min-height: 43px; color: var(--muted); font-size: .61rem; }
.player-bottom span { display: flex; align-items: center; gap: 7px; }
.player-bottom .status-dot { width: 5px; height: 5px; box-shadow: none; }

.ads-section { padding: 62px 0 82px; }
.ads-title { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 16px; }
.ads-title > span { display: grid; gap: 5px; }
.ads-title small { color: var(--green-bright); font-size: .61rem; font-weight: 750; letter-spacing: .13em; }
.ads-title strong { font-size: 1.5rem; font-weight: 600; letter-spacing: -.025em; }
.ads-title > a { color: var(--muted); font-size: .68rem; }
.ads-title > a:hover { color: var(--text); }
.ads-title > a span { margin-left: 4px; color: var(--green-bright); }
.ads-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 10px; }
.ad-card { position: relative; display: flex; min-height: 180px; flex-direction: column; justify-content: space-between; padding: 18px; overflow: hidden; border: 1px solid var(--border); border-radius: 14px; background: var(--surface); transition: transform .2s, border-color .2s, background .2s; }
.ad-card::after { position: absolute; right: -45px; bottom: -65px; width: 160px; height: 160px; border: 1px solid rgba(255, 255, 255, .04); border-radius: 50%; content: ""; }
.ad-card:hover { transform: translateY(-2px); border-color: #705253; background: var(--surface-soft); }
.ad-wide { background: linear-gradient(135deg, rgba(9, 98, 102, .13), var(--surface) 62%); }
.ad-badge { align-self: flex-start; padding: 5px 7px; border-radius: 5px; color: var(--muted); background: var(--surface-raised); font-size: .53rem; font-weight: 750; letter-spacing: .1em; }
.ad-wide .ad-badge { color: var(--green-bright); background: rgba(9, 98, 102, .13); }
.ad-content { position: relative; z-index: 1; display: grid; gap: 5px; }
.ad-content strong { font-size: .94rem; font-weight: 600; }
.ad-content small { max-width: 280px; color: var(--muted); font-size: .66rem; line-height: 1.45; }
.ad-arrow { position: absolute; right: 17px; top: 17px; color: #8f7778; font-size: .85rem; }

.site-footer { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; padding: 22px max(24px, calc((100vw - var(--max-width)) / 2)); border-top: 1px solid var(--border-soft); color: var(--muted); background: var(--surface); font-size: .62rem; }
.site-footer p { margin: 0; }
.platform-status { display: flex; align-items: center; justify-self: end; gap: 7px; }
.platform-status .status-dot { width: 5px; height: 5px; box-shadow: none; }

@keyframes pulse {
    0% { box-shadow: 0 0 0 0 rgba(115, 152, 153, .3); }
    70%, 100% { box-shadow: 0 0 0 6px rgba(115, 152, 153, 0); }
}

@media (max-width: 900px) {
    .site-header { grid-template-columns: 1fr auto; }
    .top-nav { display: none; }
    .intro { align-items: stretch; flex-direction: column; gap: 28px; padding-top: 50px; }
    .stats { align-self: stretch; }
    .stats article { flex: 1; }
    .watch-layout { grid-template-columns: 1fr; }
    .channel-panel { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
    .panel-heading, .channel-help { grid-column: 1 / -1; }
    .channel-button { margin: 0; }
}

@media (max-width: 620px) {
    .site-header { min-height: 64px; padding-inline: 14px; }
    .brand-symbol { width: 36px; height: 36px; }
    .brand small, .header-audience span:last-child { display: none; }
    main { width: min(calc(100% - 22px), var(--max-width)); }
    .intro { padding: 40px 0 25px; }
    .intro h1 { font-size: clamp(2.25rem, 12vw, 3.3rem); }
    .intro > div > p { font-size: .82rem; line-height: 1.5; }
    .stats article { min-width: 0; padding: 14px 12px; }
    .stat-icon { display: none; }
    .stats strong { font-size: 1.15rem; }
    .channel-panel { grid-template-columns: 1fr; }
    .panel-heading, .channel-help { grid-column: auto; }
    .channel-help { display: none; }
    .channel-viewers { margin-left: auto; }
    .player-header { min-height: 54px; padding-inline: 10px; }
    .live-tag { padding: 5px 7px; }
    .audio-tag { display: none; }
    .player-stage { aspect-ratio: 16 / 10; }
    .start-overlay { padding: 16px; }
    .play-orbit { width: 62px; height: 62px; }
    .play-orbit span { width: 38px; height: 38px; }
    .start-overlay h2 { margin-top: 13px; font-size: 1.25rem; }
    .start-overlay small { display: none; }
    .ads-section { padding: 50px 0 58px; }
    .ads-grid { grid-template-columns: 1fr; }
    .ad-card { min-height: 145px; }
    .site-footer { grid-template-columns: 1fr auto; padding-inline: 14px; }
    .site-footer p { display: none; }
}

/* Publicidad intersticial del reproductor */
.interrupt-ad { position: absolute; inset: 0; z-index: 12; display: grid; place-items: center; padding: 20px; background: rgba(8, 8, 8, .94); backdrop-filter: blur(9px); }
.interrupt-ad[hidden] { display: none; }
.interrupt-card { display: grid; width: min(92%, 520px); justify-items: center; gap: 10px; padding: 25px; border: 1px solid rgba(9, 98, 102, .3); border-radius: 18px; background: linear-gradient(145deg, #302021, #1b1011); box-shadow: 0 30px 80px rgba(0,0,0,.5); text-align: center; }
.interrupt-label { color: var(--green-bright); font-size: .55rem; font-weight: 800; letter-spacing: .15em; }
.interrupt-brand { display: grid; width: 100%; min-height: 70px; place-content: center; border: 1px dashed var(--border); border-radius: 11px; color: var(--text); font-size: 1.1rem; font-weight: 800; letter-spacing: .08em; }
.interrupt-brand span { color: var(--green-bright); font-size: .6rem; font-weight: 600; letter-spacing: .02em; }
.interrupt-card h2 { margin: 2px 0 0; font-size: clamp(1.15rem, 3vw, 1.55rem); letter-spacing: -.03em; }
.interrupt-card > p { margin: 0; max-width: 430px; color: var(--muted); font-size: .7rem; line-height: 1.5; }
.interrupt-card > small { color: var(--muted); font-size: .58rem; }
.interrupt-actions { display: flex; gap: 8px; }
.interrupt-progress { width: 100%; height: 3px; overflow: hidden; border-radius: 3px; background: #503839; }
.interrupt-progress i { display: block; width: 100%; height: 100%; background: var(--green); }
.served-ads-interrupt { width: 100%; }
.served-ads-interrupt .served-ad { min-height: 64px; max-height: 115px; }
.served-ads-interrupt img { max-height: 110px; object-fit: contain; }

@media (max-width: 620px) {
    .interrupt-ad { padding: 9px; }
    .interrupt-card { width: 100%; gap: 7px; padding: 15px; border-radius: 13px; }
    .interrupt-card > p { font-size: .62rem; }
    .interrupt-actions .primary-button, .interrupt-actions .ghost-button { min-height: 33px; padding: 7px 10px; font-size: .62rem; }
}

/* Identidad Artemisa: borgoña, rosa empolvado, petróleo y salvia */
body::before {
    position: fixed;
    inset: 0 0 auto;
    z-index: 100;
    height: 3px;
    background: linear-gradient(90deg,
        var(--artemisa-borgona) 0 25%,
        var(--artemisa-rosa) 25% 50%,
        var(--artemisa-petroleo) 50% 75%,
        var(--artemisa-salvia) 75% 100%);
    content: "";
}

.site-header {
    border-bottom-color: rgba(208, 185, 186, .12);
    box-shadow: 0 14px 40px rgba(10, 4, 5, .24);
}

.brand { transition: transform .2s ease, filter .2s ease; }
.brand:hover { transform: translateY(-1px); filter: brightness(1.08); }
.brand-symbol { box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18), 0 10px 28px rgba(109, 22, 21, .25); }
.brand strong { color: #fff7f7; }
.top-nav { border-color: rgba(115, 152, 153, .2); }
.top-nav a:hover, .top-nav a.active { color: #fff; background: linear-gradient(135deg, rgba(109, 22, 21, .38), rgba(9, 98, 102, .3)); }

.intro h1 { text-shadow: 0 16px 48px rgba(0, 0, 0, .25); }
.intro h1 span { color: var(--artemisa-rosa); }
.section-label { color: var(--artemisa-salvia); }
.section-label i { background: linear-gradient(90deg, var(--artemisa-borgona), var(--artemisa-salvia)); }

.stats,
.channel-panel,
.player-card,
.auth-card,
.admin-section,
.transfer-card,
.confirm-card,
.status-card {
    background: linear-gradient(145deg, rgba(48, 32, 33, .76), rgba(29, 17, 18, .94));
    box-shadow: 0 24px 70px rgba(8, 3, 4, .22);
}

.stats article:first-child { background: linear-gradient(135deg, rgba(9, 98, 102, .12), transparent 68%); }
.stats article:last-child { background: linear-gradient(135deg, rgba(109, 22, 21, .13), transparent 68%); }
.stat-icon { color: var(--artemisa-salvia); background: rgba(9, 98, 102, .16); }

.channel-button { position: relative; overflow: hidden; }
.channel-button::before { position: absolute; inset: 9px auto 9px 0; width: 3px; border-radius: 3px; background: transparent; content: ""; transition: background .2s; }
.channel-button.active::before { background: linear-gradient(var(--artemisa-salvia), var(--artemisa-petroleo)); }
.channel-button.active { border-color: rgba(115, 152, 153, .44); background: linear-gradient(110deg, rgba(9, 98, 102, .23), rgba(109, 22, 21, .08)); }
.channel-button.active .channel-logo { border-color: rgba(208, 185, 186, .22); background: linear-gradient(145deg, var(--artemisa-petroleo), var(--artemisa-borgona)); box-shadow: 0 8px 22px rgba(9, 98, 102, .2); }

.player-card { border-color: rgba(115, 152, 153, .24); box-shadow: 0 28px 80px rgba(6, 45, 47, .12), 0 18px 45px rgba(73, 10, 10, .14); }
.player-header { background: linear-gradient(90deg, rgba(109, 22, 21, .16), rgba(9, 98, 102, .13)); }
.live-tag { background: linear-gradient(135deg, #8b2725, var(--artemisa-borgona)); box-shadow: 0 7px 20px rgba(109, 22, 21, .28); }
.start-overlay { background: radial-gradient(circle at 50% 44%, rgba(9, 98, 102, .34), rgba(35, 18, 19, .95) 42%, #0c0708 78%); }
.play-orbit { border-color: rgba(115, 152, 153, .42); background: rgba(9, 98, 102, .12); box-shadow: 0 0 70px rgba(9, 98, 102, .19); }
.play-orbit::before { border-color: rgba(208, 185, 186, .22); }
.play-orbit span,
.start-overlay button,
.primary-button { background: linear-gradient(135deg, var(--artemisa-petroleo), #0b777b); box-shadow: 0 10px 28px rgba(9, 98, 102, .22); }
.start-overlay button:hover,
.primary-button:hover { background: linear-gradient(135deg, #0b777b, var(--artemisa-petroleo)); filter: brightness(1.08); }

.ad-free-banner { border-color: rgba(115, 152, 153, .3); background: linear-gradient(100deg, rgba(9, 98, 102, .22), rgba(109, 22, 21, .13), rgba(36, 23, 24, .9)); }
.ad-free-banner:hover { border-color: rgba(208, 185, 186, .42); transform: translateY(-1px); }
.ad-free-icon { color: var(--artemisa-rosa); background: linear-gradient(145deg, rgba(109, 22, 21, .55), rgba(9, 98, 102, .42)); }
.ad-free-active { border-color: rgba(115, 152, 153, .3); background: rgba(9, 98, 102, .12); }

input, textarea, select { border-color: rgba(208, 185, 186, .16); background: #1d1112; }
input:focus, textarea:focus, select:focus { border-color: var(--artemisa-salvia); box-shadow: 0 0 0 3px rgba(115, 152, 153, .13); }
.check-row { background: rgba(29, 17, 18, .82); }
.security-note { border-color: rgba(208, 185, 186, .22); background: rgba(109, 22, 21, .09); }
.security-note strong { color: var(--artemisa-rosa); }

.admin-stats article.highlight { border-color: rgba(115, 152, 153, .35); background: linear-gradient(135deg, rgba(9, 98, 102, .2), rgba(109, 22, 21, .12)); }
.admin-tabs { border-color: rgba(208, 185, 186, .14); background: rgba(36, 23, 24, .94); }
.admin-tabs a:hover { color: white; background: linear-gradient(135deg, rgba(109, 22, 21, .45), rgba(9, 98, 102, .34)); }
th { color: var(--artemisa-rosa); background: rgba(109, 22, 21, .2); }
.approve-button { color: #d7e8e8; background: rgba(9, 98, 102, .34); }
.approve-button:hover { background: rgba(9, 98, 102, .56); }
.reject-button { color: #f1dada; background: rgba(109, 22, 21, .38); }
.reject-button:hover { background: rgba(109, 22, 21, .62); }
.provider-icon { color: var(--artemisa-rosa); background: linear-gradient(145deg, rgba(109, 22, 21, .44), rgba(9, 98, 102, .3)); }

.interrupt-card { border-color: rgba(115, 152, 153, .42); background: linear-gradient(145deg, rgba(48, 32, 33, .98), rgba(20, 11, 12, .98)); box-shadow: 0 30px 90px rgba(0, 0, 0, .62), 0 0 50px rgba(9, 98, 102, .13); }
.interrupt-label { color: var(--artemisa-salvia); }
.interrupt-progress i { background: linear-gradient(90deg, var(--artemisa-borgona), var(--artemisa-rosa), var(--artemisa-petroleo), var(--artemisa-salvia)); }
.site-footer { border-top-color: rgba(208, 185, 186, .11); background: linear-gradient(90deg, rgba(109, 22, 21, .1), var(--surface), rgba(9, 98, 102, .1)); }

@media (max-width: 620px) {
    .site-header { background: rgba(30, 16, 17, .97); }
    .intro { padding-top: 34px; }
    .intro h1 { line-height: 1.02; }
    .channel-button { min-height: 66px; }
    .player-card { border-radius: 14px; }
    .player-stage { aspect-ratio: 16 / 10; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}

/* Cuenta, pagos, anuncios y administración */
.account-menu { display: flex; align-items: center; justify-self: end; gap: 8px; min-width: 0; }
.account-menu form { margin: 0; }
.account-email { max-width: 170px; overflow: hidden; color: var(--muted); font-size: .68rem; text-overflow: ellipsis; white-space: nowrap; }
.premium-chip, .count-chip, .bank-chip { display: inline-flex; align-items: center; padding: 5px 8px; border: 1px solid rgba(9, 98, 102, .28); border-radius: 999px; color: var(--green-bright); background: rgba(9, 98, 102, .09); font-size: .58rem; font-weight: 700; }
.primary-button, .ghost-button, .approve-button, .reject-button { display: inline-flex; align-items: center; justify-content: center; min-height: 38px; padding: 9px 14px; border: 1px solid transparent; border-radius: 9px; font-size: .72rem; font-weight: 680; cursor: pointer; transition: background .2s, border-color .2s, color .2s; }
.primary-button { color: white; background: var(--green); }
.primary-button:hover { background: #0b777b; }
.ghost-button { border-color: var(--border); color: var(--text-soft); background: var(--surface-raised); }
.ghost-button:hover { border-color: #4b4b4b; background: var(--surface-hover); }
.primary-button.small, .ghost-button.small { min-height: 31px; padding: 6px 10px; font-size: .63rem; }
.primary-button.full, .ghost-button.full { width: 100%; }
.approve-button { min-height: 30px; padding: 6px 9px; color: #b0ced0; background: rgba(9, 98, 102, .13); }
.approve-button:hover { background: rgba(9, 98, 102, .22); }
.reject-button { min-height: 30px; padding: 6px 9px; color: #D0B9BA; background: rgba(109, 22, 21, .1); }
.reject-button:hover { background: rgba(109, 22, 21, .18); }
.muted { color: var(--muted); font-size: .65rem; }

.flash-stack { position: fixed; top: 82px; right: 20px; z-index: 60; display: grid; width: min(390px, calc(100vw - 30px)); gap: 8px; }
.flash { padding: 12px 14px; border: 1px solid var(--border); border-radius: 10px; color: var(--text-soft); background: rgba(48, 32, 33, .96); box-shadow: 0 14px 40px rgba(0, 0, 0, .3); font-size: .75rem; transition: opacity .3s, transform .3s; }
.flash.success { border-color: rgba(9, 98, 102, .4); }
.flash.error { border-color: rgba(109, 22, 21, .45); }
.flash.info { border-color: rgba(115, 152, 153, .35); }
.flash.leaving { opacity: 0; transform: translateY(-8px); pointer-events: none; }

.ad-free-banner { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 14px; margin-bottom: 14px; padding: 14px 16px; border: 1px solid rgba(9, 98, 102, .25); border-radius: 13px; background: linear-gradient(100deg, rgba(9, 98, 102, .11), rgba(36, 23, 24, .72)); }
.ad-free-banner:hover { border-color: rgba(9, 98, 102, .45); }
.ad-free-icon { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 10px; color: var(--green-bright); background: rgba(9, 98, 102, .12); }
.ad-free-icon svg { width: 20px; height: 20px; }
.ad-free-banner > span:nth-child(2) { display: grid; gap: 3px; }
.ad-free-banner strong { font-size: .78rem; }
.ad-free-banner small { color: var(--muted); font-size: .64rem; }
.banner-action { color: var(--text-soft); font-size: .68rem; }
.banner-action b { margin-left: 5px; color: var(--green-bright); }
.ad-free-active { display: flex; align-items: center; gap: 8px; margin-bottom: 14px; padding: 11px 14px; border: 1px solid rgba(9, 98, 102, .2); border-radius: 10px; color: #b0ced0; background: rgba(9, 98, 102, .07); font-size: .68rem; }

.ad-top-zone { margin-bottom: 10px; }
.bottom-ad-zone { padding: 56px 0 78px; }
.sidebar-ad { margin-top: 5px; }
.served-ads { display: grid; gap: 10px; }
.served-ads-bottom { grid-template-columns: repeat(3, 1fr); }
.served-ad, .ad-placeholder { position: relative; display: grid; min-height: 96px; place-items: center; overflow: hidden; border: 1px dashed #3b3b3b; border-radius: 12px; color: var(--muted); background: rgba(255, 255, 255, .018); text-align: center; }
.served-ad img { display: block; width: 100%; max-height: 240px; object-fit: cover; }
.served-ad a { display: block; width: 100%; }
.served-label { position: absolute; top: 6px; right: 7px; z-index: 2; color: #606060; font-size: .48rem; letter-spacing: .1em; }
.external-ad-code { width: 100%; min-height: 90px; overflow: hidden; }
.ad-placeholder { grid-template-rows: auto auto auto; gap: 4px; padding: 17px; }
.ad-placeholder span { color: #606060; font-size: .5rem; letter-spacing: .12em; }
.ad-placeholder strong { color: var(--text-soft); font-size: .77rem; }
.ad-placeholder small { font-size: .59rem; }
.ad-placeholder-top { min-height: 82px; }
.ad-placeholder-sidebar { min-height: 110px; }

.auth-page { display: grid; width: 100%; min-height: calc(100vh - 150px); place-items: center; padding: 55px 20px 75px; }
.auth-card { width: min(100%, 430px); padding: 34px; border: 1px solid var(--border); border-radius: 18px; background: var(--surface); box-shadow: 0 30px 80px rgba(0, 0, 0, .23); text-align: center; }
.auth-logo { display: inline-flex; margin-bottom: 22px; }
.section-label.centered { justify-content: center; margin-bottom: 10px; }
.auth-card h1 { margin: 0; font-size: 1.65rem; letter-spacing: -.035em; }
.auth-card > p { margin: 10px auto 24px; color: var(--muted); font-size: .75rem; line-height: 1.55; }
.form-stack { display: grid; gap: 13px; text-align: left; }
label { display: grid; gap: 6px; color: var(--text-soft); font-size: .66rem; font-weight: 600; }
label > span { color: var(--muted); font-size: .58rem; font-weight: 450; }
input, textarea, select { width: 100%; min-height: 42px; padding: 10px 11px; border: 1px solid var(--border); border-radius: 9px; outline: none; color: var(--text); background: #1d1112; font: inherit; font-size: .75rem; transition: border-color .2s, box-shadow .2s; }
textarea { resize: vertical; line-height: 1.45; }
select { appearance: auto; }
input:focus, textarea:focus, select:focus { border-color: rgba(9, 98, 102, .65); box-shadow: 0 0 0 3px rgba(9, 98, 102, .08); }
.auth-switch { margin-bottom: 0 !important; font-size: .68rem !important; }
.auth-switch a { color: var(--green-bright); }

.narrow-page, .admin-page { width: min(calc(100% - 40px), var(--max-width)); min-height: calc(100vh - 150px); margin: 0 auto; padding: 58px 0 78px; }
.narrow-page { max-width: 1020px; }
.page-heading { margin-bottom: 28px; }
.page-heading h1 { margin: 0; font-size: clamp(2rem, 5vw, 3.4rem); letter-spacing: -.055em; }
.page-heading > p, .page-heading > span > p { margin: 12px 0 0; color: var(--muted); font-size: .78rem; }
.admin-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; }

.stepper { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0 0 18px; padding: 0; overflow: hidden; border: 1px solid var(--border); border-radius: 13px; background: var(--surface); list-style: none; }
.stepper li { position: relative; display: flex; align-items: center; gap: 10px; padding: 14px; color: var(--muted); }
.stepper li + li { border-left: 1px solid var(--border); }
.stepper b { display: grid; width: 26px; height: 26px; place-items: center; border: 1px solid var(--border); border-radius: 50%; font-size: .63rem; }
.stepper span { display: grid; gap: 2px; }
.stepper strong { color: var(--text-soft); font-size: .68rem; }
.stepper small { font-size: .57rem; }
.stepper .done b { border-color: var(--green); color: white; background: var(--green); }
.stepper .active { background: rgba(9, 98, 102, .05); }
.stepper .active b { border-color: var(--green); color: var(--green-bright); }

.status-card { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 18px; padding: 25px; border: 1px solid var(--border); border-radius: 16px; background: var(--surface); }
.status-card.approved { border-color: rgba(9, 98, 102, .28); background: linear-gradient(110deg, rgba(9, 98, 102, .1), var(--surface) 54%); }
.status-card.pending { border-color: rgba(208, 185, 186, .23); }
.large-status-icon { display: grid; width: 52px; height: 52px; place-items: center; border-radius: 14px; color: var(--green-bright); background: rgba(9, 98, 102, .1); }
.status-card.pending .large-status-icon { color: #D0B9BA; background: rgba(208, 185, 186, .09); }
.large-status-icon svg { width: 27px; height: 27px; }
.status-card > span:nth-child(2) { display: grid; gap: 5px; }
.status-card small { color: var(--green-bright); font-size: .55rem; font-weight: 750; letter-spacing: .11em; }
.status-card.pending small { color: #D0B9BA; }
.status-card h2 { margin: 0; font-size: 1.25rem; letter-spacing: -.025em; }
.status-card p { margin: 0; color: var(--muted); font-size: .7rem; line-height: 1.5; }
.status-pill { display: inline-flex; align-items: center; justify-content: center; padding: 5px 8px; border-radius: 999px; font-size: .57rem; font-weight: 700; white-space: nowrap; }
.status-pill.pending { color: #D0B9BA; background: rgba(208, 185, 186, .1); }
.status-pill.approved { color: #9fc0c1; background: rgba(9, 98, 102, .12); }
.status-pill.rejected { color: #D0B9BA; background: rgba(109, 22, 21, .1); }
.inline-alert { margin-bottom: 12px; padding: 11px 13px; border: 1px solid var(--border); border-radius: 9px; font-size: .68rem; }
.inline-alert.error { border-color: rgba(109, 22, 21, .3); color: #D0B9BA; background: rgba(109, 22, 21, .06); }

.payment-layout { display: grid; grid-template-columns: 1.05fr .95fr; gap: 12px; }
.transfer-card, .confirm-card { padding: 23px; border: 1px solid var(--border); border-radius: 15px; background: var(--surface); }
.card-title { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.card-title > span:first-child { display: grid; gap: 3px; }
.card-title small { color: var(--green-bright); font-size: .55rem; font-weight: 750; letter-spacing: .11em; }
.card-title h2 { margin: 0; font-size: 1.15rem; letter-spacing: -.025em; }
.warning-copy { margin: 16px 0; padding: 10px 11px; border-left: 2px solid #D0B9BA; color: #bca5a6; background: rgba(208, 185, 186, .05); font-size: .65rem; line-height: 1.45; }
.bank-details { margin: 0; border-block: 1px solid var(--border); }
.bank-details > div { display: grid; grid-template-columns: 95px 1fr; align-items: center; min-height: 49px; border-bottom: 1px solid var(--border-soft); }
.bank-details > div:last-child { border-bottom: 0; }
.bank-details dt { color: var(--muted); font-size: .63rem; }
.bank-details dd { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 0; font-size: .72rem; font-weight: 600; }
.bank-details dd.amount { color: var(--green-bright); font-size: 1.1rem; }
.bank-details code { overflow: hidden; color: var(--text); font-size: .72rem; text-overflow: ellipsis; }
.bank-details button { padding: 5px 7px; border: 1px solid var(--border); border-radius: 6px; color: var(--muted); background: var(--surface-raised); font-size: .55rem; cursor: pointer; }
.payment-note { margin: 14px 0 0; color: var(--muted); font-size: .62rem; line-height: 1.5; }
.confirm-card { display: grid; align-content: start; gap: 13px; }
.confirm-card > p { margin: 0; color: var(--muted); font-size: .67rem; }
.check-row { display: grid; grid-template-columns: auto 1fr; align-items: start; gap: 8px; padding: 10px; border: 1px solid var(--border); border-radius: 8px; background: #211415; cursor: pointer; }
.check-row input { width: 15px; min-height: 15px; margin: 1px 0 0; accent-color: var(--green); }
.check-row span { color: var(--text-soft); font-size: .61rem; line-height: 1.45; }
.form-help { color: var(--muted); font-size: .56rem; text-align: center; }

.admin-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; margin-bottom: 14px; }
.admin-stats article { display: grid; gap: 4px; padding: 16px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface); }
.admin-stats article.highlight { border-color: rgba(9, 98, 102, .28); background: rgba(9, 98, 102, .06); }
.admin-stats small, .admin-stats span { color: var(--muted); font-size: .58rem; }
.admin-stats strong { font-size: 1.5rem; letter-spacing: -.035em; }
.admin-tabs { position: sticky; top: 82px; z-index: 10; display: flex; gap: 4px; margin-bottom: 12px; padding: 5px; overflow-x: auto; border: 1px solid var(--border); border-radius: 11px; background: rgba(36, 23, 24, .92); backdrop-filter: blur(12px); }
.admin-tabs a { padding: 7px 11px; border-radius: 7px; color: var(--muted); font-size: .64rem; white-space: nowrap; }
.admin-tabs a:hover { color: var(--text); background: var(--surface-raised); }
.admin-section { margin-bottom: 12px; padding: 19px; scroll-margin-top: 140px; border: 1px solid var(--border); border-radius: 14px; background: var(--surface); }
.admin-section.compact { padding-bottom: 11px; }
.admin-section-title { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 15px; }
.admin-section-title > span:first-child { display: grid; gap: 3px; }
.admin-section-title small { color: var(--green-bright); font-size: .53rem; font-weight: 750; letter-spacing: .11em; }
.admin-section-title h2 { margin: 0; font-size: 1.08rem; letter-spacing: -.02em; }
.table-wrap { overflow-x: auto; border: 1px solid var(--border); border-radius: 10px; }
table { width: 100%; border-collapse: collapse; font-size: .66rem; }
th { padding: 10px; color: var(--muted); background: #1d1112; font-size: .55rem; font-weight: 650; letter-spacing: .05em; text-align: left; text-transform: uppercase; }
td { padding: 11px 10px; border-top: 1px solid var(--border-soft); color: var(--text-soft); vertical-align: middle; }
td > strong, td > small { display: block; }
td > small { max-width: 260px; margin-top: 3px; overflow: hidden; color: var(--muted); font-size: .55rem; text-overflow: ellipsis; white-space: nowrap; }
.row-actions { display: flex; align-items: center; gap: 5px; }
.row-actions form { margin: 0; }
.empty-state { padding: 30px 15px; border: 1px dashed var(--border); border-radius: 9px; color: var(--muted); font-size: .68rem; text-align: center; }

.settings-form { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.settings-column { display: grid; align-content: start; gap: 11px; }
.settings-column h3, .ad-create-form h3 { margin: 0; font-size: .82rem; }
.settings-column > p { margin: -4px 0 2px; color: var(--muted); font-size: .62rem; line-height: 1.45; }
.settings-column code { color: var(--text-soft); }
.code-field { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: .65rem; }
.security-note { display: grid; gap: 4px; padding: 11px; border: 1px solid rgba(208, 185, 186, .2); border-radius: 8px; background: rgba(208, 185, 186, .045); }
.security-note strong { color: #D0B9BA; font-size: .65rem; }
.security-note span { color: var(--muted); font-size: .58rem; line-height: 1.45; }
.form-footer { grid-column: 1 / -1; display: flex; justify-content: flex-end; padding-top: 14px; border-top: 1px solid var(--border); }

.ad-admin-layout { display: grid; grid-template-columns: 380px 1fr; gap: 15px; }
.ad-create-form { display: grid; align-content: start; gap: 11px; padding: 15px; border: 1px solid var(--border); border-radius: 11px; background: #211415; }
.two-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.ad-list { display: grid; align-content: start; gap: 7px; }
.admin-ad-card { display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: 10px; padding: 10px; border: 1px solid var(--border); border-radius: 10px; background: #211415; }
.provider-icon { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 8px; color: var(--green-bright); background: rgba(9, 98, 102, .09); font-size: .72rem; font-weight: 800; }
.admin-ad-card > span:nth-child(2) { display: grid; gap: 3px; }
.admin-ad-card strong { font-size: .68rem; }
.admin-ad-card small { color: var(--muted); font-size: .56rem; }
.notification-list { display: grid; }
.notification-list article { display: flex; align-items: flex-start; gap: 10px; padding: 10px 3px; border-top: 1px solid var(--border-soft); }
.notification-list article:first-child { border-top: 0; }
.notification-list .status-dot { width: 5px; height: 5px; margin-top: 5px; box-shadow: none; }
.notification-list span { display: grid; gap: 3px; }
.notification-list strong { font-size: .65rem; }
.notification-list small { color: var(--muted); font-size: .57rem; }

@media (max-width: 980px) {
    .account-email { display: none; }
    .admin-stats { grid-template-columns: repeat(2, 1fr); }
    .ad-admin-layout { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
    .premium-chip { display: none; }
    .payment-layout, .settings-form { grid-template-columns: 1fr; }
    .form-footer { grid-column: auto; }
    .served-ads-bottom { grid-template-columns: 1fr; }
    .status-card { grid-template-columns: auto 1fr; }
    .status-card > a, .status-card > .status-pill { grid-column: 1 / -1; justify-self: start; }
}

@media (max-width: 620px) {
    .account-menu .primary-button { display: none; }
    .account-menu { gap: 5px; }
    .flash-stack { top: 72px; right: 10px; }
    .ad-free-banner { grid-template-columns: auto 1fr; }
    .banner-action { display: none; }
    .ad-free-banner small { line-height: 1.4; }
    .narrow-page, .admin-page { width: min(calc(100% - 22px), var(--max-width)); padding: 38px 0 55px; }
    .auth-card { padding: 25px 18px; }
    .stepper { grid-template-columns: 1fr; }
    .stepper li + li { border-top: 1px solid var(--border); border-left: 0; }
    .status-card { padding: 18px; }
    .large-status-icon { width: 43px; height: 43px; }
    .status-card h2 { font-size: 1.05rem; }
    .transfer-card, .confirm-card { padding: 18px 14px; }
    .bank-details > div { grid-template-columns: 75px 1fr; }
    .admin-heading { align-items: flex-start; flex-direction: column; }
    .admin-stats { grid-template-columns: 1fr 1fr; }
    .admin-section { padding: 13px; }
    .admin-section-title { align-items: flex-start; flex-direction: column; }
    .two-fields { grid-template-columns: 1fr; }
    .admin-ad-card { grid-template-columns: auto 1fr auto; }
    .admin-ad-card .row-actions { grid-column: 1 / -1; }
}

/* ============================================================
   BROADCAST SPORTS V2 · 2026-09-01
   Rediseño inspirado en gráfica televisiva deportiva moderna.
   Mantiene la marca DEPORTES y toda la estructura funcional.
   ============================================================ */
:root{
  --broadcast-red:#d71920;
  --broadcast-red-dark:#a80f15;
  --broadcast-black:#08090b;
  --broadcast-panel:#111318;
  --broadcast-panel-2:#171a20;
  --broadcast-line:#2b2f38;
  --broadcast-white:#f7f7f7;
  --broadcast-muted:#9da3ae;
}
body.sports-broadcast-theme{background:radial-gradient(circle at 72% 0%,rgba(215,25,32,.14),transparent 28%),linear-gradient(180deg,#0a0b0e 0,#07080a 100%);color:var(--broadcast-white);font-family:"Arial Narrow","Roboto Condensed","Helvetica Neue",Arial,sans-serif;letter-spacing:.01em}
body.sports-broadcast-theme:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.12;background-image:linear-gradient(120deg,transparent 0 48%,rgba(255,255,255,.045) 48% 49%,transparent 49% 100%);background-size:74px 74px;z-index:-1}
.broadcast-topbar{height:28px;background:var(--broadcast-red);display:flex;align-items:center;gap:18px;padding:0 max(18px,calc((100vw - 1440px)/2));font-size:11px;font-weight:900;letter-spacing:.12em;color:white;white-space:nowrap;overflow:hidden}.broadcast-topbar>span:first-child{font-style:italic;font-size:13px}.topbar-live{display:inline-flex;align-items:center;gap:6px}.topbar-live i{width:7px;height:7px;background:#fff;border-radius:50%;box-shadow:0 0 0 4px rgba(255,255,255,.15)}.topbar-copy{opacity:.82;font-weight:700}
.broadcast-header{min-height:72px;background:rgba(8,9,11,.96);border-bottom:1px solid rgba(255,255,255,.09);backdrop-filter:blur(16px);box-shadow:0 8px 30px rgba(0,0,0,.24)}.broadcast-header .brand{gap:12px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--broadcast-red);color:#fff;font-size:28px;font-weight:1000;font-style:italic;transform:skew(-9deg);box-shadow:8px 0 0 rgba(215,25,32,.2)}.brand-mark.small{width:34px;height:34px;font-size:22px}.broadcast-header .brand-copy strong{font-size:19px;font-weight:1000;font-style:italic;letter-spacing:-.03em}.broadcast-header .brand-copy small{font-size:9px;letter-spacing:.2em;color:#aeb3bc}.broadcast-header .top-nav a{font-size:11px;font-weight:1000;letter-spacing:.11em;border-radius:0;border-bottom:3px solid transparent}.broadcast-header .top-nav a:hover,.broadcast-header .top-nav a.active{color:#fff;background:rgba(255,255,255,.04);border-bottom-color:var(--broadcast-red)}
.primary-button,.broadcast-header .primary-button{background:var(--broadcast-red)!important;color:#fff!important;border-color:var(--broadcast-red)!important;border-radius:3px!important;font-weight:900!important;letter-spacing:.04em!important;box-shadow:none!important}.primary-button:hover{background:#ef2028!important;transform:translateY(-1px)}.ghost-button{border-radius:3px!important;border-color:#3c414b!important;background:#15181e!important;color:#f6f6f7!important;font-weight:800!important}.premium-chip{background:rgba(215,25,32,.13)!important;color:#ff7479!important;border:1px solid rgba(215,25,32,.35)!important;border-radius:2px!important;font-size:10px!important;font-weight:900!important;letter-spacing:.05em}
.broadcast-home{max-width:1440px;margin:0 auto;padding:34px 28px 70px}.sports-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:42px;align-items:end;padding:38px 0 34px;border-bottom:1px solid var(--broadcast-line);position:relative}.sports-hero:after{content:"";position:absolute;bottom:-1px;left:0;width:180px;height:4px;background:var(--broadcast-red)}.broadcast-kicker{display:inline-flex;align-items:center;gap:10px;color:#d5d7dc;font-size:11px;letter-spacing:.16em;font-weight:1000}.broadcast-kicker i{display:block;width:34px;height:4px;background:var(--broadcast-red);transform:skew(-18deg)}.sports-hero h1{margin:14px 0 14px;font-size:clamp(46px,6vw,88px);line-height:.87;letter-spacing:-.055em;text-transform:uppercase;font-style:italic;font-weight:1000;max-width:900px}.sports-hero h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.72)}.sports-hero p{max-width:680px;color:#acb1ba;font-size:16px;line-height:1.6}.hero-badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.hero-badges span{border:1px solid #2b2f38;background:#101217;padding:8px 11px;border-radius:2px;font-size:10px;font-weight:900;letter-spacing:.08em;color:#c8cbd1}.scoreboard-stats{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--broadcast-red);padding:2px;transform:skew(-3deg)}.scoreboard-stats article{background:#111318;padding:25px 22px;min-height:128px;display:flex;flex-direction:column;justify-content:center;transform:skew(3deg)}.scoreboard-stats small{color:#8e949f;font-size:9px;font-weight:900;letter-spacing:.15em}.scoreboard-stats strong{font-size:39px;line-height:1;margin:9px 0 5px;font-weight:1000}.scoreboard-stats span{font-size:11px;color:#c4c7ce;text-transform:uppercase;letter-spacing:.06em}
.broadcast-premium{margin:22px 0!important;background:linear-gradient(90deg,#13151a,#0e1014)!important;border:1px solid #30343d!important;border-left:0!important;border-radius:0!important;min-height:82px!important;position:relative;overflow:hidden}.broadcast-premium .premium-stripe{width:7px!important;align-self:stretch!important;background:var(--broadcast-red)!important}.broadcast-premium .ad-free-icon{background:transparent!important;color:#ff4249!important;font-size:24px!important}.broadcast-premium strong{font-size:14px!important;text-transform:uppercase;letter-spacing:.04em}.broadcast-premium .banner-action{color:white!important;background:var(--broadcast-red);padding:10px 15px;font-size:10px;font-weight:1000;letter-spacing:.08em}.broadcast-approved{border-radius:2px!important;background:#111714!important;border:1px solid #27432f!important;color:#9de1ae!important;font-weight:900!important;letter-spacing:.07em;font-size:11px!important;margin:20px 0!important}
.broadcast-grid{grid-template-columns:330px minmax(0,1fr)!important;gap:16px!important;align-items:start}.broadcast-channels,.broadcast-player{border-radius:2px!important;border:1px solid #282c34!important;background:#101217!important;box-shadow:0 20px 55px rgba(0,0,0,.24)!important}.broadcast-channels{overflow:hidden}.broadcast-channels .panel-heading{background:#171a20!important;border-bottom:3px solid var(--broadcast-red)!important;padding:16px 18px!important}.broadcast-channels .panel-heading span{font-size:11px!important;letter-spacing:.15em!important;font-weight:1000!important}.broadcast-channels .channel-button{border-radius:0!important;border:0!important;border-bottom:1px solid #242831!important;background:#101217!important;padding:15px 14px!important}.broadcast-channels .channel-button:hover{background:#181b21!important}.broadcast-channels .channel-button.active{background:linear-gradient(90deg,rgba(215,25,32,.22),#16191f 38%)!important;box-shadow:inset 4px 0 0 var(--broadcast-red)!important}.broadcast-channels .channel-logo{background:#20242c!important;border:1px solid #363b45!important;border-radius:2px!important;color:#fff!important;font-size:14px!important;font-weight:1000!important}.broadcast-channels .channel-button.active .channel-logo{background:var(--broadcast-red)!important;border-color:var(--broadcast-red)!important}.channel-copy strong{font-size:13px!important;text-transform:uppercase;letter-spacing:.02em}.channel-copy small{font-size:9px!important;letter-spacing:.1em!important}.channel-viewers b{font-size:13px!important}.channel-viewers small{font-size:8px!important;text-transform:uppercase}.channel-help{border-radius:0!important;background:#0d0f13!important;border:0!important;padding:15px 18px!important}.channel-help strong{display:block;font-size:9px;letter-spacing:.14em;color:#e55459;margin-bottom:5px}.channel-help p{margin:0!important;color:#777e89!important;font-size:11px!important}
.broadcast-player .player-header{min-height:70px!important;background:#15181e!important;border-bottom:1px solid #2b2f38!important;border-radius:0!important}.live-tag{background:var(--broadcast-red)!important;color:white!important;border-radius:2px!important;font-weight:1000!important;letter-spacing:.1em!important}.live-tag i{background:white!important}.now-playing strong{font-size:16px!important;text-transform:uppercase;font-weight:1000!important}.now-playing small{font-size:10px!important;color:#9298a3!important}.audio-tag{border-radius:2px!important;background:#20242b!important;border:1px solid #343944!important;font-size:9px!important;letter-spacing:.12em!important}.icon-button{border-radius:2px!important;background:#20242b!important;border:1px solid #343944!important}.player-stage{aspect-ratio:16/9!important;background:#020203!important}.player-stage:before{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 80px rgba(0,0,0,.5);z-index:1}.start-overlay{background:radial-gradient(circle at center,rgba(26,28,34,.86),rgba(4,5,7,.98))!important}.start-overlay .on-air{position:absolute;top:18px;left:18px;background:var(--broadcast-red);padding:6px 9px;border-radius:2px;color:#fff;font-size:9px;font-weight:1000;letter-spacing:.14em}.start-overlay h2{text-transform:uppercase;font-style:italic;font-size:clamp(25px,4vw,45px)!important;font-weight:1000!important}.start-overlay button{border-radius:2px!important;background:var(--broadcast-red)!important;font-size:11px!important;font-weight:1000!important;letter-spacing:.09em!important}.play-orbit span{background:var(--broadcast-red)!important;box-shadow:0 0 0 12px rgba(215,25,32,.12),0 0 0 24px rgba(215,25,32,.05)!important}.player-bottom{border-radius:0!important;background:#0e1014!important;border-top:1px solid #292d35!important;font-size:9px!important;letter-spacing:.1em!important;font-weight:900!important}
.interrupt-ad{position:absolute!important;inset:0!important;z-index:30!important;background:rgba(3,4,6,.94)!important;backdrop-filter:blur(9px)!important;display:grid!important;place-items:center!important;padding:20px!important}.interrupt-ad[hidden]{display:none!important}.broadcast-interrupt{position:relative!important;width:min(680px,94%)!important;border-radius:2px!important;background:linear-gradient(145deg,#181b21,#0e1014)!important;border:1px solid #343944!important;border-top:5px solid var(--broadcast-red)!important;padding:26px!important;box-shadow:0 30px 90px rgba(0,0,0,.62)!important;text-align:left!important}.interrupt-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.interrupt-label{background:var(--broadcast-red)!important;border-radius:2px!important;color:#fff!important;font-size:9px!important;font-weight:1000!important;letter-spacing:.15em!important;padding:6px 8px!important}.mute-state{font-size:10px;font-weight:900;letter-spacing:.08em;color:#ff7c80;text-transform:uppercase}.broadcast-interrupt h2{margin:18px 0 8px!important;font-size:28px!important;line-height:1!important;text-transform:uppercase;font-style:italic;font-weight:1000!important}.broadcast-interrupt p{color:#b4b9c2!important;line-height:1.55!important;font-size:13px!important}.interrupt-brand{min-height:100px!important;background:linear-gradient(120deg,#d71920,#8d0e13)!important;border:0!important;border-radius:2px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important}.interrupt-brand b{font-size:32px;font-style:italic;letter-spacing:-.05em}.interrupt-brand span{font-size:9px!important;letter-spacing:.18em!important}.interrupt-count-row{display:flex;align-items:end;justify-content:space-between;margin-top:18px;font-size:10px;color:#aeb3bd;text-transform:uppercase;letter-spacing:.08em}.interrupt-count-row b{font-size:22px;color:#fff}.interrupt-progress{height:5px!important;border-radius:0!important;background:#30343c!important;overflow:hidden!important;margin:8px 0 17px!important}.interrupt-progress i{display:block;height:100%;background:var(--broadcast-red)!important}.interrupt-actions{display:flex!important;gap:9px!important;flex-wrap:wrap!important}.interrupt-actions a{font-size:10px!important}.interrupt-skip{position:absolute;right:14px;top:12px;width:36px;height:36px;border:1px solid #414650;background:#20242b;color:#777d87;border-radius:2px;font-size:25px;line-height:30px;font-weight:300;cursor:not-allowed;opacity:.35;transition:.2s;z-index:5}.interrupt-ad.skippable .interrupt-skip{background:var(--broadcast-red);border-color:var(--broadcast-red);color:#fff;cursor:pointer;opacity:1;box-shadow:0 0 0 5px rgba(215,25,32,.12)}.interrupt-ad.skippable .interrupt-skip:hover{transform:scale(1.06);background:#ef2028}
.ad-top-zone,.bottom-ad-zone{border-radius:2px!important}.served-ad,.ad-placeholder{border-radius:2px!important;background:#12151a!important;border-color:#2d3139!important}.served-label{background:var(--broadcast-red)!important;border-radius:0 0 2px 0!important}.ads-title small{color:#d85c61!important}.ads-title strong{text-transform:uppercase;font-style:italic}
.broadcast-footer{background:#08090b!important;border-top:3px solid var(--broadcast-red)!important}.broadcast-footer .footer-brand{gap:12px!important}.broadcast-footer strong{font-style:italic;letter-spacing:-.03em}.broadcast-footer small{letter-spacing:.13em!important}.status-dot{background:#36d06c!important;box-shadow:0 0 0 4px rgba(54,208,108,.12)!important}
/* formularios, activación y administración: misma identidad visual sin cambiar flujo */
.auth-card,.transfer-card,.confirm-card,.status-card,.admin-section,.admin-stats article{border-radius:2px!important;background:#111318!important;border-color:#2a2f37!important;box-shadow:0 18px 50px rgba(0,0,0,.2)!important}.auth-card h1,.page-heading h1,.admin-section-title h2,.card-title h2{text-transform:uppercase;font-style:italic;font-weight:1000!important;letter-spacing:-.025em!important}.section-label{color:#d85a60!important;font-weight:1000!important;letter-spacing:.14em!important}.section-label i{background:var(--broadcast-red)!important}.form-stack input,.settings-form input,.settings-form select,.settings-form textarea,.confirm-card input,.confirm-card textarea{border-radius:2px!important;background:#0c0e12!important;border-color:#343944!important}.bank-details div{border-radius:2px!important;background:#0d0f13!important;border-color:#2b3038!important}.bank-details code{color:#fff!important}.bank-details button{border-radius:2px!important;background:#22262e!important}.status-pill,.count-chip,.bank-chip{border-radius:2px!important}.admin-tabs a{border-radius:2px!important}.admin-tabs a:hover{border-color:var(--broadcast-red)!important;color:#fff!important}.admin-stats article.highlight{border-top:3px solid var(--broadcast-red)!important}.large-status-icon{border-radius:2px!important}
@media(max-width:980px){.sports-hero{grid-template-columns:1fr}.scoreboard-stats{max-width:560px}.broadcast-grid{grid-template-columns:1fr!important}.broadcast-channels{order:2}.broadcast-player{order:1}}
@media(max-width:720px){.broadcast-topbar{padding:0 14px}.topbar-copy{display:none}.broadcast-header{padding:0 14px!important}.broadcast-header .brand-copy small,.account-email,.broadcast-header .top-nav{display:none!important}.broadcast-home{padding:20px 12px 48px}.sports-hero{padding:22px 2px 25px;gap:25px}.sports-hero h1{font-size:43px}.sports-hero p{font-size:14px}.scoreboard-stats article{padding:18px 14px;min-height:105px}.scoreboard-stats strong{font-size:28px}.broadcast-premium{padding-right:8px!important}.broadcast-premium .banner-action{display:none}.broadcast-grid{gap:10px!important}.broadcast-player .player-header{padding:10px 12px!important}.now-playing strong{font-size:13px!important}.player-stage{aspect-ratio:16/10!important}.broadcast-interrupt{padding:20px 16px!important;width:100%!important}.broadcast-interrupt h2{font-size:23px!important}.interrupt-actions a{flex:1;text-align:center}.interrupt-skip{right:9px;top:8px}.broadcast-footer{padding:24px 16px!important;gap:18px!important}.broadcast-footer p{font-size:10px!important}.account-menu{gap:6px!important}.account-menu .small{padding:8px 9px!important;font-size:9px!important}.premium-chip{display:none!important}}

/* ============================================================
   V3 · SUPERUSUARIO + TELEGRAM
   ============================================================ */
.telegram-section{border-top:3px solid #2aabee!important}.telegram-settings{display:grid;gap:15px}.telegram-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.telegram-options{display:flex;gap:18px;flex-wrap:wrap;padding:12px;border:1px solid var(--border);background:#0c0e12}.toggle-line{display:flex!important;align-items:center;gap:9px!important;color:var(--text-soft);font-size:.65rem}.toggle-line input{width:16px!important;height:16px!important;margin:0}.toggle-line.danger{color:#ef777c}.telegram-events{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.telegram-events strong{width:100%;font-size:.65rem}.telegram-events span{padding:7px 9px;border:1px solid #2d333d;background:#101319;font-size:.58rem;color:#b8bec8}.telegram-test{display:flex;align-items:center;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.telegram-test small{color:var(--muted);font-size:.58rem}
@media(max-width:760px){.telegram-grid{grid-template-columns:1fr}.telegram-test{align-items:flex-start;flex-direction:column}}

/* ================================================================
   DEPORTES DJANGO V5 · TEMA ADAPTATIVO + RESPONSIVE TOTAL
   ================================================================ */
:root,
html[data-resolved-theme="dark"] {
    --page: #090b0f;
    --header: rgba(10, 12, 16, .96);
    --surface: #11141a;
    --surface-raised: #181c23;
    --surface-soft: #151920;
    --surface-hover: #20252e;
    --border: #2b303a;
    --border-soft: rgba(255,255,255,.075);
    --text: #f6f7f9;
    --text-soft: #d8dce2;
    --muted: #8f97a4;
    --green: #0a8e72;
    --green-bright: #6fd8bd;
    --red: #d71920;
    --broadcast-red: #d71920;
    --broadcast-line: #2a2f38;
    --app-shadow: 0 18px 55px rgba(0,0,0,.25);
    --field-bg: #0c0f14;
    --card-bg: #11141a;
    --header-bg: rgba(10,12,16,.96);
    --footer-bg: #090b0f;
    --glass-bg: rgba(17,20,26,.94);
    --telegram-blue: #2aabee;
}

html[data-resolved-theme="light"] {
    --page: #f3f5f8;
    --header: rgba(255,255,255,.96);
    --surface: #ffffff;
    --surface-raised: #f2f4f7;
    --surface-soft: #eef1f4;
    --surface-hover: #e8ebef;
    --border: #d7dce3;
    --border-soft: rgba(17,24,39,.085);
    --text: #13161b;
    --text-soft: #303640;
    --muted: #6d7580;
    --green: #087762;
    --green-bright: #0b806b;
    --red: #cc171d;
    --broadcast-red: #d71920;
    --broadcast-line: #d9dee5;
    --app-shadow: 0 16px 42px rgba(26,35,48,.09);
    --field-bg: #ffffff;
    --card-bg: #ffffff;
    --header-bg: rgba(255,255,255,.96);
    --footer-bg: #ffffff;
    --glass-bg: rgba(255,255,255,.94);
    --telegram-blue: #168dcc;
}

html { background: var(--page); }
body {
    color: var(--text);
    background:
        radial-gradient(ellipse 800px 440px at 88% 40px, color-mix(in srgb, var(--broadcast-red) 8%, transparent), transparent 70%),
        radial-gradient(ellipse 700px 420px at 5% 300px, color-mix(in srgb, var(--green) 7%, transparent), transparent 72%),
        var(--page);
    transition: background-color .22s ease, color .22s ease;
}

body::before { background: var(--broadcast-red); height: 2px; }

.broadcast-topbar {
    justify-content: flex-start;
    background: var(--broadcast-red) !important;
    color: #fff !important;
}
.device-label { margin-left: auto; opacity: .78; font-size: 9px; letter-spacing: .09em; }

.site-header,
.broadcast-header {
    background: var(--header-bg) !important;
    border-bottom-color: var(--border-soft) !important;
    box-shadow: 0 8px 28px color-mix(in srgb, var(--text) 7%, transparent) !important;
}
.broadcast-header .brand-copy strong { color: var(--text) !important; }
.broadcast-header .brand-copy small { color: var(--muted) !important; }
.broadcast-header .top-nav { border-color: var(--border) !important; background: var(--surface-soft) !important; }
.broadcast-header .top-nav a { color: var(--muted) !important; }
.broadcast-header .top-nav a:hover,
.broadcast-header .top-nav a.active { color: var(--text) !important; background: var(--surface-raised) !important; }

/* Selector de apariencia */
.theme-control { position: relative; flex: 0 0 auto; }
.theme-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 32px;
    padding: 6px 9px;
    border: 1px solid var(--border);
    border-radius: 7px;
    color: var(--text-soft);
    background: var(--surface-raised);
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .08em;
    cursor: pointer;
}
.theme-button:hover { background: var(--surface-hover); }
.theme-icon { font-size: 14px; line-height: 1; }
.theme-menu {
    position: absolute;
    top: calc(100% + 9px);
    right: 0;
    z-index: 80;
    width: min(280px, calc(100vw - 24px));
    padding: 6px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--glass-bg);
    box-shadow: 0 20px 60px rgba(0,0,0,.22);
    backdrop-filter: blur(18px);
}
.theme-menu[hidden] { display: none !important; }
.theme-menu button {
    display: grid;
    grid-template-columns: 30px 1fr;
    grid-template-rows: auto auto;
    align-items: center;
    width: 100%;
    padding: 10px;
    border: 0;
    border-radius: 8px;
    text-align: left;
    color: var(--text);
    background: transparent;
    cursor: pointer;
}
.theme-menu button:hover,
.theme-menu button.active { background: var(--surface-raised); }
.theme-menu button > span { grid-row: 1 / 3; font-size: 18px; text-align: center; }
.theme-menu button b { font-size: 11px; }
.theme-menu button small { color: var(--muted); font-size: 9px; font-weight: 500; }
.theme-menu button.active b { color: var(--broadcast-red); }

/* Superficies neutrales compatibles con ambos temas */
.auth-card,
.transfer-card,
.confirm-card,
.status-card,
.admin-section,
.admin-stats article,
.channel-panel,
.player-card,
.stats,
.ad-create-form,
.admin-ad-card,
.check-row,
.telegram-options,
.ad-placeholder,
.served-ad {
    color: var(--text);
    background: var(--card-bg) !important;
    border-color: var(--border) !important;
    box-shadow: var(--app-shadow) !important;
}

.auth-card h1,
.page-heading h1,
.admin-section-title h2,
.card-title h2,
.settings-column h3,
.ad-create-form h3 { color: var(--text) !important; }

input,
textarea,
select,
.form-stack input,
.settings-form input,
.settings-form select,
.settings-form textarea,
.confirm-card input,
.confirm-card textarea,
.telegram-settings input,
.telegram-settings textarea {
    color: var(--text) !important;
    background: var(--field-bg) !important;
    border-color: var(--border) !important;
}
input::placeholder, textarea::placeholder { color: color-mix(in srgb, var(--muted) 70%, transparent); }
input:focus, textarea:focus, select:focus { border-color: var(--broadcast-red) !important; box-shadow: 0 0 0 3px color-mix(in srgb, var(--broadcast-red) 13%, transparent) !important; }

.ghost-button { color: var(--text-soft) !important; background: var(--surface-raised) !important; border-color: var(--border) !important; }
.ghost-button:hover { color: var(--text) !important; background: var(--surface-hover) !important; }
.primary-button { background: var(--broadcast-red) !important; color: #fff !important; }
.primary-button:hover { filter: brightness(1.08); }

/* Broadcast: claro u oscuro sin afectar el video */
.broadcast-home { color: var(--text); }
.sports-hero { border-bottom-color: var(--border) !important; }
.broadcast-kicker { color: var(--text-soft) !important; }
.sports-hero h1 { color: var(--text) !important; }
.sports-hero p { color: var(--muted) !important; }
.sports-hero h1 span { color: transparent !important; -webkit-text-stroke: 1px color-mix(in srgb, var(--text) 70%, transparent) !important; }
.hero-badges span { color: var(--text-soft) !important; background: var(--surface-raised) !important; border-color: var(--border) !important; }
.scoreboard-stats article { color: var(--text); background: var(--surface) !important; }
.scoreboard-stats small, .scoreboard-stats span { color: var(--muted) !important; }
.broadcast-premium { color: var(--text) !important; background: var(--surface) !important; border-color: var(--border) !important; box-shadow: var(--app-shadow); }
.broadcast-channels { background: var(--surface) !important; border-color: var(--border) !important; }
.broadcast-channels .panel-heading { color: var(--text-soft) !important; background: var(--surface-raised) !important; }
.broadcast-channels .channel-button { color: var(--text); background: var(--surface) !important; border-bottom-color: var(--border-soft) !important; }
.broadcast-channels .channel-button:hover { background: var(--surface-raised) !important; }
.broadcast-channels .channel-button.active { background: linear-gradient(90deg, color-mix(in srgb, var(--broadcast-red) 16%, transparent), var(--surface) 43%) !important; }
.broadcast-channels .channel-logo { color: var(--text) !important; background: var(--surface-raised) !important; border-color: var(--border) !important; }
.channel-copy small, .channel-viewers small { color: var(--muted) !important; }
.channel-help { color: var(--muted) !important; background: var(--surface-soft) !important; }
.channel-help p { color: var(--muted) !important; }

/* El área del reproductor permanece oscura por legibilidad de video */
.broadcast-player { background: #101217 !important; border-color: #2a2f37 !important; }
.broadcast-player .player-header { color: #f5f6f8; background: #15181e !important; border-bottom-color: #2b2f38 !important; }
.broadcast-player .now-playing small { color: #9298a3 !important; }
.broadcast-player .player-bottom { color: #c8ccd3; background: #0e1014 !important; border-color: #292d35 !important; }
.broadcast-player .audio-tag,
.broadcast-player .icon-button { color: #c7cbd2; background: #20242b !important; border-color: #343944 !important; }

.admin-tabs { background: var(--glass-bg) !important; border-color: var(--border) !important; }
.admin-tabs a { color: var(--muted) !important; }
.admin-tabs a:hover { color: var(--text) !important; background: var(--surface-raised) !important; }
.table-wrap { border-color: var(--border) !important; background: var(--surface); }
th { color: var(--muted) !important; background: var(--surface-raised) !important; }
td { color: var(--text-soft) !important; border-color: var(--border-soft) !important; }
.admin-ad-card { background: var(--surface-soft) !important; }
.ad-create-form { background: var(--surface-soft) !important; }
.check-row { background: var(--surface-soft) !important; }
.security-note { background: var(--surface-soft) !important; border-color: var(--border) !important; }
.telegram-options { background: var(--surface-soft) !important; }
.telegram-events span { color: var(--text-soft) !important; background: var(--surface-raised) !important; border-color: var(--border) !important; }
.telegram-section { border-top-color: var(--telegram-blue) !important; }
.telegram-destinations { min-height: 118px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.field-help { display: block; margin-top: 1px; color: var(--muted) !important; font-size: 9px !important; line-height: 1.45; font-weight: 500 !important; }

.bank-details { border-color: var(--border) !important; }
.bank-details > div { border-color: var(--border-soft) !important; }
.bank-details code { color: var(--text) !important; }
.bank-details button { color: var(--muted) !important; background: var(--surface-raised) !important; border-color: var(--border) !important; }
.warning-copy { color: var(--text-soft) !important; background: var(--surface-soft) !important; }
.status-card.approved { background: linear-gradient(110deg, color-mix(in srgb, var(--green) 9%, transparent), var(--surface) 56%) !important; }

.broadcast-footer,
.site-footer { color: var(--muted) !important; background: var(--footer-bg) !important; border-top-color: var(--border) !important; }
.broadcast-footer strong { color: var(--text); }

/* Scrollbars discretas */
* { scrollbar-width: thin; scrollbar-color: var(--border) transparent; }
*::-webkit-scrollbar { width: 8px; height: 8px; }
*::-webkit-scrollbar-thumb { background: var(--border); border-radius: 999px; }

/* ---------- Tablets ---------- */
@media (max-width: 980px) {
    .site-header { padding-inline: 18px !important; }
    .account-menu { gap: 7px; }
    .theme-label { display: none; }
    .theme-button { width: 34px; padding: 5px; }
    .broadcast-home { padding-inline: 18px !important; }
    .sports-hero { gap: 28px !important; }
    .payment-layout,
    .settings-form { grid-template-columns: 1fr !important; }
    .form-footer { grid-column: auto !important; }
    .telegram-grid { grid-template-columns: 1fr !important; }
}

/* ---------- Móvil ---------- */
@media (max-width: 720px) {
    html { scroll-padding-top: 72px; }
    body { min-width: 0; overflow-x: hidden; }
    .broadcast-topbar { height: 26px !important; padding-inline: 12px !important; gap: 10px !important; }
    .device-label { display: none; }
    .site-header,
    .broadcast-header {
        grid-template-columns: auto 1fr !important;
        min-height: 60px !important;
        padding: 8px 11px !important;
        gap: 8px;
    }
    .broadcast-header .brand { min-width: 0; }
    .brand-mark { width: 36px !important; height: 36px !important; font-size: 24px !important; }
    .broadcast-header .brand-copy strong { font-size: 15px !important; }
    .broadcast-header .brand-copy small,
    .broadcast-header .top-nav,
    .account-email,
    .premium-chip { display: none !important; }
    .account-menu { justify-self: end; min-width: 0; gap: 5px !important; }
    .account-menu .small { min-height: 32px !important; padding: 6px 8px !important; font-size: 9px !important; }
    .theme-button { width: 32px; min-height: 32px; }
    .theme-menu { position: fixed; top: 92px; right: 10px; width: min(280px, calc(100vw - 20px)); }

    main,
    .narrow-page,
    .admin-page { width: min(calc(100% - 20px), var(--max-width)) !important; }
    .broadcast-home { width: 100% !important; max-width: none !important; padding: 16px 10px 44px !important; }
    .sports-hero { grid-template-columns: 1fr !important; padding: 18px 2px 22px !important; gap: 20px !important; }
    .sports-hero h1 { font-size: clamp(36px, 12vw, 52px) !important; line-height: .9 !important; overflow-wrap: anywhere; }
    .sports-hero p { font-size: 13px !important; line-height: 1.55 !important; }
    .hero-badges { gap: 6px !important; }
    .hero-badges span { padding: 6px 8px !important; font-size: 8px !important; }
    .scoreboard-stats { width: 100%; max-width: none !important; }
    .scoreboard-stats article { min-height: 88px !important; padding: 14px 12px !important; }
    .scoreboard-stats strong { font-size: 25px !important; }
    .scoreboard-stats small, .scoreboard-stats span { font-size: 8px !important; }

    .broadcast-grid { grid-template-columns: minmax(0,1fr) !important; gap: 10px !important; }
    .broadcast-player { min-width: 0; order: 1 !important; }
    .broadcast-channels { min-width: 0; order: 2 !important; }
    .broadcast-channels .channel-button { grid-template-columns: auto minmax(0,1fr) auto auto !important; padding: 12px 10px !important; }
    .channel-logo { width: 35px !important; height: 35px !important; }
    .channel-copy strong { overflow: hidden; font-size: 11px !important; text-overflow: ellipsis; white-space: nowrap; }
    .channel-viewers b { font-size: 11px !important; }
    .channel-help { display: block !important; padding: 12px !important; }

    .broadcast-player .player-header { min-height: 58px !important; padding: 9px 10px !important; gap: 7px !important; }
    .now-playing { min-width: 0; gap: 8px !important; }
    .now-playing > span:last-child { min-width: 0; }
    .now-playing strong { display: block; overflow: hidden; max-width: 42vw; font-size: 11px !important; text-overflow: ellipsis; white-space: nowrap; }
    .now-playing small { font-size: 8px !important; }
    .player-tools { gap: 5px !important; }
    .audio-tag { display: none !important; }
    .player-stage { aspect-ratio: 16 / 10 !important; min-height: 215px; }
    .start-overlay { padding: 14px !important; }
    .start-overlay h2 { font-size: clamp(21px, 7vw, 31px) !important; }
    .start-overlay p { font-size: 11px !important; }
    .start-overlay button { min-height: 38px; padding-inline: 14px !important; }
    .broadcast-player .player-bottom { min-height: 44px !important; padding: 8px 10px !important; gap: 8px; font-size: 8px !important; }
    .broadcast-player .player-bottom span:last-child { text-align: right; }

    .broadcast-premium { grid-template-columns: auto 1fr !important; min-height: 70px !important; margin: 14px 0 !important; }
    .broadcast-premium .banner-action { display: none !important; }
    .broadcast-premium strong { font-size: 11px !important; }
    .broadcast-premium small { font-size: 9px !important; line-height: 1.4; }

    .auth-page { min-height: calc(100dvh - 86px); padding: 24px 10px 42px !important; }
    .auth-card { width: 100%; padding: 22px 15px !important; }
    .auth-card h1 { font-size: 1.4rem !important; }
    input, textarea, select { min-height: 44px; font-size: 16px !important; } /* evita zoom automático en iOS */
    textarea { min-height: 94px; }

    .narrow-page,
    .admin-page { padding: 28px 0 48px !important; }
    .page-heading { margin-bottom: 18px !important; }
    .page-heading h1 { font-size: clamp(1.8rem, 10vw, 2.6rem) !important; }
    .admin-heading { align-items: stretch !important; }
    .admin-heading > .ghost-button { width: 100%; }
    .admin-stats { grid-template-columns: 1fr 1fr !important; gap: 7px !important; }
    .admin-stats article { padding: 12px !important; }
    .admin-tabs { top: 68px !important; margin-inline: -1px; padding: 4px !important; overscroll-behavior-inline: contain; }
    .admin-tabs a { min-height: 34px; display: inline-flex; align-items: center; padding: 7px 10px !important; }
    .admin-section { padding: 13px 11px !important; scroll-margin-top: 112px !important; }
    .admin-section-title { gap: 8px !important; }
    .telegram-options { align-items: flex-start; flex-direction: column; gap: 10px !important; }
    .telegram-events { display: grid !important; grid-template-columns: 1fr !important; }
    .telegram-events strong { width: auto !important; }
    .telegram-test { align-items: stretch !important; }
    .telegram-test .ghost-button { width: 100%; }

    .stepper { grid-template-columns: 1fr !important; }
    .stepper li + li { border-left: 0 !important; border-top: 1px solid var(--border); }
    .status-card { grid-template-columns: auto minmax(0,1fr) !important; padding: 15px !important; }
    .status-card > a, .status-card > .status-pill { grid-column: 1 / -1 !important; width: 100%; }
    .transfer-card, .confirm-card { padding: 16px 12px !important; }
    .bank-details > div { grid-template-columns: 66px minmax(0,1fr) !important; gap: 6px; }
    .bank-details dd { min-width: 0; }
    .bank-details code { min-width: 0; overflow-wrap: anywhere; white-space: normal; }
    .bank-details button { flex: 0 0 auto; }

    .two-fields { grid-template-columns: 1fr !important; }
    .ad-admin-layout { grid-template-columns: 1fr !important; }
    .admin-ad-card { grid-template-columns: auto minmax(0,1fr) !important; }
    .admin-ad-card > .status-pill,
    .admin-ad-card > .row-actions { grid-column: 1 / -1; justify-self: stretch; }
    .admin-ad-card > .row-actions { display: grid; grid-template-columns: 1fr 1fr; }
    .admin-ad-card > .row-actions form button { width: 100%; }

    /* Tablas en tarjetas: nada se sale del ancho del teléfono */
    .table-wrap { overflow: visible !important; border: 0 !important; background: transparent !important; }
    .responsive-table,
    .responsive-table tbody,
    .responsive-table tr,
    .responsive-table td { display: block; width: 100%; }
    .responsive-table thead { display: none; }
    .responsive-table tbody { display: grid; gap: 9px; }
    .responsive-table tr { overflow: hidden; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); box-shadow: 0 8px 24px color-mix(in srgb, var(--text) 5%, transparent); }
    .responsive-table td {
        display: grid;
        grid-template-columns: 90px minmax(0,1fr);
        align-items: center;
        gap: 10px;
        min-height: 42px;
        padding: 9px 10px !important;
        border-top: 1px solid var(--border-soft) !important;
        overflow-wrap: anywhere;
    }
    .responsive-table td:first-child { border-top: 0 !important; }
    .responsive-table td::before { content: attr(data-label); color: var(--muted); font-size: 9px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
    .responsive-table td > small { max-width: none; white-space: normal; overflow-wrap: anywhere; }
    .responsive-table .row-actions { flex-wrap: wrap; }
    .responsive-table .row-actions form { flex: 1 1 120px; }
    .responsive-table .row-actions button { width: 100%; }

    .interrupt-ad { padding: 6px !important; }
    .broadcast-interrupt { max-height: calc(100dvh - 12px); overflow-y: auto; padding: 17px 12px !important; }
    .interrupt-actions { width: 100%; flex-direction: column; }
    .interrupt-actions a { width: 100%; }

    .broadcast-footer,
    .site-footer { grid-template-columns: 1fr auto !important; padding: 18px 12px !important; gap: 12px !important; }
    .broadcast-footer p { display: none !important; }
}

@media (max-width: 430px) {
    .brand-copy { display: none !important; }
    .site-header, .broadcast-header { grid-template-columns: 38px minmax(0,1fr) !important; }
    .account-menu { max-width: 100%; }
    .account-menu .ghost-button.small { padding-inline: 7px !important; }
    .sports-hero h1 { font-size: 37px !important; }
    .scoreboard-stats article { padding: 12px 9px !important; }
    .admin-stats { grid-template-columns: 1fr !important; }
    .responsive-table td { grid-template-columns: 76px minmax(0,1fr); }
    .player-stage { min-height: 200px; }
}

/* =========================================================
   DEPORTES DJANGO V7 · PANEL ADMINISTRATIVO PROFESIONAL
   ========================================================= */
.admin-v7 { display:grid; grid-template-columns:260px minmax(0,1fr); gap:18px; width:min(100%,1680px); min-height:calc(100vh - 120px); margin:0 auto; padding:20px; color:var(--text); }
.admin-v7 [hidden] { display:none !important; }
.admin-sidebar { position:sticky; top:86px; align-self:start; display:flex; flex-direction:column; max-height:calc(100vh - 106px); padding:14px; border:1px solid var(--border); border-radius:18px; background:var(--surface); box-shadow:0 18px 55px color-mix(in srgb,var(--text) 7%,transparent); overflow:auto; }
.admin-sidebar-brand { display:flex; align-items:center; gap:11px; padding:8px 8px 18px; border-bottom:1px solid var(--border-soft); }
.admin-sidebar-brand > span { display:grid; place-items:center; width:40px; height:40px; border-radius:11px; background:var(--accent); color:#fff; font-size:22px; font-weight:1000; font-style:italic; }
.admin-sidebar-brand strong,.admin-sidebar-brand small { display:block; }
.admin-sidebar-brand strong { font-size:13px; letter-spacing:.08em; }
.admin-sidebar-brand small { margin-top:2px; color:var(--muted); font-size:7px; font-weight:900; letter-spacing:.13em; }
.admin-side-nav { display:grid; gap:3px; padding:12px 0; }
.admin-side-nav a { display:grid; grid-template-columns:34px 1fr; grid-template-rows:auto auto; align-items:center; min-height:48px; padding:7px 9px; border:1px solid transparent; border-radius:11px; color:var(--text-soft); text-decoration:none; transition:.18s ease; }
.admin-side-nav a > span { grid-row:1/3; display:grid; place-items:center; width:28px; height:28px; border-radius:8px; background:var(--surface-2); color:var(--muted); font-size:12px; font-weight:900; }
.admin-side-nav a b { font-size:11px; }
.admin-side-nav a small { color:var(--muted); font-size:8px; }
.admin-side-nav a:hover { background:var(--surface-hover); }
.admin-side-nav a.active { border-color:color-mix(in srgb,var(--accent) 28%,var(--border)); background:color-mix(in srgb,var(--accent) 8%,var(--surface)); color:var(--text); }
.admin-side-nav a.active > span { background:var(--accent); color:#fff; }
.admin-sidebar-footer { display:grid; gap:5px; margin-top:auto; padding-top:12px; border-top:1px solid var(--border-soft); }
.admin-sidebar-footer a { padding:8px 9px; border-radius:8px; color:var(--muted); font-size:9px; font-weight:800; text-decoration:none; }
.admin-sidebar-footer a:hover { color:var(--text); background:var(--surface-2); }
.admin-mobile-menu { display:none; }
.admin-workspace { min-width:0; }
.admin-topline { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:116px; margin-bottom:14px; padding:22px 26px; border:1px solid var(--border); border-radius:18px; background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--accent) 5%,var(--surface))); box-shadow:0 18px 55px color-mix(in srgb,var(--text) 6%,transparent); }
.admin-topline > div:first-child > small,.eyebrow { color:var(--accent); font-size:8px; font-weight:1000; letter-spacing:.16em; }
.admin-topline h1 { margin:3px 0; font-size:clamp(1.9rem,4vw,3rem); letter-spacing:-.04em; }
.admin-topline p,.admin-section-heading p { margin:0; color:var(--muted); font-size:11px; }
.admin-live-state { display:flex; align-items:center; gap:10px; min-width:190px; padding:11px 13px; border:1px solid var(--border); border-radius:12px; background:var(--surface); }
.admin-live-state > i { width:9px; height:9px; border-radius:50%; background:#22c55e; box-shadow:0 0 0 5px color-mix(in srgb,#22c55e 15%,transparent); }
.admin-live-state b,.admin-live-state small { display:block; }
.admin-live-state b { font-size:10px; }.admin-live-state small { margin-top:2px; color:var(--muted); font-size:8px; }
.admin-panel-section { min-height:520px; padding:22px; border:1px solid var(--border); border-radius:18px; background:var(--surface); box-shadow:0 18px 55px color-mix(in srgb,var(--text) 6%,transparent); animation:adminPanelIn .22s ease; }
@keyframes adminPanelIn { from { opacity:0; transform:translateY(4px); } to { opacity:1; transform:none; } }
.admin-section-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:20px; padding-bottom:17px; border-bottom:1px solid var(--border-soft); }
.admin-section-heading h2 { margin:4px 0; font-size:clamp(1.5rem,3vw,2.2rem); letter-spacing:-.035em; }
.date-chip,.count-chip { flex:0 0 auto; padding:7px 10px; border:1px solid var(--border); border-radius:999px; background:var(--surface-2); color:var(--muted); font-size:9px; font-weight:900; }
.daily-kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.daily-kpi-grid article { display:flex; align-items:center; gap:13px; min-height:108px; padding:16px; border:1px solid var(--border); border-radius:14px; background:var(--surface-2); }
.metric-icon { display:grid; place-items:center; flex:0 0 40px; height:40px; border-radius:11px; font-size:17px; font-weight:900; }
.kpi-blue .metric-icon { background:color-mix(in srgb,#3b82f6 15%,var(--surface)); color:#3b82f6; }.kpi-green .metric-icon { background:color-mix(in srgb,#22c55e 15%,var(--surface)); color:#22c55e; }.kpi-orange .metric-icon { background:color-mix(in srgb,#f59e0b 15%,var(--surface)); color:#f59e0b; }.kpi-purple .metric-icon { background:color-mix(in srgb,#8b5cf6 15%,var(--surface)); color:#8b5cf6; }
.daily-kpi-grid small { color:var(--muted); font-size:7px; font-weight:1000; letter-spacing:.1em; }.daily-kpi-grid strong { display:block; margin:3px 0; font-size:1.8rem; line-height:1; }.daily-kpi-grid p { margin:0; color:var(--muted); font-size:8px; }
.overview-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:10px; }
.overview-card { display:flex; flex-direction:column; min-height:190px; padding:17px; border:1px solid var(--border); border-radius:14px; background:var(--surface); }
.overview-card.attention-card { border-color:color-mix(in srgb,#f59e0b 35%,var(--border)); background:linear-gradient(145deg,color-mix(in srgb,#f59e0b 7%,var(--surface)),var(--surface)); }
.overview-title { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }.overview-title small { color:var(--muted); font-size:7px; font-weight:1000; letter-spacing:.12em; }.overview-title h3 { margin:3px 0; font-size:15px; }.overview-title > b { font-size:2rem; }
.overview-card > p { flex:1; color:var(--muted); font-size:10px; line-height:1.55; }.overview-card > a { display:flex; justify-content:space-between; padding-top:12px; border-top:1px solid var(--border-soft); color:var(--text); font-size:9px; font-weight:900; text-decoration:none; }.overview-card > a span { color:var(--accent); }
.mini-stats { display:flex; gap:7px; flex:1; padding:14px 0; }.mini-stats span { padding:7px 9px; border-radius:8px; background:var(--surface-2); color:var(--muted); font-size:8px; }.mini-stats b { color:var(--text); font-size:13px; }
.quick-actions { display:flex; align-items:center; gap:7px; flex-wrap:wrap; margin-top:10px; padding:12px; border:1px solid var(--border); border-radius:13px; background:var(--surface-2); }.quick-actions > strong { margin-right:4px; font-size:9px; }.quick-actions a { padding:7px 9px; border:1px solid var(--border); border-radius:8px; background:var(--surface); color:var(--text-soft); font-size:8px; font-weight:800; text-decoration:none; }
.table-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }.admin-search { display:flex; align-items:center; gap:8px; width:min(100%,430px); padding:0 11px; border:1px solid var(--border); border-radius:11px; background:var(--field-bg); }.admin-search input { width:100%; min-height:42px; padding:0 !important; border:0 !important; background:transparent !important; box-shadow:none !important; }.admin-search span { color:var(--muted); font-size:18px; }
.table-legend { display:flex; gap:10px; color:var(--muted); font-size:8px; }.table-legend span { display:flex; align-items:center; gap:5px; }.dot { width:7px; height:7px; border-radius:50%; }.dot.approved { background:#22c55e; }.dot.expired { background:#ef4444; }
.admin-data-table td { vertical-align:middle; }.admin-data-table td > strong,.admin-data-table td > small { display:block; }.admin-data-table td > small { margin-top:3px; color:var(--muted); font-size:8px; line-height:1.45; }
.user-cell { display:flex; align-items:center; gap:9px; }.user-cell > span { display:grid; place-items:center; flex:0 0 32px; height:32px; border-radius:9px; background:color-mix(in srgb,var(--accent) 11%,var(--surface-2)); color:var(--accent); font-size:12px; font-weight:1000; }.user-cell strong,.user-cell small { display:block; }.user-cell small { color:var(--muted); font-size:8px; }
.receipt-action { display:inline-flex; align-items:center; gap:6px; min-height:34px; padding:7px 9px; border:1px solid color-mix(in srgb,var(--accent) 26%,var(--border)); border-radius:8px; background:color-mix(in srgb,var(--accent) 6%,var(--surface)); color:var(--text); font-size:8px; text-decoration:none; }.receipt-action span { color:var(--accent); font-size:14px; }.receipt-action.compact { min-height:30px; }
.simple-settings-form { display:grid; grid-template-columns:1fr 1fr; gap:12px; }.settings-focus-card { padding:20px; border:1px solid var(--border); border-radius:15px; background:var(--surface-2); }.settings-card-head { display:flex; align-items:flex-start; gap:11px; margin-bottom:17px; }.settings-number { display:grid; place-items:center; flex:0 0 34px; height:34px; border-radius:10px; background:var(--accent); color:#fff; font-size:12px; font-weight:1000; }.settings-card-head h3 { margin:0 0 3px; }.settings-card-head p,.channel-name-card p { margin:0; color:var(--muted); font-size:9px; }.form-grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:9px; }.settings-save-wide { grid-column:1/-1; justify-self:start; }
.channel-settings-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }.channel-name-card { display:grid; grid-template-columns:auto 1fr; gap:16px; padding:22px; border:1px solid var(--border); border-radius:16px; background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 5%,var(--surface-2)),var(--surface-2)); }.channel-big-number { display:grid; place-items:center; width:58px; height:58px; border-radius:16px; background:var(--accent); color:#fff; font-size:26px; font-weight:1000; }.channel-name-card small { color:var(--accent); font-size:8px; font-weight:1000; letter-spacing:.12em; }.channel-name-card code { color:var(--text-soft); }
.telegram-dashboard-grid { display:grid; grid-template-columns:minmax(340px,1.35fr) minmax(260px,.65fr); gap:12px; }.telegram-setup-card,.telegram-status-card { padding:20px; border:1px solid var(--border); border-radius:16px; background:var(--surface-2); }.telegram-step { display:grid; grid-template-columns:34px 1fr; gap:12px; padding-bottom:18px; }.telegram-step + .telegram-step { padding-top:18px; border-top:1px solid var(--border-soft); }.telegram-step > span { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; background:var(--accent); color:#fff; font-weight:1000; }.telegram-step h3 { margin:0 0 3px; }.telegram-step p { margin:0 0 12px; color:var(--muted); font-size:9px; }.telegram-enable-box { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:0 0 14px; padding:12px; border:1px solid var(--border); border-radius:11px; background:var(--surface); }.telegram-enable-box .toggle-line span b,.telegram-enable-box .toggle-line span small { display:block; }.telegram-enable-box .toggle-line span small { color:var(--muted); font-size:8px; }.clear-token { color:#ef4444; font-size:8px; }
.telegram-status-card { align-self:start; background:linear-gradient(145deg,color-mix(in srgb,#229ED9 10%,var(--surface-2)),var(--surface-2)); }.telegram-plane { display:grid; place-items:center; width:48px; height:48px; margin-bottom:16px; border-radius:14px; background:#229ED9; color:#fff; font-size:22px; }.telegram-status-card > small { color:#229ED9; font-size:8px; font-weight:1000; letter-spacing:.12em; }.telegram-status-card h3 { margin:4px 0 15px; }.telegram-status-card ul { display:grid; gap:8px; padding:0; list-style:none; }.telegram-status-card li { display:flex; align-items:center; gap:7px; color:var(--muted); font-size:9px; }.telegram-status-card li i { width:8px; height:8px; border-radius:50%; background:#ef4444; }.telegram-status-card li.ok i { background:#22c55e; }.telegram-event-list { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin:16px 0; padding-top:14px; border-top:1px solid var(--border-soft); }.telegram-event-list span { color:var(--muted); font-size:8px; }
.settings-grid-v7 { display:grid; grid-template-columns:1fr 1fr; gap:12px; }.settings-grid-v7 .full-card { grid-column:1/-1; }.settings-card-icon { display:grid; place-items:center; width:36px; height:36px; margin-bottom:10px; border-radius:10px; background:var(--surface-2); color:var(--accent); font-size:15px; font-weight:900; }.activity-list-v7 { max-width:900px; }

@media (max-width:1180px) { .daily-kpi-grid { grid-template-columns:1fr 1fr; }.overview-grid { grid-template-columns:1fr 1fr; }.overview-grid article:last-child { grid-column:1/-1; }.simple-settings-form,.channel-settings-grid { grid-template-columns:1fr; } }
@media (max-width:900px) {
  .admin-v7 { display:block; padding:12px; }.admin-sidebar { position:relative; top:auto; max-height:none; margin-bottom:10px; padding:10px; }.admin-sidebar-brand { padding-bottom:10px; }.admin-mobile-menu { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; min-height:42px; margin-top:9px; border:1px solid var(--border); border-radius:10px; background:var(--surface-2); color:var(--text); font-size:10px; font-weight:900; }.admin-side-nav,.admin-sidebar-footer { display:none; }.admin-sidebar.menu-open .admin-side-nav,.admin-sidebar.menu-open .admin-sidebar-footer { display:grid; }.admin-side-nav { grid-template-columns:1fr 1fr; }.admin-topline { min-height:0; padding:17px; }.admin-live-state { display:none; }.telegram-dashboard-grid { grid-template-columns:1fr; }
}
@media (max-width:700px) {
  .admin-v7 { padding:8px; }.admin-panel-section { min-height:0; padding:14px 11px; border-radius:14px; }.admin-topline { margin-bottom:8px; border-radius:14px; }.admin-topline h1 { font-size:1.7rem; }.admin-section-heading { align-items:stretch; flex-direction:column; margin-bottom:14px; }.admin-section-heading .count-chip,.admin-section-heading .date-chip { align-self:flex-start; }.daily-kpi-grid,.overview-grid,.settings-grid-v7 { grid-template-columns:1fr; }.overview-grid article:last-child,.settings-grid-v7 .full-card { grid-column:auto; }.daily-kpi-grid article { min-height:88px; }.overview-card { min-height:165px; }.quick-actions { display:grid; grid-template-columns:1fr 1fr; }.quick-actions > strong { grid-column:1/-1; }.table-toolbar { align-items:stretch; flex-direction:column; }.admin-search { width:100%; }.table-legend { justify-content:flex-start; }.form-grid-2 { grid-template-columns:1fr; }.telegram-enable-box { align-items:flex-start; flex-direction:column; }.channel-name-card { grid-template-columns:1fr; padding:16px; }.channel-big-number { width:44px; height:44px; border-radius:12px; font-size:20px; }.settings-save-wide { width:100%; }.admin-data-table td { grid-template-columns:92px minmax(0,1fr) !important; }.admin-data-table .user-cell { min-width:0; }.admin-data-table .user-cell div { min-width:0; overflow-wrap:anywhere; }
}
@media (max-width:430px) { .admin-side-nav { grid-template-columns:1fr; }.quick-actions { grid-template-columns:1fr; }.quick-actions > strong { grid-column:auto; }.daily-kpi-grid article { padding:12px; }.telegram-event-list { grid-template-columns:1fr; }.admin-data-table td { grid-template-columns:76px minmax(0,1fr) !important; } }

/* =========================================================
   DEPORTES DJANGO V8 · STREAMING + REDES SOCIALES
   ========================================================= */
.broadcast-home-v8 { max-width:1520px; padding-top:26px; }
.sports-hero-v8 { align-items:center; min-height:560px; padding:58px 52px !important; border:1px solid var(--border) !important; border-radius:28px; background:radial-gradient(circle at 78% 20%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 30%),linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--text) 3%,var(--surface))); box-shadow:0 30px 90px color-mix(in srgb,var(--text) 9%,transparent); overflow:hidden; isolation:isolate; }
.sports-hero-v8:before { content:""; position:absolute; z-index:-1; right:-100px; bottom:-170px; width:560px; height:560px; border:1px solid color-mix(in srgb,var(--accent) 18%,transparent); border-radius:50%; box-shadow:0 0 0 70px color-mix(in srgb,var(--accent) 3%,transparent),0 0 0 140px color-mix(in srgb,var(--accent) 2%,transparent); }
.sports-hero-v8:after { left:52px !important; bottom:0 !important; width:220px !important; height:5px !important; border-radius:5px 5px 0 0; }
.sports-hero-v8 .hero-copy { position:relative; z-index:2; }
.sports-hero-v8 .broadcast-kicker { color:var(--text-soft); font-size:9px; }
.sports-hero-v8 h1 { max-width:940px; margin:18px 0; font-size:clamp(48px,6.2vw,94px); line-height:.88; }
.sports-hero-v8 h1 span { -webkit-text-stroke:1.4px color-mix(in srgb,var(--text) 72%,transparent) !important; }
.sports-hero-v8 .hero-copy > p { max-width:660px; font-size:15px; }
.hero-actions-v8 { display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-top:24px; }
.hero-live-button { display:inline-flex; align-items:center; gap:9px; min-height:48px; padding:0 18px; border-radius:11px; background:var(--accent); color:#fff; font-size:10px; font-weight:1000; letter-spacing:.06em; text-decoration:none; box-shadow:0 12px 30px color-mix(in srgb,var(--accent) 26%,transparent); transition:transform .18s ease,filter .18s ease; }
.hero-live-button:hover { transform:translateY(-2px); filter:brightness(1.08); }
.hero-live-button span { display:grid; place-items:center; width:23px; height:23px; border-radius:7px; background:rgba(255,255,255,.17); font-size:9px; }
.hero-actions-v8 .hero-badges { margin:0; }
.hero-actions-v8 .hero-badges span { border-radius:9px; background:var(--surface-2); color:var(--text-soft); border-color:var(--border); }
.hero-social-v8 { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:30px; padding-top:20px; border-top:1px solid var(--border-soft); }
.hero-social-v8 > small { margin-right:4px; color:var(--muted); font-size:8px; font-weight:1000; letter-spacing:.14em; }
.hero-social-v8 > a { display:flex; align-items:center; gap:8px; min-width:145px; padding:8px 10px; border:1px solid var(--border); border-radius:10px; background:color-mix(in srgb,var(--surface-raised) 88%,transparent); color:var(--text); text-decoration:none; transition:.18s ease; }
.hero-social-v8 > a:hover { transform:translateY(-2px); border-color:color-mix(in srgb,var(--accent) 40%,var(--border)); background:var(--surface-hover); }
.hero-social-v8 svg,.footer-social-v8 svg,.social-community-banner svg { flex:0 0 25px; width:25px; height:25px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.hero-social-v8 .social-fill,.footer-social-v8 .social-fill,.social-community-banner .social-fill { fill:currentColor; stroke:none; }
.hero-social-v8 a span b,.hero-social-v8 a span small { display:block; }.hero-social-v8 a span b { font-size:9px; }.hero-social-v8 a span small { margin-top:1px; color:var(--muted); font-size:7px; }
.sports-hero-v8 .scoreboard-stats { position:relative; display:grid; grid-template-columns:1fr; gap:10px; padding:0; background:transparent; transform:none; }
.sports-hero-v8 .scoreboard-stats:before { content:"EN DIRECTO"; position:absolute; z-index:2; top:-11px; right:18px; padding:6px 9px; border-radius:7px; background:var(--accent); color:#fff; font-size:7px; font-weight:1000; letter-spacing:.13em; }
.sports-hero-v8 .scoreboard-stats article { position:relative; min-height:150px; padding:25px 26px; border:1px solid var(--border); border-radius:17px; background:color-mix(in srgb,var(--surface-raised) 92%,transparent); color:var(--text); transform:none; backdrop-filter:blur(16px); overflow:hidden; }
.sports-hero-v8 .scoreboard-stats article:after { content:""; position:absolute; right:-26px; bottom:-42px; width:125px; height:125px; border:22px solid color-mix(in srgb,var(--accent) 6%,transparent); border-radius:50%; }
.score-icon { position:absolute; top:18px; right:18px; color:var(--accent) !important; font-size:11px !important; }
.sports-hero-v8 .scoreboard-stats small { color:var(--muted); }.sports-hero-v8 .scoreboard-stats strong { position:relative; z-index:1; font-size:48px; }.sports-hero-v8 .scoreboard-stats article > span:last-child { position:relative; z-index:1; color:var(--muted); font-size:9px; }
.streaming-showcase-heading { scroll-margin-top:100px; display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:36px; padding:18px 4px; }
.streaming-showcase-heading > div:first-child { display:flex; align-items:center; gap:15px; }.section-number { display:grid; place-items:center; flex:0 0 48px; height:48px; border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border)); border-radius:13px; background:color-mix(in srgb,var(--accent) 7%,var(--surface)); color:var(--accent); font-size:12px; font-weight:1000; }.streaming-showcase-heading small { color:var(--accent); font-size:8px; font-weight:1000; letter-spacing:.13em; }.streaming-showcase-heading h2 { margin:2px 0; font-size:clamp(1.6rem,3vw,2.5rem); letter-spacing:-.04em; }.streaming-showcase-heading p { margin:0; color:var(--muted); font-size:10px; }
.live-system-chip { display:flex; align-items:center; gap:10px; min-width:190px; padding:11px 13px; border:1px solid var(--border); border-radius:12px; background:var(--surface); }.live-system-chip > i { width:9px; height:9px; border-radius:50%; background:#22c55e; box-shadow:0 0 0 5px color-mix(in srgb,#22c55e 14%,transparent); }.live-system-chip b,.live-system-chip small { display:block; }.live-system-chip b { font-size:9px; }.live-system-chip small { margin-top:2px; color:var(--muted); font-size:7px; }
.v8-watch-layout { grid-template-columns:minmax(255px,310px) minmax(0,1fr) !important; gap:14px !important; align-items:stretch; }
.v8-watch-layout .broadcast-channels,.v8-watch-layout .broadcast-player { border-radius:20px !important; box-shadow:0 22px 65px color-mix(in srgb,var(--text) 8%,transparent) !important; }
.v8-watch-layout .broadcast-channels { padding:10px; border-color:var(--border) !important; background:var(--surface) !important; }
.v8-watch-layout .panel-heading { display:flex; align-items:center; justify-content:space-between; min-height:66px; padding:11px 12px; border-bottom:1px solid var(--border-soft); }.v8-watch-layout .panel-heading > span { color:var(--text); font-size:10px; font-weight:1000; }.v8-watch-layout .panel-heading > span small { display:block; margin-bottom:2px; color:var(--muted); font-size:7px; letter-spacing:.12em; }.v8-watch-layout .panel-heading > b { display:grid; place-items:center; width:30px; height:30px; border-radius:9px; background:var(--surface-2); color:var(--accent); font-size:11px; }
.v8-watch-layout .channel-button { grid-template-columns:48px minmax(0,1fr) auto 14px !important; min-height:82px; margin-top:7px; padding:9px 10px !important; border:1px solid transparent !important; border-radius:13px !important; background:transparent !important; color:var(--text) !important; transition:.18s ease; }
.v8-watch-layout .channel-button:hover { transform:translateX(2px); border-color:var(--border) !important; background:var(--surface-hover) !important; }
.v8-watch-layout .channel-button.active { border-color:color-mix(in srgb,var(--accent) 35%,var(--border)) !important; background:linear-gradient(100deg,color-mix(in srgb,var(--accent) 10%,var(--surface-2)),var(--surface-2)) !important; box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 9%,transparent); }
.v8-watch-layout .channel-logo { display:grid !important; place-items:center; align-content:center; width:44px !important; height:48px !important; border:1px solid var(--border); border-radius:11px !important; background:var(--surface-raised) !important; color:var(--text) !important; transform:none !important; }.v8-watch-layout .channel-logo b { font-size:16px; line-height:1; }.v8-watch-layout .channel-logo small { margin-top:3px; color:var(--muted); font-size:6px; font-weight:1000; letter-spacing:.08em; }.v8-watch-layout .channel-button.active .channel-logo { border-color:var(--accent); background:var(--accent) !important; color:#fff !important; }.v8-watch-layout .channel-button.active .channel-logo small { color:rgba(255,255,255,.72); }
.v8-watch-layout .channel-copy { display:flex; flex-direction:column-reverse; gap:4px; }.v8-watch-layout .channel-copy strong { font-size:11px !important; }.v8-watch-layout .channel-copy small { color:var(--muted) !important; font-size:6px !important; letter-spacing:.09em; }.v8-watch-layout .channel-viewers { text-align:right; }.v8-watch-layout .channel-viewers b { font-size:11px; }.v8-watch-layout .channel-viewers small { display:block; color:var(--muted); font-size:6px; }
.v8-watch-layout .channel-help { display:flex !important; align-items:center; gap:10px; margin-top:auto; padding:12px !important; border:1px solid var(--border-soft) !important; border-radius:12px; background:var(--surface-2) !important; }.v8-watch-layout .channel-help > span { display:grid; place-items:center; flex:0 0 25px; height:25px; border-radius:8px; background:var(--surface); color:var(--accent); font-size:10px; font-weight:1000; }.v8-watch-layout .channel-help strong { font-size:8px !important; }.v8-watch-layout .channel-help p { margin:2px 0 0 !important; font-size:7px !important; }
.v8-watch-layout .broadcast-player { border-color:var(--border) !important; background:var(--surface) !important; }
.v8-watch-layout .player-header { min-height:74px !important; padding:12px 16px !important; background:var(--surface) !important; border-bottom-color:var(--border-soft) !important; }.v8-watch-layout .now-playing { gap:11px !important; }.v8-watch-layout .now-playing > span:last-child { display:grid; }.v8-watch-layout .now-playing > span:last-child > small { color:var(--muted); font-size:6px; font-weight:1000; letter-spacing:.1em; }.v8-watch-layout .now-playing strong { font-size:14px !important; }.v8-watch-layout .now-playing em { color:var(--muted); font-size:7px; font-style:normal; }.v8-watch-layout .live-tag { padding:7px 9px !important; border-radius:8px !important; }.v8-watch-layout .audio-tag { padding:6px 8px !important; border-radius:7px !important; color:var(--muted) !important; background:var(--surface-2) !important; border:1px solid var(--border) !important; font-size:6px !important; }
.v8-watch-layout .player-stage { min-height:480px; background:radial-gradient(circle at center,color-mix(in srgb,var(--accent) 8%,#0a0b0e),#050608 65%) !important; }.v8-watch-layout .player-stage:before { content:""; position:absolute; inset:0; z-index:0; opacity:.17; background-image:linear-gradient(color-mix(in srgb,#fff 10%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,#fff 10%,transparent) 1px,transparent 1px); background-size:48px 48px; pointer-events:none; }.v8-watch-layout .start-overlay { z-index:2; }.v8-watch-layout .start-overlay .on-air { display:inline-flex; align-items:center; gap:7px; padding:6px 9px; border:1px solid rgba(255,255,255,.12); border-radius:999px; background:rgba(255,255,255,.05); color:#cfd2d8; font-size:7px; letter-spacing:.12em; }.v8-watch-layout .start-overlay .on-air i { width:6px; height:6px; border-radius:50%; background:#22c55e; box-shadow:0 0 0 4px rgba(34,197,94,.12); }.v8-watch-layout .play-orbit { margin:18px 0 12px !important; }.v8-watch-layout .play-orbit > span { box-shadow:0 0 0 12px rgba(255,255,255,.04),0 0 0 24px rgba(255,255,255,.025),0 18px 50px rgba(0,0,0,.35) !important; }.v8-watch-layout .start-overlay h2 { font-size:clamp(22px,3vw,36px) !important; }.v8-watch-layout .start-overlay p { max-width:440px; }.v8-watch-layout #start-button { display:inline-flex; align-items:center; gap:8px; min-height:48px; margin-top:12px; padding:0 20px !important; border-radius:10px !important; box-shadow:0 14px 35px rgba(199,37,37,.24); }.v8-watch-layout #start-button span { display:grid; place-items:center; width:22px; height:22px; border-radius:6px; background:rgba(255,255,255,.16); font-size:8px; }
.v8-watch-layout .player-bottom { min-height:42px !important; padding:9px 15px !important; border-top-color:var(--border-soft) !important; background:var(--surface) !important; }
.social-community-banner { display:grid; grid-template-columns:1fr auto; align-items:center; gap:30px; margin-top:24px; padding:30px 32px; border:1px solid var(--border); border-radius:20px; background:linear-gradient(120deg,color-mix(in srgb,var(--accent) 8%,var(--surface)),var(--surface) 45%,color-mix(in srgb,#8b5cf6 6%,var(--surface))); box-shadow:0 20px 60px color-mix(in srgb,var(--text) 6%,transparent); }.social-community-banner > div:first-child > small { color:var(--accent); font-size:8px; font-weight:1000; letter-spacing:.14em; }.social-community-banner h2 { margin:4px 0; font-size:clamp(1.5rem,3vw,2.25rem); letter-spacing:-.04em; }.social-community-banner p { margin:0; color:var(--muted); font-size:10px; }.social-community-banner > div:last-child { display:flex; gap:8px; }.social-community-banner a { display:grid; grid-template-columns:30px minmax(105px,1fr) auto; align-items:center; gap:9px; min-width:205px; padding:11px 12px; border:1px solid var(--border); border-radius:12px; background:var(--surface-raised); color:var(--text); text-decoration:none; transition:.18s ease; }.social-community-banner a:hover { transform:translateY(-2px); box-shadow:0 12px 28px color-mix(in srgb,var(--text) 8%,transparent); }.social-community-banner a span b,.social-community-banner a span small { display:block; }.social-community-banner a span b { font-size:9px; }.social-community-banner a span small { color:var(--muted); font-size:7px; }.social-community-banner a > strong { color:var(--muted); }.instagram-social-button:hover { border-color:#d946ef !important; }.tiktok-social-button:hover { border-color:#22d3ee !important; }
.broadcast-footer-v8 { display:grid !important; grid-template-columns:minmax(260px,1fr) auto minmax(190px,.7fr) !important; align-items:center; gap:30px !important; padding:28px max(24px,calc((100vw - 1440px)/2)) !important; border-top:1px solid var(--border) !important; background:var(--footer-bg) !important; }
.footer-main-v8 { display:flex; align-items:center; gap:18px; min-width:0; }.footer-brand-v8 { display:flex; align-items:center; gap:10px; flex:0 0 auto; }.footer-brand-v8 .brand-mark { width:38px; height:38px; border-radius:10px; }.footer-brand-v8 strong,.footer-brand-v8 small { display:block; }.footer-brand-v8 strong { color:var(--text); font-size:12px; }.footer-brand-v8 small { margin-top:2px; color:var(--muted); font-size:6px; letter-spacing:.1em; }.footer-main-v8 > p { max-width:280px; margin:0; padding-left:18px; border-left:1px solid var(--border); color:var(--muted); font-size:8px; line-height:1.5; }
.footer-social-v8 > small { display:block; margin-bottom:7px; color:var(--muted); font-size:6px; font-weight:1000; letter-spacing:.14em; text-align:center; }.footer-social-v8 > div { display:flex; gap:7px; }.footer-social-v8 a { display:flex; align-items:center; gap:7px; min-width:143px; padding:8px 10px; border:1px solid var(--border); border-radius:10px; background:var(--surface-raised); color:var(--text); text-decoration:none; }.footer-social-v8 a:hover { border-color:color-mix(in srgb,var(--accent) 40%,var(--border)); background:var(--surface-hover); }.footer-social-v8 svg { width:22px; height:22px; flex-basis:22px; }.footer-social-v8 b,.footer-social-v8 a small { display:block; }.footer-social-v8 b { font-size:8px; }.footer-social-v8 a small { margin-top:1px; color:var(--muted); font-size:6px; }
.footer-status-v8 { display:grid; justify-items:end; gap:6px; }.footer-status-v8 .platform-status { padding:7px 9px; border:1px solid var(--border); border-radius:999px; background:var(--surface-raised); font-size:7px; }.footer-status-v8 > small { color:var(--muted); font-size:6px; letter-spacing:.08em; }

@media (max-width:1100px) { .sports-hero-v8 { grid-template-columns:1.15fr .85fr !important; padding:44px 34px !important; }.sports-hero-v8:after { left:34px !important; }.social-community-banner { grid-template-columns:1fr; }.social-community-banner > div:last-child { justify-content:flex-start; }.broadcast-footer-v8 { grid-template-columns:1fr auto !important; }.footer-status-v8 { display:none; } }
@media (max-width:980px) { .sports-hero-v8 { grid-template-columns:1fr !important; min-height:0; }.sports-hero-v8 .scoreboard-stats { grid-template-columns:1fr 1fr; max-width:none; }.v8-watch-layout { grid-template-columns:1fr !important; }.v8-watch-layout .broadcast-channels { order:2; display:grid !important; grid-template-columns:1fr 1fr; gap:7px; }.v8-watch-layout .panel-heading,.v8-watch-layout .channel-help,.v8-watch-layout .sidebar-ad { grid-column:1/-1; }.v8-watch-layout .channel-button { margin-top:0; }.broadcast-footer-v8 { grid-template-columns:1fr !important; }.footer-main-v8,.footer-social-v8 { justify-self:center; }.footer-social-v8 > small { text-align:left; } }
@media (max-width:720px) { .broadcast-home-v8 { padding:10px 9px 42px !important; }.sports-hero-v8 { padding:30px 18px !important; border-radius:19px; }.sports-hero-v8:after { left:18px !important; width:130px !important; }.sports-hero-v8 h1 { font-size:clamp(39px,12vw,56px) !important; }.sports-hero-v8 .hero-copy > p { font-size:12px !important; }.hero-actions-v8 { align-items:stretch; flex-direction:column; }.hero-live-button { align-self:flex-start; }.hero-social-v8 > small { width:100%; }.sports-hero-v8 .scoreboard-stats article { min-height:115px; padding:18px; }.sports-hero-v8 .scoreboard-stats strong { font-size:31px; }.streaming-showcase-heading { align-items:flex-start; flex-direction:column; margin-top:20px; padding:14px 3px; }.live-system-chip { width:100%; }.v8-watch-layout .broadcast-channels { grid-template-columns:1fr; }.v8-watch-layout .panel-heading,.v8-watch-layout .channel-help,.v8-watch-layout .sidebar-ad { grid-column:auto; }.v8-watch-layout .player-stage { min-height:240px; aspect-ratio:16/10 !important; }.v8-watch-layout .audio-tag { display:none; }.v8-watch-layout .start-overlay h2 { font-size:21px !important; }.v8-watch-layout .start-overlay p { padding:0 14px; font-size:9px !important; }.v8-watch-layout .play-orbit { margin:10px 0 7px !important; }.social-community-banner { padding:22px 16px; border-radius:16px; }.social-community-banner > div:last-child { display:grid; grid-template-columns:1fr; }.social-community-banner a { min-width:0; width:100%; }.broadcast-footer-v8 { padding:25px 14px !important; }.footer-main-v8 { align-items:flex-start; }.footer-main-v8 > p { display:none !important; }.footer-social-v8 { width:100%; }.footer-social-v8 > div { display:grid; grid-template-columns:1fr 1fr; }.footer-social-v8 a { min-width:0; }.footer-social-v8 > small { text-align:left; } }
@media (max-width:430px) { .sports-hero-v8 .scoreboard-stats { grid-template-columns:1fr 1fr; }.sports-hero-v8 .scoreboard-stats article { min-height:100px; padding:14px 11px; }.sports-hero-v8 .scoreboard-stats strong { font-size:27px; }.hero-social-v8 > a { flex:1 1 130px; min-width:0; }.section-number { flex-basis:42px; height:42px; }.streaming-showcase-heading h2 { font-size:1.5rem; }.v8-watch-layout .channel-button { grid-template-columns:45px minmax(0,1fr) auto 12px !important; }.v8-watch-layout .channel-viewers { display:block !important; }.v8-watch-layout .player-header { min-height:62px !important; }.v8-watch-layout .now-playing .live-tag { padding:6px 7px !important; font-size:6px !important; }.footer-social-v8 > div { grid-template-columns:1fr; }.footer-social-v8 a { width:100%; }.footer-main-v8 { justify-content:center; } }

/* =========================================================
   DEPORTES DJANGO V9 · GOOGLE ADS + VIDEO TUTORIAL
   ========================================================= */
.google-tag-layout { display:grid; grid-template-columns:minmax(320px,.9fr) minmax(400px,1.1fr); gap:12px; }
.google-tag-form,.google-tag-preview { padding:22px; border:1px solid var(--border); border-radius:16px; background:var(--surface-2); }
.google-tag-logo { display:grid; place-items:center; width:52px; height:52px; margin-bottom:18px; border-radius:15px; background:linear-gradient(135deg,#4285f4 0 25%,#34a853 25% 50%,#fbbc05 50% 75%,#ea4335 75%); color:#fff; font-size:25px; font-weight:1000; box-shadow:0 12px 30px rgba(66,133,244,.18); }
.google-tag-form > div > small,.google-tag-preview > small { color:#4285f4; font-size:8px; font-weight:1000; letter-spacing:.13em; }
.google-tag-form h3,.google-tag-preview h3 { margin:4px 0; font-size:1.25rem; }.google-tag-form p { margin:0 0 17px; color:var(--muted); font-size:10px; line-height:1.55; }
.google-tag-form input[name="google_tag_id"] { min-height:52px; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:16px !important; font-weight:900; letter-spacing:.03em; }
.google-tag-enable { margin:16px 0; padding:13px; border:1px solid var(--border); border-radius:11px; background:var(--surface); }.google-tag-enable .toggle-line span b,.google-tag-enable .toggle-line span small { display:block; }.google-tag-enable .toggle-line span small { margin-top:2px; color:var(--muted); font-size:8px; }
.google-tag-preview pre { overflow:auto; margin:15px 0; padding:16px; border:1px solid var(--border); border-radius:12px; background:#0b1020; color:#d6e2ff; font-size:9px; line-height:1.65; white-space:pre; }
.google-tag-checks { display:grid; gap:7px; margin:13px 0; }.google-tag-checks span { color:var(--muted); font-size:9px; }.google-tag-checks span::first-letter { color:#22c55e; }
.tutorial-admin-block { margin-top:16px; padding-top:18px; border-top:1px solid var(--border-soft); }.tutorial-admin-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:12px; }.tutorial-admin-heading small { color:var(--accent); font-size:8px; font-weight:1000; letter-spacing:.13em; }.tutorial-admin-heading h3 { margin:4px 0; font-size:1.4rem; }.tutorial-admin-heading p { margin:0; color:var(--muted); font-size:10px; }
.tutorial-admin-grid { display:grid; grid-template-columns:minmax(320px,.9fr) minmax(330px,1.1fr); gap:12px; }.tutorial-upload-form { background:var(--surface-2); }.tutorial-current-card { min-width:0; padding:18px; border:1px solid var(--border); border-radius:14px; background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 6%,var(--surface-2)),var(--surface-2)); }.tutorial-current-card > small { color:var(--accent); font-size:8px; font-weight:1000; letter-spacing:.12em; }.tutorial-current-card > h3 { margin:4px 0; }.tutorial-current-card > p { margin:0 0 12px; color:var(--muted); font-size:9px; overflow-wrap:anywhere; }.tutorial-current-icon,.tutorial-empty-icon { display:grid; place-items:center; width:44px; height:44px; margin-bottom:13px; border-radius:12px; background:var(--accent); color:#fff; font-size:15px; }.tutorial-empty-icon { background:var(--surface); color:var(--muted); border:1px solid var(--border); }.tutorial-current-card video { display:block; width:100%; max-height:260px; margin:12px 0; border:1px solid var(--border); border-radius:11px; background:#050608; }.tutorial-current-card .row-actions { margin-top:12px; }.tutorial-current-card .row-actions form { flex:1; }.tutorial-current-card .row-actions button { width:100%; }
.app-page-v9 { max-width:1320px; }.app-hero-v9 { min-height:500px; }.watch-tutorial-link { display:flex; align-items:center; gap:10px; width:max-content; max-width:100%; margin:16px 0 4px; padding:10px 12px; border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border)); border-radius:11px; background:color-mix(in srgb,var(--accent) 7%,var(--surface)); color:var(--text); text-decoration:none; }.watch-tutorial-link > span { display:grid; place-items:center; flex:0 0 32px; height:32px; border-radius:9px; background:var(--accent); color:#fff; font-size:10px; }.watch-tutorial-link b,.watch-tutorial-link small { display:block; }.watch-tutorial-link b { font-size:10px; }.watch-tutorial-link small { margin-top:2px; color:var(--muted); font-size:8px; }
.app-tutorial-public { scroll-margin-top:100px; display:grid; grid-template-columns:minmax(280px,.7fr) minmax(420px,1.3fr); align-items:center; gap:46px; margin:10px 0 20px; padding:34px; border:1px solid var(--border); border-radius:21px; background:linear-gradient(130deg,color-mix(in srgb,var(--accent) 8%,var(--surface)),var(--surface) 55%); box-shadow:0 24px 70px color-mix(in srgb,var(--text) 7%,transparent); }.tutorial-public-copy h2 { margin:8px 0; font-size:clamp(1.8rem,4vw,3.2rem); line-height:.96; letter-spacing:-.045em; }.tutorial-public-copy > p { color:var(--muted); font-size:11px; line-height:1.65; }.tutorial-steps { display:grid; gap:7px; margin-top:18px; }.tutorial-steps span { display:flex; align-items:center; gap:9px; color:var(--text-soft); font-size:9px; font-weight:800; }.tutorial-steps b { display:grid; place-items:center; width:25px; height:25px; border-radius:8px; background:var(--surface-2); color:var(--accent); font-size:8px; }
.tutorial-video-shell { overflow:hidden; border:1px solid var(--border); border-radius:16px; background:#050608; box-shadow:0 25px 60px rgba(0,0,0,.22); }.tutorial-video-top { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:48px; padding:9px 13px; border-bottom:1px solid rgba(255,255,255,.09); background:#0c0e13; color:#fff; }.tutorial-video-top span { display:flex; align-items:center; gap:7px; font-size:7px; font-weight:1000; letter-spacing:.1em; }.tutorial-video-top span i { width:7px; height:7px; border-radius:50%; background:#ef4444; box-shadow:0 0 0 4px rgba(239,68,68,.13); }.tutorial-video-top small { max-width:50%; overflow:hidden; color:#848a95; font-size:7px; text-overflow:ellipsis; white-space:nowrap; }.tutorial-video-shell video { display:block; width:100%; max-height:520px; aspect-ratio:16/9; background:#000; object-fit:contain; }
@media (max-width:980px) { .google-tag-layout,.tutorial-admin-grid,.app-tutorial-public { grid-template-columns:1fr; }.app-tutorial-public { gap:24px; }.tutorial-video-shell { max-width:800px; } }
@media (max-width:700px) { .google-tag-form,.google-tag-preview { padding:15px 12px; }.google-tag-preview pre { font-size:8px; }.tutorial-admin-heading { align-items:stretch; flex-direction:column; }.tutorial-admin-heading .status-pill { align-self:flex-start; }.tutorial-current-card { padding:14px 11px; }.app-page-v9 { padding-inline:10px; }.app-tutorial-public { padding:20px 13px; border-radius:16px; }.tutorial-public-copy h2 { font-size:1.9rem; }.tutorial-video-top { min-height:42px; }.tutorial-video-shell video { max-height:360px; } }

/* DEPORTES DJANGO V10 · CENTRO PROFESIONAL DE CARGA DE VIDEO */
.video-upload-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin:0 0 14px; }
.video-upload-facts > span { display:flex; flex-direction:column; gap:3px; padding:13px 15px; border:1px solid var(--border); border-radius:12px; background:linear-gradient(140deg,color-mix(in srgb,var(--accent) 5%,var(--surface-2)),var(--surface-2)); }
.video-upload-facts b { color:var(--text); font-size:12px; }.video-upload-facts small { color:var(--muted); font-size:8px; }
.video-file-drop { position:relative; border-style:dashed !important; transition:border-color .18s ease,background .18s ease; }
.video-file-drop:hover { border-color:color-mix(in srgb,var(--accent) 55%,var(--border)) !important; background:color-mix(in srgb,var(--accent) 5%,var(--surface)) !important; }
.video-upload-inspector { display:grid; grid-template-columns:42px minmax(0,1fr); align-items:center; gap:11px; min-height:68px; padding:11px 13px; border:1px solid var(--border); border-radius:12px; background:var(--surface); transition:.18s ease; }
.video-inspector-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:11px; background:var(--surface-2); color:var(--muted); font-size:20px; }
.video-upload-inspector b,.video-upload-inspector small { display:block; min-width:0; overflow-wrap:anywhere; }.video-upload-inspector b { color:var(--text); font-size:10px; }.video-upload-inspector small { margin-top:4px; color:var(--muted); font-size:8px; }
.video-upload-inspector.ready { border-color:color-mix(in srgb,#22c55e 55%,var(--border)); background:color-mix(in srgb,#22c55e 6%,var(--surface)); }.video-upload-inspector.ready .video-inspector-icon { background:#22c55e; color:#fff; }.video-upload-inspector.ready .video-inspector-icon::before { content:"✓"; }.video-upload-inspector.ready .video-inspector-icon { font-size:0; }.video-upload-inspector.ready .video-inspector-icon::before { font-size:15px; }
.video-upload-inspector.error { border-color:color-mix(in srgb,#ef4444 60%,var(--border)); background:color-mix(in srgb,#ef4444 6%,var(--surface)); }.video-upload-inspector.error .video-inspector-icon { background:#ef4444; color:#fff; }.video-upload-inspector.error .video-inspector-icon::before { content:"!"; }.video-upload-inspector.error .video-inspector-icon { font-size:0; }.video-upload-inspector.error .video-inspector-icon::before { font-size:16px; font-weight:1000; }
.video-upload-progress { padding:13px; border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border)); border-radius:12px; background:color-mix(in srgb,var(--accent) 5%,var(--surface)); }.video-upload-progress[hidden] { display:none; }.video-upload-progress > div { display:flex; justify-content:space-between; gap:10px; margin-bottom:8px; color:var(--text); font-size:9px; font-weight:900; }.video-upload-progress progress { display:block; width:100%; height:9px; overflow:hidden; border:0; border-radius:999px; background:var(--surface-2); accent-color:var(--accent); }.video-upload-progress progress::-webkit-progress-bar { background:var(--surface-2); }.video-upload-progress progress::-webkit-progress-value { border-radius:999px; background:var(--accent); }.video-upload-progress > small { display:block; margin-top:8px; color:var(--muted); font-size:8px; line-height:1.45; }.video-upload-progress.success { border-color:color-mix(in srgb,#22c55e 55%,var(--border)); }.video-upload-progress.success progress { accent-color:#22c55e; }.video-upload-progress.error { border-color:color-mix(in srgb,#ef4444 60%,var(--border)); background:color-mix(in srgb,#ef4444 6%,var(--surface)); }.video-upload-progress.error progress { accent-color:#ef4444; }
.tutorial-upload-form button:disabled { cursor:not-allowed; opacity:.58; }
@media (max-width:700px) { .video-upload-facts { grid-template-columns:1fr; }.video-upload-facts > span { padding:10px 12px; }.video-upload-inspector { grid-template-columns:36px minmax(0,1fr); }.video-inspector-icon { width:36px; height:36px; } }

/* DEPORTES DJANGO V11 · ACCESO DIRECTO Y MINIMALISTA A /VIVO */
.live-page-v11 { padding-top:18px !important; }
.live-entry-v11 { display:grid; grid-template-columns:minmax(0,1fr) minmax(310px,420px); align-items:center; gap:24px; margin-bottom:10px; padding:20px 22px; border:1px solid var(--border); border-radius:18px; background:linear-gradient(110deg,color-mix(in srgb,var(--accent) 8%,var(--surface)),var(--surface) 52%,color-mix(in srgb,#ef4444 5%,var(--surface))); box-shadow:0 18px 55px color-mix(in srgb,var(--text) 6%,transparent); }
.live-entry-copy { min-width:0; }.live-pulse-v11 { display:flex; align-items:center; gap:8px; color:var(--accent); font-size:8px; font-weight:1000; letter-spacing:.14em; }.live-pulse-v11 i { width:8px; height:8px; border-radius:50%; background:#22c55e; box-shadow:0 0 0 5px rgba(34,197,94,.12); animation:livePulseV11 1.8s ease-in-out infinite; }
.live-entry-v11 h1 { margin:6px 0 3px; color:var(--text); font-size:clamp(1.8rem,4vw,3rem); line-height:.95; letter-spacing:-.045em; }.live-entry-v11 p { margin:0; color:var(--muted); font-size:10px; }
.live-entry-button-v11 { display:grid; grid-template-columns:50px minmax(0,1fr) auto; align-items:center; gap:13px; min-height:72px; padding:10px 15px; border:1px solid color-mix(in srgb,#ef233c 75%,var(--border)); border-radius:14px; background:linear-gradient(135deg,#ef233c,#c8102e); color:#fff; text-decoration:none; box-shadow:0 16px 36px rgba(225,29,53,.24); transition:transform .18s ease,filter .18s ease,box-shadow .18s ease; }
.live-entry-button-v11:hover { transform:translateY(-2px); filter:brightness(1.06); box-shadow:0 20px 42px rgba(225,29,53,.32); }.live-entry-play { display:grid; place-items:center; width:50px; height:50px; border-radius:12px; background:rgba(255,255,255,.15); font-size:17px; }.live-entry-button-v11 small,.live-entry-button-v11 strong { display:block; }.live-entry-button-v11 small { margin-bottom:3px; color:rgba(255,255,255,.72); font-size:7px; font-weight:1000; letter-spacing:.13em; }.live-entry-button-v11 strong { font-size:12px; letter-spacing:.02em; }.live-entry-button-v11 > b { font-size:22px; }
.streaming-showcase-v11 { margin-top:0 !important; padding-block:14px !important; }.streaming-showcase-v11 .section-number { background:var(--accent); color:#fff; }
.live-page-v11 .v8-watch-layout { scroll-margin-top:90px; }.live-page-v11 #reproductor-en-vivo { scroll-margin-top:90px; }.live-page-v11 .v8-watch-layout .player-stage { min-height:520px; }
.live-page-v11 .start-button-v11 { min-height:58px !important; padding:0 27px !important; border-radius:13px !important; font-size:11px !important; letter-spacing:.035em; box-shadow:0 18px 45px rgba(225,29,53,.34) !important; }.live-page-v11 .start-button-v11 > span { width:28px !important; height:28px !important; }
.live-ad-after-v11,.live-approved-v11 { margin-top:20px !important; }
.top-nav .live-nav-button { display:inline-flex; align-items:center; gap:7px; min-height:38px; padding:0 14px !important; border:1px solid color-mix(in srgb,#ef233c 65%,var(--border)) !important; border-radius:9px !important; background:color-mix(in srgb,#ef233c 10%,var(--surface)) !important; color:var(--text) !important; }.top-nav .live-nav-button span { color:#ef233c; font-size:9px; }.top-nav .live-nav-button:hover,.top-nav .live-nav-button.active { background:#e11d35 !important; border-color:#e11d35 !important; color:#fff !important; }.top-nav .live-nav-button:hover span,.top-nav .live-nav-button.active span { color:#fff; }
@keyframes livePulseV11 { 0%,100% { opacity:1; transform:scale(1); } 50% { opacity:.55; transform:scale(.82); } }
@media (max-width:900px) { .live-entry-v11 { grid-template-columns:1fr; }.live-entry-button-v11 { width:100%; max-width:520px; }.live-page-v11 .v8-watch-layout .player-stage { min-height:400px; } }
@media (max-width:720px) { .live-page-v11 { padding-top:9px !important; }.live-entry-v11 { gap:15px; margin-bottom:5px; padding:17px 14px; border-radius:15px; }.live-entry-v11 h1 { font-size:2rem; }.live-entry-v11 p { font-size:9px; line-height:1.45; }.live-entry-button-v11 { grid-template-columns:42px minmax(0,1fr) auto; min-height:62px; padding:9px 11px; }.live-entry-play { width:42px; height:42px; border-radius:10px; }.live-entry-button-v11 strong { font-size:10px; }.streaming-showcase-v11 { padding:11px 2px !important; }.live-page-v11 .v8-watch-layout .player-stage { min-height:270px; }.live-page-v11 .start-button-v11 { min-height:52px !important; padding:0 18px !important; font-size:9px !important; }.top-nav .live-nav-button { min-height:34px; padding:0 10px !important; } }
@media (prefers-reduced-motion:reduce) { .live-pulse-v11 i { animation:none; }.live-entry-button-v11 { transition:none; } }

@media (orientation: landscape) and (max-height: 520px) and (pointer: coarse) {
    .broadcast-topbar { display: none !important; }
    .site-header { position: relative !important; }
    .player-stage { min-height: 0; aspect-ratio: 16/9 !important; }
    .theme-menu { top: 62px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    body, .site-header, .theme-button { transition: none !important; }
}

/* =========================================================
   DEPORTES DJANGO V6 · PLANES / APP / COMPROBANTES / ADMIN
   ========================================================= */
.admin-v6 { max-width: 1440px; }
.admin-command-header { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin:8px 0 22px; padding:28px; border:1px solid var(--border); border-radius:18px; background:linear-gradient(135deg,var(--surface),var(--surface-2)); box-shadow:0 18px 50px color-mix(in srgb,var(--text) 7%,transparent); }
.admin-command-header h1 { margin:6px 0 4px; font-size:clamp(2.2rem,5vw,4.2rem); line-height:.9; letter-spacing:-.045em; }
.admin-command-header p { margin:0; color:var(--muted); }
.admin-command-actions { display:flex; gap:8px; flex-wrap:wrap; }
.admin-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:14px; }
.admin-kpis article { display:flex; align-items:center; gap:14px; min-height:116px; padding:18px; border:1px solid var(--border); border-radius:15px; background:var(--surface); }
.admin-kpis article.attention { border-color:color-mix(in srgb,var(--accent) 45%,var(--border)); background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 9%,var(--surface)),var(--surface)); }
.kpi-icon { display:grid; place-items:center; width:44px; height:44px; border-radius:12px; background:var(--surface-2); font-size:20px; }
.admin-kpis small { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.12em; }
.admin-kpis strong { display:block; margin:2px 0; font-size:2rem; line-height:1; }
.admin-kpis p { margin:0; color:var(--muted); font-size:11px; }
.admin-tabs-v6 { border-radius:12px; }
.admin-section-title p { margin:4px 0 0; color:var(--muted); font-size:12px; }

.plan-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; }
.plans-intro { margin:22px 0 12px; }
.plans-intro small { color:var(--accent); font-weight:900; letter-spacing:.12em; }
.plans-intro h2 { margin:4px 0; font-size:1.7rem; }
.plans-intro p { margin:0; color:var(--muted); }
.plan-card { position:relative; display:flex; flex-direction:column; min-height:230px; padding:20px; border:1px solid var(--border); border-radius:16px; background:var(--surface); color:var(--text); text-decoration:none; transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.plan-card:hover { transform:translateY(-2px); border-color:color-mix(in srgb,var(--accent) 50%,var(--border)); box-shadow:0 18px 42px color-mix(in srgb,var(--text) 8%,transparent); }
.plan-card.selected { border:2px solid var(--accent); background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 8%,var(--surface)),var(--surface)); }
.plan-card > small { color:var(--muted); font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.plan-card > strong { margin:15px 0 2px; font-size:2.3rem; line-height:1; }
.plan-card > b { color:var(--accent); font-size:13px; }
.plan-card p { flex:1; color:var(--muted); font-size:12px; line-height:1.5; }
.plan-select { display:block; padding-top:12px; border-top:1px solid var(--border-soft); font-size:10px; font-weight:900; letter-spacing:.08em; }
.plan-badge { position:absolute; top:12px; right:12px; padding:5px 8px; border-radius:999px; background:var(--surface-2); color:var(--muted); font-size:8px; font-weight:900; }
.plan-badge.best { background:var(--accent); color:white; }
.selected-price { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:12px 0; padding:14px; border-radius:11px; background:var(--surface-2); }
.selected-price span { color:var(--muted); font-size:11px; font-weight:800; }
.selected-price strong { font-size:1.7rem; }
.transfer-done-button { min-height:50px; }
.expiry-banner { display:flex; align-items:center; gap:14px; margin:10px 0 18px; padding:16px; border:1px solid color-mix(in srgb,#f59e0b 45%,var(--border)); border-radius:14px; background:color-mix(in srgb,#f59e0b 9%,var(--surface)); }
.expiry-banner > span { font-size:28px; }
.expiry-banner strong { font-size:16px; }
.expiry-banner p { margin:3px 0 0; color:var(--muted); font-size:12px; }

.receipt-shell { max-width:760px; margin:0 auto; display:grid; gap:14px; }
.receipt-info-card { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:16px; padding:18px; border:1px solid var(--border); border-radius:16px; background:var(--surface); }
.receipt-icon { display:grid; place-items:center; width:52px; height:52px; border-radius:14px; background:color-mix(in srgb,var(--accent) 12%,var(--surface-2)); color:var(--accent); font-size:24px; }
.receipt-info-card small { color:var(--accent); font-size:9px; font-weight:900; letter-spacing:.1em; }
.receipt-info-card h2 { margin:2px 0; }
.receipt-info-card p { margin:0; color:var(--muted); font-size:12px; line-height:1.5; }
.receipt-price { font-size:1.6rem; font-weight:900; }
.receipt-upload-card { padding:22px; border:1px solid var(--border); border-radius:16px; background:var(--surface); }
.receipt-drop { position:relative; display:grid; place-items:center; min-height:270px; padding:18px; border:2px dashed color-mix(in srgb,var(--accent) 35%,var(--border)); border-radius:14px; background:var(--surface-2); text-align:center; cursor:pointer; overflow:hidden; }
.receipt-drop input { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }
.upload-symbol { display:grid; place-items:center; width:56px; height:56px; margin-bottom:10px; border-radius:50%; background:var(--accent); color:white; font-size:28px; }
.receipt-drop strong { font-size:18px; }
.receipt-drop small { color:var(--muted); }
.receipt-drop img { position:absolute; inset:10px; width:calc(100% - 20px); height:calc(100% - 20px); object-fit:contain; border-radius:10px; background:var(--surface); pointer-events:none; }
.privacy-note { display:flex; gap:10px; margin:12px 0; padding:10px 12px; border-radius:10px; background:var(--surface-2); font-size:11px; }
.privacy-note b { color:var(--accent); }
.privacy-note span { color:var(--muted); }
.receipt-mini-link { display:inline-flex; align-items:center; min-height:32px; padding:7px 10px; border:1px solid var(--border); border-radius:8px; color:var(--text); text-decoration:none; font-size:10px; font-weight:900; }
button:disabled { opacity:.42; cursor:not-allowed !important; filter:grayscale(.5); }

.plan-admin-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:10px; }
.admin-plan-card { padding:16px; border:1px solid var(--border); border-radius:14px; background:var(--surface); }
.admin-plan-card.disabled-card { opacity:.72; }
.admin-plan-top { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:12px; }
.admin-plan-top small { color:var(--muted); font-size:8px; font-weight:900; letter-spacing:.12em; }
.admin-plan-top h3 { margin:3px 0 0; }
.inline-title-input { min-height:36px !important; padding:6px 8px !important; border:0 !important; background:transparent !important; font-size:18px !important; font-weight:900 !important; }
.plan-edit-fields { display:grid; grid-template-columns:1fr 1fr .7fr; gap:8px; }
.create-plan-card { background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 5%,var(--surface)),var(--surface)); }
.row-actions.compact { margin-top:8px; }

.app-admin-layout { display:grid; grid-template-columns:minmax(280px,.8fr) minmax(380px,1.2fr); gap:12px; }
.admin-card-form,.release-list { padding:16px; border:1px solid var(--border); border-radius:14px; background:var(--surface); }
.file-admin-drop { padding:14px; border:1px dashed var(--border); border-radius:10px; background:var(--surface-2); }
.file-admin-drop input { margin-top:8px; }
.release-list { display:grid; align-content:start; gap:8px; }
.release-row { display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; align-items:center; gap:10px; padding:10px; border:1px solid var(--border-soft); border-radius:10px; }
.release-file-icon { display:grid; place-items:center; width:34px; height:34px; border-radius:9px; background:var(--surface-2); color:var(--accent); }
.release-row strong,.release-row small { display:block; }
.release-row small { margin-top:2px; color:var(--muted); font-size:9px; }
.download-counter-badge { padding:8px 10px; border-radius:9px; background:var(--accent); color:#fff; font-size:10px; font-weight:900; }
.download-audit { display:flex; gap:7px; overflow:auto; margin-top:12px; padding-top:12px; border-top:1px solid var(--border-soft); }
.download-audit > strong { flex:0 0 auto; padding:8px 4px; font-size:10px; }
.download-audit > span { flex:0 0 auto; min-width:150px; padding:8px 10px; border:1px solid var(--border); border-radius:9px; background:var(--surface); }
.download-audit b,.download-audit small { display:block; }
.download-audit small { color:var(--muted); font-size:8px; }
.manual-approve-form { display:flex; gap:6px; }
.manual-approve-form input { width:62px; min-height:34px !important; padding:5px 7px !important; font-size:12px !important; }
.settings-grid-v6 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.settings-card { padding:16px; border:1px solid var(--border); border-radius:13px; background:var(--surface); }
.settings-card h3 { margin:0 0 10px; }
.settings-save { grid-column:1/-1; justify-self:start; }

.app-page { max-width:1200px; margin:0 auto; padding:64px 20px 80px; }
.app-hero { display:grid; grid-template-columns:minmax(260px,.75fr) minmax(320px,1.25fr); align-items:center; gap:60px; min-height:520px; }
.app-device-card { position:relative; width:min(100%,340px); aspect-ratio:.72; margin:auto; padding:18px; border:8px solid #111; border-radius:42px; background:linear-gradient(145deg,#1b1d24,#08090c); box-shadow:0 35px 80px rgba(0,0,0,.28); overflow:hidden; }
.app-device-card:before { content:""; position:absolute; top:8px; left:50%; width:88px; height:18px; transform:translateX(-50%); border-radius:20px; background:#050505; }
.app-logo-big { display:grid; place-items:center; width:92px; height:92px; margin:90px auto 60px; border-radius:24px; background:var(--accent); color:white; font-size:54px; font-weight:1000; font-style:italic; }
.app-screen-lines { display:grid; gap:12px; }
.app-screen-lines i { height:52px; border-radius:12px; background:rgba(255,255,255,.08); }
.app-screen-lines i:nth-child(2) { width:76%; }
.app-hero-copy h1 { margin:8px 0 12px; font-size:clamp(3rem,7vw,6rem); line-height:.85; letter-spacing:-.055em; }
.app-hero-copy > p { max-width:620px; color:var(--muted); font-size:15px; line-height:1.65; }
.release-meta { display:flex; gap:8px; flex-wrap:wrap; margin:18px 0; }
.release-meta span { padding:7px 10px; border:1px solid var(--border); border-radius:999px; background:var(--surface); font-size:10px; }
.app-download-button { display:inline-flex; align-items:center; gap:12px; min-height:54px; margin-top:8px; font-size:13px; }
.app-download-button small { opacity:.75; }
.app-personal-count { display:block; margin-top:9px; color:var(--muted); }
.app-access-actions { display:flex; gap:8px; flex-wrap:wrap; margin:20px 0 10px; }
.app-benefits { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.app-benefits article { display:flex; gap:12px; padding:18px; border:1px solid var(--border); border-radius:14px; background:var(--surface); }
.app-benefits article > span { display:grid; place-items:center; flex:0 0 38px; height:38px; border-radius:10px; background:var(--surface-2); color:var(--accent); font-weight:900; }
.app-benefits p { margin:3px 0 0; color:var(--muted); font-size:11px; line-height:1.5; }

@media (max-width: 980px) {
  .admin-kpis { grid-template-columns:repeat(2,1fr); }
  .app-admin-layout,.app-hero { grid-template-columns:1fr; }
  .app-device-card { width:250px; }
  .app-logo-big { margin-top:65px; margin-bottom:35px; }
  .app-benefits { grid-template-columns:1fr; }
  .settings-grid-v6 { grid-template-columns:1fr; }
  .settings-save { grid-column:auto; width:100%; }
}
@media (max-width: 700px) {
  .admin-command-header { align-items:stretch; flex-direction:column; padding:18px 14px; }
  .admin-command-actions { display:grid; grid-template-columns:1fr; }
  .admin-command-actions a { width:100%; }
  .admin-kpis { grid-template-columns:1fr 1fr; }
  .admin-kpis article { min-height:96px; padding:12px; }
  .kpi-icon { width:36px; height:36px; }
  .admin-kpis strong { font-size:1.55rem; }
  .plan-admin-grid { grid-template-columns:1fr; }
  .plan-edit-fields { grid-template-columns:1fr 1fr; }
  .plan-edit-fields label:last-child { grid-column:1/-1; }
  .release-row { grid-template-columns:auto minmax(0,1fr); }
  .release-row > .status-pill,.release-row > .row-actions { grid-column:1/-1; }
  .receipt-info-card { grid-template-columns:auto 1fr; }
  .receipt-price { grid-column:1/-1; padding-top:8px; border-top:1px solid var(--border-soft); }
  .app-page { padding:38px 12px 56px; }
  .app-hero { gap:30px; min-height:0; }
  .app-device-card { width:190px; border-width:6px; border-radius:28px; }
  .app-device-card:before { width:64px; height:12px; }
  .app-logo-big { width:66px; height:66px; margin:48px auto 28px; border-radius:18px; font-size:38px; }
  .app-screen-lines i { height:36px; }
  .app-hero-copy h1 { font-size:clamp(2.8rem,18vw,4.2rem); }
  .app-access-actions { display:grid; }
  .receipt-upload-card { padding:12px; }
  .receipt-drop { min-height:220px; }
}
@media (max-width: 430px) {
  .admin-kpis { grid-template-columns:1fr; }
  .plan-edit-fields { grid-template-columns:1fr; }
  .plan-edit-fields label:last-child { grid-column:auto; }
  .manual-approve-form { width:100%; }
  .manual-approve-form input { width:70px; }
  .manual-approve-form button { flex:1; }
}
