/* ==============================================================
   V2P2E5UI2A4A — FULL-APP TYPOGRAPHY + INTER RUNTIME LOAD
   Visual-only layer.
   Scope: iconography + typography hierarchy only.
   No routes, state, persistence, task engine, rule logic, data model,
   action generation, save behavior, or navigation behavior changed.
   ============================================================== */

:root{
  --ui2-font:Inter,"Segoe UI",Arial,sans-serif;
  --ui2-page-title:18px;
  --ui2-section-title:14px;
  --ui2-item-title:14px;
  --ui2-body:13px;
  --ui2-secondary:11px;
  --ui2-meta:10px;
  --ui2-nav:11px;
  --ui2-line:1.45;
}

/* UI2A3 locked mobile type scale:
   Page title 18 / Module & card title 14 / Body 13 / Secondary 11 / Meta 10 / Nav 11.
   Form controls intentionally remain 16px to prevent iOS Safari auto-zoom.
   Large KPI numerals and health-ring display numbers are intentionally untouched. */

/* Inter is now explicitly loaded by index.html at 400/500/600/700.
   Fallbacks remain for network failure; do not compensate with heavier local weights. */
html,body,button,input,select,textarea,*{font-family:var(--ui2-font)!important;font-synthesis:none;}
body,button,input,select,textarea{line-height:var(--ui2-line);}

/* Semantic hierarchy used across secondary/workflow pages. */
.pagebar-title,.vtop .pagebar-title{font-size:var(--ui2-page-title)!important;font-weight:700!important;line-height:1.2!important;}
.h1{font-size:var(--ui2-page-title)!important;font-weight:700!important;line-height:1.25!important;}
.h2{font-size:var(--ui2-section-title)!important;font-weight:700!important;line-height:1.3!important;}
.h3{font-size:var(--ui2-item-title)!important;font-weight:700!important;line-height:1.35!important;}
.small{font-size:var(--ui2-secondary)!important;line-height:1.5!important;}
.tiny{font-size:var(--ui2-meta)!important;line-height:1.45!important;}
.sectionlabel{font-size:11px!important;font-weight:700!important;letter-spacing:.045em!important;line-height:1.3!important;}
.formgroup>label,label:not(.switch){font-size:12px!important;font-weight:500!important;line-height:1.35!important;}
.formgroup input,.formgroup select,.formgroup textarea,input,select,textarea{font-size:16px!important;line-height:1.35!important;} /* 16px prevents iOS Safari focus-zoom on form controls. */
.btn,.aux-view .btn{font-size:13px!important;font-weight:700!important;line-height:1.25!important;}
.notice,.aux-view .notice{font-size:var(--ui2-secondary)!important;line-height:1.45!important;}
.pill{font-size:10px!important;font-weight:600!important;}

/* Settings / support / notification rows: same semantic levels everywhere. */
.srow b,.scopy>b{font-size:var(--ui2-item-title)!important;line-height:1.3!important;}
.srow .tiny,.scopy .tiny{font-size:var(--ui2-meta)!important;line-height:1.45!important;}
.setmenu b{font-size:var(--ui2-item-title)!important;}
.setphoto b{font-size:var(--ui2-page-title)!important;}
.setphoto span,.acct>span{font-size:var(--ui2-secondary)!important;}
.acct>b{font-size:var(--ui2-section-title)!important;}
.toggles label{font-size:13px!important;}
.notifs b{font-size:var(--ui2-item-title)!important;}
.notifs span{font-size:var(--ui2-secondary)!important;}
.notifs time{font-size:var(--ui2-meta)!important;}
.legal h2{font-size:var(--ui2-page-title)!important;}
.legal p{font-size:var(--ui2-body)!important;line-height:1.55!important;}

/* Current Hives renderer. */
.v63-head>b{font-size:var(--ui2-page-title)!important;}
.v63-search input{font-size:var(--ui2-secondary)!important;}
.v63-copy b{font-size:var(--ui2-item-title)!important;}
.v63-copy small{font-size:var(--ui2-meta)!important;}
.v63-card>em{font-size:var(--ui2-meta)!important;}

/* Current Actions renderer. Preserve density, but make like-for-like text equal. */
.v53-action-tabs button{font-size:11px!important;font-weight:600!important;}
.v53-actions .alist button>b{font-size:var(--ui2-item-title)!important;line-height:1.25!important;}
.v53-actions .alist button>span:first-of-type{font-size:var(--ui2-secondary)!important;line-height:1.25!important;}
.v53-actions .alist button>em,
.v53-actions .alist button>small{font-size:var(--ui2-meta)!important;line-height:1.25!important;}
.v53-actions .v53-add-action{font-size:13px!important;font-weight:700!important;}
.v53-actions .v53-shortcuts button{font-size:11px!important;}

/* Current Insights renderer. Do not touch KPI numerals; normalize labels/body only. */
.v53-insights .insighttitle{font-size:var(--ui2-section-title)!important;font-weight:800!important;}
.v53-insights .isum span{font-size:var(--ui2-secondary)!important;}
.v53-insights .isum small{font-size:var(--ui2-meta)!important;}
.v53-insights .vhead>b{font-size:var(--ui2-section-title)!important;}
.v53-insights .bullets li{font-size:var(--ui2-body)!important;line-height:1.4!important;}
.v53-insights .recol button,
.v53-insights .inav button{font-size:11px!important;line-height:1.3!important;}

/* Current Inspection summary cards. Keep AX9/AX10 two-column containment untouched. */
body .v211-inspection .v211-card-head b{font-size:14px!important;font-weight:700!important;line-height:1.25!important;}
body .v211-inspection .v211-card-row>span,
body .v211-inspection .v211-card-row>strong{font-size:13px!important;line-height:1.35!important;}
body .v211-inspection .v2p2e5ap-card-note{font-size:10px!important;line-height:1.45!important;}
body .v211-inspection .v2p2e5ap-reference-note{font-size:11px!important;line-height:1.5!important;}

/* Home keeps display numerals/health ring, while secondary labels align with the same scale. */
.v56-row-copy>span{font-size:var(--ui2-section-title)!important;}
.v56-row-copy>b{font-size:13px!important;}
.v56-row-copy>small,.v56-row-copy>em{font-size:var(--ui2-meta)!important;}
.v56-soft-btn{font-size:11px!important;font-weight:600!important;}
.v56-quickbar span{font-size:11px!important;}

/* Bottom navigation label system. */
.bottomnav .navitem{gap:4px!important;font-size:var(--ui2-nav)!important;font-weight:500!important;}
.bottomnav .navitem>span{font-size:var(--ui2-nav)!important;line-height:1.15!important;font-weight:500!important;}
.bottomnav .navitem.active{font-weight:700!important;}

/* Icon replacement — UI2A1: direct SVG backgrounds for browser-safe rendering.
   No CSS mask is used; this avoids the solid-square fallback seen in UI2A. */
.bottomnav .navitem>.icon{display:none!important;}
.bottomnav .navitem::before,
.iconbtn[aria-label="Settings"]::before,
.v173-settings::before{
  content:"";
  display:block;
  width:21px;
  height:21px;
  flex:0 0 21px;
  background-color:transparent!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  -webkit-mask:none!important;
  mask:none!important;
}
.bottomnav .navitem[aria-label="Home"]::before{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZD0iTTMuNSAxMC4yIDEyIDMuNGw4LjUgNi44djlhMS4zIDEuMyAwIDAgMS0xLjMgMS4zaC00Ljd2LTYuM2gtNXY2LjNINC44YTEuMyAxLjMgMCAwIDEtMS4zLTEuM1oiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzZGN0Y3NSIgc3Ryb2tlLXdpZHRoPSIxLjkiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==")!important;}
.bottomnav .navitem[aria-label="Hives"]::before{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNkY3Rjc1IiBzdHJva2Utd2lkdGg9IjEuOCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0ibTEyIDIuOCA0IDIuM3Y0LjZsLTQgMi4zLTQtMi4zVjUuMVoiLz48cGF0aCBkPSJtNy4xIDEwLjcgNCAyLjN2NC42bC00IDIuMy00LTIuM1YxM1oiLz48cGF0aCBkPSJtMTYuOSAxMC43IDQgMi4zdjQuNmwtNCAyLjMtNC0yLjNWMTNaIi8+PC9nPjwvc3ZnPg==")!important;}
.bottomnav .navitem[aria-label="Actions"]::before{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNkY3Rjc1IiBzdHJva2Utd2lkdGg9IjEuOSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSI1IiB5PSI0LjYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNiIgcng9IjIuMSIvPjxwYXRoIGQ9Ik05IDQuN1YzLjVjMC0uNi41LTEgMS0xaDRjLjYgMCAxIC40IDEgMXYxLjIiLz48cGF0aCBkPSJtOC4zIDExLjcgMiAyIDUtNSIvPjwvZz48L3N2Zz4=")!important;}
.bottomnav .navitem[aria-label="Insights"]::before{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNkY3Rjc1IiBzdHJva2Utd2lkdGg9IjEuOSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNNC4yIDE5LjV2LTQuOE05IDE5LjV2LThNMTMuOCAxOS41di01LjkiLz48cGF0aCBkPSJtNC41IDEwLjggNS00IDQgMi40TDE5LjMgNCIvPjxwYXRoIGQ9Ik0xNi4yIDRoMy4xdjMuMSIvPjwvZz48L3N2Zz4=")!important;}
.bottomnav .navitem.active[aria-label="Home"]::before{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZD0iTTMuNSAxMC4yIDEyIDMuNGw4LjUgNi44djlhMS4zIDEuMyAwIDAgMS0xLjMgMS4zaC00Ljd2LTYuM2gtNXY2LjNINC44YTEuMyAxLjMgMCAwIDEtMS4zLTEuM1oiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzVFNzM1MCIgc3Ryb2tlLXdpZHRoPSIxLjkiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPg==")!important;}
.bottomnav .navitem.active[aria-label="Hives"]::before{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNUU3MzUwIiBzdHJva2Utd2lkdGg9IjEuOCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0ibTEyIDIuOCA0IDIuM3Y0LjZsLTQgMi4zLTQtMi4zVjUuMVoiLz48cGF0aCBkPSJtNy4xIDEwLjcgNCAyLjN2NC42bC00IDIuMy00LTIuM1YxM1oiLz48cGF0aCBkPSJtMTYuOSAxMC43IDQgMi4zdjQuNmwtNCAyLjMtNC0yLjNWMTNaIi8+PC9nPjwvc3ZnPg==")!important;}
.bottomnav .navitem.active[aria-label="Actions"]::before{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNUU3MzUwIiBzdHJva2Utd2lkdGg9IjEuOSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSI1IiB5PSI0LjYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNiIgcng9IjIuMSIvPjxwYXRoIGQ9Ik05IDQuN1YzLjVjMC0uNi41LTEgMS0xaDRjLjYgMCAxIC40IDEgMXYxLjIiLz48cGF0aCBkPSJtOC4zIDExLjcgMiAyIDUtNSIvPjwvZz48L3N2Zz4=")!important;}
.bottomnav .navitem.active[aria-label="Insights"]::before{background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNUU3MzUwIiBzdHJva2Utd2lkdGg9IjEuOSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNNC4yIDE5LjV2LTQuOE05IDE5LjV2LThNMTMuOCAxOS41di01LjkiLz48cGF0aCBkPSJtNC41IDEwLjggNS00IDQgMi40TDE5LjMgNCIvPjxwYXRoIGQ9Ik0xNi4yIDRoMy4xdjMuMSIvPjwvZz48L3N2Zz4=")!important;}

/* Settings icon: green on standard headers, white on Hives hero header. */
.iconbtn[aria-label="Settings"]>.icon{display:none!important;}
.iconbtn[aria-label="Settings"]::before{
  width:20px;height:20px;flex-basis:20px;
  background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNUU3MzUwIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMy4xIi8+PHBhdGggZD0iTTE5LjIgMTMuNmE3LjggNy44IDAgMCAwIDAtMy4ybDItMS41LTItMy40LTIuNCAxYTggOCAwIDAgMC0yLjgtMS42TDEzLjcgMkg5LjhsLS40IDIuOWE4IDggMCAwIDAtMi44IDEuNmwtMi40LTEtMiAzLjQgMiAxLjVhNy44IDcuOCAwIDAgMCAwIDMuMmwtMiAxLjUgMiAzLjQgMi40LTFhOCA4IDAgMCAwIDIuOCAxLjZsLjQgMi45aDMuOWwuNC0yLjlhOCA4IDAgMCAwIDIuOC0xLjZsMi40IDEgMi0zLjRaIi8+PC9nPjwvc3ZnPg==")!important;
}
.v173-settings{font-size:0!important;display:grid!important;place-items:center!important;}
.v173-settings::before{
  width:20px;height:20px;flex-basis:20px;
  background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjRkZGRUZCIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMy4xIi8+PHBhdGggZD0iTTE5LjIgMTMuNmE3LjggNy44IDAgMCAwIDAtMy4ybDItMS41LTItMy40LTIuNCAxYTggOCAwIDAgMC0yLjgtMS42TDEzLjcgMkg5LjhsLS40IDIuOWE4IDggMCAwIDAtMi44IDEuNmwtMi40LTEtMiAzLjQgMiAxLjVhNy44IDcuOCAwIDAgMCAwIDMuMmwtMiAxLjUgMiAzLjQgMi40LTFhOCA4IDAgMCAwIDIuOCAxLjZsLjQgMi45aDMuOWwuNC0yLjlhOCA4IDAgMCAwIDIuOC0xLjZsMi40IDEgMi0zLjRaIi8+PC9nPjwvc3ZnPg==")!important;
}

/* Active icon remains restrained; existing underline stays as the selection indicator. */
.bottomnav .navitem.active::before{width:22px;height:22px;flex-basis:22px;}

@media(max-width:350px){
  body .v211-inspection .v211-card-row>span,
  body .v211-inspection .v211-card-row>strong{font-size:12px!important;}
  .bottomnav .navitem>span{font-size:10px!important;}
}

/* ==============================================================
   V2P2E5UI2A2 — BOTTOM NAV ICON RENDER RESTORE
   Browser-safe final fix: use the existing inline SVG nav icons that
   are already generated by app.js. This removes the pseudo-element
   background-image dependency that failed on the user's browser.
   Visual-only. No routes, data, actions, state, or business logic.
   ============================================================== */
.bottomnav .navitem::before{
  content:none!important;
  display:none!important;
  background-image:none!important;
}
.bottomnav .navitem>.icon.navsvg{
  display:block!important;
  width:22px!important;
  height:22px!important;
  flex:0 0 22px!important;
  margin:0 auto 3px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.85!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.bottomnav .navitem.active>.icon.navsvg{
  width:22px!important;
  height:22px!important;
}

/* ==============================================================
   V2P2E5UI2A4 — FULL-APP TYPOGRAPHY + HEADER ICON CONSOLIDATION
   Visual-only final candidate.
   Locked semantic typography:
   Page title 18/700/22
   Module/card title 14/700/18
   Body 13/400/19
   Important value 13/500/18
   Form label 12/500/16
   Secondary 11/400/16
   Date/meta 10/500/14
   Status 10/600-700/14
   Button 13/700/16
   Bottom nav 11/500; active 700
   Inputs/selects/textarea 16px (iOS Safari anti-zoom)
   Header utility icons: deep gray #3F4541; active nav stays brand green.
   No route, state, data, workflow, persistence, or scientific-rule changes.
   ============================================================== */

:root{
  --ui2a4-page-title-size:18px;
  --ui2a4-page-title-weight:700;
  --ui2a4-page-title-line:22px;
  --ui2a4-card-title-size:14px;
  --ui2a4-card-title-weight:700;
  --ui2a4-card-title-line:18px;
  --ui2a4-body-size:13px;
  --ui2a4-body-weight:400;
  --ui2a4-body-line:19px;
  --ui2a4-value-size:13px;
  --ui2a4-value-weight:500;
  --ui2a4-value-line:18px;
  --ui2a4-label-size:12px;
  --ui2a4-label-weight:500;
  --ui2a4-label-line:16px;
  --ui2a4-secondary-size:11px;
  --ui2a4-secondary-weight:400;
  --ui2a4-secondary-line:16px;
  --ui2a4-meta-size:10px;
  --ui2a4-meta-weight:500;
  --ui2a4-meta-line:14px;
  --ui2a4-status-size:10px;
  --ui2a4-status-weight:600;
  --ui2a4-status-line:14px;
  --ui2a4-button-size:13px;
  --ui2a4-button-weight:700;
  --ui2a4-button-line:16px;
  --ui2a4-nav-size:11px;
  --ui2a4-icon-dark:#3F4541;
  --ui2a4-icon-muted:#6F756F;
  --ui2a4-brand:#5E7350;
  --ui2a4-alert:#D92D20;
}

/* ---------- 1. Global semantic baseline ---------- */
html body #view{
  font-size:var(--ui2a4-body-size)!important;
  font-weight:var(--ui2a4-body-weight)!important;
  line-height:var(--ui2a4-body-line)!important;
}
html body #view p,
html body #view li,
html body #view .body{
  font-size:var(--ui2a4-body-size)!important;
  font-weight:var(--ui2a4-body-weight)!important;
  line-height:var(--ui2a4-body-line)!important;
}
html body #view .h1,
html body #view .pagetitle,
html body #view .page-title,
html body #view .v60-hero-title,
html body #view .v55-title{
  font-size:var(--ui2a4-page-title-size)!important;
  font-weight:var(--ui2a4-page-title-weight)!important;
  line-height:var(--ui2a4-page-title-line)!important;
}
html body #topbar .pagebar-title,
html body #topbar .brand:not(:has(img)){
  font-size:var(--ui2a4-page-title-size)!important;
  font-weight:var(--ui2a4-page-title-weight)!important;
  line-height:var(--ui2a4-page-title-line)!important;
}
html body #view .h2,
html body #view .h3,
html body #view .vhead>b,
html body #view .section-title,
html body #view .master-section-title,
html body #view .v54-section-title>b,
html body #view .v55-section-title,
html body #view .v55-section-head,
html body #view .v112-ai-reasons>.vhead>b{
  font-size:var(--ui2a4-card-title-size)!important;
  font-weight:var(--ui2a4-card-title-weight)!important;
  line-height:var(--ui2a4-card-title-line)!important;
}
html body #view .small,
html body #view .notice,
html body #view .helper,
html body #view .subtext,
html body #view .caption{
  font-size:var(--ui2a4-secondary-size)!important;
  font-weight:var(--ui2a4-secondary-weight)!important;
  line-height:var(--ui2a4-secondary-line)!important;
}
html body #view .tiny,
html body #view .meta,
html body #view time{
  font-size:var(--ui2a4-meta-size)!important;
  font-weight:var(--ui2a4-meta-weight)!important;
  line-height:var(--ui2a4-meta-line)!important;
}
html body #view .pill,
html body #view .badge,
html body #view [class*="-pill"],
html body #view [class*="status-pill"]{
  font-size:var(--ui2a4-status-size)!important;
  font-weight:var(--ui2a4-status-weight)!important;
  line-height:var(--ui2a4-status-line)!important;
}
html body #view label:not(.switch),
html body #view .formgroup>label,
html body #view [class*="-label"]{
  font-size:var(--ui2a4-label-size)!important;
  font-weight:var(--ui2a4-label-weight)!important;
  line-height:var(--ui2a4-label-line)!important;
}
html body #view input,
html body #view select,
html body #view textarea,
html body .modal input,
html body .modal select,
html body .modal textarea{
  font-size:16px!important;
  font-weight:400!important;
  line-height:22px!important;
}
html body #view button:not(.iconbtn):not(.navitem),
html body .modal button:not(.iconbtn){
  font-size:var(--ui2a4-button-size)!important;
  font-weight:var(--ui2a4-button-weight)!important;
  line-height:var(--ui2a4-button-line)!important;
}

/* Filters/tabs/chips are status controls, not primary CTA text. */
html body #view :is(.tab,.tabs button,.filters button,.chip,.pill,.v53-action-tabs button,.v60-filters button,.v61-filter-btn,.v62-filter,.v63-filter,.v109-map-tabs button,.v118-trend-ranges button,.v119-trend-ranges button,.v128-honey-ranges button){
  font-size:var(--ui2a4-status-size)!important;
  font-weight:600!important;
  line-height:var(--ui2a4-status-line)!important;
}

/* ---------- 2. Header utility icons ---------- */
html body #topbar .iconbtn{
  color:var(--ui2a4-icon-dark)!important;
}
html body #topbar .iconbtn svg,
html body #topbar .iconbtn svg *{
  stroke:currentColor!important;
}
html body #topbar .iconbtn svg [fill]:not([fill="none"]){
  fill:currentColor!important;
}
html body #topbar .plusbtn,
html body #topbar .core-back,
html body #topbar .core-more,
html body #topbar .core-filter,
html body #topbar button[aria-label="Back"],
html body #topbar button[aria-label="Settings"],
html body #topbar button[aria-label="Notifications"],
html body #topbar button[aria-label="Add Hive"],
html body #topbar button[aria-label="Health Analysis"],
html body #topbar button[aria-label="Add action"]{
  color:var(--ui2a4-icon-dark)!important;
}
html body #topbar .badge,
html body #topbar .nav-badge{
  background:var(--ui2a4-alert)!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:14px!important;
}
/* Hives custom header utility buttons follow the same deep-gray system. */
html body #view .v173-hives .v173-settings,
html body #view .v173-hives .v173-more,
html body #view .v63-head button{
  color:var(--ui2a4-icon-dark)!important;
}
html body #view .v173-hives .v173-settings svg,
html body #view .v173-hives .v173-more svg{
  stroke:currentColor!important;
}
/* Replace the old green/white generated settings pseudo icon with deep gray. */
html body .iconbtn[aria-label="Settings"]::before,
html body .v173-settings::before{
  filter:none!important;
}
html body .iconbtn[aria-label="Settings"]::before{
  background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjM0Y0NTQxIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMy4xIi8+PHBhdGggZD0iTTE5LjIgMTMuNmE3LjggNy44IDAgMCAwIDAtMy4ybDItMS41LTItMy40LTIuNCAxYTggOCAwIDAgMC0yLjgtMS42TDEzLjcgMkg5LjhsLS40IDIuOWE4IDggMCAwIDAtMi44IDEuNmwtMi40LTEtMiAzLjQgMiAxLjVhNy44IDcuOCAwIDAgMCAwIDMuMmwtMiAxLjUgMiAzLjQgMi40LTFhOCA4IDAgMCAwIDIuOCAxLjZsLjQgMi45aDMuOWwuNC0yLjlhOCA4IDAgMCAwIDIuOC0xLjZsMi40IDEgMi0zLjRaIi8+PC9nPjwvc3ZnPg==")!important;
}
html body .v173-settings::before{
  background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjM0Y0NTQxIiBzdHJva2Utd2lkdGg9IjEuNzUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMy4xIi8+PHBhdGggZD0iTTE5LjIgMTMuNmE3LjggNy44IDAgMCAwIDAtMy4ybDItMS41LTItMy40LTIuNCAxYTggOCAwIDAgMC0yLjgtMS42TDEzLjcgMkg5LjhsLS40IDIuOWE4IDggMCAwIDAtMi44IDEuNmwtMi40LTEtMiAzLjQgMiAxLjVhNy44IDcuOCAwIDAgMCAwIDMuMmwtMiAxLjUgMiAzLjQgMi40LTFhOCA4IDAgMCAwIDIuOCAxLjZsLjQgMi45aDMuOWwuNC0yLjlhOCA4IDAgMCAwIDIuOC0xLjZsMi40IDEgMi0zLjRaIi8+PC9nPjwvc3ZnPg==")!important;
}

/* ---------- 3. Bottom navigation ---------- */
html body #bottomnav .navitem,
html body #bottomnav .navitem>span{
  font-size:var(--ui2a4-nav-size)!important;
  font-weight:500!important;
  line-height:13px!important;
  color:var(--ui2a4-icon-muted)!important;
}
html body #bottomnav .navitem>.icon.navsvg{
  color:var(--ui2a4-icon-muted)!important;
  stroke:currentColor!important;
}
html body #bottomnav .navitem.active,
html body #bottomnav .navitem.active>span,
html body #bottomnav .navitem.active>.icon.navsvg{
  color:var(--ui2a4-brand)!important;
  font-weight:700!important;
}

/* ---------- 4. Home / Hives / Actions / Insights ---------- */
html body #view .v56-row-copy>span{
  font-size:var(--ui2a4-card-title-size)!important;font-weight:700!important;line-height:18px!important;
}
html body #view .v56-row-copy>b{
  font-size:var(--ui2a4-body-size)!important;font-weight:500!important;line-height:18px!important;
}
html body #view .v56-row-copy>small{
  font-size:var(--ui2a4-meta-size)!important;font-weight:500!important;line-height:14px!important;
}
html body #view .v56-row-copy>em{
  font-size:var(--ui2a4-secondary-size)!important;font-weight:400!important;line-height:16px!important;
}
html body #view .v56-soft-btn{font-size:13px!important;font-weight:700!important;line-height:16px!important}
html body #view .v56-quickbar span{font-size:11px!important;font-weight:500!important;line-height:13px!important}
html body #view .v56-health-ring>span,
html body #view .v56-health-stats span{font-size:10px!important;font-weight:500!important;line-height:14px!important}

html body #view .v63-head>b{font-size:18px!important;font-weight:700!important;line-height:22px!important}
html body #view .v63-copy>b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v63-copy>small{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v63-card>em{font-size:10px!important;font-weight:600!important;line-height:14px!important}

html body #view .v53-actions .alist button>b,
html body #view .v2p2e5ab-task>strong{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v53-actions .alist button>span:first-of-type,
html body #view .v2p2e5ab-task>small{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #view .v53-actions .alist button>em,
html body #view .v53-actions .alist button>small,
html body #view .v2p2e5ab-task-foot time{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v2p2e5ab-task-top>b{font-size:11px!important;font-weight:600!important;line-height:16px!important}
html body #view .v2p2e5ab-task-top i,
html body #view .v2p2e5ab-task-top em,
html body #view .v2p2e5ab-task-foot i{font-size:10px!important;font-weight:600!important;line-height:14px!important}
html body #view .v2p2e5ab-summary>button span{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v2p2e5ab-summary .v2p2e5ab-all{font-size:11px!important;font-weight:600!important;line-height:16px!important}

html body #view .v53-insights .insighttitle{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v53-insights .isum span{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #view .v53-insights .isum small{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v53-insights .bullets li{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #view .v53-insights .recol button,
html body #view .v53-insights .inav button{font-size:11px!important;font-weight:600!important;line-height:16px!important}

/* ---------- 5. Hive Detail / Inspection / Timeline ---------- */
html body #view .v82-hive-detail .dover>div:first-child b{font-size:18px!important;font-weight:700!important;line-height:22px!important}
html body #view .v82-hive-detail .dover>div:first-child span,
html body #view .v82-hive-detail .meta{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v82-hive-detail .hg>b,
html body #view .v82-hive-detail .vhead>b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v82-hive-detail .hg>div,
html body #view .v82-hive-detail .tease{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #view .v82-hive-detail .hg span{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #view .v82-hive-detail .hg strong{font-size:13px!important;font-weight:500!important;line-height:18px!important}

html body #view .v211-inspection .v211-card-head b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v211-inspection .v211-card-row>span{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #view .v211-inspection .v211-card-row>strong{font-size:13px!important;font-weight:500!important;line-height:18px!important}
html body #view .v211-inspection .v2p2e5ap-card-note{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #view .v211-inspection .v2p2e5ap-reference-note{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #view .inspection-field-row span,
html body #view .inspection-slider-row span{font-size:12px!important;font-weight:500!important;line-height:16px!important}
html body #view .inspection-field-row b,
html body #view .inspection-slider-row b{font-size:13px!important;font-weight:500!important;line-height:18px!important}

html body #view .v88-timeline .timeline-date-master,
html body #view .v88-timeline .timeline-event-head span,
html body #view .v88-timeline .timeline-event-master>small{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v88-timeline .timeline-event-head b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v88-timeline .timeline-event-master p{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #view .v88-timeline .timeline-filter-master button,
html body #view .v88-timeline .year-master button{font-size:10px!important;font-weight:600!important;line-height:14px!important}

/* ---------- 6. Feeding / Treatment / Harvest ---------- */
html body #view :is(.feeding-section-v98,.treatment-section-v102,.harvest-section-v103,.harvest-card-v106) .vhead>b,
html body #view :is(.feeding-section-v98,.treatment-section-v102,.harvest-section-v103) .section-title,
html body #view .harvest-card-head b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view :is(.feeding-hive-copy,.treatment-hive-copy,.harvest-hive-copy)>b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view :is(.feeding-hive-copy,.treatment-hive-copy,.harvest-hive-copy)>span,
html body #view :is(.feeding-time-note,.treatment-time-note,.harvest-time-note,.treatment-safety-note,.feeding-notes-v98,.treatment-notes-v102,.harvest-notes-v103){font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #view :is(.feeding-hive-copy,.treatment-hive-copy,.harvest-hive-copy)>em,
html body #view .harvest-date,
html body #view .harvest-card-head :is(span,small),
html body #view .harvest-recent-main small,
html body #view .harvest-recent-value small{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .harvest-recent-main b,
html body #view .harvest-recent-value b{font-size:13px!important;font-weight:500!important;line-height:18px!important}
html body #view .harvest-empty b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .harvest-empty span{font-size:11px!important;font-weight:400!important;line-height:16px!important}

/* ---------- 7. Map / AI / Trend / Risk / Season / Recommendations / Honey ---------- */
html body #view .v109-map-head b{font-size:18px!important;font-weight:700!important;line-height:22px!important}
html body #view .v109-map-head span,
html body #view .v109-map-head small,
html body #view .v109-map-label span,
html body #view .v109-map-info small,
html body #view .v109-map-hive-list small,
html body #view .v109-map-free{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v109-map-label b,
html body #view .v109-map-info b,
html body #view .v109-map-hive-list b{font-size:13px!important;font-weight:500!important;line-height:18px!important}
html body #view .v109-map-info>button{font-size:13px!important;font-weight:700!important;line-height:16px!important}
html body #view .v109-map-pin{font-size:10px!important;font-weight:700!important;line-height:14px!important}

html body #view .v112-ai-copy b{font-size:18px!important;font-weight:700!important;line-height:22px!important}
html body #view .v112-ai-copy span{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #view .v112-ai-copy small,
html body #view .v112-ai-score span,
html body #view .v112-ai-risk span{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v112-ai-risk strong{font-size:13px!important;font-weight:500!important;line-height:18px!important}
html body #view .v112-ai-actions button,
html body #view .v112-ai-cta{font-size:13px!important;font-weight:700!important;line-height:16px!important}

html body #view :is(.v118-trend-summary,.v119-trend-summary) small,
html body #view .v119-chart-labels,
html body #view :is(.v118-trend-card,.v119-trend-card) small{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view :is(.v118-trend-summary,.v119-trend-summary) span,
html body #view :is(.v118-trend-card,.v119-trend-card) span,
html body #view .v119-chart-card .vhead span{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #view :is(.v118-trend-note,.v119-source-note) b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view :is(.v118-trend-note,.v119-source-note) span,
html body #view .v119-chart-empty span{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #view .v119-chart-empty b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v119-trend-card em{font-size:10px!important;font-weight:600!important;line-height:14px!important}
/* Trend KPI numerals intentionally retain display sizes. */

html body #view .v123-risk-overview-copy b{font-size:18px!important;font-weight:700!important;line-height:22px!important}
html body #view .v123-risk-overview-copy span,
html body #view .v123-risk-card-copy p{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #view .v123-risk-overview-copy small,
html body #view .v123-risk-counts span{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v123-risk-card-copy b,
html body #view .v123-risk-how-head b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v123-risk-badge{font-size:10px!important;font-weight:700!important;line-height:14px!important}

html body #view .v124-season-head>span{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v124-season-hero small,
html body #view .v124-season-action-top em{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v124-season-action-top b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v124-season-action p{font-size:13px!important;font-weight:400!important;line-height:19px!important}

html body #view .v127-reco-top b,
html body #view .v127-reco-card b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v127-reco-top small,
html body #view .v127-reco-grid small,
html body #view .v127-reco-source{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v127-reco-card p{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #view .v127-reco-summary-pill{font-size:10px!important;font-weight:700!important;line-height:14px!important}
html body #view .v127-reco-card>button{font-size:13px!important;font-weight:700!important;line-height:16px!important}

html body #view .v128-honey-summary small,
html body #view .v128-honey-chart-labels,
html body #view .v128-honey-source{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v128-honey-hive-list b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v128-honey-hive-list small{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v128-honey-open,
html body #view .v128-honey-empty button{font-size:13px!important;font-weight:700!important;line-height:16px!important}
/* Honey KPI numerals intentionally retain display sizes. */

/* ---------- 8. Settings / Account / Legal / Notifications ---------- */
html body #view .sectionlabel{font-size:11px!important;font-weight:700!important;line-height:16px!important}
html body #view .srow b,
html body #view .scopy>b,
html body #view .setmenu b,
html body #view .notifs b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .srow .tiny,
html body #view .scopy .tiny,
html body #view .notifs time{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .setphoto span,
html body #view .acct>span,
html body #view .notifs span{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #view .acct>b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .legal h2{font-size:18px!important;font-weight:700!important;line-height:22px!important}
html body #view .legal p{font-size:13px!important;font-weight:400!important;line-height:19px!important}

/* ---------- 9. Low-frequency Action workflows B37/B38/B39/B40/B41/B43 ---------- */
html body #view :is(.b37-page,.b38-page,.b38-detail-page,.b39-page,.b39-create-page,.b39-pending-detail-page,.b39-completed-detail-page,.b40-page,.b41-page,.b43-page){
  font-size:13px!important;font-weight:400!important;line-height:19px!important;
}
html body #view :is(.b37-page,.b38-page,.b38-detail-page,.b39-page,.b39-create-page,.b39-pending-detail-page,.b39-completed-detail-page,.b40-page,.b41-page,.b43-page) p{
  font-size:13px!important;font-weight:400!important;line-height:19px!important;
}
html body #view :is(.b37-intro-title,.b37-card-head b,.b38-task,.b38-detail-hive,.b39-count-head,.b39-hero-copy b,.b39-plan-cal-title,.b39m-result-card .vhead>b,.b40-result-card .vhead>b){
  font-size:14px!important;font-weight:700!important;line-height:18px!important;
}
html body #view :is(.b37-intro-copy,.b37-intro-sub,.b37-hint,.b38-note,.b39-info,.b39-pending-note,.b40-note){
  font-size:11px!important;font-weight:400!important;line-height:16px!important;
}
html body #view :is(.b37-label,.b39m-pair-label){font-size:12px!important;font-weight:500!important;line-height:16px!important}
html body #view :is(.b37-meta,.b37-sub,.b38-date-display,.b38-detail-date-display,.b39-summary-row,.b39-date-shell,.b39v-pending-date-button){font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view :is(.b37-state,.b38-status-pill){font-size:10px!important;font-weight:600!important;line-height:14px!important}
html body #view :is(.b37-primary,.b37-secondary,.b38-page .b37-primary,.b39-footer button,.b40-page button,.b41-page button,.b43-page button){font-size:13px!important;font-weight:700!important;line-height:16px!important}
/* Result/detail value grids: labels normal, actual values medium — never 800/900. */
html body #view :is(.b38-task-grid,.b38-plan-list,.b39-summary-row,.b39m-result-info,.b40-row) span{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #view :is(.b38-task-grid,.b38-plan-list,.b39-summary-row,.b39m-result-info,.b40-row) b,
html body #view :is(.b39-summary-strong,.b37-count-top strong,.b39-count-box strong){font-size:13px!important;font-weight:500!important;line-height:18px!important}

/* ---------- 10. Scientific task detail + generic engine surfaces ---------- */
html body #view .v2p2e5ab-detail .vhead>b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v2p2e5ab-detail .v2p2e5ab-detail-grid span{font-size:11px!important;font-weight:400!important;line-height:16px!important;color:#7A817B!important}
html body #view .v2p2e5ab-detail .v2p2e5ab-detail-grid b{font-size:13px!important;font-weight:500!important;line-height:18px!important}
html body #view .v2p2e5ab-detail .vc p{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #view .v2p2e5ab-source-pill{font-size:10px!important;font-weight:600!important;line-height:14px!important}

html body .modal .modalhead b,
html body .modal .modalhead .h2{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body .modal .modalhead small{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body .modal p{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body .modal small{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body .modal :is(.b37-picker-group,.v2p2e5af-decision-title){font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body .modal :is(.v2p2e5af-intro,.v2p2e5af-decision-note,.v2p2e5af-warning p){font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body .modal .add-action-card b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body .modal .add-action-card small{font-size:11px!important;font-weight:400!important;line-height:16px!important}

/* ---------- 11. R02/R03/S13/S14/R08/R09/R10/R11/R12 verification families ---------- */
html body #view :is(.v2p2e5r02-review,.v2p2e5r02-evidence,.v2p2e5r03-detail,.v2p2e5r03-food-verification,.v2p2e5s13-evidence,.v2p2e5s14-review,.v2p2e5s14-evidence,.v2p2e5r08-detail,.v2p2e5r08-check,.v2p2e5r10-detail,.v2p2e5r10-form-page,.v2p2e5r10-path-page,.v2p2e5r11-detail,.v2p2e5r11-space-page,.v2p2e5r12-page,.v2p2e5r12-review-page){
  font-size:13px!important;font-weight:400!important;line-height:19px!important;
}
html body #view :is(.v2p2e5r02-grid,.v2p2e5r03-grid,.v2p2e5s13-grid,.v2p2e5s14-grid,.v2p2e5r08-grid,.v2p2e5r10-grid,.v2p2e5r11-grid,.v2p2e5r12-grid,.v2p2e5r12-evidence-grid) span{
  font-size:11px!important;font-weight:400!important;line-height:16px!important;
}
html body #view :is(.v2p2e5r02-grid,.v2p2e5r03-grid,.v2p2e5s13-grid,.v2p2e5s14-grid,.v2p2e5r08-grid,.v2p2e5r10-grid,.v2p2e5r11-grid,.v2p2e5r12-grid,.v2p2e5r12-evidence-grid) b{
  font-size:13px!important;font-weight:500!important;line-height:18px!important;
}
html body #view :is(.v2p2e5r03-note,.v2p2e5r08-note,.v2p2e5r10-note,.v2p2e5r11-note,.v2p2e5s13-note,.v2p2e5s14-safety,.v2p2e5r12-note,.v2p2e5r12-review-note){
  font-size:11px!important;font-weight:400!important;line-height:16px!important;
}
html body #view :is(.v2p2e5r02-pill,.v2p2e5r03-pill,.v2p2e5s13-pill,.v2p2e5s14-pill,.v2p2e5r08-pill,.v2p2e5r10-pill,.v2p2e5r11-pill,.v2p2e5r12-pill){
  font-size:10px!important;font-weight:600!important;line-height:14px!important;
}
html body #view :is(.v2p2e5r03-warning,.v2p2e5r08-warning,.v2p2e5r10-warning,.v2p2e5r11-check-card,.v2p2e5r12-review-card,.v2p2e5r12-source-card) p{
  font-size:13px!important;font-weight:400!important;line-height:19px!important;
}
html body #view :is(.v2p2e5r03-verify-actions,.v2p2e5r08-actions,.v2p2e5r10-actions,.v2p2e5r11-actions,.v2p2e5r12-actions,.v2p2e5r12-review-actions) button{
  font-size:13px!important;font-weight:700!important;line-height:16px!important;
}

/* R12 was the largest remaining typography outlier; explicitly normalize every text tier. */
html body #view .v2p2e5r12-kicker{font-size:10px!important;font-weight:600!important;line-height:14px!important;letter-spacing:.06em!important}
html body #view .v2p2e5r12-review-hero h2{font-size:18px!important;font-weight:700!important;line-height:22px!important}
html body #view .v2p2e5r12-review-hero p{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #view .v2p2e5r12-section-head b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v2p2e5r12-section-head small{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v2p2e5r12-evidence-item span{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #view .v2p2e5r12-evidence-item b{font-size:13px!important;font-weight:500!important;line-height:18px!important}
html body #view .v2p2e5r12-measure-copy b{font-size:13px!important;font-weight:500!important;line-height:18px!important}
html body #view .v2p2e5r12-review-note>span{font-size:12px!important;font-weight:500!important;line-height:16px!important}
html body #view .v2p2e5r12-review-note>span small{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v2p2e5r12-source-card b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #view .v2p2e5r12-source-card p{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #view .v2p2e5r12-source-ref{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .v2p2e5r12-source-icon{font-size:12px!important;font-weight:700!important}

/* ---------- 12. Planner / correction / draft / auxiliary sheets ---------- */
html body #view :is(.v2p2e5ai-planner-page,.v2p2e5am-history) p,
html body :is(.v2p2e5an-sheet,.v2p2e5ap-sheet) p{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #view :is(.v2p2e5ai-intro-copy,.v2p2e5ai-decision-note),
html body :is(.v2p2e5an-note,.v2p2e5ap-info,.v2p2e5ap-reference-note,.v2p2e5aq-reference-note){font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body :is(.v2p2e5an-head,.v2p2e5ap-head) b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body :is(.v2p2e5an-head,.v2p2e5ap-head) span{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body :is(.v2p2e5an-actions,.v2p2e5ap-actions) button{font-size:13px!important;font-weight:700!important;line-height:16px!important}

/* ---------- 13. Auth ---------- */
html body #view .auth-title,
html body #view .v2p2e5ae-auth-heading{font-size:18px!important;font-weight:700!important;line-height:22px!important}
html body #view .v2p2e5ae-auth-subtitle,
html body #view .v2p2e5ae-auth-copy{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #view .auth-security,
html body #view .auth-legal,
html body #view .auth-divider{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #view .auth-tab,
html body #view .social-btn{font-size:13px!important;font-weight:700!important;line-height:16px!important}

/* ---------- 14. Explicit display/KPI exceptions ---------- */
/* These retain their existing larger display sizes by design. */
html body #view :is(.v56-health-ring strong,.v56-health-stats b,.score,.v54-score-number,.v112-ai-score strong,.v118-trend-summary b,.v118-trend-summary>strong,.v119-trend-summary b,.v119-trend-summary>strong,.v118-trend-card b,.v119-trend-card b,.v123-risk-counts strong,.v128-honey-stats strong,.v128-honey-summary strong,.harvest-stats-v106 b){
  font-weight:700!important;
}

/* ---------- 15. Narrow-screen safety ---------- */
@media(max-width:350px){
  html body #view .v211-inspection .v211-card-row>span{font-size:12px!important;line-height:16px!important}
  html body #view .v211-inspection .v211-card-row>strong{font-size:12px!important;line-height:16px!important}
  html body #bottomnav .navitem,
  html body #bottomnav .navitem>span{font-size:10px!important;line-height:12px!important}
}

/* ---------- UI2A4 follow-through: R09 + pure-icon/button exceptions ---------- */
html body #view :is(.v2p2e5r09-detail,.v2p2e5r09-verification){font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #view .v2p2e5r09-grid span{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #view .v2p2e5r09-grid b{font-size:13px!important;font-weight:500!important;line-height:18px!important}
html body #view :is(.v2p2e5r09-source,.v2p2e5r09-pill){font-size:10px!important;font-weight:600!important;line-height:14px!important}
html body #view :is(.v2p2e5r09-warning,.v2p2e5r09-note){font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #view .v2p2e5r09-actions button{font-size:13px!important;font-weight:700!important;line-height:16px!important}

/* Text-button rule does not resize visual-only controls. */
html body #view :is(.v109-map-zoom,.photo-delete,.gallery-photo button,.b37-count-controls button,.b39-count-controls button,.b39v-pending-date-icon,.b37-date-icon,.b39m-calendar-button){
  font-size:inherit!important;
  line-height:1!important;
}
html body #view .v109-map-zoom{font-size:22px!important}
html body #view :is(.b37-count-controls button,.b39-count-controls button){font-size:18px!important;font-weight:600!important}
html body #topbar .csave{font-size:13px!important;font-weight:700!important;line-height:16px!important}


/* ---------- UI2A4A runtime-font + scientific-detail visual guard ---------- */
html body #view .v2p2e5ab-detail section.vc>p{
  font-family:var(--ui2-font)!important;
  font-size:13px!important;
  font-weight:400!important;
  line-height:19px!important;
  letter-spacing:0!important;
}
html body #view .v2p2e5ab-detail .v2p2e5ab-detail-grid>span{
  font-size:11px!important;font-weight:400!important;line-height:16px!important;
}
html body #view .v2p2e5ab-detail .v2p2e5ab-detail-grid>span>b{
  font-size:13px!important;font-weight:500!important;line-height:18px!important;
}

/* ==============================================================
   V2P2E5UI2A5 — FULL APP VISUAL DESIGN SYSTEM CONSOLIDATION
   Visual-only layer. No state, routes, persistence, workflow logic,
   task generation, scientific rules, or data structures are changed.
   This block intentionally uses high-specificity + !important so that
   late runtime <style> injections cannot re-introduce legacy visual tokens.
   ============================================================== */
:root{
  --ui5-font:Inter,"Segoe UI",Arial,sans-serif;
  --ui5-text:#2F3B33;
  --ui5-muted:#6F756F;
  --ui5-placeholder:#8A908A;
  --ui5-icon:#3F4541;
  --ui5-icon-muted:#6F756F;
  --ui5-brand:#5E7350;
  --ui5-accent:#C5921A;
  --ui5-danger:#D92D20;
  --ui5-bg:#F7F5EF;
  --ui5-surface:#FFFEFB;
  --ui5-border:#DED9CC;
  --ui5-card-radius:12px;
  --ui5-control-radius:10px;
  --ui5-control-h:44px;
  --ui5-space-1:4px;
  --ui5-space-2:8px;
  --ui5-space-3:12px;
  --ui5-space-4:16px;
}

/* 1) Locked typography hierarchy — source of truth */
html body #app #topbar .pagebar-title,
html body #app #view :is(.page-title,.pagetitle,.h1){font-size:18px!important;font-weight:700!important;line-height:22px!important}
html body #app #view :is(.h2,.h3,.vhead>b,section>h2,section>h3,.section-title,.master-section-title){font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view :is(p,li,.body){font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #app #view :is(.value,[class*="-value"]):not(.score):not([class*="score"]){font-size:13px!important;font-weight:500!important;line-height:18px!important}
html body #app #view :is(.small,.helper,.subtext,.caption,.muted){font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view :is(.tiny,.meta,time){font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view :is(.pill,.badge,[class*="-pill"],[class*="status-pill"]){font-size:10px!important;font-weight:600!important;line-height:14px!important}

/* Section headings that historically looked like form labels. */
html body #app #view :is(.feeding-section-v98,.treatment-section-v102,.harvest-section-v103)>h3,
html body #app #view :is(.feeding-section-v98,.treatment-section-v102,.harvest-section-v103) h3,
html body #app #view .b37-card-head>.b37-label,
html body #app #view .b39-card .b37-card-head>.b37-label,
html body #app #view :is(.b37-picker-group,.b39-count-head,.b39-hero-copy>b,.b38-task,.b38-detail-hive){font-size:14px!important;font-weight:700!important;line-height:18px!important}

/* Form labels are distinct from section titles. */
html body #app #view label:not(.switch):not(.switchline)>span:first-child,
html body #app #view .formgroup>label,
html body #app #view :is(.b37-field,.b39m-pair,.b39m-full-field)>span:first-child,
html body #app .modal label:not(.switch):not(.switchline)>span:first-child{font-size:12px!important;font-weight:500!important;line-height:16px!important;color:var(--ui5-text)!important}

/* 2) Form controls — one system across formal records + workflows */
html body #app #view :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea),
html body #app .modal :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea){
  box-sizing:border-box!important;
  width:100%!important;
  font-family:var(--ui5-font)!important;
  font-size:16px!important;
  font-weight:400!important;
  line-height:22px!important;
  color:var(--ui5-text)!important;
  background:var(--ui5-surface)!important;
  border:1px solid var(--ui5-border)!important;
  border-radius:var(--ui5-control-radius)!important;
  outline:none;
}
html body #app #view :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select),
html body #app .modal :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select){min-height:var(--ui5-control-h)!important;padding:9px 12px!important}
html body #app #view textarea,
html body #app .modal textarea{min-height:96px!important;padding:11px 12px!important;resize:vertical!important}
html body #app :is(input,textarea)::placeholder{color:var(--ui5-placeholder)!important;opacity:1!important;font-weight:400!important}
html body #app #view :is(input,select,textarea):focus,
html body #app .modal :is(input,select,textarea):focus{border-color:rgba(94,115,80,.62)!important;box-shadow:0 0 0 3px rgba(94,115,80,.10)!important}

/* Notes / comments: every textarea uses a vertical label, identical control geometry. */
html body #app #view label:has(>textarea),
html body #app .modal label:has(>textarea){
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  grid-template-columns:1fr!important;gap:8px!important;min-height:auto!important;
}
html body #app #view :is(.feeding-section-v98,.treatment-section-v102,.harvest-section-v103) label:has(>textarea),
html body #app #view :is(.b37-field,.v2p2e5r03-note,.v2p2e5r08-note,.v2p2e5r09-note,.v2p2e5r10-note,.v2p2e5r11-note,.v2p2e5r12-note,.v2p2e5r12-review-note):has(>textarea){padding-top:10px!important;padding-bottom:10px!important}

/* 3) Buttons / touch targets — CTAs vs compact filters */
html body #app #view :is(.primary,.secondary,.btn,.goldbtn,.secondarybtn,.b37-primary,.b37-secondary,.b39m-back),
html body #app .modal :is(.primary,.secondary,.btn,.goldbtn,.secondarybtn){
  min-height:44px!important;padding:10px 14px!important;border-radius:10px!important;
  font-size:13px!important;font-weight:700!important;line-height:16px!important;
}
html body #app #view :is(.tab,.tabs button,.filters button,.chip,.v53-action-tabs button,.v60-filters button,.v61-filter-btn,.v62-filter,.v63-filter,.v109-map-tabs button,.v118-trend-ranges button,.v119-trend-ranges button,.v128-honey-ranges button){
  min-height:36px!important;border-radius:9px!important;font-size:10px!important;font-weight:600!important;line-height:14px!important;
}

/* 4) Cards / radius / section spacing */
html body #app #view .vs{gap:12px!important}
html body #app #view :is(.vc,.card,.setting,.notice,.b37-card,.b39-card,.b38-detail-card,.b39m-result-card,.b40-result-card,.feeding-section-v98,.treatment-section-v102,.harvest-section-v103,.harvest-card-v106,.v119-trend-card,.v119-chart-card,.v123-risk-card,.v123-risk-how,.v127-reco-card,.v128-honey-chart-card,.v128-honey-source){border-radius:var(--ui5-card-radius)!important}
html body #app .modal{border-radius:16px!important}

/* 5) One muted-color system. Keep semantic warning/danger/brand colors untouched. */
html body #app #view :is(.muted,.tiny,.meta,.helper,.subtext,.caption,.b37-hint,.b37-sub,.b37-meta,.b38-note,.b39-info,.b39-pending-note,.b40-note),
html body #app #view :is(.v119-source-note,.v124-season-source,.v127-reco-source,.v128-honey-source) :is(span,small),
html body #app .modal :is(.muted,.tiny,.helper,.subtext,.caption){color:var(--ui5-muted)!important}

/* 6) Formal records: Feeding / Treatment / Harvest */
html body #app #view :is(.feeding-section-v98,.treatment-section-v102,.harvest-section-v103){padding:12px!important;border-radius:12px!important}
html body #app #view :is(.feeding-section-v98,.treatment-section-v102,.harvest-section-v103) label:not(:has(textarea)){
  display:grid!important;grid-template-columns:minmax(108px,34%) 1fr!important;gap:12px!important;align-items:center!important;min-height:56px!important;
}
html body #app #view :is(.feeding-section-v98,.treatment-section-v102,.harvest-section-v103) label>span{font-size:12px!important;font-weight:500!important;line-height:16px!important}
html body #app #view :is(.feeding-time-note,.treatment-time-note,.harvest-time-note,.treatment-safety-note,.feeding-notes-v98,.treatment-notes-v102,.harvest-notes-v103){font-size:11px!important;font-weight:400!important;line-height:16px!important;color:var(--ui5-muted)!important}

/* Formal treatment detail: label 11/400, value 13/500. */
html body #app #view .v2p2c-treatment-detail :is(span,small){font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view .v2p2c-treatment-detail :is(b,strong){font-size:13px!important;font-weight:500!important;line-height:18px!important}

/* 7) B37–B46 workflow family — same card, label, value, controls */
html body #app #view :is(.b37-page,.b38-page,.b38-detail-page,.b39-page,.b39-create-page,.b39-pending-detail-page,.b39-completed-detail-page,.b40-page,.b41-page,.b42-page,.b43-page,.b44-page,.b45-page,.b46-page){font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #app #view :is(.b37-page,.b38-page,.b38-detail-page,.b39-page,.b40-page,.b41-page,.b42-page,.b43-page,.b44-page,.b45-page,.b46-page) :is(.b37-field,.b39m-full-field){font-size:12px!important;font-weight:500!important;line-height:16px!important}
html body #app #view :is(.b37-page,.b38-page,.b39-page,.b40-page,.b41-page,.b42-page,.b43-page,.b44-page,.b45-page,.b46-page) :is(.b37-hint,.b39-info,.b38-note,.b40-note){font-size:11px!important;font-weight:400!important;line-height:16px!important;color:var(--ui5-muted)!important}
html body #app #view :is(.b38-task-grid,.b38-plan-list,.b39-summary-row,.b39m-result-info,.b40-row) span{font-size:11px!important;font-weight:400!important;line-height:16px!important;color:var(--ui5-muted)!important}
html body #app #view :is(.b38-task-grid,.b38-plan-list,.b39-summary-row,.b39m-result-info,.b40-row) b{font-size:13px!important;font-weight:500!important;line-height:18px!important;color:var(--ui5-text)!important}

/* One date-control visual system across B37/B38/B39/B40/B45 etc. */
html body #app #view :is(.b37-date-shell,.b37-completed-date-shell,.b38-date-shell,.b38-detail-date-shell,.b39-date-shell,.b39-plan-date-shell,.b39m-date-shell,.b39v-pending-native-date-shell,.b40-date-shell){
  min-height:44px!important;border:1px solid var(--ui5-border)!important;border-radius:10px!important;background:var(--ui5-surface)!important;box-sizing:border-box!important;
}
html body #app #view :is(.b37-date-display,.b37-completed-date-display,.b38-date-display,.b38-detail-date-display,.b39-readonly-date){font-size:13px!important;font-weight:500!important;line-height:18px!important;color:var(--ui5-text)!important}

/* Visible checkbox system; preserve R12's intentionally hidden native checkboxes. */
html body #app #view :is(.b38-detail-follow-toggle,.b44-check-row,.b45-page .b44-check-row,.switchline) input[type="checkbox"]{accent-color:var(--ui5-brand)!important}
html body #app #view :is(.b44-check-row,.b45-page .b44-check-row) input[type="checkbox"]{width:18px!important;height:18px!important;min-height:18px!important;flex:0 0 18px!important}

/* Settings / season toggle system. */
html body #app #view :is(.toggles input[type="checkbox"],.switchline input[type="checkbox"]){width:36px!important;height:22px!important;min-height:22px!important;border:0!important;border-radius:999px!important;background:#DED9CC!important;padding:0!important;appearance:none!important;position:relative!important}
html body #app #view :is(.toggles input[type="checkbox"],.switchline input[type="checkbox"]):checked{background:var(--ui5-brand)!important}
html body #app #view :is(.toggles input[type="checkbox"],.switchline input[type="checkbox"])::after{content:""!important;position:absolute!important;top:2px!important;left:2px!important;width:18px!important;height:18px!important;border-radius:50%!important;background:#fff!important;transition:left .15s ease!important}
html body #app #view :is(.toggles input[type="checkbox"],.switchline input[type="checkbox"]):checked::after{left:16px!important}

/* R12 custom checkbox visual aligns with the same 18px system. */
html body #app #view .v2p2e5r12-check-ui{width:18px!important;height:18px!important;border-radius:5px!important}
html body #app #view .v2p2e5r12-check-ui::after{font-size:11px!important;font-weight:700!important}
html body #app #view .v2p2e5r12-measure-copy b{font-size:13px!important;font-weight:500!important;line-height:18px!important}

/* 8) Scientific task / verification families — prevent late injected CSS from re-heavying text */
html body #app #view :is(.v2p2e5ab-detail,.v2p2e5r02-review,.v2p2e5r02-evidence,.v2p2e5r03-detail,.v2p2e5r03-food-verification,.v2p2e5s13-evidence,.v2p2e5s14-review,.v2p2e5s14-evidence,.v2p2e5r08-detail,.v2p2e5r08-check,.v2p2e5r09-detail,.v2p2e5r09-verification,.v2p2e5r10-detail,.v2p2e5r10-form-page,.v2p2e5r10-path-page,.v2p2e5r11-detail,.v2p2e5r11-space-page,.v2p2e5r12-page,.v2p2e5r12-review-page) :is(p,li){font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #app #view :is(.v2p2e5ab-detail,.v2p2e5r02-review,.v2p2e5r03-detail,.v2p2e5r08-detail,.v2p2e5r09-detail,.v2p2e5r10-detail,.v2p2e5r11-detail,.v2p2e5r12-page) .vhead>b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view :is(.v2p2e5ab-detail-grid,.v2p2e5r02-grid,.v2p2e5r03-grid,.v2p2e5s13-grid,.v2p2e5s14-grid,.v2p2e5r08-grid,.v2p2e5r09-grid,.v2p2e5r10-grid,.v2p2e5r11-grid,.v2p2e5r12-grid,.v2p2e5r12-evidence-grid)>span{font-size:11px!important;font-weight:400!important;line-height:16px!important;color:var(--ui5-muted)!important}
html body #app #view :is(.v2p2e5ab-detail-grid,.v2p2e5r02-grid,.v2p2e5r03-grid,.v2p2e5s13-grid,.v2p2e5s14-grid,.v2p2e5r08-grid,.v2p2e5r09-grid,.v2p2e5r10-grid,.v2p2e5r11-grid,.v2p2e5r12-grid,.v2p2e5r12-evidence-grid)>span>b{font-size:13px!important;font-weight:500!important;line-height:18px!important;color:var(--ui5-text)!important}

/* 9) Data/analytics pages — remove remaining 7–9px microcopy. */
html body #app #view .v119-source-note span,
html body #app #view .v124-season-source :is(span,small),
html body #app #view .v127-reco-source :is(span,small),
html body #app #view .v128-honey-source :is(span,small),
html body #app #view .v123-risk-how :is(small,span),
html body #app #view :is(.harvest-empty,.v119-chart-empty,.v128-honey-empty) span{font-size:11px!important;font-weight:400!important;line-height:16px!important;color:var(--ui5-muted)!important}
html body #app #view :is(.v119-source-note,.v124-season-source,.v127-reco-source,.v128-honey-source,.v123-risk-how) b{font-size:14px!important;font-weight:700!important;line-height:18px!important;color:var(--ui5-text)!important}
html body #app #view :is(.harvest-bar-item,.bar-master) span{font-size:10px!important;font-weight:500!important;line-height:14px!important;color:var(--ui5-muted)!important}

/* 10) Header icon system: deep gray utilities; notification badge remains red. */
html body #app #topbar .iconbtn{width:40px!important;height:40px!important;display:grid!important;place-items:center!important;color:var(--ui5-icon)!important;font-weight:500!important}
html body #app #topbar .iconbtn svg,
html body #app #topbar .iconbtn svg *{stroke:currentColor!important}
html body #app #topbar .iconbtn svg [fill]:not([fill="none"]){fill:currentColor!important}
html body #app #topbar .badge{background:var(--ui5-danger)!important;color:#fff!important;font-size:10px!important;font-weight:700!important;line-height:14px!important}
/* Back is rendered as one consistent 20px stroke icon instead of assorted text chevrons. */
html body #app #topbar button[aria-label="Back"]{font-size:0!important;line-height:0!important}
html body #app #topbar button[aria-label="Back"]::before{content:""!important;width:20px!important;height:20px!important;display:block!important;background-repeat:no-repeat!important;background-position:center!important;background-size:20px 20px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M15 5 8 12l7 7' fill='none' stroke='%233F4541' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important}
html body #app #topbar :is(.plusbtn,button[aria-label="Add Hive"],button[aria-label="Add action"],button[aria-label="Add harvest"],button[aria-label="Health Analysis"]){font-size:22px!important;font-weight:400!important;line-height:1!important;color:var(--ui5-icon)!important}
html body #app #topbar :is(.core-more,.core-filter){color:var(--ui5-icon)!important;font-weight:500!important}

/* 11) Bottom navigation — fixed icon/text hierarchy */
html body #app #bottomnav .navitem,
html body #app #bottomnav .navitem>span{font-size:11px!important;font-weight:500!important;line-height:13px!important;color:var(--ui5-icon-muted)!important}
html body #app #bottomnav .navitem.active,
html body #app #bottomnav .navitem.active>span{font-weight:700!important;color:var(--ui5-brand)!important}

/* 12) Modal/sheets use the same form and text system */
html body #app .modal .modalhead :is(b,.h2){font-size:14px!important;font-weight:700!important;line-height:18px!important;color:var(--ui5-text)!important}
html body #app .modal .modalhead small{font-size:10px!important;font-weight:500!important;line-height:14px!important;color:var(--ui5-muted)!important}
html body #app .modal p{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #app .modal small{font-size:11px!important;font-weight:400!important;line-height:16px!important}

/* 13) Preserve KPI/display numerals as deliberate exceptions. */
html body #app #view :is(.v56-health-ring strong,.v56-health-stats b,.score,.v54-score-number,.v112-ai-score strong,.v118-trend-summary b,.v118-trend-summary>strong,.v119-trend-summary b,.v119-trend-summary>strong,.v118-trend-card b,.v119-trend-card b,.v123-risk-counts strong,.v128-honey-stats strong,.v128-honey-summary strong,.harvest-stats-v106 b){font-weight:700!important}

/* 14) Narrow-screen containment */
@media(max-width:360px){
  html body #app #view :is(.feeding-section-v98,.treatment-section-v102,.harvest-section-v103) label:not(:has(textarea)){grid-template-columns:minmax(92px,32%) 1fr!important;gap:8px!important}
  html body #app #bottomnav .navitem,html body #app #bottomnav .navitem>span{font-size:10px!important;line-height:12px!important}
}

/* ---------- UI2A5.1 legacy/current renderer coverage guard ----------
   Some routes still emit older class families. Normalize them here so
   no active route can fall back to the historic 4–9px / 800–900 system. */

/* Home / dashboard historical renderers */
html body #app #view :is(.action-title,.v53-hi,.v56-greeting>b,.master-title-action>b){font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view :is(.action-reason,.mini-info,.action-foot-master,.overview-stats-master span,.view-hives-master small,.quick-grid-master small,.season-scroll-master small,.hive-info-locked>small,.hive-mini-metrics-locked,.hive-status-locked){font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view :is(.action-main-master span b,.view-hives-master b,.season-scroll-master b,.quick-grid-master b,.hive-info-locked>b){font-size:13px!important;font-weight:500!important;line-height:18px!important}
html body #app #view :is(.action-main-master span small,.season-scroll-master span,.season-scroll-master em){font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view :is(.action-main-master button,.master-title-action button){font-size:13px!important;font-weight:700!important;line-height:16px!important}
html body #app #view :is(.search-master-locked input){font-size:16px!important;line-height:22px!important}
html body #app #view :is(.filter-master-locked button,.qbtn){font-size:10px!important;font-weight:600!important;line-height:14px!important}

/* Hive list/detail historical renderers */
html body #app #view :is(.hcard,.v60-hive-card,.v61-hive-card,.v62-card,.v63-card) :is(b,strong){font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view :is(.hcard,.v60-hive-card,.v61-hive-card,.v62-card,.v63-card) :is(span,small,em){font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view :is(.detail-name-master>b,.detail-status-master){font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view :is(.detail-name-master>small,.detail-dates-master,.detail-metrics-master small){font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view .detail-metrics-master b{font-size:13px!important;font-weight:500!important;line-height:18px!important}

/* Inspection + Timeline historical renderers */
html body #app #view :is(.inspection-field-row,.inspection-slider-row)>span{font-size:12px!important;font-weight:500!important;line-height:16px!important}
html body #app #view :is(.inspection-field-row,.inspection-slider-row)>b{font-size:13px!important;font-weight:500!important;line-height:18px!important}
html body #app #view :is(.inspection-field-row,.inspection-slider-row)>em{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view :is(.timeline-event-head>b){font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view :is(.timeline-date-master,.timeline-event-head>span,.timeline-event-master>small,.timeline-filter-master button,.timeline-filters button){font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view .timeline-event-master p{font-size:13px!important;font-weight:400!important;line-height:19px!important}

/* Harvest / Map / chart historical renderers */
html body #app #view :is(.harvest-stats-master small,.batch-master,.map-pin-master small,.map-tabs-master button,.insight-tabs-master button,.legend-master span,.legend-master b,.bars span,.lines span,.lines em){font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view :is(.map-pin-master b,.batch-master b,.lines b){font-size:13px!important;font-weight:500!important;line-height:18px!important}

/* Auth / Settings / About / Help / Legal / Version */
html body #app #view :is(.sectionlabel,.v145-group-title,.legal155-label){font-size:11px!important;font-weight:700!important;line-height:14px!important;letter-spacing:.04em!important}
html body #app #view :is(.about157-title,.v145-settings-title,.legal155-title,.help156-title,.version161-h){font-size:18px!important;font-weight:700!important;line-height:22px!important}
html body #app #view :is(.about157-copy,.v145-copy,.v145-settings-hero-copy,.help156-copy,.help156-note,.version161-feature){font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #app #view :is(.auth-divider,.auth-legal,.other-login-toggle,.version161-feature small){font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view :is(.social-btn,.auth-tab){font-size:13px!important;font-weight:700!important;line-height:16px!important}

/* Add Hive / voice / editor sheets */
html body #app #view :is(.v185-add-hive-actions,.v186-confirm-actions,.v193-voice-actions,.v203-date-actions) button{font-size:13px!important;font-weight:700!important;line-height:16px!important}
html body #app #view :is(.v197-hive-actions-title,.v198-record-head,.v200-qs-head,.v201-inspection-select-head,.v202-inspection-head,.v203-next-inspection-head,.v210-edit-head,.v211-module-head){font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view :is(.v198-hive-summary,.v202-step,.v2p2e5n-select){font-size:13px!important;font-weight:500!important;line-height:18px!important}
html body #app #view :is(.v198-save-bottom,.v198-save-top,.v202-apply,.v205-next-inspection-action,.v210-use,.v211-secondary){font-size:13px!important;font-weight:700!important;line-height:16px!important}
html body #app #view :is(.v202-varroa-input,.v202-varroa-presets,.v210-number,.v210-number-presets){font-weight:500!important}

/* Adaptive/scientific auxiliary microcopy */
html body #app #view :is(.v2p2e5ad-adaptive-setting,.v2p2e5ad-confidence,.v2p2e5ad-evidence-grid,.v2p2e5aq-source-pill,.v2p2e5ax3-quality,.v2p2e5r02a1-prev,.v2p2e5r02a2-prev,.v2p2e5r02a3-required){font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view .v2p2e5r02a3-required{font-weight:700!important}

/* Current analytics fine print not already caught above */
html body #app #view :is(.v123-risk-how-grid small,.v123-risk-how-grid span,.v124-season-context,.v124-season-empty,.v127-reco-empty,.v127-reco-summary,.v128-honey-empty-chart,.v128-honey-hives){font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view :is(.v127-reco-summary-pill,.v123-risk-badge){font-size:10px!important;font-weight:700!important;line-height:14px!important}

/* Buttons that historically used 800/900 now stop at the locked 700. */
html body #app #view :is(.core-save,.csave,.feeding-save-v98,.treatment-save-v102,.harvest-save-v103,.harvest-primary-v106,.harvest-add-v106,.v112-ai-cta,.v185-add-hive-actions button,.v186-add-btn,.v186-delete-btn,.v193-voice-actions button,.v194-voice-delete,.v197-hive-action,.v202-apply,.v203-date-actions button,.v205-next-inspection-action,.v210-use,.v211-secondary){font-weight:700!important}

/* Decorative icon/KPI glyphs may keep their own display size, but not fake extra-bold text. */
html body #app #view :is(.avatar,.about157-icon,.legal155-shield,.v123-risk-how-icon,.add-action-icon){font-weight:700!important}

/* ==============================================================
   V2P2E5UI2A6 — RUNTIME TYPOGRAPHY HARD LOCK
   Final visual-only guard for CSS injected after initial page load.
   Business logic/data/routes are untouched.
   ============================================================== */

/* A. Varroa Test — explicit late-runtime overrides */
html body #app #view .v2p2b-page .v2p2b-section h3{font-size:14px!important;font-weight:700!important;line-height:18px!important;letter-spacing:0!important}
html body #app #view .v2p2b-page .v2p2b-section label>span,
html body #app #view .v2p2b-page .v2p2b-readrow>span{font-size:12px!important;font-weight:500!important;line-height:16px!important}
html body #app #view .v2p2b-page .v2p2b-result>strong{font-size:13px!important;font-weight:500!important;line-height:18px!important;padding:4px 0!important}
html body #app #view .v2p2b-page .v2p2b-hint{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view .v2p2b-page .v2p2b-inline>em{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view .v2p2b-page :is(.v2p2b-readrow,.v2p2b-history)>b{font-size:13px!important;font-weight:500!important;line-height:18px!important}
html body #app #view .v2p2b-page .v2p2b-history>span{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view .v2p2b-page .v2p2b-history small{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view .v2p2b-page textarea{min-height:96px!important}

/* B. Settings/About/Help/Version runtime styles */
html body #app #view .v145-settings .v145-settings-hero-copy b{font-size:18px!important;font-weight:700!important;line-height:22px!important}
html body #app #view .v145-settings .v145-settings-hero-copy span:not(.v145-settings-hero-icon){font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #app #view .v145-settings .v145-group-title{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view .v145-settings .v145-copy b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view .v145-settings .v145-copy :is(span,small){font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view :is(.about157-copy b,.version161-h){font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view :is(.about157-copy span,.version161-feature span,.help156-copy,.help156-note){font-size:13px!important;font-weight:400!important;line-height:19px!important}

/* C. Inspection/editor sheets injected at runtime */
html body #app #view :is(.v197-hive-actions-title,.v198-record-head,.v200-qs-head,.v201-inspection-select-head,.v202-inspection-head,.v203-next-inspection-head,.v210-edit-head,.v211-module-head)>b,
html body #app #view .v211-module-head b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view :is(.v197-hive-actions-title,.v198-record-head,.v200-qs-head,.v201-inspection-select-head,.v202-inspection-head,.v203-next-inspection-head,.v210-edit-head,.v211-module-head) button:not([aria-label]){font-size:13px!important;font-weight:700!important;line-height:16px!important}
html body #app #view .v210-number input{font-size:16px!important;font-weight:500!important;line-height:22px!important}
html body #app #view .v210-number button{font-size:18px!important;font-weight:600!important;line-height:1!important}

/* D. B37/B38/B39 workflow runtime styles: text only; +/- glyphs stay display-sized */
html body #app #view :is(.b37-card-head,.b39-card-head) :is(b,.b37-label){font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view :is(.b37-field,.b39m-pair,.b39m-full-field)>span:first-child{font-size:12px!important;font-weight:500!important;line-height:16px!important}
html body #app #view :is(.b37-help,.b37-note,.b39-help,.b39-note,.b38-note){font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view :is(.b37-meta,.b39-meta,.b38-meta){font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view :is(.b37-step,.b39-count-controls) strong{font-size:16px!important;font-weight:500!important;line-height:22px!important}
html body #app #view :is(.b37-step,.b39-count-controls) button{font-size:18px!important;font-weight:600!important;line-height:1!important}
html body #app #view .b38-task{font-size:14px!important;font-weight:700!important;line-height:18px!important}

/* E. Scientific Task / Task Detail / verification runtime guards */
html body #app #view [class*="v2p2e5"] :is(h2,h3){font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view [class*="v2p2e5"] p{font-size:13px!important;font-weight:400!important;line-height:19px!important}
html body #app #view [class*="v2p2e5"] :is(.pill,[class*="-pill"],[class*="-badge"]){font-size:10px!important;font-weight:600!important;line-height:14px!important}
html body #app #view [class*="v2p2e5"] :is(.note,[class*="-note"],[class*="-hint"],[class*="-helper"]){font-size:11px!important;font-weight:400!important;line-height:16px!important}
/* Explicit Task Detail data hierarchy */
html body #app #view :is(.v2p2e5ab-detail,.v2p2e5r10-detail,.v2p2e5r11-detail,.v2p2e5r12-detail) :is(.v2p2e5ab-detail-grid,[class*="detail-grid"])>span{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view :is(.v2p2e5ab-detail,.v2p2e5r10-detail,.v2p2e5r11-detail,.v2p2e5r12-detail) :is(.v2p2e5ab-detail-grid,[class*="detail-grid"])>span>b{font-size:13px!important;font-weight:500!important;line-height:18px!important}

/* F. Season / Risk / Recommendations / Honey — remove legacy microtype */
html body #app #view .v124-season-hero small{font-size:10px!important;font-weight:600!important;line-height:14px!important}
html body #app #view .v124-season-hero b{font-size:18px!important;font-weight:700!important;line-height:22px!important}
html body #app #view .v124-season-hero span{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view .v124-season-context span{font-size:10px!important;font-weight:600!important;line-height:14px!important}
html body #app #view .v124-season-head b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view .v124-season-head small{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view .v124-season-head>span{font-size:10px!important;font-weight:600!important;line-height:14px!important}
html body #app #view .v124-season-action-top b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view .v124-season-action-top span{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view .v124-season-action-top em{font-size:10px!important;font-weight:600!important;line-height:14px!important}
html body #app #view .v124-season-action>small{font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view .v124-season-empty b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body #app #view .v124-season-empty span{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view .v124-season-source b{font-size:13px!important;font-weight:500!important;line-height:18px!important}
html body #app #view .v124-season-source :is(span,small){font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view :is(.v123-risk-how-grid,.v127-recommendations-page,.v128-honey-analytics) :is(small,[class*="-source"] span){font-size:10px!important;font-weight:500!important;line-height:14px!important}
html body #app #view .v128-honey-summary small{font-size:10px!important;font-weight:600!important;line-height:14px!important}
html body #app #view .v128-honey-summary span{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view .v128-honey-ranges button{font-size:10px!important;font-weight:600!important;line-height:14px!important}
/* KPI exceptions remain large on purpose. */
html body #app #view .v128-honey-summary>strong,
html body #app #view :is(.v118-trend-card,.v119-trend-card)>b,
html body #app #view :is(.v118-trend-summary,.v119-trend-summary)>b{font-weight:700!important}

/* G. Manual planner / Add Action picker late styles */
html body>.modal.v2p2e5ag-plan-picker .add-action-head b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body>.modal.v2p2e5ag-plan-picker .b37-picker-group{font-size:11px!important;font-weight:700!important;line-height:14px!important}
html body>.modal.v2p2e5ag-plan-picker .add-action-copy b,
html body #app #view .v2p2e5ai-planner-page .add-action-copy b{font-size:14px!important;font-weight:700!important;line-height:18px!important}
html body>.modal.v2p2e5ag-plan-picker .add-action-copy small,
html body #app #view .v2p2e5ai-planner-page .add-action-copy small{font-size:11px!important;font-weight:400!important;line-height:16px!important}
html body #app #view .v2p2e5ai-intro-copy,
html body #app #view .v2p2e5ai-decision-note{font-size:11px!important;font-weight:400!important;line-height:16px!important}

/* H. Generic active-route hard limits for legacy text classes.
   Do not touch icon-only controls or explicit KPI classes. */
html body #app #view :is([class*="-title"],[class*="title-"]):not(.brand):not([class*="score"]):not([class*="icon"]){font-weight:700!important}
html body #app #view :is([class*="-desc"],[class*="-description"],[class*="-copy"]):not([class*="hero-copy"]){font-weight:400!important}
html body #app #view :is([class*="-meta"],[class*="-date"],[class*="-source"] small){font-weight:500!important}

/* I. Keep intentional glyph/display exceptions untouched. */
html body #app #view :is(.v109-map-zoom,.core-back,.add-action-arrow,.about157-chevron,.help156-chevron,.v145-ico,.v145-settings-hero-icon,.about157-logo,.about157-icon,.floating-add-master,.b37-intro-badge,.b37-date-icon,.b39v-pending-date-icon,.b39m-calendar-button){line-height:1!important}


/* ==============================================================
   V2P2E5UI2A6A — CORE HEADER SETTINGS ICON HARD LOCK
   Scope: Home / Hives / Actions / Insights settings control only.
   - One identical outline gear on all four core pages.
   - Removes the legacy Unicode gear on the Hives custom header,
     which previously rendered together with the generated icon.
   - No route, click target, page structure, or business logic changes.
   ============================================================== */
:root{
  --ui2a6a-settings-icon-size:22px;
}

/* Standard core topbar: hide the legacy inline SVG and render one canonical gear. */
html body #app #topbar button.iconbtn[aria-label="Settings"]{
  width:40px!important;
  height:40px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  font-size:0!important;
  line-height:0!important;
  color:#3F4541!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body #app #topbar button.iconbtn[aria-label="Settings"] > *{
  display:none!important;
}
html body #app #topbar button.iconbtn[aria-label="Settings"]::before{
  content:""!important;
  display:block!important;
  width:var(--ui2a6a-settings-icon-size)!important;
  height:var(--ui2a6a-settings-icon-size)!important;
  flex:0 0 var(--ui2a6a-settings-icon-size)!important;
  background-color:transparent!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:var(--ui2a6a-settings-icon-size) var(--ui2a6a-settings-icon-size)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='%233F4541' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3.1'/%3E%3Cpath d='M19.2 13.6a7.8 7.8 0 0 0 0-3.2l2-1.5-2-3.4-2.4 1A8 8 0 0 0 14 4.9L13.7 2H9.8l-.4 2.9a8 8 0 0 0-2.8 1.6l-2.4-1-2 3.4 2 1.5a7.8 7.8 0 0 0 0 3.2l-2 1.5 2 3.4 2.4-1a8 8 0 0 0 2.8 1.6l.4 2.9h3.9l.4-2.9a8 8 0 0 0 2.8-1.6l2.4 1 2-3.4Z'/%3E%3C/g%3E%3C/svg%3E")!important;
}

/* Hives has its own fixed header. Suppress the literal ⚙ text completely,
   then use exactly the same canonical gear as the other three pages. */
html body #app #view .v173-hives .v63-head .v173-settings{
  width:40px!important;
  height:40px!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  font-size:0!important;
  line-height:0!important;
  color:#3F4541!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
html body #app #view .v173-hives .v63-head .v173-settings::before{
  content:""!important;
  display:block!important;
  width:var(--ui2a6a-settings-icon-size)!important;
  height:var(--ui2a6a-settings-icon-size)!important;
  flex:0 0 var(--ui2a6a-settings-icon-size)!important;
  background-color:transparent!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:var(--ui2a6a-settings-icon-size) var(--ui2a6a-settings-icon-size)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='%233F4541' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3.1'/%3E%3Cpath d='M19.2 13.6a7.8 7.8 0 0 0 0-3.2l2-1.5-2-3.4-2.4 1A8 8 0 0 0 14 4.9L13.7 2H9.8l-.4 2.9a8 8 0 0 0-2.8 1.6l-2.4-1-2 3.4 2 1.5a7.8 7.8 0 0 0 0 3.2l-2 1.5 2 3.4 2.4-1a8 8 0 0 0 2.8 1.6l.4 2.9h3.9l.4-2.9a8 8 0 0 0 2.8-1.6l2.4 1 2-3.4Z'/%3E%3C/g%3E%3C/svg%3E")!important;
}


/* ==============================================================
   V2P2E5UI2A6B — CORE SETTINGS ICON TRUE SINGLE-SOURCE LOCK
   Home / Hives / Actions / Insights now render the same inline SVG.
   All older pseudo-element settings glyphs are explicitly disabled.
   ============================================================== */
:root{--ui2a6b-settings-size:22px;--ui2a6b-settings-color:#3F4541;}

/* Kill every older pseudo-generated gear on the four core headers. */
html body #app #topbar button.iconbtn.core-settings-btn[aria-label="Settings"]::before,
html body #app #view .v173-hives .v63-head button.v173-settings.core-settings-btn::before{
  content:none!important;
  display:none!important;
  width:0!important;
  height:0!important;
  background:none!important;
  background-image:none!important;
}

/* One identical button box on all four core pages. */
html body #app #topbar button.iconbtn.core-settings-btn[aria-label="Settings"],
html body #app #view .v173-hives .v63-head button.v173-settings.core-settings-btn{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  color:var(--ui2a6b-settings-color)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  font-size:0!important;
  line-height:0!important;
  overflow:visible!important;
}

/* Override A6A's child-hiding rule and render the same app.js SVG everywhere. */
html body #app #topbar button.iconbtn.core-settings-btn[aria-label="Settings"] > svg.icon,
html body #app #view .v173-hives .v63-head button.v173-settings.core-settings-btn > svg.icon{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:var(--ui2a6b-settings-size)!important;
  height:var(--ui2a6b-settings-size)!important;
  min-width:var(--ui2a6b-settings-size)!important;
  min-height:var(--ui2a6b-settings-size)!important;
  fill:none!important;
  stroke:var(--ui2a6b-settings-color)!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  transform:none!important;
}
html body #app #topbar button.iconbtn.core-settings-btn[aria-label="Settings"] > svg.icon *,
html body #app #view .v173-hives .v63-head button.v173-settings.core-settings-btn > svg.icon *{
  fill:none!important;
  stroke:var(--ui2a6b-settings-color)!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

/* ==============================================================
   V2P2E5UI2A6C — ACTIONS BOTTOM SPACING TIGHTENING
   Visual-only. Reduce the visible gap above the fixed bottom nav.
   No Action logic, routing, task generation, or nav behavior changes.
   ============================================================== */
html body #app #view:has(.v53-actions){
  padding-bottom:calc(var(--nav) + var(--safe) + 4px)!important;
}
html body #app #view .v53-actions{
  padding-bottom:0!important;
}


/* ==============================================================
   V2P2E5UI2A6D — ACTIONS PLAN / RECORD-NOW MIDDLE SPACING
   Visual-only. Tighten the oversized vertical gap between the
   "For work the system cannot know about" helper and "Record Now".
   No Action logic, routing, task generation, or nav behavior changes.
   ============================================================== */
html body #app #view .v53-actions .v2p2e5t-plan-help{
  margin-top:-5px!important;
  margin-bottom:0!important;
}
html body #app #view .v53-actions .v2p2e5t-now-head{
  margin-top:-4px!important;
  margin-right:2px!important;
  margin-bottom:7px!important;
  margin-left:2px!important;
}

/* ==============================================================
   V2P2E5UI2A6E — ACTIONS RECORD-NOW / SHORTCUT GAP
   Visual-only. Tighten only the gap below the "Record Now" header
   and above the Inspection / Feeding / Treatment / Harvest buttons.
   Parent .v53-actions uses a 12px flex gap; cancel 8px here so the
   visible separation is about 4px. No Actions logic changes.
   ============================================================== */
html body #app #view .v53-actions .v2p2e5t-now-head{
  margin-bottom:0!important;
}
html body #app #view .v53-actions .v2p2e5t-now-head + .v53-shortcuts{
  margin-top:-8px!important;
}
