/*
 * GamesTec — tema personalizado para WHMCS
 * Tema-filho do Six. A logo continua sendo carregada pela configuração
 * nativa do WHMCS através de $assetLogoPath.
 */

:root {
    --gt-bg: #030712;
    --gt-surface: #071225;
    --gt-surface-strong: #0b1930;
    --gt-surface-soft: #0d203d;
    --gt-line: rgba(119, 164, 255, 0.16);
    --gt-line-strong: rgba(119, 164, 255, 0.34);
    --gt-text: #f7fbff;
    --gt-muted: #96a6c3;
    --gt-cyan: #00dcff;
    --gt-blue: #176fff;
    --gt-deep-blue: #0d39d9;
    --gt-green: #34f5d0;
    --gt-danger: #ff667d;
    --gt-warning: #ffbd59;
    --gt-radius-sm: 10px;
    --gt-radius: 14px;
    --gt-radius-lg: 20px;
    --gt-shadow: 0 18px 54px rgba(0, 0, 0, 0.28);
}

html {
    min-height: 100%;
    background: var(--gt-bg);
}

body {
    min-height: 100vh;
    background:
        radial-gradient(circle at 72% -8%, rgba(23, 111, 255, 0.18), transparent 30rem),
        linear-gradient(180deg, var(--gt-bg) 0%, #050b18 48%, var(--gt-bg) 100%);
    color: var(--gt-text);
    font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
}

body::before {
    position: fixed;
    z-index: -1;
    inset: 0;
    content: "";
    pointer-events: none;
    opacity: 0.25;
    background-image:
        linear-gradient(rgba(73, 137, 255, 0.07) 1px, transparent 1px),
        linear-gradient(90deg, rgba(73, 137, 255, 0.07) 1px, transparent 1px);
    background-size: 66px 66px;
    -webkit-mask-image: linear-gradient(#000 0%, transparent 86%);
    mask-image: linear-gradient(#000 0%, transparent 86%);
}

a {
    color: #64ddff;
    transition: color 0.18s ease, border-color 0.18s ease, background-color 0.18s ease;
}

a:hover,
a:focus {
    color: var(--gt-cyan);
    text-decoration: none;
}

a:focus-visible,
button:focus-visible,
.btn:focus-visible,
.form-control:focus-visible {
    outline: 2px solid var(--gt-cyan);
    outline-offset: 3px;
}

h1,
h2,
h3,
h4,
h5,
h6,
.panel-title {
    color: var(--gt-text);
    font-family: "Raleway", "Open Sans", sans-serif;
    font-weight: 700;
}

p,
label,
.help-block,
.text-muted,
small {
    color: var(--gt-muted);
}

hr {
    border-color: var(--gt-line);
}

/* Cabeçalho e logo configurada no WHMCS */
#header {
    min-height: 92px;
    padding: 15px 0;
    background: rgba(3, 9, 23, 0.9);
    border-bottom: 1px solid var(--gt-line);
}

#header .logo {
    display: inline-flex;
    align-items: center;
    min-height: 58px;
}

#header .logo img {
    width: auto;
    max-width: 210px;
    max-height: 58px;
    object-fit: contain;
}

#header .logo.logo-text {
    color: var(--gt-text);
    font-family: "Raleway", sans-serif;
    font-size: 26px;
    font-weight: 800;
    letter-spacing: -0.04em;
}

#header .top-nav > li > a {
    color: #b6c3d9;
    border-radius: 9px;
}

#header .top-nav > li > a:hover,
#header .top-nav > li > a:focus {
    color: var(--gt-cyan);
    background: rgba(23, 111, 255, 0.1);
}

#header .top-nav .primary-action > a.btn,
#header .top-nav a.btn-logged-in-admin {
    color: #001020;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 50%, #205cff);
    border: 0;
    box-shadow: 0 10px 26px rgba(0, 163, 255, 0.22), inset 0 1px rgba(255, 255, 255, 0.5);
}

#header .popover,
#header .popover-content,
#header .client-alerts > li {
    color: var(--gt-text);
    background: var(--gt-surface-strong);
    border-color: var(--gt-line);
}

#main-menu {
    position: relative;
    z-index: 20;
    background: rgba(7, 18, 37, 0.9);
    border-bottom: 1px solid var(--gt-line);
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.2);
}

.navbar-main,
.navbar-default {
    background: transparent;
    border: 0;
}

.navbar-main .navbar-nav > li > a,
.navbar-main .navbar-nav > li > a:link,
.navbar-main .navbar-nav > li > a:visited {
    color: #c5d1e4;
    font-weight: 650;
}

.navbar-main .navbar-nav > li > a:hover,
.navbar-main .navbar-nav > li > a:focus,
.navbar-main .navbar-nav > .active > a,
.navbar-main .navbar-nav > .active > a:hover,
.navbar-main .navbar-nav > .open > a,
.navbar-main .navbar-nav > .open > a:hover,
.navbar-main .navbar-nav > .open > a:focus {
    color: var(--gt-cyan);
    background: rgba(23, 111, 255, 0.12);
}

.navbar-default .navbar-toggle {
    border-color: var(--gt-line-strong);
    border-radius: 10px;
}

.navbar-default .navbar-toggle .icon-bar {
    background: var(--gt-cyan);
}

.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
    background: rgba(0, 220, 255, 0.08);
}

.dropdown-menu {
    padding: 8px;
    background: rgba(7, 18, 37, 0.98);
    border: 1px solid var(--gt-line-strong);
    border-radius: 12px;
    box-shadow: var(--gt-shadow);
}

.dropdown-menu > li > a {
    color: #c5d1e4;
    padding: 9px 12px;
    border-radius: 8px;
}

.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus,
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover {
    color: var(--gt-text);
    background: rgba(23, 111, 255, 0.2);
}

.dropdown-menu .divider {
    background: var(--gt-line);
}

/* Banner inicial */
#home-banner {
    position: relative;
    overflow: hidden;
    padding: 72px 0 82px;
    background:
        radial-gradient(circle at 78% 20%, rgba(0, 220, 255, 0.16), transparent 20rem),
        radial-gradient(circle at 24% 10%, rgba(13, 57, 217, 0.45), transparent 30rem),
        linear-gradient(135deg, #050e21 0%, #071b3c 48%, #040b19 100%);
    border-bottom: 1px solid var(--gt-line);
}

#home-banner::after {
    position: absolute;
    inset: 0;
    content: "";
    pointer-events: none;
    background: linear-gradient(110deg, transparent 52%, rgba(0, 220, 255, 0.06));
}

#home-banner .container {
    position: relative;
    z-index: 1;
}

#home-banner h2 {
    margin-bottom: 28px;
    color: var(--gt-text);
    font-size: clamp(30px, 4vw, 48px);
    font-weight: 800;
    letter-spacing: -0.04em;
}

#home-banner .form-control,
#home-banner textarea {
    min-height: 54px;
    color: var(--gt-text);
    background: rgba(3, 9, 23, 0.78);
    border: 1px solid var(--gt-line-strong);
    box-shadow: 0 14px 42px rgba(0, 0, 0, 0.28);
}

#home-banner .btn.search,
#home-banner .btn.transfer {
    min-height: 54px;
    color: #001020;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 52%, #205cff);
    border: 0;
    font-weight: 800;
}

.home-shortcuts {
    margin: 0;
    color: var(--gt-text);
    background: linear-gradient(110deg, rgba(12, 33, 69, 0.98), rgba(5, 16, 35, 0.98));
    border-bottom: 1px solid var(--gt-line);
}

.home-shortcuts .lead,
.home-shortcuts li a,
.home-shortcuts li a p {
    color: #dce9f8;
}

.home-shortcuts li {
    border-color: var(--gt-line);
}

.home-shortcuts li a:hover,
.home-shortcuts li a:focus,
.home-shortcuts li a:hover p {
    color: var(--gt-cyan);
    background: rgba(0, 220, 255, 0.05);
}

.home-shortcuts li i {
    color: var(--gt-cyan);
}

/* Conteúdo, painéis e cartões */
section#main-body {
    min-height: 58vh;
    padding-top: 42px;
    background: transparent;
}

.main-content,
.logincontainer {
    color: var(--gt-text);
}

.header-lined {
    margin-bottom: 26px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--gt-line);
}

.header-lined h1 {
    color: var(--gt-text);
    letter-spacing: -0.035em;
}

.header-lined h1 small,
.breadcrumb,
.breadcrumb > li,
.breadcrumb > li + li::before {
    color: var(--gt-muted);
}

.breadcrumb {
    background: transparent;
}

.panel,
.card,
.well,
.modal-content,
.logincontainer .panel,
.client-home-panels .panel,
.product-status,
.domain-renewals,
.knowledgebase-category,
.announcement-single,
.view-ticket {
    color: var(--gt-text);
    background: linear-gradient(145deg, rgba(12, 28, 56, 0.94), rgba(4, 12, 29, 0.97));
    border: 1px solid var(--gt-line);
    border-radius: var(--gt-radius);
    box-shadow: var(--gt-shadow);
}

.panel-default > .panel-heading,
.panel > .panel-heading,
.modal-header,
.modal-footer,
.well .panel-heading {
    color: var(--gt-text);
    background: rgba(11, 25, 48, 0.92);
    border-color: var(--gt-line);
    border-radius: var(--gt-radius) var(--gt-radius) 0 0;
}

.panel-footer,
.modal-footer {
    color: var(--gt-muted);
    background: rgba(3, 9, 23, 0.55);
    border-color: var(--gt-line);
}

.panel-title,
.panel-title a {
    color: var(--gt-text);
}

.client-home-panels .panel:hover,
.knowledgebase-category:hover {
    border-color: rgba(0, 220, 255, 0.42);
    box-shadow: 0 22px 60px rgba(0, 70, 180, 0.16);
}

.list-group-item {
    color: #cbd8ea;
    background: rgba(7, 18, 37, 0.82);
    border-color: var(--gt-line);
}

a.list-group-item:hover,
a.list-group-item:focus,
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
    color: var(--gt-text);
    background: rgba(23, 111, 255, 0.2);
    border-color: rgba(0, 220, 255, 0.34);
}

.tiles .tile,
.tile {
    color: var(--gt-text);
    background: linear-gradient(145deg, rgba(12, 31, 66, 0.94), rgba(3, 10, 25, 0.95));
    border: 1px solid var(--gt-line);
    border-radius: var(--gt-radius);
    box-shadow: var(--gt-shadow);
}

.tiles .tile:hover,
.tile:hover {
    border-color: rgba(0, 220, 255, 0.4);
}

.tiles .tile .stat,
.tiles .tile .title,
.tiles .tile i {
    color: var(--gt-cyan);
}

/* Formulários */
.form-control,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="url"],
select,
textarea,
.input-group-addon,
.bootstrap-select > .dropdown-toggle {
    color: var(--gt-text);
    background: rgba(3, 9, 23, 0.72);
    border-color: var(--gt-line-strong);
    border-radius: var(--gt-radius-sm);
    box-shadow: none;
}

.form-control::placeholder,
input::placeholder,
textarea::placeholder {
    color: #7182a0;
    opacity: 1;
}

.form-control:focus,
input:focus,
select:focus,
textarea:focus {
    color: var(--gt-text);
    background: rgba(5, 16, 37, 0.98);
    border-color: var(--gt-cyan);
    box-shadow: 0 0 0 3px rgba(0, 220, 255, 0.12);
}

select option {
    color: var(--gt-text);
    background: var(--gt-surface-strong);
}

.input-group-addon {
    color: var(--gt-cyan);
}

.has-error .form-control {
    border-color: var(--gt-danger);
}

.has-success .form-control {
    border-color: var(--gt-green);
}

/* Botões */
.btn {
    border-radius: var(--gt-radius-sm);
    font-weight: 700;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.btn:hover {
    transform: translateY(-1px);
}

.btn-primary,
.btn-info,
.btn-success,
.btn.btn-primary {
    color: #001020;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 50%, #205cff);
    border-color: transparent;
    box-shadow: 0 10px 28px rgba(0, 163, 255, 0.2), inset 0 1px rgba(255, 255, 255, 0.5);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-info:hover,
.btn-info:focus,
.btn-success:hover,
.btn-success:focus {
    color: #001020;
    background: linear-gradient(110deg, #38e5ff, #2ba8ff 50%, #3972ff);
    border-color: transparent;
    box-shadow: 0 14px 36px rgba(0, 163, 255, 0.32);
}

.btn-default,
.btn-secondary {
    color: #ecf5ff;
    background: rgba(11, 25, 48, 0.82);
    border-color: var(--gt-line-strong);
}

.btn-default:hover,
.btn-default:focus,
.btn-secondary:hover,
.btn-secondary:focus {
    color: var(--gt-cyan);
    background: rgba(23, 111, 255, 0.14);
    border-color: rgba(0, 220, 255, 0.55);
}

.btn-danger {
    color: #fff;
    background: #cc3650;
    border-color: #e54b65;
}

.label-primary,
.badge,
.label-info {
    color: #001020;
    background: var(--gt-cyan);
}

.label-success {
    color: #052219;
    background: var(--gt-green);
}

/* Tabelas, paginação e abas */
.table,
.table > thead > tr > th,
.table > tbody > tr > td,
.table > tfoot > tr > td {
    color: #d5e1f0;
    border-color: var(--gt-line);
}

.table > thead > tr > th {
    color: var(--gt-text);
    background: rgba(11, 25, 48, 0.75);
}

.table-striped > tbody > tr:nth-of-type(odd),
.table-hover > tbody > tr:hover {
    background: rgba(23, 111, 255, 0.07);
}

.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_paginate {
    color: var(--gt-muted);
}

.pagination > li > a,
.pagination > li > span {
    color: #b9c9df;
    background: var(--gt-surface);
    border-color: var(--gt-line);
}

.pagination > li > a:hover,
.pagination > li > a:focus,
.pagination > .active > a,
.pagination > .active > a:hover,
.pagination > .active > span {
    color: #001020;
    background: var(--gt-cyan);
    border-color: var(--gt-cyan);
}

.nav-tabs {
    border-color: var(--gt-line);
}

.nav-tabs > li > a {
    color: var(--gt-muted);
    border-radius: 10px 10px 0 0;
}

.nav-tabs > li > a:hover,
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
    color: var(--gt-cyan);
    background: var(--gt-surface-strong);
    border-color: var(--gt-line) var(--gt-line) var(--gt-surface-strong);
}

/* Alertas */
.alert {
    color: var(--gt-text);
    border-radius: var(--gt-radius-sm);
    border-width: 1px;
}

.alert-info {
    background: rgba(23, 111, 255, 0.16);
    border-color: rgba(61, 135, 255, 0.45);
}

.alert-success {
    background: rgba(52, 245, 208, 0.12);
    border-color: rgba(52, 245, 208, 0.4);
}

.alert-warning {
    background: rgba(255, 189, 89, 0.12);
    border-color: rgba(255, 189, 89, 0.4);
}

.alert-danger {
    background: rgba(255, 102, 125, 0.12);
    border-color: rgba(255, 102, 125, 0.42);
}

.alert a {
    color: inherit;
    font-weight: 700;
    text-decoration: underline;
}

/* Tickets, faturas e detalhes de serviços */
.ticket-reply,
.ticket-reply .user,
.ticket-reply .date,
.ticket-reply .message,
.invoice-container,
.service-details,
.domain-details {
    color: var(--gt-text);
    background: rgba(7, 18, 37, 0.88);
    border-color: var(--gt-line);
}

.ticket-reply.staff,
.ticket-reply.staff .user,
.ticket-reply.staff .date,
.ticket-reply.staff .message {
    background: rgba(13, 57, 217, 0.13);
    border-color: rgba(23, 111, 255, 0.28);
}

.invoice-container {
    border-radius: var(--gt-radius-lg);
    box-shadow: var(--gt-shadow);
}

.invoice-container .invoice-status span {
    border-radius: 999px;
}

pre,
code {
    color: #9cecff;
    background: #020611;
    border-color: var(--gt-line);
}

/* Carrinho Standard Cart herdado pelo gamestec_cart */
#order-standard_cart {
    color: var(--gt-text);
}

#order-standard_cart .field,
#order-standard_cart .form-control,
#order-standard_cart select,
#order-standard_cart textarea {
    color: var(--gt-text);
    background: rgba(3, 9, 23, 0.75);
    border-color: var(--gt-line-strong);
}

#order-standard_cart .products .product,
#order-standard_cart .product-info,
#order-standard_cart .sub-heading,
#order-standard_cart .domain-selection-options .option,
#order-standard_cart .view-cart-items,
#order-standard_cart .view-cart-tabs .tab-content,
#order-standard_cart .summary-container,
#order-standard_cart .secondary-cart-body,
#order-standard_cart .mc-promo-login {
    color: var(--gt-text);
    background: linear-gradient(145deg, rgba(12, 28, 56, 0.94), rgba(4, 12, 29, 0.97));
    border-color: var(--gt-line);
    border-radius: var(--gt-radius);
}

#order-standard_cart .products .product header,
#order-standard_cart .view-cart-items-header,
#order-standard_cart .order-summary,
#order-standard_cart .sidebar-collapsed,
#order-standard_cart .panel-addon .panel-heading {
    color: var(--gt-text);
    background: linear-gradient(110deg, rgba(12, 33, 69, 0.98), rgba(5, 16, 35, 0.98));
    border-color: var(--gt-line);
}

#order-standard_cart .products .product:hover,
#order-standard_cart .domain-selection-options .option:hover {
    border-color: rgba(0, 220, 255, 0.44);
    box-shadow: 0 20px 52px rgba(0, 70, 180, 0.16);
}

#order-standard_cart .products .product .product-pricing span.price,
#order-standard_cart .product-price,
#order-standard_cart .total-due-today,
#order-standard_cart .order-summary .total-due-today .amt {
    color: var(--gt-cyan);
}

#order-standard_cart .order-summary h2,
#order-standard_cart .order-summary .summary-container,
#order-standard_cart .order-summary .subtotal,
#order-standard_cart .order-summary .bordered-totals {
    color: var(--gt-text);
    border-color: var(--gt-line);
}

#order-standard_cart .order-summary .summary-container {
    background: rgba(3, 9, 23, 0.72);
}

#order-standard_cart .order-summary .btn-checkout,
#order-standard_cart .btn-checkout {
    color: #001020;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 50%, #205cff);
    border: 0;
    border-radius: var(--gt-radius-sm);
    font-weight: 800;
    box-shadow: 0 12px 34px rgba(0, 163, 255, 0.25);
}

#order-standard_cart .empty-cart .btn,
#order-standard_cart .order-summary .btn-continue-shopping {
    color: #ecf5ff;
}

/* Rodapé */
#footer {
    margin-top: 48px;
    padding: 34px 0;
    color: var(--gt-muted);
    background: rgba(3, 9, 23, 0.94);
    border-top: 1px solid var(--gt-line);
}

#footer p {
    color: var(--gt-muted);
}

#footer .back-to-top {
    color: #001020;
    background: linear-gradient(110deg, var(--gt-cyan), var(--gt-blue));
    border-radius: 10px;
    box-shadow: 0 10px 28px rgba(0, 163, 255, 0.22);
}

#fullpage-overlay {
    background: rgba(3, 7, 18, 0.88);
    backdrop-filter: blur(8px);
}

/* Responsividade */
@media (max-width: 991px) {
    #header {
        min-height: 82px;
    }

    #header .logo img {
        max-width: 178px;
        max-height: 50px;
    }

    section#main-body {
        padding-top: 30px;
    }

    .panel,
    .well,
    .invoice-container {
        box-shadow: 0 14px 38px rgba(0, 0, 0, 0.22);
    }
}

@media (max-width: 767px) {
    body::before {
        background-size: 48px 48px;
    }

    #header {
        min-height: 74px;
        padding: 10px 0;
    }

    #header .logo {
        min-height: 48px;
    }

    #header .logo img {
        max-width: 150px;
        max-height: 46px;
    }

    #header .top-nav {
        margin-top: 4px;
    }

    #header .top-nav > li > a {
        padding: 8px 7px;
        font-size: 12px;
    }

    .navbar-main .navbar-collapse {
        background: rgba(7, 18, 37, 0.98);
        border-color: var(--gt-line);
    }

    #home-banner {
        padding: 52px 0 58px;
    }

    #home-banner h2 {
        font-size: 30px;
    }

    .home-shortcuts li a {
        min-height: 88px;
    }

    .header-lined h1 {
        font-size: 28px;
    }

    .panel-body,
    .well {
        padding: 16px;
    }

    .table-responsive {
        border-color: var(--gt-line);
    }

    #order-standard_cart .products .product .product-desc,
    #order-standard_cart .products .product .product-pricing {
        float: none;
        width: 100%;
        text-align: left;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}

/*
 * Correções de compatibilidade com seletores mais específicos do WHMCS Six.
 * Estas regras ficam no final para prevalecer sobre o tema-pai.
 */

/* A logo cadastrada é escura: mantém o cabeçalho claro e melhora o contraste. */
section#header {
    min-height: 84px;
    margin: 0;
    padding: 12px 0;
    color: #53637b;
    background: #ffffff;
    border-bottom: 1px solid #dfe8f4;
    border-radius: 0;
}

section#header .logo {
    min-height: 58px;
}

section#header .logo img {
    width: auto;
    max-width: 210px;
    max-height: 54px;
    object-fit: contain;
}

section#header .top-nav > li > a {
    color: #61718a;
}

section#header .top-nav > li > a:hover,
section#header .top-nav > li > a:focus {
    color: #0d39d9;
    background: #eef6ff;
}

section#header .top-nav .primary-action > a.btn,
section#header .top-nav a.btn-logged-in-admin {
    color: #001020;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 50%, #205cff);
    border: 0;
}

section#main-menu {
    background: linear-gradient(90deg, #071a35 0%, #0a4269 52%, #071a35 100%);
    border-bottom: 1px solid rgba(0, 220, 255, 0.28);
}

section#main-menu nav.navbar-main {
    margin: 0;
    background: transparent;
    border: 0;
}

/* Busca avançada de domínio: duas linhas organizadas e sem elementos sobrepostos. */
section#home-banner,
section#home-banner.with-recaptcha {
    padding: 42px 0 48px;
}

section#home-banner h2 {
    max-width: 1160px;
    margin: 0 auto 28px;
    padding: 0 10px;
    font-size: clamp(28px, 3vw, 42px);
    line-height: 1.16;
    letter-spacing: -0.04em;
    text-wrap: balance;
}

section#home-banner #frmDomainHomepage div.input-group.advanced-input {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    width: 100%;
    overflow: visible;
    color: var(--gt-text);
    background: rgba(3, 9, 23, 0.82);
    border: 1px solid var(--gt-line-strong);
    border-radius: 14px;
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.3);
}

section#home-banner #frmDomainHomepage textarea#message {
    display: block;
    float: none;
    grid-column: 1;
    width: 100%;
    height: 76px;
    min-height: 76px;
    padding: 12px 16px;
    color: var(--gt-text);
    line-height: 1.5;
    overflow: hidden;
    resize: none;
    background: transparent;
    border: 0;
    border-radius: 14px 0 0 0;
    box-shadow: none;
}

section#home-banner #frmDomainHomepage .advanced-input > .input-group-btn {
    position: static;
    top: auto;
    right: auto;
    display: flex;
    grid-column: 2;
    align-items: stretch;
    width: auto;
    height: 76px;
}

section#home-banner #frmDomainHomepage .advanced-input > .input-group-btn .btn.search {
    position: static;
    width: auto;
    min-width: 120px;
    height: 76px;
    margin: 0;
    padding: 0 22px;
    color: #001020;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 50%, #205cff);
    border: 0;
    border-radius: 0 14px 0 0;
    font-size: 16px;
    font-weight: 800;
}

section#home-banner #frmDomainHomepage span.input-group.advanced-input {
    display: flex;
    grid-column: 1 / -1;
    align-items: center;
    gap: 10px;
    width: 100%;
    min-height: 40px;
    padding: 5px 8px;
    color: #c8d5e8;
    background: rgba(7, 18, 37, 0.96);
    border-top: 1px solid var(--gt-line);
    border-radius: 0 0 14px 14px;
}

section#home-banner #frmDomainHomepage span.input-group.advanced-input > .btn-group {
    flex: 0 1 auto;
}

section#home-banner #frmDomainHomepage .multiselect.btn,
section#home-banner #frmDomainHomepage .btn-group > .btn.multiselect {
    min-height: 32px;
    padding: 6px 10px;
    color: #dce9f8;
    background: rgba(23, 111, 255, 0.12);
    border: 1px solid var(--gt-line-strong);
    border-radius: 8px;
    font-size: 12px;
}

section#home-banner #frmDomainHomepage .advanced-input label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0 0 0 auto;
    color: #c8d5e8;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

section#home-banner #frmDomainHomepage .advanced-input input[type="checkbox"] {
    width: 15px;
    height: 15px;
    margin: 0;
    accent-color: var(--gt-cyan);
}

section#home-banner #frmDomainHomepage .multiselect-container {
    color: #dce9f8;
    background: #071225;
    border-color: var(--gt-line-strong);
}

section#home-banner #frmDomainHomepage .multiselect-container > li > a > label {
    display: block;
    margin: 0;
    padding: 8px 12px;
    color: #dce9f8;
}

/* Atalhos: permite duas linhas e impede textos longos de serem cortados. */
.home-shortcuts ul {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    width: 100%;
}

.home-shortcuts li {
    float: none;
    width: auto;
    min-width: 0;
    min-height: 70px;
    padding: 7px 5px;
    overflow: visible;
    white-space: normal;
}

.home-shortcuts li a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 56px;
}

.home-shortcuts li i {
    flex: 0 0 auto;
    font-size: 20px;
}

.home-shortcuts li p {
    width: 100%;
    margin: 4px 0 0;
    overflow: visible;
    color: #dce9f8;
    font-size: 10px;
    line-height: 1.25;
    text-align: center;
    white-space: normal;
}

.home-shortcuts .lead {
    line-height: 70px;
}

/* O tema Six usava um rodapé claro, que quebrava a continuidade do modo escuro. */
section#footer {
    margin: 48px 0 0;
    padding: 28px 10px;
    color: var(--gt-muted);
    background: #030917;
    border-top: 1px solid var(--gt-line);
}

section#footer p {
    margin: 0;
    color: var(--gt-muted);
}

section#footer .back-to-top i {
    padding: 10px;
    color: #001020;
    background: linear-gradient(110deg, var(--gt-cyan), var(--gt-blue));
    border-radius: 10px;
    opacity: 1;
    box-shadow: 0 10px 28px rgba(0, 163, 255, 0.24);
}

@media (max-width: 767px) {
    section#header {
        min-height: 72px;
        padding: 9px 0;
    }

    section#header .logo,
    section#header .logo img {
        max-width: 148px;
        min-height: 0;
        max-height: 44px;
    }

    section#home-banner h2 {
        font-size: 28px;
    }

    section#home-banner #frmDomainHomepage div.input-group.advanced-input {
        display: block;
    }

    section#home-banner #frmDomainHomepage textarea#message {
        height: 96px;
        min-height: 96px;
        border-radius: 14px 14px 0 0;
    }

    section#home-banner #frmDomainHomepage .advanced-input > .input-group-btn {
        display: block;
        width: 100%;
        height: auto;
    }

    section#home-banner #frmDomainHomepage .advanced-input > .input-group-btn .btn.search {
        width: 100%;
        height: 50px;
        border-radius: 0;
    }

    section#home-banner #frmDomainHomepage span.input-group.advanced-input {
        display: flex;
        flex-wrap: wrap;
        padding: 10px;
    }

    section#home-banner #frmDomainHomepage .advanced-input label {
        width: 100%;
        margin-left: 0;
    }

    .home-shortcuts ul {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-shortcuts li {
        border-bottom: 1px solid var(--gt-line);
    }
}

/*
 * Fallback do carrinho: funciona mesmo se o administrador ainda estiver com
 * standard_cart selecionado. As regras críticas usam prioridade suficiente
 * para vencer o CSS do formulário, que é carregado depois do tema principal.
 */
html body #order-standard_cart .products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
    height: auto !important;
}

html body #order-standard_cart .products .product {
    display: grid !important;
    float: none !important;
    grid-template-columns: minmax(0, 1fr) 150px !important;
    grid-template-rows: auto 1fr !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    color: var(--gt-text) !important;
    background: linear-gradient(145deg, rgba(12, 28, 56, 0.98), rgba(4, 12, 29, 0.99)) !important;
    border: 1px solid var(--gt-line) !important;
    border-radius: 16px !important;
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.24) !important;
}

html body #order-standard_cart .products .product header {
    grid-column: 1 / -1 !important;
    margin: 0 !important;
    padding: 14px 18px !important;
    color: var(--gt-text) !important;
    background: linear-gradient(110deg, rgba(13, 57, 217, 0.34), rgba(7, 18, 37, 0.98)) !important;
    border-bottom: 1px solid var(--gt-line) !important;
    border-radius: 0 !important;
}

html body #order-standard_cart .products .product header span,
html body #order-standard_cart .products .product header .qty {
    color: var(--gt-text) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
}

html body #order-standard_cart .products .product div.product-desc {
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    padding: 20px !important;
    color: #cbd8ea !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
}

html body #order-standard_cart .products .product div.product-desc br {
    display: none !important;
}

html body #order-standard_cart .products .product div.product-desc h2 {
    margin: 0 0 8px !important;
    color: var(--gt-cyan) !important;
    font-size: 21px !important;
    line-height: 1.2 !important;
}

html body #order-standard_cart .products .product div.product-desc h3 {
    margin: 18px 0 8px !important;
    color: var(--gt-text) !important;
    font-size: 16px !important;
    line-height: 1.25 !important;
}

html body #order-standard_cart .products .product div.product-desc p {
    margin: 0 0 12px !important;
    color: #b8c7db !important;
}

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

html body #order-standard_cart .products .product div.product-desc li {
    margin: 6px 0 !important;
    color: #d7e3f2 !important;
}

html body #order-standard_cart .products .product footer {
    display: flex !important;
    float: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 20px 14px !important;
    color: var(--gt-muted) !important;
    text-align: center !important;
    background: rgba(3, 9, 23, 0.5) !important;
    border-left: 1px solid var(--gt-line) !important;
}

html body #order-standard_cart .products .product div.product-pricing {
    float: none !important;
    width: auto !important;
    margin: 0 0 14px !important;
    color: var(--gt-muted) !important;
    font-size: 11px !important;
    text-align: center !important;
}

html body #order-standard_cart .products .product div.product-pricing span.price {
    display: block !important;
    color: var(--gt-cyan) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
}

html body #order-standard_cart .products .product .btn-order-now {
    display: block !important;
    width: 100% !important;
    padding: 10px 8px !important;
    color: #001020 !important;
    white-space: normal !important;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 52%, #205cff) !important;
    border: 0 !important;
    border-radius: 10px !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
}

html body #order-standard_cart .cart-sidebar .panel,
html body #order-standard_cart .sidebar-collapsed {
    color: var(--gt-text) !important;
    background: linear-gradient(145deg, rgba(12, 28, 56, 0.97), rgba(4, 12, 29, 0.99)) !important;
    border: 1px solid var(--gt-line) !important;
    border-radius: 14px !important;
}

html body #order-standard_cart .cart-sidebar .panel-heading,
html body #order-standard_cart .cart-sidebar .panel-title {
    color: #dce9f8 !important;
    background: #0b1930 !important;
    border-color: var(--gt-line) !important;
}

html body #order-standard_cart .cart-sidebar .list-group-item {
    color: #b7c6dc !important;
    background: #071225 !important;
    border-color: var(--gt-line) !important;
}

html body #order-standard_cart .cart-sidebar a.list-group-item.active,
html body #order-standard_cart .cart-sidebar a.list-group-item:hover {
    color: #001020 !important;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 52%, #205cff) !important;
}

@media (max-width: 767px) {
    html body #order-standard_cart .products {
        grid-template-columns: 1fr !important;
    }

    html body #order-standard_cart .products .product {
        display: block !important;
    }

    html body #order-standard_cart .products .product footer {
        border-top: 1px solid var(--gt-line) !important;
        border-left: 0 !important;
    }
}

/*
 * Cartões de planos v4: duas colunas legíveis e preço/ação em um rodapé
 * independente. Estas são as últimas regras para vencer o standard_cart.
 */
html body #order-standard_cart .products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: start !important;
    gap: 22px !important;
}

html body #order-standard_cart .products .product {
    display: flex !important;
    flex-direction: column !important;
    align-self: start !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
}

html body #order-standard_cart .products .product header {
    display: block !important;
    width: 100% !important;
}

html body #order-standard_cart .products .product div.product-desc {
    display: block !important;
    flex: none !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 20px 22px 18px !important;
}

html body #order-standard_cart .products .product div.product-desc h2 {
    display: none !important;
}

html body #order-standard_cart .products .product div.product-desc h3 {
    margin: 18px 0 10px !important;
}

html body #order-standard_cart .products .product div.product-desc ul {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px 18px !important;
    width: 100% !important;
    margin: 8px 0 0 !important;
}

html body #order-standard_cart .products .product div.product-desc li {
    min-width: 0 !important;
    margin: 0 !important;
    line-height: 1.45 !important;
    overflow-wrap: anywhere !important;
}

html body #order-standard_cart .products .product footer {
    position: static !important;
    display: flex !important;
    float: none !important;
    clear: both !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    width: 100% !important;
    min-height: 74px !important;
    margin: 0 !important;
    padding: 14px 18px !important;
    text-align: left !important;
    background: rgba(3, 9, 23, 0.68) !important;
    border-top: 1px solid var(--gt-line) !important;
    border-left: 0 !important;
    transform: none !important;
}

html body #order-standard_cart .products .product div.product-pricing {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    text-align: left !important;
}

html body #order-standard_cart .products .product div.product-pricing span.price {
    display: block !important;
    font-size: 19px !important;
    line-height: 1.2 !important;
}

html body #order-standard_cart .products .product .btn-order-now {
    position: static !important;
    display: inline-flex !important;
    float: none !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 158px !important;
    max-width: 190px !important;
    margin: 0 !important;
    padding: 11px 14px !important;
    white-space: normal !important;
    transform: none !important;
}

@media (max-width: 767px) {
    html body #order-standard_cart .products {
        grid-template-columns: 1fr !important;
    }

    html body #order-standard_cart .products .product div.product-desc ul {
        grid-template-columns: 1fr !important;
    }

    html body #order-standard_cart .products .product footer {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 12px !important;
        text-align: center !important;
    }

    html body #order-standard_cart .products .product div.product-pricing {
        text-align: center !important;
    }

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

/*
 * Cartões de planos v5: o WHMCS já cria uma .row para cada dupla de planos.
 * As linhas permanecem empilhadas e cada cartão ocupa metade da área útil.
 */
html body #order-standard_cart .products {
    display: block !important;
    grid-template-columns: none !important;
    width: 100% !important;
}

html body #order-standard_cart .products > .row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    width: auto !important;
    margin: 0 -11px !important;
}

html body #order-standard_cart .products > .row > [class*="col-"] {
    display: flex !important;
    float: none !important;
    flex: 0 0 50% !important;
    width: 50% !important;
    max-width: 50% !important;
    padding: 0 11px 22px !important;
}

html body #order-standard_cart .products .product {
    flex: 1 1 auto !important;
    align-self: stretch !important;
    width: 100% !important;
}

html body #order-standard_cart .products .product footer {
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 11px !important;
    min-height: 0 !important;
    padding: 16px 18px 18px !important;
    text-align: center !important;
}

html body #order-standard_cart .products .product div.product-pricing {
    flex: 0 0 auto !important;
    width: 100% !important;
    margin: 0 !important;
    text-align: center !important;
}

html body #order-standard_cart .products .product .btn-order-now {
    flex: 0 0 auto !important;
    align-self: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 240px !important;
    margin: 0 !important;
}

@media (max-width: 767px) {
    html body #order-standard_cart .products > .row {
        margin: 0 !important;
    }

    html body #order-standard_cart .products > .row > [class*="col-"] {
        flex-basis: 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 0 18px !important;
    }
}

/* ========================================================================== */
/* GamesTec v6 — área do cliente, tabelas, detalhes e busca de domínios       */
/* ========================================================================== */

/* O menu de TLDs precisa ultrapassar o banner sem ser recortado. */
html body section#home-banner,
html body section#home-banner.with-recaptcha {
    z-index: 12 !important;
    overflow: visible !important;
}

html body section#home-banner #frmDomainHomepage,
html body section#home-banner #frmDomainHomepage .row,
html body section#home-banner #frmDomainHomepage .advanced-input {
    overflow: visible !important;
}

html body section#home-banner #frmDomainHomepage span.input-group.advanced-input {
    position: relative !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px 10px !important;
    min-height: 50px !important;
    padding: 8px 10px !important;
}

html body section#home-banner #frmDomainHomepage span.input-group.advanced-input > .btn-group {
    position: relative !important;
    z-index: 20 !important;
    flex: 1 1 145px !important;
    width: auto !important;
    min-width: 0 !important;
}

html body section#home-banner #frmDomainHomepage span.input-group.advanced-input > .btn-group.open {
    z-index: 1300 !important;
}

html body section#home-banner #frmDomainHomepage .multiselect.btn,
html body section#home-banner #frmDomainHomepage .btn-group > .btn.multiselect {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 34px !important;
    margin: 0 !important;
    overflow: hidden !important;
    text-align: left !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

html body section#home-banner #frmDomainHomepage .multiselect-container.dropdown-menu {
    z-index: 1400 !important;
    width: max-content !important;
    min-width: 220px !important;
    max-width: min(360px, calc(100vw - 32px)) !important;
    max-height: 280px !important;
    margin-top: 8px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    color: #dce9f8 !important;
    background: #071225 !important;
    border: 1px solid var(--gt-line-strong) !important;
    border-radius: 10px !important;
    box-shadow: 0 20px 54px rgba(0, 0, 0, 0.48) !important;
}

html body section#home-banner #frmDomainHomepage .multiselect-container > li,
html body section#home-banner #frmDomainHomepage .multiselect-container > li > a,
html body section#home-banner #frmDomainHomepage .multiselect-container > li > a > label {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    color: #dce9f8 !important;
    white-space: normal !important;
}

html body section#home-banner #frmDomainHomepage .multiselect-container > li > a > label {
    padding: 9px 13px 9px 34px !important;
    line-height: 1.35 !important;
}

html body section#home-banner #frmDomainHomepage .multiselect-container .input-group {
    width: calc(100% - 16px) !important;
    margin: 8px !important;
}

html body section#home-banner #frmDomainHomepage .multiselect-search {
    color: var(--gt-text) !important;
    background: #030917 !important;
    border-color: var(--gt-line-strong) !important;
}

html body section#home-banner #frmDomainHomepage .advanced-input > label {
    flex: 0 1 auto !important;
    margin: 0 0 0 auto !important;
    padding: 5px 4px !important;
}

/* Atalhos da página inicial: altura livre, textos inteiros e respiro. */
html body .home-shortcuts {
    position: relative !important;
    z-index: 8 !important;
    padding: 8px 0 !important;
    overflow: visible !important;
}

html body .home-shortcuts > .container > .row {
    display: flex !important;
    align-items: stretch !important;
    flex-wrap: wrap !important;
}

html body .home-shortcuts .lead {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 100% !important;
    min-height: 82px !important;
    margin: 0 !important;
    line-height: 1.35 !important;
}

html body .home-shortcuts ul {
    align-items: stretch !important;
    gap: 0 !important;
    height: auto !important;
}

html body .home-shortcuts li {
    display: flex !important;
    align-items: stretch !important;
    height: auto !important;
    min-height: 82px !important;
    padding: 5px 7px !important;
    overflow: visible !important;
}

html body .home-shortcuts li a {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 70px !important;
    padding: 8px 6px !important;
    border-radius: 10px !important;
}

html body .home-shortcuts li p {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    overflow: visible !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
}

/* Painéis da página inicial da Área do Cliente. */
html body .client-home-panels .panel,
html body .client-home-panels .panel.panel-default {
    overflow: hidden !important;
    color: var(--gt-text) !important;
    background: linear-gradient(145deg, rgba(12, 28, 56, 0.98), rgba(4, 12, 29, 0.99)) !important;
    border-color: var(--gt-line) !important;
}

html body .client-home-panels .panel > .panel-heading {
    padding: 12px 14px !important;
    color: var(--gt-text) !important;
    background: #0b1930 !important;
    border-bottom: 1px solid var(--gt-line) !important;
}

html body .client-home-panels .panel > .panel-heading .panel-title,
html body .client-home-panels .panel > .panel-heading .panel-title > i,
html body .client-home-panels .panel > .panel-heading .panel-title > a {
    color: #f1f7ff !important;
}

html body .client-home-panels .panel > .panel-heading .panel-title .btn {
    margin: -3px 0 -3px 10px !important;
    color: #ecf5ff !important;
    background: #34445f !important;
    border: 1px solid var(--gt-line-strong) !important;
}

html body .client-home-panels .panel > .panel-body,
html body .client-home-panels .panel > .panel-footer,
html body .client-home-panels .panel > .list-group {
    color: #cbd8ea !important;
    background: rgba(5, 14, 32, 0.96) !important;
    border-color: var(--gt-line) !important;
}

html body .client-home-panels .panel > .panel-body p,
html body .client-home-panels .panel > .panel-body small,
html body .client-home-panels .panel > .panel-footer,
html body .client-home-panels .panel > .panel-footer a {
    color: #aebdd2 !important;
}

html body .client-home-panels .panel .list-group-item {
    color: #d4e0ef !important;
    background: #071225 !important;
    border-color: var(--gt-line) !important;
}

html body .client-home-panels .panel .list-group-item:hover {
    color: var(--gt-text) !important;
    background: rgba(23, 111, 255, 0.16) !important;
}

html body .client-home-panels .form-control,
html body .client-home-panels input,
html body .home-kb-search .form-control {
    color: var(--gt-text) !important;
    background-color: #071225 !important;
    border-color: var(--gt-line-strong) !important;
}

/* Laterais da Área do Cliente: títulos e links não podem ficar apagados. */
html body .panel-sidebar > .panel-heading,
html body .panel-sidebar > .panel-heading .panel-title,
html body .panel-sidebar > .panel-heading .panel-title i {
    color: #e8f2ff !important;
    background: #0b1930 !important;
}

html body .panel-sidebar .list-group-item,
html body .panel-sidebar .list-group-item i,
html body .panel-sidebar .list-group-item span {
    color: #b8c8dc !important;
}

html body .panel-sidebar .list-group-item.active,
html body .panel-sidebar .list-group-item.active i,
html body .panel-sidebar .list-group-item.active span {
    color: #001020 !important;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 52%, #205cff) !important;
}

/* DataTables: remove todos os fundos claros das listas de serviços e faturas. */
html body .table-container,
html body .dataTables_wrapper,
html body .dataTables_wrapper .listtable {
    color: #d5e1f0 !important;
    background: #071225 !important;
    border-color: var(--gt-line) !important;
}

html body .dataTables_wrapper {
    overflow: hidden !important;
    border: 1px solid var(--gt-line) !important;
    border-radius: 14px !important;
    box-shadow: var(--gt-shadow) !important;
}

html body div.dataTables_wrapper div.dataTables_info,
html body .dataTables_wrapper .dataTables_filter,
html body .dataTables_wrapper .dataTables_length,
html body .dataTables_wrapper .dataTables_paginate {
    color: #b8c7db !important;
    background: #0b1930 !important;
    border-color: var(--gt-line) !important;
}

html body div.dataTables_wrapper div.dataTables_info {
    border-bottom: 1px solid var(--gt-line) !important;
}

html body .dataTables_wrapper .dataTables_filter label,
html body .dataTables_wrapper .dataTables_length label {
    color: #b8c7db !important;
}

html body .dataTables_wrapper .dataTables_filter label .form-control,
html body .dataTables_wrapper .dataTables_length label .form-control {
    color: var(--gt-text) !important;
    background-color: #030917 !important;
    border: 1px solid var(--gt-line-strong) !important;
}

html body table.table-list,
html body table.table-list > thead,
html body table.table-list > tbody,
html body table.table-list > tfoot {
    color: #d5e1f0 !important;
    background: #071225 !important;
}

html body table.table-list > thead > tr > th,
html body .dataTables_wrapper table.table-list > thead > tr > th,
html body .dataTables_wrapper table.table-list > thead > tr > th.sorting,
html body .dataTables_wrapper table.table-list > thead > tr > th.sorting_asc,
html body .dataTables_wrapper table.table-list > thead > tr > th.sorting_desc {
    color: #f1f7ff !important;
    background: #0b1930 !important;
    border-color: rgba(0, 220, 255, 0.34) !important;
}

html body table.table-list > tbody > tr > td,
html body table.table-list > tbody > tr:nth-child(odd) > td,
html body table.table-list > tbody > tr:nth-child(even) > td {
    color: #d3dfef !important;
    background: #071225 !important;
    border-color: var(--gt-line) !important;
}

html body table.table-list > tbody > tr:nth-child(even) > td {
    background: #09172c !important;
}

html body table.table-list > tbody > tr:hover > td {
    color: var(--gt-text) !important;
    background: #0d203d !important;
}

html body table.table-list > tbody > tr > td strong,
html body table.table-list > tbody > tr > td span:not(.label),
html body table.table-list > tbody > tr > td small {
    color: inherit !important;
}

html body table.table-list .label.status {
    min-width: 86px !important;
    padding: 6px 10px !important;
    color: #8ff2d5 !important;
    background: rgba(52, 245, 208, 0.12) !important;
    border: 1px solid rgba(52, 245, 208, 0.34) !important;
    border-radius: 999px !important;
}

html body .dataTables_wrapper .pagination > li > a,
html body .dataTables_wrapper .pagination > li > span {
    color: #c4d3e7 !important;
    background: #071225 !important;
    border-color: var(--gt-line) !important;
}

html body .dataTables_wrapper .pagination > .active > a,
html body .dataTables_wrapper .pagination > .active > span {
    color: #001020 !important;
    background: var(--gt-cyan) !important;
    border-color: var(--gt-cyan) !important;
}

/* Gerenciar Produto: cartão principal e abas internas totalmente escuras. */
html body div.product-details,
html body div.product-details .row,
html body div.product-details .col-md-6 {
    color: #dce7f5 !important;
}

html body div.product-details h3,
html body div.product-details h4,
html body div.product-details strong {
    color: #f1f7ff !important;
}

html body div.product-details .product-status {
    overflow: hidden !important;
    color: var(--gt-text) !important;
    background: linear-gradient(145deg, #0c1c38, #061022) !important;
    border: 1px solid var(--gt-line-strong) !important;
    border-radius: 14px !important;
    box-shadow: var(--gt-shadow) !important;
}

html body div.product-details div.product-icon {
    color: var(--gt-text) !important;
    background: linear-gradient(145deg, #0d203d, #071225) !important;
    border-radius: 13px 13px 0 0 !important;
}

html body div.product-details div.product-icon .fa-circle {
    color: rgba(0, 220, 255, 0.15) !important;
}

html body div.product-details div.product-icon .fa-stack-1x {
    color: var(--gt-cyan) !important;
}

html body div.product-details .product-status-text {
    color: #8ff2d5 !important;
    background: rgba(52, 245, 208, 0.1) !important;
    border-top: 1px solid rgba(52, 245, 208, 0.22) !important;
}

html body .product-actions-wrapper {
    margin-top: 10px !important;
}

html body .product-actions-wrapper > div {
    margin-top: 8px !important;
}

html body div.product-details-tab-container,
html body .product-details-tab-container > .tab-pane,
html body .product-details-tab-container .module-client-area {
    color: #d5e1f0 !important;
    background: linear-gradient(145deg, #0b1930, #071225) !important;
    border-color: var(--gt-line) !important;
}

html body div.product-details-tab-container {
    min-height: 160px !important;
    border-radius: 0 14px 14px 14px !important;
    box-shadow: var(--gt-shadow) !important;
}

html body .product-details-tab-container h1,
html body .product-details-tab-container h2,
html body .product-details-tab-container h3,
html body .product-details-tab-container h4,
html body .product-details-tab-container h5,
html body .product-details-tab-container h6,
html body .product-details-tab-container strong,
html body .product-details-tab-container label {
    color: #f1f7ff !important;
}

html body .product-details-tab-container p,
html body .product-details-tab-container small,
html body .product-details-tab-container .text-muted {
    color: #aebdd2 !important;
}

html body .product-details-tab-container .panel,
html body .product-details-tab-container .card,
html body .product-details-tab-container .well,
html body .product-details-tab-container .jumbotron,
html body .product-details-tab-container .service-details,
html body .product-details-tab-container .domain-details {
    color: #d5e1f0 !important;
    background: #071225 !important;
    border-color: var(--gt-line-strong) !important;
    box-shadow: none !important;
}

html body .product-details-tab-container .panel-heading,
html body .product-details-tab-container .card-header,
html body .product-details-tab-container .panel-footer,
html body .product-details-tab-container .card-footer {
    color: #f1f7ff !important;
    background: #0b1930 !important;
    border-color: var(--gt-line) !important;
}

html body .product-details-tab-container .form-control,
html body .product-details-tab-container input,
html body .product-details-tab-container select,
html body .product-details-tab-container textarea,
html body .product-details-tab-container .input-group-addon {
    color: var(--gt-text) !important;
    background: #030917 !important;
    border-color: var(--gt-line-strong) !important;
}

html body .product-details-tab-container iframe {
    color-scheme: dark !important;
    background: #071225 !important;
    border: 1px solid var(--gt-line) !important;
    border-radius: 12px !important;
}

/* Espaçamento consistente em grupos de ações sem quebrar os btn-group. */
html body .main-content .form-actions > .btn,
html body .main-content .modal-footer > .btn,
html body .main-content .button-group > .btn {
    margin: 4px !important;
}

@media (max-width: 767px) {
    html body section#home-banner #frmDomainHomepage span.input-group.advanced-input > .btn-group {
        flex: 1 1 calc(50% - 6px) !important;
    }

    html body section#home-banner #frmDomainHomepage .advanced-input > label {
        flex: 1 1 100% !important;
        margin-left: 0 !important;
    }

    html body .home-shortcuts > .container > .row {
        display: block !important;
    }

    html body .dataTables_wrapper {
        overflow-x: auto !important;
    }

    html body div.dataTables_wrapper div.dataTables_info,
    html body .dataTables_wrapper .dataTables_filter,
    html body .dataTables_wrapper .dataTables_length,
    html body .dataTables_wrapper .dataTables_paginate {
        float: none !important;
        width: 100% !important;
    }

    html body .dataTables_wrapper .dataTables_filter {
        margin-top: 0 !important;
    }

    html body div.product-details-tab-container {
        padding: 14px !important;
        border-radius: 0 0 14px 14px !important;
    }
}

@media (max-width: 480px) {
    html body .home-shortcuts ul {
        grid-template-columns: 1fr !important;
    }

    html body section#home-banner #frmDomainHomepage span.input-group.advanced-input > .btn-group {
        flex-basis: 100% !important;
    }
}

/* ========================================================================== */
/* GamesTec v7 — módulos de serviço, pesquisa e campos restantes             */
/* ========================================================================== */

/* Pesquisa das listas: ícone próprio, campo escuro e foco visível. */
html body .dataTables_wrapper .dataTables_filter label {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    min-width: 220px !important;
}

html body .dataTables_wrapper .dataTables_filter label::before {
    position: absolute !important;
    z-index: 2 !important;
    left: 24px !important;
    content: "\f002" !important;
    color: var(--gt-cyan) !important;
    font-family: "Font Awesome 5 Free", "Font Awesome 5 Pro", FontAwesome, sans-serif !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    pointer-events: none !important;
}

html body .dataTables_wrapper .dataTables_filter label .form-control,
html body .dataTables_wrapper .dataTables_filter input,
html body .dataTables_wrapper input[type="search"] {
    width: 220px !important;
    min-height: 38px !important;
    padding: 8px 12px 8px 38px !important;
    color: var(--gt-text) !important;
    background: #030917 !important;
    border: 1px solid var(--gt-line-strong) !important;
    border-radius: 9px !important;
    box-shadow: inset 0 0 0 1px rgba(0, 220, 255, 0.03) !important;
}

html body .dataTables_wrapper .dataTables_filter label .form-control:focus,
html body .dataTables_wrapper .dataTables_filter input:focus,
html body .dataTables_wrapper input[type="search"]:focus {
    border-color: var(--gt-cyan) !important;
    box-shadow: 0 0 0 3px rgba(0, 220, 255, 0.12) !important;
}

/* Campos internos da Área do Cliente e dos módulos adicionais. */
html body .main-content .form-control,
html body .main-content input[type="text"],
html body .main-content input[type="email"],
html body .main-content input[type="password"],
html body .main-content input[type="number"],
html body .main-content input[type="search"],
html body .main-content input[type="tel"],
html body .main-content input[type="url"],
html body .main-content select,
html body .main-content textarea,
html body .main-content .input-group-addon,
html body .main-content .bootstrap-select > .dropdown-toggle,
html body .main-content .select2-container .select2-choice,
html body .main-content .select2-container .select2-selection {
    color: var(--gt-text) !important;
    background: #071225 !important;
    border-color: var(--gt-line-strong) !important;
}

html body .main-content .form-control[readonly],
html body .main-content .form-control[disabled],
html body .main-content fieldset[disabled] .form-control {
    color: #aebdd2 !important;
    background: #0b1930 !important;
    opacity: 1 !important;
}

html body .main-content .input-group-addon,
html body .main-content .input-group-btn > .btn-default {
    color: var(--gt-cyan) !important;
    background: #0b1930 !important;
    border-color: var(--gt-line-strong) !important;
}

html body .main-content .select2-container .select2-choice .select2-arrow,
html body .main-content .select2-container .select2-selection__arrow {
    background: #0d203d !important;
    border-color: var(--gt-line) !important;
}

html body .main-content .dropdown-menu,
html body .main-content .select2-drop,
html body .main-content .select2-dropdown,
html body .main-content .datepicker,
html body .main-content .daterangepicker {
    color: #dce7f5 !important;
    background: #071225 !important;
    border-color: var(--gt-line-strong) !important;
}

/*
 * Alguns módulos imprimem um cartão próprio dentro de .module-client-area e
 * carregam o CSS depois do tema. A prioridade abaixo alcança o cartão raiz,
 * seus painéis e os blocos de credenciais sem alterar o botão de acesso.
 */
html body .product-details-tab-container .module-client-area {
    width: 100% !important;
    margin: 0 !important;
    padding: 16px 0 0 !important;
    color: #d5e1f0 !important;
    background: transparent !important;
}

html body .product-details-tab-container .module-client-area > div,
html body .product-details-tab-container .module-client-area > section,
html body .product-details-tab-container .module-client-area > article,
html body .product-details-tab-container .module-client-area > form {
    color: #d5e1f0 !important;
    background: linear-gradient(145deg, #0b1930, #071225) !important;
    border-color: var(--gt-line-strong) !important;
    box-shadow: 0 16px 44px rgba(0, 0, 0, 0.24) !important;
}

html body .product-details-tab-container .module-client-area > div > div,
html body .product-details-tab-container .module-client-area > div > section,
html body .product-details-tab-container .module-client-area > section > div,
html body .product-details-tab-container .module-client-area .panel,
html body .product-details-tab-container .module-client-area .card,
html body .product-details-tab-container .module-client-area .well,
html body .product-details-tab-container .module-client-area [class*="access" i],
html body .product-details-tab-container .module-client-area [class*="credential" i],
html body .product-details-tab-container .module-client-area [class*="detail" i],
html body .product-details-tab-container .module-client-area [class*="info" i] {
    color: #d5e1f0 !important;
    background: #071225 !important;
    border-color: var(--gt-line-strong) !important;
}

/* Fundos brancos escritos diretamente no HTML por módulos de terceiros. */
html body .product-details-tab-container .module-client-area [style*="background: white" i],
html body .product-details-tab-container .module-client-area [style*="background:white" i],
html body .product-details-tab-container .module-client-area [style*="background-color: white" i],
html body .product-details-tab-container .module-client-area [style*="background-color:white" i],
html body .product-details-tab-container .module-client-area [style*="background: #fff" i],
html body .product-details-tab-container .module-client-area [style*="background:#fff" i],
html body .product-details-tab-container .module-client-area [style*="background-color: #fff" i],
html body .product-details-tab-container .module-client-area [style*="background-color:#fff" i],
html body .product-details-tab-container .module-client-area [style*="background: #ffffff" i],
html body .product-details-tab-container .module-client-area [style*="background:#ffffff" i],
html body .product-details-tab-container .module-client-area [style*="background-color: #ffffff" i],
html body .product-details-tab-container .module-client-area [style*="background-color:#ffffff" i] {
    color: #d5e1f0 !important;
    background: #071225 !important;
    border-color: var(--gt-line-strong) !important;
}

html body .product-details-tab-container .module-client-area h1,
html body .product-details-tab-container .module-client-area h2,
html body .product-details-tab-container .module-client-area h3,
html body .product-details-tab-container .module-client-area h4,
html body .product-details-tab-container .module-client-area h5,
html body .product-details-tab-container .module-client-area h6,
html body .product-details-tab-container .module-client-area strong,
html body .product-details-tab-container .module-client-area label,
html body .product-details-tab-container .module-client-area [class*="title" i] {
    color: #f1f7ff !important;
}

html body .product-details-tab-container .module-client-area p,
html body .product-details-tab-container .module-client-area small,
html body .product-details-tab-container .module-client-area [class*="subtitle" i],
html body .product-details-tab-container .module-client-area [class*="description" i] {
    color: #aebdd2 !important;
}

html body .product-details-tab-container .module-client-area input,
html body .product-details-tab-container .module-client-area select,
html body .product-details-tab-container .module-client-area textarea,
html body .product-details-tab-container .module-client-area .form-control,
html body .product-details-tab-container .module-client-area [class*="field" i],
html body .product-details-tab-container .module-client-area [class*="value" i] {
    color: #dce7f5 !important;
    background: #030917 !important;
    border-color: var(--gt-line-strong) !important;
}

html body .product-details-tab-container .module-client-area a:not(.btn) {
    color: #64ddff !important;
}

html body .product-details-tab-container .module-client-area button,
html body .product-details-tab-container .module-client-area .btn {
    position: relative !important;
    z-index: 2 !important;
    color: #001020 !important;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 52%, #205cff) !important;
    border-color: transparent !important;
}

html body .product-details-tab-container .module-client-area button + button,
html body .product-details-tab-container .module-client-area .btn + .btn {
    margin-left: 8px !important;
}

@media (max-width: 767px) {
    html body .dataTables_wrapper .dataTables_filter label,
    html body .dataTables_wrapper .dataTables_filter label .form-control,
    html body .dataTables_wrapper .dataTables_filter input,
    html body .dataTables_wrapper input[type="search"] {
        width: 100% !important;
    }

    html body .dataTables_wrapper .dataTables_filter label::before {
        left: 14px !important;
    }

    html body .product-details-tab-container .module-client-area > div,
    html body .product-details-tab-container .module-client-area > section,
    html body .product-details-tab-container .module-client-area > article {
        padding: 14px !important;
    }

    html body .product-details-tab-container .module-client-area button + button,
    html body .product-details-tab-container .module-client-area .btn + .btn {
        margin-top: 8px !important;
        margin-left: 0 !important;
    }
}

/* ========================================================================== */
/* GamesTec v8 — cartões laterais da Área do Cliente                         */
/* ========================================================================== */

html body .panel.panel-sidebar {
    margin-bottom: 20px !important;
    overflow: hidden !important;
    color: #dce7f5 !important;
    background: linear-gradient(145deg, #0b1930, #071225) !important;
    border: 1px solid var(--gt-line) !important;
    border-radius: 14px !important;
    box-shadow: 0 14px 38px rgba(0, 0, 0, 0.22) !important;
}

html body .panel.panel-sidebar > .panel-heading {
    padding: 10px 14px !important;
    color: #f1f7ff !important;
    background: #0b1930 !important;
    border: 0 !important;
    border-bottom: 1px solid var(--gt-line) !important;
    border-radius: 0 !important;
}

html body .panel.panel-sidebar > .panel-heading .panel-title,
html body .panel.panel-sidebar > .panel-heading .panel-title i,
html body .panel.panel-sidebar > .panel-heading .panel-minimise {
    color: #dce9f8 !important;
}

html body .panel.panel-sidebar > .panel-heading .panel-minimise {
    opacity: 0.9 !important;
}

html body .panel.panel-sidebar > .panel-body {
    padding: 12px 14px !important;
    color: #dce7f5 !important;
    background: #071225 !important;
    border: 0 !important;
}

html body .panel.panel-sidebar > .panel-body,
html body .panel.panel-sidebar > .panel-body p,
html body .panel.panel-sidebar > .panel-body strong,
html body .panel.panel-sidebar > .panel-body em,
html body .panel.panel-sidebar > .panel-body address {
    color: #dce7f5 !important;
}

html body .panel.panel-sidebar > .list-group {
    margin: 0 !important;
    background: #071225 !important;
    border: 0 !important;
}

html body .panel.panel-sidebar > .list-group > .list-group-item {
    padding: 9px 14px !important;
    color: #c6d4e7 !important;
    background: #071225 !important;
    border-color: var(--gt-line) !important;
}

html body .panel.panel-sidebar > .list-group > .list-group-item:hover,
html body .panel.panel-sidebar > .list-group > .list-group-item:focus {
    color: var(--gt-text) !important;
    background: #0d203d !important;
}

html body .panel.panel-sidebar > .list-group > .list-group-item i,
html body .panel.panel-sidebar > .list-group > .list-group-item:hover i,
html body .panel.panel-sidebar > .list-group > .list-group-item:focus i {
    color: #bcd0e9 !important;
}

html body .panel.panel-sidebar > .panel-footer,
html body .panel.panel-sidebar > .list-group + .panel-footer {
    padding: 10px 14px !important;
    color: #dce7f5 !important;
    background: #071225 !important;
    border: 0 !important;
    border-top: 1px solid var(--gt-line) !important;
    border-radius: 0 !important;
}

html body .panel.panel-sidebar > .panel-footer .btn,
html body .panel.panel-sidebar > .panel-footer a.btn,
html body .panel.panel-sidebar > .panel-footer button,
html body .panel.panel-sidebar > .panel-footer input[type="submit"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: 100% !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 8px 12px !important;
    color: #001020 !important;
    white-space: normal !important;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 52%, #205cff) !important;
    border: 0 !important;
    border-radius: 9px !important;
    box-shadow: 0 9px 24px rgba(0, 163, 255, 0.2), inset 0 1px rgba(255, 255, 255, 0.42) !important;
}

html body .panel.panel-sidebar > .panel-footer .btn:hover,
html body .panel.panel-sidebar > .panel-footer a.btn:hover,
html body .panel.panel-sidebar > .panel-footer button:hover,
html body .panel.panel-sidebar > .panel-footer input[type="submit"]:hover {
    color: #001020 !important;
    background: linear-gradient(110deg, #38e5ff, #2ba8ff 52%, #3972ff) !important;
    transform: translateY(-1px) !important;
}

@media (max-width: 767px) {
    html body .panel.panel-sidebar {
        margin-bottom: 16px !important;
    }
}

/* ========================================================================== */
/* GamesTec v9 — status e linhas de serviços ativos                          */
/* ========================================================================== */

html body div[menuitemname="Active Products/Services"] .list-group-item {
    padding: 0 !important;
}

html body div[menuitemname="Active Products/Services"] .div-service-item {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 54px !important;
    padding: 8px 12px !important;
    gap: 12px !important;
}

html body div[menuitemname="Active Products/Services"] .div-service-status {
    display: flex !important;
    flex: 0 0 62px !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 62px !important;
}

html body div[menuitemname="Active Products/Services"] .div-service-status .label:not(.label-placeholder) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 58px !important;
    min-height: 24px !important;
    margin: 0 !important;
    padding: 5px 9px !important;
    overflow: visible !important;
    color: #7fffe6 !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: 0.035em !important;
    text-transform: uppercase !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    background: rgba(52, 245, 208, 0.13) !important;
    border: 1px solid rgba(52, 245, 208, 0.42) !important;
    border-radius: 999px !important;
    box-shadow: inset 0 1px rgba(255, 255, 255, 0.08), 0 5px 14px rgba(52, 245, 208, 0.08) !important;
}

html body div[menuitemname="Active Products/Services"] .div-service-name {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    gap: 2px !important;
}

html body div[menuitemname="Active Products/Services"] .div-service-name .font-weight-bold {
    color: #edf6ff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
}

html body div[menuitemname="Active Products/Services"] .div-service-name .text-domain {
    color: #2bc7f4 !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
}

html body div[menuitemname="Active Products/Services"] .div-service-buttons {
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    margin-left: auto !important;
}

html body div[menuitemname="Active Products/Services"] .div-service-buttons .btn-view-details {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 34px !important;
    padding: 6px 14px !important;
    color: #eef6ff !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    background: #0b1930 !important;
    border: 1px solid var(--gt-line-strong) !important;
    border-radius: 999px !important;
    box-shadow: none !important;
}

html body div[menuitemname="Active Products/Services"] .div-service-buttons .btn-view-details:hover,
html body div[menuitemname="Active Products/Services"] .div-service-buttons .btn-view-details:focus {
    color: #78eaff !important;
    background: rgba(23, 111, 255, 0.18) !important;
    border-color: rgba(0, 220, 255, 0.5) !important;
}

@media (max-width: 479px) {
    html body div[menuitemname="Active Products/Services"] .div-service-item {
        display: grid !important;
        grid-template-columns: 58px minmax(0, 1fr) !important;
        gap: 8px 10px !important;
        padding: 10px 12px !important;
    }

    html body div[menuitemname="Active Products/Services"] .div-service-status {
        min-width: 58px !important;
    }

    html body div[menuitemname="Active Products/Services"] .div-service-buttons {
        grid-column: 2 !important;
        justify-self: start !important;
        margin-left: 0 !important;
    }
}

/* ========================================================================== */
/* GamesTec v10 — revisão completa de contraste e componentes nativos        */
/* ========================================================================== */

/* Twenty-One e Six: cabeçalhos/rodapés de cartões nunca devem voltar ao branco. */
html body .main-content .card,
html body .main-content .card-body,
html body .main-content .card-header,
html body .main-content .card-footer,
html body .main-content .panel-heading,
html body .main-content .panel-footer {
    color: #dce7f5 !important;
    border-color: var(--gt-line) !important;
}

html body .main-content .card,
html body .main-content .card-body {
    background-color: #071225 !important;
}

html body .main-content .card-header,
html body .main-content .panel-heading {
    background-color: #0b1930 !important;
}

html body .main-content .card-footer,
html body .main-content .panel-footer {
    background-color: #061022 !important;
}

/* Editor Markdown usado em Abrir Ticket, responder ticket e base de conhecimento. */
html body .md-editor,
html body .md-editor.active {
    overflow: hidden !important;
    color: #dce7f5 !important;
    background: #071225 !important;
    border: 1px solid var(--gt-line-strong) !important;
    border-radius: 12px !important;
    box-shadow: none !important;
}

html body .md-editor > .md-header,
html body .md-editor > .btn-toolbar,
html body .md-editor .md-header.btn-toolbar {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 5px !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 7px 9px !important;
    color: #dce7f5 !important;
    background: #0b1930 !important;
    border: 0 !important;
    border-bottom: 1px solid var(--gt-line) !important;
}

html body .md-editor .md-header .btn-group {
    display: inline-flex !important;
    margin: 0 !important;
}

html body .md-editor .md-header .btn,
html body .md-editor .md-controls .md-control {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 34px !important;
    min-height: 32px !important;
    margin: 0 !important;
    color: #dce7f5 !important;
    background: #122440 !important;
    border: 1px solid var(--gt-line-strong) !important;
    border-radius: 7px !important;
    box-shadow: none !important;
}

html body .md-editor .md-header .btn:hover,
html body .md-editor .md-header .btn:focus,
html body .md-editor .md-header .btn.active,
html body .md-editor .md-header .btn[aria-pressed="true"] {
    color: #001020 !important;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 52%, #205cff) !important;
    border-color: transparent !important;
}

html body .md-editor .md-header .btn.btn-primary {
    min-width: auto !important;
    padding-right: 11px !important;
    padding-left: 11px !important;
    color: #001020 !important;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 52%, #205cff) !important;
    border-color: transparent !important;
}

html body .md-editor > textarea.markdown-editor,
html body .md-editor > textarea.md-input,
html body .md-editor > .md-preview {
    min-height: 260px !important;
    margin: 0 !important;
    padding: 16px !important;
    color: #e8f2ff !important;
    caret-color: var(--gt-cyan) !important;
    background: #030917 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

html body .md-editor > .md-preview,
html body .md-editor > .md-preview p,
html body .md-editor > .md-preview li,
html body .md-editor > .md-preview blockquote {
    color: #dce7f5 !important;
}

html body .md-editor > .md-footer {
    min-height: 30px !important;
    padding: 5px 10px !important;
    color: #91a4c0 !important;
    background: #0b1930 !important;
    border: 0 !important;
    border-top: 1px solid var(--gt-line) !important;
}

html body .md-editor .markdown-editor-status,
html body .md-editor .markdown-editor-status .small-font,
html body .md-editor .markdown-save {
    color: #91a4c0 !important;
}

html body .md-editor.md-fullscreen-mode {
    color: #dce7f5 !important;
    background: #030712 !important;
}

html body .md-editor.md-fullscreen-mode .md-header,
html body .md-editor.md-fullscreen-mode .md-input,
html body .md-editor.md-fullscreen-mode .md-preview {
    color: #e8f2ff !important;
    background: #030917 !important;
}

/* Anexos: elimina o botão branco criado pelo controle nativo do navegador. */
html body .main-content .custom-file-label,
html body .main-content input[type="file"] {
    color: #cbd8ea !important;
    background-color: #071225 !important;
    border-color: var(--gt-line-strong) !important;
    border-radius: 9px !important;
}

html body .main-content .custom-file-label::after,
html body .main-content input[type="file"]::file-selector-button,
html body .main-content input[type="file"]::-webkit-file-upload-button {
    min-height: 34px !important;
    color: #001020 !important;
    font-weight: 700 !important;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 52%, #205cff) !important;
    border: 0 !important;
    border-right: 1px solid var(--gt-line-strong) !important;
}

/* Laterais: remove os quadrados/gradientes indevidos atrás de ícones e textos. */
html body .panel-sidebar > .panel-heading .panel-title > i,
html body .panel-sidebar > .panel-heading .panel-title > span,
html body .panel-sidebar > .panel-heading .panel-minimise,
html body .panel-sidebar .list-group-item > i,
html body .panel-sidebar .list-group-item > span:not(.badge) {
    background: transparent !important;
    box-shadow: none !important;
}

html body .panel-sidebar .list-group-item.active > i,
html body .panel-sidebar .list-group-item.active > span:not(.badge),
html body .panel-sidebar .list-group-item:hover > i,
html body .panel-sidebar .list-group-item:focus > i {
    color: inherit !important;
    background: transparent !important;
}

html body .panel-sidebar .list-group-item > i {
    width: 22px !important;
    text-align: center !important;
}

html body .panel-sidebar .list-group-item > .badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 32px !important;
    min-height: 22px !important;
    color: #001020 !important;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff) !important;
    border: 0 !important;
    border-radius: 999px !important;
}

/* Filtro Visualizar: seleção elegante sem borda branca ou controle nativo exposto. */
html body .panel-sidebar.view-filter-btns .list-group-item.active,
html body .panel-sidebar.view-filter-btns .list-group-item.active:hover,
html body .panel-sidebar.view-filter-btns .list-group-item.active:focus {
    color: #f1f7ff !important;
    background: rgba(23, 111, 255, 0.2) !important;
    border-color: rgba(0, 220, 255, 0.42) !important;
    border-left: 3px solid var(--gt-cyan) !important;
    box-shadow: inset 0 0 0 1px rgba(0, 220, 255, 0.04) !important;
    outline: 0 !important;
}

html body .panel-sidebar.view-filter-btns .list-group-item .fa-circle,
html body .panel-sidebar.view-filter-btns .list-group-item .fa-dot-circle {
    color: #66ddff !important;
    background: transparent !important;
}

/* Pesquisa das tabelas: SVG próprio, sem depender da fonte do Font Awesome. */
html body .dataTables_wrapper .dataTables_filter label::before {
    content: none !important;
}

html body .dataTables_wrapper .dataTables_filter label .form-control,
html body .dataTables_wrapper .dataTables_filter input,
html body .dataTables_wrapper input[type="search"] {
    padding-left: 40px !important;
    background-color: #030917 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300dcff' stroke-width='2.3' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: 13px center !important;
    background-size: 16px 16px !important;
}

/* Alertas e caixas de módulos de terceiros dentro de Gerenciar Produto. */
html body .product-details-tab-container .module-client-area .alert,
html body .product-details-tab-container .module-client-area .alert-info,
html body .product-details-tab-container .module-client-area .alert-light,
html body .product-details-tab-container .module-client-area .bg-light,
html body .product-details-tab-container .module-client-area .bg-white {
    color: #dce7f5 !important;
    background-color: #0d203d !important;
    border-color: var(--gt-line-strong) !important;
}

html body .product-details-tab-container .module-client-area .alert *,
html body .product-details-tab-container .module-client-area .alert-info *,
html body .product-details-tab-container .module-client-area .alert-light * {
    color: inherit !important;
}

html body .product-details-tab-container .module-client-area .btn-primary,
html body .product-details-tab-container .module-client-area a.btn-primary,
html body .product-details-tab-container .module-client-area button.btn-primary {
    color: #001020 !important;
    background: linear-gradient(110deg, var(--gt-cyan), #1599ff 52%, #205cff) !important;
    border-color: transparent !important;
}

/* Seleção de texto coerente com a identidade visual. */
html body ::selection {
    color: #001020;
    background: #65eaff;
}

@media (max-width: 767px) {
    html body .md-editor > textarea.markdown-editor,
    html body .md-editor > textarea.md-input,
    html body .md-editor > .md-preview {
        min-height: 220px !important;
    }

    html body .md-editor > .md-header,
    html body .md-editor > .btn-toolbar {
        gap: 4px !important;
        padding: 6px !important;
    }

    html body .dataTables_wrapper .dataTables_filter label,
    html body .dataTables_wrapper .dataTables_filter label .form-control,
    html body .dataTables_wrapper .dataTables_filter input,
    html body .dataTables_wrapper input[type="search"] {
        min-width: 0 !important;
        width: 100% !important;
    }
}
