/* /Components/Screens/AnalysisScreen.razor.rz.scp.css */
/* Tela 02/03 — posições em px do palco, conforme os frames "Análise" do Figma. */
.lance-title[b-23kibexu5b] {
    position: absolute;
    left: 83px;
    top: 127px;
    margin: 0;
    max-width: 1380px;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 55px;
    line-height: 64px;
    color: #ffffff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.analysis-screen[b-23kibexu5b]  .progress-indicator {
    position: absolute;
    right: 82px;
    top: 149px;
}

.video-column[b-23kibexu5b] {
    position: absolute;
    left: 78px;
    top: 217px;
    display: flex;
    flex-direction: column;
    gap: 23.5px;
}

.decision-column[b-23kibexu5b] {
    position: absolute;
    left: 1310px;
    top: 217px;
}
/* /Components/Screens/DiagnosticScreen.razor.rz.scp.css */
.diagnostic-screen[b-1knhf1lxe1] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-m);
    padding: var(--space-xl);
}

h1[b-1knhf1lxe1] {
    display: flex;
    align-items: center;
    gap: var(--space-s);
    margin: 0;
    font-family: var(--font-display);
    font-size: var(--fs-title);
    color: var(--color-error);
}

p[b-1knhf1lxe1] {
    margin: 0;
    color: var(--color-text-muted);
}

ul[b-1knhf1lxe1] {
    flex: 1;
    width: 100%;
    margin: 0;
    padding: var(--space-m) var(--space-m) var(--space-m) var(--space-xl);
    overflow: auto;
    border-radius: var(--radius);
    background: var(--color-surface);
    font-family: Consolas, monospace;
    font-size: var(--fs-small);
    line-height: 1.5;
}
/* /Components/Screens/FinalResultScreen.razor.rz.scp.css */
/* Tela 04 — posições em px do palco, conforme os frames "06 · Resultado final" do Figma. */
.final-score[b-beee7tkfjf] {
    position: absolute;
    left: 274px;
    top: 211px;
}

.final-feedback[b-beee7tkfjf] {
    position: absolute;
    left: 990px;
    top: 242px;
    width: 800px;
    height: 560px;
}

.final-eyebrow[b-beee7tkfjf] {
    position: absolute;
    left: 0;
    top: 0;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 19px;
    line-height: 1.17;
    letter-spacing: 1.8px;
    color: var(--color-pink);
}

.score-message[b-beee7tkfjf] {
    position: absolute;
    left: 0;
    top: 49px;
    width: 790px;
    margin: 0;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 90px;
    line-height: 1.1;
    letter-spacing: -0.8px;
    color: var(--color-text);
    white-space: pre-line;
}

.score-detail[b-beee7tkfjf] {
    position: absolute;
    left: 0;
    top: 248px;
    width: 780px;
    margin: 0;
    font-family: var(--font-body);
    font-size: 28px;
    line-height: 1.31;
    color: var(--color-text-soft);
    white-space: pre-line;
}

.summary[b-beee7tkfjf] {
    position: absolute;
    left: 0;
    top: 352px;
    display: flex;
    gap: 13px;
}

.summary-item[b-beee7tkfjf] {
    --item-color: var(--color-success-mark);
    display: flex;
    align-items: center;
    gap: 13px;
    width: 89px;
    height: 48px;
    padding-left: 16px;
    border: 1px solid var(--color-chip-border);
    border-radius: 10px;
    background: var(--color-chip-bg);
    font-family: var(--font-display);
    font-weight: 400;
    font-size: 20px;
    line-height: 1.15;
    color: var(--color-text-soft);
}

.summary-item.is-wrong[b-beee7tkfjf] {
    --item-color: var(--color-error-mark);
}

.summary-item[b-beee7tkfjf]  .summary-icon {
    color: var(--item-color);
    font-size: 17.6px;
}

.final-feedback[b-beee7tkfjf]  .new-round-button,
.final-feedback[b-beee7tkfjf]  .claim-prize-button {
    position: absolute;
    left: 0;
    top: 434px;
    width: 520px;
}

.spin-count[b-beee7tkfjf] {
    position: absolute;
    left: 34px;
    top: 530px;
    width: 452px;
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 18.2px;
    text-align: center;
    color: var(--color-hint);
}

.competition-logos[b-beee7tkfjf] {
    position: absolute;
    left: 834px;
    top: 946px;
    width: 251px;
    height: 85.6px;
}
/* /Components/Screens/LanceResultScreen.razor.rz.scp.css */
/* Tela 03 — cartão 1713×815 (raio 40) em (104, 183); posições internas relativas ao cartão. */
.lance-result-screen[b-6dawj5k67x] {
    --result-color: var(--color-success);
    --result-soft: var(--color-success-soft);
    --result-icon-bg: rgba(116, 225, 177, 0.06);
    --result-chip-bg: rgba(116, 225, 177, 0.1);
}

.lance-result-screen.is-wrong[b-6dawj5k67x] {
    --result-color: var(--color-error);
    --result-soft: var(--color-error-soft);
    --result-icon-bg: rgba(255, 141, 147, 0.06);
    --result-chip-bg: rgba(255, 141, 147, 0.08);
}

.result-card[b-6dawj5k67x] {
    position: absolute;
    left: 104px;
    top: 183px;
    width: 1713px;
    height: 815px;
    border-radius: 40px;
    overflow: hidden;
}

.result-card[b-6dawj5k67x]  .result-photo {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Rectangle 2: véu escuro da esquerda para a direita sobre a foto */
.result-veil[b-6dawj5k67x] {
    position: absolute;
    inset: 0;
    background: linear-gradient(90.5deg, #051b28 44.1%, rgba(7, 7, 7, 0) 100%);
    opacity: 0.94;
}

.result-stamp[b-6dawj5k67x] {
    position: absolute;
    left: 84px;
    top: 36px;
    margin: 0;
    font-family: var(--font-body);
    font-weight: 700;
    font-size: 15.36px;
    letter-spacing: 1.8432px;
    color: var(--color-stamp);
}

.result-badge[b-6dawj5k67x] {
    animation: badge-in-b-6dawj5k67x 500ms cubic-bezier(0.2, 1.4, 0.4, 1) both;
}

.badge-icon[b-6dawj5k67x] {
    position: absolute;
    left: 79px;
    top: 110px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 57px;
    height: 57px;
    border: 1px solid var(--result-color);
    border-radius: 50%;
    background: var(--result-icon-bg);
    color: var(--result-color);
    font-size: 25px;
}

.is-wrong .badge-icon[b-6dawj5k67x] {
    font-size: 20px;
}

.badge-text[b-6dawj5k67x] {
    position: absolute;
    left: 84px;
    top: 180px;
    margin: 0;
    display: flex;
    flex-direction: column;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 122.88px;
    line-height: 129px;
    letter-spacing: -1.5974px;
    color: var(--color-text);
    white-space: nowrap;
}

.badge-word[b-6dawj5k67x] {
    color: var(--result-color);
}

.result-copy[b-6dawj5k67x] {
    position: absolute;
    left: 84px;
    top: 451.6px;
    width: 640px;
    margin: 0;
    font-family: var(--font-body);
    font-size: 23.04px;
    line-height: 28px;
    color: var(--color-text-soft);
}

.result-rule[b-6dawj5k67x] {
    position: absolute;
    left: 84px;
    top: 558px;
    width: 1567px;
    height: 1px;
    background: var(--color-divider);
}

.result-decisions[b-6dawj5k67x] {
    position: absolute;
    left: 84px;
    top: 610px;
    display: flex;
    align-items: flex-start;
    gap: 56px;
    max-width: 1080px;
}

.decision-col[b-6dawj5k67x] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 275px;
}

.decision-label[b-6dawj5k67x] {
    font-family: var(--font-ui);
    font-weight: 700;
    font-size: 14.976px;
    line-height: 24px;
    letter-spacing: 2.0966px;
    color: var(--color-text-label);
}

.decision-value[b-6dawj5k67x] {
    display: flex;
    align-items: center;
    gap: 12px;
    max-width: 560px;
    font-family: var(--font-ui);
    font-weight: 700;
    font-size: 53.76px;
    line-height: 54px;
    letter-spacing: -2.1504px;
    color: var(--color-text);
}

.result-chip[b-6dawj5k67x] {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    flex: none;
    height: 51px;
    padding: 0 22px 0 16px;
    border-radius: 5.76px;
    background: var(--result-chip-bg);
    font-family: var(--font-ui);
    font-weight: 700;
    font-size: 14.4px;
    letter-spacing: 0;
    color: var(--result-soft);
}

.is-wrong .result-chip[b-6dawj5k67x] {
    height: 48px;
}

.result-chip[b-6dawj5k67x]  .ui-icon {
    font-size: 17px;
}

.result-card[b-6dawj5k67x]  .next-button {
    --btn-bg: var(--result-color);
    --btn-color: var(--color-on-status);
    --btn-face-height: 94px;
    position: absolute;
    left: 1190px;
    top: 629.9px;
    width: 428px;
    min-height: 94px;
    font-family: var(--font-ui);
    font-size: 20.736px;
    letter-spacing: 0.9331px;
}

@keyframes badge-in-b-6dawj5k67x {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: none; }
}
/* /Components/Screens/PrizeResultScreen.razor.rz.scp.css */
/* Tela 08 — posições em px do palco, conforme o frame "08 · Brinde revelado" do Figma. */
.prize-halo[b-z2deqfpoz8] {
    position: absolute;
    left: 293px;
    top: 252px;
    width: 508px;
    height: 508px;
    border: 2px solid var(--color-pink);
    border-radius: 50%;
    background: var(--color-disc);
    animation: halo-in-b-z2deqfpoz8 600ms cubic-bezier(0.2, 1.3, 0.4, 1) both;
}

/* Ícone do brinde (mesmo desenho da roleta) em rosa TNT, na área de 207×194 do Figma. */
.prize-icon[b-z2deqfpoz8] {
    position: absolute;
    left: 156px;
    top: 155px;
    width: 207px;
    height: 194px;
    background: var(--color-pink);
    -webkit-mask: var(--icon) center / contain no-repeat;
    mask: var(--icon) center / contain no-repeat;
}

/* Confete "+" (16×3 e 3×16 com pontas arredondadas) */
.confetti[b-z2deqfpoz8] {
    position: absolute;
    width: 19px;
    height: 19px;
    transform: translate(-50%, -50%);
    animation: confetti-in-b-z2deqfpoz8 700ms ease-out both;
}

.confetti[b-z2deqfpoz8]::before,
.confetti[b-z2deqfpoz8]::after {
    content: "";
    position: absolute;
    border-radius: 2px;
    background: var(--color-pink);
}

.confetti[b-z2deqfpoz8]::before {
    left: 0;
    top: 8px;
    width: 19px;
    height: 3px;
}

.confetti[b-z2deqfpoz8]::after {
    left: 8px;
    top: 0;
    width: 3px;
    height: 19px;
}

.prize-eyebrow[b-z2deqfpoz8] {
    position: absolute;
    left: 990px;
    top: 258px;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 19px;
    line-height: 1.17;
    letter-spacing: 1.8px;
    color: var(--color-pink);
}

.prize-title[b-z2deqfpoz8] {
    position: absolute;
    left: 990px;
    top: 304px;
    margin: 0;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 87px;
    line-height: 1.1034;
    letter-spacing: -0.6px;
    color: var(--color-text);
}

.prize-name[b-z2deqfpoz8] {
    position: absolute;
    left: 990px;
    top: 500px;
    width: 750px;
    margin: 0;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 39px;
    line-height: 1.2308;
    color: var(--color-pink);
}

.prize-instruction[b-z2deqfpoz8] {
    position: absolute;
    left: 990px;
    top: 548px;
    width: 750px;
    margin: 0;
    font-family: var(--font-body);
    font-size: 29px;
    line-height: 1.493;
    color: var(--color-text-soft);
}

.prize-result-screen[b-z2deqfpoz8]  .finish-button {
    position: absolute;
    left: 990px;
    top: 654px;
    width: 580px;
    color: #f3fbff;
}

.competition-logos[b-z2deqfpoz8] {
    position: absolute;
    left: 834px;
    top: 946px;
    width: 251px;
    height: 85.6px;
}

@keyframes halo-in-b-z2deqfpoz8 {
    from { opacity: 0; transform: scale(0.85); }
    to { opacity: 1; transform: none; }
}

@keyframes confetti-in-b-z2deqfpoz8 {
    from { opacity: 0; transform: translate(-50%, -50%) scale(0.2) rotate(-45deg); }
    to { opacity: 1; transform: translate(-50%, -50%); }
}
/* /Components/Screens/PrizeWheelScreen.razor.rz.scp.css */
/* Tela 07 — posições em px do palco, conforme o frame "07 · Roleta de brindes" do Figma.
   Roleta: aro externo de 722px em (181, 174); centro em (542, 535). */
.wheel[b-m782wak9zr] {
    position: absolute;
    left: 181px;
    top: 174px;
    width: 722px;
    height: 722px;
}

.wheel-rim[b-m782wak9zr] {
    position: absolute;
    inset: 0;
    width: 722px;
    height: 722px;
    overflow: visible;
}

.wheel-rim > circle:first-child[b-m782wak9zr] {
    fill: #102d3a;
    stroke: #49626d;
    stroke-width: 2;
}

.rim-dot[b-m782wak9zr] {
    fill: var(--color-text);
}

.wheel-rotor[b-m782wak9zr] {
    position: absolute;
    left: 10px;
    top: 10px;
    width: 702px;
    height: 702px;
    transform-origin: 351px 351px;
    transition: transform 6s cubic-bezier(0.12, 0.8, 0.12, 1);
}

.wheel-sectors[b-m782wak9zr] {
    position: absolute;
    inset: 0;
    width: 702px;
    height: 702px;
}

.sector-base[b-m782wak9zr] {
    fill: var(--color-pink);
}

.sector[b-m782wak9zr] {
    stroke: var(--color-pink);
    stroke-width: 1.5;
    stroke-linejoin: round;
}

/* Rótulo do setor (200×144): número, ícone e nome. Gira em sentido contrário para ficar de pé. */
.sector-label[b-m782wak9zr] {
    position: absolute;
    width: 200px;
    height: 144px;
    transform-origin: 100px 72px;
    transition: transform 6s cubic-bezier(0.12, 0.8, 0.12, 1);
    font-family: var(--font-display);
    font-weight: 700;
    color: var(--color-text);
    text-align: center;
}

.sector-number[b-m782wak9zr] {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    font-size: 15px;
    line-height: 1.17;
    letter-spacing: 1px;
}

.sector-icon[b-m782wak9zr] {
    position: absolute;
    left: 0;
    right: 0;
    top: 22px;
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sector-icon img[b-m782wak9zr] {
    display: block;
    max-width: 64px;
    max-height: 64px;
}

.sector-name[b-m782wak9zr] {
    position: absolute;
    left: 0;
    right: 0;
    top: 94px;
    font-size: 21px;
    line-height: 1.143;
    letter-spacing: 0.25px;
    white-space: pre-line;
}

/* Miolo: borda rosa 174px + centro 162px, com "1 GIRO" */
.wheel-hub[b-m782wak9zr] {
    position: absolute;
    left: 274px;
    top: 274px;
    width: 174px;
    height: 174px;
    border-radius: 50%;
    background: var(--color-pink);
}

.wheel-hub[b-m782wak9zr]::before {
    content: "";
    position: absolute;
    inset: 6px;
    border-radius: 50%;
    background: var(--color-disc);
}

.hub-count[b-m782wak9zr],
.hub-label[b-m782wak9zr] {
    position: absolute;
    left: 0;
    right: 0;
    font-family: var(--font-display);
    font-weight: 700;
    text-align: center;
}

.hub-count[b-m782wak9zr] {
    top: 32px;
    font-size: 63px;
    line-height: 1.063;
    color: var(--color-text);
}

.hub-label[b-m782wak9zr] {
    top: 107px;
    font-size: 27px;
    line-height: 1.17;
    letter-spacing: 2px;
    color: var(--color-pink);
}

.wheel-pointer[b-m782wak9zr] {
    position: absolute;
    left: 342px;
    top: -14px;
    width: 38px;
    height: 46px;
    fill: var(--color-text);
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.35));
}

/* Comunicação e ação (1016, 293) */
.prize-copy[b-m782wak9zr] {
    position: absolute;
    left: 1016px;
    top: 293px;
    width: 780px;
    height: 470px;
}

.prize-eyebrow[b-m782wak9zr] {
    position: absolute;
    left: 0;
    top: 22px;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 19px;
    line-height: 1.17;
    letter-spacing: 1.7px;
    color: var(--color-pink);
}

.prize-title[b-m782wak9zr] {
    position: absolute;
    left: 0;
    top: 65px;
    margin: 0;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 94px;
    line-height: 1.0638;
    letter-spacing: -0.7px;
    color: var(--color-text);
}

.prize-instruction[b-m782wak9zr] {
    position: absolute;
    left: 0;
    top: 273px;
    width: 750px;
    margin: 0;
    font-family: var(--font-body);
    font-size: 28px;
    line-height: 1.3;
    color: var(--color-text-soft);
}

.prize-copy[b-m782wak9zr]  .spin-button {
    position: absolute;
    left: 3px;
    top: 371px;
    width: 511px;
}

.competition-logos[b-m782wak9zr] {
    position: absolute;
    left: 834px;
    top: 946px;
    width: 251px;
    height: 85.6px;
}
/* /Components/Screens/StartScreen.razor.rz.scp.css */
/* Tela 01 — posições em px do palco, conforme o frame "01 · Abertura" do Figma. */
.start-screen[b-z2ayibrjqf] {
    background: var(--color-bg);
    overflow: hidden;
}

.start-photo[b-z2ayibrjqf] {
    position: absolute;
    left: 0;
    top: 0;
    width: 1920px;
    height: 1080px;
    object-fit: cover;
    object-position: top;
    pointer-events: none;
}

.start-title[b-z2ayibrjqf] {
    position: absolute;
    left: 97px;
    top: 275px;
    margin: 0;
    display: flex;
    flex-direction: column;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 147.84px;
    line-height: 134.5px;
    color: var(--color-text);
    white-space: nowrap;
}

.start-title .is-accent[b-z2ayibrjqf] {
    color: var(--color-pink);
}

.tagline[b-z2ayibrjqf] {
    position: absolute;
    left: 101px;
    top: 691px;
    margin: 0;
    font-family: var(--font-body);
    font-weight: 300;
    font-size: 23.04px;
    line-height: 27.6px;
    color: var(--color-text-soft);
    white-space: pre-line;
}

.start-screen[b-z2ayibrjqf]  .start-button {
    --btn-radius: 21px;
    --btn-face-height: 82.5px;
    position: absolute;
    left: 93px;
    top: 811.5px;
    width: 528.9px;
    font-size: 29.51px;
    letter-spacing: 0;
    color: var(--color-text);
}

.start-steps[b-z2ayibrjqf] {
    position: absolute;
    left: 95px;
    top: 991px;
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 0;
}

.start-steps li[b-z2ayibrjqf] {
    display: flex;
    align-items: center;
    gap: 17px;
    height: 41px;
    font-family: var(--font-body);
    font-weight: 700;
    font-size: 19.2px;
    color: var(--color-text);
}

.start-steps li:nth-child(1)[b-z2ayibrjqf] { width: 181.4px; }
.start-steps li:nth-child(2)[b-z2ayibrjqf] { width: 179.5px; }

.step-number[b-z2ayibrjqf] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 41px;
    height: 41px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    font-family: var(--font-ui);
    font-weight: 700;
    font-size: 15.36px;
    color: #acb9d1;
}

.step-number.is-first[b-z2ayibrjqf] {
    background: rgba(255, 255, 255, 0.15);
}

/* Quadro "VAR" — central de decisões */
.var-reticle[b-z2ayibrjqf] {
    position: absolute;
    left: 1111px;
    top: 437px;
    width: 681.5px;
    height: 392.6px;
    pointer-events: none;
}

.reticle-label[b-z2ayibrjqf] {
    position: absolute;
    left: 43.2px;
    top: 0;
    font-family: var(--font-ui);
    font-weight: 700;
    font-size: 16.13px;
    line-height: 22px;
    color: #e1e8f4;
}

.reticle-label[b-z2ayibrjqf]::before {
    content: "";
    position: absolute;
    left: -19.5px;
    top: 7.3px;
    width: 7.2px;
    height: 7.2px;
    border-radius: 50%;
    background: #f63b92;
}

.reticle-box[b-z2ayibrjqf] {
    position: absolute;
    left: 0;
    top: 23px;
    width: 681.5px;
    height: 369.6px;
    border-radius: 22.6px;
    background: rgba(0, 0, 0, 0.3);
}

.reticle-box[b-z2ayibrjqf]::after {
    content: "";
    position: absolute;
    inset: 22.6px;
    border: 1px solid rgba(255, 255, 255, 0.3);
}

.reticle-corner[b-z2ayibrjqf] {
    position: absolute;
    width: 64.8px;
    height: 64.8px;
    border: 0 solid #ffffff;
}

.reticle-corner.is-top[b-z2ayibrjqf] {
    left: 21.4px;
    top: 44.1px;
    border-top-width: 3.2px;
    border-left-width: 3.2px;
}

.reticle-corner.is-bottom[b-z2ayibrjqf] {
    left: 595.2px;
    top: 305.9px;
    border-bottom-width: 3.2px;
    border-right-width: 3.2px;
}

.reticle-text[b-z2ayibrjqf] {
    position: absolute;
    left: 178.7px;
    top: 84px;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 218.88px;
    line-height: 1;
    color: #ffffff;
}

.competition-logos[b-z2ayibrjqf] {
    position: absolute;
    left: 1596px;
    top: 968px;
    width: 251px;
    height: 85.6px;
}
/* /Components/UI/AdminPanel.razor.rz.scp.css */
/* Painel técnico: visual propositalmente neutro, independente do tema e das artes. */
.admin-backdrop[b-xllgvwr0rn] {
    position: absolute;
    inset: 0;
    z-index: 200;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.8);
}

.admin-panel[b-xllgvwr0rn] {
    width: 1100px;
    max-height: 960px;
    display: flex;
    flex-direction: column;
    gap: var(--space-m);
    padding: var(--space-l);
    border-radius: var(--radius-lg);
    background: #1b1d24;
    color: #fff;
    font-family: Arial, sans-serif;
    font-size: var(--fs-small);
}

h2[b-xllgvwr0rn] {
    margin: 0;
    font-size: var(--fs-subtitle);
    letter-spacing: 0.08em;
}

.admin-info[b-xllgvwr0rn] {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: var(--space-xs) var(--space-l);
    margin: 0;
}

.admin-info dt[b-xllgvwr0rn] {
    color: rgba(255, 255, 255, 0.6);
}

.admin-info dd[b-xllgvwr0rn] {
    margin: 0;
    font-weight: bold;
}

.admin-info .is-alert[b-xllgvwr0rn] {
    color: #ffd75e;
}

.admin-prizes[b-xllgvwr0rn] {
    margin: var(--space-xs) 0 0;
    padding-left: var(--space-m);
    font-weight: normal;
}

.admin-prizes .is-out[b-xllgvwr0rn] {
    color: #ff8d93;
}

.admin-warnings[b-xllgvwr0rn] {
    max-height: 320px;
    overflow: auto;
    margin: 0;
    padding: var(--space-s) var(--space-s) var(--space-s) var(--space-l);
    border-radius: var(--radius);
    background: rgba(255, 204, 0, 0.12);
    color: #ffd75e;
    font-family: Consolas, monospace;
    font-size: 18px;
}

.admin-actions[b-xllgvwr0rn] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-s);
}

.admin-actions button[b-xllgvwr0rn] {
    min-height: var(--touch-min);
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: var(--radius);
    background: rgba(255, 255, 255, 0.08);
    font-family: Arial, sans-serif;
    font-size: var(--fs-small);
    font-weight: bold;
    cursor: pointer;
}

.admin-actions button:active[b-xllgvwr0rn] {
    background: rgba(255, 255, 255, 0.2);
}

.admin-actions .is-primary[b-xllgvwr0rn] {
    background: #fff;
    color: #1b1d24;
}

.admin-hint[b-xllgvwr0rn] {
    margin: 0;
    color: rgba(255, 255, 255, 0.5);
    font-size: 18px;
}
/* /Components/UI/AngleSelector.razor.rz.scp.css */
/* Figma: 05 / Enquadramentos + Miniaturas dos ângulos (382×129,5, raio 11). */
.angle-selector[b-ntt15sj1nl] {
    width: 1173px;
}

.angle-header[b-ntt15sj1nl] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    height: 40px;
}

.angle-title[b-ntt15sj1nl] {
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 19px;
    line-height: 24.7px;
    color: #f7f8ff;
}

.angle-count[b-ntt15sj1nl] {
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 18.2px;
    color: #a6ddef;
}

.angle-list[b-ntt15sj1nl] {
    /* Largura de 3 miniaturas do Figma (3 × 382.2 + 2 × 13.15); com 4+ ângulos elas dividem a mesma faixa. */
    display: grid;
    width: 1172.9px;
    grid-auto-flow: column;
    grid-auto-columns: minmax(0, 382.2px);
    gap: 13.15px;
}

.angle-tab[b-ntt15sj1nl] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
    padding: 0;
    border: none;
    background: none;
    text-align: left;
    cursor: pointer;
}

.angle-thumb[b-ntt15sj1nl] {
    position: relative;
    display: block;
    height: 129.5px;
    border-radius: 11px;
    overflow: hidden;
    background: var(--color-video-bg);
    opacity: 0.8;
    transition: opacity var(--t-fast);
}

/* Contorno desenhado por cima da imagem. */
.angle-thumb[b-ntt15sj1nl]::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    box-shadow: inset 0 0 0 1px rgba(105, 191, 210, 0.35);
    pointer-events: none;
}

.angle-thumb[b-ntt15sj1nl]  .angle-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.angle-label[b-ntt15sj1nl] {
    padding-left: 14.9px;
    font-family: var(--font-body);
    font-weight: 500;
    font-size: 17px;
    line-height: 17.55px;
    text-transform: uppercase;
    color: #f5f7fd;
    opacity: 0.3;
    transition: opacity var(--t-fast);
}

.angle-tab:active .angle-thumb[b-ntt15sj1nl] {
    transform: scale(0.98);
}

.angle-tab.is-active .angle-thumb[b-ntt15sj1nl] {
    opacity: 1;
}

.angle-tab.is-active .angle-thumb[b-ntt15sj1nl]::after {
    box-shadow: inset 0 0 0 2px rgba(185, 221, 255, 0.82);
}

.angle-tab.is-active .angle-label[b-ntt15sj1nl] {
    opacity: 1;
}
/* /Components/UI/AppHeader.razor.rz.scp.css */
/* Posições em px do palco 1920×1080, conforme o Figma (telas 02–08; .is-large = tela 01). */
.app-header[b-i9pl4nhty6] {
    position: absolute;
    inset: 0 0 auto 0;
    height: 100px;
    pointer-events: none;
}

.app-header[b-i9pl4nhty6]  .header-logo {
    position: absolute;
    left: 79px;
    top: 24px;
    height: 52px;
    width: auto;
}

.header-competition[b-i9pl4nhty6] {
    position: absolute;
    left: 50%;
    top: 49px;
    transform: translate(-50%, -50%);
    display: flex;
}

.header-competition[b-i9pl4nhty6]  .competition-logo {
    display: block;
}

.app-header[b-i9pl4nhty6]  .header-placeholder {
    display: inline-flex;
    align-items: center;
    font-family: var(--font-ui);
    font-weight: 700;
    font-size: 16px;
    letter-spacing: 2px;
    color: var(--color-text);
}

.var-station[b-i9pl4nhty6] {
    position: absolute;
    left: 1631px;
    top: 30px;
    display: flex;
    align-items: center;
    gap: 22px;
}

.var-box[b-i9pl4nhty6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 69px;
    height: 37px;
    border: 1px solid var(--color-header-border);
    border-radius: 3px;
    font-family: var(--font-ui);
    font-weight: 700;
    font-size: 22.656px;
    letter-spacing: -0.2266px;
    color: var(--color-text);
}

.var-label[b-i9pl4nhty6] {
    font-family: var(--font-ui);
    font-weight: 700;
    font-size: 15.936px;
    line-height: 18.2px;
    letter-spacing: 2.0717px;
    color: var(--color-text);
}

.header-rule[b-i9pl4nhty6] {
    position: absolute;
    left: 64px;
    top: 93px;
    width: 1792px;
    height: 1px;
    background: var(--color-divider);
}

/* Tela de abertura: cabeçalho maior */
.app-header.is-large[b-i9pl4nhty6] {
    height: 140px;
}

.app-header.is-large[b-i9pl4nhty6]  .header-logo {
    left: 73px;
    top: 42.66px;
    height: 69.34px;
}

.is-large .var-station[b-i9pl4nhty6] {
    left: 1639.64px;
    top: 44.16px;
    gap: 19px;
}

.is-large .var-box[b-i9pl4nhty6] {
    width: 65.42px;
    height: 46.03px;
}

.is-large .var-label[b-i9pl4nhty6] {
    line-height: 22px;
}

.is-large .header-rule[b-i9pl4nhty6] {
    left: 72.95px;
    top: 134.36px;
    width: 1774.09px;
}
/* /Components/UI/DecisionIcon.razor.rz.scp.css */
/* O tamanho é definido pelo componente pai via font-size (1em × 1em). */
.decision-icon[b-lz637ri7hc] {
    display: inline-flex;
    width: 1em;
    height: 1em;
    flex: none;
}

.decision-icon[b-lz637ri7hc]  .decision-icon-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Sem ícone oficial para a chave: o círculo do componente pai fica vazio. */
.decision-icon[b-lz637ri7hc]  .decision-icon-placeholder {
    width: 100%;
    height: 100%;
}
/* /Components/UI/DecisionOptionButton.razor.rz.scp.css */
/* Figma: 452×92, raio 20, borda #69BFD2, vidro em degradê; ícone em círculo de 58px; radio à direita. */
.decision-option[b-jsn1693ksc] {
    display: flex;
    align-items: center;
    width: 100%;
    height: var(--option-height, 92.17px);
    padding: 0 20px 0 22.2px;
    border: 1px solid var(--color-glass-border);
    border-radius: 20px;
    background: var(--glass-option);
    box-shadow: inset 0 1px 3px rgba(189, 218, 255, 0.12);
    color: #f6f7fc;
    text-align: left;
    cursor: pointer;
    transition: transform var(--t-fast), border-color var(--t-fast), background-color var(--t-fast), box-shadow var(--t-fast);
}

.decision-option:active[b-jsn1693ksc] {
    transform: scale(0.98);
}

.option-icon[b-jsn1693ksc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none;
    width: 58.4px;
    height: 58.4px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.04);
    font-size: 29px;
}

/* Texto longo quebra em até 2 linhas. */
.option-label[b-jsn1693ksc] {
    flex: 1;
    margin-left: 19.4px;
    font-family: var(--font-ui);
    font-weight: 700;
    font-size: var(--option-font-size, 30px);
    line-height: 1.15;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.option-radio[b-jsn1693ksc] {
    position: relative;
    flex: none;
    width: 29px;
    height: 28.44px;
    margin-left: 12px;
    border: 2px solid var(--color-radio);
    border-radius: 50%;
}

/* Selecionado (estado não desenhado no Figma): contorno e radio preenchidos com o ciano do radio. */
.decision-option.is-selected[b-jsn1693ksc] {
    border-color: var(--color-radio);
    background: linear-gradient(168.47deg, rgba(65, 145, 206, 0.28) 0%, rgba(101, 240, 255, 0.18) 100%);
    box-shadow: inset 0 1px 3px rgba(189, 218, 255, 0.12), 0 0 0 1px var(--color-radio);
}

.decision-option.is-selected .option-radio[b-jsn1693ksc]::after {
    content: "";
    position: absolute;
    inset: 5px;
    border-radius: 50%;
    background: var(--color-radio);
}
/* /Components/UI/DecisionPanel.razor.rz.scp.css */
/* Figma: 04 / Decisão / vidro editável — 528×656, raio 25, vidro com reflexo azul na borda. */
.decision-panel[b-hfbaspgecs] {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 528px;
    min-height: 656px;
    padding: 66px 38px 28px;
    border-radius: 25px;
    background: var(--glass-panel);
    box-shadow: var(--glass-inner-shadow);
    backdrop-filter: var(--glass-blur);
}

/* Reflexo azul / radial: borda em degradê */
.decision-panel[b-hfbaspgecs]::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 1px;
    border-radius: inherit;
    background: linear-gradient(148.2deg, #69bfd2 2.4%, rgba(194, 233, 247, 0.6) 16.3%, #16535d 56.7%, #1e6776 95.2%);
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
}

.panel-heading[b-hfbaspgecs] {
    margin-left: 7px;
}

.question[b-hfbaspgecs] {
    margin: 0;
    max-width: 438px;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 75px;
    line-height: 76px;
    color: #f5f6f7;
    white-space: pre-line;
}

.question-hint[b-hfbaspgecs] {
    margin: 0;
    font-family: var(--font-body);
    font-size: 19px;
    line-height: 23px;
    color: var(--color-text-soft);
}

.options[b-hfbaspgecs] {
    display: flex;
    flex-direction: column;
    gap: 18.96px;
    margin-top: 22px;
    --option-height: 92.17px;
}

/* 4+ opções: altura mínima de toque (88px) e fonte um passo menor */
.options[data-layout="compact"][b-hfbaspgecs] {
    gap: 12px;
    --option-height: var(--touch-min);
    --option-font-size: 26px;
}

.decision-panel[b-hfbaspgecs]  .confirm-button {
    --btn-bg: linear-gradient(90deg, rgba(44, 126, 170, 0.48) 0%, rgba(16, 60, 67, 0.3) 100%);
    --btn-shadow: inset 0 1px 3px rgba(212, 219, 255, 0.15);
    --btn-radius: 16px;
    --btn-face-height: 66.68px;
    --btn-color: rgba(232, 254, 255, 0.5);
    width: 100%;
    margin-top: 26.6px;
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 21px;
    letter-spacing: 0;
    text-transform: none;
}

/* Habilitado (estado não desenhado no Figma): rosa TNT, como os demais CTAs. */
.decision-panel[b-hfbaspgecs]  .confirm-button:not(:disabled) {
    --btn-bg: var(--color-pink);
    --btn-shadow: none;
    --btn-color: #ffffff;
}

.confirm-hint[b-hfbaspgecs] {
    margin: 2px 0 0;
    font-family: var(--font-body);
    font-size: 14px;
    line-height: 18.2px;
    text-align: center;
    color: var(--color-hint);
}

.confirm-hint.is-hidden[b-hfbaspgecs] {
    visibility: hidden;
}
/* /Components/UI/DevWarnings.razor.rz.scp.css */
.dev-warnings[b-o0l64ikjjn] {
    position: absolute;
    left: var(--space-s);
    bottom: var(--space-s);
    z-index: 100;
    max-width: 900px;
    font-family: Consolas, monospace;
    font-size: 18px;
    color: #000;
}

.dev-toggle[b-o0l64ikjjn] {
    padding: var(--space-xs) var(--space-s);
    border: none;
    border-radius: 6px;
    background: #ffcc00;
    color: #000;
    font-family: inherit;
    font-size: inherit;
    cursor: pointer;
}

.dev-warnings ul[b-o0l64ikjjn] {
    margin: var(--space-xs) 0 0;
    padding: var(--space-s) var(--space-s) var(--space-s) var(--space-l);
    max-height: 600px;
    overflow: auto;
    border-radius: 6px;
    background: rgba(255, 204, 0, 0.95);
}
/* /Components/UI/PrimaryButton.razor.rz.scp.css */
/* Botão principal. A "face" visível (cor, raio, altura do Figma) é desenhada no ::before, de modo
   que a área de toque possa ser maior que o desenho (mínimo de 88px no totem).
   Cada tela define: --btn-bg, --btn-color, --btn-radius, --btn-face-height e a tipografia. */
.primary-button[b-lbbgazpqzb] {
    --btn-bg: var(--color-pink);
    --btn-color: #ffffff;
    --btn-radius: 20px;
    --btn-face-height: 78px;
    position: relative;
    isolation: isolate;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: var(--touch-min);
    padding: 0 var(--space-m);
    border: none;
    background: none;
    color: var(--btn-color);
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 27px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    cursor: pointer;
    transition: transform var(--t-fast), opacity var(--t-fast);
}

.primary-button[b-lbbgazpqzb]::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: var(--btn-face-height);
    transform: translateY(-50%);
    border-radius: var(--btn-radius);
    background: var(--btn-bg);
    box-shadow: var(--btn-shadow, none);
    z-index: -1;
}

.primary-button:active:not(:disabled)[b-lbbgazpqzb] {
    transform: scale(0.97);
    opacity: 0.85;
}

.primary-button:disabled[b-lbbgazpqzb] {
    cursor: default;
}

.is-pulsing:not(:disabled)[b-lbbgazpqzb]::before {
    animation: pulse-b-lbbgazpqzb 1.6s ease-in-out infinite;
}

@keyframes pulse-b-lbbgazpqzb {
    0%, 100% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--btn-bg) 55%, transparent); }
    50% { box-shadow: 0 0 0 22px transparent; }
}
/* /Components/UI/ProgressIndicator.razor.rz.scp.css */
/* "LANCE 01 / 04" + barras de progresso (Figma: Progresso da rodada). */
.progress-indicator[b-0vel2u20dn] {
    display: flex;
    align-items: center;
    gap: 20px;
}

.progress-label[b-0vel2u20dn] {
    font-family: var(--font-ui);
    font-weight: 700;
    font-size: 16.512px;
    line-height: 23px;
    letter-spacing: 1.321px;
    color: #d4dbee;
}

.progress-segments[b-0vel2u20dn] {
    display: flex;
    gap: 6.5px;
}

.segment[b-0vel2u20dn] {
    width: 38.39px;
    height: 6.14px;
    border-radius: 2px;
    background: rgba(255, 255, 255, 0.1);
}

.segment.is-done[b-0vel2u20dn] {
    background: rgba(255, 255, 255, 0.19);
}

.segment.is-current[b-0vel2u20dn] {
    background: var(--color-pink);
}
/* /Components/UI/ScoreDisplay.razor.rz.scp.css */
/* Bloco 554×587,6; o anel começa 33,6px abaixo do topo (a medalha fica sobre ele). */
.score-display[b-u39y2flfz1] {
    position: relative;
    width: 554px;
    height: 587.6px;
    font-family: var(--font-display);
    font-weight: 700;
    text-align: center;
}

.score-ring[b-u39y2flfz1] {
    position: absolute;
    left: 0;
    top: 33.6px;
    width: 554px;
    height: 554px;
    overflow: visible;
}

.ring-disc[b-u39y2flfz1] {
    fill: var(--color-disc);
    stroke: var(--color-disc-border);
    stroke-width: 1;
}

.ring-inner[b-u39y2flfz1] {
    fill: none;
    stroke: var(--color-disc-inner);
    stroke-width: 1;
}

.ring-progress[b-u39y2flfz1] {
    fill: none;
    stroke: var(--color-pink);
    stroke-width: 3;
}

.score-medal[b-u39y2flfz1] {
    position: absolute;
    left: 240.4px;
    top: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 73.25px;
    height: 73.25px;
    border-radius: 50%;
    background: var(--color-pink);
    color: #091f2b;
    font-size: 40px;
}

.score-caption[b-u39y2flfz1] {
    position: absolute;
    left: 0;
    right: 0;
    top: 136.6px;
    font-size: 19px;
    line-height: 1.17;
    letter-spacing: 2.2px;
    color: var(--color-text-soft);
}

.score-value[b-u39y2flfz1] {
    position: absolute;
    left: 0;
    right: 0;
    top: 178.6px;
    display: flex;
    justify-content: center;
    align-items: baseline;
    gap: 7px;
}

.score-number[b-u39y2flfz1] {
    font-size: 226px;
    line-height: 1.106;
    color: var(--color-text);
}

.score-total[b-u39y2flfz1] {
    font-size: 100px;
    line-height: 1.15;
    color: var(--color-text-dim);
}

.score-label[b-u39y2flfz1] {
    position: absolute;
    left: 0;
    right: 0;
    top: 456.6px;
    font-size: 22px;
    line-height: 1.17;
    letter-spacing: 3px;
    color: var(--color-text);
}
/* /Components/UI/Stage.razor.rz.scp.css */
.stage-viewport[b-ekmgczfp73] {
    position: fixed;
    inset: 0;
    overflow: hidden;
    background: #000;
}

.stage[b-ekmgczfp73] {
    position: absolute;
    left: 50%;
    top: 50%;
    width: var(--stage-w);
    height: var(--stage-h);
    transform: translate(-50%, -50%) scale(var(--stage-scale, 1));
    transform-origin: center;
    overflow: hidden;
    touch-action: none;
    background-color: var(--color-bg);
    background-image: var(--bg-image), var(--bg-gradient);
    background-size: cover;
    background-position: center;
    color: var(--color-text);
    font-family: var(--font-body);
    font-size: var(--fs-body);
    transition: background-color var(--t-screen);
}
/* /Components/UI/UiIcon.razor.rz.scp.css */
.ui-icon[b-dgiicfsm7z] {
    width: 1em;
    height: 1em;
    flex: none;
}
/* /Components/UI/VideoControls.razor.rz.scp.css */
/* Área de toque de 88px; o círculo visível de 64px segue o Figma. */
.play-toggle[b-begd26c8mz] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--touch-min);
    height: var(--touch-min);
    padding: 0;
    border: none;
    background: none;
    color: #f7f8ff;
    cursor: pointer;
}

.play-face[b-begd26c8mz] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64.2px;
    height: 64.2px;
    border: 1px solid #a5f8e8;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(65, 145, 206, 0.1) 0%, rgba(101, 240, 255, 0.08) 100%);
    box-shadow: inset 0 1px 3px rgba(189, 218, 255, 0.12);
    transition: transform var(--t-fast), background-color var(--t-fast);
}

.play-face[b-begd26c8mz]  .ui-icon {
    font-size: 22.2px;
    margin-left: 4px;
}

.play-toggle:active .play-face[b-begd26c8mz] {
    transform: scale(0.94);
}

/* Vídeo terminou: o botão convida a assistir novamente. */
.play-toggle.is-highlighted .play-face[b-begd26c8mz] {
    border-color: var(--color-pink);
    box-shadow: 0 0 0 4px rgba(248, 106, 217, 0.25);
}
/* /Components/UI/VideoPlayer.razor.rz.scp.css */
/* Player do Figma (Group 10 / 03 / Replay): card de vidro 1173×607,5 com faixa de controles.
   Posições relativas ao card; ancoradas à base para funcionar também em tela cheia. */
.video-player[b-z8iddya6q5] {
    position: relative;
    width: 1173px;
    height: 607.5px;
    border-radius: 24px;
    background: var(--color-video-bg);
    box-shadow: 0 10px 24px rgba(8, 21, 59, 0.42);
}

/* Acabamento / borda */
.video-player[b-z8iddya6q5]::after {
    content: "";
    position: absolute;
    inset: 0;
    border: 1.2px solid var(--color-glass-border);
    border-radius: inherit;
    pointer-events: none;
    z-index: 3;
}

.video-frame[b-z8iddya6q5],
.video-shade[b-z8iddya6q5],
.video-overlay[b-z8iddya6q5] {
    position: absolute;
    left: 1.2px;
    right: 1.2px;
    top: 1.2px;
    bottom: 100.5px;
    border-radius: 22px 22px 0 0;
    overflow: hidden;
    z-index: 2;
}

.video-frame video[b-z8iddya6q5] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    background: transparent;
    opacity: 0;
    pointer-events: none;
}

/* Classe aplicada por js/video.js ao elemento visível. */
.video-frame video.is-active[b-z8iddya6q5] {
    opacity: 1;
}

.video-shade[b-z8iddya6q5] {
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 41%, rgba(0, 0, 0, 0.7) 100%);
    pointer-events: none;
}

/* Erro/ausência de vídeo: quadro vazio. */
.video-overlay[b-z8iddya6q5] {
    background: transparent;
}

.video-tag[b-z8iddya6q5] {
    position: absolute;
    left: 23px;
    top: 28px;
    display: inline-flex;
    align-items: center;
    height: 38px;
    padding: 0 18px 0 32.9px;
    border-radius: 7px;
    background: var(--color-tag-bg);
    font-family: var(--font-body);
    font-weight: 500;
    font-size: 11px;
    letter-spacing: 0.65px;
    text-transform: uppercase;
    color: #f6f8fc;
    z-index: 2;
}

.video-tag[b-z8iddya6q5]::before {
    content: "";
    position: absolute;
    left: 15.1px;
    top: 15.2px;
    width: 7.6px;
    height: 7.6px;
    border-radius: 50%;
    background: #b5c4ff;
}

.video-seal[b-z8iddya6q5] {
    position: absolute;
    right: 31px;
    top: 23px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 57px;
    height: 42px;
    border-radius: 6px;
    background: var(--color-tag-bg);
    font-family: var(--font-body);
    font-weight: 500;
    font-size: 11px;
    letter-spacing: 1px;
    color: #dce4f3;
    z-index: 2;
}

.video-caption[b-z8iddya6q5] {
    position: absolute;
    left: 30.9px;
    bottom: 123.5px;
    display: inline-flex;
    align-items: center;
    gap: 10.5px;
    font-family: var(--font-body);
    font-size: 14px;
    color: #f7f8ff;
    z-index: 2;
}

.video-caption[b-z8iddya6q5]  .ui-icon {
    font-size: 27.2px;
}

/* Faixa para controles (vidro). No Figma ela continua por trás do vídeo; aqui começa onde o vídeo termina,
   para não aparecer através do quadro quando ainda não há vídeo. */
.video-toolbar[b-z8iddya6q5] {
    position: absolute;
    left: 1px;
    right: 1px;
    bottom: 1px;
    height: 99.5px;
    display: flex;
    align-items: flex-end;
    padding: 0 5.6px 2.5px 19.1px;
    border-radius: 0 0 23px 23px;
    background: linear-gradient(176deg, rgba(34, 86, 121, 0.78) -60%, #0b1d29 55%, #011928 140%);
    box-shadow: var(--glass-inner-shadow);
    backdrop-filter: var(--glass-blur);
    z-index: 1;
}

.video-progress[b-z8iddya6q5] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 32.1px;
    height: var(--touch-min);
    margin-left: 16.6px;
}

.video-track[b-z8iddya6q5] {
    position: relative;
    flex: 1;
    height: 6.17px;
    border-radius: 2.5px;
    background: var(--color-track);
}

/* Linha do tempo: --progress (0..1) é atualizado por js/video.js. */
.video-progress-fill[b-z8iddya6q5] {
    height: 100%;
    border-radius: 2.5px;
    background: var(--color-pink);
    box-shadow: 0 0 6px rgba(112, 72, 252, 0.3);
    transform-origin: left center;
    transform: scaleX(var(--progress, 0));
}

.video-progress-thumb[b-z8iddya6q5] {
    position: absolute;
    top: 50%;
    left: calc(var(--progress, 0) * 100%);
    width: 23.46px;
    height: 23.46px;
    transform: translate(-50%, -50%);
    border: 1px solid #b7b4ff;
    border-radius: 50%;
    background: #e5e7ff;
    box-shadow: 0 0 8px rgba(139, 101, 255, 0.6);
}

.video-time[b-z8iddya6q5] {
    width: 140px;
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 19.5px;
    color: #f7f8ff;
    font-variant-numeric: tabular-nums;
}

.fullscreen-button[b-z8iddya6q5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--touch-min);
    height: var(--touch-min);
    padding: 0;
    border: none;
    background: none;
    color: #f7f8ff;
    cursor: pointer;
}

.fullscreen-button[b-z8iddya6q5]  .ui-icon {
    font-size: 34.57px;
}

.fullscreen-button:active[b-z8iddya6q5] {
    transform: scale(0.92);
}

/* Tela cheia: o player cobre o palco (abaixo do bloqueio de transição e do painel do operador). */
.video-player.is-expanded[b-z8iddya6q5] {
    position: fixed;
    left: 0;
    top: 0;
    width: var(--stage-w);
    height: var(--stage-h);
    border-radius: 0;
    z-index: 45;
}
/* /Pages/Experience.razor.rz.scp.css */
.input-guard[b-mhvnz190fs] {
    position: absolute;
    inset: 0;
    z-index: 50;
}

/* Gesto oculto do painel do operador: canto superior esquerdo, invisível. */
.admin-hotspot[b-mhvnz190fs] {
    position: absolute;
    left: 0;
    top: 0;
    width: 140px;
    height: 140px;
    z-index: 60;
}
