/* V50-K 讲师目录筛选（no-JS 可用；390–1440 响应式；键盘焦点可见） */
.fd50{--fd50-ink:#163c3a;--fd50-muted:#586a66;--fd50-paper:#fbfaf6;--fd50-line:#d9ded6;--fd50-accent:#b36b48;--fd50-soft:#eef1e9;color:var(--fd50-ink);overflow-wrap:anywhere;padding-bottom:70px}
.fd50 a:focus-visible,.fd50 button:focus-visible,.fd50 input:focus-visible,.fd50 select:focus-visible{outline:3px solid var(--fd50-accent);outline-offset:3px}
.fd50 .eyebrow{font-size:12px;letter-spacing:.12em;color:var(--fd50-muted)}
.fd50 h1,.fd50 h2,.fd50 p{max-width:100%}

.fd50-filter{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:14px;align-items:end;margin:34px 0 22px;padding:24px;border:1px solid var(--fd50-line);border-radius:6px;background:var(--fd50-soft)}
.fd50-field{min-width:0}
.fd50-field label{display:block;font-size:13px;font-weight:600;margin-bottom:8px;color:var(--fd50-ink)}
.fd50-field input,.fd50-field select{width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--fd50-line);border-radius:4px;background:#fff;color:var(--fd50-ink);font-size:15px;line-height:1.4}
.fd50-submit{display:flex;flex-direction:column;gap:8px;align-items:stretch}
.fd50-submit .button{min-height:44px;white-space:nowrap;text-align:center}
.fd50-submit .text-link{font-size:14px;text-align:center}

.fd50-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 8px}
.fd50-chip{display:inline-flex;align-items:center;min-height:34px;padding:5px 14px;border:1px solid var(--fd50-line);border-radius:30px;background:var(--fd50-paper);font-size:13px;color:var(--fd50-ink);text-decoration:none}
.fd50-chip-reset{border-color:var(--fd50-accent);color:var(--fd50-accent)}
.fd50-count{margin:18px 0 22px;color:var(--fd50-muted);font-size:15px}

.fd50-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.fd50-card{border:1px solid var(--fd50-line);border-radius:6px;background:var(--fd50-paper);padding:25px;min-width:0;display:flex;flex-direction:column;gap:12px}
.fd50-card h2{font-size:21px;line-height:1.4;margin:0}
.fd50-card h2 a{color:inherit}
.fd50-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.fd50-tag{display:inline-flex;align-items:center;min-height:28px;padding:3px 11px;border-radius:30px;border:1px solid var(--fd50-line);font-size:12px;color:var(--fd50-muted);background:#fff}
.fd50-current{border-color:#9db8a4;color:#33523c;background:#eef4ec}
.fd50-historical{border-color:#cbb98f;color:#6b5a2e;background:#faf5e8}
.fd50-retired{border-color:#cbb98f;color:#6b5a2e;background:#faf5e8}
.fd50-ungraded{border-style:dashed}
.fd50-kind{border-color:var(--fd50-accent);color:var(--fd50-accent)}
.fd50-basis-obs{border-color:#7d9b86;color:#2f5240;background:#eef4ec}
.fd50-basis-sched{border-color:#a8b6c8;color:#3c4f66;background:#eef2f7}
.fd50-schools{margin:0;font-size:13px;color:var(--fd50-muted);display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.fd50-school{display:inline-block;padding:2px 9px;border:1px solid var(--fd50-line);border-radius:4px;background:#fff;color:var(--fd50-ink)}
.fd50-basis{font-size:12px}
.fd50-scope{margin:0;font-size:13px;line-height:1.7;color:var(--fd50-muted)}
.fd50-courses{margin:0;font-size:13px;color:var(--fd50-muted);display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.fd50-course{display:inline-block;padding:2px 9px;border-radius:4px;background:var(--fd50-soft);color:var(--fd50-ink)}
.fd50-shared{color:var(--fd50-muted);font-size:12px}
.fd50-actions{margin-top:auto;display:flex;flex-wrap:wrap;gap:14px}
.fd50-actions .text-link{display:inline-flex;align-items:center;min-height:44px}

.fd50-empty{margin:26px 0 10px}
.fd50-empty .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.fd50-empty .button{min-height:44px}

@media(max-width:1100px){
 .fd50-filter{grid-template-columns:repeat(2,minmax(0,1fr));}
 .fd50-submit{grid-column:1/-1;flex-direction:row;align-items:center}
 .fd50-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
 .fd50-filter{grid-template-columns:1fr;padding:20px}
 .fd50-grid{grid-template-columns:1fr}
 .fd50-card{padding:22px 20px}
 .fd50-submit{flex-direction:column;align-items:stretch}
}
@media print{
 .fd50-filter,.fd50-chip-reset{display:none}
 .fd50-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
