/* Smart Shrimp Log — Typography Design Language v1
   Canonical semantic type roles across Dashboard/Farms/Pond/Inventory/Admin/Settings.
   IBM Plex Sans Thai remains the single UI face; this layer converges size/weight/leading/tracking only.
   Presentation-only: no layout, data, route, persistence, or business semantics. */

:root{
  --ssl-font-ui:'IBM Plex Sans Thai','Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --ssl-font-display:var(--ssl-font-ui);
  --ssl-font-body:var(--ssl-font-ui);
  --ssl-font-control:var(--ssl-font-ui);
  --ssl-type-top-domain-size:11.5px;
  --ssl-type-top-domain-weight:850;
  --ssl-type-top-domain-line:1.2;
  --ssl-type-top-domain-track:.055em;

  --ssl-type-top-title-size:16px;
  --ssl-type-top-title-weight:800;
  --ssl-type-top-title-line:1.18;
  --ssl-type-top-title-track:-.01em;

  --ssl-type-top-pill-size:12.5px;
  --ssl-type-top-pill-weight:800;
  --ssl-type-top-pill-line:1.2;

  --ssl-type-eyebrow-size:10.5px;
  --ssl-type-eyebrow-weight:800;
  --ssl-type-eyebrow-line:1.2;
  --ssl-type-eyebrow-track:.08em;

  --ssl-type-page-title-size:21px;
  --ssl-type-page-title-weight:700;
  --ssl-type-page-title-line:1.15;
  --ssl-type-page-title-track:-.02em;

  --ssl-type-hero-title-size:24px;
  --ssl-type-hero-title-weight:700;
  --ssl-type-hero-title-line:1.12;
  --ssl-type-hero-title-track:-.025em;

  --ssl-type-section-title-size:18px;
  --ssl-type-section-title-weight:700;
  --ssl-type-section-title-line:1.2;
  --ssl-type-section-title-track:-.01em;

  --ssl-type-card-title-size:14px;
  --ssl-type-card-title-weight:700;
  --ssl-type-card-title-line:1.25;

  --ssl-type-kpi-value-size:22px;
  --ssl-type-kpi-value-weight:800;
  --ssl-type-kpi-value-line:1.05;
  --ssl-type-kpi-value-track:-.02em;

  --ssl-type-kpi-label-size:13px;
  --ssl-type-kpi-label-weight:700;
  --ssl-type-kpi-label-line:1.2;

  --ssl-type-compact-kpi-value-size:13px;
  --ssl-type-compact-kpi-value-weight:800;
  --ssl-type-compact-kpi-value-line:1.05;
  --ssl-type-compact-kpi-label-size:10.5px;
  --ssl-type-compact-kpi-label-weight:700;
  --ssl-type-compact-kpi-label-line:1.15;

  --ssl-type-body-size:13px;
  --ssl-type-body-weight:400;
  --ssl-type-body-line:1.45;
  --ssl-type-body-strong-weight:700;
  --ssl-type-meta-size:11.5px;
  --ssl-type-meta-weight:400;
  --ssl-type-meta-line:1.35;

  --ssl-type-button-size:13px;
  --ssl-type-button-weight:700;
  --ssl-type-button-line:1.2;
  --ssl-type-nav-size:11.5px;
  --ssl-type-nav-weight:650;
  --ssl-type-nav-line:1.15;

  --ssl-type-table-head-size:11.5px;
  --ssl-type-table-head-weight:700;
  --ssl-type-table-head-line:1.25;
  --ssl-type-table-cell-size:12px;
  --ssl-type-table-cell-weight:400;
  --ssl-type-table-cell-line:1.35;

  --ssl-type-form-label-size:12.5px;
  --ssl-type-form-label-weight:700;
  --ssl-type-form-label-line:1.3;
  --ssl-type-form-control-size:14px;
  --ssl-type-form-control-weight:500;
  --ssl-type-form-control-line:1.3;

  /* Keep the existing mobile-top contract wired to the same language. */
  --ssl-mobile-top-domain-size:var(--ssl-type-top-domain-size);
  --ssl-mobile-top-title-size:var(--ssl-type-top-title-size);
  --ssl-mobile-top-pill-size:var(--ssl-type-top-pill-size);
  --ssl-mobile-top-domain-leading:var(--ssl-type-top-domain-line);
  --ssl-mobile-top-title-leading:var(--ssl-type-top-title-line);
  --ssl-mobile-top-pill-leading:var(--ssl-type-top-pill-line);
  --ssl-mobile-top-domain-tracking:var(--ssl-type-top-domain-track);
}

/* Global shared roles */
#app .nav-item{
  font-size:var(--ssl-type-nav-size)!important;
  font-weight:var(--ssl-type-nav-weight)!important;
  line-height:var(--ssl-type-nav-line)!important;
  letter-spacing:normal!important;
}
#app :where(.eyebrow,.gm-live-pill,.gm-dashboard-kicker,.management-hero-kicker,.domain-mobile-live,.dofarm-import-kicker,.insight-authority){
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
#app :where(.muted,.hint,.reference){
  font-size:var(--ssl-type-meta-size)!important;
  font-weight:var(--ssl-type-meta-weight)!important;
  line-height:var(--ssl-type-meta-line)!important;
  letter-spacing:normal!important;
}
#app :where(label,.field,.field-label){
  font-size:var(--ssl-type-form-label-size)!important;
  font-weight:var(--ssl-type-form-label-weight)!important;
  line-height:var(--ssl-type-form-label-line)!important;
}
#app :where(input,select,textarea){
  font-size:var(--ssl-type-form-control-size)!important;
  font-weight:var(--ssl-type-form-control-weight)!important;
  line-height:var(--ssl-type-form-control-line)!important;
}
#app table th{
  font-size:var(--ssl-type-table-head-size)!important;
  font-weight:var(--ssl-type-table-head-weight)!important;
  line-height:var(--ssl-type-table-head-line)!important;
  letter-spacing:normal!important;
}
#app table td{
  font-size:var(--ssl-type-table-cell-size)!important;
  line-height:var(--ssl-type-table-cell-line)!important;
  letter-spacing:normal!important;
}
#app :where(.primary,.outline,.card-link):not(.icon-button):not(.farm-overflow-trigger){
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
  letter-spacing:normal!important;
}

/* Page/hero titles */
#app .gm-dashboard-hero-copy h1,
#app .gm-farm-summary-copy h1,
#app #inventoryWorkspace .inv-mobile-title-copy h3,
#app .management-hero-copy h2,
#app .settings-mobile-title,
#app .global-mobile-top-admin .domain-mobile-summary-copy h2,
#app .global-mobile-top-settings .domain-mobile-summary-copy h2{
  font-size:var(--ssl-type-page-title-size)!important;
  font-weight:var(--ssl-type-page-title-weight)!important;
  line-height:var(--ssl-type-page-title-line)!important;
  letter-spacing:var(--ssl-type-page-title-track)!important;
}

/* Marketing/decision hero titles stay one tier above page titles. */
#app .marix-home-copy h2,
#app .marix-reference-hero-copy h1,
#app .pond-overview-hero h1,
#app .pond-overview-hero h2{
  font-size:var(--ssl-type-hero-title-size)!important;
  font-weight:var(--ssl-type-hero-title-weight)!important;
  line-height:var(--ssl-type-hero-title-line)!important;
  letter-spacing:var(--ssl-type-hero-title-track)!important;
}

/* Section titles */
#app .gm-dashboard .section-head h3,
#app .gm-farm-command h2,
#app #inventoryWorkspace .section-head h3,
#app #inventoryWorkspace .inv-section-head h3,
#app .settings-primary-page>section>h3,
#app .settings-primary-page .panel>h3,
#app .admin-section-heading h3{
  font-size:var(--ssl-type-section-title-size)!important;
  font-weight:var(--ssl-type-section-title-weight)!important;
  line-height:var(--ssl-type-section-title-line)!important;
  letter-spacing:var(--ssl-type-section-title-track)!important;
}

/* Card titles */
#app .gm-farm-network .farm-card h3,
#app .management-command-card h3,
#app #inventoryWorkspace .inv-wh-copy b,
#app #inventoryWorkspace .inv-movement-card h4,
#app .pond-card h3,
#app .module-card h3,
#app .settings-primary-page .theme-option h3{
  font-size:var(--ssl-type-card-title-size)!important;
  font-weight:var(--ssl-type-card-title-weight)!important;
  line-height:var(--ssl-type-card-title-line)!important;
  letter-spacing:normal!important;
}

/* Standard KPI roles */
#app #inventoryWorkspace .inv-stats .stat-value,
#app .management-kpi-card>b,
#app .management-kpi-card>strong,
#app .pond-kpi-val,
#app .daily-kpis b,
#app .sd-kpis b,
#app .exec-kpis b{
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
  letter-spacing:var(--ssl-type-kpi-value-track)!important;
  font-variant-numeric:tabular-nums!important;
}
#app #inventoryWorkspace .inv-stats .stat-label,
#app .pond-kpi-title,
#app .daily-kpis span,
#app .sd-kpis span,
#app .exec-kpis span{
  font-size:var(--ssl-type-kpi-label-size)!important;
  font-weight:var(--ssl-type-kpi-label-weight)!important;
  line-height:var(--ssl-type-kpi-label-line)!important;
}

/* Compact KPI strips stay compact, but never micro-text. */
#app .gm-dashboard-metrics .gm-metric-label,
#app .gm-farm-summary .gm-farm-mini-stats span,
#app .gm-farm-summary .farm-mini-stats span,
#app .global-mobile-top-kpis span,
#app .inventory-mobile-kpis span{
  font-size:var(--ssl-type-compact-kpi-label-size)!important;
  font-weight:var(--ssl-type-compact-kpi-label-weight)!important;
  line-height:var(--ssl-type-compact-kpi-label-line)!important;
  letter-spacing:normal!important;
}
#app .gm-dashboard-metrics .gm-metric strong,
#app .gm-farm-summary .gm-farm-mini-stats b,
#app .gm-farm-summary .farm-mini-stats b,
#app .global-mobile-top-kpis b,
#app .inventory-mobile-kpis b{
  font-size:var(--ssl-type-compact-kpi-value-size)!important;
  font-weight:var(--ssl-type-compact-kpi-value-weight)!important;
  line-height:var(--ssl-type-compact-kpi-value-line)!important;
  letter-spacing:normal!important;
  font-variant-numeric:tabular-nums!important;
}

/* Body and supporting copy in canonical product surfaces. */
#app .gm-dashboard :where(p,.gm-dashboard-note),
#app .gm-farm-overview :where(p,.gm-farm-note),
#app #inventoryWorkspace :where(.inv-section-help,.inv-cost-integrity-hero p,.inv-detail-hero p),
#app .admin-primary-page :where(.management-command-card p,.management-attention p),
#app .settings-primary-page :where(.settings-card p,.theme-option p){
  font-size:var(--ssl-type-body-size)!important;
  font-weight:var(--ssl-type-body-weight)!important;
  line-height:var(--ssl-type-body-line)!important;
  letter-spacing:normal!important;
}

/* Action controls: equivalent actions should read as one family. */
#app .gm-dashboard .section-head .outline,
#app .gm-dashboard .card-link,
#app .gm-farm-overview .gm-add-farm,
#app .gm-farm-overview .farm-open-action,
#app #inventoryWorkspace .inv-tabs button,
#app #inventoryWorkspace .inv-overview-actions button,
#app #inventoryWorkspace .card-link,
#app .management-attention button,
#app .settings-primary-page .primary,
#app .settings-primary-page .outline{
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
  letter-spacing:normal!important;
}

/* Module/tab navigation: distinct from action buttons, consistent across modules. */
#app .pond-module-item,
#app .pond-module-more-item,
#app .management-tab{
  font-size:13.5px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:normal!important;
}
#app .pond-module-item:not(.active),
#app .management-tab:not(.active){
  font-weight:600!important;
}

/* Inventory table uses one cell scale even when product names/quantities are emphasized. */
#app #inventoryWorkspace .table td,
#app #inventoryWorkspace .table td b,
#app #inventoryWorkspace .table .inv-qty-cell{
  font-size:var(--ssl-type-table-cell-size)!important;
  line-height:var(--ssl-type-table-cell-line)!important;
}
#app #inventoryWorkspace .table td b,
#app #inventoryWorkspace .table .inv-qty-cell{
  font-weight:700!important;
}

/* Metadata uses one readable floor on product surfaces. */
#app .gm-dashboard small,
#app .gm-farm-overview small,
#app #inventoryWorkspace small,
#app .admin-primary-page small,
#app .settings-primary-page small{
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}

/* Numeric consistency */
#app :where(.stat-value,.gm-metric strong,.management-kpi-card b,.management-kpi-card strong,.pond-kpi-val,.weather-temp,.inv-qty-cell){
  font-variant-numeric:tabular-nums!important;
}

@media (min-width:901px){
  :root{
    --ssl-type-page-title-size:24px;
    --ssl-type-hero-title-size:30px;
    --ssl-type-section-title-size:20px;
    --ssl-type-card-title-size:15px;
    --ssl-type-kpi-value-size:24px;
    --ssl-type-body-size:13.5px;
    --ssl-type-button-size:13.5px;
    --ssl-type-table-cell-size:12.5px;
  }
}

@media (max-width:900px){
  /* Never let compact mobile CSS reintroduce unreadable 6–9px operational text. */
  #app .gm-dashboard-metrics .gm-metric strong small,
  #app .gm-farm-overview .gm-live-pill,
  #app .gm-dashboard .gm-live-pill,
  #app .global-mobile-top-inventory .eyebrow,
  #app .global-mobile-top-admin .eyebrow,
  #app .global-mobile-top-settings .eyebrow{
    font-size:var(--ssl-type-eyebrow-size)!important;
    line-height:var(--ssl-type-eyebrow-line)!important;
  }

  #app .gm-farm-overview .gm-farm-summary :where(.gm-farm-mini-stats span,.farm-mini-stats span),
  #app .gm-dashboard .gm-dashboard-metrics .gm-metric-label{
    font-size:var(--ssl-type-compact-kpi-label-size)!important;
  }

  #app .content :where(button,input,select,textarea){
    font-family:var(--ssl-font-ui)!important;
  }
}

/* Final semantic-role authority over legacy high-specificity compact rules. */
:root{
  --ssl-type-feature-card-title-size:16px;
  --ssl-type-feature-card-title-weight:700;
  --ssl-type-feature-card-title-line:1.25;
  --ssl-type-module-title-size:20px;
  --ssl-type-module-title-weight:800;
  --ssl-type-module-title-line:1.2;
  --ssl-type-panel-title-size:16px;
  --ssl-type-panel-title-weight:700;
  --ssl-type-panel-title-line:1.25;
  --ssl-type-micro-label-size:9.5px;
  --ssl-type-micro-label-weight:700;
  --ssl-type-micro-label-line:1.15;
  --ssl-type-status-label-size:10px;
  --ssl-type-status-label-weight:700;
  --ssl-type-status-label-line:1.2;
  --ssl-type-chart-label-size:10px;
  --ssl-type-chart-label-weight:500;
  --ssl-type-chart-label-line:1.2;
}

/* Bottom/global navigation — one scale on every primary route, including Inventory. */
html body #app .shell:not(.pond-detail-shell):not(.pond-context-shell)>.sidebar:not(.pond-context-sidebar) .nav-item,
html body #app .shell:has(.warehouse-canonical-route)>.sidebar:not(.pond-context-sidebar) .nav-item{
  font-size:var(--ssl-type-nav-size)!important;
  font-weight:var(--ssl-type-nav-weight)!important;
  line-height:var(--ssl-type-nav-line)!important;
  letter-spacing:normal!important;
}

/* Primary page titles — one role across all top-level destinations. */
html body #app .gm-dashboard .gm-dashboard-hero-copy h2,
html body #app .gm-farm-overview .gm-farm-summary-copy h1,
html body #app #inventoryWorkspace .inv-mobile-title-copy h3,
html body #app .admin-primary-page .management-hero-copy h2,
html body #app .settings-primary-page .settings-mobile-title,
html body #app .global-mobile-top-admin .domain-mobile-summary-copy h2,
html body #app .global-mobile-top-settings .domain-mobile-summary-copy h2{
  font-size:var(--ssl-type-page-title-size)!important;
  font-weight:var(--ssl-type-page-title-weight)!important;
  line-height:var(--ssl-type-page-title-line)!important;
  letter-spacing:var(--ssl-type-page-title-track)!important;
}

/* Section titles — same hierarchy, with feature-card titles remaining one tier lower. */
html body #app .gm-dashboard .section-head h3,
html body #app .gm-farm-overview .gm-farm-command h2,
html body #app #inventoryWorkspace .section-head h3,
html body #app #inventoryWorkspace .inv-section-head h3,
html body #app .settings-primary-page .section-head h3{
  font-size:var(--ssl-type-section-title-size)!important;
  font-weight:var(--ssl-type-section-title-weight)!important;
  line-height:var(--ssl-type-section-title-line)!important;
  letter-spacing:var(--ssl-type-section-title-track)!important;
}
html body #app #inventoryWorkspace .inv-mobile-title-copy h3{
  font-size:var(--ssl-type-page-title-size)!important;
  line-height:var(--ssl-type-page-title-line)!important;
  letter-spacing:var(--ssl-type-page-title-track)!important;
}
html body #app .gm-farm-overview .gm-farm-network .farm-card h3,
html body #app #inventoryWorkspace .inv-wh-copy b,
html body #app #inventoryWorkspace .inv-movement-card h4{
  font-size:var(--ssl-type-card-title-size)!important;
  font-weight:var(--ssl-type-card-title-weight)!important;
  line-height:var(--ssl-type-card-title-line)!important;
  letter-spacing:normal!important;
}
html body #app .admin-primary-page .management-command-card h3,
html body #app .settings-primary-page .module-card h3{
  font-size:var(--ssl-type-feature-card-title-size)!important;
  font-weight:var(--ssl-type-feature-card-title-weight)!important;
  line-height:var(--ssl-type-feature-card-title-line)!important;
  letter-spacing:normal!important;
}

/* Shared action buttons — remove legacy 9–15px drift without touching icon-only triggers. */
html body #app .gm-dashboard .section-head .outline,
html body #app .gm-dashboard .card-link,
html body #app .gm-farm-overview .gm-add-farm,
html body #app .gm-farm-overview .farm-open-action,
html body #app #inventoryWorkspace .inv-tabs button,
html body #app #inventoryWorkspace .inv-overview-actions button,
html body #app #inventoryWorkspace .card-link,
html body #app .admin-primary-page .management-attention button,
html body #app .settings-primary-page button.primary,
html body #app .settings-primary-page button.outline{
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
  letter-spacing:normal!important;
}

/* Dashboard compact KPI strip. */
html body #app .gm-dashboard .gm-dashboard-metrics .gm-metric-label{
  font-size:var(--ssl-type-compact-kpi-label-size)!important;
  font-weight:var(--ssl-type-compact-kpi-label-weight)!important;
  line-height:var(--ssl-type-compact-kpi-label-line)!important;
}
html body #app .gm-dashboard .gm-dashboard-metrics .gm-metric strong{
  font-size:var(--ssl-type-compact-kpi-value-size)!important;
  font-weight:var(--ssl-type-compact-kpi-value-weight)!important;
  line-height:var(--ssl-type-compact-kpi-value-line)!important;
}
html body #app .gm-dashboard .gm-dashboard-metrics .gm-metric strong small{
  font-size:var(--ssl-type-micro-label-size)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}

/* Farm summary compact KPI strip and operational kicker. */
html body #app .gm-farm-overview .gm-farm-summary-stats span{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .gm-farm-overview .gm-farm-summary-stats b{
  font-size:12.5px!important;
  font-weight:800!important;
  line-height:1.05!important;
}
html body #app .gm-farm-overview .gm-farm-command>div>span:first-child{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}

/* Inventory KPI, tabs and tables. */
html body #app #inventoryWorkspace .inv-stats .stat-value{
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
  letter-spacing:var(--ssl-type-kpi-value-track)!important;
}
html body #app #inventoryWorkspace .inv-stats .stat-label{
  font-size:var(--ssl-type-kpi-label-size)!important;
  font-weight:var(--ssl-type-kpi-label-weight)!important;
  line-height:var(--ssl-type-kpi-label-line)!important;
}
html body #app #inventoryWorkspace table th{
  font-size:var(--ssl-type-table-head-size)!important;
  font-weight:var(--ssl-type-table-head-weight)!important;
  line-height:var(--ssl-type-table-head-line)!important;
}
html body #app #inventoryWorkspace table td,
html body #app #inventoryWorkspace table td b,
html body #app #inventoryWorkspace table .inv-qty-cell{
  font-size:var(--ssl-type-table-cell-size)!important;
  line-height:var(--ssl-type-table-cell-line)!important;
}
html body #app #inventoryWorkspace table td b,
html body #app #inventoryWorkspace table .inv-qty-cell{
  font-weight:700!important;
}

/* Dashboard tables use the same table language as Inventory. */
html body #app .gm-dashboard table th{
  font-size:var(--ssl-type-table-head-size)!important;
  font-weight:var(--ssl-type-table-head-weight)!important;
  line-height:var(--ssl-type-table-head-line)!important;
}
html body #app .gm-dashboard table td{
  font-size:var(--ssl-type-table-cell-size)!important;
  line-height:var(--ssl-type-table-cell-line)!important;
}

/* Admin semantic hierarchy. */
html body #app .admin-primary-page .management-hero-kicker,
html body #app .admin-primary-page .management-kpi-card small,
html body #app .admin-primary-page .management-attention>small{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app .admin-primary-page .management-kpi-card>b,
html body #app .admin-primary-page .management-kpi-card>strong{
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
}
html body #app .admin-primary-page .management-tab{
  font-size:13.5px!important;
  line-height:1.2!important;
  font-weight:600!important;
}
html body #app .admin-primary-page .management-tab.active{font-weight:700!important}

/* Settings sections, feature cards and controls. */
html body #app .settings-primary-page .section-head h3{
  font-size:var(--ssl-type-section-title-size)!important;
  font-weight:var(--ssl-type-section-title-weight)!important;
  line-height:var(--ssl-type-section-title-line)!important;
}
html body #app .settings-primary-page .module-card h3{
  font-size:var(--ssl-type-feature-card-title-size)!important;
  line-height:var(--ssl-type-feature-card-title-line)!important;
}
html body #app .settings-primary-page label,
html body #app .settings-primary-page .field{
  font-size:var(--ssl-type-form-label-size)!important;
  font-weight:var(--ssl-type-form-label-weight)!important;
  line-height:var(--ssl-type-form-label-line)!important;
}
html body #app .settings-primary-page :where(input,select,textarea){
  font-size:var(--ssl-type-form-control-size)!important;
  font-weight:var(--ssl-type-form-control-weight)!important;
  line-height:var(--ssl-type-form-control-line)!important;
}

/* Pond module design language — consistent module and panel headings across every pond tab. */
html body #app .pond-detail-shell .pond-module-title,
html body #app .pond-context-shell .pond-module-title{
  font-size:var(--ssl-type-module-title-size)!important;
  font-weight:var(--ssl-type-module-title-weight)!important;
  line-height:var(--ssl-type-module-title-line)!important;
  letter-spacing:-.01em!important;
}
html body #app .pond-detail-shell .pond-op-title,
html body #app .pond-context-shell .pond-op-title,
html body #app .po-ref-chart-card h3,
html body #app .po-ref-finance-card h3{
  font-size:var(--ssl-type-panel-title-size)!important;
  font-weight:var(--ssl-type-panel-title-weight)!important;
  line-height:var(--ssl-type-panel-title-line)!important;
  letter-spacing:-.01em!important;
}
html body #app .gm-feed-card-title{
  font-size:var(--ssl-type-section-title-size)!important;
  font-weight:var(--ssl-type-section-title-weight)!important;
  line-height:var(--ssl-type-section-title-line)!important;
}
html body #app .cost-workspace-head h2{
  font-size:var(--ssl-type-module-title-size)!important;
  font-weight:var(--ssl-type-module-title-weight)!important;
  line-height:var(--ssl-type-module-title-line)!important;
}
html body #app .pond-detail-shell .pond-module-kicker,
html body #app .pond-context-shell .pond-module-kicker{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}

/* Pond overview facts/status/finance microcopy — eliminate 7.5–9px drift. */
html body #app .po-ref-production-facts>div>span{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .po-ref-production-facts>div>b{
  font-size:12.5px!important;
  font-weight:700!important;
  line-height:1.2!important;
}
html body #app .po-ref-kpi em,
html body #app .water-history-status-badge{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}
html body #app .po-ref-finance-grid article>span,
html body #app .crop-history-metrics span{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .po-ref-chart-card svg text{
  font-family:var(--ssl-font-ui)!important;
  font-size:var(--ssl-type-chart-label-size)!important;
  font-weight:var(--ssl-type-chart-label-weight)!important;
}

/* Feed/water operational metadata. */
html body #app .feed-workspace :where(.standard-feed-legend,.feed-baseline-badge),
html body #app .water-workspace .water-history-meta,
html body #app .water-workspace .water-history-meta span,
html body #app .water-workspace .water-history-card em{
  font-size:var(--ssl-type-micro-label-size)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .water-workspace .water-history-status-badge{
  font-size:var(--ssl-type-status-label-size)!important;
}

/* AI/Insight dense labels — retain density but share one readable micro role. */
html body #app .ai-analysis-global :where(
  .pond-module-kicker,
  .insight-command-primary span,
  .insight-command-grid article span,
  .insight-gap-badge,
  .insight-reconcile-rows span,
  .ai-forecast-head span,
  .ai-forecast-head b,
  .ai-history-signal,
  .ai-forecast-metrics span,
  .ai-learning-summary span
){
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}

/* Pond settings fields use the same form-label language as global Settings. */
html body #app .pond-detail-shell .settings-mobile-field>span,
html body #app .pond-detail-shell .settings-mobile-field label,
html body #app .pond-detail-shell .crop-history-metrics span{
  font-size:var(--ssl-type-meta-size)!important;
  font-weight:var(--ssl-type-form-label-weight)!important;
  line-height:var(--ssl-type-form-label-line)!important;
}

@media (min-width:901px){
  :root{
    --ssl-type-module-title-size:22px;
    --ssl-type-panel-title-size:18px;
  }
}

/* Deep module convergence — final pass over legacy dense typography. */
html body #app .gm-farm-overview .gm-farm-network .farm-card .farm-card-actions .farm-open-action{
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}
html body #app .settings-primary-page .panel>button.primary{
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}

/* Feed */
html body #app .pond-detail-shell .gm-feed-title{
  font-size:var(--ssl-type-module-title-size)!important;
  font-weight:var(--ssl-type-module-title-weight)!important;
  line-height:var(--ssl-type-module-title-line)!important;
  letter-spacing:-.01em!important;
}
html body #app .pond-detail-shell .feed-ai-grid.feed-ai-explain span,
html body #app .pond-detail-shell .standard-feed-legend{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}

/* Water */
html body #app .water-workspace .water-history-metric em{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .water-workspace .water-trend-eyebrow{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}

/* Insight / AI */
html body #app .insight-workspace h3{
  font-size:var(--ssl-type-panel-title-size)!important;
  font-weight:var(--ssl-type-panel-title-weight)!important;
  line-height:var(--ssl-type-panel-title-line)!important;
  letter-spacing:-.01em!important;
}
html body #app .insight-workspace .insight-command-deck article>span,
html body #app .insight-workspace .insight-reconcile-rows span,
html body #app .insight-workspace .ai-trend-head span,
html body #app .insight-workspace .ai-forecast-head span,
html body #app .insight-workspace .ai-forecast-head b,
html body #app .insight-workspace .ai-history-signal,
html body #app .insight-workspace .ai-forecast-grid span,
html body #app .insight-workspace .ai-learning-summary span,
html body #app .insight-workspace .ai-plan-head span,
html body #app .insight-workspace .ai-plan-day>span,
html body #app .insight-workspace .ai-forecast-card>p,
html body #app .insight-workspace .ai-forecast-note,
html body #app .insight-workspace .ai-stock-summary span{
  font-size:var(--ssl-type-micro-label-size)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .insight-workspace .insight-gap-badge{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}

/* Cost / Finance */
html body #app .financial-cockpit h3{
  font-size:var(--ssl-type-panel-title-size)!important;
  font-weight:var(--ssl-type-panel-title-weight)!important;
  line-height:var(--ssl-type-panel-title-line)!important;
  letter-spacing:-.01em!important;
}
html body #app .financial-cockpit .financial-decision-card h3{
  font-size:var(--ssl-type-section-title-size)!important;
  font-weight:var(--ssl-type-section-title-weight)!important;
  line-height:var(--ssl-type-section-title-line)!important;
}
html body #app .financial-cockpit :where(
  .financial-authority-copy>span,
  .financial-authority-strip b,
  .financial-kpi-grid span,
  .financial-decision-card>span,
  .worker-cost-authority-head>span,
  .worker-cost-authority-head>b,
  .worker-cost-authority-grid em,
  .worker-cost-authority-note b,
  .worker-cost-authority-note span,
  .financial-ledger-heading>span,
  .pond-cost-month-meta span,
  .pond-cost-month-card em
){
  font-size:var(--ssl-type-micro-label-size)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .financial-cockpit .financial-authority-copy>span,
html body #app .financial-cockpit .financial-decision-card>span,
html body #app .financial-cockpit .worker-cost-authority-head>span,
html body #app .financial-cockpit .financial-ledger-heading>span{
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app .financial-cockpit table th{
  font-size:var(--ssl-type-table-head-size)!important;
  font-weight:var(--ssl-type-table-head-weight)!important;
  line-height:var(--ssl-type-table-head-line)!important;
}
html body #app .financial-cockpit table td{
  font-size:var(--ssl-type-table-cell-size)!important;
  line-height:var(--ssl-type-table-cell-line)!important;
}

/* Pond Settings / crop history */
html body #app .pond-detail-shell .settings-mobile-pair span,
html body #app .pond-detail-shell .settings-mobile-danger span{
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .pond-detail-shell .settings-mobile-pair span{
  font-weight:var(--ssl-type-form-label-weight)!important;
}
html body #app .pond-detail-shell .harvest-sales-kpis .tag,
html body #app .pond-detail-shell .crop-history-metrics span{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .pond-detail-shell .crop-history-action{
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}
html body #app .pond-detail-shell .pond-clean-empty-title{
  font-size:var(--ssl-type-panel-title-size)!important;
  font-weight:var(--ssl-type-panel-title-weight)!important;
  line-height:var(--ssl-type-panel-title-line)!important;
}

/* Residual legacy micro-type cleanup from authenticated route audit. */
html body #app .water-workspace .water-trend-lane-head span{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .water-workspace svg text{
  font-family:var(--ssl-font-ui)!important;
  font-size:var(--ssl-type-chart-label-size)!important;
  font-weight:var(--ssl-type-chart-label-weight)!important;
}
html body #app .insight-workspace .ai-stock-method span{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .financial-cockpit .worker-cost-authority-head span,
html body #app .financial-cockpit .financial-ledger-heading span,
html body #app .financial-cockpit .pond-cost-month-card header div>span{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app .financial-cockpit .pond-cost-monthly-category span{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .financial-cockpit .pond-cost-monthly-category b{
  font-size:10.5px!important;
  font-weight:700!important;
  line-height:1.15!important;
}
html body #app .financial-cockpit .pond-cost-monthly-category small,
html body #app .financial-cockpit .pond-cost-month-card header strong em{
  font-size:var(--ssl-type-micro-label-size)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .pond-detail-shell .settings-workspace-layout .section-head h3{
  font-size:var(--ssl-type-panel-title-size)!important;
  font-weight:var(--ssl-type-panel-title-weight)!important;
  line-height:var(--ssl-type-panel-title-line)!important;
  letter-spacing:-.01em!important;
}

/* Modal / dialog typography — one dialog language across farm, account, feed, sales and operational forms. */
:root{
  --ssl-type-modal-title-size:20px;
  --ssl-type-modal-title-weight:700;
  --ssl-type-modal-title-line:1.2;
}
html body #app .modal :where(.section-head h2,.modal-card>h2,.modal-card>h3,.modal-box>h2,.modal-box>h3),
html body #app .feed-log-modal .section-head h2{
  font-size:var(--ssl-type-modal-title-size)!important;
  font-weight:var(--ssl-type-modal-title-weight)!important;
  line-height:var(--ssl-type-modal-title-line)!important;
  letter-spacing:-.01em!important;
}
html body #app .modal :where(.field,label.field){
  font-size:var(--ssl-type-form-label-size)!important;
  font-weight:var(--ssl-type-form-label-weight)!important;
  line-height:var(--ssl-type-form-label-line)!important;
}
html body #app .modal :where(input,select,textarea){
  font-family:var(--ssl-font-ui)!important;
  font-size:var(--ssl-type-form-control-size)!important;
  font-weight:var(--ssl-type-form-control-weight)!important;
  line-height:var(--ssl-type-form-control-line)!important;
}
html body #app .modal :where(.muted,.hint){
  font-size:var(--ssl-type-meta-size)!important;
  font-weight:var(--ssl-type-meta-weight)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .modal :where(button.primary,button.outline,.modal-actions button,.primary.full):not(.icon-button):not(.modal-x){
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}
@media (min-width:901px){
  :root{--ssl-type-modal-title-size:22px}
}

/* Conditional/hidden state coverage — prevent typography drift when data or sub-tabs appear. */

/* Shared operational modules */
html body #app :where(.feed-workspace,.water-workspace,.growth-workspace,.medicine-workspace) .pond-module-desc{
  font-size:var(--ssl-type-meta-size)!important;
  font-weight:var(--ssl-type-meta-weight)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app :where(.feed-workspace,.water-workspace,.growth-workspace,.medicine-workspace) .pond-module-primary-btn{
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}
html body #app :where(.water-workspace,.growth-workspace,.medicine-workspace) .pond-kpi-sub{
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app :where(.water-workspace,.growth-workspace,.medicine-workspace) .pond-op-kicker{
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}

/* Feed hidden/history states */
html body #app .feed-workspace .gm-feed-create{
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}
html body #app .feed-workspace .gm-feed-kpi-label{
  font-size:var(--ssl-type-kpi-label-size)!important;
  font-weight:var(--ssl-type-kpi-label-weight)!important;
  line-height:var(--ssl-type-kpi-label-line)!important;
}
html body #app .feed-workspace .gm-feed-value{
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
}
html body #app .feed-workspace :where(.gm-feed-sub,.gm-feed-row-hint,.gm-feed-date small,.gm-feed-items>span){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .feed-workspace .gm-feed-table,
html body #app .feed-workspace .gm-feed-history-row{
  font-size:var(--ssl-type-table-cell-size)!important;
  line-height:var(--ssl-type-table-cell-line)!important;
}
html body #app .feed-workspace .gm-feed-history-head{
  font-size:var(--ssl-type-table-head-size)!important;
  font-weight:var(--ssl-type-table-head-weight)!important;
  line-height:var(--ssl-type-table-head-line)!important;
}
html body #app .feed-log-modal :where(.feed-next-date,.stable-feed-mix-head .outline,.stable-feed-mix-line .outline,.feed-history-actions button){
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}
html body #app .feed-log-modal :where(.stable-feed-mix-head span,.stable-feed-mix-details div,.feed-history-items span){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}

/* Water hidden/history/detail/chart states */
html body #app .water-workspace :where(.water-history-meta span,.water-history-group small,.water-history-metric small,.water-history-metric em){
  font-size:var(--ssl-type-micro-label-size)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .water-workspace :where(.water-history-meta b,.water-history-group strong,.water-history-metric strong){
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.25!important;
}
html body #app .water-workspace .water-history-expand{
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}
html body #app .water-workspace .water-history-detail-group>span{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app .water-workspace .water-history-detail-group b{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
}
html body #app .water-workspace .water-history-detail-group strong{
  font-size:12px!important;
  font-weight:700!important;
}
html body #app .water-workspace .water-history-detail-group strong small{
  font-size:var(--ssl-type-micro-label-size)!important;
}
html body #app .water-workspace .water-trend-select{
  font-size:var(--ssl-type-form-label-size)!important;
  font-weight:var(--ssl-type-form-label-weight)!important;
  line-height:var(--ssl-type-form-label-line)!important;
}
html body #app .water-workspace .water-trend-select select{
  font-size:var(--ssl-type-form-control-size)!important;
  font-weight:var(--ssl-type-form-control-weight)!important;
  line-height:var(--ssl-type-form-control-line)!important;
}
html body #app .water-workspace .water-trend-lane-head :where(b,small,strong){
  font-size:var(--ssl-type-micro-label-size)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .water-workspace .water-trend-lane-head strong{font-weight:800!important}
html body #app .water-workspace .reference{
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}

/* Growth responsive table labels generated with pseudo-elements. */
html body #app .growth-workspace .pond-clean-table td::before{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}

/* Medicine conditional/mobile history states. */
html body #app .medicine-workspace .pond-guide-info b{
  font-size:var(--ssl-type-body-strong-size,var(--ssl-type-body-size))!important;
  font-weight:var(--ssl-type-body-strong-weight)!important;
  line-height:1.35!important;
}
html body #app .medicine-workspace .pond-guide-info span{
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .medicine-workspace :where(.medicine-mobile-meta,.medicine-mobile-usage>em,.medicine-mobile-usage>small,.medicine-mobile-cost small,.mobile-table-hint){
  font-size:var(--ssl-type-micro-label-size)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .medicine-workspace .medicine-mobile-name{
  font-size:var(--ssl-type-body-size)!important;
  line-height:var(--ssl-type-body-line)!important;
}
html body #app .medicine-workspace .medicine-mobile-usage>strong,
html body #app .medicine-workspace .medicine-mobile-cost{
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.25!important;
}

/* Inventory conditional Cost Integrity/Audit states. */
html body #app #inventoryWorkspace .inv-cost-integrity-hero h3{
  font-size:var(--ssl-type-module-title-size)!important;
  font-weight:var(--ssl-type-module-title-weight)!important;
  line-height:var(--ssl-type-module-title-line)!important;
  letter-spacing:-.01em!important;
}
html body #app #inventoryWorkspace .inv-cost-filter-banner>span{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app #inventoryWorkspace .inv-audit-filter-panel label{
  font-size:var(--ssl-type-form-label-size)!important;
  font-weight:var(--ssl-type-form-label-weight)!important;
  line-height:var(--ssl-type-form-label-line)!important;
}
html body #app #inventoryWorkspace .inv-audit-filter-panel select,
html body #app #inventoryWorkspace .inv-cost-remediation-ref input{
  font-size:var(--ssl-type-form-control-size)!important;
  font-weight:var(--ssl-type-form-control-weight)!important;
  line-height:var(--ssl-type-form-control-line)!important;
}
html body #app #inventoryWorkspace :where(.inv-cost-attention-actions button,.inv-use-last-cost,.inv-movement-card__open){
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}
html body #app #inventoryWorkspace .inv-movement-card h4{
  font-size:var(--ssl-type-card-title-size)!important;
  font-weight:var(--ssl-type-card-title-weight)!important;
  line-height:var(--ssl-type-card-title-line)!important;
}

/* Admin/Management Center — overview and every conditional sub-tab share one role system. */
html body #app .admin-primary-page :where(.management-hero-metrics small,.management-kpi-row article>small,.management-attention small){
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app .admin-primary-page :where(.management-hero-metrics b,.management-kpi-row article>b){
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
}
html body #app .admin-primary-page :where(.management-hero-metrics em,.management-kpi-row article>em,.management-command-card p,.management-command-card footer,.management-provenance){
  font-size:var(--ssl-type-meta-size)!important;
  font-weight:var(--ssl-type-meta-weight)!important;
  line-height:var(--ssl-type-meta-line)!important;
  letter-spacing:normal!important;
}
html body #app .admin-primary-page .management-tab b{
  font-size:13.5px!important;
  font-weight:inherit!important;
  line-height:1.2!important;
}
html body #app .admin-primary-page .management-tab small{
  font-size:var(--ssl-type-compact-kpi-label-size)!important;
  font-weight:600!important;
  line-height:var(--ssl-type-compact-kpi-label-line)!important;
}
html body #app .admin-primary-page .management-command-metrics span{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .admin-primary-page .management-command-metrics b{
  font-size:12.5px!important;
  font-weight:800!important;
  line-height:1.15!important;
}
html body #app .admin-primary-page .management-attention b{
  font-size:var(--ssl-type-body-strong-size,var(--ssl-type-body-size))!important;
  font-weight:var(--ssl-type-body-strong-weight)!important;
  line-height:1.35!important;
}
html body #app .admin-primary-page .management-attention p{
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .admin-primary-page .management-panel-head>div>span,
html body #app .admin-primary-page .management-section-head>div>span{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app .admin-primary-page .management-panel-head h2{
  font-size:var(--ssl-type-module-title-size)!important;
  font-weight:var(--ssl-type-module-title-weight)!important;
  line-height:var(--ssl-type-module-title-line)!important;
  letter-spacing:-.01em!important;
}
html body #app .admin-primary-page .management-panel-head p{
  font-size:var(--ssl-type-body-size)!important;
  line-height:var(--ssl-type-body-line)!important;
}
html body #app .admin-primary-page :where(.management-panel-head>b,.management-formula,.management-formula b){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .admin-primary-page :where(.worker-management-card,.opener-management-card) header>div>span,
html body #app .admin-primary-page .service-category-card>div>span,
html body #app .admin-primary-page .service-placeholder>span{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app .admin-primary-page :where(.worker-management-card,.opener-management-card) header h3,
html body #app .admin-primary-page .service-category-card h3,
html body #app .admin-primary-page .service-placeholder h3{
  font-size:var(--ssl-type-feature-card-title-size)!important;
  font-weight:var(--ssl-type-feature-card-title-weight)!important;
  line-height:var(--ssl-type-feature-card-title-line)!important;
  letter-spacing:normal!important;
}
html body #app .admin-primary-page :where(
  .worker-management-card header small,
  .opener-management-card header small,
  .service-category-card p,
  .service-hub-note,
  .service-placeholder p,
  .management-note,
  .management-edit-note small,
  .management-runtime-head small,
  .management-runtime-row>div small,
  .management-section-head small,
  .labor-allocation-row span small,
  .buyer-opener-policy-row span small
){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .admin-primary-page :where(
  .worker-rule-strip span,
  .opener-rate-strip span,
  .opener-history-mini span,
  .management-edit-note b,
  .management-edit-note span,
  .management-runtime-head b,
  .management-runtime-head span,
  .management-runtime-row>div b,
  .labor-allocation-row span b,
  .buyer-opener-policy-row span b
){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .admin-primary-page :where(.worker-rule-strip b,.opener-rate-strip b,.opener-history-mini b,.labor-allocation-row strong,.buyer-opener-policy-row strong){
  font-size:12.5px!important;
  font-weight:700!important;
  line-height:1.2!important;
}
html body #app .admin-primary-page :where(.worker-edit-button,.sales-decision-row button,.management-create-worker){
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}
html body #app .admin-primary-page .management-runtime-row label span{
  font-size:var(--ssl-type-form-label-size)!important;
  font-weight:var(--ssl-type-form-label-weight)!important;
  line-height:var(--ssl-type-form-label-line)!important;
}
html body #app .admin-primary-page .management-runtime-row :where(select,input){
  font-size:var(--ssl-type-form-control-size)!important;
  font-weight:var(--ssl-type-form-control-weight)!important;
  line-height:var(--ssl-type-form-control-line)!important;
}
html body #app .admin-primary-page .management-history-card>div span,
html body #app .admin-primary-page .sales-decision-row>div:first-child span{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
}
html body #app .admin-primary-page :where(.management-history-card h3,.sales-decision-row h3){
  font-size:var(--ssl-type-card-title-size)!important;
  font-weight:var(--ssl-type-card-title-weight)!important;
  line-height:var(--ssl-type-card-title-line)!important;
}
html body #app .admin-primary-page :where(.management-history-card small,.sales-decision-row small,.sales-decision-row em){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .admin-primary-page .management-history-card dt{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
}
html body #app .admin-primary-page .management-history-card dd,
html body #app .admin-primary-page .sales-decision-row b{
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.25!important;
}

/* Management-specific modals and energy forms. */
html body #app .management-worker-modal .modal-head h2,
html body #app .energy-meter-modal-head h2{
  font-size:var(--ssl-type-modal-title-size)!important;
  font-weight:var(--ssl-type-modal-title-weight)!important;
  line-height:var(--ssl-type-modal-title-line)!important;
  letter-spacing:-.01em!important;
}
html body #app .management-worker-modal .modal-head p,
html body #app .energy-meter-modal-head p,
html body #app .management-worker-ponds>small,
html body #app .management-pond-check small,
html body #app .energy-meter-grid label>small{
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .management-worker-modal .modal-head .eyebrow,
html body #app .energy-meter-modal-head .eyebrow,
html body #app .energy-meter-section>header>span{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app :where(.management-worker-form label>span,.management-worker-ponds>span,.energy-meter-grid label>span){
  font-size:var(--ssl-type-form-label-size)!important;
  font-weight:var(--ssl-type-form-label-weight)!important;
  line-height:var(--ssl-type-form-label-line)!important;
}
html body #app :where(.management-worker-form input,.management-worker-form select,.energy-meter-grid input,.energy-meter-grid select){
  font-size:var(--ssl-type-form-control-size)!important;
  font-weight:var(--ssl-type-form-control-weight)!important;
  line-height:var(--ssl-type-form-control-line)!important;
}
html body #app .management-worker-modal .modal-actions button{
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}
html body #app .energy-meter-status,
html body #app .energy-meter-input-unit em{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}
html body #app .energy-meter-section>header h3{
  font-size:var(--ssl-type-panel-title-size)!important;
  font-weight:var(--ssl-type-panel-title-weight)!important;
  line-height:var(--ssl-type-panel-title-line)!important;
}

/* Whole-system conditional surface coverage — typography only.
   These selectors neutralize legacy 7–9px declarations that appear only
   when secondary domains, historical data or editor states are rendered. */

/* Farm/weather conditional states */
html body #app .gm-farm-overview .farm-card p,
html body #app .gm-farm-overview .gm-farm-note{
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .gm-farm-overview .farm-coordinate,
html body #app .gm-farm-overview .pond-weather-context small,
html body #app .gm-farm-overview .pond-weather-slot b,
html body #app .gm-farm-overview .pond-weather-slot em,
html body #app .gm-farm-overview :where(.weather-date,.farm-weather-day small,.ssl-weather-day small){
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .gm-farm-overview .farm-mini-stats span{
  font-size:var(--ssl-type-compact-kpi-label-size)!important;
  font-weight:var(--ssl-type-compact-kpi-label-weight)!important;
  line-height:var(--ssl-type-compact-kpi-label-line)!important;
}
html body #app .gm-farm-overview .farm-mini-stats b,
html body #app .gm-farm-overview .pond-weather-context b{
  font-size:var(--ssl-type-compact-kpi-value-size)!important;
  font-weight:var(--ssl-type-compact-kpi-value-weight)!important;
  line-height:var(--ssl-type-compact-kpi-value-line)!important;
}

/* Equipment / Assets */
html body #app .farm-assets-center .assets-head h3{
  font-size:var(--ssl-type-module-title-size)!important;
  font-weight:var(--ssl-type-module-title-weight)!important;
  line-height:var(--ssl-type-module-title-line)!important;
}
html body #app .farm-assets-center .assets-head p,
html body #app .farm-assets-center :where(.asset-proof,.asset-card-copy small,.asset-form-note,.asset-form-note small,.asset-section-head small){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .farm-assets-center :where(.asset-head-actions .outline,.assets-head .primary){
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}
html body #app .farm-assets-center .asset-kpis span,
html body #app .farm-assets-center .asset-kpis small{
  font-size:var(--ssl-type-compact-kpi-label-size)!important;
  font-weight:var(--ssl-type-compact-kpi-label-weight)!important;
  line-height:var(--ssl-type-compact-kpi-label-line)!important;
}
html body #app .farm-assets-center .asset-kpis b{
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
}
html body #app .farm-assets-center :where(.asset-pond-group header span,.asset-pond-group header em,.asset-card-copy span,.asset-card dt,.asset-lineage-strip,.asset-lineage-badge){
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .farm-assets-center .asset-pond-group header h4{
  font-size:var(--ssl-type-card-title-size)!important;
  font-weight:var(--ssl-type-card-title-weight)!important;
  line-height:var(--ssl-type-card-title-line)!important;
}
html body #app .farm-assets-center .asset-pond-summary span{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .farm-assets-center :where(.asset-pond-summary b,.asset-card dd){
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.25!important;
}
html body #app .farm-assets-center .asset-card-copy b{
  font-size:var(--ssl-type-card-title-size)!important;
  font-weight:var(--ssl-type-card-title-weight)!important;
  line-height:var(--ssl-type-card-title-line)!important;
}
html body #app .asset-modal-card label span{
  font-size:var(--ssl-type-form-label-size)!important;
  font-weight:var(--ssl-type-form-label-weight)!important;
  line-height:var(--ssl-type-form-label-line)!important;
}
html body #app .asset-modal-card :where(input,select){
  font-size:var(--ssl-type-form-control-size)!important;
  font-weight:var(--ssl-type-form-control-weight)!important;
  line-height:var(--ssl-type-form-control-line)!important;
}

/* Energy System */
html body #app .farm-energy-center .energy-head h3{
  font-size:var(--ssl-type-module-title-size)!important;
  font-weight:var(--ssl-type-module-title-weight)!important;
  line-height:var(--ssl-type-module-title-line)!important;
}
html body #app .farm-energy-center .energy-head p,
html body #app .farm-energy-center :where(.energy-section-head>small,.energy-action-row p,.energy-kpis small,.energy-action-row small,.energy-meter small,.energy-order small,.energy-proof,.energy-gas-allocation-head small,.energy-month-main small,.energy-pond-month-row.is-empty>small,.energy-pond-group-empty small,.energy-pond-group summary small,.energy-pond-order small,.energy-readiness small){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .farm-energy-center .energy-subtabs button{
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}
html body #app .farm-energy-center :where(.energy-kpis span,.energy-section-head span,.energy-action-row span,.energy-meter>span,.energy-month-card header span,.energy-pond-month-row>header span,.energy-pond-group-empty span,.energy-pond-group summary span,.energy-readiness span){
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app .farm-energy-center .energy-kpis b{
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
}
html body #app .farm-energy-center :where(.energy-section-head h4,.energy-action-row h4){
  font-size:var(--ssl-type-panel-title-size)!important;
  font-weight:var(--ssl-type-panel-title-weight)!important;
  line-height:var(--ssl-type-panel-title-line)!important;
}
html body #app .farm-energy-center .energy-matrix th{
  font-size:var(--ssl-type-table-head-size)!important;
  font-weight:var(--ssl-type-table-head-weight)!important;
  line-height:var(--ssl-type-table-head-line)!important;
}
html body #app .farm-energy-center .energy-matrix td{
  font-size:var(--ssl-type-table-cell-size)!important;
  line-height:var(--ssl-type-table-cell-line)!important;
}
html body #app .farm-energy-center .energy-matrix td small{
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .farm-energy-center :where(.energy-meter em,.energy-month-card header em,.energy-pond-group-empty em,.energy-pond-group summary em){
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}
html body #app .farm-energy-center :where(.energy-form label span,.energy-gas-allocation-row label span){
  font-size:var(--ssl-type-form-label-size)!important;
  font-weight:var(--ssl-type-form-label-weight)!important;
  line-height:var(--ssl-type-form-label-line)!important;
}
html body #app .farm-energy-center :where(.energy-form input,.energy-form select,.energy-gas-allocation-row input,.energy-gas-allocation-row select){
  font-size:var(--ssl-type-form-control-size)!important;
  font-weight:var(--ssl-type-form-control-weight)!important;
  line-height:var(--ssl-type-form-control-line)!important;
}
html body #app .farm-energy-center .energy-overview-matrix td::before,
html body #app .farm-energy-center :where(.energy-month-card dt,.energy-pond-month-cell span,.energy-pond-month-cell small,.energy-pond-month-cell em,.energy-pond-order span){
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}

/* Supplier Deals / Procurement flow */
html body #app .supplier-deals-page .sd-head h2{
  font-size:var(--ssl-type-module-title-size)!important;
  font-weight:var(--ssl-type-module-title-weight)!important;
  line-height:var(--ssl-type-module-title-line)!important;
}
html body #app .supplier-deals-page .sd-head p,
html body #app .supplier-deals-page :where(.sd-card header small,.sd-line small,.sd-material-flow-head small,.sd-flow-top small,.sd-receive-context){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .supplier-deals-page .sd-kpis span{
  font-size:var(--ssl-type-kpi-label-size)!important;
  font-weight:var(--ssl-type-kpi-label-weight)!important;
  line-height:var(--ssl-type-kpi-label-line)!important;
}
html body #app .supplier-deals-page .sd-kpis b{
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
}
html body #app .supplier-deals-page .sd-card h3{
  font-size:var(--ssl-type-feature-card-title-size)!important;
  font-weight:var(--ssl-type-feature-card-title-weight)!important;
  line-height:var(--ssl-type-feature-card-title-line)!important;
}
html body #app .supplier-deals-page :where(.sd-status,.sd-flow-status,.sd-flow-cancelled,.sd-flow-gate){
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}
html body #app .supplier-deals-page :where(.sd-flow-step,.sd-flow-qty span,.sd-receipt-trace>div){
  font-size:var(--ssl-type-micro-label-size)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .supplier-deals-page .sd-material-flow-head h4{
  font-size:var(--ssl-type-card-title-size)!important;
  font-weight:var(--ssl-type-card-title-weight)!important;
  line-height:var(--ssl-type-card-title-line)!important;
}

/* Finance vNext */
html body #app .finance-workspace .finance-head h3{
  font-size:var(--ssl-type-module-title-size)!important;
  font-weight:var(--ssl-type-module-title-weight)!important;
  line-height:var(--ssl-type-module-title-line)!important;
}
html body #app .finance-workspace .finance-section-head h4{
  font-size:var(--ssl-type-panel-title-size)!important;
  font-weight:var(--ssl-type-panel-title-weight)!important;
  line-height:var(--ssl-type-panel-title-line)!important;
}
html body #app .finance-workspace :where(.finance-kicker,.finance-section-head>div>span){
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app .finance-workspace :where(.finance-head p,.finance-section-head small,.finance-kpi span,.finance-kpi small,.finance-table td small,.finance-provenance){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .finance-workspace .finance-kpi strong{
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
}
html body #app .finance-workspace .finance-table th{
  font-size:var(--ssl-type-table-head-size)!important;
  font-weight:var(--ssl-type-table-head-weight)!important;
  line-height:var(--ssl-type-table-head-line)!important;
}
html body #app .finance-workspace .finance-table td{
  font-size:var(--ssl-type-table-cell-size)!important;
  line-height:var(--ssl-type-table-cell-line)!important;
}
html body #app .finance-workspace :where(.finance-table button,.finance-error button){
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}
html body #app .finance-workspace .finance-status{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}

/* Daily Operations */
html body #app .daily-ops .daily-head h2{
  font-size:var(--ssl-type-module-title-size)!important;
  font-weight:var(--ssl-type-module-title-weight)!important;
  line-height:var(--ssl-type-module-title-line)!important;
}
html body #app .daily-ops :where(.daily-section-head h3,.daily-quick h3){
  font-size:var(--ssl-type-panel-title-size)!important;
  font-weight:var(--ssl-type-panel-title-weight)!important;
  line-height:var(--ssl-type-panel-title-line)!important;
}
html body #app .daily-ops :where(.daily-head>div>span,.daily-section-head span,.daily-quick>div>span){
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app .daily-ops .daily-kpis :where(span,small){
  font-size:var(--ssl-type-kpi-label-size)!important;
  font-weight:var(--ssl-type-kpi-label-weight)!important;
  line-height:var(--ssl-type-kpi-label-line)!important;
}
html body #app .daily-ops .daily-kpis b{
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
}
html body #app .daily-ops :where(.daily-attention-card>div span,.daily-attention-card small,.daily-shift-grid span,.daily-shift-grid small,.daily-plan-list small,.daily-timeline span,.daily-timeline small,.daily-provenance){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .daily-ops .daily-attention-card em{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}
html body #app .daily-ops :where(.daily-quick button,.daily-error button){
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}

/* Executive Decision */
html body #app .exec-decision>header h3{
  font-size:var(--ssl-type-module-title-size)!important;
  font-weight:var(--ssl-type-module-title-weight)!important;
  line-height:var(--ssl-type-module-title-line)!important;
}
html body #app .exec-decision .exec-section-head h4{
  font-size:var(--ssl-type-panel-title-size)!important;
  font-weight:var(--ssl-type-panel-title-weight)!important;
  line-height:var(--ssl-type-panel-title-line)!important;
}
html body #app .exec-decision :where(>header span,.exec-section-head span){
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app .exec-decision .exec-kpis :where(span,small){
  font-size:var(--ssl-type-kpi-label-size)!important;
  font-weight:var(--ssl-type-kpi-label-weight)!important;
  line-height:var(--ssl-type-kpi-label-line)!important;
}
html body #app .exec-decision .exec-kpis b{
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
}
html body #app .exec-decision :where(.exec-history article span,.exec-history article small,>footer){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}

/* Geographic Digital Twin editor / map states */
html body #app .geo-workspace :where(.geo-map-attribution,.geo-map-hint,.geo-entity-type,.geo-sync-state,.geo-reservoir-create>header span,.geo-editor-section-head span,.geo-water-route-head>div>span,.geo-water-source-head span){
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .geo-workspace :where(.geo-entity-copy small,.geo-water-route-list span,.geo-water-route-list small,.geo-editor>header p,.geo-editor-note,.geo-layer-card small,.geo-twin>footer,.geo-spatial-summary>header span,.geo-spatial-summary>header p,.geo-system-note span,.geo-editor-technical>span){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .geo-workspace .geo-entity-name,
html body #app .geo-workspace .geo-water-route-list b{
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.25!important;
}
html body #app .geo-workspace .geo-entity-state{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}
html body #app .geo-workspace :where(.geo-reservoir-form label,.geo-reservoir-coordinate label,.geo-point-fields label,.geo-vertex-row label,.geo-water-route-form label,.geo-water-source-form label){
  font-size:var(--ssl-type-form-label-size)!important;
  font-weight:var(--ssl-type-form-label-weight)!important;
  line-height:var(--ssl-type-form-label-line)!important;
}
html body #app .geo-workspace :where(.geo-reservoir-form input,.geo-reservoir-form select,.geo-reservoir-coordinate input,.geo-point-fields input,.geo-vertex-row input,.geo-water-route-form input,.geo-water-route-form select,.geo-water-source-form input,.geo-water-source-form select){
  font-size:var(--ssl-type-form-control-size)!important;
  font-weight:var(--ssl-type-form-control-weight)!important;
  line-height:var(--ssl-type-form-control-line)!important;
}
html body #app .geo-workspace :where(.geo-map-open,.geo-create-reservoir-trigger,.geo-create-water-route-trigger,.geo-create-water-source-trigger,.geo-map-tool){
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}

/* AI secondary/conditional states */
html body #app .ai-center .ai-badge{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}
html body #app .ai-analysis-global :where(
  .ai-forecast-context small,
  .ai-forecast-grid small,
  .ai-plan-day small,
  .ai-stock-table .ai-stock-sample-row td::before,
  .insight-command-deck small
){
  font-size:var(--ssl-type-micro-label-size)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}

/* Financial cockpit secondary energy/source states */
html body #app .financial-cockpit .financial-authority-sources small,
html body #app .financial-cockpit :where(.cost-energy-month>summary span,.cost-energy-month>summary small,.cost-energy-month>summary strong em,.cost-energy-month-stats span,.cost-energy-line small){
  font-size:var(--ssl-type-micro-label-size)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .financial-cockpit .financial-authority-sources b,
html body #app .financial-cockpit :where(.cost-energy-month>summary b,.cost-energy-line span,.cost-energy-line>b){
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.25!important;
}
html body #app .financial-cockpit .cost-energy-month>summary strong{
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.15!important;
}
html body #app .cost-workspace .cost-legend small,
html body #app .cost-workspace .cost-bar-day span{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}

/* Management History v2 + Energy profile residual states */
html body #app .admin-primary-page .management-hero-title h2{
  font-size:var(--ssl-type-page-title-size)!important;
  font-weight:var(--ssl-type-page-title-weight)!important;
  line-height:var(--ssl-type-page-title-line)!important;
  letter-spacing:var(--ssl-type-page-title-track)!important;
}
html body #app .admin-primary-page .management-hero-title p{
  font-size:var(--ssl-type-body-size)!important;
  line-height:var(--ssl-type-body-line)!important;
}
html body #app .admin-primary-page :where(
  .history-compare-grid header small,
  .history-compare-grid span,
  .history-benchmark-metric small,
  .history-coverage small,
  .history-crop-index,
  .history-card-period span small,
  .history-card-source span,
  .management-history-card-v2 dt,
  .management-energy-profile header em
){
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .admin-primary-page .history-crop-index{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app .admin-primary-page .management-history-card-v2 h3{
  font-size:var(--ssl-type-card-title-size)!important;
  font-weight:var(--ssl-type-card-title-weight)!important;
  line-height:var(--ssl-type-card-title-line)!important;
}
html body #app .admin-primary-page .management-history-card-v2 header p,
html body #app .admin-primary-page .energy-card-hint{
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .admin-primary-page :where(.history-card-period span b,.history-card-source b,.management-history-card-v2 dd,.history-compare-grid span b){
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.25!important;
}

/* Shared design-system residuals: health, pond live telemetry and module navigation. */
html body #app .health-route .health-workspace-head h2{
  font-size:var(--ssl-type-module-title-size)!important;
  font-weight:var(--ssl-type-module-title-weight)!important;
  line-height:var(--ssl-type-module-title-line)!important;
}
html body #app .health-route .health-workspace-head p,
html body #app .health-route :where(.health-status-card small,.health-signal-card small,.health-quick-actions small,.health-timeline-item small){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .health-route :where(.health-status-card span,.health-signal-card span){
  font-size:var(--ssl-type-kpi-label-size)!important;
  font-weight:var(--ssl-type-kpi-label-weight)!important;
  line-height:var(--ssl-type-kpi-label-line)!important;
}
html body #app .health-route :where(.health-status-card strong,.health-signal-card strong){
  font-family:var(--ssl-font-ui)!important;
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
}
html body #app .health-route .health-quick-actions b{
  font-size:var(--ssl-type-body-strong-size,var(--ssl-type-body-size))!important;
  font-weight:var(--ssl-type-body-strong-weight)!important;
  line-height:1.35!important;
}
html body #app .health-route .health-timeline-item span{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}
html body #app .shell.pond-detail-shell .pond-module-label{
  font-size:var(--ssl-type-nav-size)!important;
  line-height:var(--ssl-type-nav-line)!important;
  font-weight:var(--ssl-type-nav-weight)!important;
}
html body #app .gm-pond-digital-twin>header small,
html body #app .gm-pond-telemetry-grid span,
html body #app .pond-header-metrics small{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .gm-pond-digital-twin>header b{
  font-size:var(--ssl-type-card-title-size)!important;
  font-weight:var(--ssl-type-card-title-weight)!important;
  line-height:var(--ssl-type-card-title-line)!important;
}
html body #app .gm-pond-digital-twin>header em{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}

/* Farm Water topology / transfer editor. */
html body #app .farm-water-twin :where(.farm-water-kpis span,.farm-water-kpis small){
  font-size:var(--ssl-type-kpi-label-size)!important;
  font-weight:var(--ssl-type-kpi-label-weight)!important;
  line-height:var(--ssl-type-kpi-label-line)!important;
}
html body #app .farm-water-twin .farm-water-kpis b{
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
}
html body #app .farm-water-twin .farm-water-route-group>header div span,
html body #app .farm-water-twin :where(.farm-water-route-target small,.farm-water-route-destination em,.farm-water-route-summary div span,.farm-water-route-summary>em){
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app .farm-water-twin :where(.farm-water-route-group>header>small,.farm-water-transfer-grid label>small,.farm-water-transfer-proof){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .farm-water-twin :where(.farm-water-time-actions button,.farm-water-refresh){
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
}
html body #app .farm-water-twin .farm-water-transfer-grid label{
  font-size:var(--ssl-type-form-label-size)!important;
  font-weight:var(--ssl-type-form-label-weight)!important;
  line-height:var(--ssl-type-form-label-line)!important;
}
html body #app .farm-water-twin .farm-water-transfer-grid :where(input,select,textarea){
  font-size:var(--ssl-type-form-control-size)!important;
  font-weight:var(--ssl-type-form-control-weight)!important;
  line-height:var(--ssl-type-form-control-line)!important;
}

/* Dashboard landing/reference surfaces. */
html body #app .marix-reference-shell .marix-home-kicker{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app .marix-reference-shell .marix-home-kpi-strip small,
html body #app .marix-reference-shell .marix-home-kpi-strip em,
html body #app .marix-reference-shell .marix-reference-quick-card em,
html body #app .marix-reference-shell .marix-hero-benefits{
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .marix-reference-shell .marix-home-kpi-strip b{
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
}

/* Inventory secondary KPI/status states from the base stylesheet. */
html body #app #inventoryWorkspace :where(.inv-overview-actions .eyebrow,.inv-wh-copy .eyebrow){
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app #inventoryWorkspace .inv-wh-copy small,
html body #app #inventoryWorkspace .inv-movements-kpi small{
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app #inventoryWorkspace :where(.inv-wh-status,.inv-low-alert>span){
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}
html body #app #inventoryWorkspace .inv-movements-kpi__label{
  font-size:var(--ssl-type-kpi-label-size)!important;
  font-weight:var(--ssl-type-kpi-label-weight)!important;
  line-height:var(--ssl-type-kpi-label-line)!important;
}
html body #app #inventoryWorkspace .inv-movements-kpi strong{
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
}

/* Geographic visual labels that are actual UI copy, not geometry. */
html body #app .geo-workspace :where(.geo-preview-card>header span,.geo-preview-card>header small,.geo-spatial-entities>header span,.geo-create-reservoir-prereq,.geo-reservoir-create>header p,.geo-reservoir-create-note,.geo-reservoir-coordinate>span,.geo-reservoir-create-actions>span,.geo-editor-note,.geo-save-bar span,.geo-layer-card small,.geo-coverage strong,.geo-water-route-note,.geo-water-route-actions>span,.geo-water-source-head p,.geo-map-badge,.geo-map-hint){
  font-size:var(--ssl-type-meta-size)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app .geo-workspace .geo-preview-marker text{
  font-family:var(--ssl-font-ui)!important;
  font-size:var(--ssl-type-chart-label-size)!important;
  font-weight:var(--ssl-type-chart-label-weight)!important;
}
html body #app .geo-workspace .geo-editor-technical>summary,
html body #app .geo-workspace .geo-layer span{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}


/* FINAL TYPOGRAPHY CASCADE AUTHORITY
   This block intentionally uses doubled #app specificity so the canonical
   semantic language wins over historical one-ID + multi-class !important rules.
   Presentation only: family/size/weight/leading/tracking/numeric rendering. */

/* One actual UI family for Thai, English and numerals. */
html body #app#app#app,
html body #app#app#app *,
html body #app#app#app *::before,
html body #app#app#app *::after{
  font-family:var(--ssl-font-ui)!important;
}
html body #syncStatusToast#syncStatusToast,
html body #syncStatusToast#syncStatusToast *,
html body .production-network-status.production-network-status,
html body .production-network-status.production-network-status *{
  font-family:var(--ssl-font-ui)!important;
}

/* Primary page title role */
html body #app#app#app .gm-dashboard .gm-dashboard-title h1,
html body #app#app#app .gm-dashboard .gm-dashboard-title h2,
html body #app#app#app .gm-dashboard .gm-dashboard-hero-copy h1,
html body #app#app#app .gm-dashboard .gm-dashboard-hero-copy h2,
html body #app#app#app .gm-farm-overview .gm-farm-summary-copy h1,
html body #app#app#app #inventoryWorkspace .inv-mobile-title-copy h3,
html body #app#app#app .admin-primary-page .management-hero-copy h2,
html body #app#app#app .admin-primary-page .management-hero-title h2,
html body #app#app#app .settings-primary-page .settings-mobile-title,
html body #app#app#app .global-mobile-top-admin .domain-mobile-summary-copy h2,
html body #app#app#app .global-mobile-top-settings .domain-mobile-summary-copy h2{
  font-size:var(--ssl-type-page-title-size)!important;
  font-weight:var(--ssl-type-page-title-weight)!important;
  line-height:var(--ssl-type-page-title-line)!important;
  letter-spacing:var(--ssl-type-page-title-track)!important;
}

/* Hero / module / panel hierarchy */
html body #app#app#app :where(.marix-home-copy h2,.marix-reference-hero-copy h1,.pond-overview-hero h1,.pond-overview-hero h2){
  font-size:var(--ssl-type-hero-title-size)!important;
  font-weight:var(--ssl-type-hero-title-weight)!important;
  line-height:var(--ssl-type-hero-title-line)!important;
  letter-spacing:var(--ssl-type-hero-title-track)!important;
}
html body #app#app#app :where(
  .pond-detail-shell .pond-module-title,
  .pond-context-shell .pond-module-title,
  .pond-detail-shell .gm-feed-title,
  .cost-workspace-head h2,
  .farm-assets-center .assets-head h3,
  .farm-energy-center .energy-head h3,
  .supplier-deals-page .sd-head h2,
  .finance-workspace .finance-head h3,
  .daily-ops .daily-head h2,
  .exec-decision>header h3,
  .admin-primary-page .management-panel-head h2
){
  font-size:var(--ssl-type-module-title-size)!important;
  font-weight:var(--ssl-type-module-title-weight)!important;
  line-height:var(--ssl-type-module-title-line)!important;
  letter-spacing:-.01em!important;
}
html body #app#app#app :where(
  .gm-dashboard .section-head h3,
  .gm-farm-overview .gm-farm-command h2,
  #inventoryWorkspace .section-head h3,
  #inventoryWorkspace .inv-section-head h3,
  .settings-primary-page .section-head h3,
  .gm-feed-card-title,
  .financial-cockpit .financial-decision-card h3
){
  font-size:var(--ssl-type-section-title-size)!important;
  font-weight:var(--ssl-type-section-title-weight)!important;
  line-height:var(--ssl-type-section-title-line)!important;
  letter-spacing:var(--ssl-type-section-title-track)!important;
}
html body #app#app#app :where(
  .pond-detail-shell .pond-op-title,
  .pond-context-shell .pond-op-title,
  .po-ref-chart-card h3,
  .po-ref-finance-card h3,
  .insight-workspace h3,
  .financial-cockpit h3,
  .finance-workspace .finance-section-head h4,
  .daily-ops .daily-section-head h3,
  .daily-ops .daily-quick h3,
  .exec-decision .exec-section-head h4,
  .pond-detail-shell .settings-workspace-layout .section-head h3,
  .pond-detail-shell .pond-clean-empty-title,
  .energy-meter-section>header h3
){
  font-size:var(--ssl-type-panel-title-size)!important;
  font-weight:var(--ssl-type-panel-title-weight)!important;
  line-height:var(--ssl-type-panel-title-line)!important;
  letter-spacing:-.01em!important;
}
html body #app#app#app :where(
  .gm-farm-overview .gm-farm-network .farm-card h3,
  #inventoryWorkspace .inv-wh-copy b,
  #inventoryWorkspace .inv-movement-card h4,
  .admin-primary-page .management-history-card h3,
  .admin-primary-page .sales-decision-row h3,
  .admin-primary-page .management-history-card-v2 h3
){
  font-size:var(--ssl-type-card-title-size)!important;
  font-weight:var(--ssl-type-card-title-weight)!important;
  line-height:var(--ssl-type-card-title-line)!important;
  letter-spacing:normal!important;
}
html body #app#app#app :where(
  .admin-primary-page .management-command-card h3,
  .settings-primary-page .module-card h3,
  .admin-primary-page .worker-management-card header h3,
  .admin-primary-page .opener-management-card header h3,
  .admin-primary-page .service-category-card h3,
  .admin-primary-page .service-placeholder h3
){
  font-size:var(--ssl-type-feature-card-title-size)!important;
  font-weight:var(--ssl-type-feature-card-title-weight)!important;
  line-height:var(--ssl-type-feature-card-title-line)!important;
  letter-spacing:normal!important;
}

/* Standard KPI role */
html body #app#app#app :where(
  #inventoryWorkspace .inv-stats .stat-value,
  #inventoryWorkspace .inv-movements-kpi strong,
  .management-kpi-card>b,
  .management-kpi-card>strong,
  .management-kpi-row article>b,
  .management-hero-metrics b,
  .pond-kpi-val,
  .gm-feed-value,
  .daily-kpis b,
  .exec-kpis b,
  .asset-kpis b,
  .energy-kpis b,
  .sd-kpis b,
  .finance-kpi strong,
  .health-status-card strong,
  .health-signal-card strong
){
  font-size:var(--ssl-type-kpi-value-size)!important;
  font-weight:var(--ssl-type-kpi-value-weight)!important;
  line-height:var(--ssl-type-kpi-value-line)!important;
  letter-spacing:var(--ssl-type-kpi-value-track)!important;
  font-variant-numeric:tabular-nums!important;
}
html body #app#app#app :where(
  #inventoryWorkspace .inv-stats .stat-label,
  #inventoryWorkspace .inv-movements-kpi__label,
  .pond-kpi-title,
  .gm-feed-kpi-label,
  .daily-kpis span,
  .daily-kpis small,
  .exec-kpis span,
  .exec-kpis small,
  .sd-kpis span,
  .asset-kpis span,
  .asset-kpis small,
  .health-status-card span,
  .health-signal-card span
){
  font-size:var(--ssl-type-kpi-label-size)!important;
  font-weight:var(--ssl-type-kpi-label-weight)!important;
  line-height:var(--ssl-type-kpi-label-line)!important;
  letter-spacing:normal!important;
}

/* Compact KPI strips */
html body #app#app#app :where(
  .gm-dashboard-metrics .gm-metric-label,
  .global-mobile-top-kpis span,
  .inventory-mobile-kpis span
){
  font-size:var(--ssl-type-compact-kpi-label-size)!important;
  font-weight:var(--ssl-type-compact-kpi-label-weight)!important;
  line-height:var(--ssl-type-compact-kpi-label-line)!important;
  letter-spacing:normal!important;
}
html body #app#app#app :where(
  .gm-dashboard-metrics .gm-metric strong,
  .global-mobile-top-kpis b,
  .inventory-mobile-kpis b
){
  font-size:var(--ssl-type-compact-kpi-value-size)!important;
  font-weight:var(--ssl-type-compact-kpi-value-weight)!important;
  line-height:var(--ssl-type-compact-kpi-value-line)!important;
  letter-spacing:normal!important;
  font-variant-numeric:tabular-nums!important;
}

/* Navigation role */
html body #app#app#app .nav-item{
  font-size:var(--ssl-type-nav-size)!important;
  font-weight:var(--ssl-type-nav-weight)!important;
  line-height:var(--ssl-type-nav-line)!important;
  letter-spacing:normal!important;
}
html body #app#app#app .pond-module-label{
  font-size:var(--ssl-type-nav-size)!important;
  line-height:var(--ssl-type-nav-line)!important;
  font-weight:var(--ssl-type-nav-weight)!important;
}
html body #app#app#app :where(.pond-module-item,.pond-module-more-item,.management-tab){
  font-size:13.5px!important;
  line-height:1.2!important;
  letter-spacing:normal!important;
}
html body #app#app#app :where(.pond-module-item,.management-tab):not(.active){font-weight:600!important}
html body #app#app#app :where(.pond-module-item,.management-tab).active{font-weight:700!important}

/* Action role — text actions only, icon triggers excluded. */
html body #app#app#app :where(
  button.primary,
  button.outline,
  .card-link,
  .farm-open-action,
  .gm-add-farm,
  #inventoryWorkspace .inv-tabs button,
  #inventoryWorkspace .inv-overview-actions button,
  #inventoryWorkspace .inv-cost-attention-actions button,
  #inventoryWorkspace .inv-use-last-cost,
  #inventoryWorkspace .inv-movement-card__open,
  .admin-primary-page .management-attention button,
  .admin-primary-page .worker-edit-button,
  .admin-primary-page .sales-decision-row button,
  .admin-primary-page .management-create-worker,
  .pond-module-primary-btn,
  .crop-history-action
):not(.icon-button):not(.farm-overflow-trigger):not(.modal-x){
  font-size:var(--ssl-type-button-size)!important;
  font-weight:var(--ssl-type-button-weight)!important;
  line-height:var(--ssl-type-button-line)!important;
  letter-spacing:normal!important;
}

/* Table role */
html body #app#app#app table th{
  font-size:var(--ssl-type-table-head-size)!important;
  font-weight:var(--ssl-type-table-head-weight)!important;
  line-height:var(--ssl-type-table-head-line)!important;
  letter-spacing:normal!important;
}
html body #app#app#app table td,
html body #app#app#app table td b,
html body #app#app#app table .inv-qty-cell{
  font-size:var(--ssl-type-table-cell-size)!important;
  line-height:var(--ssl-type-table-cell-line)!important;
  letter-spacing:normal!important;
}
html body #app#app#app table td b,
html body #app#app#app table .inv-qty-cell{font-weight:700!important}

/* Forms */
html body #app#app#app :where(label,.field,.field-label,.settings-mobile-field>span){
  font-size:var(--ssl-type-form-label-size)!important;
  font-weight:var(--ssl-type-form-label-weight)!important;
  line-height:var(--ssl-type-form-label-line)!important;
  letter-spacing:normal!important;
}
html body #app#app#app :where(input,select,textarea){
  font-size:var(--ssl-type-form-control-size)!important;
  font-weight:var(--ssl-type-form-control-weight)!important;
  line-height:var(--ssl-type-form-control-line)!important;
  letter-spacing:normal!important;
}

/* Eyebrow / metadata / numeric consistency */
html body #app#app#app :where(
  .eyebrow,.gm-live-pill,.gm-dashboard-kicker,.management-hero-kicker,
  .domain-mobile-live,.dofarm-import-kicker,.insight-authority,
  .pond-module-kicker,.water-trend-eyebrow
){
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app#app#app :where(.muted,.hint,.reference){
  font-size:var(--ssl-type-meta-size)!important;
  font-weight:var(--ssl-type-meta-weight)!important;
  line-height:var(--ssl-type-meta-line)!important;
  letter-spacing:normal!important;
}
html body #app#app#app :where(
  .stat-value,.gm-metric strong,.management-kpi-card b,.management-kpi-card strong,
  .pond-kpi-val,.weather-temp,.inv-qty-cell,.gm-feed-value
){
  font-variant-numeric:tabular-nums!important;
}


/* Desktop semantic convergence residuals discovered by computed-style audit. */
html body #app#app#app .page-title{
  font-size:var(--ssl-type-page-title-size)!important;
  font-weight:var(--ssl-type-page-title-weight)!important;
  line-height:var(--ssl-type-page-title-line)!important;
  letter-spacing:var(--ssl-type-page-title-track)!important;
}
html body #app#app#app .section-head h3{
  font-size:var(--ssl-type-section-title-size)!important;
  font-weight:var(--ssl-type-section-title-weight)!important;
  line-height:var(--ssl-type-section-title-line)!important;
  letter-spacing:var(--ssl-type-section-title-track)!important;
}
html body #app#app#app .farm-hero-copy h2{
  font-size:var(--ssl-type-hero-title-size)!important;
  font-weight:var(--ssl-type-hero-title-weight)!important;
  line-height:var(--ssl-type-hero-title-line)!important;
  letter-spacing:var(--ssl-type-hero-title-track)!important;
}
html body #app#app#app .farm-card-title h3{
  font-size:var(--ssl-type-card-title-size)!important;
  font-weight:var(--ssl-type-card-title-weight)!important;
  line-height:var(--ssl-type-card-title-line)!important;
  letter-spacing:normal!important;
}
html body #app#app#app .farm-card .farm-mini-stats span{
  font-size:var(--ssl-type-compact-kpi-label-size)!important;
  font-weight:var(--ssl-type-compact-kpi-label-weight)!important;
  line-height:var(--ssl-type-compact-kpi-label-line)!important;
  letter-spacing:normal!important;
}
html body #app#app#app .farm-card .farm-mini-stats b{
  font-size:var(--ssl-type-compact-kpi-value-size)!important;
  font-weight:var(--ssl-type-compact-kpi-value-weight)!important;
  line-height:var(--ssl-type-compact-kpi-value-line)!important;
  font-variant-numeric:tabular-nums!important;
}
html body #app#app#app .crumb{
  font-size:var(--ssl-type-meta-size)!important;
  font-weight:700!important;
  line-height:var(--ssl-type-meta-line)!important;
  letter-spacing:normal!important;
}
html body #app#app#app .executive-chart-kpis span{
  font-size:var(--ssl-type-compact-kpi-label-size)!important;
  font-weight:var(--ssl-type-compact-kpi-label-weight)!important;
  line-height:var(--ssl-type-compact-kpi-label-line)!important;
}
html body #app#app#app .executive-chart-kpis :where(b,strong){
  font-size:var(--ssl-type-compact-kpi-value-size)!important;
  font-weight:var(--ssl-type-compact-kpi-value-weight)!important;
  line-height:var(--ssl-type-compact-kpi-value-line)!important;
  font-variant-numeric:tabular-nums!important;
}
html body #app#app#app .admin-primary-page svg text{
  font-family:var(--ssl-font-ui)!important;
  font-size:var(--ssl-type-chart-label-size)!important;
  font-weight:var(--ssl-type-chart-label-weight)!important;
}
html body #app#app#app .po-ref-finance-grid small{
  font-size:var(--ssl-type-micro-label-size)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app#app#app .water-mineral-target strong{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  font-variant-numeric:tabular-nums!important;
}


/* Final hidden/conditional convergence from authenticated runtime audit. */
html body #app#app#app .pond-hub-farm-switch>span{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app#app#app .pond-hub-thumb>span{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}
html body #app#app#app .pond-hub-metrics em{
  font-size:var(--ssl-type-micro-label-size)!important;
  font-weight:var(--ssl-type-micro-label-weight)!important;
  line-height:var(--ssl-type-micro-label-line)!important;
}
html body #app#app#app .pond-hub-status{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}

/* Management Services */
html body #app#app#app .service-category-card>b{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}

/* Management Energy */
html body #app#app#app .management-energy-profile header span,
html body #app#app#app .management-energy-profile>div>span{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app#app#app .management-energy-profile>p{
  font-size:var(--ssl-type-meta-size)!important;
  font-weight:var(--ssl-type-meta-weight)!important;
  line-height:var(--ssl-type-meta-line)!important;
  letter-spacing:normal!important;
}

/* Management Finance */
html body #app#app#app .admin-category-row i,
html body #app#app#app .history-benchmark-identity>i{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
  font-style:normal!important;
  font-variant-numeric:tabular-nums!important;
}
html body #app#app#app .executive-ledger-status{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}

/* Management History */
html body #app#app#app .history-summary-strip em,
html body #app#app#app .history-compare-toolbar p{
  font-size:var(--ssl-type-meta-size)!important;
  font-weight:var(--ssl-type-meta-weight)!important;
  line-height:var(--ssl-type-meta-line)!important;
}
html body #app#app#app .history-compare-toolbar span,
html body #app#app#app .history-portfolio-head span{
  font-size:var(--ssl-type-eyebrow-size)!important;
  font-weight:var(--ssl-type-eyebrow-weight)!important;
  line-height:var(--ssl-type-eyebrow-line)!important;
  letter-spacing:var(--ssl-type-eyebrow-track)!important;
}
html body #app#app#app .history-valuation-badge{
  font-size:var(--ssl-type-status-label-size)!important;
  font-weight:var(--ssl-type-status-label-weight)!important;
  line-height:var(--ssl-type-status-label-line)!important;
}

