/* Shared administrative workspace. Scoped to keep public and print views intact. */
html:has(> body.workspace-ui) { background: #fff; }
body.workspace-ui {
    --ws-sidebar: 252px;
    --ws-header: 64px;
    --ws-text: #202123;
    --ws-muted: #707077;
    --ws-line: #e7e7e9;
    --ws-soft: #f7f7f8;
    --ws-accent: #7c5ce7;
    background: #fff;
    color: var(--ws-text);
    font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 13px;
    overflow-x: clip;
}
.workspace-ui::before, .workspace-ui::after { display: none; }
.workspace-ui .app-wrapper { display: block; background: #fff; }
.workspace-ui .app-wrapper .app-content {
    margin-left: var(--ws-sidebar);
    width: calc(100% - var(--ws-sidebar));
    min-width: 0;
    min-height: calc(100vh - 48px);
    padding: var(--ws-header) 0 0 !important;
    background: #fff;
    box-shadow: none;
    overflow: visible;
    transition: margin-left .18s ease, width .18s ease;
}
.workspace-ui .app-content main { width: 100%; margin: 0; padding: 24px 28px; outline: none; }
.workspace-ui .app-content main > .container-fluid { width: 100%; padding: 0; }
.workspace-ui .container-fluid { width: 100%; }
.workspace-ui #liquid-glass-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    width: var(--ws-sidebar);
    height: 100dvh;
    display: flex;
    flex-direction: column;
    background: #f4f4f4;
    border: 0;
    border-right: 1px solid var(--ws-line);
    border-radius: 0;
    box-shadow: none;
    backdrop-filter: none;
    z-index: 1040;
    transition: transform .18s ease;
}
.workspace-brand { display: flex; align-items: center; justify-content: space-between; gap: 6px; min-height: 64px; padding: 12px 14px; }
.workspace-brand-link { display: flex; align-items: center; min-width: 0; color: #242424; }
.workspace-brand-logo { display: block; width: 160px; max-width: 100%; height: auto; object-fit: contain; }
.workspace-icon-button { display: inline-grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 6px; background: transparent; color: #636368; font-size: 19px; cursor: pointer; }
.workspace-icon-button:hover { background: #e9e9eb; color: #171717; }
.workspace-menu-search { position: relative; display: flex; align-items: center; gap: 8px; margin: 0 10px 20px; padding: 0 9px; height: 35px; border: 1px solid #ddd; border-radius: 8px; background: #fff; color: #737377; }
.workspace-menu-search > i { font-size: 17px; }
.workspace-menu-search input { min-width: 0; width: 100%; border: 0; outline: 0; padding: 0; font: inherit; background: transparent; color: #262626; }
.workspace-menu-search:focus-within { border-color: #aaa; box-shadow: 0 0 0 2px #e5e5e5; }
.workspace-menu-search kbd { white-space: nowrap; padding: 2px 4px; background: #ededee; border-radius: 4px; color: #929296; font: 10px Inter, sans-serif; }
.workspace-nav-label { padding: 0 20px 7px; color: #929297; font-size: 10px; font-weight: 500; letter-spacing: .08em; }
.workspace-ui #liquid-glass-sidebar .app-nav { flex: 1; min-height: 0; height: auto; width: 100%; overflow: auto; }
.workspace-ui #liquid-glass-sidebar .main-nav { list-style: none; margin: 0 !important; padding: 0 8px !important; }
.workspace-ui #liquid-glass-sidebar .main-nav > li { margin: 1px 0; }
.workspace-ui #liquid-glass-sidebar .main-nav > li > a {
    display: flex; align-items: center; gap: 10px; width: 100%; min-height: 37px; margin: 0; padding: 8px 11px;
    border: 0; border-radius: 7px; background: transparent; color: #353538; font-size: 13px; font-weight: 400; text-transform: none; line-height: 1.45;
}
.workspace-ui #liquid-glass-sidebar .main-nav > li > a::after, .workspace-ui #liquid-glass-sidebar .main-nav > li > ul > li::before { display: none; }
.workspace-ui #liquid-glass-sidebar .main-nav > li > a .menu-icon { width: 19px; height: 19px; margin: 0; padding: 0; font-size: 19px; line-height: 1; color: #434347 !important; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.workspace-ui #liquid-glass-sidebar .main-nav > li.active > a, .workspace-ui #liquid-glass-sidebar .main-nav a.active { background: #e9e9e9; color: #171717; font-weight: 500; }
.workspace-ui #liquid-glass-sidebar .main-nav a:hover { background: #eaeaea; color: #171717; }
.workspace-ui #liquid-glass-sidebar .menu-chevron { margin: 0 0 0 auto; font-size: 13px; transition: transform .15s; }
.workspace-ui #liquid-glass-sidebar [aria-expanded=true] .menu-chevron { transform: rotate(180deg); }
.workspace-ui #liquid-glass-sidebar .main-nav > li > ul { margin: 2px 0 7px 20px; padding: 0 0 0 9px; border-left: 1px solid #ddd; list-style: none; }
.workspace-ui #liquid-glass-sidebar .main-nav > li > ul a { margin: 1px 0; padding: 7px 10px; border-radius: 6px; font-size: 12px; color: #66666b; line-height: 1.4; white-space: normal; }
.workspace-ui #liquid-glass-sidebar .main-nav .collapsing { transition: height .18s ease; }
.workspace-ui #liquid-glass-sidebar.is-searching .collapse { display: block; height: auto; }
.workspace-ui [hidden] { display: none !important; }
.workspace-menu-empty { padding: 14px 20px; color: #777; font-size: 12px; }
.workspace-account { display: flex; align-items: center; gap: 9px; padding: 13px 16px; color: #363638; border-top: 1px solid #e6e6e6; background: #f4f4f4; }
.workspace-account:hover { background: #ececec; color: #171717; }
.workspace-avatar { display: grid; place-items: center; width: 30px; height: 30px; flex-shrink: 0; border: 1px solid #e1e1e3; border-radius: 50%; background: #e9e9ec; color: #424248; font-size: 12px; font-weight: 600; padding: 0; overflow: hidden; }
.workspace-avatar img { width: 100%; height: 100%; object-fit: cover; }
.workspace-account-text { flex: 1; min-width: 0; }
.workspace-account-text strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; font-weight: 500; }
.workspace-account-text small { color: #85858a; font-size: 10px; }
.workspace-ui header.header-main.workspace-header {
    position: fixed; top: 0; left: var(--ws-sidebar); right: 0; width: auto; height: var(--ws-header);
    display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 0 28px;
    background: #fff; border-bottom: 1px solid var(--ws-line); box-shadow: none; z-index: 1030;
    transition: left .18s ease;
}
.workspace-header-start, .workspace-header-actions { display: flex; align-items: center; gap: 12px; min-width: 0; }
.workspace-header-start { flex: 1; }
.workspace-breadcrumb { color: #85858a; font-size: 12px; }
.workspace-breadcrumb-divider { color: #c5c5c9; font-size: 16px; }
.workspace-page-title { font-size: 13px; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.workspace-menu-toggle { display: none; }
.workspace-density { display: flex; padding: 3px; border-radius: 7px; background: #f4f4f4; }
.workspace-density button { display: flex; align-items: center; gap: 5px; padding: 5px 7px; border: 0; background: transparent; border-radius: 5px; color: #828288; font-size: 10px; }
.workspace-density button[aria-pressed=true] { background: #fff; color: #262626; box-shadow: 0 1px 3px #0000000d; }
.workspace-density i { font-size: 15px; }
.workspace-ui .workspace-header .ai-assistant-searchbar { position: relative; display: block; width: 245px; }
.workspace-ui .workspace-header .ai-assistant-input-wrap { position: relative; }
.workspace-ui .workspace-header .ai-assistant-input-wrap .form-control { height: 34px; padding: 6px 35px 6px 31px; font-size: 12px; border: 1px solid #e2e2e5; border-radius: 8px; background: #fff; box-shadow: none; margin: 0; }
.workspace-sofia-icon { position: absolute; left: 10px; top: 9px; color: #7c5ce7; font-size: 15px; }
.workspace-ui .workspace-header .ai-assistant-send { position: absolute; top: 5px; right: 5px; width: 24px; height: 24px; padding: 0; display: grid; place-items: center; background: #202123; border: 0; border-radius: 5px; color: #fff; box-shadow: none; transform: none; }
.workspace-ui .workspace-header .ai-assistant-send i { color: #fff; font-size: 15px; }
.workspace-ui .workspace-header .ai-assistant-panel { top: 43px; right: 0; left: auto; width: min(510px, calc(100vw - 32px)); border: 1px solid #ddd; border-radius: 10px; background: #fff; box-shadow: 0 12px 35px #00000014; backdrop-filter: none; }
.workspace-ui .workspace-header .ai-assistant-panel__header { background: #fafafa; border-color: var(--ws-line); }
.workspace-ui .workspace-header .ai-assistant-panel__message { font-size: 13px; }
.workspace-ui .card { border: 1px solid var(--ws-line); border-radius: 10px; background: #fff; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; margin-bottom: 20px; }
.workspace-ui .card::before { display: none; }
.workspace-ui .card .card-header, .workspace-ui .card .card-footer { background: #fff; border-color: var(--ws-line); padding: 16px 18px; }
.workspace-ui .card .card-header h5 { font-size: 14px; font-weight: 600; }
.workspace-ui .card .card-header p { font-size: 12px; color: var(--ws-muted); margin: 4px 0 0; }
.workspace-ui .card .card-body { padding: 18px; }
.workspace-ui .form-control, .workspace-ui .form-select { border: 1px solid #dedee2; background-color: #fff; color: #333; border-radius: 6px; box-shadow: none; backdrop-filter: none; font-size: 13px; }
.workspace-ui .form-control:focus, .workspace-ui .form-select:focus { border-color: #a396c9; box-shadow: 0 0 0 3px #7c5ce710; }
.workspace-ui .btn { border-radius: 7px; font-size: 12px; font-weight: 500; padding: 7px 12px; box-shadow: none; }
.workspace-ui .btn-sm { padding: 4px 8px; font-size: 11px; }
.workspace-ui .btn-primary, .workspace-ui .btn-dark { background: #202123; border-color: #202123; color: #fff; }
.workspace-ui .btn-primary i, .workspace-ui .btn-dark i { color: inherit; }
.workspace-ui .btn-primary:hover, .workspace-ui .btn-dark:hover { background: #38383b; border-color: #38383b; }
.workspace-ui .btn-outline-primary { border-color: #ddd; color: #36363b; }
.workspace-ui .btn-outline-primary:hover { background: #f4f4f4; border-color: #aaa; color: #171717; }
.workspace-ui .badge { font-weight: 500; border-radius: 4px; }
.workspace-ui .nav-tabs { border-color: var(--ws-line); gap: 16px; }
.workspace-ui .nav-tabs .nav-link { border: 0; border-bottom: 2px solid transparent; border-radius: 0; padding: 10px 0; color: #777; font-size: 12px; }
.workspace-ui .nav-tabs .nav-link.active { border-bottom-color: #222; color: #222; background: transparent; }
.workspace-ui main :is(.table, .app-data-table, table.dataTable) { width: 100% !important; margin: 0; border-collapse: collapse !important; font-size: 12px; --bs-table-bg: #fff; --bs-table-border-color: var(--ws-line); }
.workspace-ui main :is(.table, .app-data-table, table.dataTable) > :not(caption) > * > * { padding: 12px 14px; border-bottom: 1px solid var(--ws-line); vertical-align: middle; box-shadow: none; font-size: 12px; line-height: 1.45; }
.workspace-ui main :is(.table, .app-data-table, table.dataTable) thead th { background: #fafafa; color: #74747b; font-size: 11px; font-weight: 500; text-transform: none; letter-spacing: 0; white-space: nowrap; }
.workspace-ui main :is(.table, .app-data-table, table.dataTable) tbody tr:hover > * { background-color: #fafafa; }
.workspace-ui main :is(.table, .app-data-table, table.dataTable) tbody tr:last-child > * { border-bottom: 0; }
.workspace-ui main :is(.table, .app-data-table, table.dataTable) .form-control, .workspace-ui main table .form-select { padding: 5px 7px; min-width: 70px; font-size: 11px; }
.workspace-ui main :is(.table-responsive, .data-table-style, .overflow-auto) { max-width: 100%; scrollbar-width: thin; scrollbar-color: #d2d2d7 transparent; }
.workspace-ui main .dataTables_wrapper :is(.dataTables_filter, .dataTables_length, .dataTables_info, .dataTables_paginate) { padding: 12px 14px; color: #777; font-size: 11px; }
.workspace-ui main .dataTables_wrapper .dataTables_filter input { border: 1px solid #ddd; border-radius: 6px; padding: 6px 8px; background: #fff; }
.workspace-ui main .dataTables_wrapper .dataTables_length select { border: 1px solid #ddd; border-radius: 5px; padding: 3px 6px; }
.workspace-ui main .dataTables_wrapper .dataTables_paginate .paginate_button { border-radius: 5px; font-size: 11px; min-width: 28px; padding: 4px 8px; }
.workspace-ui main .dataTables_wrapper .dataTables_paginate .paginate_button.current { background: #efeff1; border: 1px solid #e1e1e4; }
.workspace-ui[data-table-density=compact] main :is(.table, .app-data-table, table.dataTable) > :not(caption) > * > * { padding: 7px 10px; font-size: 11px; }
.workspace-ui .pagination .page-link { border-radius: 5px; font-size: 12px; }
.workspace-ui .dropdown-menu, .workspace-ui .modal-content, .workspace-ui .offcanvas { background: #fff; border: 1px solid var(--ws-line); border-radius: 10px; backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: 0 12px 32px #00000012; }
.workspace-ui .dropdown-item { font-size: 12px; padding: 7px 14px; }
.workspace-ui .app-wrapper > footer { position: static; width: auto; margin-left: var(--ws-sidebar); padding: 14px 28px; background: #fff; border-top: 1px solid #f0f0f0; color: #999; font-size: 10px; z-index: auto; }
.workspace-ui footer .container-fluid { padding: 0; }
.workspace-ui footer a { color: #888; }
.workspace-ui footer .footer-text { margin: 0; padding: 0; }
.workspace-ui .go-top { bottom: 20px; right: 20px; }
.workspace-backdrop { display: none; }
.workspace-ui.sidebar-collapsed .app-wrapper .app-content { margin-left: 0; width: 100%; }
.workspace-ui.sidebar-collapsed #liquid-glass-sidebar { transform: translateX(-100%); }
.workspace-ui.sidebar-collapsed header.header-main.workspace-header { left: 0; }
.workspace-ui.sidebar-collapsed .app-wrapper > footer { margin-left: 0; }
.workspace-ui.sidebar-collapsed .workspace-menu-toggle { display: inline-grid; }
.workspace-ui :is(a, button, input, select):focus-visible { outline: 2px solid #8d75df; outline-offset: 3px; }
@media (max-width: 1199px) { .workspace-density span { display: none; } .workspace-ui .app-content main { padding: 22px; } }
@media (max-width: 991px) {
    .workspace-ui .app-wrapper .app-content { margin-left: 0; width: 100%; }
    .workspace-ui #liquid-glass-sidebar { transform: translateX(-100%); }
    .workspace-ui.sidebar-open #liquid-glass-sidebar { transform: translateX(0); }
    .workspace-ui header.header-main.workspace-header { left: 0; padding: 0 18px; }
    .workspace-ui .workspace-menu-toggle { display: inline-grid; }
    .workspace-ui .app-wrapper > footer { margin-left: 0; padding: 14px 22px; }
    .workspace-ui.sidebar-open { overflow: hidden; }
    .workspace-ui.sidebar-open .workspace-backdrop { display: block; position: fixed; inset: 0; z-index: 1035; background: #0005; border: 0; width: 100%; height: 100%; }
}
@media (max-width: 600px) {
    body.workspace-ui { --ws-header: 104px; }
    .workspace-ui .app-content main { padding: 18px 14px; }
    .workspace-ui header.header-main.workspace-header { height: 104px; display: grid; grid-template-columns: 1fr; gap: 0; padding: 8px 14px; }
    .workspace-header-start { height: 34px; gap: 9px; padding-right: 38px; }
    .workspace-header-actions { gap: 8px; }
    .workspace-ui .workspace-header .ai-assistant-searchbar { flex: 1; width: auto; }
    .workspace-ui .workspace-header .ai-assistant-panel { right: 0; width: calc(100vw - 28px); }
    .workspace-profile { position: absolute; top: 11px; right: 16px; }
    .workspace-density { order: 2; }
    .workspace-breadcrumb { font-size: 11px; }
    .workspace-ui main :is(.table, .app-data-table, table.dataTable) { min-width: 580px; }
    .workspace-ui main .dataTables_wrapper :is(.dataTables_filter, .dataTables_length) { float: none; text-align: left; }
}
@media (prefers-reduced-motion: reduce) { .workspace-ui *, .workspace-ui *::before { transition: none !important; animation: none !important; } }
@media print {
    .workspace-ui #liquid-glass-sidebar, .workspace-header, .workspace-ui .app-wrapper > footer, .workspace-backdrop, .workspace-ui .chat-widget-toggle { display: none !important; }
    .workspace-ui .app-wrapper .app-content { margin: 0; width: 100%; padding: 0 !important; }
}
/* Compact legacy overview cards and controls in operational listings. */
.workspace-ui .project-cards .card-body { min-height: 95px; align-items: center; padding: 16px 18px; }
.workspace-ui .project-cards h6 { font-size: 11px; font-weight: 400; color: #7c7c83; }
.workspace-ui .project-cards h4 { font-size: 23px; font-weight: 600; letter-spacing: -.5px; color: #303036 !important; }
.workspace-ui .project-cards .project-card-icon { width: 32px !important; height: 32px !important; background: #f5f4f9 !important; color: #898096; border-radius: 8px; }
.workspace-ui .project-cards .project-card-icon i { font-size: 19px; color: #898096; }
.workspace-ui .project-cards .card-body p { font-size: 10px; }
.workspace-ui .dataTables_wrapper .dataTables_filter, .workspace-ui .dataTables_wrapper .dataTables_length { margin: 0; }
.workspace-ui .dataTables_wrapper .dataTables_filter label, .workspace-ui .dataTables_wrapper .dataTables_length label { margin: 0; }
.workspace-ui .dataTables_wrapper .dataTables_filter input { width: 240px; }
.workspace-ui main #example td:first-child { min-width: 160px; }
.workspace-ui main #example td:nth-child(6) { white-space: nowrap; color: #9a9aa1; }
.workspace-ui main #example td:nth-child(7) { white-space: nowrap; text-align: right; font-variant-numeric: tabular-nums; }
.workspace-ui main .dashboard-record-table .workspace-icon-button { width: 25px; height: 25px; font-size: 16px; }
.workspace-ui[data-table-density=compact] main .dashboard-record-table .workspace-icon-button { width: 21px; height: 21px; }
@media (max-width: 600px) { .workspace-ui .dataTables_wrapper .dataTables_filter input { width: 200px; } }
