/* New content colors; navigation retains the original application colors. */
.svc-page {
    --svc-font: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --bs-body-font-family: var(--svc-font);
    --default-font: var(--svc-font);
    --heading-font: var(--svc-font);
    --nav-font: var(--svc-font);
    color: var(--svc-body-text);
    font-family: var(--svc-font);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}
.svc-page :is(h1, h2, h3, h4, h5, h6, button, input, select, textarea, .nav-link) { font-family: var(--svc-font); }
.svc-page .pagetitle { margin-bottom: 24px; }
.svc-page .pagetitle h1 { display: flex; align-items: center; gap: 12px; font-size: clamp(24px, 3vw, 30px); font-weight: 700; color: var(--svc-ink); margin-bottom: 10px; }
.svc-page .pagetitle .svc-metric-svg { color: var(--svc-accent); }
.svc-page .breadcrumb { margin-bottom: 0; font-size: 12px; color: var(--svc-muted); }
.svc-page .breadcrumb :is(a, .active) { color: var(--svc-muted); }
.svc-page .card-footer { padding: 16px 24px; background: var(--svc-control-background); border-color: var(--svc-border); }
.svc-page .dashboard .card:not(.svc-metric-card):not(.h-100) { height: auto; }
.svc-page .table-responsive { border-radius: 10px; }
.svc-page :is(.table, .datatable-table) { --bs-table-bg: transparent; --bs-table-color: var(--svc-body-text); --bs-table-border-color: var(--svc-border); --bs-table-striped-bg: var(--svc-hover); --bs-table-hover-bg: var(--svc-hover); font-size: 13px; vertical-align: middle; }
.svc-page :is(.table, .datatable-table) > :not(caption) > * > * { padding: 13px 16px; border-color: var(--svc-border); }
.svc-page :is(.table, .datatable-table) > thead > tr > th { background: var(--svc-soft); color: var(--svc-muted); font-size: 12px; font-weight: 650; }
.svc-page .table :is(h5, h6, p) { margin-bottom: 0; }
.svc-page :is(.dt-container, .datatable-wrapper) { color: var(--svc-muted); font-size: 12px; }
.svc-page :is(.dt-container, .datatable-wrapper) :is(input, select) { border: 1px solid var(--svc-control-border); border-radius: 8px; background: var(--svc-control-background); color: var(--svc-ink); padding: 8px 10px; min-height: 38px; }
.svc-page .dt-container .dt-paging .dt-paging-button { border-radius: 8px; }
.svc-page .dt-container .dt-paging .dt-paging-button.current { border-color: var(--svc-active-border); background: var(--svc-soft); color: var(--svc-accent) !important; }
.svc-page :is(.form-control, .input-group-text, .svc-input) { min-height: 44px; border: 1px solid var(--svc-control-border); border-radius: 10px; color: var(--svc-ink); background-color: var(--svc-control-background); font-size: 13px; }
.svc-page :is(.form-control, .svc-input) { padding: 10px 13px; }
.svc-page :is(.form-control, .form-select, .svc-input):focus { border-color: var(--svc-accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--svc-accent) 14%, transparent); }
.svc-page :is(.form-control, .form-select):disabled { background: #e9ecef; color: var(--svc-muted); }
.svc-page .form-control.is-invalid { border-color: #dc3545; }
.svc-page .form-control.is-valid { border-color: #198754; }
.svc-page :is(.form-label, .col-form-label) { color: var(--svc-muted); font-size: 12px; font-weight: 600; letter-spacing: 0; }
.svc-page .form-check-input:checked { background-color: var(--svc-accent); border-color: var(--svc-accent); }
.svc-page .form-text { color: var(--svc-muted); font-size: 12px; }
.svc-page .input-group > :is(.form-control, .form-select) { border-radius: 0; }
.svc-page .input-group > :first-child { border-radius: 10px 0 0 10px; }
.svc-page .input-group > :last-child { border-radius: 0 10px 10px 0; }
.svc-page :is(.btn, .svc-button) { --bs-btn-border-radius: 10px; font-size: 13px; font-weight: 600; padding: 10px 15px; line-height: 1.5; }
.svc-page .svc-button { border-radius: 10px; }
.svc-page :is(main, .modal, .auth-card) .btn-primary {
    --bs-btn-bg: var(--svc-accent);
    --bs-btn-border-color: var(--svc-accent);
    --bs-btn-hover-bg: #126675;
    --bs-btn-hover-border-color: #126675;
    --bs-btn-active-bg: #126675;
    --bs-btn-active-border-color: #126675;
    --bs-btn-disabled-bg: var(--svc-accent);
    --bs-btn-disabled-border-color: var(--svc-accent);
    background-color: var(--svc-accent);
    border-color: var(--svc-accent);
    color: #fff;
}
.svc-page :is(main, .modal, .auth-card) .btn-primary:is(:hover, :active, .active) { background-color: #126675; border-color: #126675; }
.svc-page :is(main, .modal, .auth-card) .btn-outline-primary { --bs-btn-color: var(--svc-accent); --bs-btn-border-color: var(--svc-accent); color: var(--svc-accent); border-color: var(--svc-accent); }
.svc-page :is(main, .modal, .auth-card) .btn-outline-primary:is(:hover, :active, .active) { color: #fff; background-color: var(--svc-accent); border-color: var(--svc-accent); }
.svc-page :is(main, .modal, .auth-card) .text-primary { color: var(--svc-accent) !important; }
.svc-page .svc-button-primary { background: var(--svc-accent); border-color: var(--svc-accent); color: #fff; }
.svc-page .btn-sm { padding: 6px 10px; font-size: 12px; border-radius: 8px; }
.svc-page .btn-group > .btn:not(:first-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; }
.svc-page .btn-group > .btn:not(:last-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.svc-page .btn-getstarted { border-radius: 10px; padding: 10px 18px; font-weight: 600; }
.svc-page :is(.nav-tabs, .nav-pills) { gap: 6px; border-color: var(--svc-border); }
.svc-page :is(.nav-tabs, .nav-pills) .nav-link { color: var(--svc-muted); border-radius: 10px; font-size: 13px; font-weight: 600; padding: 10px 14px; }
.svc-page :is(.nav-tabs, .nav-pills) .nav-link.active { color: var(--svc-accent); background: var(--svc-soft); border-color: var(--svc-active-border); }
.svc-page .modal-content { border: 1px solid var(--svc-border); border-radius: 18px; box-shadow: 0 16px 60px rgb(var(--svc-shadow-rgb) / 16%); overflow: hidden; }
.svc-page :is(.modal-header, .modal-footer) { padding: 18px 24px; border-color: var(--svc-border); }
.svc-page .modal-body { padding: 24px; }
.svc-page .modal-title { color: var(--svc-ink); font-size: 18px; font-weight: 700; }
.svc-page .list-group-item { padding: 14px 18px; border-color: var(--svc-border); color: var(--svc-ink); }
.svc-page .accordion-item { border-color: var(--svc-border); }
.svc-page .accordion-button:not(.collapsed) { color: var(--svc-accent); background: var(--svc-soft); }
.svc-page .pagination .page-link { color: var(--svc-accent); border-color: var(--svc-border); }
.svc-page .pagination .active > .page-link { color: #fff; background: var(--svc-accent); border-color: var(--svc-accent); }
.svc-page .sidebar { border-right: 1px solid var(--svc-border); box-shadow: none; }
.svc-page .sidebar-nav .nav-link { color: var(--svc-accent); background: var(--svc-soft); border-radius: 10px; font-size: 13px; }
.svc-page .sidebar-nav .nav-link.collapsed { color: var(--svc-ink); background: transparent; }
.svc-page .sidebar-nav .nav-link:hover { color: var(--svc-accent); background: var(--svc-hover); }
.svc-page .sidebar-nav :is(.nav-link i, .nav-content a.active) { color: var(--svc-accent); }
.svc-page .sidebar-nav .nav-link.collapsed i { color: var(--svc-muted); }
.svc-page .sidebar-nav .nav-heading { color: var(--svc-muted); font-size: 11px; letter-spacing: .07em; }
.svc-page .header .search-form input { border-radius: 10px; border-color: var(--svc-border); }
.svc-page .auth-card { border: 1px solid var(--svc-border); border-radius: 18px; box-shadow: 0 4px 18px rgb(var(--svc-shadow-rgb) / 4%); background: #fff; }
.svc-page .svc-button-primary:hover { background: #126675; border-color: #126675; }
.svc-page .svc-button-secondary { border: 1px solid var(--svc-control-border); background: var(--svc-control-background); color: var(--svc-ink); border-radius: 10px; }
.svc-page :is(.btn, .svc-button, .nav-link, .page-link):focus-visible { outline: 3px solid var(--svc-accent); outline-offset: 3px; }

/* Readable cards and data tables on the signed-in pages. */
.svc-sidebar-page #main { font-size: 14px; }
.svc-sidebar-page #main .card { min-width: 0; background: #fff; }
.svc-sidebar-page #main .card > .container-fluid { padding: 24px !important; }
.svc-sidebar-page #main .card-title { font-size: 18px; line-height: 1.45; overflow-wrap: anywhere; }
.svc-sidebar-page #main .card-title > span {
    display: inline-block;
    margin: 4px 0 4px 6px;
    padding: 3px 9px;
    border-radius: 6px;
    background: var(--svc-soft);
    color: #49636a;
    font-size: 12px;
    line-height: 1.5;
    vertical-align: middle;
}
.svc-sidebar-page #main .card:has(.svc-filter-toggle) .card-title > span[class*="selected-filter"] { display: none; }
.svc-sidebar-page #main .svc-card-description { margin: -10px 0 20px; color: #526b72; font-size: 14px; line-height: 1.6; }
.svc-sidebar-page #main .card-header { background: #fbfdfc; }
.svc-sidebar-page #main .card-header :is(h5, h6) { font-size: 17px; }
.svc-sidebar-page #main .svc-metric-label { min-height: auto; color: #49636a; font-size: 14px; }
.svc-sidebar-page #main .svc-metric-value { font-size: clamp(28px, 2.5vw, 36px); line-height: 1.2; }
.svc-sidebar-page #main .svc-metric-note { font-size: 13px; color: #526b72; }
.svc-sidebar-page #main .svc-metric-card .card-body { gap: 16px; }
.svc-sidebar-page #main .filter:empty { display: none; }
.svc-sidebar-page #main .card > .filter { position: static; padding: 16px 24px 0; text-align: right; }
.svc-sidebar-page #main .card > .filter + .card-body { padding-top: 12px; }
.svc-sidebar-page #main .card > .filter:empty + .card-body { padding-top: 24px; }
.svc-sidebar-page #main .card :is(.filter .icon, .card-body > .d-flex > .icon):not(.svc-filter-toggle) {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    border: 1px solid var(--svc-border);
    border-radius: 9px;
    background: var(--svc-control-background);
    color: var(--svc-accent);
    text-decoration: none;
}
.svc-sidebar-page #main .card .d-flex:has(> .tab-link) { gap: 8px !important; padding-bottom: 16px; border-bottom: 1px solid var(--svc-border); }
.svc-sidebar-page #main .card-title.tab-link {
    display: inline-flex;
    align-items: center;
    margin: 0;
    padding: 10px 14px;
    border: 1px solid transparent;
    border-radius: 9px;
    color: #526b72;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
}
.svc-sidebar-page #main .tab-link.active { border-color: #bedbd6; background: var(--svc-soft); color: #126675; }
.svc-sidebar-page #main .tab-link:hover { background: var(--svc-hover); color: var(--svc-ink); }
.svc-sidebar-page #main :is(.tab-link, .svc-table-scroll):focus-visible { outline: 3px solid var(--svc-accent); outline-offset: 3px; }
.svc-sidebar-page #main :is(.table, .datatable-table) {
    --bs-table-color: var(--svc-ink);
    --bs-table-striped-bg: #f7faf9;
    --bs-table-hover-bg: #edf6f4;
    width: 100%;
    margin-bottom: 0;
    font-size: 14px;
    line-height: 1.6;
    border-collapse: separate;
    border-spacing: 0;
}
.svc-sidebar-page #main :is(.table, .datatable-table) > :not(caption) > * > * {
    padding: 15px 16px;
    vertical-align: middle;
    border-bottom: 1px solid var(--svc-border);
}
.svc-sidebar-page #main :is(.table, .datatable-table) > thead > tr > th {
    padding-top: 14px;
    padding-bottom: 14px;
    background: #edf3f2;
    color: #3f5961;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.5;
    text-align: left;
}
.svc-sidebar-page #main :is(.table, .datatable-table) tbody > tr:hover > * { background-color: var(--svc-hover); }
.svc-sidebar-page #main :is(.table, .datatable-table) tbody > tr:last-child > * { border-bottom: 0; }
.svc-sidebar-page #main .svc-data-table .svc-cell-text { min-width: 150px; max-width: 320px; overflow-wrap: anywhere; text-align: left !important; }
.svc-sidebar-page #main .svc-data-table .svc-cell-number { white-space: nowrap; font-variant-numeric: tabular-nums; text-align: right !important; }
.svc-sidebar-page #main .svc-data-table .svc-cell-id { min-width: 90px; max-width: 150px; overflow-wrap: anywhere; text-align: left !important; }
.svc-sidebar-page #main .svc-data-table tbody .svc-cell-id { color: #526b72; font-size: 13px; font-variant-numeric: tabular-nums; }
.svc-sidebar-page #main .svc-data-table .svc-cell-date { min-width: 130px; text-align: left !important; }
.svc-sidebar-page #main .svc-data-table :is(.svc-cell-status, .svc-cell-action, .svc-cell-image) { white-space: nowrap; text-align: left !important; }
.svc-sidebar-page #main .svc-data-table .svc-cell-action .btn { margin: 3px 2px; }
.svc-sidebar-page #main .svc-data-table .svc-cell-action .btn:first-child { margin-left: 0; }
.svc-sidebar-page #main .svc-data-table :is(th, td) img { width: 52px !important; height: 52px !important; max-width: none; object-fit: cover; border: 1px solid var(--svc-border); border-radius: 9px; }
.svc-sidebar-page #main :is(.table, .datatable-table) :is(h5, h6) { font-size: 14px; line-height: 1.6; }
.svc-sidebar-page #main :is(.table, .datatable-table) small { font-size: 12px; line-height: 1.6; }
.svc-sidebar-page #main :is(.table, .datatable-table) td[colspan] { padding: 32px 20px; color: #526b72; text-align: center !important; white-space: normal; }
.svc-sidebar-page #main .table-responsive { border: 1px solid var(--svc-border); border-radius: 12px; }
.svc-sidebar-page #main .svc-table-scroll { max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: thin; scrollbar-color: #a4beb9 #f1f6f4; }
.svc-sidebar-page #main .svc-table-scroll-hint { margin: 0 0 10px; color: #526b72; font-size: 12px; }
.svc-sidebar-page #main .card .badge {
    padding: 6px 10px;
    border: 1px solid transparent;
    border-radius: 7px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.4;
    white-space: nowrap;
}
.svc-sidebar-page #main .card .badge:is(.bg-success, .text-bg-success) { background: #e7f4ec !important; color: #19603b !important; border-color: #c8e6d3; }
.svc-sidebar-page #main .card .badge:is(.bg-warning, .text-bg-warning) { background: #fff4db !important; color: #80520e !important; border-color: #f1dca5; }
.svc-sidebar-page #main .card .badge:is(.bg-danger, .text-bg-danger) { background: #fcebed !important; color: #a32b38 !important; border-color: #f0cbd0; }
.svc-sidebar-page #main .card .badge:is(.bg-info, .text-bg-info, .bg-primary, .text-bg-primary) { background: #e7f2f6 !important; color: #1a6177 !important; border-color: #c7e1eb; }
.svc-sidebar-page #main .card .badge:is(.bg-secondary, .text-bg-secondary) { background: #eef1f3 !important; color: #4d606b !important; border-color: #d9e1e5; }
.svc-sidebar-page #main :is(.dt-container, .datatable-wrapper) { min-width: 0; color: #526b72; font-size: 13px; }
.svc-sidebar-page #main .table-responsive:has(> :is(.dt-container, .dataTables_wrapper)) { border: 0; border-radius: 0; overflow: visible; }
.svc-sidebar-page #main :is(.dt-layout-cell, .dt-layout-table) { min-width: 0; }
.svc-sidebar-page #main :is(.dt-layout-row, .datatable-top, .datatable-bottom) { gap: 12px; padding: 12px 0; }
.svc-sidebar-page #main .dt-layout-row:first-child { margin-top: 0; padding-top: 0; }
.svc-sidebar-page #main :is(.datatable-top, .datatable-bottom) { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; }
.svc-sidebar-page #main :is(.dt-container, .datatable-wrapper) :is(input, select) { font-size: 14px; min-height: 40px; }
.svc-sidebar-page #main :is(.dt-search, .datatable-search) input { max-width: 100%; }
.svc-sidebar-page #main :is(.dt-info, .datatable-info) { font-size: 13px; }
.svc-sidebar-page #main .datatable-pagination :is(a, button) { border-radius: 7px; font-size: 13px; color: var(--svc-accent); }
.svc-sidebar-page #main .datatable-pagination .datatable-active :is(a, button) { background: var(--svc-soft); color: #126675; }
@media (max-width: 767px) {
    .svc-sidebar-page #main .card > .container-fluid { padding: 18px !important; }
    .svc-sidebar-page #main .card-title { font-size: 17px; }
    .svc-sidebar-page #main .card > .filter { padding: 14px 18px 0; }
    .svc-sidebar-page #main .card-body > .d-flex { flex-wrap: wrap; gap: 12px; }
    .svc-sidebar-page #main .card .d-flex:has(> .card-title) { flex-wrap: wrap; gap: 12px; }
    .svc-sidebar-page #main .card .d-flex > .card-title { flex: 1 1 180px; }
    .svc-sidebar-page #main .card .d-flex > .tab-link { flex: 0 1 auto; }
    .svc-sidebar-page #main .svc-data-table { font-size: 13px; }
    .svc-sidebar-page #main .svc-data-table > :not(caption) > * > * { padding: 13px 12px; }
    .svc-sidebar-page #main :is(.dt-layout-row, .datatable-top, .datatable-bottom) { flex-wrap: wrap; }
}
@media (max-width: 767px) {
    .svc-page :is(.modal-header, .modal-body, .modal-footer, .card-footer) { padding: 18px; }
    .svc-page .pagetitle { margin-bottom: 18px; }
    .svc-page .card-body > .d-flex.justify-content-between { flex-wrap: wrap; gap: 12px; }
    .svc-page .dt-layout-row { gap: 12px; }
    .svc-page .header .logo img { max-height: 32px; }
    .svc-page .header .logo .fw-bold { font-size: 16px !important; line-height: 1.2 !important; white-space: nowrap; }
    .svc-page .header .logo .fw-semibold { font-size: 12px !important; }
    .svc-page .header .toggle-sidebar-btn { font-size: 26px; margin-left: 8px; }
    .svc-page .header-nav .nav-icon { font-size: 21px; margin-right: 12px; }
    .svc-page .header-nav .nav-profile img { width: 32px; height: 32px; max-height: 32px; object-fit: cover; }
}
