/* Global readability correction for the reference shell. Keep labels compact, never microscopic. */
body { font-size:15px; }
.ref-app-shell { grid-template-columns:260px minmax(0,1fr); }
.ref-brand strong { font-size:18px; }.ref-brand small{font-size:13px}
.ref-nav-group-title strong{font-size:14px}.ref-nav-group-title em{font-size:13px}.ref-nav-entry{min-height:40px}.ref-nav-entry span{font-size:13px}.ref-nav-entry small{font-size:13px}
.ref-sidebar-status-head strong{font-size:13px}.ref-sidebar-status>div:not(.ref-sidebar-status-head){font-size:13px}.ref-reset-link{font-size:13px}
.ref-breadcrumb small{font-size:13px}.ref-breadcrumb strong{font-size:15px}.ref-commander small{font-size:13px}.ref-commander strong{font-size:13px}
.ref-eyebrow{font-size:13px}.ref-status-pill,.ref-count-badge{font-size:13px}.ref-level-label{font-size:14px}.ref-flash{font-size:13px}
.ref-inline-tags span{font-size:13px}.ref-queue-banner span{font-size:13px}.ref-queue-banner strong{font-size:14px}.ref-queue-banner small{font-size:13px}
.ref-resource-chip small,.ref-env-metric span{font-size:13px}.ref-resource-chip strong,.ref-env-metric strong{font-size:17px}.ref-resource-chip em,.ref-env-metric small{font-size:13px}
.ref-rail-head h2{font-size:18px}.ref-selection-card strong{font-size:13px}.ref-selection-card small{font-size:13px}.ref-selection-card em{font-size:13px}.ref-city-select{font-size:13px}
.ref-inspector-block>span{font-size:13px}.ref-inspector-block>strong{font-size:14px}.ref-inspector-block>small{font-size:13px}.ref-inspector-block ul{font-size:13px}.ref-cost-row{font-size:13px}.ref-inspector-stat-grid small{font-size:13px}.ref-inspector-action>small{font-size:13px}.ref-unlock-chain>div strong{font-size:13px}.ref-unlock-chain>div small{font-size:13px}
.ref-page-header h1{font-size:28px}.ref-page-header p{font-size:13px}.ref-quick-action strong{font-size:13px}.ref-quick-action small{font-size:13px}
.ref-metric{min-height:78px}.ref-metric span{font-size:13px}.ref-metric strong{font-size:21px}.ref-metric small{font-size:13px}.ref-panel-head h2{font-size:18px}.ref-colony-summary p{font-size:13px}.ref-priority-card p{font-size:13px}
.ref-task-row strong,.ref-warning-row strong,.ref-feed-row strong{font-size:13px}.ref-task-row small,.ref-warning-row small,.ref-feed-row small{font-size:13px}.ref-task-row em,.ref-warning-row em{font-size:13px}.ref-progress-row{font-size:13px}.ref-empty-compact strong{font-size:13px}.ref-empty-compact small{font-size:13px}.ref-empty-compact button{font-size:13px}
.ref-primary-button,.ref-secondary-button,.ref-quick-action,.ref-empty-compact button{font-size:13px;min-height:40px}
@media(max-width:1180px){.ref-app-shell{grid-template-columns:220px minmax(0,1fr)}.ref-nav-entry span{font-size:13px}}
@media(max-width:820px){.ref-app-shell{grid-template-columns:78px minmax(0,1fr)}}


/* v0.13.5 — conservative QHD/4K readability foundation. */
@media (min-width: 2200px) and (min-height: 1200px) {
  body { font-size: 16px; }
  .ref-app-shell { grid-template-columns: 280px minmax(0, 1fr); }
  .view-stage { padding: 16px; }
  .ref-commandbar { padding-left: 28px; padding-right: 24px; }
  .ref-nav-entry { min-height: 43px; }
  .ref-nav-entry span { font-size: 14px; }
  .ref-breadcrumb strong { font-size: 16px; }
}

@media (min-width: 3000px) and (min-height: 1700px) {
  body { font-size: 17px; }
  .ref-app-shell { grid-template-columns: 320px minmax(0, 1fr); }
  .view-stage { padding: 20px; }
  .ref-brand { padding-left: 23px; padding-right: 23px; }
  .ref-brand strong { font-size: 21px; }
  .ref-navigation { padding-left: 13px; padding-right: 13px; }
  .ref-nav-entry { min-height: 48px; padding: 9px 12px; }
  .ref-nav-entry span { font-size: 15px; }
  .ref-commandbar { padding-left: 34px; padding-right: 30px; }
  .ref-breadcrumb small { font-size: 13px; }
  .ref-breadcrumb strong { font-size: 18px; }
}


/* v0.13.5B — physical display density scaling.
   The entire application is enlarged as one coherent layout instead of
   inflating isolated text labels. Width and height are compensated so the
   scaled shell continues to fill the viewport without clipping. */
:root { --novaris-ui-scale: 1; }
#app { width: 100vw; height: 100dvh; overflow: hidden; }
#app > .ref-app-shell {
  width: calc(100vw / var(--novaris-ui-scale));
  height: calc(100dvh / var(--novaris-ui-scale));
  zoom: var(--novaris-ui-scale);
}
@supports not (zoom: 1) {
  #app > .ref-app-shell {
    transform: scale(var(--novaris-ui-scale));
    transform-origin: 0 0;
  }
}
html[data-novaris-ui-density="4k-komfort"] .ref-eyebrow,
html[data-novaris-ui-density="4k-komfort"] .ref-inspector-block > span,
html[data-novaris-ui-density="4k-komfort"] .ref-cost-row,
html[data-novaris-ui-density="4k-komfort"] .planet-side-title,
html[data-novaris-ui-density="4k-komfort"] .planet-selected-city-metrics small,
html[data-novaris-ui-density="4k-komfort"] .planet-building-summary > div:not(.planet-side-title) {
  font-size: max(13px, 0.8125rem);
}
html[data-novaris-ui-density="4k-komfort"] .ref-inspector-block > small,
html[data-novaris-ui-density="4k-komfort"] .ref-inspector-block ul,
html[data-novaris-ui-density="4k-komfort"] .planet-project-summary small,
html[data-novaris-ui-density="4k-komfort"] .planet-summary-lines > div {
  font-size: max(13px, 0.8125rem);
}
