/* Unified visual language for every scheduling, people, report and admin page. */
:root { --navy:#14283d; --teal:#006d68; --teal-soft:#e9f5f2; --text:#172e44; --subtle:#526b80; --stroke:#dbe4ed; --control-stroke:#8193a2; --surface:#fff; --canvas:#f3f6f9; --amber:#916000; --amber-soft:#fff7e8; --red:#a52e3b; --red-soft:#fff1f2; }
body { margin:0; background:var(--canvas); color:var(--text); font:14px/1.5 "Segoe UI",system-ui,sans-serif; }
* { box-sizing:border-box; }
h1,h2,h3,h4,h5,p,ul,ol,dl { margin-top:0; }
h1 { font-size:27px; letter-spacing:-.6px; line-height:1.25; }
h2 { font-size:17px; line-height:1.4; }
h3 { font-size:15px; line-height:1.4; }
h4,h5 { font-size:13px; line-height:1.4; }
p { margin-bottom:12px; }
small,.muted,.muted-text { color:var(--subtle); font-size:12px; }
a { color:var(--teal); text-decoration:none; }
a:hover { text-decoration:underline; }
button,.button-link,.text-button,input,select,textarea { font:inherit; }
button,.button-link,a.button { display:inline-flex; justify-content:center; align-items:center; gap:7px; padding:9px 14px; border:1px solid var(--teal); border-radius:6px; background:var(--teal); color:white; cursor:pointer; font-size:13px; font-weight:600; text-decoration:none; min-height:40px; }
button:disabled { opacity:1; cursor:not-allowed; }
.secondary-button,.button-secondary,.button-link.secondary,.button-link.secondary-action,.secondary-action { color:var(--text); border:1px solid var(--control-stroke); background:white; }
.danger-button,.button-link.danger-button { color:var(--red); border:1px solid #e7bdc2; background:#fff; }
.text-button,button.text-button { background:transparent; border:0; color:var(--teal); min-height:0; padding:0; text-align:left; font-weight:600; }
.text-button:hover { text-decoration:underline; }
input:not([type=checkbox]):not([type=radio]),select,textarea { display:block; width:100%; border:1px solid #bdccd9; border-radius:6px; background:white; color:var(--text); padding:9px 11px; min-height:40px; }
textarea { resize:vertical; }
input[type=checkbox],input[type=radio] { width:auto; accent-color:var(--teal); }
label { display:flex; flex-direction:column; gap:6px; color:var(--subtle); font-size:12px; font-weight:600; }
label input,label select,label textarea { font-weight:400; color:var(--text); }
.check-row { display:flex; flex-direction:row; align-items:center; gap:8px; font-size:13px; font-weight:400; }
fieldset { margin:0; border:1px solid var(--stroke); padding:12px; border-radius:6px; }
legend { color:var(--subtle); font-size:12px; padding:0 5px; }
.full { grid-column:1/-1; }
.row-title,.management-toolbar,.management-actions,.form-actions,.history-card-header,.modal-header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.page-title { margin-bottom:24px; }
.page-title h1 { margin-bottom:5px; }
.page-title p { color:var(--subtle); margin:0; font-size:13px; }
.form-grid,.form-section-grid,.coverage-field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.operational-form { padding:0; margin:0; background:transparent; border:0; }
.form-section { padding:22px; margin:0; background:white; border:1px solid var(--stroke); border-radius:9px; }
.form-section-heading { display:flex; align-items:flex-start; gap:14px; padding-bottom:16px; margin-bottom:18px; border-bottom:1px solid var(--stroke); }
.form-section-heading h2 { margin:0 0 4px; }
.form-section-heading p { margin:0; font-size:12px; color:var(--subtle); }
.form-section-heading .editor-step { width:28px; height:28px; border-radius:7px; display:grid; place-items:center; color:var(--teal); background:var(--teal-soft); font-size:12px; flex-shrink:0; }
.form-actions { justify-content:flex-start; flex-wrap:wrap; padding:16px 0 0; margin-top:0; }
.cancel-action { padding:9px 12px; color:var(--subtle); }
.filter-panel { display:flex; flex-wrap:wrap; gap:12px; align-items:flex-end; padding:16px; border:1px solid var(--stroke); border-radius:9px; background:white; margin-bottom:22px; }
.filter-panel > label:not(.check-row) { flex:1 1 145px; }
.filter-panel > .check-row { align-self:center; }
.filter-panel > button,.filter-panel > a { flex:0 0 auto; }
.filter-panel details { align-self:center; }
.table-wrap,.coverage-preview-scroll { overflow:auto; border:1px solid var(--stroke); border-radius:9px; background:white; }
table { width:100%; border-collapse:collapse; background:white; font-size:13px; text-align:left; }
th { background:#f6f9fb; color:var(--subtle); font-size:11px; font-weight:600; text-align:left; padding:12px 14px; border-bottom:1px solid var(--stroke); }
td { padding:13px 14px; border-bottom:1px solid #e7edf3; vertical-align:top; }
tr:last-child td { border-bottom:0; }
tbody tr:hover { background:#f8fbfc; }
.sortable-header { cursor:pointer; }
.sort-indicator { color:#526b80; padding-left:6px; }
.table-subline,.table-actions { display:block; font-size:12px; margin-top:4px; color:var(--subtle); }
.table-actions a { margin-right:10px; }
.source-badge,.record-status,.history-status,.support-status,.status-badge { display:inline-flex; align-items:center; padding:3px 8px; border:1px solid var(--stroke); background:#f1f5f8; color:#4b6276; font-size:11px; font-weight:600; border-radius:5px; }
.badge-row { display:flex; flex-wrap:wrap; gap:6px; margin:10px 0; }
.status-approved,.status-good,.record-status.active { color:#006d57; background:var(--teal-soft); border-color:#c2e5db; }
.status-pending,.status-warning { color:var(--amber); background:var(--amber-soft); border-color:#efd9aa; }
.status-denied,.status-bad { color:var(--red); background:var(--red-soft); border-color:#edc9cf; }
.status-inactive,.record-status.inactive { background:#f1f3f6; color:#536779; }
.record-inactive { opacity:1; background:#f7f9fb; }
.message,.info-card,.warning,.empty-state,.history-note,.onboarding-guide { border:1px solid var(--stroke); border-radius:8px; background:white; padding:15px 18px; margin-bottom:16px; }
.message.success { background:var(--teal-soft); border-color:#c1e3d8; color:#006b52; }
.message.error,.error { background:var(--red-soft); border-color:#edc9cf; color:var(--red); }
.warning,.message.warning { background:var(--amber-soft); border-color:#ead8af; color:#73530a; }
.warning-inline { color:var(--amber); font-size:12px; }
.empty-state { text-align:center; padding:40px 22px; color:var(--subtle); }
.empty-state h2 { color:var(--text); font-size:16px; margin-bottom:5px; }
.info-card strong { display:block; margin-bottom:4px; color:var(--text); }
.ops-section,.history-card,.report-entry-list,.login-panel,.diagnostic-results,.assignment-current { background:white; border:1px solid var(--stroke); border-radius:9px; padding:22px; margin-bottom:18px; }
.history-card-header { padding-bottom:16px; border-bottom:1px solid var(--stroke); margin-bottom:16px; }
.history-card-header h2 { margin:0 0 3px; }
.history-card-header p { color:var(--subtle); font-size:12px; margin:0; }
.detail-list,.detail-grid,.history-detail-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:16px; margin-bottom:18px; }
dt { font-size:11px; color:var(--subtle); }
dd { margin:4px 0 0; font-size:13px; color:var(--text); }
.notes { color:var(--subtle); font-size:13px; }
.management-toolbar { background:white; border:1px solid var(--stroke); border-radius:9px; padding:16px 18px; margin-bottom:20px; }
.management-toolbar strong { display:block; font-size:14px; }
.management-toolbar span { display:block; font-size:12px; color:var(--subtle); }
.management-actions { flex-wrap:wrap; justify-content:flex-end; }
.workflow-tabs,.schedule-view-nav,.calendar-view-tabs,.staffing-tabs { display:flex; flex-wrap:wrap; gap:7px; margin:0 0 18px; background:transparent; border:0; }
.workflow-tabs a,.schedule-view-nav a,.calendar-view-tabs a,.staffing-tabs a { padding:8px 12px; border:1px solid var(--stroke); border-radius:6px; background:white; color:var(--subtle); font-size:12px; }
.workflow-tabs a.active,.schedule-view-nav a.active,.calendar-view-tabs a.active,.staffing-tabs a.active { background:var(--teal-soft); color:var(--teal); border-color:#b9dcd5; }
.modal-backdrop { position:fixed; inset:0; z-index:80; padding:24px; background:#10273c80; display:flex; align-items:center; justify-content:center; }
.modal-backdrop[hidden] { display:none; }
.modal-panel,.board-detail-panel { background:white; border:1px solid var(--stroke); border-radius:12px; padding:24px; box-shadow:0 20px 70px #10273c35; max-height:calc(100vh - 48px); overflow:auto; }
.modal-header { margin-bottom:18px; padding-bottom:15px; border-bottom:1px solid var(--stroke); align-items:flex-start; }
.modal-header h2 { margin-bottom:4px; }
.modal-header p { color:var(--subtle); font-size:12px; margin:0; }
.modal-close { border:1px solid var(--stroke); color:var(--subtle); background:white; min-height:32px; width:32px; padding:4px; }
.board-detail-drawer { position:fixed; inset:0; z-index:80; background:#10273c70; display:flex; justify-content:flex-end; }
.board-detail-panel { width:640px; max-width:100%; border-radius:0; max-height:100vh; }
.board-detail-panel > header { display:flex; justify-content:space-between; }
.board-detail-section { border-top:1px solid var(--stroke); margin-top:18px; padding-top:18px; }
.board-action-list { display:flex; flex-wrap:wrap; gap:8px; }
.schedule-board-shell { background:white; border:1px solid var(--stroke); border-radius:9px; overflow:hidden; }
.schedule-board-scroll { overflow:auto; }
.schedule-board-table { border-collapse:separate; border-spacing:0; }
.schedule-board-table th,.schedule-board-table td { border-right:1px solid #e6edf3; border-bottom:1px solid #e6edf3; }
.schedule-board-table .employee-sticky { position:sticky; left:0; background:white; z-index:2; }
.schedule-board-table thead th { position:sticky; top:0; z-index:3; background:#f6f9fb; }
.schedule-board-table thead .employee-sticky { z-index:4; }
.employee-board-label { color:var(--text); font-size:12px; }
.employee-board-label small { display:block; font-size:10px; font-weight:400; }
.board-cell { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; width:100%; border:1px solid transparent; border-radius:5px; padding:6px; min-height:55px; background:#f1f6f8; color:var(--text); text-align:left; }
.board-cell strong { font-size:11px; }
.board-cell span { font-size:10px; font-weight:400; }
.board-cell.status-off,.board-cell.status-unscheduled { background:#f7f9fb; color:#536b7e; }
.board-cell.status-working { background:#e9f4f1; color:#176358; }
.board-cell.status-timeoff,.board-cell.status-removed { background:#eff2f8; color:#53627f; }
.board-cell.status-pending { background:var(--amber-soft); color:var(--amber); }
.board-cell.status-open,.board-cell.has-warning { border-color:#e7c98f; background:#fff8ec; color:#8c620b; }
.board-cell.status-covered-for,.board-cell.status-covered-by,.board-cell.status-swap { background:#eaf1fa; color:#315985; }
.board-cell.status-inactive { background:#f4f5f6; color:#536b7e; }
.is-today { box-shadow:inset 0 2px 0 var(--teal); }
.crew-staffing-row th { background:#edf3f7 !important; }
.crew-staffing-row .board-cell { background:#edf3f7; }
.section-heading,.form-section-heading,.dashboard-section-heading { margin-bottom:16px; }
.section-heading h2 { margin-bottom:4px; }
.section-heading p { color:var(--subtle); font-size:12px; margin-bottom:0; }
.hub-card,.workflow-action-card,.report-entry,.grant-cycle-row { background:white; color:var(--text); padding:18px; border:1px solid var(--stroke); border-radius:8px; }
.report-entry { display:flex; gap:24px; align-items:center; margin-bottom:10px; }
.report-entry strong { min-width:180px; }
.report-entry span { color:var(--subtle); font-size:12px; flex:1; }
.report-entry b { color:var(--teal); font-size:12px; }
.action-details,.support-disclosure,.advanced-options { margin-top:16px; border-top:1px solid var(--stroke); padding-top:14px; }
summary { cursor:pointer; }
.history-actions,.secondary-actions,.inline-actions,.grant-review-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.secondary-actions { border-top:1px solid var(--stroke); margin-top:16px; padding-top:12px; color:var(--subtle); font-size:12px; }
.decision-panel { background:white; border:1px solid var(--stroke); border-radius:8px; padding:18px; }
.decision-panel h4,.decision-panel h5 { margin-bottom:12px; }
.decision-panel button { margin-top:12px; }
.environment-banner { background:#fff7e6; color:#765800; border-bottom:1px solid #ead8af; padding:6px 16px; }
/* Daily staffing and calendar use the same quiet semantic surfaces. */
.division-section,.shift-summary,.daily-shift-card,.staffing-day-card,.staffing-glance-day,.crew-card,.staffing-crew-card { background:white; border:1px solid var(--stroke); border-radius:9px; padding:18px; margin-bottom:16px; }
.shift-header,.division-heading,.staffing-group-header { border-bottom:1px solid var(--stroke); padding-bottom:12px; margin-bottom:14px; }
.calendar-day,.calendar-cell { background:white; border:1px solid var(--stroke); padding:10px; }
.calendar-day.is-today,.calendar-cell.is-today { border-color:var(--teal); }
.staffing-count,.metric-card,.support-summary-item,.support-summary-card,.support-metric { border:1px solid var(--stroke); border-radius:8px; background:#f8fafc; padding:12px; }
.staffing-count strong,.support-metric strong { color:var(--text); }
.staffing-status,.staffing-warning { color:var(--amber); background:var(--amber-soft); border-color:#ecd6a8; }
.pagination { display:flex; align-items:center; gap:10px; margin-top:18px; font-size:12px; }
.editor-layout { display:grid; grid-template-columns:minmax(0,1fr) 265px; gap:24px; align-items:start; }
.editor-layout > form { min-width:0; }
.editor-guide { position:sticky; top:24px; padding:22px; border:1px solid var(--stroke); border-radius:9px; background:white; }
.editor-guide h2 { margin-bottom:10px; font-size:15px; }
.editor-guide p { color:var(--subtle); font-size:12px; }
.editor-guide ol { padding-left:18px; color:var(--subtle); font-size:12px; }
.editor-guide li { padding:5px 0; }
.editor-guide .guide-kicker { color:var(--teal); font-size:10px; text-transform:uppercase; letter-spacing:1.3px; font-weight:700; margin-bottom:12px; }
.page-summary { display:flex; gap:24px; align-items:center; border-bottom:1px solid var(--stroke); margin:-4px 0 24px; padding:0 0 18px; color:var(--subtle); font-size:12px; }
.page-summary strong { color:var(--text); font-size:19px; margin-right:6px; }
.record-collection { background:white; border:1px solid var(--stroke); border-radius:10px; overflow:hidden; }
.record-collection > details { border-bottom:1px solid var(--stroke); }
.record-collection > details:last-child { border:0; }
.record-summary { display:grid; grid-template-columns:minmax(0,1fr) minmax(130px,.55fr) auto; gap:20px; align-items:center; padding:18px 22px; list-style:none; }
.record-summary:hover { background:#f8fbfc; }
.record-summary strong { display:block; font-size:14px; }
.record-summary small { display:block; margin-top:3px; }
.record-body { padding:22px; border-top:1px solid var(--stroke); }
.record-summary .record-open { font-size:12px; color:var(--teal); }
.review-workspace { display:grid; grid-template-columns:minmax(0,1fr) 320px; align-items:start; gap:24px; padding:22px; background:#f8fafc; border-top:1px solid var(--stroke); }
.review-information { min-width:0; }
.review-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding:18px; border:1px solid var(--stroke); background:white; border-radius:8px; margin:0 0 18px; }
.review-facts dd { font-size:13px; font-weight:600; }
.review-section { padding:20px; margin-bottom:18px; background:white; border:1px solid var(--stroke); border-radius:8px; }
.review-section h3 { margin-bottom:5px; }
.review-section > p { font-size:12px; color:var(--subtle); }
.review-impact-header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px; }
.review-impact-header h3 { margin:0; }
.impact-row { display:grid; grid-template-columns:1fr auto; gap:12px; padding:13px 0; border-bottom:1px solid var(--stroke); }
.impact-row:last-child { border:0; }
.impact-row p { font-size:12px; margin:4px 0; color:var(--subtle); }
.impact-count { font-size:23px; font-weight:700; color:var(--amber); white-space:nowrap; }
.impact-count small { font-size:12px; color:var(--subtle); font-weight:400; }
.decision-dock { position:sticky; top:22px; background:white; border:1px solid var(--stroke); border-radius:9px; padding:20px; }
.decision-dock h3 { margin-bottom:5px; }
.decision-dock > p { color:var(--subtle); font-size:12px; }
.decision-dock label { margin:14px 0; }
.decision-dock button[type=submit] { width:100%; margin-top:12px; }
.decision-dock details { border-top:1px solid var(--stroke); margin-top:16px; padding-top:14px; }
.decision-dock summary { color:var(--teal); font-weight:600; font-size:12px; }
.decision-dock .decision-warning { border-left:3px solid #ddb765; padding:10px 12px; background:var(--amber-soft); margin:16px 0; font-size:12px; }
.swap-pair { display:grid; grid-template-columns:1fr 38px 1fr; align-items:stretch; margin:18px 0; }
.swap-pair > section { background:#f7fafb; border:1px solid var(--stroke); border-radius:8px; padding:18px; }
.swap-pair > span { display:grid; place-items:center; color:var(--teal); font-size:22px; }
.swap-pair p { margin:5px 0; color:var(--subtle); font-size:12px; }
.swap-pair strong { display:block; }
.work-list { display:flex; flex-direction:column; gap:0; background:white; border:1px solid var(--stroke); border-radius:9px; overflow:hidden; }
.work-row { display:grid; grid-template-columns:72px minmax(180px,1.3fr) minmax(150px,1fr) auto; gap:22px; align-items:center; padding:18px 22px; border-bottom:1px solid var(--stroke); }
.work-row:last-child { border-bottom:0; }
.work-row h2 { font-size:14px; margin:0 0 3px; }
.work-row p { color:var(--subtle); font-size:12px; margin:4px 0; }
.work-date { border-right:1px solid var(--stroke); padding-right:16px; text-align:center; }
.work-date strong { display:block; font-size:20px; }
.work-date small { font-size:11px; }
.work-row details { grid-column:2/-1; border-top:1px solid var(--stroke); padding-top:12px; }
.work-row details summary { color:var(--subtle); font-size:12px; }
.work-actions { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.tool-directory { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.tool-directory section { border:1px solid var(--stroke); background:white; border-radius:9px; padding:22px; }
.tool-directory h2 { margin-bottom:5px; }
.tool-directory p { color:var(--subtle); font-size:12px; }
.tool-directory a { display:flex; justify-content:space-between; gap:18px; padding:13px 0; border-bottom:1px solid var(--stroke); font-size:13px; color:var(--text); }
.tool-directory a:last-child { border:0; }
.tool-directory a::after { content:'→'; color:var(--teal); }
.tool-directory .tool-group,.tool-directory .admin-tool-group,.tool-directory .workflow-group { background:white; border:1px solid var(--stroke); border-radius:9px; padding:22px; margin:0; }
.tool-directory .directory-link { display:grid; grid-template-columns:minmax(0,1fr) 20px; padding:15px 0; border-bottom:1px solid var(--stroke); }
.directory-link strong { display:block; font-size:14px; }
.directory-link span { display:block; color:var(--subtle); font-size:12px; grid-column:1; }
.directory-link::after { grid-column:2; grid-row:1/3; align-self:center; }
.workspace-main .record-collection > details.history-card,.workspace-main .review-list > details.review-record { border:0; border-bottom:1px solid var(--stroke); border-radius:0; padding:0; margin:0; background:white; }
.record-summary { grid-template-columns:minmax(0,1fr) minmax(130px,.6fr) auto 12px; }
.record-summary::after { content:'›'; color:var(--teal); font-size:21px; }
details[open] > .record-summary::after { transform:rotate(90deg); }
.list-pagination { display:flex; justify-content:flex-end; align-items:center; gap:14px; font-size:12px; color:var(--subtle); margin-top:18px; }
.workspace-main .work-list { display:flex; grid-template-columns:none; gap:0; }
.workspace-main .record-body .history-actions { padding-top:14px; }
.workspace-main .staffing-warning-panel { background:white; border:1px solid var(--stroke); border-left:3px solid #ddb765; border-radius:8px; padding:16px; }
.workspace-main .staffing-warning-day { background:transparent; border:0; padding:12px 0; }
.decision-dock .review-form { display:block; padding:0; border:0; background:transparent; }
.decision-dock .review-form h4 { font-size:13px; }
.record-body .history-note { background:#f7fafb; }
.screen .guide-kicker { font-size:10px; color:var(--teal); text-transform:uppercase; letter-spacing:1.3px; }
.workspace-main .form-section-heading { display:flex; align-items:flex-start; gap:14px; border-bottom:1px solid var(--stroke); padding-bottom:16px; margin-bottom:18px; }
.workspace-main .form-section-heading h2 { font-size:16px; margin:0 0 4px; }
.workspace-main .decision-dock { color:var(--text); }
.workspace-main .decision-dock .danger-button { background:white; color:var(--red); border-color:#e7bdc2; }
.workspace-main .decision-dock .decision-warning p { margin:5px 0; }
.workspace-main .editor-layout .operational-form { max-width:none; }
.workspace-main .editor-guide { border-top:3px solid var(--teal); }
.workspace-main .grant-cycle-list { border:1px solid var(--stroke); border-radius:9px; overflow:hidden; background:white; }
.workspace-main .grant-cycle-row { border:0; border-bottom:1px solid var(--stroke); border-radius:0; margin:0; padding:18px 22px; }
.workspace-main .grant-cycle-row:last-child { border:0; }
.workspace-main .grant-review-card,.workspace-main .grant-history-card { border:1px solid var(--stroke); border-radius:9px; box-shadow:none; }
.workspace-main .support-summary-card,.workspace-main .metric-card { border:1px solid var(--stroke); background:white; border-radius:9px; padding:16px; }
.workspace-main .support-summary-card h2,.workspace-main .metric-card h2 { font-size:14px; }
.workspace-main .support-disclosure { background:white; border:1px solid var(--stroke); padding:16px; border-radius:8px; margin-top:14px; }
.workspace-main .support-disclosure > summary { color:var(--text); font-size:13px; font-weight:600; }
.workspace-main .date-nav a,.workspace-main .secondary-button { color:var(--text); background:white; border:1px solid var(--stroke); }
.workspace-main .screen-health .support-summary { margin-bottom:18px; }
@media(max-width:700px) { .record-summary { grid-template-columns:minmax(0,1fr) auto 12px; } .tool-directory .tool-group,.tool-directory .admin-tool-group,.tool-directory .workflow-group { padding:18px; } .review-workspace { gap:16px; } .decision-dock { padding:18px; } .list-pagination { justify-content:center; } }
.support-summary,.report-preview { background:white; border:1px solid var(--stroke); border-radius:9px; padding:20px; }
@media(max-width:1100px) { .editor-layout { grid-template-columns:minmax(0,1fr); } .editor-guide { position:static; } .review-workspace { grid-template-columns:minmax(0,1fr); } .decision-dock { position:static; } .work-row { grid-template-columns:60px minmax(0,1fr) auto; } .work-row .work-availability { grid-column:2/3; } .work-row .work-actions { grid-column:3; grid-row:1/3; } }
@media(max-width:700px) { .form-grid,.form-section-grid,.coverage-field-grid { grid-template-columns:minmax(0,1fr); } .form-section { padding:18px; } .management-toolbar { align-items:flex-start; flex-direction:column; } .management-actions { justify-content:flex-start; } .tool-directory { grid-template-columns:minmax(0,1fr); } .record-summary { grid-template-columns:minmax(0,1fr) auto; padding:16px; gap:12px; } .record-summary .record-secondary { display:none; } .record-body,.review-workspace { padding:16px; } .review-facts { grid-template-columns:repeat(2,minmax(0,1fr)); } .work-row { padding:16px; gap:12px; grid-template-columns:48px minmax(0,1fr); } .work-row .work-actions { grid-column:2; grid-row:auto; justify-content:flex-start; } .work-row details { grid-column:1/-1; } .swap-pair { grid-template-columns:minmax(0,1fr); gap:8px; } .swap-pair > span { transform:rotate(90deg); } .report-entry { align-items:flex-start; flex-direction:column; gap:8px; } .modal-backdrop { padding:12px; } .modal-panel { max-height:calc(100vh - 24px); padding:18px; } }
@media print { body { color:#000; background:white; } .editor-guide,.decision-dock,.form-actions,.filter-panel,.management-actions { display:none !important; } .editor-layout,.review-workspace { display:block; } .report-preview { border:0; padding:0; } table { font-size:10px; } th,td { padding:5px; } .record-body { display:block; } }

/* Connected collection surfaces keep the controls next to the records they affect. */
.collection-workspace { background:white; border:1px solid var(--stroke); border-radius:10px; padding:0 20px 20px; overflow:hidden; }
.workspace-main .collection-workspace > .management-toolbar { border:0; border-bottom:1px solid var(--stroke); border-radius:0; padding:20px 0; margin:0 0 18px; }
.workspace-main .collection-workspace > .filter-panel { border:0; background:#f5f8fa; padding:16px; margin:18px 0; }
.workspace-main .collection-workspace > .support-summary { border:0; border-bottom:1px solid var(--stroke); border-radius:0; margin:0; padding:20px 0; }
.workspace-main .collection-workspace > .table-wrap { border-radius:6px; }
.collection-workspace .onboarding-guide { margin-top:20px; }
.collection-workspace .report-entry-list { border:0; padding-top:4px; }
.collection-workspace .report-entry { border:0; border-bottom:1px solid var(--stroke); border-radius:0; margin:0; padding:20px 0; }
.collection-workspace .report-entry:last-child { border:0; }
.confirmation-workspace { display:grid; grid-template-columns:minmax(250px,.8fr) minmax(0,1.4fr); gap:24px; align-items:start; }
.workspace-main .confirmation-workspace > section { border-top:3px solid var(--teal); margin:0; }
.confirmation-workspace > form { background:white; padding:24px; border:1px solid var(--stroke); border-radius:9px; }
.confirmation-workspace .info-card { padding:24px; }
.confirmation-workspace .choice-row { border:1px solid var(--stroke); border-radius:7px; padding:14px; background:white; margin-bottom:10px; }
.confirmation-workspace .choice-row:has(input:checked) { border-color:var(--teal); background:var(--teal-soft); }
.support-workspace { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:20px; }
.support-workspace > .support-summary,.support-workspace > .management-toolbar,.support-workspace > form,.support-workspace > .warning,.support-workspace > .configuration-reference { grid-column:1/-1; }
.workspace-main .support-workspace > .ops-section,.workspace-main .support-workspace > .support-disclosure { margin:0; }
.support-workspace .health-list { display:block; }
.support-workspace .health-list > div { display:grid; grid-template-columns:minmax(110px,.8fr) minmax(0,1fr); gap:16px; padding:10px 0; border-bottom:1px solid var(--stroke); }
.support-workspace .health-list dd { overflow-wrap:anywhere; }
.support-workspace .notification-preview { grid-column:1/-1; }
.screen-admin-data .support-workspace,.screen-sharepoint-import .support-workspace,.screen-off-status-diagnostic .support-workspace,.screen-admin-raw-warning .support-workspace { grid-template-columns:minmax(0,1fr); }
.report-settings,.grant-rules { background:white; padding:18px 20px; border:1px solid var(--stroke); border-radius:9px; margin-bottom:20px; }
.report-settings > summary,.grant-rules > summary { font-weight:600; color:var(--text); }
.report-settings > summary span { font-weight:400; color:var(--subtle); margin-left:16px; font-size:12px; }
.report-settings[open] > summary,.grant-rules[open] > summary { margin-bottom:20px; }
.grant-block-list { display:flex; flex-direction:column; gap:0; }
.grant-block-list > .grant-spot { display:grid; grid-template-columns:150px minmax(0,1fr); align-items:start; gap:18px; padding:18px 0; border:0; border-bottom:1px solid var(--stroke); border-radius:0; }
.grant-block-list > .grant-spot:last-child { border:0; }
.grant-block-list .grant-spot > header { display:flex; flex-direction:column; align-items:flex-start; gap:7px; }
.grant-block-list .grant-spot .stack-form { grid-column:2; display:grid; grid-template-columns:minmax(140px,200px) minmax(0,1fr) auto; align-items:end; gap:16px; }
.grant-block-list .grant-open-label { display:none; }
.workspace-main label.check-row { display:flex; flex-direction:row; align-items:center; justify-content:flex-start; gap:8px; }
.workspace-main label.check-row > input { align-self:flex-start; margin-top:4px; }
.grant-summary { margin:0 0 20px; }
.grant-summary span { font-size:12px; color:var(--subtle); }
.personal-record-body { padding:22px; }
.workspace-main .record-collection { max-width:none; width:100%; }
.personal-record-body .inline-edit-form { padding:18px 0; border-top:1px solid var(--stroke); }
.decision-dock .grant-decision .form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); padding:0; background:transparent; border:0; }
.decision-dock .grant-decision label { margin:0; }
.decision-dock .grant-review-actions { display:flex; flex-wrap:wrap; gap:7px; margin-top:8px; }
.decision-dock .grant-review-action-groups { display:grid; gap:20px; }
.workspace-main .workspace-heading { border-bottom:1px solid var(--stroke); padding-bottom:20px; margin-bottom:24px; }
@media(max-width:1000px) { .support-workspace,.confirmation-workspace { grid-template-columns:minmax(0,1fr); } .support-workspace > * { grid-column:1 !important; } .grant-block-list .grant-spot .stack-form { grid-template-columns:minmax(0,1fr); } }
@media(max-width:700px) { .collection-workspace { padding:0 14px 14px; } .workspace-main .collection-workspace > .filter-panel { padding:14px; } .report-settings > summary span { display:block; margin:6px 0 0; } .grant-block-list > .grant-spot { grid-template-columns:minmax(0,1fr); gap:12px; } .grant-block-list .grant-spot .stack-form { grid-column:1; } .grant-block-list .grant-spot > header { flex-direction:row; justify-content:space-between; } .confirmation-workspace > form { padding:18px; } }
@media print { .report-settings { display:none; } .collection-workspace { border:0; padding:0; } .support-workspace,.confirmation-workspace { display:block; } .workspace-heading { border:0 !important; } }
