/* Native-shaped sheets on phones; desktop panels keep their original layout. */
@media(max-width:600px),(max-height:520px) and (pointer:coarse) {
  .tool-tray, .search-slot .alp-search.is-open.tool-tray {
    position:fixed;z-index:26;left:0;right:0;top:auto;
    bottom:var(--tool-keyboard-offset,0px);width:100%;max-width:none;
    height:min(340px,45dvh);max-height:calc(var(--tool-viewport-height,100dvh) - 12px - env(safe-area-inset-top));
    display:flex;flex-direction:column;overflow:clip;isolation:isolate;
    padding:0 env(safe-area-inset-right) calc(38px + var(--tool-safe-bottom,env(safe-area-inset-bottom))) env(safe-area-inset-left);
    border:1px solid #ffffffa6;border-radius:23px 23px 0 0;background:#f6f5ef;
    box-shadow:0 -10px 38px #1e352324;color:#28382e;backdrop-filter:none;
  }
  .tool-tray[data-tool-tray=expanded], .search-slot .alp-search.is-open.tool-tray[data-tool-tray=expanded] {height:min(74dvh,680px)}
  /* Sun opens as a clock and one scrubber. The same nodes survive expansion,
     dismissal and desktop restoration; there is no competing slider. */
  .tool-tray.sun-panel[data-tool-tray=compact]:not([data-tray-preview]) {height:auto}
  .tool-tray.sun-panel[data-tool-tray=compact]:not([data-tray-preview]) .tool-tray-content {flex:0 1 auto;padding-top:0;padding-bottom:12px}
  .tool-tray.sun-panel[data-tool-tray=compact]:not([data-tray-preview]) .sun-panel-scroll {display:block}
  .tool-tray.sun-panel[data-tool-tray=compact]:not([data-tray-preview]) .tool-tray-detail {display:none!important}
  .tool-tray.sun-panel .tool-tray-title {display:none}
  .tool-tray .sun-time-summary {flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:2px 4px}
  .tool-tray .sun-time-summary output {font-size:24px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.5px;line-height:1.2}
  .tool-tray #sun-time-context {display:block;font-size:11px;line-height:1.4;color:#687367;overflow-wrap:anywhere}
  .tool-tray-grab {flex:none;touch-action:none;user-select:none;padding:8px 16px 0;cursor:ns-resize}
  .tool-tray-grip {display:block;width:34px;height:4px;margin:0 auto 4px;background:#bdc8b4;border-radius:4px}
  .tool-tray-heading {display:flex;align-items:center;gap:3px;min-height:44px}
  .tool-tray .tool-tray-title {flex:1;min-width:0;margin:0 5px 0 4px;font-size:17px;font-weight:550;letter-spacing:-.4px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .tool-tray-heading>.tool-tray-toggle, .tool-tray-heading>.tool-tray-minimize, .tool-tray-heading>.close-button, .tool-tray-heading>.osm-close,
  .tool-tray-heading>#close-sun, .tool-tray-heading>.search-cancel {
    display:grid;place-items:center;position:static;inset:auto;flex:none;width:44px;min-width:44px;height:44px;min-height:44px;
    padding:0;margin:0;border:0;border-radius:10px;background:transparent;color:#63735f;font-size:24px;
  }
  .tool-tray-heading>.tool-tray-minimize:after {content:"";width:13px;border-top:1.5px solid currentColor}
  .tool-tray-heading>.tool-tray-minimize[hidden] {display:none}
  .tool-tray-heading>.tool-tray-toggle:after {content:'';width:7px;height:7px;border-top:1.5px solid currentColor;border-left:1.5px solid currentColor;transform:rotate(45deg);margin-top:5px}
  .tool-tray-heading>.tool-tray-toggle[aria-expanded=true]:after {transform:rotate(225deg);margin-top:-3px}
  .tool-tray-heading>button:focus-visible {outline:2px solid #7e9875;outline-offset:-3px}
  .tool-tray-heading>button:hover {background:#e8edde}
  .tool-tray-content {min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;touch-action:pan-y;padding:12px 20px 18px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
  .tool-tray[data-sheet-motion] .tool-tray-content {pointer-events:none;overflow:hidden}
  .tool-tray .sun-panel-heading, .tool-tray .osm-panel-header {display:none}
  .tool-tray .sun-panel-scroll, .tool-tray .osm-panel-content {padding:0;max-height:none;overflow:visible}
  .tool-tray .osm-panel-footer {margin:12px 0 0;padding:0;background:transparent}
  .tool-tray .fine-print, .tool-tray .ski-note, .tool-tray .piste-note, .tool-tray .trail-note {font-size:11px}
  .tool-tray .eyebrow {display:none}
  .tool-tray input, .tool-tray select {font-size:16px}
  .tool-tray button, .tool-tray summary, .tool-tray .osm-filter, .tool-tray .osm-visibility {min-height:44px}
  .tool-tray .sun-clock-row output {font-size:29px}
  .tool-tray .sun-point-result {margin-top:12px}
  .tool-tray-open .place-panel {display:none}
  .tool-tray-open .map-footer {position:fixed;z-index:28;color:#63745f;text-shadow:none}
  .tool-tray-open .map-footer a, .tool-tray-open .cesium-credit-textContainer a {color:#63745f!important}
  .tool-tray-open .cesium-credit-textContainer, .tool-tray-open .cesium-credit-textContainer * {text-shadow:none!important}
  .tool-tray-keyboard .map-footer {display:none}
  .tool-tray-keyboard .tool-tray {padding-bottom:12px}
  .tool-tray.alp-search .tool-tray-content {display:flex;flex-direction:column;padding-top:8px}
  .tool-tray.alp-search .search-bar {flex:none;width:100%;height:50px;border-radius:12px;background:#fff;outline:1px solid #d4ddce;box-shadow:none}
  .tool-tray.alp-search .search-toggle {border-radius:12px 0 0 12px!important}
  .tool-tray.alp-search .search-panel {position:static;display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden;border:0;border-radius:0;box-shadow:none;background:transparent;animation:none;margin-top:8px}
  .tool-tray.alp-search .search-results {flex:1;min-height:0;max-height:none!important;padding:0}
  .tool-tray.alp-search .search-status {flex:none;padding:10px 0 6px}
  .tool-tray.alp-search .search-sources {flex:none;padding:9px 0 0}
  .tool-tray.alp-search .search-retry {flex:none;margin:4px 0}
}
@media(max-height:520px) and (pointer:coarse) {
  .tool-tray, .search-slot .alp-search.is-open.tool-tray {height:min(230px,62dvh)}
  .tool-tray[data-tool-tray=expanded], .search-slot .alp-search.is-open.tool-tray[data-tool-tray=expanded] {height:calc(var(--tool-viewport-height,100dvh) - 12px)}
}
@media(min-width:600px) and (max-height:520px) and (pointer:coarse) {
  .tool-tray .sun-panel-scroll {display:grid;grid-template-columns:minmax(260px,1fr) minmax(250px,1fr);gap:8px 22px;align-items:start}
  .tool-tray .sun-panel-scroll>* {grid-column:1}
  .tool-tray .sun-details {grid-column:2;grid-row:1/7;margin-top:0}
}
@media(prefers-reduced-motion:reduce) {.tool-tray[data-tray-settling=true] {transition:none}}

@media(max-width:600px),(max-height:520px) and (pointer:coarse) {
  .tool-tray[data-tool-tray=minimized] {height:auto}
  .tool-tray .tool-tray-content[hidden] {display:none}
}
