:root {
    --ubx-bg: #08090d;
    --ubx-surface: rgba(19, 22, 30, 0.82);
    --ubx-surface-strong: rgba(31, 34, 45, 0.94);
    --ubx-border: rgba(255, 255, 255, 0.1);
    --ubx-text: #f2eee8;
    --ubx-muted: #aaa7a2;
    --ubx-primary: #8fd6a3;
    --ubx-primary-rgb: 143, 214, 163;
    --ubx-accent: #8aa4ff;
    --ubx-copper: #d77a4a;
    --ubx-rust: #9f5136;
    --ubx-steel: #7f8da3;
    --ubx-kind-place: var(--ubx-primary);
    --ubx-kind-place-rgb: var(--ubx-primary-rgb);
    --ubx-kind-region: #8aa4ff;
    --ubx-kind-region-rgb: 138, 164, 255;
    --ubx-kind-category: #c084fc;
    --ubx-kind-category-rgb: 192, 132, 252;
    --ubx-kind-list: #5eead4;
    --ubx-kind-list-rgb: 94, 234, 212;
    --ubx-kind-postal: #f59e0b;
    --ubx-kind-postal-rgb: 245, 158, 11;
    --ubx-kind-person: #f472b6;
    --ubx-kind-person-rgb: 244, 114, 182;
    --ubx-kind-chat: #86efac;
    --ubx-kind-chat-rgb: 134, 239, 172;
    --ubx-kind-premium: #ffb86b;
    --ubx-kind-premium-rgb: 255, 184, 107;
    --ubx-ambient-secondary-rgb: 138, 164, 255;
    --ubx-sticky-top: 6.25rem;
    --ubx-motion-smooth: 260ms cubic-bezier(0.2, 0.8, 0.2, 1);
    --bs-primary: #8fd6a3;
    --bs-primary-rgb: 143, 214, 163;
}

[data-bs-theme="light"] {
    --ubx-bg: #f5efe5;
    --ubx-surface: rgba(255, 252, 246, 0.84);
    --ubx-surface-strong: rgba(255, 250, 241, 0.96);
    --ubx-border: rgba(72, 54, 38, 0.16);
    --ubx-text: #211812;
    --ubx-muted: #6f655d;
    --ubx-primary: #2f7d55;
    --ubx-primary-rgb: 47, 125, 85;
    --ubx-accent: #4964c8;
    --ubx-copper: #a85d35;
    --ubx-rust: #85442d;
    --ubx-steel: #65758e;
    --ubx-kind-place: var(--ubx-primary);
    --ubx-kind-place-rgb: var(--ubx-primary-rgb);
    --ubx-kind-region: #4964c8;
    --ubx-kind-region-rgb: 73, 100, 200;
    --ubx-kind-category: #8b4eca;
    --ubx-kind-category-rgb: 139, 78, 202;
    --ubx-kind-list: #178f82;
    --ubx-kind-list-rgb: 23, 143, 130;
    --ubx-kind-postal: #b45309;
    --ubx-kind-postal-rgb: 180, 83, 9;
    --ubx-kind-person: #b6427a;
    --ubx-kind-person-rgb: 182, 66, 122;
    --ubx-kind-chat: #3f8f55;
    --ubx-kind-chat-rgb: 63, 143, 85;
    --ubx-kind-premium: #b96a2d;
    --ubx-kind-premium-rgb: 185, 106, 45;
    --ubx-ambient-secondary-rgb: 73, 100, 200;
    --ubx-sticky-top: 6.25rem;
    --ubx-motion-smooth: 260ms cubic-bezier(0.2, 0.8, 0.2, 1);
    --bs-primary: #2f7d55;
    --bs-primary-rgb: 47, 125, 85;
}

[data-ubx-theme="moss"] {
    --ubx-bg: #07110d;
    --ubx-surface: rgba(15, 27, 22, 0.84);
    --ubx-surface-strong: rgba(23, 42, 34, 0.95);
    --ubx-border: rgba(171, 255, 206, 0.13);
    --ubx-text: #effbf3;
    --ubx-muted: #a4bbae;
    --ubx-primary: #74d99f;
    --ubx-primary-rgb: 116, 217, 159;
    --ubx-accent: #5eead4;
    --ubx-ambient-secondary-rgb: 94, 234, 212;
    --bs-primary: #74d99f;
    --bs-primary-rgb: 116, 217, 159;
}

[data-bs-theme="light"][data-ubx-theme="moss"] {
    --ubx-bg: #edf7ef;
    --ubx-surface: rgba(250, 255, 249, 0.86);
    --ubx-surface-strong: rgba(255, 255, 252, 0.97);
    --ubx-border: rgba(35, 92, 57, 0.17);
    --ubx-text: #132018;
    --ubx-muted: #5b6c60;
    --ubx-primary: #2f8f58;
    --ubx-primary-rgb: 47, 143, 88;
    --ubx-accent: #168f82;
    --ubx-ambient-secondary-rgb: 22, 143, 130;
    --bs-primary: #2f8f58;
    --bs-primary-rgb: 47, 143, 88;
}

[data-ubx-theme="ember"] {
    --ubx-bg: #130b08;
    --ubx-surface: rgba(35, 20, 14, 0.84);
    --ubx-surface-strong: rgba(54, 30, 19, 0.95);
    --ubx-border: rgba(255, 183, 107, 0.16);
    --ubx-text: #fff5ec;
    --ubx-muted: #c4a997;
    --ubx-primary: #ff9f5a;
    --ubx-primary-rgb: 255, 159, 90;
    --ubx-accent: #f472b6;
    --ubx-ambient-secondary-rgb: 244, 114, 182;
    --bs-primary: #ff9f5a;
    --bs-primary-rgb: 255, 159, 90;
}

[data-bs-theme="light"][data-ubx-theme="ember"] {
    --ubx-bg: #fff1e4;
    --ubx-surface: rgba(255, 250, 245, 0.86);
    --ubx-surface-strong: rgba(255, 252, 248, 0.97);
    --ubx-border: rgba(153, 77, 38, 0.17);
    --ubx-text: #24150e;
    --ubx-muted: #765e50;
    --ubx-primary: #c35f2e;
    --ubx-primary-rgb: 195, 95, 46;
    --ubx-accent: #b6427a;
    --ubx-ambient-secondary-rgb: 182, 66, 122;
    --bs-primary: #c35f2e;
    --bs-primary-rgb: 195, 95, 46;
}

[data-ubx-theme="violet"] {
    --ubx-bg: #0d0a18;
    --ubx-surface: rgba(25, 18, 43, 0.84);
    --ubx-surface-strong: rgba(40, 29, 66, 0.95);
    --ubx-border: rgba(183, 148, 246, 0.17);
    --ubx-text: #f7f1ff;
    --ubx-muted: #b7aacd;
    --ubx-primary: #b794f6;
    --ubx-primary-rgb: 183, 148, 246;
    --ubx-accent: #22d3ee;
    --ubx-ambient-secondary-rgb: 34, 211, 238;
    --bs-primary: #b794f6;
    --bs-primary-rgb: 183, 148, 246;
}

[data-bs-theme="light"][data-ubx-theme="violet"] {
    --ubx-bg: #f5efff;
    --ubx-surface: rgba(253, 249, 255, 0.86);
    --ubx-surface-strong: rgba(255, 252, 255, 0.97);
    --ubx-border: rgba(101, 69, 158, 0.18);
    --ubx-text: #20162f;
    --ubx-muted: #695c7c;
    --ubx-primary: #7451c7;
    --ubx-primary-rgb: 116, 81, 199;
    --ubx-accent: #087990;
    --ubx-ambient-secondary-rgb: 8, 121, 144;
    --bs-primary: #7451c7;
    --bs-primary-rgb: 116, 81, 199;
}

[data-ubx-theme="steel"] {
    --ubx-bg: #071019;
    --ubx-surface: rgba(14, 25, 37, 0.84);
    --ubx-surface-strong: rgba(21, 39, 57, 0.95);
    --ubx-border: rgba(125, 211, 252, 0.16);
    --ubx-text: #edf8ff;
    --ubx-muted: #9fb5c4;
    --ubx-primary: #7dd3fc;
    --ubx-primary-rgb: 125, 211, 252;
    --ubx-accent: #a3e635;
    --ubx-ambient-secondary-rgb: 163, 230, 53;
    --bs-primary: #7dd3fc;
    --bs-primary-rgb: 125, 211, 252;
}

[data-bs-theme="light"][data-ubx-theme="steel"] {
    --ubx-bg: #eef7fb;
    --ubx-surface: rgba(249, 253, 255, 0.86);
    --ubx-surface-strong: rgba(252, 254, 255, 0.97);
    --ubx-border: rgba(33, 91, 119, 0.17);
    --ubx-text: #0f1d26;
    --ubx-muted: #566a76;
    --ubx-primary: #1f7ea8;
    --ubx-primary-rgb: 31, 126, 168;
    --ubx-accent: #648f12;
    --ubx-ambient-secondary-rgb: 100, 143, 18;
    --bs-primary: #1f7ea8;
    --bs-primary-rgb: 31, 126, 168;
}

[data-ubx-theme="nocturne"] {
    --ubx-bg: #050816;
    --ubx-surface: rgba(11, 18, 36, 0.86);
    --ubx-surface-strong: rgba(17, 32, 62, 0.96);
    --ubx-border: rgba(96, 165, 250, 0.18);
    --ubx-text: #edf5ff;
    --ubx-muted: #a8b8cf;
    --ubx-primary: #60a5fa;
    --ubx-primary-rgb: 96, 165, 250;
    --ubx-accent: #c084fc;
    --ubx-ambient-secondary-rgb: 192, 132, 252;
    --bs-primary: #60a5fa;
    --bs-primary-rgb: 96, 165, 250;
}

[data-bs-theme="light"][data-ubx-theme="nocturne"] {
    --ubx-bg: #edf4ff;
    --ubx-surface: rgba(248, 251, 255, 0.87);
    --ubx-surface-strong: rgba(252, 254, 255, 0.98);
    --ubx-border: rgba(45, 88, 154, 0.18);
    --ubx-text: #101827;
    --ubx-muted: #56657a;
    --ubx-primary: #2f6fbc;
    --ubx-primary-rgb: 47, 111, 188;
    --ubx-accent: #7c3bc7;
    --ubx-ambient-secondary-rgb: 124, 59, 199;
    --bs-primary: #2f6fbc;
    --bs-primary-rgb: 47, 111, 188;
}

[data-ubx-theme="signal"] {
    --ubx-bg: #16070b;
    --ubx-surface: rgba(36, 16, 22, 0.86);
    --ubx-surface-strong: rgba(62, 23, 32, 0.96);
    --ubx-border: rgba(251, 113, 133, 0.19);
    --ubx-text: #fff1f3;
    --ubx-muted: #d5a7ae;
    --ubx-primary: #fb7185;
    --ubx-primary-rgb: 251, 113, 133;
    --ubx-accent: #38bdf8;
    --ubx-ambient-secondary-rgb: 56, 189, 248;
    --bs-primary: #fb7185;
    --bs-primary-rgb: 251, 113, 133;
}

[data-bs-theme="light"][data-ubx-theme="signal"] {
    --ubx-bg: #fff0f2;
    --ubx-surface: rgba(255, 248, 249, 0.87);
    --ubx-surface-strong: rgba(255, 252, 252, 0.98);
    --ubx-border: rgba(155, 50, 66, 0.18);
    --ubx-text: #261014;
    --ubx-muted: #7a5860;
    --ubx-primary: #c43d52;
    --ubx-primary-rgb: 196, 61, 82;
    --ubx-accent: #1478a8;
    --ubx-ambient-secondary-rgb: 20, 120, 168;
    --bs-primary: #c43d52;
    --bs-primary-rgb: 196, 61, 82;
}

[data-ubx-theme="petrol"] {
    --ubx-bg: #04110f;
    --ubx-surface: rgba(9, 33, 31, 0.86);
    --ubx-surface-strong: rgba(13, 54, 50, 0.96);
    --ubx-border: rgba(45, 212, 191, 0.17);
    --ubx-text: #eefdfb;
    --ubx-muted: #9cc9c4;
    --ubx-primary: #2dd4bf;
    --ubx-primary-rgb: 45, 212, 191;
    --ubx-accent: #a3e635;
    --ubx-ambient-secondary-rgb: 163, 230, 53;
    --bs-primary: #2dd4bf;
    --bs-primary-rgb: 45, 212, 191;
}

[data-bs-theme="light"][data-ubx-theme="petrol"] {
    --ubx-bg: #eafaf7;
    --ubx-surface: rgba(248, 255, 253, 0.87);
    --ubx-surface-strong: rgba(252, 255, 254, 0.98);
    --ubx-border: rgba(24, 103, 95, 0.18);
    --ubx-text: #0c211f;
    --ubx-muted: #54726d;
    --ubx-primary: #13887c;
    --ubx-primary-rgb: 19, 136, 124;
    --ubx-accent: #5d8e13;
    --ubx-ambient-secondary-rgb: 93, 142, 19;
    --bs-primary: #13887c;
    --bs-primary-rgb: 19, 136, 124;
}

[data-ubx-theme="sodium"] {
    --ubx-bg: #160c04;
    --ubx-surface: rgba(37, 21, 9, 0.86);
    --ubx-surface-strong: rgba(64, 35, 12, 0.96);
    --ubx-border: rgba(249, 115, 22, 0.18);
    --ubx-text: #fff4ea;
    --ubx-muted: #d5b89d;
    --ubx-primary: #f97316;
    --ubx-primary-rgb: 249, 115, 22;
    --ubx-accent: #22d3ee;
    --ubx-ambient-secondary-rgb: 34, 211, 238;
    --bs-primary: #f97316;
    --bs-primary-rgb: 249, 115, 22;
}

[data-bs-theme="light"][data-ubx-theme="sodium"] {
    --ubx-bg: #fff3e6;
    --ubx-surface: rgba(255, 250, 244, 0.87);
    --ubx-surface-strong: rgba(255, 253, 249, 0.98);
    --ubx-border: rgba(156, 80, 23, 0.18);
    --ubx-text: #27160b;
    --ubx-muted: #795f48;
    --ubx-primary: #c25a11;
    --ubx-primary-rgb: 194, 90, 17;
    --ubx-accent: #087990;
    --ubx-ambient-secondary-rgb: 8, 121, 144;
    --bs-primary: #c25a11;
    --bs-primary-rgb: 194, 90, 17;
}

html {
    scroll-behavior: smooth;
}

.ubx-sticky-landscape {
    position: static;
}

@media (min-width: 992px) and (orientation: landscape) {
    .ubx-sticky-landscape {
        position: sticky;
        top: var(--ubx-sticky-top);
        align-self: flex-start;
        z-index: 5;
    }

    .ubx-sticky-landscape.ubx-ad {
        margin-top: 0 !important;
    }
}

.ubx-skip-link {
    position: fixed;
    top: 0.75rem;
    left: 0.75rem;
    z-index: 2000;
    padding: 0.7rem 1rem;
    color: #160d08;
    background: var(--ubx-primary);
    border-radius: 999px;
    font-weight: 800;
    text-decoration: none;
    transform: translateY(-160%);
    transition: transform 160ms ease;
}

.ubx-skip-link:focus {
    transform: translateY(0);
}

.ubx-body {
    min-height: 100vh;
    color: var(--ubx-text);
    background:
        radial-gradient(circle at top left, rgba(var(--ubx-primary-rgb), 0.14), transparent 28rem),
        radial-gradient(circle at 85% 20%, rgba(var(--ubx-ambient-secondary-rgb), 0.14), transparent 24rem),
        linear-gradient(180deg, #11121a 0%, var(--ubx-bg) 48%, #040508 100%);
}

[data-bs-theme="light"] .ubx-body {
    background:
        radial-gradient(circle at top left, rgba(var(--ubx-primary-rgb), 0.18), transparent 28rem),
        radial-gradient(circle at 85% 20%, rgba(var(--ubx-ambient-secondary-rgb), 0.11), transparent 24rem),
        linear-gradient(180deg, #fff8ee 0%, var(--ubx-bg) 52%, #e9dece 100%);
}

.text-secondary {
    color: var(--ubx-muted) !important;
}

.fw-black {
    font-weight: 900;
    letter-spacing: -0.055em;
}

.btn-primary {
    --bs-btn-color: #07140d;
    --bs-btn-bg: var(--ubx-primary);
    --bs-btn-border-color: var(--ubx-primary);
    --bs-btn-hover-color: #07140d;
    --bs-btn-hover-bg: #a8e8b7;
    --bs-btn-hover-border-color: #a8e8b7;
    --bs-btn-active-color: #07140d;
    --bs-btn-active-bg: #75c989;
    --bs-btn-active-border-color: #75c989;
    box-shadow: 0 0 16px rgba(var(--ubx-primary-rgb), 0.12);
}

.btn-outline-light {
    --bs-btn-border-color: rgba(255, 255, 255, 0.22);
}

.btn-premium {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    --bs-btn-color: #160d08;
    --bs-btn-bg: var(--ubx-kind-premium);
    --bs-btn-border-color: var(--ubx-kind-premium);
    --bs-btn-hover-color: #160d08;
    --bs-btn-hover-bg: #ffc98f;
    --bs-btn-hover-border-color: #ffc98f;
    --bs-btn-active-color: #160d08;
    --bs-btn-active-bg: #e6a35b;
    --bs-btn-active-border-color: #e6a35b;
    box-shadow:
        0 0 0 0.08rem rgba(var(--ubx-kind-premium-rgb), 0.18),
        0 0 22px rgba(var(--ubx-kind-premium-rgb), 0.14);
}

.btn-outline-premium {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    --bs-btn-color: var(--ubx-text);
    --bs-btn-border-color: rgba(var(--ubx-kind-premium-rgb), 0.42);
    --bs-btn-hover-color: #160d08;
    --bs-btn-hover-bg: var(--ubx-kind-premium);
    --bs-btn-hover-border-color: var(--ubx-kind-premium);
    --bs-btn-active-color: #160d08;
    --bs-btn-active-bg: var(--ubx-kind-premium);
    --bs-btn-active-border-color: var(--ubx-kind-premium);
}

[data-bs-theme="light"] .btn-outline-light {
    --bs-btn-color: var(--ubx-text);
    --bs-btn-border-color: rgba(72, 54, 38, 0.24);
    --bs-btn-hover-color: #fffaf3;
    --bs-btn-hover-bg: var(--ubx-rust);
    --bs-btn-hover-border-color: var(--ubx-rust);
    --bs-btn-active-color: #fffaf3;
    --bs-btn-active-bg: var(--ubx-rust);
    --bs-btn-active-border-color: var(--ubx-rust);
}

[data-bs-theme="light"] .btn-premium {
    --bs-btn-color: #fffaf3;
    --bs-btn-hover-color: #fffaf3;
    --bs-btn-hover-bg: #a85d35;
    --bs-btn-hover-border-color: #a85d35;
    --bs-btn-active-color: #fffaf3;
    --bs-btn-active-bg: #85442d;
    --bs-btn-active-border-color: #85442d;
    box-shadow:
        0 0 0 0.08rem rgba(var(--ubx-kind-premium-rgb), 0.12),
        0 0 18px rgba(var(--ubx-kind-premium-rgb), 0.1);
}

[data-bs-theme="light"] .btn-outline-premium {
    --bs-btn-hover-color: #fffaf3;
    --bs-btn-active-color: #fffaf3;
}

[data-bs-theme="light"] .btn-primary {
    --bs-btn-color: #fffaf3;
    --bs-btn-hover-color: #fffaf3;
    --bs-btn-hover-bg: #256d48;
    --bs-btn-hover-border-color: #256d48;
    --bs-btn-active-color: #fffaf3;
    --bs-btn-active-bg: #1f5d3d;
    --bs-btn-active-border-color: #1f5d3d;
}

.btn:focus-visible,
.nav-link:focus-visible,
.navbar-brand:focus-visible,
.ubx-breadcrumb a:focus-visible,
.ubx-place-card a:focus-visible,
.ubx-media-card:focus-visible,
.ubx-region-card:focus-visible,
.ubx-map-dot:focus-visible,
.ubx-footer a:focus-visible {
    outline: 3px solid rgba(var(--ubx-primary-rgb), 0.85);
    outline-offset: 4px;
    box-shadow: 0 0 0 0.25rem rgba(var(--ubx-primary-rgb), 0.18);
}

.ubx-navbar {
    --bs-navbar-color: rgba(242, 238, 232, 0.78);
    --bs-navbar-hover-color: var(--ubx-primary);
    --bs-navbar-active-color: var(--ubx-primary);
    --bs-navbar-brand-color: var(--ubx-text);
    --bs-navbar-brand-hover-color: var(--ubx-primary);
    --bs-navbar-toggler-border-color: var(--ubx-border);
    background: rgba(8, 9, 13, 0.74);
    border-bottom: 1px solid var(--ubx-border);
    backdrop-filter: blur(22px);
}

.ubx-navbar > .container {
    position: relative;
}

[data-bs-theme="light"] .ubx-navbar {
    --bs-navbar-color: rgba(33, 24, 18, 0.72);
    --bs-navbar-hover-color: var(--ubx-rust);
    --bs-navbar-active-color: var(--ubx-rust);
    --bs-navbar-brand-color: var(--ubx-text);
    --bs-navbar-brand-hover-color: var(--ubx-rust);
    background: rgba(255, 250, 241, 0.78);
}

.ubx-brand-mark {
    display: inline-grid;
    width: 2.25rem;
    height: 2.25rem;
    place-items: center;
    color: #160d08;
    background: var(--ubx-primary);
    border-radius: 0.8rem;
    font-weight: 900;
}

.ubx-brand {
    min-width: max-content;
    font-weight: 900;
    letter-spacing: -0.02em;
}

.ubx-brand-mark-logo {
    overflow: hidden;
    background:
        radial-gradient(circle at 35% 22%, rgba(255, 255, 255, 0.22), transparent 38%),
        rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(var(--ubx-primary-rgb), 0.28);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.12),
        0 0.8rem 2.2rem rgba(0, 0, 0, 0.22);
}

.ubx-brand-mark-logo img {
    width: 92%;
    height: 92%;
    object-fit: contain;
    filter: drop-shadow(0 0.25rem 0.55rem rgba(0, 0, 0, 0.28));
}

.ubx-brand-text {
    line-height: 1;
}

.ubx-brand-icon,
.ubx-nav-icon,
.ubx-btn-icon,
.ubx-badge-icon,
.ubx-inline-icon,
.ubx-link-icon,
.ubx-feature-icon,
.ubx-footer-icon,
.ubx-theme-icon,
.ubx-phone-icon,
.ubx-card-stat-icon {
    display: inline-block;
    flex: 0 0 auto;
    vertical-align: -0.145em;
}

.ubx-brand-icon {
    width: 1.25rem;
    height: 1.25rem;
}

.ubx-nav-icon,
.ubx-btn-icon,
.ubx-badge-icon,
.ubx-inline-icon,
.ubx-link-icon,
.ubx-footer-icon,
.ubx-phone-icon,
.ubx-card-stat-icon {
    width: 1em;
    height: 1em;
}

.ubx-feature-icon {
    width: 1.3rem;
    height: 1.3rem;
}

.nav-link,
.btn,
.badge,
.ubx-footer-link,
.ubx-card-stat {
    display: inline-flex;
    gap: 0.42rem;
    align-items: center;
}

.btn,
.badge {
    justify-content: center;
}

.ubx-footer-link {
    color: inherit;
    text-decoration: none;
}

.ubx-footer-link:hover {
    color: var(--ubx-primary);
}

.ubx-nav-premium {
    color: var(--ubx-kind-premium) !important;
    font-weight: 800;
}

.ubx-nav-live-explore {
    color: #86efac !important;
    font-weight: 900;
    padding-inline: 0.75rem !important;
    background: rgba(74, 222, 128, 0.1);
    border: 1px solid rgba(74, 222, 128, 0.18);
    border-radius: 999px;
}

.ubx-nav-live-explore:hover,
.ubx-nav-live-explore:focus {
    color: #bbf7d0 !important;
    background: rgba(74, 222, 128, 0.15);
    box-shadow: 0 0.8rem 1.6rem rgba(74, 222, 128, 0.08);
}

.ubx-live-mini-badge,
.ubx-live-status-pill {
    gap: 0.35rem;
    align-items: center;
}

.ubx-live-mini-badge .ubx-ops-live-dot,
.ubx-live-status-pill .ubx-ops-live-dot,
.ubx-nav-live-explore .ubx-ops-live-dot {
    width: 0.48rem;
    height: 0.48rem;
}

.ubx-live-status-pill.text-bg-success .ubx-ops-live-dot,
.ubx-live-mini-badge.text-bg-success .ubx-ops-live-dot {
    background: #f0fdf4;
    box-shadow: 0 0 0 0.2rem rgba(240, 253, 244, 0.2);
}

.ubx-nav-premium::after,
.ubx-premium-mark::after {
    display: block;
    width: 1.5rem;
    height: 0.12rem;
    margin-top: 0.15rem;
    content: "";
    background: linear-gradient(90deg, rgba(var(--ubx-kind-premium-rgb), 0.95), transparent);
    border-radius: 999px;
}

.ubx-premium-mark {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    color: var(--ubx-kind-premium);
    font-weight: 900;
    line-height: 1;
}

.ubx-premium-mark-inline {
    transform: translateY(0.04rem);
}

.ubx-premium-mark-inline::after {
    width: 1.25rem;
    height: 0.1rem;
}

.ubx-supporters-card {
    position: relative;
    overflow: hidden;
    border-color: rgba(var(--ubx-kind-premium-rgb), 0.22);
    isolation: isolate;
}

.ubx-supporters-card::before {
    position: absolute;
    inset: -38% -18% auto auto;
    z-index: -1;
    width: 18rem;
    height: 18rem;
    content: "";
    background:
        radial-gradient(circle, rgba(var(--ubx-kind-premium-rgb), 0.2), transparent 62%);
    filter: blur(0.4rem);
    opacity: 0.78;
    pointer-events: none;
}

.ubx-supporters-list {
    display: grid;
    gap: 0.65rem;
}

.ubx-supporter-row,
.ubx-supporter-mini {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: inherit;
    text-decoration: none;
}

.ubx-supporter-row {
    position: relative;
    padding: 0.65rem 0.75rem;
    border: 1px solid rgba(var(--ubx-kind-premium-rgb), 0.14);
    border-radius: 1.25rem;
    background: rgba(255, 255, 255, 0.045);
    transition:
        border-color var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth),
        transform var(--ubx-motion-smooth);
}

.ubx-supporter-row:hover {
    border-color: rgba(var(--ubx-kind-premium-rgb), 0.34);
    box-shadow: 0 0.95rem 2.2rem rgba(var(--ubx-kind-premium-rgb), 0.12);
    transform: translateY(-0.08rem);
}

.ubx-supporter-rank {
    display: inline-grid;
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
    place-items: center;
    color: var(--ubx-kind-premium);
    background: rgba(var(--ubx-kind-premium-rgb), 0.12);
    border: 1px solid rgba(var(--ubx-kind-premium-rgb), 0.2);
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 900;
}

.ubx-supporter-copy,
.ubx-supporter-mini span {
    display: grid;
    min-width: 0;
    gap: 0.1rem;
}

.ubx-supporter-copy strong,
.ubx-supporter-mini strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ubx-supporter-copy small,
.ubx-supporter-mini small {
    color: var(--ubx-muted);
}

.ubx-supporters-newest-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
    gap: 0.75rem;
}

.ubx-supporter-mini {
    min-width: 0;
    padding: 0.65rem;
    border-radius: 1.2rem;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.ubx-supporter-mini:hover {
    border-color: rgba(var(--ubx-kind-premium-rgb), 0.22);
    box-shadow: 0 0.8rem 1.8rem rgba(var(--ubx-kind-premium-rgb), 0.08);
}

.ubx-supporters-card-compact .ubx-supporter-row {
    padding: 0.52rem 0.62rem;
}

.ubx-supporters-card-compact .ubx-supporters-newest-grid {
    grid-template-columns: 1fr;
}

[data-bs-theme="light"] .ubx-supporter-row,
[data-bs-theme="light"] .ubx-supporter-mini {
    background: rgba(255, 255, 255, 0.68);
    border-color: rgba(var(--ubx-kind-premium-rgb), 0.16);
}

.ubx-link-icon {
    opacity: 0.78;
    transition:
        opacity var(--ubx-motion-smooth),
        transform var(--ubx-motion-smooth);
}

a:hover .ubx-link-icon {
    opacity: 1;
    transform: translateX(0.15rem);
}

.ubx-theme-switcher {
    display: flex;
    align-items: center;
}

.ubx-theme-toggle {
    display: inline-flex;
    gap: 0.45rem;
    align-items: center;
    padding: 0.32rem 0.7rem;
    border: 1px solid var(--ubx-border);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.055);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.ubx-theme-toggle::after {
    margin-left: 0.05rem;
}

.ubx-theme-icon {
    color: var(--ubx-primary);
    filter: drop-shadow(0 0 0.22rem rgba(var(--ubx-primary-rgb), 0.22));
}

.ubx-theme-menu {
    --bs-dropdown-min-width: 9.5rem;
}

.ubx-theme-menu .dropdown-header {
    color: var(--ubx-muted);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.ubx-theme-style-option {
    width: 100%;
    gap: 0.75rem;
    padding: 0.65rem 0.72rem;
    text-align: left;
}

.ubx-theme-style-option.is-locked {
    opacity: 0.74;
}

.ubx-theme-style-meta {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.7rem;
    align-items: center;
    width: 100%;
}

.ubx-theme-style-meta strong,
.ubx-theme-style-meta small {
    display: block;
}

.ubx-theme-style-meta small {
    margin-top: 0.1rem;
    color: var(--ubx-muted);
    font-weight: 600;
    white-space: normal;
}

.ubx-theme-style-swatch {
    width: 1.55rem;
    height: 1.55rem;
    border: 1px solid rgba(255, 255, 255, 0.32);
    border-radius: 999px;
    background:
        radial-gradient(circle at 34% 30%, rgba(255, 255, 255, 0.9), transparent 0.25rem),
        linear-gradient(135deg, var(--ubx-style-swatch), rgba(var(--ubx-style-swatch-rgb), 0.38));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.26),
        0 0 1.1rem rgba(var(--ubx-style-swatch-rgb), 0.28);
}

.ubx-addon-shop {
    position: relative;
}

.ubx-addon-sidebar {
    overflow: hidden;
}

.ubx-addon-sidebar::after {
    position: absolute;
    inset: auto -18% -24% 28%;
    width: 16rem;
    height: 16rem;
    content: "";
    pointer-events: none;
    background: radial-gradient(circle, rgba(var(--ubx-primary-rgb), 0.18), transparent 68%);
    filter: blur(0.5rem);
}

.ubx-addon-balance {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 0.1rem 0.8rem;
    align-items: end;
    padding: 1rem;
    border: 1px solid rgba(var(--ubx-primary-rgb), 0.22);
    border-radius: 1.25rem;
    background: rgba(var(--ubx-primary-rgb), 0.08);
}

.ubx-addon-balance strong {
    font-size: clamp(2.1rem, 4vw, 3.2rem);
    line-height: 0.9;
}

.ubx-addon-price {
    color: #160d08;
    background: var(--ubx-primary);
    box-shadow: 0 0 1.25rem rgba(var(--ubx-primary-rgb), 0.24);
}

.ubx-addon-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(var(--addon-accent-rgb), 0.2);
    border-radius: 1.5rem;
    background:
        linear-gradient(145deg, rgba(var(--addon-accent-rgb), 0.1), transparent 42%),
        var(--ubx-surface);
    box-shadow: 0 1rem 2.2rem rgba(0, 0, 0, 0.18);
    transition:
        transform var(--ubx-motion-smooth),
        border-color var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth);
}

.ubx-addon-card:hover {
    transform: translateY(-0.08rem);
    border-color: rgba(var(--addon-accent-rgb), 0.28);
    box-shadow:
        0 1rem 2.25rem rgba(0, 0, 0, 0.2),
        0 0 0.85rem rgba(var(--addon-accent-rgb), 0.08);
}

.ubx-addon-card.is-active {
    border-color: rgba(var(--addon-accent-rgb), 0.52);
}

.ubx-addon-theme-preview {
    position: relative;
    min-height: 9.25rem;
    padding: 1.1rem;
    background:
        radial-gradient(circle at 78% 22%, rgba(var(--addon-accent-rgb), 0.48), transparent 0.35rem),
        radial-gradient(circle at 24% 20%, rgba(255, 255, 255, 0.16), transparent 0.18rem),
        linear-gradient(135deg, var(--addon-preview-from), var(--addon-preview-to));
}

.ubx-addon-theme-window {
    position: absolute;
    right: 1.1rem;
    bottom: 1.1rem;
    left: 1.1rem;
    display: grid;
    gap: 0.55rem;
    padding: 0.85rem;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 1.1rem;
    background: color-mix(in srgb, var(--addon-preview-surface), transparent 12%);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.11),
        0 0 2rem rgba(var(--addon-accent-rgb), 0.2);
}

.ubx-addon-theme-window span {
    display: block;
    height: 0.55rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.16);
}

.ubx-addon-theme-window span:first-child {
    width: 48%;
    background: var(--addon-accent);
}

.ubx-addon-theme-window span:nth-child(2) {
    width: 78%;
}

.ubx-addon-theme-window span:nth-child(3) {
    width: 62%;
}

.ubx-addon-theme-glow {
    position: absolute;
    right: 18%;
    bottom: -18%;
    width: 9rem;
    height: 9rem;
    border-radius: 999px;
    background: rgba(var(--addon-accent-rgb), 0.28);
    filter: blur(2.2rem);
}

[data-bs-theme="light"] .ubx-addon-card {
    box-shadow: 0 1rem 2rem rgba(45, 35, 24, 0.12);
}

.ubx-addon-feature-grid {
    align-items: stretch;
}

.ubx-addon-feature-card,
.ubx-theme-card,
.ubx-credit-package-card,
.ubx-credit-feature-card {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(var(--addon-accent-rgb, var(--ubx-primary-rgb)), 0.18);
    border-radius: 1.45rem;
    background:
        linear-gradient(145deg, rgba(var(--addon-accent-rgb, var(--ubx-primary-rgb)), 0.08), transparent 44%),
        var(--ubx-surface);
    box-shadow: 0 1rem 2.2rem rgba(0, 0, 0, 0.18);
    transition:
        transform var(--ubx-motion-smooth),
        border-color var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth),
        filter var(--ubx-motion-smooth);
}

.ubx-addon-feature-card,
.ubx-credit-feature-card {
    padding: 1.35rem;
}

.ubx-addon-feature-card:hover,
.ubx-theme-card:hover,
.ubx-credit-package-card:hover,
.ubx-credit-feature-card:hover {
    transform: translateY(-0.08rem);
    border-color: rgba(var(--addon-accent-rgb, var(--ubx-primary-rgb)), 0.3);
    box-shadow:
        0 1.1rem 2.4rem rgba(0, 0, 0, 0.2),
        0 0 0.9rem rgba(var(--addon-accent-rgb, var(--ubx-primary-rgb)), 0.08);
    filter: saturate(1.015);
}

.ubx-addon-feature-icon {
    display: inline-grid;
    width: 2.65rem;
    height: 2.65rem;
    margin-bottom: 1rem;
    place-items: center;
    color: var(--addon-accent, var(--ubx-primary));
    border: 1px solid rgba(var(--addon-accent-rgb, var(--ubx-primary-rgb)), 0.22);
    border-radius: 0.9rem;
    background: rgba(var(--addon-accent-rgb, var(--ubx-primary-rgb)), 0.12);
}

.ubx-addon-feature-icon svg {
    width: 1.15rem;
    height: 1.15rem;
}

.ubx-theme-hero,
.ubx-credit-hero,
.ubx-credit-sidebar {
    position: relative;
    overflow: hidden;
}

.ubx-theme-hero::after,
.ubx-credit-sidebar::after {
    position: absolute;
    inset: auto -12% -35% auto;
    width: 18rem;
    height: 18rem;
    content: "";
    pointer-events: none;
    background: radial-gradient(circle, rgba(var(--ubx-primary-rgb), 0.16), transparent 68%);
    filter: blur(0.4rem);
}

.ubx-theme-balance,
.ubx-credit-balance {
    display: grid;
    gap: 0.05rem;
    padding: 1rem;
    border: 1px solid rgba(var(--ubx-primary-rgb), 0.22);
    border-radius: 1.2rem;
    background: rgba(var(--ubx-primary-rgb), 0.08);
}

.ubx-theme-balance strong,
.ubx-credit-balance strong {
    color: var(--ubx-text);
    font-size: clamp(2.1rem, 4vw, 3.25rem);
    line-height: 0.92;
}

.ubx-theme-card.is-active {
    border-color: rgba(var(--addon-accent-rgb), 0.48);
    box-shadow:
        0 1.2rem 2.5rem rgba(0, 0, 0, 0.22),
        0 0 0 0.12rem rgba(var(--addon-accent-rgb), 0.12);
}

.ubx-theme-card-preview {
    min-height: 10.5rem;
}

.ubx-theme-preview-orb {
    position: absolute;
    top: 1.1rem;
    left: 1.1rem;
    width: 2.35rem;
    height: 2.35rem;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 999px;
    background:
        radial-gradient(circle at 34% 28%, rgba(255, 255, 255, 0.9), transparent 0.35rem),
        var(--addon-accent);
    box-shadow: 0 0 1.2rem rgba(var(--addon-accent-rgb), 0.22);
}

.ubx-theme-card-notes,
.ubx-credit-hints {
    display: grid;
    gap: 0.45rem;
}

.ubx-theme-card-notes span,
.ubx-credit-hints span {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    color: var(--ubx-muted);
    font-size: 0.86rem;
    font-weight: 700;
}

.ubx-theme-card-notes span::before,
.ubx-credit-hints span::before {
    width: 0.45rem;
    height: 0.45rem;
    content: "";
    background: var(--ubx-primary);
    border-radius: 999px;
    box-shadow: 0 0 0.6rem rgba(var(--ubx-primary-rgb), 0.16);
}

.ubx-credit-shop {
    --addon-accent: var(--ubx-kind-premium);
    --addon-accent-rgb: var(--ubx-kind-premium-rgb);
}

.ubx-credit-package-card {
    min-height: 100%;
    padding: 1.35rem;
    --addon-accent: var(--ubx-primary);
    --addon-accent-rgb: var(--ubx-primary-rgb);
}

.ubx-credit-package-card.is-highlighted {
    --addon-accent: var(--ubx-kind-premium);
    --addon-accent-rgb: var(--ubx-kind-premium-rgb);
}

.ubx-credit-package-amount {
    display: flex;
    align-items: end;
    gap: 0.55rem;
    padding: 0.85rem 0;
}

.ubx-credit-package-amount strong {
    line-height: 0.88;
}

.ubx-credit-package-amount span {
    margin-bottom: 0.35rem;
    color: var(--ubx-muted);
    font-weight: 800;
}

.ubx-credit-bonus {
    color: var(--ubx-kind-premium);
    font-size: 0.9rem;
    font-weight: 800;
}

.ubx-credit-feature-card {
    --addon-accent: var(--ubx-kind-list);
    --addon-accent-rgb: var(--ubx-kind-list-rgb);
}

.ubx-credit-feature-card p {
    margin: 0.55rem 0 0;
    color: var(--ubx-muted);
    font-size: 0.92rem;
}

.ubx-dropdown-menu {
    --bs-dropdown-min-width: 11rem;
    --bs-dropdown-padding-x: 0.35rem;
    --bs-dropdown-padding-y: 0.35rem;
    --bs-dropdown-color: var(--ubx-text);
    --bs-dropdown-link-color: var(--ubx-text);
    --bs-dropdown-link-hover-color: var(--ubx-text);
    --bs-dropdown-link-active-color: #160d08;
    --bs-dropdown-link-active-bg: var(--ubx-primary);
    --bs-dropdown-bg: rgba(19, 22, 30, 0.94);
    --bs-dropdown-border-color: var(--ubx-border);
    --bs-dropdown-border-radius: 1rem;
    box-shadow:
        0 22px 70px rgba(0, 0, 0, 0.36),
        0 0 18px rgba(var(--ubx-primary-rgb), 0.07);
    backdrop-filter: blur(20px);
}

.ubx-mega-item {
    position: static;
}

.ubx-mega-menu {
    width: min(42rem, calc(100vw - 2rem));
    padding: 0.75rem;
    right: auto !important;
    left: 50% !important;
    margin-top: 0.55rem;
    transform: translateX(-50%);
}

.ubx-mega-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.45rem;
}

.ubx-mega-grid-compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ubx-mega-link {
    display: grid;
    grid-template-columns: 2.15rem 1fr;
    gap: 0.7rem;
    align-items: start;
    min-height: 4.2rem;
    padding: 0.75rem;
    color: var(--ubx-text);
    text-decoration: none;
    border: 1px solid transparent;
    border-radius: 0.95rem;
    background: rgba(255, 255, 255, 0.035);
    transition:
        background var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth),
        transform var(--ubx-motion-smooth);
}

.ubx-mega-link:hover,
.ubx-mega-link:focus {
    color: var(--ubx-text);
    background: rgba(var(--ubx-primary-rgb), 0.08);
    box-shadow: 0 0.45rem 1.25rem rgba(var(--ubx-primary-rgb), 0.08);
    transform: translateY(-0.04rem);
}

.ubx-mega-link-disabled,
.ubx-mega-link-disabled:hover,
.ubx-mega-link-disabled:focus {
    cursor: not-allowed;
    opacity: 0.68;
    transform: none;
    box-shadow: none;
}

.ubx-mega-icon {
    display: inline-grid;
    width: 2.15rem;
    height: 2.15rem;
    place-items: center;
    color: var(--ubx-primary);
    background: rgba(var(--ubx-primary-rgb), 0.12);
    border: 1px solid rgba(var(--ubx-primary-rgb), 0.18);
    border-radius: 0.75rem;
}

.ubx-mega-icon svg {
    width: 1rem;
    height: 1rem;
}

.ubx-mega-link strong,
.ubx-mega-link small {
    display: block;
}

.ubx-mega-link strong {
    margin-bottom: 0.15rem;
    font-size: 0.95rem;
}

.ubx-mega-link small {
    color: var(--ubx-muted);
    line-height: 1.35;
}

.ubx-account-toggle {
    min-width: 6rem;
}

.ubx-account-progress-card {
    padding: 1rem;
    background:
        radial-gradient(circle at 92% 8%, rgba(var(--ubx-kind-person-rgb), 0.16), transparent 12rem),
        rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(var(--ubx-kind-person-rgb), 0.18);
    border-radius: 1.25rem;
}

.ubx-account-hub-card {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.ubx-account-hub-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 0.22rem;
    background: linear-gradient(180deg, rgba(var(--ubx-primary-rgb), 0.78), rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.22));
    opacity: 0.9;
}

.ubx-account-hub-card .btn {
    margin-top: auto;
}

.ubx-account-mini-progress {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.55rem 0.65rem;
    color: var(--ubx-muted);
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid var(--ubx-border);
    border-radius: 0.8rem;
    font-size: 0.82rem;
}

.ubx-account-mini-progress strong {
    color: var(--ubx-text);
    white-space: nowrap;
}

.ubx-settings-nav {
    position: sticky;
    top: 5rem;
    z-index: 10;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    align-items: center;
    border-radius: 1.35rem;
}

.ubx-settings-nav a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.55rem;
    padding: 0.55rem 0.9rem;
    color: var(--ubx-text);
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid var(--ubx-border);
    border-radius: 999px;
    text-decoration: none;
    font-weight: 800;
}

.ubx-settings-nav a:hover,
.ubx-settings-nav a:focus {
    color: var(--ubx-text);
    background: rgba(var(--ubx-primary-rgb), 0.13);
    border-color: rgba(var(--ubx-primary-rgb), 0.26);
}

.ubx-settings-section {
    scroll-margin-top: 7rem;
    margin-top: 1.35rem;
}

.ubx-settings-section + .ubx-settings-section {
    margin-top: 2.25rem;
    padding-top: 2.25rem;
    border-top: 1px solid var(--ubx-border);
}

.ubx-settings-section .ubx-glass {
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.16);
}

.ubx-settings-section .ubx-glass:not(.ubx-kind-person) {
    background: rgba(var(--ubx-surface-rgb), 0.62);
}

.ubx-settings-section .form-control,
.ubx-settings-section .input-group-text {
    border-color: rgba(var(--ubx-primary-rgb), 0.18);
}

.ubx-settings-section .form-label {
    font-weight: 800;
}

.ubx-dropdown-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 0.72rem;
    font-weight: 800;
}

.ubx-dropdown-item:hover,
.ubx-dropdown-item:focus {
    background: rgba(var(--ubx-primary-rgb), 0.13);
    color: var(--ubx-text);
}

.ubx-dropdown-item.active::after {
    content: "";
    width: 0.45rem;
    height: 0.45rem;
    background: currentColor;
    border-radius: 50%;
}

[data-bs-theme="light"] .ubx-theme-toggle {
    background: rgba(255, 255, 255, 0.62);
}

[data-bs-theme="light"] .ubx-dropdown-menu {
    --bs-dropdown-bg: rgba(255, 250, 241, 0.96);
    box-shadow:
        0 22px 70px rgba(72, 54, 38, 0.16),
        0 0 16px rgba(var(--ubx-primary-rgb), 0.07);
}

.ubx-hero {
    position: relative;
    overflow: hidden;
    padding: clamp(5rem, 9vw, 9rem) 0 4rem;
}

.ubx-hero::after {
    position: absolute;
    inset: auto -15% -35% auto;
    z-index: -1;
    width: 42rem;
    height: 42rem;
    content: "";
    background: rgba(var(--ubx-primary-rgb), 0.07);
    filter: blur(24px);
    border-radius: 999px;
}

.ubx-eyebrow {
    color: var(--ubx-primary);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.ubx-glass,
.ubx-place-card,
.ubx-premium {
    background: linear-gradient(145deg, var(--ubx-surface), rgba(255, 255, 255, 0.035));
    border: 1px solid var(--ubx-border);
    border-radius: 1.6rem;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.35);
    backdrop-filter: blur(18px);
}

.ubx-place-card,
.ubx-region-card,
.ubx-nearby-card,
.ubx-media-card,
.ubx-feature-card,
.ubx-topic-card,
.ubx-category-card,
.ubx-content-card,
.ubx-rank-list a,
.ubx-rank-link {
    transform-style: preserve-3d;
    transition:
        transform var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth),
        background var(--ubx-motion-smooth),
        filter var(--ubx-motion-smooth),
        backdrop-filter var(--ubx-motion-smooth);
}

.ubx-place-card:hover,
.ubx-region-card:hover,
.ubx-nearby-card:hover,
.ubx-media-card:hover,
.ubx-feature-card:hover,
.ubx-topic-card:hover,
.ubx-category-card:hover,
.ubx-content-card:hover,
.ubx-rank-list a:hover,
.ubx-rank-link:hover {
    box-shadow:
        0 20px 54px rgba(0, 0, 0, 0.28),
        0 0 22px rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.11),
        inset 0 1px 0 rgba(255, 255, 255, 0.13);
    filter: saturate(1.03);
    backdrop-filter: blur(19px);
}

[data-bs-theme="light"] .ubx-glass,
[data-bs-theme="light"] .ubx-place-card,
[data-bs-theme="light"] .ubx-premium {
    background: linear-gradient(145deg, var(--ubx-surface), rgba(var(--ubx-primary-rgb), 0.045));
    box-shadow: 0 24px 70px rgba(72, 54, 38, 0.13);
}

[data-bs-theme="light"] .ubx-place-card:hover,
[data-bs-theme="light"] .ubx-region-card:hover,
[data-bs-theme="light"] .ubx-nearby-card:hover,
[data-bs-theme="light"] .ubx-media-card:hover,
[data-bs-theme="light"] .ubx-feature-card:hover,
[data-bs-theme="light"] .ubx-topic-card:hover,
[data-bs-theme="light"] .ubx-category-card:hover,
[data-bs-theme="light"] .ubx-content-card:hover,
[data-bs-theme="light"] .ubx-rank-list a:hover,
[data-bs-theme="light"] .ubx-rank-link:hover {
    box-shadow:
        0 18px 48px rgba(72, 54, 38, 0.13),
        0 0 20px rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.ubx-hero-card {
    transform: rotate(1deg);
    animation: ubx-float-card 9s ease-in-out infinite;
}

.ubx-search {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 0.75rem;
    max-width: 46rem;
    padding: 0.4rem;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid var(--ubx-border);
    border-radius: 1.1rem;
}

[data-bs-theme="light"] .ubx-search {
    background: rgba(255, 255, 255, 0.56);
}

.ubx-search .form-control {
    color: var(--ubx-text);
    background: transparent;
    border: 0;
}

.ubx-search .form-control:focus {
    box-shadow: none;
}

.ubx-live-search-wrap {
    position: relative;
    max-width: 46rem;
    z-index: 40;
}

.ubx-live-search-wrap.ms-lg-auto {
    margin-left: auto;
}

.ubx-live-search-results {
    position: absolute;
    top: calc(100% + 0.55rem);
    right: 0;
    left: 0;
    display: grid;
    gap: 0.65rem;
    max-height: min(32rem, 62vh);
    padding: 0.15rem;
    overflow-y: auto;
    overscroll-behavior: contain;
    opacity: 0;
    transform: translateY(-0.35rem) scale(0.985);
    transition:
        opacity 180ms ease,
        transform 180ms ease;
    z-index: 1050;
    scrollbar-width: thin;
    scrollbar-color: rgba(var(--ubx-primary-rgb), 0.45) transparent;
}

.ubx-live-search-results[hidden] {
    display: none;
}

.ubx-live-search-results.is-visible {
    opacity: 1;
    transform: translateY(0) scale(1);
}

.ubx-live-search-status,
.ubx-live-search-item {
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.05)),
        rgba(15, 18, 28, 0.72);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 1rem;
    box-shadow:
        0 14px 38px rgba(0, 0, 0, 0.18),
        0 0 18px rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.08);
}

[data-bs-theme="light"] .ubx-live-search-status,
[data-bs-theme="light"] .ubx-live-search-item {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.86), rgba(255, 255, 255, 0.58)),
        rgba(255, 255, 255, 0.76);
    border-color: rgba(72, 54, 38, 0.12);
    box-shadow:
        0 14px 34px rgba(72, 54, 38, 0.1),
        0 0 18px rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.08);
}

.ubx-live-search-status {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.9rem 1rem;
    color: var(--ubx-muted);
}

.ubx-live-search-dot {
    width: 0.7rem;
    height: 0.7rem;
    background: rgb(var(--ubx-primary-rgb));
    border-radius: 999px;
    box-shadow: 0 0 12px rgba(var(--ubx-primary-rgb), 0.32);
}

.ubx-live-search-item {
    --ubx-card-accent-rgb: var(--ubx-kind-place-rgb);
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.45rem;
    align-items: center;
    padding: 0.32rem;
    color: inherit;
    opacity: 0;
    transform: translateY(0.35rem);
    animation: ubx-live-search-item-in 260ms ease forwards;
    animation-delay: var(--ubx-live-delay, 0ms);
}

.ubx-live-search-main {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.85rem;
    align-items: center;
    min-width: 0;
    padding: 0.52rem;
    color: inherit;
    text-decoration: none;
    border-radius: 0.76rem;
}

.ubx-live-search-main:hover,
.ubx-live-search-main:focus-visible {
    color: inherit;
    background: rgba(255, 255, 255, 0.045);
}

.ubx-live-search-item.ubx-kind-list {
    --ubx-card-accent-rgb: var(--ubx-kind-list-rgb);
}

.ubx-live-search-item.ubx-kind-category {
    --ubx-card-accent-rgb: var(--ubx-kind-category-rgb);
}

.ubx-live-search-item.ubx-kind-region {
    --ubx-card-accent-rgb: var(--ubx-kind-region-rgb);
}

.ubx-live-search-item.ubx-kind-postal {
    --ubx-card-accent-rgb: var(--ubx-kind-postal-rgb);
}

.ubx-live-search-item:hover,
.ubx-live-search-item:focus-visible {
    color: inherit;
    transform: translateY(-0.04rem);
    box-shadow:
        0 16px 42px rgba(0, 0, 0, 0.2),
        0 0 18px rgba(var(--ubx-card-accent-rgb), 0.12);
}

.ubx-live-search-icon {
    display: grid;
    width: 2.55rem;
    height: 2.55rem;
    place-items: center;
    background: rgba(var(--ubx-card-accent-rgb), 0.17);
    border: 1px solid rgba(var(--ubx-card-accent-rgb), 0.28);
    border-radius: 0.85rem;
}

.ubx-live-search-icon svg {
    width: 1.12rem;
    height: 1.12rem;
    fill: rgb(var(--ubx-card-accent-rgb));
    filter: drop-shadow(0 0 8px rgba(var(--ubx-card-accent-rgb), 0.34));
}

.ubx-live-search-copy {
    display: grid;
    gap: 0.1rem;
    min-width: 0;
}

.ubx-live-search-kicker,
.ubx-live-search-copy small,
.ubx-live-search-excerpt {
    color: var(--ubx-muted);
}

.ubx-live-search-kicker {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.ubx-live-search-copy strong {
    overflow: hidden;
    font-size: 0.98rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ubx-live-search-excerpt {
    overflow: hidden;
    font-size: 0.82rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ubx-live-search-arrow {
    color: rgb(var(--ubx-card-accent-rgb));
    font-weight: 800;
    padding-inline: 0.55rem;
}

.ubx-live-search-map-action {
    display: grid;
    width: 2.55rem;
    height: 2.55rem;
    place-items: center;
    color: rgb(var(--ubx-card-accent-rgb));
    background:
        radial-gradient(circle at 50% 35%, rgba(var(--ubx-card-accent-rgb), 0.18), transparent 62%),
        rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(var(--ubx-card-accent-rgb), 0.24);
    border-radius: 0.82rem;
    text-decoration: none;
    transition:
        transform var(--ubx-motion-smooth),
        background var(--ubx-motion-smooth),
        border-color var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth);
}

.ubx-live-search-map-action:hover,
.ubx-live-search-map-action:focus-visible {
    color: rgb(var(--ubx-card-accent-rgb));
    background: rgba(var(--ubx-card-accent-rgb), 0.14);
    border-color: rgba(var(--ubx-card-accent-rgb), 0.38);
    box-shadow: 0 0 1rem rgba(var(--ubx-card-accent-rgb), 0.16);
    transform: translateY(-0.05rem) scale(1.02);
}

.ubx-live-search-map-action svg {
    width: 1rem;
    height: 1rem;
    fill: currentColor;
}

.ubx-live-search-results.has-map-focus .ubx-live-search-map-action {
    animation: ubx-map-focus-pulse 520ms ease;
}

.ubx-map-focus-ring {
    animation: ubx-map-focus-ring 1.6s ease-in-out infinite;
    filter: drop-shadow(0 0 0.75rem rgba(var(--ubx-kind-premium-rgb), 0.38));
}

.ubx-pagination {
    --ubx-card-accent: var(--ubx-primary);
    --ubx-card-accent-rgb: var(--ubx-primary-rgb);
}

.ubx-pagination-lists {
    --ubx-card-accent: var(--ubx-kind-list);
    --ubx-card-accent-rgb: var(--ubx-kind-list-rgb);
}

.ubx-pagination-shell {
    position: relative;
    overflow: hidden;
    border-color: rgba(var(--ubx-card-accent-rgb), 0.2);
    box-shadow:
        0 18px 46px rgba(0, 0, 0, 0.16),
        0 0 20px rgba(var(--ubx-card-accent-rgb), 0.08);
}

.ubx-pagination-shell::before {
    position: absolute;
    inset: -8rem -7rem auto auto;
    z-index: -1;
    width: 18rem;
    height: 18rem;
    content: "";
    background: radial-gradient(circle, rgba(var(--ubx-card-accent-rgb), 0.12), transparent 68%);
    border-radius: 999px;
}

.ubx-pagination-badge {
    color: var(--ubx-text);
    background: rgba(var(--ubx-card-accent-rgb), 0.16);
    border: 1px solid rgba(var(--ubx-card-accent-rgb), 0.32);
    box-shadow: 0 0 14px rgba(var(--ubx-card-accent-rgb), 0.08);
}

.ubx-pagination .pagination {
    --bs-pagination-color: var(--ubx-text);
    --bs-pagination-bg: rgba(255, 255, 255, 0.05);
    --bs-pagination-border-color: rgba(255, 255, 255, 0.1);
    --bs-pagination-hover-color: var(--ubx-text);
    --bs-pagination-hover-bg: rgba(var(--ubx-card-accent-rgb), 0.16);
    --bs-pagination-hover-border-color: rgba(var(--ubx-card-accent-rgb), 0.34);
    --bs-pagination-focus-color: var(--ubx-text);
    --bs-pagination-focus-bg: rgba(var(--ubx-card-accent-rgb), 0.18);
    --bs-pagination-focus-box-shadow: 0 0 0 0.22rem rgba(var(--ubx-card-accent-rgb), 0.18);
    --bs-pagination-active-color: #08110f;
    --bs-pagination-active-bg: var(--ubx-card-accent);
    --bs-pagination-active-border-color: var(--ubx-card-accent);
    --bs-pagination-disabled-color: rgba(242, 238, 232, 0.42);
    --bs-pagination-disabled-bg: rgba(255, 255, 255, 0.035);
    --bs-pagination-disabled-border-color: rgba(255, 255, 255, 0.08);
}

.ubx-pagination .page-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.8rem;
    min-height: 2.8rem;
    gap: 0.35rem;
    border-radius: 999px !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    font-weight: 800;
    transition:
        transform var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth),
        background-color var(--ubx-motion-smooth),
        border-color var(--ubx-motion-smooth);
}

.ubx-pagination .page-link:hover,
.ubx-pagination .page-link:focus-visible {
    box-shadow:
        0 12px 28px rgba(0, 0, 0, 0.14),
        0 0 14px rgba(var(--ubx-card-accent-rgb), 0.1);
    transform: translateY(-1px);
}

.ubx-pagination .page-item.active .page-link {
    box-shadow:
        0 12px 30px rgba(0, 0, 0, 0.18),
        0 0 16px rgba(var(--ubx-card-accent-rgb), 0.14);
}

[data-bs-theme="light"] .ubx-pagination .pagination {
    --bs-pagination-bg: rgba(255, 255, 255, 0.68);
    --bs-pagination-border-color: rgba(72, 54, 38, 0.14);
    --bs-pagination-disabled-color: rgba(33, 24, 18, 0.38);
    --bs-pagination-disabled-bg: rgba(255, 255, 255, 0.44);
    --bs-pagination-disabled-border-color: rgba(72, 54, 38, 0.1);
}

@keyframes ubx-live-search-item-in {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes ubx-map-focus-pulse {
    0%,
    100% {
        box-shadow: 0 0 1rem rgba(var(--ubx-card-accent-rgb), 0.12);
    }
    45% {
        box-shadow:
            0 0 0 0.22rem rgba(var(--ubx-card-accent-rgb), 0.16),
            0 0 1.35rem rgba(var(--ubx-card-accent-rgb), 0.24);
    }
}

@keyframes ubx-map-focus-ring {
    0%,
    100% {
        opacity: 0.72;
        stroke-width: 2;
    }
    50% {
        opacity: 1;
        stroke-width: 3.2;
    }
}

.ubx-map-preview,
.ubx-map-page {
    position: relative;
    overflow: hidden;
    min-height: 22rem;
    background: #12141d;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 1.2rem;
}

[data-bs-theme="light"] .ubx-map-preview,
[data-bs-theme="light"] .ubx-map-page {
    background: #efe4d4;
    border-color: rgba(72, 54, 38, 0.12);
}

.ubx-map-page {
    min-height: min(74vh, 46rem);
}

.ubx-map-preview .leaflet-container,
.ubx-map-page .leaflet-container,
.leaflet-container {
    width: 100%;
    height: 100%;
    color: #172017;
    background: #10121a;
}

.ubx-map-preview.leaflet-container,
.ubx-map-preview .leaflet-container {
    min-height: 22rem;
}

.ubx-map-page.leaflet-container,
.ubx-map-page .leaflet-container {
    min-height: min(74vh, 46rem);
}

[data-bs-theme="light"] .leaflet-container {
    color: var(--ubx-text);
    background: #efe4d4;
}

.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
    color: var(--ubx-text);
    background: #10121a;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

[data-bs-theme="light"] .leaflet-popup-content-wrapper,
[data-bs-theme="light"] .leaflet-popup-tip {
    color: var(--ubx-text);
    background: #fffaf3;
    border-color: rgba(72, 54, 38, 0.15);
}

.leaflet-popup-content a {
    color: var(--ubx-primary);
    font-weight: 700;
}

.leaflet-control-zoom,
.leaflet-control-fullscreen,
.leaflet-control-scale-line {
    overflow: hidden;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.025)),
        rgba(8, 9, 13, 0.46) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 0.78rem !important;
    box-shadow:
        0 0.7rem 1.7rem rgba(0, 0, 0, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.07) !important;
    backdrop-filter: blur(16px) saturate(1.08);
    -webkit-backdrop-filter: blur(16px) saturate(1.08);
}

.leaflet-top .leaflet-control {
    margin-top: 0.75rem;
}

.leaflet-left .leaflet-control {
    margin-left: 0.75rem;
}

.leaflet-right .leaflet-control {
    margin-right: 0.75rem;
}

.leaflet-bottom .leaflet-control {
    margin-bottom: 0.75rem;
}

.leaflet-control-zoom {
    display: grid;
    gap: 0.22rem;
    padding: 0.22rem;
}

.leaflet-control-zoom a,
.leaflet-control-fullscreen a {
    width: 2.05rem !important;
    height: 2.05rem !important;
    color: var(--ubx-text) !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.035)),
        rgba(255, 255, 255, 0.035) !important;
    border: 1px solid rgba(255, 255, 255, 0.095) !important;
    border-radius: 0.56rem !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.075) !important;
    line-height: 2rem !important;
    transition:
        background var(--ubx-motion-smooth),
        border-color var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth),
        transform var(--ubx-motion-smooth);
}

.leaflet-control-zoom a + a {
    border-top: 1px solid rgba(255, 255, 255, 0.095) !important;
}

.leaflet-control-fullscreen {
    padding: 0.22rem;
}

.leaflet-control-scale-line {
    padding: 0.18rem 0.45rem !important;
    color: var(--ubx-text) !important;
    font-weight: 800;
    text-shadow: none !important;
}

[data-bs-theme="light"] .leaflet-control-zoom,
[data-bs-theme="light"] .leaflet-control-fullscreen,
[data-bs-theme="light"] .leaflet-control-scale-line {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.82), rgba(255, 255, 255, 0.48)),
        rgba(255, 250, 243, 0.62) !important;
    border-color: rgba(72, 54, 38, 0.1) !important;
    box-shadow:
        0 0.8rem 2rem rgba(72, 54, 38, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.72) !important;
}

[data-bs-theme="light"] .leaflet-control-zoom a,
[data-bs-theme="light"] .leaflet-control-fullscreen a {
    color: var(--ubx-text) !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.78), rgba(255, 255, 255, 0.42)),
        rgba(255, 255, 255, 0.46) !important;
    border-color: rgba(72, 54, 38, 0.11) !important;
    box-shadow:
        0 0.45rem 1rem rgba(72, 54, 38, 0.055),
        inset 0 1px 0 rgba(255, 255, 255, 0.72) !important;
}

.leaflet-control-zoom a:hover,
.leaflet-control-zoom a:focus-visible,
.leaflet-control-fullscreen a:hover,
.leaflet-control-fullscreen a:focus-visible {
    color: var(--ubx-text) !important;
    background:
        linear-gradient(135deg, rgba(var(--ubx-primary-rgb), 0.16), rgba(255, 255, 255, 0.045)),
        rgba(255, 255, 255, 0.055) !important;
    border-color: rgba(var(--ubx-primary-rgb), 0.26) !important;
    box-shadow:
        0 0 0.85rem rgba(var(--ubx-primary-rgb), 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.09) !important;
    transform: translateY(-0.02rem);
}

[data-bs-theme="light"] .leaflet-control-zoom a:hover,
[data-bs-theme="light"] .leaflet-control-zoom a:focus-visible,
[data-bs-theme="light"] .leaflet-control-fullscreen a:hover,
[data-bs-theme="light"] .leaflet-control-fullscreen a:focus-visible {
    background:
        linear-gradient(135deg, rgba(var(--ubx-primary-rgb), 0.16), rgba(255, 255, 255, 0.56)),
        rgba(255, 255, 255, 0.62) !important;
    border-color: rgba(var(--ubx-primary-rgb), 0.26) !important;
}

a.leaflet-fullscreen-icon {
    position: relative;
    background-image: none !important;
    font-size: 0;
}

a.leaflet-fullscreen-icon::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 1.15rem;
    height: 1.15rem;
    margin: auto;
    background: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 9V5h4v2H7v2H5Zm10-4h4v4h-2V7h-2V5ZM7 15v2h2v2H5v-4h2Zm10 2v-2h2v4h-4v-2h2Z'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 9V5h4v2H7v2H5Zm10-4h4v4h-2V7h-2V5ZM7 15v2h2v2H5v-4h2Zm10 2v-2h2v4h-4v-2h2Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

a.leaflet-fullscreen-icon.leaflet-fullscreen-on::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 5v4H5V7h2V5h2Zm6 0h2v2h2v2h-4V5ZM5 15h4v4H7v-2H5v-2Zm14 0v2h-2v2h-2v-4h4Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 5v4H5V7h2V5h2Zm6 0h2v2h2v2h-4V5ZM5 15h4v4H7v-2H5v-2Zm14 0v2h-2v2h-2v-4h4Z'/%3E%3C/svg%3E");
}

.leaflet-tooltip {
    color: var(--ubx-text);
    background: rgba(7, 11, 9, 0.92);
    border: 1px solid rgba(var(--ubx-primary-rgb), 0.34);
    border-radius: 999px;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.28);
}

[data-bs-theme="light"] .leaflet-tooltip {
    color: var(--ubx-text);
    background: rgba(255, 250, 243, 0.94);
    box-shadow: 0 12px 32px rgba(72, 54, 38, 0.16);
}

.leaflet-tooltip-top::before {
    border-top-color: rgba(8, 9, 13, 0.92);
}

.ubx-marker-cluster {
    display: grid;
    place-items: center;
    color: #160d08;
    background:
        radial-gradient(circle at 35% 30%, #d5f3dc, var(--ubx-primary) 52%, rgba(var(--ubx-primary-rgb), 0.72));
    border: 2px solid rgba(8, 9, 13, 0.82);
    border-radius: 999px;
    box-shadow:
        0 0 0 0.7rem rgba(var(--ubx-primary-rgb), 0.16),
        0 16px 34px rgba(0, 0, 0, 0.34);
    font-size: 0.9rem;
    font-weight: 900;
}

.ubx-marker-cluster span {
    line-height: 1;
}

.ubx-place-marker {
    display: grid;
    place-items: center;
    background: transparent;
}

.ubx-place-marker span {
    position: relative;
    display: block;
    width: 0.9rem;
    height: 0.9rem;
    background: var(--ubx-primary);
    border: 2px solid rgba(8, 9, 13, 0.84);
    border-radius: 999px;
    box-shadow:
        0 0 0 0.65rem rgba(var(--ubx-primary-rgb), 0.16),
        0 12px 26px rgba(0, 0, 0, 0.34);
}

.ubx-place-marker.ubx-map-marker-member span,
.ubx-place-marker.ubx-map-marker-member_group span,
.ubx-place-marker.ubx-map-marker-tactical span {
    display: grid;
    place-items: center;
    width: 1.8rem;
    height: 1.8rem;
    color: #071009;
    background: var(--ubx-marker-color, var(--ubx-primary));
    border-color: rgba(8, 9, 13, 0.88);
    box-shadow:
        0 0 0 0.42rem color-mix(in srgb, var(--ubx-marker-color, var(--ubx-primary)) 18%, transparent),
        0 14px 30px rgba(0, 0, 0, 0.34);
}

.ubx-place-marker.ubx-map-marker-tactical span {
    border-radius: 0.72rem 0.72rem 0.72rem 0.18rem;
    transform: rotate(-45deg);
}

.ubx-place-marker.ubx-map-marker-tactical span b {
    transform: rotate(45deg);
}

.ubx-place-marker.ubx-map-marker-member span,
.ubx-place-marker.ubx-map-marker-member_group span {
    border-radius: 999px;
}

.ubx-place-marker.ubx-map-marker-member_group span {
    box-shadow:
        0 0 0 0.5rem rgba(167, 139, 250, 0.18),
        0 16px 34px rgba(0, 0, 0, 0.38);
}

.ubx-place-marker.ubx-map-marker-member.ubx-map-marker-freshness-aging span {
    color: #1d1304;
    border-style: dashed;
    box-shadow:
        0 0 0 0.42rem rgba(245, 158, 11, 0.18),
        0 14px 30px rgba(0, 0, 0, 0.34);
}

.ubx-place-marker.ubx-map-marker-member.ubx-map-marker-freshness-stale {
    opacity: 0.68;
}

.ubx-place-marker.ubx-map-marker-member.ubx-map-marker-freshness-stale span {
    color: #0f172a;
    border-style: dashed;
    filter: saturate(0.55);
    box-shadow:
        0 0 0 0.34rem rgba(148, 163, 184, 0.15),
        0 10px 22px rgba(0, 0, 0, 0.28);
}

.ubx-place-marker.ubx-map-marker-member.ubx-map-marker-freshness-stale span b::after {
    content: '!';
    position: absolute;
    transform: translate(0.58rem, -0.58rem);
    display: grid;
    place-items: center;
    width: 0.72rem;
    height: 0.72rem;
    border-radius: 999px;
    color: #fff;
    background: #fb7185;
    font-size: 0.52rem;
    line-height: 1;
}

.ubx-map-freshness-note {
    display: inline-block;
    margin-top: 0.2rem;
    color: #fbbf24;
    font-weight: 700;
}

.ubx-place-marker span b {
    line-height: 1;
    font-size: 0.68rem;
    font-weight: 900;
}

.ubx-map-filter-control {
    width: min(15rem, calc(100vw - 2rem));
    max-height: min(22rem, calc(100vh - 8rem));
    overflow: auto;
    padding: 0.34rem;
    color: var(--ubx-text);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.025)),
        rgba(8, 9, 13, 0.42);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 0.92rem;
    box-shadow:
        0 0.7rem 1.7rem rgba(0, 0, 0, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    backdrop-filter: blur(16px) saturate(1.08);
    -webkit-backdrop-filter: blur(16px) saturate(1.08);
    transition:
        border-radius var(--ubx-motion-smooth),
        background var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth);
}

.ubx-map-filter-control[data-collapsed="false"] {
    padding: 0.42rem;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.03)),
        rgba(8, 9, 13, 0.58);
    border-radius: 0.78rem;
    box-shadow:
        0 0.9rem 2rem rgba(0, 0, 0, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.09);
}

[data-bs-theme="light"] .ubx-map-filter-control {
    color: var(--ubx-text);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.82), rgba(255, 255, 255, 0.48)),
        rgba(255, 250, 243, 0.56);
    border-color: rgba(72, 54, 38, 0.1);
    box-shadow: 0 0.8rem 2rem rgba(72, 54, 38, 0.1);
}

[data-bs-theme="light"] .ubx-map-filter-control[data-collapsed="false"] {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.58)),
        rgba(255, 250, 243, 0.72);
}

.ubx-map-filter-toggle {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 0.45rem;
    width: 100%;
    padding: 0.34rem 0.48rem 0.34rem 0.58rem;
    color: var(--ubx-text);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.035)),
        rgba(255, 255, 255, 0.035);
    border: 1px solid rgba(255, 255, 255, 0.095);
    border-radius: 0.62rem;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.075);
    text-align: left;
    transition:
        background var(--ubx-motion-smooth),
        border-color var(--ubx-motion-smooth),
        transform var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth);
}

.ubx-map-filter-control[data-collapsed="false"] .ubx-map-filter-toggle {
    border-radius: 0.56rem;
}

.ubx-map-filter-toggle:hover,
.ubx-map-filter-toggle:focus-visible {
    background:
        linear-gradient(135deg, rgba(var(--ubx-primary-rgb), 0.13), rgba(255, 255, 255, 0.045)),
        rgba(255, 255, 255, 0.055);
    border-color: rgba(var(--ubx-primary-rgb), 0.24);
    box-shadow:
        0 0 0.85rem rgba(var(--ubx-primary-rgb), 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.09);
    transform: translateY(-0.02rem);
}

[data-bs-theme="light"] .ubx-map-filter-toggle,
[data-bs-theme="light"] .ubx-map-filter-group summary label,
[data-bs-theme="light"] .ubx-map-filter-categories label,
[data-bs-theme="light"] .ubx-map-filter-reset {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.78), rgba(255, 255, 255, 0.42)),
        rgba(255, 255, 255, 0.46);
    border-color: rgba(72, 54, 38, 0.11);
    box-shadow:
        0 0.45rem 1rem rgba(72, 54, 38, 0.055),
        inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

[data-bs-theme="light"] .ubx-map-filter-toggle:hover,
[data-bs-theme="light"] .ubx-map-filter-toggle:focus-visible,
[data-bs-theme="light"] .ubx-map-filter-group summary label:hover,
[data-bs-theme="light"] .ubx-map-filter-categories label:hover,
[data-bs-theme="light"] .ubx-map-filter-reset:hover {
    background:
        linear-gradient(135deg, rgba(var(--ubx-primary-rgb), 0.16), rgba(255, 255, 255, 0.56)),
        rgba(255, 255, 255, 0.62);
    border-color: rgba(var(--ubx-primary-rgb), 0.26);
}

.ubx-map-filter-toggle span {
    overflow: hidden;
    font-size: 0.76rem;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ubx-map-filter-toggle small {
    color: var(--ubx-muted);
    font-size: 0.64rem;
    font-weight: 800;
    white-space: nowrap;
}

.ubx-map-filter-toggle b {
    width: 0.52rem;
    height: 0.52rem;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    opacity: 0.72;
    transform: translateY(-1px) rotate(45deg);
    transition: transform var(--ubx-motion-smooth);
}

.ubx-map-filter-toggle[aria-expanded="true"] b {
    transform: translateY(2px) rotate(225deg);
}

.ubx-map-filter-body {
    padding: 0.38rem 0.05rem 0.05rem;
}

.ubx-map-filter-head,
.ubx-map-filter-group summary,
.ubx-map-filter-categories label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.48rem;
}

.ubx-map-filter-head {
    padding: 0 0.2rem 0.36rem;
    margin-bottom: 0.42rem;
    border-bottom: 1px solid var(--ubx-border);
}

.ubx-map-filter-head strong {
    font-size: 0.76rem;
}

.ubx-map-filter-head span,
.ubx-map-filter-group small,
.ubx-map-filter-categories small {
    color: var(--ubx-muted);
    font-size: 0.66rem;
    font-weight: 700;
}

.ubx-map-filter-group {
    padding: 0.26rem 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

[data-bs-theme="light"] .ubx-map-filter-group {
    border-bottom-color: rgba(72, 54, 38, 0.1);
}

.ubx-map-filter-group:last-child {
    border-bottom: 0;
}

.ubx-map-filter-group summary {
    cursor: pointer;
    list-style: none;
}

.ubx-map-filter-group summary::-webkit-details-marker {
    display: none;
}

.ubx-map-filter-group summary label,
.ubx-map-filter-categories label {
    min-width: 0;
    margin: 0;
    cursor: pointer;
    font-size: 0.76rem;
}

.ubx-map-filter-group summary label,
.ubx-map-filter-categories label,
.ubx-map-filter-reset {
    padding: 0.38rem 0.52rem;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.025)),
        rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.085);
    border-radius: 0.52rem;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.055);
    transition:
        background var(--ubx-motion-smooth),
        border-color var(--ubx-motion-smooth),
        transform var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth);
}

.ubx-map-filter-group summary label:hover,
.ubx-map-filter-categories label:hover {
    background:
        linear-gradient(135deg, rgba(var(--ubx-primary-rgb), 0.12), rgba(255, 255, 255, 0.035)),
        rgba(255, 255, 255, 0.05);
    border-color: rgba(var(--ubx-primary-rgb), 0.2);
    box-shadow:
        0 0 0.75rem rgba(var(--ubx-primary-rgb), 0.075),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
    transform: translateY(-0.015rem);
}

.ubx-map-filter-group input,
.ubx-map-filter-categories input {
    accent-color: var(--ubx-primary);
}

.ubx-map-filter-group span,
.ubx-map-filter-categories span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ubx-map-filter-categories {
    display: grid;
    gap: 0.18rem;
    padding: 0.34rem 0 0 0.58rem;
}

.ubx-map-filter-categories label {
    color: var(--ubx-muted);
    font-size: 0.7rem;
}

.ubx-map-filter-categories input:disabled + span {
    opacity: 0.45;
}

.ubx-map-filter-reset {
    width: 100%;
    margin-top: 0.42rem;
    color: var(--ubx-text);
    background:
        linear-gradient(135deg, rgba(var(--ubx-primary-rgb), 0.1), rgba(255, 255, 255, 0.025)),
        rgba(255, 255, 255, 0.035);
    font-size: 0.7rem;
    font-weight: 800;
}

.ubx-map-filter-reset:hover {
    color: var(--ubx-text);
    background:
        linear-gradient(135deg, rgba(var(--ubx-primary-rgb), 0.16), rgba(255, 255, 255, 0.04)),
        rgba(255, 255, 255, 0.055);
    border-color: rgba(var(--ubx-primary-rgb), 0.26);
    box-shadow:
        0 0 0.9rem rgba(var(--ubx-primary-rgb), 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
    transform: translateY(-0.015rem);
}

.ubx-map-filter-premium {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.34rem 0.5rem;
    align-items: start;
    margin-top: 0.52rem;
    padding: 0.56rem 0.6rem;
    color: var(--ubx-text);
    background:
        linear-gradient(135deg, rgba(var(--ubx-kind-premium-rgb), 0.14), rgba(var(--ubx-kind-premium-rgb), 0.045)),
        rgba(255, 255, 255, 0.035);
    border: 1px solid rgba(var(--ubx-kind-premium-rgb), 0.2);
    border-radius: 0.58rem;
    box-shadow: 0 0 1.1rem rgba(var(--ubx-kind-premium-rgb), 0.08);
    font-size: 0.68rem;
    line-height: 1.28;
}

.ubx-map-filter-premium a,
.ubx-map-filter-premium span:last-child {
    grid-column: 2;
    color: var(--ubx-kind-premium);
    font-weight: 900;
    text-decoration: none;
}

.ubx-map-filter-premium a:hover {
    text-decoration: underline;
}

.ubx-map-filter-premium-mark {
    width: 0.66rem;
    height: 0.66rem;
    margin-top: 0.12rem;
    background: var(--ubx-kind-premium);
    border-radius: 999px;
    box-shadow: 0 0 0.85rem rgba(var(--ubx-kind-premium-rgb), 0.4);
}

.ubx-ops-wide-container {
    max-width: 1760px;
    padding-inline: clamp(1rem, 3vw, 2.5rem);
}

.ubx-explore-session-summary {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    overflow: hidden;
}

.ubx-explore-session-summary.is-live {
    border-color: rgba(74, 222, 128, 0.22);
    box-shadow:
        0 1.15rem 2.4rem rgba(0, 0, 0, 0.16),
        0 0 1.2rem rgba(74, 222, 128, 0.07);
}

.ubx-explore-session-summary.is-live::before {
    position: absolute;
    inset: 0 auto 0 0;
    width: 0.25rem;
    content: "";
    background: linear-gradient(180deg, rgba(74, 222, 128, 0.95), rgba(var(--ubx-primary-rgb), 0.18));
}

.ubx-active-explore-strip {
    position: relative;
    overflow: hidden;
    border-color: rgba(74, 222, 128, 0.18);
}

.ubx-active-explore-strip::before {
    position: absolute;
    inset: -45% -12% auto auto;
    width: 18rem;
    height: 18rem;
    content: "";
    background: radial-gradient(circle, rgba(74, 222, 128, 0.16), transparent 62%);
    filter: blur(0.35rem);
    pointer-events: none;
}

.ubx-active-explore-strip > * {
    position: relative;
    z-index: 1;
}

.ubx-active-explore-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}

.ubx-active-explore-card {
    display: grid;
    gap: 0.35rem;
    min-height: 8rem;
    padding: 0.95rem;
    color: var(--ubx-text);
    text-decoration: none;
    background:
        linear-gradient(135deg, rgba(74, 222, 128, 0.12), rgba(var(--ubx-primary-rgb), 0.045)),
        rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(74, 222, 128, 0.16);
    border-radius: 1rem;
    transition:
        border-color var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth),
        transform var(--ubx-motion-smooth);
}

.ubx-active-explore-card:hover,
.ubx-active-explore-card:focus {
    color: var(--ubx-text);
    border-color: rgba(74, 222, 128, 0.28);
    box-shadow: 0 1rem 2rem rgba(74, 222, 128, 0.09);
    transform: translateY(-0.05rem);
}

.ubx-active-explore-card strong,
.ubx-active-explore-card span {
    display: block;
}

.ubx-active-explore-card strong {
    font-size: 1.02rem;
    line-height: 1.2;
}

.ubx-active-explore-card span {
    color: var(--ubx-muted);
    font-size: 0.82rem;
}

.ubx-active-explore-card-status {
    display: inline-flex !important;
    gap: 0.4rem;
    align-items: center;
    width: fit-content;
    padding: 0.25rem 0.48rem;
    color: #bbf7d0 !important;
    background: rgba(74, 222, 128, 0.11);
    border: 1px solid rgba(74, 222, 128, 0.17);
    border-radius: 999px;
    font-size: 0.72rem !important;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

@media (max-width: 991.98px) {
    .ubx-active-explore-grid {
        grid-template-columns: 1fr;
    }

    .ubx-nav-live-explore {
        width: fit-content;
        margin-block: 0.3rem;
    }
}

.ubx-explore-summary-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.5rem;
}

.ubx-explore-summary-stats span {
    display: grid;
    gap: 0.1rem;
    padding: 0.6rem 0.45rem;
    color: var(--ubx-muted);
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(var(--ubx-kind-chat-rgb), 0.12);
    border-radius: 0.85rem;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-align: center;
    text-transform: uppercase;
}

.ubx-explore-summary-stats strong {
    color: var(--ubx-text);
    font-size: 1.05rem;
    letter-spacing: 0;
    text-transform: none;
}

.ubx-explore-summary-members {
    display: flex;
    align-items: center;
    min-height: 2rem;
}

.ubx-explore-summary-members span,
.ubx-explore-summary-members small {
    display: inline-grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    margin-right: -0.42rem;
    color: var(--ubx-text);
    background:
        radial-gradient(circle at 35% 25%, rgba(255, 255, 255, 0.22), transparent 45%),
        rgba(var(--ubx-kind-chat-rgb), 0.3);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 900;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.16);
}

.ubx-explore-summary-members small {
    color: var(--ubx-muted);
    background: rgba(255, 255, 255, 0.055);
}

[data-bs-theme="light"] .ubx-explore-summary-stats span {
    background: rgba(255, 255, 255, 0.56);
    border-color: rgba(35, 92, 57, 0.12);
}

.ubx-ops-dashboard {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 12% 0%, rgba(var(--ubx-kind-chat-rgb), 0.18), transparent 24rem),
        radial-gradient(circle at 88% 8%, rgba(var(--ubx-primary-rgb), 0.12), transparent 20rem),
        rgba(255, 255, 255, 0.045);
}

.ubx-ops-dashboard::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(var(--ubx-kind-chat-rgb), 0.045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(var(--ubx-kind-chat-rgb), 0.045) 1px, transparent 1px);
    background-size: 44px 44px;
    mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.6), transparent 72%);
}

.ubx-ops-dashboard > * {
    position: relative;
    z-index: 1;
}

.ubx-ops-command-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: flex-start;
    justify-content: space-between;
}

.ubx-ops-command-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-end;
}

.ubx-ops-status-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

.ubx-ops-status-tile {
    padding: 0.85rem 0.95rem;
    background: rgba(5, 10, 12, 0.32);
    border: 1px solid rgba(var(--ubx-kind-chat-rgb), 0.14);
    border-radius: 1rem;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.ubx-ops-status-tile span,
.ubx-ops-panel-title small {
    display: block;
    color: var(--ubx-muted);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.ubx-ops-status-tile strong {
    display: block;
    color: var(--ubx-text);
    font-size: clamp(1.35rem, 2vw, 1.9rem);
    line-height: 1.1;
}

.ubx-ops-status-tile small {
    color: var(--ubx-muted);
    font-size: 0.78rem;
}

.ubx-ops-map-stage,
.ubx-ops-side-rail {
    height: 100%;
}

.ubx-ops-map-stage {
    display: grid;
    gap: 0.75rem;
}

.ubx-ops-map-toolbar,
.ubx-ops-panel-title {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    justify-content: space-between;
}

.ubx-ops-map-toolbar {
    padding: 0.8rem 0.95rem;
    background: rgba(5, 10, 12, 0.36);
    border: 1px solid rgba(var(--ubx-kind-chat-rgb), 0.15);
    border-radius: 1rem;
}

.ubx-ops-map-toolbar strong,
.ubx-ops-panel-title span {
    font-weight: 850;
}

.ubx-ops-map-chip {
    display: inline-flex;
    gap: 0.4rem;
    align-items: center;
    padding: 0.35rem 0.55rem;
    color: var(--ubx-text);
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 999px;
    font-size: 0.76rem;
    font-weight: 700;
}

.ubx-ops-live-dot {
    display: inline-block;
    width: 0.62rem;
    height: 0.62rem;
    background: #94a3b8;
    border-radius: 999px;
    box-shadow: 0 0 0 0.25rem rgba(148, 163, 184, 0.14);
}

.ubx-ops-live-dot.is-online {
    background: #4ade80;
    box-shadow: 0 0 0 0.25rem rgba(74, 222, 128, 0.15), 0 0 16px rgba(74, 222, 128, 0.34);
    animation: ubx-live-pulse 1.9s ease-in-out infinite;
}

.ubx-ops-live-dot.is-aging {
    background: #f59e0b;
    box-shadow: 0 0 0 0.25rem rgba(245, 158, 11, 0.14), 0 0 12px rgba(245, 158, 11, 0.22);
}

.ubx-ops-live-dot.is-stale {
    background: #94a3b8;
    box-shadow: 0 0 0 0.24rem rgba(148, 163, 184, 0.12);
}

.ubx-ops-live-dot.is-offline {
    background: #64748b;
}

.ubx-live-search-icon .ubx-ops-live-dot {
    margin: auto;
}

@keyframes ubx-live-pulse {
    0%,
    100% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(1.14);
        opacity: 0.78;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ubx-ops-live-dot.is-online {
        animation: none;
    }
}

.ubx-ops-map-panel {
    height: 100%;
    background: rgba(2, 6, 8, 0.42);
    border-color: rgba(var(--ubx-kind-chat-rgb), 0.18);
}

.ubx-ops-map-panel .ubx-map-preview,
.ubx-ops-map-panel .ubx-map-preview.leaflet-container,
.ubx-ops-map-panel .ubx-map-preview .leaflet-container {
    min-height: clamp(30rem, 62vh, 46rem);
}

.ubx-ops-side-rail {
    display: grid;
    gap: 0.9rem;
    align-content: start;
}

.ubx-ops-panel {
    padding: 1rem;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.065), rgba(255, 255, 255, 0.025)),
        rgba(5, 10, 12, 0.24);
    border: 1px solid rgba(var(--ubx-kind-chat-rgb), 0.14);
    border-color: rgba(var(--ubx-kind-chat-rgb), 0.14);
    border-radius: 1rem;
}

.ubx-ops-panel-title {
    margin-bottom: 0.85rem;
}

.ubx-ops-marker-list {
    display: grid;
    max-height: 24rem;
    gap: 0.65rem;
    overflow: auto;
    padding-right: 0.2rem;
}

.ubx-ops-marker-palette {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding: 0.65rem;
    background: rgba(255, 255, 255, 0.045);
    border: 1px dashed rgba(var(--ubx-kind-chat-rgb), 0.18);
    border-radius: 0.9rem;
}

.ubx-ops-marker-token {
    display: inline-flex;
    gap: 0.4rem;
    align-items: center;
    color: var(--ubx-muted);
    font-size: 0.78rem;
    font-weight: 700;
}

.ubx-ops-marker-token b {
    display: inline-grid;
    place-items: center;
    min-width: 1.75rem;
    min-height: 1.45rem;
    color: #071009;
    background: var(--ubx-primary);
    border-radius: 0.45rem;
    font-size: 0.65rem;
}

[data-bs-theme="light"] .ubx-ops-dashboard {
    background:
        radial-gradient(circle at 12% 0%, rgba(var(--ubx-kind-chat-rgb), 0.16), transparent 24rem),
        radial-gradient(circle at 88% 8%, rgba(var(--ubx-primary-rgb), 0.12), transparent 20rem),
        rgba(255, 255, 255, 0.6);
}

[data-bs-theme="light"] .ubx-ops-status-tile,
[data-bs-theme="light"] .ubx-ops-map-toolbar,
[data-bs-theme="light"] .ubx-ops-panel,
[data-bs-theme="light"] .ubx-ops-map-panel {
    background: rgba(255, 255, 255, 0.6);
    border-color: rgba(35, 92, 57, 0.13);
}

.ubx-explore-panel {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 1rem;
}

[data-bs-theme="light"] .ubx-explore-panel {
    background: rgba(255, 250, 243, 0.54);
    border-color: rgba(72, 54, 38, 0.12);
}

@media (max-width: 991.98px) {
    .ubx-ops-status-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ubx-ops-map-panel .ubx-map-preview,
    .ubx-ops-map-panel .ubx-map-preview.leaflet-container,
    .ubx-ops-map-panel .ubx-map-preview .leaflet-container {
        min-height: 26rem;
    }
}

@media (max-width: 575.98px) {
    .ubx-ops-command-bar,
    .ubx-ops-map-toolbar,
    .ubx-ops-panel-title {
        align-items: flex-start;
        flex-direction: column;
    }

    .ubx-ops-command-meta {
        justify-content: flex-start;
    }

    .ubx-ops-status-grid {
        grid-template-columns: 1fr;
    }

    .ubx-ops-map-panel .ubx-map-preview,
    .ubx-ops-map-panel .ubx-map-preview.leaflet-container,
    .ubx-ops-map-panel .ubx-map-preview .leaflet-container {
        min-height: 22rem;
    }
}

.ubx-explore-marker-row {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: center;
    padding: 0.75rem;
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 0.9rem;
}

[data-bs-theme="light"] .ubx-explore-marker-row {
    background: rgba(255, 255, 255, 0.58);
    border-color: rgba(72, 54, 38, 0.12);
}

.ubx-explore-marker-dot {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    color: #071009;
    background: var(--ubx-primary);
    border-radius: 0.75rem;
    font-size: 0.75rem;
    font-weight: 900;
    box-shadow: 0 0 18px rgba(var(--ubx-primary-rgb), 0.12);
}

.ubx-map-marker-color-blue { background: #38bdf8; }
.ubx-map-marker-color-green { background: #4ade80; }
.ubx-map-marker-color-amber { background: #f59e0b; }
.ubx-map-marker-color-red { background: #fb7185; }
.ubx-map-marker-color-purple { background: #a78bfa; }
.ubx-map-marker-color-gray { background: #94a3b8; }

.ubx-map-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(var(--ubx-primary-rgb), 0.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(var(--ubx-primary-rgb), 0.08) 1px, transparent 1px);
    background-size: 36px 36px;
}

.ubx-map-dot {
    position: absolute;
    left: var(--x);
    top: var(--y);
    z-index: 2;
    width: 0.9rem;
    height: 0.9rem;
    background: var(--ubx-primary);
    border: 2px solid rgba(8, 9, 13, 0.8);
    border-radius: 999px;
    box-shadow: 0 0 0 0.7rem rgba(var(--ubx-primary-rgb), 0.13);
    animation: ubx-map-dot-pulse 4.8s ease-in-out infinite;
    transition:
        transform var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth);
}

.ubx-map-dot:nth-of-type(2n) {
    animation-delay: -1.4s;
}

.ubx-map-dot:nth-of-type(3n) {
    animation-delay: -2.6s;
}

.ubx-map-dot:hover,
.ubx-map-dot:focus-visible {
    transform: translate(-1px, -1px) scale(1.08);
    box-shadow:
        0 0 0 0.55rem rgba(var(--ubx-primary-rgb), 0.1),
        0 0 18px rgba(var(--ubx-primary-rgb), 0.18);
}

.ubx-map-preview-cta {
    position: absolute;
    right: 1rem;
    bottom: 1rem;
    z-index: 4;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.65rem 0.95rem;
    border-radius: 999rem;
    box-shadow:
        0 0.9rem 2rem rgba(0, 0, 0, 0.24),
        0 0 18px rgba(var(--ubx-primary-rgb), 0.16);
}

.ubx-map-noscript {
    position: absolute;
    inset: 1rem;
    z-index: 3;
    overflow: auto;
    padding: 1rem;
    color: var(--ubx-text);
    background: rgba(8, 9, 13, 0.88);
    border: 1px solid var(--ubx-border);
    border-radius: 1rem;
    backdrop-filter: blur(14px);
}

[data-bs-theme="light"] .ubx-map-noscript {
    background: rgba(255, 250, 243, 0.9);
}

.ubx-map-noscript a,
.ubx-map-attribution {
    color: var(--ubx-primary);
}

.ubx-kind-place {
    --ubx-card-accent: var(--ubx-kind-place);
    --ubx-card-accent-rgb: var(--ubx-kind-place-rgb);
}

.ubx-kind-region {
    --ubx-card-accent: var(--ubx-kind-region);
    --ubx-card-accent-rgb: var(--ubx-kind-region-rgb);
}

.ubx-kind-category {
    --ubx-card-accent: var(--ubx-kind-category);
    --ubx-card-accent-rgb: var(--ubx-kind-category-rgb);
}

.ubx-kind-list {
    --ubx-card-accent: var(--ubx-kind-list);
    --ubx-card-accent-rgb: var(--ubx-kind-list-rgb);
}

.ubx-kind-person {
    --ubx-card-accent: var(--ubx-kind-person);
    --ubx-card-accent-rgb: var(--ubx-kind-person-rgb);
}

.ubx-profile-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3.1rem;
    height: 3.1rem;
    flex: 0 0 auto;
    border-radius: 1.15rem;
    color: var(--ubx-text);
    background:
        radial-gradient(circle at 30% 25%, rgba(255, 255, 255, 0.24), transparent 42%),
        linear-gradient(145deg, rgba(var(--ubx-kind-person-rgb), 0.52), rgba(var(--ubx-kind-region-rgb), 0.28));
    border: 1px solid rgba(var(--ubx-kind-person-rgb), 0.28);
    box-shadow: 0 0 18px rgba(var(--ubx-kind-person-rgb), 0.08);
    font-weight: 900;
    letter-spacing: -0.04em;
}

.ubx-avatar-prestige {
    --ubx-avatar-size: 4.2rem;
    --ubx-prestige-a: var(--ubx-kind-person);
    --ubx-prestige-b: var(--ubx-kind-region);
    --ubx-prestige-c: var(--ubx-primary);
    position: relative;
    display: inline-grid;
    width: calc(var(--ubx-avatar-size) * 1.52);
    height: calc(var(--ubx-avatar-size) * 1.62);
    flex: 0 0 auto;
    place-items: center;
    isolation: isolate;
}

.ubx-avatar-prestige-xs {
    --ubx-avatar-size: 2.05rem;
}

.ubx-avatar-prestige-sm {
    --ubx-avatar-size: 3.05rem;
}

.ubx-avatar-prestige-md {
    --ubx-avatar-size: 4.2rem;
}

.ubx-avatar-prestige-lg {
    --ubx-avatar-size: 7.2rem;
}

.ubx-mini-avatar {
    display: inline-grid;
    width: 2.1rem;
    height: 2.1rem;
    flex: 0 0 auto;
    place-items: center;
    color: #07140d;
    background: linear-gradient(135deg, var(--ubx-kind-person), var(--ubx-primary));
    border-radius: 0.78rem;
    box-shadow: 0 0.55rem 1.2rem rgba(var(--ubx-kind-person-rgb), 0.16);
}

.ubx-avatar-prestige-tier-1,
.ubx-avatar-prestige-tier-2 {
    --ubx-prestige-a: #8aa4ff;
    --ubx-prestige-b: #5eead4;
}

.ubx-avatar-prestige-tier-3,
.ubx-avatar-prestige-tier-4 {
    --ubx-prestige-a: #c084fc;
    --ubx-prestige-b: #f472b6;
}

.ubx-avatar-prestige-tier-5,
.ubx-avatar-prestige-tier-6 {
    --ubx-prestige-a: var(--ubx-kind-premium);
    --ubx-prestige-b: #c084fc;
    --ubx-prestige-c: #8aa4ff;
}

.ubx-avatar-prestige-tier-7,
.ubx-avatar-prestige-tier-8 {
    --ubx-prestige-a: #f472b6;
    --ubx-prestige-b: var(--ubx-kind-premium);
    --ubx-prestige-c: #5eead4;
}

.ubx-avatar-prestige::before {
    position: absolute;
    inset: 9% 5% 2%;
    z-index: -2;
    content: "";
    background:
        radial-gradient(circle at 50% 28%, color-mix(in srgb, var(--ubx-prestige-a) 28%, transparent), transparent 62%),
        radial-gradient(circle at 50% 68%, color-mix(in srgb, var(--ubx-prestige-b) 18%, transparent), transparent 70%);
    filter: blur(1.1rem);
    opacity: 0.72;
}

.ubx-avatar-prestige-ring {
    position: absolute;
    inset: 11% 9% 14%;
    z-index: -1;
    border-radius: 42% 42% 47% 47%;
    background:
        conic-gradient(
            from -88deg,
            var(--ubx-prestige-a) 0 var(--ubx-prestige-progress),
            rgba(255, 255, 255, 0.12) 0 100%
        );
    clip-path: polygon(
        50% 0,
        59% 9%,
        72% 4%,
        79% 16%,
        93% 17%,
        89% 33%,
        100% 43%,
        89% 55%,
        94% 72%,
        76% 76%,
        69% 91%,
        50% 84%,
        31% 91%,
        24% 76%,
        6% 72%,
        11% 55%,
        0 43%,
        11% 33%,
        7% 17%,
        21% 16%,
        28% 4%,
        41% 9%
    );
    box-shadow:
        inset 0 0 0 calc(var(--ubx-avatar-size) * 0.075) rgba(255, 255, 255, 0.11),
        0 0 calc(var(--ubx-avatar-size) * 0.34) color-mix(in srgb, var(--ubx-prestige-a) 22%, transparent);
}

.ubx-avatar-prestige-ring::after {
    position: absolute;
    inset: 13%;
    content: "";
    border-radius: 50%;
    background:
        radial-gradient(circle at 30% 20%, rgba(255, 255, 255, 0.2), transparent 38%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.11), rgba(255, 255, 255, 0.03));
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.14);
}

.ubx-avatar-prestige-core {
    display: grid;
    width: var(--ubx-avatar-size);
    height: var(--ubx-avatar-size);
    place-items: center;
    overflow: hidden;
    color: var(--ubx-text);
    background:
        radial-gradient(circle at 32% 22%, rgba(255, 255, 255, 0.28), transparent 42%),
        linear-gradient(145deg, rgba(var(--ubx-kind-person-rgb), 0.55), rgba(var(--ubx-kind-region-rgb), 0.3));
    border: max(1px, calc(var(--ubx-avatar-size) * 0.035)) solid rgba(255, 255, 255, 0.44);
    border-radius: 50%;
    box-shadow:
        0 0 0 calc(var(--ubx-avatar-size) * 0.08) rgba(8, 9, 13, 0.34),
        0 0 calc(var(--ubx-avatar-size) * 0.28) rgba(0, 0, 0, 0.28);
    font-size: calc(var(--ubx-avatar-size) * 0.38);
    font-weight: 900;
    letter-spacing: -0.05em;
}

.ubx-avatar-prestige-core img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ubx-avatar-prestige-markers {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.ubx-avatar-prestige-marker {
    position: absolute;
    top: 48%;
    left: 50%;
    width: calc(var(--ubx-avatar-size) * 0.17);
    color: rgba(255, 255, 255, 0.34);
    transform:
        translate(-50%, -50%)
        rotate(var(--ubx-marker-angle))
        translateY(calc(var(--ubx-avatar-size) * -0.72))
        rotate(var(--ubx-marker-angle-neg));
    filter: drop-shadow(0 0 calc(var(--ubx-avatar-size) * 0.07) rgba(0, 0, 0, 0.36));
}

.ubx-avatar-prestige-marker.is-filled {
    color: var(--ubx-prestige-b);
    filter:
        drop-shadow(0 0 calc(var(--ubx-avatar-size) * 0.08) color-mix(in srgb, var(--ubx-prestige-b) 44%, transparent))
        drop-shadow(0 0 calc(var(--ubx-avatar-size) * 0.04) rgba(0, 0, 0, 0.36));
}

.ubx-avatar-prestige-marker svg {
    display: block;
    width: 100%;
    height: auto;
}

.ubx-avatar-prestige-marker path {
    fill: currentColor;
}

.ubx-avatar-prestige-marker circle {
    fill: rgba(8, 9, 13, 0.62);
}

.ubx-avatar-prestige-level {
    position: absolute;
    bottom: 1%;
    left: 50%;
    padding: 0.24rem 0.58rem;
    color: #120d08;
    background:
        linear-gradient(135deg, var(--ubx-prestige-b), var(--ubx-prestige-a)),
        var(--ubx-primary);
    border: 1px solid rgba(255, 255, 255, 0.34);
    border-radius: 999px;
    box-shadow:
        0 0 0 0.15rem rgba(8, 9, 13, 0.28),
        0 0 1rem color-mix(in srgb, var(--ubx-prestige-a) 18%, transparent);
    font-size: calc(var(--ubx-avatar-size) * 0.115);
    font-weight: 900;
    letter-spacing: -0.025em;
    line-height: 1;
    transform: translateX(-50%);
    white-space: nowrap;
}

[data-bs-theme="light"] .ubx-avatar-prestige-core {
    box-shadow:
        0 0 0 calc(var(--ubx-avatar-size) * 0.08) rgba(255, 248, 238, 0.74),
        0 0 calc(var(--ubx-avatar-size) * 0.24) rgba(72, 54, 38, 0.18);
}

[data-bs-theme="light"] .ubx-avatar-prestige-marker circle {
    fill: rgba(255, 248, 238, 0.76);
}

.ubx-profile-hero-card,
.ubx-profile-achievements-panel {
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.ubx-profile-hero-card::before,
.ubx-profile-achievements-panel::before {
    position: absolute;
    inset: -18% -8% auto auto;
    z-index: -1;
    width: min(24rem, 58vw);
    aspect-ratio: 1;
    content: "";
    background:
        radial-gradient(circle at center, rgba(var(--ubx-kind-person-rgb), 0.18), transparent 64%),
        var(--ubx-profile-avatar-bg, none);
    background-position: center;
    background-size: cover;
    border-radius: 999px;
    filter: blur(18px) saturate(1.08);
    opacity: 0.22;
    transform: rotate(-7deg);
}

.ubx-profile-hero-card::after,
.ubx-profile-achievements-panel::after {
    position: absolute;
    inset: auto auto -22% -10%;
    z-index: -1;
    width: 18rem;
    aspect-ratio: 1;
    content: "";
    background: radial-gradient(circle, rgba(var(--ubx-card-accent-rgb, var(--ubx-kind-person-rgb)), 0.16), transparent 68%);
    filter: blur(16px);
    border-radius: 999px;
}

.ubx-profile-achievements-panel .ubx-achievement-card {
    background:
        linear-gradient(145deg, rgba(var(--ubx-kind-person-rgb), 0.09), rgba(255, 255, 255, 0.035)),
        var(--ubx-surface);
}

.ubx-kind-chat {
    --ubx-card-accent: var(--ubx-kind-chat);
    --ubx-card-accent-rgb: var(--ubx-kind-chat-rgb);
}

.ubx-section-progression {
    background:
        radial-gradient(circle at 16% 6%, rgba(var(--ubx-kind-person-rgb), 0.11), transparent 22rem),
        radial-gradient(circle at 86% 28%, rgba(var(--ubx-kind-premium-rgb), 0.08), transparent 24rem);
}

.ubx-progression-rule {
    --ubx-card-accent: var(--ubx-kind-person);
    --ubx-card-accent-rgb: var(--ubx-kind-person-rgb);
}

.ubx-achievement-card {
    --ubx-card-accent: var(--ubx-kind-person);
    --ubx-card-accent-rgb: var(--ubx-kind-person-rgb);
    border-color: rgba(var(--ubx-kind-person-rgb), 0.2);
}

.ubx-achievement-card.is-unlocked {
    border-color: rgba(var(--ubx-kind-premium-rgb), 0.34);
    box-shadow: 0 0 18px rgba(var(--ubx-kind-premium-rgb), 0.08);
}

.ubx-achievement-card.is-locked {
    opacity: 0.82;
}

.ubx-achievement-icon {
    display: inline-grid;
    width: 2.65rem;
    height: 2.65rem;
    flex: 0 0 auto;
    place-items: center;
    color: #160d08;
    background:
        radial-gradient(circle at 30% 20%, rgba(255, 255, 255, 0.36), transparent 42%),
        linear-gradient(135deg, var(--ubx-kind-person), var(--ubx-kind-region));
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 1rem;
    box-shadow: 0 0 14px rgba(var(--ubx-kind-person-rgb), 0.1);
}

.ubx-achievement-card.is-unlocked .ubx-achievement-icon {
    background:
        radial-gradient(circle at 30% 20%, rgba(255, 255, 255, 0.36), transparent 42%),
        linear-gradient(135deg, var(--ubx-kind-premium), var(--ubx-kind-person));
    box-shadow: 0 0 16px rgba(var(--ubx-kind-premium-rgb), 0.16);
}

.ubx-achievement-svg {
    width: 1.18rem;
    height: 1.18rem;
}

.ubx-achievement-state,
.ubx-credit-pill {
    color: #160d08;
    background: linear-gradient(135deg, var(--ubx-kind-premium), rgba(var(--ubx-kind-premium-rgb), 0.76));
    border: 1px solid rgba(var(--ubx-kind-premium-rgb), 0.35);
}

.ubx-achievement-progress {
    height: 0.52rem;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 999px;
}

.ubx-achievement-progress .progress-bar {
    background: linear-gradient(90deg, var(--ubx-primary), var(--ubx-kind-premium));
    border-radius: inherit;
}

.ubx-mini-stat {
    display: flex;
    gap: 0.35rem;
    align-items: baseline;
    justify-content: flex-lg-end;
}

.ubx-mini-stat strong {
    color: var(--ubx-kind-premium);
    font-size: clamp(2rem, 4vw, 3.2rem);
    line-height: 1;
}

.ubx-mini-stat span {
    color: var(--ubx-muted);
    font-size: 0.92rem;
}

.ubx-kind-premium {
    --ubx-card-accent: var(--ubx-kind-premium);
    --ubx-card-accent-rgb: var(--ubx-kind-premium-rgb);
}

.ubx-premium-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    color: #20140a;
    background: linear-gradient(135deg, var(--ubx-kind-premium), rgba(var(--ubx-kind-premium-rgb), 0.72));
    border: 1px solid rgba(var(--ubx-kind-premium-rgb), 0.36);
    box-shadow: 0 0 14px rgba(var(--ubx-kind-premium-rgb), 0.13);
}

.ubx-premium-pill .ubx-premium-mark {
    color: #20140a;
}

.ubx-premium-pill .ubx-premium-mark::after {
    background: linear-gradient(90deg, rgba(32, 20, 10, 0.92), transparent);
}

.ubx-premium-price-note,
.ubx-premium-region-card {
    border: 1px solid rgba(var(--ubx-kind-premium-rgb), 0.24);
    border-radius: 1.1rem;
    background:
        radial-gradient(circle at 18% 0%, rgba(var(--ubx-kind-premium-rgb), 0.16), transparent 34%),
        rgba(var(--ubx-kind-premium-rgb), 0.055);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.ubx-premium-region-card strong {
    color: var(--ubx-kind-premium);
}

.ubx-creator-badge {
    gap: 0.35rem;
    color: #07140d;
    background: linear-gradient(135deg, var(--ubx-primary), rgba(var(--ubx-primary-rgb), 0.72));
    border: 1px solid rgba(var(--ubx-primary-rgb), 0.36);
    box-shadow: 0 0 14px rgba(var(--ubx-primary-rgb), 0.13);
    font-size: 0.9rem;
    letter-spacing: 0;
}

.ubx-creator-panel {
    position: relative;
    overflow: hidden;
}

.ubx-creator-panel::before {
    content: "";
    position: absolute;
    inset: auto -18% -42% 42%;
    height: 12rem;
    background: radial-gradient(circle, rgba(var(--ubx-primary-rgb), 0.16), transparent 66%);
    pointer-events: none;
}

.ubx-creator-panel-icon {
    display: inline-grid;
    width: 2.7rem;
    height: 2.7rem;
    flex: 0 0 2.7rem;
    place-items: center;
    color: #07140d;
    background: linear-gradient(135deg, var(--ubx-primary), rgba(var(--ubx-primary-rgb), 0.70));
    border-radius: 1rem;
    box-shadow: 0 0 18px rgba(var(--ubx-primary-rgb), 0.16);
}

.ubx-creator-progress {
    height: 0.55rem;
    background: rgba(255, 255, 255, 0.08);
    border-radius: 999px;
}

.ubx-creator-progress .progress-bar {
    background: linear-gradient(90deg, var(--ubx-primary), rgba(var(--ubx-primary-rgb), 0.62));
    border-radius: inherit;
}

.ubx-creator-progress-badge {
    color: rgba(var(--ubx-primary-rgb), 0.96);
    background: rgba(var(--ubx-primary-rgb), 0.12);
    border: 1px solid rgba(var(--ubx-primary-rgb), 0.24);
}

.ubx-creator-requirements {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.6rem;
}

.ubx-creator-requirement {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    min-height: 2.65rem;
    padding: 0.65rem 0.75rem;
    color: var(--ubx-text);
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 1rem;
}

.ubx-creator-requirement.is-met {
    background: rgba(var(--ubx-primary-rgb), 0.11);
    border-color: rgba(var(--ubx-primary-rgb), 0.22);
}

.ubx-creator-requirement-state {
    display: inline-flex;
    color: var(--ubx-muted);
}

.ubx-creator-requirement.is-met .ubx-creator-requirement-state {
    color: var(--ubx-primary);
}

.ubx-creator-state,
.ubx-creator-apply-form {
    padding: 0.95rem;
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 1.1rem;
}

.ubx-creator-state {
    display: grid;
    gap: 0.2rem;
}

.ubx-creator-state span {
    color: var(--ubx-muted);
}

.ubx-creator-state.is-met {
    background: rgba(var(--ubx-primary-rgb), 0.10);
    border-color: rgba(var(--ubx-primary-rgb), 0.22);
}

.ubx-creator-state.is-warning {
    background: rgba(255, 193, 7, 0.10);
    border-color: rgba(255, 193, 7, 0.22);
}

@media (max-width: 575.98px) {
    .ubx-creator-requirements {
        grid-template-columns: 1fr;
    }
}

.ubx-icon {
    display: inline-grid;
    width: 2.6rem;
    height: 2.6rem;
    place-items: center;
    color: #160d08;
    background: var(--ubx-card-accent, var(--ubx-primary));
    border-radius: 0.9rem;
    font-weight: 900;
    box-shadow: 0 0 0 0.22rem rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.16);
    transition:
        transform var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth);
}

.ubx-place-card {
    position: relative;
    overflow: hidden;
}

.ubx-place-card.is-premium-locked {
    --ubx-card-accent: var(--ubx-kind-premium);
    --ubx-card-accent-rgb: var(--ubx-kind-premium-rgb);
}

.ubx-place-card:hover {
    transform: perspective(900px) translateY(-3px) scale(1.004) rotateX(0.35deg) rotateY(-0.3deg);
}

.ubx-place-card:hover .ubx-icon,
.ubx-feature-card:hover .ubx-icon,
.ubx-topic-card:hover .ubx-icon,
.ubx-category-card:hover .ubx-icon,
.ubx-content-card:hover .ubx-icon {
    transform: translateZ(8px) scale(1.015);
    box-shadow:
        0 0 0 0.18rem rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.14),
        0 0 16px rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.14);
}

.ubx-place-card-media {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    min-height: 12rem;
    padding: 1rem;
    background:
        linear-gradient(145deg, rgba(var(--ubx-card-accent-rgb), 0.18), transparent),
        linear-gradient(35deg, #211a18, #08090d);
}

[data-bs-theme="light"] .ubx-place-card-media {
    background:
        linear-gradient(145deg, rgba(var(--ubx-card-accent-rgb), 0.18), transparent),
        linear-gradient(35deg, #f0dcc6, #fffaf3);
}

.ubx-place-card-media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition:
        transform 520ms cubic-bezier(0.2, 0.8, 0.2, 1),
        filter var(--ubx-motion-smooth);
}

.ubx-place-card:hover .ubx-place-card-media img,
.ubx-media-card:hover img {
    transform: scale(1.018);
    filter: saturate(1.03) contrast(1.01);
}

.ubx-place-card-media-has-image::after {
    position: absolute;
    inset: 0;
    content: "";
    background:
        linear-gradient(180deg, rgba(8, 9, 13, 0.16), rgba(8, 9, 13, 0.72)),
        radial-gradient(circle at top left, rgba(var(--ubx-card-accent-rgb), 0.26), transparent 50%);
}

.ubx-place-card.is-premium-locked .ubx-place-card-media {
    align-items: center;
    justify-content: center;
    min-height: 12rem;
    background:
        radial-gradient(circle at 50% 15%, rgba(var(--ubx-kind-premium-rgb), 0.28), transparent 42%),
        repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.065) 0 1px, transparent 1px 18px),
        linear-gradient(135deg, rgba(25, 18, 12, 0.94), rgba(6, 7, 10, 0.98));
}

[data-bs-theme="light"] .ubx-place-card.is-premium-locked .ubx-place-card-media {
    background:
        radial-gradient(circle at 50% 15%, rgba(var(--ubx-kind-premium-rgb), 0.24), transparent 42%),
        repeating-linear-gradient(135deg, rgba(72, 54, 38, 0.07) 0 1px, transparent 1px 18px),
        linear-gradient(135deg, rgba(255, 248, 238, 0.96), rgba(240, 226, 208, 0.92));
}

.ubx-place-card-lock-visual {
    position: relative;
    z-index: 2;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 1.1rem;
    color: var(--ubx-text);
    text-align: center;
    background: rgba(0, 0, 0, 0.28);
    border: 1px solid rgba(var(--ubx-kind-premium-rgb), 0.34);
    border-radius: 1.1rem;
    backdrop-filter: blur(14px);
}

[data-bs-theme="light"] .ubx-place-card-lock-visual {
    background: rgba(255, 250, 243, 0.66);
}

.ubx-place-card-lock-icon {
    width: 2.35rem;
    height: 2.35rem;
    color: var(--ubx-kind-premium);
}

.ubx-place-card-lock-actions {
    position: relative;
    z-index: 4;
}

.ubx-place-card-media .badge,
.ubx-card-stat {
    position: relative;
    z-index: 2;
}

.ubx-list-card-media {
    --ubx-card-accent: var(--ubx-kind-list);
    --ubx-card-accent-rgb: var(--ubx-kind-list-rgb);
    background:
        linear-gradient(145deg, rgba(var(--ubx-kind-list-rgb), 0.18), transparent),
        repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.06) 0 1px, transparent 1px 16px),
        linear-gradient(35deg, #181c2c, #05060a);
}

.ubx-place-card-media .badge {
    background: rgba(0, 0, 0, 0.52) !important;
    border: 1px solid rgba(255, 255, 255, 0.12);
}

[data-bs-theme="light"] .ubx-place-card-media .badge {
    color: var(--ubx-text) !important;
    background: rgba(255, 250, 243, 0.78) !important;
    border-color: rgba(72, 54, 38, 0.14);
}

.ubx-card-stat {
    padding: 0.38rem 0.62rem;
    color: var(--ubx-text);
    background: rgba(0, 0, 0, 0.52);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 800;
    backdrop-filter: blur(12px);
}

[data-bs-theme="light"] .ubx-card-stat {
    color: var(--ubx-text);
    background: rgba(255, 250, 243, 0.78);
    border-color: rgba(72, 54, 38, 0.14);
}

.ubx-region-card {
    position: relative;
    overflow: hidden;
    display: grid;
    gap: 0.45rem;
    min-height: 10rem;
    padding: 1rem;
    --ubx-card-accent: var(--ubx-kind-region);
    --ubx-card-accent-rgb: var(--ubx-kind-region-rgb);
    color: var(--ubx-text);
    text-decoration: none;
    background:
        radial-gradient(circle at top right, rgba(138, 164, 255, 0.15), transparent 55%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.03));
    border: 1px solid var(--ubx-border);
    border-radius: 1.25rem;
}

.ubx-region-card:hover {
    color: var(--ubx-text);
    background:
        radial-gradient(circle at top right, rgba(var(--ubx-card-accent-rgb), 0.18), transparent 55%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.04));
    transform: perspective(900px) translateY(-3px) scale(1.004) rotateX(0.35deg) rotateY(0.3deg);
}

.ubx-region-card-label {
    color: var(--ubx-card-accent);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.ubx-region-card strong {
    font-size: 1.35rem;
    line-height: 1.1;
}

.ubx-region-card small {
    color: var(--ubx-muted);
    font-weight: 700;
}

.ubx-nearby-card {
    position: relative;
    display: grid;
    align-content: space-between;
    gap: 1rem;
    padding: 1.15rem;
    color: var(--ubx-text);
    background:
        radial-gradient(circle at top right, rgba(var(--ubx-primary-rgb), 0.13), transparent 50%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.03));
    border: 1px solid var(--ubx-border);
    border-radius: 1.3rem;
}

.ubx-nearby-card:hover {
    transform: perspective(900px) translateY(-3px) scale(1.004) rotateX(0.35deg);
}

.ubx-distance-badge {
    display: inline-flex;
    padding: 0.4rem 0.65rem;
    color: #160d08;
    background: var(--ubx-primary);
    border-radius: 999px;
    font-size: 0.8rem;
    font-weight: 900;
}

.ubx-section-rankings {
    background:
        radial-gradient(circle at 14% 16%, rgba(var(--ubx-primary-rgb), 0.1), transparent 24rem),
        radial-gradient(circle at 88% 20%, rgba(138, 164, 255, 0.1), transparent 22rem);
}

.ubx-rank-list {
    display: grid;
    gap: 0.7rem;
    padding: 0;
    margin: 1rem 0 0;
    list-style: none;
    counter-reset: ubx-rank;
}

.ubx-rank-list li {
    counter-increment: ubx-rank;
}

.ubx-rank-list a,
.ubx-rank-link {
    display: grid;
    gap: 0.25rem;
    padding: 0.85rem 1rem;
    --ubx-card-accent: var(--ubx-primary);
    --ubx-card-accent-rgb: var(--ubx-primary-rgb);
    color: var(--ubx-text);
    text-decoration: none;
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 1rem;
}

[data-bs-theme="light"] .ubx-rank-list a,
[data-bs-theme="light"] .ubx-rank-link,
[data-bs-theme="light"] .ubx-phone-card,
[data-bs-theme="light"] .ubx-phone-row,
[data-bs-theme="light"] .ubx-breadcrumb,
[data-bs-theme="light"] .ubx-media-card,
[data-bs-theme="light"] .ubx-media-detail {
    background: rgba(255, 255, 255, 0.58);
    border-color: rgba(72, 54, 38, 0.14);
}

.ubx-rank-list a {
    position: relative;
    padding-left: 3.1rem;
}

.ubx-rank-list a::before {
    position: absolute;
    top: 50%;
    left: 0.9rem;
    display: grid;
    width: 1.55rem;
    height: 1.55rem;
    place-items: center;
    color: #160d08;
    content: counter(ubx-rank);
    background: var(--ubx-primary);
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 900;
    transform: translateY(-50%);
}

.ubx-rank-list a:hover,
.ubx-rank-link:hover {
    color: var(--ubx-text);
    background: rgba(255, 255, 255, 0.075);
    transform: translateY(-1px);
}

.ubx-rank-list small,
.ubx-rank-link span {
    color: var(--ubx-muted);
    font-weight: 700;
}

.ubx-premium {
    --ubx-card-accent: var(--ubx-kind-premium);
    --ubx-card-accent-rgb: var(--ubx-kind-premium-rgb);
    background:
        radial-gradient(circle at top right, rgba(var(--ubx-kind-premium-rgb), 0.22), transparent 22rem),
        linear-gradient(145deg, rgba(32, 27, 19, 0.96), rgba(10, 11, 16, 0.95));
    border-color: rgba(var(--ubx-kind-premium-rgb), 0.26);
    box-shadow:
        0 24px 76px rgba(0, 0, 0, 0.32),
        0 0 24px rgba(var(--ubx-kind-premium-rgb), 0.08);
}

[data-bs-theme="light"] .ubx-premium {
    background:
        radial-gradient(circle at top right, rgba(var(--ubx-kind-premium-rgb), 0.18), transparent 22rem),
        linear-gradient(145deg, rgba(255, 250, 241, 0.96), rgba(241, 225, 205, 0.9));
    border-color: rgba(var(--ubx-kind-premium-rgb), 0.22);
}

.ubx-premium-product-icon {
    width: 56px;
    height: 56px;
    border-radius: 18px;
    object-fit: cover;
    box-shadow: 0 14px 34px rgba(var(--ubx-kind-premium-rgb), 0.22);
}

.ubx-premium-feature-list li {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.65rem;
    align-items: center;
    padding: 0.62rem 0.75rem;
    color: var(--ubx-text);
    background: rgba(var(--ubx-kind-premium-rgb), 0.08);
    border: 1px solid rgba(var(--ubx-kind-premium-rgb), 0.16);
    border-radius: 0.9rem;
    font-size: 0.92rem;
    font-weight: 800;
}

.ubx-premium-feature-list .ubx-premium-choice-state {
    width: 1.25rem;
    height: 1.25rem;
    color: #221407;
    background: var(--ubx-kind-premium);
    box-shadow: none;
}

.ubx-premium-feature-list .ubx-premium-choice-state svg {
    width: 0.68rem;
    height: 0.68rem;
}

.ubx-premium-comparison {
    position: relative;
    overflow: hidden;
    --ubx-card-accent: var(--ubx-kind-premium);
    --ubx-card-accent-rgb: var(--ubx-kind-premium-rgb);
    border-color: rgba(var(--ubx-kind-premium-rgb), 0.24);
}

.ubx-premium-comparison::before {
    position: absolute;
    inset: -10rem -8rem auto auto;
    z-index: -1;
    width: 26rem;
    height: 26rem;
    content: "";
    background:
        radial-gradient(circle, rgba(var(--ubx-card-accent-rgb), 0.14), transparent 68%);
    border-radius: 999px;
    filter: blur(10px);
}

.ubx-premium-decision {
    box-shadow:
        0 22px 70px rgba(0, 0, 0, 0.28),
        0 0 26px rgba(var(--ubx-kind-premium-rgb), 0.12);
}

.ubx-premium-choice {
    position: relative;
    overflow: hidden;
    color: var(--ubx-text);
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(var(--ubx-kind-premium-rgb), 0.16);
    border-radius: 1.25rem;
}

.ubx-premium-choice-featured {
    background:
        radial-gradient(circle at top right, rgba(var(--ubx-kind-premium-rgb), 0.2), transparent 58%),
        rgba(255, 255, 255, 0.075);
    border-color: rgba(var(--ubx-kind-premium-rgb), 0.38);
    box-shadow:
        0 16px 44px rgba(0, 0, 0, 0.18),
        0 0 22px rgba(var(--ubx-kind-premium-rgb), 0.12);
}

.ubx-premium-choice-list {
    display: grid;
    gap: 0.55rem;
    margin-top: 1rem;
}

.ubx-premium-choice-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.7rem;
    align-items: start;
    padding: 0.72rem 0.78rem;
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 0.95rem;
}

.ubx-premium-choice-item strong,
.ubx-premium-choice-item small {
    display: block;
}

.ubx-premium-choice-item strong {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    color: var(--ubx-text);
    font-size: 0.88rem;
    line-height: 1.15;
}

.ubx-premium-choice-icon {
    width: 1em;
    height: 1em;
    color: rgba(var(--ubx-kind-premium-rgb), 0.92);
}

.ubx-premium-choice-item small {
    margin-top: 0.12rem;
    color: var(--ubx-muted);
    font-weight: 700;
}

.ubx-premium-choice-state {
    display: inline-grid;
    width: 1.45rem;
    height: 1.45rem;
    place-items: center;
    border-radius: 999px;
    font-size: 0.92rem;
    font-weight: 900;
    line-height: 1;
}

.ubx-premium-choice-state svg {
    width: 0.78rem;
    height: 0.78rem;
}

.ubx-premium-choice-item-muted .ubx-premium-choice-state {
    color: rgba(208, 213, 221, 0.82);
    background: rgba(148, 163, 184, 0.12);
    border: 1px solid rgba(148, 163, 184, 0.28);
}

.ubx-premium-choice-item-good {
    border-color: rgba(var(--ubx-kind-premium-rgb), 0.24);
    background:
        linear-gradient(135deg, rgba(var(--ubx-kind-premium-rgb), 0.08), transparent),
        rgba(255, 255, 255, 0.052);
}

.ubx-premium-choice-item-good .ubx-premium-choice-state {
    color: #221407;
    background: var(--ubx-kind-premium);
    border: 1px solid rgba(var(--ubx-kind-premium-rgb), 0.38);
    box-shadow: 0 0 12px rgba(var(--ubx-kind-premium-rgb), 0.13);
}

.ubx-premium-choice-bridge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3.4rem;
    height: 3.4rem;
    color: #160d08;
    background: var(--ubx-kind-premium);
    border-radius: 999px;
    box-shadow: 0 0 18px rgba(var(--ubx-kind-premium-rgb), 0.16);
    font-weight: 900;
}

.ubx-premium-quick-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
    gap: 0.85rem;
}

.ubx-premium-quick-row {
    display: grid;
    gap: 0.45rem;
    min-height: 9rem;
    padding: 1rem;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(var(--ubx-kind-premium-rgb), 0.14);
    border-radius: 1rem;
}

.ubx-premium-quick-row span {
    color: var(--ubx-text);
    font-weight: 900;
}

.ubx-premium-quick-row small {
    color: var(--ubx-muted);
    font-weight: 700;
}

.ubx-premium-quick-row strong {
    color: var(--ubx-kind-premium);
    font-weight: 900;
}

.ubx-premium-separator {
    position: relative;
    padding: clamp(2rem, 4vw, 3.5rem) 0;
}

.ubx-premium-separator::before {
    position: absolute;
    top: 0;
    left: 50%;
    width: min(100%, 66rem);
    height: 1px;
    content: "";
    background:
        linear-gradient(90deg, transparent, rgba(var(--ubx-kind-premium-rgb), 0.52), rgba(var(--ubx-primary-rgb), 0.24), transparent);
    transform: translateX(-50%);
}

.ubx-premium-benefit {
    --ubx-card-accent: var(--ubx-kind-premium);
    --ubx-card-accent-rgb: var(--ubx-kind-premium-rgb);
    border-color: rgba(var(--ubx-kind-premium-rgb), 0.18);
    transition:
        transform var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth);
}

.ubx-premium-benefit:hover {
    box-shadow:
        0 16px 46px rgba(0, 0, 0, 0.18),
        0 0 16px rgba(var(--ubx-card-accent-rgb), 0.1);
    transform: translateY(-2px);
}

.ubx-comparison-table {
    overflow: hidden;
    color: var(--ubx-text);
    border: 1px solid rgba(var(--ubx-card-accent-rgb), 0.18);
    border-radius: 1.2rem;
    --bs-table-bg: transparent;
    --bs-table-color: var(--ubx-text);
    --bs-table-border-color: rgba(255, 255, 255, 0.09);
}

.ubx-comparison-table th,
.ubx-comparison-table td {
    padding: 1rem;
    border-bottom: 1px solid var(--bs-table-border-color);
}

.ubx-comparison-table thead th {
    color: var(--ubx-text);
    background: rgba(var(--ubx-card-accent-rgb), 0.12);
    border-bottom: 1px solid rgba(var(--ubx-card-accent-rgb), 0.22);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.ubx-comparison-table tbody tr {
    transition:
        background var(--ubx-motion-smooth),
        transform var(--ubx-motion-smooth);
}

.ubx-comparison-table tbody tr:hover {
    background: rgba(var(--ubx-card-accent-rgb), 0.07);
    transform: translateY(-1px);
}

.ubx-comparison-table tbody tr:last-child th,
.ubx-comparison-table tbody tr:last-child td {
    border-bottom: 0;
}

.ubx-comparison-feature {
    color: var(--ubx-text);
    font-weight: 900;
}

.ubx-comparison-free {
    color: var(--ubx-muted);
}

.ubx-comparison-premium {
    color: var(--ubx-kind-premium);
    font-weight: 800;
}

.ubx-comparison-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.7rem;
    color: var(--ubx-text);
    background: rgba(var(--ubx-card-accent-rgb), 0.18);
    border: 1px solid rgba(var(--ubx-card-accent-rgb), 0.28);
    border-radius: 999px;
    box-shadow: 0 0 14px rgba(var(--ubx-card-accent-rgb), 0.1);
}

[data-bs-theme="light"] .ubx-comparison-table {
    --bs-table-border-color: rgba(55, 43, 35, 0.1);
}

[data-bs-theme="light"] .ubx-comparison-table thead th {
    background: rgba(var(--ubx-card-accent-rgb), 0.13);
}

[data-bs-theme="light"] .ubx-premium-choice,
[data-bs-theme="light"] .ubx-premium-quick-row {
    background: rgba(255, 255, 255, 0.58);
    border-color: rgba(var(--ubx-kind-premium-rgb), 0.22);
}

[data-bs-theme="light"] .ubx-premium-choice-item {
    background: rgba(255, 255, 255, 0.48);
    border-color: rgba(72, 54, 38, 0.12);
}

[data-bs-theme="light"] .ubx-premium-choice-item-muted .ubx-premium-choice-state {
    color: #64748b;
    background: rgba(100, 116, 139, 0.1);
    border-color: rgba(100, 116, 139, 0.22);
}

[data-bs-theme="light"] .ubx-premium-choice-featured {
    background:
        radial-gradient(circle at top right, rgba(var(--ubx-kind-premium-rgb), 0.15), transparent 58%),
        rgba(255, 255, 255, 0.76);
    border-color: rgba(var(--ubx-kind-premium-rgb), 0.34);
}

.ubx-error-page {
    position: relative;
    overflow: hidden;
}

.ubx-error-page::before {
    position: absolute;
    inset: 3rem auto auto -12rem;
    z-index: -1;
    width: 32rem;
    height: 32rem;
    content: "";
    background:
        radial-gradient(circle, rgba(var(--ubx-primary-rgb), 0.16), transparent 68%);
    border-radius: 999px;
    filter: blur(12px);
}

.ubx-error-card {
    position: relative;
    overflow: hidden;
    --ubx-card-accent: var(--ubx-kind-region);
    --ubx-card-accent-rgb: var(--ubx-kind-region-rgb);
}

.ubx-error-card::after {
    position: absolute;
    inset: auto -6rem -8rem auto;
    width: 18rem;
    height: 18rem;
    content: "";
    background: rgba(var(--ubx-card-accent-rgb), 0.16);
    border-radius: 999px;
    filter: blur(8px);
}

.ubx-error-code {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.8rem;
    color: #160d08;
    background: var(--ubx-primary);
    border-radius: 999px;
    box-shadow: 0 0 18px rgba(var(--ubx-primary-rgb), 0.14);
    font-size: clamp(3rem, 9vw, 7rem);
    font-weight: 900;
    letter-spacing: -0.08em;
    line-height: 1;
}

.ubx-error-search {
    max-width: 100%;
}

.ubx-error-tip {
    --ubx-card-accent: var(--ubx-kind-place);
    --ubx-card-accent-rgb: var(--ubx-kind-place-rgb);
    transition:
        transform var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth),
        background var(--ubx-motion-smooth);
}

.ubx-error-tip:hover {
    box-shadow:
        0 16px 44px rgba(0, 0, 0, 0.22),
        0 0 18px rgba(var(--ubx-card-accent-rgb), 0.1);
    transform: translateY(-2px);
}

.ubx-error-tip-map {
    --ubx-card-accent: var(--ubx-kind-region);
    --ubx-card-accent-rgb: var(--ubx-kind-region-rgb);
}

.ubx-error-tip-faq {
    --ubx-card-accent: var(--ubx-kind-category);
    --ubx-card-accent-rgb: var(--ubx-kind-category-rgb);
}

.ubx-phone-card {
    padding: 1.25rem;
    background: rgba(0, 0, 0, 0.28);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 1.4rem;
}

.ubx-phone-row {
    padding: 0.9rem 1rem;
    --ubx-card-accent: var(--ubx-primary);
    --ubx-card-accent-rgb: var(--ubx-primary-rgb);
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 1rem;
    transition:
        transform var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth),
        background var(--ubx-motion-smooth);
}

.ubx-app-promo .ubx-phone-row {
    display: flex;
    gap: 0.42rem;
    align-items: center;
}

.ubx-phone-row:hover {
    background: rgba(255, 255, 255, 0.075);
    box-shadow:
        0 10px 30px rgba(0, 0, 0, 0.16),
        0 0 14px rgba(var(--ubx-card-accent-rgb), 0.08);
    transform: translateY(-1px);
}

.ubx-place-type-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 0.42rem;
    align-items: center;
    margin-top: 0.75rem;
}

.ubx-place-type-pill {
    --ubx-type-color: var(--ubx-primary);
    display: inline-flex;
    gap: 0.38rem;
    align-items: center;
    max-width: 100%;
    padding: 0.28rem 0.56rem;
    overflow: hidden;
    color: var(--ubx-text);
    font-size: 0.76rem;
    font-weight: 750;
    line-height: 1.1;
    text-overflow: ellipsis;
    white-space: nowrap;
    background:
        linear-gradient(
            135deg,
            color-mix(in srgb, var(--ubx-type-color) 16%, transparent),
            rgba(255, 255, 255, 0.055)
        );
    border: 1px solid color-mix(in srgb, var(--ubx-type-color) 34%, rgba(255, 255, 255, 0.14));
    border-radius: 999px;
}

.ubx-place-type-dot {
    flex: 0 0 auto;
    width: 0.45rem;
    height: 0.45rem;
    background: var(--ubx-type-color);
    border-radius: 999px;
    box-shadow: 0 0 0 0.16rem color-mix(in srgb, var(--ubx-type-color) 18%, transparent);
}

.ubx-place-type-count {
    display: inline-grid;
    min-width: 1.2rem;
    height: 1.2rem;
    place-items: center;
    padding: 0 0.26rem;
    color: var(--ubx-text);
    font-size: 0.68rem;
    background: rgba(255, 255, 255, 0.09);
    border-radius: 999px;
}

.ubx-section {
    position: relative;
}

.ubx-section-research {
    background:
        linear-gradient(90deg, rgba(var(--ubx-primary-rgb), 0.06), transparent 52%),
        linear-gradient(180deg, transparent, rgba(138, 164, 255, 0.035));
}

.ubx-section-categories {
    background:
        radial-gradient(circle at 18% 10%, rgba(var(--ubx-kind-category-rgb), 0.12), transparent 22rem),
        radial-gradient(circle at 85% 40%, rgba(var(--ubx-kind-place-rgb), 0.07), transparent 24rem);
}

.ubx-feature-card,
.ubx-topic-card,
.ubx-category-card,
.ubx-content-card {
    position: relative;
    overflow: hidden;
    --ubx-card-accent: var(--ubx-primary);
    --ubx-card-accent-rgb: var(--ubx-primary-rgb);
}

.ubx-collapse-trigger {
    display: block;
    appearance: none;
    color: var(--ubx-text);
    font: inherit;
    cursor: pointer;
}

.ubx-collapse-trigger h3,
.ubx-collapse-trigger p {
    position: relative;
    z-index: 2;
}

.ubx-collapse-trigger h3 {
    margin-top: 0.65rem;
}

.ubx-collapse-trigger p {
    min-height: 3.3rem;
}

.ubx-collapse-trigger:hover,
.ubx-collapse-trigger:focus-visible,
.ubx-collapse-trigger[aria-expanded="true"] {
    color: var(--ubx-text);
}

.ubx-collapse-trigger:focus-visible {
    outline: 0.18rem solid rgba(var(--ubx-card-accent-rgb), 0.42);
    outline-offset: 0.16rem;
}

.ubx-collapse-trigger[aria-expanded="true"] {
    background:
        radial-gradient(circle at 18% 8%, rgba(var(--ubx-card-accent-rgb), 0.18), transparent 16rem),
        rgba(255, 255, 255, 0.082);
    border-color: rgba(var(--ubx-card-accent-rgb), 0.36);
    box-shadow:
        0 14px 42px rgba(0, 0, 0, 0.18),
        0 0 18px rgba(var(--ubx-card-accent-rgb), 0.1);
}

.ubx-collapse-trigger[aria-expanded="true"] .ubx-link-icon {
    transform: rotate(90deg);
}

.ubx-collapse-trigger-icon {
    position: relative;
    z-index: 2;
    display: inline-flex;
    width: 2.5rem;
    height: 2.5rem;
    align-items: center;
    justify-content: center;
    color: var(--ubx-card-accent);
    background: rgba(var(--ubx-card-accent-rgb), 0.14);
    border: 1px solid rgba(var(--ubx-card-accent-rgb), 0.28);
    border-radius: 0.95rem;
    box-shadow: 0 0 14px rgba(var(--ubx-card-accent-rgb), 0.08);
}

.ubx-collapse-stack {
    display: grid;
    gap: 1rem;
}

.ubx-collapse-panel {
    position: relative;
    overflow: hidden;
    --ubx-card-accent: var(--ubx-primary);
    --ubx-card-accent-rgb: var(--ubx-primary-rgb);
}

.ubx-collapse-panel::before {
    position: absolute;
    inset: 0 auto 0 0;
    width: 0.32rem;
    content: "";
    background: var(--ubx-card-accent);
    opacity: 0.9;
}

.ubx-collapse-panel::after {
    position: absolute;
    inset: -35% auto auto 52%;
    width: 28rem;
    height: 28rem;
    content: "";
    pointer-events: none;
    background: radial-gradient(circle, rgba(var(--ubx-card-accent-rgb), 0.11), transparent 64%);
    transform: translateX(-50%);
}

.ubx-collapse-panel > * {
    position: relative;
    z-index: 2;
}

.ubx-feature-card::before,
.ubx-topic-card::before,
.ubx-category-card::before,
.ubx-content-card::before,
.ubx-place-card::before,
.ubx-region-card::before {
    position: absolute;
    inset: 0 auto 0 0;
    z-index: 3;
    width: 0.28rem;
    content: "";
    pointer-events: none;
    background: var(--ubx-card-accent, var(--ubx-primary));
    opacity: 0.84;
}

.ubx-feature-card:hover,
.ubx-topic-card:hover,
.ubx-category-card:hover,
.ubx-content-card:hover {
    transform: perspective(900px) translateY(-3px) scale(1.004) rotateX(0.35deg) rotateY(-0.25deg);
}

.ubx-inline-link-group {
    position: relative;
    z-index: 4;
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    align-items: center;
}

.ubx-inline-link-group span {
    width: 100%;
    color: var(--ubx-muted);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.ubx-inline-link-group a {
    display: inline-flex;
    max-width: 100%;
    padding: 0.24rem 0.52rem;
    color: var(--ubx-text);
    font-size: 0.78rem;
    line-height: 1.2;
    text-decoration: none;
    background: rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.1);
    border: 1px solid rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.22);
    border-radius: 999px;
}

.ubx-inline-link-group a:hover,
.ubx-inline-link-group a:focus-visible {
    color: var(--ubx-text);
    background: rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.18);
    border-color: rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.38);
    transform: translateY(-1px);
}

.ubx-section-place-scroll {
    overflow: hidden;
    background:
        radial-gradient(circle at 12% 30%, rgba(var(--ubx-kind-place-rgb), 0.1), transparent 24rem),
        radial-gradient(circle at 86% 50%, rgba(var(--ubx-kind-region-rgb), 0.08), transparent 26rem);
}

.ubx-place-marquee {
    overflow: hidden;
    padding: 0.25rem 0 1rem;
    mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
}

.ubx-place-marquee-track {
    display: flex;
    width: max-content;
    will-change: transform;
    animation: ubx-place-marquee 72s linear infinite;
}

.ubx-place-marquee:hover .ubx-place-marquee-track,
.ubx-place-marquee:focus-within .ubx-place-marquee-track {
    animation-play-state: paused;
}

.ubx-place-marquee-group {
    display: flex;
    flex: 0 0 auto;
    gap: 1.25rem;
    padding-right: 1.25rem;
}

.ubx-place-marquee-item {
    flex: 0 0 clamp(16rem, 24vw, 20rem);
    width: clamp(16rem, 24vw, 20rem);
}

@keyframes ubx-place-marquee {
    from {
        transform: translate3d(0, 0, 0);
    }

    to {
        transform: translate3d(-50%, 0, 0);
    }
}

@keyframes ubx-float-card {
    0%,
    100% {
        transform: rotate(1deg) translate3d(0, 0, 0);
    }

    50% {
        transform: rotate(0.35deg) translate3d(0, -0.45rem, 0);
    }
}

@keyframes ubx-map-dot-pulse {
    0%,
    100% {
        box-shadow:
            0 0 0 0.62rem rgba(var(--ubx-primary-rgb), 0.12),
            0 10px 24px rgba(0, 0, 0, 0.24);
    }

    50% {
        box-shadow:
            0 0 0 0.9rem rgba(var(--ubx-primary-rgb), 0.18),
            0 16px 34px rgba(0, 0, 0, 0.32);
    }
}

.ubx-faq {
    display: grid;
    gap: 0.9rem;
}

.ubx-faq .accordion-item {
    overflow: hidden;
    color: var(--ubx-text);
    background: linear-gradient(145deg, var(--ubx-surface), rgba(255, 255, 255, 0.035));
    border: 1px solid var(--ubx-border);
    border-radius: 1.1rem;
}

.ubx-faq .accordion-item.ubx-kind-premium {
    --ubx-card-accent: var(--ubx-kind-premium);
    --ubx-card-accent-rgb: var(--ubx-kind-premium-rgb);
    border-color: rgba(var(--ubx-kind-premium-rgb), 0.32);
    box-shadow: 0 0 18px rgba(var(--ubx-kind-premium-rgb), 0.07);
}

.ubx-faq .accordion-item.ubx-kind-premium .accordion-button {
    color: var(--ubx-kind-premium);
}

.ubx-faq .accordion-button {
    color: var(--ubx-text);
    background: transparent;
    font-weight: 800;
}

.ubx-faq .accordion-button:not(.collapsed) {
    color: var(--ubx-primary);
    background: rgba(var(--ubx-primary-rgb), 0.08);
    box-shadow: none;
}

.ubx-faq .accordion-button:focus {
    border-color: rgba(var(--ubx-primary-rgb), 0.35);
    box-shadow: 0 0 0 0.2rem rgba(var(--ubx-primary-rgb), 0.18);
}

.ubx-meta-pill {
    color: var(--ubx-text) !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.12);
}

a.ubx-meta-pill {
    text-decoration: none;
    transition: border-color 160ms ease, color 160ms ease, background 160ms ease;
}

a.ubx-meta-pill:hover {
    color: var(--ubx-primary) !important;
    background: rgba(var(--ubx-primary-rgb), 0.1) !important;
    border-color: rgba(var(--ubx-primary-rgb), 0.38);
}

.ubx-breadcrumb {
    display: inline-flex;
    max-width: 100%;
    padding: 0.45rem 0.65rem;
    margin-bottom: 1.5rem;
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 999px;
    backdrop-filter: blur(16px);
}

.ubx-breadcrumb ol {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    align-items: center;
    padding: 0;
    margin: 0;
    list-style: none;
}

.ubx-breadcrumb li {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    color: var(--ubx-muted);
    font-size: 0.82rem;
    font-weight: 700;
}

.ubx-breadcrumb li:not(:last-child)::after {
    margin: 0 0.45rem;
    color: rgba(255, 255, 255, 0.28);
    content: "/";
}

[data-bs-theme="light"] .ubx-breadcrumb li:not(:last-child)::after {
    color: rgba(72, 54, 38, 0.35);
}

.ubx-breadcrumb a {
    color: var(--ubx-text);
    text-decoration: none;
}

.ubx-breadcrumb a:hover {
    color: var(--ubx-primary);
}

.ubx-breadcrumb span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ubx-media-card {
    position: relative;
    overflow: hidden;
    display: grid;
    gap: 0.75rem;
    height: 100%;
    padding: 0.85rem;
    color: var(--ubx-text);
    text-decoration: none;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid var(--ubx-border);
    border-radius: 1.2rem;
    --ubx-card-accent: var(--ubx-primary);
    --ubx-card-accent-rgb: var(--ubx-primary-rgb);
}

.ubx-media-card:hover {
    color: var(--ubx-text);
    transform: perspective(900px) translateY(-3px) scale(1.004) rotateX(0.35deg);
}

.ubx-media-card img,
.ubx-media-detail img,
.ubx-media-detail video {
    width: 100%;
    background: #0d130f;
    border-radius: 0.9rem;
    object-fit: cover;
}

[data-bs-theme="light"] .ubx-media-card img,
[data-bs-theme="light"] .ubx-media-detail img,
[data-bs-theme="light"] .ubx-media-detail video,
[data-bs-theme="light"] .ubx-video-thumb {
    background: #eadcc9;
}

.ubx-media-card img {
    aspect-ratio: 4 / 3;
}

.ubx-media-card small {
    color: var(--ubx-muted);
}

.ubx-video-thumb {
    display: grid;
    aspect-ratio: 4 / 3;
    place-items: center;
    color: var(--ubx-primary);
    background:
        radial-gradient(circle at center, rgba(var(--ubx-primary-rgb), 0.16), transparent 45%),
        #0d130f;
    border-radius: 0.9rem;
    font-weight: 800;
}

.ubx-media-detail {
    overflow: hidden;
    margin: 0;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid var(--ubx-border);
    border-radius: 1.6rem;
}

.ubx-media-detail img,
.ubx-media-detail video {
    max-height: 72vh;
    border-radius: 1.6rem 1.6rem 0 0;
}

.ubx-media-detail figcaption {
    padding: 1.25rem;
}

.ubx-comment {
    padding: 1rem 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.ubx-comment:last-of-type {
    border-bottom: 0;
}

.ubx-separator {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    color: var(--ubx-muted);
    font-size: 0.85rem;
}

.ubx-separator::before,
.ubx-separator::after {
    flex: 1;
    height: 1px;
    content: "";
    background: rgba(255, 255, 255, 0.12);
}

.ubx-auth-scene {
    position: relative;
    min-height: clamp(42rem, 78vh, 58rem);
    overflow: hidden;
    isolation: isolate;
}

.ubx-auth-scene::before,
.ubx-auth-scene::after {
    position: absolute;
    inset: auto;
    content: "";
    pointer-events: none;
    z-index: -2;
    border-radius: 999rem;
    filter: blur(4rem);
}

.ubx-auth-scene::before {
    width: 34rem;
    height: 34rem;
    left: 50%;
    top: 8%;
    transform: translateX(-50%);
    background:
        radial-gradient(circle, rgba(var(--ubx-primary-rgb), 0.18), transparent 64%),
        radial-gradient(circle at 70% 30%, rgba(var(--ubx-kind-premium-rgb), 0.12), transparent 58%);
}

.ubx-auth-scene::after {
    width: 46rem;
    height: 18rem;
    left: 50%;
    bottom: 3rem;
    transform: translateX(-50%);
    background: radial-gradient(ellipse, rgba(255, 255, 255, 0.08), transparent 68%);
    opacity: 0.72;
}

.ubx-auth-card {
    position: relative;
    z-index: 2;
    overflow: hidden;
    border-color: rgba(var(--ubx-primary-rgb), 0.24);
}

.ubx-auth-card::before {
    position: absolute;
    inset: -35% -20% auto auto;
    width: 16rem;
    height: 16rem;
    content: "";
    pointer-events: none;
    background: radial-gradient(circle, rgba(var(--ubx-kind-premium-rgb), 0.16), transparent 66%);
    filter: blur(1.5rem);
}

.ubx-icon-pill {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    color: var(--ubx-primary);
    background: rgba(var(--ubx-primary-rgb), 0.15);
    box-shadow: 0 14px 34px rgba(var(--ubx-primary-rgb), 0.14);
}

.ubx-icon-pill svg {
    width: 1.15rem;
    height: 1.15rem;
}

.ubx-premium-icon-pill {
    color: var(--ubx-kind-premium);
    background: rgba(var(--ubx-kind-premium-rgb), 0.15);
    box-shadow: 0 14px 34px rgba(var(--ubx-kind-premium-rgb), 0.16);
}

.ubx-auth-smoke {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
    z-index: 0;
    opacity: 0.9;
    mix-blend-mode: screen;
}

.ubx-auth-smoke span {
    position: absolute;
    display: block;
    width: clamp(14rem, 30vw, 30rem);
    height: clamp(14rem, 30vw, 30rem);
    left: var(--ubx-smoke-left);
    bottom: var(--ubx-smoke-bottom);
    border-radius: 999rem;
    background:
        radial-gradient(circle at 38% 42%, rgba(255, 255, 255, 0.16), transparent 0 28%, rgba(255, 255, 255, 0.08) 42%, transparent 70%),
        radial-gradient(circle at 62% 62%, rgba(var(--ubx-primary-rgb), 0.11), transparent 58%),
        radial-gradient(circle at 50% 50%, rgba(var(--ubx-kind-premium-rgb), 0.08), transparent 64%);
    filter: blur(1.25rem);
    transform: translate3d(-50%, 0, 0) scale(var(--ubx-smoke-scale));
    animation: ubx-auth-smoke-rise var(--ubx-smoke-duration) ease-in-out infinite;
    animation-delay: var(--ubx-smoke-delay);
}

.ubx-auth-smoke span:nth-child(1) {
    --ubx-smoke-left: 24%;
    --ubx-smoke-bottom: -8rem;
    --ubx-smoke-scale: 1;
    --ubx-smoke-duration: 16s;
    --ubx-smoke-delay: -3s;
}

.ubx-auth-smoke span:nth-child(2) {
    --ubx-smoke-left: 55%;
    --ubx-smoke-bottom: -10rem;
    --ubx-smoke-scale: 1.26;
    --ubx-smoke-duration: 21s;
    --ubx-smoke-delay: -11s;
}

.ubx-auth-smoke span:nth-child(3) {
    --ubx-smoke-left: 78%;
    --ubx-smoke-bottom: -7rem;
    --ubx-smoke-scale: 0.92;
    --ubx-smoke-duration: 18s;
    --ubx-smoke-delay: -7s;
}

@keyframes ubx-auth-smoke-rise {
    0% {
        opacity: 0;
        transform: translate3d(-50%, 5rem, 0) scale(var(--ubx-smoke-scale)) rotate(0deg);
    }

    18% {
        opacity: 0.72;
    }

    52% {
        opacity: 0.42;
        transform: translate3d(calc(-50% + 2.4rem), -9rem, 0) scale(calc(var(--ubx-smoke-scale) * 1.18)) rotate(16deg);
    }

    100% {
        opacity: 0;
        transform: translate3d(calc(-50% - 2rem), -24rem, 0) scale(calc(var(--ubx-smoke-scale) * 1.45)) rotate(34deg);
    }
}

.ubx-ad {
    min-height: 5.5rem;
    display: grid;
    place-items: center;
    color: var(--ubx-muted);
    background: rgba(255, 255, 255, 0.04);
    border: 1px dashed rgba(255, 255, 255, 0.16);
    border-radius: 1rem;
}

.ubx-section-blog {
    background:
        radial-gradient(circle at 18% 10%, rgba(var(--ubx-kind-region-rgb), 0.11), transparent 21rem),
        radial-gradient(circle at 88% 72%, rgba(var(--ubx-primary-rgb), 0.09), transparent 18rem);
}

.ubx-blog-card {
    position: relative;
    overflow: hidden;
    border-left: 0.22rem solid var(--ubx-kind-region);
    transition:
        transform var(--ubx-motion-smooth),
        box-shadow var(--ubx-motion-smooth),
        border-color var(--ubx-motion-smooth);
}

.ubx-blog-card:hover,
.ubx-blog-card:focus-within {
    transform: translateY(-0.16rem);
    border-color: var(--ubx-primary);
    box-shadow:
        0 1.1rem 2.4rem rgba(0, 0, 0, 0.18),
        0 0 1.15rem rgba(var(--ubx-primary-rgb), 0.12);
}

.ubx-blog-content {
    font-size: 1.06rem;
    line-height: 1.78;
}

.ubx-blog-content h2,
.ubx-blog-content h3,
.ubx-blog-content h4 {
    margin-top: 2rem;
    margin-bottom: 0.8rem;
    letter-spacing: -0.035em;
}

.ubx-blog-content p,
.ubx-blog-content ul,
.ubx-blog-content blockquote,
.ubx-blog-content pre,
.ubx-blog-media {
    margin-bottom: 1.35rem;
}

.ubx-blog-content a {
    color: var(--ubx-primary);
    font-weight: 700;
    text-underline-offset: 0.2em;
}

.ubx-blog-content blockquote {
    padding: 1rem 1.25rem;
    color: var(--ubx-muted);
    border-left: 0.22rem solid var(--ubx-primary);
    background: rgba(255, 255, 255, 0.035);
    border-radius: 0 1rem 1rem 0;
}

.ubx-share-box {
    position: relative;
    overflow: hidden;
    border-left: 0.22rem solid var(--ubx-card-accent, var(--ubx-primary));
}

.ubx-share-box::before {
    content: "";
    position: absolute;
    inset: -35% auto auto -15%;
    width: 12rem;
    height: 12rem;
    pointer-events: none;
    background: radial-gradient(circle, rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.16), transparent 68%);
}

.ubx-share-icon {
    display: inline-grid;
    place-items: center;
    width: 2.4rem;
    height: 2.4rem;
    flex: 0 0 auto;
    color: var(--ubx-card-accent, var(--ubx-primary));
    background: rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.13);
    border: 1px solid rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.24);
    border-radius: 999px;
}

.ubx-share-icon-svg {
    width: 1.15rem;
    height: 1.15rem;
}

.ubx-share-input-group {
    position: relative;
    z-index: 1;
}

.ubx-share-input {
    color: var(--ubx-text);
    background: rgba(255, 255, 255, 0.045);
    border-color: var(--ubx-border);
    font-size: 0.92rem;
}

.ubx-share-input:focus {
    color: var(--ubx-text);
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.5);
    box-shadow: 0 0 0 0.2rem rgba(var(--ubx-card-accent-rgb, var(--ubx-primary-rgb)), 0.14);
}

.ubx-blog-content pre {
    padding: 1rem;
    overflow-x: auto;
    background: rgba(0, 0, 0, 0.28);
    border: 1px solid var(--ubx-border);
    border-radius: 1rem;
}

.ubx-blog-media {
    overflow: hidden;
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid var(--ubx-border);
    border-radius: 1.35rem;
}

.ubx-blog-media img,
.ubx-blog-media video,
.ubx-blog-content p > img {
    display: block;
    width: 100%;
    height: auto;
}

.ubx-blog-media figcaption {
    padding: 0.85rem 1rem;
    color: var(--ubx-muted);
    font-size: 0.92rem;
}

.ubx-chat-list-item {
    display: block;
    color: inherit;
    text-decoration: none;
    transition: transform var(--ubx-motion-smooth), box-shadow var(--ubx-motion-smooth), border-color var(--ubx-motion-smooth);
}

.ubx-chat-list-item:hover {
    color: inherit;
    transform: translateY(-2px);
    box-shadow: 0 1rem 2.5rem rgba(var(--ubx-kind-chat-rgb), 0.13);
}

.ubx-chat-avatar {
    display: inline-grid;
    flex: 0 0 auto;
    width: 2.8rem;
    height: 2.8rem;
    place-items: center;
    color: #07140d;
    background: linear-gradient(135deg, var(--ubx-kind-chat), var(--ubx-primary));
    border-radius: 1rem;
    box-shadow: 0 0.75rem 1.7rem rgba(var(--ubx-kind-chat-rgb), 0.18);
}

.ubx-friend-avatar-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: inherit;
}

.ubx-chat-avatar-lg {
    width: 3.4rem;
    height: 3.4rem;
    border-radius: 1.15rem;
}

.ubx-web-chat-shell {
    display: grid;
    min-height: min(72vh, 48rem);
    overflow: hidden;
    grid-template-rows: auto minmax(18rem, 1fr) auto;
}

.ubx-web-chat-shell-compact {
    min-height: min(52vh, 34rem);
    grid-template-rows: auto minmax(14rem, 1fr) auto;
}

.ubx-web-chat-header,
.ubx-web-chat-composer {
    padding: 1rem;
    background: rgba(0, 0, 0, 0.14);
    border-color: var(--ubx-border);
}

.ubx-web-chat-header {
    border-bottom: 1px solid var(--ubx-border);
}

.ubx-web-chat-composer {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: end;
    border-top: 1px solid var(--ubx-border);
}

.ubx-web-chat-messages {
    overflow-y: auto;
    padding: 1rem;
    scroll-behavior: smooth;
}

.ubx-web-message {
    display: flex;
    align-items: flex-end;
    gap: 0.55rem;
    margin: 0.55rem 0;
}

.ubx-web-message-own {
    justify-content: flex-end;
}

.ubx-web-message-other {
    justify-content: flex-start;
}

.ubx-web-message-bubble {
    max-width: min(38rem, 86%);
    padding: 0.78rem 0.95rem;
    background: rgba(255, 255, 255, 0.075);
    border: 1px solid var(--ubx-border);
    border-radius: 1.1rem;
}

.ubx-web-message-with-avatar .ubx-web-message-bubble {
    max-width: min(36rem, calc(100% - 3.4rem));
}

.ubx-web-message-own .ubx-web-message-bubble {
    color: #07140d;
    background: linear-gradient(135deg, rgba(var(--ubx-primary-rgb), 0.95), rgba(var(--ubx-kind-chat-rgb), 0.85));
    border-color: rgba(var(--ubx-primary-rgb), 0.4);
}

.ubx-web-message-own .text-secondary {
    color: rgba(7, 20, 13, 0.68) !important;
}

.ubx-chat-day-divider {
    display: flex;
    justify-content: center;
    margin: 1rem 0;
}

.ubx-chat-day-divider span {
    padding: 0.25rem 0.7rem;
    color: var(--ubx-muted);
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid var(--ubx-border);
    border-radius: 999px;
    font-size: 0.78rem;
}

.ubx-chat-empty {
    display: grid;
    min-height: 18rem;
    place-items: center;
    align-content: center;
    text-align: center;
}

.ubx-chat-member-row,
.ubx-message-place {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.65rem 0.75rem;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid var(--ubx-border);
    border-radius: 0.9rem;
}

.ubx-message-place {
    justify-content: flex-start;
    font-size: 0.9rem;
}

.ubx-footer {
    margin-top: 4rem;
    padding: 3rem 0;
    color: var(--ubx-muted);
    background:
        radial-gradient(circle at 12% 0%, rgba(var(--ubx-primary-rgb), 0.08), transparent 32rem),
        rgba(0, 0, 0, 0.28);
    border-top: 1px solid var(--ubx-border);
}

.ubx-footer-logo {
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 1rem;
}

.ubx-footer h2 {
    letter-spacing: 0.08em;
}

.ubx-footer .btn {
    white-space: nowrap;
}

@media (max-width: 767.98px) {
    .ubx-search {
        grid-template-columns: 1fr;
    }

    .ubx-live-search-wrap {
        z-index: 60;
    }

    .ubx-live-search-results {
        right: -0.25rem;
        left: -0.25rem;
        max-height: min(28rem, 58vh);
    }

    .ubx-premium-quick-grid {
        grid-template-columns: 1fr;
    }

    .ubx-premium-choice-bridge {
        width: 2.8rem;
        height: 2.8rem;
        margin: -0.35rem 0;
    }

    .ubx-hero-card {
        transform: none;
        animation: none;
    }

    .ubx-breadcrumb {
        width: 100%;
        border-radius: 1rem;
    }

    .ubx-mega-menu {
        width: 100%;
        right: 0 !important;
        left: 0 !important;
        max-height: min(70vh, 34rem);
        overflow-y: auto;
        transform: none;
    }

    .ubx-mega-grid {
        grid-template-columns: 1fr;
    }

    .ubx-map-preview,
    .ubx-map-page {
        min-height: 18rem;
    }

    .ubx-web-chat-shell {
        min-height: 72vh;
    }

    .ubx-web-chat-composer {
        grid-template-columns: 1fr;
    }

    .ubx-web-message-bubble {
        max-width: 94%;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        transition-duration: 0.001ms !important;
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
    }

    .ubx-place-marquee {
        overflow-x: auto;
        mask-image: none;
    }

    .ubx-place-marquee-track {
        animation: none !important;
    }

    .ubx-place-marquee-group[aria-hidden="true"] {
        display: none;
    }
}
