.association-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin:6px 0 18px;
}
.association-summary-grid>div{
  min-width:0;
  padding:14px 10px;
  border:1px solid var(--line);
  border-radius:20px;
  background:var(--card);
  text-align:center;
}
.association-summary-grid b{display:block;font-size:26px;color:var(--gold)}
.association-summary-grid span{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.25}
.breed-association-card{overflow:hidden}
.breed-association-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.breed-association-head small{display:block;color:var(--gold);font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.breed-association-head h2{margin:4px 0 0;font-size:25px}
.breed-association-head>strong{flex:0 0 auto;max-width:42%;padding:8px 11px;border-radius:999px;background:#f4ead6;color:#6c4b17;font-size:12px;text-align:center}
.association-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0}
.association-meta-grid span,.association-contact{padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.45);font-size:13px;overflow-wrap:anywhere}
.association-contact{display:flex;flex-direction:column;gap:3px;margin:12px 0;color:var(--muted)}
.association-contact b{color:var(--ink)}
.association-horse-chips{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}
.association-horse-chips span{padding:8px 11px;border-radius:999px;background:#eaf3e4;border:1px solid #cfe0c6;color:#315531;font-weight:800;font-size:13px}
.association-horse-chips em{color:var(--muted);font-size:13px}
.association-form-section{margin:22px 0 4px;padding-bottom:7px;border-bottom:1px solid var(--line);font-family:Georgia,serif;color:var(--ink)}
.association-form-section:first-of-type{margin-top:4px}
.association-selection-actions{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
.association-horse-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 18px}
.association-horse-choice{display:flex;align-items:flex-start;gap:9px;margin:0;padding:11px;border:1px solid var(--line);border-radius:15px;background:var(--card);color:var(--ink);cursor:pointer}
.association-horse-choice input{width:auto;margin:3px 0 0;flex:0 0 auto}
.association-horse-choice span{min-width:0}
.association-horse-choice b,.association-horse-choice small{display:block;overflow-wrap:anywhere}
.association-horse-choice small{margin-top:2px;color:var(--muted);font-weight:500}
.association-detected-rule{
  margin:10px 0 12px;
  padding:11px 12px;
  border:1px solid #cbdcc3;
  border-radius:14px;
  background:#eef6e9;
  color:#355132;
  font-size:13px;
  line-height:1.45;
}
.association-rule-toggle{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:12px 0;
  padding:12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--card);
  cursor:pointer;
}
.association-rule-toggle input{width:auto;margin:3px 0 0;flex:0 0 auto}
.association-rule-fields{margin:10px 0 18px;padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.36)}
.association-rule-fields.hidden{display:none}
.association-rule-fields h4{margin:18px 0 8px}
.association-rule-row{
  display:grid;
  grid-template-columns:1.25fr .9fr .65fr 1.15fr;
  gap:8px;
  margin:8px 0;
  padding:10px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--card);
}
.association-rule-row label{font-size:11px}
.association-foal-rule-state{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:12px 0;
  padding:11px 12px;
  border-radius:15px;
  font-size:12px;
}
.association-foal-rule-state.has-rule{border:1px solid #bcd8b1;background:#edf7e9;color:#31552d}
.association-foal-rule-state.needs-rule{border:1px solid #e4d4af;background:#fbf5e8;color:#6b5324}
.association-foal-rule-state b,.association-foal-rule-state span{display:block}
.association-foal-rule-state span{margin-top:2px;line-height:1.35}
.association-foal-rule-state a{flex:0 0 auto;color:inherit;font-weight:800}
@media(max-width:420px){
  .association-summary-grid{grid-template-columns:1fr}
  .association-summary-grid>div{display:flex;align-items:center;gap:12px;text-align:left}
  .association-summary-grid b{font-size:22px}
  .association-summary-grid span{margin:0}
  .breed-association-head{display:block}
  .breed-association-head>strong{display:inline-block;max-width:100%;margin-top:9px}
  .association-meta-grid,.association-horse-grid{grid-template-columns:1fr}
  .association-rule-row{grid-template-columns:1fr}
  .association-foal-rule-state{align-items:flex-start;flex-direction:column}
}
@media(min-width:421px) and (max-width:760px){.association-rule-row{grid-template-columns:1fr 1fr}}
