/* GS Frontend Core 0.60.0 — Reparación de TV */

/* =========================================================
   GS TV — placeholder de hidratación dinámica
   ========================================================= */
.gstv__loading {
    min-height: 170px;
    margin: 0;
    display: grid;
    place-items: center;
    text-align: center;
    color: #91a8bb;
    font-family: "Poppins", Arial, sans-serif;
    font-size: 13px;
    line-height: 1.55;
}

@media (max-width: 767px) {
    .gstv__loading { min-height: 130px; }
}

/* ===== Hero ===== */
/* =========================================================
   GAMMERS STYLE
   REPARACIÓN DE PANTALLAS DE TV — HERO
   ID INTERNO HTML: reparacion-tv-inicio
   ========================================================= */

#reparacion-tv-inicio {
    --tv-bg: #02070f;
    --tv-bg-2: #05101b;

    --tv-cyan: #20d5f3;
    --tv-blue: #3286ff;
    --tv-violet: #8b5cf6;

    --tv-green: #43e58b;
    --tv-yellow: #ffc857;
    --tv-orange: #ff9f43;
    --tv-red: #ff637d;

    --tv-text: #edf8ff;
    --tv-muted: #91a8bb;
    --tv-muted-2: #677f91;

    position: relative;
    isolation: isolate;

    width: 100%;
    margin: 0;
    padding: 0;

    overflow: hidden;

    color: var(--tv-text);

    background:
        radial-gradient(
            circle at 12% 17%,
            rgba(32, 213, 243, 0.075),
            transparent 30%
        ),
        radial-gradient(
            circle at 88% 18%,
            rgba(139, 92, 246, 0.070),
            transparent 32%
        ),
        radial-gradient(
            circle at 74% 88%,
            rgba(67, 229, 139, 0.030),
            transparent 30%
        ),
        linear-gradient(
            180deg,
            #02070f 0%,
            #05101b 52%,
            #02070f 100%
        );

    font-family:
        "Poppins",
        Arial,
        sans-serif;

    scroll-margin-top: 90px;
    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}

#reparacion-tv-inicio *,
#reparacion-tv-inicio *::before,
#reparacion-tv-inicio *::after {
    box-sizing: border-box;

    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}


/* =========================================================
   BACKGROUND GRID
   ========================================================= */

#reparacion-tv-inicio .gstvh-grid {
    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: 0.28;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.045) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.045) 1px,
            transparent 1px
        );

    background-size: 48px 48px;

    mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 93%,
            transparent 100%
        );

    -webkit-mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 93%,
            transparent 100%
        );
}


/* =========================================================
   DECORATIVE CIRCUITS
   ========================================================= */

#reparacion-tv-inicio .gstvh-circuit {
    position: absolute;

    width: 360px;
    height: 360px;

    pointer-events: none;

    opacity: 0.28;
}

#reparacion-tv-inicio .gstvh-circuit.one {
    left: -170px;
    top: 230px;

    border:
        1px solid rgba(32, 213, 243, 0.08);

    border-radius: 50%;

    animation:
        gstvh-spin
        48s linear infinite;
}

#reparacion-tv-inicio .gstvh-circuit.two {
    right: -190px;
    bottom: -60px;

    width: 430px;
    height: 430px;

    border:
        1px dashed rgba(139, 92, 246, 0.07);

    border-radius: 50%;

    animation:
        gstvh-spin
        58s linear infinite reverse;
}

#reparacion-tv-inicio .gstvh-circuit::before,
#reparacion-tv-inicio .gstvh-circuit::after {
    content: "";

    position: absolute;

    border-radius: 50%;
}

#reparacion-tv-inicio .gstvh-circuit::before {
    inset: 68px;

    border:
        1px dashed rgba(32, 213, 243, 0.09);
}

#reparacion-tv-inicio .gstvh-circuit::after {
    inset: 138px;

    border:
        1px solid rgba(139, 92, 246, 0.08);
}

@keyframes gstvh-spin {

    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
   PAGE SCAN
   ========================================================= */

#reparacion-tv-inicio .gstvh-page-scan {
    position: absolute;
    inset: 0;

    overflow: hidden;

    pointer-events: none;
}

#reparacion-tv-inicio .gstvh-page-scan::before {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    top: 0;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(32, 213, 243, 0.28),
            rgba(139, 92, 246, 0.16),
            transparent
        );

    box-shadow:
        0 0 18px rgba(32, 213, 243, 0.09);

    animation:
        gstvh-page-scan
        11.5s linear infinite;
}

@keyframes gstvh-page-scan {

    0% {
        transform: translateY(0);
        opacity: 0;
    }

    8% {
        opacity: 0.42;
    }

    92% {
        opacity: 0.18;
    }

    100% {
        transform: translateY(2200px);
        opacity: 0;
    }
}


/* =========================================================
   SHELL
   ========================================================= */

#reparacion-tv-inicio .gstvh-shell {
    position: relative;
    z-index: 2;

    width:
        min(
            1180px,
            calc(100% - 48px)
        );

    margin: 0 auto;

    padding:
        104px 0 82px;
}


/* =========================================================
   HERO GRID
   ========================================================= */

#reparacion-tv-inicio .gstvh-main {
    display: grid;

    grid-template-columns:
        minmax(0, 1.03fr)
        minmax(430px, 0.97fr);

    gap: 44px;

    align-items: center;
}


/* =========================================================
   COPY
   ========================================================= */

#reparacion-tv-inicio .gstvh-copy {
    min-width: 0;
}


/* =========================================================
   KICKER
   ========================================================= */

#reparacion-tv-inicio .gstvh-kicker {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    margin-bottom: 17px;
    padding:
        7px 11px;

    border:
        1px solid rgba(32, 213, 243, 0.20);

    border-radius: 999px;

    background:
        rgba(7, 28, 41, 0.42);

    color: #9eeeff;

    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;

    letter-spacing: 0.11em;
    text-transform: uppercase;
}

#reparacion-tv-inicio .gstvh-kicker::before {
    content: "";

    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: var(--tv-cyan);

    box-shadow:
        0 0 8px rgba(32, 213, 243, 0.80),
        0 0 18px rgba(32, 213, 243, 0.22);
}


/* =========================================================
   TITLE
   ========================================================= */

#reparacion-tv-inicio .gstvh-title {
    max-width: 770px;

    margin: 0;

    color: #f5fbff;

    font-size:
        clamp(
            38px,
            5vw,
            66px
        );

    line-height: 1.025;
    font-weight: 700;

    letter-spacing: -0.045em;
}

#reparacion-tv-inicio .gstvh-title span {
    color: var(--tv-cyan);
}


/* =========================================================
   LEAD
   ========================================================= */

#reparacion-tv-inicio .gstvh-lead {
    max-width: 760px;

    margin:
        21px 0 0;

    color: #9ab0c0;

    font-size: 15px;
    line-height: 1.8;
}


/* =========================================================
   PRINCIPLE
   ========================================================= */

#reparacion-tv-inicio .gstvh-principle {
    position: relative;

    max-width: 740px;

    margin-top: 20px;
    padding:
        17px 18px 17px 20px;

    overflow: hidden;

    border:
        1px solid rgba(32, 213, 243, 0.14);

    border-radius: 14px;

    background:
        linear-gradient(
            135deg,
            rgba(32, 213, 243, 0.045),
            rgba(139, 92, 246, 0.025)
        );
}

#reparacion-tv-inicio .gstvh-principle::before {
    content: "";

    position: absolute;

    left: 0;
    top: 13px;
    bottom: 13px;

    width: 2px;

    background:
        linear-gradient(
            180deg,
            transparent,
            var(--tv-cyan),
            transparent
        );
}

#reparacion-tv-inicio .gstvh-principle strong {
    display: block;

    margin-bottom: 5px;

    color: #e7faff;

    font-size: 13px;
    line-height: 1.5;
    font-weight: 600;
}

#reparacion-tv-inicio .gstvh-principle span {
    display: block;

    color: #8199a9;

    font-size: 10px;
    line-height: 1.67;
}


/* =========================================================
   PANEL DAMAGE NOTICE
   ========================================================= */

#reparacion-tv-inicio .gstvh-panel-note {
    position: relative;

    max-width: 740px;

    margin-top: 11px;
    padding:
        15px 16px;

    border:
        1px solid rgba(255, 200, 87, 0.13);

    border-radius: 12px;

    background:
        rgba(255, 200, 87, 0.025);
}

#reparacion-tv-inicio .gstvh-panel-note-label {
    display: flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 5px;

    color: #e3c976;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    letter-spacing: 0.07em;
    text-transform: uppercase;
}

#reparacion-tv-inicio .gstvh-panel-note-label::before {
    content: "!";

    display: grid;
    place-items: center;

    width: 18px;
    height: 18px;

    flex: 0 0 18px;

    border:
        1px solid rgba(255, 200, 87, 0.20);

    border-radius: 50%;

    color: #ffe39c;

    font-size: 8px;
    font-weight: 700;
}

#reparacion-tv-inicio .gstvh-panel-note p {
    margin: 0;

    color: #8f876e;

    font-size: 9.5px;
    line-height: 1.62;
}

#reparacion-tv-inicio .gstvh-panel-note strong {
    color: #e5d8ad;
    font-weight: 600;
}


/* =========================================================
   ACTIONS
   ========================================================= */

#reparacion-tv-inicio .gstvh-actions {
    display: flex;
    flex-wrap: wrap;

    gap: 10px;

    margin-top: 24px;
}

#reparacion-tv-inicio .gstvh-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 9px;

    min-height: 49px;

    padding:
        12px 17px;

    border-radius: 11px;

    text-decoration: none;

    font-size: 11px;
    line-height: 1.3;
    font-weight: 600;

    transition:
        transform 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

#reparacion-tv-inicio .gstvh-btn.whatsapp {
    border:
        1px solid rgba(67, 229, 139, 0.30);

    background:
        linear-gradient(
            135deg,
            rgba(67, 229, 139, 0.17),
            rgba(67, 229, 139, 0.07)
        );

    color: #b9f8d4;

    box-shadow:
        0 0 24px rgba(67, 229, 139, 0.055);
}

#reparacion-tv-inicio .gstvh-btn.whatsapp .gs-global-wa-icon {
    margin-right: 0 !important;
    flex: 0 0 auto;
}

#reparacion-tv-inicio .gstvh-btn.phone {
    border:
        1px solid rgba(32, 213, 243, 0.24);

    background:
        rgba(32, 213, 243, 0.045);

    color: #b8f3ff;
}

#reparacion-tv-inicio .gstvh-btn-icon {
    display: grid;
    place-items: center;

    width: 22px;
    height: 22px;

    flex: 0 0 22px;

    border:
        1px solid currentColor;

    border-radius: 7px;

    opacity: 0.72;

    font-size: 7px;
    line-height: 1;
    font-weight: 700;
}


/* =========================================================
   BADGES
   ========================================================= */

#reparacion-tv-inicio .gstvh-badges {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 8px;

    max-width: 740px;

    margin-top: 22px;
}

#reparacion-tv-inicio .gstvh-badge {
    display: flex;
    align-items: center;

    gap: 9px;

    min-width: 0;

    padding:
        10px 11px;

    border:
        1px solid rgba(92, 208, 255, 0.085);

    border-radius: 9px;

    background:
        rgba(5, 17, 30, 0.55);

    color: #829aaa;

    font-size: 9px;
    line-height: 1.4;
    font-weight: 500;
}

#reparacion-tv-inicio .gstvh-badge::before {
    content: "";

    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.45);
}


/* =========================================================
   HUD
   ========================================================= */

#reparacion-tv-inicio .gstvh-hud {
    position: relative;

    min-width: 0;

    padding: 22px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.18);

    border-radius: 23px;

    background:
        radial-gradient(
            circle at 50% 15%,
            rgba(32, 213, 243, 0.070),
            transparent 35%
        ),
        linear-gradient(
            145deg,
            rgba(24, 18, 45, 0.42),
            rgba(4, 12, 22, 0.98)
        );

    box-shadow:
        0 25px 70px rgba(0, 0, 0, 0.25);
}

#reparacion-tv-inicio .gstvh-hud::before {
    content: "";

    position: absolute;
    inset: 0;

    opacity: 0.30;

    pointer-events: none;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        );

    background-size: 28px 28px;
}


/* =========================================================
   HUD HEAD
   ========================================================= */

#reparacion-tv-inicio .gstvh-hud-head {
    position: relative;
    z-index: 4;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 10px;
}

#reparacion-tv-inicio .gstvh-hud-code {
    color: #c5b8ff;

    font-size: 10px;
    line-height: 1.3;
    font-weight: 700;

    letter-spacing: 0.07em;
    text-transform: uppercase;
}

#reparacion-tv-inicio .gstvh-hud-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        5px 8px;

    border:
        1px solid rgba(67, 229, 139, 0.16);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.035);

    color: #99efbd;

    font-size: 9px;
    line-height: 1.2;
    font-weight: 600;
}

#reparacion-tv-inicio .gstvh-hud-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.55);
}


/* =========================================================
   SCREEN AREA
   ========================================================= */

#reparacion-tv-inicio .gstvh-screen-area {
    position: relative;
    z-index: 2;

    min-height: 455px;

    margin-top: 17px;

    overflow: hidden;

    border:
        1px solid rgba(92, 208, 255, 0.08);

    border-radius: 16px;

    background:
        radial-gradient(
            circle at 50% 42%,
            rgba(32, 213, 243, 0.075),
            transparent 35%
        ),
        rgba(3, 12, 22, 0.72);
}


/* =========================================================
   TV FRAME
   ========================================================= */

#reparacion-tv-inicio .gstvh-tv {
    position: absolute;

    left: 50%;
    top: 45%;

    width: 62%;
    max-width: 310px;

    transform:
        translate(-50%, -50%);

    animation:
        gstvh-tv-float
        5.5s ease-in-out infinite;
}

@keyframes gstvh-tv-float {

    0%,
    100% {
        transform:
            translate(-50%, -50%)
            translateY(0);
    }

    50% {
        transform:
            translate(-50%, -50%)
            translateY(-5px);
    }
}

#reparacion-tv-inicio .gstvh-tv-frame {
    position: relative;

    width: 100%;
    aspect-ratio: 16 / 10;

    padding: 7px;

    border:
        1px solid rgba(32, 213, 243, 0.25);

    border-radius: 13px;

    background:
        linear-gradient(
            145deg,
            rgba(29, 44, 57, 0.90),
            rgba(5, 13, 22, 0.98)
        );

    box-shadow:
        0 0 40px rgba(32, 213, 243, 0.08),
        0 22px 38px rgba(0, 0, 0, 0.28);
}


/* =========================================================
   DISPLAY
   ========================================================= */

#reparacion-tv-inicio .gstvh-display {
    position: relative;

    width: 100%;
    height: 100%;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.12);

    border-radius: 8px;

    background:
        radial-gradient(
            circle at 48% 44%,
            rgba(32, 213, 243, 0.11),
            transparent 35%
        ),
        linear-gradient(
            135deg,
            #06111d,
            #091529 55%,
            #100e25
        );
}

#reparacion-tv-inicio .gstvh-display::before {
    content: "";

    position: absolute;
    inset: 0;

    opacity: 0.42;

    background:
        repeating-linear-gradient(
            180deg,
            transparent 0,
            transparent 5px,
            rgba(32, 213, 243, 0.035) 6px
        );
}

#reparacion-tv-inicio .gstvh-display::after {
    content: "";

    position: absolute;

    left: -20%;
    top: 0;

    width: 28%;
    height: 100%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(32, 213, 243, 0.12),
            transparent
        );

    transform: skewX(-14deg);

    animation:
        gstvh-screen-sweep
        5.8s ease-in-out infinite;
}

@keyframes gstvh-screen-sweep {

    0% {
        left: -35%;
        opacity: 0;
    }

    18% {
        opacity: 0.55;
    }

    68% {
        opacity: 0.18;
    }

    100% {
        left: 115%;
        opacity: 0;
    }
}


/* =========================================================
   DISPLAY CORE
   ========================================================= */

#reparacion-tv-inicio .gstvh-display-core {
    position: absolute;

    z-index: 5;

    left: 50%;
    top: 50%;

    transform:
        translate(-50%, -50%);

    width: 82%;

    text-align: center;
}

#reparacion-tv-inicio .gstvh-display-core span {
    display: block;

    margin-bottom: 7px;

    color: #81dff0;

    font-size: 8px;
    line-height: 1.25;
    font-weight: 700;

    letter-spacing: 0.08em;
    text-transform: uppercase;
}

#reparacion-tv-inicio .gstvh-display-core strong {
    display: block;

    color: #e8faff;

    font-size: 17px;
    line-height: 1.25;
    font-weight: 700;
}

#reparacion-tv-inicio .gstvh-display-core small {
    display: block;

    margin-top: 7px;

    color: #718b9b;

    font-size: 7px;
    line-height: 1.45;
    font-weight: 600;

    letter-spacing: 0.04em;
    text-transform: uppercase;
}


/* =========================================================
   TV STAND
   ========================================================= */

#reparacion-tv-inicio .gstvh-tv-neck {
    width: 34px;
    height: 17px;

    margin: 0 auto;

    background:
        linear-gradient(
            180deg,
            rgba(32, 213, 243, 0.15),
            rgba(15, 29, 40, 0.95)
        );

    border-left:
        1px solid rgba(32, 213, 243, 0.12);

    border-right:
        1px solid rgba(32, 213, 243, 0.12);
}

#reparacion-tv-inicio .gstvh-tv-base {
    width: 116px;
    height: 6px;

    margin: 0 auto;

    border:
        1px solid rgba(32, 213, 243, 0.13);

    border-radius: 50%;

    background:
        rgba(9, 20, 31, 0.95);

    box-shadow:
        0 4px 15px rgba(0, 0, 0, 0.35);
}


/* =========================================================
   SCREEN CORNERS
   ========================================================= */

#reparacion-tv-inicio .gstvh-corner {
    position: absolute;

    z-index: 6;

    width: 18px;
    height: 18px;
}

#reparacion-tv-inicio .gstvh-corner.tl {
    left: 10px;
    top: 10px;

    border-left:
        1px solid rgba(32, 213, 243, 0.45);

    border-top:
        1px solid rgba(32, 213, 243, 0.45);
}

#reparacion-tv-inicio .gstvh-corner.tr {
    right: 10px;
    top: 10px;

    border-right:
        1px solid rgba(139, 92, 246, 0.45);

    border-top:
        1px solid rgba(139, 92, 246, 0.45);
}

#reparacion-tv-inicio .gstvh-corner.bl {
    left: 10px;
    bottom: 10px;

    border-left:
        1px solid rgba(32, 213, 243, 0.35);

    border-bottom:
        1px solid rgba(32, 213, 243, 0.35);
}

#reparacion-tv-inicio .gstvh-corner.br {
    right: 10px;
    bottom: 10px;

    border-right:
        1px solid rgba(139, 92, 246, 0.35);

    border-bottom:
        1px solid rgba(139, 92, 246, 0.35);
}


/* =========================================================
   DIAGNOSTIC NODES
   ========================================================= */

#reparacion-tv-inicio .gstvh-node {
    position: absolute;

    z-index: 10;

    width: 128px;

    padding:
        9px 10px;

    border-radius: 9px;

    background:
        rgba(5, 16, 29, 0.94);
}

#reparacion-tv-inicio .gstvh-node.power {
    left: 4%;
    top: 12%;

    border:
        1px solid rgba(255, 200, 87, 0.17);
}

#reparacion-tv-inicio .gstvh-node.backlight {
    right: 4%;
    top: 12%;

    border:
        1px solid rgba(32, 213, 243, 0.17);
}

#reparacion-tv-inicio .gstvh-node.video {
    left: 4%;
    bottom: 22%;

    border:
        1px solid rgba(50, 134, 255, 0.17);
}

#reparacion-tv-inicio .gstvh-node.panel {
    right: 4%;
    bottom: 22%;

    border:
        1px solid rgba(139, 92, 246, 0.17);
}

#reparacion-tv-inicio .gstvh-node-code {
    display: block;

    margin-bottom: 4px;

    color: var(--node-color);

    font-size: 8px;
    line-height: 1.25;
    font-weight: 700;

    text-transform: uppercase;
}

#reparacion-tv-inicio .gstvh-node.power {
    --node-color: #ffc857;
}

#reparacion-tv-inicio .gstvh-node.backlight {
    --node-color: #20d5f3;
}

#reparacion-tv-inicio .gstvh-node.video {
    --node-color: #3286ff;
}

#reparacion-tv-inicio .gstvh-node.panel {
    --node-color: #8b5cf6;
}

#reparacion-tv-inicio .gstvh-node strong {
    display: block;

    color: #d9e9f2;

    font-size: 9px;
    line-height: 1.35;
    font-weight: 600;
}

#reparacion-tv-inicio .gstvh-node span:last-child {
    display: block;

    margin-top: 4px;

    color: #728b9b;

    font-size: 7px;
    line-height: 1.42;
}


/* =========================================================
   CONNECTIONS
   ========================================================= */

#reparacion-tv-inicio .gstvh-line {
    position: absolute;

    z-index: 3;

    height: 1px;

    transform-origin: left center;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(32, 213, 243, 0.36),
            transparent
        );

    animation:
        gstvh-line-pulse
        3s ease-in-out infinite;
}

#reparacion-tv-inicio .gstvh-line.l1 {
    left: 21%;
    top: 27%;

    width: 30%;

    transform: rotate(20deg);
}

#reparacion-tv-inicio .gstvh-line.l2 {
    left: 51%;
    top: 40%;

    width: 29%;

    transform: rotate(-20deg);
}

#reparacion-tv-inicio .gstvh-line.l3 {
    left: 21%;
    bottom: 31%;

    width: 30%;

    transform: rotate(-19deg);
}

#reparacion-tv-inicio .gstvh-line.l4 {
    left: 50%;
    bottom: 31%;

    width: 30%;

    transform: rotate(20deg);
}

@keyframes gstvh-line-pulse {

    0%,
    100% {
        opacity: 0.14;
    }

    50% {
        opacity: 0.75;
    }
}


/* =========================================================
   HUD ROUTE
   ========================================================= */

#reparacion-tv-inicio .gstvh-hud-route {
    position: absolute;

    z-index: 12;

    left: 13px;
    right: 13px;
    bottom: 13px;

    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 4px;
}

#reparacion-tv-inicio .gstvh-route-step {
    min-width: 0;

    padding:
        7px 3px;

    border:
        1px solid rgba(92, 208, 255, 0.08);

    border-radius: 7px;

    background:
        rgba(5, 17, 30, 0.85);

    color: #778f9f;

    text-align: center;

    font-size: 7px;
    line-height: 1.35;
    font-weight: 600;
}


/* =========================================================
   HUD NOTE
   ========================================================= */

#reparacion-tv-inicio .gstvh-hud-note {
    position: relative;
    z-index: 3;

    margin-top: 14px;
    padding:
        13px;

    border:
        1px solid rgba(255, 200, 87, 0.11);

    border-radius: 10px;

    background:
        rgba(255, 200, 87, 0.022);

    color: #8f876d;

    font-size: 9px;
    line-height: 1.58;
}

#reparacion-tv-inicio .gstvh-hud-note strong {
    color: #e8dbaa;
    font-weight: 600;
}


/* =========================================================
   TRUST CARDS
   ========================================================= */

#reparacion-tv-inicio .gstvh-trust {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 10px;

    margin-top: 20px;
}

#reparacion-tv-inicio .gstvh-trust-card {
    --trust-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        18px 15px 16px;

    overflow: hidden;

    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#reparacion-tv-inicio .gstvh-trust-card.power {
    --trust-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.13);
}

#reparacion-tv-inicio .gstvh-trust-card.backlight {
    --trust-color: #20d5f3;

    border:
        1px solid rgba(32, 213, 243, 0.13);
}

#reparacion-tv-inicio .gstvh-trust-card.video {
    --trust-color: #3286ff;

    border:
        1px solid rgba(50, 134, 255, 0.13);
}

#reparacion-tv-inicio .gstvh-trust-card.panel {
    --trust-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.13);
}

#reparacion-tv-inicio .gstvh-trust-card::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 72px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--trust-color),
            transparent
        );
}

#reparacion-tv-inicio .gstvh-trust-code {
    display: block;

    margin-bottom: 7px;

    color: var(--trust-color);

    font-size: 9px;
    line-height: 1.25;
    font-weight: 700;

    text-transform: uppercase;
}

#reparacion-tv-inicio .gstvh-trust-title {
    display: block;

    margin-bottom: 5px;

    color: #dcebf4;

    font-size: 11px;
    line-height: 1.42;
    font-weight: 600;
}

#reparacion-tv-inicio .gstvh-trust-copy {
    display: block;

    color: #748d9d;

    font-size: 9px;
    line-height: 1.58;
}


/* =========================================================
   TERMINAL
   ========================================================= */

#reparacion-tv-inicio .gstvh-terminal {
    margin-top: 18px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.18);

    border-radius: 18px;

    background:
        linear-gradient(
            155deg,
            rgba(10, 18, 38, 0.95),
            rgba(4, 9, 20, 0.98)
        );
}

#reparacion-tv-inicio .gstvh-terminal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    min-height: 44px;

    padding:
        10px 14px;

    border-bottom:
        1px solid rgba(118, 167, 255, 0.10);

    background:
        rgba(8, 18, 34, 0.75);
}

#reparacion-tv-inicio .gstvh-terminal-dots {
    display: flex;

    gap: 6px;
}

#reparacion-tv-inicio .gstvh-terminal-dots span {
    width: 6px;
    height: 6px;

    border-radius: 50%;
}

#reparacion-tv-inicio
.gstvh-terminal-dots span:nth-child(1) {
    background: var(--tv-red);
}

#reparacion-tv-inicio
.gstvh-terminal-dots span:nth-child(2) {
    background: var(--tv-yellow);
}

#reparacion-tv-inicio
.gstvh-terminal-dots span:nth-child(3) {
    background: var(--tv-green);
}

#reparacion-tv-inicio .gstvh-terminal-name {
    color: #71889d;

    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;

    letter-spacing: 0.08em;
    text-transform: uppercase;
}

#reparacion-tv-inicio .gstvh-terminal-body {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr) auto;

    gap: 22px;

    align-items: center;

    padding:
        20px 21px;
}

#reparacion-tv-inicio .gstvh-terminal-route {
    display: flex;
    flex-wrap: wrap;

    gap: 7px;
}

#reparacion-tv-inicio .gstvh-terminal-route span {
    display: inline-flex;
    align-items: center;

    min-height: 29px;

    padding:
        6px 9px;

    border:
        1px solid rgba(92, 208, 255, 0.08);

    border-radius: 7px;

    background:
        rgba(6, 18, 31, 0.52);

    color: #879eae;

    font-size: 9px;
    line-height: 1.35;
    font-weight: 500;
}

#reparacion-tv-inicio .gstvh-terminal-state {
    display: inline-flex;
    align-items: center;

    gap: 7px;

    flex-shrink: 0;

    padding:
        8px 10px;

    border:
        1px solid rgba(67, 229, 139, 0.14);

    border-radius: 9px;

    background:
        rgba(67, 229, 139, 0.035);

    color: #9cefc0;

    font-size: 9px;
    line-height: 1.35;
    font-weight: 600;
}

#reparacion-tv-inicio .gstvh-terminal-state::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.55);
}


/* =========================================================
   FOOTER
   ========================================================= */

#reparacion-tv-inicio .gstvh-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 18px;

    margin-top: 22px;
    padding: 0 3px;

    color: #60788c;

    font-size: 10px;
    line-height: 1.45;
    font-weight: 500;

    letter-spacing: 0.05em;
    text-transform: uppercase;
}

#reparacion-tv-inicio .gstvh-footer-status {
    display: flex;
    align-items: center;

    gap: 7px;

    color: #7791a5;
}

#reparacion-tv-inicio .gstvh-footer-status::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


#reparacion-tv-inicio .gstvh-btn:focus-visible {
    outline: 2px solid rgba(32, 213, 243, 0.92);
    outline-offset: 4px;
    text-decoration: none;
}

/* =========================================================
   HOVER — DESKTOP
   ========================================================= */

@media (hover: hover) {

    #reparacion-tv-inicio .gstvh-btn:hover {
        transform: translateY(-2px);
    }

    #reparacion-tv-inicio .gstvh-btn.whatsapp:hover {
        border-color:
            rgba(67, 229, 139, 0.48);

        box-shadow:
            0 10px 28px rgba(67, 229, 139, 0.10);
    }

    #reparacion-tv-inicio .gstvh-btn.phone:hover {
        border-color:
            rgba(32, 213, 243, 0.42);

        box-shadow:
            0 10px 28px rgba(32, 213, 243, 0.08);
    }
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    #reparacion-tv-inicio .gstvh-shell {
        width:
            min(
                100% - 40px,
                920px
            );

        padding:
            84px 0 76px;
    }

    #reparacion-tv-inicio .gstvh-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 34px;
    }

    #reparacion-tv-inicio .gstvh-hud {
        width: 100%;
        max-width: 760px;

        margin: 0 auto;
    }

    #reparacion-tv-inicio .gstvh-trust {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #reparacion-tv-inicio {
        overflow: hidden;
    }

    #reparacion-tv-inicio .gstvh-grid {
        opacity: 0.18;

        background-size: 32px 32px;
    }

    #reparacion-tv-inicio .gstvh-circuit,
    #reparacion-tv-inicio .gstvh-page-scan {
        display: none;
    }

    #reparacion-tv-inicio .gstvh-shell {
        width:
            calc(100% - 30px);

        max-width: 100%;

        padding:
            68px 0 64px;
    }

    #reparacion-tv-inicio .gstvh-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 28px;
    }

    #reparacion-tv-inicio .gstvh-title {
        font-size:
            clamp(
                34px,
                10.5vw,
                46px
            );

        line-height: 1.06;
    }

    #reparacion-tv-inicio .gstvh-lead {
        font-size: 14px;
        line-height: 1.72;
    }

    #reparacion-tv-inicio .gstvh-actions {
        display: grid;

        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #reparacion-tv-inicio .gstvh-btn {
        width: 100%;

        justify-content: flex-start;
    }

    #reparacion-tv-inicio .gstvh-badges {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #reparacion-tv-inicio .gstvh-hud {
        padding:
            18px 14px;

        border-radius: 18px;
    }

    #reparacion-tv-inicio .gstvh-hud-head {
        flex-direction: column;
        align-items: flex-start;

        gap: 8px;
    }

    #reparacion-tv-inicio .gstvh-screen-area {
        min-height: 360px;
    }

    #reparacion-tv-inicio .gstvh-tv {
        width: 66%;

        animation: none;
    }

    #reparacion-tv-inicio .gstvh-display::after,
    #reparacion-tv-inicio .gstvh-line {
        animation: none;
    }

    #reparacion-tv-inicio .gstvh-node {
        width: 102px;

        padding: 7px;
    }

    #reparacion-tv-inicio .gstvh-node-code {
        font-size: 6.5px;
    }

    #reparacion-tv-inicio .gstvh-node strong {
        font-size: 7px;
    }

    #reparacion-tv-inicio .gstvh-node span:last-child {
        display: none;
    }

    #reparacion-tv-inicio .gstvh-display-core strong {
        font-size: 12px;
    }

    #reparacion-tv-inicio .gstvh-hud-route {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #reparacion-tv-inicio .gstvh-route-step {
        text-align: left;

        font-size: 8px;
    }

    #reparacion-tv-inicio .gstvh-trust {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #reparacion-tv-inicio .gstvh-terminal-body {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 14px;

        padding:
            18px 15px;
    }

    #reparacion-tv-inicio .gstvh-terminal-state {
        width: fit-content;
    }

    #reparacion-tv-inicio .gstvh-footer {
        flex-direction: column;
        align-items: flex-start;

        gap: 7px;

        margin-top: 18px;
    }
}



/* =========================================================
   MOBILE — DIAGNÓSTICO TV SIN SUPERPOSICIONES
   ========================================================= */

@media (max-width: 767px) {

    #reparacion-tv-inicio .gstvh-screen-area {
        min-height: 0;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
        padding: 12px;
    }

    #reparacion-tv-inicio .gstvh-line {
        display: none;
    }

    #reparacion-tv-inicio .gstvh-tv {
        position: relative;
        left: auto;
        top: auto;
        grid-column: 1 / -1;
        order: -1;
        width: min(72%, 310px);
        max-width: 310px;
        margin: 10px auto 6px;
        transform: none;
        animation: none;
    }

    #reparacion-tv-inicio .gstvh-node {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;
        width: auto;
        min-width: 0;
        min-height: 104px;
        padding: 10px;
    }

    #reparacion-tv-inicio .gstvh-node-code {
        font-size: 7.5px;
    }

    #reparacion-tv-inicio .gstvh-node strong {
        font-size: 8.5px;
    }

    #reparacion-tv-inicio .gstvh-node span:last-child {
        display: block;
        font-size: 7.5px;
    }

    #reparacion-tv-inicio .gstvh-hud-route {
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;
        grid-column: 1 / -1;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 5px;
        margin-top: 2px;
    }

    #reparacion-tv-inicio .gstvh-route-step {
        padding: 8px;
        text-align: left;
        font-size: 8px;
    }
}


/* =========================================================
   390 PX
   ========================================================= */

@media (max-width: 390px) {

    #reparacion-tv-inicio .gstvh-screen-area {
        grid-template-columns: minmax(0, 1fr);
    }

    #reparacion-tv-inicio .gstvh-tv,
    #reparacion-tv-inicio .gstvh-hud-route {
        grid-column: 1;
    }

    #reparacion-tv-inicio .gstvh-tv {
        width: min(78%, 280px);
    }

    #reparacion-tv-inicio .gstvh-hud-route {
        grid-template-columns: minmax(0, 1fr);
    }

    #reparacion-tv-inicio .gstvh-shell {
        width:
            calc(100% - 24px);
    }

    #reparacion-tv-inicio .gstvh-badges {
        grid-template-columns:
            minmax(0, 1fr);
    }

    #reparacion-tv-inicio .gstvh-hud {
        padding-left: 12px;
        padding-right: 12px;
    }

    #reparacion-tv-inicio .gstvh-screen-area {
        min-height: 342px;
    }

    #reparacion-tv-inicio .gstvh-tv {
        width: 62%;
    }

    #reparacion-tv-inicio .gstvh-node {
        width: 86px;

        padding: 6px;
    }

    #reparacion-tv-inicio .gstvh-node-code {
        font-size: 5.8px;
    }

    #reparacion-tv-inicio .gstvh-node strong {
        font-size: 6.4px;
    }

    #reparacion-tv-inicio .gstvh-hud-route {
        grid-template-columns:
            minmax(0, 1fr);
    }

    #reparacion-tv-inicio .gstvh-terminal-route {
        display: grid;

        grid-template-columns:
            minmax(0, 1fr);
    }
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    #reparacion-tv-inicio,
    #reparacion-tv-inicio *,
    #reparacion-tv-inicio *::before,
    #reparacion-tv-inicio *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition: none !important;
    }

    #reparacion-tv-inicio .gstvh-page-scan {
        display: none !important;
    }
}


/* ===== Fallas y síntomas TV ===== */
/* =========================================================
   GAMMERS STYLE
   REPARACIÓN DE TV — FALLAS Y SÍNTOMAS
   ID INTERNO HTML: fallas-sintomas-tv
   ========================================================= */

#fallas-sintomas-tv {
    --tv-bg: #030811;
    --tv-bg-2: #05101b;

    --tv-cyan: #20d5f3;
    --tv-blue: #3286ff;
    --tv-violet: #8b5cf6;

    --tv-green: #43e58b;
    --tv-yellow: #ffc857;
    --tv-orange: #ff9f43;
    --tv-red: #ff637d;

    --tv-text: #edf8ff;
    --tv-muted: #91a8bb;
    --tv-muted-2: #687f92;

    position: relative;
    isolation: isolate;

    width: 100%;
    margin: 0;
    padding: 0;

    overflow: hidden;

    color: var(--tv-text);

    background:
        radial-gradient(
            circle at 13% 15%,
            rgba(32, 213, 243, 0.055),
            transparent 30%
        ),
        radial-gradient(
            circle at 88% 18%,
            rgba(139, 92, 246, 0.050),
            transparent 30%
        ),
        radial-gradient(
            circle at 68% 88%,
            rgba(255, 200, 87, 0.025),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #030811 0%,
            #05101b 50%,
            #030811 100%
        );

    font-family:
        "Poppins",
        Arial,
        sans-serif;

    scroll-margin-top: 90px;
    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}

#fallas-sintomas-tv *,
#fallas-sintomas-tv *::before,
#fallas-sintomas-tv *::after {
    box-sizing: border-box;

    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}


/* =========================================================
   BACKGROUND
   ========================================================= */

#fallas-sintomas-tv .gstvsym-grid {
    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: 0.25;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.042) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.042) 1px,
            transparent 1px
        );

    background-size: 46px 46px;

    mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );

    -webkit-mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );
}


/* =========================================================
   DECORATION
   ========================================================= */

#fallas-sintomas-tv .gstvsym-orbit {
    position: absolute;

    right: -250px;
    top: 480px;

    width: 500px;
    height: 500px;

    border:
        1px solid rgba(32, 213, 243, 0.040);

    border-radius: 50%;

    pointer-events: none;

    animation:
        gstvsym-spin
        54s linear infinite;
}

#fallas-sintomas-tv .gstvsym-orbit::before,
#fallas-sintomas-tv .gstvsym-orbit::after {
    content: "";

    position: absolute;

    border-radius: 50%;
}

#fallas-sintomas-tv .gstvsym-orbit::before {
    inset: 82px;

    border:
        1px dashed rgba(139, 92, 246, 0.050);
}

#fallas-sintomas-tv .gstvsym-orbit::after {
    inset: 164px;

    border:
        1px solid rgba(255, 200, 87, 0.035);
}

@keyframes gstvsym-spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
   SCAN
   ========================================================= */

#fallas-sintomas-tv .gstvsym-scan {
    position: absolute;
    inset: 0;

    pointer-events: none;
    overflow: hidden;
}

#fallas-sintomas-tv .gstvsym-scan::before {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    top: 0;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(32, 213, 243, 0.25),
            rgba(139, 92, 246, 0.14),
            transparent
        );

    box-shadow:
        0 0 16px rgba(32, 213, 243, 0.07);

    animation:
        gstvsym-scan
        12s linear infinite;
}

@keyframes gstvsym-scan {

    0% {
        transform: translateY(0);
        opacity: 0;
    }

    8% {
        opacity: 0.36;
    }

    92% {
        opacity: 0.14;
    }

    100% {
        transform: translateY(3000px);
        opacity: 0;
    }
}


/* =========================================================
   SHELL
   ========================================================= */

#fallas-sintomas-tv .gstvsym-shell {
    position: relative;
    z-index: 2;

    width:
        min(
            1180px,
            calc(100% - 48px)
        );

    margin: 0 auto;

    padding:
        92px 0 96px;
}


/* =========================================================
   HEADING
   ========================================================= */

#fallas-sintomas-tv .gstvsym-heading {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(300px, 0.48fr);

    gap: 44px;

    align-items: end;

    margin-bottom: 36px;
}

#fallas-sintomas-tv .gstvsym-heading-main {
    min-width: 0;
}


/* =========================================================
   KICKER
   ========================================================= */

#fallas-sintomas-tv .gstvsym-kicker {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    margin-bottom: 15px;
    padding:
        7px 11px;

    border:
        1px solid rgba(32, 213, 243, 0.18);

    border-radius: 999px;

    background:
        rgba(7, 28, 41, 0.40);

    color: #9eeeff;

    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;

    letter-spacing: 0.10em;
    text-transform: uppercase;
}

#fallas-sintomas-tv .gstvsym-kicker::before {
    content: "";

    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: var(--tv-cyan);

    box-shadow:
        0 0 8px rgba(32, 213, 243, 0.70);
}


/* =========================================================
   TITLE
   ========================================================= */

#fallas-sintomas-tv .gstvsym-title {
    max-width: 880px;

    margin: 0;

    color: #f4fbff;

    font-size:
        clamp(
            31px,
            4vw,
            49px
        );

    line-height: 1.08;
    font-weight: 700;

    letter-spacing: -0.035em;
}

#fallas-sintomas-tv .gstvsym-title span {
    color: var(--tv-cyan);
}

#fallas-sintomas-tv .gstvsym-intro {
    max-width: 850px;

    margin:
        16px 0 0;

    color: var(--tv-muted);

    font-size: 15px;
    line-height: 1.76;
}


/* =========================================================
   STATUS
   ========================================================= */

#fallas-sintomas-tv .gstvsym-status {
    position: relative;

    min-width: 0;

    padding:
        18px 19px;

    overflow: hidden;

    border:
        1px solid rgba(255, 200, 87, 0.14);

    border-radius: 16px;

    background:
        linear-gradient(
            145deg,
            rgba(45, 34, 10, 0.18),
            rgba(4, 13, 23, 0.90)
        );
}

#fallas-sintomas-tv .gstvsym-status::before {
    content: "";

    position: absolute;

    left: 0;
    top: 12px;
    bottom: 12px;

    width: 2px;

    background:
        linear-gradient(
            180deg,
            transparent,
            var(--tv-yellow),
            transparent
        );
}

#fallas-sintomas-tv .gstvsym-status-label {
    display: flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 7px;

    color: #ead08b;

    font-size: 10px;
    line-height: 1.25;
    font-weight: 600;

    text-transform: uppercase;
}

#fallas-sintomas-tv .gstvsym-status-label::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--tv-yellow);

    box-shadow:
        0 0 7px rgba(255, 200, 87, 0.55);
}

#fallas-sintomas-tv .gstvsym-status p {
    margin: 0;

    color: #a7bcc9;

    font-size: 11px;
    line-height: 1.62;
}


/* =========================================================
   CORE
   ========================================================= */

#fallas-sintomas-tv .gstvsym-core {
    position: relative;

    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 17px;

    align-items: center;

    margin-bottom: 18px;
    padding:
        18px;

    overflow: hidden;

    border:
        1px solid rgba(32, 213, 243, 0.15);

    border-radius: 15px;

    background:
        linear-gradient(
            135deg,
            rgba(32, 213, 243, 0.050),
            rgba(139, 92, 246, 0.025)
        );
}

#fallas-sintomas-tv .gstvsym-core::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 115px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--tv-cyan),
            transparent
        );
}

#fallas-sintomas-tv .gstvsym-core-icon {
    display: grid;
    place-items: center;

    width: 64px;
    height: 64px;

    flex: 0 0 64px;

    border:
        1px solid rgba(32, 213, 243, 0.20);

    border-radius: 14px;

    background:
        rgba(32, 213, 243, 0.045);

    color: #9cefff;

    font-size: 18px;
    font-weight: 700;
}

#fallas-sintomas-tv .gstvsym-core-copy {
    min-width: 0;
}

#fallas-sintomas-tv .gstvsym-core-copy strong {
    display: block;

    margin-bottom: 5px;

    color: #e3f8ff;

    font-size: 14px;
    line-height: 1.42;
    font-weight: 600;
}

#fallas-sintomas-tv .gstvsym-core-copy span {
    display: block;

    color: #829aa9;

    font-size: 10px;
    line-height: 1.64;
}

#fallas-sintomas-tv .gstvsym-core-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        7px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #96edbb;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;
}

#fallas-sintomas-tv .gstvsym-core-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   SYMPTOM GRID
   ========================================================= */

#fallas-sintomas-tv .gstvsym-symptoms {
    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 10px;
}


/* =========================================================
   SYMPTOM CARD
   ========================================================= */

#fallas-sintomas-tv .gstvsym-card {
    --card-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        18px 15px 15px;

    overflow: hidden;

    border:
        1px solid rgba(32, 213, 243, 0.11);

    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#fallas-sintomas-tv .gstvsym-card:nth-child(2),
#fallas-sintomas-tv .gstvsym-card:nth-child(7) {
    --card-color: #3286ff;

    border-color:
        rgba(50, 134, 255, 0.12);
}

#fallas-sintomas-tv .gstvsym-card:nth-child(3),
#fallas-sintomas-tv .gstvsym-card:nth-child(8) {
    --card-color: #8b5cf6;

    border-color:
        rgba(139, 92, 246, 0.12);
}

#fallas-sintomas-tv .gstvsym-card:nth-child(4),
#fallas-sintomas-tv .gstvsym-card:nth-child(9) {
    --card-color: #ffc857;

    border-color:
        rgba(255, 200, 87, 0.12);
}

#fallas-sintomas-tv .gstvsym-card:nth-child(5),
#fallas-sintomas-tv .gstvsym-card:nth-child(10) {
    --card-color: #43e58b;

    border-color:
        rgba(67, 229, 139, 0.12);
}

#fallas-sintomas-tv .gstvsym-card::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 70px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--card-color),
            transparent
        );
}

#fallas-sintomas-tv .gstvsym-card-code {
    display: block;

    margin-bottom: 8px;

    color: var(--card-color);

    font-size: 8px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: 0.04em;
}

#fallas-sintomas-tv .gstvsym-card-title {
    display: block;

    min-height: 37px;

    margin-bottom: 6px;

    color: #e0edf4;

    font-size: 11px;
    line-height: 1.44;
    font-weight: 600;
}

#fallas-sintomas-tv .gstvsym-card-copy {
    display: block;

    min-height: 73px;

    color: #738b9b;

    font-size: 9px;
    line-height: 1.58;
}


/* =========================================================
   AREAS
   ========================================================= */

#fallas-sintomas-tv .gstvsym-areas {
    display: flex;
    flex-wrap: wrap;

    gap: 4px;

    margin-top: 11px;
}

#fallas-sintomas-tv .gstvsym-area {
    display: inline-flex;
    align-items: center;

    min-height: 22px;

    padding:
        4px 6px;

    border:
        1px solid rgba(255,255,255,0.055);

    border-radius: 6px;

    background:
        rgba(5, 17, 30, 0.55);

    color: #607b8d;

    font-size: 7px;
    line-height: 1.3;
    font-weight: 600;
}


/* =========================================================
   MAIN ANALYSIS
   ========================================================= */

#fallas-sintomas-tv .gstvsym-main {
    display: grid;

    grid-template-columns:
        minmax(0, 0.94fr)
        minmax(430px, 1.06fr);

    gap: 18px;

    margin-top: 18px;
}


/* =========================================================
   ANALYSIS PANEL
   ========================================================= */

#fallas-sintomas-tv .gstvsym-analysis {
    min-width: 0;

    padding:
        24px;

    border:
        1px solid rgba(32, 213, 243, 0.12);

    border-radius: 19px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#fallas-sintomas-tv .gstvsym-panel-label {
    display: inline-flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 9px;

    color: #9cefff;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: 0.07em;
}

#fallas-sintomas-tv .gstvsym-panel-label::before {
    content: "";

    width: 14px;
    height: 1px;

    background: currentColor;

    box-shadow:
        0 0 7px currentColor;
}

#fallas-sintomas-tv .gstvsym-panel-title {
    margin: 0;

    color: #f1faff;

    font-size: 21px;
    line-height: 1.34;
    font-weight: 700;
}

#fallas-sintomas-tv .gstvsym-panel-copy {
    margin:
        9px 0 0;

    color: #8098a8;

    font-size: 10px;
    line-height: 1.67;
}


/* =========================================================
   ANALYSIS STEPS
   ========================================================= */

#fallas-sintomas-tv .gstvsym-analysis-steps {
    display: grid;

    gap: 8px;

    margin-top: 18px;
}

#fallas-sintomas-tv .gstvsym-analysis-row {
    --step-color: #20d5f3;

    display: grid;

    grid-template-columns:
        92px minmax(0, 1fr);

    gap: 10px;

    padding:
        11px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 9px;

    background:
        rgba(5, 17, 30, 0.54);
}

#fallas-sintomas-tv .gstvsym-analysis-row.area {
    --step-color: #3286ff;
}

#fallas-sintomas-tv .gstvsym-analysis-row.test {
    --step-color: #8b5cf6;
}

#fallas-sintomas-tv .gstvsym-analysis-row.evidence {
    --step-color: #ffc857;
}

#fallas-sintomas-tv .gstvsym-analysis-row.diagnosis {
    --step-color: #43e58b;
}

#fallas-sintomas-tv .gstvsym-analysis-label {
    color: var(--step-color);

    font-size: 8px;
    line-height: 1.35;
    font-weight: 700;

    text-transform: uppercase;
}

#fallas-sintomas-tv .gstvsym-analysis-copy {
    color: #758d9d;

    font-size: 9px;
    line-height: 1.56;
}

#fallas-sintomas-tv .gstvsym-analysis-copy strong {
    color: #d6e6ee;
    font-weight: 600;
}


/* =========================================================
   TECHNICAL NOTE
   ========================================================= */

#fallas-sintomas-tv .gstvsym-tech-note {
    display: flex;
    align-items: flex-start;

    gap: 9px;

    margin-top: 13px;
    padding:
        12px;

    border:
        1px solid rgba(255, 200, 87, 0.11);

    border-radius: 10px;

    background:
        rgba(255, 200, 87, 0.023);

    color: #8e866e;

    font-size: 9px;
    line-height: 1.58;
}

#fallas-sintomas-tv .gstvsym-tech-note::before {
    content: "!";

    display: grid;
    place-items: center;

    width: 19px;
    height: 19px;

    flex: 0 0 19px;

    border:
        1px solid rgba(255, 200, 87, 0.17);

    border-radius: 50%;

    color: #f0d48a;

    font-size: 8px;
    font-weight: 700;
}

#fallas-sintomas-tv .gstvsym-tech-note strong {
    color: #dfd0a4;
    font-weight: 600;
}


/* =========================================================
   HUD
   ========================================================= */

#fallas-sintomas-tv .gstvsym-hud {
    position: relative;

    min-width: 0;

    padding:
        22px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.16);

    border-radius: 20px;

    background:
        radial-gradient(
            circle at 50% 38%,
            rgba(32, 213, 243, 0.075),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            rgba(24, 18, 45, 0.37),
            rgba(4, 12, 22, 0.97)
        );
}

#fallas-sintomas-tv .gstvsym-hud::before {
    content: "";

    position: absolute;
    inset: 0;

    opacity: 0.25;

    pointer-events: none;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        );

    background-size: 27px 27px;
}


/* =========================================================
   HUD HEADER
   ========================================================= */

#fallas-sintomas-tv .gstvsym-hud-head {
    position: relative;
    z-index: 4;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 10px;
}

#fallas-sintomas-tv .gstvsym-hud-code {
    color: #c5b9ff;

    font-size: 10px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#fallas-sintomas-tv .gstvsym-hud-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        5px 8px;

    border:
        1px solid rgba(255, 200, 87, 0.15);

    border-radius: 999px;

    background:
        rgba(255, 200, 87, 0.025);

    color: #dfc982;

    font-size: 8px;
    line-height: 1.2;
    font-weight: 600;
}

#fallas-sintomas-tv .gstvsym-hud-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--tv-yellow);

    box-shadow:
        0 0 7px rgba(255, 200, 87, 0.50);
}


/* =========================================================
   HUD SCREEN
   ========================================================= */

#fallas-sintomas-tv .gstvsym-hud-screen {
    position: relative;
    z-index: 2;

    min-height: 420px;

    margin-top: 16px;

    overflow: hidden;

    border:
        1px solid rgba(92, 208, 255, 0.075);

    border-radius: 14px;

    background:
        rgba(3, 12, 22, 0.70);
}


/* =========================================================
   CORE CIRCLE
   ========================================================= */

#fallas-sintomas-tv .gstvsym-hud-core {
    position: absolute;

    z-index: 8;

    left: 50%;
    top: 43%;

    width: 174px;
    height: 174px;

    transform:
        translate(-50%, -50%);

    display: grid;
    place-items: center;

    padding:
        20px;

    border:
        1px solid rgba(32, 213, 243, 0.21);

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(32, 213, 243, 0.11),
            rgba(139, 92, 246, 0.045) 48%,
            rgba(5, 16, 29, 0.97) 77%
        );

    box-shadow:
        0 0 46px rgba(32, 213, 243, 0.08);

    animation:
        gstvsym-pulse
        4.3s ease-in-out infinite;
}

#fallas-sintomas-tv .gstvsym-hud-core div {
    text-align: center;
}

#fallas-sintomas-tv .gstvsym-hud-core strong {
    display: block;

    color: #e5f9ff;

    font-size: 13px;
    line-height: 1.28;
    font-weight: 700;
}

#fallas-sintomas-tv .gstvsym-hud-core span {
    display: block;

    margin-top: 7px;

    color: #718b9b;

    font-size: 7px;
    line-height: 1.4;
    font-weight: 600;

    text-transform: uppercase;
}

@keyframes gstvsym-pulse {

    0%,
    100% {
        box-shadow:
            0 0 28px rgba(32, 213, 243, 0.04);
    }

    50% {
        box-shadow:
            0 0 55px rgba(32, 213, 243, 0.12);
    }
}


/* =========================================================
   HUD RINGS
   ========================================================= */

#fallas-sintomas-tv .gstvsym-ring {
    position: absolute;

    left: 50%;
    top: 43%;

    transform:
        translate(-50%, -50%);

    border-radius: 50%;

    pointer-events: none;
}

#fallas-sintomas-tv .gstvsym-ring.one {
    width: 240px;
    height: 240px;

    border:
        1px solid rgba(32, 213, 243, 0.07);

    animation:
        gstvsym-ring
        22s linear infinite;
}

#fallas-sintomas-tv .gstvsym-ring.two {
    width: 314px;
    height: 314px;

    border:
        1px dashed rgba(139, 92, 246, 0.07);

    animation:
        gstvsym-ring
        32s linear infinite reverse;
}

@keyframes gstvsym-ring {

    from {
        transform:
            translate(-50%, -50%)
            rotate(0deg);
    }

    to {
        transform:
            translate(-50%, -50%)
            rotate(360deg);
    }
}


/* =========================================================
   HUD NODES
   ========================================================= */

#fallas-sintomas-tv .gstvsym-node {
    position: absolute;

    z-index: 9;

    width: 126px;

    padding:
        9px;

    border-radius: 9px;

    background:
        rgba(5, 16, 29, 0.94);
}

#fallas-sintomas-tv .gstvsym-node.symptom {
    left: 4%;
    top: 13%;

    border:
        1px solid rgba(32, 213, 243, 0.16);
}

#fallas-sintomas-tv .gstvsym-node.area {
    right: 4%;
    top: 13%;

    border:
        1px solid rgba(50, 134, 255, 0.16);
}

#fallas-sintomas-tv .gstvsym-node.test {
    left: 4%;
    bottom: 22%;

    border:
        1px solid rgba(139, 92, 246, 0.16);
}

#fallas-sintomas-tv .gstvsym-node.evidence {
    right: 4%;
    bottom: 22%;

    border:
        1px solid rgba(67, 229, 139, 0.16);
}

#fallas-sintomas-tv .gstvsym-node-code {
    display: block;

    margin-bottom: 4px;

    color: var(--node-color);

    font-size: 7px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#fallas-sintomas-tv .gstvsym-node.symptom {
    --node-color: #20d5f3;
}

#fallas-sintomas-tv .gstvsym-node.area {
    --node-color: #3286ff;
}

#fallas-sintomas-tv .gstvsym-node.test {
    --node-color: #8b5cf6;
}

#fallas-sintomas-tv .gstvsym-node.evidence {
    --node-color: #43e58b;
}

#fallas-sintomas-tv .gstvsym-node strong {
    display: block;

    color: #d8e8f0;

    font-size: 9px;
    line-height: 1.35;
    font-weight: 600;
}

#fallas-sintomas-tv .gstvsym-node span:last-child {
    display: block;

    margin-top: 4px;

    color: #71899a;

    font-size: 7px;
    line-height: 1.42;
}


/* =========================================================
   HUD CONNECTIONS
   ========================================================= */

#fallas-sintomas-tv .gstvsym-line {
    position: absolute;

    z-index: 4;

    height: 1px;

    transform-origin: left center;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(32, 213, 243, 0.32),
            transparent
        );

    animation:
        gstvsym-line
        3s ease-in-out infinite;
}

#fallas-sintomas-tv .gstvsym-line.l1 {
    left: 20%;
    top: 27%;

    width: 35%;

    transform:
        rotate(21deg);
}

#fallas-sintomas-tv .gstvsym-line.l2 {
    left: 50%;
    top: 43%;

    width: 34%;

    transform:
        rotate(-21deg);
}

#fallas-sintomas-tv .gstvsym-line.l3 {
    left: 20%;
    bottom: 31%;

    width: 35%;

    transform:
        rotate(-20deg);
}

#fallas-sintomas-tv .gstvsym-line.l4 {
    left: 49%;
    bottom: 31%;

    width: 35%;

    transform:
        rotate(20deg);
}

@keyframes gstvsym-line {

    0%,
    100% {
        opacity: 0.13;
    }

    50% {
        opacity: 0.70;
    }
}


/* =========================================================
   HUD ROUTE
   ========================================================= */

#fallas-sintomas-tv .gstvsym-hud-route {
    position: absolute;

    z-index: 10;

    left: 12px;
    right: 12px;
    bottom: 12px;

    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 4px;
}

#fallas-sintomas-tv .gstvsym-hud-step {
    min-width: 0;

    padding:
        7px 3px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(5, 17, 30, 0.85);

    color: #728b9b;

    text-align: center;

    font-size: 7px;
    line-height: 1.35;
    font-weight: 600;
}


/* =========================================================
   WARNING
   ========================================================= */

#fallas-sintomas-tv .gstvsym-warning {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 12px;

    align-items: center;

    margin-top: 18px;
    padding:
        16px;

    border:
        1px solid rgba(255, 200, 87, 0.12);

    border-radius: 13px;

    background:
        linear-gradient(
            135deg,
            rgba(255, 200, 87, 0.025),
            rgba(255, 99, 125, 0.015)
        );
}

#fallas-sintomas-tv .gstvsym-warning-icon {
    display: grid;
    place-items: center;

    width: 32px;
    height: 32px;

    flex: 0 0 32px;

    border:
        1px solid rgba(255, 200, 87, 0.18);

    border-radius: 9px;

    color: #f2d989;

    font-size: 10px;
    font-weight: 700;
}

#fallas-sintomas-tv .gstvsym-warning-copy {
    color: #8d856d;

    font-size: 9px;
    line-height: 1.6;
}

#fallas-sintomas-tv .gstvsym-warning-copy strong {
    color: #e9ddb5;
    font-weight: 600;
}

#fallas-sintomas-tv .gstvsym-warning-state {
    flex-shrink: 0;

    color: #b9a972;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 600;

    text-transform: uppercase;
}


/* =========================================================
   TERMINAL
   ========================================================= */

#fallas-sintomas-tv .gstvsym-terminal {
    margin-top: 18px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.17);

    border-radius: 17px;

    background:
        linear-gradient(
            155deg,
            rgba(10, 18, 38, 0.94),
            rgba(4, 9, 20, 0.98)
        );
}

#fallas-sintomas-tv .gstvsym-terminal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    min-height: 43px;

    padding:
        10px 14px;

    border-bottom:
        1px solid rgba(118, 167, 255, 0.09);

    background:
        rgba(8, 18, 34, 0.74);
}

#fallas-sintomas-tv .gstvsym-terminal-dots {
    display: flex;

    gap: 6px;
}

#fallas-sintomas-tv .gstvsym-terminal-dots span {
    width: 6px;
    height: 6px;

    border-radius: 50%;
}

#fallas-sintomas-tv
.gstvsym-terminal-dots span:nth-child(1) {
    background: var(--tv-red);
}

#fallas-sintomas-tv
.gstvsym-terminal-dots span:nth-child(2) {
    background: var(--tv-yellow);
}

#fallas-sintomas-tv
.gstvsym-terminal-dots span:nth-child(3) {
    background: var(--tv-green);
}

#fallas-sintomas-tv .gstvsym-terminal-name {
    color: #71889d;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;

    text-transform: uppercase;
}

#fallas-sintomas-tv .gstvsym-terminal-body {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr) auto;

    gap: 20px;

    align-items: center;

    padding:
        19px 20px;
}

#fallas-sintomas-tv .gstvsym-terminal-route {
    display: flex;
    flex-wrap: wrap;

    gap: 7px;
}

#fallas-sintomas-tv .gstvsym-terminal-route span {
    display: inline-flex;
    align-items: center;

    min-height: 28px;

    padding:
        6px 8px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(6, 18, 31, 0.50);

    color: #8298a8;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 500;
}

#fallas-sintomas-tv .gstvsym-terminal-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        8px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.13);

    border-radius: 9px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #9beabd;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 600;
}

#fallas-sintomas-tv .gstvsym-terminal-state::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   FOOTER
   ========================================================= */

#fallas-sintomas-tv .gstvsym-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 18px;

    margin-top: 21px;
    padding: 0 3px;

    color: #60788c;

    font-size: 9px;
    line-height: 1.45;
    font-weight: 500;

    text-transform: uppercase;
}

#fallas-sintomas-tv .gstvsym-footer-status {
    display: flex;
    align-items: center;

    gap: 7px;

    color: #7791a5;
}

#fallas-sintomas-tv .gstvsym-footer-status::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.45);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    #fallas-sintomas-tv .gstvsym-shell {
        width:
            min(
                100% - 40px,
                920px
            );

        padding:
            76px 0 80px;
    }

    #fallas-sintomas-tv .gstvsym-heading {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 20px;
    }

    #fallas-sintomas-tv .gstvsym-status {
        max-width: 650px;
    }

    #fallas-sintomas-tv .gstvsym-symptoms {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #fallas-sintomas-tv .gstvsym-card-title,
    #fallas-sintomas-tv .gstvsym-card-copy {
        min-height: 0;
    }

    #fallas-sintomas-tv .gstvsym-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 14px;
    }

    #fallas-sintomas-tv .gstvsym-hud {
        width: 100%;
        max-width: 740px;

        margin:
            0 auto;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #fallas-sintomas-tv {
        overflow: hidden;
    }

    #fallas-sintomas-tv .gstvsym-grid {
        opacity: 0.17;

        background-size: 32px 32px;
    }

    #fallas-sintomas-tv .gstvsym-orbit,
    #fallas-sintomas-tv .gstvsym-scan {
        display: none;
    }

    #fallas-sintomas-tv .gstvsym-shell {
        width:
            calc(100% - 30px);

        max-width: 100%;

        padding:
            61px 0 65px;
    }

    #fallas-sintomas-tv .gstvsym-heading {
        display: block;

        margin-bottom: 28px;
    }

    #fallas-sintomas-tv .gstvsym-status {
        margin-top: 20px;

        padding:
            15px 16px;
    }

    #fallas-sintomas-tv .gstvsym-title {
        font-size:
            clamp(
                29px,
                9vw,
                38px
            );
    }

    #fallas-sintomas-tv .gstvsym-intro {
        font-size: 14px;
        line-height: 1.7;
    }

    #fallas-sintomas-tv .gstvsym-core {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 9px;

        padding:
            15px;
    }

    #fallas-sintomas-tv .gstvsym-core-state {
        width: fit-content;
    }

    #fallas-sintomas-tv .gstvsym-symptoms {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #fallas-sintomas-tv .gstvsym-card {
        padding:
            17px 14px;
    }

    #fallas-sintomas-tv .gstvsym-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 12px;
    }

    #fallas-sintomas-tv .gstvsym-analysis,
    #fallas-sintomas-tv .gstvsym-hud {
        width: 100%;
        min-width: 0;

        padding:
            19px 15px;

        border-radius: 16px;
    }

    #fallas-sintomas-tv .gstvsym-analysis-row {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 4px;
    }

    #fallas-sintomas-tv .gstvsym-hud-head {
        flex-direction: column;
        align-items: flex-start;

        gap: 8px;
    }

    #fallas-sintomas-tv .gstvsym-hud-screen {
        min-height: 350px;
    }

    #fallas-sintomas-tv .gstvsym-hud-core,
    #fallas-sintomas-tv .gstvsym-ring,
    #fallas-sintomas-tv .gstvsym-line {
        animation: none;
    }

    #fallas-sintomas-tv .gstvsym-hud-core {
        width: 112px;
        height: 112px;

        padding: 12px;
    }

    #fallas-sintomas-tv .gstvsym-hud-core strong {
        font-size: 9px;
    }

    #fallas-sintomas-tv .gstvsym-hud-core span {
        font-size: 5.8px;
    }

    #fallas-sintomas-tv .gstvsym-ring.one {
        width: 166px;
        height: 166px;
    }

    #fallas-sintomas-tv .gstvsym-ring.two {
        width: 220px;
        height: 220px;
    }

    #fallas-sintomas-tv .gstvsym-node {
        width: 100px;

        padding: 7px;
    }

    #fallas-sintomas-tv .gstvsym-node-code {
        font-size: 6px;
    }

    #fallas-sintomas-tv .gstvsym-node strong {
        font-size: 7px;
    }

    #fallas-sintomas-tv
    .gstvsym-node span:last-child {
        display: none;
    }

    #fallas-sintomas-tv .gstvsym-hud-route {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #fallas-sintomas-tv .gstvsym-hud-step {
        text-align: left;

        font-size: 7.5px;
    }

    #fallas-sintomas-tv .gstvsym-warning {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #fallas-sintomas-tv .gstvsym-warning-state {
        width: fit-content;
    }

    #fallas-sintomas-tv .gstvsym-terminal-body {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 13px;

        padding:
            17px 15px;
    }

    #fallas-sintomas-tv .gstvsym-terminal-state {
        width: fit-content;
    }

    #fallas-sintomas-tv .gstvsym-footer {
        flex-direction: column;
        align-items: flex-start;

        gap: 6px;
    }
}



/* =========================================================
   MOBILE — MATRIZ DE SÍNTOMAS SIN SUPERPOSICIONES
   ========================================================= */

@media (max-width: 767px) {

    #fallas-sintomas-tv .gstvsym-hud-screen {
        min-height: 0;
        display: grid;
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
        gap: 8px;
        padding: 12px;
    }

    #fallas-sintomas-tv .gstvsym-ring,
    #fallas-sintomas-tv .gstvsym-line {
        display: none;
    }

    #fallas-sintomas-tv .gstvsym-node {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;

        width: auto;
        min-width: 0;
        min-height: 108px;

        padding: 11px;
    }

    #fallas-sintomas-tv .gstvsym-node-code {
        font-size: 7.5px;
    }

    #fallas-sintomas-tv .gstvsym-node strong {
        font-size: 8.5px;
    }

    #fallas-sintomas-tv .gstvsym-node span:last-child {
        display: block;
        font-size: 7.5px;
    }

    #fallas-sintomas-tv .gstvsym-hud-core {
        position: relative;

        left: auto;
        top: auto;

        grid-column: 1 / -1;
        order: -1;

        width: 100%;
        height: auto;
        min-height: 94px;

        padding: 15px;

        transform: none;
        border-radius: 13px;

        animation: none;
    }

    #fallas-sintomas-tv .gstvsym-hud-core strong {
        font-size: 10px;
    }

    #fallas-sintomas-tv .gstvsym-hud-core span {
        font-size: 8px;
    }

    #fallas-sintomas-tv .gstvsym-hud-route {
        position: relative;

        left: auto;
        right: auto;
        bottom: auto;

        grid-column: 1 / -1;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 5px;
        margin-top: 2px;
    }

    #fallas-sintomas-tv .gstvsym-hud-step {
        padding: 8px;

        text-align: left;

        font-size: 8px;
    }
}


/* =========================================================
   390 PX
   ========================================================= */

@media (max-width: 390px) {

    #fallas-sintomas-tv .gstvsym-hud-screen {
        grid-template-columns:
            minmax(0, 1fr);
    }

    #fallas-sintomas-tv .gstvsym-hud-core,
    #fallas-sintomas-tv .gstvsym-hud-route {
        grid-column: 1;
    }

    #fallas-sintomas-tv .gstvsym-hud-route {
        grid-template-columns:
            minmax(0, 1fr);
    }

    #fallas-sintomas-tv .gstvsym-shell {
        width:
            calc(100% - 24px);
    }

    #fallas-sintomas-tv .gstvsym-analysis,
    #fallas-sintomas-tv .gstvsym-hud {
        padding-left: 12px;
        padding-right: 12px;
    }

    #fallas-sintomas-tv .gstvsym-hud-screen {
        min-height: 330px;
    }

    #fallas-sintomas-tv .gstvsym-hud-core {
        width: 92px;
        height: 92px;
    }

    #fallas-sintomas-tv .gstvsym-hud-core strong {
        font-size: 7px;
    }

    #fallas-sintomas-tv .gstvsym-hud-core span {
        font-size: 5px;
    }

    #fallas-sintomas-tv .gstvsym-ring.one {
        width: 140px;
        height: 140px;
    }

    #fallas-sintomas-tv .gstvsym-ring.two {
        width: 185px;
        height: 185px;
    }

    #fallas-sintomas-tv .gstvsym-node {
        width: 86px;

        padding: 6px;
    }

    #fallas-sintomas-tv .gstvsym-node-code {
        font-size: 5.4px;
    }

    #fallas-sintomas-tv .gstvsym-node strong {
        font-size: 6.2px;
    }

    #fallas-sintomas-tv .gstvsym-hud-route {
        grid-template-columns:
            minmax(0, 1fr);
    }

    #fallas-sintomas-tv .gstvsym-terminal-route {
        display: grid;

        grid-template-columns:
            minmax(0, 1fr);
    }
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    #fallas-sintomas-tv,
    #fallas-sintomas-tv *,
    #fallas-sintomas-tv *::before,
    #fallas-sintomas-tv *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition: none !important;
    }

    #fallas-sintomas-tv .gstvsym-scan {
        display: none !important;
    }
}


/* ===== Retroiluminación TV ===== */
/* =========================================================
   GAMMERS STYLE
   REPARACIÓN DE TV — RETROILUMINACIÓN
   ID INTERNO HTML: retroiluminacion-tv
   ========================================================= */

#retroiluminacion-tv {
    --tv-bg: #030811;
    --tv-bg-2: #05101b;

    --tv-cyan: #20d5f3;
    --tv-blue: #3286ff;
    --tv-violet: #8b5cf6;

    --tv-green: #43e58b;
    --tv-yellow: #ffc857;
    --tv-orange: #ff9f43;
    --tv-red: #ff637d;

    --tv-text: #edf8ff;
    --tv-muted: #91a8bb;
    --tv-muted-2: #687f92;

    position: relative;
    isolation: isolate;

    width: 100%;
    margin: 0;
    padding: 0;

    overflow: hidden;

    color: var(--tv-text);

    background:
        radial-gradient(
            circle at 12% 16%,
            rgba(32, 213, 243, 0.060),
            transparent 30%
        ),
        radial-gradient(
            circle at 88% 20%,
            rgba(255, 200, 87, 0.045),
            transparent 29%
        ),
        radial-gradient(
            circle at 75% 88%,
            rgba(139, 92, 246, 0.045),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #030811 0%,
            #05101b 50%,
            #030811 100%
        );

    font-family:
        "Poppins",
        Arial,
        sans-serif;

    scroll-margin-top: 90px;
    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}

#retroiluminacion-tv *,
#retroiluminacion-tv *::before,
#retroiluminacion-tv *::after {
    box-sizing: border-box;

    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}


/* =========================================================
   BACKGROUND GRID
   ========================================================= */

#retroiluminacion-tv .gstvbk-grid {
    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: 0.25;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.042) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.042) 1px,
            transparent 1px
        );

    background-size: 46px 46px;

    mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );

    -webkit-mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );
}


/* =========================================================
   ORBIT
   ========================================================= */

#retroiluminacion-tv .gstvbk-orbit {
    position: absolute;

    left: -250px;
    top: 560px;

    width: 500px;
    height: 500px;

    border:
        1px solid rgba(32, 213, 243, 0.040);

    border-radius: 50%;

    pointer-events: none;

    animation:
        gstvbk-spin
        54s linear infinite;
}

#retroiluminacion-tv .gstvbk-orbit::before,
#retroiluminacion-tv .gstvbk-orbit::after {
    content: "";

    position: absolute;

    border-radius: 50%;
}

#retroiluminacion-tv .gstvbk-orbit::before {
    inset: 80px;

    border:
        1px dashed rgba(255, 200, 87, 0.045);
}

#retroiluminacion-tv .gstvbk-orbit::after {
    inset: 160px;

    border:
        1px solid rgba(139, 92, 246, 0.040);
}

@keyframes gstvbk-spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
   SCAN
   ========================================================= */

#retroiluminacion-tv .gstvbk-scan {
    position: absolute;
    inset: 0;

    pointer-events: none;

    overflow: hidden;
}

#retroiluminacion-tv .gstvbk-scan::before {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    top: 0;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(32, 213, 243, 0.24),
            rgba(255, 200, 87, 0.14),
            transparent
        );

    box-shadow:
        0 0 16px rgba(32, 213, 243, 0.07);

    animation:
        gstvbk-scan
        12s linear infinite;
}

@keyframes gstvbk-scan {

    0% {
        transform: translateY(0);
        opacity: 0;
    }

    8% {
        opacity: 0.36;
    }

    92% {
        opacity: 0.14;
    }

    100% {
        transform: translateY(3200px);
        opacity: 0;
    }
}


/* =========================================================
   SHELL
   ========================================================= */

#retroiluminacion-tv .gstvbk-shell {
    position: relative;
    z-index: 2;

    width:
        min(
            1180px,
            calc(100% - 48px)
        );

    margin: 0 auto;

    padding:
        92px 0 96px;
}


/* =========================================================
   HEADER
   ========================================================= */

#retroiluminacion-tv .gstvbk-heading {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(300px, 0.48fr);

    gap: 44px;

    align-items: end;

    margin-bottom: 36px;
}

#retroiluminacion-tv .gstvbk-heading-main {
    min-width: 0;
}


/* =========================================================
   KICKER
   ========================================================= */

#retroiluminacion-tv .gstvbk-kicker {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    margin-bottom: 15px;
    padding:
        7px 11px;

    border:
        1px solid rgba(32, 213, 243, 0.18);

    border-radius: 999px;

    background:
        rgba(7, 28, 41, 0.40);

    color: #9eeeff;

    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;

    letter-spacing: 0.10em;
    text-transform: uppercase;
}

#retroiluminacion-tv .gstvbk-kicker::before {
    content: "";

    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: var(--tv-cyan);

    box-shadow:
        0 0 8px rgba(32, 213, 243, 0.72);
}


/* =========================================================
   TITLE
   ========================================================= */

#retroiluminacion-tv .gstvbk-title {
    max-width: 890px;

    margin: 0;

    color: #f4fbff;

    font-size:
        clamp(
            31px,
            4vw,
            49px
        );

    line-height: 1.08;
    font-weight: 700;

    letter-spacing: -0.035em;
}

#retroiluminacion-tv .gstvbk-title span {
    color: var(--tv-cyan);
}

#retroiluminacion-tv .gstvbk-intro {
    max-width: 850px;

    margin:
        16px 0 0;

    color: var(--tv-muted);

    font-size: 15px;
    line-height: 1.76;
}


/* =========================================================
   STATUS
   ========================================================= */

#retroiluminacion-tv .gstvbk-status {
    position: relative;

    min-width: 0;

    padding:
        18px 19px;

    overflow: hidden;

    border:
        1px solid rgba(255, 200, 87, 0.14);

    border-radius: 16px;

    background:
        linear-gradient(
            145deg,
            rgba(45, 34, 10, 0.18),
            rgba(4, 13, 23, 0.90)
        );
}

#retroiluminacion-tv .gstvbk-status::before {
    content: "";

    position: absolute;

    left: 0;
    top: 12px;
    bottom: 12px;

    width: 2px;

    background:
        linear-gradient(
            180deg,
            transparent,
            var(--tv-yellow),
            transparent
        );
}

#retroiluminacion-tv .gstvbk-status-label {
    display: flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 7px;

    color: #ead08b;

    font-size: 10px;
    line-height: 1.25;
    font-weight: 600;

    text-transform: uppercase;
}

#retroiluminacion-tv .gstvbk-status-label::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--tv-yellow);

    box-shadow:
        0 0 7px rgba(255, 200, 87, 0.52);
}

#retroiluminacion-tv .gstvbk-status p {
    margin: 0;

    color: #a7bcc9;

    font-size: 11px;
    line-height: 1.62;
}


/* =========================================================
   CORE PRINCIPLE
   ========================================================= */

#retroiluminacion-tv .gstvbk-core {
    position: relative;

    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 17px;

    align-items: center;

    margin-bottom: 18px;
    padding:
        18px;

    overflow: hidden;

    border:
        1px solid rgba(32, 213, 243, 0.15);

    border-radius: 15px;

    background:
        linear-gradient(
            135deg,
            rgba(32, 213, 243, 0.050),
            rgba(255, 200, 87, 0.020)
        );
}

#retroiluminacion-tv .gstvbk-core::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 115px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--tv-cyan),
            transparent
        );
}

#retroiluminacion-tv .gstvbk-core-icon {
    display: grid;
    place-items: center;

    width: 64px;
    height: 64px;

    flex: 0 0 64px;

    border:
        1px solid rgba(32, 213, 243, 0.20);

    border-radius: 14px;

    background:
        rgba(32, 213, 243, 0.045);

    color: #9cefff;

    font-size: 10px;
    line-height: 1.2;
    font-weight: 700;

    text-align: center;
}

#retroiluminacion-tv .gstvbk-core-copy {
    min-width: 0;
}

#retroiluminacion-tv .gstvbk-core-copy strong {
    display: block;

    margin-bottom: 5px;

    color: #e3f8ff;

    font-size: 14px;
    line-height: 1.42;
    font-weight: 600;
}

#retroiluminacion-tv .gstvbk-core-copy span {
    display: block;

    color: #829aa9;

    font-size: 10px;
    line-height: 1.64;
}

#retroiluminacion-tv .gstvbk-core-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        7px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #96edbb;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;
}

#retroiluminacion-tv .gstvbk-core-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   SYSTEM CARDS
   ========================================================= */

#retroiluminacion-tv .gstvbk-system {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 10px;
}

#retroiluminacion-tv .gstvbk-system-card {
    --system-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        19px 16px 17px;

    overflow: hidden;

    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#retroiluminacion-tv .gstvbk-system-card.leds {
    --system-color: #20d5f3;

    border:
        1px solid rgba(32, 213, 243, 0.13);
}

#retroiluminacion-tv .gstvbk-system-card.driver {
    --system-color: #3286ff;

    border:
        1px solid rgba(50, 134, 255, 0.13);
}

#retroiluminacion-tv .gstvbk-system-card.power {
    --system-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.13);
}

#retroiluminacion-tv .gstvbk-system-card.protection {
    --system-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.13);
}

#retroiluminacion-tv .gstvbk-system-card::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 74px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--system-color),
            transparent
        );
}

#retroiluminacion-tv .gstvbk-system-code {
    display: block;

    margin-bottom: 8px;

    color: var(--system-color);

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#retroiluminacion-tv .gstvbk-system-title {
    display: block;

    margin-bottom: 6px;

    color: #e0edf4;

    font-size: 11px;
    line-height: 1.44;
    font-weight: 600;
}

#retroiluminacion-tv .gstvbk-system-copy {
    display: block;

    color: #748c9c;

    font-size: 9px;
    line-height: 1.58;
}


/* =========================================================
   SYMPTOMS
   ========================================================= */

#retroiluminacion-tv .gstvbk-symptoms {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 10px;

    margin-top: 18px;
}

#retroiluminacion-tv .gstvbk-symptom {
    --sym-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        17px 15px;

    overflow: hidden;

    border-radius: 13px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.88),
            rgba(4, 12, 22, 0.97)
        );
}

#retroiluminacion-tv .gstvbk-symptom:nth-child(1),
#retroiluminacion-tv .gstvbk-symptom:nth-child(4) {
    --sym-color: #20d5f3;

    border:
        1px solid rgba(32, 213, 243, 0.12);
}

#retroiluminacion-tv .gstvbk-symptom:nth-child(2),
#retroiluminacion-tv .gstvbk-symptom:nth-child(5) {
    --sym-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.12);
}

#retroiluminacion-tv .gstvbk-symptom:nth-child(3),
#retroiluminacion-tv .gstvbk-symptom:nth-child(6) {
    --sym-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.12);
}

#retroiluminacion-tv .gstvbk-symptom::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 64px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--sym-color),
            transparent
        );
}

#retroiluminacion-tv .gstvbk-symptom-code {
    display: block;

    margin-bottom: 7px;

    color: var(--sym-color);

    font-size: 8px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#retroiluminacion-tv .gstvbk-symptom-title {
    display: block;

    margin-bottom: 5px;

    color: #dcebf4;

    font-size: 10px;
    line-height: 1.45;
    font-weight: 600;
}

#retroiluminacion-tv .gstvbk-symptom-copy {
    display: block;

    color: #71899a;

    font-size: 9px;
    line-height: 1.56;
}


/* =========================================================
   MAIN ANALYSIS
   ========================================================= */

#retroiluminacion-tv .gstvbk-main {
    display: grid;

    grid-template-columns:
        minmax(0, 0.94fr)
        minmax(430px, 1.06fr);

    gap: 18px;

    margin-top: 18px;
}


/* =========================================================
   ANALYSIS PANEL
   ========================================================= */

#retroiluminacion-tv .gstvbk-analysis {
    min-width: 0;

    padding:
        24px;

    border:
        1px solid rgba(32, 213, 243, 0.12);

    border-radius: 19px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#retroiluminacion-tv .gstvbk-panel-label {
    display: inline-flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 9px;

    color: #9cefff;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#retroiluminacion-tv .gstvbk-panel-label::before {
    content: "";

    width: 14px;
    height: 1px;

    background: currentColor;

    box-shadow:
        0 0 7px currentColor;
}

#retroiluminacion-tv .gstvbk-panel-title {
    margin: 0;

    color: #f1faff;

    font-size: 21px;
    line-height: 1.34;
    font-weight: 700;
}

#retroiluminacion-tv .gstvbk-panel-copy {
    margin:
        9px 0 0;

    color: #8098a8;

    font-size: 10px;
    line-height: 1.67;
}


/* =========================================================
   ROUTE
   ========================================================= */

#retroiluminacion-tv .gstvbk-route {
    display: grid;

    gap: 8px;

    margin-top: 18px;
}

#retroiluminacion-tv .gstvbk-route-row {
    --route-color: #20d5f3;

    display: grid;

    grid-template-columns:
        108px minmax(0, 1fr);

    gap: 10px;

    padding:
        11px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 9px;

    background:
        rgba(5, 17, 30, 0.54);
}

#retroiluminacion-tv .gstvbk-route-row:nth-child(2) {
    --route-color: #3286ff;
}

#retroiluminacion-tv .gstvbk-route-row:nth-child(3) {
    --route-color: #ffc857;
}

#retroiluminacion-tv .gstvbk-route-row:nth-child(4) {
    --route-color: #20d5f3;
}

#retroiluminacion-tv .gstvbk-route-row:nth-child(5) {
    --route-color: #8b5cf6;
}

#retroiluminacion-tv .gstvbk-route-row:nth-child(6) {
    --route-color: #43e58b;
}

#retroiluminacion-tv .gstvbk-route-label {
    color: var(--route-color);

    font-size: 8px;
    line-height: 1.35;
    font-weight: 700;

    text-transform: uppercase;
}

#retroiluminacion-tv .gstvbk-route-copy {
    color: #758d9d;

    font-size: 9px;
    line-height: 1.56;
}

#retroiluminacion-tv .gstvbk-route-copy strong {
    color: #d6e6ee;
    font-weight: 600;
}


/* =========================================================
   TECHNOLOGY NOTE
   ========================================================= */

#retroiluminacion-tv .gstvbk-tech-note {
    display: flex;
    align-items: flex-start;

    gap: 9px;

    margin-top: 13px;
    padding:
        12px;

    border:
        1px solid rgba(139, 92, 246, 0.11);

    border-radius: 10px;

    background:
        rgba(139, 92, 246, 0.023);

    color: #837f98;

    font-size: 9px;
    line-height: 1.58;
}

#retroiluminacion-tv .gstvbk-tech-note::before {
    content: "i";

    display: grid;
    place-items: center;

    width: 19px;
    height: 19px;

    flex: 0 0 19px;

    border:
        1px solid rgba(139, 92, 246, 0.17);

    border-radius: 50%;

    color: #c5b9ff;

    font-size: 8px;
    font-weight: 700;
}

#retroiluminacion-tv .gstvbk-tech-note strong {
    color: #cbc2eb;
    font-weight: 600;
}


/* =========================================================
   HUD
   ========================================================= */

#retroiluminacion-tv .gstvbk-hud {
    position: relative;

    min-width: 0;

    padding:
        22px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.16);

    border-radius: 20px;

    background:
        radial-gradient(
            circle at 50% 38%,
            rgba(255, 200, 87, 0.060),
            transparent 31%
        ),
        radial-gradient(
            circle at 50% 38%,
            rgba(32, 213, 243, 0.060),
            transparent 36%
        ),
        linear-gradient(
            145deg,
            rgba(24, 18, 45, 0.37),
            rgba(4, 12, 22, 0.97)
        );
}

#retroiluminacion-tv .gstvbk-hud::before {
    content: "";

    position: absolute;
    inset: 0;

    opacity: 0.25;

    pointer-events: none;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        );

    background-size: 27px 27px;
}


/* =========================================================
   HUD HEAD
   ========================================================= */

#retroiluminacion-tv .gstvbk-hud-head {
    position: relative;
    z-index: 4;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 10px;
}

#retroiluminacion-tv .gstvbk-hud-code {
    color: #c5b9ff;

    font-size: 10px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#retroiluminacion-tv .gstvbk-hud-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        5px 8px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #97eebb;

    font-size: 8px;
    line-height: 1.2;
    font-weight: 600;
}

#retroiluminacion-tv .gstvbk-hud-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   HUD SCREEN
   ========================================================= */

#retroiluminacion-tv .gstvbk-hud-screen {
    position: relative;
    z-index: 2;

    min-height: 430px;

    margin-top: 16px;

    overflow: hidden;

    border:
        1px solid rgba(92, 208, 255, 0.075);

    border-radius: 14px;

    background:
        rgba(3, 12, 22, 0.70);
}


/* =========================================================
   HUD CORE
   ========================================================= */

#retroiluminacion-tv .gstvbk-hud-core {
    position: absolute;

    z-index: 8;

    left: 50%;
    top: 43%;

    width: 174px;
    height: 174px;

    transform:
        translate(-50%, -50%);

    display: grid;
    place-items: center;

    padding:
        20px;

    border:
        1px solid rgba(255, 200, 87, 0.20);

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(255, 200, 87, 0.09),
            rgba(32, 213, 243, 0.055) 46%,
            rgba(5, 16, 29, 0.97) 77%
        );

    box-shadow:
        0 0 46px rgba(255, 200, 87, 0.07);

    animation:
        gstvbk-pulse
        4.3s ease-in-out infinite;
}

#retroiluminacion-tv .gstvbk-hud-core div {
    text-align: center;
}

#retroiluminacion-tv .gstvbk-hud-core strong {
    display: block;

    color: #fff4d6;

    font-size: 12px;
    line-height: 1.32;
    font-weight: 700;
}

#retroiluminacion-tv .gstvbk-hud-core span {
    display: block;

    margin-top: 7px;

    color: #7a8e95;

    font-size: 7px;
    line-height: 1.4;
    font-weight: 600;

    text-transform: uppercase;
}

@keyframes gstvbk-pulse {

    0%,
    100% {
        box-shadow:
            0 0 28px rgba(255, 200, 87, 0.04);
    }

    50% {
        box-shadow:
            0 0 55px rgba(255, 200, 87, 0.12);
    }
}


/* =========================================================
   HUD RINGS
   ========================================================= */

#retroiluminacion-tv .gstvbk-ring {
    position: absolute;

    left: 50%;
    top: 43%;

    transform:
        translate(-50%, -50%);

    border-radius: 50%;

    pointer-events: none;
}

#retroiluminacion-tv .gstvbk-ring.one {
    width: 240px;
    height: 240px;

    border:
        1px solid rgba(255, 200, 87, 0.07);

    animation:
        gstvbk-ring
        22s linear infinite;
}

#retroiluminacion-tv .gstvbk-ring.two {
    width: 314px;
    height: 314px;

    border:
        1px dashed rgba(32, 213, 243, 0.07);

    animation:
        gstvbk-ring
        32s linear infinite reverse;
}

@keyframes gstvbk-ring {

    from {
        transform:
            translate(-50%, -50%)
            rotate(0deg);
    }

    to {
        transform:
            translate(-50%, -50%)
            rotate(360deg);
    }
}


/* =========================================================
   HUD NODES
   ========================================================= */

#retroiluminacion-tv .gstvbk-node {
    position: absolute;

    z-index: 9;

    width: 126px;

    padding:
        9px;

    border-radius: 9px;

    background:
        rgba(5, 16, 29, 0.94);
}

#retroiluminacion-tv .gstvbk-node.power {
    left: 4%;
    top: 13%;

    border:
        1px solid rgba(255, 200, 87, 0.16);
}

#retroiluminacion-tv .gstvbk-node.enable {
    right: 4%;
    top: 13%;

    border:
        1px solid rgba(50, 134, 255, 0.16);
}

#retroiluminacion-tv .gstvbk-node.load {
    left: 4%;
    bottom: 22%;

    border:
        1px solid rgba(32, 213, 243, 0.16);
}

#retroiluminacion-tv .gstvbk-node.protection {
    right: 4%;
    bottom: 22%;

    border:
        1px solid rgba(139, 92, 246, 0.16);
}

#retroiluminacion-tv .gstvbk-node-code {
    display: block;

    margin-bottom: 4px;

    color: var(--node-color);

    font-size: 7px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#retroiluminacion-tv .gstvbk-node.power {
    --node-color: #ffc857;
}

#retroiluminacion-tv .gstvbk-node.enable {
    --node-color: #3286ff;
}

#retroiluminacion-tv .gstvbk-node.load {
    --node-color: #20d5f3;
}

#retroiluminacion-tv .gstvbk-node.protection {
    --node-color: #8b5cf6;
}

#retroiluminacion-tv .gstvbk-node strong {
    display: block;

    color: #d8e8f0;

    font-size: 9px;
    line-height: 1.35;
    font-weight: 600;
}

#retroiluminacion-tv .gstvbk-node span:last-child {
    display: block;

    margin-top: 4px;

    color: #71899a;

    font-size: 7px;
    line-height: 1.42;
}


/* =========================================================
   CONNECTIONS
   ========================================================= */

#retroiluminacion-tv .gstvbk-line {
    position: absolute;

    z-index: 4;

    height: 1px;

    transform-origin: left center;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255, 200, 87, 0.31),
            rgba(32, 213, 243, 0.22),
            transparent
        );

    animation:
        gstvbk-line
        3s ease-in-out infinite;
}

#retroiluminacion-tv .gstvbk-line.l1 {
    left: 20%;
    top: 27%;

    width: 35%;

    transform:
        rotate(21deg);
}

#retroiluminacion-tv .gstvbk-line.l2 {
    left: 50%;
    top: 43%;

    width: 34%;

    transform:
        rotate(-21deg);
}

#retroiluminacion-tv .gstvbk-line.l3 {
    left: 20%;
    bottom: 31%;

    width: 35%;

    transform:
        rotate(-20deg);
}

#retroiluminacion-tv .gstvbk-line.l4 {
    left: 49%;
    bottom: 31%;

    width: 35%;

    transform:
        rotate(20deg);
}

@keyframes gstvbk-line {

    0%,
    100% {
        opacity: 0.13;
    }

    50% {
        opacity: 0.70;
    }
}


/* =========================================================
   HUD ROUTE
   ========================================================= */

#retroiluminacion-tv .gstvbk-hud-route {
    position: absolute;

    z-index: 10;

    left: 12px;
    right: 12px;
    bottom: 12px;

    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 4px;
}

#retroiluminacion-tv .gstvbk-hud-step {
    min-width: 0;

    padding:
        7px 3px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(5, 17, 30, 0.85);

    color: #728b9b;

    text-align: center;

    font-size: 7px;
    line-height: 1.35;
    font-weight: 600;
}


/* =========================================================
   LCD / OLED DISTINCTION
   ========================================================= */

#retroiluminacion-tv .gstvbk-tech {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 10px;

    margin-top: 18px;
}

#retroiluminacion-tv .gstvbk-tech-card {
    --tech-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        20px 18px;

    overflow: hidden;

    border-radius: 15px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#retroiluminacion-tv .gstvbk-tech-card.lcd {
    --tech-color: #20d5f3;

    border:
        1px solid rgba(32, 213, 243, 0.13);
}

#retroiluminacion-tv .gstvbk-tech-card.oled {
    --tech-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.13);
}

#retroiluminacion-tv .gstvbk-tech-card::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 78px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--tech-color),
            transparent
        );
}

#retroiluminacion-tv .gstvbk-tech-code {
    display: block;

    margin-bottom: 8px;

    color: var(--tech-color);

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#retroiluminacion-tv .gstvbk-tech-title {
    display: block;

    margin-bottom: 6px;

    color: #dcebf4;

    font-size: 12px;
    line-height: 1.44;
    font-weight: 600;
}

#retroiluminacion-tv .gstvbk-tech-copy {
    display: block;

    color: #748d9d;

    font-size: 9px;
    line-height: 1.6;
}


/* =========================================================
   WARNING
   ========================================================= */

#retroiluminacion-tv .gstvbk-warning {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 12px;

    align-items: center;

    margin-top: 18px;
    padding:
        16px;

    border:
        1px solid rgba(255, 200, 87, 0.12);

    border-radius: 13px;

    background:
        linear-gradient(
            135deg,
            rgba(255, 200, 87, 0.025),
            rgba(255, 99, 125, 0.015)
        );
}

#retroiluminacion-tv .gstvbk-warning-icon {
    display: grid;
    place-items: center;

    width: 32px;
    height: 32px;

    flex: 0 0 32px;

    border:
        1px solid rgba(255, 200, 87, 0.18);

    border-radius: 9px;

    color: #f2d989;

    font-size: 10px;
    font-weight: 700;
}

#retroiluminacion-tv .gstvbk-warning-copy {
    color: #8d856d;

    font-size: 9px;
    line-height: 1.6;
}

#retroiluminacion-tv .gstvbk-warning-copy strong {
    color: #e9ddb5;
    font-weight: 600;
}

#retroiluminacion-tv .gstvbk-warning-state {
    flex-shrink: 0;

    color: #b9a972;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 600;

    text-transform: uppercase;
}


/* =========================================================
   TERMINAL
   ========================================================= */

#retroiluminacion-tv .gstvbk-terminal {
    margin-top: 18px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.17);

    border-radius: 17px;

    background:
        linear-gradient(
            155deg,
            rgba(10, 18, 38, 0.94),
            rgba(4, 9, 20, 0.98)
        );
}

#retroiluminacion-tv .gstvbk-terminal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    min-height: 43px;

    padding:
        10px 14px;

    border-bottom:
        1px solid rgba(118, 167, 255, 0.09);

    background:
        rgba(8, 18, 34, 0.74);
}

#retroiluminacion-tv .gstvbk-terminal-dots {
    display: flex;

    gap: 6px;
}

#retroiluminacion-tv .gstvbk-terminal-dots span {
    width: 6px;
    height: 6px;

    border-radius: 50%;
}

#retroiluminacion-tv
.gstvbk-terminal-dots span:nth-child(1) {
    background: var(--tv-red);
}

#retroiluminacion-tv
.gstvbk-terminal-dots span:nth-child(2) {
    background: var(--tv-yellow);
}

#retroiluminacion-tv
.gstvbk-terminal-dots span:nth-child(3) {
    background: var(--tv-green);
}

#retroiluminacion-tv .gstvbk-terminal-name {
    color: #71889d;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;

    text-transform: uppercase;
}

#retroiluminacion-tv .gstvbk-terminal-body {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr) auto;

    gap: 20px;

    align-items: center;

    padding:
        19px 20px;
}

#retroiluminacion-tv .gstvbk-terminal-route {
    display: flex;
    flex-wrap: wrap;

    gap: 7px;
}

#retroiluminacion-tv .gstvbk-terminal-route span {
    display: inline-flex;
    align-items: center;

    min-height: 28px;

    padding:
        6px 8px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(6, 18, 31, 0.50);

    color: #8298a8;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 500;
}

#retroiluminacion-tv .gstvbk-terminal-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        8px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.13);

    border-radius: 9px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #9beabd;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 600;
}

#retroiluminacion-tv .gstvbk-terminal-state::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   FOOTER
   ========================================================= */

#retroiluminacion-tv .gstvbk-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 18px;

    margin-top: 21px;
    padding: 0 3px;

    color: #60788c;

    font-size: 9px;
    line-height: 1.45;
    font-weight: 500;

    text-transform: uppercase;
}

#retroiluminacion-tv .gstvbk-footer-status {
    display: flex;
    align-items: center;

    gap: 7px;

    color: #7791a5;
}

#retroiluminacion-tv .gstvbk-footer-status::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.45);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    #retroiluminacion-tv .gstvbk-shell {
        width:
            min(
                100% - 40px,
                920px
            );

        padding:
            76px 0 80px;
    }

    #retroiluminacion-tv .gstvbk-heading {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 20px;
    }

    #retroiluminacion-tv .gstvbk-status {
        max-width: 650px;
    }

    #retroiluminacion-tv .gstvbk-system {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #retroiluminacion-tv .gstvbk-symptoms {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #retroiluminacion-tv .gstvbk-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 14px;
    }

    #retroiluminacion-tv .gstvbk-hud {
        width: 100%;
        max-width: 740px;

        margin:
            0 auto;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #retroiluminacion-tv {
        overflow: hidden;
    }

    #retroiluminacion-tv .gstvbk-grid {
        opacity: 0.17;

        background-size: 32px 32px;
    }

    #retroiluminacion-tv .gstvbk-orbit,
    #retroiluminacion-tv .gstvbk-scan {
        display: none;
    }

    #retroiluminacion-tv .gstvbk-shell {
        width:
            calc(100% - 30px);

        max-width: 100%;

        padding:
            61px 0 65px;
    }

    #retroiluminacion-tv .gstvbk-heading {
        display: block;

        margin-bottom: 28px;
    }

    #retroiluminacion-tv .gstvbk-status {
        margin-top: 20px;

        padding:
            15px 16px;
    }

    #retroiluminacion-tv .gstvbk-title {
        font-size:
            clamp(
                29px,
                9vw,
                38px
            );
    }

    #retroiluminacion-tv .gstvbk-intro {
        font-size: 14px;
        line-height: 1.7;
    }

    #retroiluminacion-tv .gstvbk-core {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 9px;

        padding:
            15px;
    }

    #retroiluminacion-tv .gstvbk-core-state {
        width: fit-content;
    }

    #retroiluminacion-tv .gstvbk-system,
    #retroiluminacion-tv .gstvbk-symptoms,
    #retroiluminacion-tv .gstvbk-tech {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #retroiluminacion-tv .gstvbk-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 12px;
    }

    #retroiluminacion-tv .gstvbk-analysis,
    #retroiluminacion-tv .gstvbk-hud {
        width: 100%;
        min-width: 0;

        padding:
            19px 15px;

        border-radius: 16px;
    }

    #retroiluminacion-tv .gstvbk-route-row {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 4px;
    }

    #retroiluminacion-tv .gstvbk-hud-head {
        flex-direction: column;
        align-items: flex-start;

        gap: 8px;
    }

    #retroiluminacion-tv .gstvbk-hud-screen {
        min-height: 350px;
    }

    #retroiluminacion-tv .gstvbk-hud-core,
    #retroiluminacion-tv .gstvbk-ring,
    #retroiluminacion-tv .gstvbk-line {
        animation: none;
    }

    #retroiluminacion-tv .gstvbk-hud-core {
        width: 112px;
        height: 112px;

        padding: 12px;
    }

    #retroiluminacion-tv .gstvbk-hud-core strong {
        font-size: 8px;
    }

    #retroiluminacion-tv .gstvbk-hud-core span {
        font-size: 5.8px;
    }

    #retroiluminacion-tv .gstvbk-ring.one {
        width: 166px;
        height: 166px;
    }

    #retroiluminacion-tv .gstvbk-ring.two {
        width: 220px;
        height: 220px;
    }

    #retroiluminacion-tv .gstvbk-node {
        width: 100px;

        padding: 7px;
    }

    #retroiluminacion-tv .gstvbk-node-code {
        font-size: 6px;
    }

    #retroiluminacion-tv .gstvbk-node strong {
        font-size: 7px;
    }

    #retroiluminacion-tv
    .gstvbk-node span:last-child {
        display: none;
    }

    #retroiluminacion-tv .gstvbk-hud-route {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #retroiluminacion-tv .gstvbk-hud-step {
        text-align: left;

        font-size: 7.5px;
    }

    #retroiluminacion-tv .gstvbk-warning {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #retroiluminacion-tv .gstvbk-warning-state {
        width: fit-content;
    }

    #retroiluminacion-tv .gstvbk-terminal-body {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 13px;

        padding:
            17px 15px;
    }

    #retroiluminacion-tv .gstvbk-terminal-state {
        width: fit-content;
    }

    #retroiluminacion-tv .gstvbk-footer {
        flex-direction: column;
        align-items: flex-start;

        gap: 6px;
    }
}



/* =========================================================
   MOBILE — RUTA DE RETROILUMINACIÓN SIN SUPERPOSICIONES
   ========================================================= */

@media (max-width: 767px) {

    #retroiluminacion-tv .gstvbk-hud-screen {
        min-height: 0;
        display: grid;
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
        gap: 8px;
        padding: 12px;
    }

    #retroiluminacion-tv .gstvbk-ring,
    #retroiluminacion-tv .gstvbk-line {
        display: none;
    }

    #retroiluminacion-tv .gstvbk-node {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;

        width: auto;
        min-width: 0;
        min-height: 108px;

        padding: 11px;
    }

    #retroiluminacion-tv .gstvbk-node-code {
        font-size: 7.5px;
    }

    #retroiluminacion-tv .gstvbk-node strong {
        font-size: 8.5px;
    }

    #retroiluminacion-tv .gstvbk-node span:last-child {
        display: block;
        font-size: 7.5px;
    }

    #retroiluminacion-tv .gstvbk-hud-core {
        position: relative;
        left: auto;
        top: auto;

        grid-column: 1 / -1;
        order: -1;

        width: 100%;
        height: auto;
        min-height: 96px;

        padding: 15px;

        transform: none;
        border-radius: 13px;
        animation: none;
    }

    #retroiluminacion-tv .gstvbk-hud-core strong {
        font-size: 10px;
    }

    #retroiluminacion-tv .gstvbk-hud-core span {
        font-size: 8px;
    }

    #retroiluminacion-tv .gstvbk-hud-route {
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;

        grid-column: 1 / -1;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 5px;
        margin-top: 2px;
    }

    #retroiluminacion-tv .gstvbk-hud-step {
        padding: 8px;
        text-align: left;
        font-size: 8px;
    }
}


/* =========================================================
   390 PX
   ========================================================= */

@media (max-width: 390px) {

    #retroiluminacion-tv .gstvbk-shell {
        width:
            calc(100% - 24px);
    }

    #retroiluminacion-tv .gstvbk-analysis,
    #retroiluminacion-tv .gstvbk-hud {
        padding-left: 12px;
        padding-right: 12px;
    }

    #retroiluminacion-tv .gstvbk-hud-screen {
        grid-template-columns:
            minmax(0, 1fr);
    }

    #retroiluminacion-tv .gstvbk-hud-core,
    #retroiluminacion-tv .gstvbk-hud-route {
        grid-column: 1;
    }

    #retroiluminacion-tv .gstvbk-hud-route,
    #retroiluminacion-tv .gstvbk-terminal-route {
        display: grid;
        grid-template-columns:
            minmax(0, 1fr);
    }
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    #retroiluminacion-tv,
    #retroiluminacion-tv *,
    #retroiluminacion-tv *::before,
    #retroiluminacion-tv *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition: none !important;
    }

    #retroiluminacion-tv .gstvbk-scan {
        display: none !important;
    }
}


/* ===== Alimentación y encendido TV ===== */
/* =========================================================
   GAMMERS STYLE
   REPARACIÓN DE TV — ALIMENTACIÓN Y ENCENDIDO
   ID INTERNO HTML: alimentacion-encendido-tv
   ========================================================= */

#alimentacion-encendido-tv {
    --tv-bg: #030811;
    --tv-bg-2: #05101b;

    --tv-cyan: #20d5f3;
    --tv-blue: #3286ff;
    --tv-violet: #8b5cf6;

    --tv-green: #43e58b;
    --tv-yellow: #ffc857;
    --tv-orange: #ff9f43;
    --tv-red: #ff637d;

    --tv-text: #edf8ff;
    --tv-muted: #91a8bb;
    --tv-muted-2: #687f92;

    position: relative;
    isolation: isolate;

    width: 100%;
    margin: 0;
    padding: 0;

    overflow: hidden;

    color: var(--tv-text);

    background:
        radial-gradient(
            circle at 12% 16%,
            rgba(255, 200, 87, 0.050),
            transparent 30%
        ),
        radial-gradient(
            circle at 88% 20%,
            rgba(32, 213, 243, 0.055),
            transparent 30%
        ),
        radial-gradient(
            circle at 72% 88%,
            rgba(139, 92, 246, 0.040),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #030811 0%,
            #05101b 50%,
            #030811 100%
        );

    font-family:
        "Poppins",
        Arial,
        sans-serif;

    scroll-margin-top: 90px;
    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}

#alimentacion-encendido-tv *,
#alimentacion-encendido-tv *::before,
#alimentacion-encendido-tv *::after {
    box-sizing: border-box;

    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}


/* =========================================================
   GRID
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-grid {
    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: 0.25;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.042) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.042) 1px,
            transparent 1px
        );

    background-size: 46px 46px;

    mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );

    -webkit-mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );
}


/* =========================================================
   ORBIT
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-orbit {
    position: absolute;

    right: -255px;
    top: 520px;

    width: 510px;
    height: 510px;

    border:
        1px solid rgba(255, 200, 87, 0.040);

    border-radius: 50%;

    pointer-events: none;

    animation:
        gstvpwr-spin
        56s linear infinite;
}

#alimentacion-encendido-tv .gstvpwr-orbit::before,
#alimentacion-encendido-tv .gstvpwr-orbit::after {
    content: "";

    position: absolute;

    border-radius: 50%;
}

#alimentacion-encendido-tv .gstvpwr-orbit::before {
    inset: 82px;

    border:
        1px dashed rgba(32, 213, 243, 0.050);
}

#alimentacion-encendido-tv .gstvpwr-orbit::after {
    inset: 164px;

    border:
        1px solid rgba(139, 92, 246, 0.040);
}

@keyframes gstvpwr-spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
   SCAN
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-scan {
    position: absolute;
    inset: 0;

    pointer-events: none;
    overflow: hidden;
}

#alimentacion-encendido-tv .gstvpwr-scan::before {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    top: 0;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255, 200, 87, 0.22),
            rgba(32, 213, 243, 0.16),
            transparent
        );

    box-shadow:
        0 0 16px rgba(255, 200, 87, 0.06);

    animation:
        gstvpwr-scan
        12s linear infinite;
}

@keyframes gstvpwr-scan {

    0% {
        transform: translateY(0);
        opacity: 0;
    }

    8% {
        opacity: 0.35;
    }

    92% {
        opacity: 0.14;
    }

    100% {
        transform: translateY(3400px);
        opacity: 0;
    }
}


/* =========================================================
   SHELL
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-shell {
    position: relative;
    z-index: 2;

    width:
        min(
            1180px,
            calc(100% - 48px)
        );

    margin: 0 auto;

    padding:
        92px 0 96px;
}


/* =========================================================
   HEADING
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-heading {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(300px, 0.48fr);

    gap: 44px;

    align-items: end;

    margin-bottom: 36px;
}

#alimentacion-encendido-tv .gstvpwr-heading-main {
    min-width: 0;
}


/* =========================================================
   KICKER
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-kicker {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    margin-bottom: 15px;
    padding:
        7px 11px;

    border:
        1px solid rgba(255, 200, 87, 0.18);

    border-radius: 999px;

    background:
        rgba(45, 34, 10, 0.12);

    color: #ead08b;

    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;

    letter-spacing: 0.10em;
    text-transform: uppercase;
}

#alimentacion-encendido-tv .gstvpwr-kicker::before {
    content: "";

    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: var(--tv-yellow);

    box-shadow:
        0 0 8px rgba(255, 200, 87, 0.68);
}


/* =========================================================
   TITLE
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-title {
    max-width: 900px;

    margin: 0;

    color: #f4fbff;

    font-size:
        clamp(
            31px,
            4vw,
            49px
        );

    line-height: 1.08;
    font-weight: 700;

    letter-spacing: -0.035em;
}

#alimentacion-encendido-tv .gstvpwr-title span {
    color: var(--tv-yellow);
}

#alimentacion-encendido-tv .gstvpwr-intro {
    max-width: 850px;

    margin:
        16px 0 0;

    color: var(--tv-muted);

    font-size: 15px;
    line-height: 1.76;
}


/* =========================================================
   STATUS
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-status {
    position: relative;

    min-width: 0;

    padding:
        18px 19px;

    overflow: hidden;

    border:
        1px solid rgba(32, 213, 243, 0.14);

    border-radius: 16px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 28, 40, 0.18),
            rgba(4, 13, 23, 0.90)
        );
}

#alimentacion-encendido-tv .gstvpwr-status::before {
    content: "";

    position: absolute;

    left: 0;
    top: 12px;
    bottom: 12px;

    width: 2px;

    background:
        linear-gradient(
            180deg,
            transparent,
            var(--tv-cyan),
            transparent
        );
}

#alimentacion-encendido-tv .gstvpwr-status-label {
    display: flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 7px;

    color: #9cefff;

    font-size: 10px;
    line-height: 1.25;
    font-weight: 600;

    text-transform: uppercase;
}

#alimentacion-encendido-tv .gstvpwr-status-label::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--tv-cyan);

    box-shadow:
        0 0 7px rgba(32, 213, 243, 0.50);
}

#alimentacion-encendido-tv .gstvpwr-status p {
    margin: 0;

    color: #a7bcc9;

    font-size: 11px;
    line-height: 1.62;
}


/* =========================================================
   CORE PRINCIPLE
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-core {
    position: relative;

    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 17px;

    align-items: center;

    margin-bottom: 18px;
    padding:
        18px;

    overflow: hidden;

    border:
        1px solid rgba(255, 200, 87, 0.14);

    border-radius: 15px;

    background:
        linear-gradient(
            135deg,
            rgba(255, 200, 87, 0.040),
            rgba(32, 213, 243, 0.025)
        );
}

#alimentacion-encendido-tv .gstvpwr-core::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 115px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--tv-yellow),
            transparent
        );
}

#alimentacion-encendido-tv .gstvpwr-core-icon {
    display: grid;
    place-items: center;

    width: 64px;
    height: 64px;

    flex: 0 0 64px;

    border:
        1px solid rgba(255, 200, 87, 0.20);

    border-radius: 14px;

    background:
        rgba(255, 200, 87, 0.035);

    color: #ffe3a1;

    font-size: 10px;
    line-height: 1.2;
    font-weight: 700;

    text-align: center;
}

#alimentacion-encendido-tv .gstvpwr-core-copy {
    min-width: 0;
}

#alimentacion-encendido-tv .gstvpwr-core-copy strong {
    display: block;

    margin-bottom: 5px;

    color: #fff3d1;

    font-size: 14px;
    line-height: 1.42;
    font-weight: 600;
}

#alimentacion-encendido-tv .gstvpwr-core-copy span {
    display: block;

    color: #829aa9;

    font-size: 10px;
    line-height: 1.64;
}

#alimentacion-encendido-tv .gstvpwr-core-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        7px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #96edbb;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;
}

#alimentacion-encendido-tv .gstvpwr-core-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   POWER STAGES
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-stages {
    display: grid;

    grid-template-columns:
        repeat(6, minmax(0, 1fr));

    gap: 9px;
}

#alimentacion-encendido-tv .gstvpwr-stage {
    --stage-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        18px 13px 15px;

    overflow: hidden;

    border-radius: 13px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.89),
            rgba(4, 12, 22, 0.97)
        );
}

#alimentacion-encendido-tv .gstvpwr-stage:nth-child(1) {
    --stage-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.12);
}

#alimentacion-encendido-tv .gstvpwr-stage:nth-child(2) {
    --stage-color: #20d5f3;

    border:
        1px solid rgba(32, 213, 243, 0.12);
}

#alimentacion-encendido-tv .gstvpwr-stage:nth-child(3) {
    --stage-color: #3286ff;

    border:
        1px solid rgba(50, 134, 255, 0.12);
}

#alimentacion-encendido-tv .gstvpwr-stage:nth-child(4) {
    --stage-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.12);
}

#alimentacion-encendido-tv .gstvpwr-stage:nth-child(5) {
    --stage-color: #43e58b;

    border:
        1px solid rgba(67, 229, 139, 0.12);
}

#alimentacion-encendido-tv .gstvpwr-stage:nth-child(6) {
    --stage-color: #ff637d;

    border:
        1px solid rgba(255, 99, 125, 0.12);
}

#alimentacion-encendido-tv .gstvpwr-stage::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 64px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--stage-color),
            transparent
        );
}

#alimentacion-encendido-tv .gstvpwr-stage-code {
    display: block;

    margin-bottom: 7px;

    color: var(--stage-color);

    font-size: 8px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#alimentacion-encendido-tv .gstvpwr-stage-title {
    display: block;

    margin-bottom: 5px;

    color: #dcebf4;

    font-size: 10px;
    line-height: 1.43;
    font-weight: 600;
}

#alimentacion-encendido-tv .gstvpwr-stage-copy {
    display: block;

    color: #728b9b;

    font-size: 8.5px;
    line-height: 1.56;
}


/* =========================================================
   SYMPTOMS
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-symptoms {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 10px;

    margin-top: 18px;
}

#alimentacion-encendido-tv .gstvpwr-symptom {
    --sym-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        17px 15px;

    overflow: hidden;

    border-radius: 13px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.88),
            rgba(4, 12, 22, 0.97)
        );
}

#alimentacion-encendido-tv .gstvpwr-symptom:nth-child(1),
#alimentacion-encendido-tv .gstvpwr-symptom:nth-child(4),
#alimentacion-encendido-tv .gstvpwr-symptom:nth-child(7) {
    --sym-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.12);
}

#alimentacion-encendido-tv .gstvpwr-symptom:nth-child(2),
#alimentacion-encendido-tv .gstvpwr-symptom:nth-child(5),
#alimentacion-encendido-tv .gstvpwr-symptom:nth-child(8) {
    --sym-color: #20d5f3;

    border:
        1px solid rgba(32, 213, 243, 0.12);
}

#alimentacion-encendido-tv .gstvpwr-symptom:nth-child(3),
#alimentacion-encendido-tv .gstvpwr-symptom:nth-child(6),
#alimentacion-encendido-tv .gstvpwr-symptom:nth-child(9) {
    --sym-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.12);
}

#alimentacion-encendido-tv .gstvpwr-symptom::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 64px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--sym-color),
            transparent
        );
}

#alimentacion-encendido-tv .gstvpwr-symptom-code {
    display: block;

    margin-bottom: 7px;

    color: var(--sym-color);

    font-size: 8px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#alimentacion-encendido-tv .gstvpwr-symptom-title {
    display: block;

    margin-bottom: 5px;

    color: #dcebf4;

    font-size: 10px;
    line-height: 1.45;
    font-weight: 600;
}

#alimentacion-encendido-tv .gstvpwr-symptom-copy {
    display: block;

    color: #71899a;

    font-size: 9px;
    line-height: 1.56;
}


/* =========================================================
   MAIN ANALYSIS
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-main {
    display: grid;

    grid-template-columns:
        minmax(0, 0.94fr)
        minmax(430px, 1.06fr);

    gap: 18px;

    margin-top: 18px;
}


/* =========================================================
   ANALYSIS
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-analysis {
    min-width: 0;

    padding:
        24px;

    border:
        1px solid rgba(255, 200, 87, 0.12);

    border-radius: 19px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#alimentacion-encendido-tv .gstvpwr-panel-label {
    display: inline-flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 9px;

    color: #ead08b;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#alimentacion-encendido-tv .gstvpwr-panel-label::before {
    content: "";

    width: 14px;
    height: 1px;

    background: currentColor;

    box-shadow:
        0 0 7px currentColor;
}

#alimentacion-encendido-tv .gstvpwr-panel-title {
    margin: 0;

    color: #f1faff;

    font-size: 21px;
    line-height: 1.34;
    font-weight: 700;
}

#alimentacion-encendido-tv .gstvpwr-panel-copy {
    margin:
        9px 0 0;

    color: #8098a8;

    font-size: 10px;
    line-height: 1.67;
}


/* =========================================================
   ROUTE
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-route {
    display: grid;

    gap: 8px;

    margin-top: 18px;
}

#alimentacion-encendido-tv .gstvpwr-route-row {
    --route-color: #ffc857;

    display: grid;

    grid-template-columns:
        112px minmax(0, 1fr);

    gap: 10px;

    padding:
        11px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 9px;

    background:
        rgba(5, 17, 30, 0.54);
}

#alimentacion-encendido-tv .gstvpwr-route-row:nth-child(2) {
    --route-color: #20d5f3;
}

#alimentacion-encendido-tv .gstvpwr-route-row:nth-child(3) {
    --route-color: #3286ff;
}

#alimentacion-encendido-tv .gstvpwr-route-row:nth-child(4) {
    --route-color: #8b5cf6;
}

#alimentacion-encendido-tv .gstvpwr-route-row:nth-child(5) {
    --route-color: #43e58b;
}

#alimentacion-encendido-tv .gstvpwr-route-row:nth-child(6) {
    --route-color: #ff637d;
}

#alimentacion-encendido-tv .gstvpwr-route-label {
    color: var(--route-color);

    font-size: 8px;
    line-height: 1.35;
    font-weight: 700;

    text-transform: uppercase;
}

#alimentacion-encendido-tv .gstvpwr-route-copy {
    color: #758d9d;

    font-size: 9px;
    line-height: 1.56;
}

#alimentacion-encendido-tv .gstvpwr-route-copy strong {
    color: #d6e6ee;
    font-weight: 600;
}


/* =========================================================
   LOAD NOTE
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-load-note {
    display: flex;
    align-items: flex-start;

    gap: 9px;

    margin-top: 13px;
    padding:
        12px;

    border:
        1px solid rgba(255, 200, 87, 0.11);

    border-radius: 10px;

    background:
        rgba(255, 200, 87, 0.023);

    color: #8e866e;

    font-size: 9px;
    line-height: 1.58;
}

#alimentacion-encendido-tv .gstvpwr-load-note::before {
    content: "!";

    display: grid;
    place-items: center;

    width: 19px;
    height: 19px;

    flex: 0 0 19px;

    border:
        1px solid rgba(255, 200, 87, 0.17);

    border-radius: 50%;

    color: #f0d48a;

    font-size: 8px;
    font-weight: 700;
}

#alimentacion-encendido-tv .gstvpwr-load-note strong {
    color: #dfd0a4;
    font-weight: 600;
}


/* =========================================================
   HUD
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-hud {
    position: relative;

    min-width: 0;

    padding:
        22px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.16);

    border-radius: 20px;

    background:
        radial-gradient(
            circle at 50% 38%,
            rgba(255, 200, 87, 0.065),
            transparent 32%
        ),
        radial-gradient(
            circle at 50% 38%,
            rgba(32, 213, 243, 0.055),
            transparent 37%
        ),
        linear-gradient(
            145deg,
            rgba(24, 18, 45, 0.37),
            rgba(4, 12, 22, 0.97)
        );
}

#alimentacion-encendido-tv .gstvpwr-hud::before {
    content: "";

    position: absolute;
    inset: 0;

    opacity: 0.25;

    pointer-events: none;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        );

    background-size: 27px 27px;
}


/* =========================================================
   HUD HEAD
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-hud-head {
    position: relative;
    z-index: 4;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 10px;
}

#alimentacion-encendido-tv .gstvpwr-hud-code {
    color: #c5b9ff;

    font-size: 10px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#alimentacion-encendido-tv .gstvpwr-hud-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        5px 8px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #97eebb;

    font-size: 8px;
    line-height: 1.2;
    font-weight: 600;
}

#alimentacion-encendido-tv .gstvpwr-hud-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   HUD SCREEN
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-hud-screen {
    position: relative;
    z-index: 2;

    min-height: 445px;

    margin-top: 16px;

    overflow: hidden;

    border:
        1px solid rgba(92, 208, 255, 0.075);

    border-radius: 14px;

    background:
        rgba(3, 12, 22, 0.70);
}


/* =========================================================
   HUD CORE
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-hud-core {
    position: absolute;

    z-index: 8;

    left: 50%;
    top: 43%;

    width: 176px;
    height: 176px;

    transform:
        translate(-50%, -50%);

    display: grid;
    place-items: center;

    padding:
        20px;

    border:
        1px solid rgba(255, 200, 87, 0.20);

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(255, 200, 87, 0.10),
            rgba(32, 213, 243, 0.050) 47%,
            rgba(5, 16, 29, 0.97) 77%
        );

    box-shadow:
        0 0 46px rgba(255, 200, 87, 0.07);

    animation:
        gstvpwr-pulse
        4.3s ease-in-out infinite;
}

#alimentacion-encendido-tv .gstvpwr-hud-core div {
    text-align: center;
}

#alimentacion-encendido-tv .gstvpwr-hud-core strong {
    display: block;

    color: #fff2cf;

    font-size: 11px;
    line-height: 1.35;
    font-weight: 700;
}

#alimentacion-encendido-tv .gstvpwr-hud-core span {
    display: block;

    margin-top: 7px;

    color: #7b8e96;

    font-size: 7px;
    line-height: 1.4;
    font-weight: 600;

    text-transform: uppercase;
}

@keyframes gstvpwr-pulse {

    0%,
    100% {
        box-shadow:
            0 0 28px rgba(255, 200, 87, 0.04);
    }

    50% {
        box-shadow:
            0 0 55px rgba(255, 200, 87, 0.12);
    }
}


/* =========================================================
   HUD RINGS
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-ring {
    position: absolute;

    left: 50%;
    top: 43%;

    transform:
        translate(-50%, -50%);

    border-radius: 50%;

    pointer-events: none;
}

#alimentacion-encendido-tv .gstvpwr-ring.one {
    width: 244px;
    height: 244px;

    border:
        1px solid rgba(255, 200, 87, 0.07);

    animation:
        gstvpwr-ring
        22s linear infinite;
}

#alimentacion-encendido-tv .gstvpwr-ring.two {
    width: 320px;
    height: 320px;

    border:
        1px dashed rgba(32, 213, 243, 0.07);

    animation:
        gstvpwr-ring
        32s linear infinite reverse;
}

@keyframes gstvpwr-ring {

    from {
        transform:
            translate(-50%, -50%)
            rotate(0deg);
    }

    to {
        transform:
            translate(-50%, -50%)
            rotate(360deg);
    }
}


/* =========================================================
   HUD NODES
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-node {
    position: absolute;

    z-index: 9;

    width: 126px;

    padding:
        9px;

    border-radius: 9px;

    background:
        rgba(5, 16, 29, 0.94);
}

#alimentacion-encendido-tv .gstvpwr-node.input {
    left: 4%;
    top: 12%;

    border:
        1px solid rgba(255, 200, 87, 0.16);
}

#alimentacion-encendido-tv .gstvpwr-node.standby {
    right: 4%;
    top: 12%;

    border:
        1px solid rgba(32, 213, 243, 0.16);
}

#alimentacion-encendido-tv .gstvpwr-node.rails {
    left: 4%;
    bottom: 23%;

    border:
        1px solid rgba(50, 134, 255, 0.16);
}

#alimentacion-encendido-tv .gstvpwr-node.load {
    right: 4%;
    bottom: 23%;

    border:
        1px solid rgba(139, 92, 246, 0.16);
}

#alimentacion-encendido-tv .gstvpwr-node-code {
    display: block;

    margin-bottom: 4px;

    color: var(--node-color);

    font-size: 7px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#alimentacion-encendido-tv .gstvpwr-node.input {
    --node-color: #ffc857;
}

#alimentacion-encendido-tv .gstvpwr-node.standby {
    --node-color: #20d5f3;
}

#alimentacion-encendido-tv .gstvpwr-node.rails {
    --node-color: #3286ff;
}

#alimentacion-encendido-tv .gstvpwr-node.load {
    --node-color: #8b5cf6;
}

#alimentacion-encendido-tv .gstvpwr-node strong {
    display: block;

    color: #d8e8f0;

    font-size: 9px;
    line-height: 1.35;
    font-weight: 600;
}

#alimentacion-encendido-tv .gstvpwr-node span:last-child {
    display: block;

    margin-top: 4px;

    color: #71899a;

    font-size: 7px;
    line-height: 1.42;
}


/* =========================================================
   CONNECTIONS
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-line {
    position: absolute;

    z-index: 4;

    height: 1px;

    transform-origin: left center;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255, 200, 87, 0.29),
            rgba(32, 213, 243, 0.21),
            transparent
        );

    animation:
        gstvpwr-line
        3s ease-in-out infinite;
}

#alimentacion-encendido-tv .gstvpwr-line.l1 {
    left: 20%;
    top: 27%;

    width: 35%;

    transform:
        rotate(21deg);
}

#alimentacion-encendido-tv .gstvpwr-line.l2 {
    left: 50%;
    top: 43%;

    width: 34%;

    transform:
        rotate(-21deg);
}

#alimentacion-encendido-tv .gstvpwr-line.l3 {
    left: 20%;
    bottom: 32%;

    width: 35%;

    transform:
        rotate(-20deg);
}

#alimentacion-encendido-tv .gstvpwr-line.l4 {
    left: 49%;
    bottom: 32%;

    width: 35%;

    transform:
        rotate(20deg);
}

@keyframes gstvpwr-line {

    0%,
    100% {
        opacity: 0.13;
    }

    50% {
        opacity: 0.70;
    }
}


/* =========================================================
   HUD ROUTE
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-hud-route {
    position: absolute;

    z-index: 10;

    left: 12px;
    right: 12px;
    bottom: 12px;

    display: grid;

    grid-template-columns:
        repeat(6, minmax(0, 1fr));

    gap: 4px;
}

#alimentacion-encendido-tv .gstvpwr-hud-step {
    min-width: 0;

    padding:
        7px 3px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(5, 17, 30, 0.85);

    color: #728b9b;

    text-align: center;

    font-size: 6.5px;
    line-height: 1.35;
    font-weight: 600;
}


/* =========================================================
   WARNING
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-warning {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 12px;

    align-items: center;

    margin-top: 18px;
    padding:
        16px;

    border:
        1px solid rgba(255, 99, 125, 0.12);

    border-radius: 13px;

    background:
        linear-gradient(
            135deg,
            rgba(255, 99, 125, 0.022),
            rgba(255, 200, 87, 0.016)
        );
}

#alimentacion-encendido-tv .gstvpwr-warning-icon {
    display: grid;
    place-items: center;

    width: 32px;
    height: 32px;

    flex: 0 0 32px;

    border:
        1px solid rgba(255, 99, 125, 0.18);

    border-radius: 9px;

    color: #ff9baa;

    font-size: 10px;
    font-weight: 700;
}

#alimentacion-encendido-tv .gstvpwr-warning-copy {
    color: #92757d;

    font-size: 9px;
    line-height: 1.6;
}

#alimentacion-encendido-tv .gstvpwr-warning-copy strong {
    color: #f0c3ca;
    font-weight: 600;
}

#alimentacion-encendido-tv .gstvpwr-warning-state {
    flex-shrink: 0;

    color: #c38d97;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 600;

    text-transform: uppercase;
}


/* =========================================================
   TERMINAL
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-terminal {
    margin-top: 18px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.17);

    border-radius: 17px;

    background:
        linear-gradient(
            155deg,
            rgba(10, 18, 38, 0.94),
            rgba(4, 9, 20, 0.98)
        );
}

#alimentacion-encendido-tv .gstvpwr-terminal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    min-height: 43px;

    padding:
        10px 14px;

    border-bottom:
        1px solid rgba(118, 167, 255, 0.09);

    background:
        rgba(8, 18, 34, 0.74);
}

#alimentacion-encendido-tv .gstvpwr-terminal-dots {
    display: flex;

    gap: 6px;
}

#alimentacion-encendido-tv .gstvpwr-terminal-dots span {
    width: 6px;
    height: 6px;

    border-radius: 50%;
}

#alimentacion-encendido-tv
.gstvpwr-terminal-dots span:nth-child(1) {
    background: var(--tv-red);
}

#alimentacion-encendido-tv
.gstvpwr-terminal-dots span:nth-child(2) {
    background: var(--tv-yellow);
}

#alimentacion-encendido-tv
.gstvpwr-terminal-dots span:nth-child(3) {
    background: var(--tv-green);
}

#alimentacion-encendido-tv .gstvpwr-terminal-name {
    color: #71889d;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;

    text-transform: uppercase;
}

#alimentacion-encendido-tv .gstvpwr-terminal-body {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr) auto;

    gap: 20px;

    align-items: center;

    padding:
        19px 20px;
}

#alimentacion-encendido-tv .gstvpwr-terminal-route {
    display: flex;
    flex-wrap: wrap;

    gap: 7px;
}

#alimentacion-encendido-tv .gstvpwr-terminal-route span {
    display: inline-flex;
    align-items: center;

    min-height: 28px;

    padding:
        6px 8px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(6, 18, 31, 0.50);

    color: #8298a8;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 500;
}

#alimentacion-encendido-tv .gstvpwr-terminal-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        8px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.13);

    border-radius: 9px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #9beabd;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 600;
}

#alimentacion-encendido-tv .gstvpwr-terminal-state::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   FOOTER
   ========================================================= */

#alimentacion-encendido-tv .gstvpwr-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 18px;

    margin-top: 21px;
    padding: 0 3px;

    color: #60788c;

    font-size: 9px;
    line-height: 1.45;
    font-weight: 500;

    text-transform: uppercase;
}

#alimentacion-encendido-tv .gstvpwr-footer-status {
    display: flex;
    align-items: center;

    gap: 7px;

    color: #7791a5;
}

#alimentacion-encendido-tv .gstvpwr-footer-status::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.45);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    #alimentacion-encendido-tv .gstvpwr-shell {
        width:
            min(
                100% - 40px,
                920px
            );

        padding:
            76px 0 80px;
    }

    #alimentacion-encendido-tv .gstvpwr-heading {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 20px;
    }

    #alimentacion-encendido-tv .gstvpwr-status {
        max-width: 650px;
    }

    #alimentacion-encendido-tv .gstvpwr-stages {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

    #alimentacion-encendido-tv .gstvpwr-symptoms {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #alimentacion-encendido-tv .gstvpwr-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 14px;
    }

    #alimentacion-encendido-tv .gstvpwr-hud {
        width: 100%;
        max-width: 740px;

        margin: 0 auto;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #alimentacion-encendido-tv {
        overflow: hidden;
    }

    #alimentacion-encendido-tv .gstvpwr-grid {
        opacity: 0.17;

        background-size: 32px 32px;
    }

    #alimentacion-encendido-tv .gstvpwr-orbit,
    #alimentacion-encendido-tv .gstvpwr-scan {
        display: none;
    }

    #alimentacion-encendido-tv .gstvpwr-shell {
        width:
            calc(100% - 30px);

        max-width: 100%;

        padding:
            61px 0 65px;
    }

    #alimentacion-encendido-tv .gstvpwr-heading {
        display: block;

        margin-bottom: 28px;
    }

    #alimentacion-encendido-tv .gstvpwr-status {
        margin-top: 20px;

        padding:
            15px 16px;
    }

    #alimentacion-encendido-tv .gstvpwr-title {
        font-size:
            clamp(
                29px,
                9vw,
                38px
            );
    }

    #alimentacion-encendido-tv .gstvpwr-intro {
        font-size: 14px;
        line-height: 1.7;
    }

    #alimentacion-encendido-tv .gstvpwr-core {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 9px;

        padding:
            15px;
    }

    #alimentacion-encendido-tv .gstvpwr-core-state {
        width: fit-content;
    }

    #alimentacion-encendido-tv .gstvpwr-stages,
    #alimentacion-encendido-tv .gstvpwr-symptoms {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #alimentacion-encendido-tv .gstvpwr-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 12px;
    }

    #alimentacion-encendido-tv .gstvpwr-analysis,
    #alimentacion-encendido-tv .gstvpwr-hud {
        width: 100%;
        min-width: 0;

        padding:
            19px 15px;

        border-radius: 16px;
    }

    #alimentacion-encendido-tv .gstvpwr-route-row {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 4px;
    }

    #alimentacion-encendido-tv .gstvpwr-hud-head {
        flex-direction: column;
        align-items: flex-start;

        gap: 8px;
    }

    #alimentacion-encendido-tv .gstvpwr-hud-screen {
        min-height: 355px;
    }

    #alimentacion-encendido-tv .gstvpwr-hud-core,
    #alimentacion-encendido-tv .gstvpwr-ring,
    #alimentacion-encendido-tv .gstvpwr-line {
        animation: none;
    }

    #alimentacion-encendido-tv .gstvpwr-hud-core {
        width: 112px;
        height: 112px;

        padding: 12px;
    }

    #alimentacion-encendido-tv .gstvpwr-hud-core strong {
        font-size: 7.5px;
    }

    #alimentacion-encendido-tv .gstvpwr-hud-core span {
        font-size: 5.8px;
    }

    #alimentacion-encendido-tv .gstvpwr-ring.one {
        width: 166px;
        height: 166px;
    }

    #alimentacion-encendido-tv .gstvpwr-ring.two {
        width: 220px;
        height: 220px;
    }

    #alimentacion-encendido-tv .gstvpwr-node {
        width: 100px;

        padding: 7px;
    }

    #alimentacion-encendido-tv .gstvpwr-node-code {
        font-size: 6px;
    }

    #alimentacion-encendido-tv .gstvpwr-node strong {
        font-size: 7px;
    }

    #alimentacion-encendido-tv
    .gstvpwr-node span:last-child {
        display: none;
    }

    #alimentacion-encendido-tv .gstvpwr-hud-route {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #alimentacion-encendido-tv .gstvpwr-hud-step {
        text-align: left;

        font-size: 7.3px;
    }

    #alimentacion-encendido-tv .gstvpwr-warning {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #alimentacion-encendido-tv .gstvpwr-warning-state {
        width: fit-content;
    }

    #alimentacion-encendido-tv .gstvpwr-terminal-body {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 13px;

        padding:
            17px 15px;
    }

    #alimentacion-encendido-tv .gstvpwr-terminal-state {
        width: fit-content;
    }

    #alimentacion-encendido-tv .gstvpwr-footer {
        flex-direction: column;
        align-items: flex-start;

        gap: 6px;
    }
}



/* =========================================================
   MOBILE — SECUENCIA DE ALIMENTACIÓN SIN SUPERPOSICIONES
   ========================================================= */

@media (max-width: 767px) {

    #alimentacion-encendido-tv .gstvpwr-hud-screen {
        min-height: 0;
        display: grid;
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
        gap: 8px;
        padding: 12px;
    }

    #alimentacion-encendido-tv .gstvpwr-ring,
    #alimentacion-encendido-tv .gstvpwr-line {
        display: none;
    }

    #alimentacion-encendido-tv .gstvpwr-node {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;

        width: auto;
        min-width: 0;
        min-height: 108px;

        padding: 11px;
    }

    #alimentacion-encendido-tv .gstvpwr-node-code {
        font-size: 7.5px;
    }

    #alimentacion-encendido-tv .gstvpwr-node strong {
        font-size: 8.5px;
    }

    #alimentacion-encendido-tv .gstvpwr-node span:last-child {
        display: block;
        font-size: 7.5px;
    }

    #alimentacion-encendido-tv .gstvpwr-hud-core {
        position: relative;
        left: auto;
        top: auto;

        grid-column: 1 / -1;
        order: -1;

        width: 100%;
        height: auto;
        min-height: 96px;

        padding: 15px;

        transform: none;
        border-radius: 13px;
        animation: none;
    }

    #alimentacion-encendido-tv .gstvpwr-hud-core strong {
        font-size: 10px;
    }

    #alimentacion-encendido-tv .gstvpwr-hud-core span {
        font-size: 8px;
    }

    #alimentacion-encendido-tv .gstvpwr-hud-route {
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;

        grid-column: 1 / -1;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 5px;
        margin-top: 2px;
    }

    #alimentacion-encendido-tv .gstvpwr-hud-step {
        padding: 8px;
        text-align: left;
        font-size: 8px;
    }
}


/* =========================================================
   390 PX
   ========================================================= */

@media (max-width: 390px) {

    #alimentacion-encendido-tv .gstvpwr-shell {
        width:
            calc(100% - 24px);
    }

    #alimentacion-encendido-tv .gstvpwr-analysis,
    #alimentacion-encendido-tv .gstvpwr-hud {
        padding-left: 12px;
        padding-right: 12px;
    }

    #alimentacion-encendido-tv .gstvpwr-hud-screen {
        grid-template-columns:
            minmax(0, 1fr);
    }

    #alimentacion-encendido-tv .gstvpwr-hud-core,
    #alimentacion-encendido-tv .gstvpwr-hud-route {
        grid-column: 1;
    }

    #alimentacion-encendido-tv .gstvpwr-hud-route,
    #alimentacion-encendido-tv .gstvpwr-terminal-route {
        display: grid;
        grid-template-columns:
            minmax(0, 1fr);
    }
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    #alimentacion-encendido-tv,
    #alimentacion-encendido-tv *,
    #alimentacion-encendido-tv *::before,
    #alimentacion-encendido-tv *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition: none !important;
    }

    #alimentacion-encendido-tv .gstvpwr-scan {
        display: none !important;
    }
}


/* ===== Video T-Con y Panel TV ===== */
/* =========================================================
   GAMMERS STYLE
   REPARACIÓN DE TV — VIDEO / T-CON / PANEL
   ID INTERNO HTML: video-tcon-panel-tv
   ========================================================= */

#video-tcon-panel-tv {
    --tv-bg: #030811;
    --tv-bg-2: #05101b;

    --tv-cyan: #20d5f3;
    --tv-blue: #3286ff;
    --tv-violet: #8b5cf6;

    --tv-green: #43e58b;
    --tv-yellow: #ffc857;
    --tv-orange: #ff9f43;
    --tv-red: #ff637d;

    --tv-text: #edf8ff;
    --tv-muted: #91a8bb;
    --tv-muted-2: #687f92;

    position: relative;
    isolation: isolate;

    width: 100%;
    margin: 0;
    padding: 0;

    overflow: hidden;

    color: var(--tv-text);

    background:
        radial-gradient(
            circle at 12% 15%,
            rgba(50, 134, 255, 0.060),
            transparent 30%
        ),
        radial-gradient(
            circle at 88% 20%,
            rgba(139, 92, 246, 0.055),
            transparent 30%
        ),
        radial-gradient(
            circle at 68% 90%,
            rgba(32, 213, 243, 0.035),
            transparent 30%
        ),
        linear-gradient(
            180deg,
            #030811 0%,
            #05101b 50%,
            #030811 100%
        );

    font-family:
        "Poppins",
        Arial,
        sans-serif;

    scroll-margin-top: 90px;
    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}

#video-tcon-panel-tv *,
#video-tcon-panel-tv *::before,
#video-tcon-panel-tv *::after {
    box-sizing: border-box;

    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}


/* =========================================================
   BACKGROUND GRID
   ========================================================= */

#video-tcon-panel-tv .gstvvid-grid {
    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: 0.25;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.042) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.042) 1px,
            transparent 1px
        );

    background-size: 46px 46px;

    mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );

    -webkit-mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );
}


/* =========================================================
   ORBIT
   ========================================================= */

#video-tcon-panel-tv .gstvvid-orbit {
    position: absolute;

    left: -260px;
    top: 580px;

    width: 520px;
    height: 520px;

    pointer-events: none;

    border:
        1px solid rgba(50, 134, 255, 0.040);

    border-radius: 50%;

    animation:
        gstvvid-spin
        58s linear infinite;
}

#video-tcon-panel-tv .gstvvid-orbit::before,
#video-tcon-panel-tv .gstvvid-orbit::after {
    content: "";

    position: absolute;

    border-radius: 50%;
}

#video-tcon-panel-tv .gstvvid-orbit::before {
    inset: 84px;

    border:
        1px dashed rgba(139, 92, 246, 0.050);
}

#video-tcon-panel-tv .gstvvid-orbit::after {
    inset: 170px;

    border:
        1px solid rgba(32, 213, 243, 0.040);
}

@keyframes gstvvid-spin {

    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
   SCAN
   ========================================================= */

#video-tcon-panel-tv .gstvvid-scan {
    position: absolute;
    inset: 0;

    pointer-events: none;

    overflow: hidden;
}

#video-tcon-panel-tv .gstvvid-scan::before {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    top: 0;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(50, 134, 255, 0.20),
            rgba(139, 92, 246, 0.16),
            rgba(32, 213, 243, 0.14),
            transparent
        );

    box-shadow:
        0 0 16px rgba(50, 134, 255, 0.07);

    animation:
        gstvvid-scan
        12s linear infinite;
}

@keyframes gstvvid-scan {

    0% {
        transform: translateY(0);
        opacity: 0;
    }

    8% {
        opacity: 0.35;
    }

    92% {
        opacity: 0.14;
    }

    100% {
        transform: translateY(3400px);
        opacity: 0;
    }
}


/* =========================================================
   SHELL
   ========================================================= */

#video-tcon-panel-tv .gstvvid-shell {
    position: relative;
    z-index: 2;

    width:
        min(
            1180px,
            calc(100% - 48px)
        );

    margin: 0 auto;

    padding:
        92px 0 96px;
}


/* =========================================================
   HEADING
   ========================================================= */

#video-tcon-panel-tv .gstvvid-heading {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(300px, 0.48fr);

    gap: 44px;

    align-items: end;

    margin-bottom: 36px;
}

#video-tcon-panel-tv .gstvvid-heading-main {
    min-width: 0;
}


/* =========================================================
   KICKER
   ========================================================= */

#video-tcon-panel-tv .gstvvid-kicker {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    margin-bottom: 15px;
    padding:
        7px 11px;

    border:
        1px solid rgba(50, 134, 255, 0.18);

    border-radius: 999px;

    background:
        rgba(50, 134, 255, 0.035);

    color: #a8caff;

    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;

    letter-spacing: 0.10em;
    text-transform: uppercase;
}

#video-tcon-panel-tv .gstvvid-kicker::before {
    content: "";

    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: var(--tv-blue);

    box-shadow:
        0 0 8px rgba(50, 134, 255, 0.68);
}


/* =========================================================
   TITLE
   ========================================================= */

#video-tcon-panel-tv .gstvvid-title {
    max-width: 900px;

    margin: 0;

    color: #f4fbff;

    font-size:
        clamp(
            31px,
            4vw,
            49px
        );

    line-height: 1.08;
    font-weight: 700;

    letter-spacing: -0.035em;
}

#video-tcon-panel-tv .gstvvid-title span {
    color: var(--tv-blue);
}

#video-tcon-panel-tv .gstvvid-intro {
    max-width: 850px;

    margin:
        16px 0 0;

    color: var(--tv-muted);

    font-size: 15px;
    line-height: 1.76;
}


/* =========================================================
   STATUS
   ========================================================= */

#video-tcon-panel-tv .gstvvid-status {
    position: relative;

    min-width: 0;

    padding:
        18px 19px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.14);

    border-radius: 16px;

    background:
        linear-gradient(
            145deg,
            rgba(139, 92, 246, 0.055),
            rgba(4, 13, 23, 0.90)
        );
}

#video-tcon-panel-tv .gstvvid-status::before {
    content: "";

    position: absolute;

    left: 0;
    top: 12px;
    bottom: 12px;

    width: 2px;

    background:
        linear-gradient(
            180deg,
            transparent,
            var(--tv-violet),
            transparent
        );
}

#video-tcon-panel-tv .gstvvid-status-label {
    display: flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 7px;

    color: #cabfff;

    font-size: 10px;
    line-height: 1.25;
    font-weight: 600;

    text-transform: uppercase;
}

#video-tcon-panel-tv .gstvvid-status-label::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--tv-violet);

    box-shadow:
        0 0 7px rgba(139, 92, 246, 0.52);
}

#video-tcon-panel-tv .gstvvid-status p {
    margin: 0;

    color: #a7bcc9;

    font-size: 11px;
    line-height: 1.62;
}


/* =========================================================
   CORE PRINCIPLE
   ========================================================= */

#video-tcon-panel-tv .gstvvid-core {
    position: relative;

    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 17px;

    align-items: center;

    margin-bottom: 18px;
    padding:
        18px;

    overflow: hidden;

    border:
        1px solid rgba(50, 134, 255, 0.14);

    border-radius: 15px;

    background:
        linear-gradient(
            135deg,
            rgba(50, 134, 255, 0.045),
            rgba(139, 92, 246, 0.025)
        );
}

#video-tcon-panel-tv .gstvvid-core::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 118px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--tv-blue),
            transparent
        );
}

#video-tcon-panel-tv .gstvvid-core-icon {
    display: grid;
    place-items: center;

    width: 64px;
    height: 64px;

    flex: 0 0 64px;

    border:
        1px solid rgba(50, 134, 255, 0.20);

    border-radius: 14px;

    background:
        rgba(50, 134, 255, 0.040);

    color: #aecfff;

    font-size: 9px;
    line-height: 1.2;
    font-weight: 700;

    text-align: center;
}

#video-tcon-panel-tv .gstvvid-core-copy {
    min-width: 0;
}

#video-tcon-panel-tv .gstvvid-core-copy strong {
    display: block;

    margin-bottom: 5px;

    color: #e5f0ff;

    font-size: 14px;
    line-height: 1.42;
    font-weight: 600;
}

#video-tcon-panel-tv .gstvvid-core-copy span {
    display: block;

    color: #829aa9;

    font-size: 10px;
    line-height: 1.64;
}

#video-tcon-panel-tv .gstvvid-core-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        7px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #96edbb;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;
}

#video-tcon-panel-tv .gstvvid-core-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   CHAIN CARDS
   ========================================================= */

#video-tcon-panel-tv .gstvvid-chain {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 10px;
}

#video-tcon-panel-tv .gstvvid-chain-card {
    --chain-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        20px 16px 18px;

    overflow: hidden;

    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#video-tcon-panel-tv .gstvvid-chain-card.input {
    --chain-color: #20d5f3;

    border:
        1px solid rgba(32, 213, 243, 0.13);
}

#video-tcon-panel-tv .gstvvid-chain-card.main {
    --chain-color: #3286ff;

    border:
        1px solid rgba(50, 134, 255, 0.13);
}

#video-tcon-panel-tv .gstvvid-chain-card.tcon {
    --chain-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.13);
}

#video-tcon-panel-tv .gstvvid-chain-card.panel {
    --chain-color: #43e58b;

    border:
        1px solid rgba(67, 229, 139, 0.13);
}

#video-tcon-panel-tv .gstvvid-chain-card::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 75px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--chain-color),
            transparent
        );
}

#video-tcon-panel-tv .gstvvid-chain-code {
    display: block;

    margin-bottom: 8px;

    color: var(--chain-color);

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#video-tcon-panel-tv .gstvvid-chain-title {
    display: block;

    margin-bottom: 6px;

    color: #e0edf4;

    font-size: 11px;
    line-height: 1.44;
    font-weight: 600;
}

#video-tcon-panel-tv .gstvvid-chain-copy {
    display: block;

    color: #748c9c;

    font-size: 9px;
    line-height: 1.58;
}


/* =========================================================
   FLOW STRIP
   ========================================================= */

#video-tcon-panel-tv .gstvvid-flow {
    display: grid;

    grid-template-columns:
        repeat(7, minmax(0, 1fr));

    gap: 5px;

    margin-top: 10px;
    padding:
        10px;

    border:
        1px solid rgba(92, 208, 255, 0.075);

    border-radius: 11px;

    background:
        rgba(5, 17, 30, 0.45);
}

#video-tcon-panel-tv .gstvvid-flow span {
    min-width: 0;

    padding:
        7px 5px;

    border:
        1px solid rgba(255,255,255,0.045);

    border-radius: 7px;

    color: #748d9d;

    text-align: center;

    font-size: 7.5px;
    line-height: 1.35;
    font-weight: 600;
}

#video-tcon-panel-tv .gstvvid-flow span:nth-child(1) {
    color: #93eafa;
}

#video-tcon-panel-tv .gstvvid-flow span:nth-child(3) {
    color: #9fc4ff;
}

#video-tcon-panel-tv .gstvvid-flow span:nth-child(5) {
    color: #c5b8ff;
}

#video-tcon-panel-tv .gstvvid-flow span:nth-child(7) {
    color: #9de9bd;
}


/* =========================================================
   SYMPTOMS
   ========================================================= */

#video-tcon-panel-tv .gstvvid-symptoms {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 10px;

    margin-top: 18px;
}

#video-tcon-panel-tv .gstvvid-symptom {
    --sym-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        17px 15px;

    overflow: hidden;

    border-radius: 13px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.88),
            rgba(4, 12, 22, 0.97)
        );
}

#video-tcon-panel-tv .gstvvid-symptom:nth-child(1),
#video-tcon-panel-tv .gstvvid-symptom:nth-child(4) {
    --sym-color: #3286ff;

    border:
        1px solid rgba(50, 134, 255, 0.12);
}

#video-tcon-panel-tv .gstvvid-symptom:nth-child(2),
#video-tcon-panel-tv .gstvvid-symptom:nth-child(5) {
    --sym-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.12);
}

#video-tcon-panel-tv .gstvvid-symptom:nth-child(3),
#video-tcon-panel-tv .gstvvid-symptom:nth-child(6) {
    --sym-color: #20d5f3;

    border:
        1px solid rgba(32, 213, 243, 0.12);
}

#video-tcon-panel-tv .gstvvid-symptom::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 65px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--sym-color),
            transparent
        );
}

#video-tcon-panel-tv .gstvvid-symptom-code {
    display: block;

    margin-bottom: 7px;

    color: var(--sym-color);

    font-size: 8px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#video-tcon-panel-tv .gstvvid-symptom-title {
    display: block;

    margin-bottom: 5px;

    color: #dcebf4;

    font-size: 10px;
    line-height: 1.45;
    font-weight: 600;
}

#video-tcon-panel-tv .gstvvid-symptom-copy {
    display: block;

    color: #71899a;

    font-size: 9px;
    line-height: 1.56;
}


/* =========================================================
   MAIN ANALYSIS GRID
   ========================================================= */

#video-tcon-panel-tv .gstvvid-main {
    display: grid;

    grid-template-columns:
        minmax(0, 0.94fr)
        minmax(430px, 1.06fr);

    gap: 18px;

    margin-top: 18px;
}


/* =========================================================
   ANALYSIS
   ========================================================= */

#video-tcon-panel-tv .gstvvid-analysis {
    min-width: 0;

    padding:
        24px;

    border:
        1px solid rgba(50, 134, 255, 0.12);

    border-radius: 19px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#video-tcon-panel-tv .gstvvid-panel-label {
    display: inline-flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 9px;

    color: #a8caff;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#video-tcon-panel-tv .gstvvid-panel-label::before {
    content: "";

    width: 14px;
    height: 1px;

    background: currentColor;

    box-shadow:
        0 0 7px currentColor;
}

#video-tcon-panel-tv .gstvvid-panel-title {
    margin: 0;

    color: #f1faff;

    font-size: 21px;
    line-height: 1.34;
    font-weight: 700;
}

#video-tcon-panel-tv .gstvvid-panel-copy {
    margin:
        9px 0 0;

    color: #8098a8;

    font-size: 10px;
    line-height: 1.67;
}


/* =========================================================
   DIAGNOSTIC ROUTE
   ========================================================= */

#video-tcon-panel-tv .gstvvid-route {
    display: grid;

    gap: 8px;

    margin-top: 18px;
}

#video-tcon-panel-tv .gstvvid-route-row {
    --route-color: #20d5f3;

    display: grid;

    grid-template-columns:
        112px minmax(0, 1fr);

    gap: 10px;

    padding:
        11px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 9px;

    background:
        rgba(5, 17, 30, 0.54);
}

#video-tcon-panel-tv .gstvvid-route-row:nth-child(2) {
    --route-color: #3286ff;
}

#video-tcon-panel-tv .gstvvid-route-row:nth-child(3) {
    --route-color: #20d5f3;
}

#video-tcon-panel-tv .gstvvid-route-row:nth-child(4) {
    --route-color: #8b5cf6;
}

#video-tcon-panel-tv .gstvvid-route-row:nth-child(5) {
    --route-color: #43e58b;
}

#video-tcon-panel-tv .gstvvid-route-row:nth-child(6) {
    --route-color: #ffc857;
}

#video-tcon-panel-tv .gstvvid-route-label {
    color: var(--route-color);

    font-size: 8px;
    line-height: 1.35;
    font-weight: 700;

    text-transform: uppercase;
}

#video-tcon-panel-tv .gstvvid-route-copy {
    color: #758d9d;

    font-size: 9px;
    line-height: 1.56;
}

#video-tcon-panel-tv .gstvvid-route-copy strong {
    color: #d6e6ee;
    font-weight: 600;
}


/* =========================================================
   ARCHITECTURE NOTE
   ========================================================= */

#video-tcon-panel-tv .gstvvid-architecture-note {
    display: flex;
    align-items: flex-start;

    gap: 9px;

    margin-top: 13px;
    padding:
        12px;

    border:
        1px solid rgba(139, 92, 246, 0.11);

    border-radius: 10px;

    background:
        rgba(139, 92, 246, 0.022);

    color: #837f98;

    font-size: 9px;
    line-height: 1.58;
}

#video-tcon-panel-tv .gstvvid-architecture-note::before {
    content: "i";

    display: grid;
    place-items: center;

    width: 19px;
    height: 19px;

    flex: 0 0 19px;

    border:
        1px solid rgba(139, 92, 246, 0.17);

    border-radius: 50%;

    color: #c5b9ff;

    font-size: 8px;
    font-weight: 700;
}

#video-tcon-panel-tv .gstvvid-architecture-note strong {
    color: #cbc2eb;
    font-weight: 600;
}


/* =========================================================
   HUD
   ========================================================= */

#video-tcon-panel-tv .gstvvid-hud {
    position: relative;

    min-width: 0;

    padding:
        22px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.16);

    border-radius: 20px;

    background:
        radial-gradient(
            circle at 50% 39%,
            rgba(50, 134, 255, 0.070),
            transparent 31%
        ),
        radial-gradient(
            circle at 50% 39%,
            rgba(139, 92, 246, 0.055),
            transparent 37%
        ),
        linear-gradient(
            145deg,
            rgba(24, 18, 45, 0.37),
            rgba(4, 12, 22, 0.97)
        );
}

#video-tcon-panel-tv .gstvvid-hud::before {
    content: "";

    position: absolute;
    inset: 0;

    opacity: 0.25;

    pointer-events: none;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        );

    background-size: 27px 27px;
}


/* =========================================================
   HUD HEADER
   ========================================================= */

#video-tcon-panel-tv .gstvvid-hud-head {
    position: relative;
    z-index: 4;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 10px;
}

#video-tcon-panel-tv .gstvvid-hud-code {
    color: #c5b9ff;

    font-size: 10px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#video-tcon-panel-tv .gstvvid-hud-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        5px 8px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #97eebb;

    font-size: 8px;
    line-height: 1.2;
    font-weight: 600;
}

#video-tcon-panel-tv .gstvvid-hud-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   HUD SCREEN
   ========================================================= */

#video-tcon-panel-tv .gstvvid-hud-screen {
    position: relative;
    z-index: 2;

    min-height: 445px;

    margin-top: 16px;

    overflow: hidden;

    border:
        1px solid rgba(92, 208, 255, 0.075);

    border-radius: 14px;

    background:
        rgba(3, 12, 22, 0.70);
}


/* =========================================================
   HUD CORE
   ========================================================= */

#video-tcon-panel-tv .gstvvid-hud-core {
    position: absolute;

    z-index: 8;

    left: 50%;
    top: 43%;

    width: 176px;
    height: 176px;

    transform:
        translate(-50%, -50%);

    display: grid;
    place-items: center;

    padding:
        19px;

    border:
        1px solid rgba(50, 134, 255, 0.20);

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(50, 134, 255, 0.11),
            rgba(139, 92, 246, 0.050) 47%,
            rgba(5, 16, 29, 0.97) 77%
        );

    box-shadow:
        0 0 46px rgba(50, 134, 255, 0.08);

    animation:
        gstvvid-pulse
        4.3s ease-in-out infinite;
}

#video-tcon-panel-tv .gstvvid-hud-core div {
    text-align: center;
}

#video-tcon-panel-tv .gstvvid-hud-core strong {
    display: block;

    color: #e9f2ff;

    font-size: 11px;
    line-height: 1.35;
    font-weight: 700;
}

#video-tcon-panel-tv .gstvvid-hud-core span {
    display: block;

    margin-top: 7px;

    color: #768d9e;

    font-size: 7px;
    line-height: 1.4;
    font-weight: 600;

    text-transform: uppercase;
}

@keyframes gstvvid-pulse {

    0%,
    100% {
        box-shadow:
            0 0 28px rgba(50, 134, 255, 0.04);
    }

    50% {
        box-shadow:
            0 0 55px rgba(50, 134, 255, 0.12);
    }
}


/* =========================================================
   HUD RINGS
   ========================================================= */

#video-tcon-panel-tv .gstvvid-ring {
    position: absolute;

    left: 50%;
    top: 43%;

    transform:
        translate(-50%, -50%);

    border-radius: 50%;

    pointer-events: none;
}

#video-tcon-panel-tv .gstvvid-ring.one {
    width: 244px;
    height: 244px;

    border:
        1px solid rgba(50, 134, 255, 0.07);

    animation:
        gstvvid-ring
        22s linear infinite;
}

#video-tcon-panel-tv .gstvvid-ring.two {
    width: 320px;
    height: 320px;

    border:
        1px dashed rgba(139, 92, 246, 0.07);

    animation:
        gstvvid-ring
        32s linear infinite reverse;
}

@keyframes gstvvid-ring {

    from {
        transform:
            translate(-50%, -50%)
            rotate(0deg);
    }

    to {
        transform:
            translate(-50%, -50%)
            rotate(360deg);
    }
}


/* =========================================================
   HUD NODES
   ========================================================= */

#video-tcon-panel-tv .gstvvid-node {
    position: absolute;

    z-index: 9;

    width: 126px;

    padding:
        9px;

    border-radius: 9px;

    background:
        rgba(5, 16, 29, 0.94);
}

#video-tcon-panel-tv .gstvvid-node.source {
    left: 4%;
    top: 12%;

    border:
        1px solid rgba(32, 213, 243, 0.16);
}

#video-tcon-panel-tv .gstvvid-node.main {
    right: 4%;
    top: 12%;

    border:
        1px solid rgba(50, 134, 255, 0.16);
}

#video-tcon-panel-tv .gstvvid-node.tcon {
    left: 4%;
    bottom: 23%;

    border:
        1px solid rgba(139, 92, 246, 0.16);
}

#video-tcon-panel-tv .gstvvid-node.panel {
    right: 4%;
    bottom: 23%;

    border:
        1px solid rgba(67, 229, 139, 0.16);
}

#video-tcon-panel-tv .gstvvid-node-code {
    display: block;

    margin-bottom: 4px;

    color: var(--node-color);

    font-size: 7px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#video-tcon-panel-tv .gstvvid-node.source {
    --node-color: #20d5f3;
}

#video-tcon-panel-tv .gstvvid-node.main {
    --node-color: #3286ff;
}

#video-tcon-panel-tv .gstvvid-node.tcon {
    --node-color: #8b5cf6;
}

#video-tcon-panel-tv .gstvvid-node.panel {
    --node-color: #43e58b;
}

#video-tcon-panel-tv .gstvvid-node strong {
    display: block;

    color: #d8e8f0;

    font-size: 9px;
    line-height: 1.35;
    font-weight: 600;
}

#video-tcon-panel-tv .gstvvid-node span:last-child {
    display: block;

    margin-top: 4px;

    color: #71899a;

    font-size: 7px;
    line-height: 1.42;
}


/* =========================================================
   HUD CONNECTIONS
   ========================================================= */

#video-tcon-panel-tv .gstvvid-line {
    position: absolute;

    z-index: 4;

    height: 1px;

    transform-origin: left center;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(32, 213, 243, 0.26),
            rgba(50, 134, 255, 0.28),
            rgba(139, 92, 246, 0.20),
            transparent
        );

    animation:
        gstvvid-line
        3s ease-in-out infinite;
}

#video-tcon-panel-tv .gstvvid-line.l1 {
    left: 20%;
    top: 27%;

    width: 35%;

    transform:
        rotate(21deg);
}

#video-tcon-panel-tv .gstvvid-line.l2 {
    left: 50%;
    top: 43%;

    width: 34%;

    transform:
        rotate(-21deg);
}

#video-tcon-panel-tv .gstvvid-line.l3 {
    left: 20%;
    bottom: 32%;

    width: 35%;

    transform:
        rotate(-20deg);
}

#video-tcon-panel-tv .gstvvid-line.l4 {
    left: 49%;
    bottom: 32%;

    width: 35%;

    transform:
        rotate(20deg);
}

@keyframes gstvvid-line {

    0%,
    100% {
        opacity: 0.13;
    }

    50% {
        opacity: 0.72;
    }
}


/* =========================================================
   HUD ROUTE
   ========================================================= */

#video-tcon-panel-tv .gstvvid-hud-route {
    position: absolute;

    z-index: 10;

    left: 12px;
    right: 12px;
    bottom: 12px;

    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 4px;
}

#video-tcon-panel-tv .gstvvid-hud-step {
    min-width: 0;

    padding:
        7px 3px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(5, 17, 30, 0.85);

    color: #728b9b;

    text-align: center;

    font-size: 7px;
    line-height: 1.35;
    font-weight: 600;
}


/* =========================================================
   ARCHITECTURE CARDS
   ========================================================= */

#video-tcon-panel-tv .gstvvid-architecture {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 10px;

    margin-top: 18px;
}

#video-tcon-panel-tv .gstvvid-architecture-card {
    --arch-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        19px 17px;

    overflow: hidden;

    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.89),
            rgba(4, 12, 22, 0.97)
        );
}

#video-tcon-panel-tv .gstvvid-architecture-card.separate {
    --arch-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.12);
}

#video-tcon-panel-tv .gstvvid-architecture-card.integrated {
    --arch-color: #3286ff;

    border:
        1px solid rgba(50, 134, 255, 0.12);
}

#video-tcon-panel-tv .gstvvid-architecture-card.panel {
    --arch-color: #43e58b;

    border:
        1px solid rgba(67, 229, 139, 0.12);
}

#video-tcon-panel-tv .gstvvid-architecture-card::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 70px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--arch-color),
            transparent
        );
}

#video-tcon-panel-tv .gstvvid-architecture-code {
    display: block;

    margin-bottom: 7px;

    color: var(--arch-color);

    font-size: 8px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#video-tcon-panel-tv .gstvvid-architecture-title {
    display: block;

    margin-bottom: 5px;

    color: #dcebf4;

    font-size: 10px;
    line-height: 1.45;
    font-weight: 600;
}

#video-tcon-panel-tv .gstvvid-architecture-copy {
    display: block;

    color: #71899a;

    font-size: 9px;
    line-height: 1.58;
}


/* =========================================================
   WARNING
   ========================================================= */

#video-tcon-panel-tv .gstvvid-warning {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 12px;

    align-items: center;

    margin-top: 18px;
    padding:
        16px;

    border:
        1px solid rgba(255, 200, 87, 0.12);

    border-radius: 13px;

    background:
        linear-gradient(
            135deg,
            rgba(255, 200, 87, 0.023),
            rgba(139, 92, 246, 0.015)
        );
}

#video-tcon-panel-tv .gstvvid-warning-icon {
    display: grid;
    place-items: center;

    width: 32px;
    height: 32px;

    flex: 0 0 32px;

    border:
        1px solid rgba(255, 200, 87, 0.18);

    border-radius: 9px;

    color: #f2d989;

    font-size: 10px;
    font-weight: 700;
}

#video-tcon-panel-tv .gstvvid-warning-copy {
    color: #8d856d;

    font-size: 9px;
    line-height: 1.6;
}

#video-tcon-panel-tv .gstvvid-warning-copy strong {
    color: #e9ddb5;
    font-weight: 600;
}

#video-tcon-panel-tv .gstvvid-warning-state {
    flex-shrink: 0;

    color: #b9a972;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 600;

    text-transform: uppercase;
}


/* =========================================================
   TERMINAL
   ========================================================= */

#video-tcon-panel-tv .gstvvid-terminal {
    margin-top: 18px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.17);

    border-radius: 17px;

    background:
        linear-gradient(
            155deg,
            rgba(10, 18, 38, 0.94),
            rgba(4, 9, 20, 0.98)
        );
}

#video-tcon-panel-tv .gstvvid-terminal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    min-height: 43px;

    padding:
        10px 14px;

    border-bottom:
        1px solid rgba(118, 167, 255, 0.09);

    background:
        rgba(8, 18, 34, 0.74);
}

#video-tcon-panel-tv .gstvvid-terminal-dots {
    display: flex;

    gap: 6px;
}

#video-tcon-panel-tv .gstvvid-terminal-dots span {
    width: 6px;
    height: 6px;

    border-radius: 50%;
}

#video-tcon-panel-tv
.gstvvid-terminal-dots span:nth-child(1) {
    background: var(--tv-red);
}

#video-tcon-panel-tv
.gstvvid-terminal-dots span:nth-child(2) {
    background: var(--tv-yellow);
}

#video-tcon-panel-tv
.gstvvid-terminal-dots span:nth-child(3) {
    background: var(--tv-green);
}

#video-tcon-panel-tv .gstvvid-terminal-name {
    color: #71889d;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;

    text-transform: uppercase;
}

#video-tcon-panel-tv .gstvvid-terminal-body {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr) auto;

    gap: 20px;

    align-items: center;

    padding:
        19px 20px;
}

#video-tcon-panel-tv .gstvvid-terminal-route {
    display: flex;
    flex-wrap: wrap;

    gap: 7px;
}

#video-tcon-panel-tv .gstvvid-terminal-route span {
    display: inline-flex;
    align-items: center;

    min-height: 28px;

    padding:
        6px 8px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(6, 18, 31, 0.50);

    color: #8298a8;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 500;
}

#video-tcon-panel-tv .gstvvid-terminal-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        8px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.13);

    border-radius: 9px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #9beabd;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 600;
}

#video-tcon-panel-tv .gstvvid-terminal-state::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   FOOTER
   ========================================================= */

#video-tcon-panel-tv .gstvvid-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 18px;

    margin-top: 21px;
    padding: 0 3px;

    color: #60788c;

    font-size: 9px;
    line-height: 1.45;
    font-weight: 500;

    text-transform: uppercase;
}

#video-tcon-panel-tv .gstvvid-footer-status {
    display: flex;
    align-items: center;

    gap: 7px;

    color: #7791a5;
}

#video-tcon-panel-tv .gstvvid-footer-status::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--tv-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.45);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    #video-tcon-panel-tv .gstvvid-shell {
        width:
            min(
                100% - 40px,
                920px
            );

        padding:
            76px 0 80px;
    }

    #video-tcon-panel-tv .gstvvid-heading {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 20px;
    }

    #video-tcon-panel-tv .gstvvid-status {
        max-width: 650px;
    }

    #video-tcon-panel-tv .gstvvid-chain {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #video-tcon-panel-tv .gstvvid-flow {
        grid-template-columns:
            repeat(4, minmax(0, 1fr));
    }

    #video-tcon-panel-tv .gstvvid-symptoms {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #video-tcon-panel-tv .gstvvid-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 14px;
    }

    #video-tcon-panel-tv .gstvvid-hud {
        width: 100%;
        max-width: 740px;

        margin: 0 auto;
    }

    #video-tcon-panel-tv .gstvvid-architecture {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #video-tcon-panel-tv {
        overflow: hidden;
    }

    #video-tcon-panel-tv .gstvvid-grid {
        opacity: 0.17;

        background-size: 32px 32px;
    }

    #video-tcon-panel-tv .gstvvid-orbit,
    #video-tcon-panel-tv .gstvvid-scan {
        display: none;
    }

    #video-tcon-panel-tv .gstvvid-shell {
        width:
            calc(100% - 30px);

        max-width: 100%;

        padding:
            61px 0 65px;
    }

    #video-tcon-panel-tv .gstvvid-heading {
        display: block;

        margin-bottom: 28px;
    }

    #video-tcon-panel-tv .gstvvid-status {
        margin-top: 20px;

        padding:
            15px 16px;
    }

    #video-tcon-panel-tv .gstvvid-title {
        font-size:
            clamp(
                29px,
                9vw,
                38px
            );
    }

    #video-tcon-panel-tv .gstvvid-intro {
        font-size: 14px;
        line-height: 1.7;
    }

    #video-tcon-panel-tv .gstvvid-core {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 9px;

        padding:
            15px;
    }

    #video-tcon-panel-tv .gstvvid-core-state {
        width: fit-content;
    }

    #video-tcon-panel-tv .gstvvid-chain,
    #video-tcon-panel-tv .gstvvid-symptoms,
    #video-tcon-panel-tv .gstvvid-architecture {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #video-tcon-panel-tv .gstvvid-flow {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #video-tcon-panel-tv .gstvvid-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 12px;
    }

    #video-tcon-panel-tv .gstvvid-analysis,
    #video-tcon-panel-tv .gstvvid-hud {
        width: 100%;
        min-width: 0;

        padding:
            19px 15px;

        border-radius: 16px;
    }

    #video-tcon-panel-tv .gstvvid-route-row {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 4px;
    }

    #video-tcon-panel-tv .gstvvid-hud-head {
        flex-direction: column;
        align-items: flex-start;

        gap: 8px;
    }

    #video-tcon-panel-tv .gstvvid-hud-screen {
        min-height: 355px;
    }

    #video-tcon-panel-tv .gstvvid-hud-core,
    #video-tcon-panel-tv .gstvvid-ring,
    #video-tcon-panel-tv .gstvvid-line {
        animation: none;
    }

    #video-tcon-panel-tv .gstvvid-hud-core {
        width: 112px;
        height: 112px;

        padding: 12px;
    }

    #video-tcon-panel-tv .gstvvid-hud-core strong {
        font-size: 7.5px;
    }

    #video-tcon-panel-tv .gstvvid-hud-core span {
        font-size: 5.8px;
    }

    #video-tcon-panel-tv .gstvvid-ring.one {
        width: 166px;
        height: 166px;
    }

    #video-tcon-panel-tv .gstvvid-ring.two {
        width: 220px;
        height: 220px;
    }

    #video-tcon-panel-tv .gstvvid-node {
        width: 100px;

        padding: 7px;
    }

    #video-tcon-panel-tv .gstvvid-node-code {
        font-size: 6px;
    }

    #video-tcon-panel-tv .gstvvid-node strong {
        font-size: 7px;
    }

    #video-tcon-panel-tv
    .gstvvid-node span:last-child {
        display: none;
    }

    #video-tcon-panel-tv .gstvvid-hud-route {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #video-tcon-panel-tv .gstvvid-hud-step {
        text-align: left;

        font-size: 7.4px;
    }

    #video-tcon-panel-tv .gstvvid-warning {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #video-tcon-panel-tv .gstvvid-warning-state {
        width: fit-content;
    }

    #video-tcon-panel-tv .gstvvid-terminal-body {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 13px;

        padding:
            17px 15px;
    }

    #video-tcon-panel-tv .gstvvid-terminal-state {
        width: fit-content;
    }

    #video-tcon-panel-tv .gstvvid-footer {
        flex-direction: column;
        align-items: flex-start;

        gap: 6px;
    }
}



/* =========================================================
   MOBILE — CADENA DE VIDEO SIN SUPERPOSICIONES
   ========================================================= */

@media (max-width: 767px) {

    #video-tcon-panel-tv .gstvvid-flow {
        grid-template-columns: minmax(0, 1fr);
    }

    #video-tcon-panel-tv .gstvvid-flow span:nth-child(even) {
        display: none;
    }

    #video-tcon-panel-tv .gstvvid-hud-screen {
        min-height: 0;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
        padding: 12px;
    }

    #video-tcon-panel-tv .gstvvid-ring,
    #video-tcon-panel-tv .gstvvid-line {
        display: none;
    }

    #video-tcon-panel-tv .gstvvid-node {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;
        width: auto;
        min-width: 0;
        min-height: 108px;
        padding: 11px;
    }

    #video-tcon-panel-tv .gstvvid-node-code {
        font-size: 7.5px;
    }

    #video-tcon-panel-tv .gstvvid-node strong {
        font-size: 8.5px;
    }

    #video-tcon-panel-tv .gstvvid-node span:last-child {
        display: block;
        font-size: 7.5px;
    }

    #video-tcon-panel-tv .gstvvid-hud-core {
        position: relative;
        left: auto;
        top: auto;
        grid-column: 1 / -1;
        order: -1;
        width: 100%;
        height: auto;
        min-height: 96px;
        padding: 15px;
        transform: none;
        border-radius: 13px;
        animation: none;
    }

    #video-tcon-panel-tv .gstvvid-hud-core strong { font-size: 10px; }
    #video-tcon-panel-tv .gstvvid-hud-core span { font-size: 8px; }

    #video-tcon-panel-tv .gstvvid-hud-route {
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;
        grid-column: 1 / -1;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 5px;
        margin-top: 2px;
    }

    #video-tcon-panel-tv .gstvvid-hud-step {
        padding: 8px;
        text-align: left;
        font-size: 8px;
    }
}


/* =========================================================
   390 PX
   ========================================================= */

@media (max-width: 390px) {

    #video-tcon-panel-tv .gstvvid-shell {
        width: calc(100% - 24px);
    }

    #video-tcon-panel-tv .gstvvid-analysis,
    #video-tcon-panel-tv .gstvvid-hud {
        padding-left: 12px;
        padding-right: 12px;
    }

    #video-tcon-panel-tv .gstvvid-hud-screen {
        grid-template-columns: minmax(0, 1fr);
    }

    #video-tcon-panel-tv .gstvvid-hud-core,
    #video-tcon-panel-tv .gstvvid-hud-route {
        grid-column: 1;
    }

    #video-tcon-panel-tv .gstvvid-hud-route,
    #video-tcon-panel-tv .gstvvid-terminal-route {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    #video-tcon-panel-tv,
    #video-tcon-panel-tv *,
    #video-tcon-panel-tv *::before,
    #video-tcon-panel-tv *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition: none !important;
    }

    #video-tcon-panel-tv .gstvvid-scan {
        display: none !important;
    }
}


/* ===== Viabilidad Panel TV ===== */
/* =========================================================
   GAMMERS STYLE
   REPARACIÓN DE TV — VIABILIDAD DE PANEL
   ID INTERNO HTML: viabilidad-panel-tv
   ========================================================= */

#viabilidad-panel-tv {
    --pan-bg: #030811;
    --pan-bg-2: #05101b;

    --pan-cyan: #20d5f3;
    --pan-blue: #3286ff;
    --pan-violet: #8b5cf6;

    --pan-green: #43e58b;
    --pan-yellow: #ffc857;
    --pan-orange: #ff9f43;
    --pan-red: #ff637d;

    --pan-text: #edf8ff;
    --pan-muted: #91a8bb;
    --pan-muted-2: #687f92;

    position: relative;
    isolation: isolate;

    width: 100%;
    margin: 0;
    padding: 0;

    overflow: hidden;

    color: var(--pan-text);

    background:
        radial-gradient(
            circle at 12% 16%,
            rgba(139, 92, 246, 0.055),
            transparent 30%
        ),
        radial-gradient(
            circle at 88% 18%,
            rgba(255, 99, 125, 0.040),
            transparent 30%
        ),
        radial-gradient(
            circle at 70% 90%,
            rgba(67, 229, 139, 0.028),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #030811 0%,
            #05101b 50%,
            #030811 100%
        );

    font-family:
        "Poppins",
        Arial,
        sans-serif;

    scroll-margin-top: 90px;
    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}

#viabilidad-panel-tv *,
#viabilidad-panel-tv *::before,
#viabilidad-panel-tv *::after {
    box-sizing: border-box;

    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}


/* =========================================================
   GRID
   ========================================================= */

#viabilidad-panel-tv .gstvpan-grid {
    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: 0.24;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.040) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.040) 1px,
            transparent 1px
        );

    background-size: 46px 46px;

    mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );

    -webkit-mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );
}


/* =========================================================
   ORBIT
   ========================================================= */

#viabilidad-panel-tv .gstvpan-orbit {
    position: absolute;

    right: -260px;
    top: 590px;

    width: 520px;
    height: 520px;

    pointer-events: none;

    border:
        1px solid rgba(139, 92, 246, 0.040);

    border-radius: 50%;

    animation:
        gstvpan-spin
        58s linear infinite;
}

#viabilidad-panel-tv .gstvpan-orbit::before,
#viabilidad-panel-tv .gstvpan-orbit::after {
    content: "";

    position: absolute;

    border-radius: 50%;
}

#viabilidad-panel-tv .gstvpan-orbit::before {
    inset: 84px;

    border:
        1px dashed rgba(255, 99, 125, 0.045);
}

#viabilidad-panel-tv .gstvpan-orbit::after {
    inset: 170px;

    border:
        1px solid rgba(67, 229, 139, 0.035);
}

@keyframes gstvpan-spin {

    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
   SCAN
   ========================================================= */

#viabilidad-panel-tv .gstvpan-scan {
    position: absolute;
    inset: 0;

    pointer-events: none;

    overflow: hidden;
}

#viabilidad-panel-tv .gstvpan-scan::before {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    top: 0;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(139, 92, 246, 0.20),
            rgba(255, 99, 125, 0.14),
            rgba(67, 229, 139, 0.10),
            transparent
        );

    box-shadow:
        0 0 16px rgba(139, 92, 246, 0.07);

    animation:
        gstvpan-scan
        12s linear infinite;
}

@keyframes gstvpan-scan {

    0% {
        transform: translateY(0);
        opacity: 0;
    }

    8% {
        opacity: 0.35;
    }

    92% {
        opacity: 0.14;
    }

    100% {
        transform: translateY(3500px);
        opacity: 0;
    }
}


/* =========================================================
   SHELL
   ========================================================= */

#viabilidad-panel-tv .gstvpan-shell {
    position: relative;
    z-index: 2;

    width:
        min(
            1180px,
            calc(100% - 48px)
        );

    margin: 0 auto;

    padding:
        92px 0 96px;
}


/* =========================================================
   HEADING
   ========================================================= */

#viabilidad-panel-tv .gstvpan-heading {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(300px, 0.48fr);

    gap: 44px;

    align-items: end;

    margin-bottom: 36px;
}

#viabilidad-panel-tv .gstvpan-heading-main {
    min-width: 0;
}


/* =========================================================
   KICKER
   ========================================================= */

#viabilidad-panel-tv .gstvpan-kicker {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    margin-bottom: 15px;
    padding:
        7px 11px;

    border:
        1px solid rgba(139, 92, 246, 0.18);

    border-radius: 999px;

    background:
        rgba(139, 92, 246, 0.035);

    color: #c7bcff;

    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;

    letter-spacing: 0.10em;
    text-transform: uppercase;
}

#viabilidad-panel-tv .gstvpan-kicker::before {
    content: "";

    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: var(--pan-violet);

    box-shadow:
        0 0 8px rgba(139, 92, 246, 0.70);
}


/* =========================================================
   TITLE
   ========================================================= */

#viabilidad-panel-tv .gstvpan-title {
    max-width: 900px;

    margin: 0;

    color: #f4fbff;

    font-size:
        clamp(
            31px,
            4vw,
            49px
        );

    line-height: 1.08;
    font-weight: 700;

    letter-spacing: -0.035em;
}

#viabilidad-panel-tv .gstvpan-title span {
    color: var(--pan-violet);
}

#viabilidad-panel-tv .gstvpan-intro {
    max-width: 850px;

    margin:
        16px 0 0;

    color: var(--pan-muted);

    font-size: 15px;
    line-height: 1.76;
}


/* =========================================================
   STATUS
   ========================================================= */

#viabilidad-panel-tv .gstvpan-status {
    position: relative;

    min-width: 0;

    padding:
        18px 19px;

    overflow: hidden;

    border:
        1px solid rgba(255, 200, 87, 0.14);

    border-radius: 16px;

    background:
        linear-gradient(
            145deg,
            rgba(255, 200, 87, 0.040),
            rgba(4, 13, 23, 0.90)
        );
}

#viabilidad-panel-tv .gstvpan-status::before {
    content: "";

    position: absolute;

    left: 0;
    top: 12px;
    bottom: 12px;

    width: 2px;

    background:
        linear-gradient(
            180deg,
            transparent,
            var(--pan-yellow),
            transparent
        );
}

#viabilidad-panel-tv .gstvpan-status-label {
    display: flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 7px;

    color: #ead08b;

    font-size: 10px;
    line-height: 1.25;
    font-weight: 600;

    text-transform: uppercase;
}

#viabilidad-panel-tv .gstvpan-status-label::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--pan-yellow);

    box-shadow:
        0 0 7px rgba(255, 200, 87, 0.52);
}

#viabilidad-panel-tv .gstvpan-status p {
    margin: 0;

    color: #a7bcc9;

    font-size: 11px;
    line-height: 1.62;
}


/* =========================================================
   CORE
   ========================================================= */

#viabilidad-panel-tv .gstvpan-core {
    position: relative;

    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 17px;

    align-items: center;

    margin-bottom: 18px;
    padding:
        18px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.14);

    border-radius: 15px;

    background:
        linear-gradient(
            135deg,
            rgba(139, 92, 246, 0.045),
            rgba(50, 134, 255, 0.020)
        );
}

#viabilidad-panel-tv .gstvpan-core::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 118px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--pan-violet),
            transparent
        );
}

#viabilidad-panel-tv .gstvpan-core-icon {
    display: grid;
    place-items: center;

    width: 64px;
    height: 64px;

    flex: 0 0 64px;

    border:
        1px solid rgba(139, 92, 246, 0.20);

    border-radius: 14px;

    background:
        rgba(139, 92, 246, 0.040);

    color: #c7bcff;

    font-size: 9px;
    line-height: 1.2;
    font-weight: 700;

    text-align: center;
}

#viabilidad-panel-tv .gstvpan-core-copy {
    min-width: 0;
}

#viabilidad-panel-tv .gstvpan-core-copy strong {
    display: block;

    margin-bottom: 5px;

    color: #eeeaff;

    font-size: 14px;
    line-height: 1.42;
    font-weight: 600;
}

#viabilidad-panel-tv .gstvpan-core-copy span {
    display: block;

    color: #829aa9;

    font-size: 10px;
    line-height: 1.64;
}

#viabilidad-panel-tv .gstvpan-core-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        7px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #96edbb;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;
}

#viabilidad-panel-tv .gstvpan-core-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--pan-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   SCENARIOS
   ========================================================= */

#viabilidad-panel-tv .gstvpan-scenarios {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 10px;
}

#viabilidad-panel-tv .gstvpan-scenario {
    --scenario-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        20px 16px 18px;

    overflow: hidden;

    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#viabilidad-panel-tv .gstvpan-scenario.physical {
    --scenario-color: #ff637d;

    border:
        1px solid rgba(255, 99, 125, 0.13);
}

#viabilidad-panel-tv .gstvpan-scenario.electronic {
    --scenario-color: #3286ff;

    border:
        1px solid rgba(50, 134, 255, 0.13);
}

#viabilidad-panel-tv .gstvpan-scenario.integrated {
    --scenario-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.13);
}

#viabilidad-panel-tv .gstvpan-scenario.replacement {
    --scenario-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.13);
}

#viabilidad-panel-tv .gstvpan-scenario::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 76px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--scenario-color),
            transparent
        );
}

#viabilidad-panel-tv .gstvpan-scenario-code {
    display: block;

    margin-bottom: 8px;

    color: var(--scenario-color);

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#viabilidad-panel-tv .gstvpan-scenario-title {
    display: block;

    margin-bottom: 6px;

    color: #e0edf4;

    font-size: 11px;
    line-height: 1.44;
    font-weight: 600;
}

#viabilidad-panel-tv .gstvpan-scenario-copy {
    display: block;

    color: #748c9c;

    font-size: 9px;
    line-height: 1.58;
}


/* =========================================================
   FRACTURE NOTE
   ========================================================= */

#viabilidad-panel-tv .gstvpan-fracture {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 13px;

    align-items: center;

    margin-top: 18px;
    padding:
        17px;

    border:
        1px solid rgba(255, 99, 125, 0.14);

    border-radius: 14px;

    background:
        linear-gradient(
            135deg,
            rgba(255, 99, 125, 0.030),
            rgba(255, 200, 87, 0.012)
        );
}

#viabilidad-panel-tv .gstvpan-fracture-icon {
    display: grid;
    place-items: center;

    width: 38px;
    height: 38px;

    flex: 0 0 38px;

    border:
        1px solid rgba(255, 99, 125, 0.20);

    border-radius: 10px;

    color: #ff9dac;

    font-size: 11px;
    font-weight: 700;
}

#viabilidad-panel-tv .gstvpan-fracture-copy {
    color: #93777f;

    font-size: 9px;
    line-height: 1.62;
}

#viabilidad-panel-tv .gstvpan-fracture-copy strong {
    color: #f1c4cb;
    font-weight: 600;
}

#viabilidad-panel-tv .gstvpan-fracture-state {
    flex-shrink: 0;

    padding:
        6px 8px;

    border:
        1px solid rgba(255, 99, 125, 0.13);

    border-radius: 999px;

    color: #d7939e;

    font-size: 8px;
    line-height: 1.3;
    font-weight: 600;

    text-transform: uppercase;
}


/* =========================================================
   VIABILITY RESULTS
   ========================================================= */

#viabilidad-panel-tv .gstvpan-results {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 10px;

    margin-top: 18px;
}

#viabilidad-panel-tv .gstvpan-result {
    --result-color: #43e58b;

    position: relative;

    min-width: 0;

    padding:
        21px 18px;

    overflow: hidden;

    border-radius: 15px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#viabilidad-panel-tv .gstvpan-result.viable {
    --result-color: #43e58b;

    border:
        1px solid rgba(67, 229, 139, 0.14);
}

#viabilidad-panel-tv .gstvpan-result.conditional {
    --result-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.14);
}

#viabilidad-panel-tv .gstvpan-result.not-viable {
    --result-color: #ff637d;

    border:
        1px solid rgba(255, 99, 125, 0.14);
}

#viabilidad-panel-tv .gstvpan-result::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 92px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--result-color),
            transparent
        );
}

#viabilidad-panel-tv .gstvpan-result-head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 10px;

    margin-bottom: 10px;
}

#viabilidad-panel-tv .gstvpan-result-code {
    color: var(--result-color);

    font-size: 10px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#viabilidad-panel-tv .gstvpan-result-dot {
    width: 7px;
    height: 7px;

    flex: 0 0 7px;

    border-radius: 50%;

    background: var(--result-color);

    box-shadow:
        0 0 8px var(--result-color);
}

#viabilidad-panel-tv .gstvpan-result-title {
    display: block;

    margin-bottom: 6px;

    color: #e3eef5;

    font-size: 12px;
    line-height: 1.45;
    font-weight: 600;
}

#viabilidad-panel-tv .gstvpan-result-copy {
    display: block;

    color: #748d9d;

    font-size: 9px;
    line-height: 1.60;
}


/* =========================================================
   MAIN
   ========================================================= */

#viabilidad-panel-tv .gstvpan-main {
    display: grid;

    grid-template-columns:
        minmax(0, 0.94fr)
        minmax(430px, 1.06fr);

    gap: 18px;

    margin-top: 18px;
}


/* =========================================================
   ANALYSIS
   ========================================================= */

#viabilidad-panel-tv .gstvpan-analysis {
    min-width: 0;

    padding:
        24px;

    border:
        1px solid rgba(139, 92, 246, 0.12);

    border-radius: 19px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#viabilidad-panel-tv .gstvpan-panel-label {
    display: inline-flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 9px;

    color: #c7bcff;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#viabilidad-panel-tv .gstvpan-panel-label::before {
    content: "";

    width: 14px;
    height: 1px;

    background: currentColor;

    box-shadow:
        0 0 7px currentColor;
}

#viabilidad-panel-tv .gstvpan-panel-title {
    margin: 0;

    color: #f1faff;

    font-size: 21px;
    line-height: 1.34;
    font-weight: 700;
}

#viabilidad-panel-tv .gstvpan-panel-copy {
    margin:
        9px 0 0;

    color: #8098a8;

    font-size: 10px;
    line-height: 1.67;
}


/* =========================================================
   ROUTE
   ========================================================= */

#viabilidad-panel-tv .gstvpan-route {
    display: grid;

    gap: 8px;

    margin-top: 18px;
}

#viabilidad-panel-tv .gstvpan-route-row {
    --route-color: #20d5f3;

    display: grid;

    grid-template-columns:
        116px minmax(0, 1fr);

    gap: 10px;

    padding:
        11px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 9px;

    background:
        rgba(5, 17, 30, 0.54);
}

#viabilidad-panel-tv .gstvpan-route-row:nth-child(2) {
    --route-color: #3286ff;
}

#viabilidad-panel-tv .gstvpan-route-row:nth-child(3) {
    --route-color: #8b5cf6;
}

#viabilidad-panel-tv .gstvpan-route-row:nth-child(4) {
    --route-color: #43e58b;
}

#viabilidad-panel-tv .gstvpan-route-row:nth-child(5) {
    --route-color: #ffc857;
}

#viabilidad-panel-tv .gstvpan-route-row:nth-child(6) {
    --route-color: #ff637d;
}

#viabilidad-panel-tv .gstvpan-route-label {
    color: var(--route-color);

    font-size: 8px;
    line-height: 1.35;
    font-weight: 700;

    text-transform: uppercase;
}

#viabilidad-panel-tv .gstvpan-route-copy {
    color: #758d9d;

    font-size: 9px;
    line-height: 1.56;
}

#viabilidad-panel-tv .gstvpan-route-copy strong {
    color: #d6e6ee;
    font-weight: 600;
}


/* =========================================================
   ECONOMIC NOTE
   ========================================================= */

#viabilidad-panel-tv .gstvpan-economic-note {
    display: flex;
    align-items: flex-start;

    gap: 9px;

    margin-top: 13px;
    padding:
        12px;

    border:
        1px solid rgba(255, 200, 87, 0.11);

    border-radius: 10px;

    background:
        rgba(255, 200, 87, 0.023);

    color: #8e866e;

    font-size: 9px;
    line-height: 1.58;
}

#viabilidad-panel-tv .gstvpan-economic-note::before {
    content: "!";

    display: grid;
    place-items: center;

    width: 19px;
    height: 19px;

    flex: 0 0 19px;

    border:
        1px solid rgba(255, 200, 87, 0.17);

    border-radius: 50%;

    color: #f0d48a;

    font-size: 8px;
    font-weight: 700;
}

#viabilidad-panel-tv .gstvpan-economic-note strong {
    color: #dfd0a4;
    font-weight: 600;
}


/* =========================================================
   HUD
   ========================================================= */

#viabilidad-panel-tv .gstvpan-hud {
    position: relative;

    min-width: 0;

    padding:
        22px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.16);

    border-radius: 20px;

    background:
        radial-gradient(
            circle at 50% 39%,
            rgba(139, 92, 246, 0.070),
            transparent 31%
        ),
        radial-gradient(
            circle at 50% 39%,
            rgba(67, 229, 139, 0.035),
            transparent 38%
        ),
        linear-gradient(
            145deg,
            rgba(24, 18, 45, 0.37),
            rgba(4, 12, 22, 0.97)
        );
}

#viabilidad-panel-tv .gstvpan-hud::before {
    content: "";

    position: absolute;
    inset: 0;

    opacity: 0.25;

    pointer-events: none;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        );

    background-size: 27px 27px;
}


/* =========================================================
   HUD HEAD
   ========================================================= */

#viabilidad-panel-tv .gstvpan-hud-head {
    position: relative;
    z-index: 4;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 10px;
}

#viabilidad-panel-tv .gstvpan-hud-code {
    color: #c5b9ff;

    font-size: 10px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#viabilidad-panel-tv .gstvpan-hud-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        5px 8px;

    border:
        1px solid rgba(255, 200, 87, 0.15);

    border-radius: 999px;

    background:
        rgba(255, 200, 87, 0.025);

    color: #dfc982;

    font-size: 8px;
    line-height: 1.2;
    font-weight: 600;
}

#viabilidad-panel-tv .gstvpan-hud-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--pan-yellow);

    box-shadow:
        0 0 7px rgba(255, 200, 87, 0.50);
}


/* =========================================================
   HUD SCREEN
   ========================================================= */

#viabilidad-panel-tv .gstvpan-hud-screen {
    position: relative;
    z-index: 2;

    min-height: 455px;

    margin-top: 16px;

    overflow: hidden;

    border:
        1px solid rgba(92, 208, 255, 0.075);

    border-radius: 14px;

    background:
        rgba(3, 12, 22, 0.70);
}


/* =========================================================
   HUD CORE
   ========================================================= */

#viabilidad-panel-tv .gstvpan-hud-core {
    position: absolute;

    z-index: 8;

    left: 50%;
    top: 42%;

    width: 178px;
    height: 178px;

    transform:
        translate(-50%, -50%);

    display: grid;
    place-items: center;

    padding:
        20px;

    border:
        1px solid rgba(139, 92, 246, 0.21);

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(139, 92, 246, 0.11),
            rgba(50, 134, 255, 0.045) 48%,
            rgba(5, 16, 29, 0.97) 77%
        );

    box-shadow:
        0 0 46px rgba(139, 92, 246, 0.08);

    animation:
        gstvpan-pulse
        4.3s ease-in-out infinite;
}

#viabilidad-panel-tv .gstvpan-hud-core div {
    text-align: center;
}

#viabilidad-panel-tv .gstvpan-hud-core strong {
    display: block;

    color: #f0ebff;

    font-size: 11px;
    line-height: 1.34;
    font-weight: 700;
}

#viabilidad-panel-tv .gstvpan-hud-core span {
    display: block;

    margin-top: 7px;

    color: #778d9e;

    font-size: 7px;
    line-height: 1.4;
    font-weight: 600;

    text-transform: uppercase;
}

@keyframes gstvpan-pulse {

    0%,
    100% {
        box-shadow:
            0 0 28px rgba(139, 92, 246, 0.04);
    }

    50% {
        box-shadow:
            0 0 55px rgba(139, 92, 246, 0.12);
    }
}


/* =========================================================
   HUD RINGS
   ========================================================= */

#viabilidad-panel-tv .gstvpan-ring {
    position: absolute;

    left: 50%;
    top: 42%;

    transform:
        translate(-50%, -50%);

    border-radius: 50%;

    pointer-events: none;
}

#viabilidad-panel-tv .gstvpan-ring.one {
    width: 246px;
    height: 246px;

    border:
        1px solid rgba(139, 92, 246, 0.07);

    animation:
        gstvpan-ring
        22s linear infinite;
}

#viabilidad-panel-tv .gstvpan-ring.two {
    width: 322px;
    height: 322px;

    border:
        1px dashed rgba(50, 134, 255, 0.07);

    animation:
        gstvpan-ring
        32s linear infinite reverse;
}

@keyframes gstvpan-ring {

    from {
        transform:
            translate(-50%, -50%)
            rotate(0deg);
    }

    to {
        transform:
            translate(-50%, -50%)
            rotate(360deg);
    }
}


/* =========================================================
   HUD NODES
   ========================================================= */

#viabilidad-panel-tv .gstvpan-node {
    position: absolute;

    z-index: 9;

    width: 128px;

    padding:
        9px;

    border-radius: 9px;

    background:
        rgba(5, 16, 29, 0.94);
}

#viabilidad-panel-tv .gstvpan-node.damage {
    left: 4%;
    top: 12%;

    border:
        1px solid rgba(255, 99, 125, 0.16);
}

#viabilidad-panel-tv .gstvpan-node.diagnosis {
    right: 4%;
    top: 12%;

    border:
        1px solid rgba(50, 134, 255, 0.16);
}

#viabilidad-panel-tv .gstvpan-node.parts {
    left: 4%;
    bottom: 23%;

    border:
        1px solid rgba(255, 200, 87, 0.16);
}

#viabilidad-panel-tv .gstvpan-node.cost {
    right: 4%;
    bottom: 23%;

    border:
        1px solid rgba(67, 229, 139, 0.16);
}

#viabilidad-panel-tv .gstvpan-node-code {
    display: block;

    margin-bottom: 4px;

    color: var(--node-color);

    font-size: 7px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#viabilidad-panel-tv .gstvpan-node.damage {
    --node-color: #ff637d;
}

#viabilidad-panel-tv .gstvpan-node.diagnosis {
    --node-color: #3286ff;
}

#viabilidad-panel-tv .gstvpan-node.parts {
    --node-color: #ffc857;
}

#viabilidad-panel-tv .gstvpan-node.cost {
    --node-color: #43e58b;
}

#viabilidad-panel-tv .gstvpan-node strong {
    display: block;

    color: #d8e8f0;

    font-size: 9px;
    line-height: 1.35;
    font-weight: 600;
}

#viabilidad-panel-tv .gstvpan-node span:last-child {
    display: block;

    margin-top: 4px;

    color: #71899a;

    font-size: 7px;
    line-height: 1.42;
}


/* =========================================================
   CONNECTIONS
   ========================================================= */

#viabilidad-panel-tv .gstvpan-line {
    position: absolute;

    z-index: 4;

    height: 1px;

    transform-origin: left center;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(139, 92, 246, 0.28),
            rgba(50, 134, 255, 0.22),
            transparent
        );

    animation:
        gstvpan-line
        3s ease-in-out infinite;
}

#viabilidad-panel-tv .gstvpan-line.l1 {
    left: 20%;
    top: 27%;

    width: 35%;

    transform:
        rotate(21deg);
}

#viabilidad-panel-tv .gstvpan-line.l2 {
    left: 50%;
    top: 42%;

    width: 34%;

    transform:
        rotate(-21deg);
}

#viabilidad-panel-tv .gstvpan-line.l3 {
    left: 20%;
    bottom: 32%;

    width: 35%;

    transform:
        rotate(-20deg);
}

#viabilidad-panel-tv .gstvpan-line.l4 {
    left: 49%;
    bottom: 32%;

    width: 35%;

    transform:
        rotate(20deg);
}

@keyframes gstvpan-line {

    0%,
    100% {
        opacity: 0.13;
    }

    50% {
        opacity: 0.70;
    }
}


/* =========================================================
   HUD ROUTE
   ========================================================= */

#viabilidad-panel-tv .gstvpan-hud-route {
    position: absolute;

    z-index: 10;

    left: 12px;
    right: 12px;
    bottom: 12px;

    display: grid;

    grid-template-columns:
        repeat(6, minmax(0, 1fr));

    gap: 4px;
}

#viabilidad-panel-tv .gstvpan-hud-step {
    min-width: 0;

    padding:
        7px 3px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(5, 17, 30, 0.85);

    color: #728b9b;

    text-align: center;

    font-size: 6.5px;
    line-height: 1.35;
    font-weight: 600;
}


/* =========================================================
   DECISION FACTORS
   ========================================================= */

#viabilidad-panel-tv .gstvpan-factors {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 10px;

    margin-top: 18px;
}

#viabilidad-panel-tv .gstvpan-factor {
    --factor-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        17px 15px;

    overflow: hidden;

    border-radius: 13px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.88),
            rgba(4, 12, 22, 0.97)
        );
}

#viabilidad-panel-tv .gstvpan-factor:nth-child(1) {
    --factor-color: #3286ff;

    border:
        1px solid rgba(50, 134, 255, 0.12);
}

#viabilidad-panel-tv .gstvpan-factor:nth-child(2) {
    --factor-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.12);
}

#viabilidad-panel-tv .gstvpan-factor:nth-child(3) {
    --factor-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.12);
}

#viabilidad-panel-tv .gstvpan-factor:nth-child(4) {
    --factor-color: #43e58b;

    border:
        1px solid rgba(67, 229, 139, 0.12);
}

#viabilidad-panel-tv .gstvpan-factor::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 65px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--factor-color),
            transparent
        );
}

#viabilidad-panel-tv .gstvpan-factor-code {
    display: block;

    margin-bottom: 7px;

    color: var(--factor-color);

    font-size: 8px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#viabilidad-panel-tv .gstvpan-factor-title {
    display: block;

    margin-bottom: 5px;

    color: #dcebf4;

    font-size: 10px;
    line-height: 1.45;
    font-weight: 600;
}

#viabilidad-panel-tv .gstvpan-factor-copy {
    display: block;

    color: #71899a;

    font-size: 9px;
    line-height: 1.56;
}


/* =========================================================
   WARNING
   ========================================================= */

#viabilidad-panel-tv .gstvpan-warning {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 12px;

    align-items: center;

    margin-top: 18px;
    padding:
        16px;

    border:
        1px solid rgba(255, 200, 87, 0.12);

    border-radius: 13px;

    background:
        linear-gradient(
            135deg,
            rgba(255, 200, 87, 0.023),
            rgba(255, 99, 125, 0.012)
        );
}

#viabilidad-panel-tv .gstvpan-warning-icon {
    display: grid;
    place-items: center;

    width: 32px;
    height: 32px;

    flex: 0 0 32px;

    border:
        1px solid rgba(255, 200, 87, 0.18);

    border-radius: 9px;

    color: #f2d989;

    font-size: 10px;
    font-weight: 700;
}

#viabilidad-panel-tv .gstvpan-warning-copy {
    color: #8d856d;

    font-size: 9px;
    line-height: 1.6;
}

#viabilidad-panel-tv .gstvpan-warning-copy strong {
    color: #e9ddb5;
    font-weight: 600;
}

#viabilidad-panel-tv .gstvpan-warning-state {
    flex-shrink: 0;

    color: #b9a972;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 600;

    text-transform: uppercase;
}


/* =========================================================
   TERMINAL
   ========================================================= */

#viabilidad-panel-tv .gstvpan-terminal {
    margin-top: 18px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.17);

    border-radius: 17px;

    background:
        linear-gradient(
            155deg,
            rgba(10, 18, 38, 0.94),
            rgba(4, 9, 20, 0.98)
        );
}

#viabilidad-panel-tv .gstvpan-terminal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    min-height: 43px;

    padding:
        10px 14px;

    border-bottom:
        1px solid rgba(118, 167, 255, 0.09);

    background:
        rgba(8, 18, 34, 0.74);
}

#viabilidad-panel-tv .gstvpan-terminal-dots {
    display: flex;

    gap: 6px;
}

#viabilidad-panel-tv .gstvpan-terminal-dots span {
    width: 6px;
    height: 6px;

    border-radius: 50%;
}

#viabilidad-panel-tv
.gstvpan-terminal-dots span:nth-child(1) {
    background: var(--pan-red);
}

#viabilidad-panel-tv
.gstvpan-terminal-dots span:nth-child(2) {
    background: var(--pan-yellow);
}

#viabilidad-panel-tv
.gstvpan-terminal-dots span:nth-child(3) {
    background: var(--pan-green);
}

#viabilidad-panel-tv .gstvpan-terminal-name {
    color: #71889d;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;

    text-transform: uppercase;
}

#viabilidad-panel-tv .gstvpan-terminal-body {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr) auto;

    gap: 20px;

    align-items: center;

    padding:
        19px 20px;
}

#viabilidad-panel-tv .gstvpan-terminal-route {
    display: flex;
    flex-wrap: wrap;

    gap: 7px;
}

#viabilidad-panel-tv .gstvpan-terminal-route span {
    display: inline-flex;
    align-items: center;

    min-height: 28px;

    padding:
        6px 8px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(6, 18, 31, 0.50);

    color: #8298a8;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 500;
}

#viabilidad-panel-tv .gstvpan-terminal-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        8px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.13);

    border-radius: 9px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #9beabd;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 600;
}

#viabilidad-panel-tv .gstvpan-terminal-state::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--pan-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   FOOTER
   ========================================================= */

#viabilidad-panel-tv .gstvpan-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 18px;

    margin-top: 21px;
    padding: 0 3px;

    color: #60788c;

    font-size: 9px;
    line-height: 1.45;
    font-weight: 500;

    text-transform: uppercase;
}

#viabilidad-panel-tv .gstvpan-footer-status {
    display: flex;
    align-items: center;

    gap: 7px;

    color: #7791a5;
}

#viabilidad-panel-tv .gstvpan-footer-status::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--pan-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.45);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    #viabilidad-panel-tv .gstvpan-shell {
        width:
            min(
                100% - 40px,
                920px
            );

        padding:
            76px 0 80px;
    }

    #viabilidad-panel-tv .gstvpan-heading {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 20px;
    }

    #viabilidad-panel-tv .gstvpan-status {
        max-width: 650px;
    }

    #viabilidad-panel-tv .gstvpan-scenarios {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #viabilidad-panel-tv .gstvpan-results {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

    #viabilidad-panel-tv .gstvpan-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 14px;
    }

    #viabilidad-panel-tv .gstvpan-hud {
        width: 100%;
        max-width: 740px;

        margin: 0 auto;
    }

    #viabilidad-panel-tv .gstvpan-factors {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #viabilidad-panel-tv {
        overflow: hidden;
    }

    #viabilidad-panel-tv .gstvpan-grid {
        opacity: 0.17;

        background-size: 32px 32px;
    }

    #viabilidad-panel-tv .gstvpan-orbit,
    #viabilidad-panel-tv .gstvpan-scan {
        display: none;
    }

    #viabilidad-panel-tv .gstvpan-shell {
        width:
            calc(100% - 30px);

        max-width: 100%;

        padding:
            61px 0 65px;
    }

    #viabilidad-panel-tv .gstvpan-heading {
        display: block;

        margin-bottom: 28px;
    }

    #viabilidad-panel-tv .gstvpan-status {
        margin-top: 20px;

        padding:
            15px 16px;
    }

    #viabilidad-panel-tv .gstvpan-title {
        font-size:
            clamp(
                29px,
                9vw,
                38px
            );
    }

    #viabilidad-panel-tv .gstvpan-intro {
        font-size: 14px;
        line-height: 1.7;
    }

    #viabilidad-panel-tv .gstvpan-core {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 9px;

        padding:
            15px;
    }

    #viabilidad-panel-tv .gstvpan-core-state {
        width: fit-content;
    }

    #viabilidad-panel-tv .gstvpan-scenarios,
    #viabilidad-panel-tv .gstvpan-results,
    #viabilidad-panel-tv .gstvpan-factors {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #viabilidad-panel-tv .gstvpan-fracture {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #viabilidad-panel-tv .gstvpan-fracture-state {
        width: fit-content;
    }

    #viabilidad-panel-tv .gstvpan-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 12px;
    }

    #viabilidad-panel-tv .gstvpan-analysis,
    #viabilidad-panel-tv .gstvpan-hud {
        width: 100%;
        min-width: 0;

        padding:
            19px 15px;

        border-radius: 16px;
    }

    #viabilidad-panel-tv .gstvpan-route-row {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 4px;
    }

    #viabilidad-panel-tv .gstvpan-hud-head {
        flex-direction: column;
        align-items: flex-start;

        gap: 8px;
    }

    #viabilidad-panel-tv .gstvpan-hud-screen {
        min-height: 355px;
    }

    #viabilidad-panel-tv .gstvpan-hud-core,
    #viabilidad-panel-tv .gstvpan-ring,
    #viabilidad-panel-tv .gstvpan-line {
        animation: none;
    }

    #viabilidad-panel-tv .gstvpan-hud-core {
        width: 112px;
        height: 112px;

        padding: 12px;
    }

    #viabilidad-panel-tv .gstvpan-hud-core strong {
        font-size: 7px;
    }

    #viabilidad-panel-tv .gstvpan-hud-core span {
        font-size: 5.7px;
    }

    #viabilidad-panel-tv .gstvpan-ring.one {
        width: 166px;
        height: 166px;
    }

    #viabilidad-panel-tv .gstvpan-ring.two {
        width: 220px;
        height: 220px;
    }

    #viabilidad-panel-tv .gstvpan-node {
        width: 100px;

        padding: 7px;
    }

    #viabilidad-panel-tv .gstvpan-node-code {
        font-size: 6px;
    }

    #viabilidad-panel-tv .gstvpan-node strong {
        font-size: 7px;
    }

    #viabilidad-panel-tv
    .gstvpan-node span:last-child {
        display: none;
    }

    #viabilidad-panel-tv .gstvpan-hud-route {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #viabilidad-panel-tv .gstvpan-hud-step {
        text-align: left;

        font-size: 7.2px;
    }

    #viabilidad-panel-tv .gstvpan-warning {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #viabilidad-panel-tv .gstvpan-warning-state {
        width: fit-content;
    }

    #viabilidad-panel-tv .gstvpan-terminal-body {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 13px;

        padding:
            17px 15px;
    }

    #viabilidad-panel-tv .gstvpan-terminal-state {
        width: fit-content;
    }

    #viabilidad-panel-tv .gstvpan-footer {
        flex-direction: column;
        align-items: flex-start;

        gap: 6px;
    }
}



/* =========================================================
   MOBILE — MATRIZ DE VIABILIDAD SIN SUPERPOSICIONES
   ========================================================= */

@media (max-width: 767px) {

    #viabilidad-panel-tv .gstvpan-hud-screen {
        min-height: 0;
        display: grid;
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
        gap: 8px;
        padding: 12px;
    }

    #viabilidad-panel-tv .gstvpan-ring,
    #viabilidad-panel-tv .gstvpan-line {
        display: none;
    }

    #viabilidad-panel-tv .gstvpan-node {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;

        width: auto;
        min-width: 0;
        min-height: 108px;

        padding: 11px;
    }

    #viabilidad-panel-tv .gstvpan-node-code {
        font-size: 7.5px;
    }

    #viabilidad-panel-tv .gstvpan-node strong {
        font-size: 8.5px;
    }

    #viabilidad-panel-tv .gstvpan-node span:last-child {
        display: block;
        font-size: 7.5px;
    }

    #viabilidad-panel-tv .gstvpan-hud-core {
        position: relative;
        left: auto;
        top: auto;

        grid-column: 1 / -1;
        order: -1;

        width: 100%;
        height: auto;
        min-height: 96px;

        padding: 15px;

        transform: none;
        border-radius: 13px;
        animation: none;
    }

    #viabilidad-panel-tv .gstvpan-hud-core strong {
        font-size: 10px;
    }

    #viabilidad-panel-tv .gstvpan-hud-core span {
        font-size: 8px;
    }

    #viabilidad-panel-tv .gstvpan-hud-route {
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;

        grid-column: 1 / -1;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 5px;
        margin-top: 2px;
    }

    #viabilidad-panel-tv .gstvpan-hud-step {
        padding: 8px;
        text-align: left;
        font-size: 8px;
    }
}


/* =========================================================
   390 PX
   ========================================================= */

@media (max-width: 390px) {

    #viabilidad-panel-tv .gstvpan-shell {
        width:
            calc(100% - 24px);
    }

    #viabilidad-panel-tv .gstvpan-analysis,
    #viabilidad-panel-tv .gstvpan-hud {
        padding-left: 12px;
        padding-right: 12px;
    }

    #viabilidad-panel-tv .gstvpan-hud-screen {
        grid-template-columns:
            minmax(0, 1fr);
    }

    #viabilidad-panel-tv .gstvpan-hud-core,
    #viabilidad-panel-tv .gstvpan-hud-route {
        grid-column: 1;
    }

    #viabilidad-panel-tv .gstvpan-hud-route,
    #viabilidad-panel-tv .gstvpan-terminal-route {
        display: grid;
        grid-template-columns:
            minmax(0, 1fr);
    }
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    #viabilidad-panel-tv,
    #viabilidad-panel-tv *,
    #viabilidad-panel-tv *::before,
    #viabilidad-panel-tv *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition: none !important;
    }

    #viabilidad-panel-tv .gstvpan-scan {
        display: none !important;
    }
}


/* ===== Diagnóstico Refacciones Garantía TV ===== */
/* =========================================================
   GAMMERS STYLE
   REPARACIÓN DE TV — DIAGNÓSTICO / REFACCIONES / GARANTÍA
   ID INTERNO HTML: diagnostico-refacciones-garantia-tv
   ========================================================= */

#diagnostico-refacciones-garantia-tv {
    --svc-bg: #030811;
    --svc-bg-2: #05101b;

    --svc-cyan: #20d5f3;
    --svc-blue: #3286ff;
    --svc-violet: #8b5cf6;

    --svc-green: #43e58b;
    --svc-yellow: #ffc857;
    --svc-orange: #ff9f43;
    --svc-red: #ff637d;

    --svc-text: #edf8ff;
    --svc-muted: #91a8bb;
    --svc-muted-2: #687f92;

    position: relative;
    isolation: isolate;

    width: 100%;
    margin: 0;
    padding: 0;

    overflow: hidden;

    color: var(--svc-text);

    background:
        radial-gradient(
            circle at 12% 16%,
            rgba(32, 213, 243, 0.055),
            transparent 30%
        ),
        radial-gradient(
            circle at 88% 18%,
            rgba(67, 229, 139, 0.040),
            transparent 30%
        ),
        radial-gradient(
            circle at 72% 90%,
            rgba(139, 92, 246, 0.040),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #030811 0%,
            #05101b 50%,
            #030811 100%
        );

    font-family:
        "Poppins",
        Arial,
        sans-serif;

    scroll-margin-top: 90px;
    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}

#diagnostico-refacciones-garantia-tv *,
#diagnostico-refacciones-garantia-tv *::before,
#diagnostico-refacciones-garantia-tv *::after {
    box-sizing: border-box;

    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}


/* =========================================================
   BACKGROUND GRID
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-grid {
    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: 0.24;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.040) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.040) 1px,
            transparent 1px
        );

    background-size: 46px 46px;

    mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );

    -webkit-mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );
}


/* =========================================================
   ORBIT
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-orbit {
    position: absolute;

    left: -255px;
    top: 610px;

    width: 510px;
    height: 510px;

    pointer-events: none;

    border:
        1px solid rgba(32, 213, 243, 0.040);

    border-radius: 50%;

    animation:
        gstvsvc-spin
        58s linear infinite;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-orbit::before,
#diagnostico-refacciones-garantia-tv .gstvsvc-orbit::after {
    content: "";

    position: absolute;

    border-radius: 50%;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-orbit::before {
    inset: 82px;

    border:
        1px dashed rgba(67, 229, 139, 0.045);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-orbit::after {
    inset: 165px;

    border:
        1px solid rgba(139, 92, 246, 0.040);
}

@keyframes gstvsvc-spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
   SCAN
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-scan {
    position: absolute;
    inset: 0;

    pointer-events: none;

    overflow: hidden;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-scan::before {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    top: 0;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(32, 213, 243, 0.21),
            rgba(67, 229, 139, 0.13),
            rgba(139, 92, 246, 0.13),
            transparent
        );

    box-shadow:
        0 0 16px rgba(32, 213, 243, 0.07);

    animation:
        gstvsvc-scan
        12s linear infinite;
}

@keyframes gstvsvc-scan {

    0% {
        transform: translateY(0);
        opacity: 0;
    }

    8% {
        opacity: 0.35;
    }

    92% {
        opacity: 0.14;
    }

    100% {
        transform: translateY(3600px);
        opacity: 0;
    }
}


/* =========================================================
   SHELL
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-shell {
    position: relative;
    z-index: 2;

    width:
        min(
            1180px,
            calc(100% - 48px)
        );

    margin: 0 auto;

    padding:
        92px 0 96px;
}


/* =========================================================
   HEADING
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-heading {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(300px, 0.48fr);

    gap: 44px;

    align-items: end;

    margin-bottom: 34px;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-heading-main {
    min-width: 0;
}


/* =========================================================
   KICKER
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-kicker {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    margin-bottom: 15px;
    padding:
        7px 11px;

    border:
        1px solid rgba(32, 213, 243, 0.18);

    border-radius: 999px;

    background:
        rgba(32, 213, 243, 0.035);

    color: #9eeeff;

    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;

    letter-spacing: 0.10em;
    text-transform: uppercase;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-kicker::before {
    content: "";

    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: var(--svc-cyan);

    box-shadow:
        0 0 8px rgba(32, 213, 243, 0.70);
}


/* =========================================================
   TITLE
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-title {
    max-width: 900px;

    margin: 0;

    color: #f4fbff;

    font-size:
        clamp(
            31px,
            4vw,
            49px
        );

    line-height: 1.08;
    font-weight: 700;

    letter-spacing: -0.035em;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-title span {
    color: var(--svc-cyan);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-intro {
    max-width: 850px;

    margin:
        16px 0 0;

    color: var(--svc-muted);

    font-size: 15px;
    line-height: 1.76;
}


/* =========================================================
   HEADER STATUS
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-status {
    position: relative;

    min-width: 0;

    padding:
        18px 19px;

    overflow: hidden;

    border:
        1px solid rgba(67, 229, 139, 0.14);

    border-radius: 16px;

    background:
        linear-gradient(
            145deg,
            rgba(67, 229, 139, 0.035),
            rgba(4, 13, 23, 0.90)
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-status::before {
    content: "";

    position: absolute;

    left: 0;
    top: 12px;
    bottom: 12px;

    width: 2px;

    background:
        linear-gradient(
            180deg,
            transparent,
            var(--svc-green),
            transparent
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-status-label {
    display: flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 7px;

    color: #9deabd;

    font-size: 10px;
    line-height: 1.25;
    font-weight: 600;

    text-transform: uppercase;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-status-label::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--svc-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.52);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-status p {
    margin: 0;

    color: #a7bcc9;

    font-size: 11px;
    line-height: 1.62;
}


/* =========================================================
   SERVICE SCOPE
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-scope {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 14px;

    align-items: center;

    margin-bottom: 18px;
    padding:
        17px 18px;

    border:
        1px solid rgba(50, 134, 255, 0.14);

    border-radius: 14px;

    background:
        linear-gradient(
            135deg,
            rgba(50, 134, 255, 0.035),
            rgba(139, 92, 246, 0.018)
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-scope-icon {
    display: grid;
    place-items: center;

    width: 38px;
    height: 38px;

    flex: 0 0 38px;

    border:
        1px solid rgba(50, 134, 255, 0.20);

    border-radius: 10px;

    color: #a8caff;

    font-size: 9px;
    font-weight: 700;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-scope-copy {
    color: #8097a8;

    font-size: 9px;
    line-height: 1.62;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-scope-copy strong {
    color: #d5e5f4;
    font-weight: 600;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-scope-state {
    flex-shrink: 0;

    padding:
        6px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.13);

    border-radius: 999px;

    color: #9deabd;

    font-size: 8px;
    line-height: 1.3;
    font-weight: 600;

    text-transform: uppercase;
}


/* =========================================================
   CORE
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-core {
    position: relative;

    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 17px;

    align-items: center;

    margin-bottom: 18px;
    padding:
        18px;

    overflow: hidden;

    border:
        1px solid rgba(32, 213, 243, 0.14);

    border-radius: 15px;

    background:
        linear-gradient(
            135deg,
            rgba(32, 213, 243, 0.045),
            rgba(67, 229, 139, 0.018)
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-core::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 118px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--svc-cyan),
            transparent
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-core-icon {
    display: grid;
    place-items: center;

    width: 64px;
    height: 64px;

    flex: 0 0 64px;

    border:
        1px solid rgba(32, 213, 243, 0.20);

    border-radius: 14px;

    background:
        rgba(32, 213, 243, 0.040);

    color: #9eeeff;

    font-size: 9px;
    line-height: 1.2;
    font-weight: 700;

    text-align: center;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-core-copy {
    min-width: 0;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-core-copy strong {
    display: block;

    margin-bottom: 5px;

    color: #e2f8ff;

    font-size: 14px;
    line-height: 1.42;
    font-weight: 600;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-core-copy span {
    display: block;

    color: #829aa9;

    font-size: 10px;
    line-height: 1.64;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-core-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        7px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #96edbb;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-core-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--svc-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   FOUR PILLARS
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-pillars {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 10px;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-pillar {
    --pillar-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        20px 16px 18px;

    overflow: hidden;

    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-pillar.diagnosis {
    --pillar-color: #20d5f3;

    border:
        1px solid rgba(32, 213, 243, 0.13);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-pillar.parts {
    --pillar-color: #3286ff;

    border:
        1px solid rgba(50, 134, 255, 0.13);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-pillar.authorization {
    --pillar-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.13);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-pillar.warranty {
    --pillar-color: #43e58b;

    border:
        1px solid rgba(67, 229, 139, 0.13);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-pillar::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 74px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--pillar-color),
            transparent
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-pillar-code {
    display: block;

    margin-bottom: 8px;

    color: var(--pillar-color);

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-pillar-title {
    display: block;

    margin-bottom: 6px;

    color: #e0edf4;

    font-size: 11px;
    line-height: 1.44;
    font-weight: 600;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-pillar-copy {
    display: block;

    color: #748c9c;

    font-size: 9px;
    line-height: 1.58;
}


/* =========================================================
   DIAGNOSTIC POLICY
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-policy {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 10px;

    margin-top: 18px;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-policy-card {
    --policy-color: #43e58b;

    position: relative;

    min-width: 0;

    padding:
        20px 18px;

    overflow: hidden;

    border-radius: 15px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-policy-card.standard {
    --policy-color: #43e58b;

    border:
        1px solid rgba(67, 229, 139, 0.14);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-policy-card.previous {
    --policy-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.14);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-policy-card::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 84px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--policy-color),
            transparent
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-policy-code {
    display: block;

    margin-bottom: 8px;

    color: var(--policy-color);

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-policy-title {
    display: block;

    margin-bottom: 6px;

    color: #e2edf4;

    font-size: 12px;
    line-height: 1.45;
    font-weight: 600;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-policy-copy {
    display: block;

    color: #758d9d;

    font-size: 9px;
    line-height: 1.62;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-policy-copy strong {
    color: #d4e3ec;
    font-weight: 600;
}


/* =========================================================
   MAIN GRID
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-main {
    display: grid;

    grid-template-columns:
        minmax(0, 0.94fr)
        minmax(430px, 1.06fr);

    gap: 18px;

    margin-top: 18px;
}


/* =========================================================
   PROCESS
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-process {
    min-width: 0;

    padding:
        24px;

    border:
        1px solid rgba(32, 213, 243, 0.12);

    border-radius: 19px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-panel-label {
    display: inline-flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 9px;

    color: #9eeeff;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-panel-label::before {
    content: "";

    width: 14px;
    height: 1px;

    background: currentColor;

    box-shadow:
        0 0 7px currentColor;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-panel-title {
    margin: 0;

    color: #f1faff;

    font-size: 21px;
    line-height: 1.34;
    font-weight: 700;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-panel-copy {
    margin:
        9px 0 0;

    color: #8098a8;

    font-size: 10px;
    line-height: 1.67;
}


/* =========================================================
   PROCESS ROWS
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-route {
    display: grid;

    gap: 8px;

    margin-top: 18px;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-route-row {
    --route-color: #20d5f3;

    display: grid;

    grid-template-columns:
        108px minmax(0, 1fr);

    gap: 10px;

    padding:
        11px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 9px;

    background:
        rgba(5, 17, 30, 0.54);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-route-row:nth-child(2) {
    --route-color: #3286ff;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-route-row:nth-child(3) {
    --route-color: #8b5cf6;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-route-row:nth-child(4) {
    --route-color: #ffc857;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-route-row:nth-child(5) {
    --route-color: #43e58b;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-route-row:nth-child(6) {
    --route-color: #20d5f3;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-route-label {
    color: var(--route-color);

    font-size: 8px;
    line-height: 1.35;
    font-weight: 700;

    text-transform: uppercase;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-route-copy {
    color: #758d9d;

    font-size: 9px;
    line-height: 1.56;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-route-copy strong {
    color: #d6e6ee;
    font-weight: 600;
}


/* =========================================================
   WARNING NOTE
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-tech-note {
    display: flex;
    align-items: flex-start;

    gap: 9px;

    margin-top: 13px;
    padding:
        12px;

    border:
        1px solid rgba(255, 200, 87, 0.11);

    border-radius: 10px;

    background:
        rgba(255, 200, 87, 0.023);

    color: #8e866e;

    font-size: 9px;
    line-height: 1.58;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-tech-note::before {
    content: "!";

    display: grid;
    place-items: center;

    width: 19px;
    height: 19px;

    flex: 0 0 19px;

    border:
        1px solid rgba(255, 200, 87, 0.17);

    border-radius: 50%;

    color: #f0d48a;

    font-size: 8px;
    font-weight: 700;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-tech-note strong {
    color: #dfd0a4;
    font-weight: 600;
}


/* =========================================================
   HUD
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-hud {
    position: relative;

    min-width: 0;

    padding:
        22px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.16);

    border-radius: 20px;

    background:
        radial-gradient(
            circle at 50% 39%,
            rgba(32, 213, 243, 0.065),
            transparent 31%
        ),
        radial-gradient(
            circle at 50% 39%,
            rgba(67, 229, 139, 0.035),
            transparent 38%
        ),
        linear-gradient(
            145deg,
            rgba(24, 18, 45, 0.37),
            rgba(4, 12, 22, 0.97)
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-hud::before {
    content: "";

    position: absolute;
    inset: 0;

    opacity: 0.25;

    pointer-events: none;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        );

    background-size: 27px 27px;
}


/* =========================================================
   HUD HEAD
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-hud-head {
    position: relative;
    z-index: 4;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 10px;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-hud-code {
    color: #c5b9ff;

    font-size: 10px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-hud-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        5px 8px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #97eebb;

    font-size: 8px;
    line-height: 1.2;
    font-weight: 600;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-hud-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--svc-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   HUD SCREEN
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-hud-screen {
    position: relative;
    z-index: 2;

    min-height: 450px;

    margin-top: 16px;

    overflow: hidden;

    border:
        1px solid rgba(92, 208, 255, 0.075);

    border-radius: 14px;

    background:
        rgba(3, 12, 22, 0.70);
}


/* =========================================================
   HUD CORE
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-hud-core {
    position: absolute;

    z-index: 8;

    left: 50%;
    top: 42%;

    width: 178px;
    height: 178px;

    transform:
        translate(-50%, -50%);

    display: grid;
    place-items: center;

    padding:
        20px;

    border:
        1px solid rgba(32, 213, 243, 0.21);

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(32, 213, 243, 0.10),
            rgba(67, 229, 139, 0.045) 48%,
            rgba(5, 16, 29, 0.97) 77%
        );

    box-shadow:
        0 0 46px rgba(32, 213, 243, 0.08);

    animation:
        gstvsvc-pulse
        4.3s ease-in-out infinite;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-hud-core div {
    text-align: center;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-hud-core strong {
    display: block;

    color: #e7f9ff;

    font-size: 10px;
    line-height: 1.38;
    font-weight: 700;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-hud-core span {
    display: block;

    margin-top: 7px;

    color: #778d9e;

    font-size: 7px;
    line-height: 1.4;
    font-weight: 600;

    text-transform: uppercase;
}

@keyframes gstvsvc-pulse {

    0%,
    100% {
        box-shadow:
            0 0 28px rgba(32, 213, 243, 0.04);
    }

    50% {
        box-shadow:
            0 0 55px rgba(32, 213, 243, 0.12);
    }
}


/* =========================================================
   HUD RINGS
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-ring {
    position: absolute;

    left: 50%;
    top: 42%;

    transform:
        translate(-50%, -50%);

    border-radius: 50%;

    pointer-events: none;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-ring.one {
    width: 246px;
    height: 246px;

    border:
        1px solid rgba(32, 213, 243, 0.07);

    animation:
        gstvsvc-ring
        22s linear infinite;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-ring.two {
    width: 322px;
    height: 322px;

    border:
        1px dashed rgba(139, 92, 246, 0.07);

    animation:
        gstvsvc-ring
        32s linear infinite reverse;
}

@keyframes gstvsvc-ring {

    from {
        transform:
            translate(-50%, -50%)
            rotate(0deg);
    }

    to {
        transform:
            translate(-50%, -50%)
            rotate(360deg);
    }
}


/* =========================================================
   HUD NODES
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-node {
    position: absolute;

    z-index: 9;

    width: 128px;

    padding:
        9px;

    border-radius: 9px;

    background:
        rgba(5, 16, 29, 0.94);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-node.cause {
    left: 4%;
    top: 12%;

    border:
        1px solid rgba(32, 213, 243, 0.16);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-node.parts {
    right: 4%;
    top: 12%;

    border:
        1px solid rgba(50, 134, 255, 0.16);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-node.auth {
    left: 4%;
    bottom: 23%;

    border:
        1px solid rgba(255, 200, 87, 0.16);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-node.verify {
    right: 4%;
    bottom: 23%;

    border:
        1px solid rgba(67, 229, 139, 0.16);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-node-code {
    display: block;

    margin-bottom: 4px;

    color: var(--node-color);

    font-size: 7px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-node.cause {
    --node-color: #20d5f3;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-node.parts {
    --node-color: #3286ff;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-node.auth {
    --node-color: #ffc857;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-node.verify {
    --node-color: #43e58b;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-node strong {
    display: block;

    color: #d8e8f0;

    font-size: 9px;
    line-height: 1.35;
    font-weight: 600;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-node span:last-child {
    display: block;

    margin-top: 4px;

    color: #71899a;

    font-size: 7px;
    line-height: 1.42;
}


/* =========================================================
   HUD CONNECTIONS
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-line {
    position: absolute;

    z-index: 4;

    height: 1px;

    transform-origin: left center;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(32, 213, 243, 0.28),
            rgba(67, 229, 139, 0.19),
            transparent
        );

    animation:
        gstvsvc-line
        3s ease-in-out infinite;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-line.l1 {
    left: 20%;
    top: 27%;

    width: 35%;

    transform:
        rotate(21deg);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-line.l2 {
    left: 50%;
    top: 42%;

    width: 34%;

    transform:
        rotate(-21deg);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-line.l3 {
    left: 20%;
    bottom: 32%;

    width: 35%;

    transform:
        rotate(-20deg);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-line.l4 {
    left: 49%;
    bottom: 32%;

    width: 35%;

    transform:
        rotate(20deg);
}

@keyframes gstvsvc-line {

    0%,
    100% {
        opacity: 0.13;
    }

    50% {
        opacity: 0.70;
    }
}


/* =========================================================
   HUD ROUTE
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-hud-route {
    position: absolute;

    z-index: 10;

    left: 12px;
    right: 12px;
    bottom: 12px;

    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 4px;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-hud-step {
    min-width: 0;

    padding:
        7px 3px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(5, 17, 30, 0.85);

    color: #728b9b;

    text-align: center;

    font-size: 7px;
    line-height: 1.35;
    font-weight: 600;
}


/* =========================================================
   SERVICE CONDITIONS
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-conditions {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 10px;

    margin-top: 18px;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-condition {
    --condition-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        19px 17px;

    overflow: hidden;

    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.89),
            rgba(4, 12, 22, 0.97)
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-condition.compatibility {
    --condition-color: #3286ff;

    border:
        1px solid rgba(50, 134, 255, 0.12);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-condition.payment {
    --condition-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.12);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-condition.guarantee {
    --condition-color: #43e58b;

    border:
        1px solid rgba(67, 229, 139, 0.12);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-condition.reception {
    --condition-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.12);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-condition::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 70px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--condition-color),
            transparent
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-condition-code {
    display: block;

    margin-bottom: 7px;

    color: var(--condition-color);

    font-size: 8px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-condition-title {
    display: block;

    margin-bottom: 5px;

    color: #dcebf4;

    font-size: 11px;
    line-height: 1.45;
    font-weight: 600;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-condition-copy {
    display: block;

    color: #71899a;

    font-size: 9px;
    line-height: 1.60;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-condition-copy strong {
    color: #d8e6ee;
    font-weight: 600;
}


/* =========================================================
   WARRANTY STRIP
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-warranty-strip {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 14px;

    align-items: center;

    margin-top: 18px;
    padding:
        18px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 15px;

    background:
        linear-gradient(
            135deg,
            rgba(67, 229, 139, 0.035),
            rgba(32, 213, 243, 0.015)
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-warranty-number {
    display: grid;
    place-items: center;

    width: 72px;
    height: 72px;

    flex: 0 0 72px;

    border:
        1px solid rgba(67, 229, 139, 0.20);

    border-radius: 15px;

    background:
        rgba(67, 229, 139, 0.035);

    color: #a7f0c4;

    text-align: center;

    font-size: 22px;
    line-height: 1;
    font-weight: 700;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-warranty-number span {
    display: block;

    margin-top: 4px;

    font-size: 7px;
    line-height: 1.2;
    font-weight: 600;

    text-transform: uppercase;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-warranty-copy {
    color: #80988d;

    font-size: 9px;
    line-height: 1.62;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-warranty-copy strong {
    color: #ccebd7;
    font-weight: 600;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-warranty-state {
    flex-shrink: 0;

    padding:
        7px 10px;

    border:
        1px solid rgba(67, 229, 139, 0.14);

    border-radius: 999px;

    color: #9deabd;

    font-size: 8px;
    line-height: 1.3;
    font-weight: 600;

    text-transform: uppercase;
}


/* =========================================================
   WARNING
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-warning {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 12px;

    align-items: center;

    margin-top: 18px;
    padding:
        16px;

    border:
        1px solid rgba(255, 200, 87, 0.12);

    border-radius: 13px;

    background:
        linear-gradient(
            135deg,
            rgba(255, 200, 87, 0.023),
            rgba(255, 99, 125, 0.012)
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-warning-icon {
    display: grid;
    place-items: center;

    width: 32px;
    height: 32px;

    flex: 0 0 32px;

    border:
        1px solid rgba(255, 200, 87, 0.18);

    border-radius: 9px;

    color: #f2d989;

    font-size: 10px;
    font-weight: 700;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-warning-copy {
    color: #8d856d;

    font-size: 9px;
    line-height: 1.6;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-warning-copy strong {
    color: #e9ddb5;
    font-weight: 600;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-warning-state {
    flex-shrink: 0;

    color: #b9a972;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 600;

    text-transform: uppercase;
}


/* =========================================================
   TERMINAL
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-terminal {
    margin-top: 18px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.17);

    border-radius: 17px;

    background:
        linear-gradient(
            155deg,
            rgba(10, 18, 38, 0.94),
            rgba(4, 9, 20, 0.98)
        );
}

#diagnostico-refacciones-garantia-tv .gstvsvc-terminal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    min-height: 43px;

    padding:
        10px 14px;

    border-bottom:
        1px solid rgba(118, 167, 255, 0.09);

    background:
        rgba(8, 18, 34, 0.74);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-terminal-dots {
    display: flex;

    gap: 6px;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-terminal-dots span {
    width: 6px;
    height: 6px;

    border-radius: 50%;
}

#diagnostico-refacciones-garantia-tv
.gstvsvc-terminal-dots span:nth-child(1) {
    background: var(--svc-red);
}

#diagnostico-refacciones-garantia-tv
.gstvsvc-terminal-dots span:nth-child(2) {
    background: var(--svc-yellow);
}

#diagnostico-refacciones-garantia-tv
.gstvsvc-terminal-dots span:nth-child(3) {
    background: var(--svc-green);
}

#diagnostico-refacciones-garantia-tv .gstvsvc-terminal-name {
    color: #71889d;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;

    text-transform: uppercase;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-terminal-body {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr) auto;

    gap: 20px;

    align-items: center;

    padding:
        19px 20px;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-terminal-route {
    display: flex;
    flex-wrap: wrap;

    gap: 7px;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-terminal-route span {
    display: inline-flex;
    align-items: center;

    min-height: 28px;

    padding:
        6px 8px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(6, 18, 31, 0.50);

    color: #8298a8;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 500;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-terminal-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        8px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.13);

    border-radius: 9px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #9beabd;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 600;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-terminal-state::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--svc-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   FOOTER
   ========================================================= */

#diagnostico-refacciones-garantia-tv .gstvsvc-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 18px;

    margin-top: 21px;
    padding: 0 3px;

    color: #60788c;

    font-size: 9px;
    line-height: 1.45;
    font-weight: 500;

    text-transform: uppercase;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-footer-status {
    display: flex;
    align-items: center;

    gap: 7px;

    color: #7791a5;
}

#diagnostico-refacciones-garantia-tv .gstvsvc-footer-status::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--svc-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.45);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    #diagnostico-refacciones-garantia-tv .gstvsvc-shell {
        width:
            min(
                100% - 40px,
                920px
            );

        padding:
            76px 0 80px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-heading {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 20px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-status {
        max-width: 650px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-pillars {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 14px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud {
        width: 100%;
        max-width: 740px;

        margin: 0 auto;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-conditions {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #diagnostico-refacciones-garantia-tv {
        overflow: hidden;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-grid {
        opacity: 0.17;

        background-size: 32px 32px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-orbit,
    #diagnostico-refacciones-garantia-tv .gstvsvc-scan {
        display: none;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-shell {
        width:
            calc(100% - 30px);

        max-width: 100%;

        padding:
            61px 0 65px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-heading {
        display: block;

        margin-bottom: 28px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-status {
        margin-top: 20px;

        padding:
            15px 16px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-title {
        font-size:
            clamp(
                29px,
                9vw,
                38px
            );
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-intro {
        font-size: 14px;
        line-height: 1.7;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-scope,
    #diagnostico-refacciones-garantia-tv .gstvsvc-core,
    #diagnostico-refacciones-garantia-tv .gstvsvc-warranty-strip,
    #diagnostico-refacciones-garantia-tv .gstvsvc-warning {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-scope-state,
    #diagnostico-refacciones-garantia-tv .gstvsvc-core-state,
    #diagnostico-refacciones-garantia-tv .gstvsvc-warranty-state,
    #diagnostico-refacciones-garantia-tv .gstvsvc-warning-state {
        width: fit-content;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-pillars,
    #diagnostico-refacciones-garantia-tv .gstvsvc-policy,
    #diagnostico-refacciones-garantia-tv .gstvsvc-conditions {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 12px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-process,
    #diagnostico-refacciones-garantia-tv .gstvsvc-hud {
        width: 100%;
        min-width: 0;

        padding:
            19px 15px;

        border-radius: 16px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-route-row {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 4px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-head {
        flex-direction: column;
        align-items: flex-start;

        gap: 8px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-screen {
        min-height: 355px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-core,
    #diagnostico-refacciones-garantia-tv .gstvsvc-ring,
    #diagnostico-refacciones-garantia-tv .gstvsvc-line {
        animation: none;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-core {
        width: 112px;
        height: 112px;

        padding: 12px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-core strong {
        font-size: 6.8px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-core span {
        font-size: 5.6px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-ring.one {
        width: 166px;
        height: 166px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-ring.two {
        width: 220px;
        height: 220px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-node {
        width: 100px;

        padding: 7px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-node-code {
        font-size: 6px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-node strong {
        font-size: 7px;
    }

    #diagnostico-refacciones-garantia-tv
    .gstvsvc-node span:last-child {
        display: none;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-route {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-step {
        text-align: left;

        font-size: 7.3px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-terminal-body {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 13px;

        padding:
            17px 15px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-terminal-state {
        width: fit-content;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-footer {
        flex-direction: column;
        align-items: flex-start;

        gap: 6px;
    }
}



/* =========================================================
   MOBILE — FLUJO DE SERVICIO SIN SUPERPOSICIONES
   ========================================================= */

@media (max-width: 767px) {

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-screen {
        min-height: 0;
        display: grid;
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
        gap: 8px;
        padding: 12px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-ring,
    #diagnostico-refacciones-garantia-tv .gstvsvc-line {
        display: none;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-node {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;

        width: auto;
        min-width: 0;
        min-height: 108px;
        padding: 11px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-node-code {
        font-size: 7.5px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-node strong {
        font-size: 8.5px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-node span:last-child {
        display: block;
        font-size: 7.5px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-core {
        position: relative;
        left: auto;
        top: auto;

        grid-column: 1 / -1;
        order: -1;

        width: 100%;
        height: auto;
        min-height: 96px;
        padding: 15px;

        transform: none;
        border-radius: 13px;
        animation: none;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-core strong {
        font-size: 10px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-core span {
        font-size: 8px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-route {
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;

        grid-column: 1 / -1;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 5px;
        margin-top: 2px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-step {
        padding: 8px;
        text-align: left;
        font-size: 8px;
    }
}


/* =========================================================
   390 PX
   ========================================================= */

@media (max-width: 390px) {

    #diagnostico-refacciones-garantia-tv .gstvsvc-shell {
        width:
            calc(100% - 24px);
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-process,
    #diagnostico-refacciones-garantia-tv .gstvsvc-hud {
        padding-left: 12px;
        padding-right: 12px;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-screen {
        grid-template-columns:
            minmax(0, 1fr);
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-core,
    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-route {
        grid-column: 1;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-hud-route,
    #diagnostico-refacciones-garantia-tv .gstvsvc-terminal-route {
        display: grid;
        grid-template-columns:
            minmax(0, 1fr);
    }
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    #diagnostico-refacciones-garantia-tv,
    #diagnostico-refacciones-garantia-tv *,
    #diagnostico-refacciones-garantia-tv *::before,
    #diagnostico-refacciones-garantia-tv *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition: none !important;
    }

    #diagnostico-refacciones-garantia-tv .gstvsvc-scan {
        display: none !important;
    }
}


/* ===== Proceso de Servicio TV ===== */
/* =========================================================
   GAMMERS STYLE
   REPARACIÓN DE TV — PROCESO DE SERVICIO
   ID INTERNO HTML: proceso-servicio-tv
   ========================================================= */

#proceso-servicio-tv {
    --proc-bg: #030811;
    --proc-bg-2: #05101b;

    --proc-cyan: #20d5f3;
    --proc-blue: #3286ff;
    --proc-violet: #8b5cf6;

    --proc-green: #43e58b;
    --proc-yellow: #ffc857;
    --proc-orange: #ff9f43;
    --proc-red: #ff637d;

    --proc-text: #edf8ff;
    --proc-muted: #91a8bb;
    --proc-muted-2: #687f92;

    position: relative;
    isolation: isolate;

    width: 100%;
    margin: 0;
    padding: 0;

    overflow: hidden;

    color: var(--proc-text);

    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(32, 213, 243, 0.055),
            transparent 30%
        ),
        radial-gradient(
            circle at 88% 19%,
            rgba(67, 229, 139, 0.040),
            transparent 30%
        ),
        radial-gradient(
            circle at 70% 90%,
            rgba(139, 92, 246, 0.040),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #030811 0%,
            #05101b 50%,
            #030811 100%
        );

    font-family:
        "Poppins",
        Arial,
        sans-serif;

    scroll-margin-top: 90px;
    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}

#proceso-servicio-tv *,
#proceso-servicio-tv *::before,
#proceso-servicio-tv *::after {
    box-sizing: border-box;

    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}


/* =========================================================
   BACKGROUND GRID
   ========================================================= */

#proceso-servicio-tv .gstvproc-grid {
    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: 0.24;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.040) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.040) 1px,
            transparent 1px
        );

    background-size: 46px 46px;

    mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );

    -webkit-mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );
}


/* =========================================================
   ORBIT
   ========================================================= */

#proceso-servicio-tv .gstvproc-orbit {
    position: absolute;

    right: -260px;
    top: 560px;

    width: 520px;
    height: 520px;

    pointer-events: none;

    border:
        1px solid rgba(32, 213, 243, 0.040);

    border-radius: 50%;

    animation:
        gstvproc-spin
        58s linear infinite;
}

#proceso-servicio-tv .gstvproc-orbit::before,
#proceso-servicio-tv .gstvproc-orbit::after {
    content: "";

    position: absolute;

    border-radius: 50%;
}

#proceso-servicio-tv .gstvproc-orbit::before {
    inset: 84px;

    border:
        1px dashed rgba(67, 229, 139, 0.045);
}

#proceso-servicio-tv .gstvproc-orbit::after {
    inset: 170px;

    border:
        1px solid rgba(139, 92, 246, 0.040);
}

@keyframes gstvproc-spin {

    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
   SCAN
   ========================================================= */

#proceso-servicio-tv .gstvproc-scan {
    position: absolute;
    inset: 0;

    pointer-events: none;

    overflow: hidden;
}

#proceso-servicio-tv .gstvproc-scan::before {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    top: 0;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(32, 213, 243, 0.20),
            rgba(67, 229, 139, 0.12),
            rgba(139, 92, 246, 0.12),
            transparent
        );

    box-shadow:
        0 0 16px rgba(32, 213, 243, 0.07);

    animation:
        gstvproc-scan
        12s linear infinite;
}

@keyframes gstvproc-scan {

    0% {
        transform: translateY(0);
        opacity: 0;
    }

    8% {
        opacity: 0.35;
    }

    92% {
        opacity: 0.14;
    }

    100% {
        transform: translateY(3400px);
        opacity: 0;
    }
}


/* =========================================================
   SHELL
   ========================================================= */

#proceso-servicio-tv .gstvproc-shell {
    position: relative;
    z-index: 2;

    width:
        min(
            1180px,
            calc(100% - 48px)
        );

    margin: 0 auto;

    padding:
        92px 0 96px;
}


/* =========================================================
   HEADING
   ========================================================= */

#proceso-servicio-tv .gstvproc-heading {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(300px, 0.48fr);

    gap: 44px;

    align-items: end;

    margin-bottom: 34px;
}

#proceso-servicio-tv .gstvproc-heading-main {
    min-width: 0;
}


/* =========================================================
   KICKER
   ========================================================= */

#proceso-servicio-tv .gstvproc-kicker {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    margin-bottom: 15px;
    padding:
        7px 11px;

    border:
        1px solid rgba(32, 213, 243, 0.18);

    border-radius: 999px;

    background:
        rgba(32, 213, 243, 0.035);

    color: #9eeeff;

    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;

    letter-spacing: 0.10em;
    text-transform: uppercase;
}

#proceso-servicio-tv .gstvproc-kicker::before {
    content: "";

    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: var(--proc-cyan);

    box-shadow:
        0 0 8px rgba(32, 213, 243, 0.70);
}


/* =========================================================
   TITLE
   ========================================================= */

#proceso-servicio-tv .gstvproc-title {
    max-width: 900px;

    margin: 0;

    color: #f4fbff;

    font-size:
        clamp(
            31px,
            4vw,
            49px
        );

    line-height: 1.08;
    font-weight: 700;

    letter-spacing: -0.035em;
}

#proceso-servicio-tv .gstvproc-title span {
    color: var(--proc-cyan);
}

#proceso-servicio-tv .gstvproc-intro {
    max-width: 850px;

    margin:
        16px 0 0;

    color: var(--proc-muted);

    font-size: 15px;
    line-height: 1.76;
}


/* =========================================================
   STATUS
   ========================================================= */

#proceso-servicio-tv .gstvproc-status {
    position: relative;

    min-width: 0;

    padding:
        18px 19px;

    overflow: hidden;

    border:
        1px solid rgba(67, 229, 139, 0.14);

    border-radius: 16px;

    background:
        linear-gradient(
            145deg,
            rgba(67, 229, 139, 0.035),
            rgba(4, 13, 23, 0.90)
        );
}

#proceso-servicio-tv .gstvproc-status::before {
    content: "";

    position: absolute;

    left: 0;
    top: 12px;
    bottom: 12px;

    width: 2px;

    background:
        linear-gradient(
            180deg,
            transparent,
            var(--proc-green),
            transparent
        );
}

#proceso-servicio-tv .gstvproc-status-label {
    display: flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 7px;

    color: #9deabd;

    font-size: 10px;
    line-height: 1.25;
    font-weight: 600;

    text-transform: uppercase;
}

#proceso-servicio-tv .gstvproc-status-label::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--proc-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.52);
}

#proceso-servicio-tv .gstvproc-status p {
    margin: 0;

    color: #a7bcc9;

    font-size: 11px;
    line-height: 1.62;
}


/* =========================================================
   CORE
   ========================================================= */

#proceso-servicio-tv .gstvproc-core {
    position: relative;

    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 17px;

    align-items: center;

    margin-bottom: 18px;
    padding:
        18px;

    overflow: hidden;

    border:
        1px solid rgba(32, 213, 243, 0.14);

    border-radius: 15px;

    background:
        linear-gradient(
            135deg,
            rgba(32, 213, 243, 0.045),
            rgba(67, 229, 139, 0.018)
        );
}

#proceso-servicio-tv .gstvproc-core::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 118px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--proc-cyan),
            transparent
        );
}

#proceso-servicio-tv .gstvproc-core-icon {
    display: grid;
    place-items: center;

    width: 64px;
    height: 64px;

    flex: 0 0 64px;

    border:
        1px solid rgba(32, 213, 243, 0.20);

    border-radius: 14px;

    background:
        rgba(32, 213, 243, 0.040);

    color: #9eeeff;

    font-size: 9px;
    line-height: 1.2;
    font-weight: 700;

    text-align: center;
}

#proceso-servicio-tv .gstvproc-core-copy {
    min-width: 0;
}

#proceso-servicio-tv .gstvproc-core-copy strong {
    display: block;

    margin-bottom: 5px;

    color: #e2f8ff;

    font-size: 14px;
    line-height: 1.42;
    font-weight: 600;
}

#proceso-servicio-tv .gstvproc-core-copy span {
    display: block;

    color: #829aa9;

    font-size: 10px;
    line-height: 1.64;
}

#proceso-servicio-tv .gstvproc-core-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        7px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #96edbb;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;
}

#proceso-servicio-tv .gstvproc-core-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--proc-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   QUICK FACTS
   ========================================================= */

#proceso-servicio-tv .gstvproc-facts {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 10px;
}

#proceso-servicio-tv .gstvproc-fact {
    --fact-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        19px 16px 17px;

    overflow: hidden;

    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#proceso-servicio-tv .gstvproc-fact.time {
    --fact-color: #20d5f3;

    border:
        1px solid rgba(32, 213, 243, 0.13);
}

#proceso-servicio-tv .gstvproc-fact.payment {
    --fact-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.13);
}

#proceso-servicio-tv .gstvproc-fact.warranty {
    --fact-color: #43e58b;

    border:
        1px solid rgba(67, 229, 139, 0.13);
}

#proceso-servicio-tv .gstvproc-fact.scope {
    --fact-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.13);
}

#proceso-servicio-tv .gstvproc-fact::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 74px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--fact-color),
            transparent
        );
}

#proceso-servicio-tv .gstvproc-fact-code {
    display: block;

    margin-bottom: 8px;

    color: var(--fact-color);

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#proceso-servicio-tv .gstvproc-fact-title {
    display: block;

    margin-bottom: 6px;

    color: #e0edf4;

    font-size: 11px;
    line-height: 1.44;
    font-weight: 600;
}

#proceso-servicio-tv .gstvproc-fact-copy {
    display: block;

    color: #748c9c;

    font-size: 9px;
    line-height: 1.58;
}


/* =========================================================
   PROCESS STEPS
   ========================================================= */

#proceso-servicio-tv .gstvproc-steps {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 10px;

    margin-top: 18px;
}

#proceso-servicio-tv .gstvproc-step {
    --step-color: #20d5f3;

    position: relative;

    min-width: 0;

    min-height: 172px;

    padding:
        18px 16px 17px;

    overflow: hidden;

    border:
        1px solid rgba(92, 208, 255, 0.09);

    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.88),
            rgba(4, 12, 22, 0.97)
        );
}

#proceso-servicio-tv .gstvproc-step:nth-child(1) {
    --step-color: #20d5f3;
}

#proceso-servicio-tv .gstvproc-step:nth-child(2) {
    --step-color: #3286ff;
}

#proceso-servicio-tv .gstvproc-step:nth-child(3) {
    --step-color: #8b5cf6;
}

#proceso-servicio-tv .gstvproc-step:nth-child(4) {
    --step-color: #ffc857;
}

#proceso-servicio-tv .gstvproc-step:nth-child(5) {
    --step-color: #ffc857;
}

#proceso-servicio-tv .gstvproc-step:nth-child(6) {
    --step-color: #20d5f3;
}

#proceso-servicio-tv .gstvproc-step:nth-child(7) {
    --step-color: #43e58b;
}

#proceso-servicio-tv .gstvproc-step:nth-child(8) {
    --step-color: #43e58b;
}

#proceso-servicio-tv .gstvproc-step::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 72px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--step-color),
            transparent
        );
}

#proceso-servicio-tv .gstvproc-step-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 28px;
    height: 28px;

    margin-bottom: 10px;

    border:
        1px solid
        color-mix(
            in srgb,
            var(--step-color) 25%,
            transparent
        );

    border-radius: 8px;

    background:
        color-mix(
            in srgb,
            var(--step-color) 5%,
            transparent
        );

    color: var(--step-color);

    font-size: 9px;
    line-height: 1;
    font-weight: 700;
}

#proceso-servicio-tv .gstvproc-step-title {
    display: block;

    margin-bottom: 6px;

    color: #dcebf4;

    font-size: 11px;
    line-height: 1.43;
    font-weight: 600;
}

#proceso-servicio-tv .gstvproc-step-copy {
    display: block;

    color: #71899a;

    font-size: 9px;
    line-height: 1.58;
}


/* =========================================================
   MAIN GRID
   ========================================================= */

#proceso-servicio-tv .gstvproc-main {
    display: grid;

    grid-template-columns:
        minmax(0, 0.94fr)
        minmax(430px, 1.06fr);

    gap: 18px;

    margin-top: 18px;
}


/* =========================================================
   SERVICE DETAILS
   ========================================================= */

#proceso-servicio-tv .gstvproc-details {
    min-width: 0;

    padding:
        24px;

    border:
        1px solid rgba(32, 213, 243, 0.12);

    border-radius: 19px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.90),
            rgba(4, 12, 22, 0.97)
        );
}

#proceso-servicio-tv .gstvproc-panel-label {
    display: inline-flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 9px;

    color: #9eeeff;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#proceso-servicio-tv .gstvproc-panel-label::before {
    content: "";

    width: 14px;
    height: 1px;

    background: currentColor;

    box-shadow:
        0 0 7px currentColor;
}

#proceso-servicio-tv .gstvproc-panel-title {
    margin: 0;

    color: #f1faff;

    font-size: 21px;
    line-height: 1.34;
    font-weight: 700;
}

#proceso-servicio-tv .gstvproc-panel-copy {
    margin:
        9px 0 0;

    color: #8098a8;

    font-size: 10px;
    line-height: 1.67;
}


/* =========================================================
   DETAIL ROWS
   ========================================================= */

#proceso-servicio-tv .gstvproc-route {
    display: grid;

    gap: 8px;

    margin-top: 18px;
}

#proceso-servicio-tv .gstvproc-route-row {
    --route-color: #20d5f3;

    display: grid;

    grid-template-columns:
        108px minmax(0, 1fr);

    gap: 10px;

    padding:
        11px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 9px;

    background:
        rgba(5, 17, 30, 0.54);
}

#proceso-servicio-tv .gstvproc-route-row:nth-child(2) {
    --route-color: #3286ff;
}

#proceso-servicio-tv .gstvproc-route-row:nth-child(3) {
    --route-color: #8b5cf6;
}

#proceso-servicio-tv .gstvproc-route-row:nth-child(4) {
    --route-color: #ffc857;
}

#proceso-servicio-tv .gstvproc-route-row:nth-child(5) {
    --route-color: #20d5f3;
}

#proceso-servicio-tv .gstvproc-route-row:nth-child(6) {
    --route-color: #43e58b;
}

#proceso-servicio-tv .gstvproc-route-label {
    color: var(--route-color);

    font-size: 8px;
    line-height: 1.35;
    font-weight: 700;

    text-transform: uppercase;
}

#proceso-servicio-tv .gstvproc-route-copy {
    color: #758d9d;

    font-size: 9px;
    line-height: 1.56;
}

#proceso-servicio-tv .gstvproc-route-copy strong {
    color: #d6e6ee;
    font-weight: 600;
}


/* =========================================================
   TIME NOTE
   ========================================================= */

#proceso-servicio-tv .gstvproc-time-note {
    display: flex;
    align-items: flex-start;

    gap: 9px;

    margin-top: 13px;
    padding:
        12px;

    border:
        1px solid rgba(255, 200, 87, 0.11);

    border-radius: 10px;

    background:
        rgba(255, 200, 87, 0.023);

    color: #8e866e;

    font-size: 9px;
    line-height: 1.58;
}

#proceso-servicio-tv .gstvproc-time-note::before {
    content: "i";

    display: grid;
    place-items: center;

    width: 19px;
    height: 19px;

    flex: 0 0 19px;

    border:
        1px solid rgba(255, 200, 87, 0.17);

    border-radius: 50%;

    color: #f0d48a;

    font-size: 8px;
    font-weight: 700;
}

#proceso-servicio-tv .gstvproc-time-note strong {
    color: #dfd0a4;
    font-weight: 600;
}


/* =========================================================
   HUD
   ========================================================= */

#proceso-servicio-tv .gstvproc-hud {
    position: relative;

    min-width: 0;

    padding:
        22px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.16);

    border-radius: 20px;

    background:
        radial-gradient(
            circle at 50% 39%,
            rgba(32, 213, 243, 0.065),
            transparent 31%
        ),
        radial-gradient(
            circle at 50% 39%,
            rgba(67, 229, 139, 0.035),
            transparent 38%
        ),
        linear-gradient(
            145deg,
            rgba(24, 18, 45, 0.37),
            rgba(4, 12, 22, 0.97)
        );
}

#proceso-servicio-tv .gstvproc-hud::before {
    content: "";

    position: absolute;
    inset: 0;

    opacity: 0.25;

    pointer-events: none;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        );

    background-size: 27px 27px;
}


/* =========================================================
   HUD HEAD
   ========================================================= */

#proceso-servicio-tv .gstvproc-hud-head {
    position: relative;
    z-index: 4;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 10px;
}

#proceso-servicio-tv .gstvproc-hud-code {
    color: #c5b9ff;

    font-size: 10px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#proceso-servicio-tv .gstvproc-hud-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        5px 8px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #97eebb;

    font-size: 8px;
    line-height: 1.2;
    font-weight: 600;
}

#proceso-servicio-tv .gstvproc-hud-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--proc-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   HUD SCREEN
   ========================================================= */

#proceso-servicio-tv .gstvproc-hud-screen {
    position: relative;
    z-index: 2;

    min-height: 450px;

    margin-top: 16px;

    overflow: hidden;

    border:
        1px solid rgba(92, 208, 255, 0.075);

    border-radius: 14px;

    background:
        rgba(3, 12, 22, 0.70);
}


/* =========================================================
   HUD CORE
   ========================================================= */

#proceso-servicio-tv .gstvproc-hud-core {
    position: absolute;

    z-index: 8;

    left: 50%;
    top: 42%;

    width: 178px;
    height: 178px;

    transform:
        translate(-50%, -50%);

    display: grid;
    place-items: center;

    padding:
        20px;

    border:
        1px solid rgba(32, 213, 243, 0.21);

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(32, 213, 243, 0.10),
            rgba(67, 229, 139, 0.045) 48%,
            rgba(5, 16, 29, 0.97) 77%
        );

    box-shadow:
        0 0 46px rgba(32, 213, 243, 0.08);

    animation:
        gstvproc-pulse
        4.3s ease-in-out infinite;
}

#proceso-servicio-tv .gstvproc-hud-core div {
    text-align: center;
}

#proceso-servicio-tv .gstvproc-hud-core strong {
    display: block;

    color: #e7f9ff;

    font-size: 10px;
    line-height: 1.38;
    font-weight: 700;
}

#proceso-servicio-tv .gstvproc-hud-core span {
    display: block;

    margin-top: 7px;

    color: #778d9e;

    font-size: 7px;
    line-height: 1.4;
    font-weight: 600;

    text-transform: uppercase;
}

@keyframes gstvproc-pulse {

    0%,
    100% {
        box-shadow:
            0 0 28px rgba(32, 213, 243, 0.04);
    }

    50% {
        box-shadow:
            0 0 55px rgba(32, 213, 243, 0.12);
    }
}


/* =========================================================
   HUD RINGS
   ========================================================= */

#proceso-servicio-tv .gstvproc-ring {
    position: absolute;

    left: 50%;
    top: 42%;

    transform:
        translate(-50%, -50%);

    border-radius: 50%;

    pointer-events: none;
}

#proceso-servicio-tv .gstvproc-ring.one {
    width: 246px;
    height: 246px;

    border:
        1px solid rgba(32, 213, 243, 0.07);

    animation:
        gstvproc-ring
        22s linear infinite;
}

#proceso-servicio-tv .gstvproc-ring.two {
    width: 322px;
    height: 322px;

    border:
        1px dashed rgba(139, 92, 246, 0.07);

    animation:
        gstvproc-ring
        32s linear infinite reverse;
}

@keyframes gstvproc-ring {

    from {
        transform:
            translate(-50%, -50%)
            rotate(0deg);
    }

    to {
        transform:
            translate(-50%, -50%)
            rotate(360deg);
    }
}


/* =========================================================
   HUD NODES
   ========================================================= */

#proceso-servicio-tv .gstvproc-node {
    position: absolute;

    z-index: 9;

    width: 128px;

    padding:
        9px;

    border-radius: 9px;

    background:
        rgba(5, 16, 29, 0.94);
}

#proceso-servicio-tv .gstvproc-node.received {
    left: 4%;
    top: 12%;

    border:
        1px solid rgba(32, 213, 243, 0.16);
}

#proceso-servicio-tv .gstvproc-node.diagnosis {
    right: 4%;
    top: 12%;

    border:
        1px solid rgba(50, 134, 255, 0.16);
}

#proceso-servicio-tv .gstvproc-node.service {
    left: 4%;
    bottom: 23%;

    border:
        1px solid rgba(139, 92, 246, 0.16);
}

#proceso-servicio-tv .gstvproc-node.ready {
    right: 4%;
    bottom: 23%;

    border:
        1px solid rgba(67, 229, 139, 0.16);
}

#proceso-servicio-tv .gstvproc-node-code {
    display: block;

    margin-bottom: 4px;

    color: var(--node-color);

    font-size: 7px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#proceso-servicio-tv .gstvproc-node.received {
    --node-color: #20d5f3;
}

#proceso-servicio-tv .gstvproc-node.diagnosis {
    --node-color: #3286ff;
}

#proceso-servicio-tv .gstvproc-node.service {
    --node-color: #8b5cf6;
}

#proceso-servicio-tv .gstvproc-node.ready {
    --node-color: #43e58b;
}

#proceso-servicio-tv .gstvproc-node strong {
    display: block;

    color: #d8e8f0;

    font-size: 9px;
    line-height: 1.35;
    font-weight: 600;
}

#proceso-servicio-tv .gstvproc-node span:last-child {
    display: block;

    margin-top: 4px;

    color: #71899a;

    font-size: 7px;
    line-height: 1.42;
}


/* =========================================================
   HUD CONNECTIONS
   ========================================================= */

#proceso-servicio-tv .gstvproc-line {
    position: absolute;

    z-index: 4;

    height: 1px;

    transform-origin: left center;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(32, 213, 243, 0.28),
            rgba(67, 229, 139, 0.19),
            transparent
        );

    animation:
        gstvproc-line
        3s ease-in-out infinite;
}

#proceso-servicio-tv .gstvproc-line.l1 {
    left: 20%;
    top: 27%;

    width: 35%;

    transform:
        rotate(21deg);
}

#proceso-servicio-tv .gstvproc-line.l2 {
    left: 50%;
    top: 42%;

    width: 34%;

    transform:
        rotate(-21deg);
}

#proceso-servicio-tv .gstvproc-line.l3 {
    left: 20%;
    bottom: 32%;

    width: 35%;

    transform:
        rotate(-20deg);
}

#proceso-servicio-tv .gstvproc-line.l4 {
    left: 49%;
    bottom: 32%;

    width: 35%;

    transform:
        rotate(20deg);
}

@keyframes gstvproc-line {

    0%,
    100% {
        opacity: 0.13;
    }

    50% {
        opacity: 0.70;
    }
}


/* =========================================================
   HUD ROUTE
   ========================================================= */

#proceso-servicio-tv .gstvproc-hud-route {
    position: absolute;

    z-index: 10;

    left: 12px;
    right: 12px;
    bottom: 12px;

    display: grid;

    grid-template-columns:
        repeat(6, minmax(0, 1fr));

    gap: 4px;
}

#proceso-servicio-tv .gstvproc-hud-step {
    min-width: 0;

    padding:
        7px 3px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(5, 17, 30, 0.85);

    color: #728b9b;

    text-align: center;

    font-size: 6.6px;
    line-height: 1.35;
    font-weight: 600;
}


/* =========================================================
   LOCAL SERVICE
   ========================================================= */

#proceso-servicio-tv .gstvproc-local {
    display: grid;

    grid-template-columns:
        minmax(0, 1.15fr)
        minmax(280px, 0.85fr);

    gap: 14px;

    margin-top: 18px;
}

#proceso-servicio-tv .gstvproc-location,
#proceso-servicio-tv .gstvproc-hours {
    position: relative;

    min-width: 0;

    padding:
        20px;

    overflow: hidden;

    border-radius: 15px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.89),
            rgba(4, 12, 22, 0.97)
        );
}

#proceso-servicio-tv .gstvproc-location {
    border:
        1px solid rgba(32, 213, 243, 0.13);
}

#proceso-servicio-tv .gstvproc-hours {
    border:
        1px solid rgba(139, 92, 246, 0.13);
}

#proceso-servicio-tv .gstvproc-location::before,
#proceso-servicio-tv .gstvproc-hours::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 82px;
    height: 2px;
}

#proceso-servicio-tv .gstvproc-location::before {
    background:
        linear-gradient(
            90deg,
            var(--proc-cyan),
            transparent
        );
}

#proceso-servicio-tv .gstvproc-hours::before {
    background:
        linear-gradient(
            90deg,
            var(--proc-violet),
            transparent
        );
}

#proceso-servicio-tv .gstvproc-local-code {
    display: block;

    margin-bottom: 8px;

    color: #9eeeff;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#proceso-servicio-tv .gstvproc-hours .gstvproc-local-code {
    color: #c7bcff;
}

#proceso-servicio-tv .gstvproc-local-title {
    display: block;

    margin-bottom: 7px;

    color: #e2edf4;

    font-size: 12px;
    line-height: 1.45;
    font-weight: 600;
}

#proceso-servicio-tv .gstvproc-local-copy {
    color: #768e9f;

    font-size: 9px;
    line-height: 1.65;
}

#proceso-servicio-tv .gstvproc-map-link {
    display: inline-flex;
    align-items: center;

    gap: 7px;

    margin-top: 12px;
    padding:
        8px 10px;

    border:
        1px solid rgba(32, 213, 243, 0.15);

    border-radius: 9px;

    background:
        rgba(32, 213, 243, 0.025);

    color: #9fe9f7;

    font-size: 8px;
    line-height: 1.3;
    font-weight: 600;

    text-decoration: none;

    transition:
        border-color 0.2s ease,
        background 0.2s ease,
        transform 0.2s ease;
}

#proceso-servicio-tv .gstvproc-map-link:hover {
    border-color:
        rgba(32, 213, 243, 0.34);

    background:
        rgba(32, 213, 243, 0.055);

    transform:
        translateY(-1px);
}

#proceso-servicio-tv .gstvproc-map-link:focus-visible {
    outline: 2px solid rgba(32, 213, 243, 0.92);
    outline-offset: 4px;
    text-decoration: none;
}


/* =========================================================
   CONDITIONS STRIP
   ========================================================= */

#proceso-servicio-tv .gstvproc-conditions {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 10px;

    margin-top: 18px;
}

#proceso-servicio-tv .gstvproc-condition {
    --condition-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        18px 16px;

    overflow: hidden;

    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.89),
            rgba(4, 12, 22, 0.97)
        );
}

#proceso-servicio-tv .gstvproc-condition.order {
    --condition-color: #20d5f3;

    border:
        1px solid rgba(32, 213, 243, 0.12);
}

#proceso-servicio-tv .gstvproc-condition.parts {
    --condition-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.12);
}

#proceso-servicio-tv .gstvproc-condition.final {
    --condition-color: #43e58b;

    border:
        1px solid rgba(67, 229, 139, 0.12);
}

#proceso-servicio-tv .gstvproc-condition.standard {
    --condition-color: #3286ff;

    border:
        1px solid rgba(50, 134, 255, 0.12);
}

#proceso-servicio-tv .gstvproc-condition.previous {
    --condition-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.12);
}

#proceso-servicio-tv .gstvproc-condition::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 70px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--condition-color),
            transparent
        );
}

#proceso-servicio-tv .gstvproc-condition-code {
    display: block;

    margin-bottom: 7px;

    color: var(--condition-color);

    font-size: 8px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#proceso-servicio-tv .gstvproc-condition-title {
    display: block;

    margin-bottom: 5px;

    color: #dcebf4;

    font-size: 10px;
    line-height: 1.45;
    font-weight: 600;
}

#proceso-servicio-tv .gstvproc-condition-copy {
    display: block;

    color: #71899a;

    font-size: 9px;
    line-height: 1.60;
}


/* =========================================================
   TERMINAL
   ========================================================= */

#proceso-servicio-tv .gstvproc-terminal {
    margin-top: 18px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.17);

    border-radius: 17px;

    background:
        linear-gradient(
            155deg,
            rgba(10, 18, 38, 0.94),
            rgba(4, 9, 20, 0.98)
        );
}

#proceso-servicio-tv .gstvproc-terminal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    min-height: 43px;

    padding:
        10px 14px;

    border-bottom:
        1px solid rgba(118, 167, 255, 0.09);

    background:
        rgba(8, 18, 34, 0.74);
}

#proceso-servicio-tv .gstvproc-terminal-dots {
    display: flex;

    gap: 6px;
}

#proceso-servicio-tv .gstvproc-terminal-dots span {
    width: 6px;
    height: 6px;

    border-radius: 50%;
}

#proceso-servicio-tv
.gstvproc-terminal-dots span:nth-child(1) {
    background: var(--proc-red);
}

#proceso-servicio-tv
.gstvproc-terminal-dots span:nth-child(2) {
    background: var(--proc-yellow);
}

#proceso-servicio-tv
.gstvproc-terminal-dots span:nth-child(3) {
    background: var(--proc-green);
}

#proceso-servicio-tv .gstvproc-terminal-name {
    color: #71889d;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;

    text-transform: uppercase;
}

#proceso-servicio-tv .gstvproc-terminal-body {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr) auto;

    gap: 20px;

    align-items: center;

    padding:
        19px 20px;
}

#proceso-servicio-tv .gstvproc-terminal-route {
    display: flex;
    flex-wrap: wrap;

    gap: 7px;
}

#proceso-servicio-tv .gstvproc-terminal-route span {
    display: inline-flex;
    align-items: center;

    min-height: 28px;

    padding:
        6px 8px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(6, 18, 31, 0.50);

    color: #8298a8;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 500;
}

#proceso-servicio-tv .gstvproc-terminal-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        8px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.13);

    border-radius: 9px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #9beabd;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 600;
}

#proceso-servicio-tv .gstvproc-terminal-state::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--proc-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   FOOTER
   ========================================================= */

#proceso-servicio-tv .gstvproc-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 18px;

    margin-top: 21px;
    padding: 0 3px;

    color: #60788c;

    font-size: 9px;
    line-height: 1.45;
    font-weight: 500;

    text-transform: uppercase;
}

#proceso-servicio-tv .gstvproc-footer-status {
    display: flex;
    align-items: center;

    gap: 7px;

    color: #7791a5;
}

#proceso-servicio-tv .gstvproc-footer-status::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--proc-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.45);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    #proceso-servicio-tv .gstvproc-shell {
        width:
            min(
                100% - 40px,
                920px
            );

        padding:
            76px 0 80px;
    }

    #proceso-servicio-tv .gstvproc-heading {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 20px;
    }

    #proceso-servicio-tv .gstvproc-status {
        max-width: 650px;
    }

    #proceso-servicio-tv .gstvproc-facts {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #proceso-servicio-tv .gstvproc-steps {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #proceso-servicio-tv .gstvproc-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 14px;
    }

    #proceso-servicio-tv .gstvproc-hud {
        width: 100%;
        max-width: 740px;

        margin: 0 auto;
    }

    #proceso-servicio-tv .gstvproc-local {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(260px, 0.75fr);
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #proceso-servicio-tv {
        overflow: hidden;
    }

    #proceso-servicio-tv .gstvproc-grid {
        opacity: 0.17;

        background-size: 32px 32px;
    }

    #proceso-servicio-tv .gstvproc-orbit,
    #proceso-servicio-tv .gstvproc-scan {
        display: none;
    }

    #proceso-servicio-tv .gstvproc-shell {
        width:
            calc(100% - 30px);

        max-width: 100%;

        padding:
            61px 0 65px;
    }

    #proceso-servicio-tv .gstvproc-heading {
        display: block;

        margin-bottom: 28px;
    }

    #proceso-servicio-tv .gstvproc-status {
        margin-top: 20px;

        padding:
            15px 16px;
    }

    #proceso-servicio-tv .gstvproc-title {
        font-size:
            clamp(
                29px,
                9vw,
                38px
            );
    }

    #proceso-servicio-tv .gstvproc-intro {
        font-size: 14px;
        line-height: 1.7;
    }

    #proceso-servicio-tv .gstvproc-core {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 9px;

        padding:
            15px;
    }

    #proceso-servicio-tv .gstvproc-core-state {
        width: fit-content;
    }

    #proceso-servicio-tv .gstvproc-facts,
    #proceso-servicio-tv .gstvproc-steps,
    #proceso-servicio-tv .gstvproc-conditions,
    #proceso-servicio-tv .gstvproc-local {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #proceso-servicio-tv .gstvproc-step {
        min-height: 0;
    }

    #proceso-servicio-tv .gstvproc-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 12px;
    }

    #proceso-servicio-tv .gstvproc-details,
    #proceso-servicio-tv .gstvproc-hud {
        width: 100%;
        min-width: 0;

        padding:
            19px 15px;

        border-radius: 16px;
    }

    #proceso-servicio-tv .gstvproc-route-row {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 4px;
    }

    #proceso-servicio-tv .gstvproc-hud-head {
        flex-direction: column;
        align-items: flex-start;

        gap: 8px;
    }

    #proceso-servicio-tv .gstvproc-hud-screen {
        min-height: 355px;
    }

    #proceso-servicio-tv .gstvproc-hud-core,
    #proceso-servicio-tv .gstvproc-ring,
    #proceso-servicio-tv .gstvproc-line {
        animation: none;
    }

    #proceso-servicio-tv .gstvproc-hud-core {
        width: 112px;
        height: 112px;

        padding: 12px;
    }

    #proceso-servicio-tv .gstvproc-hud-core strong {
        font-size: 6.8px;
    }

    #proceso-servicio-tv .gstvproc-hud-core span {
        font-size: 5.6px;
    }

    #proceso-servicio-tv .gstvproc-ring.one {
        width: 166px;
        height: 166px;
    }

    #proceso-servicio-tv .gstvproc-ring.two {
        width: 220px;
        height: 220px;
    }

    #proceso-servicio-tv .gstvproc-node {
        width: 100px;

        padding: 7px;
    }

    #proceso-servicio-tv .gstvproc-node-code {
        font-size: 6px;
    }

    #proceso-servicio-tv .gstvproc-node strong {
        font-size: 7px;
    }

    #proceso-servicio-tv
    .gstvproc-node span:last-child {
        display: none;
    }

    #proceso-servicio-tv .gstvproc-hud-route {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #proceso-servicio-tv .gstvproc-hud-step {
        text-align: left;

        font-size: 7.3px;
    }

    #proceso-servicio-tv .gstvproc-terminal-body {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 13px;

        padding:
            17px 15px;
    }

    #proceso-servicio-tv .gstvproc-terminal-state {
        width: fit-content;
    }

    #proceso-servicio-tv .gstvproc-footer {
        flex-direction: column;
        align-items: flex-start;

        gap: 6px;
    }
}



/* =========================================================
   MOBILE — FLUJO DE SERVICIO SIN SUPERPOSICIONES
   ========================================================= */

@media (max-width: 767px) {

    #proceso-servicio-tv .gstvproc-hud-screen {
        min-height: 0;
        display: grid;
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
        gap: 8px;
        padding: 12px;
    }

    #proceso-servicio-tv .gstvproc-ring,
    #proceso-servicio-tv .gstvproc-line {
        display: none;
    }

    #proceso-servicio-tv .gstvproc-node {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;

        width: auto;
        min-width: 0;
        min-height: 108px;
        padding: 11px;
    }

    #proceso-servicio-tv .gstvproc-node-code {
        font-size: 7.5px;
    }

    #proceso-servicio-tv .gstvproc-node strong {
        font-size: 8.5px;
    }

    #proceso-servicio-tv .gstvproc-node span:last-child {
        display: block;
        font-size: 7.5px;
    }

    #proceso-servicio-tv .gstvproc-hud-core {
        position: relative;
        left: auto;
        top: auto;

        grid-column: 1 / -1;
        order: -1;

        width: 100%;
        height: auto;
        min-height: 96px;
        padding: 15px;

        transform: none;
        border-radius: 13px;
        animation: none;
    }

    #proceso-servicio-tv .gstvproc-hud-core strong {
        font-size: 10px;
    }

    #proceso-servicio-tv .gstvproc-hud-core span {
        font-size: 8px;
    }

    #proceso-servicio-tv .gstvproc-hud-route {
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;

        grid-column: 1 / -1;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 5px;
        margin-top: 2px;
    }

    #proceso-servicio-tv .gstvproc-hud-step {
        padding: 8px;
        text-align: left;
        font-size: 8px;
    }
}


/* =========================================================
   390 PX
   ========================================================= */

@media (max-width: 390px) {

    #proceso-servicio-tv .gstvproc-shell {
        width:
            calc(100% - 24px);
    }

    #proceso-servicio-tv .gstvproc-details,
    #proceso-servicio-tv .gstvproc-hud {
        padding-left: 12px;
        padding-right: 12px;
    }

    #proceso-servicio-tv .gstvproc-hud-screen {
        grid-template-columns:
            minmax(0, 1fr);
    }

    #proceso-servicio-tv .gstvproc-hud-core,
    #proceso-servicio-tv .gstvproc-hud-route {
        grid-column: 1;
    }

    #proceso-servicio-tv .gstvproc-hud-route,
    #proceso-servicio-tv .gstvproc-terminal-route {
        display: grid;
        grid-template-columns:
            minmax(0, 1fr);
    }
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    #proceso-servicio-tv,
    #proceso-servicio-tv *,
    #proceso-servicio-tv *::before,
    #proceso-servicio-tv *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition: none !important;
    }

    #proceso-servicio-tv .gstvproc-scan {
        display: none !important;
    }
}


/* ===== FAQs ===== */
/* =========================================================
   GAMMERS STYLE
   REPARACIÓN DE TV — PREGUNTAS FRECUENTES
   ID INTERNO HTML: preguntas-tv
   ========================================================= */

#preguntas-tv {
    --faq-bg: #030811;
    --faq-bg-2: #05101b;

    --faq-cyan: #20d5f3;
    --faq-blue: #3286ff;
    --faq-violet: #8b5cf6;

    --faq-green: #43e58b;
    --faq-yellow: #ffc857;
    --faq-red: #ff637d;

    --faq-text: #edf8ff;
    --faq-muted: #91a8bb;
    --faq-muted-2: #687f92;

    position: relative;
    isolation: isolate;

    width: 100%;
    margin: 0;
    padding: 0;

    overflow: hidden;

    color: var(--faq-text);

    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(32, 213, 243, 0.055),
            transparent 30%
        ),
        radial-gradient(
            circle at 90% 18%,
            rgba(139, 92, 246, 0.050),
            transparent 30%
        ),
        radial-gradient(
            circle at 72% 92%,
            rgba(67, 229, 139, 0.030),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #030811 0%,
            #05101b 50%,
            #030811 100%
        );

    font-family:
        "Poppins",
        Arial,
        sans-serif;

    scroll-margin-top: 90px;
    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}

#preguntas-tv *,
#preguntas-tv *::before,
#preguntas-tv *::after {
    box-sizing: border-box;

    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}


/* =========================================================
   GRID DECORATIVO
   ========================================================= */

#preguntas-tv .gstvfaq-grid {
    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: 0.24;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.040) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.040) 1px,
            transparent 1px
        );

    background-size: 46px 46px;

    mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );

    -webkit-mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 92%,
            transparent 100%
        );
}


/* =========================================================
   ORBITA
   ========================================================= */

#preguntas-tv .gstvfaq-orbit {
    position: absolute;

    left: -255px;
    top: 520px;

    width: 510px;
    height: 510px;

    pointer-events: none;

    border:
        1px solid rgba(32, 213, 243, 0.040);

    border-radius: 50%;

    animation:
        gstvfaq-spin
        58s linear infinite;
}

#preguntas-tv .gstvfaq-orbit::before,
#preguntas-tv .gstvfaq-orbit::after {
    content: "";

    position: absolute;

    border-radius: 50%;
}

#preguntas-tv .gstvfaq-orbit::before {
    inset: 82px;

    border:
        1px dashed rgba(139, 92, 246, 0.045);
}

#preguntas-tv .gstvfaq-orbit::after {
    inset: 165px;

    border:
        1px solid rgba(67, 229, 139, 0.035);
}

@keyframes gstvfaq-spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
   SCAN
   ========================================================= */

#preguntas-tv .gstvfaq-scan {
    position: absolute;
    inset: 0;

    pointer-events: none;

    overflow: hidden;
}

#preguntas-tv .gstvfaq-scan::before {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    top: 0;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(32, 213, 243, 0.20),
            rgba(139, 92, 246, 0.14),
            rgba(67, 229, 139, 0.10),
            transparent
        );

    box-shadow:
        0 0 16px rgba(32, 213, 243, 0.07);

    animation:
        gstvfaq-scan
        12s linear infinite;
}

@keyframes gstvfaq-scan {

    0% {
        transform: translateY(0);
        opacity: 0;
    }

    8% {
        opacity: 0.35;
    }

    92% {
        opacity: 0.14;
    }

    100% {
        transform: translateY(3300px);
        opacity: 0;
    }
}


/* =========================================================
   SHELL
   ========================================================= */

#preguntas-tv .gstvfaq-shell {
    position: relative;
    z-index: 2;

    width:
        min(
            1180px,
            calc(100% - 48px)
        );

    margin: 0 auto;

    padding:
        92px 0 96px;
}


/* =========================================================
   ENCABEZADO
   ========================================================= */

#preguntas-tv .gstvfaq-heading {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(300px, 0.48fr);

    gap: 44px;

    align-items: end;

    margin-bottom: 34px;
}

#preguntas-tv .gstvfaq-heading-main {
    min-width: 0;
}


/* =========================================================
   KICKER
   ========================================================= */

#preguntas-tv .gstvfaq-kicker {
    display: inline-flex;
    align-items: center;

    gap: 9px;

    margin-bottom: 15px;
    padding:
        7px 11px;

    border:
        1px solid rgba(32, 213, 243, 0.18);

    border-radius: 999px;

    background:
        rgba(32, 213, 243, 0.035);

    color: #9eeeff;

    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;

    letter-spacing: 0.10em;
    text-transform: uppercase;
}

#preguntas-tv .gstvfaq-kicker::before {
    content: "";

    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: var(--faq-cyan);

    box-shadow:
        0 0 8px rgba(32, 213, 243, 0.70);
}


/* =========================================================
   TITULO
   ========================================================= */

#preguntas-tv .gstvfaq-title {
    max-width: 900px;

    margin: 0;

    color: #f4fbff;

    font-size:
        clamp(
            31px,
            4vw,
            49px
        );

    line-height: 1.08;
    font-weight: 700;

    letter-spacing: -0.035em;
}

#preguntas-tv .gstvfaq-title span {
    color: var(--faq-cyan);
}

#preguntas-tv .gstvfaq-intro {
    max-width: 850px;

    margin:
        16px 0 0;

    color: var(--faq-muted);

    font-size: 15px;
    line-height: 1.76;
}


/* =========================================================
   STATUS
   ========================================================= */

#preguntas-tv .gstvfaq-status {
    position: relative;

    min-width: 0;

    padding:
        18px 19px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.14);

    border-radius: 16px;

    background:
        linear-gradient(
            145deg,
            rgba(139, 92, 246, 0.040),
            rgba(4, 13, 23, 0.90)
        );
}

#preguntas-tv .gstvfaq-status::before {
    content: "";

    position: absolute;

    left: 0;
    top: 12px;
    bottom: 12px;

    width: 2px;

    background:
        linear-gradient(
            180deg,
            transparent,
            var(--faq-violet),
            transparent
        );
}

#preguntas-tv .gstvfaq-status-label {
    display: flex;
    align-items: center;

    gap: 7px;

    margin-bottom: 7px;

    color: #c8bdff;

    font-size: 10px;
    line-height: 1.25;
    font-weight: 600;

    text-transform: uppercase;
}

#preguntas-tv .gstvfaq-status-label::before {
    content: "";

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--faq-violet);

    box-shadow:
        0 0 7px rgba(139, 92, 246, 0.52);
}

#preguntas-tv .gstvfaq-status p {
    margin: 0;

    color: #a7bcc9;

    font-size: 11px;
    line-height: 1.62;
}


/* =========================================================
   PRINCIPIO
   ========================================================= */

#preguntas-tv .gstvfaq-core {
    position: relative;

    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 17px;

    align-items: center;

    margin-bottom: 18px;
    padding:
        18px;

    overflow: hidden;

    border:
        1px solid rgba(32, 213, 243, 0.14);

    border-radius: 15px;

    background:
        linear-gradient(
            135deg,
            rgba(32, 213, 243, 0.045),
            rgba(139, 92, 246, 0.018)
        );
}

#preguntas-tv .gstvfaq-core::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 118px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--faq-cyan),
            transparent
        );
}

#preguntas-tv .gstvfaq-core-icon {
    display: grid;
    place-items: center;

    width: 64px;
    height: 64px;

    flex: 0 0 64px;

    border:
        1px solid rgba(32, 213, 243, 0.20);

    border-radius: 14px;

    background:
        rgba(32, 213, 243, 0.040);

    color: #9eeeff;

    font-size: 15px;
    line-height: 1;
    font-weight: 700;
}

#preguntas-tv .gstvfaq-core-copy {
    min-width: 0;
}

#preguntas-tv .gstvfaq-core-copy strong {
    display: block;

    margin-bottom: 5px;

    color: #e2f8ff;

    font-size: 14px;
    line-height: 1.42;
    font-weight: 600;
}

#preguntas-tv .gstvfaq-core-copy span {
    display: block;

    color: #829aa9;

    font-size: 10px;
    line-height: 1.64;
}

#preguntas-tv .gstvfaq-core-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        7px 9px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #96edbb;

    font-size: 9px;
    line-height: 1.3;
    font-weight: 600;
}

#preguntas-tv .gstvfaq-core-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--faq-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   FAQ GRID
   ========================================================= */

#preguntas-tv .gstvfaq-layout {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1fr);

    gap: 12px;
}

#preguntas-tv .gstvfaq-column {
    display: grid;

    align-content: start;

    gap: 10px;

    min-width: 0;
}


/* =========================================================
   FAQ ITEM
   ========================================================= */

#preguntas-tv .gstvfaq-item {
    --item-color: #20d5f3;

    position: relative;

    min-width: 0;

    margin: 0;

    overflow: hidden;

    border:
        1px solid rgba(92, 208, 255, 0.09);

    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.91),
            rgba(4, 12, 22, 0.97)
        );

    transition:
        border-color 0.20s ease,
        background 0.20s ease;
}

#preguntas-tv .gstvfaq-item:nth-child(2n) {
    --item-color: #3286ff;
}

#preguntas-tv .gstvfaq-column:nth-child(2)
.gstvfaq-item:nth-child(odd) {
    --item-color: #8b5cf6;
}

#preguntas-tv .gstvfaq-column:nth-child(2)
.gstvfaq-item:nth-child(even) {
    --item-color: #43e58b;
}

#preguntas-tv .gstvfaq-item::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 88px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--item-color),
            transparent
        );
}

#preguntas-tv .gstvfaq-item[open] {
    border-color:
        color-mix(
            in srgb,
            var(--item-color) 22%,
            transparent
        );

    background:
        linear-gradient(
            145deg,
            rgba(9, 25, 43, 0.96),
            rgba(4, 12, 22, 0.99)
        );
}


/* =========================================================
   SUMMARY
   ========================================================= */

#preguntas-tv .gstvfaq-question {
    position: relative;

    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 12px;

    align-items: center;

    width: 100%;

    padding:
        17px 17px;

    cursor: pointer;

    list-style: none;

    outline: none;
}

#preguntas-tv .gstvfaq-question::-webkit-details-marker {
    display: none;
}

#preguntas-tv .gstvfaq-number {
    display: grid;
    place-items: center;

    width: 28px;
    height: 28px;

    flex: 0 0 28px;

    border:
        1px solid
        color-mix(
            in srgb,
            var(--item-color) 22%,
            transparent
        );

    border-radius: 8px;

    color: var(--item-color);

    font-size: 8px;
    line-height: 1;
    font-weight: 700;
}

#preguntas-tv .gstvfaq-question-text {
    min-width: 0;

    color: #dcebf4;

    font-size: 11px;
    line-height: 1.48;
    font-weight: 600;
}

#preguntas-tv .gstvfaq-toggle {
    position: relative;

    width: 24px;
    height: 24px;

    flex: 0 0 24px;

    border:
        1px solid
        color-mix(
            in srgb,
            var(--item-color) 18%,
            transparent
        );

    border-radius: 7px;

    background:
        color-mix(
            in srgb,
            var(--item-color) 3%,
            transparent
        );
}

#preguntas-tv .gstvfaq-toggle::before,
#preguntas-tv .gstvfaq-toggle::after {
    content: "";

    position: absolute;

    left: 50%;
    top: 50%;

    width: 9px;
    height: 1px;

    transform:
        translate(-50%, -50%);

    background: var(--item-color);

    transition:
        transform 0.20s ease,
        opacity 0.20s ease;
}

#preguntas-tv .gstvfaq-toggle::after {
    transform:
        translate(-50%, -50%)
        rotate(90deg);
}

#preguntas-tv .gstvfaq-item[open]
.gstvfaq-toggle::after {
    opacity: 0;

    transform:
        translate(-50%, -50%)
        rotate(0deg);
}


/* =========================================================
   ANSWER
   ========================================================= */

#preguntas-tv .gstvfaq-answer {
    padding:
        0 17px 18px 57px;

    color: #7d95a5;

    font-size: 10px;
    line-height: 1.70;
}

#preguntas-tv .gstvfaq-answer p {
    margin: 0;
}

#preguntas-tv .gstvfaq-answer strong {
    color: #d5e5ed;
    font-weight: 600;
}

#preguntas-tv .gstvfaq-answer .gstvfaq-note {
    display: block;

    margin-top: 9px;
    padding:
        9px 10px;

    border:
        1px solid
        color-mix(
            in srgb,
            var(--item-color) 12%,
            transparent
        );

    border-radius: 8px;

    background:
        color-mix(
            in srgb,
            var(--item-color) 2%,
            transparent
        );

    color: #8298a7;

    font-size: 9px;
    line-height: 1.58;
}


/* =========================================================
   QUICK MATRIX
   ========================================================= */

#preguntas-tv .gstvfaq-matrix {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 10px;

    margin-top: 18px;
}

#preguntas-tv .gstvfaq-matrix-card {
    --matrix-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        17px 15px;

    overflow: hidden;

    border-radius: 13px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.89),
            rgba(4, 12, 22, 0.97)
        );
}

#preguntas-tv .gstvfaq-matrix-card:nth-child(1) {
    --matrix-color: #20d5f3;

    border:
        1px solid rgba(32, 213, 243, 0.12);
}

#preguntas-tv .gstvfaq-matrix-card:nth-child(2) {
    --matrix-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.12);
}

#preguntas-tv .gstvfaq-matrix-card:nth-child(3) {
    --matrix-color: #43e58b;

    border:
        1px solid rgba(67, 229, 139, 0.12);
}

#preguntas-tv .gstvfaq-matrix-card:nth-child(4) {
    --matrix-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.12);
}

#preguntas-tv .gstvfaq-matrix-card::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 64px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--matrix-color),
            transparent
        );
}

#preguntas-tv .gstvfaq-matrix-code {
    display: block;

    margin-bottom: 7px;

    color: var(--matrix-color);

    font-size: 8px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#preguntas-tv .gstvfaq-matrix-title {
    display: block;

    margin-bottom: 5px;

    color: #dcebf4;

    font-size: 10px;
    line-height: 1.45;
    font-weight: 600;
}

#preguntas-tv .gstvfaq-matrix-copy {
    display: block;

    color: #71899a;

    font-size: 9px;
    line-height: 1.58;
}


/* =========================================================
   HUD / TERMINAL
   ========================================================= */

#preguntas-tv .gstvfaq-console {
    position: relative;

    margin-top: 18px;
    padding:
        22px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.16);

    border-radius: 19px;

    background:
        radial-gradient(
            circle at 82% 48%,
            rgba(139, 92, 246, 0.055),
            transparent 30%
        ),
        linear-gradient(
            145deg,
            rgba(9, 19, 36, 0.94),
            rgba(4, 11, 21, 0.98)
        );
}

#preguntas-tv .gstvfaq-console::before {
    content: "";

    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: 0.24;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.030) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.030) 1px,
            transparent 1px
        );

    background-size: 27px 27px;
}

#preguntas-tv .gstvfaq-console-head {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    margin-bottom: 16px;
}

#preguntas-tv .gstvfaq-console-code {
    color: #c5b9ff;

    font-size: 10px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#preguntas-tv .gstvfaq-console-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        5px 8px;

    border:
        1px solid rgba(67, 229, 139, 0.14);

    border-radius: 999px;

    color: #9beabd;

    font-size: 8px;
    line-height: 1.2;
    font-weight: 600;
}

#preguntas-tv .gstvfaq-console-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--faq-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   CONSOLE ROUTE
   ========================================================= */

#preguntas-tv .gstvfaq-console-route {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 7px;
}

#preguntas-tv .gstvfaq-console-step {
    --console-color: #20d5f3;

    min-width: 0;

    padding:
        12px 9px;

    border:
        1px solid
        color-mix(
            in srgb,
            var(--console-color) 12%,
            transparent
        );

    border-radius: 9px;

    background:
        rgba(5, 17, 30, 0.67);

    text-align: center;
}

#preguntas-tv .gstvfaq-console-step:nth-child(2) {
    --console-color: #3286ff;
}

#preguntas-tv .gstvfaq-console-step:nth-child(3) {
    --console-color: #8b5cf6;
}

#preguntas-tv .gstvfaq-console-step:nth-child(4) {
    --console-color: #ffc857;
}

#preguntas-tv .gstvfaq-console-step:nth-child(5) {
    --console-color: #43e58b;
}

#preguntas-tv .gstvfaq-console-step strong {
    display: block;

    margin-bottom: 4px;

    color: var(--console-color);

    font-size: 8px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#preguntas-tv .gstvfaq-console-step span {
    display: block;

    color: #738b9b;

    font-size: 8px;
    line-height: 1.45;
}


/* =========================================================
   FINAL NOTE
   ========================================================= */

#preguntas-tv .gstvfaq-final {
    display: grid;

    grid-template-columns:
        auto minmax(0, 1fr) auto;

    gap: 12px;

    align-items: center;

    margin-top: 18px;
    padding:
        16px;

    border:
        1px solid rgba(255, 200, 87, 0.12);

    border-radius: 13px;

    background:
        linear-gradient(
            135deg,
            rgba(255, 200, 87, 0.023),
            rgba(32, 213, 243, 0.012)
        );
}

#preguntas-tv .gstvfaq-final-icon {
    display: grid;
    place-items: center;

    width: 32px;
    height: 32px;

    flex: 0 0 32px;

    border:
        1px solid rgba(255, 200, 87, 0.18);

    border-radius: 9px;

    color: #f2d989;

    font-size: 12px;
    font-weight: 700;
}

#preguntas-tv .gstvfaq-final-copy {
    color: #8d856d;

    font-size: 9px;
    line-height: 1.60;
}

#preguntas-tv .gstvfaq-final-copy strong {
    color: #e9ddb5;
    font-weight: 600;
}

#preguntas-tv .gstvfaq-final-state {
    flex-shrink: 0;

    color: #b9a972;

    font-size: 8px;
    line-height: 1.35;
    font-weight: 600;

    text-transform: uppercase;
}


/* =========================================================
   FOOTER
   ========================================================= */

#preguntas-tv .gstvfaq-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 18px;

    margin-top: 21px;
    padding: 0 3px;

    color: #60788c;

    font-size: 9px;
    line-height: 1.45;
    font-weight: 500;

    text-transform: uppercase;
}

#preguntas-tv .gstvfaq-footer-status {
    display: flex;
    align-items: center;

    gap: 7px;

    color: #7791a5;
}

#preguntas-tv .gstvfaq-footer-status {
    display: flex;
    align-items: center;

    gap: 7px;

    color: #7791a5;
}

#preguntas-tv .gstvfaq-footer-status::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--faq-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.45);
}


/* =========================================================
   FOCUS
   ========================================================= */

#preguntas-tv .gstvfaq-question:focus-visible {
    box-shadow:
        inset 0 0 0 1px
        rgba(32, 213, 243, 0.34);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    #preguntas-tv .gstvfaq-shell {
        width:
            min(
                100% - 40px,
                920px
            );

        padding:
            76px 0 80px;
    }

    #preguntas-tv .gstvfaq-heading {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 20px;
    }

    #preguntas-tv .gstvfaq-status {
        max-width: 650px;
    }

    #preguntas-tv .gstvfaq-layout {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(0, 1fr);
    }

    #preguntas-tv .gstvfaq-matrix {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #preguntas-tv .gstvfaq-console-route {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #preguntas-tv {
        overflow: hidden;
    }

    #preguntas-tv .gstvfaq-grid {
        opacity: 0.17;

        background-size: 32px 32px;
    }

    #preguntas-tv .gstvfaq-orbit,
    #preguntas-tv .gstvfaq-scan {
        display: none;
    }

    #preguntas-tv .gstvfaq-shell {
        width:
            calc(100% - 30px);

        max-width: 100%;

        padding:
            61px 0 65px;
    }

    #preguntas-tv .gstvfaq-heading {
        display: block;

        margin-bottom: 28px;
    }

    #preguntas-tv .gstvfaq-status {
        margin-top: 20px;

        padding:
            15px 16px;
    }

    #preguntas-tv .gstvfaq-title {
        font-size:
            clamp(
                29px,
                9vw,
                38px
            );
    }

    #preguntas-tv .gstvfaq-intro {
        font-size: 14px;
        line-height: 1.7;
    }

    #preguntas-tv .gstvfaq-core {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 9px;

        padding:
            15px;
    }

    #preguntas-tv .gstvfaq-core-state {
        width: fit-content;
    }

    #preguntas-tv .gstvfaq-layout,
    #preguntas-tv .gstvfaq-matrix {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #preguntas-tv .gstvfaq-question {
        grid-template-columns:
            auto minmax(0, 1fr) auto;

        gap: 9px;

        padding:
            15px 13px;
    }

    #preguntas-tv .gstvfaq-question-text {
        font-size: 10px;
    }

    #preguntas-tv .gstvfaq-answer {
        padding:
            0 13px 16px 50px;

        font-size: 9.5px;
    }

    #preguntas-tv .gstvfaq-console {
        padding:
            18px 14px;

        border-radius: 16px;
    }

    #preguntas-tv .gstvfaq-console-head {
        flex-direction: column;
        align-items: flex-start;

        gap: 8px;
    }

    #preguntas-tv .gstvfaq-console-route {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #preguntas-tv .gstvfaq-final {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #preguntas-tv .gstvfaq-final-state {
        width: fit-content;
    }

    #preguntas-tv .gstvfaq-footer {
        flex-direction: column;
        align-items: flex-start;

        gap: 6px;
    }
}


/* =========================================================
   390 PX
   ========================================================= */

@media (max-width: 390px) {

    #preguntas-tv .gstvfaq-shell {
        width:
            calc(100% - 24px);
    }

    #preguntas-tv .gstvfaq-question {
        padding-left: 11px;
        padding-right: 11px;
    }

    #preguntas-tv .gstvfaq-number {
        width: 25px;
        height: 25px;

        font-size: 7px;
    }

    #preguntas-tv .gstvfaq-answer {
        padding-left: 45px;
        padding-right: 11px;
    }

    #preguntas-tv .gstvfaq-console {
        padding-left: 12px;
        padding-right: 12px;
    }

    #preguntas-tv .gstvfaq-console-route {
        grid-template-columns:
            minmax(0, 1fr);
    }
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    #preguntas-tv,
    #preguntas-tv *,
    #preguntas-tv *::before,
    #preguntas-tv *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition: none !important;
    }

    #preguntas-tv .gstvfaq-scan {
        display: none !important;
    }
}


/* ===== CTA Reparación TV ===== */
/* =========================================================
   GAMMERS STYLE
   REPARACIÓN DE TV — CTA FINAL
   ID INTERNO HTML: cta-tv
   ========================================================= */

#cta-tv {
    --cta-bg: #030811;
    --cta-bg-2: #06101b;

    --cta-cyan: #20d5f3;
    --cta-blue: #3286ff;
    --cta-violet: #8b5cf6;

    --cta-green: #43e58b;
    --cta-yellow: #ffc857;
    --cta-red: #ff637d;

    --cta-text: #edf8ff;
    --cta-muted: #91a8bb;
    --cta-muted-2: #687f92;

    position: relative;
    isolation: isolate;

    width: 100%;
    margin: 0;
    padding: 0;

    overflow: hidden;

    color: var(--cta-text);

    background:
        radial-gradient(
            circle at 14% 16%,
            rgba(32, 213, 243, 0.070),
            transparent 31%
        ),
        radial-gradient(
            circle at 86% 20%,
            rgba(139, 92, 246, 0.060),
            transparent 31%
        ),
        radial-gradient(
            circle at 50% 100%,
            rgba(67, 229, 139, 0.035),
            transparent 32%
        ),
        linear-gradient(
            180deg,
            #030811 0%,
            #06101b 54%,
            #030811 100%
        );

    font-family:
        "Poppins",
        Arial,
        sans-serif;

    scroll-margin-top: 90px;
    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}

#cta-tv *,
#cta-tv *::before,
#cta-tv *::after {
    box-sizing: border-box;

    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}


/* =========================================================
   GRID
   ========================================================= */

#cta-tv .gstvcta-grid {
    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: 0.25;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.040) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.040) 1px,
            transparent 1px
        );

    background-size: 46px 46px;

    mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 94%,
            transparent 100%
        );

    -webkit-mask-image:
        linear-gradient(
            to bottom,
            transparent 0%,
            #000 8%,
            #000 94%,
            transparent 100%
        );
}


/* =========================================================
   ORBITS
   ========================================================= */

#cta-tv .gstvcta-orbit {
    position: absolute;

    pointer-events: none;

    border-radius: 50%;
}

#cta-tv .gstvcta-orbit.one {
    left: -260px;
    top: 180px;

    width: 520px;
    height: 520px;

    border:
        1px solid rgba(32, 213, 243, 0.045);

    animation:
        gstvcta-spin
        58s linear infinite;
}

#cta-tv .gstvcta-orbit.two {
    right: -240px;
    bottom: -150px;

    width: 480px;
    height: 480px;

    border:
        1px dashed rgba(139, 92, 246, 0.045);

    animation:
        gstvcta-spin
        64s linear infinite reverse;
}

#cta-tv .gstvcta-orbit::before,
#cta-tv .gstvcta-orbit::after {
    content: "";

    position: absolute;

    border-radius: 50%;
}

#cta-tv .gstvcta-orbit::before {
    inset: 82px;

    border:
        1px dashed rgba(50, 134, 255, 0.045);
}

#cta-tv .gstvcta-orbit::after {
    inset: 165px;

    border:
        1px solid rgba(67, 229, 139, 0.035);
}

@keyframes gstvcta-spin {

    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
   SCAN
   ========================================================= */

#cta-tv .gstvcta-scan {
    position: absolute;
    inset: 0;

    pointer-events: none;

    overflow: hidden;
}

#cta-tv .gstvcta-scan::before {
    content: "";

    position: absolute;

    left: 0;
    right: 0;
    top: 0;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(32, 213, 243, 0.20),
            rgba(139, 92, 246, 0.14),
            rgba(67, 229, 139, 0.10),
            transparent
        );

    box-shadow:
        0 0 16px rgba(32, 213, 243, 0.07);

    animation:
        gstvcta-scan
        12s linear infinite;
}

@keyframes gstvcta-scan {

    0% {
        transform: translateY(0);
        opacity: 0;
    }

    8% {
        opacity: 0.35;
    }

    92% {
        opacity: 0.14;
    }

    100% {
        transform: translateY(2600px);
        opacity: 0;
    }
}


/* =========================================================
   SHELL
   ========================================================= */

#cta-tv .gstvcta-shell {
    position: relative;
    z-index: 2;

    width:
        min(
            1180px,
            calc(100% - 48px)
        );

    margin: 0 auto;

    padding:
        94px 0 98px;
}


/* =========================================================
   MAIN PANEL
   ========================================================= */

#cta-tv .gstvcta-main {
    position: relative;

    display: grid;

    grid-template-columns:
        minmax(0, 1.05fr)
        minmax(390px, 0.95fr);

    gap: 26px;

    padding:
        30px;

    overflow: hidden;

    border:
        1px solid rgba(32, 213, 243, 0.14);

    border-radius: 24px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 23, 40, 0.94),
            rgba(4, 12, 22, 0.98)
        );

    box-shadow:
        0 24px 90px rgba(0, 0, 0, 0.22);
}

#cta-tv .gstvcta-main::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 190px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--cta-cyan),
            var(--cta-blue),
            transparent
        );
}

#cta-tv .gstvcta-main::after {
    content: "";

    position: absolute;

    right: -120px;
    top: -120px;

    width: 300px;
    height: 300px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(139, 92, 246, 0.065),
            transparent 67%
        );

    pointer-events: none;
}


/* =========================================================
   COPY
   ========================================================= */

#cta-tv .gstvcta-copy {
    position: relative;
    z-index: 3;

    min-width: 0;
}

#cta-tv .gstvcta-kicker {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    margin-bottom: 15px;
    padding:
        7px 11px;

    border:
        1px solid rgba(32, 213, 243, 0.18);

    border-radius: 999px;

    background:
        rgba(32, 213, 243, 0.035);

    color: #9eeeff;

    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;

    letter-spacing: 0.10em;
    text-transform: uppercase;
}

#cta-tv .gstvcta-kicker::before {
    content: "";

    width: 6px;
    height: 6px;

    flex: 0 0 6px;

    border-radius: 50%;

    background: var(--cta-cyan);

    box-shadow:
        0 0 8px rgba(32, 213, 243, 0.70);
}

#cta-tv .gstvcta-title {
    max-width: 720px;

    margin: 0;

    color: #f4fbff;

    font-size:
        clamp(
            32px,
            4.3vw,
            53px
        );

    line-height: 1.06;
    font-weight: 700;

    letter-spacing: -0.038em;
}

#cta-tv .gstvcta-title span {
    color: var(--cta-cyan);
}

#cta-tv .gstvcta-lead {
    max-width: 720px;

    margin:
        18px 0 0;

    color: #9aafbe;

    font-size: 15px;
    line-height: 1.76;
}

#cta-tv .gstvcta-principle {
    display: flex;
    align-items: flex-start;

    gap: 10px;

    max-width: 720px;

    margin-top: 18px;
    padding:
        14px 15px;

    border:
        1px solid rgba(67, 229, 139, 0.12);

    border-radius: 12px;

    background:
        rgba(67, 229, 139, 0.024);

    color: #819b8c;

    font-size: 10px;
    line-height: 1.64;
}

#cta-tv .gstvcta-principle::before {
    content: "";

    width: 7px;
    height: 7px;

    flex: 0 0 7px;

    margin-top: 5px;

    border-radius: 50%;

    background: var(--cta-green);

    box-shadow:
        0 0 8px rgba(67, 229, 139, 0.50);
}

#cta-tv .gstvcta-principle strong {
    color: #caebd7;
    font-weight: 600;
}


/* =========================================================
   SCOPE
   ========================================================= */

#cta-tv .gstvcta-scope {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 8px;

    margin-top: 18px;
}

#cta-tv .gstvcta-scope-card {
    position: relative;

    min-width: 0;

    padding:
        13px 14px;

    border-radius: 11px;

    background:
        rgba(5, 17, 30, 0.65);
}

#cta-tv .gstvcta-scope-card.support {
    border:
        1px solid rgba(67, 229, 139, 0.13);
}

#cta-tv .gstvcta-scope-card.excluded {
    border:
        1px solid rgba(255, 200, 87, 0.12);
}

#cta-tv .gstvcta-scope-code {
    display: block;

    margin-bottom: 5px;

    font-size: 8px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#cta-tv .gstvcta-scope-card.support
.gstvcta-scope-code {
    color: #8be5b0;
}

#cta-tv .gstvcta-scope-card.excluded
.gstvcta-scope-code {
    color: #dbc277;
}

#cta-tv .gstvcta-scope-copy {
    color: #748c9c;

    font-size: 9px;
    line-height: 1.55;
}

#cta-tv .gstvcta-scope-copy strong {
    color: #d5e4ec;
    font-weight: 600;
}


/* =========================================================
   CTA BUTTONS
   ========================================================= */

#cta-tv .gstvcta-actions {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 9px;

    margin-top: 22px;
}

#cta-tv .gstvcta-button {
    --button-color: #20d5f3;

    position: relative;

    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;

    min-width: 0;
    min-height: 76px;

    padding:
        13px 14px;

    overflow: hidden;

    border:
        1px solid
        color-mix(
            in srgb,
            var(--button-color) 20%,
            transparent
        );

    border-radius: 12px;

    background:
        linear-gradient(
            145deg,
            color-mix(
                in srgb,
                var(--button-color) 5%,
                rgba(5, 17, 30, 0.88)
            ),
            rgba(4, 12, 22, 0.95)
        );

    color: inherit;

    text-decoration: none;

    transition:
        transform 0.20s ease,
        border-color 0.20s ease,
        background 0.20s ease;
}

#cta-tv .gstvcta-button.whatsapp {
    --button-color: #43e58b;
}

#cta-tv .gstvcta-button.phone {
    --button-color: #20d5f3;
}

#cta-tv .gstvcta-button.maps {
    --button-color: #8b5cf6;
}

#cta-tv .gstvcta-button::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 76px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--button-color),
            transparent
        );
}

#cta-tv .gstvcta-button:hover {
    transform:
        translateY(-2px);

    border-color:
        color-mix(
            in srgb,
            var(--button-color) 38%,
            transparent
        );
}

#cta-tv .gstvcta-button-label {
    display: block;

    margin-bottom: 4px;

    color: var(--button-color);

    font-size: 9px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#cta-tv .gstvcta-button-value {
    display: block;

    color: #e0edf4;

    font-size: 11px;
    line-height: 1.42;
    font-weight: 600;
}

#cta-tv .gstvcta-button-note {
    display: block;

    margin-top: 3px;

    color: #71899a;

    font-size: 8px;
    line-height: 1.4;
}


/* =========================================================
   HUD
   ========================================================= */

#cta-tv .gstvcta-hud {
    position: relative;
    z-index: 3;

    min-width: 0;

    padding:
        22px;

    overflow: hidden;

    border:
        1px solid rgba(139, 92, 246, 0.16);

    border-radius: 19px;

    background:
        radial-gradient(
            circle at 50% 42%,
            rgba(32, 213, 243, 0.065),
            transparent 31%
        ),
        radial-gradient(
            circle at 50% 42%,
            rgba(139, 92, 246, 0.050),
            transparent 40%
        ),
        linear-gradient(
            145deg,
            rgba(16, 17, 40, 0.78),
            rgba(4, 12, 22, 0.97)
        );
}

#cta-tv .gstvcta-hud::before {
    content: "";

    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: 0.25;

    background-image:
        linear-gradient(
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(32, 213, 243, 0.035) 1px,
            transparent 1px
        );

    background-size: 27px 27px;
}

#cta-tv .gstvcta-hud-head {
    position: relative;
    z-index: 4;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 10px;
}

#cta-tv .gstvcta-hud-code {
    color: #c5b9ff;

    font-size: 10px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#cta-tv .gstvcta-hud-state {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    flex-shrink: 0;

    padding:
        5px 8px;

    border:
        1px solid rgba(67, 229, 139, 0.15);

    border-radius: 999px;

    background:
        rgba(67, 229, 139, 0.030);

    color: #97eebb;

    font-size: 8px;
    line-height: 1.2;
    font-weight: 600;
}

#cta-tv .gstvcta-hud-state::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--cta-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.50);
}


/* =========================================================
   HUD SCREEN
   ========================================================= */

#cta-tv .gstvcta-hud-screen {
    position: relative;
    z-index: 2;

    min-height: 420px;

    margin-top: 16px;

    overflow: hidden;

    border:
        1px solid rgba(92, 208, 255, 0.075);

    border-radius: 14px;

    background:
        rgba(3, 12, 22, 0.72);
}


/* =========================================================
   HUD CORE
   ========================================================= */

#cta-tv .gstvcta-hud-core {
    position: absolute;

    z-index: 8;

    left: 50%;
    top: 42%;

    width: 168px;
    height: 168px;

    transform:
        translate(-50%, -50%);

    display: grid;
    place-items: center;

    padding:
        20px;

    border:
        1px solid rgba(32, 213, 243, 0.21);

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(32, 213, 243, 0.11),
            rgba(139, 92, 246, 0.045) 48%,
            rgba(5, 16, 29, 0.97) 77%
        );

    box-shadow:
        0 0 46px rgba(32, 213, 243, 0.08);

    animation:
        gstvcta-pulse
        4.3s ease-in-out infinite;
}

#cta-tv .gstvcta-hud-core div {
    text-align: center;
}

#cta-tv .gstvcta-hud-core strong {
    display: block;

    color: #e7f9ff;

    font-size: 10px;
    line-height: 1.38;
    font-weight: 700;
}

#cta-tv .gstvcta-hud-core span {
    display: block;

    margin-top: 7px;

    color: #778d9e;

    font-size: 7px;
    line-height: 1.4;
    font-weight: 600;

    text-transform: uppercase;
}

@keyframes gstvcta-pulse {

    0%,
    100% {
        box-shadow:
            0 0 28px rgba(32, 213, 243, 0.04);
    }

    50% {
        box-shadow:
            0 0 55px rgba(32, 213, 243, 0.12);
    }
}


/* =========================================================
   HUD RINGS
   ========================================================= */

#cta-tv .gstvcta-ring {
    position: absolute;

    left: 50%;
    top: 42%;

    transform:
        translate(-50%, -50%);

    border-radius: 50%;

    pointer-events: none;
}

#cta-tv .gstvcta-ring.one {
    width: 230px;
    height: 230px;

    border:
        1px solid rgba(32, 213, 243, 0.07);

    animation:
        gstvcta-ring
        22s linear infinite;
}

#cta-tv .gstvcta-ring.two {
    width: 300px;
    height: 300px;

    border:
        1px dashed rgba(139, 92, 246, 0.07);

    animation:
        gstvcta-ring
        32s linear infinite reverse;
}

@keyframes gstvcta-ring {

    from {
        transform:
            translate(-50%, -50%)
            rotate(0deg);
    }

    to {
        transform:
            translate(-50%, -50%)
            rotate(360deg);
    }
}


/* =========================================================
   HUD NODES
   ========================================================= */

#cta-tv .gstvcta-node {
    position: absolute;

    z-index: 9;

    width: 118px;

    padding:
        9px;

    border-radius: 9px;

    background:
        rgba(5, 16, 29, 0.94);
}

#cta-tv .gstvcta-node.symptom {
    left: 4%;
    top: 13%;

    border:
        1px solid rgba(32, 213, 243, 0.16);
}

#cta-tv .gstvcta-node.analysis {
    right: 4%;
    top: 13%;

    border:
        1px solid rgba(50, 134, 255, 0.16);
}

#cta-tv .gstvcta-node.diagnosis {
    left: 4%;
    bottom: 24%;

    border:
        1px solid rgba(139, 92, 246, 0.16);
}

#cta-tv .gstvcta-node.viability {
    right: 4%;
    bottom: 24%;

    border:
        1px solid rgba(67, 229, 139, 0.16);
}

#cta-tv .gstvcta-node-code {
    display: block;

    margin-bottom: 4px;

    color: var(--node-color);

    font-size: 7px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#cta-tv .gstvcta-node.symptom {
    --node-color: #20d5f3;
}

#cta-tv .gstvcta-node.analysis {
    --node-color: #3286ff;
}

#cta-tv .gstvcta-node.diagnosis {
    --node-color: #8b5cf6;
}

#cta-tv .gstvcta-node.viability {
    --node-color: #43e58b;
}

#cta-tv .gstvcta-node strong {
    display: block;

    color: #d8e8f0;

    font-size: 9px;
    line-height: 1.35;
    font-weight: 600;
}

#cta-tv .gstvcta-node span:last-child {
    display: block;

    margin-top: 4px;

    color: #71899a;

    font-size: 7px;
    line-height: 1.42;
}


/* =========================================================
   HUD LINES
   ========================================================= */

#cta-tv .gstvcta-line {
    position: absolute;

    z-index: 4;

    height: 1px;

    transform-origin: left center;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(32, 213, 243, 0.28),
            rgba(139, 92, 246, 0.19),
            transparent
        );

    animation:
        gstvcta-line
        3s ease-in-out infinite;
}

#cta-tv .gstvcta-line.l1 {
    left: 20%;
    top: 28%;

    width: 35%;

    transform:
        rotate(21deg);
}

#cta-tv .gstvcta-line.l2 {
    left: 50%;
    top: 42%;

    width: 34%;

    transform:
        rotate(-21deg);
}

#cta-tv .gstvcta-line.l3 {
    left: 20%;
    bottom: 33%;

    width: 35%;

    transform:
        rotate(-20deg);
}

#cta-tv .gstvcta-line.l4 {
    left: 49%;
    bottom: 33%;

    width: 35%;

    transform:
        rotate(20deg);
}

@keyframes gstvcta-line {

    0%,
    100% {
        opacity: 0.13;
    }

    50% {
        opacity: 0.70;
    }
}


/* =========================================================
   HUD ROUTE
   ========================================================= */

#cta-tv .gstvcta-hud-route {
    position: absolute;

    z-index: 10;

    left: 12px;
    right: 12px;
    bottom: 12px;

    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 4px;
}

#cta-tv .gstvcta-hud-step {
    min-width: 0;

    padding:
        7px 4px;

    border:
        1px solid rgba(92, 208, 255, 0.07);

    border-radius: 7px;

    background:
        rgba(5, 17, 30, 0.85);

    color: #728b9b;

    text-align: center;

    font-size: 7px;
    line-height: 1.35;
    font-weight: 600;
}


/* =========================================================
   TRUST CARDS
   ========================================================= */

#cta-tv .gstvcta-trust {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 10px;

    margin-top: 18px;
}

#cta-tv .gstvcta-trust-card {
    --trust-color: #20d5f3;

    position: relative;

    min-width: 0;

    padding:
        18px 16px;

    overflow: hidden;

    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            rgba(8, 22, 39, 0.89),
            rgba(4, 12, 22, 0.97)
        );
}

#cta-tv .gstvcta-trust-card:nth-child(1) {
    --trust-color: #20d5f3;

    border:
        1px solid rgba(32, 213, 243, 0.12);
}

#cta-tv .gstvcta-trust-card:nth-child(2) {
    --trust-color: #ffc857;

    border:
        1px solid rgba(255, 200, 87, 0.12);
}

#cta-tv .gstvcta-trust-card:nth-child(3) {
    --trust-color: #8b5cf6;

    border:
        1px solid rgba(139, 92, 246, 0.12);
}

#cta-tv .gstvcta-trust-card:nth-child(4) {
    --trust-color: #43e58b;

    border:
        1px solid rgba(67, 229, 139, 0.12);
}

#cta-tv .gstvcta-trust-card::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;

    width: 70px;
    height: 2px;

    background:
        linear-gradient(
            90deg,
            var(--trust-color),
            transparent
        );
}

#cta-tv .gstvcta-trust-code {
    display: block;

    margin-bottom: 7px;

    color: var(--trust-color);

    font-size: 8px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#cta-tv .gstvcta-trust-title {
    display: block;

    margin-bottom: 5px;

    color: #dcebf4;

    font-size: 11px;
    line-height: 1.45;
    font-weight: 600;
}

#cta-tv .gstvcta-trust-copy {
    display: block;

    color: #71899a;

    font-size: 9px;
    line-height: 1.58;
}


/* =========================================================
   LOCATION
   ========================================================= */

#cta-tv .gstvcta-location {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        auto;

    gap: 16px;

    align-items: center;

    margin-top: 18px;
    padding:
        19px 20px;

    border:
        1px solid rgba(50, 134, 255, 0.12);

    border-radius: 15px;

    background:
        linear-gradient(
            135deg,
            rgba(50, 134, 255, 0.030),
            rgba(139, 92, 246, 0.016)
        );
}

#cta-tv .gstvcta-location-main {
    min-width: 0;
}

#cta-tv .gstvcta-location-code {
    display: block;

    margin-bottom: 6px;

    color: #9fc4ff;

    font-size: 8px;
    line-height: 1.3;
    font-weight: 700;

    text-transform: uppercase;
}

#cta-tv .gstvcta-location-title {
    display: block;

    margin-bottom: 5px;

    color: #e0edf4;

    font-size: 12px;
    line-height: 1.45;
    font-weight: 600;
}

#cta-tv .gstvcta-location-copy {
    color: #748c9c;

    font-size: 9px;
    line-height: 1.62;
}

#cta-tv .gstvcta-hours {
    flex-shrink: 0;

    padding:
        10px 12px;

    border:
        1px solid rgba(67, 229, 139, 0.13);

    border-radius: 10px;

    background:
        rgba(67, 229, 139, 0.025);

    color: #9beabd;

    font-size: 9px;
    line-height: 1.50;
    font-weight: 600;

    text-align: right;
}


/* =========================================================
   CLOSING
   ========================================================= */

#cta-tv .gstvcta-closing {
    margin-top: 18px;

    padding:
        20px;

    border:
        1px solid rgba(255, 200, 87, 0.12);

    border-radius: 15px;

    background:
        linear-gradient(
            135deg,
            rgba(255, 200, 87, 0.024),
            rgba(32, 213, 243, 0.012)
        );

    text-align: center;
}

#cta-tv .gstvcta-closing strong {
    display: block;

    color: #eadfb8;

    font-size: 15px;
    line-height: 1.45;
    font-weight: 600;
}

#cta-tv .gstvcta-closing span {
    display: block;

    margin-top: 5px;

    color: #817b6a;

    font-size: 9px;
    line-height: 1.55;
}


/* =========================================================
   FOOTER
   ========================================================= */

#cta-tv .gstvcta-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 18px;

    margin-top: 21px;
    padding: 0 3px;

    color: #60788c;

    font-size: 9px;
    line-height: 1.45;
    font-weight: 500;

    text-transform: uppercase;
}

#cta-tv .gstvcta-footer-status {
    display: flex;
    align-items: center;

    gap: 7px;

    color: #7791a5;
}

#cta-tv .gstvcta-footer-status::before {
    content: "";

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background: var(--cta-green);

    box-shadow:
        0 0 7px rgba(67, 229, 139, 0.45);
}


#cta-tv .gstvcta-button.whatsapp .gs-global-wa-icon {
    position: absolute;
    top: 12px;
    right: 12px;

    margin: 0 !important;

    flex: 0 0 auto;
}


/* =========================================================
   FOCUS
   ========================================================= */

#cta-tv .gstvcta-button:focus-visible,
#cta-tv a:focus-visible {
    outline:
        2px solid rgba(32, 213, 243, 0.58);

    outline-offset: 3px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    #cta-tv .gstvcta-shell {
        width:
            min(
                100% - 40px,
                920px
            );

        padding:
            76px 0 80px;
    }

    #cta-tv .gstvcta-main {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 20px;

        padding:
            26px;
    }

    #cta-tv .gstvcta-hud {
        width: 100%;
        max-width: 740px;

        margin: 0 auto;
    }

    #cta-tv .gstvcta-trust {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #cta-tv {
        overflow: hidden;
    }

    #cta-tv .gstvcta-grid {
        opacity: 0.17;

        background-size: 32px 32px;
    }

    #cta-tv .gstvcta-orbit,
    #cta-tv .gstvcta-scan {
        display: none;
    }

    #cta-tv .gstvcta-shell {
        width:
            calc(100% - 30px);

        max-width: 100%;

        padding:
            61px 0 65px;
    }

    #cta-tv .gstvcta-main {
        padding:
            20px 15px;

        border-radius: 18px;
    }

    #cta-tv .gstvcta-title {
        font-size:
            clamp(
                29px,
                9vw,
                39px
            );
    }

    #cta-tv .gstvcta-lead {
        font-size: 14px;
        line-height: 1.70;
    }

    #cta-tv .gstvcta-scope {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #cta-tv .gstvcta-actions {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #cta-tv .gstvcta-button {
        min-height: 68px;
    }

    #cta-tv .gstvcta-hud {
        width: 100%;
        min-width: 0;

        padding:
            18px 14px;

        border-radius: 16px;
    }

    #cta-tv .gstvcta-hud-head {
        flex-direction: column;
        align-items: flex-start;

        gap: 8px;
    }

    #cta-tv .gstvcta-hud-screen {
        min-height: 350px;
    }

    #cta-tv .gstvcta-hud-core,
    #cta-tv .gstvcta-ring,
    #cta-tv .gstvcta-line {
        animation: none;
    }

    #cta-tv .gstvcta-hud-core {
        width: 110px;
        height: 110px;

        padding: 12px;
    }

    #cta-tv .gstvcta-hud-core strong {
        font-size: 6.8px;
    }

    #cta-tv .gstvcta-hud-core span {
        font-size: 5.5px;
    }

    #cta-tv .gstvcta-ring.one {
        width: 165px;
        height: 165px;
    }

    #cta-tv .gstvcta-ring.two {
        width: 218px;
        height: 218px;
    }

    #cta-tv .gstvcta-node {
        width: 98px;

        padding: 7px;
    }

    #cta-tv .gstvcta-node-code {
        font-size: 6px;
    }

    #cta-tv .gstvcta-node strong {
        font-size: 7px;
    }

    #cta-tv .gstvcta-node span:last-child {
        display: none;
    }

    #cta-tv .gstvcta-hud-route {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    #cta-tv .gstvcta-hud-step {
        text-align: left;

        font-size: 7.2px;
    }

    #cta-tv .gstvcta-trust {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 8px;
    }

    #cta-tv .gstvcta-location {
        grid-template-columns:
            minmax(0, 1fr);

        gap: 10px;

        padding:
            16px;
    }

    #cta-tv .gstvcta-hours {
        width: fit-content;

        text-align: left;
    }

    #cta-tv .gstvcta-footer {
        flex-direction: column;
        align-items: flex-start;

        gap: 6px;
    }
}



/* =========================================================
   MOBILE — CTA TV SIN SUPERPOSICIONES
   ========================================================= */

@media (max-width: 767px) {

    #cta-tv .gstvcta-hud-screen {
        min-height: 0;

        display: grid;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 8px;

        padding: 12px;
    }

    #cta-tv .gstvcta-ring,
    #cta-tv .gstvcta-line {
        display: none;
    }

    #cta-tv .gstvcta-node {
        position: relative;

        left: auto;
        right: auto;
        top: auto;
        bottom: auto;

        width: auto;
        min-width: 0;
        min-height: 108px;

        padding: 11px;
    }

    #cta-tv .gstvcta-node-code {
        font-size: 7.5px;
    }

    #cta-tv .gstvcta-node strong {
        font-size: 8.5px;
    }

    #cta-tv .gstvcta-node span:last-child {
        display: block;

        font-size: 7.5px;
    }

    #cta-tv .gstvcta-hud-core {
        position: relative;

        left: auto;
        top: auto;

        grid-column: 1 / -1;
        order: -1;

        width: 100%;
        height: auto;
        min-height: 96px;

        padding: 15px;

        transform: none;

        border-radius: 13px;

        animation: none;
    }

    #cta-tv .gstvcta-hud-core strong {
        font-size: 10px;
    }

    #cta-tv .gstvcta-hud-core span {
        font-size: 8px;
    }

    #cta-tv .gstvcta-hud-route {
        position: relative;

        left: auto;
        right: auto;
        bottom: auto;

        grid-column: 1 / -1;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 5px;

        margin-top: 2px;
    }

    #cta-tv .gstvcta-hud-step {
        padding: 8px;

        text-align: left;

        font-size: 8px;
    }
}


/* =========================================================
   390 PX
   ========================================================= */

@media (max-width: 390px) {

    #cta-tv .gstvcta-shell {
        width:
            calc(100% - 24px);
    }

    #cta-tv .gstvcta-main {
        padding-left: 12px;
        padding-right: 12px;
    }

    #cta-tv .gstvcta-hud {
        padding-left: 11px;
        padding-right: 11px;
    }

    #cta-tv .gstvcta-hud-screen {
        grid-template-columns:
            minmax(0, 1fr);
    }

    #cta-tv .gstvcta-hud-core,
    #cta-tv .gstvcta-hud-route {
        grid-column: 1;
    }

    #cta-tv .gstvcta-hud-route {
        grid-template-columns:
            minmax(0, 1fr);
    }
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    #cta-tv,
    #cta-tv *,
    #cta-tv *::before,
    #cta-tv *::after {
        scroll-behavior: auto !important;
        animation: none !important;
        transition: none !important;
    }

    #cta-tv .gstvcta-scan {
        display: none !important;
    }
}
