.horse-card .card-link{display:block;color:inherit;text-decoration:none;height:100%}.horse-card-photo{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:14px 14px 0 0}.horse-profile-photo{width:100%;max-height:360px;object-fit:cover;border-radius:14px;margin-bottom:1rem}.detail-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:1.25rem}.detail-span-2{grid-column:1/-1}.detail-list{display:grid;grid-template-columns:minmax(130px,.45fr) 1fr;gap:.6rem 1rem}.detail-list dt{font-weight:700}.detail-list dd{margin:0}.stack-list{display:grid;gap:.75rem}.stack-item{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:.85rem 0;border-top:1px solid var(--border-color,rgba(127,127,127,.2))}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-span-2{grid-column:1/-1}.form-field{display:grid;gap:.4rem}.form-field input:not([type=checkbox]),.form-field select,.form-field textarea{width:100%}.form-field ul{list-style:none;padding:0;margin:.35rem 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.35rem .8rem}.form-field ul label{display:flex;gap:.45rem;align-items:flex-start}.status-good,.status-current{font-weight:700;color:var(--success,#2f7a4f)}.status-warn,.status-expiring{font-weight:700;color:var(--warning,#a36a16)}.status-bad,.status-expired{font-weight:700;color:var(--danger,#b64d4d)}.filter-row,.button-row,.card-heading-row{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap}.card-heading-row{justify-content:space-between}.empty-state{grid-column:1/-1;text-align:center;padding:3rem 1rem}.help-text{font-size:.88rem;opacity:.72}.field-error{font-size:.9rem;color:var(--danger,#b64d4d);font-weight:700}

/* v2.1.2 final presentation polish */
.horse-module-intro{border-bottom:2px solid var(--club-brass)}.horse-module-intro h1{font-size:clamp(2.6rem,5vw,4.7rem);line-height:.94}.horse-module-intro>div:first-child>p{max-width:760px;color:var(--muted)}.horse-registry-section{padding-top:.5rem}.horse-filter-tabs{margin:1rem 0 1.4rem}.horse-card{overflow:hidden;border-top:3px solid var(--club-brass)}.show-horse-card{border-top-color:var(--competition)}.horse-card .card-body{padding:1rem 1.05rem 1.1rem}.horse-card h2,.hoofprint-horse-card h3{margin-bottom:.18rem}.horse-show-name{margin:.12rem 0 .45rem;color:var(--club-brass);font-size:.82rem;font-weight:800;letter-spacing:.02em}.horse-preference-line{margin-top:.8rem;padding-top:.7rem;border-top:1px solid var(--line)}.horse-card-actions{margin-top:.9rem;padding-top:.75rem;border-top:1px solid var(--line)}.horse-class-block{display:grid;gap:.45rem;margin-top:.8rem}.horse-show-note,.hoofprint-riding-note{padding:.72rem .8rem;border-left:3px solid var(--club-brass);border-radius:0 7px 7px 0;background:var(--surface-soft)}.horse-award-card{border-top:3px solid var(--club-brass)}.horse-detail-grid>.card{border-top:3px solid var(--club-brass)}.horse-detail-grid>.horse-readiness-card{border-top-color:var(--competition)}.section-kicker{margin-bottom:.35rem;color:var(--club-brass);font-size:.66rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.horse-detail-note{margin-top:1.15rem;padding-top:1rem;border-top:1px solid var(--line)}.horse-readiness-status{font-size:1.02rem}.horse-class-list,.hoofprint-class-list{margin-top:.45rem}.horse-form-card{border-top:3px solid var(--club-brass);box-shadow:0 8px 28px rgba(16,34,37,.06)}.horse-form-card .form-actions{margin-top:1.15rem;padding-top:1rem;border-top:1px solid var(--line)}.horse-form-note{margin:.9rem 0 0;padding:.7rem .8rem;border-left:3px solid var(--club-brass);background:var(--surface-soft);border-radius:0 7px 7px 0}.compact-section{padding-top:.4rem}.hoofprint-live-list{display:grid;gap:1rem}.hoofprint-horse-card{display:grid;grid-template-columns:minmax(0,.8fr) minmax(280px,1.2fr);gap:1.2rem;border-top:3px solid var(--competition)}.hoofprint-history-list .stack-item{padding:.95rem 0}.class-chip-list{display:flex;flex-wrap:wrap;gap:.4rem}.class-chip-list .class-chip{margin:0}

/* v2.1.3 show readiness */
.horse-readiness-overview{padding-top:.55rem}.horse-readiness-badge{display:inline-flex;align-items:center;min-height:2.15rem;padding:.35rem .75rem;border-radius:999px;font-size:.7rem;font-weight:900;letter-spacing:.09em}.horse-readiness-badge.is-ready{background:rgba(47,122,79,.12);color:var(--success,#2f7a4f);border:1px solid rgba(47,122,79,.28)}.horse-readiness-badge.needs-attention{background:rgba(163,106,22,.12);color:var(--warning,#a36a16);border:1px solid rgba(163,106,22,.3)}.horse-readiness-stats .stat-card{border-top:3px solid var(--club-brass)}.horse-readiness-stats .readiness-alert-card{border-top-color:var(--warning,#a36a16)}.readiness-gap-list,.leased-horse-list{margin-top:.5rem}.readiness-gap-item,.leased-horse-item{padding:1rem;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.readiness-gap-item{border-left:4px solid var(--warning,#a36a16)}.readiness-success-card{border-left:4px solid var(--success,#2f7a4f)}.leased-horse-item{border-left:4px solid var(--club-brass)}.leased-horse-item .class-chip-list{margin-top:.55rem}.horse-readiness-note{margin-bottom:1rem;border-left:4px solid var(--club-brass)}

html[data-theme="dark"] .horse-card,html[data-theme="dark"] .horse-form-card,html[data-theme="dark"] .horse-detail-grid>.card,html[data-theme="dark"] .hoofprint-horse-card,html[data-theme="dark"] .readiness-gap-item,html[data-theme="dark"] .leased-horse-item{box-shadow:0 10px 30px rgba(0,0,0,.14)}

@media(max-width:760px){.detail-grid,.form-grid,.hoofprint-horse-card{grid-template-columns:1fr}.detail-span-2,.form-span-2{grid-column:auto}.detail-list{grid-template-columns:1fr}.detail-list dt{margin-top:.5rem}.stack-item{display:grid}.horse-module-intro h1{font-size:clamp(2.25rem,12vw,3.5rem)}.horse-card .card-body{padding:.9rem}.horse-card-actions{display:flex;gap:.7rem;flex-wrap:wrap}.horse-form-card .form-actions{display:grid;grid-template-columns:1fr}.horse-form-card .form-actions .btn{width:100%;justify-content:center;text-align:center}.hoofprint-horse-card{gap:.8rem}.horse-award-grid{grid-template-columns:1fr}.horse-readiness-badge{justify-self:start}.readiness-gap-item .actions,.leased-horse-item .actions{width:100%}.readiness-gap-item .btn,.leased-horse-item .btn{width:100%;justify-content:center;text-align:center}}