:root { --ink:#183042; --muted:#688091; --line:#e6edf2; --surface:#ffffff; --canvas:#f4f8fa; --brand:#0b6e75; --brand-dark:#07565c; --accent:#39a8a0; --nav:#102d3c; --nav-soft:#1a4052; --warning:#a96416; }
html,body { max-width:100%; overflow-x:hidden; }
.record-ajax-notice { border:1px solid #b8dfd2; border-radius:10px; background:#edf9f4; color:#17664d; font-size:.78rem; font-weight:700; margin:-7px 0 15px; padding:10px 13px; }.record-ajax-notice[data-state="error"] { background:#fff1f2; border-color:#f2c5ca; color:#a33d4a; }.records-table tbody tr { transition:background-color .16s ease, opacity .2s ease; }.record-excluded-row { background:#fff0f2 !important; }.record-excluded-row:hover { background:#ffe4e7 !important; }.record-scope-transition { opacity:.35; pointer-events:none; }
.record-scope-tabs { align-items:center; background:#f7fafb; border:1px solid #dbe7eb; border-radius:11px; display:inline-flex; gap:4px; margin:0 0 18px; padding:4px; }.record-scope-tab { align-items:center; border-radius:8px; color:#617987; display:inline-flex; font-size:.78rem; font-weight:750; gap:6px; padding:8px 12px; text-decoration:none; }.record-scope-tab:hover { background:#eef5f5; color:#24646a; }.record-scope-tab.active { background:#fff; box-shadow:0 2px 7px rgba(30,76,87,.12); color:#0b6e75; }.record-scope-tab.active .bi-check-circle-fill { color:#18805b; }.record-scope-tab.active .bi-slash-circle-fill { color:#b25462; }
.filter-checkbox-field { display:flex; flex-direction:column; justify-content:flex-end; }.filter-checkbox { align-items:center; background:#f7fbfb; border:1px solid #dbe8eb; border-radius:8px; color:#466573; display:flex; font-size:.76rem; font-weight:650; gap:8px; height:39px; padding:0 11px; white-space:nowrap; }.filter-checkbox .form-check-input { flex:0 0 auto; margin:0; }.records-toolbar { margin-bottom:18px; }.records-toolbar-actions { align-items:center; display:flex; flex-wrap:wrap; gap:9px; justify-content:flex-end; }.records-toolbar-actions form { margin:0; }.records-table-head>div { color:#718895; font-size:.78rem; }.records-table-head>div strong { color:#234957; font-size:.95rem; }.records-table th a { color:inherit; text-decoration:none; }.records-table th a:hover { color:var(--brand); }.records-table th i { font-size:.64rem; margin-left:3px; }.records-table td strong,.records-table td small { display:block; }.records-table td strong { color:#274958; font-size:.79rem; font-weight:700; }.records-table td small { color:#748b97; font-size:.69rem; line-height:1.25; margin-top:3px; max-width:170px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.records-table .selection-column { padding-left:14px; padding-right:4px; text-align:center; width:42px; }.record-id { color:#476a79; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.72rem; font-weight:700; }.priority-label { color:#356071; font-size:.75rem; font-weight:700; }.tat-value { color:#185f69; font-size:.74rem; font-weight:750; white-space:nowrap; }.tat-compliance { align-items:center; display:inline-flex; font-size:.72rem; font-weight:800; gap:4px; white-space:nowrap; }.tat-compliance-within { color:#16805a; }.tat-compliance-exceeded { color:#b94b56; }.tat-compliance-not-assessable { color:#6f818b; }.tat-compliance-no-target { color:#9a6b21; }.records-table td .tat-target-note { color:#768c98; font-size:.65rem; max-width:145px; }.record-excluded-row { background:#fff0f2; }.record-excluded-row:hover { background:#ffe4e7!important; }.record-tat-note { align-items:center; background:#eaf5f4; border-radius:8px; color:#21636b; display:inline-flex; font-size:.75rem; font-weight:750; gap:6px; padding:8px 10px; }.record-exclusion-check { align-items:center; background:#fffaf1; border:1px solid #f0dfbd; border-radius:10px; cursor:pointer; display:flex; gap:12px; margin:0; padding:13px 14px; }.record-exclusion-check .form-check-input { float:none; flex:0 0 1.1rem; height:1.1rem; margin:0; width:1.1rem; }.record-exclusion-check>span { min-width:0; }.record-exclusion-check strong,.record-exclusion-check small { display:block; }.record-exclusion-check strong { color:#6e5720; font-size:.8rem; }.record-exclusion-check small { color:#8b7545; font-size:.72rem; margin-top:3px; }.record-view-actions { align-items:center; display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-end; }.record-summary-strip { background:#fff; border:1px solid var(--line); border-radius:14px; box-shadow:0 5px 18px rgba(28,75,90,.03); display:grid; gap:0; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0 0 18px; overflow:hidden; }.record-summary-strip>div { border-right:1px solid var(--line); min-width:0; padding:15px 18px; }.record-summary-strip>div:last-child { border-right:0; }.record-summary-strip span,.record-summary-strip strong { display:block; }.record-summary-strip span { color:#758b98; font-size:.68rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }.record-summary-strip strong { color:#244757; font-size:.86rem; margin-top:4px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.record-detail-card { height:100%; }.record-detail-grid { display:grid; gap:0; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; }.record-detail-grid>div { border-bottom:1px solid #edf2f4; min-width:0; padding:11px 12px 11px 0; }.record-detail-grid>div:nth-child(odd) { border-right:1px solid #edf2f4; padding-right:14px; }.record-detail-grid>div:nth-child(even) { padding-left:14px; }.record-detail-grid>div:nth-last-child(-n+2) { border-bottom:0; }.record-detail-grid dt { color:#738996; font-size:.68rem; font-weight:700; letter-spacing:.03em; margin:0 0 4px; text-transform:uppercase; }.record-detail-grid dd { color:#2d4d5c; font-size:.8rem; line-height:1.35; margin:0; overflow-wrap:anywhere; }.record-exclusion-action { align-items:center; background:#fffaf2; border:1px solid #f0dfbd; border-radius:13px; display:flex; gap:18px; justify-content:space-between; margin-top:20px; padding:17px 19px; }.record-exclusion-action strong { color:#6e5720; display:block; font-size:.9rem; }.record-exclusion-action p { color:#8b7545; font-size:.76rem; margin:4px 0 0; }
@media (max-width:767.98px) { .records-toolbar,.record-view-toolbar,.record-exclusion-action { align-items:flex-start; flex-direction:column; }.records-toolbar-actions,.records-toolbar-actions form,.records-toolbar .btn,.record-view-actions,.record-exclusion-action form,.record-exclusion-action .btn { width:100%; }.record-view-actions { align-items:stretch; justify-content:flex-start; }.record-summary-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }.record-summary-strip>div:nth-child(2) { border-right:0; }.record-summary-strip>div:nth-child(-n+2) { border-bottom:1px solid var(--line); }.record-detail-grid { grid-template-columns:1fr; }.record-detail-grid>div,.record-detail-grid>div:nth-child(odd),.record-detail-grid>div:nth-child(even),.record-detail-grid>div:nth-last-child(-n+2) { border-bottom:1px solid #edf2f4; border-right:0; padding:10px 0; }.record-detail-grid>div:last-child { border-bottom:0; }.bulk-action-bar { align-items:flex-start; flex-direction:column; }.bulk-action-bar .btn { width:100%; } }
* { box-sizing:border-box; }
body { margin:0; font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color:var(--ink); background:var(--canvas); }
.app-body { background:#fff url('../img/menu_bg.png') no-repeat right bottom fixed; background-size:min(1500px, 100%) auto; }
.app-shell { min-height:100vh; display:flex; max-width:100%; overflow-x:hidden; }
.sidebar { width:268px; flex:0 0 268px; background:var(--nav); color:#eaf4f5; display:flex; flex-direction:column; padding:24px 16px 18px; position:fixed; inset:0 auto 0 0; z-index:1040; overflow-y:auto; }
.brand { display:flex; align-items:center; gap:11px; line-height:1.1; padding:0 10px; }
.brand-logo { width:42px; height:42px; flex:0 0 42px; display:grid; place-items:center; overflow:hidden; border-radius:11px; background:#fff; box-shadow:0 7px 16px rgba(0,0,0,.16); }
.brand-logo img { display:block; width:100%; height:100%; object-fit:contain; }
.brand strong { display:block; font-size:1.08rem; letter-spacing:.035em; }
.brand small { display:block; margin-top:3px; opacity:.66; font-size:.68rem; letter-spacing:.055em; text-transform:uppercase; }
.sidebar-nav { margin-top:37px; flex:1; }
.nav-caption,.eyebrow { margin:0; color:#6c91a2; font-size:.68rem; font-weight:750; letter-spacing:.11em; text-transform:uppercase; }
.nav-caption { padding:0 10px 9px; }
.nav-link { color:#bdd0d8; display:flex; align-items:center; gap:12px; text-decoration:none; padding:10px 12px; margin:2px 0; border-radius:10px; font-size:.9rem; font-weight:550; transition:background .15s,color .15s; }
.nav-link i { width:18px; font-size:1rem; text-align:center; }
.nav-link:hover,.nav-link.active { color:#fff; background:var(--nav-soft); }
.nav-link.active { box-shadow:inset 3px 0 0 #42c1b6; }
.sidebar-footer { border-top:1px solid rgba(235,250,252,.14); padding:16px 4px 0; }
.user-identity { display:flex; align-items:center; gap:10px; margin:0 6px 14px; min-width:0; }.user-identity strong,.user-identity small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.user-identity strong { font-size:.82rem; }.user-identity small { color:#9bb6c0; font-size:.7rem; margin-top:2px; text-transform:capitalize; }
.avatar { display:grid; flex:0 0 33px; width:33px; height:33px; place-items:center; background:#346071; border-radius:50%; font-weight:750; font-size:.8rem; }.btn-sidebar-logout { color:#bdd0d8; border:1px solid rgba(230,250,250,.16); font-size:.82rem; }.btn-sidebar-logout:hover { color:white; border-color:#56c5bd; background:rgba(67,183,174,.13); }
.app-main { width:calc(100% - 268px); margin-left:268px; min-width:0; overflow-x:hidden; }.topbar { height:99px; background:rgba(255,255,255,.91); backdrop-filter:blur(7px); border-bottom:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; padding:18px clamp(22px,3vw,46px); position:sticky; top:0; z-index:1020; }.breadcrumb-wrap h1 { margin:3px 0 0; font-size:1.45rem; font-weight:700; letter-spacing:-.025em; }.topbar-status { display:flex; align-items:center; color:#587181; font-size:.76rem; font-weight:600; gap:6px; }.status-dot { width:8px; height:8px; background:#36af82; border-radius:50%; box-shadow:0 0 0 3px rgba(54,175,130,.12); }.page-content { padding:29px clamp(22px,3vw,46px) 48px; max-width:1850px; margin:0 auto; }
.btn { font-weight:650; border-radius:9px; }.btn-primary { --bs-btn-bg:var(--brand); --bs-btn-border-color:var(--brand); --bs-btn-hover-bg:var(--brand-dark); --bs-btn-hover-border-color:var(--brand-dark); --bs-btn-active-bg:var(--brand-dark); --bs-btn-active-border-color:var(--brand-dark); }.btn-light { background:#fff; border-color:#dfe8ed; color:#345365; }.btn-icon { border:1px solid var(--line); color:var(--ink); font-size:1.2rem; }
.filter-panel { background:var(--surface); border:1px solid var(--line); border-radius:16px; padding:22px; box-shadow:0 6px 22px rgba(28,75,90,.035); }.filter-panel-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; }.filter-panel h2 { font-size:1.1rem; margin:3px 0 0; }.filter-actions { display:flex; gap:8px; }.filter-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(175px,1fr)); gap:13px 14px; align-items:start; }.filter-field { min-width:0; }.filter-field>.form-label { display:block; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.filter-hint { color:#7d929c; font-size:.64rem; font-weight:600; text-transform:none; }.filter-inline-actions { display:grid; gap:8px; grid-template-columns:repeat(2,minmax(0,1fr)); height:39px; }.filter-action-button { align-items:center; display:inline-flex; height:39px; justify-content:center; line-height:1; min-height:39px; padding:0 9px; white-space:nowrap; }.multi-select { position:relative; }.multi-select-toggle { align-items:center; background:#fff; border:1px solid #dbe6eb; border-radius:.375rem; color:#234153; cursor:pointer; display:flex; font-size:.87rem; justify-content:space-between; min-height:39px; padding:8px 11px; text-align:left; width:100%; }.multi-select-toggle>span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.multi-select-toggle:hover:not(:disabled) { border-color:#9bcac7; }.multi-select-toggle:focus { border-color:#55a7a3; box-shadow:0 0 0 .22rem rgba(49,163,155,.14); outline:0; }.multi-select-toggle:disabled { background:#f5f8f9; color:#8798a1; cursor:not-allowed; }.multi-select-toggle i { color:#66808d; flex:0 0 auto; font-size:.72rem; margin-left:8px; transition:transform .15s ease; }.multi-select-toggle[aria-expanded="true"] i { transform:rotate(180deg); }.multi-select-menu { background:#fff; border:1px solid #cfdde3; border-radius:10px; box-shadow:0 12px 26px rgba(23,57,72,.16); left:0; margin-top:5px; max-height:230px; min-width:100%; overflow:auto; padding:5px; position:absolute; right:0; top:100%; z-index:1060; }.multi-select-option,.multi-select-select-all { align-items:flex-start; border-radius:7px; color:#385766; cursor:pointer; display:flex; font-size:.79rem; gap:8px; line-height:1.25; margin:0; padding:7px 8px; }.multi-select-option:hover,.multi-select-select-all:hover { background:#edf8f7; }.multi-select-option .form-check-input,.multi-select-select-all .form-check-input { flex:0 0 auto; margin:2px 0 0; }.multi-select-select-all { background:#f4faf9; border-bottom:1px solid #dceae8; border-radius:6px 6px 0 0; color:#1d686b; font-weight:750; margin-bottom:4px; }.multi-select-empty { color:#7c909a; display:block; font-size:.78rem; padding:8px; }.form-label { font-size:.73rem; color:#587080; font-weight:700; margin-bottom:6px; }.form-select,.form-control { border-color:#dbe6eb; min-height:39px; color:#234153; font-size:.87rem; }.form-select:focus,.form-control:focus { border-color:#55a7a3; box-shadow:0 0 0 .22rem rgba(49,163,155,.14); }
.dashboard-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; }.dashboard-heading h2 { font-size:1.35rem; margin:4px 0 6px; letter-spacing:-.02em; }.refresh-note { color:#67808f; font-size:.78rem; display:flex; align-items:center; gap:6px; }.refresh-note i { color:var(--brand); }.active-filter-summary { display:flex; flex-wrap:wrap; gap:7px; }.filter-chip { padding:5px 9px; border-radius:100px; color:#486675; background:#eaf4f4; font-size:.72rem; font-weight:650; }.kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }.kpi-card { min-height:130px; padding:18px; border:1px solid var(--line); background:white; border-radius:14px; display:flex; gap:13px; transition:transform .15s,box-shadow .15s; box-shadow:0 4px 16px rgba(28,75,90,.025); }.kpi-card:hover { transform:translateY(-2px); box-shadow:0 10px 25px rgba(28,75,90,.07); }.kpi-icon { height:36px; width:36px; flex:0 0 36px; border-radius:10px; display:grid; place-items:center; color:var(--brand); background:#e5f5f3; font-size:1rem; }.kpi-main { min-width:0; }.kpi-main>span { color:#688091; font-size:.74rem; display:block; line-height:1.25; font-weight:650; }.kpi-main strong { display:block; margin:6px 0 4px; font-size:1.34rem; letter-spacing:-.04em; line-height:1; white-space:nowrap; }.kpi-main small { color:#788e9a; font-size:.68rem; line-height:1.2; display:block; }.comparison-up { color:#18835c !important; }.comparison-down { color:#bb5f4b !important; }.metric-note { padding:13px 15px; border-radius:10px; background:#eaf2f5; color:#587382; font-size:.78rem; display:flex; gap:9px; align-items:flex-start; }.metric-note i { color:var(--brand); }.metric-note code { color:#1c6671; }
.chart-control { display:flex; align-items:center; gap:8px; font-size:.78rem; color:#627988; font-weight:700; }.chart-control .form-select { width:116px; }.chart-card { height:100%; min-height:340px; padding:20px; background:white; border:1px solid var(--line); border-radius:15px; box-shadow:0 5px 20px rgba(28,75,90,.035); }.chart-card-wide { min-height:390px; }.chart-title { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:12px; }.chart-title h3 { font-size:1.03rem; margin:3px 0 0; }.chart-meta { font-size:.7rem; color:#78909c; }.chart-body { position:relative; height:270px; }.chart-body-tall { height:318px; }
.empty-state { max-width:580px; margin:8vh auto; text-align:center; background:#fff; border:1px solid var(--line); border-radius:18px; padding:46px 35px; box-shadow:0 10px 28px rgba(26,65,79,.06); }.empty-icon { height:63px; width:63px; display:grid; place-items:center; border-radius:50%; margin:0 auto 18px; background:#e5f5f3; color:var(--brand); font-size:1.55rem; }.empty-state h2 { margin:5px 0 10px; font-size:1.45rem; }.empty-state p { color:#667d8a; margin:0 auto 24px; max-width:400px; }
.management-toolbar { display:flex; justify-content:space-between; align-items:flex-end; gap:20px; margin:0 0 20px; }.management-toolbar h2 { margin:4px 0 6px; font-size:1.4rem; letter-spacing:-.025em; }.management-toolbar p { color:#6c8290; margin:0; font-size:.87rem; }.management-toolbar-back { align-items:flex-start; }.back-link { align-items:center; color:var(--brand); display:flex; font-size:.79rem; font-weight:700; gap:6px; margin-bottom:13px; text-decoration:none; width:fit-content; }.table-card,.form-card { border:1px solid var(--line); background:#fff; border-radius:16px; box-shadow:0 6px 22px rgba(28,75,90,.035); overflow:hidden; }.table-card-head { padding:17px 20px; display:flex; align-items:center; justify-content:space-between; gap:14px; border-bottom:1px solid var(--line); }.table-search { width:min(100%,430px); }.input-group-text { background:#f6f9fa; border-color:#dbe6eb; color:#6d8794; }.page-size-form { display:flex; align-items:center; gap:8px; white-space:nowrap; color:#627987; font-size:.76rem; font-weight:700; }.page-size-form .form-select { width:72px; }.table-responsive { max-width:100%; min-width:0; overflow-x:auto; overscroll-behavior-x:contain; }.app-table { font-size:.84rem; }.app-table th { color:#6b8391; font-size:.68rem; letter-spacing:.07em; text-transform:uppercase; border-color:#edf2f4; padding:13px 18px; white-space:nowrap; }.app-table td { padding:14px 18px; color:#425e6d; border-color:#edf2f4; }.app-table tbody tr:hover { background:#fbfdfd; }.user-cell { display:flex; align-items:center; gap:10px; min-width:190px; }.user-cell strong,.user-cell small { display:block; }.user-cell strong { color:#244456; font-size:.85rem; }.user-cell small { color:#718895; font-size:.74rem; margin-top:2px; }.avatar-table { width:34px; height:34px; flex-basis:34px; background:#e2f1f0; color:#196c72; }.role-badge { display:inline-block; color:#356170; background:#eef5f6; border-radius:7px; padding:4px 7px; font-size:.71rem; font-weight:650; }.status-badge { display:inline-flex; align-items:center; gap:5px; font-size:.72rem; font-weight:700; }.status-active { color:#16805a; }.status-inactive { color:#9a6b21; }.table-actions { display:flex; gap:6px; }.table-actions form { margin:0; }.table-card-footer { display:flex; justify-content:space-between; gap:12px; align-items:center; padding:14px 20px; border-top:1px solid var(--line); color:#738995; font-size:.76rem; }.pagination { --bs-pagination-color:var(--brand); --bs-pagination-active-bg:var(--brand); --bs-pagination-active-border-color:var(--brand); }.empty-table { text-align:center; padding:55px 20px; color:#748b98; }.empty-table i { color:#66aaa6; font-size:2rem; }.empty-table h3 { color:#385869; font-size:1rem; margin:12px 0 5px; }.empty-table p { font-size:.82rem; margin:0; }.form-card { padding:23px; overflow:visible; height:100%; }.form-card h3 { font-size:1rem; margin:0 0 4px; }.form-card-help { color:#738996; font-size:.79rem; line-height:1.5; margin:0 0 20px; }.role-choice-list { display:grid; gap:9px; }.role-choice { cursor:pointer; display:flex; gap:10px; padding:11px; border:1px solid #e3ecef; border-radius:10px; background:#fbfdfd; }.role-choice:hover { border-color:#a8d6d2; background:#f5fbfa; }.role-choice input { margin-top:3px; flex:0 0 auto; }.role-choice strong,.role-choice small { display:block; }.role-choice strong { color:#375867; font-size:.83rem; }.role-choice small { color:#778f9b; font-size:.72rem; margin-top:3px; line-height:1.35; }.form-actions { display:flex; justify-content:flex-end; gap:9px; padding-top:20px; }
.tat-report { background:rgba(255,255,255,.98); border:1px solid #e2e7e8; border-radius:17px; padding:clamp(20px,3.5vw,48px); box-shadow:0 9px 28px rgba(40,67,79,.06); }.tat-report-header { text-align:center; margin:0 auto 22px; }.tat-brand { display:flex; align-items:center; justify-content:center; gap:8px; color:#98323f; font-family:Georgia, serif; font-size:clamp(1.12rem,2vw,1.55rem); font-weight:700; }.tat-brand img { width:42px; height:42px; object-fit:contain; }.tat-report-header h2 { color:#00417d; font-size:clamp(1rem,1.7vw,1.32rem); font-weight:800; margin:10px 0 3px; }.tat-report-header p { color:#8a0785; font-size:.8rem; font-weight:800; margin:0; }.tat-report-header small { color:#718894; font-size:.68rem; }.report-filter-summary { justify-content:center; }.report-summary-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.pdf-table-card { border:1px solid #d9dee1; background:#fff; overflow:hidden; }.pdf-table-card h3 { margin:0; text-align:center; padding:7px 10px; font-size:.84rem; font-weight:850; }.pdf-table-card.critical h3 { color:#ff0000; }.pdf-table-card.urgent h3 { color:#00a2df; }.pdf-table-card.routine h3 { color:#00a83b; }.pdf-table-card.on-call h3 { color:#7030a0; }.pdf-summary-table { border-color:#d5dcde; font-size:.69rem; text-align:center; }.pdf-summary-table th { background:#92c400; color:#080808; padding:7px 5px; border-color:#d5dcde; font-size:.66rem; font-weight:800; line-height:1.18; text-align:center; }.pdf-summary-table td { padding:4px 5px; border-color:#d5dcde; font-weight:650; line-height:1.1; }.pdf-summary-table td:first-child { text-align:left; }.report-block { margin-top:35px; }.report-block-last { margin-bottom:0; }.report-block-heading { text-align:center; margin:0 auto 17px; max-width:760px; }.report-block-heading .eyebrow { color:#8a0785; }.report-block-heading h2 { color:#083e77; font-size:1.08rem; margin:4px 0 4px; font-weight:850; text-transform:uppercase; }.report-block-heading p { color:#718793; font-size:.75rem; margin:0; }.priority-chart-grid,.radiologist-workload-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.pdf-chart-card { border:1px solid #d9dee1; background:#fff; padding:13px; min-width:0; }.pdf-chart-card h3 { text-align:center; color:#0b4a85; margin:0 0 7px; font-size:.78rem; font-weight:850; text-transform:uppercase; line-height:1.25; }.pdf-chart-body { height:255px; position:relative; }.comparative-chart-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.comparative-chart-grid .pdf-chart-body { height:210px; }.report-loading { grid-column:1/-1; padding:32px; color:#768c98; font-size:.82rem; text-align:center; border:1px dashed #d5e1e5; }.tat-report-footer { border-top:1px solid #e5eaec; color:#788e99; font-size:.65rem; display:flex; justify-content:space-between; gap:12px; margin-top:24px; padding-top:10px; }.tat-report-footer span { text-align:right; }
.compliance-report-block { border-top:1px solid #e7eef0; margin-top:30px; padding-top:28px; }.compliance-kpi-grid { display:grid; gap:12px; grid-template-columns:repeat(4,minmax(0,1fr)); }.compliance-kpi { border:1px solid #dce8ea; border-radius:12px; background:#fff; min-width:0; padding:15px; }.compliance-kpi span,.compliance-kpi strong,.compliance-kpi small { display:block; }.compliance-kpi span { color:#718793; font-size:.67rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }.compliance-kpi strong { color:#254755; font-size:1.35rem; line-height:1.15; margin:6px 0 4px; }.compliance-kpi small { color:#78909a; font-size:.69rem; line-height:1.35; }.compliance-kpi-within { border-top:3px solid #35a776; }.compliance-kpi-within strong { color:#16805a; }.compliance-kpi-exceeded { border-top:3px solid #dc6b75; }.compliance-kpi-exceeded strong { color:#b94b56; }.compliance-kpi-percent { border-top:3px solid #0b6e75; }.compliance-kpi-percent strong { color:#0b6e75; }.compliance-kpi-neutral { border-top:3px solid #9aaab2; }.compliance-detail-grid { display:grid; gap:14px; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:14px; }.compliance-table-card { background:#fff; border:1px solid #d9dee1; min-width:0; overflow:hidden; }.compliance-table-card h3 { color:#0b4a85; font-size:.78rem; font-weight:850; margin:0; padding:13px 13px 7px; text-align:center; }.compliance-table { font-size:.73rem; text-align:center; }.compliance-table th { background:#edf5f5; border-color:#dce7e9; color:#254c5c; font-size:.65rem; padding:8px 5px; text-align:center; text-transform:uppercase; }.compliance-table td { border-color:#e4ecee; color:#3e5d6b; padding:8px 5px; vertical-align:middle; }.compliance-table td:first-child { font-weight:750; text-align:left; }.compliance-cell-within { color:#16805a!important; font-weight:800; }.compliance-cell-exceeded { color:#b94b56!important; font-weight:800; }
@media (max-width:767.98px) { .compliance-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.compliance-detail-grid { grid-template-columns:1fr; } }
@media (max-width:410px) { .compliance-kpi-grid { grid-template-columns:1fr; } }
.record-summary-strip { grid-template-columns:repeat(5,minmax(0,1fr)); }.record-summary-strip small { color:#778e99; display:block; font-size:.65rem; margin-top:3px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
@media (max-width:767.98px) { .record-summary-strip { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.auth-body { min-height:100vh; background:#f3f8fa; }.login-shell { min-height:100vh; display:grid; grid-template-columns:minmax(360px,1.1fr) minmax(410px,.9fr); }.login-aside { color:#f6ffff; min-height:100%; background:radial-gradient(circle at 20% 20%,#167b82 0,#103c4b 42%,#0d2635 100%); padding:54px clamp(35px,7vw,110px); display:flex; flex-direction:column; }.brand-light { padding:0; }.login-aside .brand-logo { background:transparent; border-radius:0; box-shadow:none; }.login-aside .brand-logo img { mix-blend-mode:multiply; }.login-copy { margin:auto 0; max-width:550px; }.login-copy .eyebrow { color:#86e3dd; }.login-copy h1 { font-size:clamp(2.35rem,4vw,4rem); line-height:1.08; letter-spacing:-.045em; margin:12px 0 19px; }.login-copy p { max-width:470px; color:#bfd6da; font-size:1.04rem; line-height:1.65; }.login-metric { display:flex; gap:11px; color:#b8d8da; font-size:.82rem; align-items:center; }.login-metric i { color:#7fe1d7; font-size:1.25rem; }.login-card-wrap { display:grid; place-items:center; padding:40px; background:#f3f8fa url('../img/menu_bg.png') no-repeat right bottom; background-size:cover; }.login-card { width:min(100%,440px); background:rgba(255,255,255,.96); padding:40px; border-radius:17px; box-shadow:0 20px 45px rgba(35,72,85,.11); }.login-card h2 { margin:5px 0 0; font-size:1.8rem; letter-spacing:-.035em; }.login-card .eyebrow { color:var(--brand); }
.sidebar-backdrop { display:none; }.spinner-border { margin-right:5px; vertical-align:-.12em; }
@media (max-width:1260px) { .kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));} }
@media (max-width:991.98px) { .sidebar { transform:translateX(-100%); transition:transform .22s ease; box-shadow:10px 0 32px rgba(8,34,46,.28); }.sidebar.open { transform:translateX(0); }.sidebar-backdrop.open { display:block; position:fixed; inset:0; background:rgba(13,36,49,.36); z-index:1030; }.app-main { width:100%; margin-left:0; }.topbar { height:82px; }.login-shell{grid-template-columns:1fr;}.login-aside{min-height:285px;padding:35px 40px;}.login-copy{margin:55px 0 0;}.login-copy h1{font-size:2.2rem;}.login-metric{display:none;}.comparative-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media (max-width:767.98px) { .page-content { padding:22px 15px 35px; }.topbar { padding:14px 15px; }.topbar-status{display:none;}.breadcrumb-wrap h1{font-size:1.18rem;}.filter-panel{padding:16px;}.filter-panel-head,.dashboard-heading{align-items:flex-start;flex-direction:column;}.filter-actions{width:100%;}.filter-actions .btn{flex:1;}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}.kpi-card{min-height:112px;padding:14px;gap:9px;}.kpi-icon{width:30px;height:30px;flex-basis:30px;}.kpi-main strong{font-size:1.12rem;}.chart-card{min-height:310px;padding:16px;}.chart-body{height:245px;}.chart-body-tall{height:270px;}.login-card-wrap{padding:24px 15px;}.login-card{padding:29px 23px;}.login-aside{padding:30px 24px;min-height:240px;}.tat-report{padding:18px 10px;}.report-summary-grid,.priority-chart-grid,.radiologist-workload-grid,.comparative-chart-grid{grid-template-columns:1fr;}.pdf-chart-body{height:245px;}.tat-report-footer{flex-direction:column;}.tat-report-footer span{text-align:left;} }
@media (max-width:410px) { .kpi-grid{grid-template-columns:1fr;}.filter-actions{flex-direction:column;}.filter-actions .btn{width:100%;}.kpi-card{min-height:92px;} }
@media print { .sidebar,.topbar,.filter-panel,.btn,.sidebar-backdrop { display:none!important; }.app-main{width:100%;margin:0;}.page-content{padding:0;}.kpi-card,.chart-card,.pdf-table-card,.pdf-chart-card{box-shadow:none;break-inside:avoid;}.tat-report{border:0;box-shadow:none;padding:10mm;}.report-block{break-before:page;} }
.filter-field-search { grid-column:span 2; }
@media (max-width:767.98px) { .filter-field-search { grid-column:auto; } }
.user-identity { align-items:flex-start; min-width:0; }.user-identity>span:nth-child(2) { flex:1 1 auto; min-width:0; }.user-identity strong,.user-identity small { overflow-wrap:anywhere; text-overflow:clip; white-space:normal; }.user-identity-link { border-radius:11px; color:#eaf4f5; margin:0 0 14px; padding:8px 6px; text-decoration:none; transition:background .15s,color .15s; }.user-identity-link:hover,.user-identity-link.active { background:rgba(98,184,184,.14); color:#fff; }.user-identity-link small { color:#9bb6c0; }.user-identity-arrow { align-self:center; color:#89a8b2; flex:0 0 auto; font-size:.78rem; margin-left:4px; }.avatar.avatar-image { background:#fff; overflow:hidden; padding:3px; }.avatar.avatar-image.has-photo { background:#dceeed; padding:0; }.avatar.avatar-image img { display:block; height:100%; object-fit:contain; width:100%; }.avatar.avatar-image.has-photo img { object-fit:cover; }.account-hero { align-items:center; background:linear-gradient(115deg,#fff 0%,#f2faf9 100%); border:1px solid var(--line); border-radius:18px; box-shadow:0 7px 24px rgba(28,75,90,.04); display:flex; gap:20px; justify-content:space-between; margin-bottom:22px; padding:clamp(20px,3vw,31px); }.account-identity { align-items:center; display:flex; gap:16px; min-width:0; }.account-avatar { align-items:center; background:#fff; border:4px solid #e9f7f5; border-radius:50%; box-shadow:0 7px 18px rgba(24,107,108,.18); display:flex; flex:0 0 66px; height:66px; justify-content:center; overflow:hidden; padding:4px; width:66px; }.account-avatar.has-photo { background:#dceeed; padding:0; }.account-avatar img { display:block; height:100%; object-fit:contain; width:100%; }.account-avatar.has-photo img { object-fit:cover; }.account-identity h2 { color:#244657; font-size:1.45rem; letter-spacing:-.03em; margin:4px 0; overflow-wrap:anywhere; }.account-identity p { color:#6c8290; font-size:.84rem; margin:0; overflow-wrap:anywhere; }.account-summary { align-items:flex-end; display:flex; flex-direction:column; gap:5px; min-width:0; text-align:right; }.account-summary span { color:#20755e; font-size:.8rem; font-weight:750; white-space:nowrap; }.account-summary small { color:#66808d; font-size:.75rem; overflow-wrap:anywhere; }.account-card { display:flex; flex-direction:column; gap:20px; min-height:100%; padding:25px; }.account-side-stack { display:grid; gap:24px; height:100%; }.account-side-stack .account-card { height:auto; min-height:0; }.account-card-head { align-items:flex-start; display:flex; gap:12px; }.account-card-head h3 { color:#284959; font-size:1.02rem; margin:1px 0 4px; }.account-card-head p { color:#718895; font-size:.79rem; line-height:1.45; margin:0; }.account-card-icon { align-items:center; background:#e5f5f3; border-radius:11px; color:#127276; display:flex; flex:0 0 40px; font-size:1.05rem; height:40px; justify-content:center; width:40px; }.account-card-icon-soft { background:#edf4f7; color:#497587; }.account-card-icon-warm { background:#fff4de; color:#a77420; }.account-card-footer { align-items:center; border-top:1px solid #ebf0f2; color:#6d8491; display:flex; font-size:.76rem; gap:12px; justify-content:space-between; margin-top:auto; padding-top:18px; }.account-card-footer span { min-width:0; }.account-card-footer span i { color:#48a39c; margin-right:5px; }.account-photo-upload { align-items:center; background:#f8fbfc; border:1px dashed #cfdee4; border-radius:12px; display:flex; gap:13px; padding:12px; }.account-photo-preview { align-items:center; background:#fff; border:1px solid #e0ebed; border-radius:50%; display:flex; flex:0 0 58px; height:58px; justify-content:center; overflow:hidden; padding:4px; width:58px; }.account-photo-preview.has-photo { background:#dceeed; padding:0; }.account-photo-preview img { display:block; height:100%; object-fit:contain; width:100%; }.account-photo-preview.has-photo img { object-fit:cover; }.account-photo-upload>div { display:grid; gap:5px; min-width:0; }.account-photo-upload small { color:#748a96; font-size:.73rem; }.account-photo-upload .btn { justify-self:start; }.account-facts { display:grid; gap:0; margin:0; }.account-facts>div { border-top:1px solid #ebf0f2; display:flex; gap:14px; justify-content:space-between; padding:12px 0; }.account-facts>div:first-child { border-top:0; padding-top:0; }.account-facts dt { color:#748a96; font-size:.73rem; font-weight:700; }.account-facts dd { color:#345666; font-size:.78rem; font-weight:700; margin:0; max-width:62%; overflow-wrap:anywhere; text-align:right; }.account-password-card { margin-bottom:10px; }.account-password-card .account-card-footer span i { color:#b47b1d; } .account-photo-form { display:grid; gap:20px; }.account-photo-card .account-card-footer { margin-top:0; }.account-photo-actions { align-items:center; display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; }.account-photo-remove-form { margin:0; }.account-photo-actions .btn { white-space:nowrap; } @media (max-width:767.98px) { .account-hero { align-items:flex-start; flex-direction:column; }.account-summary { align-items:flex-start; text-align:left; }.account-card { padding:20px; }.account-card-footer { align-items:stretch; flex-direction:column; }.account-card-footer .btn { width:100%; }.account-photo-actions,.account-photo-remove-form { width:100%; }.account-photo-actions { align-items:stretch; flex-direction:column; }.account-facts>div { align-items:flex-start; flex-direction:column; gap:4px; }.account-facts dd { max-width:100%; text-align:left; } }
.records-table td .tat-basis-note { color:#748b97; font-size:.65rem; line-height:1.3; margin-top:4px; max-width:230px; white-space:normal; }
.record-tat-note>span { display:block; min-width:0; }.record-tat-note small { display:block; font-size:.65rem; font-weight:600; line-height:1.3; margin-top:2px; white-space:normal; }.record-tat-basis { align-items:flex-start; background:#eff8f8; border:1px solid #d5eae8; border-radius:11px; color:#3d6671; display:flex; font-size:.76rem; gap:9px; margin:-6px 0 18px; padding:10px 12px; }.record-tat-basis i { color:#16747a; font-size:.95rem; margin-top:1px; }.record-tat-basis span { display:grid; gap:2px; }.record-tat-basis strong { color:#1f5864; font-size:.72rem; }
.app-body { background-size:cover; }
@media (max-width:767.98px) { .app-body { background-position:65% bottom; } }
.record-pagination { flex-wrap:wrap; justify-content:flex-end; }.record-pagination .page-link { min-width:35px; text-align:center; }
@media (max-width:767.98px) { .table-card-footer { align-items:flex-start; flex-direction:column; }.record-pagination { justify-content:flex-start; } }
