/* Minya World surfaces. Existing map and source cards remain the foundation. */
:root{--surface:#fff;--surface-2:#f2f6f2;--surface-soft:#e7eee9;--ink:#1b3431;--muted:#5d736c;--line:#dce6df;color-scheme:light}
html,body{overflow:clip}.workspace{overflow:hidden;overflow:clip}
.topbar{background:#132e2c}.brand-mark{border-radius:11px;background:#d9f396;color:#1b3431;border:0;font-weight:750}.eyebrow{color:#b8c9bf;letter-spacing:2px}.brand h1{letter-spacing:-.5px}.phase-nav{background:var(--surface);height:48px}.phase-button{font-size:12px}.phase-button.active{background:#e5f0dc;color:#244931;border:0}.sidebar,.sheet-handle,.selected-panel{background:var(--surface)}.sheet-handle{color:var(--ink)}.sheet-scroll{scrollbar-gutter:stable}.sheet-tabs{overflow-x:auto}.sheet-tabs button{min-height:44px}.sheet-tabs .expand-sheet{margin-left:auto;font-size:18px;min-width:44px;padding:0}.sheet-tabs .collapse-sheet{min-width:44px}.sheet-scroll:focus-visible{outline-offset:-4px}.sheet-heading small{line-height:1.5}.button,.point-row,.filter,.phase-button{touch-action:manipulation}.filter{min-height:44px}.map-action-caption,.compass-action .map-action-caption{font-size:9px}.point-row{min-height:76px}.point-row strong{font-size:14px}.point-row small{font-size:12px}.source-links a,.text-button{min-height:44px}.map-marker .marker-inner{box-shadow:0 2px 5px #183f3520}.app-setting{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;font-size:13px}.app-setting select{font-size:16px;max-width:155px;padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}.app-setting input{width:22px;height:22px;accent-color:var(--green)}.offline-banner{position:fixed;z-index:3001;top:0;left:0;right:0;background:#fff0d2;color:#684621;padding:8px 14px;font-size:12px;text-align:center;pointer-events:none}.ride-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.ride-metrics>div{border:1px solid var(--line);border-radius:12px;padding:13px;background:var(--surface-2)}.ride-metrics strong{display:block;font-size:24px;font-weight:650;letter-spacing:-.7px;font-variant-numeric:tabular-nums}.ride-metrics small{color:var(--muted);font-size:11px;line-height:1.6}.ride-actions{display:flex;gap:8px;flex-wrap:wrap}.ride-actions .button{flex:1}.ride-status{font-size:12px;line-height:1.6;color:var(--muted)}.review-warning{font-size:12px;line-height:1.6;padding:12px;border-radius:10px;background:#fff1df;color:#784d23}.sheet-detent-label{font-size:10px;color:var(--muted);margin-left:4px}.import-card>div{overflow-wrap:anywhere}
@media(max-width:760px){
 .topbar{height:calc(62px + env(safe-area-inset-top));padding:8px 14px;padding-top:calc(8px + env(safe-area-inset-top))}.brand h1{font-size:18px}.eyebrow{font-size:8px;letter-spacing:1.8px}.header-icon{min-width:44px;min-height:44px}.weather-trigger{font-size:11px}.phase-nav{height:46px;padding:4px 8px}.phase-button{font-size:11px}.sidebar,.sidebar[data-open=true],.sidebar[data-open=false]{height:calc(100% - 8px);min-height:0;max-height:none;bottom:0;padding-bottom:env(safe-area-inset-bottom);border-radius:26px 26px 0 0;transform:translate3d(0,calc(100% - 86px - env(safe-area-inset-bottom)),0);transition:transform 280ms cubic-bezier(.22,.75,.25,1);will-change:transform;contain:layout paint}
 .sidebar.dragging{transition:none}.sheet-handle{min-height:86px;height:86px;padding:9px 18px 12px;touch-action:none;user-select:none;-webkit-user-select:none}.grabber{width:37px;height:5px;margin:0 auto 11px;background:#b9c9bf}.sheet-content{overflow:hidden;min-height:0}.sidebar[data-open=false] .sheet-content{visibility:hidden;pointer-events:none}.sheet-tabs{min-height:46px;height:46px}.sheet-tabs button{font-size:12px;padding:0 10px}.sheet-tabs .expand-sheet{display:block}.sheet-scroll{padding-bottom:24px;touch-action:pan-y;overscroll-behavior:contain}.sheet-heading strong{font-size:17px}.sheet-heading small{font-size:11px}.map-search-panel{top:12px;left:12px;right:12px}.filters{gap:7px}.filter{font-size:12px;padding:0 13px}.map-search{height:48px}.search-context>span{font-size:10px}.route-state-chip{font-size:9px;min-height:32px}.map-actions{right:12px;bottom:calc(130px + env(safe-area-inset-bottom))}.map-action{width:48px;height:48px}.compass-action{height:56px}.compass-face{left:12px;top:6px}.map-action-caption{bottom:5px}.map-legend{bottom:calc(105px + env(safe-area-inset-bottom));font-size:9px}.gps-status{bottom:calc(145px + env(safe-area-inset-bottom))}.leaflet-control-attribution{margin-bottom:calc(88px + env(safe-area-inset-bottom))!important}.leaflet-top.leaflet-right{top:163px}.heading-status{top:165px}.selected-panel h2{font-size:25px}.place-subtitle{font-size:13px!important}.place-summary,.selected-panel p{font-size:14px!important}.detail-fact{font-size:13px}.stage-title strong,.stage-card strong{font-size:14px}.stage-body p{font-size:13px}.stage-title small,.stage-condition{line-height:1.6}.stage-body ul{font-size:12px}.place-actions .button{font-size:12px}.sheet-detent-label{display:none}
}
@media(min-width:761px){.sheet-tabs .expand-sheet{display:none}.workspace{grid-template-columns:400px minmax(0,1fr)}.sheet-handle{cursor:default}.sheet-content{visibility:visible;pointer-events:auto}}
html[data-theme=dark]{color-scheme:dark;--surface:#182625;--surface-2:#1e302e;--surface-soft:#283c37;--ink:#e2ece6;--muted:#a4b8ae;--line:#354b42;--forest:#c7e5c4;--green:#9ed1b5;--wash:#13201e;background:var(--wash)}
html[data-theme=dark] body{background:var(--wash);color:var(--ink)}html[data-theme=dark] .topbar{background:#0f1d1c}html[data-theme=dark] .sidebar{border-color:var(--line)}html[data-theme=dark] .phase-button.active{background:#344b35;color:#def2cf}html[data-theme=dark] .phase-button{color:#b0c4b7}html[data-theme=dark] :is(.sheet-handle,.sheet-tabs,.selected-panel,.tool-section,.side-footer,.trip-intro,.points-section){color:var(--ink);border-color:var(--line)}html[data-theme=dark] :is(.point-row:hover,.point-row.selected,.import-card,.stage-card,.track-detail,.planning-stat,.nearby-point,.detail-fact,.filter-explanation,.selected-panel textarea,dialog,.field input,.field textarea,.field select,.track-metrics span){background:var(--surface-2);color:var(--ink);border-color:var(--line)}html[data-theme=dark] :is(.place-section,.point-row,.section-heading,.sheet-tabs){border-color:var(--line)}html[data-theme=dark] .button{background:#263c33;color:#dcecdf;border-color:#476052}html[data-theme=dark] .button.primary{background:#c9e995;color:#243b28}html[data-theme=dark] :is(.planning-status,.bike-access,.review-warning){background:#362d22;color:#f0cc99;border-color:#695138}html[data-theme=dark] .bike-access strong{color:#e4c291}html[data-theme=dark] :is(.place-kicker,.point-row small,.source-date,.note-saved,.detail-fact b,.place-subtitle,.trip-intro p){color:var(--muted)!important}html[data-theme=dark] .weather-live-card{background:#284332;color:#dfeddb}html[data-theme=dark] .weather-live-card small{color:#b1c7b3}html[data-theme=dark] .verified-badge{background:#304936;color:#c8e4c7}html[data-theme=dark] .location-badge{background:#403724;color:#e1c390}html[data-theme=dark] :is(.sheet-count,.stage-number){background:#314b38;color:#d0e5c3}html[data-theme=dark] .selected-panel .coordinate-value{color:#a5d5b4}
@media(prefers-reduced-motion:reduce){.sidebar{transition:none!important;will-change:auto}.map-action.searching{animation:none}}
html[data-theme=dark] :is(.map-search,.filter,.map-action,.map-legend,.heading-status,.leaflet-tooltip){background:var(--surface);color:var(--ink);border-color:var(--line)}html[data-theme=dark] .map-search input{color:var(--ink)}html[data-theme=dark] .map-search button[type=submit]{background:#314a3a;color:#d6eccf}html[data-theme=dark] .filter.active{background:#c9e995;color:#203a29;border-color:#c9e995}html[data-theme=dark] .heading-status span{color:var(--muted)}html[data-theme=dark] .map-action.following{background:#2679c6;color:#fff}html[data-theme=dark] .search-context>span{background:var(--surface);color:var(--ink)}html[data-theme=dark] .route-state-chip{background:#362d22;color:#edce9c}html[data-theme=dark] .map-action.active{background:#284e41;color:#d7ecdc}
@media(max-width:370px){.brand h1{font-size:16px}.phase-button{font-size:10px}.weather-trigger>span:last-child{display:none}.sheet-tabs button{font-size:11px;padding:0 7px}.sheet-heading strong{font-size:15px}}
