/* 12SSL customer-area design system. Shared by every page of the 12ssl theme.
   Keep status meanings, module behavior and responsive navigation intact. */
:root {
    --ssl-green: #16803c;
    --ssl-green-hover: #116530;
    --ssl-green-deep: #252a30;
    --ssl-ink: #252a30;
    --ssl-muted: #626b75;
    --ssl-soft: #f7f8f9;
    --ssl-soft-green: #f1f6f2;
    --ssl-line: #e0e4e7;
    --ssl-radius: 8px;
    --ssl-shadow: none;
    --ssl-space-1: 4px;
    --ssl-space-2: 8px;
    --ssl-space-3: 12px;
    --ssl-space-4: 16px;
    --ssl-space-6: 24px;
    --ssl-space-8: 32px;
}

/* Services list: keep product and certificate configuration state on one row. */
body.ssl-client-theme #main-body #tableServicesList .ssl-service-product-cell,
body.ssl-client-theme #main-body #tableServicesList .ssl-service-name,
body.ssl-client-theme #main-body #tableServicesList .ssl-service-product-line,
body.ssl-client-theme #main-body #tableServicesList .ssl-service-product-line strong {
    font-size: 14px;
    font-weight: 400;
}

body.ssl-client-theme #main-body #tableServicesList .ssl-service-product-line {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    max-width: 100%;
    white-space: normal;
}

body.ssl-client-theme #main-body #tableServicesList .ssl-service-domain {
    display: inline-flex;
    width: auto;
    max-width: 100%;
    margin: 0;
    white-space: normal;
    overflow-wrap: anywhere;
}

body.ssl-client-theme #main-body #tableServicesList .ssl-service-name {
    display: flex;
    min-width: 0;
    align-items: baseline;
    flex-wrap: wrap;
    column-gap: 8px;
    row-gap: 0;
}

body.ssl-client-theme #main-body #tableServicesList .ssl-service-configuration-status {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    padding: 2px 7px;
    border: 1px solid #e6d5a8;
    border-radius: 999px;
    background: #fff8e8;
    color: #7a5a12;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.2;
}

body.ssl-client-theme #main-body #tableServicesList {
    width: 100% !important;
    table-layout: fixed !important;
}

body.ssl-client-theme #main-body #tableServicesList td .label.status {
    display: flex !important;
    width: max-content;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    vertical-align: middle;
}

/* First cell remains only as the zero-width service-id hook target. */
body.ssl-client-theme #main-body #tableServicesList img.ssl-state,
body.ssl-client-theme #main-body #tableServicesList img[src*="/assets/img/ssl/ssl-loading.gif"],
body.ssl-client-theme #main-body #tableServicesList td.ssl-info > img {
    display: none !important;
}
body.ssl-client-theme { font-size: 14px; line-height: 1.6; background: #fff; }
body.ssl-client-theme #main-body { background: #fff; padding-top: 24px; padding-bottom: 32px; }
body.ssl-client-theme #main-body .card,
body.ssl-client-theme #main-body .panel,
body.ssl-client-theme #main-body .table-container,
body.ssl-client-theme #main-body .ssl-product-main-card,
body.ssl-client-theme #main-body .ssl-invoice-card {
    background: #fff; border: 1px solid var(--ssl-line); border-radius: 8px; box-shadow: none;
}
body.ssl-client-theme #main-body .card,
body.ssl-client-theme #main-body .panel { margin-bottom: 16px; }
body.ssl-client-theme #main-body .card > .card-header,
body.ssl-client-theme #main-body .sidebar .card-sidebar > .card-header,
body.ssl-client-theme #main-body .panel > .panel-heading,
body.ssl-client-theme #main-body .ssl-table-page-header {
    padding: 12px 16px !important; background: #fff !important;
    border: 0; border-bottom: 1px solid var(--ssl-line);
    border-radius: 7px 7px 0 0; color: var(--ssl-ink); box-shadow: none;
}
body.ssl-client-theme #main-body .card-header .card-title,
body.ssl-client-theme #main-body .panel-title,
body.ssl-client-theme #main-body .ssl-table-page-header h1 {
    font-family: var(--ssl-font-sans); font-size: 16px !important;
    line-height: 1.4; font-weight: 600; letter-spacing: normal; color: var(--ssl-ink);
    display: flex !important; align-items: center !important; gap: 8px !important;
}
/* Sidebar visual weight: lowered one tier relative to primary content */
body.ssl-client-theme #main-body .sidebar .card-sidebar > .card-header {
    padding: 10px 16px !important; background: #fff !important;
}
body.ssl-client-theme #main-body .sidebar .card-header,
body.ssl-client-theme #main-body .sidebar .card-title,
body.ssl-client-theme #main-body .sidebar .card-header .card-title,
body.ssl-client-theme #main-body .ssl-sidebar-title-label,
body.ssl-client-theme #main-body [menuitemname="balance-amount"],
body.ssl-client-theme #main-body [menuitemname="balance-amount"] .sidebar-menu-item-label,
body.ssl-client-theme #main-body [menuitemname="balance-amount"] h4,
body.ssl-client-theme #main-body [menuitemname="balance-amount"] span,
body.ssl-client-theme #main-body .balance-amount {
    font-family: var(--ssl-font-sans); font-size: 14px !important;
    line-height: 1.55 !important; font-weight: 500 !important; letter-spacing: 0 !important; color: var(--ssl-muted) !important;
    margin: 0 !important;
}
body.ssl-client-theme #main-body .sidebar .card-header,
body.ssl-client-theme #main-body .sidebar .card-title,
body.ssl-client-theme #main-body .sidebar .card-header .card-title {
    display: flex !important; align-items: center !important; gap: 8px !important;
}
body.ssl-client-theme #main-body .sidebar .card-sidebar .card-body,
body.ssl-client-theme #main-body .sidebar .card-sidebar .list-group-item {
    font-size: 13px !important; line-height: 1.55; color: var(--ssl-ink);
    padding: 10px 16px !important;
}
body.ssl-client-theme #main-body .ssl-card-title-main {
    display: flex !important; align-items: center !important; gap: 8px !important;
}
body.ssl-client-theme #main-body .ssl-table-page-header {
    display: flex !important; align-items: center !important; gap: 8px !important;
}
body.ssl-client-theme #main-body .card-header i,
body.ssl-client-theme #main-body .card-header svg,
body.ssl-client-theme #main-body .panel-heading i,
body.ssl-client-theme #main-body .panel-heading svg,
body.ssl-client-theme #main-body .ssl-table-page-header > i,
body.ssl-client-theme #main-body .ssl-table-page-header > svg,
body.ssl-client-theme #main-body .ssl-card-title-main > i,
body.ssl-client-theme #main-body .ssl-card-title-main > svg,
body.ssl-client-theme #main-body .sidebar .card-header i,
body.ssl-client-theme #main-body .sidebar .card-title i,
body.ssl-client-theme #main-body .sidebar .list-group-item > i,
body.ssl-client-theme #main-body .ssl-module-heading-icon i,
body.ssl-client-theme #main-body .ssl-module-heading-icon svg {
    font-size: 16px !important; width: 16px !important; height: 16px !important;
    min-width: 16px !important; max-width: 16px !important; flex: 0 0 16px !important;
    line-height: 1 !important; display: inline-flex !important; align-items: center !important;
    justify-content: center !important; text-align: center !important; color: var(--ssl-muted) !important;
}
body.ssl-client-theme #main-body .ssl-card-title-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    width: 100% !important;
}
body.ssl-client-theme #main-body .ssl-card-title-main {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}
body.ssl-client-theme #main-body .ssl-card-title-action {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 0 !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    color: var(--ssl-green-deep) !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    letter-spacing: 0 !important;
    margin-left: auto !important;
}
body.ssl-client-theme #main-body .ssl-card-title-action:hover,
body.ssl-client-theme #main-body .ssl-card-title-action:focus {
    color: var(--ssl-green) !important;
    text-decoration: underline !important;
}
body.ssl-client-theme #main-body .ssl-card-title-action i,
body.ssl-client-theme #main-body .ssl-card-title-action svg {
    font-size: 13px !important;
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
    max-width: 14px !important;
    flex: 0 0 14px !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    color: var(--ssl-muted) !important;
    margin: 0 !important;
}
body.ssl-client-theme #main-body .ssl-card-title-action:hover i,
body.ssl-client-theme #main-body .ssl-card-title-action:hover svg,
body.ssl-client-theme #main-body .ssl-card-title-action:focus i,
body.ssl-client-theme #main-body .ssl-card-title-action:focus svg {
    color: var(--ssl-green) !important;
}
body.ssl-client-theme #main-body .card-body,
body.ssl-client-theme #main-body .panel-body { padding: 12px 16px !important; font-size: 14px; line-height: 1.6; }
body.ssl-client-theme #main-body .card-body p,
body.ssl-client-theme #main-body .list-group-item p { font-size: 14px; line-height: 1.6; margin: 0; }
body.ssl-client-theme #main-body .card-body p:last-child { margin-bottom: 0; }

/* Structural alignment: Card content, list items, and table cells share the exact same 16px container padding as the card header */
body.ssl-client-theme #main-body .client-home-cards .card > .card-body,
body.ssl-client-theme #main-body .client-home-cards .card > .list-group > .list-group-item {
    padding-left: 16px !important;
    padding-right: 16px !important;
}
body.ssl-client-theme #main-body .client-home-cards [menuitemname="Active Products/Services"] > .card-body {
    padding: 0 !important;
}
body.ssl-client-theme #main-body .client-home-cards [menuitemname="Active Products/Services"] .table td:first-child,
body.ssl-client-theme #main-body .client-home-cards [menuitemname="Active Products/Services"] .table th:first-child {
    padding-left: 16px !important;
}
body.ssl-client-theme #main-body .client-home-cards [menuitemname="Active Products/Services"] .table td:last-child,
body.ssl-client-theme #main-body .client-home-cards [menuitemname="Active Products/Services"] .table th:last-child {
    padding-right: 16px !important;
}
body.ssl-client-theme #main-body .client-home-cards [menuitemname="Unpaid Invoices"] .ssl-unpaid-invoice-summary {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap;
    gap: 8px 16px;
}

body.ssl-client-theme #main-body .client-home-cards [menuitemname="Unpaid Invoices"] .ssl-unpaid-invoice-message {
    flex: 1 1 240px;
    min-width: 0;
}

body.ssl-client-theme #main-body .client-home-cards [menuitemname="Unpaid Invoices"] .ssl-unpaid-invoice-message > :last-child {
    margin-bottom: 0 !important;
}

body.ssl-client-theme #main-body .client-home-cards [menuitemname="Unpaid Invoices"] .ssl-invoice-pay-action {
    flex: 0 0 auto;
    margin: 0 !important;
}
body.ssl-client-theme #main-body table#tableTicketsList th:first-child,
body.ssl-client-theme #main-body table#tableTicketsList td:first-child,
body.ssl-client-theme #main-body table#tableEmailsList th:first-child,
body.ssl-client-theme #main-body table#tableEmailsList td:first-child {
    padding-left: 16px !important;
}
body.ssl-client-theme #main-body table#tableTicketsList th:last-child,
body.ssl-client-theme #main-body table#tableTicketsList td:last-child,
body.ssl-client-theme #main-body table#tableEmailsList th:last-child,
body.ssl-client-theme #main-body table#tableEmailsList td:last-child {
    padding-right: 16px !important;
}
body.ssl-client-theme #main-body .list-group-item {
    padding: 10px 16px; background: #fff; border-color: var(--ssl-line);
    color: var(--ssl-ink); font-size: 14px; line-height: 1.5; box-shadow: none;
}
body.ssl-client-theme #main-body .sidebar .list-group-item.active,
body.ssl-client-theme #main-body .sidebar .list-group-item.active:hover,
body.ssl-client-theme #main-body .sidebar .list-group-item.active:focus {
    background: var(--ssl-soft) !important;
    color: var(--ssl-green) !important;
    border-color: var(--ssl-line) !important;
    font-weight: 600 !important;
}

body.ssl-client-theme #main-body .sidebar .list-group-item.active .sidebar-menu-item-icon,
body.ssl-client-theme #main-body .sidebar .list-group-item.active i,
body.ssl-client-theme #main-body .sidebar .list-group-item.active .sidebar-menu-item-label {
    color: var(--ssl-green) !important;
}
body.ssl-client-theme #main-body .card-footer,
body.ssl-client-theme #main-body .panel-footer {
    display: flex !important; align-items: center !important; justify-content: flex-end !important;
    padding: 8px 16px !important; background: #fff; border-top: 1px solid var(--ssl-line);
    border-radius: 0 0 7px 7px; font-size: 13px; line-height: 1.6; position: relative; z-index: 2;
}
body.ssl-client-theme #main-body .btn-view-more {
    display: inline-flex !important; align-items: center !important; padding: 0;
    font-size: 13px !important; font-weight: 400; line-height: 1.6; color: var(--ssl-ink);
    cursor: pointer !important; pointer-events: auto !important; position: relative; z-index: 3;
    float: none !important;
}
body.ssl-client-theme #main-body .btn-view-more:hover { color: var(--ssl-green); }

/* Compact text-action footers use the same rhythm as every table footer. */
body.ssl-client-theme #main-body .card > .card-footer:has(.btn-view-more),
body.ssl-client-theme #main-body .panel > .panel-footer:has(.btn-view-more) {
    min-height: auto !important;
    padding: 6px 16px !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
}
body.ssl-client-theme #main-body .card > .card-footer .btn-view-more,
body.ssl-client-theme #main-body .panel > .panel-footer .btn-view-more {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
}
body.ssl-client-theme #main-body .ssl-module-heading {
    padding: 16px; gap: 12px; background: #fff !important; box-shadow: none;
    border: 0; border-bottom: 1px solid var(--ssl-line); border-radius: 0;
}
body.ssl-client-theme #main-body .ssl-module-heading h1,
body.ssl-client-theme #main-body .ssl-dashboard-intro h1,
body.ssl-client-theme #main-body .ssl-dashboard-intro h2 {
    font-size: 24px !important; font-weight: 600; line-height: 1.3; color: var(--ssl-ink);
}
body.ssl-client-theme #main-body .ssl-module-heading-icon {
    background: transparent; border: 0; border-radius: 0;
}
body.ssl-client-theme #main-body .ssl-dashboard-intro { padding: 0 0 16px; margin: 0; background: transparent; border: 0; }
body.ssl-client-theme #main-body .ssl-home-panel-grid { gap: 16px; align-items: start; }
body.ssl-client-theme #main-body .ssl-home-panel-grid > .card { height: auto !important; min-height: 0; margin: 0; align-self: start; }
body.ssl-client-theme #main-body .ssl-home-panel-grid > .card > .card-body { flex: 0 0 auto; }
body.ssl-client-theme #main-body .text-muted,
body.ssl-client-theme #main-body small { color: var(--ssl-muted) !important; font-size: 13px; }
body.ssl-client-theme #main-body .btn {
    display: inline-flex !important; align-items: center !important; justify-content: center !important;
    vertical-align: middle !important; padding: 6px 12px !important; min-height: 32px; font-family: var(--ssl-font-sans);
    font-size: 13px !important; font-weight: 500; line-height: 1.4; border-radius: 6px; box-shadow: none;
}
body.ssl-client-theme .btn:has(> i),
body.ssl-client-theme .btn:has(> svg) {
    column-gap: .35em;
}
body.ssl-client-theme .btn > i[class*="mr-"],
body.ssl-client-theme .btn > i[class*="ml-"] {
    margin-right: 0 !important;
    margin-left: 0 !important;
}
body.ssl-client-theme #main-body .btn-primary {
    color: #fff; background: var(--ssl-green); border-color: var(--ssl-green);
}
body.ssl-client-theme #main-body .btn-primary:hover { background: var(--ssl-green-hover); border-color: var(--ssl-green-hover); }
body.ssl-client-theme #main-body .btn-default,
body.ssl-client-theme #main-body .btn-info,
body.ssl-client-theme #main-body .sidebar .btn {
    width: fit-content; max-width: 100%; background: #fff; color: var(--ssl-ink); border: 1px solid #cbd1d6;
}
body.ssl-client-theme #main-body .form-control { font-size: 14px; border-color: #cbd1d6; border-radius: 6px; box-shadow: none; }
body.ssl-client-theme #main-body :focus-visible { outline: 2px solid var(--ssl-green); outline-offset: 2px; }
body.ssl-client-theme #main-body table.table-list,
body.ssl-client-theme #main-body .dataTable,
body.ssl-client-theme #main-body .client-home-cards .table {
    width: 100% !important; margin: 0 !important; border: 0; color: var(--ssl-ink); font-size: 14px !important; line-height: 1.5;
}
body.ssl-client-theme #main-body table.table-list thead th,
body.ssl-client-theme #main-body .dataTable thead th,
body.ssl-client-theme #main-body .client-home-cards .table thead th {
    background: #fff !important; color: var(--ssl-ink); font-size: 13px !important;
    font-weight: 600 !important; letter-spacing: normal !important; text-transform: none !important;
    border-bottom: 1px solid var(--ssl-line) !important; padding: 8px 12px !important;
}
body.ssl-client-theme #main-body table.table-list tbody td,
body.ssl-client-theme #main-body .dataTable tbody td,
body.ssl-client-theme #main-body .client-home-cards .table tbody td {
    padding: 3px 12px !important; font-size: 14px !important; font-weight: 400 !important;
    line-height: 1.5 !important; color: var(--ssl-ink) !important; border-top: 1px solid var(--ssl-line) !important;
    vertical-align: middle !important;
}
body.ssl-client-theme #main-body .client-home-cards .list-group-item {
    padding: 8px 16px !important; font-size: 14px !important; line-height: 1.5 !important;
}
body.ssl-client-theme #main-body table.table-list tbody tr:hover,
body.ssl-client-theme #main-body .dataTable tbody tr:hover,
body.ssl-client-theme #main-body .client-home-cards .table tbody tr:hover { background: #fbfcfb !important; }
body.ssl-client-theme #main-body .ssl-table-footer {
    background: #fff;
    font-size: 12px;
    line-height: 1.4;
}
body.ssl-client-theme #main-body .pagination .active .page-link { background: var(--ssl-soft-green); border-color: var(--ssl-line); color: var(--ssl-ink); }
body.ssl-client-theme #main-body .label.status,
body.ssl-client-theme #main-body .badge.status,
body.ssl-client-theme #main-body [class*="status-"] {
    display: inline-flex; align-items: center; min-height: 22px; padding: 2px 8px;
    border-radius: 999px; font-size: 12px !important; font-weight: 400 !important; line-height: 1.2; white-space: nowrap;
}
body.ssl-client-theme #main-body .kb-article-item { font-size: 16px !important; }
body.ssl-client-theme #main-body .kb-article-content,
body.ssl-client-theme #main-body .kb-article-content p { font-size: 16px; line-height: 1.7; }
/* Module data stays inside the single product card. */
body.ssl-client-theme #main-body #sslContent {
    --nicsrs-ink: var(--ssl-ink); --nicsrs-muted: var(--ssl-muted); --nicsrs-line: var(--ssl-line);
    --nicsrs-green: var(--ssl-green); --nicsrs-green-dark: var(--ssl-green-hover);
    font-family: var(--ssl-font-sans); color: var(--ssl-ink);
}
body.ssl-client-theme #main-body #sslContent .topTitle {
    background: transparent !important; border: 0 !important;
    border-radius: 0 !important; box-shadow: none !important;
}
body.ssl-client-theme #main-body #sslContent .topTitle .title p,
body.ssl-client-theme #main-body #sslContent .title > p,
body.ssl-client-theme #main-body #sslContent [id$="Part"] .title > p {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--ssl-ink) !important;
}
body.ssl-client-theme #main-body #sslContent .topTitle .title::before { color: var(--ssl-muted) !important; }
/* Footer shares the content width and quiet type hierarchy of the customer area. */
body.ssl-client-theme #main-body .primary-content .card > .card-body > .card-title:first-child {
    margin: -16px -16px 16px !important; padding: 12px 16px; background: #fff !important;
    color: var(--ssl-ink); border-bottom: 1px solid var(--ssl-line); font-size: 16px;
}
body.ssl-client-theme #main-body .kb-category a { color: var(--ssl-ink); }
body.ssl-client-theme #main-body .kb-category .badge { background: var(--ssl-soft); color: var(--ssl-muted); }
body.ssl-client-theme #main-body .card-title::before { color: var(--ssl-muted); }
body.ssl-client-theme #main-body .primary-content .card > .card-body > .card-title:first-child::before,
body.ssl-client-theme #main-body .primary-content > h1:first-child::before,
body.ssl-client-theme #main-body .primary-content > h2:first-child::before { display: none; }
body.ssl-client-theme #main-body .primary-content > h1:first-child,
body.ssl-client-theme #main-body .primary-content > h2:first-child {
    background: #fff; border: 0; border-bottom: 1px solid var(--ssl-line); border-radius: 0;
    padding: 16px; font-size: 24px; font-weight: 600; color: var(--ssl-ink);
}
body.ssl-client-theme #main-body .ssl-product-main-card #tabOverview > .card {
    border: 0; border-radius: 0; background: transparent; box-shadow: none;
}
body.ssl-client-theme #main-body .ssl-invoice-card {
    overflow: hidden !important;
    border-radius: 8px !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card > .row:not(.invoice-header),
body.ssl-client-theme #main-body .ssl-invoice-card > .row.justify-content-sm-between {
    margin: 0 !important;
    padding: 18px 22px 0 67px !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card > .row:not(.invoice-header) + .row,
body.ssl-client-theme #main-body .ssl-invoice-card > .row.justify-content-sm-between + .row {
    padding: 2px 22px 8px 67px !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card .invoice-col {
    padding-right: 0 !important;
    padding-left: 0 !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card > .card,
body.ssl-client-theme #main-body .ssl-invoice-card > .panel {
    margin: 16px 0 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card > .card > .card-header,
body.ssl-client-theme #main-body .ssl-invoice-card > .panel > .panel-heading {
    padding: 12px 22px 12px 67px !important;
    border: 0 !important;
    border-top: 1px solid var(--ssl-line) !important;
    border-bottom: 1px solid var(--ssl-line) !important;
    border-radius: 0 !important;
    background: #fff !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card > .card .card-title,
body.ssl-client-theme #main-body .ssl-invoice-card > .panel .panel-title {
    margin: 0 !important;
    color: var(--ssl-ink) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card .table-responsive {
    overflow-x: auto !important;
    margin: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid var(--ssl-line) !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card table {
    width: 100% !important;
    margin: 0 !important;
    border: 0 !important;
    border-collapse: collapse !important;
    color: var(--ssl-ink) !important;
    font-size: 14px !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card table thead td,
body.ssl-client-theme #main-body .ssl-invoice-card table thead th {
    border-top: 0 !important;
    border-bottom: 1px solid var(--ssl-line) !important;
    background: var(--ssl-soft) !important;
    color: var(--ssl-muted) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    padding: 10px 12px !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card table td,
body.ssl-client-theme #main-body .ssl-invoice-card table th {
    padding: 10px 12px !important;
    border-top: 1px solid var(--ssl-line) !important;
    border-bottom: 0 !important;
    border-color: var(--ssl-line) !important;
    vertical-align: middle !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card table td:first-child,
body.ssl-client-theme #main-body .ssl-invoice-card table th:first-child {
    padding-left: 67px !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card table td:last-child,
body.ssl-client-theme #main-body .ssl-invoice-card table th:last-child {
    padding-right: 22px !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card table .total-row {
    background: #fbfcfb !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card .transactions-container {
    margin: 18px 0 0 !important;
    border-top: 1px solid var(--ssl-line) !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card > .btn-group,
body.ssl-client-theme #main-body .ssl-invoice-card .ssl-invoice-actions {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 16px 22px 20px !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card > .btn-group > .btn,
body.ssl-client-theme #main-body .ssl-invoice-card .ssl-invoice-actions > .btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 0 !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    height: 32px !important;
    padding: 0 12px !important;
    border: 1px solid var(--ssl-line) !important;
    background: #fff !important;
    color: var(--ssl-ink) !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04) !important;
    transition: all 0.15s ease !important;
}
body.ssl-client-theme #main-body .ssl-invoice-card > .btn-group > .btn:hover,
body.ssl-client-theme #main-body .ssl-invoice-card .ssl-invoice-actions > .btn:hover {
    background: var(--ssl-soft) !important;
    border-color: #b0b8c0 !important;
    color: var(--ssl-green-deep) !important;
}
@media (max-width: 575.98px) {
    body.ssl-client-theme #main-body .ssl-invoice-card .invoice-header {
        padding-right: 16px !important;
        padding-left: 16px !important;
    }
    body.ssl-client-theme #main-body .ssl-invoice-card > .row:not(.invoice-header),
    body.ssl-client-theme #main-body .ssl-invoice-card > .row.justify-content-sm-between {
        padding: 18px 16px 0 61px !important;
    }
    body.ssl-client-theme #main-body .ssl-invoice-card > .row:not(.invoice-header) + .row,
    body.ssl-client-theme #main-body .ssl-invoice-card > .row.justify-content-sm-between + .row {
        padding: 2px 16px 8px 61px !important;
    }
    body.ssl-client-theme #main-body .ssl-invoice-card .invoice-col {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
    body.ssl-client-theme #main-body .ssl-invoice-card > .card,
    body.ssl-client-theme #main-body .ssl-invoice-card > .panel,
    body.ssl-client-theme #main-body .ssl-invoice-card .transactions-container {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
    body.ssl-client-theme #main-body .ssl-invoice-card > .card > .card-header,
    body.ssl-client-theme #main-body .ssl-invoice-card > .panel > .panel-heading {
        padding-right: 16px !important;
        padding-left: 61px !important;
    }
    body.ssl-client-theme #main-body .ssl-invoice-card table td:first-child,
    body.ssl-client-theme #main-body .ssl-invoice-card table th:first-child {
        padding-left: 61px !important;
    }
    body.ssl-client-theme #main-body .ssl-invoice-card table td:last-child,
    body.ssl-client-theme #main-body .ssl-invoice-card table th:last-child {
        padding-right: 16px !important;
    }
    body.ssl-client-theme #main-body .ssl-invoice-card > .btn-group,
    body.ssl-client-theme #main-body .ssl-invoice-card .ssl-invoice-actions {
        margin: 16px 16px 20px !important;
    }
}
body.ssl-client-theme #main-body .ssl-product-main-card #tabOverview > .card > .card-body { padding: 0; }
body.ssl-client-theme #main-body [menuitemname="Unpaid Invoices"] .card-body { color: var(--ssl-ink); }
body.ssl-client-theme #footer .ssl-payment-logo:hover { transform: none; }
body.ssl-client-theme #footer.ssl-site-footer { background: var(--ssl-soft); border-top: 1px solid var(--ssl-line); color: var(--ssl-muted); padding: 32px 0; }
body.ssl-client-theme #footer .ssl-footer-grid { padding: 0; gap: 24px; align-items: start; }
body.ssl-client-theme #footer .ssl-footer-group h2 { margin: 0 0 12px; font-size: 14px; font-weight: 600; color: var(--ssl-ink); letter-spacing: normal; text-transform: none; }
body.ssl-client-theme #footer .ssl-footer-group li { margin: 0 0 8px; }
body.ssl-client-theme #footer .ssl-footer-group a,
body.ssl-client-theme #footer .footer-language-trigger { font-size: 13px; line-height: 1.6; color: var(--ssl-muted); }
body.ssl-client-theme #footer .ssl-footer-group a:hover { color: var(--ssl-green); }
body.ssl-client-theme #footer .ssl-footer-copy { font-size: 12px; color: var(--ssl-muted); margin-top: 16px; }
body.ssl-client-theme #footer .ssl-payment-icons {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    gap: 7px;
}
body.ssl-client-theme #footer .ssl-payment-logo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 34px;
    border: 1px solid rgba(0, 51, 36, .12);
    border-radius: 6px;
    background: #fff;
    box-shadow: none;
    pointer-events: none;
    user-select: none;
}
body.ssl-client-theme #footer .ssl-payment-logo img {
    display: block;
    width: 22px;
    height: 22px;
    object-fit: contain;
}
body.ssl-client-theme #footer .ssl-payment-logo.card img,
body.ssl-client-theme #footer .ssl-payment-logo.paypal img,
body.ssl-client-theme #footer .ssl-payment-logo.alipay img,
body.ssl-client-theme #footer .ssl-payment-logo.bank img {
    width: 22px;
    height: 22px;
}
body.ssl-client-theme #footer .footer-language-dropdown { box-shadow: none; border-color: var(--ssl-line); }
@media (max-width: 767.98px) {
    body.ssl-client-theme #main-body { padding-top: 16px; }
    body.ssl-client-theme #main-body .ssl-home-panel-grid { grid-template-columns: minmax(0, 1fr); }
    body.ssl-client-theme #footer .ssl-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.ssl-client-theme #footer .ssl-footer-payments { grid-column: 1 / -1; }
}

/* ========================================================================== 
   Primary Action — matches the main-site .buy-button.primary component
   ========================================================================== */

body.ssl-client-theme .btn-primary,
body.ssl-client-theme #main-body .btn-primary {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto;
    min-height: 42px !important;
    padding: 10px 16px !important;
    border: 1px solid #00ab00 !important;
    border-radius: 6px !important;
    background: #00ab00 !important;
    color: #fff !important;
    box-shadow: none !important;
    font-family: var(--ssl-font-sans) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
    white-space: nowrap;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease !important;
}

body.ssl-client-theme .btn-primary:hover,
body.ssl-client-theme .btn-primary:focus,
body.ssl-client-theme .btn-primary:active,
body.ssl-client-theme .btn-primary:not(:disabled):not(.disabled):active,
body.ssl-client-theme #main-body .btn-primary:hover,
body.ssl-client-theme #main-body .btn-primary:focus,
body.ssl-client-theme #main-body .btn-primary:active,
body.ssl-client-theme #main-body .btn-primary:not(:disabled):not(.disabled):active {
    border-color: #00cc00 !important;
    background: #00cc00 !important;
    color: #fff !important;
    box-shadow: none !important;
}

body.ssl-client-theme .btn-primary:focus-visible,
body.ssl-client-theme #main-body .btn-primary:focus-visible {
    outline: 2px solid rgba(0, 171, 0, .28);
    outline-offset: 2px;
}

body.ssl-client-theme .btn-primary:disabled,
body.ssl-client-theme .btn-primary.disabled,
body.ssl-client-theme #main-body .btn-primary:disabled,
body.ssl-client-theme #main-body .btn-primary.disabled {
    opacity: .58;
    cursor: not-allowed;
}

/* ========================================================================== 
   Login Page
   ========================================================================== */

body.ssl-client-theme.page-login #main-body {
    display: flex !important;
    align-items: center !important;
    min-height: clamp(520px, calc(100vh - 84px), 680px);
    box-sizing: border-box;
    padding-top: 44px !important;
    padding-bottom: 44px !important;
    background:
        radial-gradient(circle at 82% 18%, rgba(12, 157, 72, .22), transparent 32%),
        radial-gradient(circle at 16% 85%, rgba(17, 78, 52, .14), transparent 36%),
        linear-gradient(135deg, #dcf0e4 0%, #eef6f1 48%, #e3edf5 100%) !important;
}

body.ssl-client-theme.page-login #main-body > .container {
    width: 100%;
}

body.ssl-client-theme.page-login .ssl-login-form {
    width: 100%;
    max-width: 540px;
    margin: 0 auto;
}

body.ssl-client-theme.page-login .ssl-login-card {
    margin: 0 !important;
    overflow: hidden;
    border: 1px solid rgba(24, 91, 64, .16) !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 16px 40px rgba(7, 59, 42, .12), 0 2px 6px rgba(7, 59, 42, .04) !important;
}

body.ssl-client-theme.page-login #main-body .ssl-login-card > .card-body {
    padding: 20px 40px !important;
}

body.ssl-client-theme.page-login .ssl-login-intro {
    display: flex !important;
    align-items: center !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 10px 16px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--ssl-line) !important;
    border-radius: 7px 7px 0 0 !important;
    background: #fff !important;
}

body.ssl-client-theme.page-login .ssl-login-intro h1 {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    color: var(--ssl-ink) !important;
    font-family: var(--ssl-font-sans) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    letter-spacing: 0 !important;
}

body.ssl-client-theme.page-login .ssl-login-intro h1 > i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 16px !important;
    width: 16px !important;
    height: 16px !important;
    color: var(--ssl-muted) !important;
    font-size: 16px !important;
    line-height: 1 !important;
}

body.ssl-client-theme.page-login .ssl-login-card .form-group {
    margin-bottom: 16px !important;
}

body.ssl-client-theme.page-login .ssl-login-card .form-control-label {
    margin: 0 0 6px !important;
    padding: 0 !important;
    color: var(--ssl-ink) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

body.ssl-client-theme.page-login .ssl-login-label-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 16px;
}

body.ssl-client-theme.page-login .ssl-login-label-row > a {
    color: var(--ssl-muted) !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
}

body.ssl-client-theme.page-login .ssl-login-label-row > a:hover {
    color: var(--ssl-green) !important;
}

body.ssl-client-theme.page-login .ssl-login-card .form-control {
    width: 100%;
    height: 46px !important;
    min-height: 46px !important;
    padding: 11px 14px !important;
    border: 1px solid var(--ssl-line) !important;
    border-radius: 6px !important;
    background: #fff !important;
    color: var(--ssl-ink) !important;
    box-shadow: none !important;
    font-family: var(--ssl-font-sans) !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
}

body.ssl-client-theme.page-login .ssl-login-card .form-control:focus {
    border-color: #00ab00 !important;
    box-shadow: 0 0 0 2px rgba(0, 171, 0, .1) !important;
}

body.ssl-client-theme.page-login .ssl-password-group {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    width: 100%;
}

body.ssl-client-theme.page-login .ssl-password-group .form-control {
    flex: 1 1 auto !important;
    width: 1% !important;
    min-width: 0 !important;
    border-radius: 6px 0 0 6px !important;
}

body.ssl-client-theme.page-login .ssl-password-group .input-group-append {
    display: flex !important;
    flex: 0 0 46px !important;
    margin-left: -1px;
}

body.ssl-client-theme.page-login .ssl-password-group .btn-reveal-pw {
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    padding: 0 !important;
    border: 1px solid var(--ssl-line) !important;
    border-radius: 0 6px 6px 0 !important;
    background: #fff !important;
    color: var(--ssl-muted) !important;
    box-shadow: none !important;
}

body.ssl-client-theme.page-login .ssl-password-group .btn-reveal-pw:hover,
body.ssl-client-theme.page-login .ssl-password-group .btn-reveal-pw:focus {
    background: var(--ssl-soft) !important;
    color: var(--ssl-ink) !important;
}

body.ssl-client-theme.page-login .ssl-login-actions {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    margin-top: 6px;
}

body.ssl-client-theme.page-login .ssl-login-remember {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 !important;
    color: var(--ssl-ink) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    cursor: pointer;
}

body.ssl-client-theme.page-login .ssl-login-remember input {
    position: static !important;
    width: 16px;
    height: 16px;
    margin: 0 !important;
    accent-color: #00ab00;
}

body.ssl-client-theme.page-login #main-body .ssl-login-card > .card-footer {
    display: flex !important;
    align-items: baseline !important;
    justify-content: flex-start !important;
    gap: 5px;
    min-height: 0 !important;
    padding: 10px 40px !important;
    border-top: 1px solid var(--ssl-line) !important;
    background: var(--ssl-soft) !important;
    color: var(--ssl-muted) !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
}

body.ssl-client-theme.page-login #main-body .ssl-login-card > .card-footer small,
body.ssl-client-theme.page-login #main-body .ssl-login-card > .card-footer a {
    font-size: inherit !important;
    line-height: inherit !important;
}

@media (max-width: 575.98px) {
    body.ssl-client-theme.page-login #main-body {
        display: block !important;
        min-height: 0;
        padding-top: 30px !important;
        padding-bottom: 30px !important;
    }

    body.ssl-client-theme.page-login #main-body .ssl-login-card > .card-body {
        padding: 18px 40px !important;
    }

    body.ssl-client-theme.page-login #main-body .ssl-login-card > .card-footer {
        padding: 10px 40px !important;
    }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
}

/* Align content to heading TEXT, not its decorative icon. Keep row rules full width. */
body.ssl-client-theme #main-body .card {
    --ssl-card-text-inset: 16px;
}
body.ssl-client-theme #main-body .card:has(> .card-header .card-title > i:not(.card-minimise)),
body.ssl-client-theme #main-body .card:has(> .card-header .card-title > svg) {
    --ssl-card-text-inset: 40px;
}
body.ssl-client-theme #main-body .sidebar .card-title { width: 100%; }
body.ssl-client-theme #main-body .sidebar .card-title .card-minimise { margin-left: auto; }
body.ssl-client-theme #main-body .card > .card-body,
body.ssl-client-theme #main-body .card > .collapsable-card-body > .card-body,
body.ssl-client-theme #main-body .card > .list-group > .list-group-item,
body.ssl-client-theme #main-body .sidebar .card > .collapsable-card-body > .list-group > .list-group-item,
body.ssl-client-theme #main-body .client-home-cards .card > .card-body,
body.ssl-client-theme #main-body .client-home-cards .card > .list-group > .list-group-item {
    padding-left: var(--ssl-card-text-inset) !important;
    text-align: left;
}
/* WHMCS inserts a second padded paragraph in summary/empty-state bodies. */
body.ssl-client-theme #main-body .client-home-cards [menuitemname="Active Products/Services"] > .card-body {
    padding-left: 0 !important;
}
body.ssl-client-theme #main-body .client-home-cards .card > .card-body > p {
    padding-left: 0 !important; padding-right: 0 !important;
    margin-left: 0 !important; text-align: left !important;
}
body.ssl-client-theme #main-body .client-home-cards [menuitemname="Active Products/Services"] > .card-body > p {
    padding-left: var(--ssl-card-text-inset) !important;
    padding-right: 16px !important;
}
/* Sidebar row icons hang in the icon gutter; labels use the same text axis. */
body.ssl-client-theme #main-body .sidebar-menu-item-wrapper { position: relative; }
body.ssl-client-theme #main-body .sidebar-menu-item-icon-wrapper {
    position: absolute; left: -24px; width: 16px; margin: 0;
}
body.ssl-client-theme #main-body .sidebar-menu-item-label { margin-left: 0; padding-left: 0; }
body.ssl-client-theme #main-body .ssl-shortcuts-card .list-group-item,
body.ssl-client-theme #main-body [menuitemname="Client-Balance"] .list-group-item,
body.ssl-client-theme #main-body [menuitemname="balance-amount"],
body.ssl-client-theme #main-body .sidebar [menuitemname="balance-amount"] {
    display: flex !important;
    align-items: center !important;
    min-height: 42px !important;
    padding: 10px 16px !important;
    line-height: 1.55 !important;
    box-sizing: border-box !important;
}
body.ssl-client-theme #main-body .ssl-shortcuts-card .sidebar-menu-item-wrapper,
body.ssl-client-theme #main-body [menuitemname="Client-Balance"] .sidebar-menu-item-wrapper,
body.ssl-client-theme #main-body [menuitemname="balance-amount"] .sidebar-menu-item-wrapper {
    width: 100%;
    text-align: left !important;
    line-height: 1.55 !important;
}

/* Shortcuts sidebar active menu item styles and page-level automatic matching */
body.ssl-client-theme.page-clientareadetails #main-body .ssl-shortcuts-card a[href*="action=details"],
body.ssl-client-theme.page-clientareaproducts #main-body .ssl-shortcuts-card a[href*="action=services"],
body.ssl-client-theme.page-clientareaproductdetails #main-body .ssl-shortcuts-card a[href*="action=services"],
body.ssl-client-theme.page-clientareainvoices #main-body .ssl-shortcuts-card a[href*="action=invoices"],
body.ssl-client-theme.page-viewinvoice #main-body .ssl-shortcuts-card a[href*="action=invoices"],
body.ssl-client-theme.page-supportticketslist #main-body .ssl-shortcuts-card a[href*="supporttickets"],
body.ssl-client-theme.page-supportticketsubmit #main-body .ssl-shortcuts-card a[href*="supporttickets"],
body.ssl-client-theme.page-viewticket #main-body .ssl-shortcuts-card a[href*="supporttickets"],
body.ssl-client-theme.page-clientareaemails #main-body .ssl-shortcuts-card a[href*="action=emails"] {
    background: var(--ssl-soft) !important;
    color: var(--ssl-green) !important;
    border-color: var(--ssl-line) !important;
    font-weight: 600 !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .ssl-shortcuts-card a[href*="action=details"] .sidebar-menu-item-icon,
body.ssl-client-theme.page-clientareaproducts #main-body .ssl-shortcuts-card a[href*="action=services"] .sidebar-menu-item-icon,
body.ssl-client-theme.page-clientareaproductdetails #main-body .ssl-shortcuts-card a[href*="action=services"] .sidebar-menu-item-icon,
body.ssl-client-theme.page-clientareainvoices #main-body .ssl-shortcuts-card a[href*="action=invoices"] .sidebar-menu-item-icon,
body.ssl-client-theme.page-viewinvoice #main-body .ssl-shortcuts-card a[href*="action=invoices"] .sidebar-menu-item-icon,
body.ssl-client-theme.page-supportticketslist #main-body .ssl-shortcuts-card a[href*="supporttickets"] .sidebar-menu-item-icon,
body.ssl-client-theme.page-supportticketsubmit #main-body .ssl-shortcuts-card a[href*="supporttickets"] .sidebar-menu-item-icon,
body.ssl-client-theme.page-viewticket #main-body .ssl-shortcuts-card a[href*="supporttickets"] .sidebar-menu-item-icon,
body.ssl-client-theme.page-clientareaemails #main-body .ssl-shortcuts-card a[href*="action=emails"] .sidebar-menu-item-icon,
body.ssl-client-theme.page-clientareadetails #main-body .ssl-shortcuts-card a[href*="action=details"] .sidebar-menu-item-label,
body.ssl-client-theme.page-clientareaproducts #main-body .ssl-shortcuts-card a[href*="action=services"] .sidebar-menu-item-label,
body.ssl-client-theme.page-clientareaproductdetails #main-body .ssl-shortcuts-card a[href*="action=services"] .sidebar-menu-item-label,
body.ssl-client-theme.page-clientareainvoices #main-body .ssl-shortcuts-card a[href*="action=invoices"] .sidebar-menu-item-label,
body.ssl-client-theme.page-viewinvoice #main-body .ssl-shortcuts-card a[href*="action=invoices"] .sidebar-menu-item-label,
body.ssl-client-theme.page-supportticketslist #main-body .ssl-shortcuts-card a[href*="supporttickets"] .sidebar-menu-item-label,
body.ssl-client-theme.page-supportticketsubmit #main-body .ssl-shortcuts-card a[href*="supporttickets"] .sidebar-menu-item-label,
body.ssl-client-theme.page-viewticket #main-body .ssl-shortcuts-card a[href*="supporttickets"] .sidebar-menu-item-label,
body.ssl-client-theme.page-clientareaemails #main-body .ssl-shortcuts-card a[href*="action=emails"] .sidebar-menu-item-label {
    color: var(--ssl-green) !important;
}

/* Tickets table: the wrapper adds no inset; table content follows the page-title text axis. */
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList_wrapper,
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList_wrapper .listtable {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
}
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList {
    width: 100% !important;
    table-layout: fixed !important;
}
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList th:nth-child(1),
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList td:nth-child(1) {
    width: 60% !important;
}
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList th:nth-child(2),
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList td:nth-child(2) {
    width: 20% !important;
}
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList th:nth-child(3),
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList td:nth-child(3) {
    width: 20% !important;
}
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList thead th:first-child,
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList tbody td:first-child {
    padding-left: 40px !important;
}
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList tfoot td.ssl-table-footer-cell {
    padding: 0 !important;
}
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList .ssl-table-footer {
    padding-right: 16px !important;
    padding-left: 40px !important;
}

body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList .ticket-subject,
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList .ticket-subject.unread,
body.ssl-client-theme #main-body table#tableTicketsList .ticket-subject,
body.ssl-client-theme #main-body table#tableTicketsList .ticket-subject.unread {
    font-weight: 400 !important;
}

body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList .ticket-number,
body.ssl-client-theme #main-body table#tableTicketsList .ticket-number {
    font-weight: 400 !important;
}

body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList .label.status,
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList .label,
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList .status,
body.ssl-client-theme.page-supportticketslist #main-body #tableTicketsList [class*="status-"],
body.ssl-client-theme #main-body table#tableTicketsList .label.status,
body.ssl-client-theme #main-body table#tableTicketsList .label,
body.ssl-client-theme #main-body table#tableTicketsList .status,
body.ssl-client-theme #main-body table#tableTicketsList [class*="status-"] {
    font-weight: 400 !important;
}

/* Emails table follows the same title-text axis and has no nested wrapper inset. */
body.ssl-client-theme.page-clientareaemails #main-body #tableEmailsList_wrapper,
body.ssl-client-theme.page-clientareaemails #main-body #tableEmailsList_wrapper .listtable {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
}
body.ssl-client-theme.page-clientareaemails #main-body #tableEmailsList thead th:first-child,
body.ssl-client-theme.page-clientareaemails #main-body #tableEmailsList tbody td:first-child {
    padding-left: 40px !important;
}
body.ssl-client-theme.page-clientareaemails #main-body #tableEmailsList tfoot td.ssl-table-footer-cell {
    padding: 0 !important;
}
body.ssl-client-theme.page-clientareaemails #main-body #tableEmailsList .ssl-table-footer {
    padding-right: 16px !important;
    padding-left: 40px !important;
}
body.ssl-client-theme #main-body .div-service-item {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 48px;
    gap: 12px;
    width: 100%;
}
body.ssl-client-theme #main-body .div-service-name {
    order: 0;
    margin: 0;
    flex: 1 1 auto;
    min-width: 0;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: flex-start !important;
    column-gap: 8px;
    row-gap: 0;
    line-height: 1.4 !important;
}
body.ssl-client-theme #main-body .div-service-name > span {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
}
body.ssl-client-theme #main-body .div-service-status {
    order: 1;
    flex: 0 0 auto;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
}
body.ssl-client-theme #main-body .div-service-buttons {
    order: 2;
    flex: 0 0 auto;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    margin: 0 0 0 auto !important;
    gap: 8px;
}
body.ssl-client-theme #main-body .div-service-buttons .btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
}
body.ssl-client-theme #main-body .primary-content .table-container .table-list th:first-child,
body.ssl-client-theme #main-body .primary-content .table-container .table-list td:first-child,
body.ssl-client-theme #main-body .primary-content .table-container .dataTable th:first-child,
body.ssl-client-theme #main-body .primary-content .table-container .dataTable td:first-child {
    padding-left: 40px !important;
}
body.ssl-client-theme #main-body .primary-content .table-container #tableServicesList th:first-child,
body.ssl-client-theme #main-body .primary-content .table-container #tableServicesList td:first-child {
    padding-left: 0 !important; padding-right: 0 !important;
}
body.ssl-client-theme #main-body .primary-content .table-container #tableServicesList th:nth-child(2),
body.ssl-client-theme #main-body .primary-content .table-container #tableServicesList td:nth-child(2) {
    width: 50% !important;
    padding-left: 40px !important;
}
body.ssl-client-theme #main-body .primary-content .table-container #tableServicesList th:nth-child(3),
body.ssl-client-theme #main-body .primary-content .table-container #tableServicesList td:nth-child(3),
body.ssl-client-theme #main-body .primary-content .table-container #tableServicesList th:nth-child(5),
body.ssl-client-theme #main-body .primary-content .table-container #tableServicesList td:nth-child(5) {
    width: 15% !important;
    white-space: nowrap !important;
    text-align: left !important;
}
body.ssl-client-theme #main-body .primary-content .table-container #tableServicesList th:nth-child(4),
body.ssl-client-theme #main-body .primary-content .table-container #tableServicesList td:nth-child(4) {
    width: 20% !important;
    white-space: nowrap !important;
    text-align: left !important;
}

/* DataTables renders an empty result as one colspan cell. It must align with
   the page-title text axis instead of inheriting a hidden first column. */
body.ssl-client-theme #main-body .primary-content .table-container table.table-list tbody td.dataTables_empty,
body.ssl-client-theme #main-body .primary-content .table-container table.dataTable tbody td.dataTables_empty {
    padding-left: 40px !important;
    padding-right: 16px !important;
    text-align: left !important;
}

body.ssl-client-theme #main-body .primary-content .table-container :is(
    table#tableServicesList,
    table#tableInvoicesList,
    table#tableEmailsList,
    table#tableTicketsList
) tbody td.dataTables_empty:first-child {
    padding-left: 40px !important;
    padding-right: 16px !important;
}

/* DataTables footer controls share the title/first-column text axis. */
body.ssl-client-theme #main-body .primary-content .table-container table.table-list tfoot td.ssl-table-footer-cell,
body.ssl-client-theme #main-body .primary-content .table-container table.dataTable tfoot td.ssl-table-footer-cell {
    padding: 0 !important;
}
body.ssl-client-theme #main-body .primary-content .table-container .ssl-table-footer {
    padding-left: 40px !important;
    padding-right: 16px !important;
}

@media (max-width: 575.98px) {
    body.ssl-client-theme #main-body .div-service-item { flex-wrap: wrap; gap: 8px; }
    body.ssl-client-theme #main-body .div-service-name { flex-basis: 100%; }
}

/* Breadcrumb Row: Left-aligned breadcrumb, Right-aligned View Cart button */
.ssl-breadcrumb-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
}
.ssl-breadcrumb-container .breadcrumb {
    margin: 0;
    padding: 0;
    flex: 1 1 auto;
}
.ssl-breadcrumb-cart {
    flex: 0 0 auto;
}
.ssl-breadcrumb-cart-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    color: var(--ssl-ink) !important;
    padding: 4px 12px !important;
    border-radius: 6px !important;
    background: #fff !important;
    border: 1px solid var(--ssl-line) !important;
    text-decoration: none !important;
    transition: all 0.15s ease;
    min-height: 30px;
}
.ssl-breadcrumb-cart-btn:hover {
    color: var(--ssl-green) !important;
    border-color: var(--ssl-green) !important;
    background: #fff !important;
}
.ssl-breadcrumb-cart-btn i {
    font-size: 13px;
    color: var(--ssl-green);
}
.ssl-breadcrumb-cart-btn .badge {
    background: var(--ssl-green) !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    padding: 2px 6px !important;
    border-radius: 999px !important;
    min-height: auto !important;
    line-height: 1 !important;
}

/* Sidebar Account Balance Card - Row height, line-height and typography align with Shortcuts */
body.ssl-client-theme #main-body .sidebar [menuitemname="Client-Balance"] .list-group-item,
body.ssl-client-theme #main-body [menuitemname="Client-Balance"] .list-group-item,
body.ssl-client-theme #main-body [menuitemname="balance-amount"] {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 10px 16px !important;
    min-height: 42px !important;
    line-height: 1.55 !important;
    box-sizing: border-box !important;
}
body.ssl-client-theme #main-body .sidebar [menuitemname="Client-Balance"] h4,
body.ssl-client-theme #main-body [menuitemname="Client-Balance"] .sidebar-menu-item-label,
body.ssl-client-theme #main-body [menuitemname="balance-amount"] span,
body.ssl-client-theme #main-body [menuitemname="balance-amount"] h4,
body.ssl-client-theme #main-body .balance-amount {
    margin: 0 !important;
    padding: 0 !important;
    font-family: var(--ssl-font-sans) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
    letter-spacing: 0 !important;
    color: var(--ssl-muted) !important;
    text-align: left !important;
}

/* Sidebar Card Footer Buttons Centering */
body.ssl-client-theme #main-body .sidebar .card-footer {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    min-height: 46px;
    padding: 8px 16px !important;
}

/* Client-Balance card footer Add Funds button left-aligned */
body.ssl-client-theme #main-body [menuitemname="Client-Balance"] .card-footer,
body.ssl-client-theme #main-body .sidebar [menuitemname="Client-Balance"] .card-footer {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: left !important;
    padding: 8px 16px !important;
}

body.ssl-client-theme #main-body [menuitemname="Client-Balance"] .card-footer .btn,
body.ssl-client-theme #main-body [menuitemname="Client-Balance"] .card-footer a.btn,
body.ssl-client-theme #main-body .sidebar [menuitemname="Client-Balance"] .card-footer .btn,
body.ssl-client-theme #main-body [menuitemname="Client-Balance"] .card-footer .btn-block {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: left !important;
    width: auto !important;
    margin: 0 auto 0 0 !important;
    gap: 6px !important;
}

/* Recent News & Recent Tickets Clean Vertical Layout */
.page-clientareahome [menuitemname="Recent News"] .list-group-item {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    padding: 10px var(--ssl-card-text-inset) !important;
    gap: 3px;
    line-height: 1.4 !important;
}
.page-clientareahome [menuitemname="Recent News"] .list-group-item br {
    display: none !important;
}
.page-clientareahome [menuitemname="Recent News"] .list-group-item small {
    display: block !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    color: var(--ssl-muted) !important;
    margin: 0 !important;
}
.page-clientareahome [menuitemname="Recent Support Tickets"] .list-group-item {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 10px var(--ssl-card-text-inset) !important;
    min-height: 48px;
    gap: 12px;
}

body.ssl-client-theme.page-clientareahome #main-body [menuitemname="Recent Support Tickets"] .list-group-item,
body.ssl-client-theme.page-clientareahome #main-body [menuitemname="Recent Support Tickets"] .list-group-item *,
body.ssl-client-theme.page-clientareahome #main-body [menuitemname="Recent Support Tickets"] strong,
body.ssl-client-theme.page-clientareahome #main-body [menuitemname="Recent Support Tickets"] b,
body.ssl-client-theme.page-clientareahome #main-body [menuitemname="Recent Support Tickets"] .unread,
body.ssl-client-theme.page-clientareahome #main-body [menuitemname="Recent Support Tickets"] a {
    font-weight: 400 !important;
}

.page-clientareahome [menuitemname="Recent Support Tickets"] .ssl-ticket-empty-state > :last-child {
    margin-bottom: 0 !important;
}

/* Shopping Cart & Order Forms - Two Column & Full Width Layout */
#order-standard_cart .cart-sidebar {
    display: none !important;
}

#order-standard_cart .cart-body,
#order-standard_cart .cart-body.cart-body-full,
#order-standard_cart.ssl-cart-two-column .cart-body,
.ssl-cart-two-column .cart-body {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

#order-standard_cart .cart-body > .row:not(.header-lined),
#order-standard_cart.ssl-cart-two-column .ssl-cart-two-column-row,
#order-standard_cart .ssl-cart-two-column-row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

#order-standard_cart .cart-body > .row > .secondary-cart-body,
#order-standard_cart.ssl-cart-two-column .ssl-cart-two-column-row .secondary-cart-body,
#order-standard_cart .ssl-cart-two-column-row .secondary-cart-body {
    float: left !important;
    flex: 0 0 68%;
    max-width: 68%;
    width: 68% !important;
    padding-right: 24px;
    padding-left: 15px;
}

#order-standard_cart .cart-body > .row > .secondary-cart-sidebar,
#order-standard_cart.ssl-cart-two-column .ssl-cart-two-column-row .secondary-cart-sidebar,
#order-standard_cart .ssl-cart-two-column-row .secondary-cart-sidebar {
    float: right !important;
    flex: 0 0 32%;
    max-width: 32%;
    width: 32% !important;
    padding-right: 15px;
    padding-left: 0;
}

#order-standard_cart .secondary-cart-sidebar .btn-checkout {
    width: 100% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#order-standard_cart #btnCompleteProductConfig {
    width: auto !important;
    min-width: 140px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 0 0 auto !important;
    padding: 8px 20px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    border-radius: 6px !important;
    gap: 8px !important;
}

@media only screen and (max-width: 991px) {
    #order-standard_cart .cart-body > .row:not(.header-lined),
    #order-standard_cart.ssl-cart-two-column .ssl-cart-two-column-row,
    #order-standard_cart .ssl-cart-two-column-row {
        display: block;
    }
    #order-standard_cart .cart-body > .row > .secondary-cart-body,
    #order-standard_cart.ssl-cart-two-column .ssl-cart-two-column-row .secondary-cart-body,
    #order-standard_cart .ssl-cart-two-column-row .secondary-cart-body {
        width: 100% !important;
        max-width: 100%;
        float: none !important;
        padding-right: 15px;
    }
    #order-standard_cart .cart-body > .row > .secondary-cart-sidebar,
    #order-standard_cart.ssl-cart-two-column .ssl-cart-two-column-row .secondary-cart-sidebar,
    #order-standard_cart .ssl-cart-two-column-row .secondary-cart-sidebar {
        width: 100% !important;
        max-width: 420px;
        float: none !important;
        margin: 24px auto 0;
        padding-left: 15px;
    }
}

/* Unified content density: one-line rows follow the 42px sidebar rhythm. */
:root {
    --ssl-row-padding-y: 10px;
    --ssl-row-min-height: 42px;
}

body.ssl-client-theme #main-body .card > .card-header,
body.ssl-client-theme #main-body .sidebar .card-sidebar > .card-header,
body.ssl-client-theme #main-body .panel > .panel-heading,
body.ssl-client-theme #main-body .ssl-table-page-header {
    padding-top: var(--ssl-row-padding-y) !important;
    padding-bottom: var(--ssl-row-padding-y) !important;
}

body.ssl-client-theme #main-body .client-home-cards .card > .card-body,
body.ssl-client-theme #main-body .client-home-cards .card > .list-group > .list-group-item,
body.ssl-client-theme #main-body .client-home-cards .card > .collapsable-card-body > .list-group > .list-group-item {
    padding-top: var(--ssl-row-padding-y) !important;
    padding-bottom: var(--ssl-row-padding-y) !important;
}

body.ssl-client-theme #main-body .client-home-cards .card > .list-group > .list-group-item,
body.ssl-client-theme #main-body .client-home-cards .card > .collapsable-card-body > .list-group > .list-group-item {
    min-height: var(--ssl-row-min-height);
    box-sizing: border-box;
}

body.ssl-client-theme #main-body .client-home-cards [menuitemname="Active Products/Services"] > .card-body {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

body.ssl-client-theme #main-body .client-home-cards [menuitemname="Active Products/Services"] > .card-body > p {
    padding-top: var(--ssl-row-padding-y) !important;
    padding-bottom: var(--ssl-row-padding-y) !important;
}

body.ssl-client-theme #main-body .client-home-cards .div-service-item {
    min-height: 0;
}

body.ssl-client-theme #main-body table.table-list thead th,
body.ssl-client-theme #main-body .dataTable thead th,
body.ssl-client-theme #main-body .client-home-cards .table thead th,
body.ssl-client-theme #main-body table#tableTicketsList thead th {
    padding-top: var(--ssl-row-padding-y) !important;
    padding-bottom: var(--ssl-row-padding-y) !important;
}

body.ssl-client-theme #main-body table.table-list tbody td,
body.ssl-client-theme #main-body .dataTable tbody td,
body.ssl-client-theme #main-body .client-home-cards .table tbody td,
body.ssl-client-theme #main-body table#tableTicketsList tbody td {
    padding-top: var(--ssl-row-padding-y) !important;
    padding-bottom: var(--ssl-row-padding-y) !important;
}

/* Home panels: independent columns prevent a taller card from holding back the next card. */
body.ssl-client-theme.page-clientareahome #main-body .ssl-home-panel-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    align-items: start;
}

body.ssl-client-theme.page-clientareahome #main-body .ssl-home-panel-column {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 16px;
}

body.ssl-client-theme.page-clientareahome #main-body .ssl-home-panel-column > .card {
    width: 100%;
    height: auto !important;
    min-height: 0;
    margin: 0 !important;
    align-self: stretch;
}

/* Every home-card edge is drawn once, at the same one-pixel weight. */
body.ssl-client-theme.page-clientareahome #main-body .client-home-cards .card {
    border: 1px solid var(--ssl-line) !important;
}

body.ssl-client-theme.page-clientareahome #main-body .client-home-cards .card > .card-header {
    border: 0 !important;
    border-bottom: 1px solid var(--ssl-line) !important;
}

body.ssl-client-theme.page-clientareahome #main-body .client-home-cards .list-group {
    border: 0 !important;
    border-radius: 0 !important;
}

body.ssl-client-theme.page-clientareahome #main-body .client-home-cards .list-group > .list-group-item {
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
}

body.ssl-client-theme.page-clientareahome #main-body .client-home-cards .list-group > .list-group-item + .list-group-item {
    border-top: 1px solid var(--ssl-line) !important;
}

body.ssl-client-theme.page-clientareahome #main-body .client-home-cards .card-body + .list-group {
    border-top: 1px solid var(--ssl-line) !important;
}

body.ssl-client-theme.page-clientareahome #main-body .client-home-cards .card > .card-footer {
    border: 0 !important;
    border-top: 1px solid var(--ssl-line) !important;
}

/* Ticket and service states occupy a stable right-hand action position. */
body.ssl-client-theme.page-clientareahome #main-body [menuitemname="Recent Support Tickets"] .list-group-item > .status,
body.ssl-client-theme.page-clientareahome #main-body [menuitemname="Recent Support Tickets"] .list-group-item > [class*="status-"],
body.ssl-client-theme.page-clientareahome #main-body [menuitemname="Recent Support Tickets"] .list-group-item > label.label {
    flex: 0 0 auto;
    margin-left: auto !important;
}

body.ssl-client-theme.page-clientareahome #main-body [menuitemname="Active Products/Services"] .div-service-status {
    flex: 0 0 auto;
    margin-left: auto !important;
}

body.ssl-client-theme.page-clientareahome #main-body [menuitemname="Active Products/Services"] .div-service-buttons {
    margin-left: 8px !important;
}

@media (min-width: 576px) {
    body.ssl-client-theme.page-clientareahome #main-body #servicesPanel .div-service-item {
        display: grid !important;
        grid-template-columns: minmax(0, 60%) minmax(0, 20%) minmax(0, 20%);
        align-items: center !important;
        gap: 0;
    }

    body.ssl-client-theme.page-clientareahome #main-body #servicesPanel .div-service-name,
    body.ssl-client-theme.page-clientareahome #main-body #servicesPanel .div-service-status,
    body.ssl-client-theme.page-clientareahome #main-body #servicesPanel .div-service-buttons {
        min-width: 0;
        margin-left: 0 !important;
    }

    body.ssl-client-theme.page-clientareahome #main-body #servicesPanel .div-service-status {
        width: 100% !important;
        justify-content: center !important;
    }

    body.ssl-client-theme.page-clientareahome #main-body #servicesPanel .div-service-buttons {
        width: 100%;
        justify-content: flex-end !important;
    }
}

body.ssl-client-theme #main-body #servicesPanel .div-service-name,
body.ssl-client-theme #main-body #servicesPanel .div-service-name *,
body.ssl-client-theme #main-body #servicesPanel .div-service-name .font-weight-bold,
body.ssl-client-theme #main-body [menuitemname="Active Products/Services"] .div-service-name,
body.ssl-client-theme #main-body [menuitemname="Active Products/Services"] .div-service-name *,
body.ssl-client-theme #main-body [menuitemname="Active Products/Services"] .div-service-name .font-weight-bold,
body.ssl-client-theme #main-body .div-service-item .div-service-name,
body.ssl-client-theme #main-body .div-service-item .div-service-name *,
body.ssl-client-theme #main-body .div-service-item .div-service-name .font-weight-bold {
    font-weight: 400 !important;
}

/* Row-level service state and detail action share one compact type scale. */
body.ssl-client-theme.page-clientareahome #main-body [menuitemname="Active Products/Services"] .div-service-status .label {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box;
    vertical-align: middle;
    min-height: 22px;
    padding: 2px 8px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
}

body.ssl-client-theme.page-clientareahome #main-body [menuitemname="Active Products/Services"] .btn-view-details {
    min-height: 30px;
    padding: 5px 10px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
}

@media (max-width: 767.98px) {
    body.ssl-client-theme.page-clientareahome #main-body .ssl-home-panel-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Global card dividers: adjacent components share one 1px line, never two. */
body.ssl-client-theme #main-body .card > .card-header,
body.ssl-client-theme #main-body .panel > .panel-heading {
    border: 0 !important;
    border-bottom: 1px solid var(--ssl-line) !important;
}

body.ssl-client-theme #main-body .card .list-group {
    border: 0 !important;
    border-radius: 0 !important;
}

body.ssl-client-theme #main-body .card .list-group > .list-group-item {
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
}

body.ssl-client-theme #main-body .card .list-group > .list-group-item + .list-group-item {
    border-top: 1px solid var(--ssl-line) !important;
}

body.ssl-client-theme #main-body .card .card-body + .list-group {
    border-top: 1px solid var(--ssl-line) !important;
}

body.ssl-client-theme #main-body .card > .card-footer,
body.ssl-client-theme #main-body .panel > .panel-footer {
    border: 0 !important;
    border-top: 1px solid var(--ssl-line) !important;
}

/* Twenty-One hides service items from the fifth onward; this template renders exactly five. */
body.ssl-client-theme.page-clientareahome #main-body [menuitemname="Active Products/Services"] .list-group-item:nth-child(5) {
    display: block !important;
}

/* Account details: the form cards provide the page structure, so keep the
   native fields compact and aligned without adding another heading container. */
body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card {
    overflow: hidden;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card > .card-body {
    padding: 0 !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card > .card-body > h3.card-title {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    margin: 0 !important;
    padding: 12px 16px !important;
    border-bottom: 1px solid var(--ssl-line) !important;
    color: var(--ssl-ink);
    font-family: var(--ssl-font-sans);
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card > .card-body > h3.card-title::after {
    display: none !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card > .card-body > h3.card-title > i {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 16px !important;
    width: 16px !important;
    height: 16px !important;
    font-size: 16px !important;
    color: var(--ssl-muted) !important;
    line-height: 1 !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card > .card-body > h3.card-title:has(> i)::before {
    display: none !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card > .card-body > h3.card-title:not(:has(> i))::before {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 16px;
    width: 16px;
    color: var(--ssl-muted);
    font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free" !important;
    font-size: 16px;
    font-weight: 900 !important;
    line-height: 1;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card:nth-of-type(1) > .card-body > h3.card-title:not(:has(> i))::before {
    content: "\f4ff" !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card:nth-of-type(2) > .card-body > h3.card-title:not(:has(> i))::before {
    content: "\f0e0";
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card:first-of-type .card-body > .row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 24px;
    margin: 0 !important;
    padding: 16px 16px 8px 48px !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card:first-of-type .card-body > .row > :nth-child(1) {
    grid-column: 1;
    grid-row: 1;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card:first-of-type .card-body > .row > :nth-child(2) {
    grid-column: 2;
    grid-row: 1;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card:first-of-type .card-body > .row > :nth-child(3) {
    display: none !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card:first-of-type .card-body > .row > [class*="col-"] {
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
    float: none !important;
}

/* Fallback hiding for specific fields marked by user */
body.ssl-client-theme.page-clientareadetails #main-body .primary-content .form-group:has(#inputAddress2),
body.ssl-client-theme.page-clientareadetails #main-body .primary-content .form-group:has(#inputPaymentMethod),
body.ssl-client-theme.page-clientareadetails #main-body .primary-content .form-group:has(#inputBillingContact),
body.ssl-client-theme.page-clientareadetails #main-body .primary-content .form-group:has(#inputAccountLanguage),
body.ssl-client-theme.page-clientareadetails #main-body .primary-content .form-group:has(#inputTaxId) {
    display: none !important;
}

/* Email Preferences container deletion / hiding fallback */
body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card:has(.controls),
body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card:has([name^="email_preferences"]) {
    display: none !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content .form-group {
    margin-bottom: 12px !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content .form-group > label,
body.ssl-client-theme.page-clientareadetails #main-body .primary-content label.control-label {
    display: block;
    margin: 0 0 6px !important;
    padding: 0 !important;
    color: var(--ssl-ink);
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content .form-control,
body.ssl-client-theme.page-clientareadetails #main-body .primary-content .custom-select {
    min-height: 38px;
    height: 38px;
    padding: 6px 10px !important;
    border: 1px solid var(--ssl-line) !important;
    border-radius: 6px !important;
    background-color: #fff;
    color: var(--ssl-ink);
    font-family: var(--ssl-font-sans);
    font-size: 14px !important;
    line-height: 1.4 !important;
    box-shadow: none !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content .form-control:focus,
body.ssl-client-theme.page-clientareadetails #main-body .primary-content .custom-select:focus {
    border-color: rgba(22, 128, 60, .55) !important;
    box-shadow: 0 0 0 2px rgba(22, 128, 60, .08) !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content .form-control:disabled,
body.ssl-client-theme.page-clientareadetails #main-body .primary-content .form-control[readonly] {
    background: var(--ssl-soft) !important;
    color: var(--ssl-muted) !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content .intl-tel-input #inputPhone {
    padding-left: 80px !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card:nth-of-type(2) .controls {
    margin: 0 !important;
    padding: 16px 16px 8px 48px !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card:nth-of-type(2) .controls > label {
    display: inline-flex;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 8px !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card:nth-of-type(2) .controls .form-check-input {
    position: static !important;
    flex: 0 0 auto;
    margin: .28em 0 0 !important;
}

body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .form-group.text-center {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 16px !important;
    margin-bottom: 24px !important;
}

@media (max-width: 767.98px) {
    body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card > .card-body > h3.card-title {
        gap: 12px !important;
    }

    body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card > .card-body > h3.card-title::after {
        display: none !important;
    }

    body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card:first-of-type .card-body > .row {
        display: block !important;
        padding: 12px 16px 4px !important;
    }

    body.ssl-client-theme.page-clientareadetails #main-body .primary-content form > .card:nth-of-type(2) .controls {
        padding: 12px 16px 8px !important;
    }
}

/* Product Details Page - Structure optimization matching products style:
 * 1. Shortcuts sidebar is on the left (natural grid order).
 * 2. Shortcuts card display enabled.
 * 3. Card header aligned with .ssl-table-page-header.
 * 4. Unified single-card container: #sslContent sections flow seamlessly.
 * 5. Left indentation aligns with title text (40px: 16px pad + 16px icon + 8px gap),
 *    NOT the icon (16px), and right indentation is 16px (no full-bleed 通栏 lines).
 */
body.ssl-client-theme.page-clientareaproductdetails .sidebar .card-sidebar {
    display: block !important;
}

body.ssl-client-theme #main-body .ssl-product-main-card > .ssl-product-page-heading {
    position: relative !important;
    margin: 0 !important;
    padding: 12px 16px !important;
    background: #fff !important;
    border: 0 !important;
    border-bottom: 1px solid var(--ssl-line) !important;
    border-radius: 7px 7px 0 0 !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

body.ssl-client-theme #main-body .ssl-product-main-card > .ssl-product-page-heading::after {
    display: none !important;
}

body.ssl-client-theme #main-body .ssl-product-main-card > .ssl-product-page-heading .ssl-module-heading-icon {
    font-size: 16px !important;
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    max-width: 16px !important;
    flex: 0 0 16px !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    color: var(--ssl-muted) !important;
}

body.ssl-client-theme #main-body .ssl-product-main-card > .ssl-product-page-heading .ssl-module-heading-icon svg {
    font-size: 16px !important;
    color: var(--ssl-muted) !important;
}

body.ssl-client-theme #main-body .ssl-product-main-card > .ssl-product-page-heading h1 {
    font-family: var(--ssl-font-sans) !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;
    letter-spacing: normal !important;
    color: var(--ssl-ink) !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
}

/* ==========================================================================
   Product Main Card: Universal Container
   ========================================================================== */

body.ssl-client-theme #main-body .ssl-product-main-card {
    background: #fff !important;
    border: 1px solid var(--ssl-line) !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    overflow: hidden !important;
    margin-bottom: 24px !important;
}

body.ssl-client-theme.page-clientareaproductdetails #main-body .ssl-product-main-card .tab-content,
body.ssl-client-theme.page-clientareaproductdetails #main-body .ssl-product-main-card #sslContent,
body.ssl-client-theme.page-clientareaproductdetails #main-body .ssl-product-main-card .main-content,
body.ssl-client-theme.page-clientareaproductdetails #main-body .ssl-product-main-card #tabOverview {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    font-family: var(--ssl-font-sans) !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: var(--ssl-ink) !important;
}

/* ==========================================================================
   Service Details: Reconstructed Single-Card Component
   ========================================================================== */

body.ssl-client-theme.page-clientareaproductdetails #main-body .ssl-product-main-card {
    background: #fff !important;
    border: 1px solid var(--ssl-line) !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

body.ssl-client-theme.page-clientareaproductdetails #main-body .ssl-product-tab-content {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
}

.page-clientareaproductdetails .ssl-service-overview {
    display: flex;
    flex-direction: column;
    background: #fff;
}

.page-clientareaproductdetails .ssl-service-meta-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 1px solid var(--ssl-line);
    background: #fff;
    gap: 16px;
}

.page-clientareaproductdetails .ssl-service-identity {
    display: flex;
    align-items: center;
    gap: 12px;
}

.page-clientareaproductdetails .ssl-service-type-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    background: var(--ssl-surface, #f4f6f8);
    color: var(--ssl-muted, #626b75);
    font-size: 15px;
    flex-shrink: 0;
}

.page-clientareaproductdetails .ssl-service-group-badge {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 4px;
    background: var(--ssl-surface, #f4f6f8);
    color: var(--ssl-muted, #626b75);
    font-size: 12px;
    font-weight: 500;
    line-height: 1.4;
}

.page-clientareaproductdetails .ssl-service-domain-link {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    color: var(--ssl-green, #16803c);
    text-decoration: none;
    margin-left: 4px;
}

.page-clientareaproductdetails .ssl-service-domain-link:hover {
    color: var(--ssl-green-hover, #116530);
    text-decoration: underline;
}

/* Status Badges */
.page-clientareaproductdetails .ssl-status-badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0;
}

.page-clientareaproductdetails .ssl-status-badge.ssl-status-active,
.page-clientareaproductdetails .ssl-status-badge.ssl-status-completed {
    background: #e8f7ec;
    color: #13743a;
    border: 1px solid #c2e9cb;
}

.page-clientareaproductdetails .ssl-status-badge.ssl-status-pending,
.page-clientareaproductdetails .ssl-status-badge.ssl-status-awaiting,
.page-clientareaproductdetails .ssl-status-badge.ssl-status-awaiting_configuration {
    background: #fff8eb;
    color: #b45309;
    border: 1px solid #fde68a;
}

.page-clientareaproductdetails .ssl-status-badge.ssl-status-suspended {
    background: #f1f5f9;
    color: #475569;
    border: 1px solid #cbd5e1;
}

.page-clientareaproductdetails .ssl-status-badge.ssl-status-cancelled,
.page-clientareaproductdetails .ssl-status-badge.ssl-status-terminated {
    background: #f8fafc;
    color: #94a3b8;
    border: 1px solid #e2e8f0;
}

.page-clientareaproductdetails .ssl-status-badge.ssl-status-fraud {
    background: #fef2f2;
    color: #b91c1c;
    border: 1px solid #fecaca;
}

/* Specs Grid */
.page-clientareaproductdetails .ssl-specs-grid {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 16px 36px;
    padding: 20px;
    border-bottom: 1px solid var(--ssl-line);
    background: #fff;
}

.page-clientareaproductdetails .ssl-spec-item {
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex: 0 0 auto;
    width: auto;
}

.page-clientareaproductdetails .ssl-spec-label {
    font-size: 12px;
    font-weight: 400;
    color: var(--ssl-muted, #626b75);
    text-transform: none;
    letter-spacing: normal;
    line-height: 1.4;
}

.page-clientareaproductdetails .ssl-spec-value {
    font-size: 14px;
    font-weight: 400;
    color: var(--ssl-ink, #252a30);
    line-height: 1.5;
}

.page-clientareaproductdetails .ssl-specs-grid,
.page-clientareaproductdetails .ssl-specs-grid .ssl-spec-label,
.page-clientareaproductdetails .ssl-specs-grid .ssl-spec-value,
.page-clientareaproductdetails .ssl-specs-grid a,
.page-clientareaproductdetails .ssl-specs-grid span,
.page-clientareaproductdetails .ssl-specs-grid strong,
.page-clientareaproductdetails .ssl-specs-grid b {
    font-weight: 400 !important;
}

.page-clientareaproductdetails .ssl-spec-full-width {
    flex: 0 0 100%;
    width: 100%;
}

.page-clientareaproductdetails .ssl-hook-output {
    padding: 0 20px;
}

/* Module Section & Table Styling */
.page-clientareaproductdetails .ssl-module-section {
    padding: 20px;
    background: #fff;
}

.page-clientareaproductdetails .ssl-module-section,
.page-clientareaproductdetails .ssl-module-section th,
.page-clientareaproductdetails .ssl-module-section td,
.page-clientareaproductdetails .ssl-module-section p,
.page-clientareaproductdetails .ssl-module-section span,
.page-clientareaproductdetails .ssl-module-section a,
.page-clientareaproductdetails .ssl-module-section strong,
.page-clientareaproductdetails .ssl-module-section b,
.page-clientareaproductdetails .ssl-module-section label,
.page-clientareaproductdetails .ssl-module-section h1,
.page-clientareaproductdetails .ssl-module-section h2,
.page-clientareaproductdetails .ssl-module-section h3,
.page-clientareaproductdetails .ssl-module-section h4,
.page-clientareaproductdetails .ssl-module-section h5,
.page-clientareaproductdetails .ssl-module-section h6,
.page-clientareaproductdetails .ssl-module-section .btn {
    font-weight: 400 !important;
}

.page-clientareaproductdetails .ssl-module-section .module-client-area {
    margin: 0;
    text-align: left;
}

.page-clientareaproductdetails .ssl-module-section #mainTable {
    width: 100% !important;
    margin: 0 !important;
    border: 1px solid var(--ssl-line) !important;
    border-radius: 6px !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    overflow: hidden !important;
    table-layout: fixed !important;
    background: #fff !important;
}

.page-clientareaproductdetails .ssl-module-section #mainTable td {
    padding: 12px 16px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--ssl-line) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    color: var(--ssl-ink) !important;
    vertical-align: middle !important;
}

.page-clientareaproductdetails .ssl-module-section #mainTable tr:last-child td {
    border-bottom: 0 !important;
}

.page-clientareaproductdetails .ssl-module-section #mainTable td:first-child {
    background: #fafbfb !important;
    color: var(--ssl-muted) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    border-right: 1px solid var(--ssl-line) !important;
    width: 25% !important;
}

.page-clientareaproductdetails .ssl-module-section #mainTable a.btn.btn-default,
.page-clientareaproductdetails .ssl-module-section #mainTable .btn {
    border-radius: 6px !important;
    padding: 6px 14px !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    background: var(--ssl-green) !important;
    border-color: var(--ssl-green) !important;
    color: #fff !important;
    box-shadow: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.page-clientareaproductdetails .ssl-module-section #mainTable a.btn.btn-default:hover,
.page-clientareaproductdetails .ssl-module-section #mainTable a.btn.btn-default:focus {
    background: var(--ssl-green-hover) !important;
    border-color: var(--ssl-green-hover) !important;
    color: #fff !important;
}

/* Tabs for Domain / Multi-view Services */
.page-clientareaproductdetails .ssl-details-tabs-wrapper {
    background: #fff;
}

.page-clientareaproductdetails .ssl-product-tabs {
    display: flex;
    padding: 0 20px;
    background: #fafbfb;
    border-bottom: 1px solid var(--ssl-line);
    margin: 0;
    gap: 4px;
}

.page-clientareaproductdetails .ssl-product-tabs .nav-link {
    border: 0 !important;
    border-bottom: 2px solid transparent !important;
    padding: 12px 14px !important;
    border-radius: 0 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--ssl-muted) !important;
    background: transparent !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.page-clientareaproductdetails .ssl-product-tabs .nav-link:hover {
    color: var(--ssl-ink) !important;
    border-bottom-color: var(--ssl-line) !important;
}

.page-clientareaproductdetails .ssl-product-tabs .nav-link.active {
    color: var(--ssl-green-deep) !important;
    border-bottom-color: var(--ssl-green) !important;
    font-weight: 600 !important;
    background: transparent !important;
}

.page-clientareaproductdetails .ssl-product-tab-panes {
    padding: 20px;
    background: #fff;
}

.page-clientareaproductdetails .ssl-specs-grid-sub {
    padding: 0 !important;
    border: 0 !important;
    gap: 16px 36px;
}

/* Product Card Footer (Actions) */
.page-clientareaproductdetails .ssl-product-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 20px;
    background: #fafbfb;
    border-top: 1px solid var(--ssl-line);
    gap: 12px;
}

.page-clientareaproductdetails .ssl-footer-primary,
.page-clientareaproductdetails .ssl-footer-secondary {
    display: flex;
    align-items: center;
    gap: 8px;
}

.page-clientareaproductdetails .ssl-product-footer .btn {
    border-radius: 6px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 6px 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.page-clientareaproductdetails .ssl-product-footer .btn-primary {
    background: var(--ssl-green) !important;
    border-color: var(--ssl-green) !important;
    color: #fff !important;
}

.page-clientareaproductdetails .ssl-product-footer .btn-primary:hover {
    background: var(--ssl-green-hover) !important;
    border-color: var(--ssl-green-hover) !important;
}

.page-clientareaproductdetails .ssl-product-footer .btn-outline-primary {
    border-color: var(--ssl-line) !important;
    color: var(--ssl-ink) !important;
    background: #fff !important;
}

.page-clientareaproductdetails .ssl-product-footer .btn-outline-primary:hover {
    border-color: var(--ssl-green) !important;
    color: var(--ssl-green) !important;
    background: #fff !important;
}

.page-clientareaproductdetails .ssl-product-footer .btn-outline-danger {
    border-color: transparent !important;
    color: #dc2626 !important;
    background: transparent !important;
}

.page-clientareaproductdetails .ssl-product-footer .btn-outline-danger:hover {
    color: #b91c1c !important;
    background: #fef2f2 !important;
}

/* Responsive Overrides */
@media (max-width: 767.98px) {
    .page-clientareaproductdetails .ssl-service-meta-bar {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        padding: 16px;
    }

    .page-clientareaproductdetails .ssl-specs-grid {
        padding: 16px;
        gap: 14px 24px;
    }

    .page-clientareaproductdetails .ssl-module-section {
        padding: 16px;
    }

    .page-clientareaproductdetails .ssl-product-footer {
        flex-direction: column-reverse;
        align-items: stretch;
        padding: 16px;
    }

    .page-clientareaproductdetails .ssl-footer-primary,
    .page-clientareaproductdetails .ssl-footer-secondary {
        justify-content: stretch;
    }

    .page-clientareaproductdetails .ssl-footer-primary .btn,
    .page-clientareaproductdetails .ssl-footer-secondary .btn {
        flex: 1;
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .page-clientareaproductdetails .ssl-specs-grid {
        gap: 12px 20px;
    }
}

/* Order Form Configure Product within ssl-product-main-card */
#order-standard_cart .ssl-product-main-card .ssl-product-card-body {
    padding: 16px 16px 16px 40px !important;
    background: #fff !important;
}

#order-standard_cart .ssl-product-main-card .product-description {
    color: var(--ssl-muted) !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    margin-bottom: 20px !important;
}

#order-standard_cart .ssl-product-main-card .product-info {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 0 16px 0 !important;
}

#order-standard_cart .ssl-product-main-card .field-container {
    margin-bottom: 20px !important;
}

#order-standard_cart .ssl-product-main-card .sub-heading {
    margin: 24px -16px 16px -40px !important;
    padding: 0 16px 8px 40px !important;
    border-bottom: 1px solid var(--ssl-line) !important;
}

#order-standard_cart .ssl-product-main-card .sub-heading span {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--ssl-ink) !important;
    background: transparent !important;
    padding: 0 !important;
}

#order-standard_cart .secondary-cart-sidebar .order-summary {
    margin-bottom: 16px !important;
}

#order-standard_cart .secondary-cart-sidebar .ssl-cart-actions,
#order-standard_cart .secondary-cart-sidebar .text-center,
#order-standard_cart .secondary-cart-sidebar .text-right {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    text-align: right !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Enforce 1px full-width dividing lines inside the main card */
body.ssl-client-theme.page-clientareaproductdetails #main-body #sslContent > [id$="Part"] + [id$="Part"]::before,
body.ssl-client-theme.page-clientareaproductdetails #main-body #sslbody > [id$="Part"] + [id$="Part"]::before,
body.ssl-client-theme.page-clientareaproductdetails #main-body #sslContent > #orderInfoPart ~ [id$="Part"]:not([hidden])::before,
body.ssl-client-theme.page-clientareaproductdetails #main-body #sslContent > #domainPart::before,
body.ssl-client-theme.page-clientareaproductdetails #main-body #submitPart::before {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 1px !important;
    background: var(--ssl-line) !important;
}

body.ssl-client-theme.page-clientareaproductdetails #main-body #orderInfoPart::after {
    display: none !important;
    content: none !important;
}

body.ssl-client-theme #submitPart .submit-button,
body.ssl-client-theme #submitPart .draft-button,
#tabOverview #submitPart .submit-button,
#tabOverview #submitPart .draft-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 16px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 30px !important;
    border-radius: 6px !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

@media (max-width: 767.98px) {
    body.ssl-client-theme #main-body .ssl-product-main-card > .ssl-product-page-heading::after {
        display: none !important;
    }
    #order-standard_cart .ssl-product-main-card .ssl-product-card-body {
        padding: 16px 16px 16px 40px !important;
    }
    #order-standard_cart .ssl-product-main-card .sub-heading {
        margin: 20px -16px 14px -40px !important;
        padding: 0 16px 8px 40px !important;
    }
}

/* ==========================================================================
   12SSL Design System: Radio Input & Label Spacing Specification
   全局设计规范：
   1. 单选框（input[type="radio"]）与后置 label / 文字之间仅保留一个字符空格（6px / 0.5em），严禁刻意加大间距；
   2. 选项与后续选项之间（组间）保持标准间距（20px ~ 24px）；
   3. 消除 Bootstrap 原生负边距、浮动等可能导致间距失真的副作用。
   ========================================================================== */

/* 1. 全局单选框尺寸与对齐重置 */
body.ssl-client-theme input[type="radio"],
#main-body input[type="radio"],
#tabOverview input[type="radio"],
.ssl-product-main-card input[type="radio"] {
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
    vertical-align: middle !important;
    accent-color: var(--ssl-green) !important;
    cursor: pointer;
    flex-shrink: 0;
}

/* 2. 同级排版（Sibling Pattern: input[type="radio"] + label）
   单选框与后紧随的 label/文字严格保留 6px（单字符空格），选项右侧留出 20px 间距 */
body.ssl-client-theme input[type="radio"] + label,
body.ssl-client-theme input[type="radio"] + span,
#main-body input[type="radio"] + label,
#main-body input[type="radio"] + span,
#tabOverview input[type="radio"] + label,
#tabOverview input[type="radio"] + span,
.ssl-product-main-card input[type="radio"] + label,
.ssl-product-main-card input[type="radio"] + span {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 20px 0 6px !important;
    padding: 0 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: var(--ssl-ink) !important;
    cursor: pointer;
    line-height: 1.4;
    vertical-align: middle;
}

body.ssl-client-theme input[type="radio"] + label:last-child,
body.ssl-client-theme input[type="radio"] + span:last-child,
#main-body input[type="radio"] + label:last-child,
#main-body input[type="radio"] + span:last-child,
#tabOverview input[type="radio"] + label:last-child,
#tabOverview input[type="radio"] + span:last-child,
.ssl-product-main-card input[type="radio"] + label:last-child,
.ssl-product-main-card input[type="radio"] + span:last-child {
    margin-right: 0 !important;
}

/* 3. 包裹排版（Wrapped Pattern: label > input[type="radio"] / .ssl-radio-option / .radio-inline）
   Label 容器内部 input 与文字之间通过 gap: 6px（单字符空格）保持对齐 */
body.ssl-client-theme label:has(> input[type="radio"]),
#main-body label:has(> input[type="radio"]),
#tabOverview label:has(> input[type="radio"]),
.ssl-product-main-card label:has(> input[type="radio"]),
body.ssl-client-theme .ssl-radio-option,
body.ssl-client-theme .ssl-radio-inline,
body.ssl-client-theme .radio-inline,
body.ssl-client-theme .radio label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 0 20px 0 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: var(--ssl-ink) !important;
    cursor: pointer;
    line-height: 1.4;
    vertical-align: middle;
}

body.ssl-client-theme label:has(> input[type="radio"]):last-child,
#main-body label:has(> input[type="radio"]):last-child,
#tabOverview label:has(> input[type="radio"]):last-child,
.ssl-product-main-card label:has(> input[type="radio"]):last-child,
body.ssl-client-theme .ssl-radio-option:last-child,
body.ssl-client-theme .ssl-radio-inline:last-child,
body.ssl-client-theme .radio-inline:last-child,
body.ssl-client-theme .radio:last-child label {
    margin-right: 0 !important;
}

/* 4. 彻底消除 Bootstrap 原生 .radio 破坏性的负外边距与浮动 */
body.ssl-client-theme .radio,
#main-body .radio {
    margin-top: 6px !important;
    margin-bottom: 6px !important;
    padding-left: 0 !important;
}

body.ssl-client-theme .radio label input[type="radio"],
body.ssl-client-theme .radio-inline input[type="radio"],
body.ssl-client-theme label:has(> input[type="radio"]) input[type="radio"],
body.ssl-client-theme label > input[type="radio"] {
    position: static !important;
    margin: 0 !important;
    float: none !important;
    vertical-align: middle !important;
}

/* ==========================================================================
   12SSL Support Ticket Form & Markdown Editor Specification
   工单表单与 Markdown 编辑器规范
   ========================================================================== */

/* Markdown Editor Container */
body.ssl-client-theme .md-editor {
    display: block;
    border: 1px solid var(--ssl-line) !important;
    border-radius: var(--ssl-radius) !important;
    background: #fff;
    overflow: hidden;
    transition: border-color .18s ease, box-shadow .18s ease;
}

body.ssl-client-theme .md-editor.active,
body.ssl-client-theme .md-editor:focus-within {
    border-color: var(--ssl-green) !important;
    box-shadow: 0 0 0 3px rgba(22, 128, 60, .14) !important;
    outline: none !important;
}

/* Toolbar Header */
body.ssl-client-theme .md-editor > .md-header {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    padding: 8px 10px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid var(--ssl-line) !important;
    margin: 0 !important;
}

body.ssl-client-theme .md-editor > .md-header .btn-toolbar {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
    width: 100%;
}

body.ssl-client-theme .md-editor > .md-header .btn-group {
    display: inline-flex;
    align-items: center;
    float: none;
    margin: 0;
    gap: 2px;
}

/* Regular Toolbar Buttons */
body.ssl-client-theme .md-editor > .md-header .btn,
body.ssl-client-theme .md-editor > .md-header .btn-default {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 28px !important;
    height: 28px !important;
    padding: 2px 8px !important;
    border: 1px solid transparent !important;
    border-radius: 4px !important;
    background: transparent !important;
    color: var(--ssl-ink) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    box-shadow: none !important;
    transition: background-color .15s ease, border-color .15s ease, color .15s ease !important;
}

body.ssl-client-theme .md-editor > .md-header .btn:hover,
body.ssl-client-theme .md-editor > .md-header .btn-default:hover,
body.ssl-client-theme .md-editor > .md-header .btn.active,
body.ssl-client-theme .md-editor > .md-header .btn-default.active {
    background: #e2e8f0 !important;
    border-color: #cbd5e1 !important;
    color: var(--ssl-ink) !important;
}

/* Preview Button: Crucial Override (Prevents 42px green giant CTA invasion) */
body.ssl-client-theme .md-editor > .md-header .btn-primary,
body.ssl-client-theme #main-body .md-editor > .md-header .btn-primary {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 28px !important;
    height: 28px !important;
    padding: 2px 10px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 4px !important;
    background: #fff !important;
    color: var(--ssl-ink) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    box-shadow: none !important;
}

body.ssl-client-theme .md-editor > .md-header .btn-primary:hover,
body.ssl-client-theme #main-body .md-editor > .md-header .btn-primary:hover {
    border-color: #a3d9b8 !important;
    background: var(--ssl-soft-green) !important;
    color: var(--ssl-green) !important;
}

body.ssl-client-theme .md-editor > .md-header .btn-primary.active,
body.ssl-client-theme #main-body .md-editor > .md-header .btn-primary.active {
    border-color: var(--ssl-green) !important;
    background: var(--ssl-soft-green) !important;
    color: var(--ssl-green) !important;
}

/* Markdown Textarea */
body.ssl-client-theme .md-editor > textarea {
    display: block !important;
    width: 100% !important;
    padding: 10px 14px !important;
    border: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: var(--ssl-ink) !important;
    font-family: var(--ssl-font-sans) !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    box-shadow: none !important;
    resize: vertical;
    min-height: 130px !important;
    height: 140px;
}

body.ssl-client-theme .md-editor > textarea:focus {
    background: #fff !important;
    box-shadow: none !important;
    outline: none !important;
}

/* Markdown Preview Area */
body.ssl-client-theme .md-editor > .md-preview {
    padding: 14px 16px !important;
    background: #fff !important;
    border-top: 1px dashed var(--ssl-line) !important;
    border-bottom: 0 !important;
    color: var(--ssl-ink) !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
}

/* Markdown Footer */
body.ssl-client-theme .md-editor .md-footer {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 4px 12px !important;
    background: #f8fafc !important;
    border-top: 1px solid var(--ssl-line) !important;
    color: #94a3b8 !important;
    font-size: 11px !important;
    line-height: 1.5 !important;
}

/* Ticket Form Grid Spacing (Single standard 16px gap between parallel columns, eliminating doubled 30px gap) */
body.ssl-client-theme .ssl-ticket-form .row {
    margin-left: -8px !important;
    margin-right: -8px !important;
}

body.ssl-client-theme .ssl-ticket-form .row > [class*="col-"] {
    padding-left: 8px !important;
    padding-right: 8px !important;
}

body.ssl-client-theme .ssl-ticket-form .form-group {
    margin-bottom: 16px !important;
}

/* Ticket Form Labels */
body.ssl-client-theme .ssl-ticket-form .ssl-form-label {
    display: block;
    margin-bottom: 6px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: var(--ssl-ink) !important;
    line-height: 1.4 !important;
}

/* Ticket Form Controls (Select & Input) */
body.ssl-client-theme .ssl-ticket-form .ssl-form-control,
body.ssl-client-theme .ssl-ticket-form select.form-control,
body.ssl-client-theme .ssl-ticket-form input.form-control {
    height: 40px !important;
    padding: 8px 12px !important;
    border: 1px solid #cbd1d6 !important;
    border-radius: 6px !important;
    background-color: #fff !important;
    font-size: 14px !important;
    color: var(--ssl-ink) !important;
    transition: border-color .15s ease, box-shadow .15s ease !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-form-control:focus,
body.ssl-client-theme .ssl-ticket-form select.form-control:focus,
body.ssl-client-theme .ssl-ticket-form input.form-control:focus {
    border-color: var(--ssl-green) !important;
    box-shadow: 0 0 0 3px rgba(22, 128, 60, .14) !important;
    outline: none !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-form-control.disabled,
body.ssl-client-theme .ssl-ticket-form .ssl-form-control:disabled {
    background-color: #f1f5f9 !important;
    color: #64748b !important;
    border-color: #e2e8f0 !important;
    cursor: not-allowed;
}

/* Custom Select Presentation Layer (Design Baseline) */
body.ssl-client-theme .ssl-ticket-form .ssl-custom-select {
    position: relative;
    width: 100%;
}

body.ssl-client-theme .ssl-ticket-form .ssl-custom-select.ssl-custom-select-ready > select {
    position: absolute !important;
    opacity: 0 !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
    pointer-events: none !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-custom-select-trigger {
    display: none;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    height: 40px !important;
    padding: 0 12px !important;
    border: 1px solid #cbd1d6 !important;
    border-radius: 6px !important;
    background-color: #fff !important;
    color: var(--ssl-ink) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: left;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    transition: border-color .15s ease, box-shadow .15s ease !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-custom-select.ssl-custom-select-ready > .ssl-custom-select-trigger {
    display: flex;
}

body.ssl-client-theme .ssl-ticket-form .ssl-custom-select-trigger:hover {
    border-color: #7e8992 !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-custom-select-trigger:focus,
body.ssl-client-theme .ssl-ticket-form .ssl-custom-select.is-open > .ssl-custom-select-trigger {
    border-color: var(--ssl-green) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(22, 128, 60, .14) !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-custom-select-value {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--ssl-ink) !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-custom-select-chevron {
    flex: 0 0 auto;
    width: 7px;
    height: 7px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    color: var(--ssl-muted);
    transform: rotate(45deg) translateY(-2px);
    transition: transform .16s ease;
}

body.ssl-client-theme .ssl-ticket-form .ssl-custom-select.is-open .ssl-custom-select-chevron {
    transform: rotate(225deg) translate(-1px, -1px);
}

body.ssl-client-theme .ssl-ticket-form .ssl-custom-select-menu {
    position: absolute;
    z-index: 1050;
    top: calc(100% + 4px);
    left: 0;
    display: grid;
    width: 100%;
    max-height: 240px;
    margin: 0;
    padding: 4px;
    overflow-y: auto;
    border: 1px solid var(--ssl-line) !important;
    border-radius: 8px !important;
    background-color: #fff !important;
    box-shadow: 0 10px 24px rgba(37, 42, 48, .12) !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-custom-select-menu[hidden] {
    display: none !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-custom-select-option {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 38px;
    padding: 8px 36px 8px 12px !important;
    border: 0 !important;
    border-radius: 5px !important;
    background: transparent !important;
    color: var(--ssl-ink) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-align: left;
    cursor: pointer;
    transition: background-color .12s ease, color .12s ease !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-custom-select-option:hover,
body.ssl-client-theme .ssl-ticket-form .ssl-custom-select-option:focus {
    outline: none !important;
    background-color: #f8fafc !important;
    color: var(--ssl-ink) !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-custom-select-option[aria-selected="true"] {
    background-color: rgba(22, 128, 60, .09) !important;
    color: var(--ssl-green) !important;
    font-weight: 500 !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-custom-select-option[aria-selected="true"]::after {
    position: absolute;
    right: 12px;
    content: "\2713";
    color: var(--ssl-green);
    font-size: 14px;
    font-weight: 600;
}

/* Attachments Group (Subordinated visual weight, 32px height, 12px font) */
body.ssl-client-theme .ssl-ticket-form .ssl-attachments-group .ssl-form-label {
    display: block;
    margin-bottom: 4px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: var(--ssl-muted) !important;
    line-height: 1.4 !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-attachment-input-group {
    display: flex !important;
    align-items: stretch !important;
    max-width: 460px !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-attachment-input-group .custom-file {
    height: 32px !important;
    position: relative !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-attachment-input-group .custom-file-input {
    height: 32px !important;
    cursor: pointer !important;
}

/* Filename display area */
body.ssl-client-theme .ssl-ticket-form .ssl-attachment-input-group .custom-file-label {
    height: 32px !important;
    line-height: 30px !important;
    padding: 0 10px 0 98px !important; /* reserve room for button on the left */
    border: 1px solid #cbd1d6 !important;
    border-radius: 6px 0 0 6px !important;
    color: #94a3b8 !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    background-color: #fff !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* Single Action Button on the Left: [ Choose File ] / [ 选择文件 ] */
body.ssl-client-theme .ssl-ticket-form .ssl-attachment-input-group .custom-file-label::after {
    position: absolute !important;
    top: -1px !important;
    left: -1px !important;
    bottom: -1px !important;
    right: auto !important;
    height: 32px !important;
    line-height: 30px !important;
    padding: 0 12px !important;
    background-color: #f1f5f9 !important;
    border: 1px solid #cbd1d6 !important;
    border-radius: 6px 0 0 6px !important;
    color: var(--ssl-ink) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    content: "Choose File" !important;
    cursor: pointer !important;
    transition: background-color .15s ease, border-color .15s ease !important;
}

body.ssl-client-theme:lang(zh) .ssl-ticket-form .ssl-attachment-input-group .custom-file-label::after,
body.ssl-client-theme[lang*="zh"] .ssl-ticket-form .ssl-attachment-input-group .custom-file-label::after,
html[lang*="zh"] body.ssl-client-theme .ssl-ticket-form .ssl-attachment-input-group .custom-file-label::after {
    content: "选择文件" !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-attachment-input-group .custom-file:hover .custom-file-label::after {
    background-color: #e2e8f0 !important;
    border-color: #94a3b8 !important;
}

/* + Add More Button (Compact, 32px height, 12px font) */
body.ssl-client-theme .ssl-ticket-form .ssl-btn-addmore {
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 10px !important;
    border: 1px solid #cbd1d6 !important;
    border-left: 0 !important;
    border-radius: 0 6px 6px 0 !important;
    background: #f8fafc !important;
    color: var(--ssl-muted) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-btn-addmore:hover {
    background: #e2e8f0 !important;
    color: var(--ssl-ink) !important;
}

/* Attachment Format & Size Hint */
body.ssl-client-theme .ssl-ticket-form .ssl-attachment-hint {
    margin-top: 4px !important;
    font-size: 11px !important;
    color: #94a3b8 !important;
    line-height: 1.4 !important;
}

/* Form Action Buttons (Left-aligned) */
body.ssl-client-theme .ssl-ticket-form .ssl-form-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    margin-top: 24px !important;
    padding-top: 8px !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-btn-cancel,
body.ssl-client-theme #main-body .ssl-ticket-form .ssl-btn-cancel {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 42px !important;
    height: 42px !important;
    padding: 10px 20px !important;
    border: 1px solid #cbd1d6 !important;
    border-radius: 6px !important;
    background: #fff !important;
    color: var(--ssl-ink) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
    transition: background-color .15s ease, border-color .15s ease, color .15s ease !important;
}

body.ssl-client-theme .ssl-ticket-form .ssl-btn-cancel:hover,
body.ssl-client-theme #main-body .ssl-ticket-form .ssl-btn-cancel:hover {
    background: #f1f5f9 !important;
    border-color: #94a3b8 !important;
    color: var(--ssl-ink) !important;
}

/* ==========================================================================
   12SSL Design System: Universal Letter-Spacing Specification
   全局设计规范：标准紧凑字距规范
   1. 全局正文、标题、徽标、表单元素、下拉框、表头等所有文本必须保持标准紧凑字距（letter-spacing: 0 / normal）；
   2. 严禁设置任何非标人为拉大字间距（如 0.2px, .04em, .07em, .08em, .12em 等）；
   3. 在英文全大写或缩写（如 SSL, CSR, SAN, DCV, IP, DNS, HTTP 等）及占位灰字场景下，严禁字距分散，保持字体原本紧实、清晰的排版视觉。
   ========================================================================== */
body.ssl-client-theme,
body.ssl-client-theme h1,
body.ssl-client-theme h2,
body.ssl-client-theme h3,
body.ssl-client-theme h4,
body.ssl-client-theme h5,
body.ssl-client-theme h6,
body.ssl-client-theme p,
body.ssl-client-theme span,
body.ssl-client-theme a,
body.ssl-client-theme label,
body.ssl-client-theme input,
body.ssl-client-theme select,
body.ssl-client-theme textarea,
body.ssl-client-theme button,
body.ssl-client-theme th,
body.ssl-client-theme td,
body.ssl-client-theme .btn,
body.ssl-client-theme .badge,
body.ssl-client-theme .kicker,
body.ssl-client-theme [class*="eyebrow"],
body.ssl-client-theme [class*="kicker"],
body.ssl-client-theme .select2-container,
body.ssl-client-theme .select2-dropdown,
body.ssl-client-theme .select2-selection__rendered,
body.ssl-client-theme .select2-results__option,
body.ssl-client-theme .ssl-custom-select-trigger,
body.ssl-client-theme .ssl-custom-select-option,
body.ssl-client-theme .ssl-custom-select-value {
    letter-spacing: 0 !important;
}
