/* Afra workspace design system. Scoped to application layouts; print documents
   and third-party editor content keep their own presentation. */
@font-face {
    font-family: Afra;
    src: url("fonts/Yekan.woff") format("woff");
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}

:root {
    --afra-accent: #087f6d;
    --afra-accent-2: #086e60;
    --afra-accent-rgb: 8, 127, 109;
    --afra-accent-soft: #eaf6f2;
    --afra-highlight: #bb8736;
    --afra-bg: #f5f7f9;
    --afra-page: #f5f7f9;
    --afra-bg-soft: #f8fafb;
    --afra-surface: #fff;
    --afra-surface-strong: #fff;
    --afra-surface-2: #f7f9fa;
    --afra-surface-alt: #f7f9fa;
    --afra-surface-raised: #fff;
    --afra-surface-soft: #eef2f4;
    --afra-text: #172b3a;
    --afra-text-soft: #596b79;
    --afra-muted: #687b89;
    --afra-border: #e2e8ed;
    --afra-border-strong: #c9d4dd;
    --afra-shadow-sm: 0 2px 5px rgba(22, 43, 58, .025), 0 0 1px rgba(22, 43, 58, .04);
    --afra-shadow: 0 8px 28px rgba(22, 43, 58, .065);
    --afra-shadow-lg: 0 24px 80px rgba(22, 43, 58, .15);
    --afra-radius-sm: 9px;
    --afra-radius: 14px;
    --afra-radius-lg: 18px;
    --afra-focus: 0 0 0 3px rgba(var(--afra-accent-rgb), .14);
    --afra-topbar: #fff;
    --afra-topbar-border: var(--afra-border);
    --afra-nav-width: 264px;
    --afra-nav-compact-width: 82px;
    --afra-nav-bg: #102c31;
    --afra-nav-surface: #17373c;
    --afra-nav-text: #dbe8e8;
    --afra-nav-muted: #9ab5b7;
    --afra-nav-accent: #8be0c5;
    --afra-nav-border: rgba(219, 238, 233, .09);
    --afra-shell-gap: 12px;
    --afra-header-height: 76px;
    --vz-primary: #087f6d;
    --vz-primary-rgb: 8, 127, 109;
    --vz-success: #087f6d;
    --vz-success-rgb: 8, 127, 109;
    --vz-link-color: #087f6d;
    --vz-link-hover-color: #086e60;
    --vz-body-color: #172b3a;
    --vz-body-bg: #f5f7f9;
    --vz-secondary-bg: #fff;
    --vz-border-color: #e2e8ed;
    --vz-vertical-menu-width: 264px;
    --vz-header-height: 76px;
    --bs-primary: #087f6d;
    --bs-primary-rgb: 8, 127, 109;
    --bs-link-color: #087f6d;
    --bs-body-color: #172b3a;
    --bs-body-bg: #f5f7f9;
    --bs-border-color: #e2e8ed;
}

html[data-bs-theme="dark"] {
    --afra-accent: #73d8bb;
    --afra-accent-2: #91e4cc;
    --afra-accent-rgb: 115, 216, 187;
    --afra-accent-soft: #193b36;
    --afra-bg: #101b22;
    --afra-page: #101b22;
    --afra-bg-soft: #15232b;
    --afra-surface: #192a33;
    --afra-surface-strong: #1d303a;
    --afra-surface-2: #20333e;
    --afra-surface-alt: #20333e;
    --afra-surface-raised: #20333e;
    --afra-surface-soft: #243b46;
    --afra-text: #e4edf2;
    --afra-text-dark: #e4edf2;
    --afra-text-soft: #b2c3cf;
    --afra-muted: #a0b4c0;
    --afra-muted-dark: #a0b4c0;
    --afra-border: #304651;
    --afra-border-dark: #304651;
    --afra-border-strong: #49616c;
    --afra-topbar: #192a33;
    --afra-shadow-sm: 0 2px 5px rgba(0, 0, 0, .09);
    --afra-shadow: 0 8px 28px rgba(0, 0, 0, .16);
    --afra-shadow-lg: 0 24px 80px rgba(0, 0, 0, .35);
    --vz-primary: #73d8bb;
    --vz-primary-rgb: 115, 216, 187;
    --vz-body-color: #e4edf2;
    --vz-body-bg: #101b22;
    --vz-secondary-bg: #192a33;
    --vz-border-color: #304651;
    --bs-body-color: #e4edf2;
    --bs-body-bg: #101b22;
    --bs-border-color: #304651;
}

html:has(body.afra-premium) { background: var(--afra-bg); scroll-padding-top: 100px; }
body.afra-premium {
    margin: 0;
    background: var(--afra-bg) !important;
    color: var(--afra-text) !important;
    font: 14px/1.8 Afra, Tahoma, sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}
.afra-premium :is(h1, h2, h3, h4, h5, h6, p, button, input, select, textarea, label, strong, small, td, th, kbd, .k-input-inner) {
    font-family: Afra, Tahoma, sans-serif;
}
/* Icon font declarations remain untouched. */
.afra-premium :is(h1, h2, h3, h4, h5, h6, .card-title, .modal-title) { font-family: Afra, Tahoma, sans-serif !important; color: var(--afra-text); font-weight: 700; line-height: 1.6; }
.afra-premium h1 { font-size: clamp(24px, 2.2vw, 32px); }
.afra-premium h2 { font-size: clamp(21px, 1.8vw, 26px); }
.afra-premium :is(h3, h4) { font-size: 19px; }
.afra-premium :is(h5, h6, .card-title) { font-size: 16px; }
.afra-premium :is(p, label) { line-height: 1.85; }
.afra-premium .text-muted { color: var(--afra-muted) !important; }
.afra-premium .text-primary { color: var(--afra-accent) !important; }
.afra-premium a { text-decoration: none; }
.afra-premium a:focus-visible,
.afra-premium button:focus-visible,
.afra-premium [tabindex="0"]:focus-visible { outline: 2px solid var(--afra-accent); outline-offset: 3px; }
.afra-premium input::placeholder, .afra-premium textarea::placeholder { color: var(--afra-muted); opacity: .85; }
.afra-premium ::selection { background: var(--afra-accent-soft); color: var(--afra-accent); }
.afra-premium #layout-wrapper::before, .afra-premium .page-content > .area { display: none; }
.afra-premium #main-content { min-width: 0; overflow: visible; border-radius: 0; }
.afra-premium .main-content {
    min-width: 0;
    margin-left: 0;
    padding: 0;
    background: transparent !important;
    transition: margin-right .22s ease;
}
.afra-premium .page-content {
    position: relative;
    top: 0;
    margin: 0 !important;
    min-width: 0;
    min-height: 100vh !important;
    padding: var(--afra-header-height) 0 28px !important;
    border: 0;
    border-radius: 0;
    box-shadow: none !important;
    background: var(--afra-bg) !important;
}
.afra-premium .page-content > .container-fluid.app-container {
    width: 100%;
    min-width: 0;
    padding: 22px clamp(16px, 2vw, 32px) 16px;
    flex: 1 1 auto;
}

/* Navigation: a single compact, deliberate frame. */
.afra-premium .app-menu.navbar-menu {
    background: var(--afra-nav-bg) !important;
    border: 1px solid var(--afra-nav-border) !important;
    border-radius: 18px !important;
    box-shadow: 0 4px 16px rgba(16, 44, 49, .08) !important;
    z-index: 1005;
}
.afra-premium .app-menu.navbar-menu::before { display: none; }
.afra-premium .afra-sidebar-header { min-height: 81px; padding: 20px 17px; gap: 8px; }
.afra-premium .afra-sidebar-brand { flex: 1; gap: 12px; }
.afra-premium .afra-sidebar-mark { width: 42px; height: 42px; flex-basis: 42px; border-radius: 12px; color: #102c31; background: #b4e8d4; box-shadow: none; }
.afra-premium .afra-sidebar-mark svg { width: 29px; height: 29px; }
.afra-premium .afra-sidebar-brand-logo { width: 29px; height: 29px; object-fit: contain; }
.afra-premium .afra-sidebar-mark [hidden] { display: none; }
.afra-premium .afra-sidebar-brand-copy strong { font-size: 22px !important; line-height: 1.4; font-weight: 700; }
.afra-premium .afra-sidebar-brand-copy small { font-size: 11px; color: #a8c1c0; }
.afra-premium .afra-sidebar-compact-btn { width: 29px; height: 29px; border-radius: 8px; flex-shrink: 0; background: transparent; color: #a8c1c0; }
.afra-premium .afra-sidebar-search-wrap { margin: 18px 14px 12px; height: 41px; border-radius: 9px; background: rgba(255,255,255,.035); }
.afra-premium .afra-sidebar-search { font-size: 13px; }
.afra-premium .afra-sidebar-search::placeholder { color: #aac1c1; }
.afra-premium .afra-sidebar-section-label { display: flex; justify-content: space-between; align-items: center; padding: 7px 22px 12px; color: #9ab6b6; font-size: 11px; }
.afra-premium .afra-sidebar-section-dot { width: 5px; height: 5px; border-radius: 50%; background: #70bfa8; }
.afra-premium .sidebar-shell { padding: 0 10px 18px !important; }
.afra-premium .navbar-menu #navbar-nav > .nav-item { margin: 3px 0; border-radius: 9px; }
.afra-premium .navbar-menu #navbar-nav .nav-link.menu-link {
    gap: 10px;
    min-height: 45px;
    padding: 7px 11px !important;
    border: 1px solid transparent !important;
    border-radius: 9px;
    color: #d3e2e3 !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 13px;
    text-decoration: none !important;
}
.afra-premium .navbar-menu #navbar-nav .nav-link.menu-link:hover { color: #fff !important; background: rgba(255,255,255,.055) !important; }
.afra-premium .navbar-menu #navbar-nav .nav-link.menu-link:is(.active, [aria-expanded="true"]) { background: #21473f !important; border-color: #335b4e !important; color: #b8ecd8 !important; }
.afra-premium .navbar-menu #navbar-nav .nav-link.menu-link > span { color: inherit !important; }
.afra-premium .side-icon { width: 29px !important; height: 29px !important; flex: 0 0 29px; background: transparent !important; color: inherit !important; box-shadow: none; border-radius: 7px; font-size: 19px; }
.afra-premium .side-icon :is(img, svg) { max-width: 23px; max-height: 23px; }
.afra-premium .navbar-menu #navbar-nav .menu-dropdown { margin: 3px 24px 8px 6px; padding: 2px 9px 3px 0; border-right: 1px solid #345055; }
.afra-premium .navbar-menu #navbar-nav .nav-sm .nav-link { min-height: 35px; padding: 7px 10px !important; border-radius: 7px; color: #aac3c5 !important; font-size: 12px; line-height: 1.65; }
.afra-premium .navbar-menu #navbar-nav .nav-sm .nav-link:is(:hover, .active) { background: rgba(171,224,206,.07) !important; color: #c6f2e2 !important; padding-right: 10px !important; }
.afra-premium .afra-sidebar-footer { display: flex; align-items: center; gap: 9px; padding: 16px; border-top: 1px solid var(--afra-nav-border); flex: 0 0 auto; }
.afra-premium .afra-sidebar-footer-icon { display: grid; place-items: center; width: 32px; height: 36px; color: #9cd9c5; font-size: 22px; }
.afra-premium .afra-sidebar-footer > div { flex: 1; min-width: 0; }
.afra-premium .afra-sidebar-footer strong { display: block; color: #d4e6e4; font-size: 12px !important; font-weight: 400; }
.afra-premium .afra-sidebar-footer div > span { display: block; color: #96b2b5; font-size: 10px; }
.afra-premium .afra-sidebar-footer button, .afra-premium .afra-sidebar-mobile-close { display: grid; place-items: center; width: 32px; height: 32px; padding: 0; color: #b5d0ce; border: 1px solid var(--afra-nav-border); border-radius: 8px; background: transparent; font-size: 18px; }
.afra-premium .afra-sidebar-mobile-close { display: none; }
.afra-premium .afra-sidebar-scroll { scrollbar-color: #456469 transparent; }

/* Header and context. Search and account stay available at every width. */
.afra-premium #page-topbar { position: fixed !important; top: 0; left: 0 !important; padding: 0; height: var(--afra-header-height); z-index: 1002; transition: right .22s ease; }
.afra-premium #page-topbar .layout-width { height: 100%; margin: 0; padding: 0 clamp(16px, 2vw, 32px); border: 0 !important; border-bottom: 1px solid var(--afra-border) !important; border-radius: 0; background: var(--afra-topbar) !important; box-shadow: none !important; backdrop-filter: none; }
.afra-premium .navbar-header.topbar-shell { height: 100%; min-height: 0; padding: 0; gap: 18px; }
.afra-premium .topbar-start { flex: 1; min-width: 0; gap: 16px !important; }
.afra-premium .topbar-end { gap: 3px !important; flex-shrink: 0; }
.afra-premium .topbar-brand-box { display: none !important; }
.afra-premium .topbar-search-form { width: min(100%, 350px); max-width: 350px; min-width: 100px; padding: 0; margin: 0; flex: 1; }
.afra-premium .topbar-search-form .topbar-search-input { height: 41px; min-height: 41px; padding: 7px 38px 7px 14px; border: 1px solid var(--afra-border) !important; border-radius: 9px !important; background: var(--afra-surface-2) !important; box-shadow: none; font-size: 12px; }
.afra-premium .topbar-search-form .search-widget-icon { line-height: 41px; font-size: 19px; right: 12px; color: var(--afra-muted); }
.afra-premium .topbar-inline-history-shell { display: none !important; }
.afra-premium .navbar-header .btn-topbar { display: inline-grid; place-items: center; width: 38px; height: 38px; padding: 0; color: var(--afra-muted) !important; border: 1px solid transparent; border-radius: 9px !important; background: transparent; box-shadow: none; }
.afra-premium .navbar-header .btn-topbar:hover { color: var(--afra-accent) !important; background: var(--afra-accent-soft); border-color: transparent; }
.afra-premium .navbar-header .btn-topbar > i { font-size: 21px !important; }
.afra-premium .topbar-user { margin-inline-start: 10px !important; padding-inline-start: 12px; border-inline-start: 1px solid var(--afra-border); background: transparent; }
.afra-premium .topbar-user > .btn { padding: 0; min-height: 42px; border: 0; box-shadow: none !important; background: transparent; }
.afra-premium .topbar-user .header-profile-user { width: 36px; height: 36px; padding: 2px; border: 1px solid var(--afra-border); background: var(--afra-surface); object-fit: cover; }
.afra-premium .topbar-user .user-name-text { max-width: 130px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--afra-text) !important; font-size: 13px; }
.afra-premium .topbar-user .user-name-sub-text { font-size: 11px !important; color: var(--afra-muted) !important; }
.afra-premium .topbar-badge { border: 2px solid var(--afra-topbar); min-width: 18px; padding: 2px 4px; line-height: 1; top: 7px; }
.afra-premium .afra-command-trigger { display: inline-flex; align-items: center; gap: 8px; padding: 8px 11px; min-height: 41px; color: var(--afra-muted); border: 1px solid var(--afra-border); border-radius: 9px; background: var(--afra-surface); font-size: 12px; white-space: nowrap; }
.afra-premium .afra-command-trigger > i { font-size: 19px; color: var(--afra-accent); }
.afra-premium :is(.afra-command-trigger, .afra-workspace-switch):hover { border-color: var(--afra-accent); color: var(--afra-accent); }
.afra-premium kbd { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; padding: 0 5px; color: var(--afra-muted); background: var(--afra-surface-2); border: 1px solid var(--afra-border); border-bottom-width: 2px; border-radius: 4px; font: 10px/1.8 Arial, sans-serif; box-shadow: none; }
.afra-premium .afra-workspace-bar { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: -2px 0 5px; min-height: 32px; }
.afra-premium .afra-workspace-breadcrumb { display: flex; align-items: center; min-width: 0; gap: 9px; font-size: 12px; color: var(--afra-muted); }
.afra-premium .afra-workspace-breadcrumb > a { display: inline-flex; align-items: center; gap: 6px; color: var(--afra-muted); flex-shrink: 0; }
.afra-premium .afra-workspace-breadcrumb > a:hover { color: var(--afra-accent); }
.afra-premium .afra-workspace-breadcrumb i { font-size: 16px; }
.afra-premium .afra-workspace-current { color: var(--afra-text); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.afra-premium .afra-workspace-switch { display: inline-flex; align-items: center; gap: 7px; padding: 4px 0; color: var(--afra-muted); background: transparent; border: 0; font-size: 11px; flex-shrink: 0; }
.afra-premium .afra-workspace-switch i { font-size: 16px; }
.afra-premium .afra-eyebrow { display: block; color: var(--afra-accent); font-size: 11px; margin-bottom: 5px; letter-spacing: .02em; }

/* Reusable surfaces, content and controls. */
.afra-premium :is(.card, .list-card, .list-hub-filters, .list-empty, .search-block, .modal-content, .offcanvas, .accordion-item) { border: 1px solid var(--afra-border) !important; background: var(--afra-surface) !important; color: var(--afra-text); box-shadow: var(--afra-shadow-sm) !important; }
.afra-premium :is(.card, .list-card) { border-radius: var(--afra-radius) !important; }
.afra-premium .card { margin-bottom: 20px; overflow: visible; }
.afra-premium .card-header { padding: 17px 20px; background: var(--afra-surface) !important; border-bottom: 1px solid var(--afra-border) !important; border-radius: var(--afra-radius) var(--afra-radius) 0 0 !important; color: var(--afra-text) !important; }
.afra-premium .card-body { padding: 20px; }
.afra-premium .card-footer { padding: 14px 20px; border-top: 1px solid var(--afra-border); background: var(--afra-surface-2); border-radius: 0 0 var(--afra-radius) var(--afra-radius); }
.afra-premium .card-title { margin: 0; }
.afra-premium .btn { min-height: 39px; padding: 8px 15px; font-size: 13px !important; font-weight: 500; line-height: 1.65; border-radius: 8px !important; box-shadow: none; transition: background-color .16s, border-color .16s, color .16s, box-shadow .16s; }
.afra-premium .btn:is(:disabled, .disabled) { opacity: .5; }
.afra-premium .btn-sm { min-height: 33px; padding: 5px 11px; font-size: 12px !important; border-radius: 7px !important; }
.afra-premium .btn-lg { min-height: 46px; padding: 10px 20px; font-size: 14px !important; }
.afra-premium .btn-primary, .afra-premium .btn-success { color: #fff !important; background: #087f6d !important; border-color: #087f6d !important; }
.afra-premium :is(.btn-primary, .btn-success):hover { background: #076b5c !important; border-color: #076b5c !important; box-shadow: 0 3px 9px rgba(8,127,109,.16); }
.afra-premium :is(.btn-soft-primary, .btn-soft-success) { color: var(--afra-accent) !important; background: var(--afra-accent-soft) !important; border-color: transparent !important; }
.afra-premium :is(.btn-outline-primary, .btn-outline-success) { color: var(--afra-accent); border-color: rgba(var(--afra-accent-rgb), .4); background: transparent; }
.afra-premium :is(.btn-outline-primary, .btn-outline-success):hover { background: var(--afra-accent-soft); border-color: var(--afra-accent); color: var(--afra-accent); }
html[data-bs-theme="dark"] .afra-premium :is(.btn-outline-primary, .btn-outline-success) { background: transparent !important; border-color: rgba(var(--afra-accent-rgb), .4) !important; color: var(--afra-accent) !important; }
html[data-bs-theme="dark"] .afra-premium :is(.btn-outline-primary, .btn-outline-success):hover { background: var(--afra-accent-soft) !important; }
.afra-premium :is(.btn-secondary, .btn-outline-secondary, .btn-light) { color: var(--afra-text); border-color: var(--afra-border); background: var(--afra-surface); }
.afra-premium :is(.btn-secondary, .btn-outline-secondary, .btn-light):hover { border-color: var(--afra-border-strong); background: var(--afra-surface-2); }
html[data-bs-theme="dark"] .afra-premium :is(.btn-secondary, .btn-outline-secondary, .btn-light) { background: var(--afra-surface) !important; border-color: var(--afra-border) !important; color: var(--afra-text) !important; }
html[data-bs-theme="dark"] .afra-premium :is(.btn-soft-primary, .btn-soft-success) { background: var(--afra-accent-soft) !important; border-color: transparent !important; color: var(--afra-accent) !important; }
.afra-premium .btn-danger { background: #b94343; border-color: #b94343; color: #fff; }
.afra-premium :is(.btn-soft-danger, .btn-outline-danger) { color: #b94343; background: rgba(185,67,67,.055); border-color: rgba(185,67,67,.2); }
.afra-premium .btn-soft-info { color: #276b96; background: rgba(39,107,150,.07); border-color: rgba(39,107,150,.12); }
.afra-premium .bg-primary { background: #087f6d !important; }
.afra-premium :is(.bg-primary-subtle, .bg-soft-primary) { color: var(--afra-accent) !important; background: var(--afra-accent-soft) !important; }
.afra-premium .badge { font-size: 11px; font-weight: 500; padding: 5px 9px; border-radius: 5px; line-height: 1.4; }
.afra-premium label.form-label { display: inline-block; margin-bottom: 7px; font-size: 13px; color: var(--afra-text); font-weight: 500; }
.afra-premium :is(.form-control, .form-select, .select2-container--default .select2-selection--single, .select2-container--default .select2-selection--multiple, .k-input, .k-textbox, .k-textarea, .k-picker) { color: var(--afra-text) !important; background: var(--afra-surface) !important; border-color: var(--afra-border-strong) !important; border-radius: 8px !important; box-shadow: none; }
.afra-premium :is(input.form-control, select.form-select) { min-height: 41px; font-size: 13px; padding-block: 8px; }
.afra-premium textarea.form-control { min-height: 108px; font-size: 13px; resize: vertical; }
.afra-premium :is(.form-control, .form-select):focus { border-color: var(--afra-accent) !important; box-shadow: var(--afra-focus) !important; }
.afra-premium :is(.form-control, .form-select):disabled { background: var(--afra-surface-2) !important; color: var(--afra-muted) !important; }
.afra-premium .form-text { font-size: 12px; color: var(--afra-muted); }
.afra-premium .input-group-text { color: var(--afra-muted); background: var(--afra-surface-2); border-color: var(--afra-border-strong); border-radius: 8px; }
.afra-premium .input-group > :not(:first-child) { border-start-start-radius: 0 !important; border-end-start-radius: 0 !important; }
.afra-premium .input-group > :not(:last-child) { border-start-end-radius: 0 !important; border-end-end-radius: 0 !important; }
.afra-premium .form-check-input { width: 17px; height: 17px; border-color: var(--afra-border-strong); accent-color: #087f6d; cursor: pointer; }
.afra-premium .form-check-input:checked { background-color: #087f6d; border-color: #087f6d; }
.afra-premium .form-check-label { padding-inline-start: 3px; color: var(--afra-text); }
.afra-premium :is(.select2-container--default .select2-selection--single) { height: 41px !important; display: flex; align-items: center; }
.afra-premium .select2-container--default .select2-selection--single .select2-selection__rendered { padding-inline: 12px 30px; line-height: 1.6; color: var(--afra-text); }
.afra-premium .select2-container--default .select2-selection--single .select2-selection__arrow { top: 8px !important; }
.afra-premium .select2-dropdown { background: var(--afra-surface); color: var(--afra-text); border-color: var(--afra-border-strong); border-radius: 8px; box-shadow: var(--afra-shadow); }
.afra-premium .select2-search__field { background: var(--afra-surface); color: var(--afra-text); }
.afra-premium .select2-container--default .select2-results__option--highlighted[aria-selected] { background: var(--afra-accent-soft); color: var(--afra-accent); }
.afra-premium .k-input-inner { font-family: Afra, Tahoma, sans-serif !important; font-size: 13px; }
.afra-premium :is(.k-input-md, .k-picker-md) { min-height: 39px; }
.afra-premium .k-button { border-radius: 8px !important; font-size: 13px !important; }
.afra-premium :is(.k-button-solid-primary, .k-button-solid.k-primary) { background: #087f6d !important; border-color: #087f6d !important; color: #fff !important; }
.afra-premium :is(.k-list-item.k-selected, .k-list-optionlabel.k-selected, .k-chip-solid-base.k-selected) { background: var(--afra-accent-soft) !important; border-color: transparent !important; color: var(--afra-accent) !important; }
.afra-premium :is(.k-popup, .k-list-container, .k-window, .k-dialog) { border-color: var(--afra-border) !important; background: var(--afra-surface) !important; color: var(--afra-text) !important; }
.afra-premium :is(.k-window-titlebar, .k-dialog-titlebar) { padding: 14px 18px; background: var(--afra-surface-2) !important; color: var(--afra-text) !important; border-color: var(--afra-border) !important; }
.afra-premium .k-list-item:hover { background: var(--afra-accent-soft) !important; color: var(--afra-accent) !important; }
.afra-premium [class*="ag-theme-"] {
    --ag-background-color: var(--afra-surface);
    --ag-foreground-color: var(--afra-text);
    --ag-header-background-color: var(--afra-surface-2);
    --ag-header-foreground-color: var(--afra-muted);
    --ag-border-color: var(--afra-border);
    --ag-selected-row-background-color: var(--afra-accent-soft);
    --ag-row-hover-color: var(--afra-accent-soft);
    --ag-font-family: Afra, Tahoma, sans-serif;
    --ag-font-size: 13px;
}
.afra-premium .field-validation-error { display: block; margin-top: 5px; font-size: 12px; color: #b94343; }
.afra-premium :is(.form-control, .form-select).input-validation-error { border-color: #b94343 !important; }

/* List hubs: clear page hierarchy, contextual stats and scannable records. */
.afra-premium .list-hub { gap: 20px; min-width: 0; color: var(--afra-text); }
.afra-premium .list-hub-hero { grid-template-columns: minmax(0, 1fr) auto; gap: 28px; padding: 28px; align-items: center; border: 1px solid var(--afra-border); border-radius: var(--afra-radius-lg); background: var(--afra-surface) !important; box-shadow: var(--afra-shadow-sm); position: relative; overflow: hidden; }
.afra-premium .list-hub-hero::before { content: ""; position: absolute; inset-block: 25px; inset-inline-start: 0; width: 3px; border-radius: 3px; background: var(--afra-accent); }
.afra-premium .list-hub-kicker { margin-bottom: 6px; color: var(--afra-accent); letter-spacing: .025em; font-size: 11px; font-weight: 500; }
.afra-premium .list-hub-hero h2 { font-size: clamp(23px, 2vw, 29px); margin-bottom: 7px; color: var(--afra-text); }
.afra-premium .list-hub-hero p { max-width: 680px; margin-bottom: 0; color: var(--afra-muted); font-size: 13px; }
.afra-premium .list-hub-stats { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0; grid-auto-flow: initial; }
.afra-premium .list-hub-stat { min-width: 105px; padding: 6px 22px; background: transparent !important; border: 0 !important; border-inline-start: 1px solid var(--afra-border) !important; border-radius: 0; box-shadow: none !important; text-align: start; }
.afra-premium .list-hub-stat span { color: var(--afra-text); font-size: 28px; font-weight: 700; line-height: 1.4; font-variant-numeric: tabular-nums; }
.afra-premium .list-hub-stat label { margin-top: 3px; color: var(--afra-muted); font-size: 11px; white-space: nowrap; }
.afra-premium .list-hub-stat.action span { color: var(--afra-accent); }
.afra-premium .list-hub-stat.danger span { color: #b94343; }
.afra-premium .list-hub-toolbar { gap: 12px; grid-template-columns: minmax(160px, 1fr) auto; align-items: center; }
.afra-premium .list-hub-search input { min-height: 43px; height: 43px; border-radius: 9px; border-color: var(--afra-border-strong); background: var(--afra-surface); color: var(--afra-text); padding-inline: 40px 14px; font-size: 13px; outline: 0; }
.afra-premium .list-hub-search input:focus { border-color: var(--afra-accent); box-shadow: var(--afra-focus); }
.afra-premium .list-hub-search i { font-size: 17px; color: var(--afra-muted); }
.afra-premium .list-hub-actions { gap: 7px; align-items: center; }
.afra-premium .list-hub-filters { padding: 10px; gap: 6px; border-radius: 11px; }
.afra-premium .list-filter { padding: 7px 13px; min-height: 36px; font-size: 12px; font-weight: 400; border: 1px solid transparent !important; border-radius: 7px; background: transparent !important; color: var(--afra-muted) !important; transition: background .15s, color .15s; }
.afra-premium .list-filter:hover { background: var(--afra-surface-2) !important; color: var(--afra-text) !important; }
.afra-premium .list-filter.active { border-color: rgba(var(--afra-accent-rgb), .12) !important; background: var(--afra-accent-soft) !important; color: var(--afra-accent) !important; font-weight: 700; }
.afra-premium .list-filter strong { display: inline-block; min-width: 19px; margin-inline-start: 5px; padding: 0 5px; border-radius: 4px; background: rgba(122,140,151,.09); font-size: 11px !important; }
.afra-premium .list-grid { gap: 16px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); }
.afra-premium :is(.list-grid.is-rows, html.afra-list-rows .list-grid) { grid-template-columns: 1fr; }
.afra-premium .list-card { position: relative; padding: 20px; gap: 15px; transition: border-color .18s, box-shadow .18s; }
.afra-premium .list-card:hover { border-color: rgba(var(--afra-accent-rgb), .35) !important; box-shadow: var(--afra-shadow) !important; }
.afra-premium .list-card-top { min-width: 0; gap: 12px; }
.afra-premium .list-card-top h3 { color: var(--afra-text); font-size: 16px; line-height: 1.8; margin: 0; overflow-wrap: anywhere; }
.afra-premium .list-card-code { color: var(--afra-muted); font-size: 11px; margin-bottom: 3px; letter-spacing: .025em; }
.afra-premium .list-card-grid { color: var(--afra-text); gap: 12px; }
.afra-premium .list-card-grid label { color: var(--afra-muted) !important; font-size: 11px; }
.afra-premium .list-card-grid strong { color: var(--afra-text); font-size: 13px !important; font-weight: 500; overflow-wrap: anywhere; }
.afra-premium .list-card-badge { border-radius: 5px; padding: 4px 8px; font-size: 10px; font-weight: 400; white-space: nowrap; background: var(--afra-accent-soft); color: var(--afra-accent); }
.afra-premium .list-card-summary { color: var(--afra-muted); font-size: 12px; }
.afra-premium .list-card-actions { gap: 7px; padding-top: 13px; border-top: 1px solid var(--afra-border); flex-wrap: wrap; }
.afra-premium .list-card-actions .btn { min-height: 33px; padding: 5px 12px; font-size: 12px !important; }
.afra-premium .list-card-warning { padding: 9px 12px; border-radius: 7px; color: #a65c25; border: 1px solid rgba(166,92,37,.15); background: rgba(187,135,54,.07); font-size: 12px; }
.afra-premium .smart-filter-panel { padding: 20px; border: 1px solid var(--afra-border); border-radius: 11px; background: var(--afra-surface); }
.afra-premium .smart-filter-row { gap: 15px; }
.afra-premium .smart-filter-group > label { color: var(--afra-muted); font-weight: 500; }
.afra-premium .smart-filter-group :is(input:not([type="checkbox"]):not([type="radio"]), select) { height: 41px; background: var(--afra-surface); color: var(--afra-text); border-color: var(--afra-border-strong); }
.afra-premium :is(.list-empty, .afra-empty) { grid-column: 1 / -1; padding: 42px 24px; text-align: center; border: 1px dashed var(--afra-border-strong); border-radius: var(--afra-radius); background: var(--afra-surface); color: var(--afra-muted); box-shadow: none !important; }
.afra-premium .afra-empty > i { display: inline-grid; place-items: center; width: 60px; height: 60px; margin-bottom: 16px; border-radius: 18px; background: var(--afra-accent-soft); color: var(--afra-accent); font-size: 29px; }
.afra-premium .afra-empty h6 { color: var(--afra-text); font-size: 17px; margin-bottom: 7px; }
.afra-premium .afra-empty p { color: var(--afra-muted); max-width: 460px; margin-inline: auto; font-size: 13px; }
.afra-premium .list-loader { grid-column: 1 / -1; color: var(--afra-muted); padding: 24px; text-align: center; }
.afra-premium .list-view-toggle { min-height: 39px; border-radius: 8px; border-color: var(--afra-border); background: var(--afra-surface); color: var(--afra-muted); }

/* Forms share the same hierarchy as list and detail workspaces. */
.afra-premium .form-hub { gap: 20px; min-width: 0; }
.afra-premium .form-hub-hero { padding: 26px 28px; background: var(--afra-surface) !important; border-color: var(--afra-border) !important; border-radius: var(--afra-radius-lg); }
.afra-premium .form-hub-hero h2 { font-size: 26px; margin-bottom: 6px; }
.afra-premium .form-hub-hero p { color: var(--afra-muted) !important; font-size: 13px; }
.afra-premium .form-section { padding: 25px; background: var(--afra-surface); border-color: var(--afra-border); border-radius: var(--afra-radius); }
.afra-premium .form-section-title { display: flex; align-items: center; gap: 9px; margin-bottom: 24px; padding: 0 0 14px; color: var(--afra-text) !important; border: 0; border-bottom: 1px solid var(--afra-border); border-radius: 0; background: transparent; text-align: start; font-size: 17px; }
.afra-premium .form-section-title > i { color: var(--afra-accent); }
.afra-premium .form-grid { gap: 21px 24px; min-width: 0; }
.afra-premium .form-grid > * { min-width: 0; }
.afra-premium .afra-actionbar { gap: 9px; margin-top: 12px; padding: 15px 20px; border: 1px solid var(--afra-border); border-radius: 11px; background: var(--afra-surface); box-shadow: 0 -4px 18px rgba(22,43,58,.035); backdrop-filter: none; bottom: 12px; }
html[data-bs-theme="dark"] .afra-premium :is(.form-section, .afra-actionbar) { background: var(--afra-surface) !important; border-color: var(--afra-border) !important; }
@media (max-width: 767.98px) {
    .afra-premium :is(.form-hub-hero, .form-section) { padding: 20px 17px; }
    .afra-premium .form-hub-hero h2 { font-size: 23px; }
    .afra-premium .form-grid { grid-template-columns: 1fr; gap: 18px; }
    .afra-premium .afra-actionbar { padding: 12px; bottom: 8px; flex-wrap: wrap; }
    .afra-premium .afra-actionbar > .btn { flex: 1 1 auto; }
}

/* Dense data stays tabular, with scrolling constrained to its own region. */
.afra-premium .table { --vz-table-bg: var(--afra-surface); --vz-table-color: var(--afra-text); --vz-table-border-color: var(--afra-border); --vz-table-hover-bg: var(--afra-accent-soft); --bs-table-bg: var(--afra-surface); color: var(--afra-text); margin-bottom: 0; font-size: 13px; }
.afra-premium .table > :not(caption) > * > * { padding: 12px 14px; color: inherit; border-color: var(--afra-border); background: var(--afra-surface); vertical-align: middle; box-shadow: none; }
.afra-premium .table thead th { background: var(--afra-surface-2) !important; color: var(--afra-muted); font-size: 12px; font-weight: 500; white-space: nowrap; padding-block: 13px; }
.afra-premium .table.table-hover tbody tr:hover > * { background: var(--afra-accent-soft); }
.afra-premium .table-responsive { max-width: 100%; overscroll-behavior-inline: contain; scrollbar-color: var(--afra-border-strong) transparent; }
.afra-premium .afra-table-scroll { max-width: 100%; overflow-x: auto; border-radius: 9px; overscroll-behavior-inline: contain; }
.afra-premium .afra-table-scroll:focus-visible { outline: 2px solid var(--afra-accent); outline-offset: 2px; }
.afra-premium .detail-kv { min-width: 0; }
.afra-premium .detail-kv label { color: var(--afra-muted); background: transparent; font-size: 12px; font-weight: 400; }
.afra-premium .detail-kv :is(span, strong) { color: var(--afra-text); overflow-wrap: anywhere; }
.afra-premium .nav-tabs { gap: 3px; border-bottom-color: var(--afra-border); }
.afra-premium .nav-tabs .nav-link { padding: 12px 16px; color: var(--afra-muted); border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: transparent; font-size: 13px; }
.afra-premium .nav-tabs .nav-link.active { color: var(--afra-accent) !important; background: transparent !important; border-bottom: 2px solid var(--afra-accent); }
.afra-premium .nav-pills .nav-link { padding: 9px 14px; border-radius: 8px; color: var(--afra-muted); }
.afra-premium .nav-pills .nav-link.active { background: var(--afra-accent-soft); color: var(--afra-accent) !important; }
.afra-premium .pagination { gap: 4px; }
.afra-premium .page-link { border-radius: 7px; border: 1px solid var(--afra-border); background: var(--afra-surface); color: var(--afra-text); padding: 6px 12px; }
.afra-premium .page-item.active .page-link { background: #087f6d; border-color: #087f6d; color: #fff; }

/* Dialogs use one surface and predictable, reachable actions. */
.afra-premium .modal-dialog { padding: 0; }
.afra-premium .modal-content { border-radius: var(--afra-radius-lg) !important; box-shadow: var(--afra-shadow-lg) !important; overflow: hidden; }
.afra-premium .modal-header { padding: 18px 22px; background: var(--afra-surface) !important; border-bottom-color: var(--afra-border); }
.afra-premium .modal-dialog:not(.modal-dialog-scrollable) .modal-header .btn-close { margin-block: 0; padding: 9px; }
.afra-premium .modal-title { font-size: 17px; margin: 0; }
.afra-premium .modal-body { padding: 22px; overscroll-behavior: contain; }
.afra-premium .modal-footer { padding: 14px 22px; gap: 7px; border-top-color: var(--afra-border); background: var(--afra-surface-2) !important; }
.afra-premium .btn-close { flex-shrink: 0; padding: 9px; border-radius: 7px; opacity: .6; background-size: 11px; }
.afra-premium .btn-close:hover { background-color: var(--afra-surface-soft); opacity: 1; }
.afra-premium .dropdown-menu { padding: 7px; border-radius: 11px !important; border: 1px solid var(--afra-border) !important; background: var(--afra-surface) !important; box-shadow: var(--afra-shadow) !important; color: var(--afra-text); }
.afra-premium .dropdown-item { padding: 8px 11px; color: var(--afra-text); font-size: 13px; border-radius: 6px; white-space: normal; }
.afra-premium .dropdown-item:is(:hover, :focus) { color: var(--afra-accent); background: var(--afra-accent-soft); }
.afra-premium .dropdown-header { padding: 9px 11px; color: var(--afra-muted); background: transparent !important; font-size: 12px; }
.afra-premium .topbar-head-dropdown .dropdown-menu { max-width: min(370px, calc(100vw - 24px)); max-height: min(680px, calc(100dvh - 95px)); overflow-y: auto; }
.afra-premium .topbar-notification-menu .list-group-item { padding: 13px 16px; border-color: var(--afra-border); color: var(--afra-text); background: var(--afra-surface); font-size: 13px; }
.afra-premium .alert { padding: 14px 17px; border-radius: 9px; font-size: 13px; line-height: 1.9; }
.afra-premium .alert-info { color: #286486 !important; border-color: rgba(40,100,134,.16); background: rgba(40,100,134,.06) !important; }
.afra-premium .alert-warning { color: #97611d !important; border-color: rgba(151,97,29,.18); background: rgba(187,135,54,.07) !important; }
.afra-premium .alert-danger { color: #b94343 !important; border-color: rgba(185,67,67,.18); background: rgba(185,67,67,.06) !important; }
.afra-premium .alert-success { color: var(--afra-accent) !important; border-color: rgba(var(--afra-accent-rgb),.16); background: var(--afra-accent-soft) !important; }
html[data-bs-theme="dark"] .afra-premium .alert-info { color: #9bcbe7 !important; }
html[data-bs-theme="dark"] .afra-premium .alert-warning { color: #e8c487 !important; }
html[data-bs-theme="dark"] .afra-premium .alert-danger { color: #eea6a6 !important; }
.afra-premium .footercontainer { margin-top: auto; }
.afra-premium .footer { position: static; padding: 18px 24px; border-top: 1px solid var(--afra-border); background: transparent !important; color: var(--afra-muted) !important; font-size: 11px; height: auto; box-shadow: none; }
.afra-premium .skip-link { position: fixed; right: 20px; left: auto; background: var(--afra-surface); color: var(--afra-accent); border-color: var(--afra-accent); }

/* Native command dialog: permission-filtered navigation, keyboard first. */
.afra-premium .afra-command-menu { width: min(610px, calc(100vw - 32px)); max-height: min(680px, calc(100dvh - 48px)); margin: min(14vh, 120px) auto auto; padding: 0; border: 1px solid var(--afra-border); border-radius: 18px; background: var(--afra-surface); color: var(--afra-text); box-shadow: var(--afra-shadow-lg); overflow: hidden; }
.afra-premium .afra-command-menu[open] { display: flex; flex-direction: column; }
.afra-premium .afra-command-menu::backdrop { background: rgba(15,33,41,.4); backdrop-filter: blur(4px); }
.afra-premium .afra-command-heading { display: flex; align-items: center; justify-content: space-between; padding: 24px 24px 18px; gap: 16px; }
.afra-premium .afra-command-heading h2 { font-size: 23px; margin: 0; }
.afra-premium .afra-icon-button { display: inline-grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--afra-border); border-radius: 8px; color: var(--afra-muted); background: var(--afra-surface); font-size: 20px; }
.afra-premium .afra-command-search { display: flex; align-items: center; gap: 10px; margin: 0 24px; padding: 4px 12px; min-height: 50px; border: 1px solid var(--afra-border-strong); border-radius: 10px; background: var(--afra-surface-2); flex: 0 0 auto; }
.afra-premium .afra-command-search:focus-within { border-color: var(--afra-accent); box-shadow: var(--afra-focus); }
.afra-premium .afra-command-search > i { font-size: 21px; color: var(--afra-accent); }
.afra-premium .afra-command-search input { flex: 1; min-width: 0; width: 100%; border: 0; outline: 0; background: transparent; color: var(--afra-text); font-size: 14px; }
.afra-premium .afra-command-global { display: inline-flex; align-items: center; gap: 6px; padding: 7px; border: 0; border-radius: 6px; background: var(--afra-accent-soft); color: var(--afra-accent); font-size: 11px; white-space: nowrap; }
.afra-premium .afra-command-section { display: flex; justify-content: space-between; padding: 20px 26px 9px; color: var(--afra-muted); font-size: 11px; }
.afra-premium .afra-command-recents { padding-bottom: 12px; margin-bottom: 0; border-bottom: 1px solid var(--afra-border); }
.afra-premium .afra-command-recents[hidden] { display: none; }
.afra-premium #afraCommandRecentLinks { display: flex; gap: 7px; padding: 0 24px; }
.afra-premium .afra-command-recent { display: flex; align-items: center; gap: 6px; padding: 5px 9px; min-width: 0; max-width: 50%; border: 1px solid var(--afra-border); border-radius: 6px; color: var(--afra-muted); background: var(--afra-surface-2); font-size: 11px; }
.afra-premium .afra-command-recent > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.afra-premium .afra-command-recent > i { color: var(--afra-accent); flex-shrink: 0; }
.afra-premium .afra-command-recent:hover { color: var(--afra-accent); border-color: var(--afra-accent); }
.afra-premium .afra-command-results { padding: 0 12px 12px; min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
.afra-premium .afra-command-result { display: flex; align-items: center; gap: 12px; min-height: 51px; padding: 9px 14px; border: 1px solid transparent; border-radius: 9px; color: var(--afra-text); }
.afra-premium .afra-command-result:is(:hover, :focus, .is-selected) { background: var(--afra-accent-soft); color: var(--afra-accent); border-color: rgba(var(--afra-accent-rgb), .1); outline: 0; }
.afra-premium .afra-command-result > i:first-child { display: grid; place-items: center; width: 31px; height: 31px; border: 1px solid var(--afra-border); border-radius: 8px; background: var(--afra-surface); font-size: 17px; color: var(--afra-accent); }
.afra-premium .afra-command-result-copy { flex: 1; min-width: 0; }
.afra-premium .afra-command-result-copy strong { display: block; font-size: 14px !important; font-weight: 400; }
.afra-premium .afra-command-result-copy small { display: block; font-size: 10px; color: var(--afra-muted); }
.afra-premium .afra-command-result > i:last-child { color: var(--afra-muted); font-size: 17px; }
.afra-premium .afra-command-empty { padding: 34px 24px; text-align: center; color: var(--afra-muted); }
.afra-premium .afra-command-empty > i { display: block; font-size: 30px; color: var(--afra-accent); margin-bottom: 12px; }
.afra-premium .afra-command-empty strong { display: block; color: var(--afra-text); }
.afra-premium .afra-command-empty p { font-size: 12px; margin: 7px 0 0; }
.afra-premium .afra-command-footer { display: flex; justify-content: space-between; gap: 12px; padding: 12px 24px; border-top: 1px solid var(--afra-border); background: var(--afra-surface-2); color: var(--afra-muted); font-size: 10px; }
.afra-premium .afra-command-footer kbd { margin-inline: 2px; }

@media (min-width: 768px) {
    .afra-premium .app-menu.navbar-menu { top: var(--afra-shell-gap) !important; right: var(--afra-shell-gap) !important; bottom: var(--afra-shell-gap) !important; width: var(--afra-nav-width) !important; height: auto !important; }
    html[data-layout] body.afra-premium .main-content { margin-right: calc(var(--afra-nav-width) + var(--afra-shell-gap)); }
    html[data-layout] body.afra-premium #page-topbar { right: calc(var(--afra-nav-width) + var(--afra-shell-gap)) !important; width: auto !important; }
    html[data-layout] body.afra-premium.afra-sidebar-compact .main-content { margin-right: calc(var(--afra-nav-compact-width) + var(--afra-shell-gap)) !important; }
    html[data-layout] body.afra-premium.afra-sidebar-compact #page-topbar { right: calc(var(--afra-nav-compact-width) + var(--afra-shell-gap)) !important; }
    body.afra-premium.afra-sidebar-compact .app-menu.navbar-menu { width: var(--afra-nav-compact-width) !important; }
    .afra-premium.afra-sidebar-compact :is(.afra-sidebar-footer, .afra-sidebar-section-label) { display: none; }
    .afra-premium.afra-sidebar-compact .afra-sidebar-header { padding: 15px 8px; }
}
@media (min-width: 768px) and (max-width: 1199.98px) {
    :root { --afra-nav-width: 230px; }
    .afra-premium .topbar-end > .header-item.d-sm-flex { display: none !important; }
    .afra-premium .topbar-start { gap: 10px !important; }
    .afra-premium .afra-command-trigger { width: 40px; padding: 0; justify-content: center; flex-shrink: 0; }
    .afra-premium .afra-command-trigger :is(span, kbd) { display: none; }
    .afra-premium .navbar-header.topbar-shell { gap: 12px; }
    .afra-premium .topbar-user { padding-inline-start: 8px; margin-inline-start: 4px !important; }
    .afra-premium .list-hub-hero { grid-template-columns: 1fr; gap: 20px; }
    .afra-premium .list-hub-stats { justify-content: flex-start; }
    .afra-premium .list-hub-stat:first-child { border-inline-start: 0 !important; padding-inline-start: 0; }
    .afra-premium .list-hub-toolbar { grid-template-columns: 1fr; }
}
@media (max-width: 767.98px) {
    :root { --afra-header-height: 66px; }
    html[data-layout] body.afra-premium .main-content { margin-right: 0 !important; margin-left: 0 !important; }
    html[data-layout] body.afra-premium #page-topbar { right: 0 !important; left: 0 !important; width: 100% !important; }
    .afra-premium #page-topbar .layout-width { padding: 0 12px; }
    .afra-premium .navbar-header.topbar-shell { gap: 4px; }
    .afra-premium .topbar-start { flex: initial; gap: 8px !important; }
    .afra-premium .topbar-end { margin-inline-start: auto; gap: 0 !important; }
    .afra-premium .topbar-end .ms-1 { margin-inline-start: 0 !important; }
    .afra-premium #topnav-hamburger-icon { display: inline-grid !important; place-items: center; width: 38px; min-height: 38px; height: 38px; padding: 0 !important; border: 1px solid var(--afra-border) !important; border-radius: 8px !important; box-shadow: none; background: var(--afra-surface) !important; }
    .afra-premium #topnav-hamburger-icon .hamburger-icon span { background: var(--afra-text) !important; }
    .afra-premium .afra-command-trigger { width: 36px; height: 38px; min-height: 38px; justify-content: center; padding: 0; border-color: transparent; }
    .afra-premium .afra-command-trigger :is(span, kbd) { display: none; }
    .afra-premium .navbar-header .btn-topbar { width: 36px; height: 38px; }
    .afra-premium .topbar-user { margin-inline-start: 5px !important; padding-inline-start: 8px; }
    .afra-premium .topbar-user .header-profile-user { width: 33px; height: 33px; }
    .afra-premium .page-content > .container-fluid.app-container { padding: 18px 14px 8px; }
    .afra-premium .afra-workspace-bar { margin-bottom: 14px; gap: 9px; }
    .afra-premium .afra-workspace-switch :is(span, kbd) { display: none; }
    .afra-premium .afra-workspace-switch { width: 32px; height: 32px; border: 1px solid var(--afra-border); border-radius: 7px; justify-content: center; background: var(--afra-surface); }
    .afra-premium .app-menu.navbar-menu { top: 8px !important; bottom: 8px !important; right: 8px !important; width: min(290px, calc(100vw - 36px)) !important; height: calc(100dvh - 16px) !important; border-radius: 14px !important; transform: translateX(calc(100% + 16px)); visibility: hidden; transition: transform .22s ease, visibility .22s; }
    .afra-premium.vertical-sidebar-enable .app-menu.navbar-menu { transform: translateX(0); visibility: visible; }
    .afra-premium.vertical-sidebar-enable { overflow: hidden; }
    .afra-premium .vertical-overlay { position: fixed; inset: 0; background: rgba(15,33,41,.4); backdrop-filter: blur(2px); }
    .afra-premium .afra-sidebar-mobile-close { display: grid; flex: 0 0 30px; }
    .afra-premium .afra-sidebar-header { padding: 16px; min-height: 76px; }
    .afra-premium :is(.afra-sidebar-footer, .afra-sidebar-section-label) { display: flex; }
    .afra-premium .list-hub { gap: 15px; }
    .afra-premium .list-hub-hero { grid-template-columns: 1fr; padding: 22px; gap: 20px; border-radius: 14px; }
    .afra-premium .list-hub-hero h2 { font-size: 25px; }
    .afra-premium .list-hub-hero p { font-size: 12px; }
    .afra-premium .list-hub-stats { justify-content: flex-start; flex-wrap: wrap; gap: 12px 0; border-top: 1px solid var(--afra-border); padding-top: 16px; }
    .afra-premium .list-hub-stat { min-width: 0; flex: 1; padding: 0 14px; text-align: center; }
    .afra-premium .list-hub-stat:first-child { border-inline-start: 0 !important; padding-inline-start: 0; }
    .afra-premium .list-hub-stat span { font-size: 25px; }
    .afra-premium .list-hub-stat label { white-space: normal; line-height: 1.7; font-size: 10px; }
    .afra-premium .list-hub-toolbar { grid-template-columns: 1fr; gap: 10px; }
    .afra-premium .list-hub-actions { gap: 6px; }
    .afra-premium .list-hub-actions > .btn { flex: 1 1 auto; }
    .afra-premium .list-hub-filters { padding: 7px; gap: 4px; flex-wrap: nowrap; overflow-x: auto; overscroll-behavior: contain; scrollbar-width: none; }
    .afra-premium .list-hub-filters .list-filter { white-space: nowrap; flex-shrink: 0; }
    .afra-premium .list-grid { grid-template-columns: 1fr; gap: 12px; }
    .afra-premium .list-card { padding: 17px; gap: 14px; }
    .afra-premium .list-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
    .afra-premium .list-card-actions > .btn { flex: 1 1 auto; text-align: center; }
    .afra-premium :is(.card-body, .card-header, .card-footer) { padding: 16px; }
    .afra-premium .card-header.d-flex { flex-wrap: wrap; gap: 10px; }
    .afra-premium .smart-filter-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .afra-premium .modal-dialog:not(.modal-fullscreen) { margin: 10px; max-width: calc(100vw - 20px); }
    .afra-premium :is(.modal-header, .modal-body, .modal-footer) { padding: 16px; }
    .afra-premium .modal-footer > .btn { flex: 1 1 auto; }
    .afra-premium .afra-command-menu { margin-top: 16px; max-height: calc(100dvh - 32px); }
    .afra-premium .afra-command-heading { padding: 20px 18px 14px; }
    .afra-premium .afra-command-heading h2 { font-size: 21px; }
    .afra-premium .afra-command-search { margin-inline: 18px; }
    .afra-premium .afra-command-global span { display: none; }
    .afra-premium .afra-command-footer { padding-inline: 15px; font-size: 9px; gap: 5px; }
    .afra-premium .afra-command-section { padding-inline: 22px; }
    /* Prevent automatic mobile zoom without shrinking controls. */
    .afra-premium :is(input.form-control, select.form-select, textarea.form-control, .list-hub-search input, .afra-command-search input) { font-size: 16px; }
}
@media (max-width: 359.98px) {
    .afra-premium .topbar-end > .header-item:has([data-quick-notes]) { display: none; }
    .afra-premium .smart-filter-row { grid-template-columns: 1fr; }
    .afra-premium .list-hub-hero { padding: 18px; }
}
@media (hover: none), (pointer: coarse) {
    .afra-premium .btn { min-height: 44px; }
    .afra-premium .btn-sm { min-height: 38px; }
    .afra-premium .list-filter { min-height: 40px; }
    .afra-premium .afra-command-result { min-height: 56px; }
}
@media (prefers-reduced-motion: reduce) {
    .afra-premium *, .afra-premium *::before, .afra-premium *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

/* Recovery pages stand alone so a shell/data failure never hides recovery. */
.afra-premium .afra-status-shell { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 25px; padding: 40px 18px; min-height: 100svh; }
.afra-premium .afra-status-brand { display: inline-flex; gap: 8px; align-items: center; color: var(--afra-text); font-size: 25px; }
.afra-premium .afra-status-brand i { font-size: 28px; color: var(--afra-accent); }
.afra-premium .afra-status-card { max-width: 540px; width: 100%; padding: clamp(28px, 5vw, 46px); text-align: center; background: var(--afra-surface); border: 1px solid var(--afra-border); border-radius: 20px; box-shadow: var(--afra-shadow); }
.afra-premium .afra-status-icon { display: inline-grid; place-items: center; width: 72px; height: 72px; margin-bottom: 25px; color: var(--afra-accent); background: var(--afra-accent-soft); border: 1px solid rgba(var(--afra-accent-rgb), .1); border-radius: 22px; font-size: 33px; }
.afra-premium .afra-status-card h1 { margin: 0 0 13px; font-size: 25px; }
.afra-premium .afra-status-card p { color: var(--afra-muted); font-size: 14px; line-height: 2; margin: 0 0 25px; overflow-wrap: anywhere; }
.afra-premium .afra-status-card .btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; }
.afra-premium .afra-status-trace { display: grid; gap: 6px; margin-bottom: 24px; padding: 13px; border: 1px dashed var(--afra-border-strong); border-radius: 8px; color: var(--afra-muted); font-size: 11px; background: var(--afra-surface-2); }
.afra-premium .afra-status-trace code { color: var(--afra-text-soft); overflow-wrap: anywhere; font-size: 11px; }
.afra-premium .afra-status-footnote { color: var(--afra-muted); margin: 0; font-size: 11px; }

/* Embedded records and external-signing layouts do not reserve shell space. */
html.iframe-embedded body.afra-premium .afra-workspace-bar,
html.iframe-embedded body.afra-premium .afra-command-menu { display: none; }
body.afra-premium.afra-shell-hidden :is(.afra-workspace-bar, .afra-command-menu, .app-menu, #page-topbar) { display: none !important; }
html[data-layout] body.afra-premium.afra-shell-hidden .main-content { margin-right: 0 !important; transition: none; }
body.afra-premium.afra-shell-hidden .page-content { padding-top: 0 !important; }
html.iframe-embedded body.afra-premium .page-content,
body.afra-premium.afra-auth-page .page-content { padding-top: 0 !important; }
html.iframe-embedded body.afra-premium .page-content > .app-container { padding: 12px !important; }
html[data-layout] body.afra-premium.afra-auth-page .main-content,
html.iframe-embedded[data-layout] body.afra-premium .main-content { margin-right: 0 !important; transition: none; }
body.afra-premium.afra-embedded > .app-container { padding: 14px; }

@media print {
    html:has(body.afra-premium), body.afra-premium { background: #fff !important; color: #000 !important; }
    .afra-premium :is(#page-topbar, .app-menu, .afra-workspace-bar, .afra-command-menu, .vertical-overlay) { display: none !important; }
    html[data-layout] body.afra-premium .main-content { margin: 0 !important; transition: none !important; }
    .afra-premium .page-content, .afra-premium .page-content > .app-container { padding: 0 !important; margin: 0 !important; background: #fff !important; min-height: 0 !important; }
    .afra-premium :is(.card, .list-card) { box-shadow: none !important; break-inside: avoid; }
    .afra-premium .afra-table-scroll { overflow: visible; }
}
