.sport-detail{max-width:1120px;margin:auto;padding:48px 28px 64px}.detail-eyebrow{font-size:13px;letter-spacing:.12em;color:var(--green);font-weight:700}.sport-detail h1{font-size:clamp(27px,4vw,42px);line-height:1.4;margin:12px 0 20px}.sport-detail h2{font-size:25px;line-height:1.5;margin:34px 0 18px}.detail-lead{color:var(--muted);max-width:900px}.detail-notice{padding:24px;background:#f4f7ec;border-left:4px solid var(--green);margin:28px 0}.detail-notice p{font-size:15px;line-height:1.85;margin:8px 0 18px}.detail-facts{margin:0;border-top:1px solid var(--line)}.detail-facts>div{display:grid;grid-template-columns:155px 1fr;gap:22px;padding:17px 0;border-bottom:1px solid var(--line)}.detail-facts dt{font-weight:700}.detail-facts dd{margin:0}.detail-note{font-size:14px;color:var(--muted);line-height:1.9}.schedule-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;gap:15px;padding:0;margin:18px 0 28px}.schedule-entry{display:flex;flex-direction:column;gap:6px;background:#f3f7f5;border-top:3px solid var(--green);padding:18px;min-width:0;overflow-wrap:anywhere}.schedule-entry time{font-size:15px;font-weight:700}.schedule-entry strong{font-size:23px;line-height:1.4}.schedule-entry span{font-size:15px;line-height:1.65}.schedule-entry small{font-size:13px;line-height:1.6;color:var(--muted)}.past-dates{margin:25px 0}.past-dates summary{cursor:pointer;font-weight:700;padding:16px;border:1px solid var(--line)}.past-dates summary:focus-visible{outline:3px solid #ec9c22;outline-offset:3px}.past-dates .schedule-entry{background:#f7f7f7;border-color:#a8b5ae}.detail-coaching{padding:0 24px 24px;border:1px solid var(--line);margin:28px 0}.detail-coaching a{color:var(--green)}.detail-source{border-top:1px solid var(--line);margin-top:36px}.detail-source p{font-size:15px}.no-upcoming{background:#f3f7f5;padding:18px}.sport-link-hint{line-height:1.6}.sport-link h3{white-space:normal}@media(max-width:760px){.sport-detail{padding:30px 20px 45px}.sport-detail h1{font-size:29px}.sport-detail h2{font-size:23px}.detail-facts>div{grid-template-columns:1fr;gap:5px;padding:15px 0}.detail-facts dd{font-size:16px}.detail-notice{padding:20px}.detail-notice .button,.detail-source>.button{width:100%;padding:12px 18px;font-size:15px}.schedule-list{grid-template-columns:1fr}.schedule-entry{padding:18px 20px}.schedule-entry time{font-size:16px}.detail-coaching{padding:0 20px 22px}header .back-link{font-size:14px}}
