/* All five agriculture pages inherit the homepage palette and typography. */
.agri-themed-page .page-trail { display:flex; flex-wrap:wrap; gap:9px; padding-top:24px; color:var(--muted); font-size:12px; }
.agri-themed-page .page-trail strong { color:var(--ink); font-weight:600; }
.agri-themed-page .agri-overview-hero { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:30px 42px; align-items:start; padding:32px 0; border-bottom:0; }
.agri-themed-page .agri-hero-copy { min-width:0; }
.agri-themed-page .agri-overview-hero h1 { margin:13px 0 9px; font-size:clamp(36px,4.8vw,48px); line-height:1.25; }
.agri-themed-page .agri-hero-subtitle { font-size:19px; font-weight:600; line-height:1.65; }
.agri-themed-page .agri-intro { color:var(--muted); font-size:14px; line-height:1.95; }
.agri-themed-page .project-meta-row { display:flex; flex-wrap:wrap; gap:7px; margin:17px 0; }
.agri-themed-page .project-meta-pill { background:#eaf0e7; color:var(--green); font-size:11px; font-weight:600; padding:3px 9px; border-radius:6px; }
.agri-themed-page .hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:21px; }
.agri-themed-page .button { display:inline-flex; justify-content:center; align-items:center; gap:7px; border:1px solid var(--line); border-radius:8px; padding:7px 12px; background:var(--surface); color:var(--green); font-size:12px; font-weight:600; transition:transform .25s ease,background-color .2s ease,border-color .2s ease,box-shadow .25s ease; }
.agri-themed-page .button.primary { background:var(--green); border-color:var(--green); color:white; }
.agri-themed-page .button:hover { background:#edf3ed; border-color:#b9cebf; text-decoration:none; }
.agri-themed-page .button.primary:hover { background:#0c5947; border-color:#0c5947; }
.agri-themed-page .agri-text-link { font-size:12px; font-weight:600; padding:7px 3px; }
.agri-themed-page .agri-summary-panel { min-width:0; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); padding:23px; box-shadow:var(--shadow-soft); }
.agri-themed-page .project-summary-head { display:grid; gap:6px; margin-bottom:17px; }
.agri-themed-page .project-summary-label { color:var(--green); font-size:11px; font-weight:650; letter-spacing:.07em; }
.agri-themed-page .project-summary-head strong { font-size:18px; font-weight:600; }
.agri-themed-page .project-summary-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.agri-themed-page .project-summary-list div { display:grid; gap:4px; border-top:1px solid var(--line); padding-top:12px; }
.agri-themed-page .project-summary-list div:first-child { grid-column:1/-1; padding:0 0 3px; border:0; }
.agri-themed-page .project-summary-list span { font-size:11px; color:var(--muted); }
.agri-themed-page .project-summary-list strong { font-size:15px; line-height:1.5; font-weight:650; white-space:nowrap; font-variant-numeric:tabular-nums; }
.agri-themed-page .project-summary-list div:first-child strong { color:var(--green); font-size:32px; letter-spacing:-.03em; }
.agri-themed-page .project-summary-card > p { margin-top:17px; font-size:12px; line-height:1.85; color:var(--muted); }
.agri-themed-page .agri-summary-link { display:flex; align-items:center; justify-content:space-between; gap:8px; padding-top:14px; margin-top:16px; border-top:1px solid var(--line); font-size:12px; font-weight:600; }
.agri-themed-page .agri-system-flow { display:grid; grid-column:1/-1; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; padding:0; margin:0; list-style:none; }
.agri-themed-page .agri-system-flow li { display:flex; gap:11px; align-items:start; padding:15px 0 0; border-top:2px solid #cbdaca; min-width:0; }
.agri-themed-page .agri-flow-index { color:#7e9384; font-size:11px; font-weight:600; padding-top:3px; }
.agri-themed-page .agri-system-flow li div { display:grid; gap:3px; }
.agri-themed-page .agri-system-flow strong { color:var(--green); font-size:14px; font-weight:600; }
.agri-themed-page .agri-system-flow li div > span { color:var(--muted); font-size:11px; }
.agri-themed-page .suite-switch { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; padding:0 0 30px; }
.agri-themed-page .suite-switch-item { display:flex; gap:9px; align-items:center; justify-content:center; padding:10px 8px; border:1px solid var(--line); border-radius:9px; background:rgba(255,254,251,.7); font-size:12px; color:var(--muted); }
.agri-themed-page .suite-switch-item span { font-size:10px; opacity:.75; }
.agri-themed-page .suite-switch-item strong { font-weight:600; }
.agri-themed-page .suite-switch-item.is-active { color:var(--green); background:#eaf0e7; border-color:#cbdcca; }
.agri-themed-page .suite-switch-item:hover { background:#edf3ed; color:var(--green); border-color:#b9cebf; text-decoration:none; }
.agri-themed-page .section-heading h2 { font-size:clamp(23px,2.7vw,28px); }
.agri-themed-page .section-note { max-width:300px; white-space:normal; text-align:right; }
.agri-themed-page .agri-platform-intro { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:start; gap:15px; margin-bottom:23px; }
.agri-themed-page .agri-platform-intro > p { max-width:690px; color:var(--muted); font-size:14px; line-height:1.9; }
.agri-themed-page .agri-platform-intro .status { margin-top:4px; }
.agri-themed-page .agri-module-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; counter-reset:module; }
.agri-themed-page .content-card,.agri-themed-page .stack-card { min-width:0; background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:21px; box-shadow:var(--shadow-soft); transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease; }
.agri-themed-page .content-card h3,.agri-themed-page .stack-card h3 { font-size:16px; font-weight:650; }
.agri-themed-page .content-card p,.agri-themed-page .stack-card > p:not(.agri-amount) { margin-top:9px; font-size:13px; line-height:1.9; color:var(--muted); }
.agri-themed-page .agri-module-card { counter-increment:module; position:relative; padding-top:18px; }
.agri-themed-page .agri-module-number { display:block; margin-bottom:9px; color:var(--green); font-size:10px; letter-spacing:.1em; }
.agri-themed-page .agri-module-number::before { content:"0" counter(module); }
.agri-themed-page .agri-module-card > p { font-size:12px; }
.agri-themed-page .agri-module-tags { display:flex; flex-wrap:wrap; gap:5px; margin-top:15px; }
.agri-themed-page .agri-module-tags span { border:1px solid #e4e9e0; background:#f3f5ef; border-radius:5px; padding:2px 6px; color:var(--muted); font-size:10px; }
.agri-themed-page .agri-architecture { margin-top:21px; border:1px solid var(--line); border-radius:14px; overflow:hidden; background:#eef3ec; }
.agri-themed-page .agri-architecture-row { display:grid; grid-template-columns:90px minmax(0,1fr); gap:18px; padding:15px 21px; border-bottom:1px solid #dce5d7; align-items:center; }
.agri-themed-page .agri-layer-label { color:var(--green); font-size:12px; font-weight:650; }
.agri-themed-page .agri-architecture-row > div { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px 16px; font-size:12px; }
.agri-themed-page .agri-technical-details { padding:12px 21px; background:rgba(255,254,251,.7); font-size:12px; }
.agri-themed-page .agri-technical-details p { padding-top:10px; color:var(--muted); line-height:1.9; }
.agri-themed-page .agri-platform-boundary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:22px; }
.agri-themed-page .agri-boundary-item { padding-left:14px; border-left:3px solid #c2d6c2; }
.agri-themed-page .agri-boundary-item:nth-child(2) { border-color:#decba3; }
.agri-themed-page .agri-boundary-item:nth-child(3) { border-color:#d9b7a8; }
.agri-themed-page .agri-boundary-item h3 { font-size:13px; font-weight:650; }
.agri-themed-page .agri-boundary-item p { color:var(--muted); margin-top:6px; font-size:12px; line-height:1.9; }
.agri-themed-page .agri-source-note { display:flex; flex-wrap:wrap; gap:8px 18px; align-items:center; margin-top:23px; font-size:11px; color:var(--muted); }
.agri-themed-page .agri-source-note a { font-weight:600; }
.agri-themed-page .agri-brief-grid,.agri-themed-page .agri-pillar-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
.agri-themed-page .agri-status-grid,.agri-themed-page .agri-route-grid,.agri-themed-page .agri-phase-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
.agri-themed-page .agri-group-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px; margin:29px 0 14px; }
.agri-themed-page .agri-group-heading p { font-size:14px; font-weight:650; }
.agri-themed-page .agri-group-heading span,.agri-themed-page .agri-group-heading a { color:var(--muted); font-size:11px; }
.agri-themed-page .agri-group-heading a { color:var(--green); }
.agri-themed-page .agri-amount { color:var(--green); font-size:24px; font-weight:650; line-height:1.4; letter-spacing:-.025em; margin:13px 0 15px; font-variant-numeric:tabular-nums; }
.agri-themed-page .agri-list { list-style:none; padding:0; margin:12px 0 0; display:grid; gap:11px; }
.agri-themed-page .agri-list li { position:relative; padding-left:13px; font-size:12px; line-height:1.9; color:var(--muted); }
.agri-themed-page .agri-list li::before { content:""; position:absolute; width:4px; height:4px; left:0; top:10px; border-radius:50%; background:#87a68a; }
.agri-themed-page .agri-route-card.is-recommended { background:#edf3ed; border-color:#bfd3bd; }
.agri-themed-page .agri-route-card .route-title { color:var(--green); font-size:14px; font-weight:650; line-height:1.65; min-height:46px; margin-top:12px; }
.agri-themed-page .agri-phase-grid .stack-card { border-top:3px solid #aec8b0; }
.agri-themed-page .agri-source-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.agri-themed-page .agri-source-grid .content-card { display:flex; flex-direction:column; padding:18px; }
.agri-themed-page .agri-source-grid strong { font-size:15px; font-weight:650; }
.agri-themed-page .agri-source-grid .content-card p { font-size:12px; margin-bottom:16px; }
.agri-themed-page .agri-source-grid .hero-actions { margin-top:auto; }
.agri-themed-page .agri-source-grid .button { padding:0; background:transparent; border:0; font-size:12px; }
.agri-themed-page .agri-source-grid .button::after { content:"↗"; margin-left:5px; }
.agri-themed-page .contact-section { margin-top:10px; }
.agri-themed-page .contact-actions { display:flex; justify-content:end; flex-wrap:wrap; gap:8px; max-width:390px; }
.agri-themed-page .contact-actions .button.primary { flex-basis:100%; font-size:14px; overflow-wrap:anywhere; }
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .agri-themed-page .content-card:hover,.agri-themed-page .stack-card:hover { transform:translateY(-3px); border-color:#b9cebf; box-shadow:0 12px 25px rgba(33,54,44,.06); }
  .agri-themed-page .button:hover { transform:translateY(-2px); }
}
@media(max-width:1000px) {
  .agri-themed-page .agri-overview-hero { grid-template-columns:minmax(0,1fr) 280px; gap:27px; }
  .agri-themed-page .agri-source-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .agri-themed-page .agri-summary-panel { padding:20px; }
}
@media(max-width:760px) {
  .agri-themed-page .page-trail { padding-top:20px; font-size:11px; }
  .agri-themed-page .agri-overview-hero { grid-template-columns:1fr; gap:24px; padding:27px 0 25px; }
  .agri-themed-page .agri-overview-hero h1 { font-size:36px; }
  .agri-themed-page .agri-hero-subtitle { font-size:17px; }
  .agri-themed-page .agri-intro { font-size:13px; }
  .agri-themed-page .agri-summary-panel { padding:21px; }
  .agri-themed-page .agri-system-flow { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 18px; }
  .agri-themed-page .suite-switch { grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; padding-bottom:25px; }
  .agri-themed-page .suite-switch-item { font-size:11px; padding:9px 4px; gap:6px; }
  .agri-themed-page .section-note { max-width:none; text-align:left; }
  .agri-themed-page .agri-platform-intro > p { font-size:13px; }
  .agri-themed-page .agri-module-grid,.agri-themed-page .agri-brief-grid,.agri-themed-page .agri-pillar-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .agri-themed-page .agri-module-card { padding:16px; }
  .agri-themed-page .agri-architecture-row { grid-template-columns:1fr; gap:9px; padding:15px 17px; }
  .agri-themed-page .agri-architecture-row > div { gap:10px; font-size:11px; }
  .agri-themed-page .agri-technical-details { padding:12px 17px; }
  .agri-themed-page .agri-platform-boundary,.agri-themed-page .agri-status-grid,.agri-themed-page .agri-route-grid,.agri-themed-page .agri-phase-grid { grid-template-columns:1fr; gap:16px; }
  .agri-themed-page .agri-route-card .route-title { min-height:0; }
  .agri-themed-page .contact-actions { justify-content:start; max-width:none; width:100%; }
  .agri-themed-page .contact-actions .button.primary { flex-basis:auto; }
  .agri-themed-page .site-footer { flex-wrap:wrap; }
}
@media(max-width:520px) {
  .agri-themed-page .agri-brief-grid,.agri-themed-page .agri-pillar-grid { grid-template-columns:1fr; }
  .agri-themed-page .agri-source-grid { grid-template-columns:1fr; gap:12px; }
  .agri-themed-page .agri-source-grid .content-card { padding:19px; }
  .agri-themed-page .agri-source-grid .content-card p { margin-bottom:12px; }
  .agri-themed-page .content-card h3,.agri-themed-page .stack-card h3 { font-size:15px; }
}
@media print {
  .agri-themed-page .site-header,.agri-themed-page .suite-switch,.agri-themed-page .skip-link,.agri-themed-page .scroll-progress { display:none; }
  .agri-themed-page .page-shell { max-width:none; padding:0; }
  .agri-themed-page .content-card,.agri-themed-page .stack-card { break-inside:avoid; box-shadow:none; }
}

/* Shared layouts for the dashboard and document pages. */
.agri-themed-page .agri-subpage-hero { gap:28px 38px; }
.agri-themed-page .agri-subpage-summary { padding:21px; }
.agri-themed-page .dashboard-summary,.agri-themed-page .inventory-kpis { display:grid; gap:17px; }
.agri-themed-page .agri-subpage-summary .stack-card,.agri-themed-page .kpi-card { padding:0; background:none; box-shadow:none; border:0; border-radius:0; }
.agri-themed-page .agri-subpage-summary .stack-card + .stack-card,.agri-themed-page .kpi-card + .kpi-card { border-top:1px solid var(--line); padding-top:15px; }
.agri-themed-page .agri-subpage-summary .stack-card h3 { font-size:13px; color:var(--green); }
.agri-themed-page .agri-subpage-summary .stack-card p { font-size:12px; margin-top:5px; line-height:1.85; }
.agri-themed-page .kpi-card { display:grid; gap:5px; min-width:0; }
.agri-themed-page .metric-label { font-size:11px; color:var(--muted); }
.agri-themed-page .kpi-card > strong { font-size:18px; font-weight:650; color:var(--green); line-height:1.55; }
.agri-themed-page .kpi-card > p { font-size:12px; color:var(--muted); line-height:1.8; }
.agri-themed-page .dashboard-note { border-left:3px solid #b7ceb6; padding:8px 13px; margin-top:17px; background:#edf3ed; font-size:12px; color:var(--muted); line-height:1.85; }
.agri-themed-page .dashboard-note strong { color:var(--green); }
.agri-themed-page .dashboard-kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; }
.agri-themed-page .dashboard-kpi-card { padding:20px; border:1px solid var(--line); border-radius:14px; background:var(--surface); box-shadow:var(--shadow-soft); min-width:0; }
.agri-themed-page .dashboard-kpi-card > strong { display:block; color:var(--green); font-size:24px; font-weight:650; line-height:1.5; letter-spacing:-.025em; margin:9px 0; font-variant-numeric:tabular-nums; }
.agri-themed-page .dashboard-kpi-card > p { font-size:12px; line-height:1.85; color:var(--muted); }
.agri-themed-page .dashboard-progress-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); gap:21px; align-items:start; }
.agri-themed-page .progress-card,.agri-themed-page .timeline-card { min-width:0; background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:23px; box-shadow:var(--shadow-soft); }
.agri-themed-page .progress-card h3 { font-size:16px; }
.agri-themed-page .progress-card .agri-list { margin-top:17px; gap:16px; }
.agri-themed-page .progress-list { display:grid; gap:20px; margin-top:20px; }
.agri-themed-page .progress-head { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:5px 13px; }
.agri-themed-page .progress-head strong { font-size:13px; font-weight:600; }
.agri-themed-page .progress-head span { color:var(--green); font-size:11px; }
.agri-themed-page .progress-track { height:6px; margin-top:9px; background:#e9eee5; border-radius:8px; overflow:hidden; }
.agri-themed-page .progress-bar { height:100%; border-radius:inherit; background:#6c9a75; }
.agri-themed-page .progress-item.is-pending .progress-head span { color:var(--gold); }
.agri-themed-page .progress-item.is-pending .progress-track { background:repeating-linear-gradient(120deg,#f1eadb,#f1eadb 5px,#faf7ee 5px,#faf7ee 10px); border:1px solid #e6dbc7; }
.agri-themed-page .progress-item.is-pending .progress-bar { display:none; }
.agri-themed-page .dashboard-step { position:relative; display:grid; grid-template-columns:118px minmax(0,1fr); gap:20px; padding:0 0 25px; }
.agri-themed-page .dashboard-step:last-child { padding-bottom:0; }
.agri-themed-page .dashboard-step::before { content:""; position:absolute; left:127px; top:10px; bottom:-10px; width:1px; background:#d4dfd0; }
.agri-themed-page .dashboard-step:last-child::before { display:none; }
.agri-themed-page .dashboard-step::after { content:""; position:absolute; left:124px; top:9px; width:7px; height:7px; border:2px solid #6f9975; border-radius:50%; background:var(--surface); }
.agri-themed-page .dashboard-step time { width:fit-content; font-size:11px; font-weight:600; color:var(--green); background:#edf3ed; padding:4px 8px; border-radius:6px; }
.agri-themed-page .dashboard-step > div { padding-left:9px; }
.agri-themed-page .dashboard-step h3 { font-size:15px; font-weight:650; }
.agri-themed-page .dashboard-step p { color:var(--muted); font-size:13px; line-height:1.9; margin-top:7px; }
.agri-themed-page .agri-dated-source { margin-top:15px; color:var(--muted); font-size:11px; }
.agri-themed-page .dashboard-next-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
.agri-themed-page .topology-board { display:grid; gap:15px; }
.agri-themed-page .topology-board-summary { padding:21px; border:1px solid var(--line); border-radius:14px; background:#edf3ed; }
.agri-themed-page .topology-summary-copy { display:grid; gap:8px; }
.agri-themed-page .topology-board-kicker { color:var(--green); font-size:11px; font-weight:600; }
.agri-themed-page .topology-summary-copy strong { font-size:16px; font-weight:650; }
.agri-themed-page .topology-summary-copy p { margin-top:7px; font-size:12px; color:var(--muted); }
.agri-themed-page .topology-board-steps { display:flex; flex-wrap:wrap; gap:9px; margin-top:15px; }
.agri-themed-page .topology-summary-step { padding:4px 9px; background:var(--surface); border:1px solid #d9e2d4; border-radius:6px; font-size:11px; color:var(--green); }
.agri-themed-page .topology-band { display:grid; grid-template-columns:145px minmax(0,1fr); gap:23px; padding:21px; border:1px solid var(--line); border-radius:14px; background:var(--surface); }
.agri-themed-page .topology-band-side { display:grid; align-content:start; gap:9px; padding-top:3px; }
.agri-themed-page .topology-band-index { font-size:11px; color:#7e9384; }
.agri-themed-page .topology-band-side strong { font-size:16px; font-weight:650; color:var(--green); }
.agri-themed-page .topology-band-body { min-width:0; }
.agri-themed-page .topology-band-flow { font-size:11px; color:var(--muted); margin-bottom:12px; }
.agri-themed-page .topology-node-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.agri-themed-page .topology-node { min-width:0; padding:15px; border:1px solid #e0e7da; border-radius:10px; background:#f5f7f1; }
.agri-themed-page .topology-node-icon-wrap { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.agri-themed-page .topology-node-icon { display:block; width:29px; height:29px; color:var(--green); }
.agri-themed-page .topology-node-icon svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.agri-themed-page .topology-node-mark,.agri-themed-page .topology-node-tag { color:#7b8c7f; font-size:10px; }
.agri-themed-page .topology-node-tag { display:block; margin-bottom:5px; }
.agri-themed-page .topology-node > strong { font-size:13px; font-weight:600; }
.agri-themed-page .topology-node > p { font-size:11px; color:var(--muted); line-height:1.85; margin-top:7px; }
.agri-themed-page .topology-band-note { padding-top:14px; margin-top:16px; border-top:1px solid var(--line); color:var(--muted); font-size:11px; }
.agri-themed-page .topology-band-list { margin:8px 0 0; padding-left:16px; display:grid; gap:4px; }
.agri-themed-page .topology-band-connector { display:flex; justify-content:center; height:10px; }
.agri-themed-page .topology-band-connector span { width:7px; height:7px; border-right:1px solid #94ad92; border-bottom:1px solid #94ad92; transform:rotate(45deg); }
.agri-themed-page .appendix-chip { display:block; margin-bottom:8px; color:var(--green); font-size:11px; font-weight:650; letter-spacing:.08em; }
.agri-themed-page .inventory-highlight-strip { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; margin-bottom:20px; }
.agri-themed-page .inventory-highlight-card { padding:19px 21px; background:#edf3ed; border:1px solid #d8e4d5; border-radius:12px; min-width:0; }
.agri-themed-page .inventory-highlight-card.is-pending { background:#faf5e9; border-color:#e9dfc9; }
.agri-themed-page .inventory-card-kicker { font-size:11px; color:var(--muted); }
.agri-themed-page .inventory-highlight-card strong { display:block; color:var(--green); font-size:24px; line-height:1.5; font-weight:650; margin:7px 0; font-variant-numeric:tabular-nums; }
.agri-themed-page .inventory-highlight-card.is-pending strong { color:var(--gold); }
.agri-themed-page .inventory-highlight-card p { color:var(--muted); font-size:12px; line-height:1.85; }
.agri-themed-page .inventory-summary-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; margin-bottom:22px; }
.agri-themed-page .report-table-panel { border:1px solid var(--line); border-radius:14px; overflow:hidden; background:var(--surface); min-width:0; }
.agri-themed-page .data-panel-head,.agri-themed-page .report-section-kicker { display:flex; align-items:start; justify-content:space-between; gap:18px; padding:22px; background:#f1f5ee; border-bottom:1px solid var(--line); }
.agri-themed-page .data-panel-head h3,.agri-themed-page .report-section-copy > strong { display:block; font-size:16px; font-weight:650; line-height:1.5; }
.agri-themed-page .data-panel-head p,.agri-themed-page .report-section-copy p { color:var(--muted); margin-top:7px; font-size:12px; line-height:1.85; max-width:590px; }
.agri-themed-page .report-section-index { background:var(--surface); color:var(--green); border:1px solid #d1decb; border-radius:7px; padding:4px 8px; font-size:11px; font-weight:650; }
.agri-themed-page .report-section-copy { flex:1; min-width:0; }
.agri-themed-page .data-panel-metrics { display:flex; flex-wrap:wrap; gap:6px; justify-content:end; flex-shrink:0; max-width:270px; }
.agri-themed-page .data-panel-metrics span { white-space:nowrap; color:var(--green); background:var(--surface); padding:3px 8px; border:1px solid #d8e3d2; border-radius:6px; font-size:11px; }
.agri-themed-page .report-table-panel-pending .data-panel-head { background:#faf5e9; }
.agri-themed-page .inventory-table-wrap { max-width:100%; overflow:auto; overscroll-behavior-inline:contain; scrollbar-color:#bccfba #edf3ed; scrollbar-width:thin; }
.agri-themed-page .inventory-table-wrap:focus-visible { outline:3px solid var(--gold); outline-offset:-3px; }
.agri-themed-page .inventory-table { width:100%; min-width:780px; border-collapse:collapse; table-layout:fixed; font-size:12px; line-height:1.85; }
.agri-themed-page .inventory-table th,.agri-themed-page .inventory-table td { padding:14px 17px; border-bottom:1px solid #e6ebe2; text-align:left; vertical-align:top; overflow-wrap:anywhere; }
.agri-themed-page .inventory-table th { color:var(--green); font-size:11px; font-weight:650; background:#f5f7f1; }
.agri-themed-page .inventory-table td { color:var(--muted); }
.agri-themed-page .inventory-table td:first-child { color:var(--ink); }
.agri-themed-page .inventory-table tbody tr:last-child td { border-bottom:0; }
.agri-themed-page .inventory-table tbody tr:hover td { background:#f7f9f3; }
.agri-themed-page .inventory-money { color:var(--green); white-space:nowrap; font-weight:650; font-variant-numeric:tabular-nums; }
.agri-themed-page .inventory-table .col-money { width:13%; }
.agri-themed-page .inventory-table .col-status { width:11%; }
.agri-themed-page .inventory-table .col-source { width:25%; }
.agri-themed-page .inventory-table .col-file { width:32%; }
.agri-themed-page .inventory-table .col-quantity { width:19%; }
.agri-themed-page .inventory-table .col-model { width:27%; }
.agri-themed-page .inventory-table .col-qty { width:10%; }
.agri-themed-page .inventory-table .col-unit { width:15%; }
.agri-themed-page .inventory-group-row td { background:#edf3ed; padding-top:12px; padding-bottom:12px; }
.agri-themed-page .inventory-group-cell { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:8px; }
.agri-themed-page .inventory-group-cell > strong { display:flex; gap:9px; color:var(--green); font-size:13px; font-weight:650; }
.agri-themed-page .inventory-group-cell > span { font-size:11px; color:var(--muted); }
.agri-themed-page .inventory-group-index { font-size:10px; padding:2px 5px; background:var(--surface); border-radius:4px; }
.agri-themed-page .inventory-subtotal-row td { background:#f5f7f1; font-weight:600; }
.agri-themed-page .inventory-total-row td { background:#e8f0e6; color:var(--green); font-weight:650; border-top:1px solid #ccdcca; }
.agri-themed-page .inventory-badge { display:inline-block; padding:2px 7px; border-radius:5px; background:#edf3ed; color:var(--green); font-size:10px; white-space:nowrap; }
.agri-themed-page .inventory-badge.is-warn,.agri-themed-page .inventory-badge.is-reference { color:#946b28; background:#faf1df; }
.agri-themed-page .file-link { display:inline-flex; flex-wrap:wrap; align-items:center; gap:5px 8px; font-size:11px; }
.agri-themed-page .file-link-name { overflow-wrap:anywhere; }
.agri-themed-page .file-link-preview { font-size:9px; padding:1px 5px; border:1px solid #ccdccc; border-radius:4px; white-space:nowrap; color:var(--green); background:#eff5eb; }
.agri-themed-page .file-link.is-loading { opacity:.6; }
.agri-themed-page .table-scroll-hint { display:none; margin:0; padding:8px 15px; color:var(--muted); background:#f7f8f2; font-size:10px; border-bottom:1px solid var(--line); }
.agri-themed-page .inventory-legend-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; margin-bottom:20px; }
.agri-themed-page .inventory-legend-card { padding:20px; background:var(--surface); border:1px solid var(--line); border-radius:12px; }
.agri-themed-page .inventory-legend-tag { display:block; color:var(--green); font-size:10px; margin-bottom:7px; }
.agri-themed-page .inventory-legend-card h3 { font-size:15px; font-weight:650; }
.agri-themed-page .inventory-legend-card p { color:var(--muted); font-size:12px; line-height:1.9; margin-top:8px; }
.agri-themed-page .inventory-grid-two { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
.agri-themed-page .inventory-detail-card { padding:0; background:none; border:0; box-shadow:none; }
.agri-themed-page .inventory-detail-card > h3 { display:none; }
.agri-themed-page .agri-related-links h2 { font-size:22px; }
.agri-themed-page .agri-related-links .contact-actions { max-width:620px; justify-content:end; }
.agri-themed-page .agri-related-links .contact-actions .button.primary { flex-basis:auto; font-size:12px; }
.agri-themed-page .page-footer-nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding:25px 0 4px; }
.agri-themed-page .page-footer-link { display:grid; gap:5px; padding:13px 16px; border:1px solid var(--line); border-radius:10px; background:rgba(255,254,251,.65); }
.agri-themed-page .page-footer-link span { font-size:10px; color:var(--muted); }
.agri-themed-page .page-footer-link strong { font-size:12px; font-weight:600; }
.agri-themed-page .page-footer-link:hover { text-decoration:none; background:#edf3ed; }
.agri-themed-page .contracts-gate { display:none; padding:40px 0; }
.agri-themed-page .agri-contract-page.is-locked .contracts-gate { display:block; }
.agri-themed-page .agri-contract-page.is-locked .contracts-protected { display:none; }
.agri-themed-page .contracts-gate-shell { max-width:560px; margin:25px auto; padding:30px; background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow-soft); }
.agri-themed-page .contracts-gate-shell h1 { font-size:28px; line-height:1.4; font-weight:650; margin:12px 0; }
.agri-themed-page .contracts-gate-text { font-size:13px; line-height:1.9; color:var(--muted); }
.agri-themed-page .contracts-gate-form { display:grid; gap:10px; margin-top:23px; }
.agri-themed-page .contracts-gate-label { font-size:12px; font-weight:600; }
.agri-themed-page .contracts-gate-input { font:inherit; padding:10px 12px; border:1px solid #cedccc; border-radius:8px; background:white; width:100%; min-width:0; }
.agri-themed-page .contracts-gate-input:focus-visible { outline:2px solid var(--green); outline-offset:2px; }
.agri-themed-page .contracts-gate-form .button { justify-self:start; padding:8px 20px; margin-top:4px; }
.agri-themed-page .contracts-gate-feedback { min-height:22px; font-size:12px; color:#a45332; margin-top:12px; }
.agri-themed-page:has(.agri-contract-page.is-locked) .site-nav,
.agri-themed-page:has(.agri-contract-page.is-locked) .menu-toggle { display:none; }
@media(max-width:1000px) {
  .agri-themed-page .topology-band { grid-template-columns:120px minmax(0,1fr); gap:18px; }
  .agri-themed-page .data-panel-head,.agri-themed-page .report-section-kicker { flex-wrap:wrap; }
  .agri-themed-page .data-panel-metrics { justify-content:start; }
}
@media(max-width:760px) {
  .agri-themed-page .dashboard-kpi-grid,.agri-themed-page .inventory-highlight-strip { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .agri-themed-page .dashboard-kpi-card { padding:17px; }
  .agri-themed-page .dashboard-kpi-card > strong { font-size:20px; }
  .agri-themed-page .dashboard-progress-grid,.agri-themed-page .dashboard-next-grid,.agri-themed-page .inventory-summary-grid,.agri-themed-page .inventory-grid-two { grid-template-columns:1fr; }
  .agri-themed-page .progress-card,.agri-themed-page .timeline-card { padding:19px; }
  .agri-themed-page .dashboard-step { grid-template-columns:1fr; gap:8px; padding:0 0 23px 17px; }
  .agri-themed-page .dashboard-step::before { left:3px; }
  .agri-themed-page .dashboard-step::after { left:0; }
  .agri-themed-page .dashboard-step > div { padding:0; }
  .agri-themed-page .dashboard-step p { font-size:12px; }
  .agri-themed-page .topology-band { grid-template-columns:1fr; padding:18px; gap:15px; }
  .agri-themed-page .topology-band-side { display:flex; align-items:center; }
  .agri-themed-page .topology-node-grid { grid-template-columns:1fr; gap:10px; }
  .agri-themed-page .topology-node { padding:15px; }
  .agri-themed-page .topology-node-icon-wrap { float:right; margin:0 0 6px 15px; gap:9px; }
  .agri-themed-page .inventory-legend-grid { grid-template-columns:1fr; gap:12px; }
  .agri-themed-page .inventory-highlight-card { padding:17px; }
  .agri-themed-page .inventory-highlight-card strong { font-size:20px; }
  .agri-themed-page .inventory-highlight-strip > :last-child:nth-child(odd) { grid-column:1/-1; }
  .agri-themed-page .data-panel-head,.agri-themed-page .report-section-kicker { padding:19px; gap:12px; }
  .agri-themed-page .report-section-copy { flex-basis:calc(100% - 54px); }
  .agri-themed-page .data-panel-metrics { max-width:none; }
  .agri-themed-page .table-scroll-hint { display:block; }
  .agri-themed-page .agri-related-links .contact-actions { justify-content:start; }
  .agri-themed-page .page-footer-nav { grid-template-columns:1fr; gap:9px; }
  .agri-themed-page .page-footer-link { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px; }
  .agri-themed-page .contracts-gate { padding:24px 0; }
  .agri-themed-page .contracts-gate-shell { padding:22px; margin:14px auto; }
  .agri-themed-page .contracts-gate-shell h1 { font-size:25px; }
}
@media print {
  .agri-themed-page .inventory-table-wrap { overflow:visible; }
  .agri-themed-page .inventory-table { min-width:0; font-size:9px; }
  .agri-themed-page .inventory-table th,.agri-themed-page .inventory-table td { padding:7px; }
  .agri-themed-page .page-footer-nav,.agri-themed-page .table-scroll-hint { display:none; }
}
