/* Isolated, accessible presentation; no changes to Theme selectors or existing layout. */
.lua2-fert-wrap{margin:28px 0;border:1px solid var(--tl-border,#e1e8e0);background:var(--tl-card,#fff);border-radius:18px;padding:clamp(16px,2.5vw,24px);color:var(--tl-text,inherit);box-shadow:0 7px 30px rgba(18,52,37,.045);}
.lua2-fert-heading,.lua2-fert-region-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.lua2-fert-heading h2{font-size:clamp(20px,2.1vw,26px);line-height:1.3;margin:5px 0;}
.lua2-fert-heading p,.lua2-fert-disclaimer{font-size:13px;line-height:1.65;opacity:.8;margin:7px 0 0;}
.lua2-fert-kicker{display:block;font-size:12px;font-weight:700;letter-spacing:.04em;color:#368659;}
.lua2-fert-heading a{font-size:13px;text-decoration:none;color:var(--tl-accent,#167a52);font-weight:700;}
.lua2-fert-region{margin-top:24px;}
.lua2-fert-region-head{align-items:center;margin-bottom:10px;}
.lua2-fert-region-head h3{font-size:17px;margin:0;line-height:1.3;}
.lua2-fert-region-head small{opacity:.7;}
.lua2-fert-table-scroll{overflow:auto;-webkit-overflow-scrolling:touch;border-radius:12px;border:1px solid var(--tl-border,#e1e8e0);}
.lua2-fert-wrap th,.lua2-fert-wrap td{padding:12px 13px;text-align:left;vertical-align:middle;border-bottom:1px solid var(--tl-border,#edf1eb);font-size:13px;}
.lua2-fert-wrap th{font-size:12px;background:rgba(62,116,76,.06);font-weight:700;white-space:nowrap;}
.lua2-fert-wrap tbody tr:last-child td{border-bottom:0;}
.lua2-fert-wrap tbody tr:hover{background:rgba(36,139,81,.035);}
.lua2-fert-value{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;}
.lua2-fert-value span{margin-left:4px;font-size:11px;font-weight:500;opacity:.75;}
.lua2-fert-empty{padding:16px 0;font-size:14px;}
.lua2-fert-disclaimer{margin-top:20px;}
.lua2-fert-disclaimer a{color:inherit;text-decoration:underline;}
@media(max-width:600px){.lua2-fert-wrap{border-radius:14px;padding:15px 12px;margin:18px 0}.lua2-fert-wrap th,.lua2-fert-wrap td{padding:10px 11px}}
.lua2-fert-stale{display:block;font-size:11px;color:#996319;margin-top:3px;}
/* When JavaScript cannot relocate the panel, keep it visible as a fallback. */
.lua2-fert-portal{width:min(100% - 32px,1200px);margin:16px auto 42px;}
.tl-input-market .lua2-fert-portal,.tl-workspace-content .lua2-fert-portal{width:100%;margin:16px 0 0;}
.lua2-fert-portal[hidden]{display:none!important;}
/* v1.2.1: remove the redundant Core empty board only when real regional quotes exist.
   Core's pesticide tab restores the original board on click. */
.tl-input-market.lua2-fert-quotes-ready #tl-input-board{display:none!important;}
.tl-input-market .lua2-fert-portal{margin:0;}
.tl-input-market.lua2-fert-quotes-ready .lua2-fert-wrap{margin-top:4px;}
/* Native homepage preview from the verified regional table, preserving source ranges. */
.lua2-fert-home[hidden],.lua2-fert-home [hidden]{display:none!important;}
.lua2-fert-home{display:grid;gap:15px;min-width:0;margin:0 0 12px;}
.lua2-fert-home-group{min-width:0;}
.lua2-fert-home-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 9px;}
.lua2-fert-home-head h3{margin:0;color:#0d4934;font-size:15px;font-weight:800;line-height:1.3;}
.lua2-fert-home-head a{font-size:11px;white-space:nowrap;font-weight:700;color:var(--tl-accent,#08794d);text-decoration:none;}
.lua2-fert-home-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;}
.lua2-fert-home-card{display:flex;flex-direction:column;min-width:0;gap:4px;min-height:113px;border:1px solid #e4ede6;border-radius:12px;padding:11px 10px;background:#fff;text-decoration:none;color:#123c30;box-sizing:border-box;}
.lua2-fert-home-card:hover,.lua2-fert-home-card:focus-visible{border-color:#4eb17b;box-shadow:0 5px 18px rgba(15,89,49,.10);transform:translateY(-1px);}
.lua2-fert-home-name{font-weight:800;font-size:12px;line-height:1.35;}
.lua2-fert-home-brand{font-size:11px;opacity:.8;overflow-wrap:anywhere;}
.lua2-fert-home-card strong{font-size:15px;color:#047547;font-variant-numeric:tabular-nums;white-space:normal;line-height:1.3;}
.lua2-fert-home-card strong small{font-size:10px;font-weight:600;margin-left:4px;}
.lua2-fert-home-meta{font-size:10px;line-height:1.4;opacity:.78;margin-top:auto;}
.lua2-fert-home-note{border:1px dashed #cbdcce;background:#f6fbf7;border-radius:11px;padding:13px 12px;font-size:12px;color:#436653;margin:0;line-height:1.5;}
.lua2-fert-pesticide-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px;}
.lua2-fert-pesticide-grid .tl-v2-product{min-width:0;}
.tl-reference-home[data-theme=dark] .lua2-fert-home-card{background:#1b3029;color:#eaf3f0;border-color:#344d40;}
.tl-reference-home[data-theme=dark] .lua2-fert-home-head h3,.tl-reference-home[data-theme=dark] .lua2-fert-home-card strong{color:#9ee0b6;}
.tl-reference-home[data-theme=dark] .lua2-fert-home-note{background:#1b3029;border-color:#344d40;color:#eaf3f0;}
@media(max-width:1120px){.lua2-fert-home-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.lua2-fert-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lua2-fert-home-card{min-height:112px}}
@media(max-width:520px){.lua2-fert-home-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.lua2-fert-home-card{padding:9px 8px}.lua2-fert-home-card strong{font-size:13px}.lua2-fert-home-head h3{font-size:14px}}
/* Four-column regional table after removing the visible source column. */
.lua2-fert-wrap table{width:100%;border-collapse:collapse;min-width:560px;margin:0;background:transparent;
min-width:690px;
min-width:560px;}
@media(max-width:820px){.lua2-fert-pesticide-grid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}.lua2-fert-pesticide-grid .tl-v2-product{flex:0 0 150px;scroll-snap-align:start}}
/* Shared Price Data Hub · v0.9.0 */
.lua2-hub-wrap{margin:12px 0 20px;border:1px solid var(--tl-border,#dce8dd);border-radius:16px;padding:clamp(13px,2vw,22px);background:var(--tl-card,#fff);color:var(--tl-text,#143e2f);box-sizing:border-box;}
.lua2-hub-head h2{font-size:clamp(20px,2.4vw,25px);line-height:1.25;margin:3px 0 4px;}
.lua2-hub-head p,.lua2-hub-fine{font-size:12px;line-height:1.65;opacity:.8;margin:0;}
.lua2-hub-kicker{color:var(--tl-accent,#137a51);font-size:11px;letter-spacing:.04em;font-weight:750;}
.lua2-hub-region{margin-top:16px;}
.lua2-hub-region-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;}
.lua2-hub-region-head h3{font-size:16px;margin:0;}
.lua2-hub-region-head small{font-size:11px;opacity:.7;}
.lua2-hub-scroll{overflow-x:auto;max-width:100%;border:1px solid var(--tl-border,#e5eee6);border-radius:12px;-webkit-overflow-scrolling:touch;}
.lua2-hub-scroll table{border-collapse:collapse;width:100%;min-width:580px;margin:0;}
.lua2-hub-scroll th,.lua2-hub-scroll td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--tl-border,#e4eee6);font-size:12px;vertical-align:middle;}
.lua2-hub-scroll th{background:rgba(35,118,74,.055);font-size:11px;}
.lua2-hub-scroll tbody tr:last-child td{border:0;}
.lua2-hub-money{font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--tl-accent,#008454);}
.lua2-hub-money small{font-weight:450;margin-left:5px;font-size:10px;opacity:.8;}
.lua2-hub-old{display:block;font-size:10px;color:#9c6922;}
.lua2-hub-fine{margin-top:14px;}
.lua2-hub-note{font-size:13px;line-height:1.6;color:var(--tl-text,#264b3c);}
.lua2-hub-portal{max-width:1200px;margin:16px auto 32px;}
.lua2-hub-portal[hidden]{display:none!important;}
.tl-input-market .lua2-hub-portal{max-width:100%;margin:0;}
.tl-input-market.lua2-hub-fert-active #tl-input-board,.tl-input-market.lua2-hub-pest-active #tl-input-board{display:none!important;}
#v2-pesticide-preview.lua2-hub-filled{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;}
.lua2-hub-chart-wrap{margin:14px 0;padding:14px;border:1px solid var(--tl-border,#e3ebe4);border-radius:14px;background:var(--tl-card,#fff);}
.lua2-hub-chart-wrap h3{margin:0 0 10px;}
.lua2-hub-chart{max-width:100%;width:100%;height:auto;}
.lua2-hub-chart-wrap small{display:block;line-height:1.5;font-size:11px;opacity:.8;}
@media(max-width:980px){#v2-pesticide-preview.lua2-hub-filled{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.lua2-hub-wrap{padding:13px 10px;margin:10px 0}.lua2-hub-scroll th,.lua2-hub-scroll td{padding:10px}.lua2-hub-region-head{align-items:center}}
/* PriceHub 1.0: optional local product photo and observed-price sparklines */
.lua2-hub-photo{width:56px;height:56px;border-radius:12px;background:#eef6ed;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;vertical-align:middle;border:1px solid rgba(16,105,68,.12);}
.lua2-hub-photo .lua2-hub-img{width:100%;height:100%;object-fit:contain;display:block;}
.lua2-hub-photo-cell{width:68px;}
.lua2-hub-wrap td strong{font-weight:730;}
.lua2-hub-wrap td .lua2-hub-variant{display:block;margin-top:4px;opacity:.75;font-size:11px;}
.lua2-hub-mini{display:block;width:106px;height:36px;color:#17844f;}
.lua2-hub-mini-cell{min-width:120px;}
.lua2-hub-mini-cell small{font-size:10px;color:#627b6a;}
.lua2-hub-unavailable{font-size:11px;color:#63796c;display:inline-block;max-width:100px;line-height:1.45;}
.lua2-hub-price-card .lua2-hub-photo{width:64px;height:60px;margin-bottom:7px;}
.lua2-hub-home-trend{min-height:22px;display:flex;align-items:center;gap:4px;}
.lua2-hub-home-trend .lua2-hub-mini{height:27px;width:85px;}
.lua2-hub-home-trend small{font-size:10px;opacity:.75;}
.lua2-hub-price-card .lua2-hub-unavailable{font-size:10px;}
.tl-reference-home[data-theme=dark] .lua2-hub-photo{background:#263c2f;}
@media(max-width:720px){.lua2-hub-scroll table{min-width:730px}.lua2-hub-photo{width:48px;height:48px}.lua2-hub-price-card .lua2-hub-photo{width:54px;height:54px}}
.lua2-hub-chart-more{display:inline-block;font-size:11px;color:var(--tl-accent,#137a51);font-weight:650;text-decoration:underline;text-underline-offset:3px;margin-top:3px;}
#lua2-hub-chart-detail{scroll-margin-top:110px;}
/* Mobile: show photo, name, price, observation and trend without hidden horizontal columns. */
@media(max-width:720px){
 .lua2-hub-wrap .lua2-hub-scroll{overflow:visible;border:0}
 .lua2-hub-wrap .lua2-hub-scroll table{display:block;width:100%;min-width:0}
 .lua2-hub-wrap .lua2-hub-scroll thead{display:none}
 .lua2-hub-wrap .lua2-hub-scroll tbody{display:grid;grid-template-columns:minmax(0,1fr);gap:9px}
 .lua2-hub-wrap .lua2-hub-scroll tbody tr{display:grid;grid-template-columns:56px minmax(0,1fr);gap:5px 10px;padding:12px;background:var(--tl-card,#fff);border:1px solid var(--tl-border,#e0e9e1);border-radius:13px;min-width:0}
 .lua2-hub-wrap .lua2-hub-scroll td{display:block;border:0!important;padding:0!important;min-width:0;font-size:12px}
 .lua2-hub-wrap .lua2-hub-scroll td:nth-child(1){grid-column:1;grid-row:1/span 4}
 .lua2-hub-wrap .lua2-hub-scroll td:nth-child(2){grid-column:2;grid-row:1}
 .lua2-hub-wrap .lua2-hub-scroll td:nth-child(3){grid-column:2;grid-row:2}
 .lua2-hub-wrap .lua2-hub-scroll td:nth-child(4){grid-column:2;grid-row:3;color:#627a69;font-size:11px}
 .lua2-hub-wrap .lua2-hub-scroll td:nth-child(5){grid-column:2;grid-row:4;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
 .lua2-hub-wrap .lua2-hub-photo{width:52px;height:52px}
 .lua2-hub-wrap .lua2-hub-mini{width:76px;height:26px}
 .lua2-hub-wrap .lua2-hub-money{white-space:normal;font-size:15px}
 .lua2-hub-wrap .lua2-hub-money small{font-size:11px}
}
/* Tiny category-accurate fruit artwork, without changing Theme files. */
#v2-produce-grid .lua2-fruit-symbol{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;max-width:100%;border-radius:13px;background:#eff8ee;font-size:36px;line-height:1;box-shadow:inset 0 0 0 1px #dcebdc;}
.tl-reference-home[data-theme=dark] #v2-produce-grid .lua2-fruit-symbol{background:#2b4939;box-shadow:inset 0 0 0 1px #486e55;}

/* Core homepage cards may contain duplicate source observations. Hidden rows stay hidden despite Theme flex rules. */
#v2-produce-grid > .tl-v2-product[hidden]{display:none!important}

/* v1.3.0: bundled AI product illustrations, isolated and size-bounded. */
.lua2-hub-artwork img,.lua2-pricehub-ai-illustration,.lua2-hub-ai-illustration{max-width:100%;max-height:100%;object-fit:contain;vertical-align:middle}
