/* Existing layout rules, preserved for BuckeyePreps public football pages.
 * Theme colors are overridden by design.css; never enqueued in wp-admin. */
.bp-shell{max-width:1180px;margin:0 auto;padding:36px 22px 60px}.bp-eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#5b6470;margin-bottom:8px}.bp-title{font-size:clamp(30px,4vw,48px);line-height:1.05;margin:0 0 10px}.bp-subtitle{font-size:17px;color:#5b6470;margin:0 0 24px}.bp-card{background:#fff;border:1px solid #dfe3e8;border-radius:12px;padding:20px;margin:18px 0;box-shadow:0 1px 2px rgba(0,0,0,.03)}.bp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.bp-stat{background:#f6f8fa;border-radius:10px;padding:14px}.bp-stat strong{display:block;font-size:22px}.bp-pill{display:inline-block;border:1px solid #d8dde3;border-radius:999px;padding:5px 10px;margin:0 6px 6px 0;font-size:13px;background:#fff}.bp-button{display:inline-block;background:#173f7a;color:#fff!important;border-radius:8px;padding:9px 14px;text-decoration:none!important;font-weight:700}.bp-button.bp-secondary{background:#eef3f8;color:#173f7a!important}.bp-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:18px 0}.bp-toolbar label{font-size:12px;font-weight:700;display:block;margin-bottom:4px}.bp-toolbar input,.bp-toolbar select{min-height:40px;border:1px solid #cfd6dd;border-radius:6px;padding:6px 9px}.bp-table-wrap{overflow-x:auto}.bp-table{width:100%;border-collapse:collapse}.bp-table th,.bp-table td{padding:11px 10px;border-bottom:1px solid #e5e8eb;text-align:left;vertical-align:middle}.bp-table th{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#5b6470;background:#f8fafb}.bp-table tr:last-child td{border-bottom:0}.bp-team-link{font-weight:750;text-decoration:none}.bp-score{font-weight:800;white-space:nowrap}.bp-muted{color:#6d7680}.bp-week-nav{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0}.bp-week-nav a{padding:7px 11px;border:1px solid #d8dde3;border-radius:7px;text-decoration:none}.bp-week-nav a.is-active{background:#173f7a;color:#fff;border-color:#173f7a}.bp-record{font-size:28px;font-weight:850}.bp-series-title{font-size:22px;font-weight:850}.bp-series-note{font-size:13px;color:#6d7680}.bp-season-nav{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0 20px}.bp-season-nav a{padding:7px 11px;border:1px solid #d8dde3;border-radius:7px;text-decoration:none}.bp-season-nav a.is-active{background:#173f7a;color:#fff;border-color:#173f7a}.bp-notice{padding:14px 16px;background:#f6f8fa;border-left:4px solid #173f7a;border-radius:6px}.bp-matchup{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;text-align:center;margin:26px 0}.bp-matchup .bp-side{font-size:clamp(22px,3vw,34px);font-weight:850}.bp-matchup .bp-versus{font-weight:800;color:#6d7680}.bp-pagination{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.bp-pagination a,.bp-pagination span{padding:7px 10px;border:1px solid #d8dde3;border-radius:6px;text-decoration:none}.bp-pagination .current{background:#173f7a;color:#fff;border-color:#173f7a}.bp-county-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:20px}.bp-county-card{display:block;background:#fff;border:1px solid #dfe3e8;border-radius:12px;padding:16px;text-decoration:none!important;color:inherit!important;transition:transform .12s ease,box-shadow .12s ease}.bp-county-card:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,0,0,.07)}.bp-county-card strong{display:block;font-size:18px;margin-bottom:5px}.bp-team-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.bp-team-card{border:1px solid #e0e4e8;border-radius:10px;padding:14px;background:#fff}.bp-team-card h3{margin:0 0 6px;font-size:18px}.bp-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.bp-map-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:22px;align-items:start}.bp-map-panel{position:relative;background:linear-gradient(180deg,#f8fbfe,#eef4f8);border:1px solid #dce4eb;border-radius:14px;padding:12px;min-width:0;overflow:hidden}.bp-ohio-map{display:block;width:100%;height:auto;aspect-ratio:1}.bp-ohio-map path{stroke:#fff;stroke-width:1.35;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .12s ease,filter .12s ease}.bp-ohio-map a:hover path,.bp-ohio-map a:focus path{fill:#f5b041!important;filter:brightness(.98)}.bp-ohio-map a:focus{outline:none}.bp-ohio-map a:focus path{stroke:#111827;stroke-width:2.5}.bp-map-tooltip{position:absolute;z-index:5;pointer-events:none;background:#111827;color:#fff;padding:7px 9px;border-radius:7px;font-size:13px;line-height:1.25;box-shadow:0 6px 18px rgba(0,0,0,.18);display:none;width:max-content;max-width:calc(100% - 16px);box-sizing:border-box;white-space:normal}.bp-map-side{background:#fff;border:1px solid #dfe3e8;border-radius:12px;padding:16px;min-width:0}.bp-map-side h3{margin:0 0 8px}.bp-map-jump{width:100%;min-width:0;max-width:100%;box-sizing:border-box;min-height:42px;border:1px solid #ccd5dd;border-radius:7px;padding:7px 9px}.bp-map-go{margin-top:10px;border:0;cursor:pointer;font:inherit}.bp-map-legend{display:grid;gap:8px;margin-top:16px}.bp-map-legend-row{display:flex;align-items:center;gap:9px;font-size:13px}.bp-map-swatch{width:20px;height:14px;border-radius:3px;border:1px solid rgba(0,0,0,.08)}.bp-map-error{padding:18px;background:#fff6e8;border:1px solid #f1d39b;border-radius:10px}.bp-map-loading{display:flex;min-height:520px;align-items:center;justify-content:center;text-align:center;color:#69737e;font-weight:650}.bp-map-featured{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.bp-map-featured a{display:block;padding:8px 9px;background:#f6f8fa;border-radius:7px;text-decoration:none!important;font-size:13px}@media(max-width:850px){.bp-map-layout{grid-template-columns:1fr}.bp-map-side{order:1}}@media(max-width:700px){.bp-shell{padding:24px 14px 44px}.bp-table th,.bp-table td{padding:9px 7px}.bp-matchup{grid-template-columns:1fr;gap:6px}.bp-matchup .bp-versus{font-size:12px}}

            .bp-schedule-filters,.bp-directory-filters{display:grid;grid-template-columns:minmax(210px,2fr) repeat(3,minmax(110px,1fr));gap:12px;align-items:end;background:#fff;border:1px solid #dfe3e8;border-radius:12px;padding:16px;box-sizing:border-box}
            .bp-directory-filters{grid-template-columns:minmax(210px,2fr) repeat(2,minmax(150px,1fr))}
            .bp-schedule-filters>div,.bp-directory-filters>div{min-width:0}
            .bp-schedule-filters select,.bp-directory-filters select,.bp-directory-filters input:not([type=hidden]){width:100%;max-width:100%;box-sizing:border-box;background:#fff;color:#18212d;font-size:16px}
            .bp-region-link{white-space:nowrap}
            .bp-filter-actions{display:flex;flex-wrap:wrap;gap:8px;grid-column:1/-1;align-items:center}
            .bp-filter-actions .bp-button{border:0;cursor:pointer;line-height:1.5;font-size:15px}
            .bp-schedule-filters :focus-visible,.bp-directory-filters :focus-visible,.bp-week-nav a:focus-visible{outline:3px solid #5179ad;outline-offset:3px}
            @media(max-width:850px){.bp-schedule-filters,.bp-directory-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.bp-directory-filters>div:first-of-type{grid-column:1/-1}}
            @media(max-width:480px){.bp-schedule-filters,.bp-directory-filters{grid-template-columns:minmax(0,1fr);padding:14px}.bp-filter-actions .bp-button{flex:1;text-align:center}}
