.home-pk-entry {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px 24px;
    margin-bottom: 24px;
    border: 1px solid #dfe8e2;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 2px 5px #00000008;
    color: #167447;
    transition: border-color .15s, box-shadow .15s;
}
.home-pk-entry:hover { color: #125d39; border-color: #83b397; box-shadow: 0 3px 10px #143d2710; }
.home-pk-entry:focus-visible { outline: 3px solid #167447; outline-offset: 3px; }
.home-pk-icon {
    display: grid;
    place-items: center;
    flex: 0 0 44px;
    height: 44px;
    border-radius: 12px;
    background: #edf6f0;
    font-size: 20px;
}
.home-pk-copy { display: grid; gap: 4px; min-width: 0; }
.home-pk-copy strong { font-size: 17px; line-height: 1.4; font-weight: 600; }
.home-pk-copy > span { color: #68766e; font-size: 13px; line-height: 1.5; }
.home-pk-arrow { margin-left: auto; font-size: 24px; }
@media (max-width: 575px) {
    .home-pk-entry { gap: 12px; padding: 16px; }
    .home-pk-copy strong { font-size: 15px; }
}

.pk-overview-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 24px;
}
.pk-overview-eyebrow {
    display: block;
    color: #167447;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    margin-bottom: 10px;
}
.pk-overview h1 { font-size: clamp(24px, 2.5vw, 34px); line-height: 1.2; margin-bottom: 12px; }
.pk-overview-heading p, .pk-overview-empty p { color: #52645c; line-height: 1.6; }
.pk-back-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    border: 1px solid #c6dfd0;
    border-radius: 8px;
    background: #edf7f0;
    color: #12613b;
    padding: 11px 16px;
    font-size: 14px;
    font-weight: 600;
}
.pk-back-link:hover { color: #fff; background: #167447; border-color: #167447; }
.pk-back-link:focus-visible, .pk-overview .division_name a:focus-visible { outline: 3px solid #123d28; outline-offset: 3px; }
.pk-overview-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 20px; }
.pk-season-picker { margin-bottom:24px; }
.pk-navigation-status:empty { display:none; }
.pk-navigation-status { padding:10px 0; color:#52645c; font-size:14px; }
#pk-overview-content, #pk-ranking-content, #pk-schedule-content { position:relative; }
#pk-schedule-content[aria-busy="true"]:not([data-refresh="background"]) .pk-schedule-results,
#pk-overview-content[aria-busy="true"] .pk-overview-grid,
#pk-ranking-content[aria-busy="true"] .pk-ranking-results { opacity:.55; }
.pk-navigation-status[data-state="loading"] { position:absolute; top:-12px; left:0; right:0; height:4px; padding:0; overflow:hidden; background:#dceee3; border-radius:4px; font-size:0; }
.pk-navigation-status[data-state="loading"]::before { content:""; display:block; height:100%; width:35%; background:#167447; border-radius:4px; animation:pk-loading 1.2s ease-in-out infinite; }
@keyframes pk-loading { from { transform:translateX(-100%); } to { transform:translateX(290%); } }
@media (prefers-reduced-motion:reduce) { .pk-navigation-status[data-state="loading"]::before { animation:none; width:100%; } }
.pk-view-tabs { display:flex; flex-wrap:wrap; gap:8px; }
.pk-view-tab { display:block; padding:13px 22px; color:#52645c; border:1px solid #dfe8e2; border-radius:8px; font-size:16px; font-weight:600; text-align:center; }
.pk-view-tab:hover { background:#edf7f0; color:#12613b; }
.pk-view-tab.is-selected { background:#167447; border-color:#167447; color:#fff; }
.pk-view-tab.is-disabled { color:#939e97; background:#f5f6f5; }
.pk-season-links { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:20px; padding-top:20px; border-top:1px solid #edf0ed; }
.pk-season-links > span { color:#68766e; font-size:13px; margin-right:8px; }
.pk-season-links a { padding:9px 14px; border:1px solid #dfe8e2; border-radius:6px; color:#52645c; font-size:14px; }
.pk-season-links a:hover { color:#167447; border-color:#83b397; }
.pk-season-links a.is-selected { background:#edf7f0; border-color:#167447; color:#12613b; font-weight:700; }
.pk-season-picker a:focus-visible { outline:3px solid #167447; outline-offset:3px; }
@media (max-width:575px) {
    .pk-view-tab { flex:1; padding:12px; font-size:14px; }
    .pk-season-links > span { width:100%; margin:0 0 4px; }
}
.pk-competition-card .single_home { height: 100%; }
.pk-competition-card .competition-title { font-size: 22px; line-height: 1.4; overflow-wrap: anywhere; }
.pk-overview .division_name li { padding: 0; }
.pk-overview .division_name a { display: block; padding: 14px 16px; color: #fff; line-height: 1.5; }
.pk-overview-empty { grid-column: 1 / -1; padding: 32px; }
.pk-overview-empty h2 { color: #167447; font-size: 22px; margin-bottom: 12px; }
.pk-ranking-link { display:flex; align-items:center; gap:10px; margin-top:16px; padding:16px 20px; background:#fff; border:1px solid #c6dfd0; border-radius:10px; color:#167447; font-weight:600; box-shadow:0 2px 5px #00000008; }
.pk-ranking-link > :last-child { margin-left:auto; }
.pk-ranking-link:hover { background:#edf7f0; color:#12613b; }
.pk-ranking-filters { display:flex; align-items:flex-end; flex-wrap:wrap; gap:16px; margin-bottom:24px; }
.pk-ranking-filters label { display:grid; gap:8px; flex:1 1 180px; min-width:0; font-size:13px; font-weight:600; color:#52645c; }
.pk-ranking-filters :is(select,input) { width:100%; min-width:0; border:1px solid #c6dfd0; border-radius:8px; padding:11px; background:#fff; color:#173c29; font-size:14px; font-weight:400; }
.pk-ranking-filters button { border:0; padding:12px 18px; border-radius:8px; color:#fff; background:#167447; font-size:14px; font-weight:600; }
.pk-ranking-filters button:hover { background:#125d39; }
.pk-ranking-summary { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; }
.pk-ranking-summary h2 { font-size:22px; color:#167447; }
.pk-ranking-summary > span { color:#68766e; font-size:13px; }
.pk-ranking-note { color:#68766e; font-size:13px; margin:12px 0 20px; }
.pk-ranking-table-wrap { overflow-x:auto; }
.pk-ranking-table { width:100%; min-width:900px; border-collapse:collapse; font-size:14px; }
.pk-ranking-table :is(th,td) { padding:13px 12px; border-bottom:1px solid #edf0ed; text-align:right; white-space:nowrap; }
.pk-ranking-table :is(th,td):nth-child(2) { text-align:left; }
.pk-ranking-table thead th { font-size:12px; color:#52645c; font-weight:600; background:#f5f8f6; }
.pk-ranking-table tbody th { font-weight:500; }
.pk-ranking-table .is-ranked { background:#edf7f0; color:#12613b; font-weight:700; }
.pk-ranking-help { margin-top:20px; color:#52645c; font-size:13px; line-height:1.7; }
.pk-ranking-help summary { cursor:pointer; font-weight:600; color:#167447; }
.pk-ranking-help p { margin-top:12px; }
.pk-ranking-link:focus-visible, .pk-ranking-filters :is(select,input,button):focus-visible { outline:3px solid #167447; outline-offset:3px; }
@media (max-width: 767px) {
    .pk-back-link { width: 100%; justify-content: center; }
}
.pk-live-dot { display:inline-block; width:9px; height:9px; border-radius:50%; background:#21a850; flex-shrink:0; }
.pk-calendar-nav { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.pk-calendar-nav a { border:1px solid #c6dfd0; border-radius:7px; padding:8px 12px; color:#167447; font-size:13px; }
.pk-calendar-nav a:hover { background:#edf7f0; }
.pk-calendar-scroll { overflow-x:auto; margin-top:20px; }
.pk-calendar-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); min-width:840px; border-left:1px solid #e0e8e2; border-top:1px solid #e0e8e2; }
.pk-calendar-weekday { background:#f2f7f4; color:#52645c; padding:12px 8px; font-size:12px; font-weight:600; text-align:center; border-right:1px solid #e0e8e2; }
.pk-calendar-day { min-height:120px; padding:8px; border-right:1px solid #e0e8e2; border-bottom:1px solid #e0e8e2; }
.pk-calendar-day > time { display:grid; place-items:center; width:28px; height:28px; margin-bottom:8px; font-size:13px; font-weight:600; }
.pk-calendar-day.is-today > time { border-radius:50%; background:#167447; color:#fff; }
.pk-calendar-day.is-outside { background:#f7f8f7; color:#9da59f; }
.pk-calendar-event { background:#edf6f0; border:1px solid #d6e8dc; border-radius:6px; margin-top:6px; overflow-wrap:anywhere; font-size:11px; line-height:1.5; }
.pk-calendar-event summary { display:block; padding:8px; cursor:pointer; }
.pk-calendar-event summary :is(span,strong) { display:block; }
.pk-calendar-event summary:hover { background:#e0efe5; }
.pk-calendar-event .pk-event-time { color:#167447; font-weight:700; margin-bottom:5px; }
.pk-calendar-event .pk-event-result { margin-top:8px; padding-top:6px; border-top:1px solid #c6dfd0; color:#12613b; font-weight:700; }
.pk-calendar-event.is-live { border-color:#21a850; }
.pk-event-details { padding:0 8px 10px; color:#52645c; }
.pk-event-details a { display:inline-block; margin-top:8px; color:#12613b; font-weight:600; }
.pk-schedule-empty { padding:20px 0; color:#68766e; font-size:14px; }
.pk-live-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr)); gap:16px; }
.pk-live-card { border:1px solid #d6e8dc; border-radius:10px; padding:20px; }
.pk-live-card-heading { gap:12px; flex-wrap:wrap; margin-bottom:16px; }
.pk-live-card-heading .pk-event-meta { flex:1 1 180px; margin-bottom:0; }
.pk-live-card-heading button { flex-shrink:0; }
.pk-live-card-heading button:focus-visible { outline:3px solid #167447; outline-offset:3px; }

.pk-event-meta { font-size:12px; color:#68766e; line-height:1.6; margin-bottom:16px; }
.pk-event-live { display:inline-block; background:#e1f4e8; color:#167447; border-radius:4px; padding:2px 7px; margin-right:6px; font-weight:700; }
.pk-live-player { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:12px 0; }
.pk-live-player strong { font-size:14px; font-weight:600; }
.pk-live-player > span { color:#167447; white-space:nowrap; font-size:24px; font-weight:700; }
.pk-live-player small { color:#68766e; font-size:13px; font-weight:400; }
.pk-event-link { display:inline-block; color:#167447; font-size:14px; font-weight:600; }
.pk-calendar-nav a:focus-visible, .pk-calendar-event summary:focus-visible, .pk-event-link:focus-visible { outline:3px solid #167447; outline-offset:2px; }

.pk-season-block{grid-column:1/-1}
.pk-season-heading{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:20px}
.pk-season-heading h2{font-size:24px;line-height:1.4;color:#167447;text-align:left}
.pk-season-count{white-space:nowrap;color:#68766e;font-size:13px}
.pk-round-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px}
.pk-round-card h3{margin-bottom:16px}
.pk-round-pending{color:#68766e}
.pk-overview .division_name{margin-bottom:0}
.pk-overview .division_name a{padding:12px;color:#fff}
@media(max-width:575px){.pk-season-heading{display:block}.pk-season-count{display:inline-block;margin-top:8px}.pk-season-heading h2{font-size:22px}}

.pk-location-card{margin-top:16px}
.pk-stand-sidebar .pk-location-card{margin-top:0}
