.racing-profile-hero{grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px 0 20px;display:grid}.racing-profile-hero h1{margin:3px 0 2px;font-size:clamp(1.4rem,3vw,2.25rem);line-height:1.1}.racing-profile-hero p,.horse-muted{color:var(--app-muted,#9baebb)}.racing-profile-hero .racecard-silk{width:64px;height:70px;padding:5px}.racing-profile-avatar{background:var(--app-raised,#0a1d29);width:60px;height:60px;color:var(--app-accent,#57f49c);border-radius:50%;place-items:center;font-weight:800;display:grid}.racing-profile-stable{border:1px solid var(--app-accent,#57f49c);color:var(--app-accent,#57f49c);white-space:nowrap;font:inherit;cursor:pointer;background:0 0;border-radius:999px;margin-left:auto;padding:10px 14px}.racing-profile-stable:hover{background:color-mix(in srgb,var(--app-accent,#57f49c) 12%,transparent)}.racing-profile-stable:disabled{opacity:.7;cursor:default}.racing-profile-panel,.horse-profile-card{background:var(--app-surface,#061722);border:1px solid var(--app-border,#2d4250);border-radius:14px;min-width:0;padding:15px}.racing-profile-panel{margin:14px 0}.racing-profile-panel h2,.horse-profile-card h2{letter-spacing:.01em;margin:0 0 11px;font-size:.95rem}.racing-profile-facts{grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:12px;margin:0;display:grid}.racing-profile-facts dt,.horse-connections dt{text-transform:uppercase;letter-spacing:.08em;color:var(--app-muted,#9baebb);margin-bottom:4px;font-size:.65rem}.racing-profile-facts dd,.horse-connections dd{overflow-wrap:anywhere;margin:0;line-height:1.35}.racing-profile-facts a,.racing-form-table a,.racing-result-identity a,.horse-profile-card a{color:var(--app-text,#f7f9fa);text-decoration:none}.racing-profile-facts a:hover,.horse-profile-card a:hover{color:var(--app-accent,#57f49c)}.racing-profile-note,.racing-profile-empty{color:var(--app-muted,#9baebb);margin:12px 0 0;font-size:.78rem;line-height:1.55}.racing-profile-metrics{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.racing-profile-metrics>div{background:var(--app-raised,#0a1d29);border-radius:10px;flex-direction:column;gap:5px;padding:12px;display:flex}.racing-profile-metrics span{color:var(--app-muted,#9baebb);font-size:.68rem}.racing-profile-metrics strong{color:var(--app-accent,#57f49c);font-size:1.35rem}.racing-table-scroll{border-radius:10px;width:100%;overflow:auto}.racing-form-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:.78rem}.racing-form-table th{text-align:left;color:var(--app-muted,#9baebb);text-transform:uppercase;letter-spacing:.06em;background:var(--app-raised,#0a1d29);padding:11px 9px;font-size:.64rem}.racing-form-table td{border-bottom:1px solid var(--app-border,#2d4250);padding:11px 9px;line-height:1.45}.racing-form-table td span{color:var(--app-muted,#9baebb);display:block}.racing-position-win{color:var(--app-accent,#57f49c)}.racing-profile-tag{background:var(--app-raised,#0a1d29);color:var(--app-accent,#57f49c);border-radius:999px;padding:7px 11px;font-size:.75rem}.racing-result-list{gap:12px;display:grid}.racing-result-runner{background:var(--app-surface,#061722);border:1px solid var(--app-border,#2d4250);border-radius:14px;align-items:flex-start;gap:16px;padding:16px;display:flex}.racing-result-position{min-width:36px;font-size:1.5rem;font-weight:800}.racing-result-identity{flex:1;min-width:0}.racing-result-identity h2{margin:0 0 6px;font-size:1rem}.racing-result-identity p{color:var(--app-muted,#9baebb);margin:5px 0;font-size:.78rem;line-height:1.55}.racing-result-identity summary{cursor:pointer;color:var(--app-accent,#57f49c);margin-top:10px;font-size:.78rem}.racing-result-sp{text-align:right;flex-direction:column;gap:5px;min-width:48px;display:flex}.racing-result-sp span{color:var(--app-muted,#9baebb);font-size:.65rem}.racing-result-sp strong{font-size:1rem}.racing-result-runner .racecard-silk{flex-shrink:0;width:38px;height:44px}.racecard-silk img{object-fit:contain;width:100%;height:100%}.horse-profile-tabs{grid-template-columns:repeat(4,1fr);gap:6px;margin:0 0 14px;display:grid}.horse-profile-tabs button,.horse-chip-row button{border:1px solid var(--app-border,#2d4250);min-height:37px;color:var(--app-muted,#9baebb);background:var(--app-raised,#0a1d29);font:inherit;cursor:pointer;border-radius:8px;font-size:.75rem;font-weight:700}.horse-profile-tabs button.is-active,.horse-chip-row button.is-active{border-color:var(--app-accent,#57f49c);color:var(--app-contrast-text,#03111b);background:var(--app-contrast,#57f49c)}.horse-profile-stack{gap:12px;display:grid}.horse-profile-card h2 span{color:var(--app-muted,#9baebb);font-size:.76rem;font-weight:500}.horse-lineage-tree{grid-template-columns:minmax(86px,.7fr) minmax(0,2fr);align-items:center;gap:14px;display:grid}.horse-lineage-root{border-right:1px solid var(--app-accent,#57f49c);padding-right:12px}.horse-lineage-parents{gap:10px;display:grid}.horse-lineage-parents>div{grid-template-columns:minmax(100px,.85fr) minmax(0,1.4fr);align-items:center;gap:9px;display:grid}.horse-lineage-grandparents{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.horse-lineage-node{border:1px solid var(--app-border,#2d4250);background:var(--app-raised,#0a1d29);border-radius:7px;flex-direction:column;justify-content:center;min-height:47px;padding:6px 8px;display:flex;overflow:hidden}.horse-lineage-root .horse-lineage-node{border-color:var(--app-accent,#57f49c);background:color-mix(in srgb,var(--app-accent,#57f49c) 10%,var(--app-raised,#0a1d29))}.horse-lineage-node small{color:var(--app-muted,#9baebb);letter-spacing:.06em;font-size:.57rem}.horse-lineage-node strong{-webkit-line-clamp:2;overflow-wrap:anywhere;color:var(--app-text,#f7f9fa);-webkit-box-orient:vertical;font-size:.69rem;line-height:1.2;display:-webkit-box;overflow:hidden}.horse-recent-runs{padding-bottom:5px}.horse-recent-row{border-top:1px solid var(--app-border,#2d4250);grid-template-columns:38px minmax(0,1fr) 45px 72px;align-items:center;gap:8px;min-height:56px;display:grid}.horse-recent-row>strong{background:var(--app-raised,#0a1d29);min-height:29px;color:var(--app-text,#f7f9fa);border-radius:5px;place-items:center;font-size:.75rem;display:grid}.horse-recent-row>strong.is-win{background:color-mix(in srgb,var(--app-accent,#57f49c) 15%,var(--app-raised,#0a1d29));color:var(--app-accent,#57f49c)}.horse-recent-row span{min-width:0}.horse-recent-row b,.horse-recent-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.horse-recent-row b{font-size:.77rem}.horse-recent-row small,.horse-recent-row em,.horse-recent-row time{color:var(--app-muted,#9baebb);font-size:.67rem;font-style:normal}.horse-recent-row em,.horse-recent-row time{text-align:right}.horse-arcs{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.horse-arc{aspect-ratio:1;background:radial-gradient(closest-side,var(--app-surface,#061722) 76%,transparent 77% 100%),conic-gradient(var(--app-accent,#57f49c) var(--arc),var(--app-raised,#0a1d29) 0);border-radius:50%;place-content:center;justify-items:center;width:min(100%,105px);margin:auto;display:grid}.horse-arc strong{font-size:.9rem}.horse-arc span{color:var(--app-muted,#9baebb);font-size:.67rem}.horse-chip-row{flex-wrap:wrap;gap:6px;margin:8px 0;display:flex}.horse-chip-row button{min-height:31px;padding:0 10px;font-size:.68rem}.horse-chart{border-bottom:1px solid var(--app-border,#2d4250);background:repeating-linear-gradient(to bottom,transparent 0 34px,color-mix(in srgb,var(--app-border,#2d4250) 45%,transparent) 34px 35px);grid-template-columns:repeat(auto-fit,minmax(30px,1fr));align-items:end;gap:6px;min-height:142px;padding:18px 4px 0;display:grid}.horse-chart>div{grid-template-rows:15px 1fr 15px;place-items:end center;min-width:0;height:120px;display:grid}.horse-chart i{background:var(--app-accent,#57f49c);border-radius:5px 5px 2px 2px;align-self:end;width:min(14px,65%);min-height:4px;display:block}.horse-chart .is-unknown i{opacity:.25}.horse-chart-value,.horse-chart small{color:var(--app-muted,#9baebb);white-space:nowrap;font-size:.58rem}.horse-chart-value{color:var(--app-text,#f7f9fa)}.horse-connections dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.horse-family-row{border-top:1px solid var(--app-border,#2d4250);grid-template-columns:minmax(0,1fr) minmax(80px,1fr) auto;align-items:center;gap:8px;padding:9px 0;font-size:.75rem;display:grid}.horse-family-row span,.horse-progeny-row span{color:var(--app-muted,#9baebb);text-transform:capitalize;font-size:.67rem}.horse-family-row b{color:var(--app-accent,#57f49c)}.horse-progeny-row{border-top:1px solid var(--app-border,#2d4250);gap:5px;padding:8px 0;display:grid}.horse-progeny-row>div{justify-content:space-between;gap:10px;display:flex}.horse-progeny-row i{background:var(--app-raised,#0a1d29);border-radius:5px;height:5px;display:block;overflow:hidden}.horse-progeny-row i b{border-radius:inherit;background:var(--app-accent,#57f49c);height:100%;display:block}.horse-race-record>div{grid-template-columns:repeat(auto-fit,minmax(95px,1fr));gap:8px;display:grid}.horse-race-record span{background:var(--app-raised,#0a1d29);color:var(--app-muted,#9baebb);border-radius:8px;gap:3px;padding:9px;font-size:.64rem;display:grid}.horse-race-record strong{color:var(--app-text,#f7f9fa);font-size:.95rem}.horse-results-table{font-size:.7rem}.horse-results-table [role=row]{border-top:1px solid var(--app-border,#2d4250);grid-template-columns:1.05fr 1.55fr .7fr .45fr .4fr .45fr;gap:6px;padding:9px 0;display:grid}.horse-results-table .horse-results-head{color:var(--app-muted,#9baebb);text-transform:uppercase;letter-spacing:.04em;font-size:.57rem;font-weight:700}.horse-results-table [role=row]>span{min-width:0}.horse-results-table b,.horse-results-table em{text-overflow:ellipsis;display:block;overflow:hidden}.horse-results-table b{font-weight:600}.horse-results-table em{color:var(--app-muted,#9baebb);font-style:normal;line-height:1.25}.horse-owner-results .horse-results-table [role=row]{grid-template-columns:1fr 1.4fr .7fr .7fr}.racing-profile-hero{background:var(--app-surface,#061722);border:1px solid var(--app-border,#2d4250);border-radius:12px;grid-template-columns:52px minmax(0,1fr) 30px;gap:10px;margin:10px 0 14px;padding:12px}.racing-profile-hero .racecard-silk{width:52px;height:58px}.racing-profile-hero h1{font-size:clamp(1.05rem,4.5vw,1.5rem);line-height:1.15}.racing-profile-hero .eyebrow{margin:0;font-size:.58rem}.racing-profile-hero p{margin:4px 0 0;font-size:.74rem}.racing-profile-hero .racing-profile-stable-rail{border:0;border-left:1px solid var(--app-accent,#57f49c);background:var(--app-contrast,#57f49c);width:30px;min-width:30px;min-height:76px;color:var(--app-contrast-text,#03111b);border-radius:0;grid-area:1/3;place-self:stretch stretch;margin:-12px -12px -12px 0;padding:0}.horse-chart{background:0 0;width:100%;height:auto;min-height:170px;margin-top:6px;padding:0;display:block;overflow:visible}.horse-chart-grid{stroke:var(--app-border,#2d4250);stroke-dasharray:3 4;opacity:.8}.horse-chart-line{stroke:var(--app-accent,#57f49c);stroke-width:2.5px;fill:none;stroke-linecap:round}.horse-chart-point{fill:var(--app-accent,#57f49c);stroke:var(--app-surface,#061722);stroke-width:2px}.horse-chart-value{fill:var(--app-text,#f7f9fa);font-size:10px;font-weight:600}.horse-chart-date{fill:var(--app-muted,#9baebb);font-size:8.5px}.horse-chart .is-unknown .horse-chart-value{fill:var(--app-muted,#9baebb)}.horse-record-table{font-size:.7rem}.horse-record-table [role=row]{border-top:1px solid var(--app-border,#2d4250);grid-template-columns:1.35fr .52fr .92fr .42fr .42fr .48fr;gap:5px;padding:8px 0;display:grid}.horse-record-head{color:var(--app-muted,#9baebb);text-transform:uppercase;letter-spacing:.04em;font-size:.57rem;font-weight:700}.horse-record-currency{color:var(--app-muted,#9baebb);font-size:.65rem}.horse-race-record>.horse-record-table{grid-template-columns:none;gap:0;display:block}.horse-race-record .horse-record-table span{color:inherit;font-size:inherit;background:0 0;border-radius:0;padding:0;display:block}.horse-race-record .horse-record-table .horse-record-head{color:var(--app-muted,#9baebb)}.racing-profile-hero{overflow:hidden}.person-profile-runner-list{gap:9px;display:grid}.person-profile-runner-card{border:1px solid var(--app-border,#2d4250);background:var(--app-surface,#061722);border-radius:12px;overflow:hidden}.person-profile-runner-main{grid-template-columns:40px minmax(0,1fr) 30px;align-items:center;gap:9px;min-height:58px;padding:9px 0 9px 10px;display:grid}.person-profile-silk{object-fit:contain;width:36px;height:42px}.person-profile-silk-empty{background:var(--app-raised,#0a1d29);border-radius:7px;width:34px;height:38px;display:block}.person-profile-runner-copy{gap:3px;min-width:0;display:grid}.person-profile-runner-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.83rem;display:block;overflow:hidden}.person-profile-runner-copy span{text-overflow:ellipsis;white-space:nowrap;color:var(--app-muted,#9baebb);font-size:.67rem;overflow:hidden}.person-profile-runner-main .racing-profile-stable-rail{border:0;border-left:1px solid var(--app-accent,#57f49c);background:var(--app-contrast,#57f49c);width:30px;min-width:30px;min-height:58px;color:var(--app-contrast-text,#03111b);border-radius:0;align-self:stretch;margin:-9px 0}.person-profile-race-link{border-top:1px solid var(--app-border,#2d4250);gap:3px;padding:9px 12px;display:grid}.person-profile-race-link strong{color:var(--app-accent,#57f49c);font-size:.71rem}.person-profile-race-link span{font-size:.76rem}.person-profile-race-link small,.person-profile-result-meta{color:var(--app-muted,#9baebb);margin:0;font-size:.68rem;line-height:1.4}.person-profile-result-meta{padding:0 12px 10px}.person-profile-silk{display:block}.person-profile-silk img{object-fit:contain;width:100%;height:100%}.horse-lineage-svg{width:100%;height:auto;max-height:238px;display:block;overflow:visible}.horse-lineage-connectors{fill:none;stroke:var(--app-accent,#57f49c);stroke-width:1.4px;opacity:.85}.horse-lineage-node-box{fill:var(--app-raised,#0a1d29);stroke:var(--app-border,#2d4250);stroke-width:.8px}.horse-lineage-node-root{fill:color-mix(in srgb,var(--app-accent,#57f49c) 10%,var(--app-raised,#0a1d29));stroke:var(--app-accent,#57f49c);stroke-width:1.3px}.horse-lineage-label{fill:var(--app-muted,#9baebb);letter-spacing:.2px;font-size:7.5px;font-weight:600}.horse-lineage-name{fill:var(--app-text,#f7f9fa);font-size:10.3px;font-weight:500}.horse-lineage-name-root{font-weight:700}.horse-lineage-link:hover .horse-lineage-node-box,.horse-lineage-link:hover .horse-lineage-node-root{stroke:var(--app-accent,#57f49c);stroke-width:1.5px}@media (max-width:650px){.racing-profile-hero{grid-template-columns:46px minmax(0,1fr) 28px;margin:7px 0 10px;padding:10px}.racing-profile-hero .racecard-silk{width:46px;height:52px}.racing-profile-hero .racing-profile-stable:not(.racing-profile-stable-rail){text-align:center;grid-column:1/-1;justify-self:stretch;margin:0}.racing-profile-hero .racing-profile-stable-rail{grid-area:1/3;align-self:stretch;width:28px;min-width:28px;min-height:68px;margin:-10px -10px -10px 0}.racing-profile-panel,.horse-profile-card{padding:12px}.racing-profile-metrics{grid-template-columns:repeat(2,1fr)}.racing-profile-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.horse-lineage-tree{grid-template-columns:64px minmax(0,1fr);gap:7px}.horse-lineage-root{border-right:1px solid var(--app-accent,#57f49c);border-bottom:0;padding:0 7px 0 0}.horse-lineage-parents>div{grid-template-columns:76px minmax(0,1fr);gap:5px}.horse-lineage-grandparents{grid-template-columns:1fr;gap:4px}.horse-lineage-node{min-height:35px;padding:4px 5px}.horse-lineage-node strong{font-size:.61rem}.horse-lineage-node small{font-size:.51rem}.horse-recent-row{grid-template-columns:34px minmax(0,1fr) 38px 54px;gap:6px}.horse-recent-row time{font-size:.58rem}.horse-connections dl{grid-template-columns:1fr}.horse-results-table{font-size:.61rem}.horse-results-table [role=row]{grid-template-columns:1fr 1.45fr .58fr .4fr .4fr .42fr;gap:4px}.horse-results-table .horse-results-head{font-size:.5rem}.horse-results-table b{white-space:normal}.horse-results-table em{font-size:.56rem}.racing-result-runner{gap:10px;padding:12px 10px}.racing-result-position{min-width:24px;font-size:1.2rem}.racing-result-runner .racecard-silk{width:30px;height:38px}.racing-result-sp{min-width:36px}.racing-result-sp strong{font-size:.9rem}.horse-record-table{font-size:.61rem}.horse-record-table [role=row]{grid-template-columns:1.22fr .48fr .86fr .38fr .38fr .44fr;gap:3px}.horse-record-head{font-size:.5rem}}
