/* Readable course selection across Explore, new rounds, and weather. */
#modal .course-result{color:#152820;background:#f5f5ed;padding:16px 18px;border-bottom:1px solid #d5dbd1}
#modal .course-result strong{color:#172c23;font-size:17px;font-weight:650;line-height:1.35}
#modal .course-result span{color:#42564a;font-size:13px;line-height:1.5}
#modal .course-result small{color:#526556;font-size:11px}
#modal .course-result:hover,#modal .course-result.selected{background:#d4efdf;color:#172c23}
#modal .course-result.selected{box-shadow:inset 4px 0 #276b54}
#modal .course-result:focus-visible{outline:3px solid #24674e;outline-offset:-3px}
#modal .course-search-controls input,#modal .course-search-controls select{background:#f5f5ed;color:#172c23;border:1px solid #c9d7cc;border-radius:7px;min-height:46px}
#modal .course-search-controls input::placeholder{color:#596b5e;opacity:1}
#modal .course-search-help,#modal .course-data-credit{color:#bdcabe;line-height:1.7}
#modal .course-data-credit a{color:#c7e7d5}
#modal .course-load-more{color:#233e2e;background:#dfe8dc;font-size:14px}
#modal .course-result-status{color:#e6efdf;background:#23332b;padding:12px 18px;font-size:11px}

/* The aerial is the canvas. Course information floats above it. */
#modal.course-aerial-modal[open]{background:#18271f}
.aerial-explorer{display:block;position:relative;width:100%;height:100%;isolation:isolate}
.aerial-explorer>.aerial-map-wrap{position:absolute;inset:0;min-height:0;width:100%;height:100%}
.aerial-explorer>header{position:absolute;z-index:750;top:20px;left:20px;right:20px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 77px 20px 23px;border:1px solid #ffffff18;border-radius:15px;background:#15231fed;color:#f1f3e9;box-shadow:0 8px 30px #0004;backdrop-filter:blur(18px)}
.aerial-explorer>header>div:first-child{min-width:0}
.aerial-explorer>header span{font:9px/1.4 var(--mono);letter-spacing:.1em;color:#a1ceba}
.aerial-explorer>header h2{font-size:25px;font-weight:600;letter-spacing:-.03em;line-height:1.15;color:#f6f4e9;margin:7px 0 5px;max-width:none;max-height:none}
.aerial-explorer>header p{font-size:12px;color:#c0cec1;margin:0}
.aerial-header-actions{position:static;display:flex;gap:8px;flex:none;align-items:center}
.aerial-header-actions>button{position:static;min-height:44px;border:0;border-radius:7px;padding:11px 15px;background:#34483e;color:#edf2e9;font:13px/1.3 var(--sans);cursor:pointer}
.aerial-header-actions>button:first-child{background:#34483e;color:#edf2e9}
.aerial-header-actions>#aerial-start-round{background:#a8e2ca;color:#152c21;font-weight:650}
.aerial-header-actions>button:hover{filter:brightness(1.1)}
#modal.course-aerial-modal>.modal-heading{top:47px;right:38px}
#modal.course-aerial-modal>.modal-heading .icon-button{background:#35443c;color:#f0f1e6;border:0;border-radius:8px;width:44px;height:44px;min-height:44px}
.aerial-hole-picker{top:155px;left:24px;padding:15px;background:#f3f3e9f5;color:#1c3627;border:0;border-radius:13px;display:block;min-width:190px;max-width:260px;box-shadow:0 5px 20px #0004;backdrop-filter:blur(14px)}
.aerial-hole-label{display:flex;align-items:center;justify-content:space-between;gap:24px;color:#52685a;font:9px/1.5 var(--mono);letter-spacing:.05em}
.aerial-hole-label #aerial-par{color:#2b5840;font-weight:650}
.aerial-hole-switcher{display:flex;align-items:center;gap:8px;margin-top:8px}
.aerial-hole-switcher>button{display:grid;place-items:center;width:36px;height:40px;min-height:40px;background:#e0e8dc;color:#23412e;border:0;border-radius:6px;font:27px/1 var(--sans);cursor:pointer}
.aerial-hole-switcher>button:disabled{opacity:.35;cursor:default}
.aerial-hole-switcher>select{min-width:0;flex:1;width:120px;min-height:40px;padding:4px 7px;border:0;border-radius:5px;background:transparent;color:#193c2a;font:600 22px/1.2 var(--sans)}
.aerial-hole-switcher option{background:#f4f4e9;color:#203e2e}
.aerial-hole-facts{margin:10px 0 0;padding:10px 0 0;border:0;border-top:1px solid #c4d0bf;display:flex;flex-direction:column;gap:5px}
.aerial-hole-facts>span{display:flex;gap:12px;justify-content:space-between;font:10px/1.4 var(--sans);letter-spacing:0;color:#52674e}
.aerial-hole-facts strong{display:inline;margin:0;color:#21492f;font:650 12px/1.4 var(--sans)}
.aerial-explorer>.aerial-yardage{position:absolute;z-index:600;left:24px;bottom:34px;width:365px;max-width:calc(100% - 48px);height:auto;max-height:calc(100% - 315px);padding:20px;border:1px solid #ffffff20;border-radius:15px;color:#eef3e6;background:#172720ed;box-shadow:0 8px 30px #0005;backdrop-filter:blur(18px);overflow:auto;overscroll-behavior:contain}
.aerial-yardage-title{align-items:center;gap:14px;color:#c0d7c4;font:9px/1.5 var(--mono);letter-spacing:.04em}
.aerial-yardage-title>span:last-child{color:#91b29d;font-size:8px;white-space:nowrap}
.aerial-ranges{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:12px;margin:17px 0 21px}
.aerial-ranges>div>span{font:9px/1.4 var(--mono);letter-spacing:.1em;color:#bed2bd}
.aerial-ranges strong{color:#f1f1df;font:500 43px/1 var(--sans);letter-spacing:-.055em;margin-top:8px}
.aerial-ranges>div:nth-child(2) strong{font-size:53px;color:#b5efd6}
.aerial-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.aerial-tools>#aerial-location{grid-column:1/-1;width:100%;background:#b2e8d1;color:#123025;border:0;min-height:43px;font-size:14px}
.aerial-tools>button{min-height:40px;padding:9px 6px;background:#35483c;border:0;border-radius:6px;color:#e3ecdf;font-size:12px;cursor:pointer}
.aerial-tools>button[aria-pressed=true]{background:#d9e6d4;color:#203b2a}
#aerial-message{font-size:12px;line-height:1.5;color:#c4d3bf;margin:14px 0 0}
.aerial-info{margin-top:11px;color:#a9bfa8;font-size:11px}
.aerial-info summary{cursor:pointer;min-height:24px;line-height:1.6}
.aerial-info .aerial-data-note{font-size:11px;color:#bacbb3;line-height:1.6;margin:7px 0 0}
.aerial-map-actions{right:24px;top:155px;left:auto;bottom:auto;gap:8px}
.aerial-map-actions>button{background:#f1f2e6f2;color:#274831;border:0;box-shadow:0 4px 14px #0003;min-height:44px;font-size:12px;padding:10px 14px;border-radius:9px;backdrop-filter:blur(10px)}
.aerial-map-legend{left:auto;right:24px;bottom:45px;padding:10px 12px;background:#172920e6;font-size:9px;gap:11px;max-width:calc(100% - 430px);border:1px solid #ffffff16;border-radius:8px}
.aerial-map-legend strong{font-size:8px;color:#bed6bd}
.aerial-map-wrap .leaflet-control-zoom{border:0;border-radius:9px;overflow:hidden;box-shadow:0 3px 14px #0004;margin-right:24px;margin-bottom:100px}
.aerial-map-wrap .leaflet-control-zoom a{background:#f3f3e8;color:#203e2c;border-color:#c9d6c5;width:42px;height:42px;line-height:42px}
.aerial-map-wrap .leaflet-control-scale{margin-left:24px;margin-bottom:8px}
.aerial-map-wrap .leaflet-control-attribution{font-size:9px;background:#f1f3e7e8;color:#334e36}
.aerial-explorer>.aerial-course-book{position:absolute;inset:145px 20px 20px;z-index:740;background:#f1f2e9;border-radius:14px;padding:30px;box-shadow:0 10px 35px #0005}
.course-aerial-modal button:focus-visible,.course-aerial-modal select:focus-visible{outline:3px solid #7fe3cf;outline-offset:3px}
@media(max-width:1000px) and (min-width:701px){.aerial-explorer>header{gap:12px}.aerial-explorer>header h2{font-size:21px}.aerial-header-actions{gap:5px}.aerial-header-actions>button{font-size:11px;padding:9px}}
@media(max-width:700px){
 .aerial-explorer>header{top:10px;left:10px;right:10px;display:block;padding:15px 15px 12px;border-radius:12px}
 .aerial-explorer>header>div:first-child{padding-right:40px}
 .aerial-explorer>header span{font-size:7px;letter-spacing:.06em}
 .aerial-explorer>header h2{font-size:20px;line-height:1.15;max-width:none;margin:6px 0 5px;max-height:46px;overflow:hidden}
 .aerial-explorer>header p{font-size:11px;max-width:none}
 .aerial-header-actions{position:static;display:grid;grid-template-columns:1fr 1fr 1fr;margin-top:13px;gap:6px}
 .aerial-header-actions>button{position:static;font-size:10px;min-height:38px;padding:8px 5px;white-space:nowrap}
 #modal.course-aerial-modal>.modal-heading{top:23px;right:23px}
 #modal.course-aerial-modal>.modal-heading .icon-button{width:34px;height:34px;min-height:34px}
 .aerial-hole-picker{top:174px;left:12px;padding:10px 12px;min-width:155px;max-width:190px;border-radius:10px}
 .aerial-hole-label{font-size:8px;gap:15px}.aerial-hole-switcher{gap:5px;margin-top:5px}
 .aerial-hole-switcher>button{height:35px;min-height:35px;width:30px;font-size:24px}
 .aerial-hole-switcher>select{font-size:19px;min-height:35px;width:100px;padding:3px}
 .aerial-hole-facts{margin-top:7px;padding-top:7px}.aerial-hole-facts>span{font-size:9px}.aerial-hole-facts strong{font-size:10px}
 .aerial-map-actions{top:174px;right:12px;bottom:auto;left:auto;flex-direction:column;align-items:flex-end;gap:6px}
 .aerial-map-actions>button{font-size:10px;min-height:38px;padding:8px 10px}.aerial-map-actions>#aerial-fit{font-size:22px;width:38px;height:38px;padding:4px}
 .aerial-explorer>.aerial-yardage{left:12px;right:12px;bottom:max(30px,env(safe-area-inset-bottom));width:auto;max-width:none;max-height:38dvh;padding:14px 16px;border-radius:13px}
 .aerial-yardage-title{font-size:8px}.aerial-yardage-title>span:last-child{font-size:7px}
 .aerial-ranges{gap:14px;margin:12px 0 14px}.aerial-ranges strong{font-size:36px;margin-top:5px}.aerial-ranges>div:nth-child(2) strong{font-size:45px}.aerial-ranges>div>span{font-size:8px}
 .aerial-tools{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:5px}
 .aerial-tools>#aerial-location{grid-column:auto;font-size:11px;min-height:40px}.aerial-tools>button{font-size:10px;min-height:40px;padding:8px 3px}
 #aerial-message{font-size:11px;line-height:1.5;margin:10px 0 0}.aerial-info{font-size:10px;margin-top:7px}.aerial-info summary{min-height:20px}
 .aerial-map-legend{top:323px;left:12px;right:auto;bottom:auto;font-size:7px;gap:8px;padding:7px 9px;max-width:calc(100% - 24px)}.aerial-map-legend strong{font-size:6px}
 .aerial-map-wrap .leaflet-control-zoom{margin-right:12px;margin-bottom:300px}.aerial-map-wrap .leaflet-control-zoom a{width:36px;height:36px;line-height:36px}
 .aerial-explorer>.aerial-course-book{inset:166px 10px 18px;padding:22px 16px;border-radius:12px}
 .aerial-map-wrap .leaflet-control-attribution{font-size:7px;max-width:100%}
}
@media(max-height:650px) and (min-width:701px){.aerial-explorer>.aerial-yardage{max-height:calc(100% - 180px)}.aerial-hole-picker{top:140px}.aerial-map-actions{top:140px}.aerial-explorer>header{padding-top:14px;padding-bottom:14px}#modal.course-aerial-modal>.modal-heading{top:36px}}
