/* Desktop presentation only. All visual treatments are supplied by sim-theme-tokens.js. */
html { background: var(--sim-canvas); }
html body.sim-page {
  --rx-sans: var(--sim-font-body);
  --rx-display: var(--sim-font-display);
  --rx-mono: var(--sim-font-mono);
  --accent: var(--sim-accent);
  --rx-action: var(--sim-accent);
  margin: 0; background: var(--sim-canvas) !important; color: var(--sim-text);
  font: 500 12px/1.4 var(--sim-font-body); color-scheme: var(--sim-scheme);
  font-variant-numeric: tabular-nums;
}
body.sim-page *, body.sim-page *::before, body.sim-page *::after { box-sizing: border-box; }
body.sim-page :is(button,input,select,textarea,a,label,th,td) { font-family: var(--sim-font-body); font-weight: 500; }
body.sim-page :is(h1,h2,h3,.section-label,.panel-heading,.queue-count,.metric-title,.stat-value,.step-pill) {
  font-family: var(--sim-font-display) !important; font-weight: 500; text-shadow: var(--sim-no-shadow); letter-spacing: 0;
}
html body.sim-page header {
  display: flex !important; justify-content: flex-start; position: relative; z-index: 901; gap: 12px; height: 52px; min-height: 52px; padding: 6px 12px;
  background: var(--sim-app-bar) !important; color: var(--sim-app-text);
  border-bottom: 1px solid var(--sim-border); box-shadow: var(--sim-raised);
}
body.sim-page header :is(.logo-text,.logo-rx,.user-email,.header-center-title) { color: var(--sim-app-text) !important; }
body.sim-page header .logo-area { margin: 0 auto 0 0; }
body.sim-page header .header-center-title { position: static; transform: none; margin-right: auto; font-size: 14px; }
body.sim-page .header-logo-banner { max-width: 140px; height: auto; }
body.sim-page .sim-theme-control { display: flex; align-items: center; gap: 6px; flex-shrink: 0; color: var(--sim-app-text); }
body.sim-page .theme-save-status { position: absolute; top: 100%; left: 12px; z-index: 100; max-width: 380px; background: var(--sim-surface); color: var(--sim-text); }
body.sim-page .theme-save-status:empty { display: none; }
html body.sim-page .sim-shell { grid-template-columns: minmax(230px,1fr) minmax(440px,2fr) minmax(250px,1fr) !important; gap: 6px !important; padding: 8px !important; width: 100% !important; }
html body.sim-page .mode-select-screen { top: 52px; }
html body.sim-page .monitor-workspace { top: 52px; height: calc(100dvh - 52px); background: var(--sim-canvas) !important; }
html body.sim-page .sim-panel { border: 1px solid var(--sim-border) !important; background: var(--sim-surface) !important; box-shadow: var(--sim-raised); }
html body.sim-page :is(.panel-heading,.workspace-header,.queue-section-title) {
  background: var(--sim-header-gradient) !important; color: var(--sim-text);
  border-bottom: 1px solid var(--sim-border); min-height: 34px !important; padding: 6px 8px;
}
html body.sim-page :is(.workflow-stepper,.stage-bar,.sim-toolbar) {
  background: var(--sim-stage-gradient); border: 1px solid var(--sim-border); box-shadow: var(--sim-raised);
}
html body.sim-page :is(.sim-card,.queue-card,.workspace-card,.profile-card,.panel,.mode-card,.lock-box,.shift-modal-card,.voice-call-setup) {
  background: var(--sim-surface) !important; color: var(--sim-text); border: 1px solid var(--sim-border); border-radius: 3px !important;
}
html body.sim-page :is(.profile-field,.rx-summary,.debrief-value,.reference-profile,.verification-card) {
  background: var(--sim-surface); border: 1px solid var(--sim-border); border-radius: 2px; padding: 8px; box-shadow: var(--sim-inset);
}
html body.sim-page :is(input:not([type=checkbox]):not([type=radio]),select,textarea,.field-input) {
  background: var(--sim-surface) !important; color: var(--sim-text) !important; border: 1px solid var(--sim-border) !important;
  border-radius: 2px !important; box-shadow: var(--sim-inset); padding: 5px 7px; font-size: 12px;
}
body.sim-page :is(input,textarea)::placeholder { color: var(--sim-muted); }
body.sim-page :focus-visible { outline: 2px solid var(--sim-accent); outline-offset: 2px; }
html body.sim-page :is(button,.sim-account-link,.paywall-link) {
  border-radius: 3px; border: 1px solid var(--sim-border); background: var(--sim-header-gradient); color: var(--sim-text);
  box-shadow: var(--sim-raised); text-shadow: var(--sim-no-shadow);
}
html body.sim-page :is(.primary-action,.header-btn,#authSubmitBtn) { background: var(--sim-accent) !important; color: var(--sim-on-accent) !important; }
html body.sim-page :is(.primary-action,.header-btn,#authSubmitBtn):hover { background: var(--sim-accent-hover) !important; }
html body.sim-page :is(.step-pill.active,.step-pill.complete) { background: var(--sim-queue-bg) !important; color: var(--sim-queue-text) !important; border-color: var(--sim-queue-border) !important; }
html body.sim-page :is(.field-label,.queue-drug,.panel-copy,.metric-copy,.queue-empty,.section-label) { color: var(--sim-muted) !important; }
html body.sim-page :is(.field-value,.queue-patient,.rx-summary-value,.profile-name) { color: var(--sim-text); font-size: 12px; font-weight: 500; }
html body.sim-page :is(.queue-drug,.field-label,.queue-tech,.rx-summary-line,.profile-field,.panel-copy,td) { font-weight: 500; }
html body.sim-page :is(.profile-field,.queue-item) { border-radius: 2px !important; }
html body.sim-page .profile-name { font-size: 18px; }
html body.sim-page .workspace-header h1 { color: var(--sim-text) !important; font-size: 17px !important; }
html body.sim-page :is(.ndc-code,.rx-number,.rx-id,.lot-number,.pharmacy-label-preview,.pharmacy-label-preview *,.template-label-preview,.template-label-preview *) { font-family: var(--sim-font-mono) !important; }
body.sim-page :is(td,th,input,.queue-count,.metric-value) { font-variant-numeric: tabular-nums; }
body.sim-page table { border-collapse: collapse; width: 100%; background: var(--sim-surface); color: var(--sim-text); }
body.sim-page :is(th,td) { padding: 5px 7px; border: 1px solid var(--sim-border); text-align: left; }
body.sim-page th { background: var(--sim-header-gradient); }
html body.sim-page .verification-alert:not(.major) { background: var(--sim-dur-bg); color: var(--sim-dur-text); border-color: var(--sim-dur-border); }
html body.sim-page .debrief-status.skipped { background: var(--sim-hold-bg); color: var(--sim-hold-text); }
html body.sim-page .debrief-step-card.skipped { border-color: var(--sim-hold-border); }
html body.sim-page .status-badge { border-radius: 2px; padding: 4px 6px; border: 1px solid var(--status-border, var(--sim-border)) !important; background: var(--status-bg, var(--sim-queue-bg)) !important; color: var(--status-text, var(--sim-queue-text)) !important; }
body.sim-page :is(.status-badge.new,.status-badge.open,.status-badge.processing,.status-badge.in-queue) { --status-bg: var(--sim-queue-bg); --status-text: var(--sim-queue-text); --status-border: var(--sim-queue-border); }
body.sim-page :is(.status-badge.hold,.status-badge.on-hold) { --status-bg: var(--sim-hold-bg); --status-text: var(--sim-hold-text); --status-border: var(--sim-hold-border); }
body.sim-page :is(.status-badge.pending-pv1,.status-badge.needs-verification) { --status-bg: var(--sim-verification-bg); --status-text: var(--sim-verification-text); --status-border: var(--sim-verification-border); }
body.sim-page .status-badge.dur { --status-bg: var(--sim-dur-bg); --status-text: var(--sim-dur-text); --status-border: var(--sim-dur-border); }
body.sim-page :is(.status-badge.filled,.status-badge.ready,.status-badge.ready-to-fill) { --status-bg: var(--sim-ready-bg); --status-text: var(--sim-ready-text); --status-border: var(--sim-ready-border); }
body.sim-page .status-badge.sold { --status-bg: var(--sim-sold-bg); --status-text: var(--sim-sold-text); --status-border: var(--sim-sold-border); }
body.sim-page .status-badge.rejected { --status-bg: var(--sim-rejected-bg); --status-text: var(--sim-rejected-text); --status-border: var(--sim-rejected-border); }
html body.sim-page :is(.allergy-chip:not(.nkda),.clinical-alert,.verification-alert.major,.critical-alert) {
  background: var(--sim-critical-bg) !important; color: var(--sim-critical-text) !important;
  border: 2px solid var(--sim-critical-border) !important; border-left-width: 6px !important;
  box-shadow: var(--sim-raised); font-weight: 700 !important; padding: 8px 10px;
}
html body.sim-page :is(.clinical-alert,.verification-alert.major,.critical-alert) * { color: var(--sim-critical-text) !important; }
html body.sim-page .allergy-chip.nkda { background: var(--sim-ready-bg); color: var(--sim-ready-text); border-color: var(--sim-ready-border); }
body.sim-page :is(#lockScreen,.shift-modal,.weekly-limit-modal) { background: var(--sim-overlay); }
body.sim-page :is(.lock-title,.lock-sub,.weekly-limit-dialog,.weekly-limit-dialog h2,.weekly-limit-dialog p) { color: var(--sim-text); }
body.sim-page .weekly-limit-dialog { background: var(--sim-surface); border-color: var(--sim-border); box-shadow: var(--sim-shadow); }
@media (max-width: 1000px) {
  html body.sim-page header { flex-wrap: wrap; height: auto; }
  html body.sim-page .sim-shell { grid-template-columns: minmax(0,1fr) !important; }
  html body.sim-page .monitor-workspace { height: auto; overflow: auto; }
  html body.sim-page { overflow: auto; }
  body.sim-page .header-center-title { position: static; transform: none; }
}
