.ocr-review-workspace {
  display: grid;
  grid-template-columns: minmax(320px, 42%) minmax(0, 58%);
  gap: 1rem;
  height: calc(100vh - 8.5rem);
  min-height: 32rem;
  overflow: hidden;
}
.ocr-image-pane,
.ocr-form-pane {
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.ocr-number-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: .5rem;
}
.ocr-number-field { min-width: 0; }
.ocr-number-field .form-label { white-space: nowrap; }
@media (max-width: 1199.98px) {
  .ocr-number-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 991.98px) {
  .ocr-review-workspace {
    display: block;
    height: auto;
    min-height: 0;
    overflow: visible;
  }
  .ocr-image-pane,
  .ocr-form-pane {
    overflow: visible;
  }
  .ocr-image-pane { margin-bottom: 1rem; }
}
@media (max-width: 575.98px) {
  .ocr-number-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.analytics-hero { background:linear-gradient(125deg,#102d50,#17698a);color:#fff;border-radius:1rem;padding:2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;box-shadow:0 .75rem 2rem rgba(16,45,80,.18) }
.section-heading { display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1rem }
.section-heading h2 { margin:0;font-size:1.45rem;color:#17365d }
.section-heading span { color:#64748b;font-size:.875rem }
.analytics-kpis { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem }
.analytics-kpis-four { grid-template-columns:repeat(4,minmax(0,1fr)) }
.analytics-kpi,.analytics-kpis.compact>div { padding:1.1rem;border:1px solid #dae2ec;border-radius:.75rem;background:#fff;box-shadow:0 .2rem .75rem rgba(22,42,72,.05) }
.analytics-kpi span,.analytics-kpis.compact span,.sum-grid span { display:block;color:#64748b;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em }
.analytics-kpi strong,.analytics-kpis.compact strong { display:block;font-size:1.65rem;color:#17365d;margin-top:.15rem }
.analytics-kpis.compact { grid-template-columns:repeat(4,minmax(0,1fr));margin:0 }
.card-header { background:#f7f9fc;display:flex;justify-content:space-between;align-items:center;gap:1rem }.card-header span{font-size:.78rem;color:#64748b}
.analytics-table-scroll { max-height:30rem }.analytics-table-scroll thead{position:sticky;top:0;z-index:1}.table thead th{background:#edf2f7;white-space:nowrap;font-size:.78rem;text-transform:uppercase;color:#475569}
.number-pill { display:inline-grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:50%;background:#17365d;color:#fff;text-decoration:none;font-weight:700 }
.number-heatmap { display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem }.number-heatmap a{aspect-ratio:1;min-width:0;border-radius:.5rem;background:color-mix(in srgb,#087c9e calc(var(--intensity)*85%),#edf3f7);color:#102d50;display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none}.number-heatmap a[style*="1;"]{color:#fff}.number-heatmap small{font-size:.65rem}
.number-detail { border-left:5px solid #087c9e }.metric-bar{display:grid;grid-template-columns:minmax(7.5rem,1fr) 2fr auto;gap:.6rem;align-items:center;margin:.65rem 0;font-size:.82rem}.metric-bar>div{height:.5rem;background:#e7edf3;border-radius:1rem;overflow:hidden}.metric-bar i{display:block;height:100%;background:#1383a2;border-radius:inherit}.metric-bar strong{font-size:.75rem;white-space:nowrap}.sum-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.sum-grid strong{display:block;font-size:1.5rem;color:#17365d}
.analytics-empty { border:1px dashed #aebdce;background:#f8fafc;border-radius:.75rem;padding:2.5rem;text-align:center;color:#526176 }.analytics-empty h3{font-size:1.1rem;color:#31445c}
.pair-matrix th,.pair-matrix td{text-align:center;min-width:2.5rem}.pair-matrix td{background:color-mix(in srgb,#1483a2 calc(min(100%,var(--pair,0%))),#fff)}.pair-matrix .matrix-diagonal{background:#e8edf3;color:#7a8797}
@media(max-width:991.98px){.analytics-kpis{grid-template-columns:repeat(2,1fr)}.number-heatmap{grid-template-columns:repeat(10,1fr)}}
@media(max-width:575.98px){.analytics-hero{align-items:flex-start;flex-direction:column;padding:1.35rem}.analytics-kpis,.analytics-kpis.compact{grid-template-columns:1fr 1fr}.analytics-kpi:last-child{grid-column:1/-1}.number-heatmap{grid-template-columns:repeat(5,1fr)}.metric-bar{grid-template-columns:1fr auto}.metric-bar>div{grid-row:2;grid-column:1/-1}.section-heading{align-items:flex-start;flex-direction:column;gap:.2rem}}
.release-card { border-left:4px solid #087c9e; box-shadow:0 .2rem .75rem rgba(22,42,72,.05) }
.rule-grid { display:grid;grid-template-columns:1fr 1fr;gap:1rem }
.rule-grid>div { border-top:1px solid #e2e8f0;padding-top:.75rem }
.rule-grid dt { color:#64748b;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em }
.rule-grid dd { margin:0;color:#17365d }
@media(max-width:575.98px){.rule-grid{grid-template-columns:1fr}}

/* Administrator shell: mobile operations are the primary layout, while the
   same routes and markup remain available in the desktop navigation. */
.admin-bottom-nav { display:none; }
.admin-more .list-group-item { min-height:3.5rem;padding:.8rem 1rem; }
.admin-more .list-group-item small { display:block;color:#64748b;margin-top:.15rem; }
.admin-touch,.admin-shell .btn { min-height:2.75rem;display:inline-flex;align-items:center;justify-content:center; }
.admin-shell .btn-sm { min-height:2.5rem; }
.admin-status { text-transform:capitalize; }
.admin-card-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem; }
.admin-action-card { color:inherit;text-decoration:none;border:1px solid #dce3eb;border-radius:.8rem;padding:1rem;background:#fff;box-shadow:0 .15rem .55rem rgba(15,35,60,.06); }
.admin-action-card:hover,.admin-action-card:focus-visible { border-color:#0d6efd;box-shadow:0 0 0 .2rem rgba(13,110,253,.15); }
.admin-action-card strong,.admin-action-card span { display:block; }
.admin-action-card .metric { color:#17365d;font-size:1.6rem;line-height:1.2; }
.admin-quick-actions { display:flex;flex-wrap:wrap;gap:.65rem; }
.mobile-only { display:none; }

@media (max-width:991.98px) {
  .admin-topbar { min-height:3.5rem; }
  .admin-bottom-nav { position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:0;right:0;bottom:0;z-index:1030;background:#fff;border-top:1px solid #cbd5e1;padding:.25rem max(.25rem,env(safe-area-inset-right)) calc(.25rem + env(safe-area-inset-bottom)) max(.25rem,env(safe-area-inset-left));box-shadow:0 -.25rem 1rem rgba(15,23,42,.12); }
  .admin-bottom-nav a,.admin-bottom-nav button { min-height:3.5rem;border:0;background:transparent;color:#334155;text-decoration:none;font-size:.72rem;font-weight:600;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.05rem;border-radius:.35rem; }
  .admin-bottom-nav span { font-size:1.2rem;line-height:1; }
  .admin-bottom-nav a:hover,.admin-bottom-nav a:focus-visible,.admin-bottom-nav button:hover,.admin-bottom-nav button:focus-visible { color:#0d6efd;background:#eef5ff;outline:2px solid transparent; }
  .admin-main { padding-bottom:5rem; }
  .admin-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mobile-only { display:block; }
}

@media (max-width:575.98px) {
  .admin-main { margin-top:1rem!important;padding-left:.75rem;padding-right:.75rem; }
  .admin-page-heading { align-items:stretch!important;flex-direction:column;gap:.75rem; }
  .admin-page-heading>.btn,.admin-page-heading>div>.btn { width:100%; }
  .admin-quick-actions { display:grid;grid-template-columns:1fr 1fr; }
  .admin-quick-actions .btn { width:100%;white-space:normal; }
  .admin-card-grid { gap:.6rem; }
  .admin-action-card { padding:.8rem; }
  .admin-action-card .metric { font-size:1.35rem; }
  details.admin-filters>summary { min-height:2.75rem;display:flex;align-items:center;font-weight:600;cursor:pointer; }
  .mobile-card-table,.mobile-card-table tbody,.mobile-card-table tr,.mobile-card-table td { display:block;width:100%; }
  .mobile-card-table thead { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
  .mobile-card-table tr { margin-bottom:.75rem;padding:.85rem;border:1px solid #dce3eb;border-radius:.75rem;background:#fff;box-shadow:0 .1rem .4rem rgba(15,35,60,.05); }
  .mobile-card-table td { border:0;padding:.22rem 0;text-align:left!important;white-space:normal!important; }
  .mobile-card-table td[data-label]:before { content:attr(data-label);display:block;color:#64748b;font-size:.72rem;text-transform:uppercase;letter-spacing:.035em;font-weight:600; }
  .mobile-card-table td.admin-card-title { font-size:1.05rem;font-weight:700;color:#17365d; }
  .mobile-card-table td.admin-card-actions { padding-top:.65rem; }
  .mobile-card-table td.admin-card-actions .btn,.mobile-card-table td.admin-card-actions>a { width:100%;min-height:2.75rem;display:flex;align-items:center;justify-content:center; }
  .result-numbers { word-spacing:.25rem;font-weight:700; }
  .result-form-actions { position:sticky;bottom:4.15rem;z-index:10;background:rgba(255,255,255,.96);margin-left:-1rem;margin-right:-1rem;padding:.75rem 1rem;border-top:1px solid #dce3eb;box-shadow:0 -.2rem .6rem rgba(15,23,42,.08); }
}
