/* Final clientarea.php dashboard layer. Scoped so other portal pages are untouched. */
body.page-clientareahome #main-body {
    background: #0d1426 !important;
    padding: 34px 0 72px !important;
}
body.page-clientareahome #main-body > .container { max-width: 1180px; }
body.page-clientareahome #main-body > .container > .row > .col-lg-4.col-xl-3 {
    display: none !important;
}
body.page-clientareahome #main-body .primary-content {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    width: 100% !important;
}
body.page-clientareahome .fh-client-dashboard {
    --cd-bg: #0d1426;
    --cd-section: #111a2e;
    --cd-panel: #151f35;
    --cd-hover: #19243b;
    --cd-line: rgba(255,255,255,.10);
    --cd-line-blue: rgba(103,212,255,.28);
    --cd-accent: #67d4ff;
    --cd-accent-hover: #8ee2ff;
    --cd-text: #f3f6f4;
    --cd-copy: #a6b0ac;
    --cd-muted: #7f8b87;
    color: var(--cd-copy) !important;
    margin: 0 auto;
    padding: 0 !important;
}

body.page-clientareahome .fh-client-hero {
    align-items: center !important;
    background: var(--cd-section) !important;
    background-image: none !important;
    border: 1px solid var(--cd-line) !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    display: grid !important;
    gap: 30px !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    padding: 30px 32px !important;
}
body.page-clientareahome .fh-client-hero::before,
body.page-clientareahome .fh-client-hero::after { content: none !important; display: none !important; }
body.page-clientareahome .fh-client-kicker,
body.page-clientareahome .fh-client-section-head > div > span {
    color: var(--cd-accent) !important;
    font-size: .72rem !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
    margin-bottom: 8px !important;
}
body.page-clientareahome .fh-client-hero h2 {
    color: var(--cd-text) !important;
    font-family: inherit !important;
    font-size: clamp(1.85rem,3.5vw,2.8rem) !important;
    font-weight: 700 !important;
    letter-spacing: -.04em !important;
    line-height: 1.08 !important;
    margin: 0 !important;
}
body.page-clientareahome .fh-client-hero h2 em { color: var(--cd-text) !important; font-style: normal !important; }
body.page-clientareahome .fh-client-hero p {
    color: var(--cd-copy) !important;
    font-size: 1rem !important;
    line-height: 1.65 !important;
    margin: 11px 0 0 !important;
    max-width: 680px;
}
body.page-clientareahome .fh-client-actions { display: flex !important; gap: 9px !important; margin-top: 20px !important; }
body.page-clientareahome .fh-client-actions a {
    align-items: center !important;
    border-radius: 7px !important;
    box-shadow: none !important;
    display: inline-flex !important;
    font-size: .9rem !important;
    font-weight: 700 !important;
    gap: 8px !important;
    justify-content: center !important;
    min-height: 42px !important;
    padding: 0 15px !important;
    text-decoration: none !important;
}
body.page-clientareahome .fh-client-action-primary,
body.page-clientareahome .fh-client-action-primary:link,
body.page-clientareahome .fh-client-action-primary:visited {
    background: #19243b !important;
    background-image: none !important;
    border: 1px solid #67d4ff !important;
    color: #f3f6f4 !important;
}
body.page-clientareahome .fh-client-action-primary i { color: #67d4ff !important; }
body.page-clientareahome .fh-client-action-primary:hover,
body.page-clientareahome .fh-client-action-primary:focus {
    background: #202d48 !important;
    border-color: #8ee2ff !important;
    color: #fff !important;
}
body.page-clientareahome .fh-client-action-secondary {
    background: transparent !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    color: #d9deea !important;
}
body.page-clientareahome .fh-client-action-secondary:hover { background: rgba(255,255,255,.055) !important; border-color: var(--cd-line-blue) !important; }
body.page-clientareahome .fh-client-hero-status {
    align-items: center !important;
    background: var(--cd-panel) !important;
    border: 1px solid var(--cd-line) !important;
    border-radius: 9px !important;
    display: flex !important;
    gap: 11px !important;
    min-width: 170px !important;
    padding: 13px 15px !important;
}
body.page-clientareahome .fh-client-signal { background: var(--cd-accent) !important; box-shadow: 0 0 0 5px rgba(103,212,255,.09) !important; }
body.page-clientareahome .fh-client-hero-status small { color: var(--cd-muted) !important; font-size: .72rem !important; }
body.page-clientareahome .fh-client-hero-status strong { color: var(--cd-text) !important; font-size: .9rem !important; }

body.page-clientareahome .fh-client-section-head {
    align-items: end !important;
    display: flex !important;
    justify-content: space-between !important;
    margin: 28px 2px 13px !important;
}
body.page-clientareahome .fh-client-section-head h3 {
    color: var(--cd-text) !important;
    font-family: inherit !important;
    font-size: 1.35rem !important;
    letter-spacing: -.025em !important;
    margin: 0 !important;
}
body.page-clientareahome .fh-client-section-head > small { color: var(--cd-muted) !important; font-size: .85rem !important; }

body.page-clientareahome .fh-client-dashboard .tiles { margin: 0 !important; }
body.page-clientareahome .fh-client-dashboard .tiles > .row {
    display: grid !important;
    gap: 12px !important;
    grid-template-columns: repeat(4,minmax(0,1fr)) !important;
    margin: 0 !important;
}
body.page-clientareahome .fh-client-dashboard .tiles > .row > [class*="col-"] {
    flex: none !important;
    margin: 0 !important;
    max-width: none !important;
    padding: 0 !important;
    width: auto !important;
}
body.page-clientareahome .fh-client-dashboard .tile.tt-single-box {
    align-items: center !important;
    background: var(--cd-panel) !important;
    background-image: none !important;
    border: 1px solid var(--cd-line) !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    display: grid !important;
    gap: 13px !important;
    grid-template-columns: 44px minmax(0,1fr) !important;
    min-height: 100px !important;
    padding: 17px !important;
}
body.page-clientareahome .fh-client-dashboard .tile.tt-single-box:hover { background: var(--cd-hover) !important; border-color: var(--cd-line-blue) !important; transform: none !important; }
body.page-clientareahome .fh-client-dashboard .tile.tt-single-box::after { content: none !important; display: none !important; }
body.page-clientareahome .fh-client-dashboard .tile.tt-single-box > i {
    align-items: center !important;
    background: rgba(103,212,255,.08) !important;
    border: 1px solid rgba(103,212,255,.15) !important;
    border-radius: 8px !important;
    color: var(--cd-accent) !important;
    display: flex !important;
    font-size: 1rem !important;
    height: 44px !important;
    justify-content: center !important;
    margin: 0 !important;
    width: 44px !important;
}
body.page-clientareahome .fh-client-dashboard .tt-box-info .stat { color: var(--cd-text) !important; font-family: inherit !important; font-size: 1.3rem !important; }
body.page-clientareahome .fh-client-dashboard .tt-box-info .title { color: var(--cd-copy) !important; font-size: .78rem !important; letter-spacing: 0 !important; text-transform: none !important; }

body.page-clientareahome .fh-client-addons:empty { display: none !important; }
body.page-clientareahome .fh-client-addons:not(:empty) { display: grid !important; gap: 12px !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important; margin-top: 12px !important; }
body.page-clientareahome .fh-client-addons > div {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    min-width: 0 !important;
    padding: 0 !important;
}

body.page-clientareahome .client-home-cards > .row { margin-left: -6px !important; margin-right: -6px !important; }
body.page-clientareahome .client-home-cards > .row > [class*="col-"] { padding-left: 6px !important; padding-right: 6px !important; }
body.page-clientareahome .client-home-cards .card,
body.page-clientareahome .client-home-cards [class*="card-accent-"],
body.page-clientareahome .fh-client-addons .card,
body.page-clientareahome .fh-client-addons .panel,
body.page-clientareahome .fh-client-addons .mc-promo-login,
body.page-clientareahome .fh-client-addons .mc-promo-manage {
    background: var(--cd-panel) !important;
    background-image: none !important;
    border: 1px solid var(--cd-line) !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    color: var(--cd-copy) !important;
    margin-bottom: 12px !important;
    overflow: hidden !important;
}
body.page-clientareahome .client-home-cards .card-header,
body.page-clientareahome .fh-client-addons .card-header,
body.page-clientareahome .fh-client-addons .panel-heading {
    align-items: center !important;
    background: var(--cd-hover) !important;
    background-image: none !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.09) !important;
    display: flex !important;
    min-height: 55px !important;
    padding: 15px 18px !important;
}
body.page-clientareahome .client-home-cards .card-title,
body.page-clientareahome .client-home-cards .card-title a,
body.page-clientareahome .fh-client-addons .card-title,
body.page-clientareahome .fh-client-addons .panel-title {
    color: var(--cd-text) !important;
    font-family: inherit !important;
    font-size: .95rem !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
}
body.page-clientareahome .client-home-cards .card-title i,
body.page-clientareahome .client-home-cards .list-group-item i,
body.page-clientareahome .fh-client-addons i { color: var(--cd-accent) !important; }
body.page-clientareahome .client-home-cards .card-body,
body.page-clientareahome .fh-client-addons .card-body,
body.page-clientareahome .fh-client-addons .panel-body {
    background: transparent !important;
    color: var(--cd-copy) !important;
    font-size: .9rem !important;
    padding: 17px 18px !important;
}
body.page-clientareahome .client-home-cards .card-body *,
body.page-clientareahome .fh-client-addons .card-body *,
body.page-clientareahome .fh-client-addons .panel-body * { border-color: rgba(255,255,255,.08) !important; }
body.page-clientareahome .client-home-cards .list-group,
body.page-clientareahome .client-home-cards .list-group-item,
body.page-clientareahome .fh-client-addons .list-group,
body.page-clientareahome .fh-client-addons .list-group-item {
    background: var(--cd-panel) !important;
    background-image: none !important;
    border-color: rgba(255,255,255,.08) !important;
    color: #c3cbc7 !important;
    font-size: .86rem !important;
}
body.page-clientareahome .client-home-cards .list-group-item,
body.page-clientareahome .fh-client-addons .list-group-item { padding: 13px 18px !important; }
body.page-clientareahome .client-home-cards a.list-group-item:hover,
body.page-clientareahome .fh-client-addons a.list-group-item:hover { background: var(--cd-hover) !important; color: var(--cd-text) !important; }
body.page-clientareahome .client-home-cards .card-footer,
body.page-clientareahome .fh-client-addons .card-footer,
body.page-clientareahome .fh-client-addons .panel-footer {
    background: var(--cd-section) !important;
    border-top: 1px solid rgba(255,255,255,.09) !important;
    color: var(--cd-muted) !important;
    padding: 13px 18px !important;
}
body.page-clientareahome .client-home-cards a,
body.page-clientareahome .fh-client-addons a { color: var(--cd-accent-hover) !important; }
body.page-clientareahome .client-home-cards .btn,
body.page-clientareahome .fh-client-addons .btn {
    background: transparent !important;
    background-image: none !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 7px !important;
    box-shadow: none !important;
    color: #d9deea !important;
    min-height: 34px !important;
    padding: 6px 10px !important;
}
body.page-clientareahome .client-home-cards .btn:hover,
body.page-clientareahome .fh-client-addons .btn:hover { background: var(--cd-hover) !important; border-color: var(--cd-line-blue) !important; color: #fff !important; }
body.page-clientareahome .client-home-cards .badge,
body.page-clientareahome .fh-client-addons .badge { background: rgba(103,212,255,.10) !important; border: 1px solid rgba(103,212,255,.18) !important; color: var(--cd-accent-hover) !important; }
body.page-clientareahome .client-home-cards table,
body.page-clientareahome .client-home-cards td,
body.page-clientareahome .client-home-cards th { background: transparent !important; border-color: rgba(255,255,255,.08) !important; color: var(--cd-copy) !important; }

@media (max-width: 991.98px) {
    body.page-clientareahome .fh-client-dashboard .tiles > .row { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
    body.page-clientareahome .fh-client-addons:not(:empty) { grid-template-columns: 1fr !important; }
}
@media (max-width: 767.98px) {
    body.page-clientareahome #main-body { padding-top: 22px !important; }
    body.page-clientareahome .fh-client-hero { align-items: start !important; grid-template-columns: 1fr !important; padding: 24px 20px !important; }
    body.page-clientareahome .fh-client-hero-status { min-width: 0 !important; width: 100% !important; }
    body.page-clientareahome .fh-client-section-head { align-items: start !important; flex-direction: column !important; gap: 4px !important; }
}
@media (max-width: 575.98px) {
    body.page-clientareahome .fh-client-dashboard .tiles > .row { grid-template-columns: 1fr !important; }
    body.page-clientareahome .fh-client-actions { align-items: stretch !important; flex-direction: column !important; }
    body.page-clientareahome .fh-client-actions a { width: 100% !important; }
}

/* WHMCS can report a different template name for hooked home panels. These
   selectors anchor to our own dashboard markup, so the activity area always
   wins over card-accent-* and addon CSS loaded by modules. */
.fh-client-dashboard .client-home-cards {
    color: #a6b0ac !important;
    width: 100% !important;
}
.fh-client-dashboard .client-home-cards > .row {
    align-items: start !important;
    display: flex !important;
    margin-left: -6px !important;
    margin-right: -6px !important;
}
.fh-client-dashboard .client-home-cards > .row > [class*="col-"] {
    min-width: 0 !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
}
.fh-client-dashboard .client-home-cards .card,
.fh-client-dashboard .client-home-cards [class*="card-accent-"] {
    background: #151f35 !important;
    background-color: #151f35 !important;
    background-image: none !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-bottom-color: rgba(255,255,255,.10) !important;
    border-left-color: rgba(255,255,255,.10) !important;
    border-right-color: rgba(255,255,255,.10) !important;
    border-top-color: rgba(255,255,255,.10) !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    color: #a6b0ac !important;
    margin-bottom: 12px !important;
    overflow: hidden !important;
}
.fh-client-dashboard .client-home-cards .card::before,
.fh-client-dashboard .client-home-cards .card::after { content: none !important; display: none !important; }
.fh-client-dashboard .client-home-cards .card-header {
    background: #19243b !important;
    background-color: #19243b !important;
    background-image: none !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.09) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #f3f6f4 !important;
    min-height: 55px !important;
    padding: 15px 18px !important;
}
.fh-client-dashboard .client-home-cards .card-title,
.fh-client-dashboard .client-home-cards .card-title a,
.fh-client-dashboard .client-home-cards .card-title span:not(.badge) {
    color: #f3f6f4 !important;
    font-family: inherit !important;
    font-size: .95rem !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1.35 !important;
}
.fh-client-dashboard .client-home-cards .card-title i,
.fh-client-dashboard .client-home-cards .list-group-item i { color: #67d4ff !important; }
.fh-client-dashboard .client-home-cards .card-body {
    background: #151f35 !important;
    background-image: none !important;
    border: 0 !important;
    color: #a6b0ac !important;
    font-size: .9rem !important;
    line-height: 1.55 !important;
    padding: 17px 18px !important;
}
.fh-client-dashboard .client-home-cards .card-body p,
.fh-client-dashboard .client-home-cards .card-body div,
.fh-client-dashboard .client-home-cards .card-body span,
.fh-client-dashboard .client-home-cards .card-body small,
.fh-client-dashboard .client-home-cards .card-body td,
.fh-client-dashboard .client-home-cards .card-body th {
    background-color: transparent !important;
    border-color: rgba(255,255,255,.08) !important;
    color: #a6b0ac !important;
}
.fh-client-dashboard .client-home-cards .list-group {
    background: #151f35 !important;
    border: 0 !important;
    border-radius: 0 !important;
}
.fh-client-dashboard .client-home-cards .list-group-item,
.fh-client-dashboard .client-home-cards a.list-group-item {
    background: #151f35 !important;
    background-image: none !important;
    border-color: rgba(255,255,255,.08) !important;
    color: #c3cbc7 !important;
    font-size: .86rem !important;
    padding: 13px 18px !important;
}
.fh-client-dashboard .client-home-cards a.list-group-item:hover,
.fh-client-dashboard .client-home-cards a.list-group-item:focus,
.fh-client-dashboard .client-home-cards .list-group-item.active {
    background: #19243b !important;
    border-color: rgba(103,212,255,.18) !important;
    color: #f3f6f4 !important;
}
.fh-client-dashboard .client-home-cards .card-footer {
    background: #111a2e !important;
    background-image: none !important;
    border: 0 !important;
    border-top: 1px solid rgba(255,255,255,.09) !important;
    color: #8f9b97 !important;
    padding: 13px 18px !important;
}
.fh-client-dashboard .client-home-cards a:not(.btn) { color: #8ee2ff !important; }
.fh-client-dashboard .client-home-cards .btn,
.fh-client-dashboard .client-home-cards [class*="bg-color-"] {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 7px !important;
    box-shadow: none !important;
    color: #d9deea !important;
    min-height: 32px !important;
    padding: 5px 9px !important;
}
.fh-client-dashboard .client-home-cards .btn:hover {
    background: #202d48 !important;
    border-color: rgba(103,212,255,.35) !important;
    color: #fff !important;
}
.fh-client-dashboard .client-home-cards .badge,
.fh-client-dashboard .client-home-cards [class*="badge-"] {
    background: rgba(103,212,255,.10) !important;
    background-image: none !important;
    border: 1px solid rgba(103,212,255,.18) !important;
    color: #8ee2ff !important;
}
.fh-client-dashboard .client-home-cards table,
.fh-client-dashboard .client-home-cards table.table,
.fh-client-dashboard .client-home-cards table thead,
.fh-client-dashboard .client-home-cards table tbody,
.fh-client-dashboard .client-home-cards table tr,
.fh-client-dashboard .client-home-cards table td,
.fh-client-dashboard .client-home-cards table th {
    background: transparent !important;
    background-image: none !important;
    border-color: rgba(255,255,255,.08) !important;
    color: #a6b0ac !important;
}

@media (max-width: 767.98px) {
    .fh-client-dashboard .client-home-cards > .row { display: block !important; }
    .fh-client-dashboard .client-home-cards > .row > [class*="col-"] { max-width: 100% !important; width: 100% !important; }
}

/* Keep the primary action text dark on its existing light-blue surface. */
.fh-client-dashboard .fh-client-actions .fh-client-action-primary,
.fh-client-dashboard .fh-client-actions .fh-client-action-primary:link,
.fh-client-dashboard .fh-client-actions .fh-client-action-primary:visited,
.fh-client-dashboard .fh-client-actions .fh-client-action-primary:hover,
.fh-client-dashboard .fh-client-actions .fh-client-action-primary:focus {
    color: #07142e !important;
}
.fh-client-dashboard .fh-client-actions .fh-client-action-primary i {
    color: #07142e !important;
}
