:root{color-scheme:dark;font-family:Inter,system-ui,sans-serif;color:#e8edf4;background:#111923;--panel:#17222fed;--line:#344358;--accent:#96d9a0;--muted:#a8b5c6}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,.button{background:#24374a;border:1px solid #465a70;color:#f3f7fb;border-radius:9px;padding:9px 12px;cursor:pointer;text-decoration:none}button:hover,.button:hover{background:#344f65}button:disabled{opacity:.5;cursor:wait}input,select,textarea{width:100%;padding:10px;background:#111d29;border:1px solid #465a70;border-radius:7px;color:inherit}input[type=checkbox]{width:auto;accent-color:var(--accent)}label{display:block;margin:10px 0;font-size:14px}h1,h2,h3,p{margin:0 0 14px}h1{font-size:22px}h2{font-size:18px}h3{font-size:15px}small,.muted{color:var(--muted);font-size:12px}.hidden,[hidden]{display:none!important}#mapCanvas{position:fixed;inset:0;touch-action:none}.app-header{position:fixed;top:14px;left:14px;right:14px;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none;z-index:10}.app-header>*{pointer-events:auto}.brand{padding:11px 17px;background:var(--panel);border:1px solid var(--line);border-radius:12px;font-weight:750;color:var(--accent);text-decoration:none}.panel{position:fixed;left:14px;top:76px;bottom:46px;width:360px;background:var(--panel);border:1px solid var(--line);border-radius:14px;z-index:9;display:flex;flex-direction:column;backdrop-filter:blur(12px);overflow:hidden}.tabs{display:flex;gap:4px;flex-wrap:wrap;padding:12px;border-bottom:1px solid var(--line)}.tabs button{flex:1;padding:8px;font-size:13px}.tabs button[aria-selected=true]{color:#092112;background:var(--accent);border-color:var(--accent)}.panel-body{overflow:auto;padding:16px;flex:1;overscroll-behavior:contain}.toolbar{display:flex;gap:8px;margin-bottom:12px}.toolbar>*{flex:1}.route-list{display:flex;flex-direction:column;gap:8px}.route-card{padding:12px;background:#111d29;border:1px solid var(--line);border-radius:10px}.route-card h3{overflow-wrap:anywhere}.card-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.card-actions button,.card-actions a{font-size:12px;padding:6px 8px}.progress{height:4px;border-radius:3px;background:#304153;margin:9px 0;overflow:hidden}.progress span{height:100%;display:block;background:var(--accent)}.status{position:fixed;left:14px;right:14px;bottom:12px;z-index:12;background:var(--panel);border:1px solid var(--line);border-radius:9px;padding:9px 12px;font-size:12px;pointer-events:none;max-height:90px;overflow:auto}.status.error{color:#ffc5b8;border-color:#b56251}.map-controls{position:fixed;right:14px;top:78px;z-index:8;display:flex;flex-direction:column;gap:7px}.map-controls button{width:42px}.coordinates{position:fixed;right:14px;bottom:68px;z-index:8;background:var(--panel);padding:6px 9px;font-size:11px;border-radius:7px}.detail{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.detail ul{padding-left:18px}.summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.summary div{padding:12px;background:#111d29;border-radius:8px}.summary strong{display:block;font-size:22px;color:var(--accent)}.summary small{display:block;margin-top:4px}.badge{border-left:3px solid var(--accent);padding:8px 12px;margin:8px 0;background:#111d29}#loadMore{width:100%;margin:12px 0}.intro{max-width:820px;margin:10vh auto;padding:32px}.intro h1{font-size:clamp(32px,6vw,62px);line-height:1.05;margin:28px 0}.intro p{max-width:650px;line-height:1.7;color:#c4d0df}.intro .button{display:inline-block;margin:12px 0;padding:13px 22px;background:var(--accent);color:#0c2416;font-weight:700}.intro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:36px 0}.intro-grid article{padding:22px;background:#17222f;border:1px solid var(--line);border-radius:12px}.route-info-popup{position:absolute;background:#17222f;border:1px solid #465a70;border-radius:12px;z-index:25;min-width:220px;max-width:330px;padding:16px;color:#f3f7fb;box-shadow:0 8px 30px #0008}.route-info-popup .close-btn{float:right}.route-info-popup button{margin:6px}.attribution{position:fixed;right:12px;bottom:48px;z-index:5;font-size:10px;background:#17222fbb}.attribution a{color:inherit}a{color:var(--accent)}.row{display:flex;align-items:center;gap:8px}.row input{flex:1}.danger{color:#ffc5b8}.pending{border-color:#d9b477}.pending small{color:#ecd498}@media(max-width:640px){.app-header{top:8px;left:8px;right:8px}.brand{padding:10px 12px;font-size:14px}.panel{top:64px;left:8px;width:min(360px,calc(100vw - 64px));bottom:92px}.map-controls{right:8px;top:64px}.coordinates{bottom:68px}.status{left:8px;right:8px;bottom:8px}.intro{margin:5vh auto;padding:22px}.intro-grid{grid-template-columns:1fr}.panel-body{padding:12px}}

.peak-filter-options{margin:10px 0 16px}.peak-filter-options summary{cursor:pointer;color:var(--accent);padding:6px 0}.peak-filters .row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.peak-filters label{min-width:0}#loadMorePeaks{width:100%;margin:12px 0}#peakDetails{padding:12px;margin-bottom:16px;background:#14291d;border:1px solid #527e5a;border-radius:9px}#peakDetails button{margin-top:12px}
.trail-layer-options{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.tab-with-layer{display:flex;align-items:stretch;min-width:0}.tab-with-layer button{min-width:0;overflow-wrap:anywhere;border-top-left-radius:0;border-bottom-left-radius:0}.tab-layer-toggle{display:flex;align-items:center;justify-content:center;flex:none;width:32px;min-height:36px;margin:0;background:#111d29;border:1px solid #465a70;border-right:0;border-radius:9px 0 0 9px;cursor:pointer}.tab-layer-toggle input{margin:0;width:16px;height:16px;cursor:pointer}.tab-layer-toggle:focus-within{outline:2px solid var(--accent);outline-offset:1px}
.map-controls .zoom-level{width:42px;min-height:36px;display:grid;place-items:center;background:var(--panel);border:1px solid var(--line);border-radius:9px;font-size:12px;font-variant-numeric:tabular-nums;cursor:default}
#followLocation[aria-pressed=true]{background:#2365ad;border-color:#b6dafa;color:white}
.regional-build-notice{position:fixed;right:14px;top:270px;z-index:8;width:min(250px,calc(100vw - 28px));padding:10px;background:var(--panel);border:1px solid var(--line);border-radius:9px;font-size:12px}.regional-build-notice progress{display:block;width:100%;margin-top:6px;accent-color:var(--accent)}
.profile-address a{overflow-wrap:anywhere}.profile-address small{display:block;margin-top:6px}
.route-members{display:block;margin-top:6px}
#plannerView>button{margin:0 0 12px}#plannerView .row{flex-wrap:wrap;margin-bottom:12px}#plannerPoints{max-height:180px;overflow:auto;padding-left:28px;font-size:13px}#plannerPoints li{padding:4px 0}#pickRoute[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}
.trail-markings{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 10px}.trail-marking{display:block;flex:none;width:54px;height:36px;background:#fff;border:1px solid #94a3b8;border-radius:3px}
.profile-page section{margin-bottom:28px}.profile-page .summary{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary .stat-maximum{font-size:.6em;color:var(--muted);font-weight:400;white-space:nowrap}.profile-page .badge small{display:block}.profile-page .summary>div{min-width:0;overflow-wrap:anywhere}
.trail-filters,.activity-filters{margin-bottom:14px}.trail-filters summary,.activity-filters summary{cursor:pointer;color:var(--accent);padding:6px 0}.filter-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.filter-row label{min-width:0}.trail-filters button,.activity-filters button{font-size:13px}
