:root {
    --legal365-navy: #eaf1f8;
    --legal365-navy-soft: #dce7f2;
    --legal365-ink: #223247;
    --legal365-muted: #708095;
    --legal365-line: rgba(34, 50, 71, 0.11);
    --legal365-surface: rgba(255, 255, 255, 0.96);
    --legal365-surface-strong: #ffffff;
    --legal365-accent: #c7a15f;
    --legal365-accent-soft: rgba(199, 161, 95, 0.14);
    --legal365-primary: #355a83;
    --legal365-primary-strong: #1f3f64;
    --legal365-success: #1f7a52;
    --legal365-warning: #b67a12;
    --legal365-danger: #a63d40;
    --legal365-shadow: 0 24px 48px rgba(24, 39, 61, 0.07);
}

body.master365-layout.legal365theme {
    background:
        radial-gradient(circle at top left, rgba(199, 161, 95, 0.12), transparent 30%),
        radial-gradient(circle at top right, rgba(83, 122, 167, 0.08), transparent 32%),
        linear-gradient(180deg, #fcfdff 0%, #f5f8fc 46%, #eef3f8 100%);
    color: var(--legal365-ink);
}

body.master365-layout.legal365theme .master365-shell,
body.master365-layout.legal365theme .master365-page-wrapper,
body.master365-layout.legal365theme .page-body {
    background: transparent;
}

body.master365-layout.legal365theme .master365-topbar {
    position: sticky;
    top: 0;
    z-index: 1040;
    background: rgba(255, 255, 255, 0.88);
    border-bottom: 1px solid rgba(34, 50, 71, 0.07);
    backdrop-filter: blur(16px);
    box-shadow: 0 8px 24px rgba(24, 39, 61, 0.04);
}

body.master365-layout.legal365theme .master365-topbar__inner {
    min-height: 4.5rem;
}

body.master365-layout.legal365theme .master365-sidebar {
    background:
        radial-gradient(circle at top, rgba(199, 161, 95, 0.13), transparent 24%),
        linear-gradient(180deg, rgba(252, 253, 255, 0.98) 0%, rgba(244, 248, 252, 0.98) 52%, rgba(238, 243, 248, 0.98) 100%);
    border-right: 1px solid rgba(34, 50, 71, 0.08);
    box-shadow: 16px 0 36px rgba(24, 39, 61, 0.06);
}

body.master365-layout.legal365theme .master365-sidebar .nav-link.disabled {
    color: rgba(34, 50, 71, 0.48) !important;
    letter-spacing: 0.08em;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link {
    border-radius: 16px;
    color: rgba(34, 50, 71, 0.82);
    margin: 0.18rem 0;
    transition: all 0.2s ease;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link:hover,
body.master365-layout.legal365theme .master365-sidebar .nav-link.active {
    background: linear-gradient(135deg, rgba(83, 122, 167, 0.1), rgba(255, 255, 255, 0.92));
    color: var(--legal365-primary-strong);
    transform: translateX(2px);
}

body.master365-layout.legal365theme .master365-sidebar .nav-link.active {
    box-shadow: inset 0 0 0 1px rgba(83, 122, 167, 0.14), 0 10px 24px rgba(24, 39, 61, 0.05);
}

body.master365-layout.legal365theme .master365-brand-logo {
    filter: drop-shadow(0 8px 16px rgba(24, 39, 61, 0.1));
}

body.master365-layout.legal365theme .master365-tenant-switcher__trigger,
body.master365-layout.legal365theme .master365-tenant-switcher__single {
    width: 100%;
    border: 1px solid rgba(34, 50, 71, 0.08);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.86);
    color: var(--legal365-primary-strong);
    padding: 0.85rem 0.95rem;
    box-shadow: 0 10px 20px rgba(24, 39, 61, 0.04);
}

body.master365-layout.legal365theme .master365-tenant-switcher__slug,
body.master365-layout.legal365theme .master365-tenant-switcher__item-slug,
body.master365-layout.legal365theme .master365-sidebar .text-muted,
body.master365-layout.legal365theme .master365-sidebar .text-secondary {
    color: rgba(34, 50, 71, 0.58) !important;
}

body.master365-layout.legal365theme .master365-tenant-switcher__icon {
    background: rgba(83, 122, 167, 0.1);
    color: var(--legal365-primary);
}

body.master365-layout.legal365theme .master365-tenant-switcher__name {
    color: var(--legal365-primary-strong);
}

body.master365-layout.legal365theme .master365-tenant-switcher__menu.dropdown-menu-dark {
    background: rgba(255, 255, 255, 0.98);
    border: 1px solid rgba(34, 50, 71, 0.08);
    box-shadow: 0 18px 34px rgba(24, 39, 61, 0.08);
}

body.master365-layout.legal365theme .master365-tenant-switcher__menu .dropdown-item {
    color: var(--legal365-primary-strong);
}

body.master365-layout.legal365theme .master365-tenant-switcher__menu .dropdown-item:hover,
body.master365-layout.legal365theme .master365-tenant-switcher__menu .dropdown-item.active {
    background: rgba(83, 122, 167, 0.08);
    color: var(--legal365-primary-strong);
}

body.master365-layout.legal365theme .master365-error-count-pill {
    background: rgba(199, 161, 95, 0.18);
    color: #8e6724;
}

body.master365-layout.legal365theme .page-header {
    margin-top: 1.25rem;
}

body.master365-layout.legal365theme .page-title {
    color: var(--legal365-primary-strong);
    font-weight: 700;
    letter-spacing: -0.03em;
}

body.master365-layout.legal365theme .page-pretitle,
body.master365-layout.legal365theme .text-secondary {
    color: var(--legal365-muted) !important;
}

body.master365-layout.legal365theme .card,
body.master365-layout.legal365theme .modal-content {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.92));
    border: 1px solid rgba(21, 37, 61, 0.07);
    border-radius: 24px;
    box-shadow: var(--legal365-shadow);
}

body.master365-layout.legal365theme .card-header,
body.master365-layout.legal365theme .card-footer {
    border-color: rgba(21, 37, 61, 0.07);
    background: transparent;
}

body.master365-layout.legal365theme .card-title {
    color: var(--legal365-primary-strong);
    font-weight: 700;
}

body.master365-layout.legal365theme .btn {
    border-radius: 14px;
    font-weight: 600;
}

body.master365-layout.legal365theme .btn-primary {
    background: linear-gradient(135deg, #466f99 0%, var(--legal365-primary-strong) 100%);
    border-color: rgba(31, 63, 100, 0.95);
}

body.master365-layout.legal365theme .btn-primary:hover,
body.master365-layout.legal365theme .btn-primary:focus {
    background: linear-gradient(135deg, #3d638a 0%, #1a3555 100%);
    border-color: #1a3555;
}

body.master365-layout.legal365theme .btn-outline-primary {
    border-color: rgba(30, 58, 95, 0.22);
    color: var(--legal365-primary);
}

body.master365-layout.legal365theme .btn-outline-primary:hover,
body.master365-layout.legal365theme .btn-outline-primary:focus {
    background: rgba(30, 58, 95, 0.08);
    border-color: rgba(30, 58, 95, 0.3);
    color: var(--legal365-primary-strong);
}

body.master365-layout.legal365theme .form-control,
body.master365-layout.legal365theme .form-select {
    border-radius: 16px;
    border-color: rgba(21, 37, 61, 0.12);
    background: rgba(255, 255, 255, 0.88);
}

body.master365-layout.legal365theme .form-control:focus,
body.master365-layout.legal365theme .form-select:focus {
    border-color: rgba(30, 58, 95, 0.28);
    box-shadow: 0 0 0 0.25rem rgba(30, 58, 95, 0.1);
}

body.master365-layout.legal365theme .alert {
    border: 1px solid rgba(21, 37, 61, 0.08);
    border-radius: 18px;
}

body.master365-layout.legal365theme .table {
    --tblr-table-border-color: rgba(21, 37, 61, 0.07);
}

body.master365-layout.legal365theme .table thead th {
    color: var(--legal365-muted);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

body.master365-layout.legal365theme .table td,
body.master365-layout.legal365theme .table th {
    vertical-align: middle;
}

body.master365-layout.legal365theme .list-group-item {
    border-color: rgba(21, 37, 61, 0.07);
}

body.master365-layout.legal365theme .badge {
    border-radius: 999px;
    font-weight: 700;
}

body.master365-layout.legal365theme .pagination .page-link {
    border-radius: 12px;
    margin: 0 0.12rem;
    border-color: rgba(21, 37, 61, 0.1);
}

.legal365theme-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(220px, 0.85fr);
    gap: 2rem;
    align-items: center;
    padding: 2rem;
    margin-bottom: 1.5rem;
    border-radius: 30px;
    background:
        radial-gradient(circle at top right, rgba(199, 161, 95, 0.14), transparent 28%),
        radial-gradient(circle at bottom left, rgba(83, 122, 167, 0.08), transparent 34%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(247, 250, 253, 0.98) 54%, rgba(239, 245, 251, 0.98) 100%);
    color: var(--legal365-primary-strong);
    border: 1px solid rgba(34, 50, 71, 0.08);
    box-shadow: 0 24px 48px rgba(24, 39, 61, 0.07);
}

.legal365theme-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-bottom: 0.75rem;
    padding: 0.4rem 0.72rem;
    border-radius: 999px;
    background: rgba(83, 122, 167, 0.08);
    color: var(--legal365-primary);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.legal365theme-hero__title {
    margin: 0;
    color: var(--legal365-primary-strong);
    font-size: clamp(1.8rem, 2.4vw, 2.7rem);
    font-weight: 800;
    letter-spacing: -0.04em;
}

.legal365theme-hero__description {
    max-width: 62ch;
    margin: 0.9rem 0 0;
    color: var(--legal365-muted);
    font-size: 1rem;
    line-height: 1.7;
}

.legal365theme-hero__meta,
.legal365theme-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1.25rem;
}

.legal365theme-hero__meta-item {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.65rem 0.85rem;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(34, 50, 71, 0.07);
    color: var(--legal365-muted);
}

.legal365theme-hero__meta-item strong {
    color: var(--legal365-primary-strong);
}

.legal365theme-hero__art {
    display: flex;
    justify-content: center;
}

.legal365theme-hero__art img {
    width: min(100%, 300px);
    height: auto;
    filter: drop-shadow(0 16px 24px rgba(36, 56, 82, 0.16));
}

.legal365theme-hero--compact {
    grid-template-columns: minmax(0, 1.65fr) minmax(120px, 0.35fr);
    gap: 1.1rem;
    padding: 1.35rem 1.5rem;
    border-radius: 24px;
}

.legal365theme-hero--compact .legal365theme-hero__eyebrow {
    margin-bottom: 0.55rem;
    padding: 0.32rem 0.62rem;
}

.legal365theme-hero--compact .legal365theme-hero__title {
    font-size: clamp(1.35rem, 1.8vw, 2rem);
    letter-spacing: -0.03em;
}

.legal365theme-hero--compact .legal365theme-hero__description {
    margin-top: 0.5rem;
    max-width: 56ch;
    font-size: 0.94rem;
    line-height: 1.6;
}

.legal365theme-hero--compact .legal365theme-hero__actions {
    margin-top: 0.9rem;
    gap: 0.55rem;
}

.legal365theme-hero--compact .legal365theme-hero__art {
    justify-content: flex-end;
}

.legal365theme-hero--compact .legal365theme-hero__art img {
    width: min(100%, 150px);
}

.legal365theme-state-card {
    display: grid;
    grid-template-columns: minmax(0, 160px) minmax(0, 1fr);
    gap: 1.35rem;
    align-items: center;
    padding: 1.5rem;
    border: 1px solid rgba(21, 37, 61, 0.08);
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(246, 249, 252, 0.94));
}

.legal365theme-state-card__art img {
    width: 100%;
    max-width: 150px;
    height: auto;
}

.legal365theme-state-card__badge {
    display: inline-flex;
    margin-bottom: 0.6rem;
    padding: 0.3rem 0.7rem;
    border-radius: 999px;
    background: var(--legal365-accent-soft);
    color: var(--legal365-primary);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.legal365theme-state-card__title {
    margin: 0;
    color: var(--legal365-primary-strong);
    font-size: 1.2rem;
    font-weight: 700;
}

.legal365theme-state-card__description {
    margin: 0.55rem 0 0;
    color: var(--legal365-muted);
    line-height: 1.7;
}

.legal365theme-state-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1rem;
}

.legal365theme-surface-panel {
    padding: 1.25rem;
    border-radius: 22px;
    background: rgba(248, 250, 252, 0.8);
    border: 1px solid rgba(21, 37, 61, 0.08);
}

.legal365theme-filter-grid {
    display: grid;
    gap: 1rem;
}

.legal365theme-metric-card {
    position: relative;
    overflow: hidden;
}

.legal365theme-metric-card::after {
    content: "";
    position: absolute;
    inset: auto -24px -34px auto;
    width: 120px;
    height: 120px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(199, 161, 95, 0.22), transparent 70%);
}

.legal365theme-empty-state {
    padding: 1.5rem;
}

.legal365theme-office-tabs {
    gap: 0.5rem;
    border-bottom: 0;
    margin-bottom: 1rem;
}

.legal365theme-office-tabs .nav-link {
    border: 1px solid rgba(21, 37, 61, 0.08);
    border-radius: 16px;
    background: rgba(248, 250, 252, 0.85);
    color: var(--legal365-primary);
    font-weight: 600;
    box-shadow: 0 10px 24px rgba(17, 31, 52, 0.05);
}

.legal365theme-office-tabs .nav-link:hover,
.legal365theme-office-tabs .nav-link.active {
    border-color: rgba(30, 58, 95, 0.16);
    background: linear-gradient(135deg, rgba(83, 122, 167, 0.1), rgba(255, 255, 255, 0.94));
    color: var(--legal365-primary-strong);
}

.payment-toggle-minus {
    display: none;
}

.accordion-button[aria-expanded="true"] .payment-toggle-plus {
    display: none;
}

.accordion-button[aria-expanded="true"] .payment-toggle-minus {
    display: inline-block;
}

.tab-status {
    width: 18px;
    height: 18px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
}

.tab-status.complete {
    background: #2fb344;
    color: #fff;
}

.tab-status.incomplete {
    background: #f59f00;
    color: transparent;
}

.tab-status.neutral {
    background: #c8d0d9;
    color: transparent;
}

.legal365theme-subscription-hero {
    border: 0;
    background:
        radial-gradient(1200px 320px at -10% -40%, rgba(199, 161, 95, 0.18), transparent 60%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.98) 0%, rgba(244, 248, 252, 0.98) 52%, rgba(233, 241, 248, 0.98) 100%);
    color: var(--legal365-primary-strong);
    border: 1px solid rgba(34, 50, 71, 0.08);
    box-shadow: 0 18px 36px rgba(24, 39, 61, 0.07);
}

.legal365theme-subscription-hero .text-muted-soft {
    color: var(--legal365-muted);
}

.legal365theme-subscription-kpi {
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
}

.legal365theme-subscription-kpi-icon {
    width: 2.2rem;
    height: 2.2rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(32, 107, 196, 0.12);
    color: #206bc4;
}

.legal365theme-subscription-ring {
    --value: 0;
    width: 86px;
    height: 86px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: conic-gradient(#206bc4 calc(var(--value) * 1%), #e9ecef 0);
}

.legal365theme-subscription-ring > span {
    width: 66px;
    height: 66px;
    border-radius: 50%;
    background: #fff;
    color: #1f2937;
    font-weight: 700;
    font-size: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    line-height: 1.1;
}

.legal365theme-subscription-surface {
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05);
}

.legal365theme-report-card-value {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
}

.legal365theme-report-filter-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.75rem;
}

.legal365theme-referral-benefit {
    border: 1px solid rgba(21, 37, 61, 0.08);
    border-radius: 16px;
    padding: 0.8rem 1rem;
    background: rgba(248, 250, 252, 0.78);
}

.legal365theme-onboarding-brief {
    border: 1px solid rgba(21, 37, 61, 0.08);
    background:
        radial-gradient(circle at top right, rgba(185, 154, 98, 0.12), transparent 28%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 253, 0.97));
}

.legal365theme-onboarding-brief-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.9rem;
}

.legal365theme-onboarding-brief-item {
    display: flex;
    gap: 0.85rem;
    align-items: flex-start;
    padding: 0.95rem 1rem;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(21, 37, 61, 0.07);
}

.legal365theme-onboarding-brief-item > span {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(23, 58, 99, 0.08);
    color: var(--legal365-primary);
    font-size: 1.05rem;
    flex-shrink: 0;
}

.legal365theme-onboarding-brief-item strong {
    display: block;
    color: var(--legal365-primary-strong);
    margin-bottom: 0.15rem;
}

.legal365theme-onboarding-brief-item div:last-child {
    color: var(--legal365-muted);
    font-size: 0.88rem;
    line-height: 1.55;
}

.legal365theme-onboarding-shell {
    display: grid;
    grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
    gap: 1.5rem;
    align-items: start;
}

.legal365theme-onboarding-sidebar {
    position: sticky;
    top: 5.75rem;
}

.legal365theme-onboarding-summary {
    padding: 1.4rem;
    border-radius: 28px;
    background:
        radial-gradient(circle at top right, rgba(199, 161, 95, 0.14), transparent 34%),
        linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(245, 249, 253, 0.98));
    color: var(--legal365-primary-strong);
    border: 1px solid rgba(34, 50, 71, 0.08);
    box-shadow: 0 20px 40px rgba(24, 39, 61, 0.06);
}

.legal365theme-onboarding-status {
    display: inline-flex;
    align-items: center;
    padding: 0.38rem 0.7rem;
    border-radius: 999px;
    background: rgba(23, 58, 99, 0.08);
    color: var(--legal365-primary);
    font-size: 0.75rem;
    font-weight: 700;
}

.legal365theme-onboarding-summary img {
    width: min(100%, 180px);
    height: auto;
    display: block;
    margin: 1rem auto 0;
    filter: drop-shadow(0 16px 24px rgba(36, 56, 82, 0.14));
}

.legal365theme-onboarding-progress {
    height: 10px;
    border-radius: 999px;
    background: rgba(53, 90, 131, 0.09);
    overflow: hidden;
}

.legal365theme-onboarding-progress > span {
    display: block;
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg, #c7a15f 0%, #f1d39b 100%);
}

.legal365theme-onboarding-step-list {
    display: grid;
    gap: 0.85rem;
    margin-top: 1rem;
}

.legal365theme-onboarding-step {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 0.9rem;
    align-items: center;
    padding: 1rem 1.05rem;
    border-radius: 20px;
    border: 1px solid rgba(21, 37, 61, 0.08);
    background: rgba(255, 255, 255, 0.9);
    color: var(--legal365-primary-strong);
    text-decoration: none;
    box-shadow: 0 14px 28px rgba(17, 31, 52, 0.05);
}

.legal365theme-onboarding-step:hover {
    color: var(--legal365-primary-strong);
    border-color: rgba(30, 58, 95, 0.18);
    transform: translateY(-1px);
}

.legal365theme-onboarding-step.is-active {
    border-color: rgba(199, 161, 95, 0.34);
    background: linear-gradient(180deg, rgba(255, 251, 243, 0.96), rgba(255, 255, 255, 0.95));
}

.legal365theme-onboarding-step.is-complete {
    background: linear-gradient(180deg, rgba(241, 250, 245, 0.96), rgba(255, 255, 255, 0.95));
}

.legal365theme-onboarding-step-number {
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(16, 35, 62, 0.08);
    color: var(--legal365-primary);
    font-weight: 700;
}

.legal365theme-onboarding-step.is-active .legal365theme-onboarding-step-number {
    background: var(--legal365-primary);
    color: #fff;
}

.legal365theme-onboarding-step-title {
    display: block;
    font-weight: 700;
}

.legal365theme-onboarding-step-description {
    display: block;
    margin-top: 0.15rem;
    color: var(--legal365-muted);
    font-size: 0.85rem;
    line-height: 1.5;
}

.legal365theme-onboarding-main {
    min-width: 0;
}

.legal365theme-onboarding-toolbar {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.9rem;
    margin-bottom: 1rem;
}

.legal365theme-onboarding-metric {
    padding: 1rem 1.1rem;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(21, 37, 61, 0.08);
    box-shadow: 0 14px 30px rgba(17, 31, 52, 0.05);
}

.legal365theme-onboarding-metric__label {
    display: block;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--legal365-muted);
    margin-bottom: 0.35rem;
}

.legal365theme-onboarding-metric__value {
    display: block;
    color: var(--legal365-primary-strong);
    font-size: 1.4rem;
    line-height: 1.15;
}

.legal365theme-onboarding-metric__hint {
    display: block;
    margin-top: 0.25rem;
    color: var(--legal365-muted);
    font-size: 0.84rem;
}

.legal365theme-onboarding-panel {
    overflow: hidden;
    border: 1px solid rgba(21, 37, 61, 0.08);
    box-shadow: 0 20px 44px rgba(17, 31, 52, 0.06);
}

.legal365theme-onboarding-intro {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(180px, 0.7fr);
    gap: 1.25rem;
    align-items: center;
    padding: 1.45rem;
    margin-bottom: 1.25rem;
    border-radius: 24px;
    background:
        radial-gradient(circle at top right, rgba(199, 161, 95, 0.12), transparent 35%),
        linear-gradient(180deg, rgba(248, 250, 252, 0.94), rgba(244, 247, 251, 0.92));
    border: 1px solid rgba(21, 37, 61, 0.08);
}

.legal365theme-onboarding-intro img {
    width: min(100%, 190px);
    height: auto;
    display: block;
    margin-left: auto;
}

.legal365theme-onboarding-intro-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-bottom: 0.6rem;
    padding: 0.34rem 0.72rem;
    border-radius: 999px;
    background: rgba(30, 58, 95, 0.08);
    color: var(--legal365-primary);
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.legal365theme-onboarding-intro-title {
    margin: 0;
    color: var(--legal365-primary-strong);
    font-size: 1.6rem;
    font-weight: 800;
    letter-spacing: -0.04em;
}

.legal365theme-onboarding-intro-description {
    margin: 0.65rem 0 0;
    color: var(--legal365-muted);
    line-height: 1.7;
}

.legal365theme-onboarding-divider {
    margin: 0 0 0.3rem;
    padding: 0.9rem 1rem;
    border-radius: 18px;
    background: rgba(247, 250, 253, 0.9);
    border: 1px solid rgba(21, 37, 61, 0.07);
}

.legal365theme-onboarding-divider__title {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--legal365-primary-strong);
}

.legal365theme-onboarding-divider__text {
    margin-top: 0.2rem;
    color: var(--legal365-muted);
    font-size: 0.88rem;
}

.legal365theme-onboarding-finish {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.15rem;
    margin-bottom: 1rem;
    border-radius: 20px;
    background: linear-gradient(135deg, rgba(31, 122, 82, 0.1), rgba(255, 255, 255, 0.95));
    border: 1px solid rgba(31, 122, 82, 0.16);
}

.legal365theme-onboarding-finish strong {
    color: var(--legal365-primary-strong);
}

.legal365theme-onboarding-note {
    margin-top: 1rem;
    padding: 1rem 1.05rem;
    border-radius: 20px;
    border: 1px solid rgba(21, 37, 61, 0.08);
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 14px 28px rgba(17, 31, 52, 0.05);
}

.legal365theme-onboarding-note__title {
    font-weight: 700;
    color: var(--legal365-primary-strong);
    margin-bottom: 0.5rem;
}

.legal365theme-onboarding-note__list {
    margin: 0;
    padding-left: 1rem;
    color: var(--legal365-muted);
    font-size: 0.88rem;
    line-height: 1.65;
}

.legal365theme-onboarding-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    padding-top: 0.35rem;
}

.legal365theme-onboarding-form-hint {
    padding: 0.85rem 1rem;
    border-radius: 16px;
    background: rgba(23, 58, 99, 0.05);
    border: 1px solid rgba(23, 58, 99, 0.08);
    color: var(--legal365-muted);
    font-size: 0.88rem;
    line-height: 1.6;
}

.legal365theme-onboarding-option-group {
    height: 100%;
    padding: 1rem 1rem 0.95rem;
    border-radius: 18px;
    background: rgba(247, 250, 253, 0.9);
    border: 1px solid rgba(21, 37, 61, 0.07);
}

.legal365theme-onboarding-option-group__title {
    font-size: 0.84rem;
    font-weight: 700;
    color: var(--legal365-primary-strong);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.legal365theme-onboarding-data-card {
    padding: 1rem 1rem 0.35rem;
    border-radius: 22px;
    border: 1px solid rgba(21, 37, 61, 0.08);
    background: rgba(255, 255, 255, 0.92);
}

.legal365theme-onboarding-logo-preview {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.75rem 0.9rem;
    border-radius: 16px;
    border: 1px solid rgba(21, 37, 61, 0.08);
    background: rgba(255, 255, 255, 0.88);
}

body.master365-layout.legal365theme .legal365theme-onboarding-panel .card-body {
    padding: 1.35rem;
}

body.master365-layout.legal365theme .legal365theme-onboarding-panel .form-label {
    color: var(--legal365-primary-strong);
    font-weight: 700;
    margin-bottom: 0.45rem;
}

body.master365-layout.legal365theme .legal365theme-onboarding-panel .form-control,
body.master365-layout.legal365theme .legal365theme-onboarding-panel .form-select,
body.master365-layout.legal365theme .legal365theme-onboarding-panel .accordion-item {
    border-color: rgba(21, 37, 61, 0.12);
    box-shadow: none;
}

body.master365-layout.legal365theme .legal365theme-onboarding-panel .form-control,
body.master365-layout.legal365theme .legal365theme-onboarding-panel .form-select {
    min-height: 2.9rem;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.96);
}

body.master365-layout.legal365theme .legal365theme-onboarding-panel .form-control:focus,
body.master365-layout.legal365theme .legal365theme-onboarding-panel .form-select:focus {
    border-color: rgba(23, 58, 99, 0.32);
    box-shadow: 0 0 0 0.2rem rgba(23, 58, 99, 0.08);
}

body.master365-layout.legal365theme .legal365theme-onboarding-panel textarea.form-control {
    min-height: 8rem;
}

body.master365-layout.legal365theme .legal365theme-onboarding-panel .form-hint {
    margin-top: 0.35rem;
    color: var(--legal365-muted);
}

body.master365-layout.legal365theme .legal365theme-onboarding-panel .btn-primary,
body.master365-layout.legal365theme .legal365theme-onboarding-panel .btn-success {
    min-width: 11.5rem;
    border-radius: 14px;
    font-weight: 700;
}

body.master365-layout.legal365theme .legal365theme-onboarding-panel .table thead th {
    color: var(--legal365-muted);
    font-size: 0.76rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.cases-table .btn-list {
    flex-wrap: wrap;
    gap: 0.25rem;
}

.tenant-module-card.locked {
    border-style: dashed;
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.96), rgba(255, 255, 255, 0.95));
}

.tenant-module-usage {
    height: 8px;
    background: rgba(21, 37, 61, 0.08);
    border-radius: 999px;
    overflow: hidden;
}

.tenant-module-usage > span {
    display: block;
    height: 100%;
    border-radius: 999px;
}

.legal365theme-locked-modal-visual {
    display: flex;
    justify-content: center;
    margin-bottom: 1rem;
}

.legal365theme-locked-modal-visual img {
    width: min(100%, 180px);
    height: auto;
}

.legal365theme-document-frame {
    width: 100%;
    min-height: 720px;
    border: 1px solid rgba(21, 37, 61, 0.08);
    border-radius: 18px;
    background: #fff;
}

@media (max-width: 991.98px) {
    .legal365theme-onboarding-brief-grid,
    .legal365theme-onboarding-toolbar,
    .legal365theme-hero,
    .legal365theme-state-card {
        grid-template-columns: 1fr;
    }

    .legal365theme-onboarding-shell,
    .legal365theme-onboarding-intro {
        grid-template-columns: 1fr;
    }

    .legal365theme-onboarding-sidebar {
        position: static;
    }

    .legal365theme-report-filter-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .legal365theme-hero__art,
    .legal365theme-state-card__art,
    .legal365theme-onboarding-intro img {
        order: -1;
        margin: 0 auto;
    }
}

@media (max-width: 767.98px) {
    .legal365theme-hero {
        padding: 1.5rem;
        border-radius: 24px;
    }

    .legal365theme-hero--compact {
        padding: 1.1rem 1.15rem;
        gap: 0.8rem;
    }

    .legal365theme-hero--compact .legal365theme-hero__art img {
        width: min(100%, 120px);
    }

    .legal365theme-state-card,
    .legal365theme-surface-panel {
        padding: 1.1rem;
    }

    .legal365theme-onboarding-divider,
    .legal365theme-onboarding-form-hint,
    .legal365theme-onboarding-option-group,
    .legal365theme-onboarding-data-card {
        padding-left: 0.9rem;
        padding-right: 0.9rem;
    }

    .legal365theme-report-filter-grid {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
}

/* Professional refinement */
body.master365-layout.legal365theme {
    --legal365-navy: #0f1726;
    --legal365-navy-soft: #1a2538;
    --legal365-ink: #172435;
    --legal365-muted: #5f6f84;
    --legal365-line: rgba(23, 36, 53, 0.11);
    --legal365-surface: rgba(255, 255, 255, 0.98);
    --legal365-surface-strong: #ffffff;
    --legal365-accent: #b99a62;
    --legal365-accent-soft: rgba(185, 154, 98, 0.14);
    --legal365-primary: #173a63;
    --legal365-primary-strong: #102746;
    --legal365-shadow: 0 18px 42px rgba(15, 23, 38, 0.08);
    background:
        radial-gradient(circle at top left, rgba(185, 154, 98, 0.08), transparent 24%),
        radial-gradient(circle at top right, rgba(23, 58, 99, 0.07), transparent 28%),
        linear-gradient(180deg, #f6f8fb 0%, #eef2f7 48%, #e8edf4 100%);
    color: var(--legal365-ink);
    font-family: "Aptos", "Segoe UI Variable Text", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}

body.master365-layout.legal365theme h1,
body.master365-layout.legal365theme h2,
body.master365-layout.legal365theme h3,
body.master365-layout.legal365theme .page-title,
body.master365-layout.legal365theme .card-title,
body.master365-layout.legal365theme .modal-title,
body.master365-layout.legal365theme .legal365theme-hero__title,
body.master365-layout.legal365theme .legal365theme-onboarding-intro-title {
    font-family: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
    letter-spacing: -0.025em;
}

body.master365-layout.legal365theme .master365-topbar {
    position: sticky;
    background: rgba(252, 253, 255, 0.94);
    border-bottom: 1px solid rgba(15, 23, 38, 0.08);
    backdrop-filter: blur(22px);
    box-shadow: 0 10px 30px rgba(15, 23, 38, 0.05);
}

body.master365-layout.legal365theme .master365-topbar::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(185, 154, 98, 0.55), transparent);
}

body.master365-layout.legal365theme .master365-topbar__inner {
    min-height: 4.75rem;
}

body.master365-layout.legal365theme .master365-sidebar {
    background:
        radial-gradient(circle at top, rgba(185, 154, 98, 0.12), transparent 22%),
        linear-gradient(180deg, #0f1726 0%, #162133 55%, #1a2840 100%);
    border-right: 0;
    box-shadow: 18px 0 40px rgba(15, 23, 38, 0.18);
}

body.master365-layout.legal365theme .master365-sidebar .nav-link.disabled {
    color: rgba(230, 237, 245, 0.46) !important;
    letter-spacing: 0.12em;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link {
    margin: 0.22rem 0;
    padding: 0.78rem 0.92rem;
    border-radius: 14px;
    color: rgba(234, 240, 248, 0.76);
    transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link .nav-link-icon,
body.master365-layout.legal365theme .master365-sidebar .nav-link .ti {
    color: rgba(185, 154, 98, 0.88);
}

body.master365-layout.legal365theme .master365-sidebar .nav-link:hover,
body.master365-layout.legal365theme .master365-sidebar .nav-link.active {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.05));
    color: #ffffff;
    transform: none;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link.active {
    box-shadow:
        inset 3px 0 0 var(--legal365-accent),
        inset 0 0 0 1px rgba(185, 154, 98, 0.1),
        0 10px 24px rgba(7, 12, 24, 0.18);
}

body.master365-layout.legal365theme .master365-sidebar .nav-link-title,
body.master365-layout.legal365theme .master365-tenant-switcher__name {
    font-weight: 600;
}

body.master365-layout.legal365theme .master365-tenant-switcher__trigger,
body.master365-layout.legal365theme .master365-tenant-switcher__single {
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.05);
    color: #f3f7fb;
    box-shadow: none;
}

body.master365-layout.legal365theme .master365-tenant-switcher__icon {
    background: rgba(185, 154, 98, 0.16);
    color: var(--legal365-accent);
}

body.master365-layout.legal365theme .master365-tenant-switcher__slug,
body.master365-layout.legal365theme .master365-tenant-switcher__item-slug,
body.master365-layout.legal365theme .master365-sidebar .text-muted,
body.master365-layout.legal365theme .master365-sidebar .text-secondary {
    color: rgba(221, 229, 239, 0.58) !important;
}

body.master365-layout.legal365theme .master365-tenant-switcher__menu.dropdown-menu-dark,
body.master365-layout.legal365theme .dropdown-menu {
    padding: 0.45rem;
    border: 1px solid rgba(15, 23, 38, 0.08);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 18px 36px rgba(15, 23, 38, 0.12);
}

body.master365-layout.legal365theme .dropdown-header {
    color: var(--legal365-muted);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body.master365-layout.legal365theme .dropdown-item {
    border-radius: 12px;
    color: var(--legal365-primary-strong);
    padding-top: 0.7rem;
    padding-bottom: 0.7rem;
}

body.master365-layout.legal365theme .dropdown-item:hover,
body.master365-layout.legal365theme .dropdown-item.active {
    background: rgba(23, 58, 99, 0.07);
    color: var(--legal365-primary-strong);
}

body.master365-layout.legal365theme .master365-error-count-pill {
    background: rgba(185, 154, 98, 0.18);
    color: #8b6b32;
}

body.master365-layout.legal365theme .page-header {
    margin-top: 1rem;
}

body.master365-layout.legal365theme .page-title {
    color: var(--legal365-primary-strong);
    font-weight: 700;
}

body.master365-layout.legal365theme .page-pretitle,
body.master365-layout.legal365theme .text-secondary {
    color: var(--legal365-muted) !important;
}

body.master365-layout.legal365theme .card,
body.master365-layout.legal365theme .modal-content {
    border: 1px solid rgba(15, 23, 38, 0.08);
    border-radius: 20px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(251, 253, 255, 0.96));
    box-shadow: 0 14px 30px rgba(15, 23, 38, 0.06);
}

body.master365-layout.legal365theme .card-header,
body.master365-layout.legal365theme .card-footer {
    border-color: rgba(15, 23, 38, 0.08);
    background: linear-gradient(180deg, rgba(247, 249, 252, 0.86), rgba(255, 255, 255, 0));
}

body.master365-layout.legal365theme .card-title {
    color: var(--legal365-primary-strong);
    font-weight: 700;
}

body.master365-layout.legal365theme .legal365theme-surface-panel,
body.master365-layout.legal365theme .legal365theme-metric-card,
body.master365-layout.legal365theme .legal365theme-subscription-surface,
body.master365-layout.legal365theme .legal365theme-subscription-kpi {
    border-radius: 20px;
}

body.master365-layout.legal365theme .btn {
    border-radius: 12px;
    font-weight: 700;
    letter-spacing: 0.01em;
}

body.master365-layout.legal365theme .btn-primary {
    background: linear-gradient(135deg, #1e446f 0%, #102746 100%);
    border-color: #102746;
    box-shadow: 0 10px 18px rgba(16, 39, 70, 0.16);
}

body.master365-layout.legal365theme .btn-primary:hover,
body.master365-layout.legal365theme .btn-primary:focus {
    background: linear-gradient(135deg, #17385d 0%, #0b1e37 100%);
    border-color: #0b1e37;
}

body.master365-layout.legal365theme .btn-outline-primary {
    border-color: rgba(16, 39, 70, 0.18);
    color: var(--legal365-primary);
    background: rgba(255, 255, 255, 0.82);
}

body.master365-layout.legal365theme .btn-outline-primary:hover,
body.master365-layout.legal365theme .btn-outline-primary:focus {
    background: rgba(16, 39, 70, 0.06);
    border-color: rgba(16, 39, 70, 0.28);
    color: var(--legal365-primary-strong);
}

body.master365-layout.legal365theme .form-control,
body.master365-layout.legal365theme .form-select {
    min-height: 46px;
    border-radius: 14px;
    border-color: rgba(15, 23, 38, 0.12);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: inset 0 1px 2px rgba(15, 23, 38, 0.02);
}

body.master365-layout.legal365theme .form-control:focus,
body.master365-layout.legal365theme .form-select:focus {
    border-color: rgba(16, 39, 70, 0.28);
    box-shadow: 0 0 0 0.22rem rgba(16, 39, 70, 0.08);
}

body.master365-layout.legal365theme .input-icon .form-control {
    background: rgba(255, 255, 255, 0.9);
}

body.master365-layout.legal365theme #topbar-global-search-panel {
    border: 1px solid rgba(15, 23, 38, 0.08);
    border-radius: 16px;
    box-shadow: 0 22px 40px rgba(15, 23, 38, 0.12);
    padding: 0.35rem;
}

body.master365-layout.legal365theme .alert {
    border: 1px solid rgba(15, 23, 38, 0.08);
    border-radius: 16px;
}

body.master365-layout.legal365theme .table {
    --tblr-table-border-color: rgba(15, 23, 38, 0.08);
}

body.master365-layout.legal365theme .table thead th {
    color: #6a788b;
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body.master365-layout.legal365theme .table tbody tr:hover {
    background: rgba(16, 39, 70, 0.03);
}

body.master365-layout.legal365theme .badge {
    border-radius: 999px;
    font-weight: 700;
    letter-spacing: 0.02em;
}

body.master365-layout.legal365theme .progress {
    background: rgba(15, 23, 38, 0.07);
    border-radius: 999px;
}

body.master365-layout.legal365theme .avatar.bg-primary {
    background: linear-gradient(135deg, #234d7d 0%, #102746 100%) !important;
    box-shadow: 0 8px 18px rgba(16, 39, 70, 0.18);
}

body.master365-layout.legal365theme .legal365theme-hero {
    border-radius: 24px;
    background:
        radial-gradient(circle at top right, rgba(185, 154, 98, 0.12), transparent 26%),
        linear-gradient(135deg, rgba(255, 255, 255, 0.99) 0%, rgba(246, 249, 253, 0.97) 54%, rgba(238, 244, 250, 0.96) 100%);
    border: 1px solid rgba(15, 23, 38, 0.08);
    box-shadow: 0 20px 42px rgba(15, 23, 38, 0.08);
}

body.master365-layout.legal365theme .legal365theme-hero__eyebrow,
body.master365-layout.legal365theme .legal365theme-onboarding-intro-eyebrow {
    background: rgba(16, 39, 70, 0.08);
    color: var(--legal365-primary);
}

body.master365-layout.legal365theme .legal365theme-hero__description,
body.master365-layout.legal365theme .legal365theme-onboarding-intro-description {
    color: var(--legal365-muted);
    line-height: 1.75;
}

body.master365-layout.legal365theme.legal365theme-auth {
    background:
        radial-gradient(circle at top left, rgba(185, 154, 98, 0.11), transparent 28%),
        linear-gradient(180deg, #f7f9fc 0%, #eef2f7 100%);
}

body.master365-layout.legal365theme.legal365theme-auth .page {
    background: transparent;
}

body.master365-layout.legal365theme.legal365theme-auth .card {
    max-width: 34rem;
    margin-inline: auto;
}

@media (max-width: 991.98px) {
    body.master365-layout.legal365theme .master365-sidebar {
        box-shadow: 22px 0 44px rgba(15, 23, 38, 0.22);
    }

    body.master365-layout.legal365theme .master365-topbar__inner {
        min-height: 4.35rem;
    }
}

/* Workspace polish */
body.master365-layout.legal365theme .legal365theme-dashboard-workspace .card-header,
body.master365-layout.legal365theme .legal365theme-invoice-workspace .card-header,
body.master365-layout.legal365theme .legal365theme-subscription-workspace .card-header {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

body.master365-layout.legal365theme .legal365theme-dashboard-workspace .card-header .card-title,
body.master365-layout.legal365theme .legal365theme-invoice-workspace .card-header .card-title,
body.master365-layout.legal365theme .legal365theme-subscription-workspace .card-header .card-title {
    font-size: 1.02rem;
}

body.master365-layout.legal365theme .legal365theme-dashboard-workspace .legal365theme-metric-card {
    overflow: hidden;
    position: relative;
    min-height: 100%;
}

body.master365-layout.legal365theme .legal365theme-dashboard-workspace .legal365theme-metric-card::before {
    content: "";
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, rgba(185, 154, 98, 0.95), rgba(16, 39, 70, 0.5));
}

body.master365-layout.legal365theme .legal365theme-dashboard-workspace .list-group-item {
    padding-top: 0.9rem;
    padding-bottom: 0.9rem;
}

body.master365-layout.legal365theme .legal365theme-dashboard-workspace .lp-dashboard-mini-calendar {
    padding: 0.6rem;
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(248, 250, 253, 0.9), rgba(255, 255, 255, 0.95));
    border: 1px solid rgba(15, 23, 38, 0.06);
}

body.master365-layout.legal365theme .legal365theme-dashboard-workspace .lp-dashboard-mini-calendar .fc-theme-standard td,
body.master365-layout.legal365theme .legal365theme-dashboard-workspace .lp-dashboard-mini-calendar .fc-theme-standard th,
body.master365-layout.legal365theme .legal365theme-dashboard-workspace .lp-dashboard-mini-calendar .fc-theme-standard .fc-scrollgrid {
    border-color: rgba(15, 23, 38, 0.07);
}

body.master365-layout.legal365theme .legal365theme-dashboard-workspace .lp-dashboard-mini-calendar .fc .fc-button {
    border-radius: 10px;
    border-color: rgba(16, 39, 70, 0.14);
    background: rgba(255, 255, 255, 0.94);
    color: var(--legal365-primary-strong);
}

body.master365-layout.legal365theme .legal365theme-dashboard-workspace .lp-dashboard-mini-calendar .fc .fc-button-primary:not(:disabled):hover,
body.master365-layout.legal365theme .legal365theme-dashboard-workspace .lp-dashboard-mini-calendar .fc .fc-button-primary:not(:disabled).fc-button-active {
    background: rgba(16, 39, 70, 0.09);
    color: var(--legal365-primary-strong);
}

body.master365-layout.legal365theme .legal365theme-dashboard-workspace .lp-dashboard-mini-calendar .fc-day-today {
    background: rgba(185, 154, 98, 0.08) !important;
}

body.master365-layout.legal365theme .legal365theme-dashboard-workspace .lp-dashboard-note {
    margin-top: 0.45rem;
    color: var(--legal365-ink);
    line-height: 1.7;
}

body.master365-layout.legal365theme .legal365theme-invoice-workspace .legal365theme-invoice-filters {
    background:
        radial-gradient(circle at top right, rgba(185, 154, 98, 0.08), transparent 24%),
        linear-gradient(180deg, rgba(248, 250, 253, 0.95), rgba(255, 255, 255, 0.96));
}

body.master365-layout.legal365theme .legal365theme-invoice-workspace .legal365theme-invoice-filters .form-label {
    margin-bottom: 0.45rem;
    color: var(--legal365-muted);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

body.master365-layout.legal365theme .legal365theme-invoice-workspace .legal365theme-invoice-table tbody tr {
    transition: background-color 0.2s ease, box-shadow 0.2s ease;
}

body.master365-layout.legal365theme .legal365theme-invoice-workspace .legal365theme-invoice-table tbody tr.is-open {
    background: linear-gradient(90deg, rgba(22, 98, 171, 0.02), rgba(255, 255, 255, 0));
}

body.master365-layout.legal365theme .legal365theme-invoice-workspace .legal365theme-invoice-table tbody tr.is-paid {
    background: linear-gradient(90deg, rgba(31, 122, 82, 0.03), rgba(255, 255, 255, 0));
}

body.master365-layout.legal365theme .legal365theme-invoice-workspace .legal365theme-invoice-table tbody tr.is-overdue {
    background: linear-gradient(90deg, rgba(166, 61, 64, 0.05), rgba(255, 255, 255, 0));
}

body.master365-layout.legal365theme .legal365theme-invoice-workspace .legal365theme-invoice-table .btn-list {
    gap: 0.45rem;
}

body.master365-layout.legal365theme .legal365theme-subscription-workspace .legal365theme-subscription-hero {
    overflow: hidden;
    position: relative;
}

body.master365-layout.legal365theme .legal365theme-subscription-workspace .legal365theme-subscription-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at top right, rgba(185, 154, 98, 0.1), transparent 26%),
        linear-gradient(135deg, rgba(255, 255, 255, 0), rgba(16, 39, 70, 0.02));
    pointer-events: none;
}

body.master365-layout.legal365theme .legal365theme-subscription-workspace .legal365theme-subscription-summary-card {
    border: 1px solid rgba(15, 23, 38, 0.08);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(245, 248, 252, 0.94));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

body.master365-layout.legal365theme .legal365theme-subscription-workspace .table td,
body.master365-layout.legal365theme .legal365theme-subscription-workspace .table th {
    white-space: nowrap;
}

body.master365-layout.legal365theme .legal365theme-subscription-workspace .table td:last-child,
body.master365-layout.legal365theme .legal365theme-subscription-workspace .table th:last-child {
    white-space: normal;
}

@media (max-width: 767.98px) {
    body.master365-layout.legal365theme .legal365theme-invoice-workspace .legal365theme-invoice-filters {
        padding: 1rem;
    }

    body.master365-layout.legal365theme .legal365theme-dashboard-workspace .lp-dashboard-mini-calendar {
        padding: 0.25rem;
    }
}

/* ERP refinement */
body.master365-layout.legal365theme .legal365theme-erp-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem 1.25rem;
    padding: 1.2rem 1.35rem;
    border: 1px solid rgba(15, 23, 38, 0.08);
    border-radius: 20px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 253, 0.95)),
        linear-gradient(90deg, rgba(185, 154, 98, 0.04), transparent);
    box-shadow: 0 14px 32px rgba(15, 23, 38, 0.06);
}

body.master365-layout.legal365theme .legal365theme-erp-toolbar__main {
    min-width: 0;
    flex: 1 1 28rem;
}

body.master365-layout.legal365theme .legal365theme-erp-toolbar__actions {
    align-self: center;
}

body.master365-layout.legal365theme .legal365theme-erp-tabs {
    gap: 0.55rem;
    padding: 0.45rem;
    border: 1px solid rgba(15, 23, 38, 0.08);
    border-radius: 18px;
    background: rgba(250, 252, 255, 0.92);
}

body.master365-layout.legal365theme .legal365theme-erp-tabs .nav-item {
    margin-bottom: 0;
}

body.master365-layout.legal365theme .legal365theme-erp-tabs .nav-link {
    border: 0;
    border-radius: 12px;
    color: var(--legal365-muted);
    font-weight: 600;
    padding: 0.72rem 1rem;
    transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

body.master365-layout.legal365theme .legal365theme-erp-tabs .nav-link:hover {
    color: var(--legal365-primary-strong);
    background: rgba(16, 39, 70, 0.05);
}

body.master365-layout.legal365theme .legal365theme-erp-tabs .nav-link.active {
    color: var(--legal365-primary-strong);
    background: linear-gradient(135deg, rgba(16, 39, 70, 0.08), rgba(185, 154, 98, 0.08));
    box-shadow: inset 0 0 0 1px rgba(16, 39, 70, 0.08);
}

body.master365-layout.legal365theme .legal365theme-erp-panel {
    overflow: hidden;
}

body.master365-layout.legal365theme .legal365theme-erp-panel .card-header {
    position: relative;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

body.master365-layout.legal365theme .legal365theme-erp-panel .card-header::after {
    content: "";
    position: absolute;
    left: 1.25rem;
    right: 1.25rem;
    bottom: 0;
    height: 1px;
    background: linear-gradient(90deg, rgba(15, 23, 38, 0.12), rgba(15, 23, 38, 0.04));
}

body.master365-layout.legal365theme .legal365theme-erp-kpi-card {
    overflow: hidden;
    position: relative;
}

body.master365-layout.legal365theme .legal365theme-erp-kpi-card::before {
    content: "";
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, var(--legal365-primary-strong), rgba(185, 154, 98, 0.85));
}

body.master365-layout.legal365theme .legal365theme-erp-kpi-card .card-body {
    padding-top: 1rem;
}

body.master365-layout.legal365theme .legal365theme-erp-table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: rgba(248, 250, 253, 0.98);
    box-shadow: inset 0 -1px 0 rgba(15, 23, 38, 0.08);
}

body.master365-layout.legal365theme .legal365theme-erp-table tbody td {
    padding-top: 0.95rem;
    padding-bottom: 0.95rem;
}

body.master365-layout.legal365theme .legal365theme-report-workspace .legal365theme-report-hero,
body.master365-layout.legal365theme .legal365theme-control-workspace .legal365theme-control-hero {
    margin-bottom: 1rem;
}

body.master365-layout.legal365theme .legal365theme-report-workspace .legal365theme-report-filter-grid {
    gap: 1rem;
}

body.master365-layout.legal365theme .legal365theme-report-workspace .form-label,
body.master365-layout.legal365theme .legal365theme-control-workspace .form-label,
body.master365-layout.legal365theme .legal365theme-case-workspace .form-label {
    margin-bottom: 0.45rem;
    color: var(--legal365-muted);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

body.master365-layout.legal365theme .legal365theme-report-workspace canvas {
    background: linear-gradient(180deg, rgba(250, 252, 255, 0.9), rgba(255, 255, 255, 0.98));
    border-radius: 16px;
}

body.master365-layout.legal365theme .legal365theme-case-workspace .card,
body.master365-layout.legal365theme .legal365theme-report-workspace .card,
body.master365-layout.legal365theme .legal365theme-control-workspace .card {
    border-radius: 18px;
}

body.master365-layout.legal365theme .legal365theme-case-workspace .table-responsive,
body.master365-layout.legal365theme .legal365theme-report-workspace .table-responsive,
body.master365-layout.legal365theme .legal365theme-control-workspace .table-responsive {
    border-radius: 0 0 18px 18px;
}

body.master365-layout.legal365theme .legal365theme-case-workspace .list-group-item,
body.master365-layout.legal365theme .legal365theme-control-workspace .list-group-item {
    padding-top: 0.9rem;
    padding-bottom: 0.9rem;
}

body.master365-layout.legal365theme .legal365theme-case-toolbar .page-title {
    margin-bottom: 0.2rem !important;
}

body.master365-layout.legal365theme .legal365theme-control-workspace code,
body.master365-layout.legal365theme .legal365theme-case-workspace code {
    padding: 0.15rem 0.45rem;
    border-radius: 8px;
    background: rgba(15, 23, 38, 0.06);
    color: var(--legal365-primary-strong);
}

@media (max-width: 991.98px) {
    body.master365-layout.legal365theme .legal365theme-erp-toolbar {
        padding: 1rem 1.05rem;
    }

    body.master365-layout.legal365theme .legal365theme-erp-tabs {
        overflow-x: auto;
        flex-wrap: nowrap;
    }

    body.master365-layout.legal365theme .legal365theme-erp-tabs .nav-link {
        white-space: nowrap;
    }
}

/* Sidebar and dashboard refinement */
body.master365-layout.legal365theme .master365-sidebar .container-fluid {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding-top: 1rem;
    padding-bottom: 1rem;
    gap: 0.85rem;
}

body.master365-layout.legal365theme .master365-sidebar-workspace {
    margin: 0.1rem 0.25rem 0.9rem;
    padding: 1rem 1.05rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 22px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.11), rgba(255, 255, 255, 0.03)),
        radial-gradient(circle at top right, rgba(185, 154, 98, 0.18), transparent 34%);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.05),
        0 18px 34px rgba(8, 13, 25, 0.18);
    position: relative;
    overflow: hidden;
}

body.master365-layout.legal365theme .master365-sidebar-workspace::after {
    content: "";
    position: absolute;
    inset: auto -32px -42px auto;
    width: 120px;
    height: 120px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(185, 154, 98, 0.22), transparent 70%);
    pointer-events: none;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.9rem;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__badge {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(185, 154, 98, 0.16);
    color: var(--legal365-accent);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body.master365-layout.legal365theme .master365-sidebar-workspace__panel {
    margin-left: auto;
    padding: 0.34rem 0.62rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: rgba(236, 242, 248, 0.78);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__link {
    display: block;
    text-decoration: none;
    color: #f8fbff;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__eyebrow,
body.master365-layout.legal365theme .master365-sidebar-section-label {
    display: block;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__eyebrow {
    color: rgba(220, 229, 239, 0.56);
    margin-bottom: 0.45rem;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__title {
    display: block;
    font-size: 1rem;
    font-weight: 700;
    color: #ffffff;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__meta {
    display: block;
    margin-top: 0.25rem;
    color: rgba(220, 229, 239, 0.7);
    font-size: 0.8rem;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
    margin-top: 0.9rem;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__metric {
    position: relative;
    z-index: 1;
    padding: 0.72rem 0.78rem;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

body.master365-layout.legal365theme .master365-sidebar-workspace__metric-label {
    display: block;
    color: rgba(220, 229, 239, 0.56);
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__metric-value {
    display: block;
    margin-top: 0.28rem;
    color: #ffffff;
    font-size: 0.98rem;
    line-height: 1.1;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__note {
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    color: rgba(220, 229, 239, 0.58);
    font-size: 0.77rem;
    line-height: 1.5;
}

body.master365-layout.legal365theme .master365-sidebar-nav {
    gap: 0.25rem;
}

body.master365-layout.legal365theme .master365-sidebar-section {
    margin-top: 0.45rem;
}

body.master365-layout.legal365theme .master365-sidebar-section-label {
    color: rgba(220, 229, 239, 0.48) !important;
    padding: 0.25rem 0.9rem 0.2rem;
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.65rem;
}

body.master365-layout.legal365theme .master365-sidebar-section-label::after {
    content: "";
    flex: 1 1 auto;
    height: 1px;
    background: linear-gradient(90deg, rgba(185, 154, 98, 0.22), rgba(255, 255, 255, 0.02));
}

body.master365-layout.legal365theme .master365-sidebar-section-toggle {
    margin-bottom: 0.25rem;
}

body.master365-layout.legal365theme .master365-sidebar-submenu {
    padding-left: 0.45rem;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link {
    gap: 0.8rem;
    position: relative;
    border: 1px solid transparent;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link .nav-link-icon {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 11px;
    background: rgba(255, 255, 255, 0.05);
    transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link:hover .nav-link-icon,
body.master365-layout.legal365theme .master365-sidebar .nav-link.active .nav-link-icon {
    background: rgba(185, 154, 98, 0.16);
    transform: translateY(-1px);
}

body.master365-layout.legal365theme .master365-sidebar-link-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    width: 100%;
    min-width: 0;
}

body.master365-layout.legal365theme .master365-sidebar-link-label .nav-link-title {
    min-width: 0;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link:hover {
    border-color: rgba(255, 255, 255, 0.05);
}

body.master365-layout.legal365theme .master365-sidebar .nav-link.active {
    border-color: rgba(185, 154, 98, 0.12);
}

body.master365-layout.legal365theme .master365-sidebar-status {
    margin-top: auto;
    margin-inline: 0.25rem;
    padding: 1rem 1.05rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 22px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.03)),
        radial-gradient(circle at top right, rgba(185, 154, 98, 0.12), transparent 36%);
    box-shadow: 0 18px 32px rgba(8, 13, 25, 0.14);
}

body.master365-layout.legal365theme .master365-sidebar-status__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

body.master365-layout.legal365theme .master365-sidebar-status__indicator {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.34rem 0.62rem;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body.master365-layout.legal365theme .master365-sidebar-status__indicator::before {
    content: "";
    width: 0.45rem;
    height: 0.45rem;
    border-radius: 999px;
    background: currentColor;
}

body.master365-layout.legal365theme .master365-sidebar-status__eyebrow {
    color: rgba(220, 229, 239, 0.5);
    font-size: 0.67rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

body.master365-layout.legal365theme .master365-sidebar-status__value {
    margin-top: 0.45rem;
    color: #ffffff;
    font-weight: 700;
}

body.master365-layout.legal365theme .master365-sidebar-status__meta {
    margin-top: 0.2rem;
    color: rgba(220, 229, 239, 0.62);
    font-size: 0.8rem;
}

body.master365-layout.legal365theme .master365-sidebar-status__alert {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.85rem;
    color: rgba(243, 247, 251, 0.9);
    font-size: 0.78rem;
}

body.master365-layout.legal365theme .master365-sidebar-status.is-healthy .master365-sidebar-status__indicator {
    background: rgba(31, 122, 82, 0.18);
    color: #8de0b8;
}

body.master365-layout.legal365theme .master365-sidebar-status.is-alert .master365-sidebar-status__indicator {
    background: rgba(182, 122, 18, 0.18);
    color: #f3ca74;
}

body.master365-layout.legal365theme .legal365theme-dashboard-commandbar {
    align-items: stretch;
}

body.master365-layout.legal365theme .legal365theme-dashboard-commandbar__stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
    flex: 1 1 28rem;
}

body.master365-layout.legal365theme .legal365theme-dashboard-stat {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 100%;
    padding: 0.9rem 1rem;
    border: 1px solid rgba(15, 23, 38, 0.08);
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(246, 249, 253, 0.96));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

body.master365-layout.legal365theme .legal365theme-dashboard-stat__label {
    color: var(--legal365-muted);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body.master365-layout.legal365theme .legal365theme-dashboard-stat__value {
    margin-top: 0.35rem;
    color: var(--legal365-primary-strong);
    font-size: 1.45rem;
    line-height: 1;
}

body.master365-layout.legal365theme .legal365theme-dashboard-workspace .legal365theme-erp-panel .card-body .list-group-item:first-child {
    padding-top: 0;
}

@media (max-width: 1199.98px) {
    body.master365-layout.legal365theme .legal365theme-dashboard-commandbar__stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    body.master365-layout.legal365theme .master365-sidebar .container-fluid {
        min-height: auto;
    }

    body.master365-layout.legal365theme .master365-sidebar-workspace,
    body.master365-layout.legal365theme .master365-sidebar-status {
        margin-inline: 0;
    }

    body.master365-layout.legal365theme .master365-sidebar-workspace__metrics {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    body.master365-layout.legal365theme .legal365theme-dashboard-commandbar__stats {
        grid-template-columns: 1fr;
    }
}

/* Professional cleanup */
body.master365-layout.legal365theme {
    background: #f4f7fb;
}

body.master365-layout.legal365theme h1,
body.master365-layout.legal365theme h2,
body.master365-layout.legal365theme h3,
body.master365-layout.legal365theme .page-title,
body.master365-layout.legal365theme .card-title,
body.master365-layout.legal365theme .modal-title,
body.master365-layout.legal365theme .legal365theme-hero__title,
body.master365-layout.legal365theme .legal365theme-onboarding-intro-title {
    font-family: "Aptos", "Segoe UI Variable Text", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
    letter-spacing: -0.02em;
}

body.master365-layout.legal365theme .master365-topbar {
    background: rgba(255, 255, 255, 0.96);
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
    backdrop-filter: none;
}

body.master365-layout.legal365theme .master365-sidebar {
    background: #132033;
    border-right: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: none;
}

body.master365-layout.legal365theme .master365-sidebar .container-fluid {
    padding-top: 0.85rem;
    padding-bottom: 0.85rem;
    gap: 0.7rem;
}

body.master365-layout.legal365theme .master365-sidebar-workspace,
body.master365-layout.legal365theme .master365-sidebar-status {
    margin: 0 0 0.7rem;
    border-radius: 16px;
    background: #1a2940;
    border: 1px solid rgba(255, 255, 255, 0.07);
    box-shadow: none;
}

body.master365-layout.legal365theme .master365-sidebar-workspace::after {
    display: none;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__badge,
body.master365-layout.legal365theme .master365-sidebar-workspace__panel,
body.master365-layout.legal365theme .master365-sidebar-workspace__metric,
body.master365-layout.legal365theme .master365-sidebar-status__indicator {
    background: rgba(255, 255, 255, 0.06);
    box-shadow: none;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__title,
body.master365-layout.legal365theme .master365-sidebar-status__value {
    font-size: 0.98rem;
    font-weight: 700;
}

body.master365-layout.legal365theme .master365-sidebar-section-label {
    color: rgba(226, 232, 240, 0.52) !important;
    padding: 0.2rem 0.75rem;
}

body.master365-layout.legal365theme .master365-sidebar-section-label::after {
    background: rgba(255, 255, 255, 0.08);
}

body.master365-layout.legal365theme .master365-sidebar-submenu {
    padding-left: 0;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link {
    margin: 0.12rem 0;
    padding: 0.7rem 0.8rem;
    border-radius: 12px;
    border: 1px solid transparent;
    color: rgba(226, 232, 240, 0.82);
    background: transparent;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link:hover,
body.master365-layout.legal365theme .master365-sidebar .nav-link.active {
    background: #22324a;
    color: #ffffff;
    transform: none;
    border-color: rgba(255, 255, 255, 0.06);
}

body.master365-layout.legal365theme .master365-sidebar .nav-link.active {
    box-shadow: none;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link .nav-link-icon {
    width: 1.9rem;
    height: 1.9rem;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.06);
}

body.master365-layout.legal365theme .master365-sidebar .nav-link:hover .nav-link-icon,
body.master365-layout.legal365theme .master365-sidebar .nav-link.active .nav-link-icon {
    background: rgba(255, 255, 255, 0.1);
    transform: none;
}

body.master365-layout.legal365theme .page-header {
    margin-top: 0.9rem;
    margin-bottom: 0.85rem;
}

body.master365-layout.legal365theme .page-pretitle {
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body.master365-layout.legal365theme .page-title {
    font-size: 1.9rem;
    font-weight: 700;
}

body.master365-layout.legal365theme .card,
body.master365-layout.legal365theme .modal-content {
    border-radius: 16px;
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05);
}

body.master365-layout.legal365theme .btn {
    border-radius: 10px;
}

body.master365-layout.legal365theme .form-control,
body.master365-layout.legal365theme .form-select {
    border-radius: 10px;
    background: #ffffff;
}

.legal365theme-hero {
    padding: 1.8rem 2rem;
    margin-bottom: 1rem;
    border-radius: 18px;
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}

.legal365theme-hero__eyebrow {
    padding: 0;
    background: transparent;
    border-radius: 0;
    color: var(--legal365-primary);
    font-size: 0.78rem;
    letter-spacing: 0.08em;
}

.legal365theme-hero__title {
    font-size: 1.15rem;
    font-weight: 700;
}

.legal365theme-hero__description {
    max-width: 42rem;
    font-size: 0.98rem;
    line-height: 1.65;
}

.legal365theme-hero__meta-item {
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid rgba(15, 23, 42, 0.08);
}

.legal365theme-hero__art img {
    width: min(100%, 180px);
    filter: none;
}

.legal365theme-surface-panel,
.legal365theme-onboarding-brief {
    padding: 1rem 1.1rem;
    border-radius: 16px;
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.legal365theme-onboarding-brief-grid {
    gap: 0.75rem;
}

.legal365theme-onboarding-brief-item,
.legal365theme-onboarding-metric,
.legal365theme-onboarding-divider,
.legal365theme-onboarding-option-group,
.legal365theme-onboarding-data-card,
.legal365theme-onboarding-note {
    border-radius: 14px;
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: none;
}

.legal365theme-onboarding-shell {
    gap: 1rem;
}

.legal365theme-onboarding-summary {
    padding: 1rem;
    border-radius: 16px;
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.legal365theme-onboarding-summary img {
    width: min(100%, 120px);
    margin-top: 0.75rem;
    filter: none;
}

.legal365theme-onboarding-status,
.legal365theme-onboarding-intro-eyebrow {
    padding: 0.32rem 0.62rem;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4f91;
    font-size: 0.72rem;
}

.legal365theme-onboarding-progress {
    height: 6px;
    background: #e8eef5;
}

.legal365theme-onboarding-progress > span {
    background: #2f5f95;
}

.legal365theme-onboarding-step {
    padding: 0.85rem 0.9rem;
    border-radius: 12px;
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: none;
}

.legal365theme-onboarding-step:hover {
    transform: none;
    border-color: rgba(47, 95, 149, 0.18);
}

.legal365theme-onboarding-step.is-active {
    background: #f8fbff;
    border-color: rgba(47, 95, 149, 0.22);
}

.legal365theme-onboarding-step.is-complete {
    background: #f8fafc;
}

.legal365theme-onboarding-step-number {
    width: 1.85rem;
    height: 1.85rem;
    background: #eef2f7;
}

.legal365theme-onboarding-toolbar {
    gap: 0.75rem;
    margin-bottom: 0.85rem;
}

.legal365theme-onboarding-panel {
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}

.legal365theme-onboarding-intro {
    padding: 1.1rem 1.2rem;
    margin-bottom: 1rem;
    border-radius: 14px;
    background: #f8fafc;
    border: 1px solid rgba(15, 23, 42, 0.08);
}

.legal365theme-onboarding-intro img {
    width: min(100%, 140px);
}

.legal365theme-onboarding-intro-title {
    font-size: 1.35rem;
    font-weight: 700;
}

.legal365theme-onboarding-intro-description,
.legal365theme-onboarding-divider__text,
.legal365theme-onboarding-brief-item div:last-child,
.legal365theme-onboarding-metric__hint,
.legal365theme-onboarding-note__list,
.legal365theme-onboarding-form-hint {
    color: #64748b;
}

.legal365theme-onboarding-finish {
    padding: 0.95rem 1rem;
    border-radius: 14px;
    background: #f0fdf4;
    border: 1px solid rgba(34, 197, 94, 0.16);
}

body.master365-layout.legal365theme .legal365theme-onboarding-panel .card-body {
    padding: 1.15rem;
}

@media (max-width: 991.98px) {
    .legal365theme-hero {
        padding: 1.4rem;
    }
}

/* Premium admin refinement */
:root {
    --legal365-admin-bg: #f6f8fb;
    --legal365-admin-surface: #ffffff;
    --legal365-admin-surface-muted: #f8fafc;
    --legal365-admin-border: rgba(15, 23, 42, 0.08);
    --legal365-admin-border-strong: rgba(15, 23, 42, 0.12);
    --legal365-admin-text: #0f172a;
    --legal365-admin-muted: #64748b;
    --legal365-admin-accent: #2563eb;
    --legal365-admin-accent-soft: rgba(37, 99, 235, 0.08);
    --legal365-admin-sidebar: #111827;
    --legal365-admin-sidebar-surface: #182235;
    --legal365-admin-sidebar-hover: #22304a;
}

body.master365-layout.legal365theme,
body.master365-layout.legalpro365theme {
    background: var(--legal365-admin-bg);
    color: var(--legal365-admin-text);
}

body.master365-layout.legal365theme .master365-topbar,
body.master365-layout.legalpro365theme .master365-topbar {
    background: rgba(255, 255, 255, 0.98);
    border-bottom: 1px solid var(--legal365-admin-border);
    box-shadow: none;
}

body.master365-layout.legal365theme .master365-topbar::after,
body.master365-layout.legalpro365theme .master365-topbar::after {
    display: none;
}

body.master365-layout.legal365theme .master365-sidebar,
body.master365-layout.legalpro365theme .master365-sidebar {
    background: var(--legal365-admin-sidebar);
    border-right: 1px solid rgba(255, 255, 255, 0.05);
}

body.master365-layout.legal365theme .master365-sidebar-workspace,
body.master365-layout.legal365theme .master365-sidebar-status,
body.master365-layout.legalpro365theme .master365-sidebar-workspace,
body.master365-layout.legalpro365theme .master365-sidebar-status {
    background: var(--legal365-admin-sidebar-surface);
    border-color: rgba(255, 255, 255, 0.06);
    border-radius: 14px;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link,
body.master365-layout.legalpro365theme .master365-sidebar .nav-link {
    border-radius: 10px;
    font-weight: 600;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link:hover,
body.master365-layout.legal365theme .master365-sidebar .nav-link.active,
body.master365-layout.legalpro365theme .master365-sidebar .nav-link:hover,
body.master365-layout.legalpro365theme .master365-sidebar .nav-link.active {
    background: var(--legal365-admin-sidebar-hover);
    border-color: rgba(255, 255, 255, 0.05);
}

body.master365-layout.legal365theme .page-header,
body.master365-layout.legalpro365theme .page-header {
    margin-top: 0.75rem;
    margin-bottom: 0.75rem;
}

body.master365-layout.legal365theme .page-pretitle,
body.master365-layout.legal365theme .text-secondary,
body.master365-layout.legalpro365theme .page-pretitle,
body.master365-layout.legalpro365theme .text-secondary {
    color: var(--legal365-admin-muted) !important;
}

body.master365-layout.legal365theme .page-title,
body.master365-layout.legalpro365theme .page-title {
    color: var(--legal365-admin-text);
    font-size: 1.75rem;
    font-weight: 700;
}

body.master365-layout.legal365theme .card,
body.master365-layout.legal365theme .modal-content,
body.master365-layout.legalpro365theme .card,
body.master365-layout.legalpro365theme .modal-content {
    background: var(--legal365-admin-surface);
    border: 1px solid var(--legal365-admin-border);
    border-radius: 14px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 10px 24px rgba(15, 23, 42, 0.04);
}

body.master365-layout.legal365theme .card-title,
body.master365-layout.legalpro365theme .card-title {
    color: var(--legal365-admin-text);
    font-weight: 700;
}

body.master365-layout.legal365theme .btn,
body.master365-layout.legalpro365theme .btn {
    border-radius: 10px;
    font-weight: 600;
}

body.master365-layout.legal365theme .btn-primary,
body.master365-layout.legalpro365theme .btn-primary {
    background: #1d4ed8;
    border-color: #1d4ed8;
}

body.master365-layout.legal365theme .btn-primary:hover,
body.master365-layout.legal365theme .btn-primary:focus,
body.master365-layout.legalpro365theme .btn-primary:hover,
body.master365-layout.legalpro365theme .btn-primary:focus {
    background: #1e40af;
    border-color: #1e40af;
}

body.master365-layout.legal365theme .btn-outline-primary,
body.master365-layout.legalpro365theme .btn-outline-primary {
    color: #1e40af;
    border-color: rgba(30, 64, 175, 0.18);
    background: #ffffff;
}

body.master365-layout.legal365theme .btn-outline-primary:hover,
body.master365-layout.legal365theme .btn-outline-primary:focus,
body.master365-layout.legalpro365theme .btn-outline-primary:hover,
body.master365-layout.legalpro365theme .btn-outline-primary:focus {
    background: var(--legal365-admin-accent-soft);
    border-color: rgba(30, 64, 175, 0.28);
    color: #1e3a8a;
}

body.master365-layout.legal365theme .form-control,
body.master365-layout.legal365theme .form-select,
body.master365-layout.legalpro365theme .form-control,
body.master365-layout.legalpro365theme .form-select {
    min-height: 2.8rem;
    border-radius: 10px;
    border-color: var(--legal365-admin-border-strong);
    background: #ffffff;
}

body.master365-layout.legal365theme .form-control:focus,
body.master365-layout.legal365theme .form-select:focus,
body.master365-layout.legalpro365theme .form-control:focus,
body.master365-layout.legalpro365theme .form-select:focus {
    border-color: rgba(37, 99, 235, 0.38);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.08);
}

.legal365theme-hero {
    padding: 1.5rem 1.75rem;
    border-radius: 14px;
    background: var(--legal365-admin-surface);
    border: 1px solid var(--legal365-admin-border);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 8px 20px rgba(15, 23, 42, 0.03);
    margin-bottom: 1rem;
}

.legal365theme-hero__title {
    color: var(--legal365-admin-text);
    font-size: 1.1rem;
    font-weight: 700;
}

.legal365theme-hero__description {
    color: var(--legal365-admin-muted);
    font-size: 0.98rem;
    line-height: 1.65;
}

.legal365theme-hero__meta-item {
    padding: 0.6rem 0.85rem;
    border-radius: 999px;
    background: var(--legal365-admin-surface);
    border: 1px solid var(--legal365-admin-border);
}

.legal365theme-hero__art img {
    width: min(100%, 150px);
    opacity: 0.9;
}

.legal365theme-surface-panel,
.legal365theme-onboarding-brief,
.legal365theme-onboarding-summary,
.legal365theme-onboarding-metric,
.legal365theme-onboarding-data-card,
.legal365theme-onboarding-note,
.legal365theme-onboarding-panel {
    border-radius: 14px;
    background: var(--legal365-admin-surface);
    border: 1px solid var(--legal365-admin-border);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 8px 20px rgba(15, 23, 42, 0.03);
}

.legal365theme-onboarding-shell {
    gap: 1rem;
}

.legal365theme-onboarding-brief,
.legal365theme-onboarding-summary {
    padding: 1rem;
}

.legal365theme-onboarding-brief-grid,
.legal365theme-onboarding-toolbar {
    gap: 0.75rem;
}

.legal365theme-onboarding-brief-item,
.legal365theme-onboarding-metric,
.legal365theme-onboarding-divider,
.legal365theme-onboarding-option-group {
    border-radius: 12px;
    background: var(--legal365-admin-surface);
    border: 1px solid var(--legal365-admin-border);
}

.legal365theme-onboarding-brief-item > span {
    background: #f1f5f9;
    color: #334155;
}

.legal365theme-onboarding-summary img {
    width: min(100%, 96px);
    opacity: 0.92;
}

.legal365theme-onboarding-status,
.legal365theme-onboarding-intro-eyebrow {
    background: #eff6ff;
    color: #1d4ed8;
    font-weight: 700;
}

.legal365theme-onboarding-progress {
    height: 6px;
    background: #e2e8f0;
}

.legal365theme-onboarding-progress > span {
    background: #2563eb;
}

.legal365theme-onboarding-step {
    padding: 0.8rem 0.9rem;
    border-radius: 10px;
    border: 1px solid var(--legal365-admin-border);
    background: var(--legal365-admin-surface);
}

.legal365theme-onboarding-step:hover {
    border-color: rgba(37, 99, 235, 0.16);
    background: #fbfdff;
}

.legal365theme-onboarding-step.is-active {
    background: #f8fbff;
    border-color: rgba(37, 99, 235, 0.24);
}

.legal365theme-onboarding-step.is-complete {
    background: #f8fafc;
}

.legal365theme-onboarding-step-number {
    background: #e2e8f0;
    color: #334155;
}

.legal365theme-onboarding-step.is-active .legal365theme-onboarding-step-number {
    background: #1d4ed8;
}

.legal365theme-onboarding-step-title,
.legal365theme-onboarding-divider__title,
.legal365theme-onboarding-note__title {
    color: var(--legal365-admin-text);
}

.legal365theme-onboarding-step-description,
.legal365theme-onboarding-divider__text,
.legal365theme-onboarding-intro-description,
.legal365theme-onboarding-brief-item div:last-child,
.legal365theme-onboarding-metric__hint,
.legal365theme-onboarding-note__list,
.legal365theme-onboarding-form-hint {
    color: var(--legal365-admin-muted);
}

.legal365theme-onboarding-intro {
    padding: 1rem 1.1rem;
    border-radius: 12px;
    background: var(--legal365-admin-surface-muted);
    border: 1px solid var(--legal365-admin-border);
}

.legal365theme-onboarding-intro img {
    width: min(100%, 120px);
}

.legal365theme-onboarding-intro-title {
    color: var(--legal365-admin-text);
    font-size: 1.25rem;
    font-weight: 700;
}

.legal365theme-onboarding-finish {
    border-radius: 12px;
    background: #f0fdf4;
    border: 1px solid rgba(34, 197, 94, 0.16);
}

body.master365-layout.legal365theme .legal365theme-onboarding-panel .card-body,
body.master365-layout.legalpro365theme .legal365theme-onboarding-panel .card-body {
    padding: 1rem;
}

body.master365-layout.legal365theme .legal365theme-onboarding-panel .table thead th,
body.master365-layout.legalpro365theme .legal365theme-onboarding-panel .table thead th {
    color: var(--legal365-admin-muted);
}

@media (max-width: 991.98px) {
    .legal365theme-hero {
        padding: 1.25rem;
    }

    .legal365theme-onboarding-summary img,
    .legal365theme-hero__art img,
    .legal365theme-onboarding-intro img {
        width: min(100%, 110px);
    }
}

.legal365theme-onboarding-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.1rem 1.25rem;
    border: 1px solid var(--legal365-admin-border);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 8px 20px rgba(15, 23, 42, 0.03);
}

.legal365theme-onboarding-header__main {
    max-width: 48rem;
}

.legal365theme-onboarding-header__eyebrow {
    color: var(--legal365-admin-muted);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.legal365theme-onboarding-header__title {
    margin: 0.2rem 0 0;
    color: var(--legal365-admin-text);
    font-size: 1.4rem;
    font-weight: 700;
}

.legal365theme-onboarding-header__description {
    margin: 0.55rem 0 0;
    color: var(--legal365-admin-muted);
    font-size: 0.98rem;
    line-height: 1.65;
}

.legal365theme-onboarding-header__meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
    min-width: 280px;
}

.legal365theme-onboarding-header__meta-item {
    padding: 0.9rem 1rem;
    border-radius: 12px;
    border: 1px solid var(--legal365-admin-border);
    background: var(--legal365-admin-surface-muted);
}

.legal365theme-onboarding-header__meta-label {
    display: block;
    color: var(--legal365-admin-muted);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.legal365theme-onboarding-header__meta-value {
    display: block;
    margin-top: 0.32rem;
    color: var(--legal365-admin-text);
    font-size: 0.95rem;
    font-weight: 700;
}

.legal365theme-onboarding-header__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.legal365theme-onboarding-tag {
    display: inline-flex;
    align-items: center;
    padding: 0.4rem 0.7rem;
    border-radius: 999px;
    border: 1px solid var(--legal365-admin-border);
    background: var(--legal365-admin-surface-muted);
    color: var(--legal365-admin-muted);
    font-size: 0.82rem;
    font-weight: 600;
}

.legal365theme-onboarding-brief {
    padding-top: 0.85rem;
    padding-bottom: 0.85rem;
}

.legal365theme-onboarding-summary {
    padding: 0.95rem;
}

.legal365theme-onboarding-summary__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

.legal365theme-onboarding-summary__title {
    margin-top: 0.85rem;
    color: var(--legal365-admin-text);
    font-size: 1rem;
    font-weight: 700;
}

.legal365theme-onboarding-summary__meta {
    margin-top: 0.3rem;
    color: var(--legal365-admin-muted);
    font-size: 0.85rem;
}

.legal365theme-onboarding-toolbar {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 0.85rem;
}

.legal365theme-onboarding-toolbar__item {
    padding: 0.85rem 0.95rem;
    border-radius: 12px;
    background: #fff;
    border: 1px solid var(--legal365-admin-border);
    color: var(--legal365-admin-muted);
    font-size: 0.84rem;
}

.legal365theme-onboarding-toolbar__item span {
    display: block;
    margin-bottom: 0.25rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.legal365theme-onboarding-toolbar__item strong {
    color: var(--legal365-admin-text);
    font-size: 1rem;
    font-weight: 700;
}

.legal365theme-onboarding-intro {
    grid-template-columns: minmax(0, 1fr);
}

.legal365theme-onboarding-intro img {
    display: none;
}

.legal365theme-onboarding-divider {
    padding: 0.8rem 0.9rem;
    background: #fff;
}

.legal365theme-onboarding-panel {
    overflow: visible;
}

body.master365-layout.legal365theme .master365-shell--onboarding,
body.master365-layout.legalpro365theme .master365-shell--onboarding {
    height: auto;
    min-height: calc(100vh - var(--master365-topbar-height));
    overflow: visible;
}

body.master365-layout.legal365theme .master365-page-wrapper--onboarding,
body.master365-layout.legalpro365theme .master365-page-wrapper--onboarding {
    height: auto;
    min-height: calc(100vh - var(--master365-topbar-height));
    overflow: visible;
    width: 100%;
}

body.master365-layout.master365-onboarding-route {
    overflow-y: auto;
    overflow-x: hidden;
}

body.master365-layout.legal365theme .master365-page-body--onboarding,
body.master365-layout.legalpro365theme .master365-page-body--onboarding {
    padding-top: 1rem;
    padding-bottom: 2rem;
}

body.master365-layout.legal365theme .master365-page-body--onboarding > .container-xxl,
body.master365-layout.legalpro365theme .master365-page-body--onboarding > .container-xxl {
    max-width: 1480px;
}

@media (max-width: 991.98px) {
    .legal365theme-onboarding-header {
        flex-direction: column;
    }

    .legal365theme-onboarding-header__meta,
    .legal365theme-onboarding-toolbar {
        grid-template-columns: 1fr;
        min-width: 0;
        width: 100%;
    }

    body.master365-layout.legal365theme .master365-page-body--onboarding,
    body.master365-layout.legalpro365theme .master365-page-body--onboarding {
        padding-top: 0.75rem;
    }
}

/* SAOP business app refinement */
:root {
    --master365-topbar-height: 64px;
}

body.master365-layout.legal365theme,
body.master365-layout.legalpro365theme {
    background: #f3f5f8;
    color: #1f2937;
}

body.master365-layout.legal365theme .master365-topbar,
body.master365-layout.legalpro365theme .master365-topbar {
    background: #ffffff;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
}

body.master365-layout.legal365theme .master365-topbar__inner,
body.master365-layout.legalpro365theme .master365-topbar__inner {
    min-height: 4rem;
}

body.master365-layout.legal365theme .master365-sidebar,
body.master365-layout.legalpro365theme .master365-sidebar {
    background: #1b2431;
}

body.master365-layout.legal365theme .master365-sidebar .container-fluid,
body.master365-layout.legalpro365theme .master365-sidebar .container-fluid {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    gap: 0.5rem;
}

body.master365-layout.legal365theme .master365-sidebar-workspace,
body.master365-layout.legalpro365theme .master365-sidebar-workspace {
    margin: 0 0 0.5rem;
    padding: 0.85rem 0.9rem;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: none;
}

body.master365-layout.legal365theme .master365-sidebar-workspace::after,
body.master365-layout.legalpro365theme .master365-sidebar-workspace::after,
body.master365-layout.legal365theme .master365-sidebar-status,
body.master365-layout.legalpro365theme .master365-sidebar-status {
    display: none;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__eyebrow,
body.master365-layout.legalpro365theme .master365-sidebar-workspace__eyebrow {
    font-size: 0.69rem;
    letter-spacing: 0.08em;
    color: rgba(226, 232, 240, 0.62);
}

body.master365-layout.legal365theme .master365-sidebar-workspace__title,
body.master365-layout.legalpro365theme .master365-sidebar-workspace__title {
    font-size: 0.98rem;
    font-weight: 700;
}

body.master365-layout.legal365theme .master365-sidebar-workspace__meta,
body.master365-layout.legalpro365theme .master365-sidebar-workspace__meta {
    margin-top: 0.18rem;
    font-size: 0.78rem;
    color: rgba(226, 232, 240, 0.62);
}

body.master365-layout.legal365theme .master365-tenant-switcher,
body.master365-layout.legalpro365theme .master365-tenant-switcher {
    margin: 0 0 0.5rem;
}

body.master365-layout.legal365theme .master365-tenant-switcher__trigger,
body.master365-layout.legal365theme .master365-tenant-switcher__single,
body.master365-layout.legalpro365theme .master365-tenant-switcher__trigger,
body.master365-layout.legalpro365theme .master365-tenant-switcher__single {
    min-height: 2.65rem;
    padding: 0.55rem 0.7rem;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: none;
}

body.master365-layout.legal365theme .master365-sidebar-nav,
body.master365-layout.legalpro365theme .master365-sidebar-nav {
    gap: 0.1rem;
}

body.master365-layout.legal365theme .master365-sidebar-section,
body.master365-layout.legalpro365theme .master365-sidebar-section {
    margin-top: 0.3rem;
}

body.master365-layout.legal365theme .master365-sidebar-section-label,
body.master365-layout.legalpro365theme .master365-sidebar-section-label {
    padding: 0.2rem 0.75rem;
    font-size: 0.67rem;
    letter-spacing: 0.08em;
}

body.master365-layout.legal365theme .master365-sidebar-section-label::after,
body.master365-layout.legalpro365theme .master365-sidebar-section-label::after {
    display: none;
}

body.master365-layout.legal365theme .master365-sidebar-submenu,
body.master365-layout.legalpro365theme .master365-sidebar-submenu {
    padding-left: 0;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link,
body.master365-layout.legalpro365theme .master365-sidebar .nav-link {
    margin: 0.06rem 0;
    padding: 0.6rem 0.72rem;
    border-radius: 8px;
    font-size: 0.94rem;
    font-weight: 600;
    color: rgba(226, 232, 240, 0.84);
}

body.master365-layout.legal365theme .master365-sidebar .nav-link:hover,
body.master365-layout.legal365theme .master365-sidebar .nav-link.active,
body.master365-layout.legalpro365theme .master365-sidebar .nav-link:hover,
body.master365-layout.legalpro365theme .master365-sidebar .nav-link.active {
    background: rgba(255, 255, 255, 0.08);
    border-color: transparent;
}

body.master365-layout.legal365theme .master365-sidebar .nav-link .nav-link-icon,
body.master365-layout.legalpro365theme .master365-sidebar .nav-link .nav-link-icon {
    width: 1.7rem;
    height: 1.7rem;
    border-radius: 7px;
    background: rgba(255, 255, 255, 0.05);
}

body.master365-layout.legal365theme .master365-sidebar-link-label .nav-link-title,
body.master365-layout.legalpro365theme .master365-sidebar-link-label .nav-link-title {
    font-weight: 600;
}

body.master365-layout.legal365theme .page-header,
body.master365-layout.legalpro365theme .page-header {
    margin-top: 0.6rem;
    margin-bottom: 0.6rem;
}

body.master365-layout.legal365theme .page-title,
body.master365-layout.legalpro365theme .page-title {
    font-size: 1.55rem;
    font-weight: 700;
}

body.master365-layout.legal365theme .card,
body.master365-layout.legal365theme .modal-content,
body.master365-layout.legalpro365theme .card,
body.master365-layout.legalpro365theme .modal-content {
    border-radius: 10px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

body.master365-layout.legal365theme .card-header,
body.master365-layout.legal365theme .card-footer,
body.master365-layout.legalpro365theme .card-header,
body.master365-layout.legalpro365theme .card-footer {
    padding-top: 0.8rem;
    padding-bottom: 0.8rem;
}

body.master365-layout.legal365theme .card-body,
body.master365-layout.legalpro365theme .card-body {
    padding: 1rem;
}

body.master365-layout.legal365theme .btn,
body.master365-layout.legalpro365theme .btn {
    border-radius: 8px;
    min-height: 2.45rem;
}

body.master365-layout.legal365theme .form-control,
body.master365-layout.legal365theme .form-select,
body.master365-layout.legalpro365theme .form-control,
body.master365-layout.legalpro365theme .form-select {
    min-height: 2.55rem;
    border-radius: 8px;
}

body.master365-layout.legal365theme .table thead th,
body.master365-layout.legalpro365theme .table thead th {
    padding-top: 0.7rem;
    padding-bottom: 0.7rem;
    font-size: 0.72rem;
    letter-spacing: 0.04em;
}

body.master365-layout.legal365theme .table td,
body.master365-layout.legal365theme .table th,
body.master365-layout.legalpro365theme .table td,
body.master365-layout.legalpro365theme .table th {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.legal365theme-hero {
    grid-template-columns: 1fr;
    gap: 0.8rem;
    padding: 1rem 1.1rem;
    border-radius: 10px;
    margin-bottom: 0.75rem;
}

.legal365theme-hero__art,
.legal365theme-state-card__art {
    display: none;
}

.legal365theme-hero__title {
    font-size: 1.02rem;
}

.legal365theme-hero__description {
    font-size: 0.92rem;
    line-height: 1.55;
}

.legal365theme-hero__meta {
    gap: 0.4rem;
}

.legal365theme-hero__meta-item {
    padding: 0.45rem 0.65rem;
    border-radius: 999px;
    font-size: 0.78rem;
}

.legal365theme-hero__actions {
    gap: 0.5rem;
}

.legal365theme-state-card {
    grid-template-columns: 1fr;
    gap: 0;
    padding: 1rem;
    border-radius: 10px;
}

.legal365theme-state-card__badge {
    margin-bottom: 0.6rem;
}

.legal365theme-state-card__title {
    font-size: 1rem;
}

.legal365theme-state-card__description {
    font-size: 0.92rem;
}

.legal365theme-erp-toolbar,
.legal365theme-dashboard-commandbar {
    padding: 0.9rem 1rem;
    border-radius: 10px;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.legal365theme-dashboard-commandbar__stats {
    gap: 0.5rem;
}

.legal365theme-dashboard-stat,
.legal365theme-erp-kpi-card {
    border-radius: 10px;
    box-shadow: none;
}
