/* Layout rules carried over from the original portal for ported templates; re-based on the v2 tokens. Generated by scripts/build_legacy_css.py */
.floating-form-actions > .btn,
.floating-form-actions > button,
.floating-form-actions.submission-buttons > .btn {
  width: auto;
  max-width: 100%;
  min-width: 0;
  min-height: 44px;
  flex: 0 1 auto;
  padding: 10px 12px;
  white-space: normal;
  line-height: 1.25;
}
@media(max-width:620px) {.floating-form-actions > .btn,
  .floating-form-actions > button,
  .floating-form-actions.submission-buttons > .btn {
    flex: 1 1 130px;
    width: auto;
    font-size: .8rem;
  }}
.class-session-link{color:var(--p);font-weight:800}
.class-session-link:hover,.class-session-link:focus{text-decoration:underline}
.message{background:#e7f4eb;border:1px solid #9cc8ab;border-radius:8px;padding:12px 15px;margin-bottom:20px}
.dashboard-intro h1,.page-heading h1{font:700 24px/1.2 var(--portal-font);margin-bottom:4px;letter-spacing:-.01em}
.dashboard-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-bottom:28px}
.dashboard-stats.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}
.metric-card{min-height:0;background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:18px 20px;display:flex;gap:14px;align-items:center;color:var(--text);box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}
.metric-card:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(24,45,63,.1)}
.metric-icon,.quick-icon{width:58px;height:58px;flex:0 0 58px;border-radius:var(--r);display:grid;place-items:center;font-size:26px;font-weight:600}
.blue{background:#e4f2f8;color:#176b98}
.gold{background:#fff1d8;color:#b77a09}
.purple{background:#f0eafb;color:#765aa5}
.green{background:#e2f3ed;color:#37856d}
.metric-copy{min-width:0}
.metric-copy small{display:block;color:#647889;font-weight:700;font-size:13px;margin:4px 0 8px}
.metric-copy strong{display:block;color:#102c47;font:700 40px/1 var(--portal-font)}
.metric-copy em{display:block;color:#84919c;font-size:12px;font-style:normal;margin-top:10px}
.data-card,.panel{background:var(--card);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow)}
.card-heading{min-height:0;padding:14px 20px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid var(--border)}
.card-heading h2{font:700 24px var(--portal-font);margin:0 0 8px}
.card-heading p{font-size:13px;color:var(--muted);margin:0}
.card-heading>a{font-size:13px;font-weight:800;margin-top:5px}
.table-wrap{overflow:auto}
.status-badge,.badge{display:inline-block;border-radius:999px;padding:5px 11px;font-size:11px;font-weight:800;white-space:nowrap;background:#e3edf4;color:#27749a}
.status-complete{background:#e0f1e9;color:#31765f}
.status-stopped,.status-medical_rule_out{background:#f3e5e5;color:#9b4949}
.empty-state{padding:34px 10px;text-align:center;color:var(--muted)}
.empty-state strong,.empty-state span{display:block}
.empty-state span{margin-top:6px;font-size:13px}
.quick-actions .card-heading{min-height:auto;padding-bottom:20px}
.page-heading,.panel-heading,.actions,.search{display:flex;justify-content:space-between;align-items:center;gap:12px}
.page-heading{margin-bottom:26px}
.page-heading h1{margin-bottom:4px}
.page-heading-actions{margin-left:auto;justify-content:flex-end;flex-wrap:wrap}
.panel{padding:20px;margin-bottom:16px}
.panel h2{margin-top:0}
.panel table{margin-top:5px}
.panel th{background:#f1f5f7}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-grid .form-field.wide{grid-column:1/-1}.form-grid .form-field .form-control{width:100%;box-sizing:border-box}
.form-control{width:100%;border:1px solid var(--border);border-radius:8px;padding:8px 11px;min-height:38px;font:inherit;background:var(--card);color:var(--text);box-sizing:border-box}
.detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:22px}
.compact-stats .metric-card{min-height:0}
.report-placeholder .metric-icon{margin:0 auto 20px}
.choice-heading{margin-bottom:32px}
.choice-heading h1{font:400 44px/1.1 var(--portal-font);margin-bottom:12px;letter-spacing:-.6px}
.choice-heading>p:last-child{color:var(--muted);font-size:17px;margin-bottom:0}
.evaluation-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.evaluation-choice-card{position:relative;min-height:0;background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:20px;box-shadow:var(--shadow);color:var(--text);display:flex;flex-direction:column;transition:transform .16s,box-shadow .16s,border-color .16s;overflow:hidden}
.evaluation-choice-card:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(24,45,63,.12);border-color:#bdcbd5}
.choice-icon{width:66px;height:66px;border-radius:var(--r);display:grid;place-items:center;font-size:30px;font-weight:700;margin-bottom:28px}
.choice-copy{display:block}
.choice-label{display:block;color:#738492;font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:9px}
.choice-copy strong{display:block;color:#122c45;font:700 25px/1.22 var(--portal-font);margin-bottom:14px}
.choice-copy>span:last-child{display:block;color:var(--muted);font-size:14px;line-height:1.6}
.choice-action{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:26px;color:var(--p);font-size:13px;font-weight:800}
.choice-action b{font-size:20px}
.data-form-heading{margin-bottom:28px}
.sectioned-form{display:grid;grid-template-columns:230px minmax(0,1fr);gap:24px;align-items:start}
.form-step-nav{position:sticky;top:114px;background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:22px 14px;box-shadow:var(--shadow)}
.form-step-nav>.eyebrow{padding:0 10px;margin-bottom:12px}
.form-step-nav a{position:relative;display:grid;grid-template-columns:36px 1fr;column-gap:11px;align-items:center;color:var(--text);padding:12px 10px;border-radius:8px}
.form-step-nav a:hover,.form-step-nav a:focus{background:#edf5f9;outline:none}
.form-step-nav a span{grid-row:1/3;width:34px;height:34px;border:2px solid #d5e1e8;border-radius:50%;display:grid;place-items:center;color:#637988;font-weight:800;background:var(--card)}
.form-step-nav a strong{font-size:13px}
.form-step-nav a small{color:var(--muted);font-size:10px;margin-top:3px}
.data-only-form{padding:0;overflow:hidden;margin:0}
.data-form-section{padding:20px;border-bottom:1px solid var(--border);scroll-margin-top:112px}
.submission-options{scroll-margin-top:112px}
.form-step-nav a.current:not(.completed){background:#f4effa;color:#4f2d79;box-shadow:inset 3px 0 #7445a2}
.form-step-nav a.current:not(.completed)>span{border-color:#8d6caf;color:#5e358c;background:#faf7fd}
.section-title{display:flex;align-items:flex-start;gap:14px;margin-bottom:24px}
.section-title>span{width:32px;height:32px;flex:0 0 32px;border-radius:50%;display:grid;place-items:center;background:#e4f2f8;color:var(--p);font-weight:800}
.section-title h2{font:700 23px var(--portal-font);margin:2px 0 5px}
.section-title p{color:var(--muted);font-size:13px;margin:0}
.data-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 26px}
.data-form-grid .field{align-self:start}
.required{color:#bb3d3d}
.field-help{color:var(--muted);font-size:12px;line-height:1.45;margin:6px 0 0}
.error-summary{background:#fae8e8;color:#8f2929;border-radius:8px;padding:12px;margin:24px 34px 0}
.opinion-field>label{display:block;font-weight:700;margin-bottom:4px}
.checkbox-grid>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}
.checkbox-grid>div>div{border:1px solid var(--border);border-radius:8px;margin-top:10px;padding:13px 15px}
.checkbox-grid label{display:flex;align-items:center;gap:10px;font-weight:600;cursor:pointer}
.checkbox-grid input{width:18px;height:18px;accent-color:var(--p)}
.submission-options{padding:20px;background:#f7f9fa;display:grid;grid-template-columns:1fr;gap:24px;align-items:start}
.submission-copy{justify-self:stretch;text-align:left}
.submission-copy .eyebrow{margin-bottom:9px}
.submission-copy h2{font:700 23px var(--portal-font);margin-bottom:8px}
.submission-copy>p:last-child{color:var(--muted);max-width:none;line-height:1.55;margin:0}
.submission-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:14px;width:100%;white-space:normal}
.submission-buttons .btn{width:100%;justify-content:center;text-align:center}
.submit-large{min-height:50px;padding:0 18px}
.continue-button{background:#fff8e8;border-color:#e4bd68;color:#805b0e}
.continue-button:hover{background:#ffefc9}
.continue-button span{font-size:20px;margin-left:9px}
.login-shell{width:100%}
.login-card{width:min(480px,100%);margin:auto;background:var(--card);border:1px solid rgba(255,255,255,.4);border-radius:15px;padding:38px;box-shadow:0 18px 50px rgba(3,25,42,.3)}
.login-card h2{margin-bottom:5px}
.login-card label{display:block;font-weight:700;margin-bottom:6px}
.login-card input{width:100%;padding:12px;border:1px solid var(--border);border-radius:8px}
.public-legal-card{width:min(900px,100%);line-height:1.6}
.public-legal-card h1{font:700 34px var(--portal-font);margin:0}
.public-legal-card h2{font:700 20px var(--portal-font);margin:25px 0 5px}
.public-legal-card p{margin:0 0 10px}
.public-legal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid var(--border);padding-bottom:20px;margin-bottom:22px}
@media(max-width:1280px){.dashboard-stats,.dashboard-stats.three-up{grid-template-columns:repeat(2,1fr)}
.evaluation-choice-grid{grid-template-columns:1fr}
.evaluation-choice-card{min-height:0}
.sectioned-form{grid-template-columns:190px minmax(0,1fr)}
.form-step-nav{padding:18px 10px}}
@media(max-width:820px){.dashboard-intro h1,.page-heading h1{font-size:22px}
.form-grid,.detail-grid,.data-form-grid{grid-template-columns:1fr}
.checkbox-grid>div{grid-template-columns:1fr}
.submission-options{grid-template-columns:1fr}
.submission-buttons{justify-content:flex-start}
.sectioned-form{grid-template-columns:1fr}
.form-step-nav{position:sticky;top:76px;z-index:8;display:flex;overflow-x:auto;padding:9px;background:rgba(255,255,255,.96)}
.form-step-nav>.eyebrow,.form-step-nav a small{display:none}
.form-step-nav a{flex:1 0 118px;grid-template-columns:28px 1fr;padding:8px}
.form-step-nav a span{width:28px;height:28px;grid-row:auto}
.form-step-nav a strong{font-size:12px}}
@media(max-width:560px){.dashboard-stats,.dashboard-stats.three-up{grid-template-columns:1fr}
.metric-card{min-height:0;padding:16px 18px}
.dashboard-intro h1,.page-heading h1{font-size:22px}
.page-heading{align-items:flex-start;flex-direction:column}
.page-heading-actions{width:100%;margin-left:0;justify-content:flex-start}
.recent-card .card-heading{padding:22px}
.panel{padding:17px}}
@media(max-width:820px){.submission-buttons{grid-template-columns:1fr}}
.full-step-nav a{padding-top:9px;padding-bottom:9px}
.full-step-nav a.completed{background:#e9f7ef;border-radius:8px;color:#176b3a}
.full-step-nav a.completed>span{background:#23965a;border-color:#23965a;color:#fff;font-size:0}
.full-step-nav a.completed>span::after{content:"✓";font-size:16px}
.draft-toolbar{padding:18px 28px;background:#edf5f9;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:18px}
.draft-toolbar>div:first-child strong,.draft-toolbar>div:first-child span{display:block}
.draft-toolbar>div:first-child span{font-size:12px;color:var(--muted);margin-top:4px}
.subsection-heading{font:700 19px var(--portal-font);margin:30px 0 15px;padding-top:5px}
.pulse-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.single-grid{grid-template-columns:1fr}
.walk-followup-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.inline-options>div,.inline-options{display:flex;flex-wrap:wrap;gap:10px 18px}
.inline-options label{display:flex;align-items:center;gap:7px;font-weight:600}
.inline-options input{width:18px;height:18px;accent-color:var(--p)}
.clue-grid,.measurement-grid{border:1px solid var(--border);border-radius:8px;overflow:hidden;margin:14px 0 22px}
.clue-grid>div,.measurement-grid>div{display:grid;grid-template-columns:minmax(220px,2fr) repeat(2,minmax(100px,1fr));align-items:center;border-bottom:1px solid var(--border)}
.measurement-grid>div{grid-template-columns:minmax(130px,1fr) repeat(3,minmax(100px,1fr))}
.clue-grid>div:last-child,.measurement-grid>div:last-child{border-bottom:0}
.clue-grid>div>* ,.measurement-grid>div>*{padding:11px;border-right:1px solid var(--border);margin:0}
.clue-grid>div>*:last-child,.measurement-grid>div>*:last-child{border-right:0}
.clue-grid>div:first-child,.measurement-grid>div:first-child{background:#f1f5f7}
.clue-grid label{display:flex;align-items:center;justify-content:center;gap:8px}
.clue-grid input[type=checkbox]{width:22px;height:22px;accent-color:var(--p)}
.large-check-field label{display:flex;align-items:center;gap:12px;font-weight:700}
.large-check-field input[type=checkbox]{width:30px;height:30px;accent-color:var(--p)}
.walk-grid input,.measurement-grid input{width:100%;border:0;padding:11px;font:inherit}
.drawing-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.drawing-grid>*{min-width:0}
.drawing-board{min-width:0;margin:25px 0;border:1px solid var(--border);border-radius:var(--r);padding:18px;background:var(--light);overflow:hidden}
.drawing-heading{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:13px}
.drawing-heading h3{margin:0 0 5px;font:700 19px var(--portal-font)}
.drawing-heading p{margin:0;color:var(--muted);font-size:12px}
.drawing-tools{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}
.drawing-tools .active{background:var(--p);border-color:var(--p);color:#fff}
.drawing-surface{position:relative;width:100%;background:var(--card);border:1px solid #b9c7d1;border-radius:8px;overflow:hidden;line-height:0;touch-action:none}
.drawing-surface img{display:block;width:100%;height:auto}
.drawing-surface canvas{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair;touch-action:none}
.drawing-upload{display:inline-flex;margin-top:11px;color:var(--p);font-size:12px;font-weight:700;cursor:pointer}
.drawing-upload input{margin-left:10px}
.drawing-label-tool{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:11px}
.drawing-label-tool span{grid-column:1/-1;color:var(--p);font-size:12px}
.full-submission-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}
.tox-continue{border-color:#d6a620;color:#765200;background:#fffaf0}
@media(max-width:1100px){.drawing-grid{grid-template-columns:1fr}}
@media(max-width:820px){.draft-toolbar,.drawing-heading{align-items:stretch;flex-direction:column}
.draft-toolbar .actions{display:grid;grid-template-columns:1fr 1fr}
.clue-grid>div,.measurement-grid>div{grid-template-columns:1.4fr repeat(2,1fr)}
.measurement-grid>div{grid-template-columns:1fr repeat(3,1fr)}
.three-column-grid,.pulse-grid,.walk-followup-grid{grid-template-columns:1fr}
.full-submission-buttons{grid-template-columns:1fr}}
.data-only-step-nav a.completed{background:#e9f7ef;border-radius:8px;color:#176b3a}
.data-only-step-nav a.completed>span{background:#23965a;border-color:#23965a;color:#fff;font-size:0}
.data-only-step-nav a.completed>span::after{content:"✓";font-size:16px}
.report-heading{align-items:flex-end}
.report-filters{margin-bottom:24px}
.report-filter-actions{margin-top:18px}
.report-stats .metric-card{min-height:0}
.report-results{padding:0;overflow:hidden;margin-top:24px}
.report-results .card-heading{padding:22px 26px}
.empty-cell{text-align:center;color:var(--muted);padding:22px!important}
.form-actions{margin-top:24px}
.training-form{max-width:980px}
.certification-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:22px;margin-bottom:22px}
.certification-status-card{padding:20px;display:flex;align-items:center;gap:16px}
.certification-status-card h2{margin:4px 0 6px}
.certification-status-card p{margin:0;color:var(--muted)}
.status-orb{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font-size:24px;font-weight:900;color:#fff}
.status-orb.green{background:var(--green)}
.status-orb.gold{background:var(--gold)}
.status-orb.red{background:#b55353}
.status-orb.blue{background:var(--p)}
.cert-date-card{padding:20px;display:grid;grid-template-columns:1fr auto;gap:12px 20px;align-items:center}
.cert-date-card small{color:var(--muted)}
.cert-date-card strong{text-align:right}
.progress-heading{display:flex;justify-content:space-between;gap:14px;margin-bottom:13px}
.progress-track{height:14px;background:#e8eef2;border-radius:999px;overflow:hidden}
.progress-fill{height:100%;background:var(--green);max-width:100%}
.info-message{background:#e9f2f7;border-color:#b8d0df;color:#294b69}
.status-pill{display:inline-block;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}
.status-pill.approved{background:#e5f4ec;color:#23704f}
.status-pill.pending{background:#fff3d9;color:#805b0e}
.status-pill.rejected{background:#f9e5e5;color:#922f2f}
@media(max-width:1000px){.report-chart-grid,.certification-hero,.training-progress-grid,.admin-service-grid{grid-template-columns:1fr}}
.scroll-table {
  overflow: auto;
  border-radius: 0 0 14px 14px;
}
.five-row-table {
  max-height: 320px;
}
.dre-theme .blue {
  background: #f0eafb;
  color: #6f42a1;
}
.dre-theme .form-step-nav a:hover,
.dre-theme .form-step-nav a:focus {
  background: #f4effa;
}
.dre-theme .draft-toolbar,
.dre-theme .info-message {
  background: #f3eef9;
  border-color: #d7c9e7;
}
.scroll-table table {
  margin: 0;
}
.scroll-table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--light);
}
.danger-panel{border-color:#e4bcbc}
.delete-confirm-check{display:flex;gap:10px;align-items:flex-start;padding:16px;border:1px solid #e1c4c4;background:#fff7f7;border-radius:8px;font-weight:700;margin:20px 0}
.delete-confirm-check input{margin-top:3px}
.confirm-actions{justify-content:flex-start}
.row-actions{text-align:right;position:relative}
.status-orb.gold{background:#d9a52b}
.metric-icon.red{background:#f7e4e4;color:#a23d3d}
.missing-copy{margin-top:8px!important;color:#805b0e!important}
.requirement-progress-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-bottom:22px}
.requirement-progress-card{padding:20px;position:relative;border-top:4px solid #d6a620}
.requirement-progress-card.complete{border-top-color:var(--green)}
.requirement-progress-card .requirement-icon{position:absolute;right:18px;top:18px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#fff0d2;color:#8a620f;font-weight:900}
.requirement-progress-card.complete .requirement-icon{background:#e0f1e9;color:#31765f}
.pending-highlight{border-left:5px solid #d6a620}
.status-filter{min-width:200px}
.cert-admin-table{max-height:520px}
.cert-dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:8px}
.cert-dot.green{background:var(--green)}
.cert-dot.gold{background:#d6a620}
.cert-dot.red{background:#b44444}
.cert-dot.blue{background:var(--p)}
.requirement-admin-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:end}
.requirement-admin-form .field label{font-size:12px}
.four-up{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1100px){.requirement-progress-grid,.requirement-admin-form,.four-up{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.requirement-progress-grid,.requirement-admin-form,.four-up,.certification-search{grid-template-columns:1fr}}
.admin-list-heading{align-items:flex-start}
.compact-live-search{width:min(320px,34vw);height:38px;padding:7px 11px;font-size:.92rem;margin-top:0}
.cert-mini{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;font-size:.83rem;font-weight:700;background:#eef3f6}
.cert-mini.green{background:#e0f1e9;color:#31765f}
.cert-mini.gold{background:#fff0d2;color:#8a620f}
.cert-mini.red{background:#f7e4e4;color:#a23d3d}
.cert-mini.blue{background:#e5f2f7;color:#176783}
.requirement-progress-card .progress-heading{padding-right:54px}
@media(max-width:900px){.compact-live-search{width:100%;max-width:none}
.requirement-progress-card .progress-heading{padding-right:48px}}
.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0 0;flex-wrap:wrap}
.pagination-bar .page-status{font-size:13px;color:#66798a}
.sfst-list-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:18px 26px;margin:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#f8fbfc;align-items:end}
.sfst-list-filter-grid .field{display:grid;gap:6px;min-width:0}
.sfst-list-filter-grid label{font-size:12px;font-weight:800;color:#526b7e}
.sfst-list-filter-grid .form-control{width:100%;margin:0}
.sfst-list-filter-grid .sfst-filter-search{grid-column:span 2}
.sfst-list-filter-actions{align-self:end;flex-wrap:nowrap}
.list-result-count{margin:14px 26px 0;color:var(--muted);font-size:13px;font-weight:700}
.compact-list-filter{margin-top:0}
.compact-list-filter .sfst-filter-search{grid-column:span 2}
@media(max-width:1100px){.sfst-list-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.sfst-list-filter-grid{grid-template-columns:1fr;padding:16px}
.sfst-list-filter-grid .sfst-filter-search,.compact-list-filter .sfst-filter-search{grid-column:auto}
.sfst-list-filter-actions{flex-wrap:wrap}
.list-result-count{margin-left:16px;margin-right:16px}}
.metric-link{text-decoration:none}
.requirement-progress-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1100px){.requirement-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.requirement-progress-grid{grid-template-columns:1fr}}
.cert-comments{grid-column:1/-1;border-top:1px solid var(--border);padding-top:12px;margin-top:4px}
.cert-comments small{display:block;font-weight:800;margin-bottom:5px}
.cert-comments p{margin:0;color:var(--text);white-space:normal;text-align:left}
.field-help{display:block;color:var(--muted);font-size:12px;margin-top:6px;line-height:1.4}
.dre-profile-link{color:var(--p);font-weight:700}
.dre-profile-link:hover{text-decoration:underline}
.drug-comparison-summary .card-heading{padding:22px 26px}
.admin-list-heading{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,360px) minmax(220px,1fr);align-items:start;gap:20px;width:100%}
.admin-heading-copy{grid-column:1;min-width:0}
.compact-live-search{grid-column:2;width:100%;max-width:360px;justify-self:center;margin:0}
.admin-heading-actions{grid-column:3;justify-self:end;justify-content:flex-end}
.table-search-form .form-control{flex:0 1 680px}
.row-actions{min-width:240px}
.action-header,.row-actions{text-align:right}
.row-action-buttons{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.row-action-buttons form{margin:0}
.row-action-buttons .btn{white-space:nowrap}
@media(max-width:1000px){.admin-list-heading{grid-template-columns:1fr}
.admin-heading-copy,.compact-live-search,.admin-heading-actions{grid-column:1}
.compact-live-search{justify-self:stretch;max-width:none}
.admin-heading-actions{justify-self:start;justify-content:flex-start}}
@media(max-width:700px){.row-actions{min-width:200px}}
.agency-search-input{margin-bottom:8px}
.agency-search-input,input[list*="agency"],input[list="program-agency-options"],input[list="dre-agency-options"],input[data-agency-search],select[data-agency-select],select#id_agency,input#id_agency_name{background-color:#fff!important;color:var(--text)!important;-webkit-text-fill-color:currentColor!important;color-scheme:inherit!important;opacity:1}
.agency-search-input::placeholder,input[list*="agency"]::placeholder,input[data-agency-search]::placeholder,input#id_agency_name::placeholder{color:#6f7d89!important;-webkit-text-fill-color:currentColor!important;opacity:1}
.portal-hub-main>.message{margin-bottom:20px}
.program-app .eyebrow,.program-app .card-heading a{color:var(--p)}
.program-app .certification-status-card{border-top:4px solid var(--p)}
.program-app .panel,.program-app .data-card{scroll-margin-top:20px}
.student-intake-body{margin:0;min-height:100vh;background:linear-gradient(145deg,#0d586b,#143b54);font-family:var(--portal-font);color:var(--text)}
.student-intake-shell{width:min(720px,calc(100% - 32px));margin:0 auto;padding:34px 0 60px}
.student-intake-card{padding:clamp(26px,5vw,48px);background:var(--card);border-radius:22px;box-shadow:0 24px 70px rgba(0,0,0,.25)}
.student-intake-card h1{margin:4px 0 10px;font-size:clamp(1.8rem,5vw,2.6rem);letter-spacing:-.04em}
.student-intake-card form p{margin:18px 0}
.student-intake-card form label{display:block;margin-bottom:7px;font-weight:750}
.student-intake-card form input{width:100%;box-sizing:border-box;padding:13px 14px;border:1px solid #cfd7e2;border-radius:8px;font:inherit}
.intake-actions{display:flex;gap:10px;margin-top:12px}
.intake-actions .btn{flex:1;justify-content:center;padding:14px}
.intake-actions .intake-submit{margin-top:0}
@media(max-width:760px){.program-app .dashboard-stats{grid-template-columns:1fr}
.student-intake-shell{padding-top:20px}}
.admin-heading-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}
.enrollment-review-actions{justify-content:flex-start;align-items:center;flex-wrap:nowrap}
.enrollment-review-actions .btn{white-space:nowrap}
.compact-filter .form-control{margin:0}
.form-panel{max-width:900px}
.stacked-form{display:grid;gap:17px}
.form-field{display:grid;gap:7px}
.form-field label,.field-label{font-weight:800;color:#26364d}
.help-text{color:#6b788b;line-height:1.45}
.field-error{margin:0;color:#ad3030;font-weight:700}
.form-control[multiple]{min-height:130px}
.attendance-table{min-width:850px}
.compact-select{min-width:118px;padding:7px}
.qualification-badge,.permission-badge{display:inline-flex;align-items:center;width:max-content;max-width:100%;border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:800;line-height:1.2}
.qualification-badge.sfst{background:#dff2f5;color:#0d6678}
.qualification-badge.aride{background:#fff0d6;color:#8a550a}
.qualification-badge.dre{background:#eee5f8;color:#5e358c}
.permission-badge{background:#e8eef5;color:#314861}
.search-results-form .actions{display:grid;grid-template-columns:1fr auto}
.student-intake-brand{display:flex;align-items:center;justify-content:center;gap:14px;color:#fff;margin-bottom:26px}
.student-intake-brand img{width:64px;height:64px;object-fit:contain;background:transparent;border-radius:50%}
.student-intake-brand span{display:flex;flex-direction:column}
.student-intake-brand small{margin-top:4px;letter-spacing:.1em;text-transform:uppercase;opacity:.78}
.student-intake-card .form-field{margin:16px 0}
.status-pill.open,.status-pill.in_progress{background:#dff2e9;color:#2f765b}
.status-pill.planned{background:#e8eef5;color:#425c73}
.status-pill.closed{background:#f5e0e0;color:#9d3d3d}
.admin-user-table .action-header,.admin-user-table .row-actions{width:150px;min-width:150px;padding-left:14px;padding-right:26px;box-sizing:border-box}
.admin-user-table .row-action-buttons{flex-wrap:nowrap}
.cert-form-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}
.cert-form-actions .btn{width:100%;justify-content:center}
.iacp-form-intro{margin-bottom:16px}
.iacp-form-intro p{margin:0}
.iacp-form-intro p+p{margin-top:8px}
.iacp-form-panel{max-width:900px}
.iacp-form-panel input:disabled{background:var(--light);color:#40546a;opacity:1}
.nowrap-heading{white-space:nowrap!important}
.help-tip{display:inline-grid;place-items:center;width:17px;height:17px;margin-left:6px;border-radius:50%;background:var(--p);color:#fff;font-size:11px;font-weight:800;line-height:1;cursor:help;position:relative;vertical-align:middle}
.help-tip::after{content:attr(data-tooltip);position:absolute;z-index:30;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);width:260px;padding:9px 10px;border-radius:8px;background:#162c47;color:#fff;font-size:12px;font-weight:500;line-height:1.35;text-align:left;box-shadow:0 5px 15px rgba(0,0,0,.2);opacity:0;pointer-events:none;transition:opacity .15s}
.help-tip:hover::after,.help-tip:focus::after{opacity:1}
.agency-editor-field .agency-search-input{margin-bottom:8px}
.user-editor-action-bar .actions{margin-left:auto}
@media(max-width:760px){.user-editor-action-bar .actions{width:100%;margin:0;display:grid;grid-template-columns:1fr 1fr}}
.report-filter-actions{align-self:end}
.workflow-queues>.panel{min-width:0}
.kim-workflow-hero .data-card{min-width:0}
.note-options{display:flex;gap:18px;flex-wrap:wrap}
.program-note{padding:15px;border:1px solid var(--border);border-left:4px solid #9aaaba;border-radius:8px;background:var(--card)}
.program-note.pinned{border-left-color:#d39b19;background:#fffaf0}
.program-note p{white-space:pre-wrap}
.program-note{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.program-note-copy{min-width:0;flex:1}
.program-note-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.program-note-actions form{margin:0}
.program-note-edit-panel{max-width:900px}
.program-note-edit-options{margin:16px 0}
@media(max-width:700px){.program-note{flex-direction:column}
.program-note-actions{width:100%;justify-content:flex-start}}
.certification-status-card .certificate-number-line{margin-top:6px;color:var(--text);font-weight:800}
.program-edit-section-heading{margin-bottom:5px}
.program-edit-section-heading .eyebrow{margin-bottom:6px}
.program-edit-section-heading h2{font:700 24px var(--portal-font);margin:0 0 7px}
.program-edit-section-heading>p:last-child{margin:0;color:var(--muted);font-size:13px}
.manual-override-section{display:grid;gap:17px;margin-top:12px;padding-top:28px;border-top:2px solid #d9dfe6}
.manual-override-section .program-edit-section-heading{margin-bottom:1px}
.field-label-row{display:flex;align-items:center;gap:6px}
.field-label-row>label{margin:0}
.compliance-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.compliance-filter-grid .wide-field{grid-column:span 2}
/* Wrapping chips instead of one bullet per line — a record missing several
   items no longer stretches its whole row to fit a tall vertical list. */
.compliance-missing-list{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:4px 6px;max-width:220px}
.compliance-missing-list li{white-space:nowrap;line-height:1.3}
.compliance-table th:nth-child(7),.compliance-table td:nth-child(7){min-width:190px}
@media(max-width:1000px){.compliance-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.compliance-filter-grid{grid-template-columns:1fr}
.compliance-filter-grid .wide-field{grid-column:auto}}
.historical-badge {
  display: inline-flex;
  align-items: center;
  margin-left: .45rem;
  padding: .18rem .5rem;
  border: 1px solid #c9d2dc;
  border-radius: 999px;
  background: #f3f6f8;
  color: #536273;
  font-size: .72rem;
  font-weight: 700;
  line-height: 1.2;
  vertical-align: middle;
  white-space: nowrap;
}
.help-tip {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.15rem;
  height: 1.15rem;
  margin-left: .3rem;
  border-radius: 50%;
  background: #6f42b5;
  color: #fff;
  font-size: .75rem;
  font-weight: 800;
  line-height: 1;
  cursor: help;
  vertical-align: middle;
  outline: none;
}
.help-tip::after {
  content: attr(data-help);
  position: absolute;
  z-index: 1000;
  left: 50%;
  top: calc(100% + .55rem);
  transform: translateX(-50%);
  width: min(360px, 78vw);
  padding: .8rem .9rem;
  border: 1px solid #d9e0e7;
  border-radius: .65rem;
  background: #fff;
  color: #21334a;
  box-shadow: 0 10px 28px rgba(20, 36, 58, .18);
  font-size: .83rem;
  font-weight: 500;
  line-height: 1.35;
  text-align: left;
  white-space: normal;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.help-tip.open::after,
.help-tip:hover::after,
.help-tip:focus::after {
  opacity: 1;
  visibility: visible;
}
.help-tip::after {
  left: auto !important;
  right: 0 !important;
  transform: none !important;
  width: 260px !important;
  max-width: min(260px, 72vw) !important;
  padding: .65rem .75rem !important;
  border-radius: .55rem !important;
  font-size: .78rem !important;
  line-height: 1.35 !important;
}
.metric-card .help-tip { margin-left: .4rem; flex: 0 0 auto; }
.program-user-table .row-action-buttons { justify-content: flex-end; }
.account-detail-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0;
  border-top:1px solid var(--border);
}
.account-detail-grid>div {
  display:grid;
  grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr);
  gap:18px;
  padding:13px 0;
  border-bottom:1px solid var(--border);
}
.account-detail-grid small { color:var(--muted); font-weight:700; }
@media(max-width:700px){.admin-overview-stats,.account-detail-grid{grid-template-columns:1fr}
.account-detail-grid>div{grid-template-columns:1fr;gap:4px}}
.dashboard-stats .metric-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1rem;
  min-height: 132px;
}
.dashboard-stats .metric-icon {
  flex: 0 0 3.35rem;
  width: 3.35rem;
  height: 3.35rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: .85rem;
  font-size: 1.45rem;
  font-weight: 800;
}
.dashboard-stats .metric-icon.purple { background: #efe6fa; color: #6f42b5; }
.dashboard-stats .metric-icon.blue { background: #e5f3f8; color: #16748b; }
.dashboard-stats .metric-icon.green { background: #e2f3ec; color: #2d8b69; }
.dashboard-stats .metric-icon.gold { background: #fff0d3; color: #bb7800; }
.dashboard-stats .metric-copy { min-width: 0; }
.dashboard-stats .metric-copy small { display: block; font-weight: 800; }
.dashboard-stats .metric-copy strong { display: block; margin-top: .18rem; }
.dashboard-stats .metric-copy em {
  display: block;
  margin-top: .22rem;
  color: var(--muted);
  font-style: normal;
  font-size: .8rem;
}
.dashboard-stats .metric-card > .help-tip {
  position: absolute;
  top: .9rem;
  right: .9rem;
  margin: 0;
}
.help-tip::after { display:none !important; content:none !important; }
.help-tip { z-index:60; }
.help-tip.open > .help-tip-card,
.help-tip:hover > .help-tip-card,
.help-tip:focus > .help-tip-card { display:grid; gap:8px; }
.compliance-table-wrap { max-width:100%; overflow:auto }
.compliance-missing-list li { overflow-wrap:anywhere; max-width:100%; }
.program-user-hero-meta, .program-user-hero-badges { display:flex; gap:8px 14px; flex-wrap:wrap; align-items:center; margin-top:8px; color:var(--muted); }
.program-user-hero-badges > span:not(.qualification-badge) { padding:4px 8px; border:1px solid var(--border); border-radius:999px; background:var(--card); font-size:12px; font-weight:700; color:#52697a; }
.program-card-permission-control .form-control{width:100%;min-height:39px;margin:0;padding:8px 28px 8px 10px;font-size:12px}
.security-check-row{display:flex!important;align-items:flex-start;gap:12px;margin:0!important;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--light);cursor:pointer}
.security-check-row>input{width:19px;height:19px;min-width:19px;margin:2px 0 0;accent-color:var(--p)}
.security-check-copy,.security-check-copy strong,.security-check-copy small{display:block}
.security-check-copy small{margin-top:4px;color:var(--muted);font-weight:500;line-height:1.4}
.rolling-log-filter-grid {
  display:grid;
  grid-template-columns:minmax(280px,2fr) repeat(3,minmax(150px,1fr));
  gap:14px 16px;
  align-items:end;
}
.rolling-log-filter-grid .rolling-filter-search { grid-column:span 2; }
.rolling-log-filter-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.user-log-filter-grid { grid-template-columns:minmax(280px,2fr) repeat(3,minmax(150px,1fr)); }
.responsive-management-table {
  max-height:clamp(430px,62vh,760px);
  overflow:auto;
}
.responsive-management-table thead th {
  position:sticky;
  top:0;
  z-index:5;
  background:var(--light);
}
.rolling-management-table-wrap { max-width:100%; overflow:auto; }
.rolling-management-table { min-width:1180px; width:100%; }
.user-rolling-management-table { min-width:960px; }
.rolling-management-table .row-actions {
  position:sticky;
  right:0;
  z-index:3;
  background:var(--card);
  box-shadow:-5px 0 8px rgba(24,48,68,.06);
}
.rolling-management-table thead .action-header {
  position:sticky;
  right:0;
  z-index:7;
  background:var(--light);
  box-shadow:-5px 0 8px rgba(24,48,68,.06);
}
.rolling-log-link { color:var(--purple); text-decoration:none; }
.rolling-log-link:hover { text-decoration:underline; }
.field > label:has(input[type="checkbox"]),
.form-field > label:has(input[type="checkbox"]),
.checkbox-grid label,
.checkbox label {
  display:inline-flex;
  align-items:center;
  gap:.55rem;
}
.field > label:has(input[type="checkbox"]) input[type="checkbox"],
.form-field > label:has(input[type="checkbox"]) input[type="checkbox"],
.checkbox-grid input[type="checkbox"],
.checkbox input[type="checkbox"] {
  flex:0 0 18px;
  width:18px;
  height:18px;
  margin:0;
}
@media(max-width:1100px){.rolling-log-filter-grid,.user-log-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.rolling-log-filter-grid .rolling-filter-search{grid-column:1/-1;}}
@media(max-width:700px){.rolling-log-filter-grid,.user-log-filter-grid{grid-template-columns:1fr;}
.rolling-log-filter-grid .rolling-filter-search{grid-column:auto;}}
.compact-page-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.compact-page-actions .btn{white-space:nowrap}
.security-check-row {
  display: grid;
  grid-template-columns: 20px minmax(0,1fr) auto;
  align-items: start;
  gap: 10px;
  max-width: 880px;
  margin: 0;
  padding: 12px 14px;
  border: 1px solid #d8e1e8;
  border-radius: 9px;
  background: var(--light);
  cursor: pointer;
}
.security-check-row > input[type="checkbox"] {
  width: 19px !important;
  height: 19px !important;
  margin: 1px 0 0 !important;
  align-self: start;
}
.security-check-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.security-check-copy strong {
  color: var(--p);
  font-size: 14px;
  line-height: 1.3;
}
.security-check-copy small {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
.security-check-row .help-tip {
  margin: 0;
  align-self: start;
}
.evaluation-action-buttons {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  flex-wrap: nowrap;
  white-space: nowrap;
}
.evaluation-action-buttons .btn { min-width: auto; }
.multi-select-chips { display: flex; flex-wrap: wrap; gap: 7px; }
.instructor-picker {
  min-width: 0;
  padding: 12px;
  border: 1px solid #ccd7e3;
  border-radius: 10px;
  background: #fff;
}
.instructor-picker-status { margin: 8px 0; font-size: .85rem; }
.instructor-picker-options { max-height: 260px; overflow-y: auto }
.instructor-picker-options .additional-instructor-checks { display: grid; gap: 5px; }
.instructor-picker-options label {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  padding: 9px 8px;
  min-height: 44px;
  border-radius: 7px;
  font-size: .9rem;
  font-weight: 500;
  cursor: pointer;
}
.instructor-picker-options label:hover { background: #f0f6f8; }
.instructor-picker-options label:has(input:checked) { background: #eaf5f8; }
.instructor-picker-options label:has(input:disabled) { color: #63758a; cursor: default; }
.instructor-picker-options input[type="checkbox"] { width: 18px; height: 18px; margin: 2px 0 0; flex: 0 0 18px; }
.multi-select-chips .multi-select-chip { max-width: 100%; text-align: left; white-space: normal; }
.class-tools-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 18px;
}
.class-tool-group {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 18px;
  border: 1px solid #dce5ec;
  border-radius: 12px;
  background: var(--light);
}
/* Icon | copy | optional badge. A grid (not flex) so the icon can never wrap
   onto its own line in a narrow column - that is what made these cards
   disagree with each other. */
.class-tool-group-heading {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: start;
  gap: 12px;
  min-height: 51px;
  margin-bottom: 16px;
}
.class-tool-group-heading > * { min-width: 0; }
.class-tool-group-heading h3,
.class-status-copy h3 { margin: 0 0 4px; font: 700 18px var(--portal-font); color: var(--text); }
.class-tool-group-heading p,
.class-status-copy p { margin: 0; color: var(--muted); font-size: .8rem; line-height: 1.4; }
.class-tool-icon {
  display: grid;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 9px;
  background: #e6f2f8;
  color: #176385;
  font-size: 18px;
  font-weight: 900;
}
.class-tool-icon.green { background: #e8f5ee; color: #25734e; }
/* margin-top:auto pins every card's button row to the bottom, so cards with a
   one-line description line up with cards with a three-line one. */
.class-tool-buttons { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; margin-top: auto; }
.class-tool-buttons form,
.class-status-actions form { margin: 0; }
.entry-state-badge.open { border-color: #a9d8c2; background: #eaf7f0; color: #216646; }
.class-status-section {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid #dfe6ec;
}
.class-status-copy { max-width: 480px; }
.class-status-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.class-enrollment-panel { max-width: 1180px; }
.class-enrollment-form { gap: 0; }
.class-user-search-step[hidden],
.class-selected-user[hidden],
.class-new-user-fields[hidden] { display: none !important; }
.class-enrollment-step-heading {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-bottom: 20px;
}
.class-enrollment-step-heading > span {
  display: grid;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 50%;
  background: #176385;
  color: #fff;
  font-weight: 900;
}
.class-enrollment-step-heading h2 { margin: 1px 0 4px; font: 700 22px var(--portal-font); color: var(--text); }
.class-enrollment-step-heading p { margin: 0; color: var(--muted); font-size: .84rem; line-height: 1.45; }
.class-enrollment-step-heading .btn { margin-left: auto; }
.class-user-search-status { min-height: 22px; margin-top: 10px; font-size: .8rem; }
/* Class Certificates: the Select column used to render an empty cell for anyone
   already issued, so there was no way to pick a single name. Every selectable row
   now carries a real, hit-area-sized checkbox. */
.certificate-select-all {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 12px;
  padding: 9px 13px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--light);
  font-size: .82rem;
  font-weight: 700;
  color: var(--text);
  cursor: pointer;
}
.certificate-select-all input { width: 17px; height: 17px; margin: 0; flex: 0 0 17px; }
.certificate-select-header, .certificate-select-cell { width: 118px; white-space: nowrap; }
.certificate-row-select {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  cursor: pointer;
}
.certificate-row-select:hover { background: var(--p-soft); }
.certificate-row-select input { width: 17px; height: 17px; margin: 0; cursor: pointer; }
/* An unselectable row says why rather than showing an empty cell - a student who
   already has a certificate does not need another one, they need Download PDF. */
.select-note { color: var(--muted); font-size: .74rem; font-weight: 700; letter-spacing: .02em; cursor: help; }

.class-user-search-results { display: grid; gap: 8px; margin-top: 5px; }
/* These rows had no styling at all and fell back to the browser's default button:
   tiny centred grey text. Real rows now - name, supporting detail, action pill. */
.class-user-search-result {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--card);
  font: inherit;
  color: var(--text);
  text-align: left;
  cursor: pointer;
}
.class-user-search-result:hover:not(:disabled) { border-color: var(--p); background: var(--p-soft); }
.class-user-search-result:focus-visible { outline: 2px solid var(--p); outline-offset: 2px; }
.class-user-search-result:disabled { cursor: default; background: var(--light); color: var(--muted); }
.result-copy { display: grid; gap: 2px; min-width: 0; }
.result-name { font: 700 15px var(--portal-font); color: var(--text); }
.class-user-search-result:disabled .result-name { color: var(--muted); }
.result-meta { color: var(--muted); font-size: .8rem; line-height: 1.35; overflow-wrap: anywhere; }
.result-action {
  flex: 0 0 auto;
  padding: 5px 11px;
  border-radius: 999px;
  background: var(--p-soft);
  color: var(--p);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .02em;
  white-space: nowrap;
}
.class-user-search-result:disabled .result-action { background: var(--border); color: var(--muted); }
.class-create-user-prompt {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 20px;
  padding: 14px 16px;
  border: 1px dashed #b9c9d6;
  border-radius: 10px;
  background: var(--light);
}
.class-create-user-prompt strong,
.class-create-user-prompt span { display: block; }
.class-create-user-prompt span { margin-top: 3px; color: var(--muted); font-size: .78rem; }
.class-new-user-fields { padding: 2px 0; }
.class-new-user-grid { margin-top: 2px; }
.class-summary-stats {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.class-summary-stats .metric-card {
  min-width: 0;
  min-height: 120px;
  padding: 18px;
  gap: 12px;
  align-items: flex-start;
}
.class-summary-stats .metric-icon {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  font-size: 20px;
}
.class-summary-stats .metric-copy { min-width: 0; flex: 1; }
.class-summary-stats .metric-copy small {
  margin: 0 0 6px;
  font-size: .8125rem;
  line-height: 1.4;
}
.class-summary-stats .metric-copy strong {
  display: block;
  margin: 0;
  font-family: inherit;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4;
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
}
.class-summary-stats .metric-copy .class-summary-number {
  font-size: 1.75rem;
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
}
@media (max-width: 1440px) {.class-summary-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }}
@media (max-width: 700px) {.class-summary-stats { grid-template-columns: 1fr; }}
.program-edit-section{display:grid;gap:17px;padding:8px 0 28px}
.program-edit-section+.program-edit-section{padding-top:28px;border-top:2px solid #d9dfe6}
.manual-completion-field{margin:0}
.manual-completion-control{display:inline-flex!important;align-items:center;gap:10px;width:max-content;max-width:100%;margin:0!important;padding:11px 14px;border:1px solid #d7dfe7;border-radius:8px;background:var(--light);color:#26364d;font-weight:800;cursor:pointer}
.manual-completion-control input[type="checkbox"]{flex:0 0 18px;width:18px;height:18px;margin:0;accent-color:var(--purple)}
@media (max-width: 760px) {.class-tools-grid { grid-template-columns: 1fr; }
.class-status-section { align-items: flex-start; flex-direction: column; }
.class-status-actions { justify-content: flex-start; }
.class-create-user-prompt,
  .class-selected-user { align-items: flex-start; flex-direction: column; }
.class-enrollment-step-heading { flex-wrap: wrap; }
.class-enrollment-step-heading .btn { margin-left: 47px; }}
.state-report-heading{align-items:flex-start}
.state-report-heading>div:first-child{max-width:950px}
.state-report-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin-left:auto}
.state-report-scope-note{max-width:920px;margin:12px 0 0;padding:10px 13px;border-left:4px solid #7a57a5;border-radius:0 7px 7px 0;background:#f3eef9;color:#526477;font-size:.82rem;line-height:1.45}
.state-report-export-menu{position:relative}
.state-report-export-menu>summary{list-style:none;white-space:nowrap}
.state-report-export-menu>summary::-webkit-details-marker{display:none}
.state-report-export-popover{position:absolute;z-index:40;top:calc(100% + 8px);right:0;width:285px;padding:8px;border:1px solid #cbd6df;border-radius:var(--r);background:var(--card);box-shadow:0 14px 34px rgba(17,40,59,.2)}
.state-report-export-popover>strong{display:block;padding:8px 10px;color:#6b7d8e;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}
.state-report-export-popover>a{display:block;padding:10px;border-radius:8px;color:#183850;font-size:.84rem;font-weight:750}
.state-report-export-popover>a:hover,.state-report-export-popover>a:focus{background:#edf4f8;color:#145f89}
.state-report-filters{padding:0;overflow:visible}
.state-report-filter-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:23px 25px 18px;border-bottom:1px solid var(--border)}
.state-report-filter-heading .eyebrow{margin-bottom:8px}
.state-report-filter-heading h2{margin:0 0 6px;font:700 23px var(--portal-font)}
.state-report-filter-heading p{margin:0;color:var(--muted);font-size:.82rem}
.state-production-badge{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:7px 11px;border:1px solid #b9d8ca;border-radius:999px;background:#eaf6f0;color:#25674f;font-size:.72rem;font-weight:850}
.state-production-badge::before{content:"✓";font-weight:900}
.state-filter-errors{display:flex;flex-wrap:wrap;gap:7px 14px;margin:18px 25px 0;padding:12px 14px;border:1px solid #e4b6b6;border-radius:8px;background:#fbecec;color:#8c3030;font-size:.82rem}
.state-report-primary-filters,.state-report-secondary-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:22px 25px}
.state-report-primary-filters .field,.state-report-secondary-filters .field{min-width:0}
.state-report-primary-filters label,.state-report-secondary-filters label{font-size:.82rem}
.state-report-primary-filters .form-control,.state-report-secondary-filters .form-control{min-height:38px}
.state-filter-emphasis{padding:11px;border:1px solid #d6c8e5;border-radius:8px;background:#faf7fd}
.state-filter-emphasis label{color:#54327d}
.state-filter-emphasis small{display:block;margin-top:6px;color:#6f7f8e;font-size:.68rem;line-height:1.4}
.state-report-more-filters{margin:0 25px;border:1px solid #d6e0e7;border-radius:8px;background:var(--light)}
.state-report-more-filters>summary{padding:13px 15px;color:#254860;font-size:.82rem;font-weight:850;cursor:pointer;user-select:none}
.state-report-more-filters[open]>summary{border-bottom:1px solid #dce5eb;background:#f1f6f8}
.state-report-secondary-filters{grid-template-columns:repeat(4,minmax(0,1fr));padding:18px}
.state-report-filter-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:19px 25px 23px}
.state-report-section-nav{position:sticky;z-index:8;top:102px;display:flex;align-items:center;gap:7px;margin:0 0 27px;padding:9px;border:1px solid #d2dde5;border-radius:var(--r);background:rgba(255,255,255,.96);box-shadow:0 4px 15px rgba(22,47,66,.08);overflow-x:auto;scrollbar-width:thin}
.state-report-section-nav a{flex:0 0 auto;padding:8px 11px;border-radius:8px;color:#405d73;font-size:.76rem;font-weight:850;white-space:nowrap}
.state-report-section-nav a:hover,.state-report-section-nav a:focus{background:#ede5f6;color:#5c3686}
.state-report-section{scroll-margin-top:165px;margin-bottom:26px}
.state-report-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:15px}
.state-report-section-heading .eyebrow{margin-bottom:8px}
.state-report-section-heading h2{margin:0 0 5px;font:700 25px var(--portal-font)}
.state-report-section-heading p{margin:0;color:var(--muted);font-size:.82rem}
.state-report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.state-report-kpi{display:flex;align-items:center;gap:12px;min-width:0;min-height:0;padding:14px 16px;border:1px solid var(--border);border-radius:var(--r);background:var(--card);box-shadow:var(--shadow)}
.state-kpi-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:10px;font-size:1.1rem;font-weight:900}
.state-report-kpi>div{min-width:0}
.state-report-kpi small,.state-report-kpi strong,.state-report-kpi em{display:block}
.state-report-kpi small{margin:2px 0 5px;color:#667a8b;font-size:.74rem;font-weight:850}
.state-report-kpi strong{color:#102c47;font:700 30px/1 var(--portal-font)}
.state-report-kpi em{margin-top:7px;color:#7a8996;font-size:.68rem;font-style:normal;line-height:1.35}
.state-report-card{overflow:hidden}
.state-report-card>.card-heading{min-height:0;padding:22px 24px 18px}
.state-report-card>.card-heading .eyebrow{margin-bottom:7px}
.state-report-card>.card-heading h2{font-size:23px}
.state-report-card>.card-heading p{max-width:880px;line-height:1.45}
.state-report-card>.card-heading>.btn{flex:0 0 auto;white-space:nowrap}
.state-report-table-wrap{max-width:100%;overflow:auto}
.state-report-table{font-variant-numeric:tabular-nums}
.state-report-table th{padding:11px 12px;background:var(--light);color:#587083;font-size:.64rem;line-height:1.3;white-space:normal}
.state-report-table td{padding:12px;font-size:.78rem;line-height:1.35;vertical-align:middle}
.state-report-table td small{display:block;margin-top:3px;color:var(--muted);font-size:.68rem;line-height:1.35}
.state-report-table tbody tr:hover{background:var(--light)}
.state-troop-table{min-width:760px}
.state-troop-table th:not(:first-child),.state-troop-table td:not(:first-child),.state-location-troop-table th:not(:first-child),.state-location-troop-table td:not(:first-child),.state-support-table th:not(:first-child),.state-support-table td:not(:first-child){text-align:center}
.state-troop-table th:first-child,.state-troop-table td:first-child{position:sticky;left:0;z-index:2;width:170px;background:var(--card);box-shadow:5px 0 8px rgba(24,48,68,.04)}
.state-troop-table thead th:first-child{z-index:4;background:var(--light)}
.state-dre-table{min-width:650px}
.state-dre-table th:first-child{width:170px}
.state-dre-table th:nth-child(2){width:185px}
.state-dre-table th:nth-child(n+3),.state-dre-table td:nth-child(n+3){text-align:center}
.state-drug-table{min-width:900px}
.state-drug-table th:nth-child(n+2):not(:last-child),.state-drug-table td:nth-child(n+2):not(:last-child){text-align:center}
.state-drug-table .report-outcome-breakdown{min-width:190px}
.report-outcome-link{color:var(--muted);font-weight:750;text-decoration:underline;text-decoration-color:#b5c0c9;text-underline-offset:2px}
.report-outcome-link:hover,.report-outcome-link:focus{color:var(--p);text-decoration-color:currentColor}
.report-drilldown-notice{display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap;padding:12px 18px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#f3f8fb;color:#4e687b;font-size:.76rem}
.report-drilldown-notice strong{color:#173d58}
.report-drilldown-notice a{margin-left:auto;font-weight:800}
.state-report-table td .report-record-reason{margin-top:6px;padding-left:8px;border-left:3px solid #d5b95d;color:#5c6f7d;font-weight:650}
.state-report-definition{padding:13px 18px;border-top:1px solid var(--border);background:var(--light);color:#5d7081;font-size:.77rem;line-height:1.5}
.state-annual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:0 22px 20px}
.state-annual-table-block{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:10px;background:var(--card)}
.state-annual-table-block>h3{margin:0;padding:16px 16px 4px;font:700 18px var(--portal-font)}
.state-annual-table-block>p{margin:0;padding:0 16px 13px;color:var(--muted);font-size:.72rem;line-height:1.4}
.state-annual-table-block table{margin:0}
.state-annual-table-block th:last-child,.state-annual-table-block td:last-child{width:145px;text-align:center}
.state-annual-outcomes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 22px 20px}
.state-annual-outcomes>div{min-width:0;padding:13px 14px;border:1px solid #dfe7ec;border-radius:8px;background:var(--light)}
.state-annual-outcomes small,.state-annual-outcomes strong{display:block}
.state-annual-outcomes small{color:#667a89;font-size:.68rem;font-weight:850;line-height:1.35;text-transform:uppercase;letter-spacing:.04em}
.state-annual-outcomes strong{margin-top:6px;color:#15374f;font:700 23px var(--portal-font)}
.state-summary-drilldown-card{transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.state-summary-drilldown-card>a{display:block;color:inherit;text-decoration:none}
.state-support-summary>.state-summary-drilldown-card:has(>a),.state-annual-outcomes>.state-summary-drilldown-card:has(>a){padding:0}
.state-support-summary>.state-summary-drilldown-card>a{height:100%;padding:14px}
.state-annual-outcomes>.state-summary-drilldown-card>a{height:100%;padding:13px 14px}
.state-summary-drilldown-card>a:focus-visible{outline:3px solid rgba(111,63,164,.26);outline-offset:4px;border-radius:8px}
.state-summary-drilldown-card:has(>a):hover{border-color:#bba5d4;box-shadow:0 7px 16px rgba(63,39,93,.1);transform:translateY(-1px)}
.state-summary-drilldown-card em{display:block;margin-top:7px;color:#684093;font-size:.69rem;font-style:normal;font-weight:850;line-height:1.35}
.state-annual-table-block td a{font-weight:750;text-decoration:none}
.state-annual-table-block td a:hover{text-decoration:underline}
.state-summary-drilldown{border-top:1px solid var(--border);background:var(--light)}
.state-summary-drilldown-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 18px;border-bottom:1px solid var(--border);background:var(--card)}
.state-summary-drilldown-heading h3{margin:0 0 5px;font:700 22px var(--portal-font);color:#102f49}
.state-summary-drilldown-heading p:not(.eyebrow){margin:0;color:var(--muted);font-size:.78rem;line-height:1.45}
.state-summary-drilldown-heading>.btn{flex:0 0 auto;white-space:nowrap}
.state-summary-roster-table{min-width:1040px}
.state-summary-agency-table{min-width:680px}
.state-summary-evaluation-table{min-width:1320px}
.state-summary-evaluation-table th:nth-child(4),.state-summary-evaluation-table td:nth-child(4){min-width:150px}
.state-summary-evaluation-table th:last-child,.state-summary-evaluation-table td:last-child{position:sticky;right:0;z-index:3;background:var(--card);box-shadow:-6px 0 10px rgba(24,48,68,.07)}
.state-summary-evaluation-table thead th:last-child{z-index:5;background:var(--light)}
.state-support-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:18px 22px}
.state-support-summary>div{padding:14px;border:1px solid #dde5eb;border-radius:8px;background:var(--light)}
.state-support-summary small,.state-support-summary strong{display:block}
.state-support-summary small{color:#6b7d8c;font-size:.69rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}
.state-support-summary strong{margin-top:6px;color:#143650;font:700 25px var(--portal-font)}
.state-dre-table-wrap{max-height:910px;overflow-y:auto}
.state-dre-table-wrap .state-dre-table thead th{position:sticky;top:0;z-index:4}
.state-dre-table-wrap .state-dre-table tbody tr{height:72px}
.state-record-table-wrap{max-height:620px;border-radius:0}
.state-record-table{min-width:1620px}
.state-record-table thead th{position:sticky;top:0;z-index:4}
.state-record-table th:first-child,.state-record-table td:first-child{width:125px}
.state-record-table th:nth-child(2),.state-record-table td:nth-child(2){width:105px}
.state-record-table th:nth-child(3),.state-record-table td:nth-child(3){width:155px}
.state-record-table th:nth-child(4),.state-record-table td:nth-child(4){width:165px}
.state-record-table th:nth-child(5),.state-record-table td:nth-child(5),.state-record-table th:nth-child(6),.state-record-table td:nth-child(6){width:185px}
.state-record-table th:nth-child(7),.state-record-table td:nth-child(7){width:150px}
.state-record-table th:nth-child(8),.state-record-table td:nth-child(8){width:155px}
.state-record-table th:nth-child(9),.state-record-table td:nth-child(9){width:170px}
.state-record-table th:nth-child(10),.state-record-table td:nth-child(10){width:150px}
.state-record-table th:nth-child(11),.state-record-table td:nth-child(11){width:130px}
.state-record-table th:last-child,.state-record-table td:last-child{position:sticky;right:0;z-index:3;width:210px;background:var(--card);box-shadow:-6px 0 10px rgba(24,48,68,.07)}
.state-record-table thead th:last-child{z-index:6;background:var(--light)}
.state-record-table .evaluation-action-buttons{flex-wrap:nowrap}
.state-report-card .pagination-bar{padding:14px 18px}
.personal-report-card{margin-bottom:24px}
.personal-report-filter-sections{padding:0 25px}
.personal-report-filter-section{padding:19px 0;border-bottom:1px solid var(--border)}
.personal-report-filter-section:last-child{border-bottom:0}
.personal-report-filter-section h3{margin:0 0 13px;color:#516a7d;font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.personal-report-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.personal-report-filter-grid .field{min-width:0}
.personal-report-filter-grid label{font-size:.82rem}
.personal-report-filter-grid .form-control{min-height:38px}
.personal-report-filter-grid small{display:block;margin-top:6px;color:#6f7f8e;font-size:.68rem;line-height:1.4}
.personal-report-display-section .personal-report-filter-grid{grid-template-columns:minmax(240px,1fr) repeat(3,minmax(0,1fr))}
.personal-drug-table{min-width:650px}
.personal-drug-table th:not(:first-child),.personal-drug-table td:not(:first-child){text-align:center}
.personal-record-table-wrap{max-height:620px}
.personal-record-table{min-width:1180px}
.personal-record-table thead th{position:sticky;top:0;z-index:4}
.personal-record-table th:last-child,.personal-record-table td:last-child{position:sticky;right:0;z-index:3;width:210px;background:var(--card);box-shadow:-6px 0 10px rgba(24,48,68,.07)}
.personal-record-table thead th:last-child{z-index:6;background:var(--light)}
.personal-record-table .evaluation-action-buttons{flex-wrap:nowrap}
.personal-report-location strong,.personal-report-location small,.personal-report-date strong,.personal-report-date small{display:block}
.personal-report-location small,.personal-report-date small{margin-top:4px;color:var(--muted)}
@media(max-width:1320px){.state-report-primary-filters,.state-report-secondary-filters{grid-template-columns:repeat(3,minmax(0,1fr))}
.state-report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
.personal-report-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.personal-report-display-section .personal-report-filter-grid{grid-template-columns:minmax(240px,1fr) repeat(2,minmax(0,1fr))}}
@media(max-width:940px){.state-report-heading{align-items:flex-start}
.state-report-heading-actions{width:100%;justify-content:flex-start;margin-left:0}
.state-report-primary-filters,.state-report-secondary-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
.state-report-section-nav{top:88px}
.state-support-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
.personal-report-filter-grid,.personal-report-display-section .personal-report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.state-annual-grid{grid-template-columns:1fr}
.state-annual-outcomes{grid-template-columns:repeat(2,minmax(0,1fr))}
.state-summary-drilldown-heading{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.state-report-heading-actions{display:grid;grid-template-columns:1fr;width:100%}
.state-report-heading-actions>.btn,.state-report-export-menu,.state-report-export-menu>summary{width:100%}
.state-report-export-popover{right:auto;left:0;width:min(285px,calc(100vw - 40px))}
.state-report-filter-heading{align-items:flex-start;flex-direction:column}
.state-report-primary-filters,.state-report-secondary-filters,.state-report-kpis,.state-support-summary{grid-template-columns:1fr}
.personal-report-filter-sections{padding-left:18px;padding-right:18px}
.personal-report-filter-grid,.personal-report-display-section .personal-report-filter-grid{grid-template-columns:1fr}
.state-annual-grid,.state-annual-outcomes{grid-template-columns:1fr;padding-left:14px;padding-right:14px}
.state-report-primary-filters{padding:18px}
.state-report-more-filters{margin:0 18px}
.state-report-filter-actions{align-items:stretch;flex-direction:column;padding-left:18px;padding-right:18px}
.state-report-filter-actions .btn{width:100%}
.report-drilldown-notice a{width:100%;margin-left:0}
.state-report-section-nav{top:80px;margin-left:-8px;margin-right:-8px;border-radius:8px}
.state-report-section{scroll-margin-top:145px}
.state-report-card>.card-heading{align-items:flex-start;flex-direction:column}
.state-support-summary{padding:14px}
.state-summary-drilldown-heading{padding:18px 14px}
.state-summary-drilldown-heading>.btn{width:100%}}
.drawing-upload{display:block}
.drawing-upload>.file-drop-zone-compact{min-height:90px;margin-top:8px;padding:12px}
.drawing-upload>.file-drop-zone-compact .file-drop-icon{width:30px;height:30px;font-size:20px}
.panel,.data-card{width:auto;max-width:100%}
.panel,.data-card,.metric-card,.program-card,.form-field,.field,
.page-heading>*,.panel-heading>*,.card-heading>*,.actions>*,
.dashboard-stats>*,.dashboard-grid>*,.detail-grid>*,.form-grid>*,
.data-form-grid>*,.report-filter-grid>*,.state-report-primary-filters>*,
.state-report-secondary-filters>*{min-width:0}
.actions{flex-wrap:wrap}
.table-wrap{width:100%;max-width:100%}
.qualification-badge,.permission-badge,.permission-chip,.status-pill{max-width:100%;white-space:normal;text-align:left}
.admin-user-table.user-control-table .action-header,
.admin-user-table.user-control-table .row-actions{width:auto;min-width:0;padding-left:7px;padding-right:7px}
.user-control-table .row-action-buttons{align-items:stretch;flex-direction:column;gap:5px}
.user-control-table .row-action-buttons .btn{width:100%;padding-left:7px;padding-right:7px}
@media(max-width:1050px){.user-control-table .row-action-buttons{align-items:center;justify-content:flex-start;flex-direction:row;flex-wrap:wrap}
.user-control-table .row-action-buttons .btn{width:auto;min-width:72px}}
@media(max-width:820px){.responsive-card-table-wrap{overflow-x:hidden;padding:4px;background:#f4f7f9;border-radius:10px}
.responsive-card-table,.responsive-card-table tbody{display:block;width:100%;min-width:0!important}
.responsive-card-table thead{display:none}
.responsive-card-table tbody{display:grid;gap:11px}
.responsive-card-table tbody tr{display:block;padding:7px 11px;border:1px solid #dbe3e9;border-radius:10px;background:var(--card);box-shadow:0 2px 5px rgba(24,45,63,.05)}
.responsive-card-table tbody tr[hidden]{display:none!important}
.responsive-card-table td{position:relative;display:block;width:auto!important;min-width:0!important;min-height:42px;padding:10px 9px 10px 132px;border-bottom:1px solid #e7ecef;text-align:left!important;overflow-wrap:anywhere}
.responsive-card-table td[data-label]::before{content:attr(data-label);position:absolute;top:10px;left:9px;width:112px;color:#647889;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.responsive-card-table td:last-child{border-bottom:0}
.responsive-card-table td[colspan]{padding-left:9px}
.responsive-card-table .row-actions{width:auto!important;min-width:0!important;padding-left:132px;padding-right:9px}
.responsive-card-table .row-action-buttons{justify-content:flex-start;flex-wrap:wrap}
.responsive-card-table .row-action-buttons .btn{white-space:normal}
.responsive-card-table .qualification-badge,.responsive-card-table .permission-badge{width:auto;max-width:100%}
.global-mobile-table .row-actions{display:block;width:auto!important;min-width:0!important}
.global-mobile-table .row-action-buttons{
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch;justify-content:stretch;width:100%;gap:8px;white-space:normal
  }
.global-mobile-table .row-action-buttons form{width:100%;min-width:0}
.global-mobile-table .row-action-buttons .btn,
  .global-mobile-table .row-actions>.btn,
  .global-mobile-table .row-actions>form>.btn{
    display:flex;width:100%;min-width:0;min-height:42px;
    align-items:center;justify-content:center;white-space:normal
  }
.mobile-evaluation-table-wrap{max-height:none!important;overflow-x:hidden!important;overflow-y:visible!important}
.mobile-evaluation-table td{white-space:normal;overflow-wrap:break-word;word-break:normal}
.mobile-evaluation-table td:last-child,
  .state-record-table.mobile-evaluation-table td:last-child,
  .personal-record-table.mobile-evaluation-table td:last-child,
  .state-summary-evaluation-table.mobile-evaluation-table td:last-child{
    position:static;right:auto;z-index:auto;width:auto;background:transparent;box-shadow:none
  }
.mobile-evaluation-table .row-actions{display:block;padding-left:132px}
.mobile-evaluation-table .evaluation-action-buttons{
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px;white-space:normal
  }
.mobile-evaluation-table .evaluation-action-buttons .btn{
    display:flex;width:100%;min-width:0;min-height:42px;justify-content:center;white-space:normal
  }
.mobile-evaluation-table .row-actions>.btn{width:100%;white-space:normal}}
@media(max-width:900px){.page-heading{align-items:flex-start;flex-direction:column}
.page-heading-actions{width:100%;margin-left:0;justify-content:flex-start}
.page-heading h1,.dashboard-intro h1{font-size:clamp(32px,6vw,38px)}}
@media(max-width:700px){.panel-heading:not(.admin-list-heading),.card-heading{align-items:flex-start;flex-direction:column}
.panel-heading:not(.admin-list-heading)>.actions,.card-heading>.actions{width:100%;justify-content:flex-start}
.compact-page-actions,.program-user-actions{width:100%;justify-content:flex-start}
.cert-date-card{grid-template-columns:1fr}
.cert-date-card strong{text-align:left}
.pagination,.pagination-bar{justify-content:flex-start;flex-wrap:wrap}
.login-card{padding:28px 22px}}
@media(max-width:620px){.panel:not(.data-only-form):not(.state-report-filters){padding:16px}
.data-form-section,.submission-options{padding-left:17px;padding-right:17px}
.error-summary{margin-left:17px;margin-right:17px}
.page-heading-actions>.btn,.page-heading-actions>form{flex:1 1 100%;width:100%}
.page-heading-actions>form .btn{width:100%}
.user-control-table td,.responsive-card-table td{padding:10px 8px}
.user-control-table td::before,.responsive-card-table td[data-label]::before{position:static;display:block;width:auto;margin-bottom:5px}
.responsive-card-table .row-actions{padding-left:8px;padding-right:8px}
.mobile-evaluation-table .row-actions{padding-left:8px;padding-right:8px}
.draft-toolbar .actions,.user-editor-action-bar .actions,.search-results-form .actions{grid-template-columns:1fr}
.intake-actions{align-items:stretch;flex-direction:column}}
.portal-responsive-table td .status-badge,
.portal-responsive-table td .badge,
.portal-responsive-table td .status-pill,
.portal-responsive-table td .btn{
  overflow-wrap:normal;
  word-break:normal;
}
.cert-admin-table table{min-width:max(100%,75rem)}
.cert-admin-table th:nth-child(3),.cert-admin-table td:nth-child(3),
.cert-admin-table th:nth-child(5),.cert-admin-table td:nth-child(5),
.cert-admin-table th:nth-child(6),.cert-admin-table td:nth-child(6),
.cert-admin-table th:nth-child(7),.cert-admin-table td:nth-child(7),
.cert-admin-table th:nth-child(8),.cert-admin-table td:nth-child(8){white-space:nowrap}
@media(max-width:1800px) and (min-width:821px){.panel-heading,.card-heading{align-items:flex-start;flex-wrap:wrap}
.panel-heading>div:first-child,.card-heading>div:first-child{flex:1 1 30rem}
.panel-heading>.actions,.card-heading>.actions{justify-content:flex-start}
.portal-responsive-table .row-action-buttons{flex-wrap:wrap}
.portal-responsive-table.has-evaluation-actions .evaluation-action-buttons{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%;
    gap:7px;
    white-space:normal;
  }
.portal-responsive-table.has-evaluation-actions .evaluation-action-buttons .btn,
  .portal-responsive-table.has-evaluation-actions .evaluation-action-buttons form{
    width:100%;
    min-width:0;
  }
.portal-responsive-table.has-evaluation-actions .evaluation-action-buttons form .btn{
    width:100%;
  }}
.arresting-officer-field{position:relative}
.arresting-officer-input-wrap{position:relative}
.arresting-officer-suggestions{
  position:absolute;
  z-index:25;
  top:calc(100% + 5px);
  left:0;
  right:0;
  max-height:260px;
  overflow-y:auto;
  padding:6px;
  border:1px solid #cbd8e1;
  border-radius:8px;
  background:var(--card);
  box-shadow:0 12px 28px rgba(18,43,61,.18);
}
.arresting-officer-suggestions button{
  display:block;
  width:100%;
  padding:10px 12px;
  border:0;
  border-radius:8px;
  background:transparent;
  color:var(--text);
  font:inherit;
  font-size:.82rem;
  font-weight:750;
  line-height:1.4;
  text-align:left;
  cursor:pointer;
}
.arresting-officer-suggestions button:hover,
.arresting-officer-suggestions button:focus{background:#eef5f9;outline:0}
.arresting-officer-suggestions p{margin:0;padding:10px 12px;color:var(--muted);font-size:.78rem;line-height:1.45}
.portal-responsive-table.has-action-column th:last-child,
.portal-responsive-table.has-action-column td:last-child,
.action-header,
.row-actions{
  width:68px!important;
  min-width:68px!important;
  max-width:68px;
  box-sizing:border-box;
  text-align:center!important;
}
.row-actions{
  overflow:visible!important;
  white-space:normal!important;
}
.row-action-menu-panel .row-action-buttons,
.row-action-menu-panel .evaluation-action-buttons{
  display:contents!important;
}
.state-report-analysis-scope{margin:0 25px 18px;border:1px solid #d6e0e7;border-radius:10px;background:#f8fbfc;overflow:hidden}
.state-report-analysis-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 17px 10px;border-bottom:1px solid #e0e8ed}
.state-report-analysis-heading strong,.state-report-analysis-heading small{display:block}
.state-report-analysis-heading strong{color:#23445d;font-size:.86rem}
.state-report-analysis-heading small{margin-top:4px;color:var(--muted);font-size:.72rem;line-height:1.4}
.state-report-analysis-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:16px}
.state-report-analysis-filters .field{min-width:0}
.state-report-analysis-filters label{font-size:.78rem}
.state-report-analysis-filters .form-control{min-height:38px}
.state-report-analysis-filters .field>small{display:block;margin-top:5px;color:var(--muted);font-size:.66rem;line-height:1.35}
.state-report-breakdown-controls{min-width:0;margin:18px 25px 0;padding:0;border:0}
.state-report-breakdown-controls legend{padding:0;color:#23445d;font-size:.86rem;font-weight:850}
.state-report-breakdown-controls>p{margin:4px 0 10px;color:var(--muted);font-size:.72rem}
.state-report-breakdown-tabs{display:flex;flex-wrap:wrap;gap:7px}
.report-breakdown-table{min-width:650px}
.report-breakdown-table th:nth-child(n+2),.report-breakdown-table td:nth-child(n+2){text-align:center}
.day-time-breakdown-table{min-width:960px}
.day-time-breakdown-table th,.day-time-breakdown-table td{text-align:center}
.day-time-breakdown-table th:first-child{text-align:left;white-space:nowrap}
.day-time-breakdown-table td a{display:block;color:inherit;font-weight:900}
.day-time-breakdown-table .heat-level-0{background:#f7f9fa;color:#82919c}
.day-time-breakdown-table .heat-level-1{background:#eee6f6;color:#5d3d81}
.day-time-breakdown-table .heat-level-2{background:#ddcdee;color:#533276}
.day-time-breakdown-table .heat-level-3{background:#c3a4e0;color:#3e205e}
.day-time-breakdown-table .heat-level-4{background:#9165bd;color:#fff}
.day-time-breakdown-table .heat-level-5{background:#5f348c;color:#fff}
@media(max-width:1100px){.state-report-analysis-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.state-report-analysis-scope{margin-left:18px;margin-right:18px}
.state-report-analysis-filters{grid-template-columns:1fr}
.state-report-breakdown-controls{margin-left:18px;margin-right:18px}
.state-report-breakdown-tabs{display:grid;grid-template-columns:1fr 1fr}}
.portal-user-report-tabs{display:flex;gap:7px;margin:0 0 22px;padding:7px;border:1px solid #d2dde5;border-radius:10px;background:var(--card);box-shadow:0 3px 12px rgba(22,47,66,.06)}
.portal-user-report-tabs a{padding:9px 14px;border-radius:8px;color:#405d73;font-size:.8rem;font-weight:850}
.portal-user-report-tabs a:hover,.portal-user-report-tabs a:focus-visible{background:#edf4f8;color:#145f89}
.portal-user-report-tabs a.active{background:#173f5b;color:#fff}
.agency-delete-confirmation .message span{display:block;margin-top:6px}
.import-resolution-form .form-control{grid-column:1/-1;margin:0}
@media(max-width:900px){.import-resolution-form .form-control{grid-column:auto}}
@media(max-width:1800px) and (min-width:821px){.portal-responsive-table.has-evaluation-actions .evaluation-action-buttons{
    display:contents;
  }}
@media(max-width:820px){.responsive-card-table .row-actions,
  .global-mobile-table .row-actions,
  .mobile-evaluation-table .row-actions{
    display:flex!important;
    width:auto!important;
    min-width:0!important;
    max-width:none;
    align-items:center;
    justify-content:space-between;
    padding-left:132px;
    text-align:right!important;
  }}
@media(max-width:620px){.responsive-card-table .row-actions,
  .global-mobile-table .row-actions,
  .mobile-evaluation-table .row-actions{
    padding-left:8px;
  }}
.portal-responsive-table.has-action-column th:last-child,
.portal-responsive-table.has-action-column td:last-child,
.portal-responsive-table.has-evaluation-actions th:last-child,
.portal-responsive-table.has-evaluation-actions td:last-child,
.action-header,
.row-actions{
  width:92px!important;
  min-width:92px!important;
  max-width:none;
  padding-left:12px!important;
  padding-right:12px!important;
  box-sizing:border-box;
}
.portal-responsive-table.has-action-column th:last-child,
.portal-responsive-table.has-action-column td:last-child,
.compliance-table.has-actions th:last-child,
.compliance-table.has-actions td:last-child,
.rolling-management-table .row-actions,
.rolling-management-table thead .action-header,
.state-summary-evaluation-table th:last-child,
.state-summary-evaluation-table td:last-child,
.state-record-table th:last-child,
.state-record-table td:last-child,
.personal-record-table th:last-child,
.personal-record-table td:last-child{
  right:auto!important;
  box-shadow:none!important;
}
.portal-responsive-table.has-action-column td:last-child,
.compliance-table.has-actions td:last-child,
.rolling-management-table .row-actions,
.state-summary-evaluation-table td:last-child,
.state-record-table td:last-child,
.personal-record-table td:last-child,
.row-actions{
  z-index:auto!important;
  background:transparent!important;
}
@media(max-width:820px){.portal-responsive-table.has-action-column th:last-child,
  .portal-responsive-table.has-action-column td:last-child,
  .portal-responsive-table.has-evaluation-actions th:last-child,
  .portal-responsive-table.has-evaluation-actions td:last-child,
  .responsive-card-table .row-actions,
  .global-mobile-table .row-actions,
  .mobile-evaluation-table .row-actions{
    width:auto!important;
    min-width:0!important;
    max-width:none;
  }
.responsive-card-table .row-actions,
  .global-mobile-table .row-actions,
  .mobile-evaluation-table .row-actions{
    padding-left:132px!important;
    padding-right:12px!important;
  }}
@media(max-width:620px){.responsive-card-table .row-actions,
  .global-mobile-table .row-actions,
  .mobile-evaluation-table .row-actions{
    padding-left:8px!important;
    padding-right:8px!important;
  }}
.btn.success{background:#287d5d;border-color:#287d5d;color:#fff;box-shadow:0 3px 6px rgba(40,125,93,.16)}
.btn.success:hover:not(:disabled),.btn.success:focus-visible{background:#1f664b;border-color:#1f664b;color:#fff}
.user-center-server-search .form-control{width:min(390px,100%);margin:0}
.row-action-menu-panel .row-action-buttons,
.row-action-menu-panel .evaluation-action-buttons{
  display:grid!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  grid-template-columns:1fr!important;
  grid-auto-rows:min-content;
  align-content:start;
  gap:3px!important;
}
.row-action-menu-panel .row-action-menu-item:not(.primary):not(.success):not(.danger){background:#f5f7f9!important;color:var(--text)!important}
.row-action-menu-panel .success{background:#e4f3ec!important;color:#236c51!important}
.row-action-menu-panel .success:hover,
.row-action-menu-panel .success:focus-visible{background:#d1eadf!important;color:#1b5941!important}
@media(max-width:620px){.user-center-server-search .form-control{grid-column:1/-1;width:100%}}
.row-action-menu-panel .row-action-menu-item:not(.primary):not(.success):not(.danger):hover{
  background:#dceaf1!important;
  color:#0e5c80!important;
  box-shadow:inset 3px 0 0 var(--row-action-accent)!important;
}
.row-action-menu-panel .row-action-menu-item:not(.primary):not(.success):not(.danger):focus-visible{
  background:#dceaf1!important;
  color:#0e5c80!important;
  box-shadow:inset 3px 0 0 var(--row-action-accent)!important;
  outline:2px solid var(--row-action-accent);
  outline-offset:-2px;
}
.row-action-menu-panel .row-action-menu-item:not(.primary):not(.success):not(.danger):hover,
.row-action-menu-panel .row-action-menu-item:not(.primary):not(.success):not(.danger):focus-visible,
.row-action-menu-panel .primary:hover,
.row-action-menu-panel .primary:focus-visible,
.row-action-menu-panel .success:hover,
.row-action-menu-panel .success:focus-visible,
.row-action-menu-panel .danger:hover,
.row-action-menu-panel .danger:focus-visible{
  box-shadow:
    inset 3px 0 0 var(--row-action-accent),
    inset -3px 0 0 var(--row-action-accent)!important;
}
.agency-center-search select.form-control{width:auto;min-width:170px}
@media(max-width:620px){.agency-center-search select.form-control{width:100%}}
.admin-center-card.blue{--admin-accent:#176b98;--admin-soft:#e7f2f8}
.admin-center-card.green{--admin-accent:#27885e;--admin-soft:#e6f5ee}
.admin-center-card.gold{--admin-accent:#b97813;--admin-soft:#fff2db}
.admin-center-card.purple{--admin-accent:#6b3fa0;--admin-soft:#f1e9f8}
.admin-center-card.red{--admin-accent:#b74141;--admin-soft:#fbeaea}
.state-report-filter-groups{overflow:hidden}
.state-filter-group{padding:22px 25px;border-bottom:1px solid var(--border)}
.state-filter-group-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:17px}
.state-filter-group-heading>span{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:#e5f2f8;color:#16678f;font-weight:900}
.state-filter-group-heading h3{margin:1px 0 4px;color:var(--text);font:700 19px var(--portal-font)}
.state-filter-group-heading p{margin:0;color:var(--muted);font-size:.73rem;line-height:1.4}
.state-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px 20px}
.state-filter-grid .field{min-width:0}
.state-filter-grid label{font-size:.81rem}
.state-filter-grid .form-control{min-height:38px}
.state-filter-grid small{display:block;margin-top:6px;color:var(--muted);font-size:.67rem;line-height:1.4}
.state-filter-grid .field-label-row{display:flex;align-items:center;gap:7px;margin-bottom:7px}
.state-filter-grid .field-label-row label{margin:0}
.state-quick-view-nav{position:sticky;z-index:8;top:102px;display:flex;align-items:center;gap:8px;margin:0 0 20px;padding:10px;border:1px solid #d4dee6;border-radius:var(--r);background:rgba(255,255,255,.97);box-shadow:0 5px 17px rgba(22,47,66,.09);overflow-x:auto}
.state-quick-view-nav>span{flex:0 0 auto;padding:0 8px;color:#6c7f8e;font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.state-quick-view-nav a{flex:0 0 auto;padding:10px 13px;border:1px solid var(--border);border-radius:8px;color:#29475d;font-size:.78rem;font-weight:850;white-space:nowrap}
.state-quick-view-nav a:hover,.state-quick-view-nav a:focus,.state-quick-view-nav a.active{border-color:#8d65b6;background:#7650a2;color:#fff}
.state-view-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 20px;padding:16px 18px;border:1px solid var(--border);border-radius:var(--r);background:var(--card);box-shadow:var(--shadow)}
.state-view-breadcrumb{display:flex;align-items:center;gap:8px;min-width:0;color:#5b7081;font-size:.82rem}
.state-view-breadcrumb a{font-weight:850}
.state-view-breadcrumb strong{color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.state-overview-card{margin-bottom:22px}
.compact-report-card{margin-bottom:18px}
.compact-report-card>.card-heading{padding-top:17px;padding-bottom:14px}
.compact-report-card .state-report-table th,.compact-report-card .state-report-table td{padding-top:10px;padding-bottom:10px}
.state-report-table .state-row-action{display:block;margin-top:.35rem;font-size:.7rem;font-weight:850}
.compact-roster-summary>.state-summary-drilldown-card,
.compact-outcome-grid>.state-summary-drilldown-card{display:block;min-width:0;padding:13px 14px;border:1px solid #dfe7ec;border-radius:8px;background:var(--light);color:inherit;text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.compact-roster-summary>.state-summary-drilldown-card:hover,
.compact-outcome-grid>.state-summary-drilldown-card:hover{border-color:#bba5d4;box-shadow:0 7px 16px rgba(63,39,93,.1);transform:translateY(-1px)}
.compact-roster-summary>.state-summary-drilldown-card small,
.compact-roster-summary>.state-summary-drilldown-card strong,
.compact-outcome-grid>.state-summary-drilldown-card small,
.compact-outcome-grid>.state-summary-drilldown-card strong{display:block}
.compact-roster-summary>.state-summary-drilldown-card small,
.compact-outcome-grid>.state-summary-drilldown-card small{color:#667a89;font-size:.67rem;font-weight:850;line-height:1.35;text-transform:uppercase;letter-spacing:.04em}
.compact-roster-summary>.state-summary-drilldown-card strong,
.compact-outcome-grid>.state-summary-drilldown-card strong{margin-top:6px;color:#15374f;font:700 23px var(--portal-font)}
.compact-roster-summary>.state-summary-drilldown-card em,
.compact-outcome-grid>.state-summary-drilldown-card em{display:block;margin-top:7px;color:#684093;font-size:.68rem;font-style:normal;font-weight:850;line-height:1.35}
@media(max-width:1100px){.state-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.state-filter-group{padding-left:18px;padding-right:18px}
.state-filter-grid{grid-template-columns:1fr}
.state-quick-view-nav{top:80px;margin-left:-8px;margin-right:-8px;border-radius:8px}
.state-view-toolbar{align-items:stretch;flex-direction:column}
.state-view-toolbar .actions{width:100%}
.state-view-toolbar .btn{flex:1}}
.report-heading.state-report-heading{margin-bottom:12px}
.report-heading.state-report-heading h1{margin-bottom:4px;font-size:24px}
.report-heading.state-report-heading .muted{margin-bottom:0;font-size:.78rem}
.report-heading.state-report-heading .state-report-scope-note{margin-top:6px;padding:5px 9px;font-size:.67rem;line-height:1.3}
.state-report-filters{margin-bottom:16px}
.state-report-filter-heading{align-items:center;padding:10px 16px 9px}
.state-report-filter-heading .eyebrow{margin-bottom:2px;font-size:.58rem}
.state-report-filter-heading h2{margin:0 0 2px;font-size:17px}
.state-report-filter-heading p{font-size:.68rem;line-height:1.25}
.state-production-badge{padding:5px 8px;font-size:.62rem}
.state-filter-errors{margin:8px 16px 0;padding:8px 10px;font-size:.72rem}
.state-filter-group{padding:8px 16px 10px}
.state-filter-group-heading{align-items:center;gap:7px;margin-bottom:6px}
.state-filter-group-heading>span{flex-basis:22px;width:22px;height:22px;font-size:.7rem}
.state-filter-group-heading h3{margin:0;font-size:15px}
.state-filter-group-heading p{display:none}
.state-filter-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px 10px}
.state-filter-grid label{margin-bottom:3px;font-size:.67rem;line-height:1.15}
.state-filter-grid .form-control{min-height:34px;height:34px;padding:6px 8px;font-size:.76rem}
.state-filter-grid small{margin-top:2px;font-size:.56rem;line-height:1.2}
.state-filter-grid .field-label-row{gap:5px;margin-bottom:3px}
.state-filter-grid .help-tip{width:16px;height:16px;font-size:.58rem}
.state-filter-emphasis{padding:4px 6px;border-radius:8px}
.state-report-filter-actions{padding:9px 16px 11px}
.state-report-filter-actions .btn{padding:8px 13px;font-size:.76rem}
.personal-report-filter-sections{padding:0 16px}
.personal-report-filter-section{padding:9px 0}
.personal-report-filter-section h3{margin:0 0 6px;font-size:.62rem}
.personal-report-filter-grid,
.personal-report-display-section .personal-report-filter-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px 10px}
.personal-report-filter-grid label{margin-bottom:3px;font-size:.67rem;line-height:1.15}
.personal-report-filter-grid .form-control{min-height:34px;height:34px;padding:6px 8px;font-size:.76rem}
.personal-report-filter-grid small{margin-top:2px;font-size:.56rem;line-height:1.2}
@media(min-width:1450px){.state-report-filter-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.state-report-filter-groups>.state-report-filter-heading,
  .state-report-filter-groups>.state-filter-errors,
  .state-report-filter-groups>.state-report-filter-actions{grid-column:1/-1}
.state-report-filter-groups>.state-filter-group:nth-of-type(odd){border-right:1px solid var(--border)}
.state-report-filter-groups>.state-filter-group:nth-of-type(3),
  .state-report-filter-groups>.state-filter-group:nth-of-type(4){border-bottom:0}
.state-report-filter-groups .state-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.personal-report-filter-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}
.personal-report-filter-section:nth-child(odd):not(.personal-report-display-section){padding-right:18px;border-right:1px solid var(--border)}}
@media(max-width:1199px){.state-filter-grid,
  .personal-report-filter-grid,
  .personal-report-display-section .personal-report-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){.state-filter-grid,
  .personal-report-filter-grid,
  .personal-report-display-section .personal-report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.report-heading.state-report-heading h1{font-size:22px}
.report-heading.state-report-heading .state-report-scope-note{display:none}
.state-report-filter-heading{align-items:flex-start;padding:14px 18px}
.state-filter-group{padding:14px 18px}
.state-filter-group-heading p{display:block;font-size:.68rem}
.state-filter-grid,
  .personal-report-filter-grid,
  .personal-report-display-section .personal-report-filter-grid{grid-template-columns:1fr;gap:12px}
.state-filter-grid label,
  .personal-report-filter-grid label{font-size:.79rem}
.state-filter-grid .form-control,
  .personal-report-filter-grid .form-control{min-height:38px;height:38px;font-size:.9rem}
.state-report-filter-actions{padding:14px 18px}}
.sfst-list-filter-actions,
.report-filter-actions,
.rolling-log-filter-actions,
.filter-card-actions,
.state-report-filter-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  width:100%;
  flex-wrap:wrap;
}
.sfst-list-filter-actions,
.report-filter-actions,
.rolling-log-filter-actions,
.filter-card-actions{
  grid-column:1 / -1;
}
@media(min-width:1001px){.admin-list-heading>.user-center-server-search{
    grid-column:2 / 4;
    justify-self:end;
    max-width:100%;
    flex-wrap:wrap;
  }}
@media(max-width:1000px){.admin-list-heading>.user-center-server-search{
    grid-column:1;
    justify-self:stretch;
  }}
@media(max-width:640px){.sfst-list-filter-actions,
  .report-filter-actions,
  .rolling-log-filter-actions,
  .filter-card-actions,
  .state-report-filter-actions{
    align-items:stretch;
    flex-direction:column;
  }
.sfst-list-filter-actions .btn,
  .report-filter-actions .btn,
  .rolling-log-filter-actions .btn,
  .filter-card-actions .btn,
  .state-report-filter-actions .btn,
  .user-center-server-search .page-size-select{
    width:100%;
  }}
.program-record-card.access-disabled>.qualification-badge{opacity:1}
.security-check-row.security-check-password,.security-check-row.security-check-mfa,.security-check-row.security-check-warning,.security-check-row.neutral-control{border:1px solid var(--border);background:var(--card)}
.account-security-editor-card .security-summary-row,
.security-summary-row,
.security-control-box,
.security-check-row.security-check-password,
.security-check-row.security-check-mfa,
.security-check-row.security-check-warning,
.on-call-access-editor {
  border-color: var(--border);
  border-left-width: 1px;
  background: var(--panel, #fff);
  color: inherit;
}
.request-id-link { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.on-call-card-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.on-call-card-heading h3 { font:700 20px var(--portal-font); margin:7px 0 0; }
.on-call-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 24px; margin:20px 0; }
.on-call-card-grid small { display:block; color:var(--muted); font-size:11px; font-weight:800; letter-spacing:.7px; text-transform:uppercase; margin-bottom:5px; }
@media(max-width:760px){.on-call-card-grid{grid-template-columns:1fr}
.on-call-card-heading{align-items:stretch;flex-direction:column}}
.state-report-display-group .field{max-width:330px}
@media(min-width:1450px){.state-report-filter-groups>.state-filter-group:nth-of-type(3),
  .state-report-filter-groups>.state-filter-group:nth-of-type(4){border-bottom:1px solid var(--border)}
.state-report-filter-groups>.state-report-display-group{grid-column:1/-1;border-right:0;border-bottom:0}}
@media(max-width:760px){.state-report-display-group .field{max-width:none}}
@media(min-width:761px){.state-report-filter-actions{justify-content:flex-end}}
.state-report-source-summary{margin-bottom:16px;padding:20px 24px;border-left:4px solid #1f759c}
.state-report-source-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.state-report-source-heading h2{margin:2px 0 5px;color:var(--text);font:700 23px var(--portal-font)}
.state-report-source-heading p{margin:0;max-width:820px;color:var(--muted);font-size:.82rem;line-height:1.45}
.state-source-actions{display:flex;flex-wrap:wrap;gap:7px}
.state-source-metrics,.state-comparison-coverage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}
.state-source-metrics>div,.state-source-metrics>a,.state-comparison-coverage>div{position:relative;padding:13px 15px;border:1px solid #d9e4eb;border-radius:10px;background:#f8fbfd}
.state-source-metrics>.portal{border-color:#bfe1d5;background:#f2fbf7}
.state-source-metrics>.historical{border-color:#ead8ae;background:#fffaf0}
.state-source-metrics small,.state-comparison-coverage small{display:block;color:var(--muted);font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.state-source-metrics strong,.state-comparison-coverage strong{display:block;margin-top:3px;color:var(--text);font:700 25px var(--portal-font)}
.state-source-metrics em{position:absolute;right:14px;bottom:13px;color:var(--muted);font-size:.72rem;font-style:normal;font-weight:800}
.state-source-warning{margin-top:13px;padding:11px 13px;border:1px solid #ead8ae;border-radius:8px;background:#fffaf0;color:#624d20;font-size:.78rem;line-height:1.45}
.quick-report-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.quick-report-result-card{display:flex;min-height:0;padding:14px 16px;flex-direction:column;justify-content:center;border:1px solid var(--border);border-radius:10px;background:#fbfdfe;color:var(--text);text-decoration:none}
.quick-report-result-card:hover{border-color:#79aeca;box-shadow:0 4px 12px rgba(24,72,101,.1)}
.quick-report-result-card small{color:var(--muted);font-size:.69rem;font-weight:850;text-transform:uppercase;letter-spacing:.035em}
.quick-report-result-card strong{margin:5px 0;color:var(--text);font:700 27px var(--portal-font)}
.quick-report-result-card em,.quick-report-result-card span{color:var(--muted);font-size:.7rem;font-style:normal;line-height:1.35}
.record-source-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#e4f5ee;color:#176345;font-size:.66rem;font-weight:850;white-space:nowrap}
.record-source-badge.historical{background:#fff0cf;color:#76550b}
.state-comparison-coverage{grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 13px}
@media(max-width:1000px){.quick-report-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.state-source-metrics,.state-comparison-coverage{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.state-report-source-heading{flex-direction:column}
.state-source-actions{width:100%}
.state-source-actions .btn{flex:1;justify-content:center}
.state-source-metrics,.state-comparison-coverage,.quick-report-metric-grid{grid-template-columns:1fr}
.state-report-source-summary{padding:16px}}
.sfst-incident-heading{align-items:flex-start}
.incident-save-state{position:sticky;top:74px;z-index:8;margin:0 0 10px auto;width:max-content;max-width:100%;padding:7px 12px;border:1px solid #c7d5df;border-radius:999px;background:#eef5fa;color:#29485f;font-size:.76rem;font-weight:750;box-shadow:0 3px 10px rgba(25,45,60,.08)}
.sfst-incident-form{display:grid;gap:12px}
.incident-section{overflow:hidden;border:1px solid var(--border);border-radius:var(--r);background:var(--card);box-shadow:var(--shadow)}
.incident-section>summary{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;min-height:62px;padding:12px 18px;cursor:pointer;list-style:none;color:#20394d}
.incident-section>summary::-webkit-details-marker{display:none}
.incident-section>summary:hover{background:#f6f9fb}
.incident-section>summary strong{display:block;font-size:1rem}
.incident-section>summary small{display:block;margin-top:2px;color:#6b7d8c;font-size:.68rem;font-weight:650}
.section-number{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#164f7a;color:#fff;font-size:.84rem;font-weight:850}
.section-chevron{font-size:1.35rem;transition:transform .2s ease}
.incident-section[open] .section-chevron{transform:rotate(180deg)}
.incident-section-body{padding:0 18px 18px;border-top:1px solid var(--border)}
.incident-field-group{padding:18px 0 4px;border-bottom:1px solid #e3e8ec}
.incident-field-group:last-child{border-bottom:0}
.incident-group-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.incident-group-heading h3{margin:0;color:#19394f;font-size:.92rem}
.incident-field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 16px}
.incident-field-grid .field{margin:0}
.incident-field-grid .field>span{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:20px;margin-bottom:5px;color:var(--text);font-size:.75rem;font-weight:750}
.incident-field-grid .field-wide{grid-column:1/-1}
.incident-field-grid textarea{height:auto;min-height:84px;resize:vertical}
.required-mark{color:#a84535;font-size:.59rem;text-transform:uppercase;letter-spacing:.03em}
.computed-field{background:#eef3f6!important;color:#3d5362}
.incident-check{display:flex;align-items:center;gap:9px;min-height:42px;padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:var(--light);color:#263d4f;font-size:.78rem;font-weight:700}
.incident-check input{width:19px;height:19px;accent-color:#1473b8}
.test-instructions{margin:16px 0 0;border:1px solid #bcd2e0;border-radius:8px;background:#f1f8fc}
.test-instructions>summary{padding:11px 13px;cursor:pointer;color:#14557f;font-weight:800}
.test-instructions>div{padding:0 16px 14px;color:#293f50;font-size:.83rem;line-height:1.5}
.test-instructions ol{margin:10px 0 0;padding-left:22px}
.test-instructions li+li{margin-top:6px}
.timer-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.timer-controls>strong{min-width:70px;color:#164f7a;font-size:1.12rem;font-variant-numeric:tabular-nums}
.passenger-list{display:grid;gap:12px;margin:12px 0}
.finger-nose-matrix{min-width:690px}
.finger-nose-matrix th,.finger-nose-matrix td{text-align:center;vertical-align:middle}
.finger-nose-matrix th:first-child{text-align:left}
.finger-nose-matrix input{width:19px;height:19px;accent-color:#1473b8}
.incident-final-actions{position:sticky;bottom:0;z-index:9;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px;border:1px solid var(--border);border-radius:var(--r);background:rgba(255,255,255,.96);box-shadow:0 -5px 22px rgba(20,43,59,.14);backdrop-filter:blur(8px)}
.incident-final-actions p{margin:2px 0 0;color:var(--muted);font-size:.72rem}
.export-menu{position:relative}
.export-menu>summary{list-style:none;cursor:pointer}
.export-menu>summary::-webkit-details-marker{display:none}
.export-menu>div{position:absolute;right:0;z-index:30;display:grid;min-width:170px;margin-top:6px;padding:5px;border:1px solid #c4d1d9;border-radius:8px;background:var(--card);box-shadow:0 12px 30px rgba(17,35,48,.18)}
.export-menu>div a{padding:10px 12px;border-radius:8px;color:var(--text);font-size:.78rem;font-weight:750;text-decoration:none}
.export-menu>div a:hover{background:#eaf3f8}
.scan-dialog{width:min(620px,calc(100vw - 30px));padding:20px;border:0;border-radius:var(--r);box-shadow:0 24px 70px rgba(0,0,0,.35)}
.scan-dialog::backdrop{background:rgba(8,18,26,.72)}
.scan-dialog video{width:100%;max-height:350px;margin:10px 0;border-radius:8px;background:#101820}
.scan-photo-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px}
.scan-photo-actions span{max-width:300px;color:#5e707c;font-size:.72rem;line-height:1.35}
.dialog-close{float:right;border:0;background:transparent;font-size:1.5rem;cursor:pointer}
.incident-report-filters .sfst-filter-search{grid-column:span 2}
.incident-report-filters .sfst-list-filter-actions{align-self:end}
.status-pill.draft{background:#fff4d9;color:#7c5610}
.status-pill.completed{background:#e5f6eb;color:#237043}
.sfst-report-preview{max-width:900px;margin:0 auto;padding:42px 48px;border:1px solid #cbd5dc;background:var(--card);color:#1d2b35;box-shadow:0 8px 32px rgba(16,35,48,.12)}
.report-cover{padding-bottom:24px;border-bottom:3px solid #174f7a;text-align:center}
.report-cover h1{margin:6px 0;color:#174f7a;font-size:2rem}
.report-program{color:#61717d;font-size:.72rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.report-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:22px;border:1px solid #c8d5dd;background:#c8d5dd;text-align:left}
.report-summary-grid>div{padding:11px 13px;background:#eef5f8}
.report-summary-grid small{display:block;color:#667986;font-size:.66rem;font-weight:800;text-transform:uppercase}
.report-summary-grid strong{display:block;margin-top:3px;font-size:.88rem}
.report-preview-section{margin-top:22px;break-inside:avoid-page}
.report-preview-section h2{margin:0;padding:8px 11px;background:#174f7a;color:#fff;font-size:1rem}
.report-preview-section h3{margin:14px 0 5px;color:var(--text);font-size:.82rem}
.report-preview-section dl,.passenger-report-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;background:#d9e0e4}
.report-preview-section dl>div,.passenger-report-card dl>div{padding:8px 10px;background:var(--light)}
.report-preview-section dt{color:#526773;font-size:.68rem;font-weight:800}
.report-preview-section dd{margin:2px 0 0;font-size:.82rem;white-space:pre-wrap}
.passenger-report-card{margin:8px 0 14px;padding:10px;border:1px solid #d7e0e5;border-radius:8px}
.passenger-report-card h4{margin:0 0 7px;color:#174f7a}
.sfst-report-preview>footer{margin-top:28px;padding-top:12px;border-top:1px solid #bfcbd2;color:#60717d;font-size:.66rem;line-height:1.45}
.empty-report{padding:50px 20px;text-align:center;color:#5f727f}
.name-sheet-form{display:grid;gap:22px}
.name-sheet-identity{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 28px 24px}
.name-sheet-identity>div{padding:15px 17px;border:1px solid var(--border);border-radius:10px;background:#f6f9fb}
.name-sheet-identity small{display:block;color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}
.name-sheet-identity strong{display:block;margin-top:5px;color:var(--text)}
.name-sheet-candidate-grid{padding:0 28px 28px}
.name-sheet-table-wrap{max-height:none;overflow:auto}
.name-sheet-table{min-width:920px}
.name-sheet-table th,.name-sheet-table td{text-align:center;vertical-align:top}
.name-sheet-table th:nth-child(2),.name-sheet-table td:nth-child(2){min-width:148px}
.name-sheet-table th:last-child,.name-sheet-table td:last-child{min-width:150px}
.name-sheet-table .form-control{min-width:72px;padding:8px 7px;text-align:center}
.name-sheet-table td:nth-child(2) .form-control,.name-sheet-table td:last-child .form-control{min-width:130px}
.name-sheet-table .field-error{display:block;max-width:145px;margin:5px auto 0;font-size:.68rem;line-height:1.25}
.name-sheet-comments{padding:22px 28px 28px}
.name-sheet-comments label,.reject-sheet-form label{display:block;margin-bottom:7px;font-weight:800;color:#26364d}
.sticky-form-actions{position:sticky;bottom:12px;z-index:9;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 18px;border:1px solid var(--border);border-radius:var(--r);background:rgba(255,255,255,.97);box-shadow:0 8px 30px rgba(22,48,65,.18);backdrop-filter:blur(8px)}
.sticky-form-actions>div:first-child{display:grid;gap:3px}
.sticky-form-actions span{color:var(--muted);font-size:.75rem}
.danger-notice{border-color:#e3b8b8;background:#fbebeb;color:#8e3030}
.name-sheet-review-details{grid-template-columns:180px 1fr;padding:0 28px 28px}
.name-sheet-review-actions{display:grid;grid-template-columns:auto minmax(300px,1fr);gap:20px;align-items:start;padding:20px}
.reject-sheet-form{display:grid;gap:9px}
.status-pill.draft{background:#e9eef4;color:#40566b}
.certificate-bulk-table .form-control{min-width:120px}
.certificate-issue-panel form>.confirm-check,.certificate-issue-panel form>.actions{margin-left:28px;margin-right:28px}
@media(max-width:900px){.incident-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.incident-final-actions{position:static;align-items:flex-start;flex-direction:column}
.sfst-report-preview{padding:30px 24px}
.name-sheet-review-actions{grid-template-columns:1fr}}
@media(max-width:620px){.incident-field-grid{grid-template-columns:1fr}
.incident-field-grid .field-wide{grid-column:auto}
.incident-section>summary{grid-template-columns:36px 1fr auto;padding:11px 12px}
.incident-section-body{padding:0 12px 14px}
.incident-group-heading{align-items:flex-start;flex-direction:column}
.timer-controls{width:100%}
.incident-final-actions .actions{display:grid;width:100%}
.incident-final-actions .btn{justify-content:center;width:100%}
.export-menu,.export-menu>summary{width:100%}
.export-menu>div{left:0;right:0}
.report-summary-grid,.report-preview-section dl,.passenger-report-card dl{grid-template-columns:1fr}
.sfst-report-preview{padding:22px 14px}
.name-sheet-identity{grid-template-columns:1fr;margin:0 14px 18px}
.name-sheet-candidate-grid{padding:0 14px 20px}
.sticky-form-actions{position:static;align-items:stretch;flex-direction:column}
.sticky-form-actions .actions{display:grid;width:100%}
.certificate-issue-panel form>.confirm-check,.certificate-issue-panel form>.actions{margin-left:14px;margin-right:14px}}
@media print{.sfst-shell .sidebar,.sfst-shell .topbar,.no-print,.incident-save-state{display:none!important}
.sfst-report-preview{max-width:none;margin:0;padding:0;border:0;box-shadow:none}
.report-preview-section{break-inside:auto}
.report-preview-section h2{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
.management-card-server-search .form-control {
  max-width: 22rem;
}
.management-card-count,
.management-card-pagination .page-status {
  color: var(--muted, #68798c);
  font-size: .86rem;
}
@media (max-width: 680px) {.management-card-server-search .form-control {
    flex-basis: 100%;
    max-width: none;
  }}
.on-call-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}
.on-call-summary-grid.reports{grid-template-columns:repeat(4,minmax(0,1fr))}
.summary-card{min-width:0;background:var(--card);border:1px solid var(--border);border-top:4px solid var(--p);border-radius:var(--r);padding:20px;box-shadow:var(--shadow)}
.summary-card small,.summary-card span{display:block;color:var(--muted)}
.summary-card small{font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase}
.summary-card strong{display:block;margin:9px 0 7px;color:#102c47;font:700 29px/1.1 var(--portal-font)}
.summary-card span{font-size:12px;line-height:1.35}
.on-call-card-list{display:grid;gap:15px}
.on-call-request-card{border:1px solid #dbe3e9;border-left:5px solid var(--gold);border-radius:var(--r);padding:20px;background:var(--card)}
.on-call-request-card.status-assigned,.on-call-request-card.status-responding{border-left-color:var(--p)}
.on-call-request-heading,.on-call-card-footer,.on-call-response-actions{display:flex;align-items:center;justify-content:space-between;gap:16px}
.on-call-request-heading h3{font:700 20px var(--portal-font);margin:7px 0 0}
.request-id{display:inline-flex;border-radius:8px;background:#e8f0f5;color:var(--text);padding:5px 8px;font:800 13px/1 monospace;letter-spacing:.5px}
.on-call-request-grid,.on-call-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin:20px 0}
.on-call-request-grid small,.on-call-detail-grid small,.assigned-dre-banner small{display:block;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.7px;text-transform:uppercase;margin-bottom:5px}
.on-call-request-grid strong,.on-call-detail-grid strong{overflow-wrap:anywhere}
.on-call-card-footer{border-top:1px solid var(--border);padding-top:15px;color:var(--muted);font-size:13px}
.status-pill.on-call-status.waiting{background:#fff3d9;color:#805b0e}
.status-pill.on-call-status.assigned,.status-pill.on-call-status.responding{background:#dceff8;color:#135f86}
.status-pill.on-call-status.completed{background:#e5f4ec;color:#23704f}
.status-pill.on-call-status.declined,.status-pill.on-call-status.no_response,.status-pill.on-call-status.canceled{background:#f5e4e4;color:#8e3434}
.status-pill.viewed{background:#e4edf5;color:#315772}
.status-pill.test_queued{background:#eee7fa;color:#62448b}
.status-pill.delivered{background:#e5f4ec;color:#23704f}
.status-pill.skipped{background:#edf0f2;color:#64717c}
.assigned-dre-banner{display:grid;gap:4px;background:#e9f5fb;border:1px solid #afd3e5;border-radius:10px;padding:18px;margin:18px 0}
.assigned-dre-banner strong{font:700 24px var(--portal-font)}
.assigned-dre-banner span{color:#45677a;font-size:13px}
.on-call-response-actions{justify-content:flex-end;border-top:1px solid var(--border);padding-top:18px}
.on-call-response-actions form,.on-call-status-action{margin:0}
.accept-request{min-width:180px}
.on-call-status-action{text-align:right;border-top:1px solid var(--border);padding-top:18px}
.on-call-audit-layout{grid-template-columns:1fr 1fr}
.timeline-list{list-style:none;margin:0;padding:0}
.timeline-list li{display:grid;grid-template-columns:16px 1fr;gap:10px;padding:0 0 18px;position:relative}
.timeline-list li>span{width:10px;height:10px;border-radius:50%;background:var(--p);margin-top:4px}
.timeline-list li:not(:last-child)::before{content:"";position:absolute;left:4px;top:14px;bottom:0;border-left:2px solid #d8e2e8}
.timeline-list strong,.timeline-list small{display:block}
.timeline-list strong{font-size:13px;line-height:1.45}
.timeline-list small{color:var(--muted);font-size:11px;margin-top:4px}
.confirm-panel{max-width:820px}
.table-subtext{display:block;color:var(--muted);margin-top:4px}
.active-sessions-card td .status-pill{margin-left:7px}
@media(max-width:1200px){.on-call-summary-grid,.on-call-summary-grid.reports{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.on-call-summary-grid,.on-call-summary-grid.reports,.filter-grid,.on-call-request-grid,.on-call-detail-grid,.on-call-audit-layout{grid-template-columns:1fr}
.on-call-request-heading,.on-call-card-footer,.on-call-response-actions{align-items:stretch;flex-direction:column}
.on-call-card-footer .btn,.on-call-response-actions form,.on-call-response-actions .btn{width:100%}}
.dispatch-response-card{margin:18px 0;border:1px solid var(--border);border-radius:10px;background:var(--card);overflow:hidden}
.dispatch-response-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid var(--border)}
.dispatch-response-heading h4{margin:0;color:var(--text);font:700 18px var(--portal-font)}
.dispatch-response-heading p{margin:4px 0 0;color:var(--muted);font-size:12px}
.dispatch-response-heading>span{color:var(--muted);font-size:12px;font-weight:800}
.delivery-status.sent,.delivery-status.test_queued,.delivery-status.delivered,.recipient-response.viewed{background:#e4edf5;color:#315772}
.delivery-status.failed,.recipient-response.declined{background:#f5e4e4;color:#8e3434}
.delivery-status.skipped,.recipient-response.pending{background:#edf0f2;color:#64717c}
.recipient-response.accepted{background:#e5f4ec;color:#23704f}
.recipient-preview.warning{border-color:#ead1a5;background:#fff8ec}
.notification-preference-section{margin-top:22px;padding-top:20px;border-top:1px solid var(--border)}
.notification-preference-section h3,.on-call-admin-preferences h4{margin:0 0 6px;font:700 18px var(--portal-font)}
.notification-choice-grid>ul,.notification-admin-field>div>ul,.notification-admin-field>ul{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.notification-choice-grid.channels>ul{grid-template-columns:repeat(3,minmax(0,1fr))}
.notification-choice-grid.counties>ul{grid-template-columns:repeat(4,minmax(0,1fr));max-height:430px;overflow:auto;padding:2px}
.notification-choice-grid li label,.notification-admin-field li label{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid var(--border);border-radius:8px;background:var(--card);font-weight:650}
.notification-choice-grid input,.notification-admin-field input{width:17px;height:17px;accent-color:var(--p)}
.contact-delivery-summary{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:12px;color:var(--muted)}
.sms-consent-status{margin-top:14px;padding:13px 15px;border:1px solid var(--border);border-radius:8px;background:var(--card)}
.sms-consent-status p{margin:4px 0 0;color:var(--muted)}
.sms-consent-control{margin-top:14px}
.sms-consent-control a{text-decoration:underline}
.county-quick-actions{flex-wrap:wrap}
.on-call-admin-preferences .form-grid{margin-top:14px}
@media(max-width:900px){.notification-choice-grid.counties>ul{grid-template-columns:repeat(2,minmax(0,1fr))}
.notification-choice-grid.channels>ul{grid-template-columns:1fr}
.dispatch-response-heading{align-items:stretch;flex-direction:column}}
@media(max-width:560px){.notification-choice-grid.counties>ul{grid-template-columns:1fr}}
.sms-stop-guidance{margin:14px 0 0}
.sms-stop-guidance p{margin:5px 0 0}
.recipient-response.pending{background:#fff3d9;color:#805b0e}
.recipient-response.declined{background:#f5e4e4;color:#8e3434}
.recipient-response.accepted{background:#e5f4ec;color:#23704f}
.login-card.security-card{width:min(720px,100%);max-width:720px}
.mfa-setup-grid>.panel{min-width:0;max-width:none;margin-bottom:0}
.mfa-setup-form .form-control{display:block;width:100%;min-height:38px}
.message.error{background:#fff1f1;border-color:#d8a4a4;color:#8c2424}
.class-written-result{min-width:180px}
.class-retest-fields{display:grid;gap:7px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}
.class-retest-fields label{display:block;font-size:12px;font-weight:700;margin-bottom:4px}
.class-written-result [hidden]{display:none!important}
.performance-evaluation-summary .metric-card{min-width:0}
.performance-evaluation-table-action{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
@media(max-width:820px){.performance-evaluation-table-action{align-items:stretch;flex-direction:column}}
.floating-form-actions, .sticky-form-actions {
  grid-column: 1 / -1;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  position: sticky;
  bottom: max(12px, env(safe-area-inset-bottom));
  max-height: 45vh;
  overflow-y: auto;
}
@media(min-width:1100px) {.page-heading { margin-bottom: 18px; }
.form-grid, .data-form-grid, .sectioned-form { gap: var(--desktop-section-gap); }}
@media(max-width:620px) {.sticky-form-actions .actions { min-width: 0; }
.sticky-form-actions .actions .btn { min-width: 0; white-space: normal; }}
.performance-evaluation-summary .metric-card{min-width:0}
.performance-evaluation-table-action{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
@media(max-width:820px){.performance-evaluation-table-action{align-items:stretch;flex-direction:column}}
.class-tools-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.class-tools-grid .class-status-section { margin: 0; padding: 18px; border: 1px solid #dce5ec; }
.class-tools-grid .class-status-actions { justify-content: flex-start; margin-top: auto; }
.class-tools-grid .class-status-section { display: flex; flex-direction: column; }
.class-tool-buttons .btn, .class-status-actions .btn { white-space: normal; max-width: 100%; }
.selected-students li { display: flex; gap: 12px; justify-content: space-between; align-items: center; padding: 12px 14px; border: 1px solid var(--border); border-radius: 10px; background: var(--card); overflow-wrap: anywhere; }
.selected-students { display: grid; gap: 8px; }
.selected-students { padding-left: 0; list-style: none; }
.selected-students li > span { min-width: 0; }
.selected-students .btn { flex: 0 0 auto; min-width: 76px; white-space: nowrap; overflow-wrap: normal; }
@media (max-width: 1100px) {.class-tools-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }}
@media (max-width: 720px) {.class-tools-grid { grid-template-columns: 1fr; }}
.user-center-filters select.form-control{width:100%;height:38px;min-height:38px;margin:0}
.user-center-filters input.form-control[type="search"]{width:100%}
.admin-list-heading.sitewide-search-heading{grid-template-columns:minmax(0,1fr)}
.sitewide-search-heading>.admin-heading-copy,
.admin-list-heading.sitewide-search-heading>.user-center-server-search{grid-column:1/-1;width:100%;min-width:0;max-width:none;justify-self:stretch;box-sizing:border-box}
.sitewide-search-heading>.admin-heading-actions:empty{display:none}
@media screen{html :is(select,input[list],input[data-agency-search],input.agency-search-input,input#id_agency_name){color-scheme:inherit!important;-webkit-text-fill-color:currentColor!important;caret-color:currentColor}}
.support-filter-grid .form-control{width:100%;min-width:0;box-sizing:border-box;height:44px}
.inline-form{display:inline;margin:0}
@media screen{html[data-appearance="dark"] .message{background:#1a3823;border:1px solid var(--border);}
html[data-appearance="dark"] .metric-card{background:var(--card);}
html[data-appearance="dark"] .blue{background:var(--light);color:#a4d1ea;}
html[data-appearance="dark"] .gold{background:#382d19;color:#ead1a4;}
html[data-appearance="dark"] .purple{background:#241938;color:var(--text);}
html[data-appearance="dark"] .green{background:#19382d;color:#b0ded0;}
html[data-appearance="dark"] .metric-copy small{color:var(--text);}
html[data-appearance="dark"] .metric-copy strong{color:var(--muted);}
html[data-appearance="dark"] .metric-copy em{color:var(--text);}
html[data-appearance="dark"] .data-card,html[data-appearance="dark"] .panel{background:var(--card);}
html[data-appearance="dark"] .status-badge,html[data-appearance="dark"] .badge{background:var(--light);color:#a5d2e8;}
html[data-appearance="dark"] .status-complete{background:#19382a;color:#b0decf;}
html[data-appearance="dark"] .status-stopped,html[data-appearance="dark"] .status-medical_rule_out{background:#381a1a;color:#dbb3b3;}
html[data-appearance="dark"] .panel th{background:var(--card);}
html[data-appearance="dark"] .form-control{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .evaluation-choice-card{background:var(--card);}
html[data-appearance="dark"] .evaluation-choice-card:hover{border-color:var(--border);}
html[data-appearance="dark"] .choice-label{color:var(--text);}
html[data-appearance="dark"] .choice-copy strong{color:#a6c8e8;}
html[data-appearance="dark"] .form-step-nav{background:var(--card);}
html[data-appearance="dark"] .form-step-nav a:hover,html[data-appearance="dark"] .form-step-nav a:focus{background:var(--light);}
html[data-appearance="dark"] .form-step-nav a span{border:2px solid var(--border);color:var(--text);background:var(--card);}
html[data-appearance="dark"] .form-step-nav a.current:not(.completed){background:#271938;color:#c4ade1;}
html[data-appearance="dark"] .form-step-nav a.current:not(.completed)>span{border-color:var(--border);color:#c5aee0;background:var(--card);}
html[data-appearance="dark"] .section-title>span{background:var(--light);}
html[data-appearance="dark"] .required{color:#e3aaaa;}
html[data-appearance="dark"] .error-summary{background:#381919;color:#e6a8a8;}
html[data-appearance="dark"] .submission-options{background:var(--card);}
html[data-appearance="dark"] .continue-button{background:#382f19;border-color:var(--border);color:#ead3a4;}
html[data-appearance="dark"] .continue-button:hover{background:#382f19;}
html[data-appearance="dark"] .login-card{background:var(--card);}
html[data-appearance="dark"] .full-step-nav a.completed{background:#193827;color:#a4eac1;}
html[data-appearance="dark"] .full-step-nav a.completed>span{border-color:#327b55;}
html[data-appearance="dark"] .draft-toolbar{background:var(--light);}
html[data-appearance="dark"] .clue-grid>div:first-child,html[data-appearance="dark"] .measurement-grid>div:first-child{background:var(--card);}
html[data-appearance="dark"] .drawing-board{background:var(--card);}
html[data-appearance="dark"] .drawing-surface{background:var(--card);border:1px solid var(--border);}
html[data-appearance="dark"] .tox-continue{border-color:#7b6832;color:#ead4a4;background:#382e19;}
html[data-appearance="dark"] .data-only-step-nav a.completed{background:#193827;color:#a4eac1;}
html[data-appearance="dark"] .data-only-step-nav a.completed>span{border-color:#327b55;}
html[data-appearance="dark"] .progress-track{background:var(--card);}
html[data-appearance="dark"] .info-message{background:var(--light);border-color:var(--border);color:#aec8df;}
html[data-appearance="dark"] .status-pill.approved{background:#193828;color:#aae4cb;}
html[data-appearance="dark"] .status-pill.pending{background:#382f19;color:#ead3a4;}
html[data-appearance="dark"] .status-pill.rejected{background:#381919;color:#e4aaaa;}
html[data-appearance="dark"] .dre-theme .blue{background: #241938;color: #c6afde;}
html[data-appearance="dark"] .dre-theme .form-step-nav a:hover,html[data-appearance="dark"] .dre-theme .form-step-nav a:focus{background: #271938;}
html[data-appearance="dark"] .dre-theme .draft-toolbar,html[data-appearance="dark"] .dre-theme .info-message{background: #271938;border-color: var(--border);}
html[data-appearance="dark"] .scroll-table thead th{background: var(--light);}
html[data-appearance="dark"] .danger-panel{border-color:var(--border);}
html[data-appearance="dark"] .delete-confirm-check{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .metric-icon.red{background:#381919;color:#e0adad;}
html[data-appearance="dark"] .missing-copy{color:#ead3a4!important;}
html[data-appearance="dark"] .requirement-progress-card{border-top:4px solid #7b6832;}
html[data-appearance="dark"] .requirement-progress-card .requirement-icon{background:#382e19;color:#ead3a4;}
html[data-appearance="dark"] .requirement-progress-card.complete .requirement-icon{background:#19382a;color:#b0decf;}
html[data-appearance="dark"] .pending-highlight{border-left:5px solid #7b6832;}
html[data-appearance="dark"] .cert-mini{background:#1c2c35;}
html[data-appearance="dark"] .cert-mini.green{background:#19382a;color:#b0decf;}
html[data-appearance="dark"] .cert-mini.gold{background:#382e19;color:#ead3a4;}
html[data-appearance="dark"] .cert-mini.red{background:#381919;color:#e0adad;}
html[data-appearance="dark"] .cert-mini.blue{background:#193038;color:#a4d8ea;}
html[data-appearance="dark"] .pagination-bar .page-status{color:var(--text);}
html[data-appearance="dark"] .sfst-list-filter-grid{background:var(--card);}
html[data-appearance="dark"] .sfst-list-filter-grid label{color:var(--text);}
html[data-appearance="dark"] .agency-search-input,html[data-appearance="dark"] input[list*="agency"],html[data-appearance="dark"] input[list="program-agency-options"],html[data-appearance="dark"] input[list="dre-agency-options"],html[data-appearance="dark"] input[data-agency-search],html[data-appearance="dark"] select[data-agency-select],html[data-appearance="dark"] select#id_agency,html[data-appearance="dark"] input#id_agency_name{background-color:var(--card)!important;color:var(--text)!important;}
html[data-appearance="dark"] .agency-search-input::placeholder,html[data-appearance="dark"] input[list*="agency"]::placeholder,html[data-appearance="dark"] input[data-agency-search]::placeholder,html[data-appearance="dark"] input#id_agency_name::placeholder{color:var(--text)!important;}
html[data-appearance="dark"] .student-intake-body{color:var(--text);}
html[data-appearance="dark"] .student-intake-card{background:var(--card);}
html[data-appearance="dark"] .student-intake-card form input{border:1px solid var(--border);}
html[data-appearance="dark"] .form-field label,html[data-appearance="dark"] .field-label{color:var(--text);}
html[data-appearance="dark"] .help-text{color:var(--text);}
html[data-appearance="dark"] .field-error{color:#e7a7a7;}
html[data-appearance="dark"] .qualification-badge.sfst{background:#193438;color:#a4deea;}
html[data-appearance="dark"] .qualification-badge.aride{background:#382d19;color:#eacda4;}
html[data-appearance="dark"] .qualification-badge.dre{background:#281938;color:#c5aee0;}
html[data-appearance="dark"] .permission-badge{background:#192838;color:var(--text);}
html[data-appearance="dark"] .status-pill.open,html[data-appearance="dark"] .status-pill.in_progress{background:#19382a;color:#afdfcd;}
html[data-appearance="dark"] .status-pill.planned{background:#192838;color:var(--text);}
html[data-appearance="dark"] .status-pill.closed{background:#381919;color:#e0aeae;}
html[data-appearance="dark"] .iacp-form-panel input:disabled{background:var(--light);color:var(--text);}
html[data-appearance="dark"] .program-note{border-left:4px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .program-note.pinned{border-left-color:#7b6532;background:#382e19;}
html[data-appearance="dark"] .manual-override-section{border-top:2px solid var(--border);}
/* .compliance-missing-list items are now .chip.warn, which dark.css already recolors (html[data-theme=dark] .chip.warn). */
html[data-appearance="dark"] .historical-badge{border: 1px solid var(--border);background: var(--card);color: var(--text);}
html[data-appearance="dark"] .help-tip::after{border: 1px solid var(--border);background: var(--card);color: #b1c4dc;}
html[data-appearance="dark"] .dashboard-stats .metric-icon.purple{background: #271938;color: #c1ade1;}
html[data-appearance="dark"] .dashboard-stats .metric-icon.blue{background: #193038;color: #a4dcea;}
html[data-appearance="dark"] .dashboard-stats .metric-icon.green{background: #19382c;color: #aae4cf;}
html[data-appearance="dark"] .dashboard-stats .metric-icon.gold{background: #382e19;color: #ead1a4;}
html[data-appearance="dark"] .program-user-hero-badges > span:not(.qualification-badge){background:var(--card);color:var(--text);}
html[data-appearance="dark"] .security-check-row{background:var(--card);}
html[data-appearance="dark"] .responsive-management-table thead th{background:var(--light);}
html[data-appearance="dark"] .rolling-management-table .row-actions{background:var(--card);}
html[data-appearance="dark"] .rolling-management-table thead .action-header{background:var(--light);}
html[data-appearance="dark"] .security-check-row{border: 1px solid var(--border);background: var(--card);}
html[data-appearance="dark"] .instructor-picker{border: 1px solid var(--border);background: var(--card);}
html[data-appearance="dark"] .instructor-picker-options label:hover{background: #1a3038;}
html[data-appearance="dark"] .instructor-picker-options label:has(input:checked){background: #193238;}
html[data-appearance="dark"] .instructor-picker-options label:has(input:disabled){color: var(--text);}
html[data-appearance="dark"] .class-tool-group{border: 1px solid var(--border);background: var(--card);}
html[data-appearance="dark"] .class-tool-group-heading h3,html[data-appearance="dark"] .class-status-copy h3{color: var(--muted);}
html[data-appearance="dark"] .class-tool-icon{background: var(--light);color: #a4d4ea;}
html[data-appearance="dark"] .class-tool-icon.green{background: #193828;color: #aae4c8;}
html[data-appearance="dark"] .entry-state-badge.open{border-color: var(--border);background: #193828;color: #aae4c9;}
html[data-appearance="dark"] .class-status-section{border-top: 1px solid var(--border);}
html[data-appearance="dark"] .class-enrollment-step-heading h2{color: var(--muted);}
html[data-appearance="dark"] .class-create-user-prompt{border: 1px dashed var(--border);background: var(--card);}
html[data-appearance="dark"] .program-edit-section+.program-edit-section{border-top:2px solid var(--border);}
html[data-appearance="dark"] .manual-completion-control{border:1px solid var(--border);background:var(--card);color:var(--text);}
html[data-appearance="dark"] .state-report-scope-note{border-left:4px solid #543c72;background:#271938;color:var(--text);}
html[data-appearance="dark"] .state-report-export-popover{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .state-report-export-popover>strong{color:var(--text);}
html[data-appearance="dark"] .state-report-export-popover>a{color:#a9cbe5;}
html[data-appearance="dark"] .state-report-export-popover>a:hover,html[data-appearance="dark"] .state-report-export-popover>a:focus{background:var(--light);color:#a4d1ea;}
html[data-appearance="dark"] .state-production-badge{border:1px solid var(--border);background:#193829;color:#ace1ce;}
html[data-appearance="dark"] .state-filter-errors{border:1px solid var(--border);background:#381919;color:#e2abab;}
html[data-appearance="dark"] .state-filter-emphasis{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .state-filter-emphasis label{color:#c5afdf;}
html[data-appearance="dark"] .state-filter-emphasis small{color:var(--text);}
html[data-appearance="dark"] .state-report-more-filters{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .state-report-more-filters>summary{color:#aecce0;}
html[data-appearance="dark"] .state-report-more-filters[open]>summary{border-bottom:1px solid var(--border);background:#1b2f36;}
html[data-appearance="dark"] .state-report-section-nav{border:1px solid var(--border);}
html[data-appearance="dark"] .state-report-section-nav a{color:var(--text);}
html[data-appearance="dark"] .state-report-section-nav a:hover,html[data-appearance="dark"] .state-report-section-nav a:focus{background:#281938;color:#c6afdf;}
html[data-appearance="dark"] .state-report-kpi{background:var(--card);}
html[data-appearance="dark"] .state-report-kpi small{color:var(--text);}
html[data-appearance="dark"] .state-report-kpi strong{color:var(--muted);}
html[data-appearance="dark"] .state-report-kpi em{color:var(--text);}
html[data-appearance="dark"] .state-report-table th{background:var(--light);color:var(--text);}
html[data-appearance="dark"] .state-report-table tbody tr:hover{background:var(--card);}
html[data-appearance="dark"] .state-troop-table th:first-child,html[data-appearance="dark"] .state-troop-table td:first-child{background:var(--card);}
html[data-appearance="dark"] .state-troop-table thead th:first-child{background:var(--light);}
html[data-appearance="dark"] .report-drilldown-notice{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--light);color:var(--text);}
html[data-appearance="dark"] .report-drilldown-notice strong{color:#a6cce8;}
html[data-appearance="dark"] .state-report-table td .report-record-reason{border-left:3px solid #7b6a32;color:var(--text);}
html[data-appearance="dark"] .state-report-definition{background:var(--card);color:var(--text);}
html[data-appearance="dark"] .state-annual-table-block{background:var(--card);}
html[data-appearance="dark"] .state-annual-outcomes>div{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .state-annual-outcomes small{color:var(--text);}
html[data-appearance="dark"] .state-annual-outcomes strong{color:#a6cde7;}
html[data-appearance="dark"] .state-summary-drilldown-card:has(>a):hover{border-color:var(--border);}
html[data-appearance="dark"] .state-summary-drilldown-card em{color:#c6b1dd;}
html[data-appearance="dark"] .state-summary-drilldown{background:var(--card);}
html[data-appearance="dark"] .state-summary-drilldown-heading{background:var(--card);}
html[data-appearance="dark"] .state-summary-drilldown-heading h3{color:#a4caea;}
html[data-appearance="dark"] .state-summary-evaluation-table th:last-child,html[data-appearance="dark"] .state-summary-evaluation-table td:last-child{background:var(--card);}
html[data-appearance="dark"] .state-summary-evaluation-table thead th:last-child{background:var(--light);}
html[data-appearance="dark"] .state-support-summary>div{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .state-support-summary small{color:var(--text);}
html[data-appearance="dark"] .state-support-summary strong{color:#a5cbe9;}
html[data-appearance="dark"] .state-record-table th:last-child,html[data-appearance="dark"] .state-record-table td:last-child{background:var(--card);}
html[data-appearance="dark"] .state-record-table thead th:last-child{background:var(--light);}
html[data-appearance="dark"] .personal-report-filter-section h3{color:var(--text);}
html[data-appearance="dark"] .personal-report-filter-grid small{color:var(--text);}
html[data-appearance="dark"] .personal-record-table th:last-child,html[data-appearance="dark"] .personal-record-table td:last-child{background:var(--card);}
html[data-appearance="dark"] .personal-record-table thead th:last-child{background:var(--light);}
html[data-appearance="dark"] .arresting-officer-suggestions{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .arresting-officer-suggestions button:hover,html[data-appearance="dark"] .arresting-officer-suggestions button:focus{background:var(--light);}
html[data-appearance="dark"] .state-report-analysis-scope{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .state-report-analysis-heading{border-bottom:1px solid var(--border);}
html[data-appearance="dark"] .state-report-analysis-heading strong{color:#adcae0;}
html[data-appearance="dark"] .state-report-breakdown-controls legend{color:#adcae0;}
html[data-appearance="dark"] .day-time-breakdown-table .heat-level-0{background:var(--card);color:var(--text);}
html[data-appearance="dark"] .day-time-breakdown-table .heat-level-1{background:#291938;color:#c6b3db;}
html[data-appearance="dark"] .day-time-breakdown-table .heat-level-2{background:#281938;color:#c6b0de;}
html[data-appearance="dark"] .day-time-breakdown-table .heat-level-3{background:#291938;color:#c6abe3;}
html[data-appearance="dark"] .portal-user-report-tabs{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .portal-user-report-tabs a{color:var(--text);}
html[data-appearance="dark"] .portal-user-report-tabs a:hover,html[data-appearance="dark"] .portal-user-report-tabs a:focus-visible{background:var(--light);color:#a4d1ea;}
html[data-appearance="dark"] .btn.success{border-color:#327b60;}
html[data-appearance="dark"] .btn.success:hover:not(:disabled),html[data-appearance="dark"] .btn.success:focus-visible{border-color:#327b5f;}
html[data-appearance="dark"] .row-action-menu-panel .row-action-menu-item:not(.primary):not(.success):not(.danger){background:var(--card)!important;color:var(--muted)!important;}
html[data-appearance="dark"] .row-action-menu-panel .success{background:#19382a!important;color:#aae4ce!important;}
html[data-appearance="dark"] .row-action-menu-panel .success:hover,html[data-appearance="dark"] .row-action-menu-panel .success:focus-visible{background:#1a382b!important;color:#a9e5ce!important;}
html[data-appearance="dark"] .row-action-menu-panel .row-action-menu-item:not(.primary):not(.success):not(.danger):hover{background:var(--light)!important;color:#a4d4ea!important;}
html[data-appearance="dark"] .row-action-menu-panel .row-action-menu-item:not(.primary):not(.success):not(.danger):focus-visible{background:var(--light)!important;color:#a4d4ea!important;}
html[data-appearance="dark"] .state-filter-group-heading>span{background:var(--light);color:#a4d3ea;}
html[data-appearance="dark"] .state-filter-group-heading h3{color:var(--muted);}
html[data-appearance="dark"] .state-quick-view-nav{border:1px solid var(--border);}
html[data-appearance="dark"] .state-quick-view-nav>span{color:var(--text);}
html[data-appearance="dark"] .state-quick-view-nav a{border:1px solid var(--border);color:#b1cadd;}
html[data-appearance="dark"] .state-quick-view-nav a:hover,html[data-appearance="dark"] .state-quick-view-nav a:focus,html[data-appearance="dark"] .state-quick-view-nav a.active{border-color:#563876;}
html[data-appearance="dark"] .state-view-toolbar{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .state-view-breadcrumb{color:var(--text);}
html[data-appearance="dark"] .state-view-breadcrumb strong{color:var(--muted);}
html[data-appearance="dark"] .compact-roster-summary>.state-summary-drilldown-card,html[data-appearance="dark"] .compact-outcome-grid>.state-summary-drilldown-card{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .compact-roster-summary>.state-summary-drilldown-card:hover,html[data-appearance="dark"] .compact-outcome-grid>.state-summary-drilldown-card:hover{border-color:var(--border);}
html[data-appearance="dark"] .compact-roster-summary>.state-summary-drilldown-card small,html[data-appearance="dark"] .compact-outcome-grid>.state-summary-drilldown-card small{color:var(--text);}
html[data-appearance="dark"] .compact-roster-summary>.state-summary-drilldown-card strong,html[data-appearance="dark"] .compact-outcome-grid>.state-summary-drilldown-card strong{color:#a6cde7;}
html[data-appearance="dark"] .compact-roster-summary>.state-summary-drilldown-card em,html[data-appearance="dark"] .compact-outcome-grid>.state-summary-drilldown-card em{color:#c6b1dd;}
html[data-appearance="dark"] .security-check-row.security-check-password,html[data-appearance="dark"] .security-check-row.security-check-mfa,html[data-appearance="dark"] .security-check-row.security-check-warning,html[data-appearance="dark"] .security-check-row.neutral-control{background:var(--card);}
html[data-appearance="dark"] .account-security-editor-card .security-summary-row,html[data-appearance="dark"] .security-summary-row,html[data-appearance="dark"] .security-control-box,html[data-appearance="dark"] .security-check-row.security-check-password,html[data-appearance="dark"] .security-check-row.security-check-mfa,html[data-appearance="dark"] .security-check-row.security-check-warning,html[data-appearance="dark"] .on-call-access-editor{background: var(--panel, var(--card));}
html[data-appearance="dark"] .state-report-source-summary{border-left:4px solid #32647b;}
html[data-appearance="dark"] .state-report-source-heading h2{color:var(--muted);}
html[data-appearance="dark"] .state-source-metrics>div,html[data-appearance="dark"] .state-source-metrics>a,html[data-appearance="dark"] .state-comparison-coverage>div{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .state-source-metrics>.portal{border-color:var(--border);background:#19382b;}
html[data-appearance="dark"] .state-source-metrics>.historical{border-color:var(--border);background:#382e19;}
html[data-appearance="dark"] .state-source-metrics small,html[data-appearance="dark"] .state-comparison-coverage small{color:var(--text);}
html[data-appearance="dark"] .state-source-metrics strong,html[data-appearance="dark"] .state-comparison-coverage strong{color:var(--muted);}
html[data-appearance="dark"] .state-source-metrics em{color:var(--text);}
html[data-appearance="dark"] .state-source-warning{border:1px solid var(--border);background:#382e19;color:#e3d1aa;}
html[data-appearance="dark"] .quick-report-result-card{border:1px solid var(--border);background:var(--card);color:var(--muted);}
html[data-appearance="dark"] .quick-report-result-card:hover{border-color:#32627b;}
html[data-appearance="dark"] .quick-report-result-card small{color:var(--text);}
html[data-appearance="dark"] .quick-report-result-card strong{color:var(--muted);}
html[data-appearance="dark"] .quick-report-result-card em,html[data-appearance="dark"] .quick-report-result-card span{color:var(--text);}
html[data-appearance="dark"] .record-source-badge{background:#19382c;color:#a4eace;}
html[data-appearance="dark"] .record-source-badge.historical{background:#382f19;color:#ead4a4;}
html[data-appearance="dark"] .incident-save-state{border:1px solid var(--border);background:#192b38;color:#b1cadd;}
html[data-appearance="dark"] .incident-section{background:var(--card);}
html[data-appearance="dark"] .incident-section>summary{color:#b0c9de;}
html[data-appearance="dark"] .incident-section>summary:hover{background:var(--light);}
html[data-appearance="dark"] .incident-section>summary small{color:var(--text);}
html[data-appearance="dark"] .incident-field-group{border-bottom:1px solid var(--border);}
html[data-appearance="dark"] .incident-group-heading h3{color:#aacce4;}
html[data-appearance="dark"] .incident-field-grid .field>span{color:var(--text);}
html[data-appearance="dark"] .required-mark{color:#e4b2aa;}
html[data-appearance="dark"] .computed-field{background:#1c2c35!important;color:var(--text);}
html[data-appearance="dark"] .incident-check{border:1px solid var(--border);background:var(--card);color:#b3c9db;}
html[data-appearance="dark"] .test-instructions{border:1px solid var(--border);background:var(--light);}
html[data-appearance="dark"] .test-instructions>summary{color:#a4ceea;}
html[data-appearance="dark"] .test-instructions>div{color:var(--text);}
html[data-appearance="dark"] .timer-controls>strong{color:#a4ccea;}
html[data-appearance="dark"] .incident-final-actions{border:1px solid var(--border);}
html[data-appearance="dark"] .incident-final-actions p{color:var(--text);}
html[data-appearance="dark"] .export-menu>div{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .export-menu>div a{color:#a8cde6;}
html[data-appearance="dark"] .export-menu>div a:hover{background:var(--light);}
html[data-appearance="dark"] .scan-photo-actions span{color:var(--text);}
html[data-appearance="dark"] .status-pill.draft{background:#382f19;color:#ead1a4;}
html[data-appearance="dark"] .status-pill.completed{background:#193824;color:#aae4c2;}
html[data-appearance="dark"] .sfst-report-preview{border:1px solid var(--border);background:var(--card);color:var(--text);}
html[data-appearance="dark"] .report-cover{border-bottom:3px solid #325b7b;}
html[data-appearance="dark"] .report-cover h1{color:#a4cbea;}
html[data-appearance="dark"] .report-program{color:var(--text);}
html[data-appearance="dark"] .report-summary-grid{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .report-summary-grid>div{background:var(--light);}
html[data-appearance="dark"] .report-summary-grid small{color:var(--text);}
html[data-appearance="dark"] .report-preview-section h3{color:#a8cde6;}
html[data-appearance="dark"] .report-preview-section dl,html[data-appearance="dark"] .passenger-report-card dl{background:var(--card);}
html[data-appearance="dark"] .report-preview-section dl>div,html[data-appearance="dark"] .passenger-report-card dl>div{background:var(--card);}
html[data-appearance="dark"] .report-preview-section dt{color:var(--text);}
html[data-appearance="dark"] .passenger-report-card{border:1px solid var(--border);}
html[data-appearance="dark"] .passenger-report-card h4{color:#a4cbea;}
html[data-appearance="dark"] .sfst-report-preview>footer{border-top:1px solid var(--border);color:var(--text);}
html[data-appearance="dark"] .empty-report{color:var(--text);}
html[data-appearance="dark"] .name-sheet-identity>div{border:1px solid var(--border);background:var(--light);}
html[data-appearance="dark"] .name-sheet-identity small{color:var(--text);}
html[data-appearance="dark"] .name-sheet-identity strong{color:#a8cde6;}
html[data-appearance="dark"] .name-sheet-comments label,html[data-appearance="dark"] .reject-sheet-form label{color:var(--text);}
html[data-appearance="dark"] .sticky-form-actions{border:1px solid var(--border);}
html[data-appearance="dark"] .sticky-form-actions span{color:var(--text);}
html[data-appearance="dark"] .danger-notice{border-color:var(--border);background:#381919;color:#e3abab;}
html[data-appearance="dark"] .status-pill.draft{background:#1b2836;color:var(--text);}
html[data-appearance="dark"] .management-card-count,html[data-appearance="dark"] .management-card-pagination .page-status{color: var(--muted, var(--text));}
html[data-appearance="dark"] .summary-card{background:var(--card);}
html[data-appearance="dark"] .summary-card strong{color:var(--muted);}
html[data-appearance="dark"] .on-call-request-card{border:1px solid var(--border);background:var(--card);}
html[data-appearance="dark"] .request-id{background:var(--light);color:var(--muted);}
html[data-appearance="dark"] .status-pill.on-call-status.waiting{background:#382f19;color:#ead3a4;}
html[data-appearance="dark"] .status-pill.on-call-status.assigned,html[data-appearance="dark"] .status-pill.on-call-status.responding{background:var(--light);color:#a4d2ea;}
html[data-appearance="dark"] .status-pill.on-call-status.completed{background:#193828;color:#aae4cb;}
html[data-appearance="dark"] .status-pill.on-call-status.declined,html[data-appearance="dark"] .status-pill.on-call-status.no_response,html[data-appearance="dark"] .status-pill.on-call-status.canceled{background:#381919;color:#e1adad;}
html[data-appearance="dark"] .status-pill.viewed{background:#192a38;color:#b1cbdd;}
html[data-appearance="dark"] .status-pill.test_queued{background:#251938;color:var(--text);}
html[data-appearance="dark"] .status-pill.delivered{background:#193828;color:#aae4cb;}
html[data-appearance="dark"] .status-pill.skipped{background:var(--card);color:var(--text);}
html[data-appearance="dark"] .assigned-dre-banner{background:var(--light);border:1px solid var(--border);}
html[data-appearance="dark"] .assigned-dre-banner span{color:var(--text);}
html[data-appearance="dark"] .timeline-list li:not(:last-child)::before{border-left:2px solid var(--border);}
html[data-appearance="dark"] .dispatch-response-card{background:var(--card);}
html[data-appearance="dark"] .dispatch-response-heading h4{color:var(--muted);}
html[data-appearance="dark"] .delivery-status.sent,html[data-appearance="dark"] .delivery-status.test_queued,html[data-appearance="dark"] .delivery-status.delivered,html[data-appearance="dark"] .recipient-response.viewed{background:#192a38;color:#b1cbdd;}
html[data-appearance="dark"] .delivery-status.failed,html[data-appearance="dark"] .recipient-response.declined{background:#381919;color:#e1adad;}
html[data-appearance="dark"] .delivery-status.skipped,html[data-appearance="dark"] .recipient-response.pending{background:var(--card);color:var(--text);}
html[data-appearance="dark"] .recipient-response.accepted{background:#193828;color:#aae4cb;}
html[data-appearance="dark"] .recipient-preview.warning{border-color:var(--border);background:#382d19;}
html[data-appearance="dark"] .notification-choice-grid li label,html[data-appearance="dark"] .notification-admin-field li label{background:var(--card);}
html[data-appearance="dark"] .sms-consent-status{background:var(--card);}
html[data-appearance="dark"] .recipient-response.pending{background:#382f19;color:#ead3a4;}
html[data-appearance="dark"] .recipient-response.declined{background:#381919;color:#e1adad;}
html[data-appearance="dark"] .recipient-response.accepted{background:#193828;color:#aae4cb;}
html[data-appearance="dark"] .message.error{background:#381919;border-color:var(--border);color:#e8a6a6;}
html[data-appearance="dark"] .class-tools-grid .class-status-section{border: 1px solid var(--border);}
html[data-appearance="dark"] .phase147-filter-card label,html[data-appearance="dark"] .phase147-filter-card legend,html[data-appearance="dark"] .phase147-filter-card h2,html[data-appearance="dark"] .phase147-filter-card h3,html[data-appearance="dark"] .phase147-filter-panel > .panel-heading h2,html[data-appearance="dark"] .phase147-filter-panel > .card-heading h2{color:var(--filter-accent,var(--muted));}
html[data-appearance="dark"] .phase146-notice,html[data-appearance="dark"] .phase146-report-summary{border: 1px solid var(--border);background: var(--card);color: #aacce4;}
html[data-appearance="dark"] .phase146-filter-chips li{background: #192b38;}}
@media screen{html[data-appearance="dark"] :is(h1,h2,h3,h4,h5,h6,legend,.metric-copy strong,.dashboard-identity,.profile-text strong,.hub-account strong){color:var(--text)}
html[data-appearance="dark"] :is(.muted,.eyebrow,.metric-copy small,.metric-copy em,.card-heading p,.panel-heading p,.table-subtext,.field-help){color:#adb8c9}
html[data-appearance="dark"] :is(.panel,.data-card,.metric-card,.app-header,.portal-hub-header,.login-card,.class-tool-group,.form-section,.user-editor-action-bar,.sticky-action-bar,.floating-action-bar,.form-action-bar){background:var(--card);border-color:#323c4e;color:var(--text)}
html[data-appearance="dark"] :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),select,textarea,.form-control,.global-search){background:#141b26;border-color:#3b485b;color:var(--text)}
html[data-appearance="dark"] .btn.success{background:#236549;border-color:#377e5e;color:#fff}
html[data-appearance="dark"] :is(.message.success,.message:not(.error):not(.warning):not(.info),.status-pill.approved,.status-pill.completed,.status-pill.accepted,.status-complete,.status-badge.complete){background:#19392e;color:#a0e0bc;border-color:#3e715a}
html[data-appearance="dark"] :is(.message.warning,.status-pill.pending,.status-pill.no_response,.status-pill.no-response,.status-draft){background:#40331d;color:#f1ce86;border-color:#786031}
html[data-appearance="dark"] :is(.message.error,.status-pill.rejected,.status-pill.declined,.status-pill.expired,.errorlist){background:#40232c;color:#ffb1b7;border-color:#80434f}
html[data-appearance="dark"] .message.info{background:#1b3045;color:#b9d8f5;border-color:#3a5b7a}}
@media screen{html[data-appearance="dark"] :is(h1,h2,h3,h4,h5,h6,legend,.metric-copy strong,.dashboard-identity,.profile-text strong,.hub-account strong){color:var(--text)}
html[data-appearance="dark"] :is(.muted,.eyebrow,.metric-copy small,.metric-copy em,.card-heading p,.panel-heading p,.table-subtext,.field-help){color:#adb8c9}
html[data-appearance="dark"] :is(.panel,.data-card,.metric-card,.app-header,.portal-hub-header,.login-card,.class-tool-group,.form-section,.user-editor-action-bar,.sticky-action-bar,.floating-action-bar,.form-action-bar){background:var(--card);border-color:#323c4e;color:var(--text)}
html[data-appearance="dark"] :is(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),select,textarea,.form-control,.global-search){background:#141b26;border-color:#3b485b;color:var(--text)}
html[data-appearance="dark"] .btn.success{background:#236549;border-color:#377e5e;color:#fff}
html[data-appearance="dark"] :is(.message.success,.message:not(.error):not(.warning):not(.info),.status-pill.approved,.status-pill.completed,.status-pill.accepted,.status-complete,.status-badge.complete){background:#19392e;color:#a0e0bc;border-color:#3e715a}
html[data-appearance="dark"] :is(.message.warning,.status-pill.pending,.status-pill.no_response,.status-pill.no-response,.status-draft){background:#40331d;color:#f1ce86;border-color:#786031}
html[data-appearance="dark"] :is(.message.error,.status-pill.rejected,.status-pill.declined,.status-pill.expired,.errorlist){background:#40232c;color:#ffb1b7;border-color:#80434f}
html[data-appearance="dark"] .message.info{background:#1b3045;color:#b9d8f5;border-color:#3a5b7a}}
.inservice-workspace-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding-bottom:12px;border-bottom:1px solid var(--border);}
.narrative-form .narrative-sections{max-height:72vh;overflow:auto}
.narrative-form textarea{font:inherit;width:100%;min-height:170px;resize:vertical;line-height:1.6}
.narrative-actions{grid-column:1/-1;position:sticky;bottom:0;z-index:9;padding:16px;display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;background:var(--card-bg,#fff);border:1px solid var(--border,#d9dfe6);border-radius:var(--r);box-shadow:0 -2px 12px #0001}
.narrative-form .errorlist{color:#b3261e}
.narrative-form>.errorlist{grid-column:1/-1}
@media(max-width:820px){.narrative-form .narrative-sections{max-height:none}
.narrative-actions{padding:10px;justify-content:flex-start}}
.phase146-notice, .phase146-report-summary { padding: 1rem; border: 1px solid #cbd5e1; border-radius: .65rem; margin: 1rem 0; background: var(--light); color: #173448; overflow-wrap: anywhere; }
.phase146-basic-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(230px,100%),1fr)); gap: 1rem; }
.phase146-basic-grid .field, .phase146-report-summary > * { min-width: 0; }
.phase146-basic-grid select, .phase146-basic-grid input { width: 100%; max-width: 100%; box-sizing: border-box; }
.phase146-more { margin: 1rem 0; }
.phase146-more > summary { padding: .8rem; cursor: pointer; font-weight: 700; }
.phase146-filter-chips { display: flex; flex-wrap: wrap; gap: .5rem; padding: 0; list-style: none; }
.phase146-filter-chips li { background: #e4edf4; border-radius: .4rem; padding: .35rem .6rem; }
.phase146-report-summary .actions, .phase146-section-controls, .phase146-person-nav { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; }
.phase146-person-nav { margin-bottom: 1rem; }
.phase146-report-summary:focus { outline: 2px solid #167e9b; outline-offset: 3px; }
@media(max-width:600px) {.phase146-report-summary .btn, .phase146-section-controls .btn { white-space: normal; }}
.phase147-filter-card label,.phase147-filter-card legend,.phase147-filter-card h2,.phase147-filter-card h3,
.phase147-filter-panel > .panel-heading h2,.phase147-filter-panel > .card-heading h2 { font-weight:700; color:var(--filter-accent,#173e63); }
.support-ticket-form .form-control { display:block; width:100%; max-width:100%; min-height:38px; font-size:1rem; font-weight:400; }
.support-ticket-form textarea.form-control { min-height:180px; resize:vertical; }
.support-ticket-form .field-help,.support-ticket-form .support-optional { font-weight:400; color:var(--muted); font-size:.875rem; line-height:1.45; }
.support-ticket-form .field-help { margin:7px 0 0; }
.inservice-completion-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
.inservice-completion-grid .data-card{background:var(--card);color:#172c3e;border-color:#dbe3e9;}
.inservice-completion-grid .data-card.requirement-met{background:#e5f4ec;border-color:#91c6aa;color:#174b35;}
.inservice-completion-grid .progress-heading{flex-wrap:wrap;align-items:start;}
.inservice-completion-grid .progress-heading strong{white-space:nowrap;}
.inservice-completion-grid .completion-label{color:#226447;font-size:12px;font-weight:700;}
@media(max-width:1200px){.inservice-completion-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){.inservice-completion-grid{grid-template-columns:minmax(0,1fr);}}
.inservice-management-heading{margin-bottom:18px;align-items:flex-start;}
.inservice-management-heading p{margin-top:4px;margin-bottom:6px;}
.inservice-management-heading .page-heading-actions{align-self:center;}
.inservice-management-hero{gap:18px;margin-bottom:18px;}
.inservice-management-hero .certification-status-card{padding:18px;gap:14px;}
.inservice-management-hero .status-orb{width:44px;height:44px;flex:0 0 44px;font-size:20px;}
.inservice-management-hero .certification-status-card h2{font-size:22px;line-height:1.2;margin:4px 0 6px;}
.inservice-management-hero .certification-status-card p{font-size:14px;line-height:1.4;}
.inservice-management-hero .cert-date-card{padding:16px 18px;gap:6px 14px;font-size:14px;}
.inservice-management-hero .cert-comments{padding-top:8px;margin-top:2px;}
.inservice-management-hero .cert-comments small{margin-bottom:3px;}
.inservice-management-hero .cert-comments p{font-size:13px;line-height:1.35;overflow-wrap:anywhere;}
.inservice-management-hero .cert-form-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:4px;padding-top:8px;gap:8px;}
.inservice-management-hero .cert-form-actions .btn{padding:9px 10px;font-size:12px;min-width:0;white-space:normal;text-align:center;}
@media(max-width:900px){.inservice-management-hero{grid-template-columns:minmax(0,1fr);}}
@media(max-width:480px){.inservice-management-hero .cert-form-actions{grid-template-columns:minmax(0,1fr);}}
#report-more-filters .personal-report-filter-sections{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;padding:16px 0;}
#report-more-filters .personal-report-filter-section{min-width:0;padding:0 0 18px;border-right:0;border-bottom:1px solid var(--border);}
#report-more-filters .personal-report-filter-section h3{font-size:12px;margin:0 0 12px;}
#report-more-filters .personal-report-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:18px 22px;align-items:start;}
#report-more-filters .personal-report-filter-grid .field{min-width:0;display:grid;grid-template-rows:minmax(34px,auto) 44px auto;gap:5px;}
#report-more-filters .personal-report-filter-grid label{display:flex;align-items:end;margin:0;font-size:13px;line-height:1.3;}
#report-more-filters .personal-report-filter-grid .form-control{width:100%;max-width:100%;min-width:0;box-sizing:border-box;height:38px;min-height:38px;padding:10px 12px;font-size:14px;line-height:1.3;}
#report-more-filters .personal-report-filter-grid select.form-control{padding-right:42px;}
#report-more-filters .personal-report-filter-grid small{margin:0;font-size:12px;line-height:1.4;}
@media(max-width:620px){#report-more-filters .personal-report-filter-grid{grid-template-columns:minmax(0,1fr);}
#report-more-filters .personal-report-filter-grid .field{grid-template-rows:auto 44px auto;}}
#report-filter-form.state-report-filter-groups {display:block;}
#report-filter-form.state-report-filter-groups > section {width:100%;min-width:0;}
#report-filter-form.state-report-filter-groups .phase146-basic-grid {grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:16px;align-items:start;}
#report-filter-form.state-report-filter-groups > .phase146-more {width:100%;box-sizing:border-box;margin:16px 0 8px;}
#uploaded-dre-narratives > .card-heading {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:8px 0;margin:0 0 8px;min-height:0;}
#uploaded-dre-narratives > .card-heading h2 {margin:0;}
@media screen and (min-width:1025px) {:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .page-heading,:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .dashboard-intro {margin-bottom:18px;gap:12px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .page-heading h1,:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .dashboard-intro h1 {font-size:32px;line-height:1.15;margin-bottom:6px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) :is(.panel,.progress-card,.chart-card,.requirement-progress-card,.admin-center-card,.program-record-card) {padding:17px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .panel {margin-bottom:18px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) :is(.card-heading,.panel-heading) {gap:12px;margin-bottom:14px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) :is(.report-results,.recent-card)>.card-heading {padding:17px 20px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .report-results {padding:0;margin-top:18px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) :is(.dashboard-stats,.dashboard-grid,.requirement-progress-grid,.certification-hero,.report-chart-grid,.admin-center-grid,.program-record-grid) {gap:16px;margin-bottom:18px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .metric-card {padding:16px;min-height:106px;gap:12px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .metric-icon {width:42px;height:42px;flex:0 0 42px;font-size:22px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .metric-copy strong {font-size:34px;line-height:1.1;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .metric-copy small {font-size:12px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .metric-copy em {font-size:11px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) :is(.certification-status-card,.cert-date-card) {padding:17px;gap:9px 14px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .status-orb {width:44px;height:44px;flex:0 0 44px;font-size:20px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .progress-heading {gap:9px;margin-bottom:9px;flex-wrap:wrap;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .progress-track {height:10px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .requirement-progress-card .requirement-icon {width:24px;height:24px;top:12px;right:12px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) :is(.form-grid,.data-form-grid,.detail-grid,.sectioned-form,.stacked-form) {gap:15px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .sectioned-form {grid-template-columns:178px minmax(0,1fr);}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .form-step-nav {padding:14px 9px;top:78px;max-height:calc(100vh - 96px);overflow-y:auto;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .form-step-nav a {padding:8px;gap:7px;font-size:12px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .form-step-nav a strong {font-size:12px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .form-step-nav a small {font-size:10px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .data-form-section {padding:20px 23px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .section-title {padding:14px 20px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .draft-toolbar {padding:12px 20px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) :is(.field,.form-field,.search,.form-grid>*,.data-form-grid>*) {min-width:0;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) :is(.field label,.form-field label,.field-label) {font-size:12px;line-height:1.35;white-space:normal;overflow-wrap:break-word;margin-bottom:5px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) :is(.help-text,.field-help,.field small) {font-size:11px;line-height:1.4;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) :is(.actions,.page-heading-actions,.filter-actions) {gap:7px;flex-wrap:wrap;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) :is(.floating-form-actions,.sticky-form-actions) {padding:8px 10px;gap:7px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) th:not(.action-header),:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) td:not(.row-actions) {padding:10px 11px;font-size:12px;line-height:1.4;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) th:not(.action-header) {font-size:10px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) :is(.badge,.status-pill,.qualification-badge,.permission-badge) {font-size:10px;padding:4px 7px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) .status-filter {min-width:0;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) #report-more-filters .personal-report-filter-grid {grid-template-columns:repeat(auto-fit,minmax(min(100%,205px),1fr));gap:14px 18px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) #report-more-filters .personal-report-filter-grid .field {grid-template-rows:minmax(32px,auto) 36px auto;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) #report-more-filters .personal-report-filter-grid .form-control {height:36px;min-height:36px;font-size:13px;padding:7px 10px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) #report-more-filters .personal-report-filter-grid select.form-control {padding-right:34px;}
:is(body.app-body.portal-compact,body.portal-hub-body.portal-compact) :is(.main-content,.portal-hub-main) :is(.state-report-primary-filters,.state-report-secondary-filters,.sfst-list-filter-grid) {grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:13px;padding:15px 18px;}
.app-body .main-content .state-report-filter-groups {grid-template-columns:repeat(auto-fit,minmax(min(100%,480px),1fr));}
.app-body .main-content .state-report-filter-groups .state-filter-grid {grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:12px 16px;}
.app-body .main-content .state-filter-grid .field>label {min-height:32px;display:flex;align-items:flex-end;}}
@media screen {.app-body .main-content .evaluation-choice-grid + .panel { margin-top:24px; }}
@media screen {:is(body.app-body.portal-compact, body.portal-hub-body.portal-compact)
  :is(.main-content, .portal-hub-main) :is(.page-heading,.dashboard-intro,.choice-heading) h1 {
    font-size:32px;line-height:1.2;letter-spacing:-.4px;margin:0 0 6px;
  }
:is(body.app-body, body.portal-hub-body) :is(.page-heading,.choice-heading) {
    gap:12px;margin-bottom:18px;
  }
:is(body.app-body, body.portal-hub-body) :is(.page-heading,.choice-heading) > div {min-width:0;}
:is(body.app-body, body.portal-hub-body) :is(.page-heading,.choice-heading) p:not(.eyebrow) {
    color:var(--muted);font-size:14px;font-weight:400;line-height:1.5;margin:0;
  }
:is(body.app-body, body.portal-hub-body) :is(.page-heading,.choice-heading) .eyebrow {
    font-size:9px;line-height:1.4;font-weight:800;letter-spacing:1.8px;margin:0 0 8px;
  }}
@media screen and (max-width:560px) {:is(body.app-body.portal-compact, body.portal-hub-body.portal-compact)
  :is(.main-content, .portal-hub-main) :is(.page-heading,.dashboard-intro,.choice-heading) h1 {font-size:28px;}}
@media screen {.report-results > .management-card-pagination {
    padding:0 20px;box-sizing:border-box;gap:12px;flex-wrap:wrap;
  }
.report-results > .column-controls.card-search-toolbar167 {
    margin-left:20px;margin-right:20px;
  }}
@media screen and (max-width:680px) {.report-results > .management-card-pagination {padding-left:16px;padding-right:16px;}
.report-results > .column-controls.card-search-toolbar167 {margin-left:16px;margin-right:16px;}}
.save-feedback-notice169.success{background:#e7f4eb;border-color:#338454;color:#174b2b}
/* floating save bars follow the theme */
html[data-appearance="dark"] :is(.incident-final-actions,.sticky-form-actions){background:rgba(27,34,48,.97);border-color:#3a4658;color:var(--text);box-shadow:0 -6px 24px rgba(0,0,0,.45)}
html[data-appearance="dark"] :is(.incident-final-actions,.sticky-form-actions) strong{color:#fff}
html[data-appearance="dark"] :is(.incident-final-actions,.sticky-form-actions) :is(p,span){color:#b9c3d1}
