/* Neonhost customer palette. Keep Lagom's native layout and breakpoints. */
.neon-client-ui {
    --neon-bg: var(--nh-bg-111019, #111019);
    --neon-surface: var(--nh-surface-1b1927, #1b1927);
    --neon-surface-2: var(--nh-raised-242135, #242135);
    --neon-border: var(--nh-border-39334d, #39334d);
    --neon-text: var(--nh-text-f7f4ff, #f7f4ff);
    --neon-muted: var(--nh-muted-bdb5d0, #bdb5d0);
    --neon-purple: var(--nh-purple-b676f4, #b676f4);
    --neon-pink: var(--nh-pink-f277c5, #f277c5);
    background: var(--neon-bg);
    color: var(--neon-text);
}

.neon-client-ui .app-main,
.neon-client-ui .main-header,
.neon-client-ui .main-body {
    background: var(--neon-bg);
    color: var(--neon-text);
}

.neon-client-ui .app-nav,
.neon-client-ui .app-nav-menu,
.neon-client-ui .app-nav-header,
.neon-client-ui .main-top {
    background: var(--nh-surface-151320, #151320);
    border-color: var(--neon-border);
}

.neon-client-ui .main-header {
    border-color: var(--neon-border);
    background: linear-gradient(110deg, var(--nh-surface-21172e, #21172e) 0%, var(--nh-surface-15131e, #15131e) 62%, var(--nh-surface-15131e, #15131e) 100%);
}

.neon-client-ui .main-header h1,
.neon-client-ui .main-header .h1,
.neon-client-ui .main-header .page-header-title,
.neon-client-ui .panel-title {
    color: var(--neon-text);
}

.neon-client-ui a,
.neon-client-ui .btn-link {
    color: var(--neon-purple);
}

.neon-client-ui a:hover,
.neon-client-ui .btn-link:hover {
    color: var(--neon-pink);
}

.neon-client-ui .app-nav a,
.neon-client-ui .main-top a {
    color: var(--nh-text-eee9f8, #eee9f8);
}

.neon-client-ui .app-nav a:hover,
.neon-client-ui .app-nav .active > a,
.neon-client-ui .main-top a:hover {
    color: var(--nh-text-fff, #fff);
    background-color: var(--nh-raised-2b223c, #2b223c);
}

.neon-client-ui .app-nav .nav > li.active > a,
.neon-client-ui .app-nav .nav > li > a:hover {
    border-color: var(--neon-purple);
}

.neon-client-ui .app-nav i,
.neon-client-ui .main-top i,
.neon-client-ui .panel-title > i,
.neon-client-ui .main-header .breadcrumb a:hover {
    color: var(--neon-pink);
}

.neon-client-ui .btn-primary,
.neon-client-ui .btn.btn-primary {
    background: linear-gradient(110deg, #a66cf0, #e871bd);
    border-color: var(--nh-purple-c778df, #c778df);
    color: #160f20;
    font-weight: 700;
    box-shadow: 0 6px 18px rgba(168, 93, 215, .15);
}

.neon-client-ui .btn-primary:hover,
.neon-client-ui .btn.btn-primary:hover {
    background: linear-gradient(110deg, #be86fa, #f58ad2);
    border-color: var(--nh-border-e28be5, #e28be5);
    color: #160f20;
}

.neon-client-ui .btn-default,
.neon-client-ui .btn.btn-default {
    background: var(--nh-raised-292438, #292438);
    border-color: var(--nh-border-4b4162, #4b4162);
    color: var(--nh-text-f7f4ff, #f7f4ff);
}

.neon-client-ui .btn-default:hover,
.neon-client-ui .btn.btn-default:hover {
    background: var(--nh-raised-382e4a, #382e4a);
    border-color: var(--nh-border-775991, #775991);
    color: var(--nh-text-fff, #fff);
}

.neon-client-ui .panel,
.neon-client-ui .table-container,
.neon-client-ui .message-no-data,
.neon-client-ui .tile {
    background: var(--neon-surface);
    border-color: var(--neon-border);
    color: var(--neon-text);
    box-shadow: none;
}

.neon-client-ui .panel,
.neon-client-ui .table-container,
.neon-client-ui .tile {
    border-radius: 11px;
}

.neon-client-ui .panel-heading,
.neon-client-ui .panel-footer,
.neon-client-ui .table-top {
    background: var(--neon-surface);
    border-color: var(--neon-border);
}

.neon-client-ui .panel-heading,
.neon-client-ui .table-top {
    border-top: 2px solid rgba(188, 112, 239, .55);
}

.neon-client-ui .panel-title,
.neon-client-ui .panel-heading h3,
.neon-client-ui .panel-heading h5,
.neon-client-ui .tile-stat,
.neon-client-ui .tile-title {
    color: var(--neon-text);
}

.neon-client-ui .tile:hover,
.neon-client-ui .list-group-item:hover {
    background: var(--neon-surface-2);
}

.neon-client-ui .tile-icon-absolute,
.neon-client-ui .tile-icon-absolute i {
    color: var(--neon-pink);
}

.neon-client-ui .list-group-item {
    background: var(--neon-surface);
    border-color: var(--neon-border);
    color: var(--neon-text);
}

.neon-client-ui .text-light,
.neon-client-ui .small,
.neon-client-ui small,
.neon-client-ui .breadcrumb,
.neon-client-ui .breadcrumb a {
    color: var(--neon-muted);
}

.neon-client-ui .sidebar .panel,
.neon-client-ui .sidebar .list-group-item,
.neon-client-ui .sidebar .panel-heading {
    background: var(--neon-surface);
}

.neon-client-ui .sidebar .panel-title,
.neon-client-ui .sidebar .panel-body {
    overflow-wrap: anywhere;
}

.neon-client-ui .table {
    background: var(--neon-surface);
    color: var(--neon-text);
}

.neon-client-ui .table thead th {
    background: var(--nh-raised-211e30, #211e30);
    color: var(--nh-text-d1c6e7, #d1c6e7);
    border-color: var(--neon-border);
}

.neon-client-ui .table tbody tr,
.neon-client-ui .table tbody td {
    background: var(--neon-surface);
    border-color: var(--neon-border);
    color: var(--neon-text);
}

.neon-client-ui .table tbody tr:nth-child(even) td {
    background: var(--nh-surface-201d2e, #201d2e);
}

.neon-client-ui .table tbody tr:hover td {
    background: var(--nh-raised-2a243b, #2a243b);
}

.neon-client-ui .table .text-small,
.neon-client-ui .table .small {
    color: var(--neon-muted);
}

.neon-client-ui .dropdown-menu,
.neon-client-ui .pagination > li > a,
.neon-client-ui .pagination > li > span {
    background: var(--nh-raised-211e30, #211e30);
    border-color: var(--neon-border);
    color: var(--neon-text);
}

.neon-client-ui .dropdown-menu a:hover,
.neon-client-ui .pagination > .active > a {
    background: var(--nh-raised-3b2b50, #3b2b50);
    color: var(--nh-text-fff, #fff);
}

.neon-client-ui .product-icon,
.neon-client-ui .product-info {
    background: var(--neon-surface);
    border-color: var(--neon-border);
    border-radius: 11px;
    min-height: 300px;
    overflow: hidden;
}

.neon-client-ui .product-icon {
    border-left: 3px solid var(--neon-purple);
    position: relative;
}

.neon-client-ui .product-icon::before {
    content: "PRODUTO CONTRATADO";
    position: absolute;
    top: 22px;
    left: 24px;
    z-index: 2;
    color: var(--nh-text-e4d9f0, #e4d9f0);
    font-size: 11px;
    letter-spacing: .12em;
    font-weight: 800;
}

.neon-client-ui .product-icon .product-content { min-height: 250px; }
.neon-client-ui .product-icon .product-group-name { display: block; text-transform: uppercase; letter-spacing: .06em; font-size: 13px; font-weight: 700; }
.neon-client-ui .product-info { padding: 18px 20px; }
.neon-client-ui .product-info .list-info li { border-color: var(--neon-border); }
.neon-client-ui .product-info .list-info-title { text-transform: uppercase; letter-spacing: .045em; font-size: 11px; }
.neon-client-ui .product-info .list-info-text { font-weight: 650; }
.neon-client-ui .panel-product-details { margin-top: 20px; }

.neon-client-ui .product-name,
.neon-client-ui .product-info .list-info-text {
    color: var(--neon-text);
}

.neon-client-ui .product-group-name,
.neon-client-ui .product-info .list-info-title {
    color: var(--neon-muted);
}

.neon-client-ui .product-icon .product-footer {
    background: var(--nh-surface-211d2e, #211d2e);
    border-color: var(--neon-border);
}

.neon-client-ui .module-client-area {
    background: var(--nh-surface-fff, #fff);
    color: #20202b;
    border-radius: 8px;
    overflow: hidden;
}

.neon-client-ui .module-client-area a {
    color: var(--nh-purple-813fc6, #813fc6);
}

.neon-client-ui .module-client-area .btn-primary {
    color: #160f20;
}

@media (max-width: 767px) {
    .neon-client-ui .panel-heading,
    .neon-client-ui .table-top { border-top-width: 1px; }
}

/* Dashboard: the original cards with Lagom's supported top navigation. */
.neon-client-ui.page-clientareahome .main-header,
.neon-client-ui.page-clientareahome .tiles,
.neon-client-ui.page-clientareahome .main-sidebar { display: none !important; }
.neon-client-ui.page-clientareahome .main-grid { display: block; }
.neon-client-ui.page-clientareahome .main-content { display: block; width: 100%; max-width: 100% !important; }
.neon-client-ui.page-clientareahome .main-body > .container { width: 100%; max-width: none; padding: 30px clamp(16px, 2vw, 38px) 50px; }

.neon-welcome { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin: 8px 0 24px; }
.neon-eyebrow { display: inline-flex; align-items: center; gap: 9px; color: var(--nh-pink-ec93d8, #ec93d8); text-transform: uppercase; letter-spacing: .12em; font-size: 11px; font-weight: 800; }
.neon-eyebrow::before { content: ""; width: 18px; height: 2px; background: var(--neon-pink); }
.neon-welcome h1 { color: var(--nh-text-fff, #fff); font-size: clamp(32px, 3vw, 48px); font-weight: 800; line-height: 1.1; letter-spacing: -.04em; margin: 12px 0 6px; }
.neon-welcome p { color: var(--neon-muted); font-size: 16px; margin: 0; }
.neon-order-button { padding: 12px 20px; white-space: nowrap; border-radius: 9px; }
.neon-order-button i { margin-right: 10px; }

.neon-summary { display: grid; grid-template-columns: 2fr repeat(3, 1fr); background: var(--neon-surface); border: 1px solid var(--neon-border); border-left: 3px solid var(--neon-purple); border-radius: 11px; overflow: hidden; margin-bottom: 20px; }
.neon-summary > a { display: flex; flex-direction: column; justify-content: center; min-height: 85px; padding: 18px 20px; border-left: 1px solid var(--neon-border); color: var(--neon-text); text-decoration: none; }
.neon-summary > a:first-child { border-left: 0; }
.neon-summary > a:hover { background: var(--neon-surface-2); color: var(--nh-text-fff, #fff); }
.neon-summary small { display: block; color: var(--neon-muted); font-size: 12px; line-height: 1.3; }
.neon-summary strong { display: block; margin-top: 5px; color: var(--nh-text-fff, #fff); font-size: 22px; line-height: 1.1; }
.neon-summary .neon-summary-alert { color: var(--nh-pink-f18dbb, #f18dbb); }
.neon-summary-primary { flex-direction: row !important; align-items: center; justify-content: flex-start !important; gap: 12px; }
.neon-summary-primary strong { font-size: 18px; }
.neon-summary-marker { display: grid; place-items: center; width: 30px; height: 30px; flex: none; border-radius: 50%; color: var(--neon-pink); background: rgba(242,119,197,.13); }

.neon-dashboard-layout { display: grid; grid-template-columns: minmax(0, 1fr) 330px; align-items: start; gap: 20px; }
.neon-dashboard-main { min-width: 0; }
.neon-client-ui .client-home-panels { margin-top: 0; }
.neon-client-ui .client-home-panels .panel { min-height: 100%; }
.neon-client-ui .client-home-panels .panel-active-services .list-group-item { padding: 20px 24px; min-height: 82px; }
.neon-client-ui .client-home-panels .panel-active-services .list-group-item:nth-child(even) { background: var(--nh-surface-201d2e, #201d2e); }
.neon-client-ui .client-home-panels .panel-heading { padding: 16px 19px; }
.neon-client-ui .client-home-panels .panel-body { padding: 20px; }

.neon-shortcuts { background: var(--neon-surface); border: 1px solid var(--neon-border); border-radius: 11px; overflow: hidden; }
.neon-shortcuts header { padding: 23px 21px 18px; border-bottom: 1px solid var(--neon-border); }
.neon-shortcuts h2 { font-size: 18px; color: var(--nh-text-fff, #fff); font-weight: 500; margin: 14px 0 0; }
.neon-shortcuts > a { display: flex; align-items: center; gap: 12px; padding: 17px 18px; border-bottom: 1px solid var(--neon-border); color: var(--nh-text-fff, #fff); text-decoration: none; }
.neon-shortcuts > a:last-child { border-bottom: 0; }
.neon-shortcuts > a:hover { background: var(--neon-surface-2); color: var(--nh-text-fff, #fff); }
.neon-shortcuts > a > i { display: grid; place-items: center; flex: 0 0 34px; width: 34px; height: 34px; background: rgba(182,118,244,.14); border-radius: 9px; color: var(--neon-pink); }
.neon-shortcuts > a > span:nth-child(2) { min-width: 0; flex: 1; }
.neon-shortcuts strong { display: block; font-size: 13px; }
.neon-shortcuts small { display: block; margin-top: 5px; font-size: 12px; }
.neon-shortcuts .neon-arrow { color: var(--neon-muted); font-size: 18px; }

.neon-products-toolbar { display: flex; justify-content: flex-end; margin: -6px 0 20px; }
.neon-products-toolbar .btn { border-radius: 9px; padding: 11px 16px; }
.neon-products-toolbar .btn i { margin-right: 8px; }
.neon-section-actions { display: flex; justify-content: flex-end; margin: -6px 0 20px; }
.neon-section-actions .btn { border-radius: 9px; padding: 11px 16px; }
.neon-section-actions .btn i { margin-right: 8px; }

@media (max-width: 1199px) {
    .neon-dashboard-layout { grid-template-columns: minmax(0, 1fr); }
    .neon-shortcuts { display: grid; grid-template-columns: repeat(2, 1fr); }
    .neon-shortcuts header { grid-column: 1 / -1; }
}

@media (max-width: 767px) {
    .neon-welcome { align-items: stretch; flex-direction: column; }
    .neon-welcome h1 { font-size: 32px; }
    .neon-order-button { align-self: flex-start; }
    .neon-summary { grid-template-columns: repeat(3, 1fr); }
    .neon-summary-primary { grid-column: 1 / -1; border-bottom: 1px solid var(--neon-border); }
    .neon-summary > a { padding: 15px 12px; }
    .neon-summary strong { font-size: 18px; }
    .neon-shortcuts { display: block; }
    .neon-products-toolbar { margin-top: 0; }
}

/* Page headings and shared WHMCS components. */
.neon-client-ui .main-header-title {
    color: var(--nh-text-fff, #fff);
    font-size: clamp(30px, 3vw, 42px);
    line-height: 1.15;
    letter-spacing: -.035em;
    font-weight: 750;
}
.neon-page-kicker { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 12px; color: var(--nh-pink-ec93d8, #ec93d8); text-transform: uppercase; letter-spacing: .12em; font-size: 11px; font-weight: 800; }
.neon-page-kicker::before { content: ""; width: 18px; height: 2px; background: var(--neon-pink); }
.neon-page-description { margin: 12px 0 0; color: var(--neon-muted); font-size: 15px; }
.neon-client-ui .main-header-bottom { border-color: var(--neon-border); }
.neon-client-ui .section-header { border-color: var(--neon-border); }
.neon-client-ui .section-title,
.neon-client-ui .section-title h2,
.neon-client-ui .list-group-item-heading,
.neon-client-ui .message-title { color: var(--neon-text); }
.neon-client-ui .section-title { font-weight: 750; letter-spacing: -.025em; }
.neon-client-ui .section-body { color: var(--neon-text); }
.neon-client-ui .list-group-item-text,
.neon-client-ui .list-group-item-footer,
.neon-client-ui .announcement-date { color: var(--neon-muted); }
.neon-client-ui .status-active { color: var(--nh-success-5dde96, #5dde96); }
.neon-client-ui .status-pending,
.neon-client-ui .status-unpaid { color: var(--nh-danger-fa8da4, #fa8da4); }
.neon-client-ui .badge-primary,
.neon-client-ui .label-primary,
.neon-client-ui .btn-primary-faded { background: rgba(182,118,244,.16); color: var(--nh-purple-d8a9ff, #d8a9ff); border-color: rgba(182,118,244,.35); }
.neon-client-ui .btn-primary-faded:hover { background: rgba(182,118,244,.26); color: var(--nh-text-fff, #fff); }

.neon-client-ui .main-content .form-control,
.neon-client-ui .main-content input[type="text"],
.neon-client-ui .main-content input[type="email"],
.neon-client-ui .main-content input[type="tel"],
.neon-client-ui .main-content input[type="password"],
.neon-client-ui .main-content textarea,
.neon-client-ui .main-content select {
    background: var(--nh-raised-211e30, #211e30);
    border-color: var(--nh-border-514663, #514663);
    color: var(--nh-text-fff, #fff);
}
.neon-client-ui .main-content .form-control:focus,
.neon-client-ui .main-content input:focus,
.neon-client-ui .main-content textarea:focus,
.neon-client-ui .main-content select:focus { border-color: var(--neon-purple); box-shadow: 0 0 0 3px rgba(182,118,244,.16); }
.neon-client-ui .main-content input::placeholder,
.neon-client-ui .main-content textarea::placeholder { color: var(--nh-muted-a69bb9, #a69bb9); }
.neon-client-ui .main-content label { color: var(--nh-text-eee8f6, #eee8f6); }
.neon-client-ui .main-content .module-client-area .form-control,
.neon-client-ui .main-content .module-client-area input,
.neon-client-ui .main-content .module-client-area textarea,
.neon-client-ui .main-content .module-client-area select { background: var(--nh-surface-fff, #fff); color: #20202b; border-color: var(--nh-border-d4d8e0, #d4d8e0); }

/* Support, billing, and news cards. */
.neon-client-ui .open-ticket-information,
.neon-client-ui .open-ticket-form,
.neon-client-ui .panel-ticket-reply,
.neon-client-ui .ticket-reply,
.neon-client-ui .announcements-list .list-group-item,
.neon-client-ui .article,
.neon-client-ui .invoice {
    background: var(--neon-surface);
    border: 1px solid var(--neon-border);
    border-radius: 11px;
    color: var(--neon-text);
    box-shadow: none;
}
.neon-client-ui .ticket-reply { overflow: hidden; }
.neon-client-ui .ticket-reply-top,
.neon-client-ui .ticket-reply-message,
.neon-client-ui .ticket-reply-attachments,
.neon-client-ui .invoice .section,
.neon-client-ui .invoice .section-body { background: transparent; color: var(--neon-text); border-color: var(--neon-border); }
.neon-client-ui .ticket-reply.staff { border-left: 3px solid var(--neon-purple); }
.neon-client-ui .ticket-reply:not(.staff) { border-left: 3px solid var(--neon-pink); }
.neon-client-ui .panel-tabs,
.neon-client-ui .panel-tabs li a { border-color: var(--neon-border); color: var(--neon-muted); }
.neon-client-ui .panel-tabs li.active a { color: var(--nh-text-fff, #fff); border-bottom-color: var(--neon-purple); }
.neon-client-ui .announcements-list .list-group-item { margin-bottom: 14px; overflow: hidden; }
.neon-client-ui .announcements-list .list-group-item:hover { background: var(--neon-surface-2); border-color: var(--nh-border-675079, #675079); }
.neon-client-ui .announcements-list .list-group-item-heading { font-weight: 750; }
.neon-client-ui .article .article-content,
.neon-client-ui .article .article-details,
.neon-client-ui .article .article-footer { color: var(--neon-text); border-color: var(--neon-border); }
.neon-client-ui .invoice .invoice-title { color: var(--nh-text-fff, #fff); }
.neon-client-ui .invoice .list-info-title { color: var(--neon-muted); }
.neon-client-ui .invoice .list-info-text { color: var(--neon-text); }
.neon-client-ui .invoice .table-responsive { border-color: var(--neon-border); }
.neon-client-ui .table-container .dataTables_wrapper,
.neon-client-ui .table-container .dataTables_info,
.neon-client-ui .table-container .dataTables_length,
.neon-client-ui .table-container .dataTables_paginate { color: var(--neon-muted); }

/* NeekoPay promotion and onboarding dialog. */
.neon-partner-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; gap: 18px; margin: 0 0 20px; }
.neon-neekopay { display: flex; flex-direction: column; align-items: stretch; justify-content: space-between; gap: 22px; height: 100%; min-height: 252px; margin: 0; padding: 23px 25px; background: radial-gradient(circle at 5% 0%, rgba(212,108,218,.22), transparent 40%), linear-gradient(110deg, var(--nh-raised-251a36, #251a36), var(--nh-surface-1a1827, #1a1827) 70%); border: 1px solid var(--nh-border-684475, #684475); border-radius: 12px; }
.neon-neekopay-copy { min-width: 0; }
.neon-neekopay-brand { display: flex; align-items: center; width: max-content; max-width: 100%; line-height: 0; transform: translateX(-3px); }
.neon-neekopay-logo { display: block; width: 154px; height: auto; max-width: 100%; }
.neon-neekopay h2 { margin: 11px 0 5px; color: var(--nh-text-fff, #fff); font-size: 20px; font-weight: 750; letter-spacing: -.025em; }
.neon-neekopay p { max-width: 680px; margin: 0; color: var(--nh-muted-d0c4df, #d0c4df); }
.neon-neekopay-points { display: flex; flex-wrap: wrap; gap: 7px 18px; margin-top: 15px; color: var(--nh-text-eee2f4, #eee2f4); font-size: 12px; }
.neon-neekopay-action { display: flex; flex-direction: column; align-items: stretch; gap: 8px; flex: 0 0 auto; }
.neon-neekopay-action .btn { width: 100%; padding: 12px 18px; border-radius: 9px; text-align: center; }
.neon-neekopay-action .btn i { margin-left: 8px; }
.neon-neekopay-action small { color: var(--nh-muted-baa9cd, #baa9cd); text-align: center; font-size: 11px; line-height: 1.35; }
.neon-neekopay-modal .modal-content { overflow: hidden; border: 1px solid var(--nh-border-684475, #684475); border-radius: 12px; background: var(--nh-surface-1b1927, #1b1927); color: var(--neon-text); box-shadow: 0 22px 65px var(--nh-alpha-0-0-0-p45, rgba(0, 0, 0, .45)); }
.neon-neekopay-modal .modal-header { display: flex; align-items: flex-start; justify-content: space-between; padding: 22px 24px 18px; border-color: var(--neon-border); background: radial-gradient(circle at 5% 0%, rgba(212,108,218,.18), transparent 48%), var(--nh-surface-211b2e, #211b2e); }
.neon-neekopay-modal .modal-title { margin: 9px 0 0; color: var(--nh-text-fff, #fff); font-size: 22px; font-weight: 750; }
.neon-neekopay-modal .close { margin: -5px -4px 0 15px; color: var(--nh-text-fff, #fff); opacity: .8; text-shadow: none; }
.neon-neekopay-modal .modal-body { padding: 22px 24px; }
.neon-neekopay-modal .modal-body > p { margin: 0 0 19px; color: var(--nh-muted-cfc3dc, #cfc3dc); line-height: 1.55; }
.neon-neekopay-modal label { color: var(--nh-text-fff, #fff); }
.neon-neekopay-modal .form-control { border-color: var(--nh-border-524560, #524560); background: var(--nh-surface-15131e, #15131e); color: var(--nh-text-fff, #fff); }
.neon-neekopay-modal .form-control:focus { border-color: var(--neon-pink); box-shadow: 0 0 0 3px rgba(242, 119, 197, .14); }
.neon-neekopay-modal .form-group small { display: block; margin-top: 6px; color: var(--neon-muted); }
.neon-neekopay-modal .modal-footer { display: flex; justify-content: flex-end; gap: 10px; padding: 16px 24px 22px; border-color: var(--neon-border); }
.neon-neekopay-feedback { min-height: 20px; margin-top: 16px; color: var(--nh-muted-cfc3dc, #cfc3dc); font-size: 13px; }
.neon-neekopay-feedback.is-error { color: var(--nh-danger-ff9aab, #ff9aab); }
.neon-neekopay-feedback.is-success { color: var(--nh-success-75e3a8, #75e3a8); }
.neon-neekopay-modal .btn[disabled] { cursor: wait; opacity: .65; }

/* Andrezzz Link Discord entry restored inside the custom client dashboard. */
.neon-discord-connect {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr) auto;
    align-items: start;
    gap: 17px;
    height: 100%;
    min-height: 252px;
    margin: 0;
    padding: 23px 25px;
    border: 1px solid var(--nh-border-514577, #514577);
    border-radius: 12px;
    background: linear-gradient(105deg, rgba(88, 101, 242, .16), transparent 32%), var(--nh-surface-1b1927, #1b1927);
}

.neon-discord-icon {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: #5865f2;
    color: var(--nh-text-fff, #fff);
    font-size: 25px;
    box-shadow: 0 8px 22px rgba(88, 101, 242, .22);
}

.neon-discord-copy { min-width: 0; }
.neon-discord-copy .neon-eyebrow { color: var(--nh-blue-aeb5ff, #aeb5ff); }
.neon-discord-copy h2 {
    margin: 4px 0 3px;
    color: var(--nh-text-fff, #fff);
    font-size: 18px;
    font-weight: 750;
    letter-spacing: -.015em;
}
.neon-discord-copy p { margin: 0; color: var(--nh-muted-c5bdd5, #c5bdd5); font-size: 13px; }
.neon-discord-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
    min-height: 42px;
    border-radius: 9px;
    white-space: nowrap;
}

@media (max-width: 991px) {
    .neon-partner-grid { grid-template-columns: minmax(0, 1fr); }
    .neon-neekopay,
    .neon-discord-connect { min-height: 0; }
}

@media (max-width: 700px) {
    .neon-neekopay,
    .neon-discord-connect { padding: 19px 18px; }
}

/* Andrezzz Link Discord management page. */
.neon-client-ui.page-andrezzzlinkdiscord .main-header {
    background: radial-gradient(circle at 20% 0%, rgba(88, 101, 242, .17), transparent 37%), linear-gradient(110deg, var(--nh-surface-21172e, #21172e), var(--nh-surface-15131e, #15131e) 68%);
}

.neon-client-ui.page-andrezzzlinkdiscord .main-content {
    max-width: 1160px;
}

.neon-client-ui .ald-page {
    width: 100%;
    margin: 0 auto 30px;
}

.neon-client-ui .ald-hero {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 22px;
    overflow: hidden;
    padding: 30px;
    border: 1px solid var(--nh-border-554b7b, #554b7b);
    border-radius: 15px;
    background: radial-gradient(circle at 0 0, rgba(88, 101, 242, .29), transparent 37%), radial-gradient(circle at 100% 100%, rgba(242, 119, 197, .17), transparent 38%), var(--nh-surface-1b1927, #1b1927);
    box-shadow: 0 18px 45px var(--nh-alpha-0-0-0-p18, rgba(0, 0, 0, .18));
}

.neon-client-ui .ald-discord-mark {
    display: grid;
    place-items: center;
    width: 74px;
    height: 74px;
    border-radius: 18px;
    background: linear-gradient(145deg, #7480ff, #5865f2);
    color: var(--nh-text-fff, #fff);
    font-size: 38px;
    box-shadow: 0 12px 30px rgba(88, 101, 242, .32);
}

.neon-client-ui .ald-hero-copy { min-width: 0; }
.neon-client-ui .ald-eyebrow,
.neon-client-ui .ald-profile-label {
    color: var(--nh-blue-aeb5ff, #aeb5ff);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .13em;
}
.neon-client-ui .ald-hero h1 {
    margin: 5px 0 7px;
    color: var(--nh-text-fff, #fff);
    font-size: 28px;
    font-weight: 780;
    letter-spacing: -.03em;
}
.neon-client-ui .ald-hero p {
    max-width: 660px;
    margin: 0;
    color: var(--nh-muted-c9c1d8, #c9c1d8);
    line-height: 1.55;
}
.neon-client-ui .ald-status {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 13px;
    border: 1px solid rgba(82, 214, 143, .3);
    border-radius: 999px;
    background: rgba(29, 134, 77, .13);
    color: var(--nh-success-7ee1a9, #7ee1a9);
    font-size: 12px;
    font-weight: 750;
    white-space: nowrap;
}
.neon-client-ui .ald-status span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #52d68f;
    box-shadow: 0 0 0 4px rgba(82, 214, 143, .12);
}

.neon-client-ui .ald-success {
    display: flex;
    align-items: center;
    gap: 11px;
    margin: 16px 0;
    padding: 14px 17px;
    border: 1px solid rgba(82, 214, 143, .28);
    border-left: 3px solid var(--nh-success-52d68f, #52d68f);
    border-radius: 10px;
    background: rgba(35, 91, 62, .2);
    color: var(--nh-text-d5f6e3, #d5f6e3);
}
.neon-client-ui .ald-success i { color: var(--nh-success-65dfa0, #65dfa0); }

.neon-client-ui .ald-profile-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) minmax(220px, auto);
    align-items: center;
    gap: 23px;
    padding: 25px 27px;
    border: 1px solid var(--neon-border);
    border-top: 2px solid rgba(182, 118, 244, .65);
    border-radius: 13px;
    background: var(--neon-surface);
}
.neon-client-ui .ald-avatar-wrap { position: relative; }
.neon-client-ui .ald-avatar {
    display: block;
    width: 82px;
    height: 82px;
    margin: 0;
    border: 3px solid var(--nh-border-7661a0, #7661a0);
    border-radius: 50%;
    object-fit: cover;
    background: var(--nh-raised-242135, #242135);
}
.neon-client-ui .ald-avatar-status {
    position: absolute;
    right: 0;
    bottom: 1px;
    display: grid;
    place-items: center;
    width: 25px;
    height: 25px;
    border: 3px solid var(--nh-border-1b1927, #1b1927);
    border-radius: 50%;
    background: #52d68f;
    color: #13241a;
    font-size: 9px;
}
.neon-client-ui .ald-profile-copy { min-width: 0; }
.neon-client-ui .ald-profile-copy h2 {
    margin: 5px 0 4px;
    color: var(--nh-text-fff, #fff);
    font-size: 22px;
    font-weight: 750;
    overflow-wrap: anywhere;
}
.neon-client-ui .ald-profile-copy p { margin: 0; color: var(--neon-muted); }
.neon-client-ui .ald-account-id {
    min-width: 0;
    padding: 14px 16px;
    border: 1px solid var(--nh-border-443b59, #443b59);
    border-radius: 10px;
    background: var(--nh-surface-15131e, #15131e);
}
.neon-client-ui .ald-account-id span {
    display: block;
    margin-bottom: 5px;
    color: var(--nh-muted-9e93b3, #9e93b3);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .11em;
}
.neon-client-ui .ald-account-id strong {
    display: block;
    color: var(--nh-text-e7ddf4, #e7ddf4);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 12px;
    overflow-wrap: anywhere;
}

.neon-client-ui .ald-preference-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 17px;
    margin-top: 16px;
    padding: 20px 22px;
    border: 1px solid var(--neon-border);
    border-radius: 12px;
    background: var(--neon-surface);
}
.neon-client-ui .ald-preference-icon {
    display: grid;
    place-items: center;
    width: 43px;
    height: 43px;
    border-radius: 11px;
    background: var(--nh-raised-342746, #342746);
    color: var(--neon-pink);
}
.neon-client-ui .ald-preference-copy h3 { margin: 0 0 3px; color: var(--nh-text-fff, #fff); font-size: 15px; font-weight: 750; }
.neon-client-ui .ald-preference-copy p { margin: 0; color: var(--neon-muted); font-size: 12px; }
.neon-client-ui .ald-preference-control { padding-left: 16px; }
.neon-client-ui .ald-actions { display: flex; justify-content: flex-end; margin-top: 18px; }
.neon-client-ui .ald-actions .btn { min-width: 190px; padding: 11px 18px; border-radius: 9px; }
.neon-client-ui .ald-actions .btn i { margin-right: 7px; }

/* Fallback for the addon's unlinked/relink output. */
.neon-client-ui.page-andrezzzlinkdiscord .AndrezzzLinkDiscord > .card,
.neon-client-ui.page-andrezzzlinkdiscord .AndrezzzLinkDiscord .card:not(.ald-profile-card) {
    border: 1px solid var(--neon-border) !important;
    border-top: 2px solid rgba(182, 118, 244, .62) !important;
    border-radius: 13px !important;
    background: var(--neon-surface) !important;
    color: var(--neon-text) !important;
    box-shadow: none !important;
}
.neon-client-ui.page-andrezzzlinkdiscord .AndrezzzLinkDiscord img { max-width: 100%; }
.neon-client-ui.page-andrezzzlinkdiscord .AndrezzzLinkDiscord .btn-success {
    border-color: var(--nh-purple-c778df, #c778df);
    background: linear-gradient(110deg, #a66cf0, #e871bd);
    color: #160f20;
    font-weight: 750;
}

@media (max-width: 767px) {
    .neon-client-ui .ald-hero { grid-template-columns: auto minmax(0, 1fr); gap: 17px; padding: 22px 18px; }
    .neon-client-ui .ald-discord-mark { width: 58px; height: 58px; border-radius: 15px; font-size: 29px; }
    .neon-client-ui .ald-hero h1 { font-size: 22px; }
    .neon-client-ui .ald-status { grid-column: 1 / -1; width: max-content; }
    .neon-client-ui .ald-profile-card { grid-template-columns: auto minmax(0, 1fr); padding: 20px 18px; }
    .neon-client-ui .ald-account-id { grid-column: 1 / -1; }
    .neon-client-ui .ald-preference-card { grid-template-columns: auto minmax(0, 1fr); padding: 18px; }
    .neon-client-ui .ald-preference-control { grid-column: 1 / -1; padding: 4px 0 0 60px; }
    .neon-client-ui .ald-actions .btn { width: 100%; }
}

@media (max-width: 767px) {
    .neon-neekopay { flex-direction: column; align-items: stretch; padding: 22px 18px; }
    .neon-neekopay-action { flex-basis: auto; align-items: stretch; }
    .neon-neekopay-modal .modal-header,
    .neon-neekopay-modal .modal-body { padding-left: 18px; padding-right: 18px; }
    .neon-neekopay-modal .modal-footer { flex-direction: column-reverse; padding-left: 18px; padding-right: 18px; }
    .neon-neekopay-modal .modal-footer .btn { width: 100%; }
}

/* Invoice notices on service details. Keep overdue billing visible and readable. */
.neon-client-ui.page-clientareaproductdetails .neon-service-invoice-alert {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 76px;
    margin-bottom: 22px;
    padding: 17px 20px;
    border: 1px solid var(--nh-border-805168, #805168);
    border-left: 4px solid var(--nh-danger-f27b9e, #f27b9e);
    border-radius: 11px;
    background: linear-gradient(105deg, var(--nh-raised-342230, #342230), var(--nh-surface-231d2c, #231d2c) 68%);
    box-shadow: 0 8px 24px var(--nh-alpha-0-0-0-p13, rgba(0, 0, 0, .13));
}

.neon-client-ui.page-clientareaproductdetails .neon-service-invoice-alert.is-unpaid {
    border-color: var(--nh-border-765b52, #765b52);
    border-left-color: var(--nh-danger-e6ad72, #e6ad72);
    background: linear-gradient(105deg, var(--nh-raised-302726, #302726), var(--nh-surface-231f2a, #231f2a) 68%);
}

.neon-client-ui.page-clientareaproductdetails .neon-service-invoice-alert .alert-icon {
    position: static;
    flex: 0 0 22px;
    width: 22px;
    margin: 0;
    color: var(--nh-danger-ff9fba, #ff9fba);
    font-size: 20px;
    text-align: center;
}

.neon-client-ui.page-clientareaproductdetails .neon-service-invoice-alert.is-unpaid .alert-icon {
    color: var(--nh-warning-f3c58f, #f3c58f);
}

.neon-client-ui.page-clientareaproductdetails .neon-service-invoice-alert .alert-body,
.neon-client-ui.page-clientareaproductdetails .neon-service-invoice-alert .alert-body p {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    color: var(--nh-text-fff5fa, #fff5fa);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.45;
}

.neon-client-ui.page-clientareaproductdetails .neon-service-invoice-alert .alert-actions {
    flex: 0 0 auto;
    margin-left: auto;
}

.neon-client-ui.page-clientareaproductdetails .neon-service-invoice-alert .alert-actions .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 8px 16px;
    border: 1px solid var(--nh-border-ff9ebc, #ff9ebc);
    border-radius: 8px;
    background: linear-gradient(110deg, #f07a9e, var(--nh-surface-f6a0c4, #f6a0c4));
    color: #281322;
    font-size: 13px;
    font-weight: 750;
    text-decoration: none;
    white-space: nowrap;
}

.neon-client-ui.page-clientareaproductdetails .neon-service-invoice-alert .alert-actions .btn:hover {
    border-color: var(--nh-border-ffc4d5, #ffc4d5);
    background: linear-gradient(110deg, #fa92b1, var(--nh-surface-ffb4d0, #ffb4d0));
    color: #281322;
}

.neon-client-ui.page-clientareaproductdetails .neon-service-invoice-alert.is-unpaid .alert-actions .btn {
    border-color: var(--nh-border-f2c68f, #f2c68f);
    background: #edbd82;
}

@media (max-width: 600px) {
    .neon-client-ui.page-clientareaproductdetails .neon-service-invoice-alert {
        flex-wrap: wrap;
        gap: 10px;
        padding: 16px;
    }

    .neon-client-ui.page-clientareaproductdetails .neon-service-invoice-alert .alert-actions {
        flex-basis: 100%;
        margin-left: 0;
    }

    .neon-client-ui.page-clientareaproductdetails .neon-service-invoice-alert .alert-actions .btn {
        width: 100%;
    }
}

/* Product details: contracted service, billing facts, and actions as in the reference. */
.neon-client-ui.page-clientareaproductdetails .main-header > .container,
.neon-client-ui.page-clientareaproductdetails .main-body > .container {
    width: 100%;
    max-width: none;
    padding-left: clamp(18px, 2vw, 32px);
    padding-right: clamp(18px, 2vw, 32px);
}

.neon-client-ui.page-clientareaproductdetails .main-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) clamp(360px, 26vw, 410px);
    gap: 20px;
    align-items: start;
}

.neon-client-ui.page-clientareaproductdetails .main-grid > .main-content {
    grid-column: 1;
    grid-row: 1;
    display: block;
    width: 100%;
    max-width: none !important;
    min-width: 0;
    margin: 0 !important;
}

.neon-client-ui.page-clientareaproductdetails .main-grid > .main-sidebar {
    grid-column: 2;
    grid-row: 1;
    display: block;
    width: 100%;
    max-width: none;
    min-width: 0;
    margin: 0 !important;
}

.neon-client-ui.page-clientareaproductdetails .main-sidebar .panel-sidebar {
    min-width: 0;
    overflow: hidden;
}
.neon-client-ui.page-clientareaproductdetails .main-sidebar .panel-sidebar > .panel-heading {
    padding: 18px 20px 14px;
}
.neon-client-ui.page-clientareaproductdetails .main-sidebar .panel-sidebar > .panel-heading .panel-title {
    margin: 0;
    line-height: 1.35;
}
.neon-client-ui.page-clientareaproductdetails .main-sidebar .panel-sidebar > .list-group > a.list-group-item {
    min-height: 46px;
    padding: 13px 20px 13px 24px !important;
}
.neon-client-ui.page-clientareaproductdetails .main-sidebar .panel-sidebar > .list-group > a.list-group-item > i {
    margin-right: 10px !important;
}
.neon-client-ui.page-clientareaproductdetails .main-sidebar .panel-sidebar > .list-group > a.list-group-item:not(.disabled) {
    color: var(--nh-text-e8def4, #e8def4) !important;
}
.neon-client-ui.page-clientareaproductdetails .main-sidebar .panel-sidebar > .list-group > a.list-group-item:not(.disabled):hover {
    color: var(--nh-text-fff, #fff) !important;
    background: var(--nh-raised-342844, #342844);
}

.neon-client-ui.page-clientareaproductdetails .product-details { margin-bottom: 20px; }
.neon-client-ui.page-clientareaproductdetails .product-details > .row {
    display: grid !important;
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
    gap: 16px;
    margin: 0;
    align-items: stretch;
}

.neon-client-ui.page-clientareaproductdetails .product-details > .row > [class*="col-md-"] {
    float: none;
    flex: none;
    width: auto !important;
    max-width: none !important;
    min-width: 0;
    padding: 0;
    margin: 0;
}

.neon-client-ui.page-clientareaproductdetails .details-box-hidden .product-details > .row {
    grid-template-columns: minmax(0, 1fr);
}

.neon-client-ui.page-clientareaproductdetails .product-icon,
.neon-client-ui.page-clientareaproductdetails .product-info {
    box-sizing: border-box;
    min-height: 395px;
    height: 100%;
    border: 1px solid var(--neon-border) !important;
    border-radius: 11px !important;
    background: var(--nh-surface-1b1e27, #1b1e27) !important;
    background-image: none !important;
    box-shadow: none !important;
    overflow: hidden;
}

.neon-client-ui.page-clientareaproductdetails .product-icon {
    border-left: 3px solid var(--neon-purple) !important;
}

.neon-client-ui.page-clientareaproductdetails .product-icon .product-content {
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    justify-content: center;
    gap: 26px;
    min-height: 330px;
    padding: 62px 30px 35px;
    text-align: left;
}

.neon-client-ui.page-clientareaproductdetails .product-icon .product-image {
    display: grid;
    flex: 0 0 66px;
    place-items: center;
    width: 66px;
    height: 66px;
    margin: 0 !important;
    border: 1px solid var(--nh-border-654773, #654773);
    border-radius: 12px;
    background: var(--nh-raised-2a2234, #2a2234);
}

.neon-client-ui.page-clientareaproductdetails .product-icon .product-image svg { width: 38px; height: 38px; }
.neon-client-ui.page-clientareaproductdetails .product-icon .product-name {
    margin: 0;
    color: var(--nh-text-fff, #fff) !important;
    font-size: clamp(24px, 2vw, 34px);
    font-weight: 400;
    line-height: 1.25;
    text-align: center;
}

.neon-client-ui.page-clientareaproductdetails .product-icon .product-group-name {
    margin-bottom: 5px;
    color: var(--neon-muted);
    font-size: 12px;
}

.neon-client-ui.page-clientareaproductdetails .product-icon .product-footer {
    position: relative;
    display: block;
    margin: 0 30px;
    padding: 15px 0;
    border-top: 1px solid var(--neon-border);
    background: transparent !important;
    color: var(--nh-text-fff, #fff);
    text-align: center;
}

.neon-client-ui.page-clientareaproductdetails .product-info { padding: 24px 20px; }
.neon-client-ui.page-clientareaproductdetails .product-info .list-info-v {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 14px;
    margin: 0;
    padding: 0;
}

.neon-client-ui.page-clientareaproductdetails .product-info .list-info-v > li {
    display: block !important;
    min-width: 0;
    margin: 0;
    padding: 13px 9px;
    border-bottom: 1px solid var(--neon-border);
}

.neon-client-ui.page-clientareaproductdetails .product-info .list-info-title,
.neon-client-ui.page-clientareaproductdetails .product-info .list-info-text {
    display: block !important;
    width: auto !important;
    padding: 0;
    text-align: left;
    overflow-wrap: anywhere;
}

.neon-client-ui.page-clientareaproductdetails .product-info .list-info-title { margin-bottom: 8px; }
.neon-client-ui.page-clientareaproductdetails .product-info .list-info-text { color: var(--nh-text-fff, #fff); }
.neon-client-ui.page-clientareaproductdetails .product-info .list-info-v > li:last-child { border-bottom: 0; }

@media (max-width: 1199px) {
    .neon-client-ui.page-clientareaproductdetails .main-grid { grid-template-columns: minmax(0, 1fr); }
    .neon-client-ui.page-clientareaproductdetails .main-grid > .main-sidebar { grid-column: 1; grid-row: 2; }
}

@media (max-width: 767px) {
    .neon-client-ui.page-clientareaproductdetails .product-details > .row { grid-template-columns: minmax(0, 1fr); }
    .neon-client-ui.page-clientareaproductdetails .product-icon,
    .neon-client-ui.page-clientareaproductdetails .product-info { min-height: 0; }
    .neon-client-ui.page-clientareaproductdetails .product-icon .product-content {
        flex-direction: column !important;
        min-height: 230px;
        padding: 65px 22px 28px;
        text-align: center;
    }
    .neon-client-ui.page-clientareaproductdetails .product-info .list-info-v { grid-template-columns: minmax(0, 1fr); }
}

/* Invoice listing: financial overview and readable billing history. */
.neon-client-ui.page-clientareainvoices .main-header > .container,
.neon-client-ui.page-clientareainvoices .main-body > .container {
    width: 100%;
    max-width: none;
    padding-left: clamp(18px, 2vw, 32px);
    padding-right: clamp(18px, 2vw, 32px);
}

.neon-client-ui.page-clientareainvoices .main-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.neon-client-ui.page-clientareainvoices .main-grid:has(> .main-sidebar) {
    grid-template-columns: minmax(0, 1fr) clamp(360px, 26vw, 410px);
}

.neon-client-ui.page-clientareainvoices .main-grid > .main-content {
    grid-column: 1;
    grid-row: 1;
    display: block;
    width: 100%;
    max-width: none !important;
    min-width: 0;
    margin: 0 !important;
}

.neon-client-ui.page-clientareainvoices .main-grid > .main-sidebar {
    grid-column: 1;
    grid-row: 2;
    display: block;
    width: 100%;
    max-width: none;
    min-width: 0;
    margin: 0 !important;
}

.neon-client-ui.page-clientareainvoices .main-grid:has(> .main-sidebar) > .main-sidebar {
    grid-column: 2;
    grid-row: 1;
}

.neon-client-ui.page-clientareainvoices .main-sidebar .panel-sidebar {
    min-width: 0;
    overflow: hidden;
}
.neon-client-ui.page-clientareainvoices .main-sidebar .panel-sidebar > .panel-heading {
    padding: 18px 20px 14px;
}
.neon-client-ui.page-clientareainvoices .main-sidebar .panel-sidebar > .panel-heading .panel-title {
    margin: 0;
    line-height: 1.35;
}
.neon-client-ui.page-clientareainvoices .main-sidebar .panel-sidebar > .list-group > a.list-group-item {
    min-height: 46px;
    padding: 13px 20px 13px 24px !important;
}
.neon-client-ui.page-clientareainvoices .main-sidebar .panel-sidebar > .list-group > a.list-group-item > i {
    margin-right: 10px !important;
}
.neon-client-ui.page-clientareainvoices .main-sidebar .panel-sidebar > .list-group > a.list-group-item.active {
    background: var(--nh-raised-49315e, #49315e) !important;
    color: var(--nh-text-fff, #fff) !important;
}
.neon-client-ui.page-clientareainvoices .main-sidebar .panel-sidebar > .list-group > a.list-group-item:not(.disabled):not(.active) {
    color: var(--nh-text-e8def4, #e8def4) !important;
}

.neon-invoices-overview {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 20px;
    padding: 24px 26px;
    border: 1px solid var(--neon-border);
    border-left: 3px solid var(--neon-purple);
    border-radius: 11px;
    background: radial-gradient(circle at 5% 0%, rgba(179, 99, 221, .16), transparent 42%), var(--nh-surface-1b1927, #1b1927);
}

.neon-invoices-overview-copy { min-width: 0; }
.neon-invoices-overview-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--nh-purple-e69fe5, #e69fe5);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .1em;
}
.neon-invoices-overview-kicker i { color: var(--neon-pink); font-size: 15px; }
.neon-invoices-overview h2 { margin: 9px 0 5px; color: var(--nh-text-fff, #fff); font-size: clamp(21px, 1.8vw, 28px); font-weight: 750; letter-spacing: -.03em; }
.neon-invoices-overview p { max-width: 580px; margin: 0; color: var(--neon-muted); font-size: 14px; }
.neon-invoices-stats { display: grid; grid-template-columns: repeat(3, minmax(85px, 1fr)); gap: 10px; flex: 0 1 375px; }
.neon-invoices-stat { min-width: 0; padding: 13px 15px; border: 1px solid var(--nh-border-443a59, #443a59); border-radius: 9px; background: var(--nh-raised-242034, #242034); }
.neon-invoices-stat span { display: block; margin-bottom: 5px; color: var(--neon-muted); font-size: 11px; white-space: nowrap; }
.neon-invoices-stat strong { color: var(--nh-text-fff, #fff); font-size: 25px; line-height: 1; }
.neon-invoices-stat-open strong { color: var(--nh-danger-fa9bb7, #fa9bb7); }
.neon-invoices-stat-paid strong { color: var(--nh-success-6ce2a3, #6ce2a3); }

.neon-client-ui.page-clientareainvoices .table-container {
    overflow: visible;
    border: 1px solid var(--neon-border);
    border-radius: 11px;
    background: var(--nh-surface-1b1e27, #1b1e27);
}
.neon-client-ui.page-clientareainvoices .table-top {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px 24px;
    min-height: 76px;
    padding: 15px 21px;
    border: 0;
    border-bottom: 1px solid var(--neon-border);
    border-radius: 11px 11px 0 0;
    background: var(--nh-surface-1d2029, #1d2029);
}
.neon-invoices-list-heading { display: flex; flex-direction: column; gap: 2px; }
.neon-invoices-list-heading strong { color: var(--nh-text-fff, #fff); font-size: 16px; }
.neon-invoices-list-heading span { color: var(--neon-muted); font-size: 12px; }
.neon-client-ui.page-clientareainvoices .table-top > .d-flex { align-items: center; gap: 8px; }
.neon-client-ui.page-clientareainvoices .table-top label { margin: 0; color: var(--neon-muted); }
.neon-client-ui.page-clientareainvoices .view-filter-btns .btn { min-width: 120px; justify-content: space-between; }
.neon-client-ui.page-clientareainvoices #tableInvoicesList { margin: 0; background: var(--nh-surface-1b1e27, #1b1e27); }
.neon-client-ui.page-clientareainvoices #tableInvoicesList thead th {
    padding: 16px 18px;
    border-bottom: 1px solid var(--neon-border);
    background: var(--nh-surface-1b1e27, #1b1e27);
    color: var(--nh-muted-bfb4d5, #bfb4d5);
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .055em;
    text-transform: uppercase;
}
.neon-client-ui.page-clientareainvoices #tableInvoicesList tbody td {
    padding: 18px;
    border-color: var(--nh-border-343244, #343244);
    background: var(--nh-surface-1b1e27, #1b1e27);
    color: var(--nh-text-f7f4ff, #f7f4ff);
    vertical-align: middle;
}
.neon-client-ui.page-clientareainvoices #tableInvoicesList tbody tr:nth-child(even) td { background: var(--nh-surface-20212b, #20212b); }
.neon-client-ui.page-clientareainvoices #tableInvoicesList tbody tr:hover td { background: var(--nh-raised-2a2638, #2a2638); }
.neon-client-ui.page-clientareainvoices #tableInvoicesList tbody td:first-child,
.neon-client-ui.page-clientareainvoices #tableInvoicesList tbody td:nth-child(4) { font-weight: 700; }
.neon-client-ui.page-clientareainvoices .neon-invoice-number { color: var(--nh-purple-e3b5ff, #e3b5ff); text-decoration: none; }
.neon-client-ui.page-clientareainvoices .neon-invoice-number:hover { color: var(--nh-text-f6c6e8, #f6c6e8); text-decoration: underline; }
.neon-client-ui.page-clientareainvoices #tableInvoicesList .status { font-weight: 700; }
.neon-client-ui.page-clientareainvoices #tableInvoicesList .status-paid { color: var(--nh-success-6ce2a3, #6ce2a3); }
.neon-client-ui.page-clientareainvoices #tableInvoicesList .status-unpaid,
.neon-client-ui.page-clientareainvoices #tableInvoicesList .status-overdue { color: var(--nh-danger-fa9bb7, #fa9bb7); }
.neon-client-ui.page-clientareainvoices .dataTables_wrapper > .row:last-child { margin: 0; padding: 14px 12px; border-top: 1px solid var(--neon-border); }
.neon-client-ui.page-clientareainvoices .message-no-data { padding: 55px 20px; text-align: center; }
.neon-client-ui.page-clientareainvoices .message-no-data .message-image { margin-bottom: 15px; }

@media (max-width: 1199px) {
    .neon-client-ui.page-clientareainvoices .main-grid:has(> .main-sidebar) { grid-template-columns: minmax(0, 1fr); }
    .neon-client-ui.page-clientareainvoices .main-grid:has(> .main-sidebar) > .main-sidebar { grid-column: 1; grid-row: 2; }
}

@media (max-width: 767px) {
    .neon-invoices-overview { flex-direction: column; align-items: stretch; padding: 21px 18px; }
    .neon-invoices-stats { flex-basis: auto; }
    .neon-client-ui.page-clientareainvoices .table-top { padding: 16px; }
    .neon-client-ui.page-clientareainvoices #tableInvoicesList thead th,
    .neon-client-ui.page-clientareainvoices #tableInvoicesList tbody td { padding: 13px 10px; }
}

/* Services listing: the same portal rhythm with room for product names. */
.neon-client-ui.page-clientareaproducts .main-header > .container,
.neon-client-ui.page-clientareaproducts .main-body > .container {
    width: 100%;
    max-width: none;
    padding-left: clamp(18px, 2vw, 32px);
    padding-right: clamp(18px, 2vw, 32px);
}

.neon-client-ui.page-clientareaproducts .main-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.neon-client-ui.page-clientareaproducts .main-grid:has(> .main-sidebar) {
    grid-template-columns: minmax(0, 1fr) clamp(360px, 26vw, 410px);
}

.neon-client-ui.page-clientareaproducts .main-grid > .main-content {
    grid-column: 1;
    grid-row: 1;
    display: block;
    width: 100%;
    max-width: none !important;
    min-width: 0;
    margin: 0 !important;
}

.neon-client-ui.page-clientareaproducts .main-grid > .main-sidebar {
    grid-column: 1;
    grid-row: 2;
    display: block;
    width: 100%;
    max-width: none;
    min-width: 0;
    margin: 0 !important;
}

.neon-client-ui.page-clientareaproducts .main-grid:has(> .main-sidebar) > .main-sidebar {
    grid-column: 2;
    grid-row: 1;
}

.neon-client-ui.page-clientareaproducts .main-sidebar .panel-sidebar {
    min-width: 0;
    overflow: hidden;
}
.neon-client-ui.page-clientareaproducts .main-sidebar .panel-sidebar > .panel-heading {
    padding: 18px 20px 14px;
}
.neon-client-ui.page-clientareaproducts .main-sidebar .panel-sidebar > .panel-heading .panel-title {
    margin: 0;
    line-height: 1.35;
}
.neon-client-ui.page-clientareaproducts .main-sidebar .panel-sidebar .list-group-item {
    min-height: 46px;
    padding: 13px 18px;
}
.neon-client-ui.page-clientareaproducts .main-sidebar .panel-sidebar > .list-group > a.list-group-item {
    padding-left: 24px !important;
    padding-right: 20px !important;
}
.neon-client-ui.page-clientareaproducts .main-sidebar .panel-sidebar > .list-group > a.list-group-item > i {
    margin-right: 10px !important;
}
.neon-client-ui.page-clientareaproducts .main-sidebar .panel-sidebar a.list-group-item:not(.disabled) {
    color: var(--nh-text-e8def4, #e8def4) !important;
}
.neon-client-ui.page-clientareaproducts .main-sidebar .panel-sidebar a.list-group-item:not(.disabled):hover {
    color: var(--nh-text-fff, #fff) !important;
    background: var(--nh-raised-342844, #342844);
}
.neon-client-ui.page-clientareaproducts .main-sidebar .panel-sidebar a.list-group-item:not(.disabled) i {
    color: var(--nh-purple-d890e8, #d890e8);
}

.neon-services-overview {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 20px;
    padding: 24px 26px;
    border: 1px solid var(--neon-border);
    border-left: 3px solid var(--neon-purple);
    border-radius: 11px;
    background: radial-gradient(circle at 5% 0%, rgba(179, 99, 221, .16), transparent 42%), var(--nh-surface-1b1927, #1b1927);
}

.neon-services-overview-copy { min-width: 0; }
.neon-services-overview-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--nh-purple-e69fe5, #e69fe5);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .1em;
}
.neon-services-overview-kicker i { color: var(--neon-pink); font-size: 15px; }
.neon-services-overview h2 { margin: 9px 0 5px; color: var(--nh-text-fff, #fff); font-size: clamp(21px, 1.8vw, 28px); font-weight: 750; letter-spacing: -.03em; }
.neon-services-overview p { max-width: 580px; margin: 0; color: var(--neon-muted); font-size: 14px; }
.neon-services-stats { display: grid; grid-template-columns: repeat(3, minmax(85px, 1fr)); gap: 10px; flex: 0 1 375px; }
.neon-services-stat { min-width: 0; padding: 13px 15px; border: 1px solid var(--nh-border-443a59, #443a59); border-radius: 9px; background: var(--nh-raised-242034, #242034); }
.neon-services-stat span { display: block; margin-bottom: 5px; color: var(--neon-muted); font-size: 11px; white-space: nowrap; }
.neon-services-stat strong { color: var(--nh-text-fff, #fff); font-size: 25px; line-height: 1; }
.neon-services-stat-active strong { color: var(--nh-success-6ce2a3, #6ce2a3); }
.neon-services-stat-pending strong { color: var(--nh-danger-fa9bb7, #fa9bb7); }
.neon-client-ui.page-clientareaproducts .neon-products-toolbar { display: flex; justify-content: flex-end; margin: -4px 0 16px; }
.neon-client-ui.page-clientareaproducts .neon-products-toolbar .btn { padding: 11px 17px; border-radius: 9px; }
.neon-client-ui.page-clientareaproducts .neon-products-toolbar .btn i { margin-right: 8px; }

.neon-client-ui.page-clientareaproducts .table-container {
    overflow: visible;
    border: 1px solid var(--neon-border);
    border-radius: 11px;
    background: var(--nh-surface-1b1e27, #1b1e27);
}
.neon-client-ui.page-clientareaproducts .table-top {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px 24px;
    min-height: 76px;
    padding: 15px 21px;
    border: 0;
    border-bottom: 1px solid var(--neon-border);
    border-radius: 11px 11px 0 0;
    background: var(--nh-surface-1d2029, #1d2029);
}
.neon-services-list-heading { display: flex; flex-direction: column; gap: 2px; }
.neon-services-list-heading strong { color: var(--nh-text-fff, #fff); font-size: 16px; }
.neon-services-list-heading span { color: var(--neon-muted); font-size: 12px; }
.neon-client-ui.page-clientareaproducts .table-top > .d-flex { align-items: center; gap: 8px; }
.neon-client-ui.page-clientareaproducts .table-top label { margin: 0; color: var(--neon-muted); }
.neon-client-ui.page-clientareaproducts .view-filter-btns .btn { min-width: 120px; justify-content: space-between; }
.neon-client-ui.page-clientareaproducts #tableServicesList { margin: 0; background: var(--nh-surface-1b1e27, #1b1e27); }
.neon-client-ui.page-clientareaproducts #tableServicesList thead th {
    padding: 16px 18px;
    border-bottom: 1px solid var(--neon-border);
    background: var(--nh-surface-1b1e27, #1b1e27);
    color: var(--nh-muted-bfb4d5, #bfb4d5);
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .055em;
    text-transform: uppercase;
}
.neon-client-ui.page-clientareaproducts #tableServicesList tbody td {
    padding: 18px;
    border-color: var(--nh-border-343244, #343244);
    background: var(--nh-surface-1b1e27, #1b1e27);
    color: var(--nh-text-f7f4ff, #f7f4ff);
    vertical-align: middle;
}
.neon-client-ui.page-clientareaproducts #tableServicesList tbody tr:nth-child(even) td { background: var(--nh-surface-20212b, #20212b); }
.neon-client-ui.page-clientareaproducts #tableServicesList tbody tr:hover td { background: var(--nh-raised-2a2638, #2a2638); }
.neon-client-ui.page-clientareaproducts #tableServicesList tbody td:first-child { min-width: 250px; }
.neon-client-ui.page-clientareaproducts #tableServicesList tbody td:nth-child(2) { font-weight: 700; }
.neon-client-ui.page-clientareaproducts .neon-service-name { color: var(--nh-text-efe2ff, #efe2ff); font-weight: 700; line-height: 1.4; text-decoration: none; }
.neon-client-ui.page-clientareaproducts .neon-service-name:hover { color: var(--nh-text-f6c6e8, #f6c6e8); text-decoration: underline; }
.neon-client-ui.page-clientareaproducts #tableServicesList .status { font-weight: 700; }
.neon-client-ui.page-clientareaproducts #tableServicesList .status-active { color: var(--nh-success-6ce2a3, #6ce2a3); }
.neon-client-ui.page-clientareaproducts #tableServicesList .status-pending { color: var(--nh-danger-fa9bb7, #fa9bb7); }
.neon-client-ui.page-clientareaproducts #tableServicesList .status-suspended,
.neon-client-ui.page-clientareaproducts #tableServicesList .status-terminated { color: var(--nh-danger-ff899d, #ff899d); }
.neon-client-ui.page-clientareaproducts .dataTables_wrapper > .row:last-child { margin: 0; padding: 14px 12px; border-top: 1px solid var(--neon-border); }
.neon-client-ui.page-clientareaproducts .message-no-data { padding: 55px 20px; text-align: center; }

@media (max-width: 1199px) {
    .neon-client-ui.page-clientareaproducts .main-grid:has(> .main-sidebar) { grid-template-columns: minmax(0, 1fr); }
    .neon-client-ui.page-clientareaproducts .main-grid:has(> .main-sidebar) > .main-sidebar { grid-column: 1; grid-row: 2; }
}

@media (max-width: 767px) {
    .neon-services-overview { flex-direction: column; align-items: stretch; padding: 21px 18px; }
    .neon-services-stats { flex-basis: auto; }
    .neon-client-ui.page-clientareaproducts .table-top { padding: 16px; }
    .neon-client-ui.page-clientareaproducts #tableServicesList thead th,
    .neon-client-ui.page-clientareaproducts #tableServicesList tbody td { padding: 13px 10px; }
    .neon-client-ui.page-clientareaproducts #tableServicesList tbody td:first-child { min-width: 0; }
}

/* Support tickets: clear progress and direct access to each conversation. */
.neon-client-ui .logo:has(> img.logo-img[src*="/assets/img/logo/logo_big."]) { position: relative; }
.neon-client-ui .logo > img.logo-img[src*="/assets/img/logo/logo_big."] { filter: brightness(0) invert(1); }
.neon-client-ui .logo:has(> img.logo-img[src*="/assets/img/logo/logo_big."])::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 31%;
    height: 100%;
    background: url("../img/logo/logo_big.278849071.png") left center / 323% 100% no-repeat;
    pointer-events: none;
}
.neon-client-ui.page-supportticketslist .sidebar a,
.neon-client-ui.page-announcements .sidebar a,
.neon-client-ui.page-viewannouncement .sidebar a { color: var(--nh-text-d7cde6, #d7cde6) !important; }
.neon-client-ui.page-supportticketslist .sidebar a:hover,
.neon-client-ui.page-announcements .sidebar a:hover,
.neon-client-ui.page-viewannouncement .sidebar a:hover { color: var(--nh-text-fff, #fff) !important; }
.neon-client-ui.page-supportticketslist .sidebar .list-group-item i,
.neon-client-ui.page-announcements .sidebar .list-group-item i,
.neon-client-ui.page-viewannouncement .sidebar .list-group-item i { color: var(--nh-purple-d991e8, #d991e8) !important; }
.neon-client-ui.page-supportticketslist .main-header > .container,
.neon-client-ui.page-supportticketslist .main-body > .container,
.neon-client-ui.page-announcements .main-header > .container,
.neon-client-ui.page-announcements .main-body > .container {
    width: 100%;
    max-width: none;
    padding-left: clamp(18px, 2vw, 32px);
    padding-right: clamp(18px, 2vw, 32px);
}

.neon-client-ui.page-supportticketslist .main-grid,
.neon-client-ui.page-announcements .main-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.neon-client-ui.page-supportticketslist .main-grid:has(> .main-sidebar) {
    grid-template-columns: minmax(0, 1fr) clamp(360px, 26vw, 410px);
}
.neon-client-ui.page-announcements .main-grid:has(> .main-sidebar) {
    grid-template-columns: minmax(0, 1fr) 290px;
}

.neon-client-ui.page-supportticketslist .main-grid > .main-content,
.neon-client-ui.page-announcements .main-grid > .main-content {
    grid-column: 1;
    grid-row: 1;
    display: block;
    width: 100%;
    max-width: none !important;
    min-width: 0;
    margin: 0 !important;
}

.neon-client-ui.page-supportticketslist .main-grid > .main-sidebar,
.neon-client-ui.page-announcements .main-grid > .main-sidebar {
    grid-column: 1;
    grid-row: 2;
    display: block;
    width: 100%;
    max-width: none;
    min-width: 0;
    margin: 0 !important;
}

.neon-client-ui.page-supportticketslist .main-grid:has(> .main-sidebar) > .main-sidebar,
.neon-client-ui.page-announcements .main-grid:has(> .main-sidebar) > .main-sidebar {
    grid-column: 2;
    grid-row: 1;
}

.neon-client-ui.page-supportticketslist .main-sidebar .panel-sidebar {
    min-width: 0;
    overflow: hidden;
}
.neon-client-ui.page-supportticketslist .main-sidebar .panel-sidebar > .panel-heading {
    padding: 18px 20px 14px;
}
.neon-client-ui.page-supportticketslist .main-sidebar .panel-sidebar > .panel-heading .panel-title {
    margin: 0;
    line-height: 1.35;
}
.neon-client-ui.page-supportticketslist .main-sidebar .panel-sidebar .list-group-item {
    min-height: 44px;
    padding: 12px 18px;
}
.neon-client-ui.page-supportticketslist .main-sidebar .panel-sidebar > .list-group > a.list-group-item {
    padding-left: 24px !important;
    padding-right: 20px !important;
}
.neon-client-ui.page-supportticketslist .main-sidebar .panel-sidebar > .list-group > a.list-group-item > i {
    margin-right: 10px !important;
}
.neon-client-ui.page-supportticketslist .main-sidebar .panel-sidebar .list-group-item.active {
    border-color: var(--nh-border-694783, #694783);
    background: var(--nh-raised-49315e, #49315e) !important;
    color: var(--nh-text-fff, #fff) !important;
}
.neon-client-ui.page-supportticketslist .main-sidebar .panel-sidebar .list-group-item.active i {
    color: var(--nh-pink-f4a2d9, #f4a2d9) !important;
}

.neon-tickets-overview,
.neon-news-overview {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 20px;
    padding: 24px 26px;
    border: 1px solid var(--neon-border);
    border-left: 3px solid var(--neon-purple);
    border-radius: 11px;
    background: radial-gradient(circle at 5% 0%, rgba(179, 99, 221, .16), transparent 42%), var(--nh-surface-1b1927, #1b1927);
}
.neon-tickets-overview-copy,
.neon-news-overview > div { min-width: 0; }
.neon-tickets-overview-kicker,
.neon-news-overview-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--nh-purple-e69fe5, #e69fe5);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .1em;
}
.neon-tickets-overview-kicker i,
.neon-news-overview-kicker i { color: var(--neon-pink); font-size: 15px; }
.neon-tickets-overview h2,
.neon-news-overview h2 { margin: 9px 0 5px; color: var(--nh-text-fff, #fff); font-size: clamp(21px, 1.8vw, 28px); font-weight: 750; letter-spacing: -.03em; }
.neon-tickets-overview p,
.neon-news-overview p { max-width: 580px; margin: 0; color: var(--neon-muted); font-size: 14px; }
.neon-tickets-new { margin-top: 17px; padding: 10px 17px; border-radius: 9px; }
.neon-tickets-new i { margin-right: 8px; }
.neon-tickets-stats { display: grid; grid-template-columns: repeat(3, minmax(95px, 1fr)); gap: 10px; flex: 0 1 410px; }
.neon-tickets-stat { min-width: 0; padding: 13px 15px; border: 1px solid var(--nh-border-443a59, #443a59); border-radius: 9px; background: var(--nh-raised-242034, #242034); }
.neon-tickets-stat span { display: block; min-height: 27px; margin-bottom: 5px; color: var(--neon-muted); font-size: 11px; line-height: 1.2; }
.neon-tickets-stat strong { color: var(--nh-text-fff, #fff); font-size: 25px; line-height: 1; }
.neon-tickets-stat-open strong { color: var(--nh-danger-fa9bb7, #fa9bb7); }
.neon-tickets-stat-closed strong { color: var(--nh-success-6ce2a3, #6ce2a3); }

.neon-client-ui.page-supportticketslist .ticket-table {
    overflow: visible;
    border: 1px solid var(--neon-border);
    border-radius: 11px;
    background: var(--nh-surface-1b1e27, #1b1e27);
}
.neon-client-ui.page-supportticketslist .ticket-table .table-top {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px 24px;
    min-height: 76px;
    padding: 15px 21px;
    border: 0;
    border-bottom: 1px solid var(--neon-border);
    border-radius: 11px 11px 0 0;
    background: var(--nh-surface-1d2029, #1d2029);
}
.neon-tickets-list-heading { display: flex; flex-direction: column; gap: 2px; }
.neon-tickets-list-heading strong { color: var(--nh-text-fff, #fff); font-size: 16px; }
.neon-tickets-list-heading span { color: var(--neon-muted); font-size: 12px; }
.neon-client-ui.page-supportticketslist .table-top > .d-flex { align-items: center; gap: 8px; }
.neon-client-ui.page-supportticketslist .table-top label { margin: 0; color: var(--neon-muted); }
.neon-client-ui.page-supportticketslist .view-filter-btns .btn { min-width: 120px; justify-content: space-between; }
.neon-client-ui.page-supportticketslist #tableTicketsList { margin: 0; background: var(--nh-surface-1b1e27, #1b1e27); }
.neon-client-ui.page-supportticketslist #tableTicketsList thead th {
    padding: 16px 18px;
    border-bottom: 1px solid var(--neon-border);
    background: var(--nh-surface-1b1e27, #1b1e27);
    color: var(--nh-muted-bfb4d5, #bfb4d5);
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .055em;
    text-transform: uppercase;
}
.neon-client-ui.page-supportticketslist #tableTicketsList tbody td {
    padding: 17px 18px;
    border-color: var(--nh-border-343244, #343244);
    background: var(--nh-surface-1b1e27, #1b1e27);
    color: var(--nh-text-f7f4ff, #f7f4ff);
    vertical-align: middle;
}
.neon-client-ui.page-supportticketslist #tableTicketsList tbody tr:nth-child(even) td { background: var(--nh-surface-20212b, #20212b); }
.neon-client-ui.page-supportticketslist #tableTicketsList tbody tr:hover td { background: var(--nh-raised-2a2638, #2a2638); }
.neon-client-ui.page-supportticketslist #tableTicketsList tbody td:first-child { min-width: 245px; }
.neon-client-ui.page-supportticketslist .neon-ticket-number { color: var(--nh-purple-d9a8fa, #d9a8fa); font-size: 12px; text-decoration: none; }
.neon-client-ui.page-supportticketslist .neon-ticket-subject { display: inline-block; margin-top: 3px; color: var(--nh-text-fff, #fff); font-weight: 700; line-height: 1.4; text-decoration: none; }
.neon-client-ui.page-supportticketslist .neon-ticket-number:hover,
.neon-client-ui.page-supportticketslist .neon-ticket-subject:hover { color: var(--nh-text-f6c6e8, #f6c6e8); text-decoration: underline; }
.neon-client-ui.page-supportticketslist #tableTicketsList .status { font-weight: 700; }
.neon-client-ui.page-supportticketslist .dataTables_wrapper > .row:last-child { margin: 0; padding: 14px 12px; border-top: 1px solid var(--neon-border); }
.neon-client-ui.page-supportticketslist .message-no-data { padding: 55px 20px; text-align: center; }

/* Announcements: a featured update followed by compact cards. */
.neon-news-overview-note {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex: 0 0 auto;
    padding: 12px 15px;
    border: 1px solid var(--nh-border-50405f, #50405f);
    border-radius: 9px;
    background: var(--nh-raised-292237, #292237);
    color: var(--nh-text-e8d8f5, #e8d8f5);
    font-size: 12px;
}
.neon-news-overview-note i { color: var(--neon-pink); }
.neon-client-ui.page-announcements .announcements-list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin: 0;
}
.neon-client-ui.page-announcements .announcements-list > .list-group-item {
    display: flex;
    flex-direction: column;
    min-width: 0;
    margin: 0;
    padding: 23px 25px;
    border: 1px solid var(--neon-border);
    border-left: 3px solid var(--nh-purple-73539a, #73539a);
    border-radius: 11px;
    background: var(--nh-surface-1b1e27, #1b1e27);
    color: var(--neon-text);
    box-shadow: none;
}
.neon-client-ui.page-announcements .announcements-list > .list-group-item:first-child {
    grid-column: 1 / -1;
    padding: 29px 32px;
    border-left-color: var(--neon-pink);
    background: radial-gradient(circle at 95% 5%, rgba(185, 104, 210, .13), transparent 38%), var(--nh-surface-1b1e27, #1b1e27);
}
.neon-client-ui.page-announcements .announcements-list > .list-group-item:hover { border-color: var(--nh-purple-73539a, #73539a); border-left-color: var(--neon-pink); background-color: var(--nh-raised-242135, #242135); }
.neon-client-ui.page-announcements .announcement-date { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 11px; color: var(--nh-muted-c8b9dc, #c8b9dc); font-size: 12px; }
.neon-client-ui.page-announcements .announcement-date i { color: var(--neon-pink); }
.neon-client-ui.page-announcements .list-group-item-heading { margin: 0 0 10px; color: var(--nh-text-fff, #fff); font-size: 21px; font-weight: 750; line-height: 1.25; letter-spacing: -.025em; }
.neon-client-ui.page-announcements .list-group-item:first-child .list-group-item-heading { font-size: clamp(23px, 2vw, 29px); }
.neon-client-ui.page-announcements .list-group-item-heading a { color: inherit; text-decoration: none; }
.neon-client-ui.page-announcements .list-group-item-heading a:hover { color: var(--nh-text-f6c6e8, #f6c6e8); }
.neon-client-ui.page-announcements .list-group-item-text { min-width: 0; color: var(--nh-muted-c7bfd5, #c7bfd5); font-size: 14px; line-height: 1.65; overflow-wrap: anywhere; }
.neon-client-ui.page-announcements .list-group-item-text img { max-width: 100%; height: auto; border-radius: 8px; }
.neon-client-ui.page-announcements .list-group-item-footer { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: auto; padding-top: 20px; border: 0; }
.neon-client-ui.page-announcements .list-group-item-footer .btn i { margin-left: 7px; }
.neon-client-ui.page-announcements .announcement-details { margin-left: auto; }
.neon-client-ui.page-announcements .announcements-list > .pagination { grid-column: 1 / -1; justify-self: center; margin: 12px 0 0; }
.neon-client-ui.page-announcements .message-no-data { padding: 55px 20px; text-align: center; }

@media (max-width: 1199px) {
    .neon-client-ui.page-supportticketslist .main-grid:has(> .main-sidebar),
    .neon-client-ui.page-announcements .main-grid:has(> .main-sidebar) { grid-template-columns: minmax(0, 1fr); }
    .neon-client-ui.page-supportticketslist .main-grid:has(> .main-sidebar) > .main-sidebar,
    .neon-client-ui.page-announcements .main-grid:has(> .main-sidebar) > .main-sidebar { grid-column: 1; grid-row: 2; }
}

@media (max-width: 767px) {
    .neon-tickets-overview,
    .neon-news-overview { flex-direction: column; align-items: stretch; padding: 21px 18px; }
    .neon-tickets-stats { flex-basis: auto; }
    .neon-client-ui.page-supportticketslist .ticket-table .table-top { padding: 16px; }
    .neon-client-ui.page-supportticketslist #tableTicketsList thead th,
    .neon-client-ui.page-supportticketslist #tableTicketsList tbody td { padding: 13px 10px; }
    .neon-client-ui.page-supportticketslist #tableTicketsList tbody td:first-child { min-width: 0; }
    .neon-news-overview-note { align-self: flex-start; }
    .neon-client-ui.page-announcements .announcements-list { grid-template-columns: minmax(0, 1fr); }
    .neon-client-ui.page-announcements .announcements-list > .list-group-item:first-child { grid-column: 1; padding: 23px 25px; }
}

/* Ticket conversation: keep Lagom's forms and actions intact. */
.neon-client-ui.page-viewticket .main-header > .container,
.neon-client-ui.page-viewticket .main-body > .container {
    width: 100%;
    max-width: none;
    padding-left: clamp(18px, 2vw, 32px);
    padding-right: clamp(18px, 2vw, 32px);
}

.neon-client-ui.page-viewticket .main-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}
.neon-client-ui.page-viewticket .main-grid:has(> .main-sidebar) {
    grid-template-columns: minmax(0, 1fr) clamp(360px, 26vw, 410px);
}
.neon-client-ui.page-viewticket .main-grid > .main-content {
    grid-column: 1;
    grid-row: 1;
    display: block;
    width: 100%;
    max-width: none !important;
    min-width: 0;
    margin: 0 !important;
}
.neon-client-ui.page-viewticket .main-grid > .main-sidebar {
    grid-column: 1;
    grid-row: 2;
    display: block;
    width: 100%;
    max-width: none;
    min-width: 0;
    margin: 0 !important;
}
.neon-client-ui.page-viewticket .main-grid:has(> .main-sidebar) > .main-sidebar {
    grid-column: 2;
    grid-row: 1;
}

.neon-client-ui.page-viewticket .main-sidebar .panel-sidebar:not(.panel-ticket-information) {
    min-width: 0;
    overflow: hidden;
}
.neon-client-ui.page-viewticket .main-sidebar .panel-sidebar:not(.panel-ticket-information) > .panel-heading {
    padding: 18px 20px 14px;
}
.neon-client-ui.page-viewticket .main-sidebar .panel-sidebar:not(.panel-ticket-information) > .panel-heading .panel-title {
    margin: 0;
    line-height: 1.35;
}
.neon-client-ui.page-viewticket .main-sidebar .panel-sidebar:not(.panel-ticket-information) > .list-group > a.list-group-item {
    min-height: 44px;
    padding: 12px 20px 12px 24px !important;
}
.neon-client-ui.page-viewticket .main-sidebar .panel-sidebar:not(.panel-ticket-information) > .list-group > a.list-group-item > i {
    margin-right: 10px !important;
}
.neon-client-ui.page-viewticket .main-sidebar .panel-sidebar:not(.panel-ticket-information) > .list-group > a.list-group-item.active {
    background: var(--nh-raised-49315e, #49315e) !important;
    color: var(--nh-text-fff, #fff) !important;
}

.neon-client-ui.page-viewticket .main-sidebar .panel-ticket-information {
    min-width: 0;
    overflow: hidden;
}
.neon-client-ui.page-viewticket .main-sidebar .panel-ticket-information > .panel-heading {
    padding: 18px 22px;
}
.neon-client-ui.page-viewticket .main-sidebar .panel-ticket-information > .panel-heading .panel-title {
    margin: 0;
    line-height: 1.35;
}
.neon-client-ui.page-viewticket .main-sidebar .panel-ticket-information > .list-group > .list-group-item {
    padding: 17px 22px;
}
.neon-client-ui.page-viewticket .main-sidebar .panel-ticket-information div.list-group-item-content {
    min-width: 0;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
.neon-client-ui.page-viewticket .main-sidebar .panel-ticket-information .list-group-item-content .title {
    display: block;
    margin-bottom: 5px;
}

.neon-client-ui.page-viewticket .ticket-reply,
.neon-client-ui.page-viewticket .panel-ticket-reply,
.neon-client-ui.page-viewticket .open-ticket-information,
.neon-client-ui.page-viewticket .open-ticket-form {
    margin-bottom: 16px;
    border: 1px solid var(--neon-border);
    border-radius: 11px;
    background: var(--nh-surface-1b1e27, #1b1e27);
    box-shadow: none;
}
.neon-client-ui.page-viewticket .ticket-reply.staff {
    border-left: 3px solid var(--neon-purple);
}
.neon-client-ui.page-viewticket .ticket-reply:not(.staff) {
    border-left: 3px solid var(--neon-pink);
}
.neon-client-ui.page-viewticket .ticket-reply-top,
.neon-client-ui.page-viewticket .ticket-reply-message,
.neon-client-ui.page-viewticket .ticket-reply-attachments {
    padding: 18px 22px;
    background: transparent;
    color: var(--neon-text);
    border-color: var(--neon-border);
}
.neon-client-ui.page-viewticket .ticket-reply-top {
    background: var(--nh-surface-20212b, #20212b);
}
.neon-client-ui.page-viewticket .ticket-reply-message {
    line-height: 1.7;
    overflow-wrap: anywhere;
}
.neon-client-ui.page-viewticket .ticket-reply-message img {
    max-width: 100%;
    height: auto;
}
.neon-client-ui.page-viewticket .ticket-reply-attachments a {
    overflow-wrap: anywhere;
}
.neon-client-ui.page-viewticket .panel-ticket-reply .panel-heading,
.neon-client-ui.page-viewticket .open-ticket-form .panel-heading {
    padding: 17px 22px;
    border-color: var(--neon-border);
    background: var(--nh-surface-20212b, #20212b);
}
.neon-client-ui.page-viewticket .panel-ticket-reply .panel-body,
.neon-client-ui.page-viewticket .open-ticket-form .panel-body {
    padding: 22px;
    background: transparent;
    color: var(--neon-text);
}
.neon-client-ui.page-viewticket .ticket-reply-top small,
.neon-client-ui.page-viewticket .ticket-reply-top .text-muted,
.neon-client-ui.page-viewticket .ticket-reply-attachments,
.neon-client-ui.page-viewticket .open-ticket-information .text-muted {
    color: var(--neon-muted) !important;
}
.neon-client-ui.page-viewticket .sidebar a {
    color: var(--nh-text-d7cde6, #d7cde6) !important;
}
.neon-client-ui.page-viewticket .sidebar a:hover {
    color: var(--nh-text-fff, #fff) !important;
}
.neon-client-ui.page-viewticket .sidebar .list-group-item i {
    color: var(--nh-purple-d991e8, #d991e8) !important;
}
.neon-client-ui.page-viewticket .main-content a:focus-visible,
.neon-client-ui.page-viewticket .main-content button:focus-visible {
    outline: 2px solid var(--neon-pink);
    outline-offset: 2px;
}

@media (max-width: 1199px) {
    .neon-client-ui.page-viewticket .main-grid:has(> .main-sidebar) {
        grid-template-columns: minmax(0, 1fr);
    }
    .neon-client-ui.page-viewticket .main-grid:has(> .main-sidebar) > .main-sidebar {
        grid-column: 1;
        grid-row: 2;
    }
}

@media (max-width: 767px) {
    .neon-client-ui.page-viewticket .ticket-reply-top,
    .neon-client-ui.page-viewticket .ticket-reply-message,
    .neon-client-ui.page-viewticket .ticket-reply-attachments,
    .neon-client-ui.page-viewticket .panel-ticket-reply .panel-body,
    .neon-client-ui.page-viewticket .open-ticket-form .panel-body {
        padding: 16px;
    }
}

/* Ticket detail: overview, reply editor, and conversation. */
.neon-client-ui.page-viewticket .neon-ticket-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 300px);
    gap: 24px;
    margin-bottom: 27px;
    padding: clamp(23px, 2.5vw, 35px);
    border: 1px solid var(--nh-border-58416d, #58416d);
    border-left: 3px solid var(--neon-pink);
    border-radius: 13px;
    background: radial-gradient(circle at 85% 8%, rgba(177, 96, 221, .2), transparent 40%), var(--nh-surface-211c2e, #211c2e);
}
.neon-client-ui.page-viewticket .neon-ticket-hero-main { min-width: 0; }
.neon-client-ui.page-viewticket .neon-ticket-hero-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--nh-pink-efa1dd, #efa1dd);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
}
.neon-client-ui.page-viewticket .neon-ticket-hero h2 {
    margin: 12px 0 8px;
    color: var(--nh-text-fff, #fff);
    font-size: clamp(23px, 2.3vw, 33px);
    font-weight: 750;
    line-height: 1.2;
    overflow-wrap: anywhere;
}
.neon-client-ui.page-viewticket .neon-ticket-hero p { margin: 0; color: var(--nh-muted-c9bfd9, #c9bfd9); line-height: 1.6; }
.neon-client-ui.page-viewticket .neon-ticket-hero-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.neon-client-ui.page-viewticket .neon-ticket-hero-actions .btn { padding: 10px 15px; border-radius: 8px; }
.neon-client-ui.page-viewticket .neon-ticket-hero-actions .btn i { margin-right: 6px; }
.neon-client-ui.page-viewticket .neon-ticket-hero-details {
    display: grid;
    align-content: center;
    gap: 0;
    padding: 5px 20px;
    border: 1px solid var(--nh-border-4a3a60, #4a3a60);
    border-radius: 10px;
    background: var(--nh-alpha-17-16-25-p4, rgba(17, 16, 25, .4));
}
.neon-client-ui.page-viewticket .neon-ticket-hero-details > div { display: flex; justify-content: space-between; gap: 15px; padding: 13px 0; border-bottom: 1px solid var(--nh-border-493d5a, #493d5a); }
.neon-client-ui.page-viewticket .neon-ticket-hero-details > div:last-child { border-bottom: 0; }
.neon-client-ui.page-viewticket .neon-ticket-hero-details span { color: var(--nh-muted-bfb2d1, #bfb2d1); font-size: 12px; }
.neon-client-ui.page-viewticket .neon-ticket-hero-details strong { color: var(--nh-text-fff, #fff); font-size: 13px; text-align: right; overflow-wrap: anywhere; }
.neon-client-ui.page-viewticket .neon-ticket-hero-details .neon-ticket-open { color: var(--nh-success-79e5ab, #79e5ab); }
.neon-client-ui.page-viewticket .neon-ticket-hero-details .neon-ticket-closed { color: var(--nh-text-e4b6c8, #e4b6c8); }
.neon-client-ui.page-viewticket .main-content > .section { margin: 0 0 25px; padding: 0; }
.neon-client-ui.page-viewticket .section-header { margin: 0 0 13px; padding: 0; border: 0; }
.neon-client-ui.page-viewticket .section-header .section-title { color: var(--nh-text-fff, #fff); font-size: 18px; font-weight: 750; }
.neon-client-ui.page-viewticket .section-body { padding: 0; }
.neon-client-ui.page-viewticket .panel-ticket-reply { overflow: hidden; }
.neon-client-ui.page-viewticket .panel-ticket-reply .panel-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    margin: 0;
    padding: 5px 12px 0;
    border-bottom: 1px solid var(--neon-border);
    background: var(--nh-raised-242033, #242033);
}
.neon-client-ui.page-viewticket .panel-ticket-reply .panel-tabs > li > a {
    display: flex;
    align-items: center;
    gap: 7px;
    min-height: 45px;
    padding: 10px 13px;
    border: 0;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    background: transparent;
    color: var(--nh-muted-cfc3dc, #cfc3dc);
}
.neon-client-ui.page-viewticket .panel-ticket-reply .panel-tabs > li > a:hover,
.neon-client-ui.page-viewticket .panel-ticket-reply .panel-tabs > li > a.active {
    border-bottom-color: var(--neon-pink);
    background: var(--nh-raised-332643, #332643);
    color: var(--nh-text-fff, #fff);
}
.neon-client-ui.page-viewticket .panel-ticket-reply .tab-content { padding: 0; background: var(--nh-surface-1b1e27, #1b1e27); }
.neon-client-ui.page-viewticket .panel-ticket-reply .tab-container { padding: 23px; }
.neon-client-ui.page-viewticket .panel-ticket-reply .tab-actions { display: flex; flex-wrap: wrap; gap: 10px; padding: 0 23px 23px; background: transparent; }
.neon-client-ui.page-viewticket .panel-ticket-reply .ticket-creator { margin-bottom: 18px; color: var(--nh-text-fff, #fff); }
.neon-client-ui.page-viewticket .panel-ticket-reply .ticket-creator-guest { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-bottom: 18px; }
.neon-client-ui.page-viewticket .neon-ticket-conversation-heading { margin: 5px 0 14px; color: var(--nh-text-fff, #fff); font-size: 18px; font-weight: 750; }
.neon-client-ui.page-viewticket .panel-ticket-reply.panel-collapsable > .panel-heading { cursor: pointer; }
.neon-client-ui.page-viewticket .panel-ticket-reply.panel-collapsable > .panel-heading .panel-title { margin: 0; color: var(--nh-text-fff, #fff); font-size: 17px; font-weight: 750; }
.neon-client-ui.page-viewticket .panel-ticket-reply.panel-collapsable .panel-body { padding: 22px; }
.neon-client-ui.page-viewticket .panel-ticket-reply.panel-collapsable .form-actions { display: flex; flex-wrap: wrap; gap: 10px; padding-top: 12px; }
.neon-client-ui.page-viewticket .panel-ticket-reply.panel-collapsable .file-input { border-color: var(--nh-border-524560, #524560); background: var(--nh-surface-171622, #171622); }
.neon-client-ui.page-viewticket .panel-ticket-reply.panel-collapsable .ticket-attachments-message { color: var(--neon-muted); }
.neon-client-ui.page-viewticket .panel-ticket-reply .creator-details-email,
.neon-client-ui.page-viewticket .panel-ticket-reply .tab-desc { color: var(--neon-muted); }
.neon-client-ui.page-viewticket .panel-ticket-reply .form-control,
.neon-client-ui.page-viewticket .panel-ticket-reply .markdown-editor {
    border-color: var(--nh-border-524560, #524560);
    background: var(--nh-surface-171622, #171622);
    color: var(--nh-text-fff, #fff);
}
.neon-client-ui.page-viewticket .panel-ticket-reply .form-control:focus { border-color: var(--neon-pink); box-shadow: 0 0 0 3px rgba(242, 119, 197, .14); }
.neon-client-ui.page-viewticket .panel-ticket-reply .attachements-container { margin-top: 15px; color: var(--nh-muted-cfc3dc, #cfc3dc); }
.neon-client-ui.page-viewticket .ticket-reply { overflow: hidden; }
.neon-client-ui.page-viewticket .ticket-reply .name { color: var(--nh-text-fff, #fff); font-weight: 700; }
.neon-client-ui.page-viewticket .ticket-reply .date,
.neon-client-ui.page-viewticket .ticket-reply .ip-address { color: var(--neon-muted); }
.neon-client-ui.page-viewticket .ticket-reply .label { background: var(--nh-raised-382949, #382949); color: var(--nh-text-e8d4fa, #e8d4fa); }
.neon-client-ui.page-viewticket .ticket-reply-message p,
.neon-client-ui.page-viewticket .ticket-reply-message li { color: var(--nh-text-e8e0f0, #e8e0f0); }
.neon-client-ui.page-viewticket .ticket-reply-message pre,
.neon-client-ui.page-viewticket .ticket-reply-message code { max-width: 100%; background: var(--nh-surface-15131e, #15131e); color: var(--nh-text-e8d4fa, #e8d4fa); }

@media (max-width: 767px) {
    .neon-client-ui.page-viewticket .neon-ticket-hero { grid-template-columns: minmax(0, 1fr); padding: 21px; }
    .neon-client-ui.page-viewticket .panel-ticket-reply .panel-tabs { padding: 4px 8px 0; }
    .neon-client-ui.page-viewticket .panel-ticket-reply .panel-tabs > li > a { padding: 9px; font-size: 12px; }
    .neon-client-ui.page-viewticket .panel-ticket-reply .tab-container { padding: 17px; }
    .neon-client-ui.page-viewticket .panel-ticket-reply .tab-actions { padding: 0 17px 17px; }
    .neon-client-ui.page-viewticket .panel-ticket-reply .ticket-creator-guest { grid-template-columns: minmax(0, 1fr); }
}
