@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap');

:root {
    color-scheme: dark;
    --odyssey-bg: #05070d;
    --odyssey-bg-soft: #090c15;
    --odyssey-surface: rgba(12, 16, 29, .74);
    --odyssey-surface-strong: rgba(17, 22, 40, .94);
    --odyssey-border: rgba(151, 167, 255, .16);
    --odyssey-border-hover: rgba(106, 222, 255, .46);
    --odyssey-text: #f7f9ff;
    --odyssey-muted: #9da7be;
    --odyssey-cyan: #65e6ff;
    --odyssey-blue: #4e8dff;
    --odyssey-purple: #9b6dff;
    --odyssey-pink: #e367ff;
    --odyssey-green: #59f1bd;
    --odyssey-red: #ff6b81;
    --odyssey-yellow: #ffc45c;
    --odyssey-gradient: linear-gradient(135deg, var(--odyssey-purple), var(--odyssey-blue) 55%, var(--odyssey-cyan));
    --odyssey-shadow: 0 24px 80px rgba(0, 0, 0, .34);
    --odyssey-radius: 18px;
}

html { scroll-behavior: smooth; }

body.odyssey-whmcs {
    min-width: 320px;
    min-height: 100vh;
    margin: 0;
    overflow-x: hidden;
    background:
        radial-gradient(circle at 10% 15%, rgba(117, 76, 255, .08), transparent 26%),
        radial-gradient(circle at 88% 8%, rgba(36, 204, 255, .08), transparent 24%),
        var(--odyssey-bg) !important;
    color: var(--odyssey-text);
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    -webkit-font-smoothing: antialiased;
}

.odyssey-whmcs h1,
.odyssey-whmcs h2,
.odyssey-whmcs h3,
.odyssey-whmcs h4,
.odyssey-whmcs h5,
.odyssey-whmcs h6 {
    color: var(--odyssey-text);
    font-family: 'Space Grotesk', sans-serif;
    letter-spacing: -.025em;
}

.odyssey-whmcs p,
.odyssey-whmcs .text-muted,
.odyssey-whmcs small { color: var(--odyssey-muted) !important; }

.odyssey-whmcs a { transition: color .18s ease, border-color .18s ease, background .18s ease, transform .18s ease; }
.odyssey-whmcs a:hover { color: var(--odyssey-cyan); text-decoration: none; }

.odyssey-space-background {
    position: fixed;
    inset: 0;
    z-index: -3;
    overflow: hidden;
    pointer-events: none;
}

.odyssey-stars {
    position: absolute;
    inset: 0;
    opacity: .42;
    background-image:
        radial-gradient(circle, rgba(255,255,255,.7) 0 1px, transparent 1.5px),
        radial-gradient(circle, rgba(101,230,255,.55) 0 1px, transparent 1.4px);
    background-position: 0 0, 34px 48px;
    background-size: 92px 92px, 146px 146px;
    -webkit-mask-image: linear-gradient(to bottom, #000, transparent 95%);
    mask-image: linear-gradient(to bottom, #000, transparent 95%);
}

.odyssey-glow {
    position: absolute;
    width: 520px;
    height: 520px;
    border-radius: 50%;
    filter: blur(110px);
    opacity: .16;
}
.odyssey-glow-one { top: 5%; left: -220px; background: #7d48ff; }
.odyssey-glow-two { top: 30%; right: -250px; background: #26c9ff; }

/* Header bridge */
.odyssey-header { position: sticky; top: 0; z-index: 1040; }

.odyssey-account-strip {
    border-bottom: 1px solid rgba(255,255,255,.06);
    background: rgba(3, 5, 11, .88);
    color: var(--odyssey-muted);
    font-size: .78rem;
}

.odyssey-account-strip__inner {
    display: flex;
    min-height: 36px;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.odyssey-account-strip__right,
.odyssey-notifications { display: flex; align-items: center; gap: 10px; }

.odyssey-strip-button,
.odyssey-strip-account {
    display: inline-flex;
    min-height: 30px;
    align-items: center;
    gap: 7px;
    padding: 0 9px;
    border: 0;
    background: transparent;
    color: #c4cce0;
    font: inherit;
}

.odyssey-strip-button:hover,
.odyssey-strip-account:hover { color: var(--odyssey-cyan); }

.odyssey-notification-count {
    display: inline-grid;
    min-width: 18px;
    height: 18px;
    place-items: center;
    padding: 0 4px;
    border-radius: 999px;
    background: var(--odyssey-gradient);
    color: #fff;
    font-size: .68rem;
    font-weight: 800;
}

.odyssey-navbar-wrap {
    position: relative;
    z-index: 1030;
    padding: 16px 0 0;
}

.odyssey-navbar {
    display: flex;
    min-height: 70px;
    align-items: center;
    justify-content: space-between;
    padding: 0 18px 0 20px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 16px;
    background: rgba(6,8,15,.78);
    box-shadow: 0 20px 60px rgba(0,0,0,.25);
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
}

.odyssey-brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
    color: #fff !important;
}

.odyssey-brand__logo {
    width: 54px;
    height: 38px;
    flex-shrink: 0;
    object-fit: contain;
    filter: drop-shadow(0 0 14px rgba(42,174,238,.28));
}

.odyssey-brand__text {
    display: flex;
    align-items: baseline;
    gap: 5px;
    color: #fff;
    font-family: 'Space Grotesk', sans-serif;
    font-size: 1.1rem;
    letter-spacing: -.025em;
}
.odyssey-brand__text strong { font-weight: 700; }
.odyssey-brand__text span { color: var(--odyssey-cyan); font-weight: 500; }

.odyssey-navbar__collapse { flex: 1; }
.odyssey-navbar__links { display: flex; align-items: center; justify-content: flex-end; gap: 6px; }

.odyssey-navbar__link,
.odyssey-account-button {
    position: relative;
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    gap: 7px;
    padding: 0 12px;
    border: 0;
    background: transparent;
    color: #aab3c8 !important;
    font-size: .9rem;
    font-weight: 650;
    white-space: nowrap;
}
.odyssey-navbar__link:hover,
.odyssey-account-button:hover { color: #fff !important; }

.odyssey-cart-button {
    position: relative;
    display: inline-grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 11px;
    background: rgba(255,255,255,.025);
    color: #dce2f3 !important;
}
.odyssey-cart-button:hover { border-color: var(--odyssey-border-hover); background: rgba(101,230,255,.06); }
.odyssey-cart-count {
    position: absolute;
    top: -5px;
    right: -5px;
    display: grid;
    min-width: 18px;
    height: 18px;
    place-items: center;
    padding: 0 4px;
    border: 2px solid #070a12;
    border-radius: 999px;
    background: var(--odyssey-gradient);
    color: #fff;
    font-size: .64rem;
    font-weight: 800;
}

.odyssey-button {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 22px;
    border: 1px solid transparent;
    border-radius: 12px;
    cursor: pointer;
    font-weight: 750;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.odyssey-button:hover { transform: translateY(-2px); color: #fff !important; }
.odyssey-button--primary { background: var(--odyssey-gradient); box-shadow: 0 12px 36px rgba(87,104,255,.28); color: #fff !important; }
.odyssey-button--primary:hover { box-shadow: 0 16px 44px rgba(83,174,255,.36); }
.odyssey-button--ghost { border-color: rgba(255,255,255,.13); background: rgba(255,255,255,.025); color: #e7ebff !important; }
.odyssey-button--ghost:hover { border-color: var(--odyssey-border-hover); background: rgba(101,230,255,.06); }
.odyssey-navbar__cta { min-height: 42px; margin-left: 4px; padding: 0 17px; font-size: .86rem; }

.odyssey-menu-toggle {
    display: none;
    width: 44px;
    height: 44px;
    padding: 8px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 10px;
    background: rgba(255,255,255,.03);
}
.odyssey-menu-toggle span { display: block; width: 19px; height: 2px; margin: 4px auto; border-radius: 999px; background: #fff; }

.odyssey-whmcs .dropdown-menu {
    min-width: 220px;
    padding: 8px;
    border: 1px solid var(--odyssey-border);
    border-radius: 14px;
    background: rgba(10,14,26,.98);
    box-shadow: var(--odyssey-shadow);
}
.odyssey-whmcs .dropdown-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 9px;
    color: #c8d0e3;
    font-size: .88rem;
}
.odyssey-whmcs .dropdown-item:hover,
.odyssey-whmcs .dropdown-item:focus { background: rgba(101,230,255,.07); color: #fff; }
.odyssey-whmcs .dropdown-divider { border-color: rgba(255,255,255,.08); }
.odyssey-whmcs .odyssey-logout-link { color: #ff9aaa; }

/* Main content */
.odyssey-main-body { min-height: 62vh; padding: 38px 0 92px; }
.odyssey-main-body > .container > .row { align-items: flex-start; }
.primary-content { color: var(--odyssey-text); }

.odyssey-breadcrumb {
    margin-top: 16px;
    border: 0 !important;
    background: transparent !important;
}
.odyssey-breadcrumb .breadcrumb {
    margin: 0;
    padding: 15px 18px;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 13px;
    background: rgba(255,255,255,.018);
}
.odyssey-breadcrumb .breadcrumb-item,
.odyssey-breadcrumb .breadcrumb-item a { color: #8f99b0; font-size: .78rem; }
.odyssey-breadcrumb .breadcrumb-item.active { color: #e7ebf7; }
.odyssey-breadcrumb .breadcrumb-item + .breadcrumb-item::before { color: #59637a; }

.odyssey-whmcs .header-lined { padding: 0 0 26px; border-bottom: 1px solid rgba(255,255,255,.08); }
.odyssey-whmcs .header-lined h1 { margin-bottom: 8px; font-size: clamp(2rem, 4vw, 3.2rem) !important; }
.odyssey-whmcs .header-lined p { margin: 0; }

/* Generic glass surfaces */
.odyssey-whmcs .card,
.odyssey-whmcs .panel,
.odyssey-whmcs .modal-content,
.odyssey-whmcs .well,
.odyssey-whmcs .list-group-item,
.odyssey-whmcs .invoice-container,
.odyssey-whmcs .domain-pricing .tld-pricing-header,
.odyssey-whmcs .ticket-reply,
.odyssey-whmcs .view-ticket .posted-by,
.odyssey-whmcs .view-ticket .message {
    border: 1px solid var(--odyssey-border);
    border-radius: var(--odyssey-radius);
    background: linear-gradient(145deg, rgba(18,23,42,.82), rgba(8,11,21,.68));
    color: var(--odyssey-text);
    box-shadow: 0 20px 55px rgba(0,0,0,.22);
}

.odyssey-whmcs .card { overflow: hidden; }
.odyssey-whmcs .card-header,
.odyssey-whmcs .panel-heading {
    padding: 17px 20px;
    border-bottom: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.025) !important;
    color: #fff;
}
.odyssey-whmcs .card-body,
.odyssey-whmcs .panel-body { color: #c7cfe0; }
.odyssey-whmcs .card-footer,
.odyssey-whmcs .panel-footer { border-top: 1px solid rgba(255,255,255,.07); background: rgba(255,255,255,.018); }
.odyssey-whmcs .card-title,
.odyssey-whmcs .panel-title { color: #fff; }
.odyssey-whmcs .list-group-item { margin-bottom: 3px; border-radius: 10px !important; box-shadow: none; }
.odyssey-whmcs .list-group-item-action:hover { border-color: var(--odyssey-border-hover); background: rgba(101,230,255,.06); color: #fff; }
.odyssey-whmcs .list-group-item.active { border-color: transparent; background: var(--odyssey-gradient); color: #fff; }

/* Buttons */
.odyssey-whmcs .btn {
    min-height: 42px;
    border-radius: 10px;
    font-weight: 700;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
}
.odyssey-whmcs .btn:hover { transform: translateY(-1px); }
.odyssey-whmcs .btn-primary,
.odyssey-whmcs .btn-success,
.odyssey-whmcs .btn-info {
    border-color: transparent !important;
    background: var(--odyssey-gradient) !important;
    color: #fff !important;
    box-shadow: 0 10px 28px rgba(73,118,255,.22);
}
.odyssey-whmcs .btn-default,
.odyssey-whmcs .btn-secondary,
.odyssey-whmcs .btn-outline-primary {
    border-color: rgba(255,255,255,.13) !important;
    background: rgba(255,255,255,.035) !important;
    color: #e8ecf8 !important;
}
.odyssey-whmcs .btn-default:hover,
.odyssey-whmcs .btn-secondary:hover,
.odyssey-whmcs .btn-outline-primary:hover { border-color: var(--odyssey-border-hover) !important; background: rgba(101,230,255,.07) !important; }
.odyssey-whmcs .btn-danger { border-color: rgba(255,107,129,.35); background: rgba(255,107,129,.12); color: #ff9aaa; }
.odyssey-whmcs .btn-warning { border-color: rgba(255,196,92,.35); background: rgba(255,196,92,.12); color: #ffd58b; }
.odyssey-whmcs .btn-sm { min-height: 35px; border-radius: 8px; }
.odyssey-whmcs .btn-xs { min-height: 30px; border-radius: 7px; }

/* Forms */
.odyssey-whmcs .form-control,
.odyssey-whmcs .custom-select,
.odyssey-whmcs select,
.odyssey-whmcs textarea,
.odyssey-whmcs input[type='text'],
.odyssey-whmcs input[type='email'],
.odyssey-whmcs input[type='password'],
.odyssey-whmcs input[type='number'],
.odyssey-whmcs input[type='tel'],
.odyssey-whmcs input[type='url'] {
    min-height: 44px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 10px;
    background-color: rgba(3,6,14,.75) !important;
    color: #f7f9ff !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.025);
}
.odyssey-whmcs textarea.form-control { min-height: 130px; }
.odyssey-whmcs .form-control:focus,
.odyssey-whmcs .custom-select:focus,
.odyssey-whmcs select:focus,
.odyssey-whmcs textarea:focus,
.odyssey-whmcs input:focus {
    border-color: rgba(101,230,255,.65);
    box-shadow: 0 0 0 3px rgba(101,230,255,.1);
}
.odyssey-whmcs .form-control::placeholder { color: #687289; }
.odyssey-whmcs label { color: #cbd2e2; font-weight: 600; }
.odyssey-whmcs .input-group-text { border-color: rgba(255,255,255,.12); background: rgba(255,255,255,.05); color: #aeb8cf; }
.odyssey-whmcs .custom-control-label::before { border-color: rgba(255,255,255,.18); background: #090d17; }
.odyssey-whmcs .custom-control-input:checked ~ .custom-control-label::before { border-color: var(--odyssey-blue); background: var(--odyssey-gradient); }

/* Alerts and badges */
.odyssey-whmcs .alert { border: 1px solid rgba(255,255,255,.1); border-radius: 13px; background: rgba(255,255,255,.045); color: #e7ebf6; }
.odyssey-whmcs .alert-info { border-color: rgba(101,230,255,.24); background: rgba(101,230,255,.07); }
.odyssey-whmcs .alert-success { border-color: rgba(89,241,189,.24); background: rgba(89,241,189,.07); }
.odyssey-whmcs .alert-warning { border-color: rgba(255,196,92,.26); background: rgba(255,196,92,.08); }
.odyssey-whmcs .alert-danger { border-color: rgba(255,107,129,.25); background: rgba(255,107,129,.08); }
.odyssey-whmcs .badge { padding: 5px 8px; border-radius: 999px; font-weight: 750; }
.odyssey-whmcs .badge-info,
.odyssey-whmcs .badge-primary { background: rgba(101,230,255,.14); color: var(--odyssey-cyan); }
.odyssey-whmcs .badge-success { background: rgba(89,241,189,.13); color: var(--odyssey-green); }
.odyssey-whmcs .badge-warning { background: rgba(255,196,92,.13); color: #ffd58b; }
.odyssey-whmcs .badge-danger { background: rgba(255,107,129,.13); color: #ff9aaa; }

/* Tables */
.odyssey-table-wrapper,
.odyssey-whmcs .table-responsive {
    overflow: hidden;
    margin-bottom: 22px;
    border: 1px solid var(--odyssey-border);
    border-radius: 15px;
    background: rgba(9,13,24,.68);
}
.odyssey-whmcs .table { margin-bottom: 0; color: #c8d0e1; }
.odyssey-whmcs .table thead th,
.odyssey-whmcs .table thead td {
    border: 0;
    border-bottom: 1px solid rgba(255,255,255,.09);
    background: rgba(255,255,255,.035);
    color: #f4f6fc;
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.odyssey-whmcs .table td,
.odyssey-whmcs .table th { padding: 14px 15px; border-top-color: rgba(255,255,255,.065); vertical-align: middle; }
.odyssey-whmcs .table-hover tbody tr:hover { background: rgba(101,230,255,.035); color: #fff; }
.odyssey-whmcs .dataTables_wrapper .dataTables_info,
.odyssey-whmcs .dataTables_wrapper .dataTables_length,
.odyssey-whmcs .dataTables_wrapper .dataTables_filter { color: var(--odyssey-muted); }

/* Sidebar */
.odyssey-sidebar .card,
.odyssey-sidebar .panel { margin-bottom: 18px; border-radius: 15px; }
.odyssey-sidebar .card-header,
.odyssey-sidebar .panel-heading { padding: 15px 17px; }
.odyssey-sidebar .list-group { padding: 7px; }
.odyssey-sidebar .list-group-item { padding: 11px 12px; border: 0; background: transparent; color: #aeb8ce; }
.odyssey-sidebar .list-group-item:hover { background: rgba(101,230,255,.06); color: #fff; }
.odyssey-sidebar .list-group-item.active { background: linear-gradient(135deg, rgba(155,109,255,.28), rgba(78,141,255,.24)); color: #fff; }

/* Portal homepage */
.odyssey-portal-hero {
    display: grid;
    min-height: 590px;
    grid-template-columns: 1.05fr .95fr;
    align-items: center;
    gap: 72px;
    padding: 60px 0 86px;
}
.odyssey-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    color: var(--odyssey-cyan);
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.odyssey-eyebrow::before { content: ''; width: 24px; height: 1px; background: linear-gradient(90deg, transparent, var(--odyssey-cyan)); }
.odyssey-portal-hero h1 {
    max-width: 680px;
    margin-bottom: 23px;
    font-size: clamp(3rem, 6vw, 5.4rem);
    line-height: .99;
    letter-spacing: -.062em;
}
.odyssey-portal-hero h1 span { background: var(--odyssey-gradient); -webkit-background-clip: text; background-clip: text; color: transparent; }
.odyssey-portal-hero__content > p { max-width: 650px; margin-bottom: 32px; font-size: 1.03rem; line-height: 1.75; }
.odyssey-portal-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.odyssey-trust-line { display: flex; align-items: center; gap: 10px; margin-top: 26px; color: #98a4ba; font-size: .84rem; }
.odyssey-trust-line span { width: 8px; height: 8px; border-radius: 50%; background: var(--odyssey-green); box-shadow: 0 0 16px rgba(89,241,189,.85); }
.odyssey-portal-hero__visual { position: relative; min-height: 430px; display: grid; place-items: center; }
.odyssey-portal-hero__visual::before { content: ''; position: absolute; width: 390px; height: 390px; border-radius: 50%; background: radial-gradient(circle, rgba(80,135,255,.24), transparent 65%); }
.odyssey-portal-logo { position: relative; z-index: 2; width: min(390px, 82%); filter: drop-shadow(0 0 28px rgba(57,183,238,.28)) drop-shadow(0 24px 54px rgba(26,99,210,.24)); animation: odyssey-float 5s ease-in-out infinite; }
@keyframes odyssey-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-12px); } }
.odyssey-orbit { position: absolute; z-index: 3; width: 390px; height: 145px; border: 1px solid rgba(144,173,255,.32); border-radius: 50%; transform: rotate(-23deg); }
.odyssey-orbit span { position: absolute; top: 42%; left: -5px; width: 12px; height: 12px; border-radius: 50%; background: var(--odyssey-cyan); box-shadow: 0 0 18px var(--odyssey-cyan); }
.odyssey-orbit--two { width: 490px; height: 200px; border-color: rgba(181,116,255,.21); transform: rotate(28deg); }
.odyssey-orbit--two span { top: 20%; right: 22px; left: auto; width: 7px; height: 7px; background: var(--odyssey-purple); box-shadow: 0 0 18px var(--odyssey-purple); }
.odyssey-status-card { position: absolute; z-index: 5; right: 0; bottom: 25px; display: grid; min-width: 210px; gap: 7px; padding: 17px 19px; border: 1px solid var(--odyssey-border); border-radius: 14px; background: rgba(10,14,27,.78); box-shadow: var(--odyssey-shadow); backdrop-filter: blur(18px); }
.odyssey-status-card small { font-size: .68rem; letter-spacing: .08em; }
.odyssey-status-card strong { color: var(--odyssey-green); font-size: .77rem; letter-spacing: .07em; }
.odyssey-status-card strong i { display: inline-block; width: 7px; height: 7px; margin-right: 7px; border-radius: 50%; background: var(--odyssey-green); box-shadow: 0 0 12px rgba(89,241,189,.8); }

.odyssey-home-section { padding: 86px 0; }
.odyssey-home-section--support { border-top: 1px solid rgba(255,255,255,.06); }
.odyssey-section-heading { max-width: 740px; margin-bottom: 38px; }
.odyssey-section-heading--center { margin-inline: auto; text-align: center; }
.odyssey-section-heading--center .odyssey-eyebrow::before { display: none; }
.odyssey-section-heading h2 { margin-bottom: 17px; font-size: clamp(2.1rem, 4vw, 3.4rem); line-height: 1.08; letter-spacing: -.045em; }
.odyssey-section-heading p { margin: 0; font-size: .98rem; line-height: 1.75; }
.odyssey-product-groups { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; }
.odyssey-solution-card,
.odyssey-action-card {
    position: relative;
    min-height: 250px;
    padding: 28px;
    overflow: hidden;
    border: 1px solid var(--odyssey-border);
    border-radius: 18px;
    background: linear-gradient(145deg, rgba(18,23,42,.8), rgba(8,11,21,.62));
    box-shadow: var(--odyssey-shadow);
    backdrop-filter: blur(18px);
}
.odyssey-solution-card::before { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(135deg, rgba(255,255,255,.07), transparent 30%); }
.odyssey-solution-card:hover,
.odyssey-action-card:hover { transform: translateY(-6px); border-color: var(--odyssey-border-hover); box-shadow: 0 28px 80px rgba(25,38,94,.32); }
.odyssey-solution-card__icon { position: relative; z-index: 1; display: grid; width: 58px; height: 58px; place-items: center; margin-bottom: 24px; border: 1px solid rgba(101,230,255,.2); border-radius: 15px; background: linear-gradient(145deg, rgba(155,109,255,.18), rgba(101,230,255,.09)); color: var(--odyssey-cyan); font-size: 1.25rem; }
.odyssey-solution-card h3 { position: relative; z-index: 1; margin-bottom: 12px; font-size: 1.25rem; }
.odyssey-solution-card p { position: relative; z-index: 1; min-height: 52px; line-height: 1.65; }
.odyssey-card-link { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 8px; margin-top: 10px; color: var(--odyssey-cyan) !important; font-weight: 750; }
.odyssey-action-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }
.odyssey-action-card { display: flex; min-height: 220px; flex-direction: column; align-items: flex-start; color: #fff !important; }
.odyssey-action-card > i { display: grid; width: 52px; height: 52px; place-items: center; margin-bottom: 23px; border-radius: 14px; background: rgba(101,230,255,.08); color: var(--odyssey-cyan); font-size: 1.2rem; }
.odyssey-action-card strong { margin-bottom: 9px; font-family: 'Space Grotesk',sans-serif; font-size: 1.08rem; }
.odyssey-action-card span { color: var(--odyssey-muted); font-size: .86rem; line-height: 1.6; }

/* Dashboard */
.odyssey-dashboard-hero {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 32px;
    margin-bottom: 26px;
    padding: 34px;
    border: 1px solid var(--odyssey-border);
    border-radius: 20px;
    background: linear-gradient(120deg, rgba(155,109,255,.14), rgba(78,141,255,.08) 55%, rgba(101,230,255,.06));
    box-shadow: var(--odyssey-shadow);
}
.odyssey-dashboard-hero h1 { margin-bottom: 9px; font-size: clamp(2rem,4vw,3rem); }
.odyssey-dashboard-hero p { margin: 0; }
.odyssey-dashboard-hero__actions { display: flex; flex-wrap: wrap; gap: 10px; }

.odyssey-whmcs .tiles .tile {
    min-height: 150px;
    margin: 8px;
    padding: 23px 22px;
    overflow: hidden;
    border: 1px solid var(--odyssey-border);
    border-radius: 17px;
    background: linear-gradient(145deg, rgba(18,23,42,.82), rgba(8,11,21,.68));
    box-shadow: 0 18px 45px rgba(0,0,0,.2);
    color: #fff;
}
.odyssey-whmcs .tiles .tile:hover { transform: translateY(-5px); border-color: var(--odyssey-border-hover); }
.odyssey-whmcs .tiles .tile > i { color: var(--odyssey-cyan); font-size: 1.45rem; }
.odyssey-whmcs .tiles .tile .stat { color: #fff; font-family: 'Space Grotesk',sans-serif; font-size: 2.05rem; }
.odyssey-whmcs .tiles .tile .title { color: var(--odyssey-muted); }
.odyssey-whmcs .tiles .tile .highlight { height: 3px; background: var(--odyssey-gradient) !important; }
.odyssey-whmcs .client-home-cards .card { margin-bottom: 20px; }

/* Login and account */
.odyssey-whmcs .logincontainer { max-width: 520px; margin: 45px auto 20px; padding: 34px; border: 1px solid var(--odyssey-border); border-radius: 20px; background: linear-gradient(145deg, rgba(18,23,42,.86), rgba(8,11,21,.72)); box-shadow: var(--odyssey-shadow); }
.odyssey-whmcs .logincontainer h2 { font-size: 2rem; }
.odyssey-whmcs .logincontainer .btn { width: 100%; }

/* Invoice and ticket details */
.odyssey-whmcs .invoice-container { padding: 30px; }
.odyssey-whmcs .invoice-container .invoice-status { border-radius: 999px; }
.odyssey-whmcs .invoice-container .invoice-col { color: #c8d0e1; }
.odyssey-whmcs .invoice-container .total-row { background: rgba(255,255,255,.025); }
.odyssey-whmcs .ticket-reply { margin-bottom: 18px; overflow: hidden; }
.odyssey-whmcs .ticket-reply .date { color: var(--odyssey-muted); }
.odyssey-whmcs .ticket-reply.staff { border-color: rgba(101,230,255,.24); }

/* Pagination */
.odyssey-whmcs .page-link { border-color: rgba(255,255,255,.1); background: rgba(255,255,255,.025); color: #c8d0e1; }
.odyssey-whmcs .page-link:hover { border-color: var(--odyssey-border-hover); background: rgba(101,230,255,.06); color: #fff; }
.odyssey-whmcs .page-item.active .page-link { border-color: transparent; background: var(--odyssey-gradient); }
.odyssey-whmcs .page-item.disabled .page-link { background: rgba(255,255,255,.015); color: #59637a; }

/* Domain search bridge */
.odyssey-whmcs .domain-search { margin-top: 34px; background: transparent; }
.odyssey-whmcs .domain-search .container { padding-top: 34px; padding-bottom: 34px; border: 1px solid var(--odyssey-border); border-radius: 18px; background: rgba(10,14,26,.72); }

/* Footer bridge */
.odyssey-footer {
    position: relative;
    padding: 76px 0 24px;
    border-top: 1px solid rgba(255,255,255,.07);
    background: rgba(3,5,10,.72);
}
.odyssey-footer__grid { display: grid; grid-template-columns: 1.55fr repeat(3,1fr); gap: 58px; }
.odyssey-footer__brand-column p { max-width: 330px; margin-top: 20px; font-size: .9rem; line-height: 1.7; }
.odyssey-footer__column { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.odyssey-footer__column h3 { margin-bottom: 8px; font-size: .92rem; letter-spacing: .02em; }
.odyssey-footer__column a { color: #909bb2; font-size: .84rem; }
.odyssey-footer__column a:hover { color: #fff; transform: translateX(2px); }
.odyssey-footer__bottom { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 56px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.07); color: #687389; font-size: .76rem; }
.odyssey-footer__legal { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 18px; }
.odyssey-footer__legal a { color: #7f8aa1; }
.odyssey-language-button { padding: 0; border: 0; background: transparent; color: #7f8aa1; font: inherit; }
.odyssey-language-button:hover { color: var(--odyssey-cyan); }

/* Modal/localisation */
.odyssey-whmcs .modal-content { overflow: hidden; }
.odyssey-whmcs .modal-header,
.odyssey-whmcs .modal-footer { border-color: rgba(255,255,255,.08); }
.odyssey-whmcs .close { color: #fff; text-shadow: none; opacity: .8; }
.odyssey-whmcs .modal-localisation .item { border: 1px solid rgba(255,255,255,.1); border-radius: 9px; background: rgba(255,255,255,.025); color: #c5cee0; }
.odyssey-whmcs .modal-localisation .item.active,
.odyssey-whmcs .modal-localisation .item:hover { border-color: var(--odyssey-border-hover); background: rgba(101,230,255,.07); color: #fff; }

/* WHMCS utility corrections */
.odyssey-whmcs hr { border-color: rgba(255,255,255,.08); }
.odyssey-whmcs code { color: #ff99ee; }
.odyssey-whmcs pre { border: 1px solid var(--odyssey-border); border-radius: 12px; background: #060910; color: #dce4f6; }
.odyssey-whmcs .bg-white,
.odyssey-whmcs .bg-light,
.odyssey-whmcs .bg-default { background: rgba(14,18,32,.82) !important; }
.odyssey-whmcs .text-dark,
.odyssey-whmcs .text-black { color: #f2f5fc !important; }
.odyssey-whmcs .popover { border: 1px solid var(--odyssey-border); border-radius: 12px; background: #0b0f1c; color: #dbe2f2; box-shadow: var(--odyssey-shadow); }
.odyssey-whmcs .popover-header { border-bottom-color: rgba(255,255,255,.08); background: rgba(255,255,255,.04); color: #fff; }
.odyssey-whmcs .popover-body { color: #c5cde0; }
.odyssey-whmcs #fullpage-overlay { background: rgba(3,5,10,.88); }

@media (max-width: 1199.98px) {
    .odyssey-menu-toggle { display: block; }
    .odyssey-navbar__collapse { position: absolute; top: calc(100% + 10px); right: 15px; left: 15px; padding: 12px; border: 1px solid var(--odyssey-border); border-radius: 15px; background: rgba(7,10,19,.98); box-shadow: var(--odyssey-shadow); }
    .odyssey-navbar__links { flex-direction: column; align-items: stretch; }
    .odyssey-navbar__link,
    .odyssey-account-button { width: 100%; justify-content: flex-start; padding: 0 13px; border-radius: 9px; }
    .odyssey-navbar__link:hover,
    .odyssey-account-button:hover { background: rgba(101,230,255,.05); }
    .odyssey-account-dropdown { width: 100%; }
    .odyssey-cart-button { width: 100%; display: flex; justify-content: flex-start; gap: 8px; padding: 0 13px; }
    .odyssey-cart-button::after { content: 'Carrinho'; font-size: .9rem; font-weight: 650; }
    .odyssey-cart-count { position: static; margin-left: auto; border: 0; }
    .odyssey-navbar__cta { width: 100%; margin: 4px 0 0; }
    .odyssey-portal-hero { grid-template-columns: 1fr; gap: 25px; }
    .odyssey-portal-hero__content { text-align: center; }
    .odyssey-portal-hero__content > p { margin-inline: auto; }
    .odyssey-portal-hero__actions,
    .odyssey-trust-line { justify-content: center; }
    .odyssey-portal-hero__visual { min-height: 380px; }
    .odyssey-product-groups { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .odyssey-action-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .odyssey-footer__grid { grid-template-columns: 1.4fr repeat(2,1fr); }
    .odyssey-footer__column:last-child { grid-column: 2 / 4; }
}

@media (max-width: 767.98px) {
    .odyssey-account-strip__inner { min-height: 34px; }
    .odyssey-account-strip__right > span { display: none !important; }
    .odyssey-navbar-wrap { padding-top: 10px; }
    .odyssey-navbar { min-height: 62px; padding: 0 12px 0 14px; border-radius: 13px; }
    .odyssey-brand__logo { width: 45px; height: 32px; }
    .odyssey-brand__text { font-size: 1rem; }
    .odyssey-main-body { padding-top: 25px; padding-bottom: 65px; }
    .odyssey-portal-hero { min-height: auto; padding: 45px 0 65px; }
    .odyssey-portal-hero h1 { font-size: clamp(2.7rem,13vw,4rem); }
    .odyssey-portal-hero__visual { min-height: 320px; }
    .odyssey-orbit { width: 310px; height: 118px; }
    .odyssey-orbit--two { width: 380px; height: 155px; }
    .odyssey-status-card { right: 2%; bottom: 0; min-width: 185px; }
    .odyssey-home-section { padding: 62px 0; }
    .odyssey-product-groups,
    .odyssey-action-grid { grid-template-columns: 1fr; }
    .odyssey-dashboard-hero { align-items: flex-start; flex-direction: column; padding: 25px; }
    .odyssey-dashboard-hero__actions { width: 100%; }
    .odyssey-dashboard-hero__actions .odyssey-button { flex: 1 1 160px; }
    .odyssey-whmcs .tiles .tile { margin: 5px; }
    .odyssey-footer { padding-top: 56px; }
    .odyssey-footer__grid { grid-template-columns: repeat(2,1fr); gap: 38px 28px; }
    .odyssey-footer__brand-column { grid-column: 1 / -1; }
    .odyssey-footer__column:last-child { grid-column: auto; }
    .odyssey-footer__bottom { align-items: flex-start; flex-direction: column; }
    .odyssey-footer__legal { justify-content: flex-start; }
    .odyssey-whmcs .invoice-container { padding: 20px; }
}

@media (max-width: 479.98px) {
    .odyssey-brand__text { display: none; }
    .odyssey-portal-hero__actions .odyssey-button { width: 100%; }
    .odyssey-portal-hero__visual { min-height: 270px; }
    .odyssey-orbit { width: 265px; height: 100px; }
    .odyssey-orbit--two { width: 320px; height: 132px; }
    .odyssey-status-card { display: none; }
    .odyssey-footer__grid { grid-template-columns: 1fr; }
    .odyssey-footer__brand-column { grid-column: auto; }
    .odyssey-whmcs .header-lined h1 { font-size: 1.8rem !important; }
}

@media print {
    .odyssey-header,
    .odyssey-footer,
    .odyssey-breadcrumb,
    .odyssey-space-background { display: none !important; }
    body.odyssey-whmcs { background: #fff !important; color: #111 !important; }
    .odyssey-main-body { padding: 0; }
    .odyssey-whmcs .invoice-container { border: 0; background: #fff; box-shadow: none; }
}

/* ========================================================================== 
   Odyssey Cloud — Cart contrast and readability patch v2
   WHMCS 8.13 / Standard Cart
   ========================================================================== */

#order-standard_cart,
#order-standard_cart .cart-body,
#order-standard_cart .secondary-cart-body,
#order-standard_cart .secondary-cart-sidebar {
    color: #eef3ff !important;
}

/* Product list */
#order-standard_cart .view-cart-items-header {
    padding: 11px 16px !important;
    border: 1px solid rgba(101, 230, 255, .28) !important;
    border-bottom: 0 !important;
    border-radius: 14px 14px 0 0 !important;
    background: linear-gradient(135deg, #17243f, #0c5d83) !important;
    color: #ffffff !important;
    font-weight: 750 !important;
    letter-spacing: .01em;
}

#order-standard_cart .view-cart-items {
    overflow: hidden;
    margin-bottom: 24px !important;
    border: 1px solid rgba(151, 167, 255, .2) !important;
    border-top: 0 !important;
    border-bottom: 1px solid rgba(101, 230, 255, .28) !important;
    border-radius: 0 0 14px 14px !important;
    background: #0c1120 !important;
    box-shadow: 0 18px 48px rgba(0, 0, 0, .26);
}

#order-standard_cart .view-cart-items .item,
#order-standard_cart .view-cart-items .item:nth-child(even) {
    margin: 0 !important;
    padding: 15px 16px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, .075) !important;
    background: linear-gradient(135deg, rgba(18, 25, 45, .98), rgba(12, 17, 31, .98)) !important;
    color: #edf2ff !important;
}

#order-standard_cart .view-cart-items .item:nth-child(even) {
    background: linear-gradient(135deg, rgba(23, 31, 54, .98), rgba(14, 20, 36, .98)) !important;
}

#order-standard_cart .view-cart-items .item:last-child {
    border-bottom: 0 !important;
}

#order-standard_cart .view-cart-items .item,
#order-standard_cart .view-cart-items .item div,
#order-standard_cart .view-cart-items .item p,
#order-standard_cart .view-cart-items .item small,
#order-standard_cart .view-cart-items .item span:not(.caret) {
    color: #d8e0f1 !important;
}

#order-standard_cart .view-cart-items .item-title,
#order-standard_cart .view-cart-items .item-title > span,
#order-standard_cart .view-cart-items .item-price > span:first-child {
    color: #ffffff !important;
    font-weight: 750 !important;
}

#order-standard_cart .view-cart-items .item-title {
    margin-bottom: 4px;
    font-size: 1.12rem !important;
    line-height: 1.35;
}

#order-standard_cart .view-cart-items .item-group,
#order-standard_cart .view-cart-items .item-price .cycle,
#order-standard_cart .view-cart-items .item small {
    color: #9da9c2 !important;
}

#order-standard_cart .view-cart-items .item-domain {
    color: #65e6ff !important;
    font-weight: 650;
}

#order-standard_cart .view-cart-items .item-price {
    color: #ffffff !important;
    font-weight: 700;
}

#order-standard_cart .view-cart-items .item-price > span:first-child {
    font-family: 'Space Grotesk', 'Inter', sans-serif;
    font-size: 1.05rem !important;
}

#order-standard_cart .view-cart-items .btn-link,
#order-standard_cart .view-cart-items a {
    color: #6fe8ff !important;
}

#order-standard_cart .view-cart-items .btn-link:hover,
#order-standard_cart .view-cart-items a:hover {
    color: #ffffff !important;
}

#order-standard_cart .btn-remove-from-cart,
#order-standard_cart .btn-remove-from-cart i {
    color: #ff8da0 !important;
}

#order-standard_cart .btn-remove-from-cart:hover,
#order-standard_cart .btn-remove-from-cart:hover i {
    color: #ff506d !important;
}

#order-standard_cart .empty-cart .btn {
    border-radius: 0 0 10px 10px !important;
    background: linear-gradient(135deg, #126d98, #1286b6) !important;
    color: #ffffff !important;
}

/* Coupon and tax tabs */
#order-standard_cart .view-cart-tabs {
    overflow: hidden;
    border: 1px solid rgba(151, 167, 255, .18);
    border-radius: 15px;
    background: rgba(10, 14, 26, .92) !important;
    box-shadow: 0 18px 48px rgba(0, 0, 0, .2);
}

#order-standard_cart .view-cart-tabs .nav-tabs {
    margin: 0 !important;
    padding: 10px 12px 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, .08) !important;
    background: rgba(255, 255, 255, .018) !important;
}

#order-standard_cart .view-cart-tabs .nav-tabs .nav-link,
#order-standard_cart .view-cart-tabs .nav-tabs a {
    border: 1px solid transparent !important;
    background: transparent !important;
    color: #aeb9cf !important;
}

#order-standard_cart .view-cart-tabs .nav-tabs a[aria-selected="true"],
#order-standard_cart .view-cart-tabs .nav-tabs a[aria-expanded="true"],
#order-standard_cart .view-cart-tabs .nav-tabs .active .nav-link,
#order-standard_cart .view-cart-tabs .nav-tabs .nav-link.active {
    border-color: rgba(101, 230, 255, .24) !important;
    border-bottom-color: #101728 !important;
    background: #101728 !important;
    color: #ffffff !important;
}

#order-standard_cart .view-cart-tabs .tab-content,
#order-standard_cart .view-cart-tabs .tab-pane,
#order-standard_cart .view-cart-tabs .promo {
    border: 0 !important;
    background: #101728 !important;
    color: #dbe3f3 !important;
}

#order-standard_cart .view-cart-tabs .tab-content {
    padding: 18px !important;
}

#order-standard_cart .view-cart-promotion-code {
    border: 1px dashed rgba(101, 230, 255, .28) !important;
    border-radius: 11px !important;
    background: rgba(101, 230, 255, .055) !important;
    color: #eaf4ff !important;
}

#order-standard_cart .view-cart-tabs .form-control,
#order-standard_cart .view-cart-tabs .field {
    border-color: rgba(255, 255, 255, .14) !important;
    background: #070b14 !important;
    color: #ffffff !important;
}

#order-standard_cart .view-cart-tabs .form-control::placeholder,
#order-standard_cart .view-cart-tabs .field::placeholder {
    color: #7f8aa3 !important;
    opacity: 1;
}

#order-standard_cart .view-cart-tabs .field-icon,
#order-standard_cart .view-cart-tabs .field-icon i {
    color: #8290aa !important;
}

/* Order summary */
#order-standard_cart .order-summary {
    overflow: hidden;
    border: 1px solid rgba(151, 167, 255, .2) !important;
    border-bottom: 1px solid rgba(101, 230, 255, .28) !important;
    border-radius: 16px !important;
    background: #0b101d !important;
    box-shadow: 0 24px 60px rgba(0, 0, 0, .3) !important;
}

#order-standard_cart .order-summary h2 {
    padding: 15px 16px !important;
    border-bottom: 1px solid rgba(255, 255, 255, .09) !important;
    background: linear-gradient(135deg, #202b49, #124f70) !important;
    color: #ffffff !important;
    font-family: 'Space Grotesk', 'Inter', sans-serif;
    font-size: 1.15rem !important;
    font-weight: 700 !important;
}

#order-standard_cart .order-summary .summary-container {
    padding: 18px !important;
    border-radius: 0 !important;
    background: linear-gradient(155deg, #101728, #0a0f1c) !important;
    color: #dfe7f6 !important;
}

#order-standard_cart .order-summary .summary-container,
#order-standard_cart .order-summary .summary-container div,
#order-standard_cart .order-summary .summary-container span,
#order-standard_cart .order-summary .summary-container p {
    color: #dfe7f6 !important;
}

#order-standard_cart .order-summary .subtotal,
#order-standard_cart .order-summary .bordered-totals,
#order-standard_cart .order-summary .summary-totals,
#order-standard_cart .order-summary .recurring-totals {
    border-color: rgba(255, 255, 255, .1) !important;
}

#order-standard_cart .order-summary .subtotal,
#order-standard_cart .order-summary .recurring-totals {
    padding: 9px 0 !important;
}

#order-standard_cart .order-summary .recurring-charges,
#order-standard_cart .order-summary .recurring-charges span {
    color: #aeb9cf !important;
}

#order-standard_cart .order-summary .recurring-charges .cost {
    color: #ffffff !important;
    font-weight: 700;
}

#order-standard_cart .order-summary .total-due-today {
    margin: 18px 0 !important;
    padding: 16px !important;
    border: 1px solid rgba(101, 230, 255, .18) !important;
    border-radius: 13px;
    background: linear-gradient(135deg, rgba(78, 141, 255, .13), rgba(101, 230, 255, .055)) !important;
}

#order-standard_cart .order-summary .total-due-today .amt,
#order-standard_cart .total-due-today .amt {
    color: #65e6ff !important;
    font-family: 'Space Grotesk', 'Inter', sans-serif;
    font-size: 2rem !important;
    font-weight: 750 !important;
    text-shadow: 0 0 25px rgba(101, 230, 255, .16);
}

#order-standard_cart .order-summary .btn-continue-shopping,
#order-standard_cart .order-summary .btn-link {
    color: #aeb9cf !important;
}

#order-standard_cart .order-summary .btn-continue-shopping:hover,
#order-standard_cart .order-summary .btn-link:hover {
    color: #65e6ff !important;
}

#order-standard_cart .view-cart-gateway-checkout {
    border: 1px solid rgba(151, 167, 255, .16) !important;
    background: #101728 !important;
    color: #ffffff !important;
}

/* Checkout surfaces that inherit the same legacy light backgrounds */
#order-standard_cart .apply-credit-container,
#order-standard_cart .cc-input-container,
#order-standard_cart .account-select-container div.account,
#order-standard_cart .product-recommendations .product-recommendation,
#order-standard_cart .product-recommendations .product-recommendation .body {
    border-color: rgba(151, 167, 255, .18) !important;
    background: #101728 !important;
    color: #dfe7f6 !important;
}

#order-standard_cart .cc-input-container .existing-cc-grid,
#order-standard_cart .product-recommendations .product-recommendation .headline,
#order-standard_cart .product-recommendations .product-recommendation .tagline {
    color: #dfe7f6 !important;
}

/* Make selection readable without being required to reveal the text. */
#order-standard_cart ::selection {
    background: rgba(78, 141, 255, .72);
    color: #ffffff;
}

@media (max-width: 767.98px) {
    #order-standard_cart .view-cart-items .item {
        padding: 14px !important;
    }

    #order-standard_cart .view-cart-items .item-price {
        margin-top: 10px;
        text-align: left !important;
    }

    #order-standard_cart .order-summary .summary-container {
        padding: 15px !important;
    }
}

/* =========================================================
   Odyssey Cloud standalone website + client portal
   ========================================================= */
.odyssey-standalone-hero { min-height: 650px; }

.odyssey-hero-metrics {
    display: grid;
    max-width: 650px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 34px;
}
.odyssey-hero-metrics > div {
    display: flex;
    min-height: 82px;
    flex-direction: column;
    justify-content: center;
    padding: 14px 16px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 13px;
    background: rgba(255,255,255,.022);
    backdrop-filter: blur(16px);
}
.odyssey-hero-metrics strong {
    color: #fff;
    font-family: 'Space Grotesk', sans-serif;
    font-size: 1.05rem;
}
.odyssey-hero-metrics small { margin-top: 4px; color: #7f8aa1; font-size: .7rem; }

.odyssey-home-section--bordered { border-top: 1px solid rgba(255,255,255,.06); }
.odyssey-about-grid,
.odyssey-code-grid,
.odyssey-faq-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr);
    align-items: center;
    gap: 70px;
}
.odyssey-about-section .odyssey-section-heading,
.odyssey-faq-section .odyssey-section-heading { margin-bottom: 0; }
.odyssey-about-section .odyssey-section-heading p + p { margin-top: 16px; }

.odyssey-infra-card {
    position: relative;
    overflow: hidden;
    padding: 27px;
    border: 1px solid var(--odyssey-border);
    border-radius: 21px;
    background: linear-gradient(145deg, rgba(18,23,42,.88), rgba(8,11,21,.72));
    box-shadow: var(--odyssey-shadow);
}
.odyssey-infra-card::before {
    content: '';
    position: absolute;
    top: -120px;
    right: -110px;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(101,230,255,.16), transparent 68%);
}
.odyssey-infra-card__header {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 13px;
    padding-bottom: 21px;
    border-bottom: 1px solid rgba(255,255,255,.08);
}
.odyssey-infra-card__pulse {
    width: 12px;
    height: 12px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--odyssey-green);
    box-shadow: 0 0 0 7px rgba(89,241,189,.08), 0 0 18px rgba(89,241,189,.75);
}
.odyssey-infra-card__header div { display: grid; gap: 2px; }
.odyssey-infra-card__header small { color: #77839b; font-size: .67rem; letter-spacing: .1em; }
.odyssey-infra-card__header strong { color: #fff; font-family: 'Space Grotesk', sans-serif; }
.odyssey-infra-card ul { position: relative; z-index: 1; display: grid; gap: 10px; margin: 20px 0 0; padding: 0; list-style: none; }
.odyssey-infra-card li { display: flex; align-items: center; gap: 14px; padding: 13px; border-radius: 13px; background: rgba(255,255,255,.025); }
.odyssey-infra-card li > i { display: grid; width: 39px; height: 39px; flex: 0 0 auto; place-items: center; border-radius: 11px; background: rgba(101,230,255,.07); color: var(--odyssey-cyan); }
.odyssey-infra-card li span { display: grid; gap: 2px; color: #8e99af; font-size: .78rem; }
.odyssey-infra-card li strong { color: #eaf0ff; font-size: .87rem; }

.odyssey-feature-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}
.odyssey-feature-card {
    min-height: 235px;
    padding: 26px;
    border: 1px solid var(--odyssey-border);
    border-radius: 18px;
    background: linear-gradient(145deg, rgba(18,23,42,.78), rgba(8,11,21,.61));
    box-shadow: 0 18px 50px rgba(0,0,0,.18);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.odyssey-feature-card:hover { transform: translateY(-5px); border-color: var(--odyssey-border-hover); box-shadow: 0 27px 70px rgba(25,38,94,.28); }
.odyssey-feature-card__icon { display: grid; width: 51px; height: 51px; place-items: center; margin-bottom: 21px; border: 1px solid rgba(101,230,255,.18); border-radius: 14px; background: linear-gradient(145deg, rgba(155,109,255,.16), rgba(101,230,255,.07)); color: var(--odyssey-cyan); }
.odyssey-feature-card h3 { margin-bottom: 10px; font-size: 1.12rem; }
.odyssey-feature-card p { margin: 0; color: var(--odyssey-muted); font-size: .86rem; line-height: 1.7; }

.odyssey-plans-section .odyssey-product-groups { grid-template-columns: repeat(auto-fit, minmax(255px, 1fr)); }
.odyssey-plans-cta,
.odyssey-support-cta,
.odyssey-empty-plans {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    margin-top: 26px;
    padding: 27px 29px;
    border: 1px solid rgba(101,230,255,.17);
    border-radius: 18px;
    background: linear-gradient(120deg, rgba(155,109,255,.11), rgba(78,141,255,.07) 55%, rgba(101,230,255,.05));
}
.odyssey-plans-cta .odyssey-eyebrow,
.odyssey-support-cta .odyssey-eyebrow { margin-bottom: 9px; }
.odyssey-plans-cta h3 { margin-bottom: 5px; font-size: 1.35rem; }
.odyssey-plans-cta p { margin: 0; }
.odyssey-empty-plans { justify-content: flex-start; }
.odyssey-empty-plans > i { color: var(--odyssey-cyan); font-size: 2rem; }
.odyssey-empty-plans > div { flex: 1; }
.odyssey-empty-plans h3 { margin-bottom: 4px; }
.odyssey-empty-plans p { margin: 0; }

.odyssey-code-section {
    position: relative;
    overflow: hidden;
    border-top: 1px solid rgba(255,255,255,.06);
    border-bottom: 1px solid rgba(255,255,255,.06);
}
.odyssey-code-section::before { content: ''; position: absolute; inset: 12% auto auto -170px; width: 380px; height: 380px; border-radius: 50%; background: radial-gradient(circle, rgba(155,109,255,.13), transparent 70%); }
.odyssey-code-grid { position: relative; z-index: 1; }
.odyssey-code-grid h2 { margin-bottom: 17px; font-size: clamp(2.1rem, 4vw, 3.4rem); letter-spacing: -.045em; }
.odyssey-code-grid p { max-width: 600px; margin-bottom: 22px; line-height: 1.75; }
.odyssey-language-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 13px; }
.odyssey-language-grid > div { display: grid; min-height: 155px; align-content: center; padding: 22px; border: 1px solid var(--odyssey-border); border-radius: 16px; background: rgba(11,15,28,.76); box-shadow: 0 16px 45px rgba(0,0,0,.18); }
.odyssey-language-grid i { margin-bottom: 13px; color: var(--odyssey-cyan); font-size: 1.5rem; }
.odyssey-language-grid strong { color: #fff; font-family: 'Space Grotesk', sans-serif; }
.odyssey-language-grid span { margin-top: 4px; color: #8490a8; font-size: .75rem; }

.odyssey-steps-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.odyssey-steps-grid article { position: relative; min-height: 245px; padding: 28px; overflow: hidden; border: 1px solid var(--odyssey-border); border-radius: 18px; background: linear-gradient(145deg, rgba(18,23,42,.78), rgba(8,11,21,.62)); }
.odyssey-steps-grid article > span { position: absolute; top: 13px; right: 18px; color: rgba(255,255,255,.055); font-family: 'Space Grotesk', sans-serif; font-size: 4.4rem; font-weight: 700; }
.odyssey-steps-grid article > i { display: grid; width: 52px; height: 52px; place-items: center; margin-bottom: 40px; border-radius: 14px; background: var(--odyssey-gradient); color: #fff; box-shadow: 0 12px 30px rgba(79,110,255,.24); }
.odyssey-steps-grid h3 { margin-bottom: 9px; }
.odyssey-steps-grid p { margin: 0; font-size: .84rem; line-height: 1.7; }

.odyssey-faq-list { display: grid; gap: 11px; }
.odyssey-faq-list details { border: 1px solid var(--odyssey-border); border-radius: 14px; background: rgba(12,16,29,.72); }
.odyssey-faq-list summary { position: relative; padding: 19px 50px 19px 20px; cursor: pointer; color: #eef2ff; font-family: 'Space Grotesk', sans-serif; font-weight: 600; list-style: none; }
.odyssey-faq-list summary::-webkit-details-marker { display: none; }
.odyssey-faq-list summary::after { content: '+'; position: absolute; top: 50%; right: 20px; transform: translateY(-50%); color: var(--odyssey-cyan); font-size: 1.3rem; }
.odyssey-faq-list details[open] summary::after { content: '−'; }
.odyssey-faq-list details p { margin: 0; padding: 0 20px 20px; color: #929db3; font-size: .84rem; line-height: 1.72; }
.odyssey-faq-section .odyssey-button { margin-top: 22px; }

.odyssey-support-cta { margin: 0 0 20px; padding: 34px; }
.odyssey-support-cta h2 { margin-bottom: 8px; font-size: clamp(1.9rem, 3.5vw, 3rem); }
.odyssey-support-cta p { max-width: 700px; margin: 0; }
.odyssey-support-cta__actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: 10px; }
.odyssey-action-grid--compact .odyssey-action-card { min-height: 195px; }

@media (max-width: 1199.98px) {
    .odyssey-hero-metrics { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .odyssey-feature-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .odyssey-about-grid,
    .odyssey-code-grid,
    .odyssey-faq-grid { gap: 42px; }
}

@media (max-width: 991.98px) {
    .odyssey-about-grid,
    .odyssey-code-grid,
    .odyssey-faq-grid { grid-template-columns: 1fr; }
    .odyssey-about-section .odyssey-section-heading,
    .odyssey-faq-section .odyssey-section-heading { margin-bottom: 0; }
    .odyssey-steps-grid { grid-template-columns: 1fr; }
    .odyssey-plans-cta,
    .odyssey-support-cta { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 767.98px) {
    .odyssey-standalone-hero { min-height: auto; }
    .odyssey-hero-metrics { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .odyssey-feature-grid { grid-template-columns: 1fr; }
    .odyssey-language-grid { grid-template-columns: 1fr; }
    .odyssey-infra-card,
    .odyssey-plans-cta,
    .odyssey-support-cta,
    .odyssey-empty-plans { padding: 22px; }
    .odyssey-empty-plans { align-items: flex-start; flex-direction: column; }
    .odyssey-support-cta__actions,
    .odyssey-support-cta__actions .odyssey-button { width: 100%; }
}

@media (max-width: 480px) {
    .odyssey-hero-metrics { grid-template-columns: 1fr 1fr; }
    .odyssey-hero-metrics > div { min-height: 72px; padding: 12px; }
}

/* ============================================================
   NAVBAR RESPONSIVA — CORREÇÃO DE ESTADO INICIAL
   O Bootstrap mantém elementos .collapse ocultos por padrão.
   Em desktop, a navegação precisa permanecer sempre visível,
   independentemente de o menu mobile já ter sido aberto.
   ============================================================ */
@media (min-width: 1200px) {
    .odyssey-navbar__collapse.collapse,
    .odyssey-navbar__collapse.collapsing {
        display: block !important;
        height: auto !important;
        overflow: visible !important;
        visibility: visible !important;
    }

    .odyssey-navbar__collapse {
        position: static !important;
        flex: 1 1 auto;
        width: auto !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .odyssey-navbar__links {
        display: flex !important;
        align-items: center;
        justify-content: flex-end;
        flex-direction: row !important;
    }

    .odyssey-menu-toggle {
        display: none !important;
    }
}

@media (max-width: 1199.98px) {
    .odyssey-navbar__collapse.collapse:not(.show) {
        display: none !important;
    }

    .odyssey-navbar__collapse.collapse.show {
        display: block !important;
    }
}

/* ============================================================
   ODYSSEY CLOUD V5 — REVISÃO COMPLETA DE CONTRASTE
   Corrige componentes legados do Twenty-One que ainda aplicavam
   fundos claros, textos apagados ou controles fora da identidade.
   ============================================================ */

/* Base de conteúdo e links */
.odyssey-whmcs .primary-content,
.odyssey-whmcs .primary-content p,
.odyssey-whmcs .primary-content li,
.odyssey-whmcs .primary-content dd,
.odyssey-whmcs .primary-content dt {
    color: #c7d0e2;
}

.odyssey-whmcs .primary-content a:not(.btn):not(.page-link):not(.nav-link) {
    color: #72e8ff;
}

.odyssey-whmcs .primary-content a:not(.btn):not(.page-link):not(.nav-link):hover {
    color: #ffffff;
}

/* DataTables e tabelas da área do cliente */
.odyssey-whmcs .table-container,
.odyssey-whmcs .dataTables_wrapper,
.odyssey-whmcs .listtable {
    color: #cbd4e7 !important;
}

.odyssey-whmcs .dataTables_wrapper table.table-list,
.odyssey-whmcs table.table-list,
.odyssey-whmcs table.dataTable {
    width: 100% !important;
    margin: 10px 0 14px !important;
    overflow: hidden;
    border: 1px solid rgba(151, 167, 255, .18) !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border-radius: 14px !important;
    background: #0a0f1c !important;
    color: #d8e0ef !important;
    box-shadow: 0 18px 48px rgba(0, 0, 0, .22);
}

.odyssey-whmcs .dataTables_wrapper table.table-list thead > tr > th,
.odyssey-whmcs .dataTables_wrapper table.table-list thead > tr > td,
.odyssey-whmcs table.table-list thead > tr > th,
.odyssey-whmcs table.table-list thead > tr > td,
.odyssey-whmcs table.dataTable thead > tr > th,
.odyssey-whmcs table.dataTable thead > tr > td {
    padding: 13px 14px !important;
    border: 0 !important;
    border-right: 1px solid rgba(255, 255, 255, .055) !important;
    border-bottom: 1px solid rgba(101, 230, 255, .18) !important;
    background: linear-gradient(180deg, #151c2c, #101624) !important;
    color: #f5f7fc !important;
    font-size: .75rem !important;
    font-weight: 800 !important;
    letter-spacing: .055em;
    text-align: center;
    text-transform: uppercase;
    box-shadow: none !important;
}

.odyssey-whmcs .dataTables_wrapper table.table-list thead > tr > th:last-child,
.odyssey-whmcs .dataTables_wrapper table.table-list thead > tr > td:last-child,
.odyssey-whmcs table.table-list thead > tr > th:last-child,
.odyssey-whmcs table.table-list thead > tr > td:last-child {
    border-right: 0 !important;
}

.odyssey-whmcs .dataTables_wrapper table.table-list thead th.sorting,
.odyssey-whmcs .dataTables_wrapper table.table-list thead th.sorting_asc,
.odyssey-whmcs .dataTables_wrapper table.table-list thead th.sorting_desc,
.odyssey-whmcs .dataTables_wrapper table.table-list thead th.sorting_disabled,
.odyssey-whmcs table.dataTable thead th.sorting,
.odyssey-whmcs table.dataTable thead th.sorting_asc,
.odyssey-whmcs table.dataTable thead th.sorting_desc,
.odyssey-whmcs table.dataTable thead th.sorting_disabled {
    background-color: #111827 !important;
    color: #f5f7fc !important;
}

.odyssey-whmcs .dataTables_wrapper table.table-list tbody > tr,
.odyssey-whmcs table.table-list tbody > tr,
.odyssey-whmcs table.dataTable tbody > tr {
    background: #0a0f1c !important;
    color: #d6deed !important;
}

.odyssey-whmcs .dataTables_wrapper table.table-list tbody > tr > td,
.odyssey-whmcs .dataTables_wrapper table.table-list tbody > tr > th,
.odyssey-whmcs table.table-list tbody > tr > td,
.odyssey-whmcs table.table-list tbody > tr > th,
.odyssey-whmcs table.dataTable tbody > tr > td,
.odyssey-whmcs table.dataTable tbody > tr > th {
    padding: 13px 14px !important;
    border-top: 1px solid rgba(255, 255, 255, .06) !important;
    background: #0b111e !important;
    color: #d6deed !important;
    vertical-align: middle;
}

.odyssey-whmcs .dataTables_wrapper table.table-list tbody > tr:nth-child(even) > td,
.odyssey-whmcs table.table-list tbody > tr:nth-child(even) > td,
.odyssey-whmcs table.dataTable tbody > tr:nth-child(even) > td {
    background: #0d1423 !important;
}

.odyssey-whmcs .dataTables_wrapper table.table-list tbody > tr:hover > td,
.odyssey-whmcs table.table-list tbody > tr:hover > td,
.odyssey-whmcs table.dataTable tbody > tr:hover > td {
    background: #122039 !important;
    color: #ffffff !important;
}

.odyssey-whmcs table.dataTable td.dataTables_empty,
.odyssey-whmcs table.dataTable th.dataTables_empty,
.odyssey-whmcs .dataTables_wrapper .dataTables_empty {
    min-height: 72px;
    padding: 25px 18px !important;
    border-top: 1px solid rgba(255, 255, 255, .06) !important;
    background: linear-gradient(180deg, #0d1423, #0a101c) !important;
    color: #9da9bf !important;
    font-size: .92rem;
    font-weight: 600;
    text-align: center;
}

.odyssey-whmcs .dataTables_wrapper table.table-list a,
.odyssey-whmcs table.table-list a,
.odyssey-whmcs table.dataTable a {
    color: #72e8ff !important;
}

.odyssey-whmcs .dataTables_wrapper table.table-list strong,
.odyssey-whmcs table.table-list strong,
.odyssey-whmcs table.dataTable strong {
    color: #ffffff !important;
}

.odyssey-whmcs table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control::before,
.odyssey-whmcs table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control::before {
    border: 0 !important;
    background: linear-gradient(135deg, #9b6dff, #4e8dff 55%, #65e6ff) !important;
    color: #fff !important;
    box-shadow: none !important;
}

.odyssey-whmcs table.dataTable > tbody > tr.child,
.odyssey-whmcs table.dataTable > tbody > tr.child > td,
.odyssey-whmcs table.dataTable > tbody > tr.child ul.dtr-details {
    background: #0d1423 !important;
    color: #dbe3f2 !important;
}

.odyssey-whmcs table.dataTable > tbody > tr.child span.dtr-title {
    color: #ffffff !important;
}

/* Pesquisa, seletor de quantidade e paginação das tabelas */
.odyssey-whmcs .dataTables_wrapper .dataTables_filter {
    margin-bottom: 8px;
}

.odyssey-whmcs .dataTables_wrapper .dataTables_filter label {
    position: relative;
    display: inline-block;
    margin: 0;
    color: #9da8bd !important;
}

.odyssey-whmcs .dataTables_wrapper .dataTables_filter label::before {
    content: '\f002';
    position: absolute;
    top: 50%;
    left: 15px;
    z-index: 2;
    transform: translateY(-50%);
    color: #738198;
    font-family: 'Font Awesome 5 Pro', 'Font Awesome 5 Free';
    font-size: .9rem;
    font-weight: 900;
    pointer-events: none;
}

.odyssey-whmcs .dataTables_wrapper .dataTables_filter label .form-control,
.odyssey-whmcs .dataTables_wrapper .dataTables_filter input[type='search'] {
    width: min(300px, 100%) !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 8px 15px 8px 42px !important;
    border: 1px solid rgba(151, 167, 255, .17) !important;
    border-radius: 11px !important;
    background: #070c16 !important;
    background-image: none !important;
    color: #f7f9ff !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025) !important;
}

.odyssey-whmcs .dataTables_wrapper .dataTables_filter input[type='search']::placeholder {
    color: #6f7b91 !important;
    opacity: 1;
}

.odyssey-whmcs .dataTables_wrapper .dataTables_length label,
.odyssey-whmcs .dataTables_wrapper .dataTables_info {
    color: #aeb8cd !important;
}

.odyssey-whmcs .dataTables_wrapper .dataTables_length select {
    min-width: 76px;
    min-height: 40px;
    margin: 0 6px;
    border: 1px solid rgba(151, 167, 255, .16) !important;
    border-radius: 9px !important;
    background: #080d17 !important;
    color: #f5f7fc !important;
}

.odyssey-whmcs .pagination .page-link,
.odyssey-whmcs .dataTables_wrapper .pagination .page-link {
    border-color: rgba(151, 167, 255, .17) !important;
    background: #0b111e !important;
    color: #aeb9cf !important;
}

.odyssey-whmcs .pagination .page-link:hover,
.odyssey-whmcs .dataTables_wrapper .pagination .page-link:hover {
    border-color: rgba(101, 230, 255, .36) !important;
    background: rgba(101, 230, 255, .08) !important;
    color: #ffffff !important;
}

.odyssey-whmcs .pagination .page-item.active .page-link,
.odyssey-whmcs .dataTables_wrapper .pagination .page-item.active .page-link {
    border-color: transparent !important;
    background: linear-gradient(135deg, #9b6dff, #4e8dff 55%, #65e6ff) !important;
    color: #ffffff !important;
}

.odyssey-whmcs .pagination .page-item.disabled .page-link,
.odyssey-whmcs .dataTables_wrapper .pagination .page-item.disabled .page-link {
    border-color: rgba(151, 167, 255, .09) !important;
    background: rgba(10, 15, 28, .6) !important;
    color: #59657a !important;
}

/* Anúncios e conteúdo rico */
.odyssey-whmcs .announcements .announcement {
    margin: 0 0 22px;
    padding: 0 0 22px;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.odyssey-whmcs .announcements .announcement:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
}

.odyssey-whmcs .announcements .announcement h1,
.odyssey-whmcs .announcements .announcement h1 a,
.odyssey-whmcs .odyssey-announcement-title,
.odyssey-whmcs .odyssey-announcement-title a {
    color: #f7f9ff !important;
    font-family: 'Space Grotesk', sans-serif;
    font-size: clamp(1.55rem, 3vw, 2.35rem);
    letter-spacing: -.035em;
}

.odyssey-whmcs .announcements .announcement h1 a:hover,
.odyssey-whmcs .odyssey-announcement-title a:hover {
    color: #65e6ff !important;
}

.odyssey-whmcs .announcements .announcement article,
.odyssey-whmcs .odyssey-rich-content,
.odyssey-whmcs .kb-article-content,
.odyssey-whmcs .article-content,
.odyssey-whmcs .markdown-content,
.odyssey-whmcs .markdown-editor .md-preview {
    margin: 18px 0;
    padding: 20px 22px;
    border: 1px solid rgba(151, 167, 255, .15) !important;
    border-left: 3px solid rgba(101, 230, 255, .55) !important;
    border-radius: 12px;
    background: linear-gradient(145deg, #0d1423, #0a101c) !important;
    color: #cbd5e7 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025);
    line-height: 1.75;
}

.odyssey-whmcs .announcements .announcement article *,
.odyssey-whmcs .odyssey-rich-content *,
.odyssey-whmcs .kb-article-content *,
.odyssey-whmcs .article-content * {
    background-color: transparent !important;
    color: inherit !important;
}

.odyssey-whmcs .announcements .announcement article a,
.odyssey-whmcs .odyssey-rich-content a,
.odyssey-whmcs .kb-article-content a,
.odyssey-whmcs .article-content a {
    color: #72e8ff !important;
}

.odyssey-whmcs .announcements .announcement article h1,
.odyssey-whmcs .announcements .announcement article h2,
.odyssey-whmcs .announcements .announcement article h3,
.odyssey-whmcs .announcements .announcement article h4,
.odyssey-whmcs .odyssey-rich-content h1,
.odyssey-whmcs .odyssey-rich-content h2,
.odyssey-whmcs .odyssey-rich-content h3,
.odyssey-whmcs .kb-article-content h1,
.odyssey-whmcs .kb-article-content h2,
.odyssey-whmcs .kb-article-content h3 {
    color: #ffffff !important;
}

.odyssey-whmcs .announcements .announcement article blockquote,
.odyssey-whmcs .odyssey-rich-content blockquote,
.odyssey-whmcs .kb-article-content blockquote {
    margin: 18px 0;
    padding: 14px 18px;
    border-left: 3px solid #9b6dff;
    background: rgba(155, 109, 255, .07) !important;
    color: #d8def0 !important;
}

.odyssey-whmcs .announcements .announcement article pre,
.odyssey-whmcs .announcements .announcement article code,
.odyssey-whmcs .odyssey-rich-content pre,
.odyssey-whmcs .odyssey-rich-content code,
.odyssey-whmcs .kb-article-content pre,
.odyssey-whmcs .kb-article-content code {
    border: 1px solid rgba(151, 167, 255, .13);
    border-radius: 8px;
    background: #050911 !important;
    color: #9feaff !important;
}

/* Abas, conteúdo de produto e módulos legados */
.odyssey-whmcs .nav-tabs {
    border-bottom-color: rgba(151, 167, 255, .15) !important;
}

.odyssey-whmcs .nav-tabs .nav-link,
.odyssey-whmcs .nav-tabs > li > a {
    border-color: transparent !important;
    background: transparent !important;
    color: #9eabc0 !important;
}

.odyssey-whmcs .nav-tabs .nav-link:hover,
.odyssey-whmcs .nav-tabs > li > a:hover {
    border-color: rgba(101, 230, 255, .2) !important;
    background: rgba(101, 230, 255, .055) !important;
    color: #ffffff !important;
}

.odyssey-whmcs .nav-tabs .nav-link.active,
.odyssey-whmcs .nav-tabs > li.active > a,
.odyssey-whmcs .nav-tabs > li.active > a:hover,
.odyssey-whmcs .nav-tabs > li.active > a:focus {
    border-color: rgba(101, 230, 255, .22) !important;
    border-bottom-color: #101728 !important;
    background: #101728 !important;
    color: #ffffff !important;
}

.odyssey-whmcs .tab-content,
.odyssey-whmcs div.product-details-tab-container,
.odyssey-whmcs .module-client-area,
.odyssey-whmcs .product-details .tab-content {
    border-color: rgba(151, 167, 255, .15) !important;
    background: linear-gradient(145deg, #0f1626, #0a101c) !important;
    color: #cbd4e6 !important;
}

/* Dropdowns, popovers, tooltips e modais */
.odyssey-whmcs .popover,
.odyssey-whmcs .tooltip-inner,
.odyssey-whmcs .typeahead.dropdown-menu,
.odyssey-whmcs .select2-dropdown,
.odyssey-whmcs .bootstrap-select .dropdown-menu {
    border: 1px solid rgba(151, 167, 255, .17) !important;
    background: #0b111e !important;
    color: #d9e1f0 !important;
    box-shadow: 0 20px 55px rgba(0, 0, 0, .35) !important;
}

.odyssey-whmcs .popover-header {
    border-bottom-color: rgba(255, 255, 255, .08) !important;
    background: #111827 !important;
    color: #ffffff !important;
}

.odyssey-whmcs .popover-body {
    color: #c6d0e3 !important;
}

.odyssey-whmcs .modal-header,
.odyssey-whmcs .modal-footer {
    border-color: rgba(255, 255, 255, .08) !important;
}

.odyssey-whmcs .modal-body {
    color: #cbd4e6 !important;
}

.odyssey-whmcs .close {
    color: #ffffff !important;
    text-shadow: none !important;
    opacity: .8;
}

/* Campos de seleção e estados nativos */
.odyssey-whmcs select option {
    background: #090e19;
    color: #f7f9ff;
}

.odyssey-whmcs input[disabled],
.odyssey-whmcs select[disabled],
.odyssey-whmcs textarea[disabled],
.odyssey-whmcs .form-control:disabled,
.odyssey-whmcs .form-control[readonly] {
    background: #0a0f1b !important;
    color: #748198 !important;
    opacity: 1;
}

/* Domínios, preços e cartões legados */
.odyssey-whmcs .featured-tld,
.odyssey-whmcs .domain-pricing .tld-row,
.odyssey-whmcs .domain-pricing .tld-pricing-header > div,
.odyssey-whmcs .domain-selection-options .option,
.odyssey-whmcs .domain-renewal,
.odyssey-whmcs .ssl-state,
.odyssey-whmcs .promo-banner {
    border-color: rgba(151, 167, 255, .15) !important;
    background: #0d1423 !important;
    color: #d7dfef !important;
    box-shadow: none !important;
}

.odyssey-whmcs .featured-tld .price,
.odyssey-whmcs .domain-pricing .tld-pricing-header > div {
    color: #ffffff !important;
}

.odyssey-whmcs .domain-pricing .tld-row.highlighted {
    background: rgba(101, 230, 255, .065) !important;
}

/* Tickets, mensagens e blocos de comunicação */
.odyssey-whmcs .ticket-reply,
.odyssey-whmcs .ticket-reply .message,
.odyssey-whmcs .view-ticket .posted-by,
.odyssey-whmcs .view-ticket .message,
.odyssey-whmcs .message-container,
.odyssey-whmcs .email-container {
    border-color: rgba(151, 167, 255, .16) !important;
    background: linear-gradient(145deg, #0f1626, #0a101c) !important;
    color: #cbd4e6 !important;
}

.odyssey-whmcs .ticket-reply .user,
.odyssey-whmcs .ticket-reply .date,
.odyssey-whmcs .view-ticket .posted-by {
    color: #9eabc0 !important;
}

/* Faturas, cotações e pagamentos na tela */
.odyssey-whmcs .invoice-container,
.odyssey-whmcs .quote-container,
.odyssey-whmcs .masspay-container,
.odyssey-whmcs .payment-methods,
.odyssey-whmcs .paymethod-info,
.odyssey-whmcs .cc-details,
.odyssey-whmcs .billing-contact-info {
    border-color: rgba(151, 167, 255, .16) !important;
    background: linear-gradient(145deg, #0f1626, #0a101c) !important;
    color: #d5deee !important;
}

.odyssey-whmcs tr.masspay-total td,
.odyssey-whmcs tr.masspay-invoice-detail td {
    background: #0d1423 !important;
    color: #dbe3f2 !important;
}

/* Painéis vazios, wells e elementos auxiliares */
.odyssey-whmcs .well,
.odyssey-whmcs .jumbotron,
.odyssey-whmcs .empty-state,
.odyssey-whmcs .no-records,
.odyssey-whmcs .list-group-item-light,
.odyssey-whmcs .bg-white,
.odyssey-whmcs .bg-light {
    border-color: rgba(151, 167, 255, .14) !important;
    background: #0c1321 !important;
    color: #cbd4e6 !important;
}

.odyssey-whmcs hr {
    border-top-color: rgba(255, 255, 255, .08) !important;
}

/* Seleção de texto continua legível */
.odyssey-whmcs ::selection {
    background: rgba(78, 141, 255, .72);
    color: #ffffff;
}

/* Em impressão, documentos financeiros voltam ao papel branco. */
@media print {
    .odyssey-whmcs .invoice-container,
    .odyssey-whmcs .quote-container,
    .odyssey-whmcs .masspay-container {
        border: 0 !important;
        background: #ffffff !important;
        color: #111111 !important;
        box-shadow: none !important;
    }

    .odyssey-whmcs .invoice-container *,
    .odyssey-whmcs .quote-container *,
    .odyssey-whmcs .masspay-container * {
        color: #111111 !important;
    }
}

@media (max-width: 767.98px) {
    .odyssey-whmcs .dataTables_wrapper .dataTables_filter,
    .odyssey-whmcs .dataTables_wrapper .dataTables_filter label,
    .odyssey-whmcs .dataTables_wrapper .dataTables_filter input[type='search'] {
        width: 100% !important;
    }

    .odyssey-whmcs .dataTables_wrapper .dataTables_filter {
        float: none !important;
        margin-top: 14px !important;
    }

    .odyssey-whmcs .dataTables_wrapper .dataTables_info,
    .odyssey-whmcs .dataTables_wrapper .dataTables_paginate {
        float: none !important;
        text-align: left !important;
    }
}

/* ============================================================
   ODYSSEY V7 — PRODUCT CARDS GUARANTEED OVERRIDE
   Loaded in BOTH the main system theme and Odyssey order form.
   This also fixes product groups that still override the global
   order-form setting with Standard Cart.
   ============================================================ */
html body #order-standard_cart .products .row-eq-height > [class*="col-"] {
    display: flex !important;
}

html body #order-standard_cart .products .product {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    min-height: 330px !important;
    margin: 0 0 22px !important;
    padding: 0 !important;
    overflow: hidden !important;
    flex-direction: column !important;
    border: 1px solid rgba(151, 167, 255, .22) !important;
    border-radius: 18px !important;
    background: linear-gradient(145deg, #11192b 0%, #090f1c 100%) !important;
    color: #dce5f6 !important;
    box-shadow: 0 22px 58px rgba(0, 0, 0, .32) !important;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease !important;
}

html body #order-standard_cart .products .product::before {
    content: '' !important;
    position: absolute !important;
    top: -95px !important;
    right: -85px !important;
    width: 220px !important;
    height: 220px !important;
    border-radius: 999px !important;
    background: radial-gradient(circle, rgba(101, 230, 255, .13), transparent 68%) !important;
    pointer-events: none !important;
}

html body #order-standard_cart .products .product:hover {
    transform: translateY(-5px) !important;
    border-color: rgba(101, 230, 255, .5) !important;
    background: linear-gradient(145deg, #152039 0%, #0b1322 100%) !important;
    box-shadow: 0 30px 76px rgba(25, 52, 102, .36) !important;
}

html body #order-standard_cart .products .product > header {
    position: relative !important;
    z-index: 1 !important;
    margin: 0 !important;
    padding: 19px 22px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, .085) !important;
    border-radius: 0 !important;
    background: rgba(255, 255, 255, .026) !important;
}

html body #order-standard_cart .products .product > header span,
html body #order-standard_cart .products .product > header span[id$="-name"] {
    color: #ffffff !important;
    font-family: 'Space Grotesk', 'Inter', system-ui, sans-serif !important;
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    letter-spacing: -.025em !important;
}

html body #order-standard_cart .products .product > header .qty {
    color: #59f1bd !important;
}

html body #order-standard_cart .products .product div.product-desc,
html body #order-standard_cart .products .product div.product-desc-full-width,
html body #order-standard_cart .products .product .product-desc {
    position: relative !important;
    z-index: 1 !important;
    float: none !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 20px 22px 18px !important;
    flex: 1 1 auto !important;
    background: transparent !important;
    color: #bac6db !important;
    font-size: .9rem !important;
    line-height: 1.62 !important;
}

html body #order-standard_cart .products .product .product-desc p,
html body #order-standard_cart .products .product .product-desc li,
html body #order-standard_cart .products .product .product-desc span,
html body #order-standard_cart .products .product .product-desc strong {
    color: #c9d3e6 !important;
}

html body #order-standard_cart .products .product .product-desc ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

html body #order-standard_cart .products .product .product-desc li {
    position: relative !important;
    margin: 0 0 9px !important;
    padding-left: 23px !important;
}

html body #order-standard_cart .products .product .product-desc li::before {
    content: '\f00c' !important;
    position: absolute !important;
    top: 1px !important;
    left: 0 !important;
    color: #65e6ff !important;
    font-family: 'Font Awesome 5 Free' !important;
    font-size: .76rem !important;
    font-weight: 900 !important;
}

html body #order-standard_cart .products .product span.feature-value {
    color: #ffffff !important;
    font-weight: 750 !important;
}

html body #order-standard_cart .products .product > footer {
    position: relative !important;
    z-index: 1 !important;
    display: flex !important;
    float: none !important;
    width: 100% !important;
    min-height: 94px !important;
    margin: 0 !important;
    padding: 17px 20px !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    border: 0 !important;
    border-top: 1px solid rgba(255, 255, 255, .085) !important;
    background: rgba(255, 255, 255, .018) !important;
    color: #aeb9cf !important;
    text-align: left !important;
}

html body #order-standard_cart .products .product div.product-pricing,
html body #order-standard_cart .products .product .product-pricing {
    margin: 0 !important;
    color: #96a4bc !important;
    font-size: .76rem !important;
    line-height: 1.35 !important;
}

html body #order-standard_cart .products .product div.product-pricing span.price,
html body #order-standard_cart .products .product .product-pricing .price {
    color: #65e6ff !important;
    font-family: 'Space Grotesk', 'Inter', system-ui, sans-serif !important;
    font-size: 1.55rem !important;
    font-weight: 750 !important;
    letter-spacing: -.03em !important;
    text-shadow: 0 0 22px rgba(101, 230, 255, .14) !important;
}

html body #order-standard_cart .products .product .btn-order-now {
    flex: 0 0 auto !important;
    min-height: 44px !important;
    padding: 0 18px !important;
    border: 0 !important;
    border-radius: 11px !important;
    background: linear-gradient(135deg, #8b66ff, #4e8dff 56%, #65e6ff) !important;
    color: #ffffff !important;
    font-weight: 750 !important;
    box-shadow: 0 10px 28px rgba(73, 118, 255, .26) !important;
}

html body #order-standard_cart .products .product .btn-order-now:hover,
html body #order-standard_cart .products .product .btn-order-now:focus {
    transform: translateY(-2px) !important;
    color: #ffffff !important;
    box-shadow: 0 15px 36px rgba(83, 174, 255, .36) !important;
}

@media (max-width: 767.98px) {
    html body #order-standard_cart .products .row-eq-height > [class*="col-"] {
        display: block !important;
    }

    html body #order-standard_cart .products .product {
        min-height: 0 !important;
    }

    html body #order-standard_cart .products .product > footer {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    html body #order-standard_cart .products .product .btn-order-now {
        width: 100% !important;
    }
}
