/* A farm dossier uses recorded facts, with every existing workflow one tab away. */
.farm-detail-icon { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.7; flex-shrink:0; }
.farm-detail-eyebrow { display:block; color:var(--text-3); font-size:12px; font-weight:600; letter-spacing:1.1px; line-height:1.4; }
.farm-detail-tabs { display:flex; flex-wrap:nowrap; gap:4px; overflow-x:auto; scrollbar-width:thin; padding:0 0 3px; margin:0 0 24px; border-bottom:1px solid var(--line); }
.workspace .farm-detail-tabs [role="tab"] { min-height:47px; padding:12px 15px; border:0; border-bottom:2px solid transparent; border-radius:0; white-space:nowrap; color:var(--text-3); background:transparent; font-size:13px; font-weight:500; }
.workspace .farm-detail-tabs [role="tab"]:hover { color:var(--text); border-bottom-color:var(--line-strong); }
.workspace .farm-detail-tabs [role="tab"]:active { background:var(--surface-2); }
.workspace .farm-detail-tabs [role="tab"][aria-selected="true"] { border-bottom-color:var(--brand); color:var(--brand); background:var(--good-soft); }
.farm-summary-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); align-items:start; gap:20px; margin-bottom:20px; }
.farm-record-readiness,.farm-season-overview,.farm-priority-updates { padding:24px; border:1px solid var(--line); background:var(--surface); border-radius:16px; }
.farm-section-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:20px; }
.farm-section-heading h2 { font-size:20px; letter-spacing:-.5px; font-weight:600; margin:6px 0 0; line-height:1.4; }
.farm-section-heading>span { font-size:12px; color:var(--text-3); text-align:right; max-width:120px; }
.farm-section-heading>.btn { flex-shrink:0; }
.farm-readiness-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.farm-readiness-tile { display:flex; align-items:center; gap:11px; min-height:82px; padding:14px 11px; border:1px solid var(--line); border-radius:10px; background:var(--surface); text-align:left; color:var(--text-3); cursor:pointer; font-family:var(--sans); }
.farm-readiness-tile>span:nth-child(2) { min-width:0; flex:1; }
.farm-readiness-tile strong { display:block; color:var(--text-2); font-size:13px; font-weight:500; line-height:1.4; }
.farm-readiness-tile small { display:block; font-size:12px; margin-top:4px; line-height:1.4; }
.farm-readiness-tile .farm-detail-icon { width:20px; height:20px; }
.farm-readiness-tile:hover { border-color:var(--brand); background:var(--surface-2); }
.farm-readiness-tile:active { background:var(--surface-3); transform:translateY(1px); }
.farm-readiness-mark { font-size:16px; flex:none; }
.farm-readiness-sufficient { background:var(--good-soft); color:var(--brand); border-color:var(--line-strong); }
.farm-readiness-sufficient strong { color:var(--brand); }
.farm-readiness-partial .farm-readiness-mark { color:var(--warn); }
.farm-record-note { font-size:12px; color:var(--text-3); line-height:1.6; margin:17px 0 0; }
.farm-season-record { padding:17px 0; border-top:1px solid var(--line); }
.farm-season-record:last-child { padding-bottom:0; }
.farm-season-title { display:flex; align-items:center; gap:12px; justify-content:space-between; }
.farm-season-title strong { font-size:14px; font-weight:600; overflow-wrap:anywhere; }
.farm-season-title strong>span { display:block; font-size:12px; font-weight:400; color:var(--text-3); margin-top:3px; }
.farm-season-state { padding:4px 8px; border:1px solid var(--line); border-radius:5px; background:var(--surface-2); font-size:12px; color:var(--text-2); white-space:nowrap; }
.farm-season-failed { color:var(--bad); background:var(--bad-soft); border-color:var(--bad-soft); }
.farm-season-track { list-style:none; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:3px; padding:0; margin:17px 0 11px; }
.farm-season-track li { font-size:12px; color:var(--text-3); line-height:1.6; text-align:center; }
.farm-season-track li>span { display:block; height:5px; border-radius:3px; background:var(--surface-3); margin-bottom:6px; }
.farm-season-track li.current { color:var(--brand); font-weight:600; }
.farm-season-track li.current>span { background:var(--brand); }
.farm-season-planted { font-size:12px; color:var(--text-3); margin-top:13px; }
.farm-more-seasons { border-top:1px solid var(--line); margin-top:16px; padding-top:12px; }
.farm-more-seasons summary { color:var(--brand); font-size:12px; cursor:pointer; padding:5px 0; }
.farm-detail-empty { font-size:13px; line-height:1.8; color:var(--text-3); padding:20px 0 7px; border-top:1px solid var(--line); }
.farm-detail-empty p { margin:0 0 12px; }
.farm-scope-summary { margin-bottom:20px; }
.farm-scope-summary>.card { margin:0; }
.farm-priority-updates { margin-bottom:20px; }
.farm-update-row { display:flex; align-items:center; gap:15px; border-top:1px solid var(--line); padding:18px 0; }
.farm-update-row:last-child { padding-bottom:0; }
.farm-update-row>.farm-detail-icon { color:var(--brand); }
.farm-update-row>div { flex:1; min-width:0; }
.farm-update-row strong { font-size:14px; font-weight:500; line-height:1.6; }
.farm-update-row p { color:var(--text-3); margin:3px 0 0; font-size:12px; line-height:1.7; }
.farm-update-priority { font-size:12px; color:var(--text-3); max-width:130px; }
.farm-update-row>.btn { white-space:nowrap; }
.farm-section-loading { padding:8px 24px 20px; margin:0 0 20px; border:1px solid var(--line); border-radius:14px; background:var(--surface); }
#main[data-page="farm-detail"] thead th.right { text-align:right; }
#main[data-page="farm-detail"] td.right { font-variant-numeric:tabular-nums; }
#main[data-page="farm-detail"] :is(#farm-fields,#farm-crops) table { width:100%; }
.farm-section-error { border:1px solid var(--bad-soft); background:var(--bad-soft); color:var(--bad); padding:14px 18px; border-radius:9px; font-size:13px; overflow-wrap:anywhere; }
#main[data-page="farm-detail"] [role="tabpanel"] { scroll-margin-top:24px; }
/* A facet that opens the tab it counts: text, not a tile. */
.farm-facet-jump { font:inherit; color:var(--brand); background:none; border:0; padding:0; text-align:left; cursor:pointer; text-decoration:underline; text-underline-offset:2px; }
.farm-facet-jump:hover { color:var(--brand-strong); }
.farm-facet-jump:active { color:var(--text); }
#main[data-page="farm-detail"] .ui-overflow-menu [data-danger] { color:var(--bad); }
#main[data-page="farm-detail"] :is(#farm-boundaries,#farm-farmer,#farm-decide,#farm-harvest) { scroll-margin-top:24px; }
@media (max-width:1250px) {
  .farm-summary-grid { grid-template-columns:1fr; }
  .farm-readiness-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:700px) {
  .farm-readiness-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .farm-record-readiness,.farm-season-overview,.farm-priority-updates { padding:20px 16px; }
  .farm-readiness-tile { gap:8px; padding:12px 10px; }
  .farm-readiness-mark { display:none; }
  .farm-section-heading { align-items:flex-start; flex-wrap:wrap; }
  .farm-section-heading>span { max-width:100%; text-align:left; }
  .farm-section-heading h2 { font-size:19px; }
  .farm-update-row { display:grid; grid-template-columns:22px minmax(0,1fr) auto; gap:8px 11px; }
  .farm-update-row>div { grid-column:2 / 4; }
  .farm-update-priority { grid-column:2; max-width:none; }
  .farm-update-row>.btn { grid-column:3; }
  #main[data-page="farm-detail"] :is(.btn,.btn-primary,.btn-danger,summary) { min-height:44px; }
  #main[data-page="farm-detail"] summary { align-content:center; }
  #main[data-page="farm-detail"] #crop-add { align-items:stretch!important; padding:16px; gap:12px!important; }
  #main[data-page="farm-detail"] #crop-add label { width:100%; }
  #main[data-page="farm-detail"] #crop-add :is(input,select) { width:100%!important; font-size:16px; }
  #main[data-page="farm-detail"] #crop-add button { width:100%; }
}
@media (max-width:380px) {
  .farm-readiness-tile .farm-detail-icon { display:none; }
  .farm-season-track li { font-size:12px; letter-spacing:-.4px; }
}
@media (prefers-reduced-motion:reduce) { .farm-readiness-tile:active { transform:none; } }
