.events-panel{position:absolute;z-index:25;right:calc(var(--edge) + 60px);top:calc(var(--rail-top) + 30px + env(safe-area-inset-top));width:min(340px,calc(100vw - 110px));max-height:calc(100dvh - 240px);overflow:auto;overscroll-behavior:contain;color:var(--ink);font:12px/1.5 system-ui,sans-serif;padding:16px}.events-panel[hidden]{display:none!important}.events-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.events-heading h2{font-size:17px;line-height:1.3;margin:0}.events-close{position:static;flex:none}.events-filters{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.events-field{display:grid;gap:4px;flex:1;min-width:115px;color:#53634f;font-size:11px}.events-field select{width:100%;min-height:42px;border:1px solid #cbd4c4;border-radius:8px;background:#fff;color:#263d31;font:12px system-ui;padding:6px}.events-visible{display:flex;align-items:center;gap:8px;min-height:44px}.events-visible input{width:17px;height:17px;accent-color:#87602e}.events-list{display:grid;gap:8px}.events-row{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;text-align:left;border:1px solid #d7ddcf;border-radius:10px;background:#fff9;padding:12px;color:#273e31;font:12px/1.45 system-ui;cursor:pointer}.events-name{font-size:14px;font-weight:600}.events-meta{font-size:11px;color:#5c6b54}.events-status,.events-note{font-size:11px;color:#586950}.events-detail h3{font-size:21px;line-height:1.2;margin:16px 0 10px;overflow-wrap:anywhere}.events-detail p{margin:9px 0}.events-detail .events-dates{font-size:14px;font-weight:600}.events-detail a,.events-panel> a{color:#365844;display:inline-block;min-height:40px;padding-top:8px;text-underline-offset:3px}.events-actions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 8px}.events-actions .events-action,.events-back,.events-retry{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:44px;min-height:44px;border:1px solid #b9c8b2;background:#fff8;border-radius:10px;padding:10px 12px;color:#354e38;cursor:pointer;font:12px/1.4 system-ui;text-align:center;text-decoration:none;overflow-wrap:anywhere}.events-actions .events-action{flex:1 1 10em;min-width:44px}.events-actions .events-action-primary{background:#244d40;border-color:#244d40;color:#fff;font-weight:600;flex-basis:100%}.events-actions .events-action:hover{background:#e8edde}.events-actions .events-action-primary:hover{background:#1a3d32}.events-actions .events-action[aria-disabled=true]{opacity:.65;cursor:progress}.events-back{background:transparent;border-color:transparent;padding-left:0;padding-right:8px}.events-discoveries{border-top:1px solid #d2d9c9;margin-top:16px;padding-top:10px}.events-discoveries h3{font-size:13px;margin:2px 0 10px}.events-panel :is(button,select,input,a):focus-visible{outline:2px solid #597b43;outline-offset:3px}#events[data-layer-visible=true]{color:#785724;background:#f1e6cc}#events[aria-expanded=true]{color:white;background:#806136}
/* Seven controls remain reachable on narrow screens without horizontal overflow. */
.terrain-tools{flex-wrap:wrap;width:max-content;max-width:calc(100vw - 100px)}
@media(max-width:600px){.events-panel{right:80px;width:calc(100vw - 98px);max-height:55dvh;padding:14px}.events-panel .tool-tray-content{padding:8px 18px 18px}.events-panel .tool-tray-heading h2{font-size:15px}.events-row{min-height:68px}.events-field select{font-size:16px}}
@media(max-height:520px){.events-panel{top:88px;max-height:calc(100dvh - 140px)}}

.events-course{margin:16px 0;padding:15px;border:1px solid #c9d9ce;border-radius:13px;background:#e9f0e7}.events-course .events-course-badge{margin:0 0 7px;font-size:10px;font-weight:650;letter-spacing:.055em;text-transform:uppercase;color:#43645b}.events-course h4{margin:0 0 7px;font-size:16px;line-height:1.3;font-weight:600;color:#203e35}.events-course-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px;margin:15px 0}.events-course-stats dt{font-size:10px;color:#587067}.events-course-stats dd{margin:2px 0 0;color:#203e35;font-size:20px;font-weight:550;font-variant-numeric:tabular-nums;line-height:1.15}.events-course-status{font-size:11px;color:#546a60}.events-course-status:empty{display:none}.events-course .events-actions{margin-top:12px}.events-course .events-action-primary{flex-basis:10em}.events-course .events-note{font-size:11px;line-height:1.5}.events-panel .tool-tray-content>.events-heading:empty{display:none}

.events-link-status{display:inline-block;padding:4px 8px;border-radius:6px;background:#eee2ca;color:#684f28;font-weight:600}.events-share-url{display:block;width:100%;box-sizing:border-box;min-height:44px;margin:8px 0;border:1px solid #b9c8b2;border-radius:8px;background:#fff;color:#354e38;padding:9px;font:12px system-ui}

.events-course-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin:10px 0 4px;font-size:10px;color:#43645b}.events-course-key{display:inline-flex;align-items:center;gap:5px}.events-course-key:before{content:"";display:inline-block;width:18px;height:5px;border:1px solid #393246;border-radius:3px;background:#32d74b}.events-course-descent:before{background:#ff453a}
.events-course-level:before{background:#c4cbc7}.events-course-legend[hidden]{display:none}

/* Clear all event pins without reopening the events list. The map action stays
   outside the sheet so closing or minimizing it never hides the escape hatch. */
.events-clear{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;max-width:100%;padding:10px 13px;border:1px solid #b9c8b2;border-radius:12px;background:#f6f5ef;color:#354e38;font:500 12px/1.4 system-ui;cursor:pointer;text-align:left}
.events-clear:before{content:'×';font-size:20px;font-weight:400;line-height:1}
.events-clear:hover{background:#e8edde}
.events-clear:focus-visible{outline:2px solid #597b43;outline-offset:3px}
.events-clear[hidden]{display:none!important}
.events-panel>.events-clear,.events-panel .tool-tray-content>.events-clear{margin:8px 0 4px}
/* Yield to Sources (19), detail panels (22) and the Layers rail (24). */
.events-map-clear{position:absolute;z-index:18;left:var(--edge);top:calc(var(--rail-top) + 48px + env(safe-area-inset-top));max-width:calc(100vw - 2 * var(--edge) - 64px)}
body[data-offline-selecting=true] .events-map-clear{display:none!important}
