.mp-home {
    --ink:#172b26;
    --muted:#64736f;
    --green:#214f40;
    --gold:#f4c76c;
    --line:#dde5e1;
    color:var(--ink);
    font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Noto Sans KR",sans-serif;
    letter-spacing:-.025em}
.mp-home * {
    box-sizing:border-box}
.mp-home a {
    text-decoration:none}
.mp-home a:focus-visible,.mp-home button:focus-visible,.mp-home summary:focus-visible {
    outline:3px solid #b47c17;
    outline-offset:5px}
.mp-home [hidden] {
    display:none!important}
.mp-hero {
    display:grid;
    grid-template-columns:1.5fr 1fr;
    gap:52px;
    align-items:center;
    background:#153d31;
    border:1px solid #254f42;
    border-radius:24px;
    padding:46px 48px;
    color:#fff;
    position:relative;
    overflow:hidden}
.mp-hero:after {
    content:"";
    position:absolute;
    width:470px;
    height:470px;
    border:1px solid #ffffff0b;
    border-radius:50%;
    right:-180px;
    top:-220px;
    pointer-events:none}
.mp-eyebrow,.mp-kicker {
    font-size:11px;
    font-weight:750;
    letter-spacing:.15em}
.mp-eyebrow {
    color:#c5d9d0;
    display:flex;
    align-items:center;
    gap:8px}
.mp-live-dot {
    width:6px;
    height:6px;
    background:var(--gold);
    border-radius:50%}
.mp-hero h1 {
    font-size:40px;
    font-weight:750;
    line-height:1.36;
    letter-spacing:-.055em;
    margin:21px 0 15px}
.mp-home em {
    font-style:normal}
.mp-hero h1 em {
    color:var(--gold)}
.mp-hero-copy>p {
    font-size:15px;
    line-height:1.85;
    color:#cee0d6}
.mp-actions {
    display:flex;
    align-items:center;
    gap:24px;
    margin:27px 0}
.mp-button {
    display:inline-flex;
    justify-content:center;
    align-items:center;
    gap:24px;
    padding:13px 20px;
    border-radius:9px;
    font-size:14px;
    font-weight:750;
    transition:transform .15s,background .15s}
.mp-button:hover {
    transform:translateY(-2px)}
.mp-button-gold {
    background:var(--gold);
    color:#213b30}
.mp-button-gold:hover {
    background:#ffda91}
.mp-hero-link {
    color:#e0ebe5;
    font-size:13px;
    font-weight:650}
.mp-hero-foot {
    font-size:11px;
    color:#b3cabf;
    display:flex;
    flex-wrap:wrap;
    gap:8px 20px}
.mp-hero-foot span {
    color:#9fbdad}
.mp-next {
    position:relative;
    padding:25px 28px;
    background:#ffffff08;
    border:1px solid #ffffff26;
    border-radius:16px;
    z-index:1}
.mp-next-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    font-size:13px;
    color:#dce9e2}
.mp-light-badge {
    font-size:11px;
    padding:4px 9px;
    border-radius:5px;
    background:#ffffff12}
.mp-next-label {
    font-size:12px;
    color:#b4cbbf;
    margin-top:28px}
.mp-next-title {
    display:flex;
    flex-wrap:wrap;
    align-items:baseline;
    gap:10px;
    font-size:27px;
    font-weight:700;
    margin-top:6px}
.mp-next-title strong {
    font-size:38px}
.mp-next-title time {
    font-size:24px;
    margin-left:auto;
    color:var(--gold);
    font-variant-numeric:tabular-nums}
.mp-next-meta {
    font-size:13px;
    color:#b9cfc3;
    margin-top:4px;
    line-height:1.8}
.mp-next-countdown {
    color:var(--gold);
    font-size:13px;
    margin-top:20px}
.mp-next-link {
    display:flex;
    justify-content:space-between;
    gap:16px;
    border-top:1px solid #ffffff22;
    margin-top:22px;
    padding-top:17px;
    font-size:13px;
    font-weight:650}
.mp-proof {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    background:white;
    border:1px solid var(--line);
    border-radius:15px;
    margin:18px 0 48px;
    padding:22px 0}
.mp-proof-item {
    padding:0 24px;
    border-right:1px solid var(--line);
    min-width:0}
.mp-proof-item:last-child {
    border:0}
.mp-proof-item>span {
    font-size:12px;
    font-weight:650;
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    align-items:center}
.mp-proof-item>span small {
    font-size:10px;
    color:var(--muted);
    background:#f0f4f1;
    padding:1px 5px;
    border-radius:3px}
.mp-proof-item>strong {
    display:block;
    font-size:34px;
    line-height:1.3;
    margin:9px 0 4px;
    letter-spacing:-.055em;
    color:var(--green);
    font-variant-numeric:tabular-nums}
.mp-proof-item strong small {
    font-size:17px;
    padding-left:2px;
    font-weight:600}
.mp-proof-item>p {
    font-size:11px;
    color:var(--muted)}
.mp-proof-item:hover>strong {
    color:#a36512}
.mp-section {
    margin-top:48px;
    scroll-margin-top:90px}
.mp-section-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:22px}
.mp-kicker {
    color:#547266;
    margin-bottom:9px;
    font-size:10px}
.mp-section h2 {
    font-size:26px;
    font-weight:750;
    letter-spacing:-.045em;
    line-height:1.4}
.mp-section h2>span {
    font-size:17px;
    color:#86948c;
    margin-left:8px;
    font-weight:500}
.mp-section-head p {
    font-size:13px;
    color:var(--muted);
    margin-top:7px}
.mp-text-link {
    display:inline-flex;
    align-items:center;
    gap:16px;
    white-space:nowrap;
    color:var(--green);
    font-size:13px;
    font-weight:700}
.mp-race-toolbar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px}
.mp-filters {
    display:flex;
    gap:6px;
    flex-wrap:wrap}
.mp-filters button {
    border:1px solid var(--line);
    border-radius:7px;
    padding:8px 12px;
    font-size:12px;
    font-weight:650;
    background:#fff;
    color:#617168;
    cursor:pointer}
.mp-filters button span {
    margin-left:4px;
    font-size:11px;
    opacity:.8}
.mp-filters button.is-active {
    background:var(--green);
    border-color:var(--green);
    color:white}
.mp-progress-text {
    font-size:12px;
    color:var(--muted);
    white-space:nowrap}
.mp-race-notice {
    font-size:12px;
    color:var(--muted);
    line-height:1.65;
    margin:14px 0}
.mp-race-list {
    border:1px solid var(--line);
    border-radius:13px;
    overflow:hidden;
    background:white}
.mp-race-row {
    display:grid;
    grid-template-columns:76px 170px minmax(200px,1fr) minmax(150px,1fr) 18px;
    gap:20px;
    align-items:center;
    padding:19px 24px;
    border-bottom:1px solid #e9eeeb;
    transition:background .15s}
.mp-race-row:last-child {
    border-bottom:0}
.mp-race-row:hover {
    background:#f4f8f5}
.mp-race-time {
    border-right:1px solid var(--line);
    padding-right:16px}
.mp-race-time strong {
    display:block;
    font-size:18px;
    letter-spacing:-.035em;
    font-variant-numeric:tabular-nums}
.mp-race-time span {
    display:block;
    font-size:10px;
    color:var(--muted);
    margin-top:4px}
.mp-race-name>div {
    display:flex;
    gap:9px;
    align-items:center}
.mp-track {
    font-size:11px;
    background:#edf4ef;
    color:#2e6650;
    padding:3px 7px;
    border-radius:4px;
    white-space:nowrap}
.mp-race-name strong {
    font-size:20px;
    line-height:1.2}
.mp-race-name p {
    font-size:11px;
    color:var(--muted);
    margin-top:7px}
.mp-pick-label {
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    font-size:10px;
    color:#738078;
    margin-bottom:7px}
.mp-pick-label span:first-child {
    color:#9a681b}
.mp-pick-line {
    display:flex;
    align-items:center;
    gap:9px}
.mp-pick-line>strong {
    font-size:15px;
    font-weight:700;
    white-space:nowrap}
.mp-secondary-picks {
    display:flex;
    gap:5px;
    padding-left:8px;
    margin-left:3px;
    border-left:1px solid var(--line)}
.mp-race-reason {
    min-width:0}
.mp-race-reason>span {
    font-size:10px;
    color:#6c7b72}
.mp-race-reason p {
    font-size:12px;
    color:#43594d;
    line-height:1.65;
    margin-top:5px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden}
.mp-row-arrow {
    color:#7f968a;
    font-size:20px}
.mp-pending {
    font-size:14px;
    color:#6c7b72}
.mp-finished {
    margin-top:14px}
.mp-finished summary {
    font-size:13px;
    font-weight:600;
    color:var(--muted);
    cursor:pointer;
    padding:12px 0}
.mp-race-row.is-finished {
    background:#f7f9f7}
.mp-empty {
    padding:30px;
    font-size:14px;
    color:var(--muted);
    background:#f0f4f1;
    border-radius:12px;
    text-align:center;
    line-height:1.8;
    grid-column:1/-1}
.mp-empty a {
    color:var(--green);
    text-decoration:underline}
.mp-upcoming {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px}
.mp-upcoming>a {
    border:1px solid var(--line);
    background:white;
    padding:22px;
    border-radius:12px;
    display:flex;
    flex-direction:column;
    gap:12px}
.mp-upcoming>a>span {
    font-size:26px;
    font-weight:700}
.mp-upcoming small {
    color:var(--green)}
.mp-performance {
    display:grid;
    grid-template-columns:1fr 1.4fr;
    gap:40px;
    background:#edf3ee;
    padding:36px;
    border:1px solid #dde7df;
    border-radius:18px}
.mp-performance h2 {
    font-size:27px}
.mp-performance h2 em {
    color:#4d765d}
.mp-performance-intro>p {
    font-size:13px;
    line-height:1.9;
    color:#63766a;
    margin:15px 0 22px}
.mp-button-dark {
    background:var(--green);
    color:#fff;
    font-size:13px}
.mp-performance-intro>small {
    font-size:10px;
    line-height:1.6;
    color:#718075;
    display:block;
    margin-top:16px}
.mp-performance-data {
    align-self:center;
    min-width:0}
.mp-data-title {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    margin-bottom:12px;
    flex-wrap:wrap}
.mp-data-title strong {
    font-size:14px}
.mp-data-title>span {
    font-size:11px;
    color:#647b6b}
.mp-table-wrap {
    border:1px solid #d9e4dc;
    border-radius:10px;
    background:#fff;
    overflow:auto}
.mp-stats-table {
    width:100%;
    text-align:right;
    border-collapse:collapse;
    white-space:nowrap}
.mp-stats-table th,.mp-stats-table td {
    padding:13px 15px;
    font-size:12px}
.mp-stats-table thead th {
    color:#65796b;
    font-size:10px;
    font-weight:500;
    background:#f6f8f5}
.mp-stats-table th:first-child {
    text-align:left}
.mp-stats-table tbody tr {
    border-top:1px solid #e8eee9}
.mp-stats-table tbody th {
    font-weight:600}
.mp-stats-table td strong {
    color:var(--green)}
.mp-data-note {
    font-size:10px;
    line-height:1.8;
    color:#728174;
    margin-top:12px}
.mp-video-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px 20px}
.mp-video {
    border:1px solid var(--line);
    border-radius:12px;
    background:white;
    overflow:hidden}
.mp-video-image {
    aspect-ratio:16/9;
    position:relative;
    overflow:hidden;
    background:#e3ebe5}
.mp-video-image img {
    width:100%;
    height:100%;
    object-fit:cover;
    position:relative;
    transition:transform .2s}
.mp-video:hover img {
    transform:scale(1.035)}
.mp-video-placeholder {
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    font-size:25px;
    color:#768a7b}
.mp-play {
    position:absolute;
    left:14px;
    bottom:12px;
    width:32px;
    height:32px;
    display:grid;
    place-items:center;
    background:#102b23bf;
    color:#fff;
    border:1px solid #ffffff55;
    border-radius:50%;
    font-size:11px}
.mp-duration {
    position:absolute;
    right:10px;
    bottom:12px;
    border-radius:4px;
    padding:2px 6px;
    font-size:10px;
    background:#14261ccc;
    color:#fff}
.mp-video-body {
    padding:17px 18px 20px}
.mp-video-body>p {
    font-size:11px;
    color:#678171;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap}
.mp-video h3 {
    font-size:15px;
    font-weight:700;
    line-height:1.65;
    min-height:50px;
    margin:7px 0 13px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden}
.mp-video-body>span {
    font-size:10px;
    color:#7a867d}
.mp-resource-link {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    border:1px solid var(--line);
    padding:20px 24px;
    border-radius:10px;
    margin-top:20px;
    background:#f1f5f1;
    font-size:13px;
    color:#637668}
.mp-resource-link strong {
    margin-left:8px;
    color:var(--green)}
.mp-resource-link b {
    margin-left:20px}
.mp-journal-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px}
.mp-journal-grid>a {
    padding:23px;
    background:white;
    border:1px solid var(--line);
    border-radius:12px}
.mp-journal-grid>a>span {
    font-size:10px;
    letter-spacing:.1em;
    color:#77917f}
.mp-journal-grid h3 {
    font-size:16px;
    font-weight:700;
    line-height:1.6;
    margin:15px 0 10px}
.mp-journal-grid p {
    font-size:12px;
    color:var(--muted);
    line-height:1.8;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden}
.mp-journal-grid small {
    font-size:11px;
    color:var(--green);
    display:block;
    margin-top:20px}
.mp-review {
    border:1px solid var(--line);
    border-radius:16px;
    background:#fff;
    padding:26px 30px}
.mp-review .mp-section-head {
    margin-bottom:18px}
.mp-review h2 {
    font-size:22px}
.mp-review-line {
    display:grid;
    grid-template-columns:100px 1fr;
    gap:20px;
    padding:13px 0;
    align-items:center;
    border-top:1px solid #edf0ed}
.mp-review-line>strong {
    font-size:12px;
    color:var(--muted)}
.mp-review-line>div {
    display:flex;
    flex-wrap:wrap;
    gap:14px 26px}
.mp-review-horse {
    display:inline-flex;
    gap:7px;
    align-items:center;
    font-size:13px}
.mp-review-horse small {
    font-size:10px;
    color:var(--muted)}
.mp-review-note {
    font-size:12px;
    line-height:1.8;
    color:var(--muted)}
p.mp-review-note {
    margin-top:12px}
.mp-review-note strong {
    color:var(--green);
    font-weight:650}
.mp-review-note>span {
    display:block;
    font-size:10px;
    margin-top:5px}
.mp-faq {
    display:grid;
    grid-template-columns:1fr 2fr;
    gap:36px;
    border-top:1px solid var(--line);
    padding-top:36px;
    margin-bottom:44px}
.mp-faq>div>p {
    font-size:13px;
    color:var(--muted);
    line-height:1.8;
    margin-top:12px}
.mp-faq-list details {
    border-bottom:1px solid var(--line)}
.mp-faq-list summary {
    font-size:14px;
    font-weight:650;
    cursor:pointer;
    padding:18px 0}
.mp-faq-list details>p {
    font-size:13px;
    line-height:1.85;
    color:var(--muted);
    padding-bottom:20px}
.mp-faq-list a {
    color:var(--green);
    text-decoration:underline}

@media(min-width:1280px) {
    .mp-race-row {
    grid-template-columns:80px 190px minmax(245px,1fr) minmax(175px,1fr) 20px}
}

@media(max-width:1023px) {
    .mp-hero {
    gap:28px;
    padding:32px}
.mp-hero h1 {
    font-size:33px}
.mp-next {
    padding:23px}
.mp-proof-item {
    padding:0 18px}
.mp-proof-item>strong {
    font-size:30px}
.mp-race-row {
    grid-template-columns:70px 140px minmax(190px,1fr) 18px;
    gap:15px;
    padding:18px}
.mp-race-reason {
    display:none}
.mp-performance {
    gap:24px;
    padding:28px}
.mp-performance h2 {
    font-size:24px}
.mp-stats-table th,.mp-stats-table td {
    padding:12px 9px}
.mp-video h3 {
    font-size:14px}
}

@media(max-width:700px) {
    .mp-review {
    padding:21px 18px}
.mp-review h2 {
    font-size:20px}
.mp-review-line {
    grid-template-columns:1fr;
    gap:10px}
.mp-review-line>div {
    gap:10px 14px}
.mp-review-horse {
    font-size:12px}
    .mp-hero {
    grid-template-columns:1fr;
    gap:25px;
    padding:27px 23px;
    border-radius:18px}
.mp-hero h1 {
    font-size:32px;
    margin-top:18px}
.mp-hero-copy>p {
    font-size:14px}
.mp-eyebrow {
    font-size:9px}
.mp-hero-foot {
    font-size:10px}
.mp-actions {
    gap:18px;
    margin:22px 0}
.mp-button {
    padding:12px 15px;
    gap:15px;
    font-size:13px}
.mp-next {
    padding:18px 20px}
.mp-next-label {
    margin-top:15px}
.mp-next-title {
    font-size:23px}
.mp-next-title strong {
    font-size:30px}
.mp-next-title time {
    font-size:24px}
.mp-next-countdown {
    margin-top:10px;
    font-size:12px}
.mp-next-link {
    margin-top:14px;
    padding-top:13px}
.mp-proof {
    grid-template-columns:repeat(2,1fr);
    padding:0;
    border-radius:12px;
    margin:14px 0 34px}
.mp-proof-item {
    padding:18px}
.mp-proof-item:nth-child(2) {
    border-right:0}
.mp-proof-item:nth-child(-n+2) {
    border-bottom:1px solid var(--line)}
.mp-proof-item>strong {
    font-size:31px}
.mp-proof-item>span {
    font-size:11px}
.mp-proof-item>p {
    font-size:10px}
.mp-section {
    margin-top:34px}
.mp-section-head {
    align-items:flex-end;
    gap:10px;
    margin-bottom:18px}
.mp-section h2 {
    font-size:23px}
.mp-section h2>span {
    font-size:15px}
.mp-section-head p {
    font-size:12px;
    line-height:1.6;
    max-width:245px}
.mp-text-link {
    font-size:12px;
    gap:8px}
.mp-kicker {
    font-size:9px}
.mp-progress-text {
    font-size:10px}
.mp-race-notice {
    font-size:11px}
.mp-race-row {
    grid-template-columns:53px minmax(93px,1fr) minmax(128px,1.2fr);
    gap:10px;
    padding:16px 13px}
.mp-race-time {
    padding-right:8px}
.mp-race-time strong {
    font-size:16px}
.mp-race-time span {
    font-size:9px}
.mp-race-name>div {
    gap:5px}
.mp-track {
    font-size:10px;
    padding:2px 5px}
.mp-race-name strong {
    font-size:18px}
.mp-race-name p {
    font-size:10px;
    max-width:105px;
    line-height:1.6}
.mp-pick-label {
    font-size:9px;
    gap:5px}
.mp-pick-label span:nth-child(2) {
    display:none}
.mp-pick-line {
    gap:6px;
    flex-wrap:wrap}
.mp-pick-line>.gate-badge {
    width:25px;
    height:25px;
    font-size:12px}
.mp-pick-line>strong {
    font-size:13px}
.mp-secondary-picks {
    display:none}
.mp-row-arrow {
    display:none}
.mp-performance {
    grid-template-columns:1fr;
    padding:24px 20px;
    gap:27px}
.mp-performance h2 {
    font-size:25px}
.mp-performance-intro>p {
    margin:12px 0 18px}
.mp-performance-intro>small {
    font-size:10px}
.mp-data-title {
    gap:6px}
.mp-data-title strong {
    font-size:13px}
.mp-data-title>span {
    font-size:10px}
.mp-video-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:15px 10px}
.mp-video-body {
    padding:11px}
.mp-video-body>p {
    font-size:10px}
.mp-video h3 {
    font-size:12px;
    min-height:40px;
    line-height:1.6;
    margin:6px 0 10px}
.mp-video-body>span {
    font-size:9px}
.mp-play {
    width:26px;
    height:26px;
    left:9px;
    bottom:9px;
    font-size:9px}
.mp-duration {
    right:7px;
    bottom:9px;
    font-size:9px}
.mp-resource-link {
    padding:16px;
    font-size:12px;
    gap:9px;
    align-items:flex-start;
    flex-direction:column}
.mp-resource-link strong {
    margin-left:4px}
.mp-resource-link>span:last-child {
    font-size:11px;
    display:flex;
    justify-content:space-between;
    width:100%}
.mp-journal-grid {
    grid-template-columns:1fr;
    gap:12px}
.mp-journal-grid>a {
    padding:21px}
.mp-journal-grid h3 {
    margin-top:10px}
.mp-upcoming {
    grid-template-columns:1fr 1fr}
.mp-faq {
    grid-template-columns:1fr;
    gap:18px;
    padding-top:26px;
    margin-bottom:34px}
.mp-faq>div>p br {
    display:none}
.mp-faq-list summary {
    font-size:13px}
.mp-empty {
    padding:24px;
    font-size:13px}
}

@media(prefers-reduced-motion:reduce) {
    .mp-home * {
    transition:none!important;
    scroll-behavior:auto!important}
}

.mp-input-notice {
    display:block;
    font-size:10px;
    color:#966314;
    margin-bottom:4px}

@media(max-width:700px) {
    .mp-hero {
    gap:20px;
    padding:24px 23px}
.mp-next-label {
    display:none}
.mp-next-title {
    margin-top:12px}
.mp-next-link {
    margin-top:12px;
    padding-top:12px}
.mp-next {
    padding:16px 18px}
.mp-race-reason {
    display:block;
    grid-column:2 / 4;
    margin-top:-4px}
.mp-race-reason p {
    display:none}
.mp-race-reason>span {
    font-size:9px}
.mp-secondary-picks {
    display:flex;
    gap:3px;
    border:0;
    padding:0;
    margin:0}
.mp-secondary-picks .gate-badge {
    width:19px;
    height:19px;
    font-size:10px}
.mp-proof-item>p {
    font-size:11px}
}

/* 인기마 대비 연승 성적 (v2.46) */
.mp-vs-market {
    border:1px solid #cfe3d6;
    border-radius:10px;
    background:#f3faf5;
    padding:14px 15px;
    margin-bottom:14px}
.mp-vs-market .mp-data-title {
    margin-bottom:10px}
.mp-vs-market-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px}
.mp-vs-market-grid>div {
    background:#fff;
    border-radius:8px;
    padding:10px 12px;
    min-width:0}
.mp-vs-market-grid small {
    display:block;
    font-size:10px;
    color:#65796b;
    margin-bottom:4px}
.mp-vs-market-grid strong {
    font-size:20px;
    line-height:1.1;
    color:#1f3a2c;
    white-space:nowrap}
.mp-vs-market-diff.is-up strong {
    color:#15803d}
.mp-vs-market-diff.is-down strong {
    color:#b91c1c}
.mp-vs-market .mp-data-note {
    margin-top:8px}
@media (max-width:640px) {
    .mp-vs-market-grid {
        grid-template-columns:1fr 1fr}
    .mp-vs-market-diff {
        grid-column:1 / -1}
}
