:root {
    --owner-global-bg: rgba(10, 11, 14, .94);
    --owner-global-surface: rgba(21, 25, 34, .98);
    --owner-global-raised: #1B202A;
    --owner-global-border: rgba(78, 84, 94, .62);
    --owner-global-border-soft: rgba(43, 48, 56, .74);
    --owner-global-text: #F7F0E4;
    --owner-global-soft: #C8BEB1;
    --owner-global-muted: #8D867E;
    --owner-global-burgundy: #6B2435;
    --owner-global-copper: #D19A6E;
    --owner-global-copper-bright: #E5B189;
    --owner-global-premium: #F2CD69;
    --owner-global-danger: #FF4D5E;
    --owner-global-font-display: "Playfair Display", Georgia, serif;
    --owner-global-font-ui: "Source Sans 3", "Segoe UI", Arial, sans-serif;
}

.owner-global-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    width: 100vw;
    min-height: 72px;
    margin-left: calc(50% - 50vw);
    border-bottom: 1px solid var(--owner-global-border-soft);
    background: var(--owner-global-bg);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    font-family: var(--owner-global-font-ui);
}

.owner-global-inner {
    width: min(calc(100% - 48px), 1180px);
    min-height: 72px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 24px;
}

.owner-global-brand {
    justify-self: start;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--owner-global-text);
    font-family: var(--owner-global-font-display);
    font-size: 20px;
    font-weight: 600;
    letter-spacing: -.025em;
    text-decoration: none;
}

.owner-global-brand-dot { width:8px; height:8px; border-radius:50%; background:var(--owner-global-burgundy); box-shadow:0 0 18px rgba(107,36,53,.52); }

.owner-global-brand-short { display: none; }

.owner-global-wallets { justify-self:center; display:flex; align-items:center; gap:8px; }
.owner-global-wallet {
    width:56px; height:38px; display:grid; grid-template-columns:20px 19px; place-content:center; align-items:center; gap:6px;
    border:1px solid rgba(209,154,110,.24); border-radius:999px; background:rgba(21,25,34,.58); color:var(--owner-global-copper); text-decoration:none;
}
.owner-global-wallet:hover,
.owner-global-wallet.is-active {
    border-color:rgba(209,154,110,.42);
    color:var(--owner-global-copper);
    background:rgba(27,32,42,.72);
}
.owner-global-wallet-premium {
    border-color:rgba(209,154,110,.24);
    color:var(--owner-global-copper);
}
.owner-global-wallet-icon { width:19px; height:19px; display:block; background:currentColor; -webkit-mask-position:center; -webkit-mask-repeat:no-repeat; -webkit-mask-size:contain; mask-position:center; mask-repeat:no-repeat; mask-size:contain; }
.owner-global-wallet-gifts { -webkit-mask-image:url("/static/profiles/icons/wallet-gifts.6916c98c6df8.svg"); mask-image:url("/static/profiles/icons/wallet-gifts.6916c98c6df8.svg"); }
.owner-global-wallet-premium-icon { -webkit-mask-image:url("/static/profiles/icons/wallet-premium.26d06f3fcb66.svg"); mask-image:url("/static/profiles/icons/wallet-premium.26d06f3fcb66.svg"); }
.owner-global-wallet strong { min-width:19px; height:19px; padding:0 3px; display:grid; place-items:center; border-radius:999px; background:rgba(247,240,228,.075); color:inherit; font-size:13px; line-height:1; font-weight:800; font-variant-numeric:tabular-nums; }

.owner-global-actions { justify-self:end; display:flex; align-items:center; gap:9px; }
.owner-global-icon-profile { -webkit-mask-image:url("/static/profiles/icons/profile.d7199bce5b5d.svg"); mask-image:url("/static/profiles/icons/profile.d7199bce5b5d.svg"); }
.owner-global-profile-state.is-green { color:#39FF88; border-color:rgba(57,255,136,.42); }
.owner-global-profile-state.is-yellow { color:#E5B189; border-color:rgba(229,177,137,.42); }
.owner-global-profile-state.is-red { color:#FF4D5E; border-color:rgba(255,77,94,.48); }
.owner-global-icon-catalog { -webkit-mask-image:url("/static/profiles/icons/catalog.8eb32a33baad.svg"); mask-image:url("/static/profiles/icons/catalog.8eb32a33baad.svg"); }
.owner-global-icon-button.is-active { border-color:rgba(209,154,110,.46); color:var(--owner-global-copper-bright); }

.owner-global-dropdown {
    position: relative;
}

.owner-global-dropdown > summary {
    list-style: none;
}

.owner-global-dropdown > summary::-webkit-details-marker {
    display: none;
}

.owner-global-icon-button {
    position: relative;
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border: 1px solid var(--owner-global-border-soft);
    border-radius: 50%;
    background: rgba(21,25,34,.58);
    color: var(--owner-global-soft);
    cursor: pointer;
}

.owner-global-icon-button:hover,
.owner-global-dropdown[open] > .owner-global-icon-button {
    border-color: rgba(209,154,110,.42);
    color: var(--owner-global-text);
}

.owner-global-icon {
    width: 19px;
    height: 19px;
    display: block;
    background: currentColor;
    -webkit-mask-position: center;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: contain;
}

.owner-global-icon-bell {
    -webkit-mask-image: url("/static/profiles/icons/bell.a98597bfde85.svg");
    mask-image: url("/static/profiles/icons/bell.a98597bfde85.svg");
}

.owner-global-icon-menu {
    width: 20px;
    height: 20px;
    -webkit-mask-image: url("/static/profiles/icons/menu.28b92ab62a4a.svg");
    mask-image: url("/static/profiles/icons/menu.28b92ab62a4a.svg");
}

.owner-global-badge {
    position: absolute;
    top: -5px;
    right: -7px;
    min-width: 18px;
    height: 18px;
    padding: 0 4px;
    display: grid;
    place-items: center;
    border: 2px solid #0A0B0E;
    border-radius: 999px;
    background: #FF2F4F;
    color: #fff;
    font-size: 11px;
    line-height: 1;
    font-weight: 800;
    box-shadow: 0 0 14px rgba(255,47,79,.46);
}

.owner-global-badge.is-critical {
    background: #FF5168;
    box-shadow: 0 0 16px rgba(255,81,104,.50);
}

.owner-global-dropdown-panel {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    width: 300px;
    overflow: hidden;
    border: 1px solid var(--owner-global-border);
    border-radius: 15px;
    background: rgba(14,16,21,.985);
    box-shadow: 0 24px 64px rgba(0,0,0,.48);
}

.owner-global-dropdown-heading {
    padding: 13px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    border-bottom: 1px solid var(--owner-global-border-soft);
}

.owner-global-dropdown-heading > div {
    display: grid;
    gap: 2px;
}

.owner-global-dropdown-heading strong {
    color: var(--owner-global-text);
    font-size: 14px;
}

.owner-global-dropdown-heading span,
.owner-global-dropdown-heading a {
    color: var(--owner-global-muted);
    font-size: 11px;
}

.owner-global-dropdown-heading a {
    color: var(--owner-global-copper-bright);
    text-decoration: none;
}

.owner-global-notification-list {
    max-height: min(420px, 60vh);
    overflow-y: auto;
    padding: 7px;
    display: grid;
    gap: 4px;
}

.owner-global-notification {
    min-height: 58px;
    padding: 9px;
    display: grid;
    grid-template-columns: 4px minmax(0,1fr);
    gap: 9px;
    border: 1px solid transparent;
    border-radius: 10px;
    background: rgba(21,25,34,.54);
}

.owner-global-notification.is-unread {
    border-color: var(--owner-global-border-soft);
    background: rgba(27,32,42,.88);
    box-shadow: inset 0 0 0 1px rgba(247,240,228,.018);
}

.owner-global-notification-mark {
    width: 3px;
    border-radius: 999px;
    background: #30343B;
    box-shadow: none;
    transition:
        background .16s ease,
        box-shadow .16s ease,
        opacity .16s ease;
}

/* Leída: conserva la familia cromática, pero la "luz" queda apagada. */
.owner-global-notification.severity-green .owner-global-notification-mark {
    background: #123522;
}

.owner-global-notification.severity-yellow .owner-global-notification-mark {
    background: #3A2F19;
}

.owner-global-notification.severity-red .owner-global-notification-mark {
    background: #3A171C;
}

.owner-global-notification.severity-neutral .owner-global-notification-mark {
    background: #30343B;
}

/* No leída: la barra se enciende y acompaña el fondo activo de la fila. */
.owner-global-notification.is-unread.severity-green .owner-global-notification-mark {
    background: #39FF88;
    box-shadow: 0 0 10px rgba(57,255,136,.34);
}

.owner-global-notification.is-unread.severity-yellow .owner-global-notification-mark {
    background: var(--owner-global-copper-bright);
    box-shadow: 0 0 10px rgba(229,177,137,.28);
}

.owner-global-notification.is-unread.severity-red .owner-global-notification-mark {
    background: var(--owner-global-danger);
    box-shadow: 0 0 10px rgba(255,77,94,.30);
}

.owner-global-notification.is-unread.severity-neutral .owner-global-notification-mark {
    background: #9DA3AE;
    box-shadow: 0 0 9px rgba(157,163,174,.22);
}

.owner-global-notification > div:last-child {
    min-width: 0;
    display: grid;
    align-content: center;
    gap: 3px;
}

.owner-global-notification strong {
    overflow: hidden;
    color: var(--owner-global-text);
    font-size: 12px;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.owner-global-notification span {
    display: -webkit-box;
    overflow: hidden;
    color: var(--owner-global-muted);
    font-size: 11px;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.owner-global-dropdown-empty {
    padding: 24px 12px;
    color: var(--owner-global-muted);
    font-size: 12px;
    text-align: center;
}

.owner-global-dropdown-footer {
    min-height: 39px;
    display: grid;
    place-items: center;
    border-top: 1px solid var(--owner-global-border-soft);
    color: var(--owner-global-copper-bright);
    font-size: 12px;
    font-weight: 650;
    text-decoration: none;
}

.owner-global-menu-panel {
    width: 245px;
    padding: 7px;
}

.owner-global-menu-panel > a,
.owner-global-menu-panel button {
    width: 100%;
    min-height: 38px;
    padding: 0 10px;
    display: flex;
    align-items: center;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: var(--owner-global-soft);
    font: inherit;
    font-size: 15px;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
}

.owner-global-menu-panel > a:hover,
.owner-global-menu-panel button:hover {
    background: rgba(247,240,228,.045);
    color: var(--owner-global-text);
}

.owner-global-menu-separator {
    height: 1px;
    margin: 6px 4px;
    background: var(--owner-global-border-soft);
}

@media (max-width: 900px) {
    .owner-global-inner {
        width: calc(100% - 28px);
        gap: 14px;
    }

    .owner-global-state span,
    .owner-global-premium-counter > span {
        display: none;
    }
}

@media (max-width: 660px) {
    .owner-global-header,
    .owner-global-inner {
        min-height: 62px;
    }

    .owner-global-brand {
        font-size: 18px;
    }

    .owner-global-state,
    .owner-global-catalog {
        display: none;
    }

    .owner-global-counter {
        padding: 0 7px;
    }

    .owner-global-dropdown-panel {
        position: fixed;
        top: 68px;
        right: 10px;
        left: 10px;
        width: auto;
    }
}


/* L0D2G — filas de notificación navegables */
.owner-global-notification {
    color: inherit;
    text-decoration: none;
}

.owner-global-notification:hover {
    border-color: rgba(209,154,110,.32);
    background: rgba(27,32,42,.96);
}


@media (max-width: 760px) {
    .owner-global-inner { width:calc(100% - 24px); min-height:62px; grid-template-columns:auto 1fr auto; gap:10px; }
    .owner-global-brand { font-size:18px; }
    .owner-global-wallets { justify-self:center; }
    .owner-global-wallet { width:52px; height:36px; }
}



/* L0D2R — cabecera pública del perfil con la misma gramática visual del header owner. */
.visitor-global-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    width: 100%;
    min-height: 72px;
    border-bottom: 1px solid var(--owner-global-border-soft);
    background: var(--owner-global-bg);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    font-family: var(--owner-global-font-ui);
}

.visitor-global-inner {
    width: min(calc(100% - 48px), 1180px);
    min-height: 72px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 24px;
}

.visitor-global-center {
    justify-self: center;
    display: flex;
    align-items: center;
    gap: 9px;
}

.visitor-global-create {
    min-height: 38px;
    padding: 0 15px 0 11px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(209,154,110,.42);
    border-radius: 999px;
    background: rgba(107,36,53,.22);
    color: var(--owner-global-text);
    font-size: 13px;
    font-weight: 750;
    text-decoration: none;
}

.visitor-global-create:hover {
    border-color: rgba(229,177,137,.72);
    background: rgba(107,36,53,.32);
}

.visitor-global-rules {
    position: relative;
    min-height: 38px;
    padding: 0 14px 0 11px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(229,177,137,.66);
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(107,36,53,.34), rgba(21,25,34,.86));
    color: var(--owner-global-copper-bright);
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 0 0 1px rgba(209,154,110,.05), 0 0 20px rgba(209,154,110,.11);
    animation: visitor-rules-glow 2.8s ease-in-out infinite;
}

.visitor-global-rules:hover {
    border-color: rgba(229,177,137,.92);
    color: var(--owner-global-text);
    background: linear-gradient(135deg, rgba(107,36,53,.48), rgba(27,32,42,.96));
    box-shadow: 0 0 0 1px rgba(229,177,137,.10), 0 0 28px rgba(209,154,110,.18);
}

.visitor-global-rules-icon {
    width: 19px;
    height: 19px;
    display: block;
    background: currentColor;
    -webkit-mask: url("/static/profiles/icons/scroll.c37e17b7b4bd.svg") center / contain no-repeat;
    mask: url("/static/profiles/icons/scroll.c37e17b7b4bd.svg") center / contain no-repeat;
}

@keyframes visitor-rules-glow {
    0%, 100% { box-shadow: 0 0 0 1px rgba(209,154,110,.04), 0 0 15px rgba(209,154,110,.08); }
    50% { box-shadow: 0 0 0 1px rgba(229,177,137,.12), 0 0 25px rgba(209,154,110,.18); }
}

@media (prefers-reduced-motion: reduce) {
    .visitor-global-rules { animation: none; }
}

.visitor-global-create-icon {
    width: 18px;
    height: 18px;
    display: block;
    background: var(--owner-global-copper-bright);
    -webkit-mask: url("/static/profiles/icons/profile.d7199bce5b5d.svg") center / contain no-repeat;
    mask: url("/static/profiles/icons/profile.d7199bce5b5d.svg") center / contain no-repeat;
}

.visitor-global-actions {
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 9px;
}

.visitor-global-source {
    min-height: 38px;
    padding: 0 11px;
    display: inline-flex;
    align-items: center;
    color: var(--owner-global-soft);
    font-size: 12px;
    font-weight: 650;
    text-decoration: none;
}

.visitor-global-source:hover {
    color: var(--owner-global-copper-bright);
}

.visitor-global-login {
    min-height: 38px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--owner-global-border-soft);
    border-radius: 999px;
    background: rgba(21,25,34,.58);
    color: var(--owner-global-soft);
    font-size: 13px;
    font-weight: 650;
    text-decoration: none;
}

.visitor-global-login:hover {
    border-color: rgba(209,154,110,.42);
    color: var(--owner-global-text);
}

.visitor-global-adult {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border: 1px solid var(--owner-global-border-soft);
    border-radius: 50%;
    background: rgba(21,25,34,.44);
    color: var(--owner-global-muted);
    font-size: 11px;
    font-weight: 800;
}

@media (max-width: 760px) {
    .visitor-global-header,
    .visitor-global-inner {
        min-height: 62px;
    }

    .visitor-global-inner {
        width: calc(100% - 24px);
        grid-template-columns: auto 1fr auto;
        gap: 10px;
    }

    .visitor-global-create {
        padding: 0 11px;
    }

    .visitor-global-rules {
        width: 34px;
        min-height: 34px;
        padding: 0;
        justify-content: center;
    }

    .visitor-global-rules > span:last-child {
        display: none;
    }

    .visitor-global-login {
        display: none;
    }

    .visitor-global-adult {
        width: 34px;
        height: 34px;
    }
}

/* L0D2ZE-B · Reglamento */
.owner-global-rule-alert {
    position: absolute;
    top: -3px;
    right: -3px;
    width: 10px;
    height: 10px;
    border: 2px solid var(--owner-global-bg);
    border-radius: 999px;
    background: #FF2F4F;
    box-shadow: 0 0 12px rgba(255,47,79,.55);
}

.owner-global-menu-rules {
    display: grid !important;
    grid-template-columns: 20px 1fr auto;
    align-items: center;
    gap: 9px;
}

.owner-global-menu-rules-icon {
    width: 18px;
    height: 18px;
    display: block;
    background: currentColor;
    -webkit-mask: url("/static/profiles/icons/scroll.c37e17b7b4bd.svg") center / contain no-repeat;
    mask: url("/static/profiles/icons/scroll.c37e17b7b4bd.svg") center / contain no-repeat;
}

.owner-global-menu-rule-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: #FF2F4F;
    box-shadow: 0 0 11px rgba(255,47,79,.5);
}


/* L0D2ZP · Marca compacta en móvil para mantener todas las acciones visibles. */
@media (max-width: 760px) {
    .owner-global-brand {
        gap: 7px;
        font-size: 21px;
        line-height: 1;
    }

    .owner-global-brand-full {
        display: none;
    }

    .owner-global-brand-short {
        display: inline;
    }

    .owner-global-inner,
    .visitor-global-inner {
        gap: 8px;
    }
}

/* 2026-09-24 · las notificaciones no heredan colores :link/:visited del navegador. */
.owner-global-notification strong {
    display: flex;
    align-items: center;
    gap: 7px;
}

.owner-global-notification-detail,
.owner-global-notification-detail:link,
.owner-global-notification-detail:visited {
    min-width: 0;
    overflow: hidden;
    color: var(--owner-global-text);
    text-decoration: none;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.owner-global-notification-detail:hover,
.owner-global-notification-detail:focus-visible {
    color: var(--owner-global-copper-bright);
}

.owner-global-notification-profile,
.owner-global-notification-profile:link,
.owner-global-notification-profile:visited {
    color: var(--owner-global-copper-bright);
    font-weight: 700;
    text-decoration: none;
}

.owner-global-notification-profile:hover,
.owner-global-notification-profile:focus-visible {
    color: var(--owner-global-text);
    text-decoration: underline;
}

.owner-global-dropdown-footer,
.owner-global-dropdown-footer:link,
.owner-global-dropdown-footer:visited {
    color: var(--owner-global-copper-bright);
}

.owner-global-notification-alert {
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    display: block;
    background: #f4c95d;
    -webkit-mask: url("/static/notifications/icons/alert.105fc786e2bf.svg") center / contain no-repeat;
    mask: url("/static/notifications/icons/alert.105fc786e2bf.svg") center / contain no-repeat;
    filter: drop-shadow(0 0 6px rgba(244, 201, 93, .20));
}


/* 2026-09-24 · notificaciones del perfil usan el icono de Mi Perfil */
.owner-global-notification-profile-icon {
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    display: inline-block;
    vertical-align: -3px;
    background: #9DA3AE;
    -webkit-mask: url("/static/profiles/icons/profile.d7199bce5b5d.svg") center / contain no-repeat;
    mask: url("/static/profiles/icons/profile.d7199bce5b5d.svg") center / contain no-repeat;
}

.owner-global-notification.severity-green .owner-global-notification-profile-icon {
    background: #39FF88;
    filter: drop-shadow(0 0 6px rgba(57,255,136,.20));
}

.owner-global-notification.severity-yellow .owner-global-notification-profile-icon {
    background: #F4C95D;
    filter: drop-shadow(0 0 6px rgba(244,201,93,.20));
}

.owner-global-notification.severity-red .owner-global-notification-profile-icon {
    background: #FF4D5E;
    filter: drop-shadow(0 0 6px rgba(255,77,94,.22));
}
