/* Ordinary scoreboard baseline appearance, plus the explicitly shared
 * non-S7 lineup curtain rule. One modern neutral default below;
 * complete native v1 colors override it, with no country table or BP state.
 * Panel/input transparency affects background paint only, never whole elements.
 * Never theme whole button/input/descendant trees: business colors stay local. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) {
    --gsbp-ui-canvas: #101820;
    --gsbp-ui-surface: #192735;
    --gsbp-ui-surface-raised: #233448;
    --gsbp-ui-surface-inset: #121E2A;
    --gsbp-ui-border: #3D5063;
    --gsbp-ui-text: #F2F5F8;
    --gsbp-ui-text-muted: #ABBAC9;
    --gsbp-ui-accent: #9CB9D5;
    --gsbp-ui-on-accent: #111C28;
    --gsbp-ui-control: #2B4055;
    --gsbp-ui-control-hover: #36536F;
    --gsbp-ui-control-active: #244A70;
    --gsbp-ui-focus-ring: #B9D9F5;
    --gsbp-ui-control-soft: color-mix(in srgb, var(--gsbp-ui-control-hover) 90%, var(--gsbp-ui-accent));
    --gsbp-ui-neutral-fill: color-mix(in srgb, var(--gsbp-ui-control-soft) 30%, transparent);
    --gsbp-ui-neutral-hover: color-mix(in srgb, var(--gsbp-ui-control-soft) 40%, transparent);
    --gsbp-ui-neutral-active: color-mix(in srgb, var(--gsbp-ui-control-soft) 50%, transparent);
    /* Fixed business semantics are local consumer tokens, not native palette
     * fields. Each meaning owns exactly one hue. Soft carriers are derived
     * from that hue and the current surface; normal copy stays theme text. */
    --gsbp-semantic-info-main: #3B82F6;
    --gsbp-semantic-info-on-main: #101820;
    --gsbp-semantic-info-soft: color-mix(in srgb, var(--gsbp-ui-surface-raised) 84%, var(--gsbp-semantic-info-main));
    --gsbp-semantic-success-main: #4FCB8A;
    --gsbp-semantic-success-on-main: #101820;
    --gsbp-semantic-success-soft: color-mix(in srgb, var(--gsbp-ui-surface-raised) 84%, var(--gsbp-semantic-success-main));
    --gsbp-semantic-attention-main: #E99F3D;
    --gsbp-semantic-attention-on-main: #101820;
    --gsbp-semantic-attention-soft: color-mix(in srgb, var(--gsbp-ui-surface-raised) 84%, var(--gsbp-semantic-attention-main));
    --gsbp-semantic-danger-main: #A84356;
    --gsbp-semantic-danger-on-main: #FFFFFF;
    --gsbp-semantic-danger-soft: color-mix(in srgb, var(--gsbp-ui-surface-raised) 84%, var(--gsbp-semantic-danger-main));
    --gsbp-ui-stage-art:
        radial-gradient(ellipse 94% 120% at 110% -34%, transparent 52%, color-mix(in srgb, var(--gsbp-ui-accent) 30%, transparent) 54%, color-mix(in srgb, var(--gsbp-ui-control-hover) 75%, transparent) 65%, transparent 67%),
        radial-gradient(ellipse 100% 120% at -16% 116%, transparent 44%, color-mix(in srgb, var(--gsbp-ui-accent) 24%, transparent) 46%, color-mix(in srgb, var(--gsbp-ui-control-hover) 80%, transparent) 57%, transparent 59%),
        radial-gradient(ellipse 72% 90% at 100% 0%, color-mix(in srgb, var(--gsbp-ui-accent) 18%, transparent) 0%, transparent 76%),
        linear-gradient(138deg, var(--gsbp-ui-canvas) 0%, color-mix(in srgb, var(--gsbp-ui-canvas) 72%, var(--gsbp-ui-surface-raised)) 48%, var(--gsbp-ui-canvas) 100%);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) body {
    background-color: var(--gsbp-ui-canvas);
    background-image: var(--gsbp-ui-wallpaper, var(--gsbp-ui-stage-art-image, none));
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    color: var(--gsbp-ui-text);
}

/* One trusted animated background behind the ordinary page, never S7. */
html.gsbp-ui-prism:not(.gsbp-electron-broadcast-ui) body {
    isolation: isolate;
    background-image: none;
}
html.gsbp-ui-prism:not(.gsbp-electron-broadcast-ui) .gsbp-ui-prism-layer {
    position: fixed;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    overflow: hidden;
}
.gsbp-ui-prism-layer > svg { display: block; width: 100%; height: 100%; }
html.gsbp-ui-prism.gsbp-ui-appearance:not(.gsbp-electron-broadcast-ui) .top-right-area {
    background-color: transparent;
    background-image: none;
}

/* No transparent stage and no independent legacy mode wallpaper. Paint the
 * same viewport-aligned page wallpaper over an opaque canvas fallback, so the
 * main area does not crop a second image relative to its own smaller box.
 * Without a nation image, the static SVG covers the same full viewport.
 * The local CSS gradient is only an art-loading/failure fallback. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .top-right-area {
    background-color: var(--gsbp-ui-canvas);
    background-image: var(--gsbp-ui-wallpaper, var(--gsbp-ui-stage-art-image, var(--gsbp-ui-stage-art)));
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui):not(.gsbp-ui-wallpaper):not(.gsbp-ui-art-ready) .top-right-area {
    background-attachment: scroll;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .top-right-area::before {
    background: none;
}

/* Both ordinary modes keep the original lineup content/motion, without a
 * separate curtain. Native colors win; plain mode uses a neutral fallback.
 * Only the backing blurs, never the cards/text. S7 keeps its own curtain. */
html:not(.gsbp-electron-broadcast-ui) #starsModal.score-bp-lineup-modal {
    background-color: transparent;
    background-image: none;
}

html:not(.gsbp-electron-broadcast-ui) #starsModal .score-bp-lineup-overlay {
    background: color-mix(in srgb, var(--gsbp-ui-surface, #192735) 50%, transparent);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

/* Artwork colors are resolved from the current palette into small SVG data
 * images. Only the visual is replaced; the original history trigger remains.
 * The one shadow is inside the SVG and scales with the lettering. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-ui-art-ready #vsDisplay > img.vs-image {
    content: var(--gsbp-ui-vs-image);
    width: clamp(80px, 7vw, 160px);
    height: auto;
    filter: none;
    box-shadow: none;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-ui-art-ready #score-broadcast-container .score-broadcast-vs {
    background: var(--gsbp-ui-vs-image) center / contain no-repeat;
    width: 72px;
    height: 45px;
    font-size: 0;
    text-shadow: none;
    filter: none;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.left-area, .bottom-area) {
    background: var(--gsbp-ui-surface);
    color: var(--gsbp-ui-text);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.bottom-left, .bottom-center, .bottom-right,
    .editable-text, .clock-display, .score-number) {
    background: var(--gsbp-ui-surface-inset);
    color: var(--gsbp-ui-text);
    border-color: var(--gsbp-ui-border);
}

/* Nation wallpaper or full-page abstract art: tint the panels at 50%.
 * Never reduce element opacity: text, icons and controls stay fully readable.
 * Inner bottom sections must not add a second opaque/tinted panel over it. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui):is(.gsbp-ui-wallpaper, .gsbp-ui-art-ready) :is(.left-area, .bottom-area) {
    background-color: color-mix(in srgb, var(--gsbp-ui-surface) 50%, transparent);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui):is(.gsbp-ui-wallpaper, .gsbp-ui-art-ready) :is(.bottom-left, .bottom-center, .bottom-right) {
    background-color: transparent;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.match-name-display, .bo-info-display, .clock-display) {
    color: var(--gsbp-ui-text);
    text-shadow: none;
    box-shadow: none;
    animation: none;
}

/* Keep the stage title legible over light wallpaper without adding a panel
 * or restoring the old colored glow. Tight edge plus soft neutral shadow. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .top-right-area > .match-name-display {
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.9), 0 3px 12px rgba(0, 0, 0, 0.7);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.host-title, .vs-text, .bottom-center-top,
    .score-separator, .score-summary-label, .import-modal-title, .custom-modal-title) {
    color: var(--gsbp-ui-text);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.bgm-playlist-container, .bgm-volume-control,
    .match-actions-popover, .import-modal-content, .custom-modal, #bpModeModal, .zoom-controls) {
    background: var(--gsbp-ui-surface-raised);
    color: var(--gsbp-ui-text);
    border-color: var(--gsbp-ui-border);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.import-modal-content, .custom-modal, #bpModeModal) {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.24);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.import-modal-instructions, .custom-modal-message,
    .file-name-display, .bp-mode-btn .mode-desc, .zoom-level, .iframe-height-unit, .bgm-close-button) {
    color: var(--gsbp-ui-text-muted);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.host-add-select, .match-type-select, .game-selector,
    .current-player-select, .player-select, .editable-input, .iframe-height-select) {
    background: var(--gsbp-ui-surface-inset);
    color: var(--gsbp-ui-text);
    border-color: var(--gsbp-ui-border);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.host-add-select, .match-type-select,
    .game-selector, .current-player-select, .player-select, .iframe-height-select) option {
    background: var(--gsbp-ui-surface-inset);
    color: var(--gsbp-ui-text);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.left-tool-button, .host-add-button, .confirm-button,
    .confirm-players-button, .bp-tool-button, .score-broadcast-button, .custom-file-button, .custom-modal-btn,
    .import-button, .cancel-button, .bp-mode-btn, .zoom-button:not(.close-button), .clear-timer-button) {
    background: var(--gsbp-ui-control);
    color: var(--gsbp-ui-text);
    border-color: var(--gsbp-ui-border);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.left-tool-button, .host-add-button, .confirm-button,
    .confirm-players-button, .bp-tool-button, .score-broadcast-button, .custom-file-button, .custom-modal-btn,
    .import-button, .cancel-button, .bp-mode-btn, .zoom-button:not(.close-button), .clear-timer-button,
    .score-number):not(:disabled):hover {
    background: var(--gsbp-ui-control-hover);
    color: var(--gsbp-ui-text);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.left-tool-button, .host-add-button, .confirm-button,
    .confirm-players-button, .bp-tool-button, .score-broadcast-button, .custom-file-button, .custom-modal-btn,
    .import-button, .cancel-button, .bp-mode-btn, .zoom-button:not(.close-button), .clear-timer-button,
    .score-number):not(:disabled):active {
    background: var(--gsbp-ui-control-active);
}

/* Dangerous actions use the fixed business semantic, never the current
 * country accent. Ordinary actions above keep their neutral theme material. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .match-actions-popover button:not(.danger) {
    background: var(--gsbp-ui-control);
    color: var(--gsbp-ui-text);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .match-actions-popover button:not(.danger):hover {
    background: var(--gsbp-ui-control-hover);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .match-actions-popover button.danger {
    color: var(--gsbp-ui-text);
    box-shadow: inset 4px 0 0 var(--gsbp-semantic-danger-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .match-actions-popover button.danger:hover {
    color: var(--gsbp-ui-text);
    background: var(--gsbp-semantic-danger-soft);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.left-tool-button, .host-add-button, .confirm-button,
    .confirm-players-button, .bp-tool-button, .score-broadcast-button, .custom-file-button, .custom-modal-btn,
    .import-button, .cancel-button, .bp-mode-btn, .zoom-button, .clear-timer-button, .score-number,
    .match-actions-popover button, .host-add-select, .match-type-select, .game-selector,
    .current-player-select, .player-select, .editable-input, .iframe-height-select):focus-visible {
    outline: 2px solid var(--gsbp-ui-focus-ring);
    outline-offset: 2px;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) #bpModeModal h2 {
    color: var(--gsbp-ui-accent);
}

/* Shared semantic grammar: one canonical hue on each rail/icon, one derived
 * opaque soft carrier and theme text for copy. Never tint the whole page. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) #score-bp-notifications > .success-message.gsbp-semantic-success:not(:has(.score-bp-live-event-proposal)) {
    background-color: var(--gsbp-semantic-success-soft);
    color: var(--gsbp-ui-text);
    border-color: transparent;
    border-left: 4px solid var(--gsbp-semantic-success-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) #score-bp-notifications > .success-message.gsbp-semantic-success:not(:has(.score-bp-live-event-proposal))::before {
    content: "✓  ";
    color: var(--gsbp-semantic-success-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) #score-bp-notifications > .success-message.gsbp-semantic-info:not(:has(.score-bp-live-event-proposal)) {
    background-color: var(--gsbp-semantic-info-soft);
    color: var(--gsbp-ui-text);
    border-color: transparent;
    border-left: 4px solid var(--gsbp-semantic-info-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) #score-bp-notifications > .success-message.gsbp-semantic-info:not(:has(.score-bp-live-event-proposal))::before {
    content: "ⓘ  ";
    color: var(--gsbp-semantic-info-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) #score-bp-notifications > .success-message.gsbp-semantic-attention:not(:has(.score-bp-live-event-proposal)) {
    background-color: var(--gsbp-semantic-attention-soft);
    color: var(--gsbp-ui-text);
    border-color: transparent;
    border-left: 4px solid var(--gsbp-semantic-attention-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) #score-bp-notifications > .success-message.gsbp-semantic-attention:not(:has(.score-bp-live-event-proposal))::before {
    content: "!  ";
    color: var(--gsbp-semantic-attention-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) #score-bp-notifications > .success-message.gsbp-semantic-danger:not(:has(.score-bp-live-event-proposal)) {
    background-color: var(--gsbp-semantic-danger-soft);
    color: var(--gsbp-ui-text);
    border-color: transparent;
    border-left: 4px solid var(--gsbp-semantic-danger-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) #score-bp-notifications > .success-message.gsbp-semantic-danger:not(:has(.score-bp-live-event-proposal))::before {
    content: "×  ";
    color: var(--gsbp-semantic-danger-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .error-message.gsbp-semantic-danger:not(:empty) {
    background: var(--gsbp-semantic-danger-soft);
    color: var(--gsbp-ui-text);
    border-left: 4px solid var(--gsbp-semantic-danger-main);
    box-shadow: none;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .error-message.gsbp-semantic-danger:not(:empty)::before {
    content: "×  ";
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-semantic-attention-active {
    background-color: var(--gsbp-semantic-attention-soft);
    box-shadow: inset 4px 0 0 var(--gsbp-semantic-attention-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .custom-modal-overlay.gsbp-semantic-info #customModal.custom-modal {
    box-shadow: inset 4px 0 0 var(--gsbp-semantic-info-main), 0 8px 24px rgba(0, 0, 0, 0.24);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .custom-modal-overlay.gsbp-semantic-info #customModalIcon {
    color: var(--gsbp-semantic-info-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .custom-modal-overlay.gsbp-semantic-success #customModal.custom-modal {
    box-shadow: inset 4px 0 0 var(--gsbp-semantic-success-main), 0 8px 24px rgba(0, 0, 0, 0.24);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .custom-modal-overlay.gsbp-semantic-success #customModalIcon {
    color: var(--gsbp-semantic-success-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .custom-modal-overlay.gsbp-semantic-attention #customModal.custom-modal {
    box-shadow: inset 4px 0 0 var(--gsbp-semantic-attention-main), 0 8px 24px rgba(0, 0, 0, 0.24);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .custom-modal-overlay.gsbp-semantic-attention #customModalIcon {
    color: var(--gsbp-semantic-attention-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .custom-modal-overlay.gsbp-semantic-danger #customModal.custom-modal {
    box-shadow: inset 4px 0 0 var(--gsbp-semantic-danger-main), 0 8px 24px rgba(0, 0, 0, 0.24);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .custom-modal-overlay.gsbp-semantic-danger #customModalIcon {
    color: var(--gsbp-semantic-danger-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .custom-modal-btn.gsbp-semantic-danger-action {
    background: var(--gsbp-semantic-danger-main);
    color: var(--gsbp-semantic-danger-on-main);
    border-color: var(--gsbp-semantic-danger-main);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .custom-modal-btn.gsbp-semantic-danger-action:hover {
    background: var(--gsbp-semantic-danger-main);
    color: var(--gsbp-semantic-danger-on-main);
    outline: 2px solid var(--gsbp-ui-focus-ring);
    outline-offset: -2px;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .score-bp-startup-error {
    background: var(--gsbp-ui-canvas);
    color: var(--gsbp-ui-text);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .score-bp-startup-error-panel {
    background: var(--gsbp-ui-surface-raised);
    border-color: transparent;
    box-shadow: inset 4px 0 0 var(--gsbp-semantic-danger-main), 0 20px 50px rgba(0, 0, 0, 0.35);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .score-bp-startup-error-title {
    color: var(--gsbp-ui-text);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .score-bp-startup-error-reload {
    background: var(--gsbp-semantic-danger-main);
    color: var(--gsbp-semantic-danger-on-main);
    border-color: var(--gsbp-semantic-danger-main);
}

/* A report can cover a wallpaper, a card or moving video. Its own backing,
 * not blur or gold glow, carries readability. Keep outcome/hint colors owned
 * by the score renderer; normal report labels/numbers are not status colors. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) #score-broadcast-container {
    background: color-mix(in srgb, var(--gsbp-ui-surface-inset) 70%, transparent);
    color: var(--gsbp-ui-text);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22);
    outline: 1px solid color-mix(in srgb, var(--gsbp-ui-border) 25%, transparent);
    outline-offset: -1px;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) #score-broadcast-container :is(.score-broadcast-name, .score-broadcast-line, .score-broadcast-total, .score-broadcast-vs) {
    color: var(--gsbp-ui-text);
    text-shadow: none;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) #score-broadcast-container :is(.score-broadcast-line, .score-broadcast-total) > span:first-child {
    color: var(--gsbp-ui-text-muted);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) #score-broadcast-container .score-broadcast-avatar {
    border-color: color-mix(in srgb, var(--gsbp-ui-accent) 55%, transparent);
    box-shadow: none;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h { position:absolute;inset:0;z-index:500;box-sizing:border-box;padding:24px 5%;background:color-mix(in srgb,var(--gsbp-ui-surface) 70%,transparent);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);color:var(--gsbp-ui-text);display:flex;flex-direction:column; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h[hidden]{display:none}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-header{display:flex;justify-content:space-between;align-items:center;color:var(--gsbp-ui-text-muted)}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h button{background:transparent;border:0;color:var(--gsbp-ui-text);font:inherit;padding:10px 14px;cursor:pointer}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h button:hover{background:color-mix(in srgb,var(--gsbp-ui-control) 30%,transparent)}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-content{flex:1;min-height:0;overflow:auto;text-align:center;display:flex;flex-direction:column;justify-content:safe center;gap:24px}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-title{font-size:30px;font-weight:500;margin:0}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-people{display:grid;grid-template-columns:1fr 1fr;gap:10%}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-person{display:grid;justify-items:center;gap:12px}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-person img{width:90px;height:90px;object-fit:cover;border-radius:50%}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-person strong{font-size:26px}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-rate{font-size:54px;font-variant-numeric:tabular-nums}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-person>span{color:var(--gsbp-ui-text-muted)}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-row{padding:16px 0;display:grid;gap:8px;border-bottom:1px solid color-mix(in srgb,var(--gsbp-ui-text) 12%,transparent)}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-row span{font-size:13px;color:var(--gsbp-ui-text-muted)}

/* Local biography projection: table stays mounted; report temporarily takes priority. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-footer{text-align:center;padding-top:12px;flex:none}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-footer a{color:var(--gsbp-ui-text-muted);text-underline-offset:4px;font-size:14px}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-content.ordinary-h2h-detail{gap:8px;justify-content:flex-start}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-detail-frame{width:100%;flex:1;min-height:0;border:0}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-teams{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);width:min(100%,900px);margin-inline:auto;text-align:left}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-member{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:10px;align-items:center;padding:14px 0;border-bottom:1px solid color-mix(in srgb,var(--gsbp-ui-text) 10%,transparent)}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-team:last-child{text-align:right}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-team:last-child .ordinary-h2h-member{grid-template-columns:auto minmax(0,1fr) 54px}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-team:last-child .ordinary-h2h-member img{grid-column:3;grid-row:1}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-team:last-child .ordinary-h2h-member strong{grid-column:2;grid-row:1}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-team:last-child .ordinary-h2h-member button{grid-column:1;grid-row:1}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-h2h-member img{width:54px;height:54px;border-radius:50%;object-fit:cover}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-panel {
    position: absolute; inset: 0; z-index: 2; box-sizing: border-box;
    display: grid; grid-template-columns: clamp(48px, 4vw, 76px) minmax(0, 1fr);
    align-content: center; align-items: center; gap: 4px 14px; padding: 8px 14px;
    background: color-mix(in srgb, var(--gsbp-ui-surface) 70%, transparent);
    color: var(--gsbp-ui-text);
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-panel[hidden] { display: none; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-visible > :is(.timer-table,.score-summary) { visibility: hidden; pointer-events: none; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-avatar { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 50%; grid-row: 1 / 3; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-copy { min-width: 0; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-kind { font-size: 11px; color: var(--gsbp-ui-text-muted); margin-inline-end: 10px; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-name { font-size: clamp(16px, 1.15vw, 22px); }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-intro { margin: 4px 0 0; font-size: clamp(13px, 1vw, 18px); line-height: 1.35; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-meta { margin: 3px 0 0; font-size: 11px; color: var(--gsbp-ui-text-muted); }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-meta:empty { display: none; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-right .ordinary-profile-panel { grid-template-columns: minmax(0,1fr) clamp(48px,4vw,76px); text-align: right; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-right .ordinary-profile-avatar { grid-column: 2; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-right .ordinary-profile-copy { grid-column: 1; grid-row: 1; }

/* Ordinary score reports reuse the live S7-shaped projection slots, not its skin. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-bp-character-copy { min-width:0; grid-column:2; grid-row:1 / 3; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-right .ordinary-bp-character-copy { grid-column:1; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-bp-character-title,
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-bp-character-metrics { display:flex; align-items:baseline; flex-wrap:wrap; gap:5px 10px; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-bp-character-metrics { margin-top:12px; gap:8px 16px; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-bp-character-metrics > div { display:flex; align-items:baseline; gap:5px; white-space:nowrap; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-bp-character-copy span { font-size:clamp(12px,.85vw,16px); font-weight:400; color:var(--gsbp-ui-text-muted); }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-bp-character-copy b { font-size:clamp(17px,1.3vw,25px); font-weight:500; color:var(--gsbp-ui-text); font-variant-numeric:tabular-nums; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-right :is(.ordinary-bp-character-title,.ordinary-bp-character-metrics) { justify-content:flex-end; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-bp-character-active .ordinary-profile-avatar { border-radius:6px; object-fit:contain; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-bp-character-dimmed > * { opacity:.4; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-bp-character-highlighted {
    background: color-mix(in srgb, color-mix(in srgb, var(--gsbp-ui-surface-raised) 80%, var(--gsbp-ui-accent) 20%) 90%, transparent);
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-stats { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-top: 5px; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-stat { display: grid; gap: 2px; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-stat span { font-size: 10px; color: var(--gsbp-ui-text-muted); }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-stat b { font-size: clamp(12px,.9vw,17px); font-variant-numeric: tabular-nums; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-profile-panel .ordinary-profile-intro { -webkit-line-clamp: 1; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .gsbp-score-zone {
    position: absolute;
    inset: 0;
    z-index: 3;
    display: none;
    grid-template-columns: clamp(48px, 4vw, 76px) minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    padding: 8px 14px;
    box-sizing: border-box;
    color: var(--gsbp-ui-text);
    background: color-mix(in srgb, var(--gsbp-ui-surface) 70%, transparent);
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .gsbp-score-zone[aria-hidden="false"] { display: grid; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .ordinary-score-report-visible > :is(.timer-table, .score-summary) { visibility: hidden; pointer-events: none; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-avatar img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 50%; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-copy { min-width: 0; display: grid; gap: 6px; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-identity { display: flex; align-items: baseline; gap: 10px; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-identity > span,
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-metrics em,
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-prediction > span { font-size: clamp(11px, .8vw, 15px); color: var(--gsbp-ui-text-muted); font-style: normal; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-identity strong { font-size: clamp(16px, 1.15vw, 22px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-metrics > span { display: grid; gap: 2px; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-metrics b { font-size: clamp(17px, 1.35vw, 26px); font-variant-numeric: tabular-nums; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-metrics > span:last-child b { color: var(--gsbp-ui-accent); }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-prediction { display: flex; gap: 10px; align-items: baseline; min-height: 18px; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-prediction:not([data-prediction-visible="true"]) { visibility: hidden; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-prediction strong { font-size: clamp(12px, .95vw, 18px); white-space: pre-line; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .gsbp-score-zone-right { grid-template-columns: minmax(0, 1fr) clamp(48px, 4vw, 76px); text-align: right; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-right .gsbp-score-zone-avatar { grid-column: 2; grid-row: 1; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-right .gsbp-score-zone-copy { grid-column: 1; grid-row: 1; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .gsbp-score-zone-right :is(.gsbp-score-zone-identity, .gsbp-score-zone-prediction) { justify-content: flex-end; }

/* Ordinary score atoms: retain real table cells, data fields and input handlers.
 * S7 never loads this stylesheet. Players has no bottom-area/table targets.
 * Shared scoring and mode schemas remain authoritative; no second DOM copy. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area :is(.bottom-left, .bottom-right) {
    position: relative;
    padding: 0 5px;
    display: flex;
    flex-direction: column;
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .timer-table {
    --score-columns: 1.15fr repeat(3, 1fr) .8fr 1.1fr;
    --score-rule: color-mix(in srgb, var(--gsbp-ui-text) 9%, transparent);
    position: relative;
    display: grid;
    box-sizing: border-box;
    flex: 1;
    min-height: 0;
    grid-template-rows: 17px repeat(2, minmax(0, 1fr));
    gap: 0;
    padding-top: 0;
    border: 0;
    border-spacing: 0;
    color: var(--gsbp-ui-text);
    font-variant-numeric: tabular-nums;
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .timer-table:has(th:nth-child(9)) {
    --score-columns: 1.2fr repeat(3, 1fr) .8fr repeat(3, 1fr) .8fr;
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .timer-table :is(thead, tbody) { display: contents; }
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .timer-table tr {
    display: grid;
    grid-template-columns: var(--score-columns);
    min-width: 0;
    align-items: stretch;
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .timer-table :is(th, td) {
    box-sizing: border-box;
    display: grid;
    place-items: center;
    min-width: 0;
    width: auto;
    min-height: clamp(21px, 2.6vh, 29px);
    padding: 2px;
    margin: 0 2px;
    border: 0;
    background: transparent;
    box-shadow: none;
    text-shadow: none;
    color: var(--gsbp-ui-text);
    font-size: clamp(16px, 1.25vw, 24px);
    font-weight: 500;
    line-height: 1.25;
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .timer-table :is(th, td[data-score-field="attempt"]) {
    color: var(--gsbp-ui-text-muted);
    font-size: clamp(13px, .95vw, 18px);
    font-weight: 400;
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .timer-table thead tr::before {
    content: "";
    display: grid;
    place-items: center;
    color: var(--gsbp-ui-text-muted);
    font-size: clamp(13px, .95vw, 18px);
}
/* Compact labels; give the two editable result rows the available height. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .timer-table thead :is(th, tr::before) {
    min-height: 17px;
    padding-block: 0;
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .timer-table th[data-score-field="attempt"] {
    display: none;
    position: absolute;
    inset: 0 0 auto;
    min-height: 19px;
    justify-items: start;
    color: var(--gsbp-ui-text);
    font-size: clamp(13px, 1vw, 18px);
    font-weight: 600;
    overflow: hidden;
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .timer-table td:not([data-score-field="attempt"]) {
    border-bottom: 1px solid var(--score-rule);
}
/* The right competitor belongs to the outer right edge, not the central bridge. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .bottom-right .timer-table th[data-score-field="attempt"] {
    justify-items: end;
    text-align: right;
}
/* Keep a single quiet baseline per field instead of a dense two-row ruled grid. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .timer-table tbody tr:first-child td {
    border-bottom-color: transparent;
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .timer-table .total-cell {
    color: var(--gsbp-ui-accent);
    font-weight: 600;
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .timer-table .timer-cell:hover {
    background: color-mix(in srgb, var(--gsbp-ui-control-hover) 25%, transparent);
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .timer-table .timer-cell:focus {
    background: var(--gsbp-ui-control);
    outline: 2px solid var(--gsbp-ui-focus-ring);
    outline-offset: -2px;
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .score-summary {
    flex: none;
    margin-top: 4px;
    text-align: center;
    line-height: 1.4;
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .score-summary-label {
    color: var(--gsbp-ui-text-muted);
    font-weight: 400;
    font-size: clamp(10px, .75vw, 13px);
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .score-summary-value {
    color: var(--gsbp-ui-accent);
    font-size: clamp(11px, .8vw, 14px);
    font-variant-numeric: tabular-nums;
}
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .score-summary-final-label { margin-left: 8px; }

/* The proposal remains inside the existing right-top notice. It does not create
 * another toolbar or change the 10-second / keep-current behavior. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) #score-bp-notifications > .success-message:has(.score-bp-live-event-proposal) {
    background-color: var(--gsbp-ui-surface-raised);
    border-color: var(--gsbp-ui-border);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.score-bp-live-event-proposal,
    .score-bp-live-event-proposal-message) {
    color: var(--gsbp-ui-text);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .score-bp-live-event-proposal-button {
    background: var(--gsbp-ui-control);
    color: var(--gsbp-ui-text);
    border-color: var(--gsbp-ui-border);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .score-bp-live-event-proposal-button:hover {
    background: var(--gsbp-ui-control-hover);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .score-bp-live-event-proposal-button:focus-visible {
    outline: 2px solid var(--gsbp-ui-focus-ring);
    outline-offset: 2px;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .score-bp-live-event-proposal-button.adopt {
    background: var(--gsbp-ui-accent);
    color: var(--gsbp-ui-on-accent);
    border-color: var(--gsbp-ui-accent);
}

/* Lighter neutral inputs and borderless nine-button controls. Keep the existing
 * border width for layout; transparent paint removes the visible frame. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) :is(.editable-text, .editable-input,
    .match-type-select, .game-selector, .current-player-select, .score-number, .score-number input) {
    background: var(--gsbp-ui-neutral-fill);
    color: var(--gsbp-ui-text);
    border-color: transparent;
    box-shadow: none;
}

/* One translucent neutral surface for ordinary actions and stage readouts.
 * Accent is reserved for emphasis, not solid chips on dark canvases. Only the
 * background is translucent; glyphs keep their theme text color and opacity. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .left-area :is(.left-tool-button, .confirm-button),
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .score-broadcast-button,
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .top-right-area :is(.clock-display,
    .confirm-players-button, #openBPTool, #refereeButton),
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-ui-players :is(.clock-display,
    .confirm-button, .stream-button, .home-button) {
    background: var(--gsbp-ui-neutral-fill);
    color: var(--gsbp-ui-text);
    border-color: transparent;
    box-shadow: none;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.45);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .left-area :is(.left-tool-button, .confirm-button):not(:disabled):hover,
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .score-broadcast-button:not(:disabled):hover,
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .top-right-area :is(.confirm-players-button,
    #openBPTool, #refereeButton):not(:disabled):hover,
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-ui-players :is(.confirm-button,
    .stream-button, .home-button):not(:disabled):hover {
    background: var(--gsbp-ui-neutral-hover);
    color: var(--gsbp-ui-text);
    border-color: transparent;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .left-area :is(.left-tool-button, .confirm-button):not(:disabled):active,
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-area .score-broadcast-button:not(:disabled):active,
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .top-right-area :is(.confirm-players-button,
    #openBPTool, #refereeButton):not(:disabled):active,
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-ui-players :is(.confirm-button,
    .stream-button, .home-button):not(:disabled):active {
    background: var(--gsbp-ui-neutral-active);
    color: var(--gsbp-ui-text);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .bottom-center .score-number:not(:disabled):hover {
    background: color-mix(in srgb, var(--gsbp-ui-control-soft) 35%, transparent);
}

/* User-requested layout change is limited to this three-action row. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .scoreboard-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: 100%;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .scoreboard-actions :is(.clear-timer-button, .match-actions-menu) {
    width: 100%;
    min-width: 0;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .scoreboard-actions .clear-timer-button {
    background: transparent;
    border-color: transparent;
    color: var(--gsbp-ui-text);
    box-shadow: none;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .scoreboard-actions .clear-timer-button:not(:disabled):hover {
    background: color-mix(in srgb, var(--gsbp-ui-text) 10%, transparent);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .scoreboard-actions .clear-timer-button:not(:disabled):active {
    background: color-mix(in srgb, var(--gsbp-ui-text) 15%, transparent);
}

/* Main-stage selection surfaces are clear; the opened native option list keeps
 * an opaque themed surface for legibility. Focus is still explicitly visible. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui) .top-right-area select {
    background: transparent;
    border-color: transparent;
    color: var(--gsbp-ui-text);
    box-shadow: none;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.55);
}

/* The BP view can have a translucent root. Hide only the covered card-view
 * content while the existing BP-open state is active; keep the frame, loading
 * status and parent refresh/close toolbar available. No BP/data reset here. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-bp-tool-open .top-right-area > :is(.match-name-display, .bo-info-display, .vs-display),
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-bp-tool-open .top-right-area .bp-tool-container > :is(.player-selects-container, .clock-display, .bp-tool-button) {
    visibility: hidden;
}

/* Cards use transition: all in the base skin. Do not animate inherited
 * visibility after the overlay opens; the untouched card transition returns
 * as soon as BP closes. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-bp-tool-open .player-selects-container > .player-card {
    visibility: hidden;
    transition: none;
}

/* Only the same-origin players scene owned by this ordinary themed scoreboard
 * receives this marker. Standalone players, S7 and embedded live video do not. */
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-players-open .top-right-area > :is(.match-name-display, .bo-info-display, .vs-display),
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-players-open .bp-tool-container > :is(.player-selects-container, .clock-display, .bp-tool-button, #bpToolIframe, #stageContentContainer, #bpLoadingStatus) {
    visibility: hidden;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-ui-players,
html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-ui-players :is(
    .scoreboard-container, .main-content-area, .dropdown-container) {
    background: transparent;
    box-shadow: none;
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-ui-players body {
    background: color-mix(in srgb, var(--gsbp-ui-surface) 50%, transparent);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-ui-players :is(.team-select, .player-select) {
    background: transparent;
    color: var(--gsbp-ui-text);
    border-color: transparent;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.55);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-ui-players :is(.team-select, .player-select) option {
    background: var(--gsbp-ui-surface-raised);
    color: var(--gsbp-ui-text);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-ui-players :is(.countdown-modal-content,
    .countdown-custom-option) {
    background: var(--gsbp-ui-surface-raised);
    color: var(--gsbp-ui-text);
    border-color: var(--gsbp-ui-border);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-ui-players :is(.countdown-option,
    .countdown-custom-start, .countdown-custom-minutes) {
    background: var(--gsbp-ui-control-soft);
    color: var(--gsbp-ui-text);
    border-color: var(--gsbp-ui-border);
}

html:is([data-score-bp-appearance="ordinary"], .gsbp-ui-appearance):not(.gsbp-electron-broadcast-ui).gsbp-ui-players :is(.team-select, .player-select,
    .confirm-button, .stream-button, .home-button, .countdown-option, .countdown-custom-start,
    .countdown-custom-minutes):focus-visible {
    outline: 2px solid var(--gsbp-ui-focus-ring);
    outline-offset: 2px;
}
