/* templates/public/federal_hub.html */

.breadcrumb{max-width:72rem;margin:1.25rem auto 0;padding:0 1rem;font-size:.9rem}
.breadcrumb a{color:var(--link,#1a5d3a)}
.guide-list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}
.guide-list li{margin:0}
.guide-card{display:block;border:1px solid var(--border,#d8d8d8);border-radius:.5rem;padding:1rem 1.1rem;text-decoration:none;background:var(--surface,#fff)}
.guide-card:hover{border-color:var(--link,#1a5d3a)}
.guide-card strong{display:block;font-size:1.05rem;color:var(--text,#1c1c1c)}
.guide-card small{display:block;margin-top:.3rem;color:var(--muted,#555)}
.empty-group{border:1px dashed var(--border,#d8d8d8);border-radius:.5rem;padding:1rem 1.1rem;color:var(--muted,#555);margin:0}


/* templates/public/coverage.html */

.breadcrumb{max-width:72rem;margin:1.25rem auto 0;padding:0 1rem;font-size:.9rem}
.breadcrumb a{color:var(--link,#1a5d3a)}
.status-official{font-weight:600;color:var(--text,#1c1c1c)}
.status-record{color:var(--text,#1c1c1c)}
.status-none{color:var(--muted,#555)}
.coverage-note{max-width:72rem;margin:0 auto 1rem;padding:0 1rem;font-size:.9rem}


/* templates/public/authorities_directory.html */

.auth-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(20rem,1fr))}
.auth-card{min-width:0;overflow-wrap:anywhere;border:1px solid var(--border,#d8d8d8);border-radius:.5rem;padding:1rem 1.1rem;background:var(--surface,#fff)}
.auth-card h3{margin:.15rem 0 .5rem;font-size:1rem}
.auth-card dl{margin:0;display:grid;gap:.4rem}
.auth-card dl div{display:grid;grid-template-columns:8rem 1fr;gap:.5rem;font-size:.88rem}
.auth-card dt{color:var(--muted,#555)}
.auth-card dd{margin:0}
.auth-card .confirm-note{font-size:.8rem;color:var(--muted,#555);margin-top:.5rem}
.auth-card dd,.auth-card a{min-width:0;overflow-wrap:anywhere;word-break:break-word}
@media (max-width: 600px){.auth-grid{grid-template-columns:minmax(0,1fr)}.auth-card dl div{grid-template-columns:minmax(6rem,32%) minmax(0,1fr)}}
.auth-card .retained{font-size:.8rem;color:var(--muted,#555)}
.federal-list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}
.federal-list li{border:1px solid var(--border,#d8d8d8);border-radius:.5rem;padding:1rem 1.1rem;background:var(--surface,#fff)}
.federal-list strong{display:block}
.federal-list small{color:var(--muted,#555);display:block;margin-top:.25rem}
.auth-intro{max-width:72rem;margin:0 auto 1rem;padding:0 1rem;font-size:.9rem}


/* templates/public/owner_dashboard.html */

.owner-banner{max-width:72rem;margin:1.25rem auto 0;padding:.6rem 1rem;border:1px solid #b08d3a;background:#fdf6e3;border-radius:.4rem;font-size:.9rem}
.owner-banner strong{color:#7a5c14}
.breadcrumb{max-width:72rem;margin:1.25rem auto 0;padding:0 1rem;font-size:.9rem}
.breadcrumb a{color:var(--link,#1a5d3a)}
.stat-cards{max-width:72rem;margin:0 auto;padding:0 1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem}
.stat-card{border:1px solid var(--border,#ddd);border-radius:.5rem;padding:1rem;background:var(--surface,#fff)}
.stat-card .stat-value{font-size:1.6rem;font-weight:700;line-height:1.1}
.stat-card .stat-label{font-size:.85rem;color:var(--muted,#555);margin-top:.25rem}
.status-official{font-weight:600;color:var(--text,#1c1c1c)}
.status-record{color:var(--text,#1c1c1c)}
.status-unresolved{color:#8a5a00}
.status-none{color:var(--muted,#555)}
.state-row-yes{color:var(--link,#1a5d3a)}
.state-row-no{color:var(--muted,#999)}
.detail-note{max-width:72rem;margin:0 auto 1rem;padding:0 1rem;font-size:.9rem;color:var(--muted,#555)}


/* templates/public/tools/source_log_builder.html */

  .data-table { width: 100%; border-collapse: collapse; margin: 12px 0; }
  .data-table th, .data-table td { border: 1px solid var(--line, #ddd); padding: 8px 10px; text-align: left; vertical-align: top; font-size: .9rem; }
  .data-table th { background: var(--cream, #f5f1e8); }
  .tool-actions { display: flex; gap: 10px; flex-wrap: wrap; margin: 14px 0 6px; }
  @media print {
    #source-log-form, .tool-actions, .nav-toggle, .site-footer, .site-header { display: none !important; }
    .data-table th, .data-table td { border-color: #000; }
  }


/* templates/public/tools/farm_event_research_plan.html */

  /* Printable research packet: on paper, hide navigation and chrome and keep only the plan. */
  @media print {
    .no-print { display: none !important; }
    .research-packet { box-shadow: none !important; border: none !important; padding: 0 !important; }
    .research-packet section { break-inside: avoid; }
  }


/* templates/public/tools/_planning_checklist_body.html */

  .checklist { list-style: none; margin: 0; padding: 0; }
  .checklist-item { display: flex; align-items: center; gap: 10px; padding: 8px 4px; border-bottom: 1px solid var(--line, #e5e0d5); flex-wrap: wrap; }
  .checklist-item:last-child { border-bottom: 0; }
  .checklist-label { display: flex; align-items: center; gap: 10px; flex: 0 0 auto; cursor: pointer; }
  .checklist-label input[type="checkbox"] { width: 18px; height: 18px; accent-color: var(--evergreen-700, #1f5c4d); }
  .checklist-notes { flex: 1 1 240px; min-width: 180px; border: 1px solid var(--line, #ddd); border-radius: 4px; padding: 6px 8px; font-size: .9rem; background: var(--paper, #fff); }
  .checklist-item.done .checklist-label span { text-decoration: line-through; color: var(--ink-muted, #666); }
  @media print {
    .checklist-item { break-inside: avoid; }
    .checklist-notes { border: 0; border-bottom: 1px solid #000; background: none; }
    .checklist-label input[type="checkbox"] { accent-color: #000; }
  }


/* templates/public/tools/agency_question_builder.html */

  .topic-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 8px; margin: 0 0 16px; padding: 0; border: 0; }
  .topic-option { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border: 1px solid var(--line, #ddd); border-radius: 6px; background: var(--paper, #fff); }
  .question-list { margin: 12px 0 0; padding-left: 1.4em; }
  .question-list li { margin: 0 0 10px; }
  .tool-actions { display: flex; gap: 10px; flex-wrap: wrap; margin: 14px 0 6px; }
  @media print {
    #aq-form, .tool-actions, .nav-toggle, .site-footer, .site-header { display: none !important; }
    .question-list li { margin: 0 0 12px; }
  }
