:root {
            --bg-primary: #020617;
            --bg-secondary: #0f172a;
            --bg-tertiary: #1e293b;
            --surface: rgba(255, 255, 255, 0.06);
            --surface-strong: rgba(255, 255, 255, 0.10);
            --surface-soft: rgba(255, 255, 255, 0.04);
            --border: rgba(255, 255, 255, 0.10);
            --border-soft: rgba(255, 255, 255, 0.08);
            --text-primary: #ffffff;
            --text-secondary: #cbd5e1;
            --text-muted: #94a3b8;
            --cyan: #22d3ee;
            --sky: #0ea5e9;
            --blue: #3b82f6;
            --amber: #fbbf24;
            --orange: #f97316;
            --emerald: #10b981;
            --emerald-deep: #059669;
            --danger: #f87171;
            --shadow-deep: 0 24px 70px rgba(2, 6, 23, 0.55);
            --shadow-soft: 0 18px 40px rgba(15, 23, 42, 0.28);
            --radius-xl: 24px;
            --radius-lg: 20px;
            --radius-pill: 999px;
            --workspace-surface: rgba(255, 255, 255, 0.96);
            --workspace-surface-soft: rgba(248, 251, 255, 0.98);
            --workspace-border: rgba(216, 225, 240, 0.92);
            --workspace-border-strong: rgba(206, 219, 241, 0.98);
            --workspace-shadow: 0 16px 32px rgba(92, 114, 162, 0.08);
            --workspace-title: #162847;
            --workspace-text: #1c2948;
            --workspace-copy: #6f83aa;
            --workspace-copy-strong: #516685;
            --workspace-muted: #8ea0bf;
            --workspace-radius-card: 28px;
            --workspace-radius-control: 10px;
            --workspace-radius-chip: 999px;
            --workspace-head-icon-size: 56px;
            --workspace-control-height: 46px;
            --workspace-control-height-compact: 38px;
            --workspace-page-title-size: 1.12rem;
            --workspace-page-copy-size: 0.79rem;
            --workspace-label-size: 0.72rem;
            --workspace-label-spacing: 0.16em;
            --workspace-button-font-size: 0.84rem;
        }

        /* Shared actions for data tables */
        .table-action-group {
            display: inline-flex;
            align-items: center;
            justify-content: flex-end;
            gap: 0.45rem;
            white-space: nowrap;
        }
        .table-action-group form { display: inline-flex; margin: 0; }
        .table-action-icon { cursor: pointer; }
        .table-action-icon i { font-size: 0.9rem; line-height: 1; }
        .table-action-icon:focus-visible {
            outline: 2px solid #2563eb;
            outline-offset: 2px;
        }

        /* Global table action icon standard */
        .table-action-icon {
            width: 38px;
            height: 38px;
            min-width: 38px;
            padding: 0;
            border: 0;
            border-radius: 10px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: 1rem;
            line-height: 1;
            text-decoration: none;
            box-shadow: none;
            transition: background-color .15s ease, color .15s ease, opacity .15s ease;
        }
        .table-action-edit { color: #2563eb; background: rgba(37, 99, 235, .09); }
        .table-action-view { color: #7c3aed; background: rgba(124, 58, 237, .09); }
        .table-action-review { color: #059669; background: rgba(5, 150, 105, .10); }
        .table-action-delete { color: #dc2626; background: rgba(220, 38, 38, .08); }
        .table-action-neutral { color: #475569; background: rgba(71, 85, 105, .09); }
        .table-action-icon:disabled,
        .table-action-icon.disabled,
        .table-action-icon[aria-disabled="true"] { color: #94a3b8 !important; background: rgba(148, 163, 184, .12) !important; cursor: not-allowed; pointer-events: none; opacity: .7; }
        .table-action-icon:hover:not(:disabled):not(.disabled):not([aria-disabled="true"]),
        .table-action-icon:focus-visible:not(:disabled):not(.disabled):not([aria-disabled="true"]) { filter: brightness(.94); }

        html,
        body {
            min-height: 100%;
            margin: 0;
            padding: 0;
        }

        body {
            background:
                radial-gradient(circle at top left, rgba(14, 165, 233, 0.24), transparent 26%),
                radial-gradient(circle at 85% 20%, rgba(245, 158, 11, 0.16), transparent 22%),
                linear-gradient(180deg, rgba(15, 23, 42, 0.92), rgba(2, 6, 23, 1));
            color: var(--text-primary);
            font-family: 'Figtree', sans-serif;
            letter-spacing: -0.01em;
        }

        body.app-authenticated {
            overflow-x: hidden;
        }

        body::before {
            content: '';
            position: fixed;
            inset: 0;
            pointer-events: none;
            background-image:
                linear-gradient(rgba(148, 163, 184, 0.05) 1px, transparent 1px),
                linear-gradient(90deg, rgba(148, 163, 184, 0.05) 1px, transparent 1px);
            background-size: 28px 28px;
            mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.22), transparent 90%);
        }

        h1, h2, h3, h4, h5, .brand-display {
            color: var(--text-primary);
            font-family: 'Figtree', sans-serif;
            font-weight: 800;
            letter-spacing: -0.03em;
        }

        h1, .h1 { font-size: clamp(1.7rem, 2vw, 2rem); }
        h2, .h2 { font-size: clamp(1.35rem, 1.7vw, 1.55rem); }
        h3, .h3 { font-size: clamp(1.15rem, 1.4vw, 1.3rem); }
        h4, .h4 { font-size: 1.05rem; }
        h5, .h5 { font-size: 0.98rem; }

        a {
            color: var(--cyan);
            text-decoration: none;
        }

        a:hover {
            color: #7dd3fc;
        }

        .text-muted {
            color: var(--text-muted) !important;
        }

        .app-shell {
            position: relative;
            z-index: 1;
            margin: 0 !important;
            padding: 0 !important;
            min-height: 100vh;
        }

        .app-shell > .row {
            margin: 0 !important;
            padding: 0 !important;
            align-items: flex-start;
            min-height: 100vh;
        }

        .glass-panel,
        .stat-card,
        .table-card,
        .content-card,
        .section-hero,
        .topbar-chip,
        .sidebar-brand,
        .auth-card,
        .dropdown-menu {
            position: relative;
            overflow: hidden;
            background: var(--surface);
            border: 1px solid var(--border);
            box-shadow: var(--shadow-soft);
            backdrop-filter: blur(22px);
            -webkit-backdrop-filter: blur(22px);
        }

        .glass-panel::before,
        .stat-card::before,
        .table-card::before,
        .content-card::before,
        .section-hero::before,
        .auth-card::before {
            content: '';
            position: absolute;
            inset: -20% auto auto -8%;
            width: 180px;
            height: 180px;
            border-radius: 999px;
            background: radial-gradient(circle, rgba(34, 211, 238, 0.14), transparent 70%);
            filter: blur(22px);
            pointer-events: none;
        }

        .glass-panel::after,
        .stat-card::after,
        .table-card::after,
        .content-card::after,
        .section-hero::after,
        .auth-card::after {
            content: '';
            position: absolute;
            inset: auto -5% -25% auto;
            width: 180px;
            height: 180px;
            border-radius: 999px;
            background: radial-gradient(circle, rgba(251, 191, 36, 0.12), transparent 72%);
            filter: blur(24px);
            pointer-events: none;
        }

        .sidebar {
            min-height: 100vh;
            position: sticky;
            top: 0;
            margin-top: 0 !important;
            padding-top: 0 !important;
            align-self: stretch;
            background:
                linear-gradient(180deg, rgba(2, 6, 23, 0.92), rgba(15, 23, 42, 0.9));
            box-shadow: inset -1px 0 0 rgba(255, 255, 255, 0.05);
        }

        .sidebar-shell {
            min-height: 100vh;
            padding: 1.15rem 1rem 1rem;
        }

        .sidebar > .d-flex.flex-column.h-100,
        .sidebar-menu {
            margin-top: 0 !important;
            padding-top: 0 !important;
        }

        .sidebar-brand {
            border-radius: 26px;
            padding: 15px 15px 16px;
            background: rgba(255, 255, 255, 0.05);
        }

        .sidebar-kicker,
        .nav-section-title {
            text-transform: uppercase;
            letter-spacing: 0.18em;
            font-size: 0.72rem;
        }

        .sidebar-kicker {
            color: rgba(203, 213, 225, 0.72);
        }

        .nav-section-title {
            color: rgba(148, 163, 184, 0.72);
            margin: 1.35rem 0 0.55rem;
            padding: 0 0.2rem;
            font-weight: 700;
        }

        .sidebar a {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.65rem;
            padding: 0.62rem 0.8rem;
            border-radius: 16px;
            color: var(--text-secondary);
            transition: all 0.2s ease;
            font-size: 0.94rem;
        }

        .sidebar a.active,
        .sidebar a:hover {
            color: var(--text-primary);
            background: linear-gradient(135deg, rgba(59, 130, 246, 0.20), rgba(34, 211, 238, 0.12));
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 12px 24px rgba(2, 6, 23, 0.25);
            transform: translateX(2px);
        }

        @media (min-width: 992px) {
            .sidebar { background:linear-gradient(160deg,#061630 0%,#08244d 48%,#06162e 100%); box-shadow:inset -1px 0 rgba(111,168,255,.16), 12px 0 32px rgba(5,21,48,.08); }
            .sidebar-shell { padding:.9rem .75rem 1rem; }
            .sidebar .sidebar-brand { margin:0 0 .8rem !important; padding:1rem !important; border-radius:18px; background:linear-gradient(135deg,rgba(31,92,190,.20),rgba(255,255,255,.04)); border:1px solid rgba(113,165,246,.20); box-shadow:inset 0 1px 0 rgba(255,255,255,.04); }
            .sidebar .sidebar-kicker { color:#78aaff; font-size:.66rem; }
            .sidebar .sidebar-brand .fs-4 { font-size:1rem !important; }
            .sidebar .sidebar-brand .small { font-size:.68rem; }
            .sidebar .sidebar-menu { display:flex; flex-direction:column; gap:.42rem; }
            .sidebar .sidebar-group { margin:0; }
            .sidebar .nav-section-title { margin:.7rem .3rem .32rem; color:#6fa8ff; font-size:.62rem; letter-spacing:.12em; }
            .sidebar .sidebar-link { min-height:44px; margin:0; padding:.58rem .68rem; border-radius:13px; color:#dce9ff; font-size:.86rem; }
            .sidebar .sidebar-link-main { gap:.62rem; }
            .sidebar .sidebar-link-icon { width:29px; height:29px; display:grid; place-items:center; flex:0 0 29px; border-radius:9px; background:rgba(255,255,255,.07); color:#c9ddff; opacity:1; }
            .sidebar .sidebar-link.active { background:linear-gradient(135deg,#126fff,#145bdc); color:#fff; box-shadow:0 8px 18px rgba(11,89,220,.25); transform:none; }
            .sidebar .sidebar-link.active .sidebar-link-icon { background:rgba(255,255,255,.16); color:#fff; }
            .sidebar .sidebar-link-meta { color:#8fc1ff; }
            .sidebar .sidebar-accordion-group { border:0; border-top:1px solid rgba(111,168,255,.17); border-radius:0; background:transparent; overflow:visible; }
            .sidebar .sidebar-accordion-toggle { min-height:40px; padding:.54rem .3rem; color:#79aefc; font-size:.64rem; letter-spacing:.10em; }
            .sidebar .sidebar-menu .sidebar-accordion-group.is-open > .sidebar-accordion-toggle { background:transparent; color:#79aefc; }
            .sidebar .sidebar-submenu[data-sidebar-panel] { padding:.04rem 0 .28rem; gap:.1rem; }
            .sidebar .sidebar-submenu .sidebar-link { margin:0; }
        }

        .content-wrapper {
            min-height: 100vh;
            display: flex;
            flex-direction: column;
            margin: 0 !important;
            padding: 0 !important;
        }

        .topbar {
            background: rgba(15, 23, 42, 0.42) !important;
            backdrop-filter: blur(18px);
            border-bottom-color: rgba(255, 255, 255, 0.06) !important;
            margin-top: 0 !important;
            padding-top: 0 !important;
            padding-bottom: 0 !important;
            min-height: 86px;
        }

        .app-main-content {
            flex: 1 1 auto;
            padding: 40px 1.25rem 1.25rem !important;
            margin: 0 !important;
        }

        .app-main-content.app-main-content-no-top {
            padding-top: 0 !important;
        }

        .topbar-chip {
            display: inline-flex;
            align-items: center;
            gap: 0.45rem;
            padding: 0.6rem 0.95rem;
            border-radius: var(--radius-pill);
            color: var(--text-secondary);
            background: rgba(255, 255, 255, 0.05);
        }

        .locale-switch {
            position: relative;
            display: inline-flex;
            align-items: center;
            gap: 0;
            padding: 0.2rem;
            min-width: 84px;
            min-height: 36px;
            border-radius: 999px;
            background: rgba(255, 255, 255, 0.08);
            border: 1px solid rgba(255, 255, 255, 0.08);
            box-shadow: 0 8px 18px rgba(15,23,42,.05);
            overflow: hidden;
        }

        .locale-switch .btn {
            position: relative;
            z-index: 2;
            min-height: 32px;
            width: 40px;
            padding: 0;
            border-radius: 999px;
            font-size: 0.75rem;
            font-weight: 800;
            border: 0 !important;
            background: transparent !important;
            box-shadow: none !important;
            color: rgba(255, 255, 255, 0.72);
        }

        .locale-switch::before {
            content: '';
            position: absolute;
            top: 50%;
            left: 3px;
            width: 38px;
            height: 30px;
            border-radius: 999px;
            background: linear-gradient(180deg, #6eade0 0%, #4f95cf 50%, #367bb8 100%);
            box-shadow:
                inset 0 1px 0 rgba(255,255,255,0.42),
                0 6px 14px rgba(54,123,184,0.22);
            transform: translateY(-50%);
            transition: transform .22s ease;
        }

        .locale-switch.is-es::before {
            transform: translate(40px, -50%);
        }

        .locale-switch .btn.is-active {
            color: #ffffff !important;
        }

        .chip-dot {
            width: 8px;
            height: 8px;
            border-radius: 999px;
            background: linear-gradient(135deg, var(--emerald), var(--cyan));
            box-shadow: 0 0 12px rgba(16, 185, 129, 0.45);
        }

        .section-hero,
        .stat-card,
        .table-card,
        .content-card {
            border-radius: 24px;
        }

        .stat-card .card-body,
        .table-card .card-body,
        .content-card .card-body,
        .section-hero,
        .auth-form-panel {
            position: relative;
            z-index: 1;
        }

        .stat-card .text-muted,
        .table-card .text-muted,
        .content-card .text-muted,
        .section-hero .text-muted {
            color: var(--text-muted) !important;
        }

        .table > :not(caption) > * > *,
        .border-bottom {
            border-color: rgba(255, 255, 255, 0.08) !important;
        }

        .table thead th {
            color: var(--text-muted);
            font-size: 0.78rem;
            letter-spacing: 0.14em;
            text-transform: uppercase;
            font-weight: 800;
        }

        .table tbody td {
            color: var(--text-primary);
            vertical-align: middle;
        }

        .table tbody tr:hover {
            background: rgba(255, 255, 255, 0.03);
        }

        .btn {
            border-radius: 10px;
            font-weight: 700;
            letter-spacing: -0.01em;
            transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, border-color 0.18s ease;
        }

        .btn-primary,
        .btn-bakery,
        .btn-outline-primary,
        .btn-outline-secondary {
            position: relative;
            border-width: 1px;
            box-shadow: none;
        }

        .btn-primary,
        .btn-bakery {
            background: linear-gradient(180deg, #6eade0 0%, #4f95cf 50%, #367bb8 100%);
            border-color: #5d8fbb;
            color: #fff;
            text-shadow: 0 1px 0 rgba(15, 23, 42, 0.22);
        }

        .btn-primary:hover,
        .btn-primary:focus,
        .btn-bakery:hover,
        .btn-bakery:focus {
            color: #fff;
            transform: translateY(-1px);
            background: linear-gradient(180deg, #78b6e7 0%, #589bd4 52%, #3a7fbb 100%);
            border-color: #5d8fbb;
            box-shadow: none;
        }

        .btn-primary:active,
        .btn-bakery:active,
        .btn-outline-primary:active,
        .btn-outline-secondary:active {
            transform: translateY(1px);
            box-shadow: none;
        }

        .btn-outline-secondary,
        .btn-outline-primary {
            background: linear-gradient(180deg, rgba(255,255,255,0.20) 0%, rgba(255,255,255,0.08) 100%);
            color: var(--text-secondary);
        }

        .btn-outline-secondary {
            border-color: rgba(255, 255, 255, 0.16);
        }

        .btn-outline-secondary:hover {
            background: linear-gradient(180deg, rgba(255,255,255,0.24) 0%, rgba(255,255,255,0.10) 100%);
            border-color: rgba(255, 255, 255, 0.22);
            color: var(--text-primary);
        }

        .btn-outline-primary {
            background: linear-gradient(180deg, rgba(125,211,252,0.18) 0%, rgba(59,130,246,0.10) 100%);
            border-color: rgba(34, 211, 238, 0.26);
            color: var(--cyan);
        }

        .btn-outline-primary:hover {
            background: linear-gradient(180deg, rgba(125,211,252,0.24) 0%, rgba(59,130,246,0.14) 100%);
            border-color: rgba(34, 211, 238, 0.32);
            color: #b6f4fb;
        }

        .badge,
        .soft-badge {
            border-radius: var(--radius-pill);
            letter-spacing: 0.12em;
            text-transform: uppercase;
            font-size: 0.72rem;
            font-weight: 800;
            padding: 0.45rem 0.75rem;
        }

        .soft-badge {
            display: inline-flex;
            align-items: center;
            gap: 0.35rem;
            background: rgba(255, 255, 255, 0.06);
            border: 1px solid rgba(255, 255, 255, 0.08);
            color: var(--text-secondary);
        }

        .badge.bg-success {
            background: linear-gradient(135deg, #10b981, #059669) !important;
            box-shadow: 0 12px 24px rgba(16, 185, 129, 0.22);
        }

        .badge.bg-warning,
        .badge.text-bg-warning {
            background: linear-gradient(135deg, #fbbf24, #f97316) !important;
            color: #fff !important;
            box-shadow: 0 12px 24px rgba(249, 115, 22, 0.20);
        }

        .badge.bg-danger {
            background: linear-gradient(135deg, #fb7185, #ef4444) !important;
            box-shadow: 0 12px 24px rgba(239, 68, 68, 0.20);
        }

        .alert-success,
        .alert-danger {
            border-radius: 20px;
            border-width: 1px;
            backdrop-filter: blur(16px);
        }

        .alert-success {
            background: rgba(16, 185, 129, 0.10);
            border-color: rgba(16, 185, 129, 0.22);
            color: #d1fae5;
        }

        .alert-danger {
            background: rgba(239, 68, 68, 0.10);
            border-color: rgba(239, 68, 68, 0.20);
            color: #fee2e2;
        }

        .form-control,
        .form-select {
            border-radius: var(--workspace-radius-control);
            border-color: rgba(255, 255, 255, 0.10);
            padding: 0.62rem 0.82rem;
            background: rgba(255, 255, 255, 0.05);
            color: var(--text-primary);
            font-size: 0.91rem;
        }

        .form-control::placeholder {
            color: rgba(148, 163, 184, 0.7);
        }

        .form-control:focus,
        .form-select:focus {
            background: rgba(255, 255, 255, 0.07);
            border-color: rgba(34, 211, 238, 0.34);
            box-shadow: 0 0 0 0.25rem rgba(34, 211, 238, 0.12);
            color: var(--text-primary);
        }

        .lookup-select {
            padding-right: 2.6rem;
            background-image:
                linear-gradient(180deg, rgba(59, 130, 246, 0.08), rgba(59, 130, 246, 0.08)),
                url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%233b82f6' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8' d='m4 6 4 4 4-4'/%3e%3c/svg%3e");
            background-repeat: no-repeat, no-repeat;
            background-position: right 0 top 0, right 0.9rem center;
            background-size: 2.4rem 100%, 14px 14px;
        }

        select[data-searchable-select] {
            background-image: none !important;
            padding-right: 0.82rem !important;
        }

        .form-check-input {
            background-color: rgba(255, 255, 255, 0.08);
            border-color: rgba(255, 255, 255, 0.18);
        }

        .form-check-input:checked {
            background-color: var(--cyan);
            border-color: var(--cyan);
        }

        .page-link {
            color: var(--text-secondary);
            background: rgba(255, 255, 255, 0.04);
            border-color: rgba(255, 255, 255, 0.08);
        }

        .page-link:hover,
        .page-item.active .page-link {
            color: #fff;
            background: linear-gradient(135deg, #2563eb, #0ea5e9);
            border-color: transparent;
        }

        .workspace-shell {
            display: grid;
            gap: 1rem;
        }

        .workspace-page-head {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 1rem;
            flex-wrap: wrap;
            padding: 0.1rem 0.1rem 0.35rem;
        }

        .workspace-page-copy {
            display: flex;
            align-items: flex-start;
            gap: 1rem;
            min-width: 0;
        }

        .workspace-head-icon,
        .workspace-card-icon,
        .workspace-note-icon {
            width: var(--workspace-head-icon-size);
            height: var(--workspace-head-icon-size);
            border-radius: 18px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: 1.35rem;
            flex: 0 0 var(--workspace-head-icon-size);
            background: #eff6ff;
            border: 1px solid #dbeafe;
            color: #2563eb;
        }

        .workspace-page-title {
            margin: 0;
            color: var(--workspace-title);
            font-size: var(--workspace-page-title-size);
            line-height: 1.2;
            font-weight: 700;
            letter-spacing: -0.015em;
            text-transform: none !important;
        }

        .workspace-page-copytext {
            margin: 0.35rem 0 0;
            color: var(--workspace-copy);
            font-size: var(--workspace-page-copy-size);
            line-height: 1.45;
        }

        .workspace-actions,
        .workspace-actions form {
            display: inline-flex;
            align-items: center;
            gap: 0.75rem;
            flex-wrap: wrap;
        }

        .workspace-page-btn,
        .workspace-primary-btn,
        .workspace-ghost-btn,
        .workspace-danger-btn,
        .workspace-tab-btn {
            min-height: var(--workspace-control-height);
            border-radius: var(--workspace-radius-control);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 0.55rem;
            font-weight: 700;
            font-size: var(--workspace-button-font-size);
            white-space: nowrap;
            padding-inline: 1.1rem;
            text-decoration: none;
            box-shadow: none !important;
            transition: border-color 0.18s ease, background-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
        }

        .workspace-page-btn,
        .workspace-ghost-btn,
        .workspace-tab-btn {
            background: rgba(255,255,255,0.95);
            border: 1px solid var(--workspace-border-strong);
            color: #2f4469;
        }

        .workspace-primary-btn {
            background: linear-gradient(180deg, #3B82F6 0%, #2563EB 100%) !important;
            border: 1px solid #2563EB !important;
            color: #fff !important;
        }

        .workspace-primary-btn *,
        .workspace-primary-btn i,
        .workspace-primary-btn span {
            color: #fff !important;
        }

        .workspace-danger-btn {
            min-height: var(--workspace-control-height-compact);
            padding-inline: 0.9rem;
            border-radius: 12px;
            background: rgba(255,255,255,0.96);
            border: 1px solid rgba(254, 202, 202, 0.95);
            color: #ef4444;
        }

        .workspace-ghost-btn {
            min-height: var(--workspace-control-height-compact);
            padding-inline: 0.9rem;
            border-radius: 12px;
        }

        .workspace-page-btn:hover,
        .workspace-primary-btn:hover,
        .workspace-ghost-btn:hover,
        .workspace-danger-btn:hover,
        .workspace-tab-btn:hover {
            transform: translateY(-1px);
        }

        .workspace-card,
        .workspace-info-card,
        .workspace-table-card,
        .workspace-form-card,
        .workspace-note {
            background: var(--workspace-surface);
            border: 1px solid var(--workspace-border);
            border-radius: var(--workspace-radius-card);
            box-shadow: var(--workspace-shadow);
        }

        .workspace-info-card,
        .workspace-table-card,
        .workspace-form-card {
            padding: 1.25rem 1.35rem;
        }

        .workspace-soft-badge {
            display: inline-flex;
            align-items: center;
            gap: 0.5rem;
            min-height: 34px;
            padding: 0.35rem 0.85rem;
            border-radius: var(--workspace-radius-chip);
            background: rgba(245,248,255,.96);
            border: 1px solid var(--workspace-border-strong);
            color: #465d84;
            font-size: 0.74rem;
            font-weight: 700;
        }

        .workspace-toolbar {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 1rem;
            flex-wrap: wrap;
            margin-bottom: 1rem;
        }

        .workspace-search {
            display: flex;
            align-items: center;
            gap: 0.75rem;
            min-width: min(100%, 560px);
            flex: 1 1 560px;
            min-height: var(--workspace-control-height);
            padding: 0 1rem;
            border-radius: var(--workspace-radius-control);
            border: 1px solid var(--workspace-border-strong);
            background: rgba(255,255,255,0.95);
            box-shadow: none !important;
        }

        .workspace-search i {
            color: var(--workspace-copy);
            font-size: 1.05rem;
        }

        .workspace-search .form-control {
            border: 0;
            box-shadow: none !important;
            padding: 0;
            font-size: 0.84rem;
            color: var(--workspace-text);
            background: transparent;
        }

        .workspace-search .form-control:focus {
            box-shadow: none !important;
        }

        .workspace-table-wrap {
            overflow: hidden;
            border-top: 1px solid rgba(230, 236, 246, 0.9);
            margin-top: 0.55rem;
            padding-inline: 0.35rem;
        }

        .workspace-table {
            width: 100%;
            border-collapse: collapse;
        }

        .workspace-table thead th,
        .workspace-label,
        .workspace-section-kicker {
            color: var(--workspace-muted);
            font-size: var(--workspace-label-size);
            letter-spacing: var(--workspace-label-spacing);
            text-transform: uppercase;
            font-weight: 700;
        }

        .workspace-table thead th {
            padding: 0.95rem 0.25rem 0.85rem;
            border-bottom: 1px solid rgba(230, 236, 246, 0.95);
        }

        .workspace-table tbody td {
            padding: 0.95rem 0.25rem;
            border-bottom: 1px solid rgba(230, 236, 246, 0.95);
            vertical-align: middle;
            color: var(--workspace-text);
            font-size: 0.82rem;
        }

        .workspace-field-label {
            color: var(--workspace-text);
            font-size: 0.82rem;
            font-weight: 700;
            margin-bottom: 0.65rem;
        }

        .workspace-input,
        .workspace-shell .form-control,
        .workspace-shell textarea,
        .workspace-shell .form-select,
        .workspace-shell .lookup-select,
        .workspace-shell .ts-control,
        .workspace-shell .ts-wrapper.single .ts-control,
        .workspace-shell .listbox-shell,
        .workspace-shell .input-group-text {
            min-height: var(--workspace-control-height);
            height: var(--workspace-control-height);
            border-radius: var(--workspace-radius-control);
            border: 1px solid var(--workspace-border-strong);
            box-shadow: none !important;
            filter: none !important;
            font-size: 0.84rem;
            color: var(--workspace-text);
            background: rgba(255,255,255,0.96);
        }

        .workspace-shell .form-control,
        .workspace-shell .form-select,
        .workspace-shell .lookup-select,
        .workspace-shell .ts-wrapper.single .ts-control,
        .workspace-shell .input-group-text,
        .workspace-shell .listbox-shell {
            padding-top: 0.68rem;
            padding-bottom: 0.68rem;
            line-height: 1.2;
        }

        .workspace-shell textarea {
            min-height: 168px;
            height: auto;
            padding-top: 1rem;
            resize: vertical;
        }

        .workspace-title,
        .workspace-card-title {
            margin: 0;
            color: var(--workspace-title);
            font-size: 0.98rem;
            line-height: 1.25;
            font-weight: 700;
            text-transform: none !important;
        }

        .workspace-copy,
        .workspace-card-copy,
        .workspace-helper {
            color: var(--workspace-copy);
            font-size: 0.76rem;
            line-height: 1.45;
        }

        .workspace-section-title {
            color: var(--workspace-title);
            font-size: 0.9rem;
            font-weight: 700;
            line-height: 1.18;
            margin: 0;
        }

        @media (max-width: 767.98px) {
            .workspace-page-head,
            .workspace-page-copy,
            .workspace-actions {
                flex-direction: column;
                align-items: flex-start;
            }

            .workspace-actions,
            .workspace-actions form,
            .workspace-page-btn,
            .workspace-primary-btn {
                width: 100%;
            }

            .workspace-search {
                min-width: 0;
                flex-basis: 100%;
            }
        }

        .auth-shell {
            min-height: 100vh;
        }

        .auth-frame {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 2rem 1rem;
        }

        .auth-card {
            width: 100%;
            max-width: 1120px;
            border-radius: 32px;
        }

        .auth-brand {
            background:
                radial-gradient(circle at top left, rgba(14, 165, 233, 0.20), transparent 26%),
                radial-gradient(circle at 85% 20%, rgba(245, 158, 11, 0.14), transparent 22%),
                linear-gradient(180deg, rgba(15, 23, 42, 0.92), rgba(2, 6, 23, 1));
            color: #fff;
            position: relative;
        }

        .auth-brand-inner,
        .auth-form-panel {
            position: relative;
            z-index: 1;
        }

        .auth-kicker {
            letter-spacing: 0.18em;
            text-transform: uppercase;
            font-size: 0.75rem;
            color: rgba(255, 255, 255, 0.72);
            font-weight: 700;
        }

        .auth-pill {
            display: inline-flex;
            align-items: center;
            gap: 0.5rem;
            padding: 0.62rem 0.95rem;
            border-radius: 999px;
            background: rgba(255, 255, 255, 0.06);
            border: 1px solid rgba(255, 255, 255, 0.08);
            color: var(--text-secondary);
            font-size: 0.9rem;
        }

        .auth-bullet {
            width: 8px;
            height: 8px;
            border-radius: 999px;
            background: linear-gradient(135deg, var(--cyan), var(--amber));
            box-shadow: 0 0 12px rgba(34, 211, 238, 0.35);
        }

        .auth-form-panel {
            background: rgba(15, 23, 42, 0.66);
            color: var(--text-primary);
            backdrop-filter: blur(22px);
        }

        .auth-logo {
            width: 58px;
            height: 58px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border-radius: 20px;
            background: rgba(255, 255, 255, 0.92);
            color: var(--bg-secondary);
            font-size: 1.35rem;
            font-weight: 800;
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
        }

        .text-link-bakery {
            color: var(--cyan);
            text-decoration: none;
            font-weight: 700;
        }

        .text-link-bakery:hover {
            color: #7dd3fc;
        }

        code {
            color: #e2e8f0;
            background: rgba(255, 255, 255, 0.08);
            padding: 0.15rem 0.35rem;
            border-radius: 0.45rem;
        }

        @media (max-width: 991.98px) {
            .auth-brand {
                min-height: 320px;
            }

            .content-wrapper {
                min-height: auto;
            }

            .topbar {
                padding-inline: 1rem !important;
            }

            main.p-3,
            main.p-xl-4 {
                padding: 1rem !important;
            }

            .section-hero,
            .content-card,
            .table-card,
            .stat-card {
                border-radius: 18px;
            }
        }

        @media (max-width: 767.98px) {
            h1, .h1 { font-size: 1.45rem; }
            h2, .h2 { font-size: 1.2rem; }
            h3, .h3 { font-size: 1.05rem; }

            .compact-stat {
                font-size: 1.3rem;
            }

            .toolbar-btn {
                width: 100%;
            }

            .mobile-stack-table thead {
                display: none;
            }

            .mobile-stack-table,
            .mobile-stack-table tbody,
            .mobile-stack-table tr,
            .mobile-stack-table td {
                display: block;
                width: 100%;
            }

            .mobile-stack-table tr {
                padding: 0.85rem 0;
                border-bottom: 1px solid rgba(15, 23, 42, 0.08);
            }

            .mobile-stack-table td {
                border: 0 !important;
                padding: 0.35rem 0 0.35rem 7rem !important;
                position: relative;
                min-height: 2rem;
                text-align: left !important;
            }

            .mobile-stack-table td::before {
                content: attr(data-label);
                position: absolute;
                left: 0;
                top: 0.35rem;
                width: 6rem;
                color: #64748b;
                font-size: 0.72rem;
                font-weight: 700;
                text-transform: uppercase;
                letter-spacing: 0.08em;
            }
        }
        .content-wrapper {
            min-height: 100vh;
            color: #1d2a39;
            background:
                radial-gradient(circle at top left, rgba(14,165,233,.07), transparent 24%),
                radial-gradient(circle at 85% 10%, rgba(251,191,36,.10), transparent 20%),
                linear-gradient(180deg, #f8fafc 0%, #eef3f8 100%);
        }

        .content-wrapper h1,
        .content-wrapper h2,
        .content-wrapper h3,
        .content-wrapper h4,
        .content-wrapper h5,
        .content-wrapper .brand-display {
            color: #0f172a;
        }

        .content-wrapper,
        .content-wrapper .table tbody td,
        .content-wrapper .card-body,
        .content-wrapper .form-label,
        .content-wrapper p,
        .content-wrapper span,
        .content-wrapper div {
            color: #1f2937;
        }

        .content-wrapper {
            font-size: 0.875rem;
            line-height: 1.4;
        }

        .content-wrapper h1,
        .content-wrapper .h1 {
            font-size: clamp(1.3rem, 1.55vw, 1.52rem);
            font-weight: 700 !important;
            letter-spacing: -0.018em;
            text-transform: none;
        }
        .content-wrapper h2,
        .content-wrapper .h2 {
            font-size: clamp(1.08rem, 1.28vw, 1.22rem);
            font-weight: 700 !important;
            letter-spacing: -0.016em;
        }
        .content-wrapper h3,
        .content-wrapper .h3 {
            font-size: clamp(0.98rem, 1.12vw, 1.08rem);
            font-weight: 700 !important;
            letter-spacing: -0.014em;
        }
        .content-wrapper h4,
        .content-wrapper .h4 { font-size: 0.95rem; }
        .content-wrapper h5,
        .content-wrapper .h5 { font-size: 0.88rem; }

        .content-wrapper .text-muted {
            color: #64748b !important;
        }

        .content-wrapper .topbar {
            background: rgba(255,255,255,.86) !important;
            border-bottom: 1px solid rgba(15,23,42,.08) !important;
            box-shadow: 0 12px 24px rgba(15,23,42,.04);
        }

        .content-wrapper .topbar-chip {
            background: #ffffff;
            color: #475569;
            border: 1px solid rgba(15,23,42,.10);
            box-shadow: 0 8px 18px rgba(15,23,42,.05);
        }

        .content-wrapper .locale-switch {
            background: #ffffff;
            border-color: rgba(15,23,42,.10);
        }

        .content-wrapper .locale-switch .btn {
            color: #64748b;
        }

        .content-wrapper .locale-switch .btn.is-active {
            color: #ffffff !important;
        }

        .content-wrapper .section-hero,
        .content-wrapper .stat-card,
        .content-wrapper .table-card,
        .content-wrapper .content-card,
        .content-wrapper .glass-panel,
        .content-wrapper .dropdown-menu,
        .content-wrapper .card {
            background: rgba(255,255,255,.94) !important;
            border: 1px solid rgba(15,23,42,.08) !important;
            box-shadow: 0 18px 36px rgba(15,23,42,.07) !important;
            backdrop-filter: blur(14px);
            -webkit-backdrop-filter: blur(14px);
        }

        .content-wrapper .section-hero::before,
        .content-wrapper .stat-card::before,
        .content-wrapper .table-card::before,
        .content-wrapper .content-card::before,
        .content-wrapper .glass-panel::before,
        .content-wrapper .section-hero::after,
        .content-wrapper .stat-card::after,
        .content-wrapper .table-card::after,
        .content-wrapper .content-card::after,
        .content-wrapper .glass-panel::after {
            opacity: .45;
        }

        .content-wrapper .soft-badge {
            background: #f8fafc;
            color: #475569 !important;
            border: 1px solid rgba(15,23,42,.08);
        }

        .content-wrapper .table thead th {
            color: #94a3b8;
            font-size: 0.72rem;
            text-transform: uppercase;
            letter-spacing: 0.14em;
            font-weight: 500;
        }

        .content-wrapper .table > :not(caption) > * > *,
        .content-wrapper .border-bottom {
            border-color: rgba(15,23,42,.08) !important;
        }

        .content-wrapper .table tbody td,
        .content-wrapper .table tbody th,
        .content-wrapper .table {
            font-size: 0.81rem;
        }

        .content-wrapper .table tbody tr:hover {
            background: rgba(14,165,233,.035);
        }

        /* Global internal-form label standard: identical typography to workspace table headers. */
        .content-wrapper .form-label,
        .content-wrapper form label:not(.form-check-label):not(.btn):not(.input-group-text) {
            color: var(--workspace-muted) !important;
            font-size: var(--workspace-label-size) !important;
            letter-spacing: var(--workspace-label-spacing) !important;
            text-transform: uppercase !important;
            font-weight: 700 !important;
            margin-bottom: 0.35rem;
        }

        .content-wrapper .content-card > .card-body > h2,
        .content-wrapper .content-card > .card-body > h3,
        .content-wrapper .table-card > .card-body > h2,
        .content-wrapper .table-card > .card-body > h3,
        .content-wrapper .stat-card > .card-body > h2,
        .content-wrapper .stat-card > .card-body > h3,
        .content-wrapper .card > .card-body > h2.h5,
        .content-wrapper .card > .card-body > h3.h5,
        .content-wrapper .card > .card-body > .h5,
        .content-wrapper .compact-card .text-muted.small.mb-2,
        .content-wrapper .compact-card .small.text-muted.mb-2 {
            text-transform: uppercase;
            letter-spacing: 0.12em;
            font-weight: 500 !important;
        }

        .content-wrapper .form-control,
        .content-wrapper .form-select {
            background: #ffffff;
            color: #1d2a39;
            border-color: rgba(15,23,42,.12);
            font-size: 0.84rem;
            min-height: var(--workspace-control-height);
            height: var(--workspace-control-height);
            padding: 0.58rem 0.82rem;
            border-radius: var(--workspace-radius-control);
            box-shadow: none !important;
        }

        .content-wrapper .form-control::placeholder {
            color: #94a3b8;
        }

        .content-wrapper .form-control:focus,
        .content-wrapper .form-select:focus {
            background: #ffffff;
            color: #1d2a39;
            border-color: rgba(59,130,246,.35);
            box-shadow: 0 0 0 .25rem rgba(59,130,246,.10);
        }

        .content-wrapper .form-check-input {
            background-color: #ffffff;
            border: 2px solid rgba(37, 99, 235, 0.42);
            box-shadow: none;
            cursor: pointer;
            float: none;
            height: 1.1rem;
            margin: 0;
            width: 1.1rem;
        }

        .content-wrapper .form-check-input:checked {
            background-color: #2563eb;
            border-color: #2563eb;
        }

        .content-wrapper .form-check.form-switch {
            display: inline-flex;
            align-items: center;
            gap: 0.75rem;
            padding-left: 0;
            min-height: 2.25rem;
        }

        .content-wrapper .form-check.form-switch .form-check-input {
            width: 3.15rem;
            min-width: 3.15rem;
            height: 1.8rem;
            margin: 0;
            border-radius: 999px;
            border: 1px solid rgba(37, 99, 235, 0.22);
            background-color: #e2e8f0;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23ffffff'/%3E%3C/svg%3E");
            background-position: left 0.18rem center;
            background-size: 1.35rem 1.35rem;
            background-repeat: no-repeat;
            box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.12);
            transition: background-position .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
        }

        .content-wrapper .form-check.form-switch .form-check-input:focus {
            border-color: rgba(37, 99, 235, 0.3);
            box-shadow: 0 0 0 .25rem rgba(37, 99, 235, 0.10);
        }

        .content-wrapper .form-check.form-switch .form-check-input:checked {
            background-color: #22c55e;
            border-color: #16a34a;
            background-position: right 0.18rem center;
            box-shadow: inset 0 1px 2px rgba(20, 83, 45, 0.18);
        }

        .content-wrapper .form-check.form-switch .form-check-label {
            color: #334155;
            font-weight: 500;
            line-height: 1.2;
            cursor: pointer;
            margin: 0;
        }

        .output-primary-cell {
            min-width: 88px;
        }

        .content-wrapper .lookup-select {
            background-image:
                linear-gradient(180deg, rgba(37, 99, 235, 0.08), rgba(37, 99, 235, 0.08)),
                url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%232563eb' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8' d='m4 6 4 4 4-4'/%3e%3c/svg%3e");
            background-repeat: no-repeat, no-repeat;
            background-position: right 0 top 0, right 0.9rem center;
            background-size: 2.4rem 100%, 14px 14px;
        }

        .content-wrapper .ts-wrapper .ts-control,
        .content-wrapper .ts-dropdown {
            font-size: 0.8rem;
        }

        .content-wrapper .ts-wrapper.single .ts-control,
        .content-wrapper .ts-control {
            min-height: var(--workspace-control-height);
            height: var(--workspace-control-height);
            padding: 0.58rem 2.6rem 0.58rem 0.82rem;
        }

        .content-wrapper .ts-dropdown .option,
        .content-wrapper .ts-dropdown .create {
            padding: 0.55rem 0.75rem;
            font-size: 0.8rem;
            line-height: 1.35;
        }

        .content-wrapper .ts-dropdown .option .title,
        .content-wrapper .ts-dropdown .option .description,
        .content-wrapper .ts-dropdown [data-selectable] {
            font-size: 0.8rem;
        }

        .content-wrapper .btn {
            font-size: 0.84rem;
        }

        .content-wrapper .btn-primary,
        .content-wrapper .btn-bakery {
            background: linear-gradient(180deg, #6eade0 0%, #4f95cf 50%, #367bb8 100%);
            border-color: #5d8fbb;
            color: #fff !important;
            text-shadow: 0 1px 0 rgba(15, 23, 42, 0.18);
            box-shadow:
                inset 0 1px 0 rgba(255,255,255,0.42),
                inset 0 -2px 0 rgba(15,23,42,0.10),
                0 3px 0 rgba(148,163,184,0.34),
                0 10px 18px rgba(54,123,184,0.18);
        }

        .content-wrapper .btn-primary:hover,
        .content-wrapper .btn-bakery:hover,
        .content-wrapper .btn-primary:focus,
        .content-wrapper .btn-bakery:focus {
            background: linear-gradient(180deg, #78b6e7 0%, #589bd4 52%, #3a7fbb 100%);
            border-color: #5d8fbb;
            color: #fff !important;
        }

        .content-wrapper .btn-primary,
        .content-wrapper .btn-bakery,
        .content-wrapper .btn-primary *,
        .content-wrapper .btn-bakery * {
            color: #fff !important;
        }

        .content-wrapper .btn-outline-secondary {
            background: linear-gradient(180deg, #ffffff 0%, #edf2f8 100%);
            color: #475569;
            border-color: rgba(15,23,42,.10);
            box-shadow:
                inset 0 1px 0 rgba(255,255,255,0.85),
                inset 0 -2px 0 rgba(148,163,184,0.16),
                0 3px 0 rgba(203,213,225,0.55),
                0 8px 16px rgba(148,163,184,0.12);
        }

        .content-wrapper .btn-outline-secondary:hover {
            background: linear-gradient(180deg, #ffffff 0%, #e8eef6 100%);
            color: #0f172a;
            border-color: rgba(15,23,42,.14);
        }

        .content-wrapper .btn-outline-primary {
            background: linear-gradient(180deg, #f2f8ff 0%, #dcecff 100%);
            color: #0f6ab0;
            border-color: rgba(14,165,233,.24);
            box-shadow:
                inset 0 1px 0 rgba(255,255,255,0.85),
                inset 0 -2px 0 rgba(59,130,246,0.10),
                0 3px 0 rgba(191,219,254,0.55),
                0 8px 16px rgba(59,130,246,0.10);
        }

        .content-wrapper .btn-outline-primary:hover {
            background: linear-gradient(180deg, #f7fbff 0%, #cfe5ff 100%);
            color: #035c97;
            border-color: rgba(14,165,233,.30);
        }

        .content-wrapper .badge.bg-success {
            background: linear-gradient(135deg, #22c55e, #16a34a) !important;
        }

        .content-wrapper .badge.bg-warning,
        .content-wrapper .badge.text-bg-warning {
            background: linear-gradient(135deg, #fbbf24, #f97316) !important;
            color: #fff !important;
        }

        .content-wrapper .badge.bg-danger {
            background: linear-gradient(135deg, #ef4444, #dc2626) !important;
        }

        .content-wrapper .alert-success {
            background: #ecfdf5;
            border-color: rgba(16,185,129,.18);
            color: #047857;
        }

        .content-wrapper .alert-danger {
            background: #fef2f2;
            border-color: rgba(239,68,68,.18);
            color: #b91c1c;
        }

        .content-wrapper .page-link {
            color: #475569;
            background: #ffffff;
            border-color: rgba(15,23,42,.10);
        }

        .content-wrapper .page-link:hover,
        .content-wrapper .page-item.active .page-link {
            color: #fff;
            background: linear-gradient(135deg, #0ea5e9, #2563eb);
            border-color: transparent;
        }

        .toolbar-actions {
            display: flex;
            align-items: center;
            gap: 0.75rem;
            flex-wrap: wrap;
        }

        .toolbar-btn {
            min-height: 42px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 0.45rem;
            padding-inline: 0.9rem;
            font-weight: 700;
            font-size: 0.84rem;
        }

        .import-file-control {
            min-height: 42px;
            min-width: 420px;
            max-width: 520px;
            display: inline-flex;
            align-items: stretch;
            border: 1px solid rgba(15, 23, 42, 0.12);
            border-radius: 16px;
            overflow: hidden;
            background: #ffffff;
            box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);
        }

        .import-file-control input[type="file"] {
            display: none;
        }

        .import-file-trigger {
            display: inline-flex;
            align-items: center;
            padding: 0 1rem;
            background: #f8fafc;
            border-right: 1px solid rgba(15, 23, 42, 0.10);
            color: #0f172a;
            font-weight: 700;
            cursor: pointer;
            white-space: nowrap;
        }

        .import-file-name {
            flex: 1;
            display: inline-flex;
            align-items: center;
            min-width: 180px;
            padding: 0 1rem;
            color: #64748b;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        @media (max-width: 768px) {
            .import-file-control {
                min-width: 100%;
                max-width: 100%;
            }

            .import-file-name {
                min-width: 0;
            }
        }

        .maintenance-link {
            display: inline-flex;
            align-items: center;
            gap: 0.35rem;
            color: #64748b;
            font-size: 0.78rem;
            font-weight: 700;
            text-decoration: none;
        }

        .sidebar-menu .sidebar-accordion-group {
            margin-top: 1rem;
            border-radius: 18px;
            border: 1px solid rgba(148, 163, 184, 0.10);
            background: rgba(255, 255, 255, 0.02);
            overflow: hidden;
            transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
        }

        .sidebar-menu .sidebar-accordion-group.is-open {
            background: rgba(15, 23, 42, 0.42);
            border-color: rgba(96, 165, 250, 0.20);
            box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
        }

        .sidebar-menu .sidebar-accordion-toggle {
            display: flex;
            align-items: center;
            justify-content: space-between;
            width: 100%;
            border: 0;
            background: transparent;
            color: rgba(203, 213, 225, 0.86);
            font-size: 0.72rem;
            letter-spacing: 0.16em;
            font-weight: 700;
            text-transform: uppercase;
            padding: 0.75rem 0.9rem;
            transition: color .2s ease, background-color .2s ease;
        }

        .sidebar-menu .sidebar-accordion-toggle::after {
            content: "";
            width: 0.55rem;
            height: 0.55rem;
            border-right: 2px solid rgba(148, 163, 184, 0.85);
            border-bottom: 2px solid rgba(148, 163, 184, 0.85);
            transform: rotate(45deg);
            transition: transform .2s ease, border-color .2s ease;
            margin-left: 0.75rem;
            flex-shrink: 0;
        }

        .sidebar-menu .sidebar-accordion-group.is-open > .sidebar-accordion-toggle::after {
            transform: rotate(225deg);
            border-color: rgba(191, 219, 254, 0.95);
        }

        .sidebar-menu .sidebar-accordion-group.is-open > .sidebar-accordion-toggle {
            color: #f8fafc;
            background: rgba(59, 130, 246, 0.10);
        }

        .sidebar-menu .sidebar-accordion-toggle:hover {
            color: #f8fafc;
            background: rgba(255, 255, 255, 0.04);
        }

        .sidebar-menu .sidebar-accordion-group.is-active > .sidebar-accordion-toggle {
            color: #dbeafe;
        }

        .sidebar-menu .sidebar-submenu[data-sidebar-panel] {
            display: none;
            padding: 0.2rem 0.5rem 0.55rem;
        }

        .sidebar-menu .sidebar-accordion-group.is-open > .sidebar-submenu[data-sidebar-panel] {
            display: grid;
            gap: 0.15rem;
        }

        .sidebar-menu .sidebar-nested {
            margin-top: 0.35rem;
            padding: 0.35rem 0 0.45rem 0.55rem;
            border-left: 1px solid rgba(148, 163, 184, 0.12);
        }

        .sidebar-menu summary {
            list-style: none;
            cursor: pointer;
            color: rgba(148, 163, 184, 0.72);
            text-transform: uppercase;
            letter-spacing: 0.16em;
            font-size: 0.7rem;
            font-weight: 700;
            padding: 0 0.2rem;
            margin-bottom: 0.55rem;
        }

        .sidebar-menu .sidebar-nested > summary {
            color: rgba(203, 213, 225, 0.86);
            font-size: 0.66rem;
            letter-spacing: 0.13em;
            margin-bottom: 0.25rem;
            padding: 0.25rem 0.2rem;
        }

        .sidebar-menu .sidebar-nested > summary::after {
            content: "+";
            float: right;
            margin-right: 0.35rem;
            color: rgba(148, 163, 184, 0.85);
        }

        .sidebar-menu .sidebar-nested[open] > summary::after {
            content: "-";
        }

        .sidebar-menu .sidebar-nested .sidebar-link {
            padding-left: 0.55rem;
        }

        .sidebar-menu summary::-webkit-details-marker {
            display: none;
        }

        .sidebar-link-main {
            flex: 1;
            display: inline-flex;
            align-items: center;
            gap: 0.65rem;
            min-width: 0;
        }

        .sidebar-link-icon {
            font-size: 0.95rem;
            opacity: 0.9;
        }

        .sidebar-link-label {
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .sidebar-link-meta {
            font-size: 0.72rem;
            color: rgba(148, 163, 184, 0.78);
        }

        .compact-card .card-body,
        .compact-card.card-body {
            padding: 1rem 1.05rem;
        }

        .compact-stat {
            font-size: 1.55rem;
            line-height: 1;
        }

        .maintenance-link:hover {
            color: #0f172a;
        }

        .sidebar-offcanvas {
            background:
                linear-gradient(180deg, rgba(2, 6, 23, 0.98), rgba(15, 23, 42, 0.97));
            color: var(--text-primary);
        }

        .sidebar-mobile-shell { min-height:100%; }
        @media (max-width: 991.98px) {
            .sidebar-offcanvas { width:min(88vw,360px); border-right:1px solid rgba(91,157,255,.22); background:linear-gradient(160deg,#061630 0%,#08244d 48%,#06162e 100%); box-shadow:24px 0 60px rgba(0,0,0,.28); }
            .sidebar-offcanvas .offcanvas-header { min-height:64px; padding:.85rem 1rem; background:rgba(3,16,39,.48); }
            .sidebar-offcanvas .offcanvas-title { color:#fff; font-size:1rem; font-weight:800; }
            .sidebar-offcanvas .btn-close { opacity:.9; }
            .sidebar-offcanvas .offcanvas-body { padding:.7rem .75rem 1rem !important; overflow-y:auto; }
            .sidebar-offcanvas .sidebar-brand { margin:0 0 .85rem !important; padding:1rem !important; border-radius:18px !important; background:linear-gradient(135deg,rgba(31,92,190,.20),rgba(255,255,255,.04)); border:1px solid rgba(113,165,246,.22) !important; box-shadow:inset 0 1px 0 rgba(255,255,255,.04); }
            .sidebar-offcanvas .sidebar-kicker { color:#78aaff; }
            .sidebar-offcanvas .sidebar-section-label { margin:.85rem .25rem .35rem; color:#6fa8ff; font-size:.65rem; letter-spacing:.11em; }
            .sidebar-offcanvas .sidebar-menu-link { min-height:46px; padding:.68rem .78rem; border-radius:13px; color:#dce9ff; font-size:.9rem; }
            .sidebar-offcanvas .sidebar-menu-link i { width:28px; height:28px; display:grid; place-items:center; border-radius:9px; color:#bcd5ff; background:rgba(255,255,255,.06); font-size:1rem; }
            .sidebar-offcanvas .sidebar-menu-link.active { color:#fff; background:linear-gradient(135deg,#0d6efd,#1559df); box-shadow:0 8px 20px rgba(13,110,253,.25); }
            .sidebar-offcanvas .sidebar-menu-link.active i { color:#fff; background:rgba(255,255,255,.14); }
            .sidebar-offcanvas .sidebar-menu-link:hover { background:rgba(255,255,255,.07); color:#fff; }
            .sidebar-offcanvas .sidebar-menu-section { margin-top:.55rem; border-color:rgba(111,168,255,.16); border-radius:15px; background:rgba(2,12,31,.18); overflow:hidden; }
            .sidebar-offcanvas .sidebar-menu-section-header { min-height:44px; padding:.65rem .75rem; color:#a9c9f7; }
            .sidebar-offcanvas .sidebar-menu-section-header:not(.collapsed) { color:#fff; background:rgba(37,99,235,.16); }
            .sidebar-offcanvas .sidebar-menu-section .sidebar-menu-link { margin:.15rem .35rem; }
            .sidebar-offcanvas .sidebar-menu { display:flex; flex-direction:column; gap:.45rem; }
            .sidebar-offcanvas .sidebar-group { margin:0; }
            .sidebar-offcanvas .nav-section-title { margin:.65rem .3rem .35rem; color:#6fa8ff; font-size:.62rem; letter-spacing:.12em; }
            .sidebar-offcanvas .sidebar-link { min-height:46px; margin:0; padding:.62rem .7rem; border-radius:13px; color:#dce9ff; }
            .sidebar-offcanvas .sidebar-link-main { gap:.65rem; }
            .sidebar-offcanvas .sidebar-link-icon { width:30px; height:30px; display:grid; place-items:center; flex:0 0 30px; border-radius:9px; background:rgba(255,255,255,.07); color:#c9ddff; opacity:1; }
            .sidebar-offcanvas .sidebar-link.active { background:linear-gradient(135deg,#126fff,#145bdc); color:#fff; box-shadow:0 8px 18px rgba(11,89,220,.28); transform:none; }
            .sidebar-offcanvas .sidebar-link.active .sidebar-link-icon { background:rgba(255,255,255,.16); color:#fff; }
            .sidebar-offcanvas .sidebar-link-meta { color:#8fc1ff; }
            .sidebar-offcanvas .sidebar-accordion-group { border:0; border-top:1px solid rgba(111,168,255,.18); border-radius:0; background:transparent; overflow:visible; }
            .sidebar-offcanvas .sidebar-accordion-toggle { min-height:40px; padding:.55rem .3rem; color:#79aefc; font-size:.65rem; letter-spacing:.10em; }
            .sidebar-offcanvas .sidebar-menu .sidebar-accordion-group.is-open > .sidebar-accordion-toggle { background:transparent; color:#79aefc; }
            .sidebar-offcanvas .sidebar-submenu[data-sidebar-panel] { padding:.05rem 0 .3rem; gap:.12rem; }
            .sidebar-offcanvas .sidebar-submenu .sidebar-link { margin:0; }
            .sidebar-offcanvas .sidebar-brand { display:none; }

            /* Mobile offcanvas must always use the expanded menu, never the desktop compact rail. */
            .sidebar-offcanvas .sidebar-rail { display:none !important; }
            .sidebar-offcanvas .sidebar-expanded-content { display:flex !important; width:100%; min-width:0; height:auto !important; }
            .sidebar-offcanvas .sidebar-menu { width:100%; min-width:0; }
            .sidebar-offcanvas .sidebar-group,
            .sidebar-offcanvas .sidebar-accordion-group,
            .sidebar-offcanvas .sidebar-submenu { width:100%; min-width:0; }
            .sidebar-offcanvas .sidebar-link { width:100%; }
            .sidebar-offcanvas .sidebar-link-label { white-space:normal; overflow:visible; text-overflow:clip; line-height:1.2; }
            .sidebar-offcanvas [data-sidebar-panel] { max-height:none; }
            .sidebar-offcanvas .sidebar-accordion-group:not(.is-open) [data-sidebar-panel] { display:none; }
            .sidebar-offcanvas .sidebar-accordion-group.is-open [data-sidebar-panel] { display:flex; }

        }
        .auth-mini-card {
            min-height: 170px;
            border-radius: 24px;
            background: rgba(255,255,255,.06);
            border: 1px solid rgba(255,255,255,.08);
            box-shadow: 0 18px 30px rgba(2,6,23,.18);
            backdrop-filter: blur(18px);
            -webkit-backdrop-filter: blur(18px);
            overflow: hidden;
        }

        .auth-mini-card .card-body {
            min-height: 170px;
            padding: 1.25rem 1.1rem;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
        }

        .auth-mini-card .metric-label {
            color: #cbd5e1;
            text-transform: uppercase;
            letter-spacing: .14em;
            font-size: .72rem;
            font-weight: 700;
        }

        .auth-mini-card .metric-value {
            color: #ffffff;
            font-size: 2.1rem;
            font-weight: 800;
            line-height: 1;
        }

        .auth-mini-card .metric-copy {
            color: #cbd5e1;
            font-size: .95rem;
            line-height: 1.4;
        }

        .ts-wrapper,
        .listbox-shell {
            position: relative;
            width: 100%;
        }

        .ts-wrapper.single .ts-control {
            align-items: center;
            border-radius: var(--workspace-radius-control);
            border-color: rgba(15, 23, 42, 0.12);
            box-sizing: border-box;
            display: flex;
            flex-wrap: nowrap;
            height: var(--workspace-control-height);
            max-height: var(--workspace-control-height);
            min-height: var(--workspace-control-height);
            overflow: hidden;
            padding: 0.58rem 3.35rem 0.58rem 0.92rem;
            box-shadow: none;
            position: relative;
        }

        .ts-wrapper.single .ts-control .item {
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        .ts-wrapper.single::before,
        .listbox-shell::before {
            content: "";
            position: absolute;
            top: 1px;
            right: 1px;
            width: 46px;
            height: calc(100% - 2px);
            background: #edf4ff;
            border-left: 1px solid rgba(216, 225, 240, 0.95);
            border-radius: 0 calc(var(--workspace-radius-control) - 1px) calc(var(--workspace-radius-control) - 1px) 0;
            pointer-events: none;
            z-index: 1;
        }

        .ts-wrapper.single .ts-control > input {
            line-height: 1.25;
            margin: 0 !important;
            min-height: 0;
            padding: 0 !important;
        }

        .ts-wrapper.focus .ts-control {
            border-color: rgba(59,130,246,.35);
            box-shadow: 0 0 0 .25rem rgba(59,130,246,.10);
        }

        .ts-wrapper.single::after,
        .listbox-shell::after {
            content: "";
            position: absolute;
            top: 50%;
            right: 19px;
            width: 10px;
            height: 10px;
            border-right: 2px solid #2563eb;
            border-bottom: 2px solid #2563eb;
            transform: translateY(-62%) rotate(45deg);
            pointer-events: none;
            z-index: 2;
        }

        .ts-dropdown,
        .ts-control,
        .ts-control input {
            color: #1d2a39;
        }

        .ts-dropdown {
            border-radius: 16px;
            border-color: rgba(15, 23, 42, 0.10);
            box-shadow: 0 18px 36px rgba(15,23,42,.12);
            display: none;
            left: 0;
            overflow: hidden;
            position: absolute;
            right: 0;
            top: calc(100% + 4px);
            width: 100% !important;
            z-index: 1055;
        }

        .ts-dropdown.floating-dropdown {
            position: fixed !important;
            width: var(--floating-dropdown-width, 100%) !important;
            left: var(--floating-dropdown-left, 0) !important;
            top: var(--floating-dropdown-top, 0) !important;
            right: auto !important;
            bottom: auto !important;
            z-index: 3000 !important;
        }

        .ts-dropdown.floating-dropdown.dropdown-up {
            top: var(--floating-dropdown-top, 0) !important;
        }

        .ts-wrapper.dropdown-up .ts-dropdown {
            bottom: calc(100% + 4px);
            top: auto;
        }

        .ts-dropdown .option,
        .ts-dropdown .create {
            padding: 0.7rem 0.85rem;
        }

        .ts-dropdown .active {
            background: #dbeafe;
            color: #0f172a;
        }

        .content-wrapper .ts-dropdown,
        .content-wrapper .ts-dropdown-content,
        .content-wrapper .ts-dropdown .option,
        .content-wrapper .ts-dropdown .create,
        .content-wrapper .ts-dropdown [data-selectable],
        .ts-dropdown.floating-dropdown,
        .ts-dropdown.floating-dropdown .ts-dropdown-content,
        .ts-dropdown.floating-dropdown .option,
        .ts-dropdown.floating-dropdown .create,
        .ts-dropdown.floating-dropdown [data-selectable] {
            font-size: 0.8rem !important;
            line-height: 1.35 !important;
        }

        .content-wrapper .ts-dropdown .option,
        .content-wrapper .ts-dropdown .create,
        .content-wrapper .ts-dropdown [data-selectable],
        .ts-dropdown.floating-dropdown .option,
        .ts-dropdown.floating-dropdown .create,
        .ts-dropdown.floating-dropdown [data-selectable] {
            padding: 0.55rem 0.75rem !important;
        }

        body.app-authenticated {
            background:
                radial-gradient(circle at top left, rgba(53, 119, 255, 0.10), transparent 24%),
                radial-gradient(circle at 92% 16%, rgba(255, 178, 81, 0.12), transparent 20%),
                linear-gradient(180deg, #eef4fc 0%, #f8fbff 100%);
            color: #1a2745;
        }

        body.app-authenticated::before {
            opacity: 0.12;
            background-image:
                radial-gradient(rgba(125, 152, 201, 0.22) 0.7px, transparent 0.7px);
            background-size: 22px 22px;
            mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.10), transparent 88%);
        }

        .app-authenticated .content-wrapper {
            background: transparent;
        }

        .app-authenticated .sidebar {
            display: flex;
            flex-direction: column;
            min-height: 100vh;
            height: 100vh;
            overflow: hidden;
            padding: 0 0.8rem 0.8rem !important;
            background: linear-gradient(180deg, #091427 0%, #07111f 100%);
            box-shadow: inset -1px 0 0 rgba(255,255,255,0.05);
        }

        .app-authenticated .sidebar-brand,
        .app-authenticated .sidebar-footer-card,
        .app-authenticated .sidebar-profile-card {
            border-radius: 20px;
            border: 1px solid rgba(255,255,255,0.08);
            background: linear-gradient(180deg, rgba(16, 26, 48, 0.94), rgba(9, 18, 34, 0.98));
            box-shadow: 0 20px 32px rgba(2, 8, 20, 0.32);
        }

        .app-authenticated .sidebar-kicker,
        .app-authenticated .nav-section-title {
            color: rgba(198, 211, 236, 0.72);
        }

        .app-authenticated .sidebar-brand {
            padding: 1rem 0.95rem;
            margin-bottom: 0.95rem !important;
        }

        .app-authenticated .sidebar-kicker {
            font-size: 0.66rem;
            letter-spacing: 0.16em;
        }

        .app-authenticated .sidebar-brand .fw-bold.fs-4 {
            font-size: 1rem !important;
            line-height: 1.2;
            margin-bottom: 0.35rem;
        }

        .app-authenticated .sidebar-brand .small {
            font-size: 0.76rem !important;
            line-height: 1.45;
        }

        .app-authenticated .sidebar a {
            color: #d6e1f5;
            padding: 0.66rem 0.8rem;
            border-radius: 18px;
            font-size: 0.92rem;
        }

        .app-authenticated .sidebar a.active,
        .app-authenticated .sidebar a:hover {
            background: linear-gradient(180deg, rgba(18, 47, 97, 0.96), rgba(10, 30, 70, 0.96));
            box-shadow: inset 0 1px 0 rgba(255,255,255,0.08);
            transform: none;
        }

        .app-authenticated .sidebar-link-meta {
            color: rgba(89, 166, 255, 0.92);
        }

        .app-authenticated .nav-section-title {
            margin: 0.7rem 0 0.38rem;
            font-size: 0.56rem;
            letter-spacing: 0.12em;
        }

        .app-authenticated .sidebar-menu {
            min-height: 0;
        }

        .app-authenticated .sidebar-menu .sidebar-accordion-group {
            margin-top: 0.58rem;
        }

        .app-authenticated .sidebar-menu .sidebar-accordion-toggle {
            padding: 0.62rem 0.78rem;
            font-size: 0.74rem;
            letter-spacing: 0.08em;
            font-weight: 700;
        }

        .app-authenticated .sidebar-menu .sidebar-submenu[data-sidebar-panel] {
            padding: 0.14rem 0.38rem 0.34rem;
        }

        .app-authenticated .sidebar-menu .sidebar-nested {
            margin-top: 0.18rem;
            padding: 0.18rem 0 0.2rem 0.38rem;
        }

        .app-authenticated .sidebar-menu .sidebar-nested > summary {
            font-size: 0.74rem;
            padding: 0.32rem 0;
            letter-spacing: 0.08em;
            font-weight: 700;
        }

        .app-authenticated .sidebar-menu .sidebar-nested .sidebar-link {
            font-size: 0.82rem;
        }

        .app-authenticated .sidebar-link-icon {
            font-size: 0.96rem;
        }

        .app-authenticated .content-wrapper {
            min-height: 100vh;
            margin: 0 !important;
            padding-top: 0 !important;
        }

        .app-authenticated .topbar {
            background: transparent !important;
            border: 0 !important;
            padding-top: 0 !important;
            padding-bottom: 0.45rem !important;
            margin-top: 0 !important;
            position: sticky;
            top: 0;
            z-index: 1030;
            backdrop-filter: blur(18px);
            -webkit-backdrop-filter: blur(18px);
        }

        .app-authenticated .app-main-content {
            padding-top: 1.15rem !important;
        }

        /* Responsive workspace standard: desktop + tablet complete, mobile operational */
        @media (max-width: 1199.98px) {
            .app-authenticated .app-main-content {
                padding: 1rem !important;
            }

            .table-responsive {
                -webkit-overflow-scrolling: touch;
            }

            .workspace-card,
            .catalog-form-card,
            .catalog-index-info-card,
            .catalog-index-table-card {
                border-radius: 22px;
            }
        }

        @media (max-width: 767.98px) {
            .app-authenticated .topbar {
                padding: .65rem .75rem !important;
            }

            .app-authenticated .app-main-content {
                padding: .8rem !important;
            }

            .topbar-page-intro {
                display: none;
            }

            .dashboard-topbar-tools {
                margin-left: auto !important;
                flex-wrap: nowrap !important;
            }

            .topbar-logout-btn span {
                display: none;
            }

            .workspace-card,
            .catalog-form-card,
            .catalog-index-info-card,
            .catalog-index-table-card {
                border-radius: 18px;
            }

            .form-control,
            .form-select,
            .btn,
            .catalog-form-page-btn,
            .catalog-form-primary-btn,
            .workspace-page-btn,
            .workspace-primary-btn {
                min-height: 44px;
            }

            .table-responsive {
                margin-inline: -.15rem;
            }
        }

        .topbar-search {
            display: inline-flex;
            align-items: center;
            gap: 0.75rem;
            min-width: 360px;
            padding: 0.7rem 0.95rem;
            border-radius: 16px;
            border: 1px solid rgba(216, 225, 240, 0.95);
            background: rgba(255,255,255,0.94);
            box-shadow: 0 14px 30px rgba(92, 114, 162, 0.10);
        }

        .topbar-search i {
            color: #6f83aa;
            font-size: 1rem;
        }

        .topbar-search input {
            flex: 1;
            border: 0;
            outline: 0;
            background: transparent;
            color: #233457;
            font-size: 0.88rem;
        }

        .topbar-search-shortcut {
            padding: 0.2rem 0.42rem;
            border-radius: 10px;
            background: #f3f6fb;
            border: 1px solid rgba(216, 225, 240, 0.95);
            color: #6f83aa;
            font-size: 0.72rem;
            font-weight: 700;
        }

        .topbar-icon-button {
            position: relative;
            width: 46px;
            height: 46px;
            border-radius: 16px;
            border: 1px solid rgba(216, 225, 240, 0.95);
            background: rgba(255,255,255,0.94);
            color: #33476d;
            box-shadow: 0 14px 30px rgba(92, 114, 162, 0.10);
        }

        .topbar-icon-button.dropdown-toggle::after {
            display: none;
        }

        .topbar-notification-menu {
            min-width: 280px;
            padding: 0.6rem;
            border-radius: 18px;
            position: absolute !important;
            inset: calc(100% + 10px) 0 auto auto !important;
            margin: 0 !important;
        }

        .topbar-notification-item {
            display: flex;
            align-items: flex-start;
            gap: 0.7rem;
            padding: 0.65rem 0.7rem;
            border-radius: 14px;
            color: #233457;
        }

        .topbar-notification-item:hover {
            background: #f8fbff;
            color: #233457;
        }

        .topbar-notification-menu .topbar-notification-item strong.d-block {
            font-size: 0.62rem !important;
            line-height: 1.15 !important;
            font-weight: 700;
        }

        .topbar-notification-menu .topbar-notification-item small.text-muted {
            font-size: 0.52rem !important;
            line-height: 1.15 !important;
        }

        .topbar-notification-item i {
            color: #2c7cff;
            font-size: 0.95rem;
            margin-top: 0.1rem;
        }

        .topbar-badge {
            position: absolute;
            top: -4px;
            right: -2px;
            width: 22px;
            height: 22px;
            border-radius: 50%;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: #2c7cff;
            color: #fff;
            font-size: 0.72rem;
            font-weight: 800;
            border: 2px solid #f8fbff;
        }

        .app-authenticated .locale-switch {
            background: rgba(255,255,255,0.94);
            border-color: rgba(216, 225, 240, 0.95);
            box-shadow: 0 14px 30px rgba(92, 114, 162, 0.10);
            min-height: 46px;
        }

        .app-authenticated .locale-switch .btn {
            min-height: 42px;
        }

        .topbar-user-card {
            display: inline-flex;
            align-items: center;
            gap: 0.85rem;
            padding: 0.65rem 0.9rem;
            min-width: 198px;
            border-radius: 16px;
            background: rgba(255,255,255,0.96);
            border: 1px solid rgba(216, 225, 240, 0.95);
            color: #1a2745;
            box-shadow: 0 14px 30px rgba(92, 114, 162, 0.10);
        }

        .topbar-page-intro {
            min-width: 0;
        }

        .topbar-page-title {
            color: #162847;
            font-size: 0.88rem;
            font-weight: 700;
            letter-spacing: -0.015em;
            line-height: 1.2;
            text-transform: none !important;
        }

        .topbar-page-subtitle {
            color: #7589ad;
            font-size: 0.72rem;
            margin-top: 0.12rem;
        }

        .topbar-user-card strong {
            display: inline;
            font-size: 0.9rem;
            line-height: 1.2;
        }

        .topbar-user-card small {
            display: inline;
            color: #7a8fb3;
            font-size: 0.76rem;
            margin-left: 0.35rem;
        }

        .topbar-user-card small::before {
            content: "(";
        }

        .topbar-user-card small::after {
            content: ")";
        }

        .topbar-user-status {
            width: 11px;
            height: 11px;
            border-radius: 50%;
            background: #35c46d;
            box-shadow: 0 0 0 5px rgba(53, 196, 109, 0.12);
            flex: 0 0 11px;
        }

        .topbar-user-card,
        .topbar-user-status,
        .topbar-user-card strong,
        .topbar-user-card small,
        .topbar-user-card small::before,
        .topbar-user-card small::after {
            display: none !important;
        }

        .topbar-logout-btn {
            min-height: 46px;
            padding: 0.68rem 0.95rem;
            border-radius: 16px;
            font-size: 0.82rem;
            font-weight: 700;
        }

        .dashboard-topbar-tools {
            flex-wrap: nowrap !important;
            align-items: center;
        }

        .app-authenticated .section-hero,
        .app-authenticated .stat-card,
        .app-authenticated .table-card,
        .app-authenticated .content-card,
        .app-authenticated .dropdown-menu {
            background: rgba(255,255,255,0.94);
            border-color: rgba(216, 225, 240, 0.92);
            box-shadow: 0 16px 32px rgba(92, 114, 162, 0.10);
            backdrop-filter: blur(16px);
        }

        .app-authenticated .section-hero::before,
        .app-authenticated .stat-card::before,
        .app-authenticated .table-card::before,
        .app-authenticated .content-card::before,
        .app-authenticated .section-hero::after,
        .app-authenticated .stat-card::after,
        .app-authenticated .table-card::after,
        .app-authenticated .content-card::after {
            opacity: 0.45;
        }

        .app-authenticated h1,
        .app-authenticated h2,
        .app-authenticated h3,
        .app-authenticated h4,
        .app-authenticated h5,
        .app-authenticated .brand-display {
            color: #162847;
        }

        .app-authenticated .text-muted {
            color: #6f83aa !important;
        }

        .app-authenticated .table thead th {
            color: #8ea0bf;
        }

        .app-authenticated .table tbody td {
            color: #1c2948;
        }

        .app-authenticated .table tbody tr:hover {
            background: rgba(241, 246, 255, 0.9);
        }

        .app-authenticated .form-control,
        .app-authenticated .form-select,
        .app-authenticated .ts-wrapper.single .ts-control {
            background: rgba(255,255,255,0.98);
            border-color: rgba(216, 225, 240, 0.95);
            color: #1c2948;
            box-shadow: none !important;
            min-height: var(--workspace-control-height);
            height: var(--workspace-control-height);
            border-radius: var(--workspace-radius-control);
        }

        .app-authenticated .form-select:not([data-searchable-select]) {
            appearance: none;
            -webkit-appearance: none;
            -moz-appearance: none;
            min-height: var(--workspace-control-height);
            height: var(--workspace-control-height);
            padding-right: 3.35rem;
            background-color: rgba(255,255,255,0.98);
            background-image: none !important;
            border-radius: var(--workspace-radius-control);
        }

        .content-wrapper .input-group > .form-control,
        .content-wrapper .input-group > .form-select,
        .content-wrapper .input-group > .input-group-text,
        .app-authenticated .input-group > .form-control,
        .app-authenticated .input-group > .form-select,
        .app-authenticated .input-group > .input-group-text {
            min-height: var(--workspace-control-height);
            height: var(--workspace-control-height);
            border-radius: var(--workspace-radius-control);
            box-shadow: none !important;
        }

        .content-wrapper .input-group > .input-group-text,
        .app-authenticated .input-group > .input-group-text {
            padding: 0 0.8rem;
        }

        .content-wrapper .input-group > :first-child:not(:last-child),
        .app-authenticated .input-group > :first-child:not(:last-child) {
            border-top-right-radius: 0;
            border-bottom-right-radius: 0;
        }

        .content-wrapper .input-group > :last-child:not(:first-child),
        .app-authenticated .input-group > :last-child:not(:first-child) {
            border-top-left-radius: 0;
            border-bottom-left-radius: 0;
        }

        .app-authenticated .form-control::placeholder {
            color: #97a7c2;
        }

        .app-authenticated .lookup-select[data-searchable-select] {
            background-image:
                linear-gradient(180deg, rgba(59, 130, 246, 0.07), rgba(59, 130, 246, 0.07)),
                url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%232563eb' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8' d='m4 6 4 4 4-4'/%3e%3c/svg%3e");
        }

        .app-authenticated select[data-searchable-select] {
            background-image: none !important;
            padding-right: 0.82rem !important;
        }

        .app-authenticated .btn-outline-secondary {
            background: rgba(255,255,255,0.94);
            border-color: rgba(216, 225, 240, 0.95);
            color: #42587d;
            box-shadow: 0 10px 18px rgba(92, 114, 162, 0.08);
        }

        .app-authenticated .btn-outline-secondary:hover {
            color: #233457;
            background: #fff;
        }

        .app-authenticated .soft-badge {
            background: rgba(245, 248, 255, 0.95);
            border-color: rgba(216, 225, 240, 0.95);
            color: #6f83aa;
        }

        .app-authenticated .alert-success {
            color: #0f5132;
            background: rgba(209, 250, 229, 0.9);
            border-color: rgba(16, 185, 129, 0.2);
        }

        .app-authenticated .alert-danger {
            color: #991b1b;
            background: rgba(254, 226, 226, 0.9);
            border-color: rgba(239, 68, 68, 0.2);
        }

        /* Shared mobile application chrome */
        .app-mobile-header,.app-mobile-nav{display:none}
        @media(max-width:767.98px){
            .app-authenticated .topbar{display:none!important}.app-authenticated .app-main-content{padding:0 .7rem 76px!important}
            .app-mobile-header{display:flex;position:sticky;top:0;z-index:1030;align-items:center;gap:.6rem;min-height:62px;margin:0 -.7rem .65rem;padding:.5rem .8rem;background:linear-gradient(135deg,#071a3c,#0b2858);color:#fff}
            .app-mobile-menu,.app-mobile-head-action{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:11px;color:#fff;background:rgba(255,255,255,.09)}
            .app-mobile-brand{flex:1;min-width:0}.app-mobile-brand img{display:block;max-width:180px;max-height:55px;object-fit:contain}.app-mobile-brand-mark{display:inline-flex!important;align-items:baseline;gap:.24rem;color:#fff!important;white-space:nowrap;line-height:1}.app-mobile-brand-mark strong{color:#fff!important;font-size:1.05rem;font-weight:800;letter-spacing:.04em}.app-mobile-brand-mark b{color:#60a5fa!important;font-size:.72rem;font-weight:800;letter-spacing:.12em}
            .app-mobile-head-action{position:relative;border-radius:50%}.app-mobile-avatar{font-size:.65rem;font-weight:800;background:#7188ad}
            .app-mobile-nav{position:fixed;z-index:1040;left:0;right:0;bottom:0;height:64px;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;padding:4px 8px calc(4px + env(safe-area-inset-bottom));background:linear-gradient(135deg,#071a3c,#0b2858);border-top:1px solid rgba(255,255,255,.08);box-shadow:0 -8px 24px rgba(4,20,48,.18)}
            .app-mobile-nav a,.app-mobile-nav button{height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;background:transparent;color:#b8c8e2;text-decoration:none;font-size:.55rem;font-weight:700}.app-mobile-nav i{font-size:1rem;color:inherit}.app-mobile-nav .is-active{color:#fff}.app-mobile-nav .mobile-new{width:48px;height:48px;justify-self:center;margin-top:-20px;border-radius:50%;background:linear-gradient(180deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 7px 16px rgba(37,99,235,.35)}.app-mobile-nav .mobile-new span{display:none}
            .app-user-menu{min-width:220px;padding:.45rem;border:1px solid #e1e8f3;border-radius:14px;box-shadow:0 14px 35px rgba(7,26,60,.18)}.app-user-menu-head{padding:.55rem .65rem .4rem}.app-user-menu-head strong,.app-user-menu-head span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-user-menu-head strong{color:#172f59;font-size:.78rem}.app-user-menu-head span{color:#7183a0;font-size:.62rem}.app-user-menu .dropdown-item{display:flex;align-items:center;gap:.6rem;padding:.58rem .65rem;border-radius:9px;color:#294467;font-size:.7rem;font-weight:650}.app-user-menu .logout{color:#dc3545}
            .app-quick-sheet{height:auto!important;max-height:70dvh;border-radius:22px 22px 0 0}.app-quick-grid{display:grid;gap:.55rem}.app-quick-grid a{display:grid;grid-template-columns:40px minmax(0,1fr) 18px;align-items:center;gap:.7rem;padding:.7rem;border:1px solid #e1e8f3;border-radius:14px;color:#17325d;text-decoration:none}.app-quick-grid a>i:first-child{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#edf4ff;color:#2563eb}.app-quick-grid strong,.app-quick-grid small{display:block}.app-quick-grid strong{font-size:.72rem}.app-quick-grid small{font-size:.56rem;color:#7183a0}
        }

        /* Tablet keeps the desktop composition; only mobile gets a different UI. */
        .tablet-sidebar-toggle{display:none!important}
        @media (min-width:768px){
            /* ARVIX ONE responsive contract: desktop + tablet share one composition. */
            .app-authenticated .row.g-0{display:flex!important;flex-wrap:nowrap!important;align-items:stretch!important}
            .app-authenticated .row.g-0 > .sidebar{
                display:block!important;
                flex:0 0 clamp(215px,22vw,250px)!important;
                width:clamp(215px,22vw,250px)!important;
                max-width:clamp(215px,22vw,250px)!important;
                min-width:215px!important;
                overflow:visible!important;
            }
            .app-authenticated .row.g-0 > .content-wrapper{
                flex:1 1 auto!important;
                width:auto!important;
                max-width:none!important;
                min-width:0!important;
                overflow-x:hidden;
            }
            .app-authenticated .topbar .btn[data-bs-target="#mobileSidebar"],
            .tablet-sidebar-toggle{display:none!important}
            .app-authenticated .sidebar .sidebar-shell{padding:.85rem .7rem 1rem}
            .app-authenticated .sidebar .sidebar-link{min-height:42px;padding:.54rem .58rem;font-size:clamp(.72rem,.9vw,.86rem);white-space:normal!important}
            .app-authenticated .sidebar .sidebar-link-main{min-width:0;gap:.52rem}
            .app-authenticated .sidebar .sidebar-link-main > span:last-child{min-width:0;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.2}
            .app-authenticated .sidebar .sidebar-link-meta{white-space:nowrap;flex:0 0 auto}
            .app-authenticated .sidebar .sidebar-link-icon{flex:0 0 28px;width:28px;height:28px}
            .app-authenticated .sidebar .nav-section-title{font-size:clamp(.56rem,.7vw,.62rem)}
            .app-authenticated .topbar{min-height:72px;padding-left:clamp(.75rem,1.4vw,1.25rem)!important;padding-right:clamp(.55rem,1vw,1rem)!important}
            .app-authenticated .dashboard-topbar-tools{margin-left:auto!important;justify-content:flex-end!important;flex-wrap:nowrap!important}
            .app-authenticated .app-main-content{min-width:0;padding:clamp(.85rem,1.4vw,1.25rem)!important}
            .app-authenticated .workspace-shell,
            .app-authenticated .workspace-card,
            .app-authenticated .content-card,
            .app-authenticated .table-card{min-width:0}
            .app-authenticated .table-responsive{width:100%;max-width:100%;overflow-x:auto}
            .app-authenticated img,.app-authenticated svg{max-width:100%}

            /* Reusable responsive primitives: components reflow by available space, not device model. */
            .app-authenticated .responsive-grid{display:grid;gap:clamp(.75rem,1.2vw,1rem);grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--grid-min,220px)),1fr))}
            .app-authenticated .responsive-grid--wide{--grid-min:280px}
            .app-authenticated .responsive-grid--compact{--grid-min:180px}
            .app-authenticated .responsive-toolbar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;min-width:0}
            .app-authenticated .responsive-toolbar > *{min-width:0}
            .app-authenticated .responsive-toolbar .grow{flex:1 1 240px}
            .app-authenticated .responsive-form-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
            .app-authenticated .responsive-panel-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
            .app-authenticated .responsive-actions{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;flex-wrap:wrap}
            .app-authenticated :is(.card,.workspace-card,.content-card,.table-card,.stat-card) :is(input,select,textarea,.input-group){max-width:100%}
            .app-authenticated :is(.workspace-page-head,.receipts-page-head,.receipt-create-head,.receipt-show-head){min-width:0}
        }


        /* Landscape tablet density: same desktop composition, compact vertical rhythm. */
        @media (min-width:768px) and (max-width:1199.98px) and (orientation:landscape) and (max-height:900px){
            .app-authenticated .row.g-0 > .sidebar{
                flex-basis:clamp(205px,20vw,225px)!important;
                width:clamp(205px,20vw,225px)!important;
                max-width:clamp(205px,20vw,225px)!important;
                min-width:205px!important;
            }
            .app-authenticated .sidebar{height:100dvh;overflow:hidden!important}
            .app-authenticated .sidebar .sidebar-shell{height:100dvh;padding:.55rem .55rem .7rem;overflow-y:auto;scrollbar-width:thin}
            .app-authenticated .sidebar-brand{margin-bottom:.7rem!important}
            .app-authenticated .sidebar-brand .sidebar-kicker{margin-bottom:.25rem!important;font-size:.58rem}
            .app-authenticated .sidebar-brand .fs-4{font-size:1rem!important;line-height:1.12}
            .app-authenticated .sidebar-brand .small{font-size:.62rem;line-height:1.2}
            .app-authenticated .sidebar .sidebar-group{margin-bottom:.35rem}
            .app-authenticated .sidebar .nav-section-title{margin-bottom:.22rem;font-size:.52rem}
            .app-authenticated .sidebar .sidebar-accordion-toggle{min-height:30px;padding:.28rem .45rem;font-size:.64rem}
            .app-authenticated .sidebar .sidebar-submenu{gap:.12rem}
            .app-authenticated .sidebar .sidebar-link{min-height:34px;padding:.3rem .42rem;font-size:.68rem;line-height:1.1}
            .app-authenticated .sidebar .sidebar-link-main{gap:.38rem}
            .app-authenticated .sidebar .sidebar-link-icon{width:24px;height:24px;flex-basis:24px;font-size:.78rem}
            .app-authenticated .sidebar .sidebar-link-meta{font-size:.56rem}
            .app-authenticated .topbar{min-height:58px;padding-top:.4rem!important;padding-bottom:.4rem!important}
            .app-authenticated .topbar-icon-button{width:40px;height:40px;border-radius:12px}
            .app-authenticated .locale-switch{min-height:40px}
            .app-authenticated .locale-switch .btn{min-height:36px;padding:.35rem .55rem}
            .app-authenticated .topbar-logout-btn{min-height:40px;padding:.5rem .7rem}
            .app-authenticated .topbar-page-title{font-size:.8rem}
            .app-authenticated .topbar-page-subtitle{font-size:.66rem}
            .app-authenticated .app-main-content{padding:.7rem!important}
            .app-authenticated :is(.workspace-card,.content-card,.table-card,.card){--workspace-radius-card:20px}
        }


        /* Sidebar responsive system: one expanded presentation + one compact icon rail. */
        .sidebar-rail{display:none}
        .sidebar-toggle-expanded,.sidebar-toggle-compact{display:none}

        @media (min-width:768px){
            .app-authenticated .sidebar{
                position:sticky!important;top:0!important;height:100dvh!important;min-height:100dvh!important;overflow:visible!important;
                transition:flex-basis .2s ease,width .2s ease,max-width .2s ease,min-width .2s ease;
            }
            .app-authenticated .sidebar>.sidebar-shell{
                position:relative!important;height:100dvh!important;min-height:0!important;padding-bottom:72px!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin;
            }

            /* Expanded control */
            .app-authenticated:not(.sidebar-collapsed) .sidebar-toggle-expanded{display:flex!important}
            .app-authenticated:not(.sidebar-collapsed) .sidebar-toggle-compact{display:none!important}
            .app-authenticated.sidebar-collapsed .sidebar-toggle-expanded{display:none!important}
            .app-authenticated.sidebar-collapsed .sidebar-toggle-compact{display:grid!important}
            .app-authenticated:not(.sidebar-collapsed) .sidebar-toggle-expanded{
                position:absolute!important;z-index:100!important;top:auto!important;bottom:14px!important;left:14px!important;right:14px!important;
                width:calc(100% - 28px)!important;height:46px!important;min-height:46px!important;margin:0!important;padding:0 12px!important;
                display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
                border:1px solid rgba(117,174,255,.34)!important;border-radius:13px!important;
                background:linear-gradient(135deg,#123f7d,#0d2f62)!important;color:#f4f8ff!important;
                box-shadow:0 8px 20px rgba(0,12,34,.28)!important;font-size:.74rem!important;font-weight:700!important;line-height:1!important;
                transform:none!important;opacity:1!important;
            }
            .app-authenticated:not(.sidebar-collapsed) .sidebar-toggle-expanded i{
                width:26px!important;height:26px!important;display:grid!important;place-items:center!important;flex:0 0 26px!important;
                border-radius:8px!important;background:rgba(79,145,255,.16)!important;color:#a9cbff!important;font-size:.95rem!important;
            }
            .app-authenticated:not(.sidebar-collapsed) .sidebar-toggle-expanded span{display:inline!important;white-space:nowrap!important;color:#fff!important}
            .app-authenticated:not(.sidebar-collapsed) .sidebar-toggle-expanded:hover{background:linear-gradient(135deg,#1755a5,#103b78)!important;border-color:rgba(139,191,255,.55)!important}

            /* Compact geometry */
            .app-authenticated.sidebar-collapsed .row.g-0>aside.sidebar{
                box-sizing:border-box!important;flex:0 0 80px!important;width:80px!important;min-width:80px!important;max-width:80px!important;
                margin:0!important;padding:0!important;overflow:visible!important;
                background:linear-gradient(180deg,#061630 0%,#08244d 52%,#06162e 100%)!important;
            }
            .app-authenticated.sidebar-collapsed aside.sidebar>.sidebar-shell{
                box-sizing:border-box!important;width:80px!important;min-width:80px!important;max-width:80px!important;height:100dvh!important;
                margin:0!important;padding:0!important;overflow:hidden!important;
            }
            .app-authenticated.sidebar-collapsed .sidebar-expanded-content{display:none!important}
            .app-authenticated.sidebar-collapsed .sidebar-rail{
                box-sizing:border-box!important;width:80px!important;height:100dvh!important;padding:12px 10px 72px!important;
                display:flex!important;flex-direction:column!important;align-items:center!important;overflow:hidden!important;
            }
            .app-authenticated.sidebar-collapsed .sidebar-rail-brand{
                box-sizing:border-box;width:48px;height:44px;min-height:44px;display:grid;place-items:center;margin:0 auto 10px;
                border:1px solid rgba(111,168,255,.22);border-radius:14px;background:rgba(255,255,255,.045);color:#8ab8ff;
                font-size:.72rem;font-weight:800;letter-spacing:.05em;
            }
            .app-authenticated.sidebar-collapsed .sidebar-rail-scroll{
                box-sizing:border-box;width:60px;min-height:0;flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:0 2px 8px;scrollbar-width:none;
            }
            .app-authenticated.sidebar-collapsed .sidebar-rail-scroll::-webkit-scrollbar{display:none}
            .app-authenticated.sidebar-collapsed .sidebar-rail-group{box-sizing:border-box;width:56px;display:flex;flex-direction:column;align-items:center;gap:7px;margin:0;padding:0}
            .app-authenticated.sidebar-collapsed .sidebar-rail-divider{width:34px;height:1px;margin:9px auto;background:rgba(125,169,232,.18)}
            .app-authenticated.sidebar-collapsed .sidebar-rail-link{
                box-sizing:border-box!important;width:46px!important;height:42px!important;min-width:46px!important;min-height:42px!important;
                display:grid!important;place-items:center!important;margin:0!important;padding:0!important;border:1px solid transparent!important;
                border-radius:13px!important;background:transparent!important;color:#a9c4e9!important;text-decoration:none!important;box-shadow:none!important;transform:none!important;
            }
            .app-authenticated.sidebar-collapsed .sidebar-rail-link i{
                width:30px!important;height:30px!important;display:grid!important;place-items:center!important;margin:0!important;padding:0!important;
                border-radius:9px!important;background:rgba(255,255,255,.055)!important;color:inherit!important;font-size:1rem!important;line-height:1!important;
            }
            .app-authenticated.sidebar-collapsed .sidebar-rail-link:hover{background:rgba(55,119,213,.12)!important;border-color:rgba(111,168,255,.16)!important;color:#e4efff!important}
            .app-authenticated.sidebar-collapsed .sidebar-rail-link.active{background:linear-gradient(135deg,#126fff,#145bdc)!important;border-color:rgba(132,184,255,.38)!important;color:#fff!important;box-shadow:0 8px 18px rgba(11,89,220,.25)!important}
            .app-authenticated.sidebar-collapsed .sidebar-rail-link.active i{background:rgba(255,255,255,.14)!important;color:#fff!important}

            /* Compact control: icon only */
            .app-authenticated.sidebar-collapsed .sidebar-toggle-compact{
                position:absolute!important;z-index:100!important;top:auto!important;bottom:14px!important;left:17px!important;right:auto!important;
                width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;margin:0!important;padding:0!important;
                display:grid!important;place-items:center!important;border:1px solid rgba(117,174,255,.45)!important;border-radius:14px!important;
                background:linear-gradient(135deg,#1768e8,#1052bd)!important;color:#fff!important;box-shadow:0 9px 22px rgba(8,73,177,.38)!important;
                transform:none!important;opacity:1!important;
            }
            .app-authenticated.sidebar-collapsed .sidebar-toggle-compact i{
                width:30px!important;height:30px!important;display:grid!important;place-items:center!important;margin:0!important;
                border-radius:9px!important;background:rgba(255,255,255,.12)!important;color:#fff!important;font-size:1.05rem!important;transform:none!important;
            }
            .app-authenticated.sidebar-collapsed .sidebar-toggle-compact:hover{background:linear-gradient(135deg,#287aff,#1762d6)!important}
            [data-sidebar-toggle]:focus-visible{outline:3px solid rgba(105,174,255,.42)!important;outline-offset:2px!important}
            .app-authenticated.sidebar-collapsed .row.g-0>.content-wrapper{margin-left:0!important;padding-left:0!important}
        }

        @media (max-width:767.98px){
            .sidebar-toggle-expanded,
            .sidebar-toggle-compact{display:none!important}
        }

        @media (min-width:768px) and (max-width:1199.98px){
            .app-authenticated.sidebar-collapsed .row.g-0>aside.sidebar{flex-basis:80px!important;width:80px!important;min-width:80px!important;max-width:80px!important}
        }



/* Application header — ARVIX ONE */
@media (min-width:768px){
    .app-authenticated .topbar{min-height:68px!important;padding:8px 16px!important;background:rgba(247,250,255,.94)!important;border-bottom:1px solid #e6edf7!important;box-shadow:0 8px 24px rgba(28,62,105,.055)!important}
    .app-authenticated .topbar-shell{width:100%;min-width:0;display:flex;align-items:center;gap:18px}
    .app-authenticated .topbar-page-intro{min-width:0;flex:1 1 auto}
    .app-authenticated .topbar-page-title{font-size:.98rem!important;line-height:1.2;font-weight:800!important;color:#16233b!important;letter-spacing:-.01em}
    .app-authenticated .topbar-page-subtitle{margin-top:4px;font-size:.72rem!important;line-height:1.25;color:#5f6f86!important}
    .app-authenticated .topbar-tools{flex:0 0 auto;display:flex;align-items:center;gap:12px;min-width:0}
    .app-authenticated .topbar-divider{display:block;width:1px;height:34px;background:#dce5f1}
    .app-authenticated .topbar-icon-button{position:relative;width:42px!important;height:42px!important;display:grid!important;place-items:center!important;padding:0!important;border:0!important;border-radius:13px!important;background:transparent!important;color:#28456d!important;box-shadow:none!important}
    .app-authenticated .topbar-icon-button:hover{background:#edf4ff!important;color:#0d6efd!important}
    .app-authenticated .topbar-icon-button:after{display:none!important}
    .app-authenticated .topbar-icon-button i{font-size:1.18rem}
    .app-authenticated .topbar-badge{position:absolute;top:1px;right:0;min-width:18px;height:18px;padding:0 5px;display:grid;place-items:center;border:2px solid #f7faff;border-radius:999px;background:#ef233c;color:#fff;font-size:.62rem;font-weight:800;line-height:1}
    .app-authenticated .locale-switch{height:42px!important;padding:4px!important;display:flex!important;align-items:center!important;gap:2px!important;border:1px solid #e2eaf4!important;border-radius:22px!important;background:#fff!important;box-shadow:0 4px 12px rgba(38,70,110,.05)!important}
    .app-authenticated .locale-switch .btn{min-width:38px!important;height:32px!important;padding:0 8px!important;border:0!important;border-radius:17px!important;background:transparent!important;color:#53647c!important;font-size:.72rem!important;font-weight:800!important;box-shadow:none!important}
    .app-authenticated .locale-switch .btn.is-active{background:linear-gradient(135deg,#5eb1ef,#277fc5)!important;color:#fff!important;box-shadow:0 4px 10px rgba(32,120,191,.24)!important}
    .app-authenticated .topbar-user-trigger{height:48px;display:flex;align-items:center;gap:10px;padding:3px 5px 3px 3px;border:0;background:transparent;color:#16233b;text-align:left;border-radius:14px}
    .app-authenticated .topbar-user-trigger:hover{background:#f0f5fc}
    .app-authenticated .topbar-user-trigger:after{display:none!important}
    .app-authenticated .topbar-user-avatar{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#1680ef,#0561d8);color:#fff;font-size:1.05rem;font-weight:700;box-shadow:0 5px 13px rgba(9,100,215,.2)}
    .app-authenticated .topbar-user-copy{display:flex;flex-direction:column;min-width:0;line-height:1.15}
    .app-authenticated .topbar-user-copy strong{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:800}
    .app-authenticated .topbar-user-copy small{margin-top:4px;color:#667790;font-size:.69rem}
    .app-authenticated .topbar-user-chevron{margin-left:3px;font-size:.76rem;color:#173a67;transition:transform .18s ease}
    .app-authenticated .topbar-user-trigger[aria-expanded=true] .topbar-user-chevron{transform:rotate(180deg)}
    .app-authenticated .topbar-user-menu{width:245px!important;margin-top:9px!important;padding:10px 0!important;border:1px solid #e0e8f2!important;border-radius:14px!important;background:#fff!important;box-shadow:0 16px 36px rgba(28,55,91,.16)!important;overflow:hidden}
    .app-authenticated .topbar-user-menu:before{content:"";position:absolute;right:24px;top:-6px;width:12px;height:12px;background:#fff;border-left:1px solid #e0e8f2;border-top:1px solid #e0e8f2;transform:rotate(45deg)}
    .app-authenticated .topbar-user-menu-head{display:flex;align-items:center;gap:10px;padding:5px 14px 9px}
    .app-authenticated .topbar-user-avatar-sm{width:36px;height:36px;flex-basis:36px;font-size:.86rem}
    .app-authenticated .topbar-user-menu-head>span:last-child{display:flex;flex-direction:column;min-width:0}
    .app-authenticated .topbar-user-menu-head strong{font-size:.76rem;color:#16233b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .app-authenticated .topbar-user-menu-head small{margin-top:3px;font-size:.68rem;color:#6d7d92}
    .app-authenticated .topbar-user-menu .dropdown-divider{margin:5px 0;border-color:#e7edf5}
    .app-authenticated .topbar-user-menu .dropdown-item{height:42px;display:flex;align-items:center;gap:11px;padding:0 15px;color:#294566;font-size:.76rem;font-weight:600}
    .app-authenticated .topbar-user-menu .dropdown-item i{width:20px;text-align:center;font-size:1rem}
    .app-authenticated .topbar-user-menu .dropdown-item:hover{background:#f2f7fd;color:#0d6efd}
    .app-authenticated .topbar-user-menu .topbar-user-logout{width:100%;border:0;background:transparent;color:#e11d2e;text-align:left}
    .app-authenticated .topbar-user-menu .topbar-user-logout:hover{background:#fff2f3;color:#c81022}
}
@media (min-width:768px) and (max-width:999.98px){
    .app-authenticated .topbar{padding-inline:12px!important}
    .app-authenticated .topbar-shell{gap:10px}
    .app-authenticated .topbar-tools{gap:7px}
    .app-authenticated .topbar-divider{height:30px}
    .app-authenticated .topbar-user-copy{display:none}
    .app-authenticated .topbar-user-trigger{gap:5px}
    .app-authenticated .topbar-page-subtitle{max-width:320px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}


/* Header dropdown overlay authority: menus float and never alter header geometry. */
@media (min-width:768px){
    .app-authenticated .topbar{overflow:visible!important}
    .app-authenticated .topbar-shell,.app-authenticated .topbar-tools,.app-authenticated .topbar-user-dropdown{position:relative!important;overflow:visible!important}
    .app-authenticated .topbar-user-dropdown{flex:0 0 auto!important}
    .app-authenticated .topbar-user-menu.dropdown-menu{
        position:absolute!important;inset:auto 0 auto auto!important;top:calc(100% + 9px)!important;right:0!important;left:auto!important;
        width:245px!important;min-width:245px!important;margin:0!important;z-index:1085!important;float:none!important;
    }
    .app-authenticated .topbar-user-menu.dropdown-menu.show{display:block!important}
    .app-authenticated .topbar-notification-menu.dropdown-menu{
        position:absolute!important;top:calc(100% + 8px)!important;right:0!important;left:auto!important;margin:0!important;z-index:1085!important;
    }
}


/* Global mobile notifications panel shared by every authenticated screen. */
#mobileAlerts {
    --bs-offcanvas-width: min(390px, 92vw);
    background: #fff;
    color: #172744;
}
#mobileAlerts .offcanvas-header {
    padding: 1rem 1rem .85rem;
    border-bottom: 1px solid #e7edf6;
}
#mobileAlerts .offcanvas-title {
    color: #172744;
    font-size: 1rem;
    font-weight: 800;
}
#mobileAlerts .offcanvas-header small {
    color: #7286aa !important;
    font-size: .72rem;
}
#mobileAlerts .offcanvas-body {
    padding: .9rem;
    background: #f7f9fd;
}
#mobileAlerts .dashboard-suggestion-list {
    display: grid;
    gap: .7rem;
}
#mobileAlerts .dashboard-suggestion-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .78rem .9rem;
    border: 1px solid rgba(227,234,244,.9);
    border-radius: 16px;
    background: #fff;
    color: #172744;
    font-size: .78rem;
    font-weight: 600;
    text-decoration: none;
    box-shadow: 0 6px 18px rgba(23,39,68,.04);
}
#mobileAlerts .dashboard-suggestion-item > span {
    min-width: 0;
}
#mobileAlerts .dashboard-suggestion-item i {
    color: #ff9b19;
}
#mobileAlerts .dashboard-suggestion-item > i:last-child {
    flex: 0 0 auto;
    color: #8da0bf;
}
@media (max-width:767.98px) {
    #mobileAlerts { --bs-offcanvas-width: min(360px, 92vw); }
}
