.public-horse-card { display:flex; flex-wrap:wrap; gap:28px; align-items:flex-start; justify-content:center; max-width:900px; margin:20px auto; padding:24px; border-radius:18px; background:rgba(255,255,255,.08); box-shadow:0 10px 30px rgba(0,0,0,.2); }
.public-horse-image { flex:0 1 400px; text-align:center; }
.public-horse-details { flex:1 1 250px; min-width:240px; }
.public-horse-details h2 { margin:5px 0 0; font-size:30px; }
.public-horse-type { margin-top:4px; font-style:italic; opacity:.85; }
.public-horse-details dl { display:grid; grid-template-columns:110px 1fr; gap:8px 14px; margin:22px 0; }
.public-horse-details dt { font-weight:bold; }
.public-horse-details dd { margin:0; }
.public-horse-actions { display:flex; flex-wrap:wrap; gap:10px; }
.horse-button { display:inline-block; padding:10px 16px; border-radius:999px; background:#72533b; color:#fff !important; text-decoration:none; font-weight:bold; box-shadow:0 3px 8px rgba(0,0,0,.25); }
.horse-button:hover { transform:translateY(-1px); filter:brightness(1.12); }
.horse-pat { background:#a35c74; }
.pedigree-heading { max-width:1050px; margin:0 auto 18px; text-align:center; }
.pedigree-generation { max-width:1120px; margin:20px auto 34px; }
.pedigree-generation h2 { padding-bottom:7px; border-bottom:2px solid rgba(255,255,255,.22); }
.pedigree-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(145px,1fr)); gap:14px; }
.pedigree-card { min-width:0; padding:12px; text-align:center; border-radius:13px; background:rgba(255,255,255,.09); box-shadow:0 4px 12px rgba(0,0,0,.16); }
.pedigree-card a { display:block; color:inherit; text-decoration:none; }
.pedigree-card .pet-layer-canvas { display:block !important; margin:0 auto 8px; border-radius:9px; }
.pedigree-card strong,.pedigree-card span { display:block; overflow-wrap:anywhere; }
.pedigree-card span { margin-top:5px; font-size:11px; opacity:.78; }
.pet-public-links { margin:10px 0 18px; font-weight:bold; }
@media (max-width:600px){ .public-horse-card{padding:12px}.public-horse-details{min-width:0}.public-horse-details dl{grid-template-columns:90px 1fr}.pedigree-grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
.public-race-record{margin:16px 0;padding:14px;border-left:5px solid #d2a548;border-radius:10px;background:#fff6dc}.public-race-record h3,.public-race-record p{margin:4px 0}
