/* ==========================================================
   SwineSync V18 — final UI rebuild layer
   Approved mobile-first light navigation + compact workspaces
   ========================================================== */
:root{
  --v18-green:#0b6b3a;
  --v18-green-2:#118a50;
  --v18-green-3:#eaf7ef;
  --v18-ink:#183126;
  --v18-muted:#708078;
  --v18-line:#dfe9e2;
  --v18-bg:#f5faf7;
  --v18-card:#ffffff;
  --v18-blue:#1769aa;
  --v18-blue-bg:#edf6ff;
  --v18-orange:#c85b00;
  --v18-orange-bg:#fff5e9;
  --v18-red:#b42318;
  --v18-red-bg:#fff1f0;
  --v18-purple:#7047a8;
  --v18-purple-bg:#f6f0ff;
}
html,body{background:var(--v18-bg);color:var(--v18-ink)}
body{min-height:100vh}
.top{
  min-height:66px;
  padding:10px 16px;
  background:#fff;
  border-bottom:1px solid var(--v18-line);
  box-shadow:0 2px 12px rgba(15,77,44,.04)
}
.top .brand{font-size:25px;letter-spacing:-.02em;color:var(--v18-green)}
.top .icon{background:#edf7f1;color:var(--v18-green);min-width:46px;min-height:46px;border-radius:14px}
.wrap{max-width:820px;padding:18px 16px 150px}
.wrap>h1{font-size:31px;letter-spacing:-.025em;margin-bottom:15px}
.card{border-color:var(--v18-line);box-shadow:0 7px 22px rgba(18,76,45,.055)}
.card.compact{padding:18px}

/* ---------- Navigation: final light drawer ---------- */
.nav{
  width:min(88vw,390px)!important;
  max-width:390px!important;
  background:#fff!important;
  color:var(--v18-ink)!important;
  padding:0 0 calc(20px + env(safe-area-inset-bottom,0px))!important;
  border-right:1px solid var(--v18-line);
  box-shadow:18px 0 45px rgba(16,67,41,.15);
}
.nav-v18-head{display:flex;align-items:center;justify-content:space-between;padding:20px 18px 12px}
.nav-v18-head .brand{font-size:26px;color:var(--v18-green);font-weight:900}
.nav-v18-head .nav-close{background:transparent!important;color:var(--v18-ink)!important;font-size:30px;padding:5px!important}
.nav-search{padding:8px 16px 14px!important}
.nav-search input{min-height:52px!important;border-radius:16px!important;border:1px solid #cfdcd3!important;padding:0 16px!important;font-size:15px}
.nav-search-results{margin-top:8px;background:#fff;border:1px solid var(--v18-line);border-radius:14px;overflow:hidden;box-shadow:0 10px 24px rgba(0,0,0,.08)}
.nav-search-results button{color:var(--v18-ink)!important;background:#fff!important;border-bottom:1px solid var(--v18-line)!important;padding:11px 13px!important}
.nav-search-results button small{color:var(--v18-muted)!important}
.nav-search-results button b{color:var(--v18-green)!important}
#nav>.nav-home-btn,#nav>.nav-report-btn{
  width:calc(100% - 24px)!important;margin:2px 12px!important;min-height:51px!important;
  padding:10px 12px!important;border:0!important;border-radius:14px!important;background:transparent!important;
  color:var(--v18-green)!important;font-size:16px!important;font-weight:850!important;display:flex;align-items:center;gap:11px
}
#nav>.nav-home-btn.current,#nav>.nav-report-btn.current{background:var(--v18-green-3)!important}
.nav-accordion{border-top:1px solid var(--v18-line)!important;margin:0 12px!important}
.nav-accordion summary{min-height:56px!important;padding:8px 8px!important;color:var(--v18-ink)!important;display:grid!important;grid-template-columns:1fr 32px!important;gap:6px!important;align-items:center!important}
.nav-hub-link{display:flex;align-items:center;gap:11px;min-width:0;color:var(--v18-green);font-weight:850;font-size:16px;border-radius:10px;padding:5px 2px}
.nav-hub-link:focus{outline:2px solid #8bc4a4;outline-offset:2px}
.nav-main-icon{font-size:22px;min-width:28px;text-align:center}
.nav-chevron{justify-self:end;color:var(--v18-muted)!important;font-size:20px!important}
#nav .nav-accordion:not([open])>.nav-items{display:none!important}
#nav .nav-accordion[open]>.nav-items{display:grid!important;grid-template-columns:1fr!important;gap:2px!important;padding:0 4px 10px 41px!important}
#nav .nav-accordion>.nav-items button{
  display:block!important;width:100%!important;min-height:40px!important;padding:8px 10px!important;border:0!important;
  border-radius:10px!important;background:transparent!important;color:#344a40!important;font-size:14px!important;font-weight:650!important
}
#nav .nav-accordion>.nav-items button.current{background:var(--v18-green-3)!important;color:var(--v18-green)!important;font-weight:850!important}
#nav .nav-accordion>.nav-items button:active,#nav .nav-accordion>.nav-items button:hover{background:#f3f8f5!important;color:var(--v18-green)!important}
.nav-plan-card{margin:14px 16px 8px!important;padding:13px 14px!important;background:#f8fcf9!important;border:1px solid var(--v18-line)!important;border-radius:16px!important;color:var(--v18-ink)!important}
.nav-plan-card b{font-size:15px!important;color:var(--v18-green)!important}.nav-plan-card small{color:var(--v18-muted)!important}.nav-plan-card button{color:var(--v18-green)!important}
#nav .logout{width:calc(100% - 32px)!important;margin:10px 16px 16px!important;min-height:50px!important;border:1px solid #efcece!important;background:#fff!important;color:#9b2f2f!important;border-radius:14px!important;padding:12px 14px!important}
.overlay.open{background:rgba(18,29,23,.48)!important;backdrop-filter:blur(1px)}

/* ---------- Domain workspace/hub ---------- */
.v18-hub-hero{padding:8px 2px 2px;margin-bottom:12px}
.v18-hub-hero h1{font-size:30px;margin:0 0 4px}.v18-hub-hero p{margin:0;color:var(--v18-muted)}
.v18-hub-search{display:flex;gap:8px;margin:12px 0 16px}.v18-hub-search .field{margin:0}
.v18-hub-list{display:grid;gap:9px}
.v18-hub-row{
  width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:11px;align-items:center;
  min-height:72px;padding:11px 13px;border:1px solid var(--v18-line);border-radius:16px;background:#fff;text-align:left;color:var(--v18-ink);
  box-shadow:0 3px 10px rgba(16,80,45,.025)
}
.v18-hub-row:active{transform:scale(.992)}
.v18-hub-icon{width:42px;height:42px;border-radius:13px;background:var(--v18-green-3);display:grid;place-items:center;font-size:22px}
.v18-hub-row b{display:block;color:var(--v18-green);font-size:16px;margin-bottom:2px}.v18-hub-row small{display:block;color:var(--v18-muted);font-size:12px;line-height:1.35}.v18-hub-row .go{font-size:22px;color:#87978f}
.v18-hub-secondary{margin-top:14px;padding-top:12px;border-top:1px solid var(--v18-line)}

/* ---------- Dashboard ---------- */
.v18-dashboard-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin:3px 1px 14px}
.v18-dashboard-head h1{font-size:28px;margin:0;color:var(--v18-green)}
.v18-dashboard-head p{margin:3px 0 0;color:var(--v18-muted);font-size:13px}
.v18-date-pill{white-space:nowrap;padding:7px 10px;border-radius:999px;background:#edf7f1;color:var(--v18-green);font-size:12px;font-weight:750}
.v18-priorities{border-left:4px solid #e3a200}
.v18-priorities h2,.v18-herd-card h2,.v18-activity h2{font-size:22px}
.v18-herd-total{display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--v18-line)}
.v18-pig-badge{width:58px;height:58px;border-radius:50%;background:#f7ede7;display:grid;place-items:center;font-size:34px}
.v18-herd-total small{display:block;color:var(--v18-muted)}.v18-herd-total strong{font-size:34px;color:var(--v18-green);line-height:1}
.v18-herd-total .unit{align-self:center;color:var(--v18-muted);font-weight:750}
.v18-stage-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:13px}
.v18-stage-btn{border:0;background:#f8fbf9;border-radius:12px;padding:10px 4px;text-align:center;color:var(--v18-ink);min-width:0}
.v18-stage-btn span{display:block;font-size:10px;color:var(--v18-muted);line-height:1.2;min-height:25px}.v18-stage-btn b{display:block;font-size:19px;color:var(--v18-green);margin-top:3px}
.v18-repro-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:13px}
.v18-repro-btn{border:1px solid var(--v18-line);border-radius:13px;background:#fff;padding:10px 8px;text-align:left;min-width:0}
.v18-repro-btn span{display:block;color:var(--v18-muted);font-size:10px;line-height:1.2}.v18-repro-btn b{display:block;color:var(--v18-green);font-size:18px;margin-top:3px}
.v18-activity-row{width:100%;display:grid;grid-template-columns:38px 1fr auto;gap:9px;align-items:center;padding:10px 0;border:0;border-bottom:1px solid var(--v18-line);background:transparent;text-align:left;color:var(--v18-ink)}
.v18-activity-row:last-of-type{border-bottom:0}.v18-activity-dot{width:34px;height:34px;border-radius:50%;background:var(--v18-green-3);display:grid;place-items:center}.v18-activity-row b{display:block;font-size:14px}.v18-activity-row small{display:block;color:var(--v18-muted);font-size:11px}.v18-activity-row time{color:var(--v18-muted);font-size:11px;white-space:nowrap}
.v18-see-all{margin-top:8px;border:0;background:transparent;color:var(--v18-green);font-weight:850;padding:5px 0}

/* ---------- Finance colors matching approved mockups ---------- */
.v18-finance-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.v18-finance-tile{border:1px solid var(--v18-line);border-radius:16px;padding:14px;min-height:104px;background:#fff;text-align:left;position:relative}
.v18-finance-tile span{display:block;color:var(--v18-muted);font-size:12px}.v18-finance-tile small{display:block;color:var(--v18-muted);font-size:10px}.v18-finance-tile b{display:block;font-size:20px;margin-top:7px;overflow-wrap:anywhere}.v18-finance-tile.green{border-color:#b9ddc8}.v18-finance-tile.green b{color:var(--v18-green)}.v18-finance-tile.blue{border-color:#bdd7f3;background:#fbfdff}.v18-finance-tile.blue b{color:var(--v18-blue)}.v18-finance-tile.orange{border-color:#f0c998;background:#fffdf9}.v18-finance-tile.orange b{color:var(--v18-orange)}.v18-finance-tile.profit{border-color:#b9ddc8;background:#f3fbf6}.v18-finance-tile.profit b{color:var(--v18-green)}.v18-finance-tile.loss{border-color:#efc1bc;background:var(--v18-red-bg)}.v18-finance-tile.loss b{color:var(--v18-red)}
.v18-money-assets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.v18-money-assets button{min-height:84px;border:1px solid var(--v18-line);border-radius:15px;background:#fff;padding:12px;text-align:left}.v18-money-assets span{display:block;color:var(--v18-muted);font-size:11px}.v18-money-assets b{display:block;margin-top:5px;color:var(--v18-green);font-size:16px;overflow-wrap:anywhere}

/* ---------- Page-action bar: only what the page needs ---------- */
.global-page-actions{position:sticky;bottom:6px!important;background:rgba(255,255,255,.96)!important;border-radius:17px!important;padding:8px!important;gap:7px!important;box-shadow:0 9px 28px rgba(18,70,43,.12)!important}
.global-page-actions.v18-basic{grid-template-columns:1fr 1fr!important}
.global-page-actions.v18-basic #v6Pdf,.global-page-actions.v18-basic #v6Share,.global-page-actions.v18-basic #v6Print{display:none!important}
.global-page-actions.v18-export{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.global-page-actions .btn{min-height:45px!important;font-size:14px!important}
.footer{font-size:11px!important;color:#9aa69f!important;padding:15px 10px!important}

/* ---------- Remove old visual pollution ---------- */
.premium-feature p.muted{max-width:620px}
.developer-panel{border-style:dashed}
.print-top{display:none!important}

/* ---------- Responsive ---------- */
@media(max-width:620px){
  .wrap{padding-left:12px;padding-right:12px}.card.compact{padding:15px}.wrap>h1{font-size:28px}
  .v18-stage-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.v18-stage-strip .v18-stage-btn:nth-child(4),.v18-stage-strip .v18-stage-btn:nth-child(5){grid-column:auto}
  .v18-repro-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v18-finance-summary{grid-template-columns:1fr 1fr}.v18-money-assets{grid-template-columns:1fr}
}
@media(max-width:390px){
  .top .brand{font-size:22px}.v18-dashboard-head h1{font-size:25px}.v18-date-pill{display:none}
  .v18-stage-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.v18-finance-summary{grid-template-columns:1fr}
}
@media print{
  .nav,.overlay,.fab,.global-page-actions,.top{display:none!important}
  .wrap{max-width:none;padding:0!important}.card{box-shadow:none!important;break-inside:avoid}
}

/* V18.1 release polish: page controls never cover farm records. */
.global-page-actions{position:relative!important;bottom:auto!important;margin-top:18px!important}
/* Keep content visually below the sticky application header after route changes. */
html{scroll-padding-top:82px}
/* Strong mobile readability for direct submodule links. */
@media(max-width:560px){
  .nav{width:min(92vw,370px)!important}
  .nav-v18-head{padding-top:16px}
  .nav-v18-head .brand{white-space:nowrap;font-size:24px}
  .v18-hub-row{min-height:66px}
}


/* ===== SwineSync V19 / RC8 latest approved polish ===== */
#nav>.nav-home-btn,#nav>.nav-report-btn{justify-content:flex-start!important;text-align:left!important}
#nav>.nav-home-btn>span:last-child,#nav>.nav-report-btn>span:last-child{margin-left:0!important;text-align:left!important}

/* Approved beautiful dashboard hierarchy. */
.v19-dashboard-hero{position:relative;overflow:hidden;border-radius:0 0 24px 24px;margin:-4px -2px 16px;padding:4px 4px 24px;background:linear-gradient(180deg,#f8fcf9 0%,#f1f8f4 62%,#eaf5ee 100%)}
.v19-dashboard-hero .v19-dashboard-head{position:relative;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:0 2px}
.v19-dashboard-hero h1{font-size:31px;margin:0;color:var(--v18-green);letter-spacing:-.025em}.v19-dashboard-hero p{margin:4px 0 0;color:var(--v18-muted)}
.v19-farm-scene{position:absolute;left:0;right:0;bottom:-7px;height:54px;opacity:.14;display:flex;align-items:flex-end;justify-content:flex-end;gap:14px;padding-right:18px;color:var(--v18-green);font-size:38px;letter-spacing:-8px}
.v19-farm-scene span:nth-child(2),.v19-farm-scene span:nth-child(4){font-size:30px}.v19-farm-scene span:nth-child(3){font-size:54px}
.v19-priority-card{border-left:4px solid #d9a500!important}.v19-section-title{display:flex;align-items:center;gap:10px;margin-bottom:10px}.v19-section-title h2{margin:0}.v19-title-icon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--v18-green-3);color:var(--v18-green);font-size:19px}.v19-title-icon.priority{background:#fff0f0;color:#c4312c}
.v19-herd-card{padding-top:17px!important}.v19-stage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px}
.v19-stage-card{display:flex;align-items:center;gap:8px;min-height:69px;padding:10px;border:1px solid var(--v18-line);border-radius:15px;background:#fff;text-align:left;color:var(--v18-ink)}
.v19-stage-card:nth-child(1) .v19-stage-icon{background:#e9f7ef;color:#08783f}.v19-stage-card:nth-child(2) .v19-stage-icon{background:#edf6ff;color:#1773b8}.v19-stage-card:nth-child(3) .v19-stage-icon{background:#fff4df;color:#d98400}.v19-stage-card:nth-child(4) .v19-stage-icon{background:#f4efff;color:#7450a8}.v19-stage-card:nth-child(5) .v19-stage-icon{background:#edf8f0;color:#0b7c43}
.v19-stage-icon{flex:0 0 34px;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font-size:18px}.v19-stage-card small{display:block;color:var(--v18-muted);font-size:10px;line-height:1.15}.v19-stage-card b{display:block;color:var(--v18-green);font-size:20px;margin-top:3px}
.v19-repro-box{margin-top:14px;border:1px solid var(--v18-line);border-radius:16px;padding:11px}.v19-repro-box h3{font-size:14px;margin-bottom:9px}.v19-repro-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.v19-repro-card{display:flex;gap:7px;align-items:center;border:1px solid #e4ece7;border-radius:13px;background:#fff;padding:9px 8px;text-align:left;color:var(--v18-ink);min-width:0}.v19-repro-icon{font-size:18px;min-width:22px}.v19-repro-card small{display:block;color:var(--v18-muted);font-size:9px;line-height:1.15}.v19-repro-card b{display:block;color:var(--v18-green);font-size:17px;margin-top:2px}

/* Restore one global export surface everywhere; hide old page-local duplicates. */
.global-page-actions.v18-export{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.global-page-actions.v18-export #v6Pdf,.global-page-actions.v18-export #v6Share,.global-page-actions.v18-export #v6Print{display:block!important}
#downloadReportPdf,#shareReport,#printReport,#downloadSalesPdf,#downloadBreederPdf,#printBreeder,#printTasks{display:none!important}
#reportView + .card.compact{display:none!important}

/* Scalable Weight Records. */
.v19-weight-filters{display:grid;grid-template-columns:minmax(220px,2fr) 1fr 1fr 120px;gap:8px;margin:12px 0}.v19-weight-filters .field{margin:0;min-height:45px;padding:10px 11px}
.v19-stage-chips{display:flex;gap:7px;overflow:auto;padding:2px 0 10px}.v19-stage-chips .mini{white-space:nowrap}.v19-stage-chips .mini.active{background:var(--v18-green)!important;color:#fff!important}
.v19-selected-bar{display:flex;justify-content:space-between;align-items:end;gap:10px;border-top:1px solid var(--v18-line);border-bottom:1px solid var(--v18-line);padding:10px 0;margin:2px 0 10px}.v19-selected-bar>span{font-weight:850;color:var(--v18-green);white-space:nowrap}.v19-selected-bar>div{display:flex;gap:7px;align-items:end}.v19-selected-bar label{margin:0;font-size:11px}.v19-selected-bar .field{margin-top:3px;padding:8px 9px;min-height:40px}
.v19-weight-list{display:grid;gap:5px}.v19-weight-row{display:grid;grid-template-columns:28px minmax(0,1fr) 128px;gap:8px;align-items:center;border:1px solid var(--v18-line);border-radius:13px;padding:9px 10px;background:#fff;min-height:72px}.v19-weight-row.selected{border-color:#88c5a1;background:#f8fdf9;box-shadow:0 0 0 1px #cce7d6 inset}.v19-weight-check{width:19px;height:19px}.v19-weight-main>b{display:block;color:var(--v18-ink);font-size:14px}.v19-weight-main>small{display:block;color:var(--v18-muted);font-size:10px;margin:1px 0 4px}.v19-weight-summary{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.v19-weight-summary strong{color:var(--v18-green);font-size:12px}.v19-weight-summary em{font-style:normal;color:#53665b;font-size:10px}.v19-weight-detail{display:block;margin-top:3px;color:#718078;font-size:9px;line-height:1.3}.v19-weight-entry{display:none}.v19-weight-row.selected .v19-weight-entry{display:block}.v19-weight-entry small{display:block;color:var(--v18-muted);font-size:9px}.v19-weight-entry .field{padding:8px 9px;min-height:39px;margin-top:3px}.v19-pager{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 2px 0;color:var(--v18-muted);font-size:11px}.v19-pager>div{display:flex;align-items:center;gap:7px}.v19-pager .mini{padding:5px 9px}.v19-pager button:disabled{opacity:.4}

@media(max-width:620px){.v19-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v19-repro-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v19-weight-filters{grid-template-columns:1fr 1fr}.v19-weight-filters #v19WeightSearch{grid-column:1/-1}.v19-selected-bar{align-items:stretch;flex-direction:column}.v19-selected-bar>div{display:grid;grid-template-columns:1fr 1fr}.v19-weight-row{grid-template-columns:24px minmax(0,1fr);padding:9px}.v19-weight-entry{grid-column:2}.v19-dashboard-hero h1{font-size:28px}}
@media(max-width:390px){.v19-dashboard-hero .v19-dashboard-head{align-items:flex-start;flex-direction:column}.v19-dashboard-hero .v18-date-pill{display:inline-flex!important;font-size:10px;padding:6px 9px}.v19-stage-grid{grid-template-columns:1fr 1fr}.v19-weight-filters{grid-template-columns:1fr}.v19-weight-filters #v19WeightSearch{grid-column:auto}.v19-selected-bar>div{grid-template-columns:1fr}}
/* ===== END V19 / RC8 ===== */

/* ===== V20 frozen V1.0 integration ===== */
.v20-period-control{display:grid;gap:8px}.v20-period-control>label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:700}.v20-period-control select{max-width:220px}
.v20-revenue-breakdown{margin-top:10px}.v20-revenue-breakdown summary{cursor:pointer}
.v20-analytics h3{margin:14px 0 8px}.v20-analytics h3 small{font-weight:500;color:var(--muted,#64748b)}
.v20-chart-state{display:grid;gap:4px;padding:14px;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc}.v20-chart-state span{color:#64748b;font-size:.9rem}.v20-chart-state.error{border-color:#fca5a5}.v20-chart-state.locked{border-color:#facc15}
.v20-chart{display:grid;gap:8px}.v20-bar-row{display:grid;grid-template-columns:minmax(92px,1.1fr) minmax(100px,3fr) auto;gap:8px;align-items:center}.v20-bar-row>span{font-size:.86rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v20-bar-row>b{font-size:.82rem;text-align:right}.v20-bar-track{height:10px;background:#e2e8f0;border-radius:999px;overflow:hidden}.v20-bar-track i{display:block;height:100%;min-width:2px;background:#16a34a;border-radius:999px}
.v20-multi-chart{display:grid;gap:8px}.v20-chart-legend{display:flex;gap:10px;flex-wrap:wrap;font-size:.78rem}.v20-chart-legend span:before{content:'■';margin-right:4px}.v20-multi-row{display:grid;grid-template-columns:minmax(72px,100px) 1fr;gap:8px;align-items:center}.v20-multi-row>span{font-size:.78rem}.v20-multi-row>div{display:flex;gap:3px;align-items:flex-end;height:22px}.v20-multi-row i{display:block;height:100%;min-width:2px;border-radius:4px;background:#16a34a}.v20-multi-row i.cogs{background:#f59e0b}.v20-multi-row i.opex{background:#ea580c}.v20-multi-row i.net{background:#2563eb}.v20-chart-legend .cogs:before{color:#f59e0b}.v20-chart-legend .opex:before{color:#ea580c}.v20-chart-legend .net:before{color:#2563eb}.v20-chart-legend .revenue:before{color:#16a34a}
.v20-money-action{white-space:nowrap}
@media(max-width:620px){.v20-period-control>label{align-items:flex-start;flex-direction:column}.v20-period-control select{max-width:none;width:100%}.v20-bar-row{grid-template-columns:minmax(74px,.9fr) minmax(80px,2fr) auto}.v20-multi-row{grid-template-columns:70px 1fr}}
/* ===== END V20 ===== */


/* RC9 DASHFIX1 — approved biological dashboard iconography */
.v19-dashboard-pig-icon{display:block;width:100%;height:100%;object-fit:contain;border-radius:10px}
.v19-title-icon .v19-dashboard-pig-icon{width:34px;height:34px;border-radius:50%}
.v19-stage-icon{flex:0 0 44px;width:44px;height:44px;overflow:hidden;padding:0;background:transparent!important}
.v19-stage-icon .v19-dashboard-pig-icon{width:44px;height:44px}
.v19-repro-icon{flex:0 0 40px;width:40px;height:40px;display:grid;place-items:center;overflow:hidden;border-radius:10px}
.v19-repro-icon .v19-dashboard-pig-icon{width:40px;height:40px}
.v19-stage-card{min-height:74px}
.v19-repro-card{min-height:60px}
@media(max-width:520px){.v19-stage-icon{flex-basis:42px;width:42px;height:42px}.v19-stage-icon .v19-dashboard-pig-icon{width:42px;height:42px}.v19-repro-icon{flex-basis:38px;width:38px;height:38px}.v19-repro-icon .v19-dashboard-pig-icon{width:38px;height:38px}}


/* ===== COUNTRYFIX1: real searchable Farm Profile country selector ===== */
.v21-country-combo{position:relative;width:100%}
.v21-country-input-row{position:relative;display:flex;align-items:center}
.v21-country-input{padding-right:48px!important}
.v21-country-toggle{position:absolute;right:5px;top:5px;bottom:5px;width:42px;border:0;border-radius:12px;background:transparent;color:#13251c;font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer}
.v21-country-toggle:focus-visible{outline:2px solid #0b7a45;outline-offset:-2px}
.v21-country-menu{position:absolute;z-index:80;left:0;right:0;top:calc(100% + 6px);max-height:280px;overflow:auto;background:#fff;border:1px solid #cfdcd5;border-radius:14px;box-shadow:0 14px 35px rgba(20,55,37,.18);padding:6px}
.v21-country-menu.hidden{display:none}
.v21-country-option{display:block;width:100%;border:0;background:#fff;text-align:left;padding:11px 13px;border-radius:9px;color:#1f2c26;font:inherit;cursor:pointer}
.v21-country-option:hover,.v21-country-option.active{background:#edf8f2;color:#086b3b;font-weight:700}
.v21-country-empty{padding:12px;color:#68776f;font-size:.92rem}
@media (max-width:600px){.v21-country-menu{max-height:240px}.v21-country-option{padding:13px}}
/* ===== END COUNTRYFIX1 ===== */


/* ===== SWINESYNC V21 DASHBOARD + HERD MANAGEMENT RC10 ===== */
.v21-date-control{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:8px;align-items:stretch;width:100%}
.v21-date-display{min-width:0;margin:0}
.v21-date-pick{position:relative;display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid var(--line,#d8e4dc);border-radius:16px;background:var(--card,#fff);font-weight:800;overflow:hidden}
.v21-date-native{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;cursor:pointer!important;padding:0!important;margin:0!important;border:0!important}
.v21-global-date{margin-top:6px}
.v21-review-modal{position:fixed;inset:0;z-index:12000;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.45)}
.v21-review-box{width:min(560px,100%);max-height:82vh;overflow:auto;background:var(--card,#fff);border:1px solid var(--line,#d8e4dc);border-radius:22px;padding:18px}
.v21-review-box h3{margin-top:0}
.v21-review-list{display:grid;gap:6px;margin:12px 0}
.v21-review-list>div{display:flex;gap:12px;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line,#e4ece7);padding:7px 0}
.v21-review-list span{font-size:.9rem;color:var(--muted,#64746c)}
.v21-review-inline{border:1px solid var(--line,#d8e4dc);border-radius:16px;padding:12px;margin-top:12px}
.v21-review-inline>div:not(.inline-actions){padding:6px 0;border-bottom:1px solid var(--line,#e4ece7)}
.v21-move-targets{display:grid;gap:8px;margin:10px 0 14px}
.v21-move-row{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(84px,110px);gap:10px;align-items:center;border:1px solid var(--line,#d8e4dc);border-radius:16px;padding:10px 12px}
.v21-move-row span{min-width:0}
.v21-move-row small{display:block;white-space:normal;color:var(--muted,#64746c);margin-top:2px}
.v21-move-row .field{margin:0;min-width:0}
.v21-herd-table td,.v21-batch-table td,.v21-housing-table td{vertical-align:top}
.v21-herd-table .click-row,.v21-batch-table .click-row,.v21-housing-table .click-row{cursor:pointer}
.v21-herd-table .click-row:active,.v21-batch-table .click-row:active,.v21-housing-table .click-row:active{opacity:.72}
.v21-house-detail{margin-top:12px}
.v21-housing-table th:nth-child(2),.v21-housing-table td:nth-child(2){text-align:center;white-space:nowrap}
.v21-housing-table th:nth-child(3),.v21-housing-table td:nth-child(3){white-space:nowrap}
#v21HouseFilter{max-width:220px}
#fab{touch-action:none}
@media(max-width:560px){
 .v21-move-row{grid-template-columns:auto minmax(0,1fr) 88px}
 .v21-review-list>div{align-items:flex-start;flex-direction:column;gap:2px}
 #v21HouseFilter{max-width:170px}
}
/* ===== END SWINESYNC V21 DASHBOARD + HERD MANAGEMENT RC10 ===== */

/* RC15 stability hotfix: compact offline grouped-pig icon for Production Batches. */
.v26-batch-pigs{position:relative;width:34px;height:30px;display:block}.v26-batch-pigs i{position:absolute;font-style:normal;font-size:13px;line-height:1;transform:scaleX(-1)}.v26-batch-pigs i:nth-child(1){left:0;top:2px}.v26-batch-pigs i:nth-child(2){left:10px;top:0}.v26-batch-pigs i:nth-child(3){left:20px;top:3px}.v26-batch-pigs i:nth-child(4){left:5px;top:14px}.v26-batch-pigs i:nth-child(5){left:17px;top:15px}


/* ===== RC45 PRINT + BRANDING HARDENING ===== */
@media screen{
  .print-top.v55-print-top{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 auto}
}
.v55-report-end{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin:10px 0 2px}
.v55-report-end .mini{min-height:38px}
.v55-about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0}
.v55-about-grid>div{border:1px solid var(--line);border-radius:12px;padding:10px;background:#fbfdfb;display:flex;flex-direction:column;gap:2px}
.v55-about-grid span{font-size:11px;color:var(--muted)}.v55-about-grid b{font-size:14px}
.v55-print-footer{display:none}
@media(max-width:420px){.v55-about-grid{grid-template-columns:1fr}.top .brand{font-size:20px}.print-top.v55-print-top{padding:8px 9px!important}}
@media print{
  @page{size:A4 portrait;margin:12mm 10mm 16mm}
  html,body{background:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  .top,.nav,.overlay,.fab,.quick-sheet,.global-page-actions,.v48-screen-controls,.v52-report-nav,.v49-report-toolbar,.v55-report-end,.no-print,.footer,.mini,.btn{display:none!important}
  .wrap{max-width:none!important;margin:0!important;padding:0 0 9mm!important}
  .card{box-shadow:none!important;break-inside:auto!important;page-break-inside:auto!important}
  h1,h2,h3,summary{break-after:avoid-page!important;page-break-after:avoid!important}
  .metric,.tile,.v48-kpi,.v48-chart-card,.v48-insight,.v48-deep-analytics,.subtle,.price-box{break-inside:avoid-page!important;page-break-inside:avoid!important}
  .table-wrap,.v48-table-wrap{overflow:visible!important}
  table,.simple-table,.v48-table{width:100%!important;min-width:0!important;border-collapse:collapse!important}
  thead{display:table-header-group!important}tfoot{display:table-footer-group!important}
  tr{break-inside:avoid-page!important;page-break-inside:avoid!important}
  .v55-print-footer{display:flex!important;position:fixed;left:10mm;right:10mm;bottom:3mm;justify-content:space-between;gap:12px;border-top:1px solid #cfded5;padding-top:2mm;font-size:8pt;color:#596d63;background:#fff}
  .v55-print-footer span:last-child{max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .v48-report-export{padding-bottom:5mm}
}
/* ===== END RC45 PRINT + BRANDING HARDENING ===== */
