/* Screen-only internal design system. Standalone operational print/email never loads this file. */
.cms-portal-shell {
 --cms-font-xs:11px;--cms-font-sm:12px;--cms-font-base:13px;--cms-font-md:14px;--cms-font-lg:16px;--cms-font-page-title:20px;
 --cms-control-height:34px;--cms-filter-height:32px;--cms-button-height:34px;--cms-button-small-height:30px;--cms-icon-button-size:34px;
 --cms-radius-sm:8px;--cms-radius-md:12px;--cms-radius-lg:16px;--cms-space-1:4px;--cms-space-2:6px;--cms-space-3:8px;--cms-space-4:12px;--cms-space-5:16px;--cms-line-height:1.5;
 --cms-card-padding:16px;--cms-card-gap:12px;--cms-page-padding:16px;
 --cms-bg:#F9FAFB;--cms-surface:#FFFFFF;--cms-surface-muted:#F3F4F6;--cms-text:#111827;--cms-text-muted:#6B7280;--cms-border:#E5E7EB;
 --cms-primary:#1C64F2;--cms-primary-hover:#1A56DB;--cms-primary-text:#FFFFFF;--cms-accent:#1C64F2;--cms-active-bg:#E1EFFE;--cms-active-text:#1E429F;--cms-focus:#1C64F2;--cms-focus-soft:#C3DDFD;
 --cms-success:#03543F;--cms-success-bg:#DEF7EC;--cms-warning:#805B16;--cms-warning-bg:#FFF6E2;--cms-danger:#9B1C1C;--cms-danger-bg:#FBD5D5;--cms-overlay:rgb(15 23 42 / 40%);
 --cms-shell-offset:0px;
}
@media screen {
 .cms-portal-shell {background:var(--cms-bg);color:var(--cms-text);font:13px/1.5 system-ui,-apple-system,"Segoe UI",Tahoma,sans-serif;isolation:isolate;max-width:100%;min-width:0;position:relative;direction:rtl;text-align:start;}
 .cms-portal-shell *,.cms-portal-shell *::before,.cms-portal-shell *::after {box-sizing:border-box;}
 /* Component display rules must never override the native hidden contract. */
 .cms-portal-shell [hidden] {display:none!important;}
 .cms-portal-shell :is(button,input,select,textarea) {font-family:inherit;letter-spacing:normal;text-transform:none;}
 .cms-portal-shell :is(button,a,input,select,textarea):focus-visible {outline:2px solid var(--cms-focus);outline-offset:2px;}
 .cms-portal-shell .cms-shell-skip {position:absolute;inset-block-start:4px;inset-inline-start:4px;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap;z-index:40;background:white;}
 .cms-portal-shell .cms-shell-skip:focus {clip-path:none;width:auto;height:auto;overflow:visible;padding:8px;}
 .cms-portal-shell .cms-shell-header {display:none;}
 .cms-portal-shell .cms-shell-title {font-size:14px;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
 .cms-portal-shell .cms-shell-sidebar {background:var(--cms-surface);border-inline-end:1px solid var(--cms-border);width:220px;padding:12px;position:sticky;top:var(--cms-shell-offset);max-height:calc(100dvh - var(--cms-shell-offset));overflow-y:auto;float:right;}
 .cms-portal-shell .cms-shell-drawer-heading {align-items:center;display:flex;justify-content:space-between;font-size:14px;font-weight:700;min-height:38px;}
 .cms-portal-shell .cms-shell-nav-group {margin:12px 0 0;}
 .cms-portal-shell .cms-shell-nav-group h2 {color:var(--cms-text-muted);font-size:11px;line-height:1.5;margin:0 8px 4px;}
 .cms-portal-shell .cms-shell-nav-item {align-items:center;border-radius:6px;color:var(--cms-text);display:flex;gap:8px;font-size:13px;line-height:1.5;min-height:40px;padding:6px 8px;text-decoration:none;}
 .cms-portal-shell .cms-shell-nav-item .dashicons {font-size:18px;height:18px;flex:0 0 18px;width:18px;}
 .cms-portal-shell .cms-shell-nav-item:hover {background:var(--cms-surface-muted);}
 .cms-portal-shell .cms-shell-nav-item[aria-current=page] {background:var(--cms-active-bg);color:var(--cms-active-text);font-weight:700;}
 .cms-portal-shell .cms-shell-main {margin-inline-start:220px;min-height:calc(100dvh - var(--cms-shell-offset));min-width:0;padding:var(--cms-page-padding);}
 .cms-portal-shell .cms-shell-main--full {margin-inline-start:0;}
 .cms-portal-shell::after {clear:both;content:"";display:table;}
 .cms-portal-shell .cms-portal {--cms-portal-navy:var(--cms-text);--cms-portal-primary:var(--cms-primary);--cms-portal-accent:var(--cms-accent);--cms-portal-border:var(--cms-border);--cms-portal-muted:var(--cms-text-muted);font-size:13px;line-height:1.5;margin:0;max-width:none;min-width:0;padding:0;width:100%;}
 .cms-portal-shell .cms-portal h1 {font-size:var(--cms-font-page-title);line-height:1.5;margin:0 0 12px;letter-spacing:normal;}
 .cms-portal-shell .cms-portal h2 {font-size:16px;line-height:1.5;margin:0 0 8px;}
 .cms-portal-shell .cms-portal h3 {font-size:14px;line-height:1.5;margin:0 0 8px;}
 .cms-portal-shell .cms-portal :is(p,dl,figure) {margin-block:0 8px;}
 .cms-portal-shell .cms-portal :is(.cms-field,.cms-reporting-filter-grid label) {gap:4px;min-width:0;}
 .cms-portal-shell .cms-portal :is(.cms-field>span,.cms-reporting-filter-grid label>span) {font-size:12px;line-height:1.5;}
 .cms-portal-shell .cms-portal :is(input,select,textarea):not([type=hidden],[type=checkbox],[type=radio],[type=file]) {background:var(--cms-surface);border:1px solid var(--cms-border);border-radius:6px;color:var(--cms-text);font-size:13px;line-height:1.4;height:auto;min-height:var(--cms-control-height);max-width:100%;padding:5px 10px;box-shadow:none;}
 .cms-portal-shell .cms-portal textarea:not([hidden]) {min-height:72px;resize:vertical;}
 .cms-portal-shell .cms-portal input[type=file] {font-size:13px;min-height:var(--cms-control-height);max-width:100%;padding:4px;}
 .cms-portal-shell .cms-portal :is(.cms-reporting-filter-grid,.cms-portal-filters) :is(input,select,.cms-searchable-select-input) {min-height:var(--cms-filter-height);}
 .cms-portal-shell .cms-portal .cms-searchable-select input.cms-searchable-select-input {min-height:var(--cms-control-height);padding:5px 10px;padding-inline-end:58px;}
 .cms-portal-shell .cms-portal :is(.cms-reporting-filter-grid,.cms-portal-filters) .cms-searchable-select input.cms-searchable-select-input {min-height:var(--cms-filter-height);}
 .cms-portal-shell .cms-portal .cms-searchable-select button.cms-searchable-select-clear {background:transparent;border:0;min-height:0;height:calc(var(--cms-control-height) - 4px);width:28px;padding:0;font-size:18px;}
 .cms-portal-shell .cms-portal :is(.button,button:not(.cms-combobox-option),input[type=submit]) {align-items:center;background:var(--cms-surface);border:1px solid var(--cms-border);border-radius:6px;color:var(--cms-primary);display:inline-flex;line-height:1.4;font-family:inherit;font-size:13px;font-weight:600;justify-content:center;min-height:var(--cms-button-height);height:auto;max-width:100%;padding:5px 12px;text-decoration:none;white-space:normal;box-shadow:none;}
 .cms-portal-shell .cms-portal :is(.cms-primary,.button-primary) {background:var(--cms-primary);border-color:var(--cms-primary);color:white;}
 .cms-portal-shell .cms-portal :is(.cms-primary,.button-primary):hover {background:var(--cms-primary-hover);color:white;}
 .cms-portal-shell .cms-portal :is(button,a,input):is(.button-small,.cms-button-small) {min-height:var(--cms-button-small-height);padding-block:3px;}
 .cms-portal-shell :is(.cms-shell-icon-button,.cms-shell-hamburger) {align-items:center;background:var(--cms-surface);border:1px solid var(--cms-border);border-radius:6px;color:var(--cms-text);display:inline-flex;flex-shrink:0;justify-content:center;padding:0;width:var(--cms-icon-button-size);height:var(--cms-icon-button-size);cursor:pointer;}
 .cms-portal-shell .cms-shell-hamburger {display:none;width:40px;height:40px;}
 .cms-portal-shell .cms-portal :is(.cms-form-grid,.cms-reporting-filter-grid) {gap:8px;}
 .cms-portal-shell .cms-portal :is(.cms-card,.cms-portal-action-card,.cms-form-section,.cms-reporting-section,.cms-portal-panel,.cms-reporting-cards article,.cms-stat-card,.cms-employee-balance,.cms-employee-last-custody) {background:var(--cms-surface);border:1px solid var(--cms-border);border-radius:9px;box-shadow:none;padding:12px;min-width:0;}
 .cms-portal-shell .cms-portal :is(.cms-reporting-dashboard,.cms-reporting-summary-groups) {gap:16px;}
 .cms-portal-shell .cms-portal :is(.cms-reporting-cards,.cms-portal-summary) {gap:12px;}
 .cms-portal-shell .cms-portal table {font-size:13px;line-height:1.5;}
 .cms-portal-shell .cms-portal :is(th,td) {font-size:13px;line-height:1.5;padding:6px 8px;}
 .cms-portal-shell .cms-portal th {font-size:12px;}
 .cms-portal-shell .cms-portal :is(.cms-table-wrap,.cms-portal-table-wrap,.cms-reporting-table-wrap) {max-width:100%;overflow-x:auto;}
 .cms-portal-shell .cms-portal small {font-size:12px;}
 .cms-portal-shell .cms-portal .cms-portal-identity {background:none;border:0;box-shadow:none;gap:8px;margin:0 0 12px;padding:0;min-height:0;}
 .cms-portal-shell .cms-portal .cms-portal-identity :is(h1,h2) {font-size:14px;margin:0;}
 .cms-portal-shell .cms-portal .cms-portal-avatar {width:32px;height:32px;min-width:32px;font-size:16px;}
 .cms-portal-shell .cms-portal .cms-employee-dashboard-actions {display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;}
 .cms-portal-shell .cms-portal .cms-employee-report-item {font-size:13px;padding:8px;}
 .cms-portal-shell .cms-portal .cms-employee-report-item :is(small,time,.cms-employee-report-type) {font-size:11px;}
 .cms-portal-shell .cms-portal .cms-employee-balance strong {font-size:16px;}
 .cms-portal-shell .cms-portal .cms-employee-last-custody strong {font-size:14px;}
 /* Approved compact Figma adaptation, screen-only: no financial/data or print changes. */
 .cms-portal-shell .cms-portal {color:var(--cms-text);--cms-portal-success:var(--cms-success);}
 .cms-portal-shell .cms-portal :is(h1,h2,h3,.cms-field>span,.cms-reporting-filter-grid label>span) {color:var(--cms-text);}
 .cms-portal-shell .cms-shell-nav-item,
 .cms-portal-shell :is(.cms-shell-icon-button,.cms-shell-hamburger),
 .cms-portal-shell .cms-portal :is(input,select,textarea):not([type=hidden],[type=checkbox],[type=radio],[type=file]),
 .cms-portal-shell .cms-portal :is(.button,button:not(.cms-combobox-option),input[type=submit]) {border-radius:var(--cms-radius-sm);}
 .cms-portal-shell .cms-portal :is(input,select,textarea):focus-visible {border-color:var(--cms-focus);box-shadow:0 0 0 3px var(--cms-focus-soft);}
 .cms-portal-shell .cms-portal :is(.cms-card,.cms-portal-action-card,.cms-form-section,.cms-reporting-section,.cms-portal-panel,.cms-reporting-cards article,.cms-stat-card,.cms-employee-balance,.cms-employee-last-custody,.cms-report-employee-card,.cms-expense-row,.cms-report-asset,.cms-reporting-filters) {background:var(--cms-surface);border:1px solid var(--cms-border);border-radius:var(--cms-radius-md);box-shadow:none;padding:var(--cms-card-padding);min-width:0;}
 .cms-portal-shell .cms-portal :is(.cms-reporting-dashboard,.cms-reporting-summary-groups,.cms-reporting-cards,.cms-portal-summary,.cms-employee-custody-summary) {gap:var(--cms-card-gap);}
 .cms-portal-shell .cms-portal :is(.cms-reporting-header,.cms-report-review h2) {border-bottom:1px solid var(--cms-border);}
 .cms-portal-shell .cms-portal :is(th,td) {border-color:var(--cms-border);}
 .cms-portal-shell .cms-portal tbody tr {height:36px;}
 .cms-portal-shell .cms-portal thead tr {height:34px;}
 .cms-portal-shell .cms-portal th {background:var(--cms-surface-muted);color:var(--cms-text-muted);}
 /* Overrides the existing document stylesheet's important navy header on screen only. */
 .cms-portal-shell .cms-portal .cms-table thead th {background:var(--cms-surface-muted)!important;color:var(--cms-text-muted);}
 .cms-portal-shell .cms-portal .cms-employee-report-type {align-items:center;display:inline-flex;background:var(--cms-active-bg);color:var(--cms-active-text);border:0;border-radius:10px;font-size:11px;line-height:18px;min-height:22px;padding:2px 8px;}
 .cms-portal-shell .cms-portal .cms-portal-message--success {background:var(--cms-success-bg);border-color:var(--cms-success);color:var(--cms-success);}
 .cms-portal-shell .cms-portal .cms-portal-message--error {background:var(--cms-danger-bg);border-color:var(--cms-danger);color:var(--cms-danger);}
 .cms-portal-shell .cms-portal .cms-portal-message--warning {background:var(--cms-warning-bg);border-color:var(--cms-warning);color:var(--cms-warning);}
 .cms-portal-shell.cms-portal-shell--additional {padding:12px;}
}
@media screen and (max-width:1023px) {
 .cms-portal-shell .cms-shell-header {align-items:center;background:var(--cms-surface);border-bottom:1px solid var(--cms-border);display:flex;gap:8px;height:48px;padding:0 12px;position:sticky;top:var(--cms-shell-offset);z-index:10;}
 .cms-portal-shell .cms-shell-main {margin-inline-start:0;min-height:calc(100dvh - 48px - var(--cms-shell-offset));padding:16px;}
 .cms-portal-shell .cms-shell-sidebar {float:none;position:static;width:auto;max-height:none;border:0;}
 .cms-portal-shell.cms-shell-ready .cms-shell-hamburger:not([hidden]) {display:inline-flex;}
 .cms-portal-shell.cms-shell-ready .cms-shell-sidebar {position:fixed;inset-inline-start:0;inset-block-start:var(--cms-shell-offset);height:calc(100dvh - var(--cms-shell-offset));max-height:none;width:min(82vw,300px);z-index:30;transform:translateX(105%);visibility:hidden;transition:transform .18s ease;}
 .cms-portal-shell.cms-shell-ready.cms-shell-open .cms-shell-sidebar {transform:none;visibility:visible;}
 .cms-portal-shell .cms-shell-overlay {background:var(--cms-overlay);position:fixed;inset:0;z-index:25;}
}
@media screen and (max-width:767px) {
 .cms-portal-shell {--cms-font-page-title:18px;--cms-control-height:40px;--cms-filter-height:38px;--cms-button-height:38px;--cms-button-small-height:34px;--cms-icon-button-size:38px;--cms-card-padding:12px;--cms-card-gap:8px;--cms-page-padding:12px;}
 .cms-portal-shell .cms-shell-main {padding:12px;min-height:calc(100dvh - 48px - var(--cms-shell-offset));}
 .cms-portal-shell .cms-portal :is(input,select,textarea):not([type=hidden],[type=checkbox],[type=radio],[type=file]) {font-size:16px;}
 .cms-portal-shell .cms-portal textarea:not([hidden]) {min-height:84px;}
 .cms-portal-shell .cms-portal :is(.cms-reporting-cards,.cms-portal-summary) {gap:8px;}
 .cms-portal-shell .cms-portal input[type=submit] {font-size:13px;}
 .cms-portal-shell .cms-portal input[type=file] {font-size:16px;}
 .cms-portal-shell .cms-portal .cms-searchable-select input.cms-searchable-select-input {font-size:16px;}
}
@media screen and (prefers-reduced-motion:reduce) { .cms-portal-shell.cms-shell-ready .cms-shell-sidebar {transition:none;} }
@media print {
 .cms-portal-shell :is(.cms-shell-header,.cms-shell-sidebar,.cms-shell-overlay,.cms-shell-skip) {display:none;}
 .cms-portal-shell .cms-shell-main {margin:0;padding:0;}
}
