/* OrangeDemo Nextgen: shared tool primitives and the first LEV reconstruction. */
.od-tool-shell,
.calculadora-favor-container,
.calculadora-lev-container,
.lev-comparator-page,
.favor-comparator-page {
    font-family: var(--ng-font);
    color: var(--ng-text);
}

/* Scanner roots contain a nested Bootstrap my-5 utility; keep its top edge aligned with the global page rhythm. */
:is(.lev-comparator-page, .favor-comparator-page) > .od-tool-container-global-1.my-5 {
    margin-top: 16px !important;
}

@media (max-width: 640px) {
    :is(.lev-comparator-page, .favor-comparator-page) > .od-tool-container-global-1.my-5 {
        margin-top: 8px !important;
    }
}

.od-tool-shell :is(button, input, select, textarea),
.calculadora-favor-container :is(button, input, select, textarea),
.calculadora-lev-container :is(button, input, select, textarea),
.lev-comparator-page :is(button, input, select, textarea),
.favor-comparator-page :is(button, input, select, textarea) {
    font-family: inherit;
}

.od-button-global-1 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 36px;
    padding: 0 13px;
    border: var(--ng-border-width) solid var(--ng-global-11);
    border-radius: var(--ng-radius-sm);
    background: var(--ng-global-12);
    color: var(--ng-text-on-global-12);
    font-size: 14px;
    font-weight: var(--ng-weight-semibold);
}

.od-button-global-1:hover,
.od-button-global-1:focus-visible {
    background: var(--ng-global-4);
    color: var(--ng-text-on-global-4);
    outline: 0;
}

.od-button-global-1:disabled {
    cursor: not-allowed;
    opacity: .55;
}

.od-button-global-1.od-button-icon {
    width: 34px;
    height: 34px;
    padding: 0;
}

/* Global Modal 1: Global 2 supplies the adaptable light/dark surface. */
.od-modal-global-1 {
    position: fixed;
    z-index: 1200;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 20px;
    background: rgba(0, 20, 13, .58);
}

.od-modal-global-1__dialog {
    position: relative;
    width: min(840px, 100%);
    padding: 22px 20px 18px;
    border: var(--ng-border-width) solid var(--ng-global-11);
    border-radius: var(--ng-radius-md);
    background: var(--ng-global-2);
    color: var(--ng-text);
    box-shadow: var(--ng-shadow);
}

.od-modal-global-1__close { position: absolute; top: 16px; right: 16px; }
.od-modal-global-1__title { display: flex; align-items: center; gap: 10px; margin: 0 48px 18px 0; color: var(--ng-text); font-size: 27px; font-weight: var(--ng-weight-medium); }
.od-modal-global-1__title > i { color: var(--ng-global-10); }
.od-modal-global-1__fields { display: grid; gap: 12px; }
.od-modal-global-1__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 12px; }
.od-modal-global-1__grid--three { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(150px, .7fr); }
.od-modal-global-1__field { display: grid; gap: 6px; }
.od-modal-global-1__field > label { color: var(--ng-text); font-weight: var(--ng-weight-medium); }
.od-modal-global-1__paired-inputs { display: grid; grid-template-columns: minmax(0, 1fr) minmax(92px, .58fr); gap: 8px; }
.od-modal-global-1__error { margin: 12px 0 0; color: #ef4444; }
.od-modal-global-1__actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 16px; }
.od-modal-global-1__cancel { border-color: var(--ng-global-7); background: transparent; color: var(--ng-text); }
.od-modal-global-1__cancel:hover,
.od-modal-global-1__cancel:focus-visible { background: var(--ng-global-4); color: var(--ng-text-on-global-4); }
.od-modal-global-1__scroll { display: grid; gap: 12px; min-height: 0; margin-top: 12px; }
.od-modal-global-1__scroll .filter-panel { display: grid; gap: 12px; }
.od-modal-global-1__scroll .filter-card { display: grid; gap: 10px; padding: 12px; border: var(--ng-border-width) solid var(--ng-border-subtle); border-radius: var(--ng-radius-sm); background: var(--ng-global-5); }
.od-modal-global-1__scroll .filter-card-header { display: flex; align-items: center; gap: 8px; font-weight: var(--ng-weight-semibold); }
.od-modal-global-1__scroll .filter-card-header .od-badge-global-1 { margin-inline-start: auto; }
.od-modal-global-1__scroll .filter-card-header .od-selection-count-global-1 { margin-inline-start: auto; }
.od-modal-global-1__scroll .filter-card-body { display: grid; gap: 8px; max-height: 280px; overflow: auto; }
.od-modal-global-1__scroll .form-check { display: flex; align-items: center; min-width: 0; }
.od-modal-global-1__scroll .bettype-field { display: grid; gap: 6px; }
.od-modal-global-1__scroll .bettype-label,
.od-modal-global-1__scroll .filter-title { margin: 0; color: var(--ng-text); font-weight: var(--ng-weight-semibold); }

@media (max-width: 991px) {
    .od-modal-global-1--mobile-sheet {
        align-items: start;
        padding: 3px;
        overflow-y: auto;
    }

    .od-modal-global-1__dialog--mobile-sheet {
        width: 100%;
        padding: 3px;
        max-height: calc(100dvh - 6px);
        min-height: 0;
        overflow-y: auto;
    }

    .od-modal-global-1__dialog--mobile-sheet .od-modal-global-1__scroll {
        max-height: min(62dvh, 620px);
        overflow-y: auto;
        padding-inline-end: 2px;
    }

    .od-modal-global-1__close--pinned {
        z-index: 2;
        top: 7px;
        inset-inline-end: 7px;
    }

    .od-modal-global-1__mobile-action .od-button-global-1 {
        width: 100%;
    }
}

/* Multiples editor: a large instance of Global Modal 1 and Global Table 1. */
.od-multiple-modal { align-items: start; padding-top: 66px; overflow: auto; }
.od-multiple-modal__dialog { width: min(1460px, 100%); max-height: calc(100vh - 40px); padding: 0; overflow: hidden; }
.od-multiple-modal__header { position: relative; min-height: 64px; display: flex; align-items: center; padding: 14px 70px 14px 18px; border-bottom: var(--ng-border-width) solid var(--ng-global-11); }
.od-multiple-modal__header .od-modal-global-1__title { margin: 0; font-size: 18px; }
.od-multiple-modal__body { max-height: calc(100vh - 104px); padding: 16px; overflow: auto; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multi-panel { padding: 14px; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multi-label { display: block; margin-bottom: 5px; color: var(--ng-text); font-size: 13px; font-weight: var(--ng-weight-medium); }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multi-money-field { padding-right: 8px; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multi-input { min-width: 0; }
:is(.od-multiple-modal__body, .multiplicador-page-container) :is(.metric-chip, .multi-rating-badge) { display: flex; align-items: center; min-height: 36px; padding: 7px 10px; border-radius: var(--ng-radius-sm); background: var(--ng-global-5); color: var(--ng-text); font-size: 17px; font-weight: var(--ng-weight-medium); }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multi-inline-toggle { display: inline-flex; align-items: center; gap: 7px; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .table-wrap { overflow-x: auto; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multiple-editor-table { min-width: 1160px; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multiple-editor-table :is(th, td) { padding: 9px 10px; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multiple-editor-table th:nth-child(1) { width: 15%; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multiple-editor-table th:nth-child(2) { width: 19%; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multiple-editor-table th:nth-child(3) { width: 11%; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multiple-editor-table th:nth-child(4) { width: 6%; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multiple-editor-table th:nth-child(5),
:is(.od-multiple-modal__body, .multiplicador-page-container) .multiple-editor-table th:nth-child(6) { width: 20%; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multiple-editor-table th:nth-child(7) { width: 7%; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multiple-editor-table th:nth-child(8) { width: 4%; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multiple-editor-table :is(input, select) { max-width: 100%; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .favor-cell { display: grid; grid-template-columns: minmax(0, 1fr) 96px; gap: 8px; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multi-house-link { display: inline-flex; gap: 6px; margin-top: 5px; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multiple-investment-text { color: var(--ng-text); font-size: 16px; font-weight: var(--ng-weight-medium); }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multi-actions { gap: 10px; flex-wrap: wrap; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multi-actions :is(.text-end, > div) { display: flex; gap: 8px; flex-wrap: wrap; }
:is(.od-multiple-modal__body, .multiplicador-page-container) .multi-actions .text-end { justify-content: flex-end; }

/* Multiplicador standalone renders one representation per breakpoint. */
.multiplicador-page-container .mobile-only { display: none; }

/* The standalone editor needs the same working width as Favor's embedded modal;
   Bootstrap's default .container was narrower than the 1160px editor table. */
@media (min-width: 768px) {
    .multiplicador-page-container > .container {
        width: min(1460px, calc(100% - 48px));
        max-width: none;
    }
}

@media (max-width: 767px) {
    .od-multiple-modal__dialog { max-height: none; }
    .od-multiple-modal__body { max-height: none; padding: 12px; }
    .od-multiple-modal__body .desktop-only { display: none; }
    .od-multiple-modal__body .mobile-only { display: block; }
    .multiplicador-page-container .desktop-only { display: none; }
    .multiplicador-page-container .mobile-only { display: block; }

    .od-multiple-modal.od-modal-global-1--mobile-sheet { padding: 3px; }
    .od-multiple-modal .od-multiple-modal__dialog.od-modal-global-1__dialog--mobile-sheet { width: 100%; max-height: calc(100dvh - 6px); padding: 0; overflow-y: auto; }
    .od-multiple-modal .od-multiple-modal__header { position: sticky; z-index: 2; top: 0; background: var(--ng-global-2); }
    .od-multiple-modal .od-multiple-modal__body { max-height: none; padding: 12px; overflow: visible; }
    :is(.od-multiple-modal__body, .multiplicador-page-container) .mobile-only { display: grid; gap: 12px; padding: 0 !important; }
    :is(.od-multiple-modal__body, .multiplicador-page-container) .mobile-field { display: grid; gap: 5px; }
    :is(.od-multiple-modal__body, .multiplicador-page-container) .mobile-two { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(92px, .75fr); gap: 8px; }
    :is(.od-multiple-modal__body, .multiplicador-page-container) .mobile-metrics { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 10px; }
    :is(.od-multiple-modal__body, .multiplicador-page-container) .mobile-actions-inline { display: flex; align-items: end; gap: 8px; }
    :is(.od-multiple-modal__body, .multiplicador-page-container) .mobile-action-lock { display: grid; gap: 4px; justify-items: end; }
}

@media (min-width: 768px) {
    .od-multiple-modal__body .mobile-only { display: none; }
}

@media (max-width: 575px) {
    .od-modal-global-1 { padding: 12px; }
    .od-modal-global-1__dialog { padding: 18px 14px 14px; }
    .od-modal-global-1__title { font-size: 22px; }
    .od-modal-global-1__grid,
    .od-modal-global-1__grid--three { grid-template-columns: 1fr; }
}

.od-link-global-1 {
    color: var(--od-link-color, var(--ng-text));
    font-weight: var(--ng-weight-semibold);
    text-decoration: none;
}

.od-link-global-1:hover,
.od-link-global-1:focus-visible {
    color: var(--od-link-color, var(--ng-text));
    text-decoration: underline;
    text-underline-offset: 2px;
}

.od-copy-global-1 {
    display: inline-grid;
    width: 20px;
    height: 20px;
    flex: 0 0 auto;
    padding: 0;
    place-items: center;
    border: 0;
    border-radius: var(--ng-radius-sm);
    background: transparent;
    color: var(--ng-global-10);
    font-size: 14px;
}

.od-copy-global-1:hover,
.od-copy-global-1:focus-visible {
    background: var(--ng-global-3);
    color: var(--ng-global-10);
    outline: 0;
}

/* Global Switch 1: the boolean control used by LEV FREE and REE states. */
.od-switch-global-1 {
    position: relative;
    display: inline-flex;
    width: 40px;
    height: 22px;
    flex: 0 0 auto;
    cursor: pointer;
}

.od-switch-global-1 > input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
}

.od-switch-global-1 > span {
    width: 100%;
    height: 100%;
    border: var(--ng-border-width) solid var(--ng-global-11);
    border-radius: 999px;
    background: var(--ng-global-5);
    transition: background .16s ease, border-color .16s ease;
}

.od-switch-global-1 > span::after {
    display: block;
    width: 16px;
    height: 16px;
    margin: 2px;
    border-radius: 50%;
    background: var(--ng-global-2);
    content: "";
    transition: transform .16s ease;
}

.od-switch-global-1 > input:checked + span {
    border-color: var(--ng-global-7);
    background: var(--ng-global-7);
}

.od-switch-global-1 > input:checked + span::after {
    transform: translateX(18px);
}

.od-switch-global-1 > input:focus-visible + span {
    outline: var(--ng-border-width) solid var(--ng-global-7);
    outline-offset: 2px;
}

/* Global Checkbox 1: native semantics with the same focus and active palette as inputs. */
.od-checkbox-global-1 {
    appearance: none;
    width: 16px;
    height: 16px;
    margin: 0;
    border: var(--ng-border-width) solid var(--ng-input-border);
    border-radius: 3px;
    background: var(--ng-control);
    cursor: pointer;
}

.od-checkbox-global-1:checked {
    border-color: var(--ng-global-7);
    background: var(--ng-global-7);
}

.od-checkbox-global-1:checked::after {
    content: '';
    display: block;
    width: 4px;
    height: 8px;
    margin: 1px auto 0;
    border: solid var(--ng-text-on-global-7);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.od-checkbox-global-1:focus-visible {
    outline: var(--ng-border-width) solid var(--ng-global-7);
    outline-offset: 2px;
}

.od-tool-shell :is(input, select, textarea),
.calculadora-favor-container :is(input, select, textarea),
.calculadora-lev-container :is(input, select, textarea) {
    min-height: 40px;
    border: var(--ng-border-width) solid var(--ng-input-border);
    border-radius: var(--ng-radius-sm);
    background: var(--ng-control);
    color: var(--ng-input-text);
    outline: 0;
}

.od-tool-shell :is(input, select, textarea):focus,
.calculadora-favor-container :is(input, select, textarea):focus,
.calculadora-lev-container :is(input, select, textarea):focus {
    border-color: var(--ng-global-7);
}

.od-rating-badge,
.score-detail-rating-badge {
    color: var(--ng-global-10);
    font-weight: var(--ng-weight-semibold);
}

/* Calculadora PA: composition only; its surfaces and controls are Nextgen globals. */
.pa-shell { color: var(--ng-text); }
.pa-panel { min-width: 0; }
.pa-card { display: grid; gap: 14px; min-width: 0; }
.pa-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.pa-title-wrap { display: flex; align-items: center; gap: 12px; min-width: 0; }
.pa-title { margin: 0; color: var(--ng-text); font-size: 22px; font-weight: var(--ng-weight-medium); }
.pa-line { width: 48px; height: var(--ng-border-width); background: var(--ng-global-7); }
.pa-header-actions,
.pa-actions-inline { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.pa-header-actions { justify-content: flex-end; }
.pa-event-grid,
.pa-top-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.pa-label { display: block; margin: 0 0 6px; color: var(--ng-text); font-size: 13px; font-weight: var(--ng-weight-medium); }
.pa-small-note { display: block; margin-top: 5px; color: var(--ng-text-muted); }
.pa-usage-box { display: flex; justify-content: space-between; gap: 12px; padding: 12px 14px; border: var(--ng-border-width) solid var(--ng-global-11); border-radius: var(--ng-radius-sm); background: var(--ng-global-1); color: var(--ng-text-on-global-1); }
.pa-usage-box strong { font-weight: var(--ng-weight-semibold); }
.pa-table-wrap { overflow-x: auto; }
.pa-table-wrap.od-scrollbar-global-1 { padding-bottom: 2px; }
.pa-calculator-table { min-width: 760px; }
.pa-calculator-table .pa-col-index { width: 46px; }
.pa-calculator-table .pa-col-percent { width: 42%; }
.pa-calculator-table .pa-col-odd { width: 15%; }
.pa-calculator-table .pa-col-money { width: 14%; }
.pa-row-number { text-align: center !important; font-weight: var(--ng-weight-semibold); }
.pa-cuota { max-width: 130px; }
.pa-money,
.pa-reinvestment,
.pa-profit { font-weight: var(--ng-weight-medium); white-space: nowrap; }
.pa-profit,
.is-profit { color: var(--ng-global-10); }
.pa-loss { color: var(--ng-text); }
.pa-slider-wrap { display: grid; gap: 7px; min-width: 220px; }
.pa-slider-wrap small { color: var(--ng-text-muted); font-size: 13px; }
.pa-range-stack { position: relative; display: grid; align-items: center; }
.pa-range-stack input[type="range"] { position: relative; z-index: 1; width: 100%; margin: 0; accent-color: var(--ng-global-7); }
.pa-slider-beam { position: absolute; inset-inline-start: 0; top: 50%; z-index: 0; width: var(--pa-slider-progress, 0%); height: 4px; transform: translateY(-50%); border-radius: 999px; background: var(--ng-global-7); }
.pa-slider-value { display: grid; place-items: center; width: 34px; min-height: 24px; border-radius: var(--ng-radius-sm); background: var(--ng-global-7); color: var(--ng-text-on-global-7); font-size: 13px; font-weight: var(--ng-weight-semibold); }
.pa-slider-grid { display: none; }
.pa-summary,
.pa-saved-stats { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.pa-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pa-summary-card { display: grid; align-content: center; gap: 6px; min-height: 88px; padding: 12px; }
.pa-summary-card > span { font-size: 14px; }
.pa-summary-card strong { font-size: 18px; font-weight: var(--ng-weight-semibold); }
.pa-summary-card .pa-rating-badge { justify-self: center; font-size: 18px; }
.pa-status-text { font-size: 13px; font-weight: var(--ng-weight-medium); white-space: nowrap; }
.pa-saved-table td :is(strong, small) { display: block; }
.pa-saved-table td small { margin-top: 3px; color: var(--ng-text-muted); }
.pa-saved-table tbody tr.od-clickable-row { cursor: pointer; }
.pa-saved-mobile { display: none; }

/* Calculadora de Eventos: structural layout around shared Nextgen components. */
.eventcalc-shell { color: var(--ng-text); }
.eventcalc-panel { min-width: 0; }
.eventcalc-toolbar { display: flex; align-items: center; gap: 10px; }
.eventcalc-tabs { width: 30%; min-width: 0; flex: 0 1 30%; margin-inline-end: auto; }
.eventcalc-event-count { display: grid; grid-template-columns: auto 72px; align-items: center; gap: 7px; margin: 0; color: var(--ng-text); font-size: 13px; font-weight: var(--ng-weight-medium); white-space: nowrap; }
.eventcalc-event-count .od-input-global-1 { min-height: 36px; text-align: center; }
.eventcalc-tracker-btn { white-space: nowrap; }
.eventcalc-title-rating { font-size: 20px; font-weight: var(--ng-weight-medium); }
.eventcalc-table-wrap { overflow-x: auto; }
.eventcalc-table { min-width: 880px; }
.eventcalc-table :is(th, td) { padding: 9px 10px; }
.eventcalc-table th:nth-child(1) { width: 17%; }
.eventcalc-table th:nth-child(2) { width: 23%; }
.eventcalc-table th:nth-child(3) { width: 10%; }
.eventcalc-table th:nth-child(4) { width: 16%; }
.eventcalc-table th:nth-child(5) { width: 12%; }
.eventcalc-table th:nth-child(6),
.eventcalc-table th:nth-child(7),
.eventcalc-table th:nth-child(8) { width: 11%; }
.eventcalc-marker-cell { text-align: center !important; }
.eventcalc-marker-cell .od-switch-global-1 { vertical-align: middle; }
.eventcalc-money,
.eventcalc-total { white-space: nowrap; font-weight: var(--ng-weight-medium); }
.eventcalc-net-pos { color: var(--ng-global-10); }
.eventcalc-net-neg { color: #ff5b5b; }
.eventcalc-table tfoot td { background: var(--ng-global-5); }
.eventcalc-mobile { display: none; }

@media (max-width: 767px) {
    .eventcalc-shell .desktop-only { display: none; }
    .eventcalc-shell .mobile-only,
    .eventcalc-mobile { display: grid; gap: 10px; }
    .eventcalc-toolbar { display: grid; grid-template-columns: 1fr; align-items: stretch; }
    .eventcalc-tabs { width: 100%; flex-basis: auto; margin-inline-end: 0; }
    .eventcalc-event-count { grid-template-columns: minmax(0, 1fr) 72px; width: 100%; }
    .eventcalc-tracker-btn { justify-self: stretch; width: 100%; justify-content: center; }
    .eventcalc-mobile-card { min-width: 0; }
    .eventcalc-mobile-field { display: grid; gap: 5px; color: var(--ng-text); font-size: 13px; font-weight: var(--ng-weight-medium); }
    .eventcalc-mobile-line { display: grid; grid-template-columns: minmax(0, 1fr) minmax(130px, .8fr); align-items: center; gap: 10px; }
    .eventcalc-mobile-line > :last-child { justify-self: end; }
    .eventcalc-mobile-line > :is(.od-input-global-1, .od-input-shell-global-1) { width: 100%; }
    .eventcalc-mobile-summary { width: 100%; }
}

@media (max-width: 767px) {
    .pa-shell .desktop-only { display: none; }
    .pa-shell .mobile-only,
    .pa-saved-mobile { display: grid; gap: 10px; }
    .pa-header { align-items: flex-start; flex-direction: column; }
    .pa-header-actions { width: 100%; justify-content: flex-start; }
    .pa-event-grid,
    .pa-top-grid,
    .pa-summary { grid-template-columns: 1fr; }
    .pa-saved-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .pa-saved-stats > :last-child { grid-column: 1 / -1; }
    .pa-saved-mobile-card { display: grid; gap: 8px; padding: 12px; border-radius: var(--ng-radius-sm); background: var(--ng-global-5); }
    .mobile-card-head,
    .mobile-row { display: flex; justify-content: space-between; gap: 10px; }
}

@media (max-width: 991px) {
    .pa-calculator-table-wrap {
        overflow: visible;
    }

    .pa-calculator-table {
        width: 100%;
        min-width: 0;
    }

    .pa-calculator-table colgroup {
        display: none;
    }

    .pa-calculator-table tbody > tr.pa-closure-row > td:first-child {
        display: none;
    }

    .pa-calculator-table tbody > tr.pa-closure-row > td:nth-child(2),
    .pa-calculator-table tbody > tr.pa-closure-row > td:nth-child(3),
    .pa-calculator-table tbody > tr.pa-closure-row > td:nth-child(4),
    .pa-calculator-table tbody > tr.pa-closure-row > td:nth-child(5),
    .pa-calculator-table tbody > tr.pa-closure-row > td:last-child {
        grid-column: 1 / -1;
    }

    .pa-calculator-table tbody > tr.pa-closure-row > td:nth-child(2) {
        border-top: 0;
    }

    .pa-calculator-table .pa-slider-wrap,
    .pa-calculator-table .pa-cuota {
        width: 100%;
        max-width: none;
        min-width: 0;
    }
}

/* LEV desktop comparator, reconstructed from the current dark contract. */
.lev-comparator-page {
    width: min(100% - 32px, var(--ng-page-max));
    margin-inline: auto;
}

.lev-desktop-split {
    display: grid;
    grid-template-columns: 292px minmax(420px, 1fr) minmax(500px, 1.15fr);
    gap: 14px;
    align-items: stretch;
}

.lev-config-panel,
.lev-live-list-panel,
.lev-inline-calculator-panel {
    min-width: 0;
    border: var(--ng-border-width) solid var(--ng-input-border);
    border-radius: var(--ng-radius-md);
    background: var(--ng-surface-1);
}

.lev-config-panel {
    padding: 14px;
}

.lev-live-list-panel {
    overflow: hidden;
}

.lev-live-list {
    max-height: calc(100vh - 176px);
    overflow: auto;
}

.lev-live-row {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 8px 12px;
    width: 100%;
    padding: 12px;
    border: 0;
    border-bottom: var(--ng-border-width) solid var(--ng-border-subtle);
    background: var(--ng-surface-1);
    color: var(--ng-input-text);
    text-align: left;
}

.lev-live-row:hover,
.lev-live-row.is-active {
    background: var(--ng-surface-2);
}

.lev-live-row-title {
    color: var(--ng-accent-strong);
    font-size: 16px;
    font-weight: var(--ng-weight-medium);
}

.lev-live-row-meta {
    grid-column: 1 / -1;
    color: var(--ng-text);
    font-size: 13px;
}

.lev-live-row-rating {
    align-self: start;
    font-size: 22px;
}

.lev-live-markets {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.lev-live-market {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 4px 10px;
    min-height: 66px;
    padding: 9px;
    border-radius: var(--ng-radius-sm);
    background: var(--ng-surface-2);
}

.lev-live-market-label {
    grid-column: 1 / -1;
    color: var(--ng-accent-warm);
    text-align: center;
    font-weight: var(--ng-weight-medium);
}

.lev-live-market-bookmaker,
.lev-live-market-copy {
    min-width: 0;
    color: var(--ng-text);
}

.lev-live-odd-wrap {
    align-self: end;
    color: var(--ng-text);
    font-size: 17px;
    font-weight: var(--ng-weight-semibold);
}

.lev-inline-calculator-panel {
    min-height: 720px;
    padding: 14px;
}

.lev-inline-empty {
    display: grid;
    min-height: 560px;
    place-items: center;
    align-content: center;
    gap: 14px;
    color: var(--ng-text-on-global-12);
}

.lev-inline-empty > i { color: var(--ng-global-13); font-size: 28px; }
.lev-inline-empty > :is(h3, p) { margin: 0; }

.lev-desktop-selection-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.lev-desktop-selection-card { display: grid; gap: 7px; min-width: 0; padding: 12px; }
.lev-desktop-selection-card > div, .lev-desktop-selection-card footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.lev-desktop-selection-card > div > span { color: var(--ng-text-muted); font-size: 13px; font-weight: var(--ng-weight-semibold); }
.lev-desktop-selection-card a { color: var(--ng-global-13); font-size: 13px; font-weight: var(--ng-weight-semibold); white-space: nowrap; }
.lev-desktop-selection-card > strong { min-height: 22px; overflow: hidden; color: var(--ng-text); font-size: 16px; font-weight: var(--ng-weight-semibold); text-overflow: ellipsis; white-space: nowrap; }
.lev-desktop-selection-card footer > a { overflow: hidden; color: var(--ng-global-13); text-overflow: ellipsis; white-space: nowrap; }
.lev-desktop-selection-card footer > b { flex: 0 0 auto; color: var(--ng-text); font-size: 17px; }
@media (max-width: 991px) { .lev-desktop-selection-cards { display: none; } }

@media (max-width: 1199px) {
    .lev-desktop-split {
        grid-template-columns: 250px minmax(360px, 1fr);
    }

    .lev-inline-calculator-panel {
        grid-column: 1 / -1;
        min-height: 440px;
    }
}

@media (max-width: 991px) {
    .lev-comparator-page {
        width: min(100% - 24px, var(--ng-page-max));
    }

    .lev-live-markets {
        grid-template-columns: 1fr;
    }
}

/* LEV uses the same scanner shell and Global components as Favor. */
.lev-comparator-page {
    width: 100%;
}


.lev-comparator-page .top-toolbar {
    display: grid;
    grid-template-columns: var(--ng-scanner-config-col) var(--ng-scanner-list-col) minmax(0, 1fr);
    align-items: center;
    gap: var(--ng-scanner-gap);
    margin-bottom: 18px;
}

.lev-comparator-page .scanner-page-badge {
    grid-column: 1;
    width: 100%;
    color: var(--ng-accent-warm);
    font-size: 24px;
    font-weight: var(--ng-weight-medium);
    line-height: 1.05;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
}

.lev-comparator-page .top-toolbar-right {
    display: contents;
}

.lev-comparator-page .top-toolbar-right .top-toolbar-left {
    grid-column: 2;
    justify-content: flex-end;
    justify-self: end;
    width: auto;
    margin-left: auto;
}

.lev-comparator-page .search-toolbar {
    grid-column: 3;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    width: 100%;
}

.lev-comparator-page .search-toolbar-input,
.lev-comparator-page .search-toolbar-input .form-control {
    width: 100%;
    min-width: 0;
}

.lev-desktop-split {
    grid-template-columns: var(--ng-scanner-config-col) var(--ng-scanner-list-col) minmax(0, 1fr);
    gap: var(--ng-scanner-gap);
    height: var(--ng-scanner-panel-height);
    min-height: 560px;
    align-items: start;
}

.lev-config-panel {
    height: 100%;
    overflow: auto;
    padding: 14px;
}

.lev-live-list-panel {
    display: flex;
    flex-direction: column;
    position: relative;
    height: 100%;
    overflow: hidden;
}

.lev-list-loading-overlay {
    position: absolute;
    z-index: 8;
    inset: 0;
    display: grid;
    place-items: center;
    align-items: center;
    justify-content: center;
    background: color-mix(in srgb, var(--ng-global-2) 54%, transparent);
    color: var(--ng-global-13);
    font-weight: var(--ng-weight-semibold);
    backdrop-filter: blur(5px);
}

.lev-list-loading-overlay > span { color: var(--ng-global-13); }

.lev-live-list {
    flex: 1;
    min-height: 0;
    max-height: none;
    overflow: auto;
}

.lev-live-row {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px 12px;
    width: 100%;
    padding: 11px;
    border: 0;
    border-bottom: var(--ng-border-width) solid var(--ng-border-subtle);
    background: var(--ng-global-2);
    color: var(--ng-text);
}

.lev-live-row:hover,
.lev-live-row.is-active {
    background: var(--ng-global-8);
}

.lev-live-row-title {
    color: var(--ng-accent-warm);
    font-size: 16px;
    font-weight: var(--ng-weight-medium);
}

.lev-live-row-meta {
    color: var(--ng-text);
    font-size: 13px;
}

.lev-live-row-rating {
    color: var(--ng-global-10);
    font-size: 22px;
    font-weight: var(--ng-weight-medium);
}

.lev-live-markets {
    gap: 10px;
}

.lev-live-market {
    min-height: 76px;
    padding: 10px;
    border-radius: var(--ng-radius-sm);
    background: var(--ng-global-6);
}

.lev-live-market-preferred {
    background: var(--ng-global-8);
}

.lev-principal-option {
    width: 100%;
    min-height: 34px;
    padding: 7px 10px;
    border: var(--ng-border-width) solid var(--ng-global-11);
    border-radius: var(--ng-radius-sm);
    background: var(--ng-global-5);
    color: var(--ng-text);
    font: inherit;
    text-align: start;
}

.lev-principal-option:hover,
.lev-principal-option:focus-visible {
    background: var(--ng-global-9);
    color: var(--ng-text-on-global-9);
    outline: 0;
}

.lev-principal-option.is-active {
    border-color: var(--ng-global-15);
    background: var(--ng-global-15);
    color: var(--ng-text-on-global-15);
}

.lev-live-row:hover .lev-live-market {
    background: var(--ng-global-9);
}

.lev-live-row:is(:hover, .is-active) .lev-live-market.lev-live-market-preferred {
    background: var(--ng-global-14);
}

.lev-live-market-label {
    color: var(--ng-accent-warm);
    font-size: 15px;
    font-weight: var(--ng-weight-medium);
}

.lev-live-market-bookmaker,
.lev-live-market-copy,
.lev-live-odd-wrap {
    color: var(--ng-text);
}

.lev-live-odd-wrap {
    font-size: 19px;
    font-weight: var(--ng-weight-medium);
}

.lev-live-list-footer {
    position: sticky;
    z-index: 2;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px;
    border-top: var(--ng-border-width) solid var(--ng-border-subtle);
    background: var(--ng-global-1);
    color: var(--ng-text-on-global-1);
}

.lev-inline-calculator-panel {
    min-height: 0;
    height: 100%;
    padding: 14px;
}

.lev-inline-calculator-shell {
    display: grid;
    gap: 14px;
}

.lev-inline-event-head {
    display: grid;
    grid-template-columns: minmax(210px, .85fr) minmax(0, 2.15fr);
    grid-template-areas: "identity main" "rating action";
    gap: 12px;
    padding: 12px;
    border-radius: var(--ng-radius-md);
    background: var(--ng-global-4);
    color: var(--ng-text-on-global-4);
    --ng-text-muted: var(--ng-text-on-global-4);
}

.lev-inline-sport-block { grid-area: identity; display: flex; gap: 10px; }
.lev-inline-event-main { grid-area: main; min-width: 0; }
.lev-inline-event-main > :first-child { display: block; color: var(--ng-text-muted); font-size: 14px; }
.lev-inline-event-main h2 { margin: 2px 0 0; color: inherit; font-size: 19px; font-weight: var(--ng-weight-medium); }
.lev-inline-rating { grid-area: rating; align-self: end; color: var(--ng-global-10); font-size: 22px; font-weight: var(--ng-weight-medium); }
.lev-inline-head-actions { grid-area: action; display: flex; justify-content: flex-end; align-items: end; gap: 8px; }
.lev-inline-head-actions .od-button-global-1 { flex: 0 0 auto; }

.lev-inline-options {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.lev-inline-options .lev-option-card-flat {
    display: grid;
    gap: 12px;
    padding: 12px;
    border: 0;
    border-radius: var(--ng-radius-md);
    background: var(--ng-global-8);
    color: var(--ng-text);
}

.lev-inline-options .lev-option-card-preferred { background: var(--ng-global-9); }
.lev-option-legend-row { display: flex; justify-content: space-between; gap: 8px; color: var(--ng-accent-warm); font-size: 14px; font-weight: var(--ng-weight-medium); }
.lev-house-link, .lev-option-bookmaker { --od-link-color: var(--ng-accent-warm); color: var(--od-link-color); text-decoration: none; font-weight: var(--ng-weight-medium); }
.lev-house-link:hover, .lev-option-bookmaker:hover { color: var(--od-link-color); text-decoration: underline; text-underline-offset: 2px; }
.lev-option-content { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 7px 10px; align-items: end; }
.lev-option-content .option-title { grid-column: 1; color: var(--ng-text); font-size: 18px; font-weight: var(--ng-weight-medium); }
.lev-option-content .lev-option-bookmaker { grid-column: 1; font-size: 18px; }
.lev-option-odd-chip { grid-column: 2; grid-row: 1 / 3; align-self: end; color: var(--ng-text); font-size: 24px; font-weight: var(--ng-weight-medium); }

@media (max-width: 700px) {
    .lev-inline-options { grid-template-columns: 1fr; }
}

.lev-inline-calculator-card { overflow: hidden; border-radius: var(--ng-radius-sm); }
.lev-standalone-shell .lev-mode-tabs { margin-bottom: 8px; }
.lev-inline-calculator-card .lev-table { width: 100%; margin: 0; border-collapse: collapse; table-layout: fixed; }
.lev-inline-calculator-card .lev-table :is(th, td) { padding: 10px; color: var(--ng-text); }
.lev-inline-calculator-card .lev-table thead th,
.lev-inline-calculator-card .lev-table tbody th,
.lev-inline-calculator-card .lev-table .lev-col-house { background: var(--ng-global-3); color: var(--ng-text-on-global-3); }
.lev-inline-calculator-card .lev-table :is(input, .lev-stake-cell-wrap, .lev-refund-cell-wrap) { font-size: 17px; }
.lev-inline-calculator-card .od-input-shell-global-1 { width: 100%; }
.lev-inline-calculator-card .od-input-shell-global-1 > .od-input-global-1 { font-size: 17px; }
.lev-inline-calculator-card .lev-mobile-cards { display: none; }
.lev-inline-empty { min-height: 560px; color: var(--ng-text-muted); }

/* LEV keeps the global table, with compact utility columns for its two variants. */
.lev-table--free .lev-row > :nth-child(1) { width: 17%; }
.lev-table--free .lev-row > :nth-child(2) { width: 22%; }
.lev-table--free .lev-row > :nth-child(3) { width: 8%; }
.lev-table--free .lev-row > :nth-child(5) { width: 14%; }
.lev-table--free .lev-row > :nth-child(6) { width: 22%; }
.lev-table--free .lev-row > :nth-child(7) { width: 17%; }
.lev-table--free .lev-free-col { padding-inline: 6px; text-align: center; }

.lev-table--refund .lev-row > :nth-child(1) { width: 17%; }
.lev-table--refund .lev-row > :nth-child(2) { width: 20%; }
.lev-table--refund .lev-row > :nth-child(4) { width: 24%; }
.lev-table--refund .lev-row > :nth-child(5) { width: 11%; }
.lev-table--refund .lev-row > :nth-child(6) { width: 16%; }
.lev-table--refund .lev-row > :nth-child(7) { width: 12%; }
.lev-table--refund .lev-ree-cell-inner {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
}
.lev-table--refund .lev-refund-cell-wrap { max-width: 90px; }
.lev-table--refund .lev-quote-input { max-width: 84px; }
.lev-table--refund tbody .lev-ree-col,
.lev-table--refund tbody .lev-quote-cell { text-align: center; }
.lev-table--refund tbody .lev-ree-cell-inner { justify-content: center; }

@media (max-width: 1199px) {
    .lev-desktop-split { grid-template-columns: var(--ng-scanner-config-col) minmax(360px, 1fr); }
    .lev-inline-calculator-panel { grid-column: 1 / -1; min-height: 440px; }
}

@media (max-width: 991px) {
    .lev-inline-calculator-card .lev-table { display: none; }

    .lev-inline-calculator-card .lev-mobile-cards {
        display: grid;
        gap: 10px;
    }

    .lev-inline-calculator-card .lev-mobile-head,
    .lev-inline-calculator-card .lev-mobile-line,
    .lev-inline-calculator-card .lev-mobile-grid-two {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
    }

    .lev-inline-calculator-card .lev-mobile-head a {
        --od-link-color: var(--ng-accent-warm);
        color: var(--od-link-color);
        text-decoration: none;
    }

    .lev-inline-calculator-card .lev-mobile-selection,
    .lev-inline-calculator-card .lev-mobile-cell {
        display: grid;
        gap: 5px;
        min-width: 0;
    }

    .lev-inline-calculator-card .lev-mobile-grid-two {
        align-items: start;
    }

    .lev-inline-calculator-card .lev-mobile-grid-two > * { flex: 1 1 0; }
    .lev-inline-calculator-card .lev-mobile-cell-label { color: var(--ng-text-muted); font-size: 13px; }
    .lev-inline-calculator-card .lev-mobile-card :is(input, .lev-stake-cell-wrap) { width: 100%; font-size: 17px; }
}

/* Favor comparator: one desktop shell, one filter system, one event row model. */
.favor-comparator-page {
    width: 100%;
}


.favor-comparator-page .top-toolbar {
    display: grid;
    grid-template-columns: var(--ng-scanner-config-col) var(--ng-scanner-list-col) minmax(0, 1fr);
    align-items: center;
    gap: var(--ng-scanner-gap);
    margin-bottom: 18px;
}

.favor-comparator-page .scanner-page-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    grid-column: 1;
    width: 100%;
    color: var(--ng-accent-warm);
    font-size: 24px;
    font-weight: var(--ng-weight-bold);
    line-height: 1.05;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
}

.top-toolbar-left,
.search-toolbar {
    display: flex;
    align-items: center;
    gap: 9px;
}

.favor-comparator-page .top-toolbar-right {
    display: contents;
}

.favor-comparator-page .top-toolbar-right .top-toolbar-left {
    grid-column: 2;
    justify-content: flex-end;
    justify-self: end;
    width: auto;
    margin-left: auto;
}

.favor-comparator-page .search-toolbar {
    grid-column: 3;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    justify-content: stretch;
    width: 100%;
}

.favor-comparator-page .search-toolbar-input {
    width: 100%;
    min-width: 0;
}

.favor-comparator-page .search-toolbar-input .form-control {
    width: 100%;
}

.favor-desktop-split {
    display: grid;
    grid-template-columns: var(--ng-scanner-config-col) var(--ng-scanner-list-col) minmax(0, 1fr);
    gap: var(--ng-scanner-gap);
    height: var(--ng-scanner-panel-height);
    min-height: 560px;
    align-items: start;
}

.od-panel-global {
    min-width: 0;
    border: var(--ng-border-width) solid var(--ng-global-11);
    border-radius: var(--ng-radius-md);
}

.od-panel-global-1 {
    background: var(--ng-global-1);
    --ng-text: var(--ng-text-on-global-1);
    --ng-text-muted: var(--ng-text-muted-on-global-1);
}

.od-panel-global-2 {
    background: var(--ng-global-2);
}

/* Profit tracker: layout only. Surfaces, controls and state colors come from global tokens/components. */
.profit-tracker-section {
    padding: 30px 0;
}

.tracker-global-panel {
    padding: 18px;
}

.tracker-header-card,
.tracker-content-card {
    display: grid;
    gap: 18px;
    min-width: 0;
}

.tracker-content-card {
    margin-top: 18px;
}

.tracker-header-main,
.tracker-title-wrap,
.tracker-tools,
.tracker-filters,
.tracker-view-modes,
.tracker-group-header,
.tracker-group-title,
.tracker-head-badges,
.tracker-leg-top,
.tracker-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.tracker-header-main,
.tracker-group-header {
    justify-content: space-between;
}

.tracker-logo {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border: var(--ng-border-width) solid var(--ng-global-11);
    border-radius: var(--ng-radius-sm);
    color: var(--ng-global-13);
    font-size: 20px;
}

.tracker-title-wrap > div:last-child {
    min-width: 0;
}

.tracker-title.od-page-title-global-1 {
    margin: 0;
    text-align: left;
}

.tracker-subtitle {
    color: var(--ng-text-muted);
}

.tracker-add-btn,
.tracker-delete-finished-btn,
.tracker-filter-chip,
.tracker-view-btn,
.tracker-actions .action-btn {
    white-space: nowrap;
}

.tracker-stats-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.tracker-stat.od-badge-global-1 {
    display: grid;
    place-items: center;
    gap: 5px;
    min-height: 112px;
    padding: 14px;
    text-align: center;
}

.tracker-stat-icon,
.tracker-stat-value {
    color: var(--ng-global-13);
}

.tracker-stat-icon { font-size: 20px; }
.tracker-stat-value { font-size: 27px; font-weight: var(--ng-weight-medium); }
.tracker-stat-label { color: var(--ng-text-muted); }

.tracker-tools {
    flex-wrap: wrap;
}

.tracker-search {
    flex: 1 1 260px;
    max-width: 390px;
}

.tracker-search > i { color: var(--ng-text-muted); }

.tracker-filters { flex: 1 1 auto; }

.tracker-filters .active,
.tracker-view-btn.active {
    background: var(--ng-global-4);
    color: var(--ng-text-on-global-4);
}

.tracker-view-modes { margin-left: auto; }

.tracker-empty {
    display: grid;
    place-items: center;
    gap: 8px;
    min-height: 190px;
    padding: 24px;
    border: var(--ng-border-width) dashed var(--ng-global-11);
    border-radius: var(--ng-radius-sm);
    color: var(--ng-text-muted);
    text-align: center;
}

.tracker-empty > i { font-size: 28px; color: var(--ng-global-13); }
.tracker-empty h4 { margin: 0; color: var(--ng-text); }

.tracker-group-section { display: grid; gap: 12px; }
.tracker-group-section-spaced { margin-top: 18px; }
.tracker-group-header h4 { margin: 0; color: var(--ng-global-13); font-size: 18px; font-weight: var(--ng-weight-medium); }
.tracker-group-header-pending > h4 { margin-inline: auto; }
.tracker-group-header-finished { position: relative; justify-content: flex-end; }
.tracker-group-header-finished .tracker-group-title {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.tracker-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

@media (max-width: 1100px) {
    .tracker-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.tracker-list { display: grid; gap: 12px; }
.tracker-list .tracker-item { grid-template-columns: minmax(210px, .9fr) minmax(0, 1.5fr) auto; align-items: center; }

.tracker-item {
    display: grid;
    gap: 13px;
    padding: 14px;
}

.tracker-head-badges { flex-wrap: wrap; }
.tracker-head-badges .od-badge-global-1 { padding: 5px 8px; }
.tracker-event { margin: 0; color: var(--ng-text); font-size: 21px; font-weight: var(--ng-weight-medium); }
.tracker-bet,
.tracker-date { color: var(--ng-text-muted); }
.tracker-bet i,
.tracker-date i { color: var(--ng-global-13); }

.tracker-event-link,
.tracker-leg-link {
    color: var(--ng-link);
    font-weight: var(--ng-weight-medium);
    text-decoration: none;
}

.tracker-event-link:hover,
.tracker-leg-link:hover { color: var(--ng-link-hover); }

.tracker-legs-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.tracker-legs-grid-lev { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.tracker-leg {
    display: grid;
    gap: 7px;
    min-width: 0;
    padding: 10px;
    border-radius: var(--ng-radius-sm);
    background: var(--ng-global-5);
}

.tracker-leg-top { justify-content: space-between; }
.tracker-leg-house,
.tracker-leg-odd,
.tracker-leg-role { color: var(--ng-text); font-weight: var(--ng-weight-medium); }
.tracker-leg-role { color: var(--ng-global-13); }

.tracker-events-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.tracker-events-summary > div {
    display: grid;
    gap: 3px;
    padding: 9px;
    border-radius: var(--ng-radius-sm);
    background: var(--ng-global-5);
}

.tracker-events-summary span { color: var(--ng-text-muted); font-size: 12px; }
.tracker-events-summary strong { color: var(--ng-text); }

.tracker-amount {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 48px;
    border-radius: var(--ng-radius-sm);
    background: var(--ng-global-5);
    color: var(--ng-global-13);
    font-size: 19px;
    font-weight: var(--ng-weight-medium);
}

.tracker-actions { justify-content: stretch; }
.tracker-actions .action-btn { flex: 1 1 0; }

@media (max-width: 767px) {
    .profit-tracker-section { padding: 14px 0; }
    .tracker-global-panel { padding: 14px; }
    .tracker-header-main,
    .tracker-group-header { align-items: stretch; flex-direction: column; }
    .tracker-group-header-finished .tracker-group-title {
        position: static;
        transform: none;
        justify-content: center;
    }
    .tracker-title.od-page-title-global-1 { font-size: 22px; }
    .tracker-add-btn,
    .tracker-delete-finished-btn { justify-content: center; }
    .tracker-stats-grid { grid-template-columns: 1fr; }
    .tracker-grid { grid-template-columns: 1fr; }
    .tracker-tools { align-items: stretch; }
    .tracker-search { max-width: none; }
    .tracker-filters { flex-wrap: wrap; }
    .tracker-filters .tracker-filter-chip { flex: 1 1 0; }
    .tracker-view-modes { margin-left: 0; }
    .tracker-list .tracker-item { grid-template-columns: 1fr; }
}

/* Tracker editors use the same calculator geometry already used by LEV and Eventos. */
.tracker-modal-lev-editor.od-modal-global-1__dialog,
.tracker-modal-events-editor.od-modal-global-1__dialog {
    width: min(1180px, 96vw);
    max-width: 1180px;
}

.tracker-modal .tracker-modal-grid-lev-head {
    display: grid;
    grid-template-columns: minmax(190px, .85fr) minmax(160px, .7fr) minmax(0, 1.3fr);
    gap: 12px;
}

.tracker-lev-calc-shell {
    display: grid;
    gap: 12px;
    margin-top: 14px;
    padding: 14px;
    border: var(--ng-border-width) solid var(--ng-global-11);
    border-radius: var(--ng-radius-sm);
    background: var(--ng-global-2);
}

.tracker-modal-events-editor .eventcalc-toolbar {
    display: flex;
    align-items: end;
    gap: 10px;
}

.tracker-modal-events-editor .eventcalc-event-count {
    display: grid;
    gap: 6px;
    color: var(--ng-text);
    font-weight: var(--ng-weight-medium);
}

.tracker-events-shared-calculator {
    display: grid;
    gap: 14px;
    margin-top: 14px;
}

.tracker-events-shared-calculator .eventcalc-toolbar {
    display: flex;
    justify-content: flex-end;
}

.tracker-events-shared-calculator .eventcalc-event-count {
    display: grid;
    grid-template-columns: auto 74px;
    align-items: center;
    gap: 8px;
    margin: 0;
    color: var(--ng-text);
    font-weight: var(--ng-weight-medium);
}

.tracker-events-shared-calculator .eventcalc-table-wrap { overflow-x: auto; }
.tracker-events-mobile { display: none; }

.tracker-lev-shared-calculator,
.tracker-modal .calculadora-lev-container,
.tracker-modal .calculadora-lev-container > .calculadora-card {
    display: grid;
    gap: 14px;
    min-width: 0;
}

.tracker-modal .tracker-lev-shared-calculator {
    padding: 0;
    background: transparent;
}

.tracker-modal .calculadora-lev-container .lev-table {
    width: 100%;
    margin: 0;
}

.tracker-modal .calculadora-lev-container .lev-mobile-cards {
    display: none;
}

.tracker-modal-events-editor .eventcalc-toolbar {
    justify-content: flex-start;
    align-items: center;
}

/* Layout only: the visual treatment remains entirely in the global tabs. */
.tracker-modal-events-editor .eventcalc-tabs {
    width: 30%;
    min-width: 0;
    flex: 0 1 30%;
    margin-inline-end: auto;
}
.tracker-modal-events-editor .eventcalc-event-count { width: 140px; }
@media (max-width: 991px) {
    .tracker-modal .tracker-modal-grid-lev-head { grid-template-columns: 1fr; }
    .tracker-modal-events-editor .eventcalc-toolbar { align-items: stretch; flex-direction: column; }
    .tracker-modal-events-editor .eventcalc-event-count { width: 100%; max-width: none; }
    .tracker-modal-events-editor .eventcalc-tabs { display: grid; width: 100%; grid-template-columns: repeat(3, minmax(0, 1fr)); flex: 1 1 auto; margin-inline-end: 0; }
    .tracker-modal-events-editor .eventcalc-tabs .od-tab-global-1 { width: 100%; min-width: 0; }
    .tracker-events-shared-calculator .eventcalc-table-wrap { display: none; }
    .tracker-events-shared-calculator .tracker-events-mobile { display: grid; gap: 10px; }

    .tracker-modal.tracker-modal-lev-editor.lev-mobile-calculator-modal .calculadora-lev-container .lev-mobile-cards {
        display: grid !important;
    }
}

.favor-config-panel {
    overflow: auto;
    padding: 14px;
}

.favor-config-section + .favor-config-section {
    margin-top: 16px;
}

.favor-config-heading,
.favor-config-label {
    display: block;
    margin: 0 0 7px;
    color: var(--ng-text);
    font-size: 13px;
    font-weight: var(--ng-weight-semibold);
}

.favor-config-grid,
.favor-config-bookmaker-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.favor-config-bookmaker-grid.is-single-bookmaker-filter {
    grid-template-columns: minmax(0, 1fr);
}

.favor-config-field {
    min-width: 0;
}

.favor-config-panel :is(.form-control, .form-select, .favor-config-input):not(.od-input-global-1) {
    width: 100%;
    min-width: 0;
    min-height: 36px;
    padding: 7px 10px;
    border: var(--ng-border-width) solid var(--ng-input-border);
    border-radius: var(--ng-radius-sm);
    background: var(--ng-control);
    color: var(--ng-input-text);
    font-size: 16px;
}

.favor-config-panel input[type="datetime-local"],
.favor-config-select {
    font-size: 13px;
}

.input-with-prefix:not(.od-input-shell-global-1) {
    display: flex;
    align-items: center;
    min-height: 36px;
    padding-left: 10px;
    border: var(--ng-border-width) solid var(--ng-input-border);
    border-radius: var(--ng-radius-sm);
    background: var(--ng-control);
}

.input-with-prefix:not(.od-input-shell-global-1) > span {
    color: var(--ng-input-prefix-color);
    font-weight: var(--ng-weight-semibold);
}

.input-with-prefix:not(.od-input-shell-global-1) .form-control {
    min-height: 34px;
    padding-left: 10px;
    border: 0;
    background: transparent;
}

.od-tabs-global-1 {
    display: flex;
    align-items: end;
    width: 100%;
    border-bottom: var(--ng-border-width) solid var(--ng-global-11);
    background: var(--ng-global-12);
    --ng-text-muted: var(--ng-text-on-global-12);
}

.od-home-tabs.od-tabs-global-1 {
    width: fit-content;
    flex: 0 0 auto;
    margin-inline-start: auto;
}

button.od-tab-global-1 {
    min-height: 34px;
    padding: 0 9px;
    border: 0;
    border-bottom: 2px solid transparent;
    background: transparent;
    color: var(--ng-text-muted);
    font-size: 13px;
    font-weight: var(--ng-weight-semibold);
}

.od-tab-global-1:hover,
.od-tab-global-1.is-active {
    border-bottom-color: var(--ng-accent-strong);
    background: var(--ng-global-1);
    color: var(--ng-text-on-global-1);
}

.favor-config-sport-tabs {
    overflow: hidden;
}

.favor-config-dropdown {
    position: relative;
}

.favor-config-select {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 36px;
    padding: 7px 10px;
    border: var(--ng-border-width) solid var(--ng-input-border);
    border-radius: var(--ng-radius-sm);
    background: var(--ng-control);
    color: var(--ng-input-text);
    cursor: pointer;
    list-style: none;
}

.favor-config-select::-webkit-details-marker {
    display: none;
}

.favor-config-menu {
    position: absolute;
    z-index: 20;
    top: calc(100% + 5px);
    left: 0;
    right: 0;
    display: grid;
    gap: 7px;
    padding: 9px;
    border: var(--ng-border-width) solid var(--ng-input-border);
    border-radius: var(--ng-radius-sm);
    background: var(--ng-control);
    color: var(--ng-input-text);
    box-shadow: var(--ng-shadow);
}

.favor-config-menu-scroll,
.favor-config-checklist-scroll {
    display: grid;
    gap: 6px;
    max-height: 170px;
    overflow: auto;
}

.favor-config-checklist-scroll {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.favor-menu-row {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    color: var(--ng-text);
    font-size: 12px;
    font-weight: var(--ng-weight-medium);
}

.favor-config-menu .favor-menu-row {
    color: var(--ng-input-text);
}

.favor-config-menu :is(input[type="text"], input[type="search"]) {
    border-color: var(--ng-input-border);
    background: var(--ng-control);
    color: var(--ng-input-text);
}

.favor-config-menu :is(input[type="text"], input[type="search"])::placeholder {
    color: var(--ng-input-placeholder);
    opacity: 1;
}

.favor-menu-row input[type="checkbox"] {
    width: 15px;
    min-height: 15px;
    margin: 0;
    accent-color: var(--ng-accent);
}

.favor-config-actions {
    display: grid;
    gap: 8px;
    margin-top: 16px;
}

.favor-live-list-panel {
    display: flex;
    flex-direction: column;
    position: relative;
    height: 100%;
    overflow: hidden;
}

:is(.favor-list-loading-overlay, .od-tool-loading-overlay) {
    position: absolute;
    z-index: 8;
    inset: 0;
    display: grid;
    place-items: center;
    align-items: center;
    justify-content: center;
    background: color-mix(in srgb, var(--ng-global-2) 54%, transparent);
    color: var(--ng-global-13);
    font-weight: var(--ng-weight-semibold);
    backdrop-filter: blur(5px);
}

:is(.favor-list-loading-overlay, .od-tool-loading-overlay) > span {
    color: var(--ng-global-13);
}

.od-score-page .od-tool-loading-overlay > span {
    color: #ffd60a; /* Global 13 from the dark palette, reserved here for Score loading. */
    font-size: 28px;
}
.od-score-page .od-tool-loading-overlay { background: var(--ng-global-1); backdrop-filter: none; }
.od-score-page .score-detail-loading.od-tool-loading-overlay { background: var(--ng-global-5); }
.od-score-page .score-detail-loading.od-tool-loading-overlay > span { color: var(--ng-global-13); }

.favor-list-mode-bar {
    display: flex;
    justify-content: flex-end;
    padding: 8px 12px 0;
    background: var(--ng-global-1);
    --ng-text: var(--ng-text-on-global-1);
    --ng-text-muted: var(--ng-text-muted-on-global-1);
}

.favor-list-mode-bar .od-tabs-global-1 {
    width: auto;
}

.favor-live-list {
    flex: 1;
    min-height: 0;
    max-height: calc(100vh - 194px);
    overflow: auto;
}

.favor-live-row {
    position: relative;
    display: grid;
    grid-template-columns: 62px minmax(0, 1fr) auto;
    grid-template-areas:
        "side title actions"
        "side meta actions"
        "side picks picks";
    gap: 5px 10px;
    width: 100%;
    padding: 11px;
    border: 0;
    border-bottom: var(--ng-border-width) solid var(--ng-border-subtle);
    background: var(--ng-surface-1);
    color: var(--ng-text);
    text-align: left;
}

.favor-live-row:hover,
.favor-live-row.is-active {
    background: var(--ng-global-8);
}

.favor-live-row-side {
    grid-area: side;
    display: grid;
    align-content: start;
    padding-inline-end: 10px;
    border-inline-end: var(--ng-border-width) solid var(--ng-border-subtle);
    color: var(--ng-text);
    font-size: 12px;
    font-weight: var(--ng-weight-semibold);
    line-height: 1.05;
}

.favor-live-row-side :is(.favor-live-row-day, .favor-live-row-hour) {
    font-size: 16px;
}

.favor-live-row-title {
    grid-area: title;
    min-width: 0;
    color: var(--ng-accent-warm);
    font-size: 16px;
    font-weight: var(--ng-weight-medium);
}

.favor-live-row-meta {
    grid-area: meta;
    min-width: 0;
    color: var(--ng-text);
    font-size: 13px;
}

.favor-live-row-actions {
    grid-area: actions;
    display: inline-flex;
    align-items: start;
    gap: 7px;
}

.favor-live-row-rating {
    color: var(--ng-global-10);
    font-size: 22px;
    font-weight: var(--ng-weight-semibold);
}

.favor-live-picks {
    grid-area: picks;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 20px minmax(0, 1fr);
    gap: 10px;
    margin-top: 3px;
}

/* The Blade renders both card and list representations of a pick. Cards own this view. */
.favor-live-list-panel:not(.is-list-view) :is(
    .favor-live-table-event-head,
    .favor-live-table-head,
    .favor-live-table-line
) {
    display: none;
}

.favor-live-list-panel:not(.is-list-view) .favor-live-picks.od-table-global-1 {
    background: transparent;
}

/* List mode adapts the global table hierarchy to the event data model. */
.favor-live-list-panel.is-list-view .favor-live-row {
    display: block;
    padding: 7px;
    background: var(--ng-global-2);
}

.favor-live-list-panel.is-list-view .favor-live-row:hover,
.favor-live-list-panel.is-list-view .favor-live-row.is-active {
    background: var(--ng-global-8);
}

.favor-live-list-panel.is-list-view .favor-live-row > :is(
    .favor-live-row-side,
    .favor-live-row-title,
    .favor-live-row-meta,
    .favor-live-row-actions,
    .favor-live-row-type
) {
    display: none;
}

.favor-live-list-panel.is-list-view .favor-live-picks {
    display: grid;
    grid-template-columns: 92px 108px minmax(0, 1fr) 96px;
    grid-template-rows: 36px 32px repeat(2, 40px);
    gap: 0;
    margin: 0;
    overflow: hidden;
    border-radius: var(--ng-radius-sm);
}

.favor-live-list-panel.is-list-view .favor-live-table-event-head,
.favor-live-list-panel.is-list-view .favor-live-table-line {
    display: contents;
}

.favor-live-list-panel.is-list-view .favor-live-table-head,
.favor-live-list-panel.is-list-view .favor-live-pick,
.favor-live-list-panel.is-list-view .favor-live-pick-swap {
    display: none;
}

.favor-live-list-panel.is-list-view .favor-live-table-league-name {
    grid-column: 1 / 4;
    grid-row: 1;
    min-width: 0;
    padding: 8px 46px 8px 10px;
    overflow: hidden;
    background: var(--ng-global-3);
    color: var(--ng-event-table-title);
    font-size: 16px;
    font-weight: var(--ng-weight-medium);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.favor-live-list-panel.is-list-view .favor-live-table-add-cell {
    z-index: 1;
    display: grid;
    grid-column: 3;
    grid-row: 1;
    place-items: center end;
    padding-inline-end: 7px;
}

.favor-live-list-panel.is-list-view .favor-live-table-event-rating {
    display: grid;
    grid-column: 4;
    grid-row: 1 / 3;
    place-items: center;
    border-inline-start: var(--ng-border-width) solid var(--ng-border-subtle);
    background: var(--ng-global-3);
    color: var(--ng-text-on-global-3);
}

/* Inside a Global Table 1 structural cell, rating must keep contrast with Global 3. */
:root:not([data-theme="dark"]) .favor-live-list-panel.is-list-view .favor-live-table-event-rating .od-rating-badge {
    color: var(--ng-text-on-global-3);
}

.favor-live-list-panel.is-list-view .favor-live-table-market-name,
.favor-live-list-panel.is-list-view .favor-live-table-event-name {
    display: flex;
    align-items: center;
    min-width: 0;
    padding: 6px 10px;
    border-top: var(--ng-border-width) solid var(--ng-border-subtle);
    background: var(--ng-global-3);
    color: var(--ng-text-on-global-3);
    font-size: 14px;
    font-weight: var(--ng-weight-medium);
}

.favor-live-list-panel.is-list-view .favor-live-table-market-name {
    grid-column: 1 / 3;
    grid-row: 2;
}

.favor-live-list-panel.is-list-view .favor-live-table-event-name {
    grid-column: 3;
    grid-row: 2;
    border-inline-start: var(--ng-border-width) solid var(--ng-border-subtle);
}

.favor-live-list-panel.is-list-view .favor-live-table-event-time {
    display: grid;
    grid-column: 1;
    grid-row: 3 / 5;
    align-content: center;
    gap: 1px;
    padding: 6px 10px;
    border-top: var(--ng-border-width) solid var(--ng-border-subtle);
    background: var(--ng-global-3);
    color: var(--ng-text-on-global-3);
    font-size: 13px;
    font-weight: var(--ng-weight-medium);
    line-height: 1.05;
}

.favor-live-list-panel.is-list-view .favor-live-table-line:nth-of-type(3) > * {
    grid-row: 3;
}

.favor-live-list-panel.is-list-view .favor-live-table-line:nth-of-type(4) > * {
    grid-row: 4;
}

.favor-live-list-panel.is-list-view .favor-live-table-bookmaker,
.favor-live-list-panel.is-list-view .favor-live-table-pick,
.favor-live-list-panel.is-list-view .favor-live-table-odd {
    display: flex;
    align-items: center;
    min-width: 0;
    padding: 6px 9px;
    border-top: var(--ng-border-width) solid var(--ng-border-subtle);
    background: var(--ng-global-5);
    color: var(--ng-text);
    font-size: 14px;
    font-weight: var(--ng-weight-medium);
}

.favor-live-list-panel.is-list-view .favor-live-table-bookmaker {
    grid-column: 2;
    border-inline-start: var(--ng-border-width) solid var(--ng-border-subtle);
}

.favor-live-list-panel.is-list-view .favor-live-table-pick {
    grid-column: 3;
    border-inline-start: var(--ng-border-width) solid var(--ng-border-subtle);
}

.favor-live-list-panel.is-list-view .favor-live-table-odd {
    grid-column: 4;
    justify-content: end;
    border-inline-start: var(--ng-border-width) solid var(--ng-border-subtle);
}

.favor-live-pick {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 8px;
    min-width: 0;
    padding: 8px 10px;
    border-radius: var(--ng-radius-sm);
    background: var(--ng-global-5);
    color: var(--ng-text);
    transition: background-color .16s ease, color .16s ease;
}

.favor-live-row:hover .favor-live-pick {
    background: var(--ng-global-9);
    color: var(--ng-text-on-global-9);
}

.favor-live-row:hover .favor-live-pick :is(.favor-live-pick-label, .favor-live-pick-odd) {
    color: inherit;
}

.favor-live-pick-copy {
    display: grid;
    grid-template-rows: minmax(38px, auto) auto;
    min-width: 0;
    gap: 4px;
}

.favor-live-pick-label {
    color: var(--ng-text);
    font-size: 16px;
    font-weight: var(--ng-weight-medium);
    line-height: 1.2;
}

.favor-live-pick-bookmaker {
    overflow: hidden;
    font-size: 16px;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.favor-live-pick-odd {
    align-self: end;
    color: var(--ng-text);
    font-size: 17px;
    font-weight: var(--ng-weight-semibold);
}

.favor-live-pick-swap {
    align-self: center;
    color: var(--ng-global-13);
    font-size: 22px;
    font-weight: var(--ng-weight-medium);
    line-height: 1;
}

.od-tool-empty-cell,
.od-tool-empty-state,
.od-tool-loading-state {
    display: grid;
    min-height: 180px;
    place-items: center;
    color: var(--ng-text-muted);
}

.favor-live-list-footer {
    position: sticky;
    z-index: 2;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px;
    border-top: var(--ng-border-width) solid var(--ng-border-subtle);
    background: var(--ng-global-1);
    color: var(--ng-text-on-global-1);
}

.favor-inline-calculator-panel {
    min-height: 0;
    height: 100%;
    padding: 14px;
}

.favor-inline-calculator-shell {
    display: grid;
    gap: 14px;
}

/* En escritorio el cálculo y la lista llenan exactamente el alto restante de
   la ventana; el filtro lateral no se estira si su contenido ya terminó. */
@media (min-width: 1200px) {
    :is(.favor-desktop-split, .lev-desktop-split) {
        min-height: 0;
    }

    .favor-desktop-split {
        height: var(--favor-list-height, var(--ng-scanner-panel-height));
    }

    .lev-desktop-split {
        height: var(--lev-list-height, var(--ng-scanner-panel-height));
    }

    :is(.favor-desktop-split, .lev-desktop-split) > .favor-config-panel {
        height: auto;
        align-self: start;
    }

    .favor-desktop-split > :is(.favor-live-list-panel, .favor-inline-calculator-panel),
    .lev-desktop-split > :is(.lev-live-list-panel, .lev-inline-calculator-panel) {
        height: 100%;
        min-height: 0;
        align-self: stretch;
    }
}

.favor-inline-calculator-card .calculadora-card,
.favor-inline-calculator-card .results-section {
    display: grid;
    gap: 14px;
}

.favor-inline-calculator-card .result-cards-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.favor-inline-calculator-card .result-card-selection {
    --od-link-color: var(--ng-accent-warm);
    display: grid;
    gap: 8px;
    min-width: 0;
    padding: 12px;
    border-radius: var(--ng-radius-sm);
    background: var(--ng-global-8);
}

.favor-inline-calculator-card .result-card-legend-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-width: 0;
}

.favor-inline-calculator-card .result-card-context-foot {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px 10px;
    align-items: center;
    min-width: 0;
}

.favor-inline-calculator-card .result-card-legend-row > span {
    color: var(--ng-accent-warm);
    font-weight: var(--ng-weight-semibold);
}

.favor-inline-calculator-card .stake-result-amount {
    color: var(--ng-text);
    font-size: 21px;
    font-weight: var(--ng-weight-semibold);
}

.favor-inline-calculator-card .context-pick {
    color: var(--ng-text);
    font-size: 18px;
    font-weight: var(--ng-weight-semibold);
}

.favor-inline-calculator-card .context-copy-row {
    min-width: 0;
    font-size: 13px;
}

.favor-inline-calculator-card .context-copy-row {
    display: inline-flex;
    align-items: center;
    justify-self: start;
    gap: 5px;
}

.favor-inline-calculator-card .context-pick-row {
    grid-column: 1;
    grid-row: 1;
}

.favor-inline-calculator-card .context-bookmaker-row {
    grid-column: 1;
    grid-row: 2;
}

.favor-inline-calculator-card .context-bookmaker {
    font-size: 18px;
}

.favor-inline-calculator-card .context-odd {
    grid-column: 2;
    grid-row: 2;
    align-self: center;
    color: var(--ng-text);
    font-size: 24px;
    font-weight: var(--ng-weight-semibold);
}

.favor-inline-calculator-card .favor-stake-table-wrap {
    overflow: hidden;
    border-radius: var(--ng-radius-sm);
    background: var(--ng-global-1);
}

.favor-inline-calculator-card :is(.favor-stake-money, .favor-stake-field, .favor-invested-money):not(.od-input-shell-global-1) {
    display: flex;
    align-items: center;
    min-height: 40px;
    gap: 8px;
    padding: 0 10px;
    border: var(--ng-border-width) solid var(--ng-global-11);
    border-radius: var(--ng-radius-sm);
    background: var(--ng-global-3);
}

.favor-inline-calculator-card :is(.favor-stake-total-row, .favor-stake-refund-row) .favor-invested-money {
    width: 100%;
}

.favor-inline-calculator-card .favor-stake-input {
    width: 100%;
    min-width: 0;
    min-height: 36px;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--ng-text);
    font-size: 17px;
    font-weight: var(--ng-weight-semibold);
}

.favor-inline-calculator-card .od-input-shell-global-1 > :is(.od-input-prefix, span:first-child) {
    font-size: 17px;
}

.favor-inline-calculator-card .favor-stake-label {
    color: var(--ng-text);
    font-weight: var(--ng-weight-semibold);
}

:root:not([data-theme="dark"]) .favor-inline-calculator-card .favor-stake-table tbody > tr > th:first-child,
:root:not([data-theme="dark"]) .favor-inline-calculator-card .favor-stake-table tbody > tr > th:first-child .favor-stake-label {
    color: var(--ng-text-on-global-3);
}

:is(.favor-inline-calculator-card .profit-value, .lev-net-pos, .score-net-pos) {
    color: var(--ng-global-10);
}

.favor-inline-calculator-card .profit-value {
    font-size: 17px;
    font-weight: var(--ng-weight-semibold);
}

:is(.favor-inline-calculator-card .loss-value, .lev-net-neg, .score-net-neg) {
    color: #ff5b5b;
}

.lev-inline-calculator-card .lev-table .lev-net-pos,
.lev-inline-calculator-card .lev-table .lev-net-pos > span,
.lev-inline-calculator-card .lev-mobile-cards .lev-net-pos,
.od-score-page .score-summary-line .score-net-pos { color: var(--ng-global-10); }

.lev-inline-calculator-card .lev-table .lev-net-neg,
.lev-inline-calculator-card .lev-table .lev-net-neg > span,
.lev-inline-calculator-card .lev-mobile-cards .lev-net-neg,
.od-score-page .score-summary-line .score-net-neg { color: #ff5b5b; }

.favor-inline-calculator-card .loss-value {
    font-size: 17px;
    font-weight: var(--ng-weight-semibold);
}

:is(.favor-inline-empty, .od-tool-selection-empty) {
    display: grid;
    min-height: 100%;
    place-items: center;
    align-content: center;
    gap: 14px;
    color: var(--ng-text-muted);
}

:is(.favor-inline-empty, .od-tool-selection-empty) > i { color: var(--ng-global-13); font-size: 28px; }
:is(.favor-inline-empty, .od-tool-selection-empty) > :is(h3, p) { margin: 0; }

@media (max-width: 1360px) and (min-width: 1200px) {
    .favor-desktop-split {
        grid-template-columns: 315px 575px minmax(0, 1fr);
    }

    .favor-comparator-page .top-toolbar {
        grid-template-columns: 315px 575px minmax(0, 1fr);
    }
}

/* HD compacto: las tres columnas conservan su geometría de escritorio
   (342 + 678 + 788, con gaps de 16). La escala global .67 las reduce como
   bloque; la calculadora no absorbe el ancho sobrante mediante 1fr. */
@media (min-width: 1200px) and (max-width: 1440px) and (max-height: 900px) {
    :is(.favor-desktop-split, .lev-desktop-split),
    :is(.favor-comparator-page, .lev-comparator-page) .top-toolbar {
        grid-template-columns: 342px 678px 788px;
        gap: 16px;
    }

    .favor-live-list {
        max-height: none;
    }
}

/* Los modales abiertos con x-teleport pasan a ser hijos directos del body y
   quedan fuera del shell HD. Se escala solo su diálogo; el overlay permanece
   a tamaño real para cubrir el viewport completo. */
@media (min-width: 901px) and (max-width: 1440px) and (max-height: 900px) {
body.od-body > .od-modal-global-1 > .od-modal-global-1__dialog {
        zoom: .67;
    }
}

/* Preferencias es una selección vertical; en escritorio debe ser un diálogo
   compacto, no una superficie de formulario de ancho completo. */
@media (min-width: 992px) {
    :is(.bookmaker-preferences-modal, .favor-bookmaker-preferences-modal) {
        width: min(360px, 100%);
        max-width: 360px;
    }
}

@media (max-width: 1199px) {
    .favor-desktop-split {
        grid-template-columns: 282px minmax(390px, 1fr);
        height: auto;
    }

    .favor-inline-calculator-panel {
        grid-column: 1 / -1;
        height: auto;
        min-height: 440px;
    }
}

@media (max-width: 991px) {
    .favor-comparator-page {
        width: 100%;
    }


    .favor-comparator-page .top-toolbar {
        grid-template-columns: minmax(0, 1fr);
        align-items: stretch;
    }

    .favor-comparator-page .scanner-page-badge {
        grid-column: 1;
    }

    .favor-comparator-page .top-toolbar-right {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 10px;
        width: 100%;
    }

    .favor-comparator-page .top-toolbar-right .top-toolbar-left,
    .favor-comparator-page .top-toolbar-right .search-toolbar {
        grid-column: 1;
        justify-self: stretch;
        width: 100%;
        margin-left: 0;
    }

    .favor-comparator-page .top-toolbar-left {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    .favor-comparator-page .top-toolbar-left > .od-button-global-1 {
        width: 100%;
        min-width: 0;
    }

    .favor-comparator-page .top-toolbar-left > .favor-combinada-toolbar-btn {
        grid-column: 1 / -1;
    }

.favor-comparator-page .search-toolbar {
        grid-template-columns: minmax(0, 1fr) minmax(112px, .38fr);
        gap: 8px;
    }

    .top-toolbar-left,
    .search-toolbar {
        flex-wrap: wrap;
    }

    .favor-mobile-live-panel {
        height: auto;
        overflow: visible;
    }

    .favor-mobile-live-panel .favor-live-list {
        max-height: none;
        overflow: visible;
    }

    .favor-mobile-event-row {
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas:
            "title actions"
            "meta meta"
            "picks picks"
            "open open";
        gap: 8px 12px;
    }

    .favor-mobile-event-row .favor-live-picks {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        margin-top: 0;
    }

    .favor-mobile-event-row .favor-live-pick-copy {
        grid-template-rows: auto auto auto;
    }

    .favor-mobile-event-row > .od-button-global-1 {
        grid-area: open;
        width: 100%;
    }

    .od-modal-global-1__dialog--mobile-sheet .calc-modal-body {
        display: grid;
        gap: 12px;
        padding: 0;
    }

    .od-modal-global-1__dialog--mobile-sheet .favor-stake-table-wrap,
    .favor-standalone-shell .favor-stake-table-wrap {
        overflow: visible;
        background: transparent;
    }

}

/* Comparador Score: rebuilt on the shared global palette and component geometry. */
.od-score-page .score-shell { width: min(1720px, calc(100% - 48px)); max-width: none; margin: 36px auto; }
.od-score-page .score-grid { display: grid; grid-template-columns: minmax(460px, 1fr) minmax(560px, 1fr); gap: 16px; align-items: stretch; }
.od-score-page .score-panel { height: calc(100vh - 130px); min-height: 620px; padding: 16px; overflow: hidden; color: var(--ng-text); }
.od-score-page .score-panel:not(.score-panel-right) { background: var(--ng-global-1); }
.od-score-page .score-panel,
.od-score-page .score-panel-right { display: flex; flex-direction: column; }
.od-score-page .score-head h3 { margin: 0 0 14px; color: var(--ng-text); font-size: 24px; font-weight: var(--ng-weight-medium); }
.od-score-page .score-panel:not(.score-panel-right) .score-head h3 { color: var(--ng-text-on-global-1); }
.od-score-page .score-view-tabs,
.od-score-page .score-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.od-score-page .score-view-tabs { gap: 0; }
.od-score-page .score-view-tabs { padding-bottom: 10px; border-bottom: var(--ng-border-width) solid var(--ng-border-subtle); }
.od-score-page .score-view-tabs,
.od-score-page .score-toolbar {
    background: var(--ng-global-1);
    color: var(--ng-text-on-global-1);
}
.od-score-page .score-view-tabs .od-tab-global-1,
.od-score-page .score-toolbar .score-toggle-row,
.od-score-page .score-filter-btn.od-button-global-1 {
    background: var(--ng-global-1);
    border-color: var(--ng-global-1);
    color: var(--ng-text-on-global-1);
}
.od-score-page .score-view-tabs .od-tab-global-1:hover,
.od-score-page .score-view-tabs .od-tab-global-1.is-active,
.od-score-page .score-filter-btn.od-button-global-1:hover,
.od-score-page .score-filter-btn.od-button-global-1:focus-visible {
    background: var(--ng-global-1);
    color: var(--ng-text-on-global-1);
}
.od-score-page .score-view-tabs .od-tab-global-1.is-active {
    border-bottom-color: var(--ng-accent-strong);
}
.od-score-page .score-primary-filters,
.od-score-page .score-day-tabs { display: flex; flex-wrap: wrap; gap: 8px; }
.od-score-page .score-primary-filters { margin-left: 8px; }
.od-score-page .score-main-tabs {
    display: flex;
    border: var(--ng-border-width) solid var(--ng-global-4);
}
.od-score-page .score-day-tabs {
    gap: 0;
    margin-left: auto;
    border: var(--ng-border-width) solid var(--ng-global-4);
    border-radius: 0;
    overflow: hidden;
}
.od-score-page .score-main-tabs .score-view-tab + .score-view-tab,
.od-score-page .score-day-tabs .score-view-tab + .score-view-tab { border-left: var(--ng-border-width) solid var(--ng-global-4); }
.od-score-page .score-day-switch { display: inline-flex; align-items: center; margin-left: auto; background: var(--ng-global-1); color: var(--ng-text-on-global-1); }
.od-score-page .score-day-switch > span { min-width: 56px; text-align: center; font-weight: var(--ng-weight-medium); }
.od-score-page .score-filter-btn,
.od-score-page .score-day-arrow,
.od-score-page .score-favorite-btn,
.od-score-page .score-detail-actions-row .btn-tracker { gap: 6px; }
.od-score-page .score-day-arrow { min-width: 40px; padding-inline: 8px; }
.od-score-page .score-toolbar { justify-content: space-between; padding: 12px 0; }
.od-score-page .score-toggle-row { display: inline-flex; align-items: center; gap: 8px; color: var(--ng-text); font-weight: var(--ng-weight-medium); }
.od-score-page .score-dropdown { position: relative; }
.od-score-page .score-menu-backdrop { position: fixed; z-index: 29; inset: 0; width: auto; min-height: 0; padding: 0; border: 0; background: transparent; }
.od-score-page .score-menu { position: absolute; z-index: 30; top: calc(100% + 5px); left: 0; display: grid; min-width: 190px; max-height: 330px; overflow: auto; padding: 7px; border: var(--ng-border-width) solid var(--ng-global-11); border-radius: var(--ng-radius-sm); background: var(--ng-global-2); box-shadow: var(--ng-shadow); }
.od-score-page .score-bookmakers-filter .score-filter-btn { min-width: 128px; justify-content: space-between; }
.od-score-page .score-bookmakers-filter .score-menu { min-width: 160px; max-height: 330px; padding: 8px; gap: 6px; border-color: var(--ng-input-border); background: var(--ng-control); color: var(--ng-input-text); }
.od-score-page .score-menu-check { display: flex; align-items: center; gap: 7px; }
.od-score-page .score-menu-check input { flex: 0 0 auto; }
.od-score-page .score-menu-item { padding: 8px 10px; border: 0; border-radius: 4px; background: transparent; color: var(--ng-text); text-align: left; }
.od-score-page .score-menu-item:hover,
.od-score-page .score-menu-item.selected { background: var(--ng-global-9); color: var(--ng-text-on-global-9); }
.od-score-page .score-menu-footer { display: flex; gap: 6px; padding-top: 7px; }
.od-score-page .score-menu-footer-btn { flex: 1; min-height: 32px; }
.od-score-page .score-list-scroll { position: relative; min-height: 0; flex: 1; overflow-y: auto; overflow-x: hidden; background: var(--ng-global-1); }
.od-score-page .score-detail-scroll { display: flex; flex: 1 1 auto; flex-direction: column; min-height: 0; overflow: hidden; }
.od-score-page .score-detail-preview { display: flex; flex: 1 1 auto; flex-direction: column; min-height: 0; }
.od-score-page .score-list-scroll { margin-top: 2px; }
.od-score-page .score-day-pane.is-hidden { display: none !important; }
.od-score-page .score-group { margin-bottom: 10px; overflow: hidden; border-radius: var(--ng-radius-sm); background: var(--ng-global-1); }
.od-score-page .score-group-head { width: 100%; display: flex; align-items: center; justify-content: space-between; min-height: 48px; padding: 10px 12px; border: 0; background: var(--ng-global-3); color: var(--ng-text-on-global-3); text-align: left; }
.od-score-page .score-group-title,
.od-score-page .score-group-actions { display: inline-flex; align-items: center; gap: 8px; }
.od-score-page .score-group-title img { width: 22px; height: 22px; object-fit: contain; }
.od-score-page .score-count { display: inline-grid; place-items: center; min-width: 28px; height: 28px; border: var(--ng-border-width) solid var(--ng-global-7); border-radius: 7px; }
.od-score-page .score-row { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 12px; padding: 12px; border-top: var(--ng-border-width) solid var(--ng-border-subtle); background: var(--ng-global-5); cursor: pointer; }
.od-score-page .score-row:hover { background: var(--ng-global-9); }
.od-score-page .score-row.active { background: var(--ng-global-8); }
.od-score-page .score-time { align-self: center; color: var(--ng-text); font-size: 16px; font-weight: var(--ng-weight-medium); }
.od-score-page .score-main { display: grid; grid-template-columns: minmax(140px, 1fr) 16px minmax(148px, .85fr) auto; align-items: center; gap: 8px; min-width: 0; }
.od-score-page .score-teams { display: grid; gap: 5px; }
.od-score-page .score-teams > div { display: flex; align-items: center; gap: 8px; min-width: 0; }
.od-score-page .score-teams img { width: 18px; height: 18px; flex: 0 0 auto; object-fit: contain; }
.od-score-page .score-teams span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 16px; font-weight: var(--ng-weight-medium); }
.od-score-page .score-odds { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; min-width: 0; }
.od-score-page .score-odds > span { display: grid; gap: 2px; text-align: center; }
.od-score-page .score-odds small { color: var(--ng-accent-warm); font-size: 13px; font-weight: var(--ng-weight-medium); }
.od-score-page .score-odd-pill { display: block; padding: 7px 5px; border-radius: 6px; background: var(--ng-global-6); color: var(--ng-text); font-size: 18px; font-weight: var(--ng-weight-medium); }
.od-score-page .score-side { display: inline-flex; align-items: center; justify-self: end; gap: 8px; white-space: nowrap; }
.od-score-page .score-side .od-rating-badge { color: var(--ng-global-10); font-size: 20px; font-weight: var(--ng-weight-medium); }
.od-score-page .score-detail-wrap { display: flex; flex: 1 1 auto; flex-direction: column; width: 100%; min-height: 0; padding: 2px; overflow: hidden; box-sizing: border-box; }
.od-score-page .score-detail-headline { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 10px 12px; background: var(--ng-global-3); color: var(--ng-text-on-global-3); }
.od-score-page .score-detail-league-inline,
.od-score-page .score-detail-time { display: inline-flex; align-items: center; gap: 8px; }
.od-score-page .score-detail-league-inline img { width: 24px; height: 24px; object-fit: contain; }
.od-score-page .score-detail-calc-layout { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 14px; padding: 14px 0; }
.od-score-page .score-calc-summary-card,
.od-score-page .score-detail-market-stack,
.od-score-page .score-calc-box { padding: 12px; border-radius: var(--ng-radius-sm); background: var(--ng-global-8); color: var(--ng-text-on-global-8); }
.od-score-page .score-calc-summary-card { display: grid; grid-template-rows: 38px minmax(0, 1fr); row-gap: 12px; align-self: stretch; }
.od-score-page .score-detail-rating-badge { color: var(--ng-global-10); font-size: 30px; font-weight: var(--ng-weight-medium); }
.od-score-page .score-detail-rating-label { display: block; font-size: 12px; color: var(--ng-text-muted); }
.od-score-page .score-detail-rating-badge { display: flex; align-items: center; justify-content: center; min-height: 38px; text-align: center; }
.od-score-page .score-summary-split { display: grid; gap: 12px; height: 100%; margin-top: 0; box-sizing: border-box; }
.od-score-page .score-summary-line { display: grid; justify-items: center; gap: 5px; text-align: center; }
.od-score-page .score-summary-line > :is(.score-payout-input, strong) { justify-self: center; }
.od-score-page .score-versus { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 10px; text-align: center; }
.od-score-page .score-versus > div { display: flex; align-items: center; justify-content: center; gap: 8px; min-width: 0; }
.od-score-page .score-versus > div > strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.od-score-page .score-versus img { width: 38px; height: 38px; object-fit: contain; }
.od-score-page .score-versus > span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: var(--ng-global-1); color: var(--ng-text-on-global-1); }
.od-score-page .score-top-picks,
.od-score-page .score-stake-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 12px; }
.od-score-page .score-top-pick,
.od-score-page .score-stake-card { display: grid; gap: 6px; padding: 10px; border-radius: var(--ng-radius-sm); background: var(--ng-global-5); }
.od-score-page .score-top-pick small { color: var(--ng-global-13); }
.od-score-page .score-top-pick-label { display: flex; align-items: center; justify-content: center; gap: 5px; text-align: center; }
.od-score-page .score-top-pick-bookmaker { display: inline; color: var(--ng-global-13); }
.od-score-page .score-top-pick-bookmaker::before { content: '-'; margin-right: 5px; }
.od-score-page .score-calc-box { display: none; }
.od-score-page .score-calc-bar { display: none; }
.od-score-page .score-stake-mobile { display: none; }
.od-score-page .score-detail-actions-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 0; }
.od-score-page .score-tracker-actions,
.od-score-page .score-money-tools,
.od-score-page .score-money-control { display: flex; align-items: center; gap: 8px; }
.od-score-page .score-tracker-actions { flex-wrap: nowrap; }
.od-score-page .score-money-row { margin-left: auto; }
.od-score-page .score-money-step-btn { min-width: 38px; padding-inline: 9px; }
.od-score-page .score-money-dropdown { position: relative; }
.od-score-page .score-money-select-btn { min-width: 174px; justify-content: space-between; }
.od-score-page .score-money-menu { min-width: 174px; }
.od-score-page .score-tab-guard-dialog { width: min(560px, 100%); }
.od-score-page .score-tab-guard-title { color: var(--ng-global-13); }
.od-score-page .score-tab-guard-copy { margin: 0; color: var(--ng-text); }
.od-score-page .score-detail-wrap { position: relative; }
.od-score-page .score-detail-loading { display: none; }
.od-score-page .score-detail-loading.is-visible { display: grid; }
.od-score-page .score-detail-body { flex: 1 1 0; min-height: 0; overflow-y: auto; overflow-x: hidden; }
.od-score-page .score-detail-body.is-hidden { display: none; }
.od-score-page .score-mobile-back { display: none; }
.od-score-page .score-mobile-header-actions { display: none; }
.od-score-page .score-detail-heading { padding: 9px 10px; background: var(--ng-global-3); color: var(--ng-text-on-global-3); font-weight: var(--ng-weight-medium); }
.od-score-page .score-odds-table-head,
.od-score-page .score-odds-table-row { display: grid; grid-template-columns: minmax(180px, 1.3fr) repeat(3, minmax(90px, 1fr)); }
.od-score-page .score-odds-table-head { position: sticky; z-index: 2; top: 0; background: var(--ng-global-3); }
.od-score-page .score-odds-table-head > span { padding: 11px 12px; color: var(--ng-text-on-global-3); font-size: 14px; }
.od-score-page .score-odds-table-head > span:not(:first-child) .score-head-sort-btn { text-align: center; }
.od-score-page .score-head-sort-btn { width: 100%; border: 0; background: transparent; color: inherit; text-align: left; }
.od-score-page .score-odds-table-row { border-bottom: var(--ng-border-width) solid var(--ng-border-subtle); background: var(--ng-global-5); }
.od-score-page .score-bookmaker-cell { display: flex; align-items: center; gap: 6px; min-width: 0; padding: 12px; color: var(--ng-global-13); font-size: 16px; font-weight: var(--ng-weight-medium); }
.od-score-page .score-bookmaker-link:hover { text-decoration: underline; }
.od-score-page .score-odds-cell {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 38px;
    margin: 6px;
    border: 0;
    border-radius: 7px;
    background: var(--ng-global-6);
    color: var(--ng-text);
    font-size: 17px;
    font-weight: var(--ng-weight-medium);
}
.od-score-page .score-super-tag {
    display: inline-block;
    color: var(--ng-global-13);
    font-weight: var(--ng-weight-semibold);
    line-height: 1;
    transform: translateY(-3px);
}
.od-score-page .score-super-tag.is-two-house { font-size: 18px; }
.od-score-page .score-super-tag.is-super-quota { font-size: 25px; }
.od-score-page .score-odds-cell:hover,
.od-score-page .score-odds-cell.is-selected { background: var(--ng-global-9); color: var(--ng-text-on-global-9); }

@media (max-width: 1100px) {
    .od-score-page .score-grid { grid-template-columns: minmax(390px, 1fr) minmax(440px, 1fr); }
    .od-score-page .score-main { grid-template-columns: minmax(120px, 1fr) 16px minmax(128px, .8fr) auto; gap: 7px; }
}

@media (max-width: 850px) {
    .od-score-page .score-shell { width: min(100% - 20px, 680px); margin: 16px auto; }
    .od-score-page .score-grid { grid-template-columns: 1fr; }
    .od-score-page .score-panel { height: calc(100vh - 100px); min-height: 0; }
    .od-score-page .score-detail-calc-layout { grid-template-columns: 1fr; }
}

/* Comparador Score: the mobile detail is the shared modal-sheet pattern, not a second page column. */
@media (max-width: 767px) {
    /* The app main area normally creates a lower stacking context; a modal must escape it. */
    body.od-score-page .od-main { z-index: auto; }
    .od-score-page .score-shell.container { width: 100%; max-width: none; margin-block: 8px; padding-inline: 0; }
    .od-score-page .score-panel:not(.score-panel-right) { height: calc(100dvh - 76px); padding: 10px; }
    .od-score-page .score-head h3 { margin-bottom: 10px; font-size: 20px; }

    .od-score-page .score-view-tabs {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 8px;
        padding-bottom: 8px;
    }
    .od-score-page .score-main-tabs { grid-column: 1; grid-row: 1; width: fit-content; justify-self: start; }
    .od-score-page .score-day-tabs { grid-column: 2; grid-row: 1; margin-left: 0; }
    .od-score-page .score-primary-filters {
        grid-column: 1 / -1;
        grid-row: 2;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
        margin-left: 0;
    }
    .od-score-page .score-primary-filters .score-filter-btn { width: 100%; min-width: 0; }
    .od-score-page .score-toolbar {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
    }
    .od-score-page .score-toolbar .score-filter-btn { width: 100%; min-width: 0; padding-inline: 7px; }
    .od-score-page .score-toolbar .score-toggle-row {
        grid-column: 1 / -1;
        justify-self: center;
    }

    .od-score-page .score-group { margin-bottom: 8px; }
    .od-score-page .score-group-head { min-height: 46px; padding: 9px 11px; }
    .od-score-page .score-row {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 9px;
        padding: 11px;
    }
    .od-score-page .score-row .score-main { display: contents; }
    .od-score-page .score-time { grid-column: 1; grid-row: 1; align-self: center; color: var(--ng-global-10); font-weight: var(--ng-weight-semibold); }
    .od-score-page .score-side { grid-column: 2; grid-row: 1; gap: 7px; }
    .od-score-page .score-side .od-rating-badge { font-size: 14px; }
    .od-score-page .score-teams { grid-column: 1 / -1; grid-row: 2; gap: 6px; }
    .od-score-page .score-teams span { font-size: 16px; font-weight: var(--ng-weight-semibold); }
    .od-score-page .score-hot-icon { display: none; }
    .od-score-page .score-odds { grid-column: 1 / -1; grid-row: 3; width: min(168px, 100%); gap: 6px; }
    .od-score-page .score-odds > span { gap: 2px; }
    .od-score-page .score-odd-pill { padding: 6px 3px; font-size: 15px; }

    .od-score-page .score-mobile-detail-dialog {
        position: fixed;
        z-index: 1200;
        inset: 3px;
        display: flex;
        width: auto;
        height: auto;
        min-height: 0;
        max-height: none;
        padding: 0;
        overflow: hidden;
        border: var(--ng-border-width) solid var(--ng-global-11);
        border-radius: var(--ng-radius-md);
        background: var(--ng-global-2);
        box-shadow: 0 0 0 100vmax rgba(0, 20, 13, .58), var(--ng-shadow);
    }

    .od-score-page .score-mobile-header-actions { display: inline-flex !important; align-items: center; gap: 6px; margin-left: auto; }
    .od-score-page .score-mobile-header-actions .od-button-icon { width: 34px; min-width: 34px; height: 34px; }
    .od-score-page .score-mobile-detail-dialog .score-detail-time { display: none; }
    .od-score-page .score-mobile-detail-dialog .score-detail-scroll { overflow-y: auto; }
    .od-score-page .score-mobile-detail-dialog .score-detail-wrap { padding: 10px; overflow: visible; }
    .od-score-page .score-mobile-detail-dialog .score-detail-fixed { display: grid; gap: 10px; }
    .od-score-page .score-mobile-detail-dialog .score-detail-headline { order: 1; padding: 9px 10px; }
    .od-score-page .score-mobile-detail-dialog .score-detail-time { font-size: 13px; }
    .od-score-page .score-mobile-detail-dialog .score-detail-calc-layout { display: contents; }
    .od-score-page .score-mobile-detail-dialog .score-detail-market-stack { display: contents; padding: 0; background: transparent; }
    .od-score-page .score-mobile-detail-dialog .score-versus { order: 2; padding: 10px; border-radius: var(--ng-radius-sm); background: var(--ng-global-5); }
    .od-score-page .score-mobile-detail-dialog .score-versus img { width: 30px; height: 30px; }
    .od-score-page .score-mobile-detail-dialog .score-versus > span { width: 32px; height: 32px; }

    .od-score-page .score-mobile-detail-dialog .score-calc-summary-card {
        order: 3;
        grid-template-rows: auto;
        grid-template-columns: minmax(82px, .6fr) minmax(0, 1fr);
        gap: 10px;
        padding: 10px;
    }

    .od-score-page .score-mobile-detail-dialog .score-detail-rating-badge { min-height: 0; font-size: 26px; }
    .od-score-page .score-mobile-detail-dialog .score-summary-split { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    .od-score-page .score-mobile-detail-dialog .score-summary-line:first-child { grid-column: 1 / -1; }
    .od-score-page .score-mobile-detail-dialog .score-top-picks { order: 4; grid-template-columns: 1fr; gap: 8px; margin-top: 0; }
    .od-score-page .score-mobile-detail-dialog .score-top-pick { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: end; gap: 8px; }
    .od-score-page .score-mobile-detail-dialog .score-top-pick > small { grid-column: 1 / -1; }
    .od-score-page .score-mobile-detail-dialog .score-top-pick-input,
    .od-score-page .score-mobile-detail-dialog .score-top-stake-value { min-width: 0; width: 100%; }

    .od-score-page .score-mobile-detail-dialog .score-detail-actions-row {
        order: 5;
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 0;
    }

    .od-score-page .score-mobile-detail-dialog .score-money-row { margin: 0; }
    .od-score-page .score-mobile-detail-dialog .score-money-tools { display: block; width: 100%; }
    .od-score-page .score-mobile-detail-dialog .score-money-control { display: grid; grid-template-columns: 40px minmax(0, 1fr) 40px; width: 100%; gap: 7px; }
    .od-score-page .score-mobile-detail-dialog .score-money-select-btn { width: 100%; min-width: 0; padding-inline: 8px; }
    .od-score-page .score-mobile-detail-dialog .score-money-step-btn { min-width: 0; padding: 0; }
    .od-score-page .score-mobile-detail-dialog .score-money-step-btn > span { display: none; }
    .od-score-page .score-mobile-detail-dialog .score-tracker-actions,
    .od-score-page .score-mobile-detail-dialog .btn-tracker { width: 100%; }
    .od-score-page .score-mobile-detail-dialog .score-tracker-actions { order: 2; }
    .od-score-page .score-mobile-detail-dialog .score-money-row { order: 1; }
    .od-score-page .score-mobile-detail-dialog .score-detail-fixed { margin-bottom: 12px; }
    .od-score-page .score-mobile-detail-dialog .score-detail-body { flex: 0 0 auto; min-height: auto; overflow: visible; }
    .od-score-page .score-mobile-detail-dialog .score-odds-table-head { position: static; }
    .od-score-page .score-mobile-detail-dialog .score-odds-table-head,
    .od-score-page .score-mobile-detail-dialog .score-odds-table-row { grid-template-columns: minmax(0, 1.35fr) repeat(3, minmax(0, .65fr)); }
    .od-score-page .score-mobile-detail-dialog .score-odds-table-head > span,
    .od-score-page .score-mobile-detail-dialog .score-bookmaker-cell { padding: 9px 6px; font-size: 13px; }
    .od-score-page .score-mobile-detail-dialog .score-odds-cell { min-width: 0; min-height: 34px; margin: 4px 2px; font-size: 14px; }
}

/* Billetera: composition of the shared global primitives. */
.wallet-global-page { width: min(1180px, calc(100% - 32px)); margin: 30px auto; color: var(--ng-text); }
.wallet-global-panel { display: grid; gap: 18px; padding: 18px; }
.wallet-header, .wallet-title-wrap, .wallet-header-actions, .wallet-toolbar, .wallet-profile-manager-head, .wallet-row-actions { display: flex; align-items: center; gap: 10px; }
.wallet-header { justify-content: space-between; }
.wallet-title-wrap > .od-icon-box { display: grid; place-items: center; width: 42px; height: 42px; border: var(--ng-border-width) solid var(--ng-global-11); border-radius: var(--ng-radius-sm); color: var(--ng-global-13); }
.wallet-title-wrap h1 { margin: 0; text-align: left; }
.wallet-title-wrap p, .wallet-filter > span, .wallet-profile-manager-head span { color: var(--ng-text-muted); }
.wallet-header-actions { margin-left: auto; flex-wrap: wrap; }
.wallet-stats-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.wallet-stat.od-badge-global-1 { display: grid; place-items: center; gap: 5px; min-height: 110px; padding: 14px; text-align: center; }
.wallet-stat > i, .wallet-stat > strong { color: var(--ng-global-13); font-size: 25px; font-weight: var(--ng-weight-medium); }
.wallet-stat > span { color: var(--ng-text-muted); }
.wallet-content { display: grid; gap: 16px; }
.wallet-toolbar { flex-wrap: wrap; }
.wallet-filter { display: grid; gap: 6px; flex: 1 1 180px; font-weight: var(--ng-weight-medium); }
.wallet-search { align-self: end; flex: 2 1 280px; }
.wallet-profile-manager { display: grid; gap: 10px; padding: 14px; border-radius: var(--ng-radius-sm); background: var(--ng-global-5); }
.wallet-profile-manager-head { justify-content: space-between; }
.wallet-profile-search { width: min(280px, 100%); }
.wallet-profile-list { display: flex; flex-wrap: wrap; gap: 8px; }
.wallet-profile-chip, .wallet-type { display: inline-flex; align-items: center; gap: 5px; padding: 5px 8px; border-radius: var(--ng-radius-sm); background: var(--ng-global-8); }
.wallet-profile-name-btn, .wallet-profile-delete-btn { border: 0; background: transparent; color: inherit; }
.wallet-table-wrap { overflow-x: auto; }
.wallet-table { min-width: 950px; }
.wallet-money.is-positive { color: var(--ng-global-13); font-weight: var(--ng-weight-medium); }
.wallet-money.is-negative { color: var(--ng-text); }
.wallet-row-actions .od-tool-icon-btn { display: grid; place-items: center; width: 36px; height: 36px; border: var(--ng-border-width) solid var(--ng-global-11); border-radius: var(--ng-radius-sm); background: var(--ng-global-4); color: var(--ng-text-on-global-4); }
.wallet-page-btn { padding: 8px 12px; border: var(--ng-border-width) solid var(--ng-global-11); border-radius: var(--ng-radius-sm); background: var(--ng-global-4); color: var(--ng-text-on-global-4); }
.wallet-pager, .wallet-pager-actions { display: flex; align-items: center; gap: 10px; justify-content: space-between; }
.wallet-global-page .wallet-modal, .wallet-global-page .confirm-modal { max-height: calc(100vh - 40px); overflow: auto; }
.wallet-global-page .wallet-modal-movement, .wallet-global-page .wallet-profile-detail-modal { width: min(900px, 100%); }
.wallet-modal-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.wallet-field { display: grid; gap: 6px; color: var(--ng-text); font-weight: var(--ng-weight-medium); }
.wallet-field-full { grid-column: 1 / -1; }
.wallet-profile-detail-title-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 16px; padding-right: 46px; }
.wallet-profile-detail-title-row .od-modal-global-1__title { margin: 0; }
.wallet-profile-detail-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.wallet-profile-detail-item.od-badge-global-1 { display: grid; gap: 5px; min-width: 0; padding: 12px; }
.wallet-profile-detail-item > span, .wallet-profile-house-item > div:first-child > span { color: var(--ng-text-muted); font-size: 13px; }
.wallet-profile-detail-item > strong, .wallet-profile-detail-item > p { margin: 0; color: var(--ng-text); overflow-wrap: anywhere; }
.wallet-profile-detail-notes { grid-column: 1 / -1; }
.wallet-profile-houses-panel.od-badge-global-1 { display: grid; gap: 10px; margin-top: 14px; padding: 14px; }
.wallet-profile-houses-head, .wallet-profile-house-bulk, .wallet-profile-house-item, .wallet-profile-house-item > div:last-child { display: flex; align-items: center; gap: 8px; }
.wallet-profile-houses-head { justify-content: space-between; }
.wallet-profile-house-list { display: grid; gap: 8px; }
.wallet-profile-house-item.od-badge-global-1 { justify-content: space-between; min-width: 0; padding: 10px 12px; }
.wallet-profile-house-item > div:first-child { display: grid; gap: 4px; min-width: 0; }
.wallet-profile-house-empty { margin: 0; color: var(--ng-text-muted); }
@media (max-width: 767px) { .wallet-header { align-items: stretch; flex-direction: column; } .wallet-header-actions { margin-left: 0; } .wallet-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .wallet-modal-grid { grid-template-columns: 1fr; } .wallet-table-wrap { overflow: visible; } .wallet-table { width: 100%; min-width: 0; } .wallet-field-full { grid-column: auto; } .wallet-profile-manager-head { align-items: stretch; flex-direction: column; } .wallet-profile-search { width: 100%; } }
@media (max-width: 767px) { .wallet-profile-detail-title-row, .wallet-profile-houses-head, .wallet-profile-house-item { align-items: stretch; flex-direction: column; } .wallet-profile-detail-title-row { padding-right: 44px; } .wallet-profile-detail-grid { grid-template-columns: 1fr; } .wallet-profile-detail-notes { grid-column: auto; } .wallet-profile-house-bulk, .wallet-profile-house-item > div:last-child { flex-wrap: wrap; } }

/* Add days: composition of Global Panel 2, inputs, tabs, badges and table. */
.add-days-global-page { width: min(1100px, calc(100% - 32px)); margin: 30px auto; }
.add-days-global-panel, .add-days-content, .add-days-access-section, .add-days-history-section, .add-days-control-section, .add-days-field { display: grid; gap: 12px; }
.add-days-global-panel { padding: 18px; }
.add-days-page-header { display: grid; gap: 6px; text-align: center; }
.add-days-eyebrow, .add-days-label { color: var(--ng-global-13); font-size: 13px; font-weight: var(--ng-weight-semibold); text-transform: uppercase; }
.add-days-page-header .add-days-eyebrow, .add-days-page-copy { margin: 0; }
.add-days-page-copy { color: var(--ng-text-muted); }
.add-days-status { padding: 10px 12px; }
.add-days-section-heading { display: grid; gap: 3px; }
.add-days-section-heading h2, .add-days-found-user h3, .add-days-empty h3 { margin: 0; color: var(--ng-text); font-size: 20px; font-weight: var(--ng-weight-medium); }
.add-days-search-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 10px; }
.add-days-field { color: var(--ng-text); font-weight: var(--ng-weight-medium); }
.add-days-field > small, .add-days-error { color: var(--ng-text-muted); }
.add-days-found-user { display: grid; grid-template-columns: minmax(0, 1fr) minmax(230px, .45fr); gap: 12px; align-items: stretch; padding: 14px; }
.add-days-found-user p { margin: 5px 0 0; color: var(--ng-text-muted); }
.add-days-current-tier { display: grid; align-content: center; gap: 5px; padding: 12px; }
.add-days-current-tier > :is(span, strong, small) { color: var(--ng-text); }
.add-days-current-tier > strong { font-size: 18px; }
.add-days-duration-tabs .od-tab-global-1 { flex: 1 1 0; }
.add-days-global-panel .od-tab-global-1 { font-size: 16px; }
.add-days-confirm { display: flex; align-items: center; justify-content: center; gap: 18px; padding: 14px; }
.add-days-confirm > div { display: grid; gap: 4px; text-align: center; }
.add-days-confirm > div > span { color: var(--ng-text-muted); font-size: 13px; font-weight: var(--ng-weight-semibold); text-transform: uppercase; }
.add-days-confirm > div > strong { color: var(--ng-text-on-global-4); }
.add-days-empty { display: grid; min-height: 180px; place-items: center; align-content: center; gap: 8px; padding: 20px; text-align: center; }
.add-days-empty > i { color: var(--ng-global-13); font-size: 28px; }
.add-days-empty p { margin: 0; color: var(--ng-text-muted); }
.add-days-table-wrap { overflow-x: auto; }
.add-days-table-wrap .od-table-global-1 { min-width: 760px; }
.add-days-table-wrap .od-table-global-1 th:nth-child(1), .add-days-table-wrap .od-table-global-1 th:nth-child(2) { width: 12%; }
.add-days-table-wrap .od-table-global-1 th:nth-child(3), .add-days-table-wrap .od-table-global-1 th:nth-child(4) { width: 9%; }
.add-days-table-wrap .od-table-global-1 th:nth-child(5) { width: 43%; }
.add-days-table-wrap .od-table-global-1 th:nth-child(6) { width: 15%; }
@media (max-width: 767px) { .add-days-global-page { width: min(100% - 20px, 1100px); margin-block: 16px; } .add-days-global-panel { padding: 14px; } .add-days-search-row, .add-days-found-user { grid-template-columns: 1fr; } .add-days-search-row .od-button-global-1 { width: 100%; } .add-days-duration-tabs { overflow-x: auto; } .add-days-duration-tabs .od-tab-global-1 { flex: 0 0 auto; white-space: nowrap; } .add-days-confirm { align-items: stretch; flex-direction: column; } .add-days-table-wrap { overflow: visible; } .add-days-table-wrap .od-table-global-1 { width: 100%; min-width: 0; } }

/* Control panel: layout composition using the global surface and controls. */
.control-global-page { width: min(1440px, calc(100% - 32px)); margin: 30px auto; }
.control-global-panel, .control-global-section, .control-settings-form { display: grid; gap: 16px; padding: 18px; }
.control-global-header { display: grid; gap: 6px; text-align: center; }
.control-global-eyebrow { color: var(--ng-global-13); font-size: 13px; font-weight: var(--ng-weight-semibold); text-transform: uppercase; }
.control-global-header :is(.control-global-eyebrow, .control-global-copy) { margin: 0; }
.control-global-copy, .control-modal-copy, .control-access small, .control-users-table td small { color: var(--ng-text-muted); }
.control-global-tabs .od-tab-global-1 { flex: 1 1 0; font-size: 16px; }
.control-global-status { padding: 10px 12px; }
.control-global-section { padding: 0; }
.control-global-section-head, .control-global-user-actions { display: flex; align-items: end; gap: 10px; }
.control-global-section-head { display: grid; grid-template-columns: minmax(0, 1fr) auto; justify-content: normal; }
.control-global-section-head h2, .control-settings-block h3 { margin: 3px 0 0; color: var(--ng-text); font-size: 20px; font-weight: var(--ng-weight-medium); }
.control-global-user-actions { flex-wrap: nowrap; justify-content: flex-end; }
.control-global-user-actions > .od-button-global-1 { flex: 0 0 auto; white-space: nowrap; }
.control-global-search { width: 360px; flex: 1 1 360px; min-width: 240px; }
.control-global-table-wrap { overflow-x: auto; }
.control-global-table-wrap .od-table-global-1 { min-width: 760px; }
.control-users-table th:nth-child(1) { width: 31%; }.control-users-table th:nth-child(2) { width: 19%; }.control-users-table th:nth-child(3) { width: 13%; }.control-users-table th:nth-child(4) { width: 17%; }.control-users-table th:nth-child(5) { width: 20%; }
.control-users-table td:first-child { display: grid; gap: 4px; }.control-user-state { display: inline-flex; align-items: center; gap: 8px; min-width: 104px; color: var(--ng-text); }.control-access { display: grid; gap: 4px; }
.control-pagination { display: flex; justify-content: center; }
.control-modal-small { width: min(520px, 100%); }.control-modal-copy { margin: -8px 0 14px; }
.control-global-field { display: grid; gap: 6px; color: var(--ng-text); }.control-global-field small { color: var(--ng-text-muted); }
.control-create-grid, .control-settings-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }.control-field-full { grid-column: 1 / -1; }
.control-tiers-table { min-width: 0 !important; }.control-tiers-table th:nth-child(1) { width: 10%; }.control-tiers-table th:nth-child(2), .control-tiers-table th:nth-child(3), .control-tiers-table th:nth-child(4) { width: 12%; }.control-tiers-table th:nth-child(5) { width: 25%; }.control-tiers-table th:nth-child(6), .control-tiers-table th:nth-child(7) { width: 10%; }.control-tiers-table th:nth-child(8) { width: 9%; }.control-tiers-table td:first-child { display: grid; gap: 7px; }.control-tier-code { width: fit-content; padding: 5px 8px; }.control-switch-line { display: inline-flex; align-items: center; gap: 8px; color: var(--ng-text); font-weight: var(--ng-weight-medium); }
.control-tiers-table tbody { counter-reset: control-tier; }
.control-tiers-table tbody > tr { counter-increment: control-tier; }
.control-tiers-table thead th:first-child { font-size: 0; }
.control-tiers-table thead th:first-child::after { content: 'Tier'; font-size: 12px; }
.control-tiers-table tbody > tr > td:first-child { display: block; }
.control-tiers-table tbody > tr > td:first-child > :is(.control-tier-code, small) { display: none; }
.control-tiers-table tbody > tr > td:first-child::after { content: 'Tier ' counter(control-tier); color: var(--ng-text); font-weight: var(--ng-weight-medium); }
@media (min-width: 768px) { .control-tiers-table tbody > tr > td:first-child { display: table-cell; vertical-align: middle; } }
@media (max-width: 767px) { .control-tiers-table tbody > tr > td:first-child::after { color: var(--ng-text-on-global-1); } }
.control-movements-table th:nth-child(1), .control-movements-table th:nth-child(2) { width: 12%; }.control-movements-table th:nth-child(3), .control-movements-table th:nth-child(4) { width: 9%; }.control-movements-table th:nth-child(5) { width: 43%; }.control-movements-table th:nth-child(6) { width: 15%; }
.control-settings-block { display: grid; gap: 14px; padding: 14px; }.control-theme-field { max-width: 330px; }
@media (max-width: 767px) { .control-global-page { width: min(100% - 20px, 1180px); margin-block: 16px; }.control-global-panel { padding: 14px; }.control-global-tabs { overflow-x: auto; }.control-global-tabs .od-tab-global-1 { flex: 0 0 auto; white-space: nowrap; }.control-global-section-head { display: flex; align-items: stretch; flex-direction: column; }.control-global-user-actions { align-items: stretch; flex-direction: column; flex-wrap: wrap; }.control-global-search { width: 100%; }.control-create-grid, .control-settings-grid { grid-template-columns: 1fr; }.control-field-full { grid-column: auto; } }

@media (max-width: 767px) {
    .control-global-search {
        flex: 0 1 auto;
        min-height: 36px;
    }

    .control-global-table-wrap {
        overflow: visible;
    }

    .control-global-table-wrap .od-table-global-1 {
        width: 100%;
        min-width: 0;
    }

    .control-users-table tbody > tr.od-table-row-card-global-1 > td:first-child {
        display: grid;
        grid-column: 1 / -1;
        gap: 0;
        padding: 0;
        border-bottom: 0;
        background: transparent;
        color: var(--ng-text);
    }

    .control-users-table tbody > tr.od-table-row-card-global-1 > td:first-child > strong {
        display: block;
        padding: 10px 12px;
        background: var(--ng-global-1);
        color: var(--ng-text-on-global-1);
        font-weight: var(--ng-weight-semibold);
    }

    .control-users-table tbody > tr.od-table-row-card-global-1 > td:first-child > small {
        display: block;
        padding: 0 12px 10px;
        background: var(--ng-global-5);
        font-size: 14px;
        line-height: 1.45;
    }

    .control-users-table tbody > tr.od-table-row-card-global-1 > td:nth-child(4) {
        grid-column: 1 / -1;
    }
}

/* Alert center: layout composition using Global 2 and shared controls only. */
.alerts-global-page { width: min(1180px, calc(100% - 32px)); margin: 30px auto; }
.alerts-global-panel, .alerts-global-section { display: grid; gap: 16px; padding: 18px; }
.alerts-global-header { display: grid; gap: 6px; text-align: center; }
.alerts-global-eyebrow { margin: 0; color: var(--ng-global-13); font-size: 13px; font-weight: var(--ng-weight-semibold); text-transform: uppercase; }
.alerts-global-copy { margin: 0; color: var(--ng-text-muted); }
.alerts-global-summary { display: flex; align-items: stretch; justify-content: center; gap: 12px; flex-wrap: wrap; }
.alerts-global-stat { display: grid; min-width: 120px; gap: 4px; place-items: center; padding: 10px 14px; text-align: center; }
.alerts-global-stat span { color: var(--ng-text-muted); font-size: 13px; text-transform: uppercase; }
.alerts-global-stat strong { color: var(--ng-text); font-size: 22px; font-weight: var(--ng-weight-medium); }
.alerts-global-notice { padding: 12px; text-align: center; }
.alerts-global-section { padding: 0; }
.alerts-global-section-head { display: grid; gap: 4px; }
.alerts-global-section-head h2, .alerts-global-empty h3, .alerts-global-item h3 { margin: 0; color: var(--ng-text); font-weight: var(--ng-weight-medium); }
.alerts-global-section-head h2 { font-size: 20px; }
.alerts-global-list { display: grid; gap: 12px; }
.alerts-global-item { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 14px; }
.alerts-global-item.is-unread { outline: var(--ng-border-width) solid var(--ng-global-7); outline-offset: -1px; }
.alerts-global-icon { display: grid; width: 42px; height: 42px; place-items: center; padding: 0; font-size: 19px; }
.alerts-global-item-body { min-width: 0; }
.alerts-global-item-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.alerts-global-item h3 { font-size: 17px; }.alerts-global-item p { margin: 4px 0 0; color: var(--ng-text); line-height: 1.45; }.alerts-global-item time { flex: 0 0 auto; color: var(--ng-text-muted); font-size: 13px; white-space: nowrap; }
.alerts-global-meta { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }.alerts-global-meta .od-badge-global-1 { padding: 4px 7px; }
.alerts-global-empty { display: grid; min-height: 180px; gap: 8px; place-items: center; padding: 18px; text-align: center; }.alerts-global-empty i { color: var(--ng-global-13); font-size: 26px; }.alerts-global-empty p { margin: 0; color: var(--ng-text-muted); }
.alerts-global-pagination { display: flex; justify-content: center; }
@media (max-width: 767px) { .alerts-global-page { width: min(100% - 20px, 1180px); margin-block: 16px; }.alerts-global-panel { padding: 14px; }.alerts-global-item { grid-template-columns: 1fr; }.alerts-global-item-head { display: grid; }.alerts-global-item time { white-space: normal; }.alerts-global-item > .od-button-icon { justify-self: end; } }

/* Account settings: Global 2 surface with global inputs and actions. */
.profile-global-page { width: min(1080px, calc(100% - 32px)); margin: 30px auto; }
.profile-global-panel { display: grid; gap: 18px; padding: 18px; }
.profile-global-header { display: grid; gap: 6px; text-align: center; }.profile-global-eyebrow { margin: 0; color: var(--ng-global-13); font-size: 13px; font-weight: var(--ng-weight-semibold); text-transform: uppercase; }.profile-global-copy { margin: 0; color: var(--ng-text-muted); }
.profile-global-sections { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: start; }.profile-global-section { display: grid; gap: 14px; padding: 16px; }
.profile-global-section-head { display: flex; align-items: start; justify-content: space-between; gap: 12px; }.profile-global-section-head h2 { margin: 3px 0 0; color: var(--ng-text); font-size: 20px; font-weight: var(--ng-weight-medium); }
.profile-global-status { padding: 10px 12px; }.profile-global-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }.profile-global-field { display: grid; gap: 6px; color: var(--ng-text); }.profile-global-field small { color: var(--ng-text-muted); }.profile-global-full { grid-column: 1 / -1; }.profile-global-theme { max-width: 280px; }
@media (max-width: 767px) { .profile-global-page { width: min(100% - 20px, 1080px); margin-block: 16px; }.profile-global-panel { padding: 14px; }.profile-global-sections, .profile-global-fields { grid-template-columns: 1fr; }.profile-global-full { grid-column: auto; }.profile-global-section-head { align-items: stretch; flex-direction: column; }.profile-global-theme { max-width: none; } }

/* Public landing: Global 2 shell plus shared inputs, buttons and modal. */
.od-nav-guest .od-guest-actions { display: flex; margin-inline: auto; }
.landing-global-page { display: grid; min-height: calc(100vh - 48px); place-items: center; padding: 30px 16px; }
.landing-global-layout { display: grid; width: min(1220px, 100%); grid-template-columns: minmax(0, 1.25fr) minmax(360px, .75fr); gap: 42px; align-items: center; }
.landing-global-copy { display: grid; gap: 22px; }.landing-global-copy .od-page-title-global-1 { text-align: left; font-size: clamp(32px, 3vw, 44px); }.landing-global-copy > p { margin: 0; color: var(--ng-text-muted); font-size: 19px; line-height: 1.65; }
.landing-global-features { display: grid; gap: 14px; }.landing-global-features > div { display: flex; align-items: center; gap: 12px; color: var(--ng-text); font-size: 17px; }.landing-global-features i { color: var(--ng-global-13); font-size: 21px; }
.landing-global-login { display: grid; gap: 18px; padding: 24px; }.landing-global-notice { padding: 12px 14px; font-size: 16px; }
.landing-global-login-form { display: grid; gap: 18px; }.landing-global-login-form h2 { margin: 3px 0 0; color: var(--ng-text); font-size: 28px; font-weight: var(--ng-weight-medium); }.landing-global-eyebrow { margin: 0; color: var(--ng-global-13); font-size: 15px; font-weight: var(--ng-weight-semibold); text-transform: uppercase; }.landing-global-field { display: grid; gap: 8px; color: var(--ng-text); font-size: 16px; }.landing-global-field .od-input-global-1 { min-height: 48px; font-size: 16px; }.landing-global-login-form .od-button-global-1 { min-height: 48px; font-size: 16px; }.landing-global-field small { color: var(--ng-text-muted); }
.landing-global-register-form { width: min(680px, 100%); }
@media (max-width: 767px) { .landing-global-page { min-height: calc(100vh - 48px); padding: 16px 10px; }.landing-global-layout { grid-template-columns: 1fr; gap: 20px; }.landing-global-copy .od-page-title-global-1 { text-align: center; }.landing-global-copy > p { text-align: center; }.landing-global-register-form .od-modal-global-1__grid { grid-template-columns: 1fr; } }

/* Telegram: Global 2 shell with shared buttons, badges and modal. */
.telegram-global-page { width: min(1180px, calc(100% - 32px)); margin: 30px auto; }.telegram-global-panel { display: grid; gap: 18px; padding: 20px; }.telegram-global-header { display: grid; gap: 6px; text-align: center; }.telegram-global-header > p:last-child { margin: 0; color: var(--ng-text-muted); }.telegram-global-eyebrow { margin: 0; color: var(--ng-global-13); font-size: 13px; font-weight: var(--ng-weight-semibold); text-transform: uppercase; }
.telegram-global-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(250px, .34fr); gap: 16px; align-items: start; }.telegram-global-primary-stack { display: grid; gap: 16px; min-width: 0; }.telegram-global-main, .telegram-global-side { display: grid; gap: 16px; padding: 16px; }.telegram-global-main { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: 'connection message' 'connection actions'; align-items: center; gap: 10px 16px; padding: 12px; }.telegram-global-connection-head, .telegram-global-unavailable { display: flex; align-items: center; gap: 14px; padding: 16px; }.telegram-global-main .telegram-global-connection-head { grid-area: connection; gap: 10px; padding: 0; }.telegram-global-icon { display: grid; width: 46px; height: 46px; flex: 0 0 auto; place-items: center; padding: 0; color: var(--ng-global-13); font-size: 22px; }.telegram-global-main .telegram-global-icon { width: 38px; height: 38px; font-size: 18px; }.telegram-global-connection-head h2, .telegram-global-side h2, .telegram-global-unavailable h2, .telegram-global-settings h3 { margin: 0; color: var(--ng-text); font-size: 20px; font-weight: var(--ng-weight-medium); }.telegram-global-connection-head p, .telegram-global-unavailable p, .telegram-global-settings p, .telegram-global-link-intro { margin: 5px 0 0; color: var(--ng-text-muted); }
.od-telegram-status { display: inline-flex; width: fit-content; padding: 5px 8px; font-size: 13px; font-weight: var(--ng-weight-medium); }.od-telegram-status.is-linked { color: var(--ng-global-13); }
.telegram-global-message { display: inline-flex; width: fit-content; justify-self: start; align-items: center; gap: 8px; margin: 0; padding: 8px 10px; }.telegram-global-main .telegram-global-message { grid-area: message; padding: 6px 8px; }.telegram-global-message i { color: var(--ng-global-13); }.telegram-global-actions, .telegram-global-bookmaker-tools { display: flex; flex-wrap: wrap; gap: 10px; }.telegram-global-main .telegram-global-actions { grid-area: actions; justify-content: flex-end; }.telegram-global-main .is-hidden, .telegram-global-primary-stack .is-hidden, .telegram-global-page > .is-hidden { display: none !important; }
.telegram-global-link-box, .telegram-global-settings, .telegram-global-settings-section { display: grid; gap: 12px; padding: 14px; }.telegram-global-link-box { justify-items: center; text-align: center; color: var(--ng-text); }.telegram-global-link-box h3 { margin: 0; color: var(--ng-global-13); font-size: 18px; font-weight: var(--ng-weight-medium); text-transform: uppercase; }.telegram-global-manual-steps { width: min(100%, 400px); margin: 0; padding-left: 22px; color: var(--ng-text); font-size: 16px; text-align: left; }.telegram-global-manual-steps > li + li { margin-top: 12px; }.telegram-global-manual-steps > li > span { display: block; }.telegram-global-manual-steps .od-button-global-1 { width: 100%; justify-content: space-between; margin-top: 7px; }
.telegram-global-settings-head, .telegram-global-settings-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }.telegram-global-settings-heading > strong { color: var(--ng-global-13); font-size: 20px; font-weight: var(--ng-weight-medium); }.telegram-global-rating-options, .telegram-global-bookmaker-grid { display: flex; flex-wrap: wrap; gap: 8px; }.telegram-global-rating-options label, .telegram-global-bookmaker-grid label { display: inline-flex; align-items: center; gap: 6px; padding: 6px 8px; color: var(--ng-text); cursor: pointer; }.telegram-global-rating-options input, .telegram-global-bookmaker-grid input { accent-color: var(--ng-global-13); }
.telegram-global-side dl { display: grid; gap: 14px; margin: 0; }.telegram-global-side dl > div { display: grid; gap: 4px; }.telegram-global-side dt { color: var(--ng-global-13); font-size: 13px; font-weight: var(--ng-weight-medium); text-transform: uppercase; }.telegram-global-side dd { margin: 0; color: var(--ng-text); }.telegram-global-reset { width: min(520px, 100%); }.telegram-global-reset > p { margin: -8px 0 0; color: var(--ng-text-muted); }
@media (max-width: 767px) { .telegram-global-page { width: min(100% - 20px, 1180px); margin-block: 16px; }.telegram-global-panel { padding: 14px; }.telegram-global-grid, .telegram-global-link-grid { grid-template-columns: 1fr; }.telegram-global-main { grid-template-columns: 1fr; grid-template-areas: 'connection' 'message' 'actions'; align-items: start; }.telegram-global-main .telegram-global-actions { justify-content: flex-start; }.telegram-global-settings-head, .telegram-global-settings-heading { align-items: stretch; flex-direction: column; }.telegram-global-settings-head .od-button-global-1 { width: 100%; }.telegram-global-connection-head, .telegram-global-unavailable { align-items: flex-start; } }

.new-guide-page { width: min(1180px, calc(100% - 32px)); margin: 30px auto; }
.guides-page { width: min(1180px, calc(100% - 32px)); min-height: calc(100dvh - 112px); display: grid; margin: 30px auto; }.guides-panel { display: grid; min-height: 100%; grid-template-rows: auto minmax(0, 1fr) auto; gap: 16px; padding: 20px; }.guides-header { display: flex; align-items: end; justify-content: space-between; gap: 16px; padding-bottom: 14px; border-bottom: var(--ng-border-width) solid var(--ng-global-11); }.guides-header h1, .guide-header h1 { margin: 0; }.guides-heading { display: grid; gap: 10px; }.guides-tabs { display: flex; align-items: center; gap: 4px; }.guides-tabs a { padding: 7px 10px; color: var(--ng-text-muted); border-bottom: 2px solid transparent; font-size: 13px; font-weight: var(--ng-weight-semibold); text-decoration: none; }.guides-tabs a.is-active { color: var(--ng-global-13); border-bottom-color: var(--ng-global-13); }.guides-header-actions { display: flex; align-items: end; gap: 10px; }.guides-filter { display: grid; gap: 5px; min-width: 210px; }.guides-filter label { color: var(--ng-text-muted); font-size: 12px; font-weight: var(--ng-weight-semibold); }.guides-filter select { min-height: 36px; }.guides-create-action { min-height: 36px; white-space: nowrap; }.guides-grid { display: grid; align-content: start; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }.guides-card { display: grid; gap: 13px; min-width: 0; padding: 13px; }.guides-card-main { display: grid; grid-template-columns: 68px minmax(0, 1fr); align-items: start; gap: 11px; }.guides-card-main > img { display: block; width: 68px; height: 68px; border-radius: var(--ng-radius-sm); object-fit: cover; }.guides-card-main > div { display: grid; align-content: start; gap: 6px; min-width: 0; }.guides-type { width: fit-content; color: var(--ng-global-13); font-size: 12px; font-weight: var(--ng-weight-semibold); }.guides-card h2 { margin: 0; color: var(--ng-text); font-size: 16px; font-weight: var(--ng-weight-semibold); line-height: 1.25; overflow-wrap: anywhere; }.guides-card p, .guide-header > p { margin: 0; color: var(--ng-text-muted); font-size: 13px; line-height: 1.35; overflow-wrap: anywhere; }.guides-card-summary { display: flex; gap: 8px; padding: 9px; background: var(--ng-global-14); border: 0; border-radius: var(--ng-radius-sm); }.guides-card-summary span { display: grid; flex: 1 1 0; min-width: 0; gap: 3px; color: var(--ng-global-13); font-size: 14px; font-weight: var(--ng-weight-semibold); text-align: center; overflow-wrap: anywhere; }.guides-card-summary small { color: var(--ng-text-muted); font-size: 10px; font-weight: var(--ng-weight-semibold); text-transform: uppercase; }.guides-card-action { justify-content: center; width: 100%; }.guides-week-range { display: grid; gap: 2px; margin: -5px 0 0; color: var(--ng-text-muted); font-size: 11px; line-height: 1.3; text-align: center; }.guides-week-range span:first-child { color: var(--ng-global-13); }.guides-admin-actions { display: flex; align-items: center; justify-content: space-between; gap: 10px; }.guides-card-edit { min-height: 34px; padding-inline: 11px; }.guides-admin-actions form { margin: 0; }.guides-visible { display: inline-flex; align-items: center; gap: 7px; color: var(--ng-text-muted); font-size: 12px; font-weight: var(--ng-weight-semibold); }.guides-empty { display: grid; min-height: 180px; place-items: center; gap: 8px; grid-column: 1 / -1; text-align: center; }.guides-empty i { color: var(--ng-global-13); font-size: 28px; }.guides-empty p { margin: 0; color: var(--ng-text-muted); }.guides-pagination { margin-top: 2px; }.guide-header { display: grid; gap: 7px; margin-bottom: 18px; }.guide-page { width: min(900px, calc(100% - 32px)); display: grid; gap: 18px; margin: 30px auto; padding: 20px; }.guide-featured-image { width: 100%; max-height: 420px; object-fit: cover; border-radius: var(--ng-radius-md); }.guide-body { color: var(--ng-text); line-height: 1.65; overflow-wrap: anywhere; }.guide-body :is(img, video) { max-width: 100%; height: auto; }.guide-body iframe { display: block; max-width: 100%; }.guide-page > .od-button-global-1 { width: fit-content; }
.new-guide-panel { display: grid; gap: 18px; padding: 20px; }.new-guide-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }.new-guide-header h1, .new-guide-section-head h2 { margin: 0; color: var(--ng-text); font-size: 22px; font-weight: var(--ng-weight-medium); }.new-guide-header p:last-child { margin: 5px 0 0; color: var(--ng-text-muted); }.new-guide-eyebrow { margin: 0 0 4px; color: var(--ng-global-13); font-size: 13px; font-weight: var(--ng-weight-semibold); text-transform: uppercase; }.new-guide-active { display: inline-flex; align-items: center; gap: 10px; color: var(--ng-text); white-space: nowrap; }.new-guide-status { width: fit-content; margin: 0; color: var(--ng-global-13); font-size: 13px; font-weight: var(--ng-weight-semibold); }.new-guide-empty { display: inline-flex; align-items: center; gap: 8px; width: fit-content; }.new-guide-empty i, .new-guide-section-head > i { color: var(--ng-global-13); }.new-guide-section { display: grid; gap: 14px; padding: 16px; background: var(--ng-global-5); border: var(--ng-border-width) solid var(--ng-global-11); border-radius: var(--ng-radius-md); }.new-guide-section-head { display: flex; align-items: center; gap: 9px; }.new-guide-section-head > i { font-size: 18px; }
.new-guide-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }.new-guide-fields-main { grid-template-columns: 1fr; }.new-guide-field { display: grid; gap: 6px; min-width: 0; color: var(--ng-text); }.new-guide-field > span { font-size: 14px; font-weight: var(--ng-weight-semibold); }.new-guide-field > small, .new-guide-error { color: var(--ng-text-muted); font-size: 12px; }.new-guide-error { color: var(--ng-global-13); }.new-guide-field-wide { grid-column: 1 / -1; }.new-guide-amounts { grid-template-columns: repeat(3, minmax(0, 1fr)); }.new-guide-editor { display: grid; gap: 7px; color: var(--ng-text); font-weight: var(--ng-weight-semibold); }.new-guide-editor .tox-tinymce { border-color: var(--ng-input-border); border-radius: var(--ng-radius-sm); }.new-guide-editor :is(.tox-editor-header, .tox-menubar, .tox-toolbar-overlord, .tox-toolbar, .tox-toolbar__primary, .tox-statusbar) { background: var(--ng-control) !important; border-color: var(--ng-input-border) !important; }.new-guide-editor .tox-statusbar { color: var(--ng-text-muted); }.new-guide-editor .tox :is(.tox-mbtn, .tox-tbtn, .tox-statusbar__path-item, .tox-statusbar__wordcount) { color: var(--ng-input-text) !important; }.new-guide-editor .tox .tox-tbtn svg { fill: var(--ng-input-text) !important; }.new-guide-editor .tox .tox-mbtn:hover:not(:disabled), .new-guide-editor .tox .tox-tbtn:hover:not(:disabled) { background: var(--ng-global-5) !important; }.new-guide-editor .tox .tox-edit-area::before { border-color: var(--ng-input-border) !important; }
.new-guide-image-picker { display: grid; grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); gap: 10px; }.new-guide-image-option { position: relative; display: grid; gap: 8px; padding: 8px; color: var(--ng-text); background: var(--ng-global-2); border: var(--ng-border-width) solid var(--ng-global-11); border-radius: var(--ng-radius-sm); cursor: pointer; }.new-guide-image-option input { position: absolute; opacity: 0; pointer-events: none; }.new-guide-image-option img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: var(--ng-radius-sm); }.new-guide-image-option span { font-size: 13px; text-align: center; overflow-wrap: anywhere; }.new-guide-image-option i { display: none; position: absolute; top: 12px; right: 12px; color: var(--ng-global-13); font-size: 18px; }.new-guide-image-option:has(input:checked) { outline: 2px solid var(--ng-global-13); outline-offset: -2px; }.new-guide-image-option:has(input:checked) i { display: block; }.new-guide-actions { display: flex; justify-content: flex-end; gap: 10px; }
@media (max-width: 767px) { .new-guide-page, .guides-page, .guide-page { width: min(100% - 20px, 1180px); margin-block: 16px; }.new-guide-panel, .guides-panel, .guide-page { padding: 14px; }.new-guide-header { display: grid; }.new-guide-active { justify-content: space-between; }.new-guide-fields, .new-guide-fields-main, .new-guide-amounts, .guides-grid { grid-template-columns: 1fr; }.guides-page, .guides-panel, .guides-grid, .guides-card { min-width: 0; max-width: 100%; box-sizing: border-box; }.guides-page { width: calc(100% - 20px); }.guides-panel, .guides-grid { width: 100%; }.guides-header { flex-direction: column; align-items: stretch; }.guides-heading, .guides-header-actions { width: 100%; min-width: 0; }.guides-tabs { width: 100%; }.guides-tabs a { flex: 1 1 0; text-align: center; }.guides-header-actions { align-items: stretch; flex-direction: column; }.guides-filter { min-width: 0; width: 100%; }.guides-create-action { justify-content: center; width: 100%; }.new-guide-field-wide { grid-column: auto; }.new-guide-section { padding: 12px; }.new-guide-actions { display: grid; grid-template-columns: 1fr; }.new-guide-actions .od-button-global-1 { justify-content: center; } }
@media (min-width: 768px) and (max-width: 1023px) { .guides-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.guide-layout { width: min(1500px, calc(100% - 32px)); display: grid; min-height: calc(100dvh - 112px); grid-template-columns: minmax(250px, 300px) minmax(0, 1fr); align-items: stretch; gap: 16px; margin: 30px auto; }.guide-meta { display: grid; min-height: 100%; align-content: start; gap: 14px; padding: 16px; }.guide-meta .guide-type { color: var(--ng-global-13); font-size: 13px; font-weight: var(--ng-weight-semibold); }.guide-meta-intro { display: grid; grid-template-columns: 82px minmax(0, 1fr); align-items: start; gap: 11px; }.guide-meta-intro img { display: block; width: 82px; height: 82px; border-radius: var(--ng-radius-sm); object-fit: cover; }.guide-meta-intro p { margin: 0; color: var(--ng-text-muted); font-size: 13px; line-height: 1.42; }.guide-meta-values { display: grid; gap: 8px; margin: 0; }.guide-meta-values > div { display: grid; gap: 4px; padding: 10px; background: var(--ng-global-14); border-radius: var(--ng-radius-sm); }.guide-meta-values dt { color: var(--ng-text-muted); font-size: 10px; font-weight: var(--ng-weight-semibold); text-transform: uppercase; }.guide-meta-values dd { margin: 0; color: var(--ng-global-13); font-size: 16px; font-weight: var(--ng-weight-semibold); }.guide-meta-footer { display: grid; gap: 5px; padding-top: 12px; border-top: var(--ng-border-width) solid var(--ng-global-11); }.guide-meta-footer p { margin: 0; color: var(--ng-text-muted); font-size: 12px; }.guide-meta-footer .guide-meta-schedule { color: var(--ng-global-13); font-weight: var(--ng-weight-semibold); }.guide-layout .guide-page { display: block; width: auto; min-width: 0; min-height: 100%; margin: 0; padding: 20px; }.guide-layout .guide-header { padding-bottom: 14px; border-bottom: var(--ng-border-width) solid var(--ng-global-11); text-align: center; }.guide-layout .guide-header h1 { color: var(--ng-global-13); }.guide-layout .guide-body { display: grid; align-content: start; justify-items: center; gap: 14px; text-align: center; }.guide-layout .guide-body > * { max-width: 100%; }.guide-layout .guide-body > :first-child { margin-top: 0; }.guide-layout .guide-body > :last-child { margin-bottom: 0; }.guide-layout .guide-body iframe { display: block; max-width: 100%; }.guide-layout .guide-body img { border-radius: var(--ng-radius-sm); }.guide-layout .guide-page > .od-button-global-1 { display: flex; width: fit-content; margin: 18px auto 2px; }
@media (max-width: 767px) { .guide-layout { width: min(100% - 20px, 1180px); grid-template-columns: 1fr; margin-block: 16px; }.guide-meta, .guide-layout .guide-page { padding: 14px; }.guide-meta-intro { grid-template-columns: 68px minmax(0, 1fr); }.guide-meta-intro img { width: 68px; height: 68px; } }

.guide-meta-action { justify-content: center; width: 100%; }
@media (min-width: 768px) {
    .guide-layout {
        --guide-view-height: calc(100dvh - 112px);
        height: var(--guide-view-height);
        min-height: 0;
    }

    .guide-layout .guide-page {
        height: 100%;
        overflow-y: auto;
    }
}

.weekly-promotions-page { width: min(1280px, calc(100% - 32px)); margin: 30px auto; }.weekly-promotions-panel { display: grid; gap: 16px; padding: 20px; }.weekly-promotions-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }.weekly-promotions-header p { margin: 0 0 5px; color: var(--ng-global-13); font-size: 13px; font-weight: var(--ng-weight-semibold); text-transform: uppercase; }.weekly-promotions-header h1 { margin: 0; }.weekly-promotions-actions, .weekly-promotions-nav { display: flex; align-items: center; gap: 8px; }.weekly-calendar { display: grid; gap: 0; overflow: hidden; border: var(--ng-border-width) solid var(--ng-global-11); border-radius: var(--ng-radius-md); transition: opacity .15s ease; }.weekly-calendar.is-loading { opacity: .55; }.weekly-calendar-days, .weekly-calendar-events { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }.weekly-calendar-days { background: var(--ng-global-1); }.weekly-calendar-days > div { display: grid; justify-items: center; gap: 3px; min-height: 62px; padding: 11px 6px; color: var(--ng-text-on-global-1); }.weekly-calendar-days strong { font-size: 14px; }.weekly-calendar-days span { color: #ffd60a; font-size: 12px; }.weekly-calendar-events { grid-auto-rows: minmax(58px, auto); gap: 7px 0; min-height: 230px; padding: 10px; background: var(--ng-global-5); }.weekly-calendar-event { display: flex; align-items: center; min-width: 0; gap: 9px; margin-inline: 3px; padding: 8px; color: var(--ng-text); background: var(--ng-global-14); border: var(--ng-border-width) solid var(--ng-global-11); border-radius: var(--ng-radius-sm); text-decoration: none; }.weekly-calendar-event:hover { color: var(--ng-text); outline: 1px solid var(--ng-global-13); }.weekly-calendar-event img { width: 38px; height: 38px; flex: 0 0 auto; border-radius: var(--ng-radius-sm); object-fit: cover; }.weekly-calendar-event span { min-width: 0; flex: 1; font-size: 13px; font-weight: var(--ng-weight-semibold); overflow-wrap: anywhere; }.weekly-calendar-event strong { color: var(--ng-global-13); font-size: 13px; white-space: nowrap; }.weekly-calendar-empty { grid-column: 1 / -1; display: grid; min-height: 190px; place-items: center; color: var(--ng-text-muted); text-align: center; }.weekly-mobile-promotions { display: none; }
.weekly-promotions-page { min-height: calc(100dvh - 112px); display: grid; }.weekly-promotions-panel { min-height: 100%; grid-template-rows: auto minmax(0, 1fr); }.weekly-calendar { min-height: 0; grid-template-rows: auto minmax(0, 1fr); }.weekly-calendar-events { min-height: 0; grid-auto-rows: 70px; align-content: start; }.weekly-calendar-event { min-height: 70px; }.weekly-calendar-event img { width: 52px; height: 52px; }
@media (max-width: 767px) { .weekly-promotions-page { width: min(100% - 20px, 1500px); margin-block: 16px; }.weekly-promotions-panel { padding: 14px; }.weekly-promotions-header { align-items: flex-start; flex-direction: column; }.weekly-promotions-actions { width: 100%; justify-content: space-between; }.weekly-calendar { display: none; }.weekly-mobile-promotions { display: grid; align-content: start; gap: 10px; width: 100%; min-width: 0; }.weekly-mobile-promotions.is-loading { opacity: .55; }.weekly-mobile-promotion { display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; align-items: center; gap: 10px; min-width: 0; padding: 10px; color: var(--ng-text); text-decoration: none; }.weekly-mobile-promotion:hover { color: var(--ng-text); outline: 1px solid var(--ng-global-13); }.weekly-mobile-promotion img { display: block; width: 54px; height: 54px; border-radius: var(--ng-radius-sm); object-fit: cover; }.weekly-mobile-promotion-copy { display: grid; min-width: 0; gap: 5px; }.weekly-mobile-promotion-copy strong { overflow-wrap: anywhere; font-size: 14px; font-weight: var(--ng-weight-semibold); }.weekly-mobile-promotion-copy small { display: grid; gap: 2px; color: var(--ng-text-muted); font-size: 12px; line-height: 1.35; }.weekly-mobile-promotion b { color: var(--ng-global-13); font-size: 13px; white-space: nowrap; }.weekly-mobile-empty { display: grid; min-height: 150px; place-items: center; padding: 14px; color: var(--ng-text-muted); text-align: center; } }

/* TinyMCE dialogs are appended to body, outside the HD shell's zoom. Unlike
   menus, dialogs are centered by their wrapper, so a visual transform retains
   their native center while matching the application's compact scale. */
@media (min-width: 1200px) and (max-width: 1440px) and (max-height: 900px) {
    .tox-dialog-wrap .tox-dialog {
        transform: scale(.67) !important;
        transform-origin: center !important;
    }
}

/* LEV mobile deliberately shares Favor's full-width scanner geometry. */
.lev-mobile-calculator-modal .od-event-summary-global-1 > .bet-options-grid {
    display: none;
}

@media (min-width: 992px) {
    .lev-mobile-calculator-modal .lev-mobile-cards {
        display: none !important;
    }

    .lev-mobile-calculator-modal .lev-table {
        display: table !important;
    }
}

@media (max-width: 991px) {
    .lev-comparator-page { width: 100% !important; max-width: none !important; margin-inline: 0 !important; padding-inline: 0 !important; }
    .lev-comparator-page .top-toolbar { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 12px; margin: 0 0 16px !important; }
    .lev-comparator-page .scanner-page-badge { grid-column: 1; }
    .lev-comparator-page .top-toolbar-right { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 8px; width: 100% !important; }
    .lev-comparator-page .top-toolbar-right .top-toolbar-left { display: grid !important; grid-column: 1 !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px; width: 100% !important; margin: 0 !important; }
    .lev-comparator-page .top-toolbar-left > .od-button-global-1 { display: inline-flex !important; width: 100%; min-width: 0; }
    .lev-comparator-page .top-toolbar-right .search-toolbar { display: grid !important; grid-column: 1 !important; grid-template-columns: minmax(0, 1fr) minmax(112px, .38fr) !important; gap: 8px; width: 100% !important; }
    .lev-mobile-live-panel { border: 0 !important; border-radius: 0 !important; background: transparent !important; }
    .lev-mobile-list-shell { width: 100%; }
    .lev-mobile-live-panel, .lev-mobile-live-panel .lev-live-list { max-height: none; overflow: visible; }
    .lev-mobile-event-row { grid-template-columns: minmax(0,1fr) auto; grid-template-areas: "title rating" "meta meta" "markets markets" "action action"; gap: 8px; padding: 12px; }
    .lev-mobile-event-row .lev-live-row-title { grid-area: title; }.lev-mobile-event-row .lev-live-row-rating { grid-area: rating; }.lev-mobile-event-row .lev-live-row-meta { grid-area: meta; }
    .lev-mobile-event-row .lev-live-markets { grid-area: markets; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }.lev-mobile-event-row .lev-live-market { min-height: 0; padding: 9px; background: var(--ng-global-5); }
    .lev-mobile-open-calculator-btn { grid-area: action; width: 100%; justify-content: center; }
    .lev-mobile-calculator-modal :is(.event-details-panel, .calculator-panel, .calculadora-lev-container, .calculadora-card) { margin: 0 !important; padding: 0 !important; }
    .lev-mobile-calculator-modal :is(.event-details-panel,.od-event-summary-global-1,.calculator-panel,.calculadora-lev-container,.calculadora-card) { width: 100%; min-width: 0; max-width: 100%; }.lev-mobile-calculator-modal .od-event-summary-global-1 { padding: 12px; }.lev-mobile-calculator-modal .od-event-summary-global-1 > .bet-options-grid { display:none; }
    .lev-mobile-calculator-modal .lev-table { display:none; }.lev-mobile-calculator-modal .lev-mobile-cards { display:grid; gap:12px; }.lev-mobile-calculator-modal .lev-mobile-head,.lev-mobile-calculator-modal .lev-mobile-line,.lev-mobile-calculator-modal .lev-mobile-grid-two { display:flex; align-items:center; justify-content:space-between; gap:10px; }.lev-mobile-calculator-modal .lev-mobile-body,.lev-mobile-calculator-modal .lev-mobile-selection,.lev-mobile-calculator-modal .lev-mobile-cell { display:grid; gap:6px; min-width:0; }.lev-mobile-calculator-modal .lev-mobile-grid-two > * { flex:1 1 0; }.lev-mobile-calculator-modal .lev-mobile-card :is(input,.lev-stake-cell-wrap) { width:100%; }.lev-mobile-calculator-modal .lev-mobile-cell-label { color:var(--ng-text-muted); font-size:12px; font-weight:var(--ng-weight-semibold); }.lev-mobile-calculator-modal .lev-mobile-actions-footer .od-button-global-1 { width:100%; }
    .od-modal-global-1__dialog--mobile-sheet :is(.calculator-panel, .calculadora-favor-container, .calculadora-lev-container, .calculadora-card) { width: 100%; margin: 0 !important; padding-inline: 0 !important; }
}

/* Debe quedar al final: el breakpoint previo de Favor (315/575) no forma
   parte de la escala HD. Aquí se restauran los anchos fuente exactos antes
   de que el zoom global .67 los reduzca visualmente. */
@media (min-width: 1200px) and (max-width: 1440px) and (max-height: 900px) {
    .favor-desktop-split,
    .lev-desktop-split {
        grid-template-columns: 342px 678px 788px !important;
        gap: 16px !important;
    }

    .favor-comparator-page .top-toolbar,
    .lev-comparator-page .top-toolbar {
        grid-template-columns: 342px 678px 788px !important;
        gap: 16px !important;
    }

    /* The default 620px minimum is also zoomed to 67% and leaves Score short.
       Use the viewport expanded by the HD shell, so both panels reach its base. */
    .od-score-page .score-panel {
        /* 24 logical px become about 16 visible px after the HD scale. */
        height: calc((100dvh / .67) - 120px);
        min-height: 0;
    }

}

/* The compact HD shell is zoomed to .67, so full-height guide views must use
   its logical viewport to fill the visible page below the navigation. */
@media (min-width: 901px) and (max-width: 1440px) and (max-height: 900px) {
    .guides-page,
    .guide-layout,
    .weekly-promotions-page {
        min-height: calc((100dvh / .67) - 112px);
    }

    .guide-layout {
        --guide-view-height: calc((100dvh / .67) - 112px);
    }
}
