/* 乡村振兴测试版：复用系统主题变量，独立维护，不影响原有模块。 */
.rural-page { position: relative; }
.rural-test-badge { display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;background:rgba(16,185,129,.12);color:#059669;font-size:.7rem;font-weight:700;vertical-align:middle;margin-left:8px; }
.rural-source-note { color:var(--text-secondary);font-size:.74rem;line-height:1.6; }
.rural-summary { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0; }
.rural-stat { display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(135deg,var(--bg),var(--card-bg));min-width:0; }
.rural-stat-icon { width:42px;height:42px;display:grid;place-items:center;flex:0 0 42px;border-radius:13px;background:rgba(16,185,129,.12);color:#059669;font-size:1.1rem; }
.rural-stat-value { font-size:1.45rem;font-weight:800;line-height:1.1;color:var(--text); }
.rural-stat-label { margin-top:5px;color:var(--text-secondary);font-size:.72rem;white-space:nowrap; }
.rural-section { margin-top:16px;padding-top:16px;border-top:1px solid var(--border); }
.rural-section-title { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px; }
.rural-section-title h3 { margin:0;color:var(--text);font-size:.94rem; }
.rural-section-title span { color:var(--text-secondary);font-size:.72rem; }
.rural-helper-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:10px; }
.rural-helper-card { text-align:left;padding:12px 13px;border:1px solid var(--border);border-radius:13px;background:var(--bg);color:var(--text);cursor:pointer;transition:border-color .2s,transform .2s,background .2s; }
.rural-helper-card:hover { transform:translateY(-1px);border-color:#10b981; }
.rural-helper-card.active { border-color:#10b981;background:rgba(16,185,129,.10);box-shadow:0 0 0 2px rgba(16,185,129,.08); }
.rural-helper-name { display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:750;font-size:.86rem; }
.rural-helper-meta { margin-top:6px;color:var(--text-secondary);font-size:.7rem; }
.rural-filterbar { display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:14px 0; }
.rural-filterbar input,.rural-filterbar select,.rural-form input,.rural-form select,.rural-form textarea { border:1px solid var(--border);border-radius:10px;background:var(--bg);color:var(--text);padding:9px 11px;font:inherit;font-size:.78rem;outline:none; }
.rural-filterbar input:focus,.rural-filterbar select:focus,.rural-form input:focus,.rural-form select:focus,.rural-form textarea:focus { border-color:#10b981;box-shadow:0 0 0 3px rgba(16,185,129,.09); }
.rural-filterbar input { flex:1 1 230px;min-width:160px; }
.rural-filterbar select { flex:0 1 180px;min-width:130px; }
.rural-filterbar .btn { white-space:nowrap; }
.rural-table-wrap { width:100%;max-height:64vh;overflow:auto;border:1px solid var(--border);border-radius:12px; }
.rural-table-wrap .data-table { min-width:1180px;margin:0; }
.rural-table-wrap .data-table th { position:sticky;top:0;z-index:2;background:var(--card-bg); }
.rural-table-wrap .data-table td { vertical-align:middle;font-size:.74rem; }
.rural-table-wrap .data-table tr:hover td { background:rgba(16,185,129,.045); }
.rural-chip { display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;font-size:.66rem;font-weight:700;white-space:nowrap; }
.rural-chip.ok { color:#047857;background:rgba(16,185,129,.12); }
.rural-chip.warn { color:#b45309;background:rgba(245,158,11,.14); }
.rural-chip.info { color:#2563eb;background:rgba(59,130,246,.11); }
.rural-action-link { border:0;background:transparent;color:#059669;font:inherit;font-size:.72rem;font-weight:700;cursor:pointer;padding:4px 5px;white-space:nowrap; }
.rural-action-link:hover { text-decoration:underline; }
.rural-action-link.danger { color:#dc2626; }
.rural-empty { padding:42px 18px;text-align:center;color:var(--text-secondary);border:1px dashed var(--border);border-radius:14px;background:var(--bg); }
.rural-empty i { display:block;font-size:2rem;opacity:.38;margin-bottom:10px; }
.rural-archive-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px; }
.rural-archive-card { padding:15px;border:1px solid var(--border);border-radius:15px;background:var(--bg);min-width:0; }
.rural-archive-card:hover { border-color:rgba(16,185,129,.6); }
.rural-archive-head { display:flex;align-items:flex-start;justify-content:space-between;gap:10px; }
.rural-archive-name { color:var(--text);font-size:.95rem;font-weight:800; }
.rural-archive-code { margin-top:4px;color:var(--text-secondary);font-size:.66rem;word-break:break-all; }
.rural-archive-meta { display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:13px 0;color:var(--text-secondary);font-size:.7rem; }
.rural-archive-meta b { display:block;color:var(--text);font-size:.75rem;margin-top:2px;font-weight:650; }
.rural-card-actions { display:flex;gap:8px;justify-content:flex-end;border-top:1px solid var(--border);padding-top:10px; }
.rural-modal { position:fixed;inset:0;z-index:10020;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(2,6,23,.66);backdrop-filter:blur(5px); }
.rural-modal.show { display:flex; }
.rural-modal-card { width:min(920px,96vw);max-height:90vh;overflow:auto;border:1px solid var(--border);border-radius:20px;background:var(--card-bg);color:var(--text);box-shadow:0 24px 80px rgba(0,0,0,.35); }
.rural-modal-card.small { width:min(660px,96vw); }
.rural-modal-head { position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;border-bottom:1px solid var(--border);background:var(--card-bg); }
.rural-modal-head h2 { margin:0;font-size:1.08rem; }
.rural-modal-close { border:0;background:transparent;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;line-height:1;padding:5px; }
.rural-modal-body { padding:20px 22px; }
.rural-detail-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px; }
.rural-detail-item { padding:11px;border-radius:11px;background:var(--bg);min-width:0; }
.rural-detail-item label { display:block;color:var(--text-secondary);font-size:.66rem;margin-bottom:4px; }
.rural-detail-item div { color:var(--text);font-size:.77rem;font-weight:600;word-break:break-all; }
.rural-detail-section { margin-top:18px; }
.rural-detail-section h3 { font-size:.86rem;margin:0 0 10px;color:var(--text); }
.rural-form { display:grid;grid-template-columns:1fr 1fr;gap:13px; }
.rural-form-field { min-width:0; }
.rural-form-field.full { grid-column:1/-1; }
.rural-form-field label { display:block;color:var(--text-secondary);font-size:.72rem;margin-bottom:6px; }
.rural-form-field input,.rural-form-field select,.rural-form-field textarea { width:100%; }
.rural-form-field textarea { min-height:82px;resize:vertical; }
.rural-form-actions { display:flex;justify-content:flex-end;gap:9px;margin-top:18px;padding-top:15px;border-top:1px solid var(--border); }
.rural-phone-note { padding:10px 12px;border-radius:10px;background:rgba(245,158,11,.10);color:#b45309;font-size:.72rem;line-height:1.6;margin-bottom:12px; }
.rural-monitor-note { padding:12px 14px;border-radius:10px;background:rgba(5,150,105,.08);color:#047857;border:1px solid rgba(5,150,105,.22);font-size:.78rem;line-height:1.7; }
.rural-monitor-note i { margin-right:6px; }
.rural-id-cell { font-family:Consolas,"Courier New",monospace;letter-spacing:.2px;white-space:nowrap; }
.rural-danger-btn:not(:disabled) { color:#b91c1c;border-color:rgba(220,38,38,.35); }
.rural-danger-btn:not(:disabled):hover { background:rgba(220,38,38,.07); }
.rural-table-wrap input[type="checkbox"], .rural-form input[type="checkbox"] { width:16px;height:16px;accent-color:#059669;vertical-align:middle;cursor:pointer; }
.rural-form-field label input[type="checkbox"] { width:auto;height:auto;margin-right:6px; }
.rural-action-link + .rural-action-link { margin-left:3px; }

@media (max-width: 1100px) {
  .rural-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rural-archive-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rural-detail-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 768px) {
  .rural-page .page-header { align-items:flex-start; }
  .rural-page .page-header h1 { font-size:1.08rem; }
  .rural-test-badge { margin-left:4px;padding:2px 7px; }
  .rural-source-note { display:none; }
  .rural-summary { gap:8px;margin:12px 0; }
  .rural-stat { padding:11px;gap:9px;border-radius:13px; }
  .rural-stat-icon { width:34px;height:34px;flex-basis:34px;border-radius:10px;font-size:.9rem; }
  .rural-stat-value { font-size:1.16rem; }
  .rural-stat-label { font-size:.64rem; }
  .rural-helper-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:8px; }
  .rural-helper-card { padding:10px; }
  .rural-filterbar { align-items:stretch;gap:8px; }
  .rural-filterbar input,.rural-filterbar select { flex:1 1 100%;width:100%;min-width:0; }
  .rural-filterbar .btn { flex:1 1 auto; }
  .rural-table-wrap { max-height:62vh; }
  .rural-table-wrap .data-table { min-width:980px; }
  .rural-archive-grid { grid-template-columns:1fr;gap:9px; }
  .rural-modal { padding:8px;align-items:flex-end; }
  .rural-modal-card,.rural-modal-card.small { width:100%;max-height:94dvh;border-radius:18px 18px 10px 10px; }
  .rural-modal-head { padding:15px 16px; }
  .rural-modal-body { padding:15px 16px; }
  .rural-form { grid-template-columns:1fr; }
  .rural-form-field.full { grid-column:auto; }
  .rural-detail-grid { gap:8px; }
  .rural-detail-item { padding:9px; }
}
@media (max-width: 380px) {
  .rural-summary { grid-template-columns:1fr 1fr; }
  .rural-stat-icon { display:none; }
  .rural-detail-grid { grid-template-columns:1fr; }
}

/* 独生子女纯二女户名单：信息居中显示 */
#onlychildSubContent .data-table th, #onlychildSubContent .data-table td { text-align:center; }
#onlychildSubContent .rural-filterbar input, #onlychildSubContent .rural-filterbar select { text-align:center; }
#onlychildSubContent .rural-filterbar input::placeholder { text-align:center; }
