/*
  CODEX PEAK RENDER CONTRACT
  Peak detail CSS is copied into hashed css/peak-assets output by scripts/prerender-peaks.js.
  If panel layout changes here, update all peak templates/runtime owners in config/render-contracts.json,
  then run npm run update:peak-rendering before reporting complete.
*/
      :root{
        --bg:#0a0a0a;
        --panel:#12121a;
        --card:#171a22;
        --ink:#ffffff;
        --muted:#a5b4c3;
        --field-label:#d7e1ed;
        --stroke:#ffffff33;
        --accent:var(--nh48-accent, #22c55e);
        --accent-strong:var(--nh48-accent, #22c55e);
        --peak-tool-control-height:40px;
        --lower-section-gap:24px;
        --lower-panel-padding:clamp(16px, 2vw, 24px);
        --lower-panel-radius:12px;
        --lower-panel-body-gap:16px;
      }
      body{
        margin:0;
        background:var(--bg);
        color:var(--ink);
        font-family:system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
        -webkit-font-smoothing:antialiased;
        text-rendering:optimizeLegibility;
      }
      h2,
      h3{
        line-height:1.25;
      }
      main > section{
        margin:0 0 var(--lower-section-gap);
        width:100%;
        max-width:100%;
        box-sizing:border-box;
      }
      main > section > .section-title{
        margin:0;
      }
      main a:not(.icon-btn):not(.primary-btn):not(.primary-link-btn):not(.peak-map-cta):not(.trail-branding):not(.outdoor-network-directions):not(.peak-section-panel__pill){
        color:var(--accent);
        text-decoration:underline;
        text-decoration-thickness:1px;
        text-underline-offset:3px;
        transition:color 0.2s ease, text-decoration-color 0.2s ease;
      }
      main a:not(.icon-btn):not(.primary-btn):not(.primary-link-btn):not(.peak-map-cta):not(.trail-branding):not(.outdoor-network-directions):not(.peak-section-panel__pill):hover{
        color:var(--accent);
        text-decoration-color:var(--accent);
      }
      main a:not(.icon-btn):not(.primary-btn):not(.primary-link-btn):not(.peak-map-cta):not(.trail-branding):not(.outdoor-network-directions):not(.peak-section-panel__pill):visited{
        color:var(--accent);
      }

      /* Navigation Menu - using shared nav from nav.html */
      .top-nav{
        background:var(--panel);
        border-bottom:1px solid var(--stroke);
        padding:12px 0;
        margin-bottom:16px;
      }
      .nav-container{
        max-width:1100px;
        margin:0 auto;
        padding:0 16px;
        display:flex;
        justify-content:space-between;
        align-items:center;
      }
      .nav-brand{
        display:flex;
        align-items:center;
        text-decoration:none;
      }
      .nav-brand img{
        height:40px;
        width:auto;
      }
      .sr-only{
        position:absolute;
        width:1px;
        height:1px;
        padding:0;
        margin:-1px;
        overflow:hidden;
        clip:rect(0,0,0,0);
        border:0;
        white-space:nowrap;
      }
      .nav-links{
        display:flex;
        gap:24px;
        align-items:center;
      }
      .nav-links a{
        color:var(--ink);
        text-decoration:none;
        font-size:0.95rem;
        transition:color 0.2s ease;
        white-space:nowrap;
      }
      .nav-links a:hover{
        color:var(--accent);
      }
      .nav-toggle{
        display:none;
        background:none;
        border:none;
        color:var(--ink);
        font-size:1.5rem;
        cursor:pointer;
        padding:4px;
      }
      @media(max-width:640px){
        .top-nav{ padding:10px 0; margin-bottom:12px; }
        .nav-container{ padding:0 12px; flex-wrap:wrap; }
        .nav-toggle{ display:block; }
        .nav-links{
          display:none;
          width:100%;
          flex-direction:column;
          gap:12px;
          margin-top:12px;
          padding-top:12px;
          border-top:1px solid var(--stroke);
          align-items:flex-start;
        }
        .nav-links.active{
          display:flex;
        }
        .nav-brand img{ height:32px; }
      }
      .wrap{
        max-width:900px;
        margin:0 auto;
        padding:16px;
      }
      @media(max-width:640px){
        .wrap{ padding:12px; }
      }
      .breadcrumb-nav{
        margin:0 0 12px 0;
        color:var(--muted);
        font-size:0.9rem;
      }
      .breadcrumb-nav ol{
        list-style:none;
        padding:0;
        margin:0;
        display:flex;
        flex-wrap:wrap;
        gap:6px;
        align-items:center;
      }
      .breadcrumb-nav li{
        display:flex;
        align-items:center;
        gap:6px;
      }
      .breadcrumb-nav li+li::before{
        content:'/';
        color:var(--muted);
        opacity:0.5;
      }
      .breadcrumb-nav a{
        color:var(--accent);
        font-weight:700;
        text-decoration:none;
      }
      .breadcrumb-nav a:hover{
        color:var(--accent-strong);
      }
      .peak-hero{
        position:relative;
        min-height:200px;
        padding:28px 24px 18px;
        border-radius:14px;
        color:#fff;
        background-size:cover;
        background-position:center;
        background-repeat:no-repeat;
        background-color:var(--panel);
        background-image:
          radial-gradient(circle at 18% 22%, rgba(34,197,94,0.18), transparent 42%),
          linear-gradient(145deg, #111827, #0a101c 58%, #07110c);
        display:grid;
        grid-template-columns:minmax(0, 1fr) auto;
        gap:1rem;
        align-items:start;
        margin:12px 0 16px;
        overflow:hidden;
      }
      .peak-hero-content,
      .peak-tools{
        position:relative;
        z-index:1;
      }
      .peak-hero-content{
        display:flex;
        flex-direction:column;
        align-self:stretch;
      }
      .peak-hero::before{
        content:"";
        position:absolute;
        inset:0;
        border-radius:inherit;
        background:linear-gradient(to bottom, rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.65));
      }
      .peak-hero-title{
        margin:0;
        font-size:2rem;
        text-shadow:0 4px 10px rgba(0,0,0,0.5);
      }
      .peak-hero-subtitle{
        margin:10px 0 0;
        color:#f5f8ff;
        font-size:1.02rem;
        line-height:1.45;
        text-shadow:0 2px 6px rgba(0,0,0,0.45);
      }
      .peak-hero-meta{
        display:flex;
        flex-wrap:wrap;
        gap:10px;
        font-size:0.95rem;
        color:#f5f8ff;
        text-shadow:0 2px 6px rgba(0,0,0,0.45);
        margin-top:auto;
        padding-bottom:4px;
      }
      .peak-tools{
        display:flex;
        flex-direction:column;
        align-self:stretch;
        justify-content:space-between;
        align-items:flex-end;
        gap:0.5rem;
      }
      .peak-tools .button-row{
        display:flex;
        align-items:center;
        flex-wrap:wrap;
        justify-content:flex-end;
        gap:0.45rem;
      }
      .peak-tools-elevation{
        font-size:0.95rem;
        color:#f5f8ff;
        text-shadow:0 2px 6px rgba(0,0,0,0.45);
        font-weight:500;
        padding-bottom:4px;
      }
      .icon-btn{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        gap:8px;
        min-height:36px;
        padding:6px 12px;
        border-radius:10px;
        border:2px solid #ffffff;
        background:var(--card);
        color:var(--ink);
        cursor:pointer;
        font-size:0.85rem;
        text-transform:uppercase;
        letter-spacing:0.6px;
      }
      .peak-tools .icon-btn{
        width:var(--peak-tool-control-height);
        height:var(--peak-tool-control-height);
        min-width:var(--peak-tool-control-height);
        min-height:var(--peak-tool-control-height);
        flex:0 0 var(--peak-tool-control-height);
        padding:0;
        line-height:1;
        box-sizing:border-box;
      }
      .peak-tools .icon-btn svg,
      .peak-tools .icon-btn .iconify{
        width:20px;
        height:20px;
        flex:0 0 20px;
      }
      .icon-btn:hover{
        border-color:var(--accent);
        color:var(--accent);
      }
      .icon-btn .iconify{
        font-size:1.1rem;
      }
      .nh48-lang{
        display:flex;
        align-items:center;
        gap:6px;
        flex-wrap:wrap;
        margin:0;
      }
      .nh48-lang-menu{
        position:relative;
      }
      .nh48-lang-toggle{
        display:inline-flex;
        align-items:center;
        gap:7px;
        min-height:32px;
        padding:3px 8px;
        border-radius:9px;
        border:2px solid #ffffff;
        background:var(--card);
        color:var(--ink);
        cursor:pointer;
        font-size:0.78rem;
        text-transform:uppercase;
        letter-spacing:0.45px;
      }
      .nh48-lang-toggle .flag{
        font-size:16px;
      }
      .nh48-lang-toggle-text{
        white-space:nowrap;
      }
      .nh48-lang-caret{
        font-size:0.58rem;
        margin-left:2px;
        opacity:0.8;
      }
      .nh48-lang-options{
        position:absolute;
        right:0;
        top:calc(100% + 8px);
        background:var(--card);
        border:2px solid #ffffff;
        border-radius:12px;
        padding:8px;
        display:grid;
        grid-template-columns:repeat(4, minmax(0, 1fr));
        gap:6px;
        min-width:220px;
        box-shadow:0 12px 28px rgba(15, 23, 42, 0.35);
        opacity:0;
        pointer-events:none;
        transform:translateY(-6px);
        transition:opacity 0.15s ease, transform 0.15s ease;
        z-index:4;
      }
      .nh48-lang-menu.open .nh48-lang-options{
        opacity:1;
        pointer-events:auto;
        transform:translateY(0);
      }
      .units-control{
        display:flex;
        align-items:center;
        gap:0;
        margin:0;
        min-height:var(--peak-tool-control-height);
      }
      .units-control label{
        position:absolute;
        width:1px;
        height:1px;
        padding:0;
        margin:-1px;
        overflow:hidden;
        clip:rect(0,0,0,0);
        border:0;
        white-space:nowrap;
      }
      .units-control select{
        min-height:var(--peak-tool-control-height);
        height:var(--peak-tool-control-height);
        background:var(--card);
        color:var(--ink);
        border:2px solid #ffffff;
        border-radius:10px;
        padding:0 10px;
        font-size:0.85rem;
        appearance:none;
        -webkit-appearance:none;
        -moz-appearance:none;
        padding-right:34px;
        background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23ffffff' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
        background-repeat:no-repeat;
        background-position:right 10px center;
        background-size:12px;
      }
      .nh48-lang-label{
        font-size:0.75rem;
        color:#ffffff;
        text-transform:uppercase;
        letter-spacing:0.8px;
        margin-right:4px;
      }
      .nh48-flag{
        width:34px;
        height:34px;
        border-radius:8px;
        border:2px solid #ffffff;
        background:var(--card);
        color:var(--ink);
        display:flex;
        align-items:center;
        justify-content:center;
        cursor:pointer;
        transition:border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
      }
      .nh48-flag .flag{
        font-size:18px;
        line-height:1;
      }
      .nh48-flag.active{
        border-color:var(--accent);
        box-shadow:0 0 0 2px rgba(34, 197, 94, 0.25);
      }
      .nh48-flag:focus-visible{
        outline:2px solid var(--accent);
        outline-offset:2px;
      }
      .seo-links{
        display:flex;
        flex-wrap:wrap;
        gap:6px;
        margin-bottom:16px;
      }
      .seo-links a{
        color:var(--accent);
        text-decoration:none;
        font-size:0.95rem;
      }
      .ml-3{
        margin-left:0.75rem;
      }
      .related-trails{
        margin:16px 0 20px;
        padding:12px 16px;
        background:var(--panel);
        border:1px solid var(--stroke);
        border-radius:10px;
      }
      .related-trails h2{
        margin:0 0 8px;
        font-size:1rem;
      }
      .related-trails ul{
        margin:0;
        padding-left:1.1rem;
        color:var(--ink);
        font-size:0.9rem;
      }
      .related-trails a{
        color:var(--accent);
        text-decoration:none;
      }
      h1{
        margin:0 0 16px;
        font-size:clamp(22px,4vw,30px);
        line-height:1.2;
      }
      @media(max-width:640px){
        h1{ margin:0 0 12px; font-size:clamp(18px,5vw,24px); }
      }
      @media(max-width:900px){
        .peak-hero{
          grid-template-columns:1fr;
        }
        .peak-tools,
        .peak-tools .button-row{
          align-items:flex-start;
          justify-content:flex-start;
        }
        .peak-tools{
          justify-content:flex-start;
        }
        .peak-hero-meta,
        .peak-tools-elevation{
          padding-bottom:0;
        }
      }
      .media{
        background:var(--card);
        border:1px solid var(--stroke);
        border-radius:12px;
        overflow:hidden;
        margin-bottom:16px;
        position:relative;
        min-height:0;
        box-sizing:border-box;
        box-shadow:0 18px 46px rgba(0,0,0,0.35);
        contain:layout paint;
        isolation:isolate;
      }
      .media-loading{
        position:absolute;
        inset:0;
        display:flex;
        align-items:center;
        justify-content:center;
        gap:10px;
        background:rgba(10, 10, 10, 0.6);
        color:var(--accent);
        z-index:5;
      }
      .media-loading[hidden]{
        display:none;
      }
      .loading-spinner{
        width:22px;
        height:22px;
        border-radius:50%;
        border:3px solid rgba(34, 197, 94, 0.25);
        border-top-color:var(--accent);
        animation:spin 0.9s linear infinite;
      }
      .loading-text{
        font-size:0.9rem;
        color:var(--muted);
      }
      .carousel{
        position:relative;
        width:100%;
        height:100%;
        overflow:hidden;
      }
      .media .carousel,
      .media .dots,
      .media .ctrls,
      .media .timer{
        box-sizing:border-box;
        max-width:100%;
      }
      .slide{
        position:absolute;
        inset:0;
        opacity:0;
        pointer-events:none;
        z-index:0;
        transition:opacity .35s ease;
      }
      .slide.active{
        opacity:1;
        pointer-events:auto;
        z-index:1;
      }
      .slide figure{
        margin:0;
        display:flex;
        align-items:center;
        justify-content:center;
        padding:6px;
        box-sizing:border-box;
        height:100%;
      }
      .slide figure img,
      .slide figure video{
        max-height:100%;
        width:100%;
        height:100%;
        object-fit:contain;
        object-position:center;
        display:block;
        border-radius:8px;
      }
      .dots{
        position:absolute;
        bottom:12px;
        left:12px;
        right:12px;
        width:auto;
        max-width:calc(100% - 24px);
        display:flex;
        gap:10px;
        padding:10px;
        background:rgba(10,10,10,0.55);
        border:1px solid rgba(255,255,255,0.18);
        border-radius:12px;
        overflow-x:auto;
        z-index:2;
      }
      .dot{
        position:relative;
        width:70px;
        height:46px;
        border-radius:10px;
        border:1px solid rgba(255,255,255,0.35);
        background-size:cover;
        background-position:center;
        background-repeat:no-repeat;
        background-color:#0f1118;
        cursor:pointer;
        opacity:0.8;
        transition:transform 0.2s ease, opacity 0.2s ease, border-color 0.2s ease;
        flex:0 0 auto;
        padding:0;
        appearance:none;
      }
      .dot.is-video::before{
        content:"";
        position:absolute;
        inset:0;
        border-radius:inherit;
        background:linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.44));
        pointer-events:none;
      }
      .dot.is-video::after{
        content:"";
        position:absolute;
        left:50%;
        top:50%;
        width:0;
        height:0;
        transform:translate(-38%, -50%);
        border-top:8px solid transparent;
        border-bottom:8px solid transparent;
        border-left:12px solid #fff;
        filter:drop-shadow(0 2px 6px rgba(0,0,0,0.65));
        pointer-events:none;
      }
      .dot:focus-visible{
        outline:2px solid var(--accent);
        outline-offset:2px;
      }
      .dot:hover{
        opacity:1;
        transform:translateY(-2px);
      }
      .dot.active{
        opacity:1;
        border-color:var(--accent);
        box-shadow:0 10px 24px rgba(0,0,0,0.35);
      }
      .video-figure{
        width:100%;
        height:100%;
      }
      .media.is-video-active .slide-video.active .video-figure{
        padding-bottom:clamp(82px, 11vw, 100px);
      }
      .video-shell{
        position:relative;
        width:100%;
        height:100%;
        display:flex;
        align-items:center;
        justify-content:center;
        border-radius:8px;
        overflow:hidden;
        background:#05070c;
      }
      .video-poster-button{
        position:relative;
        width:100%;
        height:100%;
        border:0;
        border-radius:8px;
        background-color:#05070c;
        background-position:center;
        background-repeat:no-repeat;
        background-size:contain;
        color:#fff;
        cursor:pointer;
        display:flex;
        align-items:center;
        justify-content:center;
        padding:0;
      }
      .video-poster-button::before{
        content:"";
        position:absolute;
        inset:0;
        background:linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.42));
      }
      .video-poster-button:focus-visible{
        outline:3px solid var(--accent);
        outline-offset:-6px;
      }
      .video-preview{
        position:absolute;
        inset:0;
        width:100%;
        height:100%;
        object-fit:contain;
        background:#05070c;
      }
      .video-play-button{
        position:relative;
        z-index:1;
        width:76px;
        height:76px;
        border-radius:50%;
        background:rgba(10,10,10,0.58);
        border:1px solid rgba(255,255,255,0.46);
        box-shadow:0 16px 40px rgba(0,0,0,0.42);
      }
      .video-play-button::after{
        content:"";
        position:absolute;
        left:31px;
        top:24px;
        width:0;
        height:0;
        border-top:14px solid transparent;
        border-bottom:14px solid transparent;
        border-left:21px solid #fff;
      }
      .video-poster-label{
        position:absolute;
        left:18px;
        bottom:18px;
        z-index:1;
        padding:6px 10px;
        border-radius:999px;
        background:rgba(10,10,10,0.66);
        border:1px solid rgba(255,255,255,0.2);
        color:#fff;
        font-size:0.78rem;
        font-weight:700;
        line-height:1;
      }
      .video-player{
        width:100%;
        height:100%;
        max-height:100%;
        display:block;
        background:#05070c;
      }
      .ctrls{
        position:absolute;
        inset:0;
        left:0;
        right:0;
        width:100%;
        max-width:100%;
        display:flex;
        justify-content:space-between;
        align-items:center;
        pointer-events:none;
        z-index:3;
      }
      .ctrls button{
        background:rgba(10,10,10,0.5);
        border:1px solid rgba(255,255,255,0.45);
        color:#ffffff;
        border-radius:50%;
        width:42px;
        height:42px;
        flex:0 0 42px;
        padding:0;
        margin:0 10px;
        cursor:pointer;
        pointer-events:auto;
        display:flex;
        align-items:center;
        justify-content:center;
        font-size:1.25rem;
        box-shadow:0 12px 28px rgba(0,0,0,0.35);
        transition:transform 0.2s ease, background 0.2s ease, border-color 0.2s ease;
      }
      .ctrls button:hover{
        background:rgba(10,10,10,0.7);
        border-color:var(--accent);
        transform:translateY(-1px);
      }
      .ctrls button:focus-visible{
        outline:2px solid var(--accent);
        outline-offset:2px;
      }
      .timer{
        position:absolute;
        top:8px;
        right:8px;
        display:flex;
        align-items:center;
        gap:8px;
        padding:6px 8px;
        background:rgba(0,0,0,0.35);
        border-radius:12px;
        z-index:4;
      }
      .timer[hidden],
      .media.is-video-active .timer{
        display:none !important;
      }
      .timer-visual{
        position:relative;
        width:56px;
        height:56px;
        display:flex;
        align-items:center;
        justify-content:center;
      }
      .timer svg{
        width:100%;
        height:100%;
        transform:rotate(-90deg);
      }
      .timer-ring{
        fill:none;
        stroke:var(--accent);
        stroke-width:4;
        stroke-linecap:round;
        transition:stroke-dashoffset 0.1s linear;
      }
      .timer-text{
        position:absolute;
        color:var(--accent);
        font-size:0.8rem;
        font-weight:600;
        pointer-events:none;
      }
      .timer-pause{
        background:rgba(255,255,255,0.15);
        color:var(--accent);
        border:1px solid rgba(255,255,255,0.25);
        border-radius:50%;
        width:32px;
        height:32px;
        display:flex;
        align-items:center;
        justify-content:center;
        font-weight:700;
        cursor:pointer;
        transition:background 0.2s ease, transform 0.2s ease;
      }
      .timer-pause:focus-visible{
        outline:2px solid var(--accent);
        outline-offset:2px;
      }
      .timer-pause:hover{
        background:rgba(255,255,255,0.25);
        transform:scale(1.02);
      }

      .masonry-gallery{
        --masonry-cols:3;
        --masonry-rows:3;
        --masonry-row-height:clamp(138px, 18vw, 190px);
        position:relative;
        display:grid;
        grid-template-columns:repeat(var(--masonry-cols), minmax(0, 1fr));
        grid-template-rows:repeat(var(--masonry-rows), var(--masonry-row-height));
        grid-auto-rows:var(--masonry-row-height);
        gap:3px;
        width:100%;
        height:auto;
        min-height:0;
        padding:3px;
        box-sizing:border-box;
        background:#05070c;
      }
      .masonry-gallery,
      .masonry-gallery *{
        box-sizing:border-box;
      }
      .masonry-item{
        position:relative;
        min-width:0;
        min-height:0;
        margin:0;
        overflow:hidden;
        border:1px solid rgba(255,255,255,0.1);
        border-radius:5px;
        background:#0a111c;
      }
      .masonry-button{
        position:relative;
        display:block;
        width:100%;
        height:100%;
        color:#fff;
        text-decoration:none;
        overflow:hidden;
        border-radius:inherit;
        background:#05070c;
      }
      .masonry-item[data-image-state="loading"] .masonry-button::after{
        content:"";
        position:absolute;
        z-index:2;
        top:50%;
        left:50%;
        width:26px;
        height:26px;
        margin:-13px 0 0 -13px;
        border:2px solid rgba(255,255,255,0.22);
        border-top-color:var(--accent);
        border-radius:999px;
        animation:spin 0.85s linear infinite;
        pointer-events:none;
      }
      .masonry-item[data-image-state="loading"] img{
        opacity:0.34;
      }
      .masonry-item[data-image-state="loaded"] img{
        opacity:1;
      }
      .masonry-item[data-image-state="error"]{
        border-color:rgba(248,113,113,0.45);
      }
      .masonry-item[data-image-state="error"] img{
        opacity:0.18;
      }
      .masonry-button img,
      .masonry-button video{
        display:block;
        width:100%;
        height:100%;
        object-fit:cover;
        object-position:center;
        opacity:1;
        transform:scale(1);
        transition:transform 0.24s ease, filter 0.24s ease, opacity 0.2s ease;
      }
      .masonry-button:hover img,
      .masonry-button:focus-visible img{
        transform:scale(1.025);
        filter:saturate(1.04) contrast(1.02);
      }
      .masonry-button:focus-visible{
        outline:2px solid var(--accent);
        outline-offset:-3px;
      }
      .masonry-caption{
        position:absolute;
        left:0;
        right:0;
        bottom:0;
        padding:28px 6px 5px;
        background:linear-gradient(180deg, rgba(5,7,12,0), rgba(5,7,12,0.78));
        color:#fff;
        font-size:clamp(0.64rem, 0.76vw, 0.78rem);
        font-weight:650;
        line-height:1.16;
        text-shadow:0 1px 7px rgba(0,0,0,0.8);
        pointer-events:none;
        z-index:3;
      }
      .masonry-caption span{
        display:block;
        -webkit-line-clamp:none;
        overflow:visible;
        white-space:normal;
        overflow-wrap:anywhere;
      }
      .masonry-item--video .masonry-button::before{
        content:"";
        position:absolute;
        inset:0;
        z-index:1;
        background:linear-gradient(180deg, rgba(0,0,0,0.08), rgba(0,0,0,0.42));
        pointer-events:none;
      }
      .masonry-item--video .video-play-button{
        position:absolute;
        left:50%;
        top:50%;
        z-index:2;
        width:54px;
        height:54px;
        border-radius:50%;
        transform:translate(-50%, -50%);
        background:rgba(8,10,14,0.68);
        border:1px solid rgba(255,255,255,0.5);
        box-shadow:0 12px 30px rgba(0,0,0,0.42);
      }
      .masonry-item--video .video-play-button::after{
        content:"";
        position:absolute;
        left:22px;
        top:17px;
        width:0;
        height:0;
        border-top:10px solid transparent;
        border-bottom:10px solid transparent;
        border-left:15px solid #fff;
      }
      .masonry-video-placeholder{
        display:block;
        width:100%;
        height:100%;
        background:radial-gradient(circle at 50% 45%, rgba(34,197,94,0.22), rgba(6,10,16,0.92) 62%);
      }
      .masonry-video-watch-link{
        position:absolute;
        top:7px;
        right:7px;
        z-index:4;
        padding:5px 8px;
        border:1px solid rgba(126,226,163,0.7);
        border-radius:999px;
        background:rgba(5,10,15,0.82);
        color:#d8fbe4;
        font-size:0.68rem;
        font-weight:750;
        line-height:1;
        text-decoration:none;
      }
      .masonry-video-watch-link:hover,
      .masonry-video-watch-link:focus-visible{
        border-color:#7ee2a3;
        color:#fff;
        outline:2px solid rgba(126,226,163,0.52);
        outline-offset:2px;
      }
      .gallery-lightbox{
        position:fixed;
        inset:0;
        z-index:1000;
        display:grid;
        grid-template-rows:auto minmax(0, 1fr) auto auto;
        gap:10px;
        padding:clamp(10px, 2vw, 24px);
        background:rgba(2,6,12,0.94);
        color:#fff;
      }
      .gallery-lightbox[hidden]{
        display:none !important;
      }
      .gallery-lightbox__toolbar{
        display:flex;
        align-items:center;
        justify-content:flex-end;
        gap:8px;
        min-height:40px;
      }
      .gallery-lightbox__stage{
        position:relative;
        display:flex;
        align-items:center;
        justify-content:center;
        min-width:0;
        min-height:0;
        overflow:hidden;
      }
      .gallery-lightbox__media{
        max-width:100%;
        max-height:100%;
        margin:0;
        display:flex;
        align-items:center;
        justify-content:center;
      }
      .gallery-lightbox__media img,
      .gallery-lightbox__media video{
        display:block;
        max-width:100%;
        max-height:calc(100vh - 140px);
        width:auto;
        height:auto;
        object-fit:contain;
        border-radius:6px;
        background:#05070c;
        box-shadow:0 18px 60px rgba(0,0,0,0.45);
      }
      .gallery-lightbox__caption{
        min-height:34px;
        max-width:1100px;
        margin:0 auto;
        color:rgba(255,255,255,0.88);
        font-size:0.9rem;
        line-height:1.4;
        text-align:center;
      }
      .gallery-lightbox__watch{
        width:max-content;
        margin:0 auto;
        padding:7px 12px;
        border:1px solid rgba(93,214,139,0.72);
        border-radius:999px;
        color:#bdf5d0;
        font-size:0.84rem;
        font-weight:700;
        text-decoration:none;
      }
      .gallery-lightbox__watch:hover,
      .gallery-lightbox__watch:focus-visible{
        border-color:#7ee2a3;
        color:#fff;
      }
      .gallery-lightbox__button{
        width:40px;
        height:40px;
        border-radius:50%;
        border:1px solid rgba(255,255,255,0.28);
        background:rgba(255,255,255,0.08);
        color:#fff;
        display:flex;
        align-items:center;
        justify-content:center;
        cursor:pointer;
        font-size:1.35rem;
        line-height:1;
      }
      .gallery-lightbox__button:hover,
      .gallery-lightbox__button:focus-visible{
        border-color:var(--accent);
        background:rgba(255,255,255,0.14);
        outline:0;
      }
      .gallery-lightbox__nav{
        position:absolute;
        top:50%;
        transform:translateY(-50%);
        z-index:2;
      }
      .gallery-lightbox__nav--prev{
        left:0;
      }
      .gallery-lightbox__nav--next{
        right:0;
      }
      body.has-gallery-lightbox-open{
        overflow:hidden;
      }
      @media(max-width:720px){
        .masonry-gallery{
          gap:2px;
          padding:2px;
        }
        .masonry-caption{
          padding:22px 5px 4px;
          font-size:0.62rem;
        }
        .gallery-lightbox{
          padding:8px;
        }
        .gallery-lightbox__media img,
        .gallery-lightbox__media video{
          max-height:calc(100vh - 116px);
        }
      }

      /* SHARED PANEL + ROW STYLE -------------------------------------------- */
      .meta-info-row{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:12px;
        margin-bottom:16px;
      }
      @media(max-width:800px){
        .meta-info-row{
          grid-template-columns:1fr;
        }
      }
      .metadata-panel{
        --metadata-font-scale:1;
        --metadata-label-col:minmax(128px, 220px);
        background:linear-gradient(160deg, rgba(15, 23, 35, 0.96), rgba(10, 16, 27, 0.94));
        border:1px solid rgba(61, 84, 124, 0.62);
        border-radius:12px;
        padding:16px;
        font-size:0.9rem;
        word-wrap:break-word;
        white-space:normal;
        width:100%;
        max-width:100%;
        box-sizing:border-box;
        box-shadow:0 12px 30px rgba(0,0,0,0.32);
      }
      main > .media,
      main > .metadata-panel,
      main > .seo-links{
        width:100%;
        max-width:100%;
        box-sizing:border-box;
        margin:0 0 16px;
      }
      main > .media[hidden],
      main > .metadata-panel[hidden],
      main > section[hidden]{
        margin-bottom:0;
      }
      @media(min-width:1024px){
        #peak-detail.wrap{
          width:min(1120px, calc(100vw - 48px));
          max-width:none;
          padding-left:0;
          padding-right:0;
        }
        #peak-detail > .media{
          width:100%;
          max-width:100%;
          margin-left:0;
          margin-right:0;
          transform:none;
        }
        #peak-detail .metadata-value.is-right-aligned{
          width:100%;
          max-width:none;
          justify-self:stretch;
          white-space:normal;
          overflow-wrap:anywhere;
        }
        #peak-detail .description-body,
        #peak-detail .info-value,
        #peak-detail .lower-panel-note,
        #peak-detail .lower-panel-entry__meta,
        #peak-detail .lower-panel-entry__note,
        #peak-detail .lower-panel-footnote,
        #peak-detail .monthly-weather-card[data-climate-schema="2"] .monthly-weather-context-copy,
        #peak-detail .peak-connections-empty p{
          max-width:none;
          white-space:normal;
        }
      }
      .metadata-header{
        display:flex;
        justify-content:space-between;
        align-items:center;
        margin-bottom:12px;
        min-height:34px;
        gap:8px;
        width:100%;
      }
      .metadata-title{
        font-weight:600;
        color:var(--accent);
        font-size:0.85rem;
        text-transform:uppercase;
        letter-spacing:0.5px;
        flex:1 1 auto;
        min-width:0;
      }
      .meta-toggle{
        background:transparent;
        border:none;
        color:var(--muted);
        font-size:0.8rem;
        cursor:pointer;
        padding:0;
      }
      .metadata-primary,
      .metadata-extra{
        width:100%;
      }
      .metadata-extra{
        display:none;
        margin-top:4px;
      }
      .metadata-extra.open{
        display:block;
      }
      .metadata-row{
        display:grid;
        grid-template-columns:var(--metadata-label-col, minmax(128px, 220px)) minmax(0, 1fr);
        align-items:flex-start;
        gap:clamp(10px, 1.6vw, 18px);
        padding:11px 0;
        min-height:52px;
        border-bottom:1px dotted var(--stroke);
      }
      #generalInfoPanel .metadata-row,
      #photoMetadataPanel .metadata-row{
        padding:6px 0;
        min-height:0;
      }
      .metadata-row.is-multiline,
      .metadata-row.is-desc-accessibility{
        min-height:0;
      }
      .metadata-row:last-child,
      .metadata-primary > .metadata-row:last-child,
      .metadata-extra > .metadata-row:last-child{
        border-bottom:none;
      }
      .metadata-primary .metadata-row:last-of-type,
      .metadata-extra .metadata-row:last-of-type,
      .detail-panel .metadata-row:last-of-type,
      .metadata-row.is-last{
        border-bottom:none !important;
      }
      .metadata-label{
        font-weight:600;
        color:var(--field-label);
        font-size:calc(0.79rem * var(--metadata-font-scale, 1));
        text-transform:uppercase;
        letter-spacing:0.38px;
        max-width:none;
        overflow-wrap:break-word;
        word-break:normal;
      }
      .metadata-group-header{
        margin-top:10px;
        font-weight:700;
        color:#8ef2b9;
        font-size:0.8rem;
        text-transform:uppercase;
        letter-spacing:0.52px;
      }
      .metadata-group-subheader{
        margin-top:6px;
        font-weight:700;
        color:#d5e6ff;
        font-size:0.75rem;
        text-transform:uppercase;
        letter-spacing:0.42px;
      }
      .metadata-value{
        color:var(--ink);
        font-size:calc(0.9rem * var(--metadata-font-scale, 1));
        text-align:left;
        flex:1 1 auto;
        overflow-wrap:break-word;
        word-break:normal;
        line-height:1.55;
        padding-left:8px;
      }
      .metadata-value.is-right-aligned{
        text-align:right;
        justify-self:end;
      }
      .metadata-value.is-left-aligned{
        text-align:left;
        justify-self:stretch;
      }
      #generalInfoPanel .metadata-value.is-clamped,
      #photoMetadataPanel .metadata-value.is-clamped{
        display:block;
        -webkit-line-clamp:none;
        overflow:visible;
        white-space:normal;
      }
      #generalInfoPanel .metadata-value,
      #photoMetadataPanel .metadata-value{
        max-width:none;
      }
      #photoMetadataPanel .metadata-row.is-desc-accessibility .metadata-value,
      #photoMetadataPanel .metadata-value.is-unclamped{
        display:block;
        overflow:visible;
        max-width:none;
        white-space:normal;
      }
      #photoMetadataPanel .metadata-row.is-desc-accessibility .metadata-value{
        text-align:left;
        justify-self:stretch;
        padding-left:14px;
      }
      #photoMetadataPanel .metadata-row.is-desc-accessibility{
        grid-template-columns:var(--metadata-label-col, minmax(128px, 200px)) minmax(0, 1fr);
      }
      .description-body{
        font-size:1rem;
        line-height:1.6;
        color:var(--ink);
        margin-top:4px;
      }
      #peakDescriptionPanel .mountain-overview-preview{
        --mountain-overview-line-height:1.6rem;
      }
      #peakDescriptionPanel .mountain-overview-preview.is-collapsed{
        max-height:calc(var(--mountain-overview-line-height) * 4);
      }
      #peakDescriptionPanel .mountain-overview-preview .description-body{
        margin:0;
      }
      #peakDescriptionPanel .mountain-overview-fade{
        height:64px;
        display:flex;
        align-items:flex-end;
        justify-content:flex-end;
        padding:0 0 2px;
      }
      .collapsible-content{
        position:relative;
        overflow:hidden;
      }
      .collapsible-content.is-collapsed{
        max-height:120px;
      }
      .collapsible-content-fade{
        position:absolute;
        inset:auto 0 0 0;
        height:56px;
        background:linear-gradient(to bottom, rgba(10,16,27,0), rgba(10,16,27,0.96));
        pointer-events:none;
        opacity:0;
        transition:opacity 0.2s ease;
      }
      .collapsible-content.is-collapsed .collapsible-content-fade{
        opacity:1;
      }
      .experience-note-text.is-collapsed .collapsible-content-fade{
        opacity:1;
      }
      .panel-expand-btn{
        margin-top:8px;
        margin-left:auto;
        display:inline-flex;
        align-items:center;
        gap:6px;
        padding:6px 10px;
        border-radius:999px;
        border:1px solid rgba(34,197,94,0.55);
        background:rgba(34,197,94,0.12);
        color:#d8ffea;
        font-size:0.78rem;
        font-weight:700;
        letter-spacing:0.3px;
        cursor:pointer;
      }
      .panel-expand-btn:hover{
        background:rgba(34,197,94,0.2);
      }
      #peakDescriptionPanel .mountain-overview-expand{
        position:relative;
        z-index:2;
        margin-top:-34px;
      }
      #peakDescriptionPanel .mountain-overview-expand[aria-expanded="true"]{
        margin-top:10px;
      }

      #peakTitle{
        margin:12px 0 6px 0;
        font-size:1.75rem;
      }
      .peak-section-panel{
        background:linear-gradient(160deg, rgba(15, 23, 35, 0.96), rgba(10, 16, 27, 0.94));
        border:1px solid rgba(61, 84, 124, 0.62);
        border-radius:var(--lower-panel-radius);
        padding:var(--lower-panel-padding);
        box-shadow:0 12px 30px rgba(0,0,0,0.32);
        overflow:hidden;
      }
      .peak-section-panel__header{
        display:grid;
        grid-template-columns:minmax(0, 1fr) auto;
        align-items:start;
        gap:16px;
        margin-bottom:var(--lower-panel-body-gap);
      }
      .peak-section-panel__heading{
        min-width:0;
      }
      .peak-section-panel__title{
        margin:0;
        font-size:0.88rem;
        font-weight:800;
        color:var(--accent);
        text-transform:uppercase;
        letter-spacing:0.12em;
        line-height:1.2;
      }
      .peak-section-panel__subtitle{
        margin:6px 0 0;
        color:var(--muted);
        font-size:0.92rem;
        line-height:1.45;
      }
      .peak-section-panel__subtitle[hidden]{
        display:none !important;
      }
      .peak-section-panel__actions{
        display:flex;
        align-items:flex-start;
        justify-content:flex-end;
        gap:10px;
        margin-left:auto;
        flex-wrap:wrap;
      }
      .peak-section-panel__body{
        display:grid;
        gap:var(--lower-panel-body-gap);
      }
      .peak-section-panel__body > .info-grid{
        margin:0;
        gap:var(--lower-panel-body-gap);
      }
      .peak-section-panel__body > .info-grid.info-grid--flat{
        gap:14px;
      }
      .lower-panel-block{
        display:grid;
        gap:12px;
      }
      .lower-panel-block--tight{
        gap:8px;
      }
      .lower-panel-label{
        margin:0;
        color:var(--field-label);
        font-size:0.76rem;
        font-weight:700;
        letter-spacing:0.08em;
        text-transform:uppercase;
      }
      .lower-panel-heading{
        margin:0;
        color:#f4f8ff;
        font-size:0.98rem;
        font-weight:700;
        line-height:1.45;
      }
      .lower-panel-rows{
        width:100%;
      }
      .lower-panel-rows .metadata-row{
        padding:6px 0;
        min-height:0;
      }
      .lower-panel-rows .metadata-value{
        max-width:none;
      }
      .lower-panel-note,
      .lower-panel-entry__meta,
      .lower-panel-entry__note,
      .lower-panel-footnote{
        margin:0;
        color:var(--muted);
        line-height:1.55;
      }
      .lower-panel-actions{
        margin-top:12px;
      }
      .lower-panel-entry-list{
        display:grid;
      }
      .lower-panel-entry{
        display:grid;
        gap:8px;
        padding:12px 0;
        border-top:1px dotted var(--stroke);
      }
      .lower-panel-entry:first-child{
        padding-top:0;
        border-top:none;
      }
      .lower-panel-entry:last-child{
        padding-bottom:0;
      }
      .lower-panel-entry__header{
        display:flex;
        align-items:flex-start;
        justify-content:space-between;
        gap:12px;
      }
      .lower-panel-entry__title{
        margin:0;
        color:#f4f8ff;
        font-size:0.98rem;
        font-weight:700;
        line-height:1.45;
      }
      .lower-panel-inline-strip{
        margin:0;
      }
      .lower-panel-inline-list{
        margin:0;
        padding-left:1.1rem;
        display:grid;
        gap:5px;
        color:var(--muted);
        font-size:0.9rem;
        line-height:1.5;
      }
      .peak-section-panel__pill{
        display:inline-flex;
        align-items:center;
        min-height:34px;
        padding:0 14px;
        border-radius:999px;
        border:1px solid rgba(34,197,94,0.72);
        background:rgba(34,197,94,0.08);
        color:#e8f5ec;
        font-weight:700;
        text-decoration:none;
        white-space:nowrap;
      }
      .peak-section-panel__pill:hover{
        background:rgba(34,197,94,0.16);
        border-color:rgba(74,222,128,0.95);
        color:#f4fff8;
      }
      .section-title-wrap{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:10px;
        margin:0;
        width:100%;
      }
      .section-title{
        margin:0;
        font-size:1.05rem;
        font-weight:700;
        color:var(--accent);
        text-transform:uppercase;
        letter-spacing:0.5px;
        flex:1 1 auto;
        min-width:0;
      }
      .section-subtitle{
        margin:4px 0 10px;
        color:var(--muted);
        font-size:0.92rem;
        letter-spacing:0.35px;
        text-transform:uppercase;
      }
      .panel-zoom-btn{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        width:34px;
        height:34px;
        border-radius:8px;
        border:1px solid rgba(34,197,94,0.6);
        background:rgba(34,197,94,0.12);
        color:var(--accent);
        cursor:pointer;
        transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
        margin-left:auto;
        flex:0 0 auto;
      }
      .has-panel-reader-control{
        position:relative;
        padding-right:64px;
      }
      .panel-zoom-btn--corner{
        position:absolute;
        top:16px;
        right:16px;
        z-index:4;
        margin-left:0;
      }
      .panel-zoom-btn:hover{
        transform:scale(1.04);
        border-color:rgba(74,222,128,0.95);
        box-shadow:0 0 14px rgba(34,197,94,0.35);
      }
      .panel-zoom-btn .iconify,
      .panel-zoom-btn svg,
      .panel-zoom-btn__icon{
        width:1.05rem;
        height:1.05rem;
        flex:0 0 auto;
      }
      .panel-zoom-btn__icon{
        fill:none;
        stroke:currentColor;
        stroke-width:2;
        stroke-linecap:round;
        stroke-linejoin:round;
      }
      @media(max-width:640px){
        .section-title{ margin:0; font-size:0.95rem; }
        .section-subtitle{ margin:2px 0 8px; font-size:0.84rem; }
        .section-title-wrap{ margin:0; }
        .has-panel-reader-control{
          padding-right:56px;
        }
        .panel-zoom-btn--corner{
          top:12px;
          right:12px;
        }
        .peak-section-panel{
          padding:16px;
        }
        .peak-section-panel__header{
          gap:12px;
        }
        .peak-section-panel__actions{
          align-self:start;
        }
        .peak-section-panel__pill{
          display:none;
        }
        .lower-panel-entry__header{
          flex-wrap:wrap;
        }
      }
      .info-grid{
        display:grid;
        gap:10px;
        grid-template-columns:1fr;
        margin-bottom:16px;
      }
      .info-panel{
        background:linear-gradient(160deg, rgba(15, 23, 35, 0.96), rgba(10, 16, 27, 0.94));
        border:1px solid rgba(61, 84, 124, 0.62);
        border-radius:12px;
        padding:14px;
        font-size:0.9rem;
        width:100%;
        box-sizing:border-box;
        box-shadow:0 12px 30px rgba(0,0,0,0.32);
      }
      @media(max-width:640px){
        .info-panel{ padding:12px; font-size:0.85rem; }
      }
      .info-label{
        font-weight:600;
        color:var(--field-label);
        font-size:0.85rem;
        margin-bottom:6px;
        text-transform:uppercase;
        letter-spacing:0.5px;
      }
      @media(max-width:640px){
        .info-label{ font-size:0.8rem; margin-bottom:4px; }
      }
      .info-value{
        color:var(--ink);
        font-size:0.9rem;
        word-wrap:break-word;
        white-space:normal;
        line-height:1.6;
      }
      .route-conditions-brief{
        margin:18px 0 20px;
      }
      .route-conditions-brief .section-title{
        margin:0 0 12px;
      }
      .route-conditions-brief__grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:12px;
        margin-bottom:0;
      }
      .route-conditions-brief__item{
        display:flex;
        flex-direction:column;
        justify-content:flex-start;
        gap:8px;
        min-height:100%;
        padding:18px;
      }
      .route-conditions-brief__item .info-label{
        margin-bottom:0;
      }
      .route-conditions-brief__text{
        font-size:0.96rem;
        line-height:1.7;
      }
      .route-conditions-brief__updated{
        margin:12px 2px 0;
        color:var(--muted);
        font-size:0.82rem;
        line-height:1.5;
      }
      @media(max-width:640px){
        .route-conditions-brief__grid{
          grid-template-columns:1fr;
        }
        .route-conditions-brief__item{
          padding:16px;
        }
      }
      .experience-notes{
        margin:18px 0 20px;
        border:1px solid rgba(61, 84, 124, 0.62);
        border-radius:12px;
        background:linear-gradient(160deg, rgba(15, 23, 35, 0.96), rgba(10, 16, 27, 0.94));
        padding:14px;
        box-shadow:0 12px 30px rgba(0,0,0,0.32);
      }
      .experience-notes-grid{
        display:grid;
        grid-template-columns:repeat(auto-fit, minmax(210px, 1fr));
        gap:10px;
      }
      .experience-note{
        border:1px solid rgba(61, 84, 124, 0.58);
        border-radius:12px;
        background:linear-gradient(160deg, rgba(13, 21, 33, 0.96), rgba(9, 15, 25, 0.94));
        padding:12px;
      }
      .experience-note h3{
        margin:0 0 6px;
        font-size:0.82rem;
        letter-spacing:0.45px;
        text-transform:uppercase;
        color:var(--accent);
      }
      .experience-note p{
        margin:0;
        color:#d8e2ef;
        line-height:1.5;
      }
      .experience-note-text{
        position:relative;
        overflow:hidden;
      }
      .experience-note-text.is-collapsed{
        max-height:132px;
      }
      .experience-note-expand{
        margin-top:8px;
        display:inline-flex;
        align-items:center;
        gap:6px;
        border:1px solid rgba(34,197,94,0.5);
        background:rgba(34,197,94,0.1);
        color:#dbffe9;
        border-radius:999px;
        padding:4px 10px;
        font-size:0.74rem;
        font-weight:700;
        letter-spacing:0.28px;
        cursor:pointer;
      }
      .experience-note-expand:hover{
        background:rgba(34,197,94,0.18);
      }
      .experience-last-reviewed{
        margin:10px 2px 0;
        color:var(--muted);
        font-size:0.8rem;
      }
      .detail-panel-cta{
        margin-top:12px;
      }
      .trail-list{
        margin:0;
        padding-left:1.1rem;
        color:var(--ink);
        font-size:0.9rem;
        line-height:1.5;
      }
      .trail-list--merged{
        display:grid;
        gap:8px;
      }
      .trail-list--merged li{
        color:var(--ink);
      }
      .trail-list__item{
        line-height:1.55;
      }
      .trail-entry-name{
        color:#f5f8ff;
        font-weight:600;
      }
      .trail-entry-details{
        color:var(--muted);
        font-size:0.88rem;
      }
      .trail-approx-badge{
        display:inline-flex;
        align-items:center;
        margin-left:8px;
        padding:1px 6px;
        border-radius:999px;
        border:1px solid rgba(111, 154, 224, 0.34);
        background:rgba(111, 154, 224, 0.08);
        color:#cbd8eb;
        font-size:0.72rem;
        font-weight:700;
        letter-spacing:0.02em;
        vertical-align:middle;
      }
      .trail-panel-group + .trail-panel-group{
        margin-top:12px;
      }
      .trail-group-label{
        font-size:0.72rem;
        font-weight:700;
        letter-spacing:0.08em;
        text-transform:uppercase;
        color:var(--muted);
        margin:0 0 6px;
      }
      .trail-summary-list strong{
        color:#f5f8ff;
      }
      .trail-branding{
        display:flex;
        align-items:center;
        gap:10px;
        margin:0;
        padding:11px 12px;
        border:1px solid rgba(34,197,94,0.24);
        border-radius:10px;
        background:linear-gradient(135deg, rgba(34,197,94,0.08), rgba(12,18,29,0.45));
        text-decoration:none;
        color:var(--ink);
        transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
      }
      .trail-branding:hover{
        transform:scale(1.01);
        border-color:rgba(74,222,128,0.9);
        box-shadow:0 0 20px rgba(34,197,94,0.25);
      }
      .trail-branding img{
        width:52px;
        height:auto;
        border-radius:8px;
        background:#0a0a0a;
        border:1px solid rgba(255,255,255,0.2);
        padding:4px;
        box-shadow:0 6px 14px rgba(0,0,0,0.35);
      }
      .trail-branding-text{
        display:flex;
        flex-direction:column;
        gap:2px;
        font-size:0.85rem;
      }
      .trail-branding-text strong{
        color:var(--accent);
        font-size:0.9rem;
      }
      .trail-list--merged + .trail-list--merged{
        margin-top:0;
      }
      .trail-list a{
        color:#dff8e9;
        text-decoration:none;
        border-bottom:1px solid rgba(34,197,94,0.45);
        text-underline-offset:3px;
        text-decoration-thickness:1px;
        transition:color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
      }
      .trail-list a:hover{
        color:#f0fff6;
        border-color:rgba(74,222,128,0.95);
        box-shadow:0 0 12px rgba(34,197,94,0.32);
        transform:scale(1.02);
      }
      .trail-list a:focus-visible{
        outline:2px solid rgba(74,222,128,0.9);
        outline-offset:2px;
      }
      .monthly-weather-card{
        padding:14px;
      }
      .peak-section-panel--monthly-weather .monthly-weather-card{
        width:100%;
        max-width:100%;
        box-sizing:border-box;
        padding:0;
        border:0;
        border-radius:0;
        background:transparent;
        box-shadow:none;
      }
      .peak-api-loading{
        display:flex;
        align-items:center;
        gap:12px;
        min-height:92px;
        padding:16px;
        border-radius:14px;
        border:1px solid rgba(74,222,128,0.22);
        background:rgba(8,13,22,0.62);
        color:var(--muted);
      }
      .peak-api-loading--compact{
        min-height:72px;
      }
      .peak-api-loading__spinner{
        width:24px;
        height:24px;
        flex:0 0 auto;
        border-radius:50%;
        border:3px solid rgba(34,197,94,0.22);
        border-top-color:var(--accent);
        animation:spin 0.9s linear infinite;
      }
      .peak-api-loading__copy{
        display:grid;
        gap:3px;
      }
      .peak-api-loading__title{
        color:#f4fff8;
        font-size:0.94rem;
        font-weight:800;
        line-height:1.3;
      }
      .peak-api-loading__text{
        color:var(--muted);
        font-size:0.82rem;
        line-height:1.45;
      }
      .peak-weather-current-card,
      .peak-astronomy-card{
        border:1px solid rgba(61,84,124,0.62);
        border-radius:12px;
        background:linear-gradient(160deg, rgba(12,20,34,0.88), rgba(7,12,21,0.94));
        box-shadow:0 12px 26px rgba(0,0,0,0.24);
      }
      .peak-weather-current-card{
        display:grid;
        gap:14px;
        padding:16px;
      }
      .peak-weather-current-card--detailed{
        gap:16px;
      }
      .peak-weather-current-card__topline,
      .peak-live-panel-meta{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:10px;
        flex-wrap:wrap;
        color:#d5e7dd;
        font-size:0.78rem;
        line-height:1.45;
      }
      .peak-weather-current-card__source,
      .peak-live-panel-meta span:first-child{
        color:#f4fff8;
        font-weight:800;
      }
      .peak-weather-current-card__updated{
        color:var(--muted);
      }
      .peak-weather-current-card__main{
        display:flex;
        align-items:center;
        gap:16px;
        flex-wrap:wrap;
      }
      .peak-weather-current-card__temp{
        color:#ffffff;
        font-size:clamp(2rem, 6vw, 3.2rem);
        font-weight:900;
        line-height:0.95;
      }
      .peak-weather-current-card__forecast{
        display:grid;
        gap:4px;
        flex:1 1 220px;
        min-width:min(100%, 220px);
      }
      .peak-weather-current-card__period{
        color:#a7f3d0;
        font-size:0.76rem;
        font-weight:800;
        letter-spacing:0.08em;
        text-transform:uppercase;
      }
      .peak-weather-current-card__summary{
        color:#f8fafc;
        font-size:1.02rem;
        font-weight:800;
        line-height:1.3;
      }
      .peak-weather-current-card__point{
        color:var(--muted);
        font-size:0.78rem;
        line-height:1.4;
      }
      .peak-weather-current-card__icon{
        width:64px;
        height:64px;
        object-fit:contain;
        margin-left:auto;
        filter:drop-shadow(0 8px 16px rgba(0,0,0,0.28));
      }
      .peak-live-stat-grid{
        display:grid;
        grid-template-columns:repeat(auto-fit, minmax(120px, 1fr));
        gap:10px;
      }
      .peak-live-stat-grid--compact{
        grid-template-columns:repeat(auto-fit, minmax(96px, 1fr));
        margin-top:10px;
      }
      .peak-live-stat{
        display:grid;
        gap:3px;
        min-height:58px;
        padding:9px 11px;
        border-radius:10px;
        border:1px solid rgba(148,163,184,0.22);
        background:rgba(15,23,42,0.62);
      }
      .peak-live-stat__label,
      .peak-astronomy-card-title{
        color:#a7f3d0;
        font-size:0.72rem;
        font-weight:900;
        letter-spacing:0.08em;
        text-transform:uppercase;
      }
      .peak-live-stat__value,
      .peak-astronomy-card-value{
        color:#ffffff;
        font-size:1rem;
        font-weight:800;
        line-height:1.25;
      }
      .peak-live-note,
      .peak-astronomy-card-detail{
        margin:0;
        color:var(--muted);
        font-size:0.8rem;
        line-height:1.45;
      }
      .peak-weather-detail-copy{
        margin:0;
        color:#dbeafe;
        font-size:0.9rem;
        line-height:1.55;
      }
      .peak-weather-resource-row{
        display:flex;
      }
      .peak-weather-resource-link{
        display:flex;
        flex-direction:column;
        gap:4px;
        width:100%;
        padding:12px 14px;
        border-radius:10px;
        border:1px solid rgba(74,222,128,0.34);
        background:linear-gradient(135deg, rgba(34,197,94,0.14), rgba(15,23,42,0.78));
        color:#f4fff8;
        text-decoration:none;
        transition:border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
      }
      .peak-weather-resource-link:hover{
        border-color:rgba(74,222,128,0.72);
        background:linear-gradient(135deg, rgba(34,197,94,0.2), rgba(15,23,42,0.92));
        box-shadow:0 10px 24px rgba(34,197,94,0.12);
      }
      .peak-weather-resource-link:focus-visible{
        outline:2px solid rgba(74,222,128,0.95);
        outline-offset:2px;
      }
      .peak-weather-resource-link__title{
        color:#f4fff8;
        font-size:0.9rem;
        font-weight:900;
        line-height:1.35;
      }
      .peak-weather-resource-link__subtitle{
        color:#d6e6db;
        font-size:0.78rem;
        line-height:1.35;
      }
      .peak-weather-forecast-band,
      .peak-weather-snapshot-band{
        display:grid;
        gap:12px;
        padding-top:14px;
        border-top:1px solid rgba(148,163,184,0.18);
      }
      .peak-weather-band-heading{
        display:grid;
        gap:4px;
      }
      .peak-weather-band-heading--inline{
        grid-template-columns:minmax(0,1fr) auto;
        align-items:end;
        gap:14px;
      }
      .peak-weather-band-heading h3{
        margin:0;
        color:#f8fafc;
        font-size:1rem;
        font-weight:900;
        line-height:1.25;
      }
      .peak-weather-band-heading p{
        margin:0;
        color:var(--muted);
        font-size:0.8rem;
        line-height:1.45;
      }
      .peak-weather-daily-strip{
        display:grid;
        grid-template-columns:repeat(5, minmax(0,1fr));
        gap:10px;
      }
      .peak-weather-day{
        display:grid;
        align-content:start;
        justify-items:start;
        gap:7px;
        min-width:0;
        padding:10px;
        border-radius:10px;
        border:1px solid rgba(148,163,184,0.2);
        background:rgba(15,23,42,0.5);
      }
      .peak-weather-day__label{
        color:#a7f3d0;
        font-size:0.72rem;
        font-weight:900;
        letter-spacing:0.08em;
        text-transform:uppercase;
      }
      .peak-weather-day__icon{
        width:30px;
        height:30px;
        object-fit:contain;
      }
      .peak-weather-day__range{
        color:#fff;
        font-size:0.95rem;
        font-weight:900;
        line-height:1.25;
      }
      .peak-weather-day__summary{
        color:#dbeafe;
        font-size:0.78rem;
        line-height:1.35;
        overflow-wrap:anywhere;
      }
      .peak-weather-snapshot-controls{
        display:flex;
        align-items:end;
        justify-content:flex-end;
        gap:10px;
        flex-wrap:wrap;
      }
      .peak-weather-snapshot-controls label{
        display:grid;
        gap:5px;
        color:#a7f3d0;
        font-size:0.68rem;
        font-weight:900;
        letter-spacing:0.08em;
        text-transform:uppercase;
      }
      .peak-weather-snapshot-controls select{
        min-width:136px;
        max-width:min(64vw, 280px);
        color:#f8fafc;
        background:#0f172a;
        border:1px solid rgba(148,163,184,0.36);
        border-radius:8px;
        padding:8px 30px 8px 10px;
        font:inherit;
        font-size:0.82rem;
        font-weight:800;
        letter-spacing:0;
        text-transform:none;
      }
      .peak-weather-snapshot-result{
        display:flex;
        align-items:flex-start;
        gap:14px;
        min-width:0;
        padding:12px;
        border-radius:10px;
        background:rgba(15,23,42,0.5);
        border:1px solid rgba(148,163,184,0.2);
      }
      .peak-weather-snapshot-result__media{
        flex:0 0 auto;
      }
      .peak-weather-snapshot-icon{
        width:44px;
        height:44px;
        object-fit:contain;
        filter:drop-shadow(0 6px 12px rgba(0,0,0,0.24));
      }
      .peak-weather-snapshot-result__copy{
        min-width:0;
        flex:1 1 auto;
      }
      .peak-weather-snapshot-time{
        color:#a7f3d0;
        font-size:0.76rem;
        font-weight:900;
        letter-spacing:0.08em;
        text-transform:uppercase;
      }
      .peak-weather-snapshot-summary{
        margin-top:4px;
        color:#f8fafc;
        font-size:1rem;
        font-weight:900;
        line-height:1.3;
      }
      .peak-weather-snapshot-detail,
      .peak-weather-snapshot-note{
        margin:6px 0 0;
        color:var(--muted);
        font-size:0.78rem;
        line-height:1.45;
      }
      @media (max-width: 860px){
        .peak-weather-daily-strip{
          grid-template-columns:repeat(auto-fit, minmax(128px, 1fr));
        }
        .peak-weather-band-heading--inline{
          grid-template-columns:1fr;
          align-items:start;
        }
        .peak-weather-snapshot-controls{
          justify-content:flex-start;
        }
        .peak-weather-snapshot-controls label{
          width:min(100%, 280px);
        }
        .peak-weather-snapshot-controls select{
          width:100%;
          max-width:100%;
        }
      }
      @media (max-width: 560px){
        .peak-weather-current-card__icon{
          width:54px;
          height:54px;
          margin-left:0;
        }
        .peak-weather-snapshot-result{
          gap:10px;
          padding:10px;
        }
        .peak-weather-snapshot-icon{
          width:36px;
          height:36px;
        }
        .peak-live-stat-grid--compact{
          grid-template-columns:repeat(2, minmax(0, 1fr));
          gap:8px;
        }
        .peak-live-stat-grid--compact .peak-live-stat{
          min-height:52px;
          padding:8px 9px;
        }
      }

      /* Current summit weather: one unified sheet inside the outer panel. */
      #peakCurrentWeatherPanel .peak-weather-unified-sheet{
        display:grid;
        gap:0;
        padding:0;
        border:0;
        border-radius:0;
        background:none;
        box-shadow:none;
      }
      #peakCurrentWeatherPanel .peak-weather-unified-sheet .peak-weather-current-card__topline{
        padding:0 0 12px;
      }
      #peakCurrentWeatherPanel .peak-weather-unified-sheet .peak-weather-current-card__main{
        gap:14px;
        padding:2px 0 18px;
      }
      #peakCurrentWeatherPanel .peak-weather-unified-sheet .peak-weather-current-card__forecast{
        min-width:0;
      }
      #peakCurrentWeatherPanel .peak-weather-icon-disc{
        display:inline-grid;
        place-items:center;
        flex:0 0 auto;
        overflow:hidden;
        border:1px solid rgba(226, 239, 248, 0.82);
        border-radius:50%;
        background:linear-gradient(145deg, rgba(222, 236, 246, 0.96), rgba(162, 191, 214, 0.9));
        box-shadow:
          inset 0 1px 0 rgba(255, 255, 255, 0.74),
          0 6px 18px rgba(0, 0, 0, 0.2);
      }
      #peakCurrentWeatherPanel .peak-weather-icon-disc--current{
        width:58px;
        height:58px;
        margin-left:auto;
      }
      #peakCurrentWeatherPanel .peak-weather-icon-disc--daily{
        width:34px;
        height:34px;
      }
      #peakCurrentWeatherPanel .peak-weather-icon-disc--snapshot{
        width:44px;
        height:44px;
      }
      #peakCurrentWeatherPanel .peak-weather-icon-disc img{
        display:block;
        object-fit:contain;
        margin:0;
        filter:drop-shadow(0 0 1px rgba(2, 8, 18, 0.9));
      }
      #peakCurrentWeatherPanel .peak-weather-icon-disc--current img{
        width:46px;
        height:46px;
      }
      #peakCurrentWeatherPanel .peak-weather-icon-disc--daily img{
        width:27px;
        height:27px;
      }
      #peakCurrentWeatherPanel .peak-weather-icon-disc--snapshot img{
        width:35px;
        height:35px;
      }
      #peakCurrentWeatherPanel .peak-weather-metric-strip,
      #peakCurrentWeatherPanel .peak-weather-snapshot-metrics{
        display:grid;
        gap:0;
        border-top:1px solid rgba(148, 163, 184, 0.2);
      }
      #peakCurrentWeatherPanel .peak-weather-metric-strip{
        grid-template-columns:repeat(auto-fit, minmax(120px, 1fr));
      }
      #peakCurrentWeatherPanel .peak-weather-snapshot-metrics{
        grid-template-columns:repeat(auto-fit, minmax(96px, 1fr));
        margin-top:14px;
      }
      #peakCurrentWeatherPanel .peak-weather-metric-strip .peak-live-stat,
      #peakCurrentWeatherPanel .peak-weather-snapshot-metrics .peak-live-stat{
        min-height:0;
        padding:13px 14px;
        border:0;
        border-left:1px solid rgba(148, 163, 184, 0.2);
        border-radius:0;
        background:none;
      }
      #peakCurrentWeatherPanel .peak-weather-metric-strip .peak-live-stat:first-child,
      #peakCurrentWeatherPanel .peak-weather-snapshot-metrics .peak-live-stat:first-child{
        border-left:0;
      }
      #peakCurrentWeatherPanel .peak-weather-unified-sheet .peak-weather-detail-copy,
      #peakCurrentWeatherPanel .peak-weather-unified-sheet .peak-weather-resource-row,
      #peakCurrentWeatherPanel .peak-weather-unified-sheet .peak-weather-forecast-band,
      #peakCurrentWeatherPanel .peak-weather-unified-sheet .peak-weather-snapshot-band,
      #peakCurrentWeatherPanel .peak-weather-unified-sheet > .peak-live-note{
        border-top:1px solid rgba(148, 163, 184, 0.2);
      }
      #peakCurrentWeatherPanel .peak-weather-unified-sheet .peak-weather-detail-copy{
        padding:14px 0;
      }
      #peakCurrentWeatherPanel .peak-weather-unified-sheet .peak-weather-resource-row{
        padding:14px 0;
      }
      #peakCurrentWeatherPanel .peak-weather-unified-sheet .peak-weather-forecast-band,
      #peakCurrentWeatherPanel .peak-weather-unified-sheet .peak-weather-snapshot-band{
        padding-top:16px;
      }
      #peakCurrentWeatherPanel .peak-weather-unified-sheet > .peak-live-note{
        padding-top:13px;
      }
      #peakCurrentWeatherPanel .peak-weather-daily-strip{
        gap:0;
        border-top:1px solid rgba(148, 163, 184, 0.16);
        border-bottom:1px solid rgba(148, 163, 184, 0.16);
      }
      #peakCurrentWeatherPanel .peak-weather-day{
        gap:7px;
        min-height:142px;
        padding:12px;
        border:0;
        border-left:1px solid rgba(148, 163, 184, 0.18);
        border-radius:0;
        background:none;
      }
      #peakCurrentWeatherPanel .peak-weather-day:first-child{
        border-left:0;
      }
      #peakCurrentWeatherPanel .peak-weather-snapshot-result{
        display:grid;
        grid-template-columns:auto minmax(0, 1fr);
        align-items:start;
        gap:14px;
        padding:14px 0 0;
        border:0;
        border-top:1px solid rgba(148, 163, 184, 0.16);
        border-radius:0;
        background:none;
      }
      #peakCurrentWeatherPanel .peak-weather-snapshot-note{
        color:#8fa2b8;
      }

      @media (max-width: 860px){
        #peakCurrentWeatherPanel .peak-weather-daily-strip{
          grid-template-columns:repeat(3, minmax(0, 1fr));
        }
        #peakCurrentWeatherPanel .peak-weather-day{
          border-top:1px solid rgba(148, 163, 184, 0.16);
        }
        #peakCurrentWeatherPanel .peak-weather-day:nth-child(-n + 3){
          border-top:0;
        }
        #peakCurrentWeatherPanel .peak-weather-day:nth-child(3n + 1){
          border-left:0;
        }
      }
      @media (max-width: 560px){
        #peakCurrentWeatherPanel .peak-weather-unified-sheet .peak-weather-current-card__main{
          gap:10px;
          flex-wrap:nowrap;
        }
        #peakCurrentWeatherPanel .peak-weather-unified-sheet .peak-weather-current-card__temp{
          font-size:clamp(2rem, 12vw, 2.65rem);
        }
        #peakCurrentWeatherPanel .peak-weather-unified-sheet .peak-weather-current-card__forecast{
          flex-basis:108px;
        }
        #peakCurrentWeatherPanel .peak-weather-icon-disc--current{
          width:52px;
          height:52px;
          margin-left:0;
        }
        #peakCurrentWeatherPanel .peak-weather-icon-disc--current img{
          width:42px;
          height:42px;
        }
        #peakCurrentWeatherPanel .peak-weather-metric-strip,
        #peakCurrentWeatherPanel .peak-weather-snapshot-metrics{
          grid-template-columns:repeat(2, minmax(0, 1fr));
        }
        #peakCurrentWeatherPanel .peak-weather-metric-strip .peak-live-stat,
        #peakCurrentWeatherPanel .peak-weather-snapshot-metrics .peak-live-stat{
          border-top:1px solid rgba(148, 163, 184, 0.16);
        }
        #peakCurrentWeatherPanel .peak-weather-metric-strip .peak-live-stat:nth-child(-n + 2),
        #peakCurrentWeatherPanel .peak-weather-snapshot-metrics .peak-live-stat:nth-child(-n + 2){
          border-top:0;
        }
        #peakCurrentWeatherPanel .peak-weather-metric-strip .peak-live-stat:nth-child(odd),
        #peakCurrentWeatherPanel .peak-weather-snapshot-metrics .peak-live-stat:nth-child(odd){
          border-left:0;
        }
        #peakCurrentWeatherPanel .peak-weather-daily-strip{
          grid-template-columns:repeat(2, minmax(0, 1fr));
        }
        #peakCurrentWeatherPanel .peak-weather-day:nth-child(-n + 3){
          border-top:1px solid rgba(148, 163, 184, 0.16);
        }
        #peakCurrentWeatherPanel .peak-weather-day:nth-child(-n + 2){
          border-top:0;
        }
        #peakCurrentWeatherPanel .peak-weather-day:nth-child(3n + 1){
          border-left:1px solid rgba(148, 163, 184, 0.18);
        }
        #peakCurrentWeatherPanel .peak-weather-day:nth-child(odd){
          border-left:0;
        }
        #peakCurrentWeatherPanel .peak-weather-snapshot-controls,
        #peakCurrentWeatherPanel .peak-weather-snapshot-controls label{
          width:100%;
        }
        #peakCurrentWeatherPanel .peak-weather-snapshot-result{
          grid-template-columns:auto minmax(0, 1fr);
        }
      }
      @media (forced-colors: active){
        #peakCurrentWeatherPanel .peak-weather-icon-disc{
          border-color:CanvasText;
          background:Canvas;
          box-shadow:none;
        }
      }
      .peak-live-panel-meta{
        margin-bottom:12px;
      }
      .peak-daylight-card{
        display:grid;
        gap:12px;
        margin-bottom:12px;
        padding:12px;
        border:1px solid rgba(61,84,124,0.68);
        border-radius:12px;
        background:
          radial-gradient(circle at 18% 18%, rgba(74,222,128,0.14), transparent 38%),
          linear-gradient(160deg, rgba(15,23,42,0.76), rgba(7,12,21,0.94));
        box-shadow:0 12px 26px rgba(0,0,0,0.22);
      }
      .peak-daylight-card__header{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
      }
      .peak-daylight-card__header h3{
        margin:0;
        color:#f8fafc;
        font-size:0.98rem;
        font-weight:900;
        line-height:1.25;
      }
      .peak-daylight-card__header p{
        margin:2px 0 0;
        color:var(--muted);
        font-size:0.76rem;
        line-height:1.35;
      }
      .peak-daylight-toggle{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        gap:6px;
        flex:0 0 auto;
        min-width:76px;
        min-height:34px;
        padding:6px 10px;
        border:1px solid rgba(148,163,184,0.28);
        border-radius:999px;
        background:rgba(15,23,42,0.68);
        color:#d5e7dd;
        font:inherit;
        font-size:0.76rem;
        font-weight:900;
        cursor:pointer;
      }
      .peak-daylight-toggle:hover{
        border-color:rgba(74,222,128,0.58);
        color:#ffffff;
      }
      .peak-daylight-toggle:focus-visible{
        outline:2px solid rgba(74,222,128,0.95);
        outline-offset:2px;
      }
      .peak-daylight-toggle img{
        width:18px;
        height:18px;
        object-fit:contain;
      }
      .peak-daylight-track{
        display:grid;
        gap:8px;
      }
      .peak-daylight-track[hidden]{
        display:none;
      }
      .peak-daylight-rail{
        position:relative;
        height:16px;
        overflow:hidden;
        border-radius:999px;
        background:#111827;
        border:1px solid rgba(255,255,255,0.16);
        box-shadow:inset 0 1px 0 rgba(255,255,255,0.16), 0 8px 16px rgba(0,0,0,0.24);
      }
      .peak-daylight-rail::after{
        content:"";
        position:absolute;
        inset:0;
        border-radius:inherit;
        background:linear-gradient(180deg, rgba(255,255,255,0.26), rgba(255,255,255,0.02));
        pointer-events:none;
      }
      .peak-daylight-segment{
        position:absolute;
        top:0;
        bottom:0;
      }
      .peak-daylight-segment--night{
        background:#1f2a4a;
      }
      .peak-daylight-segment--dawn{
        background:#f19748;
      }
      .peak-daylight-segment--day{
        background:#44b870;
      }
      .peak-daylight-segment--dusk{
        background:#7c61b8;
      }
      .peak-daylight-segment--moon-down{
        background:#1c2238;
      }
      .peak-daylight-segment--moon-up{
        background:#a585d0;
      }
      .peak-daylight-marker{
        position:absolute;
        z-index:2;
        top:50%;
        transform:translate(-50%, -50%);
      }
      .peak-daylight-marker--event{
        display:grid;
        place-items:center;
        width:14px;
        height:14px;
        border-radius:50%;
        background:rgba(248,250,252,0.9);
        box-shadow:0 2px 7px rgba(0,0,0,0.32);
      }
      .peak-daylight-marker--event img{
        width:10px;
        height:10px;
        object-fit:contain;
      }
      .peak-daylight-marker--now{
        width:2px;
        height:16px;
        border-radius:999px;
        background:rgba(255,255,255,0.96);
        box-shadow:0 0 0 2px rgba(15,23,42,0.38), 0 3px 7px rgba(0,0,0,0.3);
      }
      .peak-daylight-values{
        display:grid;
        grid-template-columns:repeat(3, minmax(0, 1fr));
        gap:8px;
        color:#f8fafc;
        font-size:0.78rem;
        font-weight:800;
        line-height:1.25;
      }
      .peak-daylight-values span{
        display:grid;
        gap:2px;
        min-width:0;
        overflow-wrap:anywhere;
      }
      .peak-daylight-values span:last-child{
        text-align:right;
      }
      .peak-daylight-values__center{
        text-align:center;
      }
      .peak-daylight-values strong{
        color:var(--muted);
        font-size:0.68rem;
        font-weight:900;
        letter-spacing:0.06em;
        text-transform:uppercase;
      }
      .peak-astronomy-grid{
        display:grid;
        grid-template-columns:repeat(auto-fit, minmax(148px, 1fr));
        gap:10px;
      }
      .peak-astronomy-grid--compact{
        grid-template-columns:repeat(auto-fit, minmax(132px, 1fr));
      }
      .peak-astronomy-card{
        display:grid;
        align-content:start;
        gap:7px;
        min-height:86px;
        padding:12px;
      }
      .peak-astronomy-card-head{
        display:flex;
        align-items:flex-start;
        gap:9px;
        min-width:0;
      }
      .peak-astronomy-card-icon{
        width:28px;
        height:28px;
        flex:0 0 auto;
        object-fit:contain;
        filter:drop-shadow(0 5px 10px rgba(0,0,0,0.24));
      }
      .peak-astronomy-card-copy{
        display:grid;
        gap:4px;
        min-width:0;
      }
      .peak-astronomy-grid > .peak-api-loading,
      .monthly-weather-chart > .peak-api-loading{
        grid-column:1 / -1;
      }
      #monthlyWeatherAdvisorySlot,
      #monthlyWeatherResourceSlot,
      #peakAdvisorySlot{
        margin:0;
        padding:0;
      }
      #monthlyWeatherAdvisorySlot:empty,
      #monthlyWeatherAdvisorySlot[hidden],
      #monthlyWeatherResourceSlot:empty,
      #monthlyWeatherResourceSlot[hidden],
      #peakAdvisorySlot:empty,
      #peakAdvisorySlot[hidden]{
        display:none !important;
      }
      .monthly-weather-card > #monthlyWeatherAdvisorySlot{
        margin:0 0 14px;
      }
      .monthly-weather-card > #monthlyWeatherAdvisorySlot [data-nh48-alert-banner="true"]{
        margin:0 !important;
        max-width:none !important;
      }
      .monthly-weather-card > #monthlyWeatherResourceSlot{
        margin:0 0 14px;
      }
      .monthly-weather-resource-link{
        display:flex;
        flex-direction:column;
        gap:4px;
        padding:12px 14px;
        border-radius:14px;
        border:1px solid rgba(74,222,128,0.34);
        background:linear-gradient(135deg, rgba(34,197,94,0.14), rgba(10,15,24,0.92));
        color:#f4fff8;
        text-decoration:none;
        transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease, background 0.2s ease;
      }
      .monthly-weather-resource-link:hover{
        transform:translateY(-1px);
        border-color:rgba(74,222,128,0.72);
        background:linear-gradient(135deg, rgba(34,197,94,0.2), rgba(10,15,24,0.96));
        box-shadow:0 10px 24px rgba(34,197,94,0.14);
      }
      .monthly-weather-resource-link:focus-visible{
        outline:2px solid rgba(74,222,128,0.95);
        outline-offset:2px;
      }
      .monthly-weather-resource-title{
        color:#f4fff8;
        font-size:0.92rem;
        font-weight:800;
        letter-spacing:0.02em;
        line-height:1.35;
      }
      .monthly-weather-resource-subtitle{
        color:#d6e6db;
        font-size:0.78rem;
        line-height:1.45;
      }
      .monthly-weather-header{
        align-items:flex-start;
        justify-content:space-between;
        flex-wrap:wrap;
        gap:10px;
        margin-bottom:6px;
      }
      .monthly-weather-context{
        flex:1 1 240px;
        min-width:180px;
      }
      .monthly-weather-context-copy{
        margin:4px 0 0;
        color:var(--muted);
        font-size:0.76rem;
        line-height:1.4;
      }
      .monthly-weather-controls{
        display:flex;
        align-items:center;
        justify-content:flex-end;
        flex:0 0 auto;
      }
      #monthlyWeatherMonthSelect{
        min-height:34px;
        min-width:124px;
        border-radius:8px;
        border:1px solid rgba(255,255,255,0.25);
        background:#0f1622;
        color:var(--ink);
        padding:4px 8px;
        font-weight:600;
      }
      @media(max-width:640px){
        .monthly-weather-controls{
          width:100%;
          justify-content:flex-start;
        }
      }
      .monthly-weather-chart-block{
        position:relative;
        margin-top:10px;
      }
      .monthly-weather-chart-headerline{
        display:flex;
        align-items:flex-start;
        justify-content:space-between;
        flex-wrap:wrap;
        gap:10px 12px;
        margin-bottom:8px;
      }
      .monthly-weather-chart-title{
        color:rgba(230,236,245,0.94);
        font-size:0.78rem;
        font-weight:700;
        letter-spacing:0.14em;
        text-transform:uppercase;
      }
      .monthly-weather-chart-legend{
        display:flex;
        flex-wrap:wrap;
        align-items:center;
        justify-content:flex-end;
        gap:8px 12px;
      }
      .monthly-weather-chart-legend-item{
        display:inline-flex;
        align-items:center;
        gap:7px;
        color:var(--muted);
        font-size:0.73rem;
        font-weight:600;
        letter-spacing:0.04em;
        text-transform:uppercase;
      }
      .monthly-weather-chart-legend-item::before{
        content:"";
        display:block;
        width:16px;
        height:6px;
        border-radius:999px;
      }
      .monthly-weather-chart-legend-item--wind::before{
        background:rgba(44,214,145,0.78);
      }
      .monthly-weather-chart-legend-item--gust::before{
        background:rgba(255,186,92,0.58);
      }
      .monthly-weather-chart-legend-item--temp::before{
        background:rgba(114,172,255,0.8);
      }
      .monthly-weather-chart{
        display:grid;
        gap:4px;
      }
      .monthly-weather-chart-row{
        display:grid;
        grid-template-columns:42px minmax(0, 1fr);
        align-items:center;
        gap:10px;
      }
      .monthly-weather-chart-row.is-selected .monthly-weather-chart-month{
        color:#ecfff5;
      }
      .monthly-weather-chart-row.is-selected .monthly-weather-chart-track{
        border-color:rgba(96,176,142,0.4);
        box-shadow:0 0 0 1px rgba(96,176,142,0.14);
      }
      .monthly-weather-chart-month{
        color:rgba(230,236,245,0.78);
        font-size:0.75rem;
        font-weight:700;
        letter-spacing:0.12em;
        text-transform:uppercase;
      }
      .monthly-weather-chart-track{
        position:relative;
        display:block;
        width:100%;
        height:18px;
        padding:0;
        border-radius:999px;
        border:1px solid rgba(112,138,176,0.2);
        appearance:none;
        -webkit-appearance:none;
        background:
          linear-gradient(90deg, rgba(20,30,44,0.94), rgba(9,15,24,0.94)),
          repeating-linear-gradient(
            90deg,
            transparent 0,
            transparent calc(8.333% - 1px),
            rgba(188,206,232,0.08) calc(8.333% - 1px),
            rgba(188,206,232,0.08) 8.333%
          );
        overflow:hidden;
        font:inherit;
        text-align:left;
        cursor:pointer;
        transition:border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
      }
      .monthly-weather-chart-track::after{
        content:"";
        position:absolute;
        inset:0;
        background:linear-gradient(90deg, rgba(255,255,255,0.03), transparent 18%, transparent 82%, rgba(255,255,255,0.03));
        pointer-events:none;
      }
      .monthly-weather-chart-row:hover .monthly-weather-chart-track,
      .monthly-weather-chart-track:focus-visible{
        border-color:rgba(125,167,214,0.34);
        box-shadow:0 0 0 1px rgba(125,167,214,0.12);
      }
      .monthly-weather-chart-track:focus-visible{
        outline:2px solid rgba(74,222,128,0.35);
        outline-offset:2px;
      }
      .monthly-weather-chart-bar{
        position:absolute;
        left:0;
        border-radius:999px;
      }
      .monthly-weather-chart-bar--gust{
        top:2px;
        bottom:2px;
        background:linear-gradient(90deg, rgba(146,126,95,0.28), rgba(193,170,130,0.42));
      }
      .monthly-weather-chart-bar--wind{
        top:5px;
        bottom:5px;
        background:linear-gradient(90deg, rgba(67,152,124,0.46), rgba(111,186,160,0.64));
      }
      .monthly-weather-chart-bar--temp{
        top:7px;
        bottom:7px;
        background:linear-gradient(90deg, rgba(96,137,189,0.58), rgba(146,180,220,0.76));
      }
      .monthly-weather-chart-tooltip{
        position:absolute;
        z-index:4;
        min-width:204px;
        max-width:min(268px, calc(100% - 16px));
        padding:10px 12px;
        border-radius:12px;
        border:1px solid rgba(34,197,94,0.42);
        background:linear-gradient(180deg, rgba(11,18,27,0.98), rgba(7,12,19,0.98));
        box-shadow:0 18px 44px rgba(0,0,0,0.42);
        pointer-events:none;
      }
      .monthly-weather-chart-tooltip[hidden]{
        display:none !important;
      }
      .monthly-weather-chart-tooltip-title{
        color:#ecfff5;
        font-size:0.8rem;
        font-weight:700;
        letter-spacing:0.02em;
      }
      .monthly-weather-chart-tooltip-row{
        margin-top:6px;
        padding-top:6px;
        display:flex;
        align-items:baseline;
        justify-content:space-between;
        gap:10px;
        border-top:1px solid rgba(74,222,128,0.12);
        color:rgba(230,236,245,0.74);
        font-size:0.73rem;
        line-height:1.35;
      }
      .monthly-weather-chart-tooltip-value{
        color:#ecfff5;
        font-weight:700;
      }
      .monthly-weather-metrics{
        display:none !important;
      }
      .monthly-weather-chart-values,
      .monthly-weather-chart-value{
        display:none !important;
      }
      .monthly-weather-disclaimer{
        margin:10px 0 0;
        color:var(--muted);
        font-size:0.76rem;
        line-height:1.45;
      }
      .weather-metric{
        border:1px solid rgba(99,143,190,0.3);
        border-radius:10px;
        background:#111926;
        padding:12px 12px 11px;
      }
      .weather-metric-head{
        display:flex;
        align-items:flex-start;
        justify-content:space-between;
        gap:10px;
      }
      .weather-metric-copy{
        min-width:0;
      }
      .weather-metric-icon{
        width:22px;
        height:22px;
        flex:0 0 22px;
        display:inline-flex;
        align-items:center;
        justify-content:center;
      }
      .weather-metric-icon svg{
        width:100%;
        height:100%;
        display:block;
      }
      .weather-metric--wind{
        border-color:rgba(39,198,124,0.28);
      }
      .weather-metric--gust{
        border-color:rgba(230,176,86,0.3);
      }
      .weather-metric--temp{
        border-color:rgba(114,172,255,0.32);
      }
      .weather-metric--wind .weather-metric-icon{
        color:rgba(44,214,145,0.92);
      }
      .weather-metric--gust .weather-metric-icon{
        color:rgba(255,186,92,0.92);
      }
      .weather-metric--temp .weather-metric-icon{
        color:rgba(114,172,255,0.96);
      }
      .weather-metric-label{
        color:var(--muted);
        text-transform:uppercase;
        letter-spacing:0.4px;
        font-size:0.75rem;
      }
      .weather-metric-value{
        margin-top:4px;
        font-size:1.03rem;
        font-weight:700;
        color:#ecfff5;
      }
      .weather-metric-bar{
        margin-top:8px;
        height:6px;
        border-radius:999px;
        background:rgba(255,255,255,0.12);
        overflow:hidden;
      }
      .weather-metric-bar > span{
        display:block;
        height:100%;
        border-radius:999px;
        background:rgba(44,214,145,0.92);
      }
      .weather-metric--gust .weather-metric-bar > span{
        background:rgba(255,186,92,0.9);
      }
      .weather-metric--temp .weather-metric-bar > span{
        background:rgba(114,172,255,0.96);
      }
      @media(max-width:780px){
        .monthly-weather-chart-row{
          grid-template-columns:38px minmax(0, 1fr);
          gap:8px;
        }
        .monthly-weather-chart-track{
          height:16px;
        }
        .monthly-weather-chart-bar--wind{
          top:4px;
          bottom:4px;
        }
        .monthly-weather-chart-bar--temp{
          top:6px;
          bottom:6px;
        }
        .monthly-weather-chart-tooltip{
          min-width:176px;
        }
      }

      /* Monthly climate explorer v2 */
      .monthly-weather-card[data-climate-schema="2"]{
        --climate-blue:#65b9ff;
        --climate-green:#53e68f;
        --climate-gold:#ffc65a;
        --climate-orange:#ff985f;
        display:grid;
        gap:16px;
        min-width:0;
        padding:clamp(14px, 2.2vw, 24px);
        border:1px solid rgba(73, 118, 174, 0.48);
        border-radius:18px;
        background:
          radial-gradient(circle at 8% -8%, rgba(30, 118, 188, 0.12), transparent 31%),
          radial-gradient(circle at 92% 3%, rgba(39, 227, 125, 0.08), transparent 28%),
          linear-gradient(155deg, rgba(7, 16, 28, 0.98), rgba(4, 10, 18, 0.98));
        box-shadow:0 22px 58px rgba(0, 0, 0, 0.24), inset 0 1px rgba(255, 255, 255, 0.02);
        overflow:hidden;
      }
      .monthly-weather-toolbar{
        display:flex;
        align-items:stretch;
        justify-content:space-between;
        gap:10px;
        min-width:0;
      }
      .monthly-weather-card[data-climate-schema="2"] > #monthlyWeatherResourceSlot{
        flex:0 1 auto;
        margin:0;
      }
      .monthly-weather-card[data-climate-schema="2"] .monthly-weather-resource-link{
        min-height:38px;
        justify-content:center;
        gap:1px;
        padding:7px 13px;
        border-radius:9px;
        background:rgba(17, 56, 39, 0.42);
      }
      .monthly-weather-card[data-climate-schema="2"] .monthly-weather-resource-title{
        font-size:0.73rem;
        letter-spacing:0.055em;
        text-transform:uppercase;
      }
      .monthly-weather-card[data-climate-schema="2"] .monthly-weather-resource-subtitle{
        font-size:0.61rem;
      }
      .monthly-weather-source-badge{
        display:inline-flex;
        align-items:center;
        min-height:38px;
        padding:7px 12px;
        border:1px solid rgba(87, 131, 188, 0.48);
        border-radius:9px;
        background:rgba(7, 17, 30, 0.78);
        color:#a9bbd3;
        font-size:0.67rem;
        font-weight:800;
        letter-spacing:0.055em;
        line-height:1.25;
        text-align:center;
        text-transform:uppercase;
      }
      .monthly-weather-card[data-climate-schema="2"] .monthly-weather-header{
        display:flex;
        align-items:flex-end;
        margin:0;
        padding:0;
        border:0;
      }
      .monthly-weather-card[data-climate-schema="2"] .monthly-weather-context-copy{
        max-width:78ch;
      }
      .monthly-weather-mode-switch{
        display:inline-grid;
        grid-template-columns:repeat(3, minmax(0, auto));
        gap:3px;
        padding:3px;
        border:1px solid rgba(78, 108, 148, 0.46);
        border-radius:10px;
        background:rgba(5, 12, 22, 0.84);
      }
      .monthly-weather-mode{
        min-height:32px;
        padding:5px 11px;
        border:1px solid transparent;
        border-radius:7px;
        background:transparent;
        color:#8396af;
        font:inherit;
        font-size:0.64rem;
        font-weight:800;
        letter-spacing:0.055em;
        text-transform:uppercase;
        cursor:pointer;
      }
      .monthly-weather-mode:hover{
        color:#dbe8f7;
        background:rgba(80, 112, 154, 0.14);
      }
      .monthly-weather-mode.is-active{
        border-color:rgba(39, 227, 125, 0.48);
        background:rgba(39, 227, 125, 0.1);
        color:#68efa2;
        box-shadow:inset 0 0 18px rgba(39, 227, 125, 0.05);
      }
      .monthly-weather-mode:focus-visible,
      .monthly-weather-month:focus-visible,
      .monthly-weather-pin-button:focus-visible,
      .monthly-weather-compare-chips button:focus-visible{
        outline:2px solid #76c2ff;
        outline-offset:2px;
      }
      .monthly-weather-season-grid{
        display:grid;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:14px;
        min-width:0;
      }
      .monthly-weather-season{
        --season-accent:var(--climate-blue);
        min-width:0;
        padding:12px;
        border:1px solid color-mix(in srgb, var(--season-accent) 28%, rgba(61, 86, 120, 0.6));
        border-radius:14px;
        background:
          linear-gradient(135deg, color-mix(in srgb, var(--season-accent) 6%, transparent), transparent 43%),
          rgba(5, 14, 24, 0.72);
      }
      .monthly-weather-season--spring{ --season-accent:var(--climate-green); }
      .monthly-weather-season--summer{ --season-accent:var(--climate-gold); }
      .monthly-weather-season--fall{ --season-accent:var(--climate-orange); }
      .monthly-weather-season-title{
        display:flex;
        align-items:center;
        gap:8px;
        margin:0 0 9px;
        color:var(--season-accent);
        font-size:0.74rem;
        font-weight:850;
        letter-spacing:0.13em;
        text-transform:uppercase;
      }
      .monthly-weather-season-title > span{
        width:8px;
        height:8px;
        border:1px solid currentColor;
        border-radius:50%;
        background:color-mix(in srgb, var(--season-accent) 42%, transparent);
        box-shadow:0 0 12px color-mix(in srgb, var(--season-accent) 38%, transparent);
      }
      .monthly-weather-months{
        display:grid;
        grid-template-columns:repeat(3, minmax(0, 1fr));
        gap:8px;
        min-width:0;
      }
      .monthly-weather-month-card{
        min-width:0;
      }
      .monthly-weather-month{
        position:relative;
        display:flex;
        flex-direction:column;
        align-items:stretch;
        width:100%;
        min-width:0;
        min-height:214px;
        padding:10px 9px 9px;
        border:1px solid rgba(77, 108, 149, 0.54);
        border-radius:11px;
        appearance:none;
        -webkit-appearance:none;
        background:
          linear-gradient(180deg, rgba(13, 28, 45, 0.94), rgba(6, 16, 28, 0.96)),
          rgba(5, 12, 20, 0.96);
        color:#e7eef8;
        font:inherit;
        text-align:center;
        cursor:pointer;
        overflow:hidden;
        transition:transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;
      }
      .monthly-weather-month::before{
        content:"";
        position:absolute;
        inset:0;
        background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--season-accent) 11%, transparent), transparent 50%);
        opacity:0.35;
        pointer-events:none;
      }
      .monthly-weather-month:hover{
        transform:translateY(-2px);
        border-color:color-mix(in srgb, var(--season-accent) 62%, #48698f);
      }
      .monthly-weather-month-card.is-selected .monthly-weather-month{
        border-color:#5cf29b;
        background:linear-gradient(180deg, rgba(19, 46, 55, 0.97), rgba(6, 20, 30, 0.98));
        box-shadow:0 0 0 1px rgba(92, 242, 155, 0.26), 0 0 24px rgba(39, 227, 125, 0.16), inset 0 0 22px rgba(39, 227, 125, 0.05);
      }
      .monthly-weather-month-name{
        position:relative;
        color:#bfcee1;
        font-size:0.73rem;
        font-weight:850;
        letter-spacing:0.16em;
      }
      .monthly-weather-overview-metric{
        position:relative;
        display:grid;
        margin-top:9px;
      }
      .monthly-weather-temperature{
        color:var(--season-accent);
        font-size:clamp(1.42rem, 2.4vw, 2rem);
        font-variant-numeric:tabular-nums;
        letter-spacing:-0.035em;
        line-height:1;
      }
      .monthly-weather-temperature-label{
        margin-top:5px;
        color:#bac7d7;
        font-size:0.58rem;
        font-variant-numeric:tabular-nums;
        line-height:1.35;
        white-space:nowrap;
      }
      .monthly-weather-temperature-track{
        position:relative;
        height:5px;
        margin:9px 1px 0;
        border-radius:999px;
        background:rgba(94, 119, 153, 0.23);
      }
      .monthly-weather-temperature-range{
        position:absolute;
        top:0;
        bottom:0;
        border-radius:999px;
        background:linear-gradient(90deg, #5caeff, #69e9a5, #ffc65a);
      }
      .monthly-weather-temperature-dot{
        position:absolute;
        top:50%;
        width:9px;
        height:9px;
        border:1px solid #d9ffe8;
        border-radius:50%;
        background:#59d98e;
        box-shadow:0 0 0 2px rgba(3, 15, 24, 0.7);
        transform:translate(-50%, -50%);
      }
      .monthly-weather-wind{
        position:relative;
        display:grid;
        grid-template-columns:auto 1fr auto;
        align-items:center;
        gap:5px;
        margin-top:9px;
        padding:6px 7px;
        border:1px solid rgba(75, 174, 138, 0.26);
        border-radius:8px;
        background:rgba(12, 41, 35, 0.42);
        color:#9fb3c8;
        font-size:0.55rem;
      }
      .monthly-weather-wind strong{
        color:#73e7a4;
        font-size:0.64rem;
        font-variant-numeric:tabular-nums;
        white-space:nowrap;
      }
      .monthly-weather-wind-arrow{
        display:inline-block;
        color:#61e69b;
        font-size:0.82rem;
        transform:rotate(var(--wind-direction));
      }
      /* Wind is fail-closed when NOAA coverage misses the qualification gate.
         Collapse that reserved instrument slot instead of leaving dead space. */
      .monthly-weather-month-card--no-wind .monthly-weather-month{
        min-height:148px;
      }
      .monthly-weather-month-card--no-wind .monthly-weather-solar{
        margin-top:10px;
        padding-top:7px;
      }
      .monthly-weather-mode-metric{
        position:relative;
        display:none;
        flex:1 1 auto;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        min-height:112px;
        margin-top:9px;
      }
      .monthly-weather-mode-metric strong{
        color:var(--season-accent);
        font-size:clamp(1.25rem, 2.2vw, 1.8rem);
        font-variant-numeric:tabular-nums;
        line-height:1.1;
      }
      .monthly-weather-mode-metric > span:not(.monthly-weather-mode-icon):not(.monthly-weather-mode-bar){
        margin-top:5px;
        color:#9fb0c5;
        font-size:0.59rem;
      }
      .monthly-weather-mode-icon{
        margin-bottom:7px;
        color:var(--season-accent);
        font-size:1.1rem;
      }
      .monthly-weather-mode-bar{
        display:block;
        width:100%;
        height:5px;
        margin-top:11px;
        border-radius:999px;
        background:rgba(79, 105, 140, 0.24);
        overflow:hidden;
      }
      .monthly-weather-mode-bar > span{
        display:block;
        height:100%;
        border-radius:inherit;
        background:linear-gradient(90deg, #54aef3, var(--season-accent));
      }
      .monthly-weather-month-card--no-wind .monthly-weather-mode-metric{
        flex:0 0 auto;
        min-height:0;
        margin-top:6px;
      }
      .monthly-weather-month-card--no-wind .monthly-weather-mode-icon{
        margin-bottom:3px;
        font-size:0.85rem;
      }
      .monthly-weather-month-card--no-wind .monthly-weather-mode-metric strong{
        font-size:1.25rem;
      }
      .monthly-weather-month-card--no-wind .monthly-weather-mode-metric > span:not(.monthly-weather-mode-icon):not(.monthly-weather-mode-bar){
        margin-top:2px;
      }
      .monthly-weather-month-card--no-wind .monthly-weather-mode-bar{
        margin-top:6px;
      }
      .monthly-weather-card[data-climate-mode="precipitation"] .monthly-weather-overview-metric,
      .monthly-weather-card[data-climate-mode="precipitation"] .monthly-weather-wind,
      .monthly-weather-card[data-climate-mode="snow"] .monthly-weather-overview-metric,
      .monthly-weather-card[data-climate-mode="snow"] .monthly-weather-wind{
        display:none;
      }
      .monthly-weather-card[data-climate-mode="precipitation"] .monthly-weather-mode-metric--precipitation,
      .monthly-weather-card[data-climate-mode="snow"] .monthly-weather-mode-metric--snow{
        display:flex;
      }
      .monthly-weather-solar{
        position:relative;
        display:grid;
        grid-template-columns:auto minmax(0, 1fr) auto;
        align-items:center;
        gap:5px;
        margin-top:auto;
        padding-top:11px;
      }
      .monthly-weather-solar > strong{
        grid-column:1 / -1;
        color:#dce6f2;
        font-size:0.65rem;
        font-variant-numeric:tabular-nums;
        line-height:1;
      }
      .monthly-weather-solar-icon{
        color:#ffc561;
        font-size:0.68rem;
        line-height:1;
      }
      .monthly-weather-daybar{
        position:relative;
        display:block;
        height:8px;
        border:1px solid rgba(102, 126, 165, 0.42);
        border-radius:999px;
        background:linear-gradient(180deg, #293451, #10172b);
        overflow:hidden;
      }
      .monthly-weather-daybar-core,
      .monthly-weather-daybar-range,
      .monthly-weather-daybar-marker{
        position:absolute;
        top:0;
        bottom:0;
      }
      .monthly-weather-daybar-core{
        background:linear-gradient(90deg, #73d99d, #a1edab, #74d99e);
        box-shadow:0 0 8px rgba(92, 227, 147, 0.32);
      }
      .monthly-weather-daybar-range{
        z-index:2;
        min-width:2px;
        background:rgba(255, 194, 83, 0.62);
      }
      .monthly-weather-daybar-range--sunset{
        background:rgba(240, 150, 93, 0.68);
      }
      .monthly-weather-daybar-marker{
        z-index:3;
        width:1px;
        background:#f8fbff;
        box-shadow:0 0 3px #fff;
      }
      .monthly-weather-detail{
        padding:14px 16px;
        border:1px solid rgba(65, 129, 174, 0.45);
        border-radius:13px;
        background:linear-gradient(140deg, rgba(10, 32, 43, 0.92), rgba(6, 15, 27, 0.95));
      }
      .monthly-weather-detail[hidden]{ display:none !important; }
      .monthly-weather-detail-heading{
        display:flex;
        align-items:end;
        justify-content:space-between;
        gap:12px;
        padding-bottom:10px;
        border-bottom:1px solid rgba(91, 126, 166, 0.28);
      }
      .monthly-weather-detail-heading span{
        color:#62e79c;
        font-size:0.58rem;
        font-weight:800;
        letter-spacing:0.11em;
        text-transform:uppercase;
      }
      .monthly-weather-detail-heading h3{
        margin:2px 0 0;
        color:#f0f6fd;
        font-size:1rem;
      }
      .monthly-weather-detail-heading > strong{
        color:#9fe7bb;
        font-size:1.08rem;
        font-variant-numeric:tabular-nums;
      }
      .monthly-weather-detail-grid{
        display:grid;
        grid-template-columns:repeat(6, minmax(0, 1fr));
        gap:8px;
        margin:11px 0 0;
      }
      .monthly-weather-detail-grid > div{
        min-width:0;
        padding-left:9px;
        border-left:1px solid rgba(89, 122, 163, 0.3);
      }
      .monthly-weather-detail-grid > div:first-child{
        padding-left:0;
        border-left:0;
      }
      .monthly-weather-detail-grid dt{
        overflow:hidden;
        color:#7f91a9;
        font-size:0.53rem;
        font-weight:800;
        letter-spacing:0.06em;
        text-overflow:ellipsis;
        text-transform:uppercase;
        white-space:nowrap;
      }
      .monthly-weather-detail-grid dd{
        margin:4px 0 0;
        color:#e7f1fb;
        font-size:0.78rem;
        font-weight:800;
        font-variant-numeric:tabular-nums;
      }
      .monthly-weather-detail-grid small{
        display:block;
        margin-top:3px;
        color:#8193a9;
        font-size:0.55rem;
        line-height:1.35;
      }
      .monthly-weather-detail-note{
        margin:9px 0 0;
        color:#91a5bd;
        font-size:0.63rem;
        line-height:1.45;
      }
      .monthly-weather-compare-actions{
        display:flex;
        align-items:center;
        justify-content:flex-end;
        gap:9px;
      }
      .monthly-weather-pin-button{
        min-height:34px;
        padding:6px 12px;
        border:1px solid rgba(67, 157, 111, 0.62);
        border-radius:8px;
        background:rgba(24, 87, 56, 0.25);
        color:#70eaa4;
        font:inherit;
        font-size:0.64rem;
        font-weight:800;
        letter-spacing:0.04em;
        text-transform:uppercase;
        cursor:pointer;
      }
      .monthly-weather-pin-button:hover,
      .monthly-weather-pin-button[aria-pressed="true"]{
        border-color:#58e995;
        background:rgba(39, 227, 125, 0.14);
      }
      .monthly-weather-pin-button:disabled{
        opacity:0.46;
        cursor:not-allowed;
      }
      .monthly-weather-compare-hint{
        color:#74889f;
        font-size:0.62rem;
        font-variant-numeric:tabular-nums;
      }
      .monthly-weather-compare{
        min-width:0;
        padding:13px;
        border:1px solid rgba(73, 111, 159, 0.48);
        border-radius:13px;
        background:rgba(5, 13, 23, 0.82);
      }
      .monthly-weather-compare[hidden]{ display:none !important; }
      .monthly-weather-compare-header{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
        margin-bottom:10px;
      }
      .monthly-weather-compare-header h3{
        margin:0;
        color:#dce8f7;
        font-size:0.76rem;
        letter-spacing:0.08em;
        text-transform:uppercase;
      }
      .monthly-weather-compare-chips{
        display:flex;
        flex-wrap:wrap;
        justify-content:flex-end;
        gap:5px;
      }
      .monthly-weather-compare-chips button{
        display:inline-flex;
        align-items:center;
        gap:6px;
        min-height:27px;
        padding:4px 8px;
        border:1px solid rgba(39, 227, 125, 0.42);
        border-radius:999px;
        background:rgba(39, 227, 125, 0.08);
        color:#7becaa;
        font:inherit;
        font-size:0.59rem;
        font-weight:800;
        cursor:pointer;
      }
      .monthly-weather-compare-table-wrap{
        max-width:100%;
        overflow-x:auto;
      }
      .monthly-weather-compare table{
        width:100%;
        border-collapse:collapse;
        color:#bac8d9;
        font-size:0.64rem;
        font-variant-numeric:tabular-nums;
      }
      .monthly-weather-compare th,
      .monthly-weather-compare td{
        padding:7px 9px;
        border-top:1px solid rgba(72, 100, 137, 0.28);
        text-align:left;
        white-space:nowrap;
      }
      .monthly-weather-compare thead th{
        border-top:0;
        color:#8fa4bc;
        font-size:0.56rem;
        letter-spacing:0.05em;
        text-transform:uppercase;
      }
      .monthly-weather-compare tbody th{
        color:#778ca4;
        font-weight:700;
      }
      .monthly-weather-compare td{
        color:#e0eaf6;
        font-weight:750;
      }
      .monthly-weather-method{
        border-top:1px solid rgba(74, 103, 140, 0.28);
        padding-top:11px;
        color:#8295ad;
        font-size:0.64rem;
      }
      .monthly-weather-method summary{
        display:inline-flex;
        color:#8eb0d4;
        font-weight:800;
        letter-spacing:0.04em;
        cursor:pointer;
        text-transform:uppercase;
      }
      .monthly-weather-method summary:focus-visible{
        outline:2px solid #76c2ff;
        outline-offset:3px;
      }
      .monthly-weather-method-body{
        display:grid;
        gap:5px;
        margin-top:10px;
        padding:10px 12px;
        border:1px solid rgba(73, 104, 145, 0.34);
        border-radius:9px;
        background:rgba(7, 15, 25, 0.7);
      }
      .monthly-weather-method-body p{ margin:0; line-height:1.5; }
      .monthly-weather-method-links{
        display:flex;
        flex-wrap:wrap;
        gap:7px 12px;
        margin-top:3px;
      }
      .monthly-weather-method-links a{
        color:#68b7f6;
        text-decoration:none;
      }
      .monthly-weather-method-links a:hover{ text-decoration:underline; }
      .monthly-weather-card[data-climate-schema="2"] .monthly-weather-disclaimer{
        margin:0;
        color:#71859c;
        font-size:0.64rem;
      }

      @media(max-width:1100px){
        .monthly-weather-season-grid{
          grid-template-columns:minmax(0, 1fr);
        }
        .monthly-weather-month{
          min-height:198px;
        }
        .monthly-weather-month-card--no-wind .monthly-weather-month{
          min-height:148px;
        }
      }
      @media(max-width:760px){
        .monthly-weather-toolbar,
        .monthly-weather-card[data-climate-schema="2"] .monthly-weather-header,
        .monthly-weather-detail-heading,
        .monthly-weather-compare-header{
          align-items:stretch;
          flex-direction:column;
        }
        .monthly-weather-card[data-climate-schema="2"] > #monthlyWeatherResourceSlot,
        .monthly-weather-card[data-climate-schema="2"] .monthly-weather-resource-link,
        .monthly-weather-source-badge{
          width:100%;
        }
        .monthly-weather-source-badge{ justify-content:center; }
        .monthly-weather-card[data-climate-schema="2"] .monthly-weather-context{
          flex:0 1 auto;
          width:100%;
        }
        .monthly-weather-mode-switch{
          grid-template-columns:repeat(3, minmax(0, 1fr));
          width:100%;
        }
        .monthly-weather-detail-grid{
          grid-template-columns:repeat(3, minmax(0, 1fr));
          gap:12px 5px;
        }
        .monthly-weather-detail-grid > div:nth-child(4){
          padding-left:0;
          border-left:0;
        }
        .monthly-weather-compare-chips{ justify-content:flex-start; }
      }
      @media(max-width:540px){
        .monthly-weather-card[data-climate-schema="2"]{
          gap:12px;
          padding:11px;
          border-radius:14px;
        }
        .monthly-weather-season{
          padding:9px;
        }
        .monthly-weather-months{
          gap:5px;
        }
        .monthly-weather-month{
          min-height:180px;
          padding:8px 5px 7px;
          border-radius:9px;
        }
        .monthly-weather-month-card--no-wind .monthly-weather-month{
          min-height:144px;
        }
        .monthly-weather-temperature{
          font-size:clamp(1.22rem, 7vw, 1.55rem);
        }
        .monthly-weather-temperature-label{
          font-size:0.49rem;
          letter-spacing:-0.015em;
        }
        .monthly-weather-temperature-track{
          margin-top:7px;
        }
        .monthly-weather-wind{
          grid-template-columns:auto 1fr;
          gap:3px;
          padding:4px;
        }
        .monthly-weather-wind > span:last-child{ display:none; }
        .monthly-weather-solar{
          gap:3px;
          padding-top:8px;
        }
        .monthly-weather-solar-icon{ display:none; }
        .monthly-weather-daybar{ grid-column:1 / -1; }
        .monthly-weather-solar > strong{ font-size:0.58rem; }
        .monthly-weather-mode-metric{ min-height:99px; }
        .monthly-weather-mode-metric strong{ font-size:1.2rem; }
        .monthly-weather-detail-grid{
          grid-template-columns:repeat(2, minmax(0, 1fr));
        }
        .monthly-weather-detail-grid > div:nth-child(4){
          padding-left:9px;
          border-left:1px solid rgba(89, 122, 163, 0.3);
        }
        .monthly-weather-detail-grid > div:nth-child(odd){
          padding-left:0;
          border-left:0;
        }
      }
      @media(prefers-reduced-motion:reduce){
        .monthly-weather-month,
        .monthly-weather-card[data-climate-schema="2"] .monthly-weather-resource-link{
          transition:none;
        }
        .monthly-weather-month:hover,
        .monthly-weather-card[data-climate-schema="2"] .monthly-weather-resource-link:hover{
          transform:none;
        }
      }
      @media(forced-colors:active){
        .monthly-weather-card[data-climate-schema="2"],
        .monthly-weather-season,
        .monthly-weather-month,
        .monthly-weather-detail,
        .monthly-weather-compare{
          border-color:CanvasText;
        }
        .monthly-weather-temperature-range,
        .monthly-weather-daybar-core,
        .monthly-weather-mode-bar > span{
          background:Highlight;
        }
      }
      .panel-reader-modal{
        position:fixed;
        inset:0;
        z-index:1200;
        background:rgba(2, 10, 18, 0.46);
        backdrop-filter:blur(10px) saturate(1.08);
        display:flex;
        align-items:center;
        justify-content:center;
        padding:clamp(14px, 3vw, 30px);
      }
      .panel-reader-modal[hidden]{
        display:none !important;
      }
      .panel-reader-dialog{
        width:min(100%, 1180px);
        max-width:1220px;
        max-height:min(86dvh, 960px);
        border-radius:22px;
        border:1px solid rgba(111, 154, 224, 0.28);
        background:linear-gradient(180deg, rgba(10, 18, 30, 0.98), rgba(5, 10, 18, 0.98));
        box-shadow:0 28px 90px rgba(0,0,0,0.48);
        display:flex;
        flex-direction:column;
        overflow:hidden;
      }
      .panel-reader-header{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
        padding:10px 14px;
        border-bottom:1px solid rgba(255,255,255,0.16);
      }
      .panel-reader-header h2{
        margin:0;
        font-size:0.94rem;
        color:var(--accent);
        text-transform:uppercase;
        letter-spacing:0.45px;
      }
      .panel-reader-controls{
        display:flex;
        align-items:center;
        gap:10px;
      }
      #panelReaderScale{
        min-height:34px;
        border-radius:8px;
        border:1px solid rgba(255,255,255,0.24);
        background:#101827;
        color:#fff;
        padding:4px 8px;
      }
      .panel-reader-content{
        --reader-scale-factor: 1.65;
        --reader-sheet-max-width: 920px;
        flex:1 1 auto;
        overflow:auto;
        padding:clamp(18px, 3vw, 34px);
        display:flex;
        justify-content:center;
        align-items:flex-start;
      }
      .panel-reader-sheet{
        width:min(100%, var(--reader-sheet-max-width));
        margin:0 auto;
      }
      #panelReaderContent .metadata-panel,
      #panelReaderContent section,
      #panelReaderContent article{
        width:100%;
        margin:0;
      }
      #panelReaderContent .metadata-row{
        grid-template-columns:minmax(190px, 34%) minmax(0, 1fr);
        gap:clamp(10px, 1.4vw, 20px);
      }
      #panelReaderContent .metadata-label{
        font-size:calc(0.79rem * var(--reader-scale-factor));
      }
      #panelReaderContent .metadata-value{
        font-size:calc(0.96rem * var(--reader-scale-factor));
        padding-left:0;
        white-space:normal;
        overflow-wrap:anywhere;
        word-break:break-word;
        line-height:1.7;
      }
      #panelReaderContent .metadata-value.is-right-aligned{
        text-align:left;
        justify-self:stretch;
      }
      #panelReaderContent .collapsible-content{
        max-height:none !important;
        overflow:visible;
      }
      #panelReaderContent .collapsible-content-fade{
        display:none !important;
      }
      #panelReaderContent .description-body,
      #panelReaderContent p,
      #panelReaderContent li{
        white-space:normal;
        overflow-wrap:anywhere;
        word-break:break-word;
        line-height:1.75;
      }
      #panelReaderContent .description-body{
        max-width:72ch;
        margin:0 auto;
        font-size:calc(1.04rem * var(--reader-scale-factor));
      }
      .trailhead-chooser-modal{
        position:fixed;
        inset:0;
        z-index:1200;
        background:rgba(2, 10, 18, 0.52);
        backdrop-filter:blur(10px) saturate(1.08);
        display:flex;
        align-items:center;
        justify-content:center;
        padding:clamp(14px, 3vw, 30px);
      }
      .trailhead-chooser-modal[hidden]{
        display:none !important;
      }
      .trailhead-chooser-dialog{
        width:min(100%, 1120px);
        max-height:min(86dvh, 940px);
        border-radius:22px;
        border:1px solid rgba(111, 154, 224, 0.28);
        background:linear-gradient(180deg, rgba(10, 18, 30, 0.98), rgba(5, 10, 18, 0.98));
        box-shadow:0 28px 90px rgba(0,0,0,0.48);
        display:flex;
        flex-direction:column;
        overflow:hidden;
      }
      .trailhead-chooser-header{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
        padding:12px 14px;
        border-bottom:1px solid rgba(255,255,255,0.16);
      }
      .trailhead-chooser-header h2{
        margin:0;
        font-size:0.94rem;
        color:var(--accent);
        text-transform:uppercase;
        letter-spacing:0.45px;
      }
      .trailhead-chooser-content{
        flex:1 1 auto;
        overflow:auto;
        padding:clamp(18px, 3vw, 28px);
      }
      .trailhead-chooser-intro{
        margin:0 0 14px;
        color:var(--muted);
        line-height:1.55;
      }
      .trailhead-chooser-list{
        display:grid;
        grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
        gap:12px;
      }
      .trailhead-option-card{
        border:1px solid rgba(61, 84, 124, 0.62);
        border-radius:16px;
        padding:14px;
        background:linear-gradient(160deg, rgba(15, 23, 35, 0.96), rgba(10, 16, 27, 0.94));
        box-shadow:0 12px 30px rgba(0,0,0,0.28);
      }
      .trailhead-option-title{
        margin:0;
        font-size:1rem;
        color:#f4f8ff;
      }
      .trailhead-option-summary{
        margin:6px 0 0;
        color:var(--muted);
        line-height:1.55;
      }
      .trailhead-access-road-warning{
        margin-top:12px;
        padding:12px 13px;
        border-radius:14px;
        border:1px solid rgba(255,255,255,0.14);
        background:rgba(255,255,255,0.05);
      }
      .trailhead-access-road-warning.is-compact{
        margin-top:10px;
      }
      .trailhead-access-road-warning.is-closed{
        border-color:rgba(248,113,113,0.42);
        background:rgba(248,113,113,0.12);
      }
      .trailhead-access-road-warning.is-partially-open{
        border-color:rgba(251,191,36,0.4);
        background:rgba(251,191,36,0.12);
      }
      .trailhead-access-road-warning.is-open{
        border-color:rgba(74,222,128,0.34);
        background:rgba(34,197,94,0.1);
      }
      .trailhead-access-road-warning-title{
        color:#f4f8ff;
        font-weight:800;
        font-size:0.82rem;
        letter-spacing:0.04em;
        text-transform:uppercase;
      }
      .trailhead-access-road-warning-copy{
        margin:6px 0 0;
        color:#e5edf8;
        line-height:1.55;
      }
      .trailhead-access-road-warning-list{
        margin:10px 0 0;
        padding-left:18px;
        display:grid;
        gap:6px;
        color:#eff5ff;
      }
      .trailhead-access-road-warning-list li span{
        color:#c9d7e7;
      }
      .trailhead-access-road-warning-source{
        margin:10px 0 0;
        color:#b3c2d4;
        font-size:0.84rem;
        line-height:1.45;
      }
      .trailhead-access-road-warning.lower-panel-inline-strip{
        margin-top:0;
      }
      .outdoor-network-panel{
        display:grid;
        gap:10px;
      }
      .section-note,
      .meta-line,
      .fine-print{
        color:var(--muted);
        line-height:1.55;
      }
      .section-note{
        margin:10px 0 0;
      }
      .outdoor-network-unavailable{
        margin:0;
        padding:9px 11px;
        border-radius:12px;
        border:1px solid rgba(245,158,11,0.28);
        background:rgba(245,158,11,0.09);
        color:#f6d9a0;
        line-height:1.5;
      }
      .condition-card-grid{
        display:grid;
        grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
        gap:12px;
        margin-top:14px;
      }
      .condition-card{
        border:1px solid rgba(255,255,255,0.09);
        border-radius:16px;
        background:rgba(255,255,255,0.035);
        padding:14px;
      }
      .condition-card__header{
        display:flex;
        align-items:flex-start;
        justify-content:space-between;
        gap:10px;
      }
      .condition-card h4{
        margin:0;
        font-size:1rem;
        color:#f4f8ff;
      }
      .status-pill{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        border-radius:999px;
        padding:0.2rem 0.55rem;
        font-size:0.74rem;
        font-weight:800;
        white-space:nowrap;
        border:1px solid rgba(255,255,255,0.14);
        background:rgba(255,255,255,0.05);
        color:var(--muted);
      }
      .status-pill--normal{
        color:#9fe5b2;
        border-color:rgba(74,222,128,0.36);
      }
      .status-pill--watch,
      .status-pill--caution{
        color:#f6d9a0;
        border-color:rgba(245,196,81,0.34);
      }
      .status-pill--warning{
        color:#ffb4b4;
        border-color:rgba(255,107,107,0.36);
      }
      .status-pill--unknown{
        color:#b8c7d8;
      }
      .condition-card--warning{
        border-color:rgba(255,107,107,0.34);
      }
      .condition-card--caution,
      .condition-card--watch{
        border-color:rgba(245,196,81,0.32);
      }
      .condition-card--normal{
        border-color:rgba(74,222,128,0.26);
      }
      .condition-note{
        margin-top:10px;
        color:#e6edf7;
        line-height:1.55;
      }
      .peak-water-source-chip-row{
        display:flex;
        flex-wrap:wrap;
        gap:7px;
        margin:8px 0 2px;
      }
      .peak-water-source-chip{
        display:inline-flex;
        align-items:center;
        gap:6px;
        max-width:100%;
        border-radius:999px;
        border:1px solid rgba(255,255,255,0.12);
        background:rgba(255,255,255,0.045);
        padding:5px 8px;
        color:#dce8f7;
        font-size:0.72rem;
        line-height:1.15;
      }
      .peak-water-source-chip strong{
        color:#f4f8ff;
        font-size:0.72rem;
        letter-spacing:0;
      }
      .peak-water-source-chip small{
        color:#aebdd0;
        font-size:0.68rem;
      }
      .peak-water-source-chip.is-usgs,
      .peak-water-source-chip.is-nhdes{
        border-color:rgba(52,211,153,0.28);
        background:rgba(16,185,129,0.08);
      }
      .peak-water-source-chip.is-nwps,
      .peak-water-source-chip.is-hads{
        border-color:rgba(96,165,250,0.28);
        background:rgba(59,130,246,0.08);
      }
      .peak-water-source-chip.is-usace,
      .peak-water-source-chip.is-streamstats{
        border-color:rgba(250,204,21,0.24);
        background:rgba(250,204,21,0.07);
      }
      .peak-water-context-list{
        display:grid;
        gap:5px;
        margin:8px 0 0;
        padding-left:1.1rem;
        color:#c7d6e8;
        font-size:0.88rem;
        line-height:1.45;
      }
      .peak-water-panel-summary{
        color:#d8e5f3;
      }
      .peak-water-entry-list{
        gap:0;
      }
      .peak-water-entry{
        display:block;
        padding:0;
      }
      .peak-water-entry:first-child{
        border-top:none;
      }
      .peak-water-entry__summary{
        display:grid;
        grid-template-columns:minmax(0, 1fr) auto;
        align-items:center;
        gap:12px;
        min-width:0;
        padding:12px 0;
        cursor:pointer;
        list-style:none;
      }
      .peak-water-entry:first-child .peak-water-entry__summary{
        padding-top:0;
      }
      .peak-water-entry:last-child .peak-water-entry__summary{
        padding-bottom:12px;
      }
      .peak-water-entry__summary::-webkit-details-marker{
        display:none;
      }
      .peak-water-entry__summary:focus-visible{
        outline:2px solid rgba(34,197,94,0.72);
        outline-offset:4px;
        border-radius:8px;
      }
      .peak-water-entry__main{
        display:grid;
        gap:4px;
        min-width:0;
      }
      .peak-water-entry__title,
      .peak-water-entry__meta{
        display:block;
        min-width:0;
        overflow-wrap:anywhere;
      }
      .peak-water-entry__meta{
        font-size:0.86rem;
        line-height:1.45;
      }
      .peak-water-entry__controls{
        display:flex;
        flex-wrap:wrap;
        align-items:center;
        justify-content:flex-end;
        gap:8px;
        min-width:0;
      }
      .peak-water-entry__toggle{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-height:28px;
        border-radius:999px;
        border:1px solid rgba(34,197,94,0.34);
        background:rgba(34,197,94,0.08);
        color:#a8f3bf;
        font-size:0.72rem;
        font-weight:800;
        line-height:1;
        padding:0 9px;
        white-space:nowrap;
      }
      .peak-water-entry__toggle::before{
        content:"Details";
      }
      .peak-water-entry[open] .peak-water-entry__toggle::before{
        content:"Hide";
      }
      .peak-water-entry__details{
        display:grid;
        gap:8px;
        padding:0 0 12px;
        color:#c7d6e8;
        font-size:0.92rem;
        line-height:1.5;
      }
      .peak-water-entry__details .condition-note{
        margin-top:0;
      }
      .peak-water-entry__details .peak-water-source-chip-row,
      .peak-water-entry__details .peak-water-context-list{
        margin-top:0;
      }
      .peak-water-detail-line{
        display:grid;
        grid-template-columns:auto minmax(0, 1fr);
        gap:8px;
        margin:0;
        color:#c7d6e8;
        line-height:1.45;
      }
      .peak-water-detail-line strong{
        color:#f4f8ff;
      }
      .peak-water-detail-line span{
        min-width:0;
        overflow-wrap:anywhere;
      }
      .peak-water-official-link{
        width:max-content;
        max-width:100%;
      }
      @media(max-width:640px){
        .peak-water-entry__summary{
          grid-template-columns:1fr;
          gap:8px;
        }
        .peak-water-entry__controls{
          justify-content:flex-start;
        }
        .peak-water-entry__controls .status-pill{
          max-width:100%;
          white-space:normal;
          text-align:left;
        }
        .peak-water-detail-line{
          grid-template-columns:1fr;
          gap:2px;
        }
      }
      .peak-section-panel--access-roads .peak-section-panel__body > .info-grid.info-grid--flat{
        gap:10px;
      }
      .outdoor-network-entry-list .lower-panel-entry{
        gap:6px;
        padding:10px 0;
      }
      .outdoor-network-entry-list .lower-panel-entry__title{
        font-size:0.96rem;
        line-height:1.35;
      }
      .outdoor-network-entry-list .lower-panel-entry__meta,
      .outdoor-network-entry-list .lower-panel-entry__note,
      .outdoor-network-panel .lower-panel-footnote{
        font-size:0.92rem;
        line-height:1.5;
      }
      .outdoor-network-panel .lower-panel-footnote{
        margin-top:2px;
      }
      .outdoor-network-trailhead-grid{
        display:grid;
        gap:10px;
        margin-top:12px;
      }
      .outdoor-network-trailhead{
        border-radius:14px;
        border:1px solid rgba(255,255,255,0.08);
        background:rgba(255,255,255,0.04);
        padding:11px 12px;
      }
      .outdoor-network-trailhead-name{
        color:#f4f8ff;
        font-weight:800;
        line-height:1.4;
      }
      .outdoor-network-directions{
        display:inline-flex;
        align-items:center;
        margin-top:10px;
        border-radius:999px;
        border:1px solid rgba(125,211,252,0.34);
        background:rgba(12,19,30,0.6);
        color:#d7ecff;
        padding:8px 12px;
        font-size:0.84rem;
        font-weight:700;
        text-decoration:none;
        transition:border-color .18s ease, background .18s ease, transform .18s ease;
      }
      .outdoor-network-directions:hover{
        border-color:rgba(125,211,252,0.55);
        background:rgba(18,29,45,0.78);
        transform:translateY(-1px);
      }
      @media (max-width: 720px){
        .condition-card-grid{
          grid-template-columns:1fr;
        }
        .trailhead-option-meta-row{
          grid-template-columns:1fr;
          gap:2px;
        }
      }
      .trailhead-option-meta{
        display:grid;
        gap:6px;
        margin:12px 0;
      }
      .trailhead-option-meta-row{
        display:grid;
        grid-template-columns:minmax(112px, 0.34fr) minmax(0, 1fr);
        gap:10px;
        color:#dce7f4;
        line-height:1.45;
      }
      .trailhead-option-meta-row dt{
        color:#f3f7ff;
        font-weight:700;
      }
      .trailhead-option-meta-row dd{
        margin:0;
        overflow-wrap:anywhere;
      }
      .trailhead-option-meta-row strong{
        color:#f3f7ff;
      }
      .trailhead-option-trails{
        margin-top:6px;
        margin-bottom:0;
      }
      .trailhead-option-actions{
        display:flex;
        flex-wrap:wrap;
        gap:8px;
        margin-top:14px;
      }
      .trailhead-highlight-btn{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-height:38px;
        padding:8px 14px;
        border-radius:10px;
        border:1px solid rgba(125, 211, 252, 0.5);
        background:rgba(125, 211, 252, 0.08);
        color:#d8f4ff;
        cursor:pointer;
        font-weight:700;
        letter-spacing:0.2px;
        transition:background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
      }
      .trailhead-highlight-btn:hover{
        background:rgba(125, 211, 252, 0.16);
        border-color:rgba(125, 211, 252, 0.78);
        color:#f3fbff;
        transform:translateY(-1px);
      }
      .trailhead-highlight-btn:focus-visible{
        outline:2px solid rgba(125, 211, 252, 0.95);
        outline-offset:2px;
      }
      .icon-btn[aria-disabled="true"],
      .icon-btn.is-disabled{
        opacity:0.45;
        cursor:not-allowed;
        filter:grayscale(0.3);
      }
      .primary-link-btn.is-disabled{
        opacity:0.45;
        cursor:not-allowed;
        pointer-events:none;
        filter:grayscale(0.3);
      }
      .primary-link-btn{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-height:38px;
        padding:8px 14px;
        border-radius:10px;
        border:1px solid rgba(74,222,128,0.7);
        background:rgba(34,197,94,0.14);
        color:#dfffee;
        text-decoration:none;
        font-weight:700;
        letter-spacing:0.2px;
        transition:background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
      }
      .primary-link-btn:hover{
        background:rgba(34,197,94,0.24);
        border-color:rgba(74,222,128,0.95);
        color:#f2fff8;
        transform:translateY(-1px);
      }
      .primary-link-btn:focus-visible{
        outline:2px solid rgba(74,222,128,0.95);
        outline-offset:2px;
      }
      @media(max-width:720px){
        .metadata-row{
          grid-template-columns:minmax(88px, 124px) minmax(0, 1fr);
          gap:8px;
        }
        .metadata-value{
          padding-left:4px;
          overflow-wrap:anywhere;
          word-break:break-word;
        }
        #generalInfoPanel .metadata-row,
        #photoMetadataPanel .metadata-row{
          grid-template-columns:1fr;
          gap:4px;
        }
        #generalInfoPanel .metadata-value.is-right-aligned,
        #photoMetadataPanel .metadata-value.is-right-aligned{
          text-align:left;
          justify-self:stretch;
          padding-left:0;
        }
        #photoMetadataPanel .metadata-row.is-desc-accessibility{
          grid-template-columns:1fr;
        }
        #photoMetadataPanel .metadata-row.is-desc-accessibility .metadata-value{
          padding-left:0;
        }
        .panel-reader-modal{
          padding:12px;
        }
        .panel-reader-dialog{
          width:100%;
          max-height:min(90dvh, 960px);
          border-radius:18px;
        }
        .trailhead-chooser-modal{
          padding:12px;
        }
        .trailhead-chooser-dialog{
          width:100%;
          max-height:min(90dvh, 960px);
          border-radius:18px;
        }
        .trailhead-chooser-content{
          padding:16px;
        }
      }
      @media(max-width:920px){
        #panelReaderContent .metadata-row{
          grid-template-columns:1fr;
          gap:6px;
        }
      }
      .peak-map-panel{
        border:1px solid rgba(61, 84, 124, 0.62);
        border-radius:12px;
        background:linear-gradient(160deg, rgba(15, 23, 35, 0.96), rgba(10, 16, 27, 0.94));
        padding:14px;
        margin-bottom:16px;
        box-shadow:0 12px 30px rgba(0,0,0,0.32);
      }
      .peak-section-panel--map .peak-map-panel{
        width:100%;
        max-width:100%;
        box-sizing:border-box;
        border:0;
        border-radius:0;
        background:transparent;
        padding:0;
        margin:0;
        box-shadow:none;
      }
      .peak-map-panel--embedded{
        border:none;
        border-radius:0;
        background:transparent;
        padding:0;
        margin:0;
        box-shadow:none;
      }
      .peak-map-panel--embedded .peak-map-header{
        display:none !important;
      }
      .peak-map-header{
        display:flex;
        align-items:flex-start;
        justify-content:space-between;
        gap:16px;
        margin-bottom:10px;
        flex-wrap:wrap;
      }
      .peak-map-title{
        font-size:0.95rem;
        font-weight:700;
        color:var(--ink);
      }
      .peak-map-subtitle{
        font-size:0.8rem;
        color:var(--muted);
        margin-top:2px;
      }
      .peak-map-cta{
        display:inline-flex;
        align-items:center;
        gap:6px;
        padding:8px 14px;
        border-radius:999px;
        border:1px solid rgba(34,197,94,0.8);
        background:rgba(34,197,94,0.15);
        color:var(--accent);
        font-weight:700;
        text-decoration:none;
        transition:all 0.2s ease;
        white-space:nowrap;
      }
      .peak-map-cta[hidden]{
        display:none !important;
      }
      .peak-map-cta:hover{
        background:rgba(34,197,94,0.25);
        color:var(--accent-strong);
        border-color:rgba(34,197,94,1);
      }
      .peak-map-frame{
        position:relative;
        width:100%;
        height:clamp(420px, 38vw, 480px);
        border-radius:10px;
        overflow:hidden;
        border:1px solid rgba(255,255,255,0.15);
        background:
          radial-gradient(circle at 22% 32%, rgba(34,197,94,0.2), transparent 34%),
          radial-gradient(circle at 78% 26%, rgba(56,189,248,0.16), transparent 30%),
          linear-gradient(145deg, #090d12, #0e1624 48%, #07100b);
      }
      @media(min-width:1024px){
        .peak-map-frame{
          height:auto;
          aspect-ratio:16 / 9;
        }
      }
      .peak-map-canvas{
        position:absolute;
        inset:0;
        opacity:1;
        transition:opacity .2s ease;
      }
      .peak-map-frame .peak-map-tile-layer--terrain-contrast{
        filter:brightness(0.68) contrast(1.55) saturate(0.82);
      }
      .peak-map-canvas[data-tile-contrast="terrain-high-contrast"] .leaflet-tile-pane{
        background:#081018;
      }
      .peak-map-canvas[data-map-style="wmnf-stylized"],
      .peak-map-canvas[data-map-style="wmnf-hillshade-only"]{
        background:#e7e5f1;
      }
      .peak-map-canvas .wmnf-hillshade-pane .leaflet-tile{
        opacity:.42;
        mix-blend-mode:multiply;
      }
      .peak-map-canvas .wmnf-contours-pane path{
        vector-effect:non-scaling-stroke;
      }
      .peak-map-canvas .leaflet-overlay-pane path[data-peak-map-trail="true"],
      .peak-map-canvas .peak-map-trail-line{
        stroke-linecap:round;
        stroke-linejoin:round;
        filter:drop-shadow(0 1px 2px rgba(0,0,0,0.86));
      }
      .peak-map-panel[data-map-state="static"] .peak-map-canvas,
      .peak-map-panel[data-map-state="idle"] .peak-map-canvas{
        opacity:0;
        pointer-events:none;
      }
      .peak-map-status{
        position:absolute;
        inset:auto auto 12px 12px;
        z-index:420;
        max-width:min(360px, calc(100% - 24px));
        background:rgba(10,10,10,0.75);
        border:1px solid rgba(255,255,255,0.1);
        border-radius:8px;
        padding:6px 10px;
        font-size:0.78rem;
        color:var(--muted);
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:10px;
        flex-wrap:wrap;
      }
      .peak-map-panel[data-map-state="static"] .peak-map-status,
      .peak-map-panel[data-map-state="idle"] .peak-map-status{
        inset:18px auto 18px 18px;
        max-width:min(420px, calc(100% - 300px));
        align-content:center;
      }
      .peak-map-panel[data-map-state="loading"] .peak-map-status .peak-map-static-preview,
      .peak-map-panel[data-map-state="loaded"] .peak-map-status{
        display:none;
      }
      .peak-map-status:empty{
        display:none;
      }
      .peak-map-static-preview{
        display:grid;
        gap:8px;
      }
      .peak-map-static-preview__eyebrow{
        margin:0;
        color:var(--accent);
        font-size:0.72rem;
        font-weight:900;
        letter-spacing:0.12em;
        text-transform:uppercase;
      }
      .peak-map-static-preview__summary,
      .peak-map-static-preview__meta{
        margin:0;
        line-height:1.5;
      }
      .peak-map-static-preview__summary{
        color:#e7f0ff;
      }
      .peak-map-load-btn{
        border:1px solid var(--accent-strong);
        background:var(--accent-strong);
        color:#fff;
        border-radius:6px;
        padding:7px 10px;
        font:inherit;
        font-weight:700;
        cursor:pointer;
        min-height:34px;
      }
      .peak-map-load-btn:hover,
      .peak-map-load-btn:focus-visible{
        filter:brightness(1.08);
      }
      .peak-map-load-btn:disabled{
        cursor:default;
        opacity:.72;
      }
      .peak-map-panel[data-map-state="loaded"] .peak-map-load-btn{
        display:none;
      }
      .peak-map-linked-trails{
        position:absolute;
        top:12px;
        right:12px;
        z-index:430;
        display:grid;
        gap:8px;
        width:min(272px, calc(100% - 84px));
        max-height:calc(100% - 24px);
        padding:10px;
        border:1px solid rgba(61, 84, 124, 0.74);
        border-radius:16px;
        background:linear-gradient(180deg, rgba(10, 17, 29, 0.9), rgba(7, 13, 22, 0.94));
        box-shadow:0 12px 28px rgba(0,0,0,0.34);
        backdrop-filter:blur(10px);
      }
      .peak-map-linked-trails__header{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:10px;
      }
      .peak-map-linked-trails__title{
        margin:0;
        color:#ffffff;
        font-size:0.78rem;
        font-weight:900;
        letter-spacing:0.12em;
        text-transform:uppercase;
      }
      .peak-map-linked-trails__list{
        margin:0;
        padding:0;
        list-style:none;
        display:grid;
        gap:5px;
        overflow:auto;
        scrollbar-width:thin;
      }
      .peak-map-linked-trails__item{
        margin:0;
        line-height:1.2;
      }
      .peak-map-linked-trails__card{
        display:grid;
        grid-template-columns:minmax(0, 1fr) auto;
        align-items:stretch;
        border:1px solid rgba(71, 99, 137, 0.56);
        border-radius:9px;
        background:rgba(15, 25, 39, 0.82);
        overflow:hidden;
      }
      .peak-map-linked-trails__card.is-selected{
        border-color:rgba(34,197,94,0.95);
        background:rgba(13, 43, 31, 0.94);
        box-shadow:inset 0 0 0 1px rgba(34,197,94,0.22);
      }
      .peak-map-linked-trails__select{
        grid-row:1;
        grid-column:1;
        display:grid;
        grid-template-columns:7px minmax(0, 1fr) auto;
        align-items:center;
        gap:7px;
        min-width:0;
        min-height:40px;
        padding:5px 7px;
        border:0;
        background:transparent;
        color:inherit;
        font:inherit;
        text-align:left;
        cursor:pointer;
      }
      .peak-map-linked-trails__select:hover,
      .peak-map-linked-trails__select:focus-visible{
        background:rgba(34,197,94,0.1);
        outline:0;
      }
      .peak-map-linked-trails__select:focus-visible{
        box-shadow:inset 0 0 0 2px var(--accent);
      }
      .peak-map-linked-trails__swatch{
        align-self:stretch;
        width:5px;
        min-height:28px;
        border-radius:999px;
        background:var(--trail-color, #22c55e);
        box-shadow:0 0 0 1px rgba(255,255,255,0.18);
      }
      .peak-map-linked-trails__select-copy{
        display:grid;
        gap:2px;
        min-width:0;
      }
      .peak-map-linked-trails__name{
        overflow:hidden;
        color:#dcfce7;
        font-size:0.8rem;
        font-weight:800;
        line-height:1.15;
        text-overflow:ellipsis;
        white-space:nowrap;
      }
      .peak-map-linked-trails__metrics{
        overflow:hidden;
        color:#aebbd0;
        font-size:0.68rem;
        font-variant-numeric:tabular-nums;
        line-height:1.15;
        text-overflow:ellipsis;
        white-space:nowrap;
      }
      .peak-map-linked-trails__locate{
        color:var(--accent);
        font-size:1rem;
        line-height:1;
      }
      .peak-map-linked-trails__item > a{
        color:#a7f3d0;
        font-size:0.86rem;
        font-weight:750;
        text-decoration:underline;
        text-underline-offset:2px;
      }
      .peak-map-linked-trails__card a,
      .peak-map-linked-trails__guide{
        color:#a7f3d0;
        font-size:0.7rem;
        font-weight:700;
        text-decoration:none;
      }
      .peak-map-linked-trails__guide{
        grid-row:1;
        grid-column:2;
        display:flex;
        align-items:center;
        justify-content:center;
        width:45px;
        padding:4px;
        border-left:1px solid rgba(71, 99, 137, 0.5);
        text-align:center;
      }
      .peak-map-linked-trails__card.is-unavailable{
        display:block;
        padding:8px;
      }
      .peak-map-linked-trails__item a:hover,
      .peak-map-linked-trails__item a:focus-visible{
        color:#dcfce7;
        background:rgba(34,197,94,0.1);
      }
      .peak-map-tooltip{
        background:rgba(10,10,10,0.8);
        border:1px solid rgba(34,197,94,0.8);
        color:var(--ink);
        font-weight:700;
        font-size:0.78rem;
        padding:4px 8px;
        border-radius:8px;
        box-shadow:0 6px 16px rgba(0,0,0,0.3);
      }
      .peak-nearby-trail-features-panel{
        margin:16px 0 18px;
        padding:18px;
        border:1px solid rgba(94,117,156,0.42);
        border-radius:22px;
        background:
          radial-gradient(circle at top right, rgba(34,197,94,0.12), transparent 34%),
          linear-gradient(165deg, rgba(22,31,46,0.96), rgba(12,18,30,0.98));
      }
      .peak-nearby-trail-features-headers,
      .peak-nearby-trail-features-columns{
        display:grid;
        grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
        column-gap:clamp(24px, 4vw, 56px);
      }
      .peak-nearby-trail-features-headers{
        align-items:end;
        margin-bottom:10px;
      }
      .peak-nearby-trail-features-heading{
        margin:0;
        color:var(--accent);
        font-size:1rem;
        font-weight:900;
        letter-spacing:0.08em;
        text-transform:uppercase;
      }
      .peak-nearby-trail-features-heading--right{
        text-align:left;
      }
      .peak-nearby-trails-list,
      .peak-nearby-trail-features-list{
        margin:0;
        padding-left:1.15rem;
        color:var(--ink);
        line-height:1.45;
      }
      .peak-nearby-trails-list li,
      .peak-nearby-trail-features-list li{
        min-height:1.45em;
        margin:2px 0;
      }
      .peak-nearby-trail-features-list{
        padding-left:0;
        padding-right:0;
        text-align:left;
        list-style:none;
      }
      .peak-nearby-trail-feature-item{
        display:flex;
        align-items:baseline;
        justify-content:flex-start;
        gap:8px;
        color:var(--ink);
        flex-wrap:wrap;
      }
      .peak-nearby-trail-feature-icon{
        width:0.72rem;
        height:0.72rem;
        flex:0 0 0.72rem;
        border-radius:999px;
        background:var(--trail-feature-color, #38d972);
        box-shadow:0 0 0 3px rgba(56,189,248,0.16);
        transform:translateY(1px);
      }
      .peak-nearby-trail-feature-link,
      .peak-nearby-trails-list a{
        color:inherit;
        font-weight:700;
        text-decoration:none;
      }
      .peak-nearby-trail-feature-link{
        appearance:none;
        -webkit-appearance:none;
        background:none;
        border:0;
        padding:0;
        margin:0;
        font:inherit;
        line-height:inherit;
        cursor:pointer;
      }
      .peak-nearby-trail-feature-link:hover,
      .peak-nearby-trail-feature-link:focus-visible,
      .peak-nearby-trails-list a:hover,
      .peak-nearby-trails-list a:focus-visible{
        color:var(--accent);
        text-decoration:underline;
      }
      .peak-nearby-empty{
        color:var(--muted);
        font-style:italic;
      }
      .peak-map-trail-feature-div-icon{
        background:transparent;
        border:0;
      }
      .peak-map-trail-feature-marker{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        width:30px;
        height:30px;
        border:2px solid rgba(255,255,255,0.92);
        border-radius:999px;
        background:var(--trail-feature-color, #38d972);
        box-shadow:
          0 8px 18px rgba(0,0,0,0.35),
          0 0 0 4px rgba(56,189,248,0.18);
        transition:transform 0.18s ease, box-shadow 0.18s ease;
        overflow:hidden;
      }
      .peak-map-trail-feature-marker img{
        width:18px;
        height:18px;
        display:block;
        object-fit:contain;
        filter:brightness(0) invert(1);
      }
      .peak-map-trail-feature-div-icon.is-highlighted .peak-map-trail-feature-marker,
      .peak-map-trail-feature-div-icon:hover .peak-map-trail-feature-marker{
        transform:scale(1.08);
        box-shadow:
          0 10px 24px rgba(0,0,0,0.42),
          0 0 0 6px rgba(56,189,248,0.28);
      }
      .peak-map-trail-feature-tooltip{
        font-weight:800;
      }
      .peak-map-trail-feature-popup-card{
        display:grid;
        gap:8px;
        min-width:220px;
      }
      .peak-map-trail-feature-popup-card h4{
        margin:0;
        font-size:1rem;
      }
      .peak-map-trail-feature-popup-card a{
        font-weight:700;
      }
      .peak-map-trail-feature-popup-row{
        display:grid;
        gap:2px;
      }
      .peak-map-trail-feature-popup-row span{
        color:#64748b;
        font-size:0.72rem;
        font-weight:800;
        letter-spacing:0.06em;
        text-transform:uppercase;
      }
      .peak-map-trail-feature-popup-row strong{
        color:#0f172a;
        font-size:0.86rem;
      }
      .leaflet-container{
        background:#0b0b10;
      }
      @keyframes spin{
        to{ transform:rotate(360deg); }
      }

      .print-only{ display:none; }
      .no-print{ }

      @media(max-width:760px){
        .peak-map-linked-trails{
          top:auto;
          left:12px;
          right:12px;
          bottom:12px;
          width:auto;
          max-height:54%;
          padding:10px 12px;
        }
        .peak-map-panel[data-map-state="static"] .peak-map-status,
        .peak-map-panel[data-map-state="idle"] .peak-map-status{
          inset:12px 12px auto 12px;
          max-width:none;
        }
        .peak-map-linked-trails__title{
          font-size:0.72rem;
          letter-spacing:0.1em;
        }
        .peak-map-linked-trails__list{
          gap:5px;
        }
        .peak-map-linked-trails__select{
          min-height:42px;
        }
        .peak-map-linked-trails__name{
          font-size:0.78rem;
        }
        .peak-nearby-trail-features-panel{
          display:grid;
          grid-template-columns:1fr;
          row-gap:8px;
          padding:16px;
        }
        .peak-nearby-trail-features-headers,
        .peak-nearby-trail-features-columns{
          display:contents;
        }
        #peakNearbyTrailsHeading{
          order:1;
          text-align:left;
          margin:0 0 6px;
        }
        .peak-nearby-trail-features-column--trails{
          order:2;
        }
        #peakNearbyTrailFeaturesHeading{
          order:3;
          text-align:left;
          margin:8px 0 6px;
        }
        .peak-nearby-trail-features-column--features{
          order:4;
        }
        .peak-nearby-trail-features-list{
          padding-left:1.15rem;
          padding-right:0;
          text-align:left;
          list-style-position:outside;
        }
        .peak-nearby-trail-feature-item{
          justify-content:flex-start;
        }
      }

      /* Peak connection focus strip: server-rendered from the generated sidecar. */
      #relatedPeaksGrid{
        display:block;
      }
      .peak-section-panel--connections{
        padding:clamp(16px, 2.2vw, 24px);
        background:
          radial-gradient(circle at 86% 0%, rgba(54, 131, 255, 0.1), transparent 30%),
          linear-gradient(160deg, rgba(15, 23, 35, 0.98), rgba(8, 14, 24, 0.97));
      }
      .peak-connections-count{
        display:inline-flex;
        align-items:center;
        min-height:30px;
        padding:0 10px;
        border:1px solid rgba(84, 116, 164, 0.62);
        border-radius:999px;
        background:rgba(10, 18, 31, 0.72);
        color:#b8c7dc;
        font-size:0.72rem;
        font-weight:750;
        letter-spacing:0.06em;
        text-transform:uppercase;
        white-space:nowrap;
      }
      .peak-connections{
        display:grid;
        gap:14px;
        min-width:0;
      }
      .peak-summit-band{
        padding:12px 14px 10px;
        border:1px solid rgba(67, 92, 130, 0.48);
        border-radius:12px;
        background:rgba(8, 15, 26, 0.72);
        overflow:hidden;
      }
      .peak-summit-band__header{
        display:flex;
        align-items:baseline;
        justify-content:space-between;
        gap:12px;
        padding-bottom:7px;
        color:#e7eef8;
        font-size:0.73rem;
        font-weight:800;
        letter-spacing:0.08em;
        text-transform:uppercase;
      }
      .peak-summit-band__header small{
        color:#8293aa;
        font-size:0.62rem;
        font-weight:650;
        letter-spacing:0.04em;
        text-align:right;
      }
      .peak-summit-band__summits{
        display:grid;
        grid-template-columns:repeat(auto-fit, minmax(92px, 1fr));
        align-items:end;
        min-width:0;
        border-top:1px solid rgba(75, 99, 135, 0.2);
      }
      .peak-summit-band__summit{
        position:relative;
        display:grid;
        min-width:0;
        padding:6px 8px 0;
        text-align:center;
      }
      .peak-summit-band__summit + .peak-summit-band__summit{
        border-left:1px solid rgba(75, 99, 135, 0.18);
      }
      .peak-summit-band__plot{
        position:relative;
        height:44px;
        margin-bottom:4px;
        background:linear-gradient(to top, rgba(91, 116, 152, 0.28) 1px, transparent 1px) 0 100% / 100% 14px;
      }
      .peak-summit-band__post{
        position:absolute;
        bottom:0;
        left:50%;
        width:1px;
        height:var(--summit-level);
        background:linear-gradient(to top, rgba(88, 165, 255, 0.18), #59a7ff);
      }
      .peak-summit-band__dot{
        position:absolute;
        top:-4px;
        left:-4px;
        width:9px;
        height:9px;
        border:2px solid #07101d;
        border-radius:50%;
        background:#59a7ff;
        box-shadow:0 0 0 2px rgba(89, 167, 255, 0.24), 0 0 12px rgba(89, 167, 255, 0.46);
      }
      .peak-summit-band__summit--current .peak-summit-band__post{
        background:linear-gradient(to top, rgba(39, 227, 125, 0.18), #27e37d);
      }
      .peak-summit-band__summit--current .peak-summit-band__dot{
        background:#27e37d;
        box-shadow:0 0 0 2px rgba(39, 227, 125, 0.24), 0 0 12px rgba(39, 227, 125, 0.45);
      }
      .peak-summit-band__name{
        display:block;
        min-width:0;
        overflow:hidden;
        color:#dce7f5;
        font-size:0.69rem;
        font-weight:750;
        line-height:1.25;
        text-decoration:none !important;
        text-overflow:ellipsis;
        white-space:nowrap;
      }
      a.peak-summit-band__name:hover{
        color:#ffffff;
      }
      .peak-summit-band__summit--current .peak-summit-band__name{
        color:#50eb94;
      }
      .peak-summit-band__elevation{
        color:#7f91a8;
        font-size:0.62rem;
        font-variant-numeric:tabular-nums;
        line-height:1.35;
      }
      .peak-connections__drawers{
        display:grid;
        gap:7px;
      }
      .peak-ridge{
        padding:12px 14px 11px;
        border:1px solid rgba(65, 98, 140, 0.56);
        border-radius:13px;
        background:
          radial-gradient(circle at 18% 0%, rgba(39, 227, 125, 0.08), transparent 34%),
          linear-gradient(160deg, rgba(6, 16, 28, 0.96), rgba(8, 17, 30, 0.88));
        overflow:hidden;
      }
      .peak-ridge__header{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:14px;
      }
      .peak-ridge__header h3{
        margin:0;
        color:#eef5fc;
        font-size:0.76rem;
        font-weight:850;
        letter-spacing:0.09em;
        text-transform:uppercase;
      }
      .peak-ridge__header p{
        margin:3px 0 0;
        color:#7f91a8;
        font-size:0.61rem;
      }
      .peak-ridge__orientation{
        display:grid;
        grid-template-columns:auto minmax(36px, 72px) auto;
        align-items:center;
        gap:7px;
        color:#a8bbd1;
        font-size:0.65rem;
        letter-spacing:0.08em;
      }
      .peak-ridge__orientation span{
        position:relative;
        height:1px;
        background:linear-gradient(90deg, #55e897, #68aaff);
      }
      .peak-ridge__orientation span::after{
        content:"";
        position:absolute;
        top:-3px;
        right:0;
        width:6px;
        height:6px;
        border-top:1px solid #68aaff;
        border-right:1px solid #68aaff;
        transform:rotate(45deg);
      }
      .peak-ridge-profile{
        display:block;
        width:100%;
        height:auto;
        margin-top:3px;
        overflow:visible;
      }
      .peak-ridge-profile-shell{
        position:relative;
        margin-top:3px;
      }
      .peak-ridge-profile-shell .peak-ridge-profile{
        margin-top:0;
        cursor:crosshair;
        touch-action:pan-y;
        user-select:none;
      }
      .peak-ridge-profile:focus-visible{
        outline:1px solid rgba(101, 184, 255, 0.78);
        outline-offset:3px;
        border-radius:5px;
      }
      .peak-ridge-profile__inspector-guide{
        color:var(--ridge-inspector-color, #65b8ff);
        pointer-events:none;
      }
      .peak-ridge-profile__inspector-guide[hidden]{
        display:none;
      }
      .peak-ridge-profile__inspector-guide line{
        stroke:currentColor;
        stroke-width:1;
        stroke-dasharray:2 3;
        opacity:0.78;
        vector-effect:non-scaling-stroke;
      }
      .peak-ridge-profile__inspector-guide circle:first-of-type{
        fill:currentColor;
        opacity:0.2;
      }
      .peak-ridge-profile__inspector-guide circle:last-of-type{
        fill:currentColor;
        stroke:#07111e;
        stroke-width:1.5;
        filter:drop-shadow(0 0 3px currentColor);
        vector-effect:non-scaling-stroke;
      }
      .peak-ridge-inspector{
        position:absolute;
        z-index:8;
        top:var(--ridge-inspector-y, 50%);
        left:clamp(105px, var(--ridge-inspector-x, 50%), calc(100% - 105px));
        display:grid;
        width:210px;
        padding:8px 9px 7px;
        border:1px solid color-mix(in srgb, var(--ridge-inspector-color, #65b8ff) 72%, #334b67);
        border-radius:9px;
        background:rgba(5, 14, 25, 0.96);
        box-shadow:0 10px 28px rgba(0, 0, 0, 0.46), 0 0 18px color-mix(in srgb, var(--ridge-inspector-color, #65b8ff) 15%, transparent);
        color:#dce8f5;
        line-height:1.25;
        pointer-events:none;
        transform:translate(-50%, calc(-100% - 12px));
      }
      .peak-ridge-inspector[hidden]{
        display:none;
      }
      .peak-ridge-inspector[data-side="below"]{
        transform:translate(-50%, 12px);
      }
      .peak-ridge-inspector__eyebrow{
        overflow:hidden;
        color:var(--ridge-inspector-color, #65b8ff);
        font-size:0.52rem;
        font-weight:800;
        letter-spacing:0.02em;
        text-overflow:ellipsis;
        white-space:nowrap;
      }
      .peak-ridge-inspector__distance{
        margin-top:2px;
        color:#f6fbff;
        font-size:0.98rem;
        font-variant-numeric:tabular-nums;
      }
      .peak-ridge-inspector__position{
        margin-top:1px;
        color:#7f93aa;
        font-size:0.51rem;
        font-variant-numeric:tabular-nums;
        text-transform:uppercase;
      }
      .peak-ridge-inspector dl{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:5px;
        margin:7px 0 0;
      }
      .peak-ridge-inspector dl div{
        min-width:0;
        padding-top:5px;
        border-top:1px solid rgba(105, 133, 166, 0.22);
      }
      .peak-ridge-inspector dt{
        color:#71869e;
        font-size:0.46rem;
        font-weight:750;
        letter-spacing:0.06em;
        text-transform:uppercase;
      }
      .peak-ridge-inspector dd{
        margin:2px 0 0;
        color:#d9e5f2;
        font-size:0.58rem;
        font-weight:750;
        font-variant-numeric:tabular-nums;
      }
      .peak-ridge-inspector p{
        margin:6px 0 0;
        color:#9aacc1;
        font-size:0.5rem;
        line-height:1.35;
      }
      .peak-ridge-inspector small{
        margin-top:4px;
        color:#60758e;
        font-size:0.45rem;
      }
      .peak-ridge-profile__grid path{
        fill:none;
        stroke:rgba(116, 143, 176, 0.18);
        stroke-width:0.8;
        stroke-dasharray:3 5;
        vector-effect:non-scaling-stroke;
      }
      .peak-ridge-profile__area{
        stroke:none;
      }
      .peak-ridge-profile__line{
        fill:none;
        stroke-width:2;
        stroke-linecap:round;
        stroke-linejoin:round;
        vector-effect:non-scaling-stroke;
      }
      .peak-ridge .p0{--c:#2be582}
      .peak-ridge .p1{--c:#5bb2ff}
      .peak-ridge .p2{--c:#ffbd59}
      .peak-ridge .p3{--c:#c58cff}
      .peak-ridge .p4{--c:#ff7898}
      .peak-ridge .p5{--c:#48d8cf}
      .peak-ridge-profile__leader{
        fill:none;
        stroke:color-mix(in srgb, var(--c, #92a8c2) 48%, transparent);
        stroke-width:0.8;
        stroke-dasharray:2 3;
        vector-effect:non-scaling-stroke;
      }
      .peak-ridge-profile__label{
        fill:var(--c, #aab9cc);
        font-size:8px;
        font-weight:750;
        paint-order:stroke;
        stroke:#07111e;
        stroke-width:2px;
        stroke-linejoin:round;
      }
      .peak-ridge-profile__label-elevation{
        fill:#778aa2;
        font-size:6.7px;
        font-weight:650;
      }
      .peak-ridge-profile__dot{
        fill:var(--c, #94a4b8);
        stroke:#07111e;
        stroke-width:2;
        filter:drop-shadow(0 0 3px var(--c, #94a4b8));
        vector-effect:non-scaling-stroke;
      }
      .peak-ridge-profile__summit--current .peak-ridge-profile__dot{
        stroke:#f1fff7;
        stroke-width:2.5;
        filter:drop-shadow(0 0 5px var(--c, #2be582));
      }
      .peak-ridge-profile__summit--current .peak-ridge-profile__label{
        font-weight:850;
      }
      .peak-ridge-profile__summit a:focus-visible .peak-ridge-profile__dot{
        stroke:#ffffff;
        stroke-width:3;
      }
      .peak-ridge-profile__tick path{
        stroke:#60738d;
        stroke-width:1;
        vector-effect:non-scaling-stroke;
      }
      .peak-ridge-profile__tick text{
        fill:#73859c;
        font-size:6.8px;
        font-variant-numeric:tabular-nums;
      }
      .peak-ridge-grade-legend{
        display:flex;
        align-items:center;
        justify-content:center;
        flex-wrap:wrap;
        gap:5px 11px;
        margin:1px 0 8px;
        color:#8295ad;
        font-size:0.55rem;
        line-height:1;
      }
      .peak-ridge-grade-legend > strong{
        color:#a8bad0;
        font-size:0.54rem;
        letter-spacing:0.08em;
        text-transform:uppercase;
      }
      .peak-ridge-grade-legend__item{
        display:inline-flex;
        align-items:center;
        gap:4px;
        white-space:nowrap;
      }
      .peak-ridge-grade-legend__item i{
        width:15px;
        height:3px;
        border-radius:999px;
        background:var(--grade-color);
        box-shadow:0 0 6px color-mix(in srgb, var(--grade-color) 35%, transparent);
      }
      .peak-ridge-grade-legend__item span{
        color:#a8b8cb;
        font-weight:700;
      }
      .peak-ridge-grade-legend__item small{
        color:#71839a;
        font-size:inherit;
      }
      .peak-ridge-segments{
        display:flex;
        min-width:0;
        gap:3px;
        margin-top:2px;
      }
      .peak-ridge-segment.t0{--c:#2be582}
      .peak-ridge-segment.t1{--c:#5bb2ff}
      .peak-ridge-segment.t2{--c:#ffbd59}
      .peak-ridge-segment.t3{--c:#c58cff}
      .peak-ridge-segment.t4{--c:#ff7898}
      .peak-ridge-segment.t5{--c:#48d8cf}
      .peak-ridge-segment{
        --accent:var(--c);
        position:relative;
        display:grid;
        align-content:space-between;
        flex:var(--segment-share) 1 0;
        min-width:112px;
        min-height:52px;
        padding:8px 8px 6px;
        border:1px solid color-mix(in srgb, var(--c, #60738d) 58%, #31445f);
        border-radius:8px;
        background:color-mix(in srgb, var(--c, #60738d) 11%, #0f1d2f);
        color:var(--c, #9fb2c8);
        line-height:1.25;
        text-decoration:none !important;
        overflow:hidden;
      }
      .peak-ridge-segment::before{
        content:"";
        position:absolute;
        inset:0 6px auto;
        height:2px;
        border-radius:0 0 2px 2px;
        background:var(--c, #60738d);
        opacity:0.92;
      }
      .peak-ridge-segment:hover,
      .peak-ridge-segment:focus-visible{
        border-color:var(--c, #7fa0c4);
        background:color-mix(in srgb, var(--c, #60738d) 17%, #122338);
        color:var(--c, #dcecf6);
      }
      .peak-ridge-segment span{
        display:-webkit-box;
        min-height:2.5em;
        overflow:hidden;
        font-size:0.57rem;
        font-weight:750;
        line-height:1.25;
        white-space:normal;
        -webkit-box-orient:vertical;
        -webkit-line-clamp:2;
      }
      .peak-ridge-segment small{
        margin-top:4px;
        color:color-mix(in srgb, var(--c, #7f91a8) 68%, #71839a);
        font-size:0.52rem;
        font-variant-numeric:tabular-nums;
      }
      .peak-ridge__route{
        margin:8px 0 0;
        overflow:hidden;
        color:#8fa2b8;
        font-size:0.61rem;
        line-height:1.35;
        text-overflow:ellipsis;
        white-space:nowrap;
      }
      .peak-ridge__caption{
        margin:4px 0 0;
        color:#687c95;
        font-size:0.57rem;
        line-height:1.4;
      }
      .peak-connection-badge--additional{
        border-color:rgba(102, 169, 255, 0.42);
        background:rgba(66, 123, 200, 0.12);
        color:#88bfff;
      }
      .peak-connection-drawer{
        border:1px solid rgba(61, 84, 124, 0.56);
        border-radius:12px;
        background:rgba(9, 16, 28, 0.76);
        overflow:hidden;
      }
      .peak-connection-drawer[open]{
        border-color:rgba(74, 124, 191, 0.68);
        background:rgba(10, 18, 31, 0.92);
        box-shadow:0 10px 24px rgba(0, 0, 0, 0.18);
      }
      .peak-connection-drawer > summary{
        display:grid;
        grid-template-columns:26px minmax(150px, 1.05fr) minmax(126px, 0.72fr) minmax(330px, 1.65fr) 14px;
        align-items:center;
        gap:12px;
        min-height:68px;
        padding:8px 13px;
        color:#e8f0fa;
        cursor:pointer;
        list-style:none;
      }
      .peak-connection-drawer > summary::-webkit-details-marker{
        display:none;
      }
      .peak-connection-drawer > summary:hover{
        background:rgba(33, 54, 82, 0.25);
      }
      .peak-connection-drawer > summary:focus-visible{
        outline:2px solid #59a7ff;
        outline-offset:-3px;
      }
      .peak-connection-drawer__index{
        color:#63758e;
        font-size:0.67rem;
        font-weight:800;
        font-variant-numeric:tabular-nums;
        letter-spacing:0.05em;
      }
      .peak-connection-drawer__identity{
        display:grid;
        gap:5px;
        min-width:0;
      }
      .peak-connection-drawer__name{
        overflow:hidden;
        color:#f1f6fc;
        font-size:0.94rem;
        font-weight:800;
        line-height:1.2;
        text-overflow:ellipsis;
        white-space:nowrap;
      }
      .peak-connection-drawer__badges{
        display:flex;
        flex-wrap:wrap;
        gap:5px;
      }
      .peak-connection-badge{
        display:inline-flex;
        align-items:center;
        min-height:19px;
        padding:0 6px;
        border:1px solid rgba(105, 128, 160, 0.42);
        border-radius:999px;
        background:rgba(45, 62, 87, 0.35);
        color:#9eafc5;
        font-size:0.55rem;
        font-weight:800;
        letter-spacing:0.07em;
        text-transform:uppercase;
        white-space:nowrap;
      }
      .peak-connection-badge--accent{
        border-color:rgba(39, 227, 125, 0.4);
        background:rgba(39, 227, 125, 0.09);
        color:#66ed9f;
      }
      .peak-connection-drawer__spark{
        display:block;
        min-width:0;
        height:42px;
      }
      .peak-connection-profile{
        display:block;
        width:100%;
        height:112px;
        overflow:visible;
      }
      .peak-connection-profile--compact{
        height:42px;
      }
      .peak-connection-profile__grid{
        fill:none;
        stroke:rgba(110, 134, 168, 0.18);
        stroke-width:0.75;
        stroke-dasharray:3 4;
        vector-effect:non-scaling-stroke;
      }
      .peak-connection-profile__area{
        stroke:none;
      }
      .peak-connection-profile__line{
        fill:none;
        stroke-width:2;
        stroke-linecap:round;
        stroke-linejoin:round;
        vector-effect:non-scaling-stroke;
      }
      .peak-connection-profile__col-line{
        stroke:rgba(160, 178, 201, 0.45);
        stroke-width:1;
        stroke-dasharray:2 3;
        vector-effect:non-scaling-stroke;
      }
      .peak-connection-profile__col-dot{
        fill:#a7b6ca;
        stroke:#0a1220;
        stroke-width:1.5;
        vector-effect:non-scaling-stroke;
      }
      .peak-connection-profile__start{
        fill:#27e37d;
        stroke:#07101d;
        stroke-width:1.5;
        vector-effect:non-scaling-stroke;
      }
      .peak-connection-profile__end{
        fill:#59a7ff;
        stroke:#07101d;
        stroke-width:1.5;
        vector-effect:non-scaling-stroke;
      }
      .peak-connection-profile--unavailable{
        display:flex;
        align-items:center;
        justify-content:center;
        border:1px dashed rgba(102, 123, 152, 0.32);
        border-radius:8px;
        color:#7d8da3;
        font-size:0.68rem;
      }
      .peak-connection-drawer__metrics{
        display:grid;
        grid-template-columns:repeat(4, minmax(58px, 1fr));
        gap:3px;
        min-width:0;
        margin:0;
      }
      .peak-connection-metric{
        display:grid;
        gap:2px;
        min-width:0;
        padding-left:9px;
        border-left:1px solid rgba(82, 105, 139, 0.34);
      }
      .peak-connection-metric dt{
        color:#75869d;
        font-size:0.55rem;
        font-weight:750;
        letter-spacing:0.07em;
        line-height:1.2;
        text-transform:uppercase;
      }
      .peak-connection-metric dd{
        margin:0;
        overflow:hidden;
        color:#dce6f2;
        font-size:0.76rem;
        font-weight:750;
        font-variant-numeric:tabular-nums;
        line-height:1.2;
        text-overflow:ellipsis;
        white-space:nowrap;
      }
      .peak-connection-metric--gain dd{
        color:#55e996;
      }
      .peak-connection-metric--loss dd{
        color:#75b7ff;
      }
      .peak-connection-drawer__chevron{
        width:8px;
        height:8px;
        border-right:2px solid #71849d;
        border-bottom:2px solid #71849d;
        transform:rotate(45deg) translate(-2px, -2px);
        transition:transform 160ms ease;
      }
      .peak-connection-drawer[open] .peak-connection-drawer__chevron{
        transform:rotate(225deg) translate(-1px, -1px);
      }
      .peak-connection-drawer__body{
        display:grid;
        grid-template-columns:minmax(190px, 0.72fr) minmax(0, 1.6fr);
        gap:22px;
        padding:14px 44px 17px 51px;
        border-top:1px solid rgba(68, 93, 129, 0.34);
        background:linear-gradient(90deg, rgba(30, 53, 79, 0.13), rgba(12, 21, 36, 0.16));
      }
      .peak-connection-drawer__route{
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        min-width:0;
      }
      .peak-connection-drawer__eyebrow{
        color:#6a7e98;
        font-size:0.59rem;
        font-weight:800;
        letter-spacing:0.09em;
        text-transform:uppercase;
      }
      .peak-connection-drawer__route h3{
        margin:5px 0 7px;
        color:#eff5fc;
        font-size:0.94rem;
        line-height:1.35;
      }
      .peak-connection-drawer__route h3 span{
        color:#4eec95;
      }
      .peak-connection-drawer__via,
      .peak-connection-drawer__facts{
        margin:0;
        color:#a6b5c9;
        font-size:0.73rem;
        line-height:1.5;
      }
      .peak-connection-drawer__facts{
        margin-top:5px;
        color:#74869e;
        font-size:0.65rem;
      }
      a.peak-connection-drawer__cta{
        display:inline-flex;
        align-items:center;
        gap:7px;
        min-height:32px;
        margin-top:12px;
        padding:0 11px;
        border:1px solid rgba(39, 227, 125, 0.48);
        border-radius:8px;
        background:rgba(39, 227, 125, 0.08);
        color:#69eea2;
        font-size:0.68rem;
        font-weight:800;
        letter-spacing:0.03em;
        text-decoration:none !important;
      }
      a.peak-connection-drawer__cta:hover{
        border-color:rgba(39, 227, 125, 0.8);
        background:rgba(39, 227, 125, 0.14);
        color:#b8ffd4;
      }
      .peak-connection-drawer__profile{
        min-width:0;
      }
      .peak-connection-profile-caption{
        display:grid;
        grid-template-columns:1fr auto 1fr;
        gap:10px;
        margin-top:3px;
        color:#7789a1;
        font-size:0.59rem;
        font-variant-numeric:tabular-nums;
        line-height:1.35;
      }
      .peak-connection-profile-caption span:nth-child(2){
        text-align:center;
      }
      .peak-connection-profile-caption span:last-child{
        text-align:right;
      }
      .peak-connection-profile-caption strong{
        color:#aebed2;
        font-weight:750;
      }
      .peak-connections-empty{
        display:flex;
        align-items:flex-start;
        gap:13px;
        padding:16px;
        border:1px dashed rgba(82, 108, 145, 0.52);
        border-radius:12px;
        background:rgba(8, 15, 26, 0.58);
      }
      .peak-connections-empty__icon{
        display:grid;
        place-items:center;
        flex:0 0 32px;
        width:32px;
        height:32px;
        border:1px solid rgba(94, 120, 156, 0.42);
        border-radius:50%;
        color:#8295ad;
        font-size:1rem;
      }
      .peak-connections-empty h3{
        margin:0 0 4px;
        color:#dce6f2;
        font-size:0.88rem;
      }
      .peak-connections-empty p{
        max-width:68ch;
        margin:0;
        color:#8394aa;
        font-size:0.76rem;
        line-height:1.55;
      }

      @media (max-width:1050px){
        .peak-connection-drawer > summary{
          grid-template-columns:26px minmax(170px, 1fr) minmax(140px, 0.8fr) 14px;
        }
        .peak-connection-drawer__metrics{
          grid-column:2 / 4;
        }
        .peak-connection-drawer__chevron{
          grid-column:4;
          grid-row:1 / 3;
        }
        .peak-connection-drawer__body{
          padding-left:51px;
        }
      }

      @media (max-width:700px){
        .peak-section-panel--connections .peak-section-panel__header{
          grid-template-columns:minmax(0, 1fr);
          gap:9px;
        }
        .peak-section-panel--connections .peak-section-panel__actions{
          justify-content:flex-start;
          margin-left:0;
        }
        .peak-ridge{
          padding:10px 8px 9px;
        }
        .peak-ridge__header{
          align-items:flex-start;
        }
        .peak-ridge__header p{
          display:none;
        }
        .peak-ridge__orientation{
          grid-template-columns:auto 30px auto;
        }
        .peak-ridge-profile{
          width:calc(100% + 4px);
          margin-left:-2px;
        }
        .peak-ridge-profile-shell .peak-ridge-profile{
          margin-left:-2px;
        }
        .peak-ridge-inspector{
          left:clamp(94px, var(--ridge-inspector-x, 50%), calc(100% - 94px));
          width:188px;
          padding:7px 8px 6px;
        }
        .peak-ridge-grade-legend{
          justify-content:center;
          flex-wrap:wrap;
          gap:5px 8px;
          padding:1px 0 4px;
          font-size:0.49rem;
        }
        .peak-ridge-segments{
          overflow-x:auto;
          padding-bottom:2px;
          scroll-snap-type:inline proximity;
          scrollbar-width:none;
        }
        .peak-ridge-segments::-webkit-scrollbar{
          display:none;
        }
        .peak-ridge-segment{
          flex:0 0 min(45vw, 164px);
          scroll-snap-align:start;
        }
        .peak-ridge__caption{
          font-size:0.54rem;
        }
        .peak-summit-band{
          padding-right:0;
        }
        .peak-summit-band__header{
          display:grid;
          padding-right:14px;
        }
        .peak-summit-band__header small{
          text-align:left;
        }
        .peak-summit-band__summits{
          grid-auto-columns:minmax(96px, 38%);
          grid-auto-flow:column;
          grid-template-columns:none;
          padding-right:14px;
          overflow-x:auto;
          overscroll-behavior-inline:contain;
          scrollbar-width:thin;
        }
        .peak-summit-band__summits::-webkit-scrollbar{
          height:4px;
        }
        .peak-summit-band__summits::-webkit-scrollbar-thumb{
          border-radius:999px;
          background:rgba(104, 130, 166, 0.5);
        }
        .peak-connection-drawer > summary{
          grid-template-columns:24px minmax(0, 1fr) 14px;
          gap:8px 10px;
          padding:11px 12px;
        }
        .peak-connection-drawer__identity{
          grid-column:2;
        }
        .peak-connection-drawer__spark{
          grid-column:2;
          height:47px;
        }
        .peak-connection-profile--compact{
          height:47px;
        }
        .peak-connection-drawer__metrics{
          grid-column:2;
          grid-template-columns:repeat(4, minmax(0, 1fr));
          width:100%;
        }
        .peak-connection-metric{
          padding-left:6px;
        }
        .peak-connection-metric:first-child{
          padding-left:0;
          border-left:0;
        }
        .peak-connection-metric dt{
          font-size:0.5rem;
        }
        .peak-connection-metric dd{
          font-size:0.67rem;
        }
        .peak-connection-drawer__chevron{
          grid-column:3;
          grid-row:1 / 4;
        }
        .peak-connection-drawer__body{
          grid-template-columns:minmax(0, 1fr);
          gap:16px;
          padding:15px 14px 18px 46px;
        }
        .peak-connection-drawer__profile{
          order:-1;
        }
        .peak-connection-profile-caption{
          grid-template-columns:1fr 1fr;
        }
        .peak-connection-profile-caption span:nth-child(2){
          display:none;
        }
      }

      @media (prefers-reduced-motion:reduce){
        .peak-connection-drawer__chevron{
          transition:none;
        }
      }

      @media (forced-colors:active){
        .peak-connection-drawer,
        .peak-summit-band,
        .peak-ridge,
        .peak-connections-empty{
          border-color:CanvasText;
        }
        .peak-connection-profile__line,
        .peak-ridge-profile__line{
          stroke:CanvasText;
        }
      }

      @media print{
        body{
          margin:0;
          font-size:11pt;
          background:#ffffff;
          color:#000000;
        }
        nav,
        footer,
        .no-print{
          display:none !important;
        }
        .print-only{
          display:block !important;
        }
        .peak-ridge-inspector,
        .peak-ridge-profile__inspector-guide{
          display:none !important;
        }
        .wrap{
          max-width:100%;
          padding:0.3in;
        }
        .peak-map-panel{
          display:block !important;
          border:none;
          padding:0;
          background:none;
        }
        .peak-section-panel{
          border:none;
          padding:0;
          background:none;
          box-shadow:none;
        }
        .peak-section-panel__actions{
          display:none !important;
        }
        .peak-map-header,
        .peak-map-status,
        .peak-map-linked-trails{
          display:none !important;
        }
        .peak-map-frame{
          height:6in !important;
          width:100% !important;
          border:none;
        }
        .peak-map-canvas{
          height:100% !important;
        }
        .leaflet-control-container{
          display:none !important;
        }
        .print-summary-header{
          display:flex;
          align-items:center;
          margin-bottom:0.5in;
          border-bottom:1px solid #ccc;
          padding-bottom:0.25in;
          gap:0.3in;
        }
        .print-thumb{
          width:1.25in;
          height:1.25in;
          object-fit:cover;
          border-radius:4px;
          border:1px solid #bbb;
        }
        .print-summary-header h1{
          font-size:18pt;
          margin:0;
        }
        .print-details{
          display:flex;
          flex-wrap:wrap;
          gap:0.2in;
          margin:0 0 0.5in 0;
        }
        .print-details dt{
          font-weight:700;
        }
        .print-details dd{
          margin:0 0.4in 0 0;
        }
        .print-description{
          margin-bottom:0.5in;
        }
      }
