/* Phone map, replay bar and pull-up record panel. */
@media(min-width:761px){
.mobile-edition,.mobile-overview,.mobile-trend,.mobile-timeline-count,.mobile-more,.mobile-extra-controls,.mobile-records-trigger{display:none}
}
@media(max-width:760px){
html.mobile-layout,html.mobile-layout body{height:100dvh;overflow:hidden}
html.mobile-layout body{display:flex;flex-direction:column}
.topbar{height:56px;min-height:56px;padding:0 16px;gap:8px}
.brand{font-size:13px;gap:8px;letter-spacing:.045em;min-width:0;flex:1}
.brand>span{min-width:0}
.brand-light{display:none}
.brand svg{width:25px;flex-shrink:0}
.topbar-right{gap:12px;flex-shrink:0}
.about-button{font-size:13px;min-width:40px;min-height:44px}
.language-picker{border:0;padding:9px 6px;min-height:44px}
.language-picker svg{width:15px}
.language-code{font-size:12px}
.mobile-edition{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;color:#abc0c4;letter-spacing:.12em;display:block;margin-top:2px;font-weight:400}
.workspace{height:auto;min-height:0;flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative}
.mobile-overview{display:flex;align-items:center;justify-content:space-between;padding:0 16px;min-height:44px;background:#fff;border-bottom:1px solid #e0e6e7;font-size:12px;gap:10px}
.mobile-overview strong{font-weight:700}
.mobile-overview .mobile-key{display:flex;align-items:center;gap:7px;background:transparent;border:0;min-height:44px;font-size:12px;padding:0;color:#405d67;white-space:nowrap}
.mobile-key-colors{display:flex;gap:2px}
.mobile-key-colors i{width:5px;height:5px;border-radius:50%;background:#3278c5}
.mobile-key-colors i:nth-child(2){background:#f0700f}
.mobile-key-colors i:nth-child(3){background:#d3201c}
.map-stage{flex:1;min-height:130px;grid-row:auto;grid-column:auto}
.map-top{top:12px;right:12px;left:auto}
.map-caption{display:none}
.map-button span{display:none}
.map-button{height:44px;width:44px;justify-content:center;padding:0;box-shadow:none;border-radius:7px}
.leaflet-top.leaflet-right{top:64px;right:2px}
.leaflet-control-zoom{box-shadow:none!important;border-radius:7px;overflow:hidden}
.leaflet-control-zoom a{width:42px!important;height:42px!important;line-height:42px!important}
.map-note{font-size:10px;left:9px;bottom:23px;padding:1px 3px}
.leaflet-control-attribution{font-size:9px!important}
.timeline{grid-row:auto;grid-column:auto;display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:12px 16px 13px;flex-shrink:0;box-shadow:none;z-index:700;border-top:1px solid #dce5e6}
.timeline-main{margin:0;order:0;grid-row:auto;grid-column:auto}
.timeline-heading{margin:0 0 7px;gap:8px;min-height:20px}
.timeline-heading>div{min-width:0}
.timeline-heading strong{white-space:normal;font-size:14px;font-weight:650}
.timeline-heading .eyebrow,#timeline-status{display:none}
.mobile-timeline-count{font-size:12px;color:#68818a;white-space:nowrap}
.timeline-track{padding-top:0;min-height:22px;display:flex;align-items:center}
.cumulative,.month-labels{display:none}
#timeline-range{height:4px;margin:0 2px;box-sizing:border-box}
#timeline-range::-webkit-slider-thumb{width:18px;height:18px;border-width:3px}
.playback{width:100%;display:flex;gap:10px;order:1;flex-shrink:0}
.play-button{height:44px;min-width:0;max-width:calc(100% - 167px);width:auto;border-radius:7px;padding:0 14px;font-size:13px}
.play-button span{display:inline;overflow-wrap:anywhere;line-height:1.2}
.play-button svg{flex-shrink:0}
.speed-label{margin-left:auto;min-width:44px}
.speed-label select{height:44px;font-size:13px;padding:4px 5px;width:49px}
.sound-button{width:44px;height:44px;border:0;border-radius:7px}
.mobile-more{height:44px;min-width:44px;letter-spacing:2px;border:0;border-radius:7px;background:#f3f7f6;color:#536e76;font-size:19px}
.mobile-more[aria-expanded=true]{background:#e4f0ed;color:#1f736d}
.mobile-extra-controls{display:none;align-items:center;justify-content:space-between;border-top:1px solid #e1e8e9;padding-top:10px;order:2}
.timeline.expanded .mobile-extra-controls{display:flex}
.mobile-extra-controls .step-controls{display:flex}
.mobile-extra-controls .step-controls button{width:44px;height:44px}
.mobile-extra-controls .show-all{height:44px;min-height:44px;padding:0 14px;max-width:none;font-size:13px}
.timeline.expanded .timeline-track{padding-top:48px;display:block;height:72px}
.timeline.expanded .cumulative{display:block;height:40px}
.timeline.expanded .month-labels{display:block;margin-top:10px;font-size:10px}
.timeline.expanded #timeline-range{margin-top:4px}
.mobile-records-trigger{border:0;border-top:1px solid #dfe8e7;border-radius:0;background:#f5f8f6;padding:8px 16px max(12px,env(safe-area-inset-bottom));min-height:63px;display:flex;flex-direction:column;align-items:stretch;gap:7px;color:var(--ink);flex-shrink:0}
.mobile-records-trigger .handle{width:29px;height:3px;background:#b6c8c8;border-radius:3px;align-self:center}
.mobile-records-trigger .trigger-row{display:flex;align-items:center;gap:8px;text-align:left}
.mobile-records-trigger strong{flex:1;min-width:0;font-size:14px;font-weight:650}
.mobile-records-trigger small{flex-shrink:0;font-size:12px;color:#7b9096;margin-left:auto}
.mobile-records-trigger .up{font-size:18px;margin-left:4px}
.mobile-records-dialog{padding:0;margin:0;top:auto;bottom:0;width:100%;max-width:none;height:calc(100dvh - 70px);max-height:none;border-radius:18px 18px 0 0;overflow:hidden;border:1px solid #d7e2e1;border-bottom:0}
.mobile-records-dialog[open]{display:flex;flex-direction:column}
.mobile-sheet-head{padding:16px 18px 13px;border-bottom:1px solid #e0e8e9;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.mobile-sheet-head h2{min-width:0;font-size:20px;letter-spacing:-.045em;line-height:1.2;margin:0}
.mobile-sheet-head button{flex-shrink:0;min-width:44px;min-height:44px;background:#f4f7f6;border:0;border-radius:50%;font-size:24px}
.mobile-records-dialog .sidebar{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:block;border:0}
.mobile-records-dialog .sidebar-heading{display:block;padding:17px 18px 0}
.mobile-records-dialog .sidebar-heading>.eyebrow,.mobile-records-dialog .sidebar-heading h1{display:none}
.mobile-records-dialog .intro{display:none}
.mobile-records-dialog .register-stats{display:flex;justify-content:flex-start;gap:35px}
.mobile-records-dialog .register-stats strong{font-size:21px}
.mobile-records-dialog .register-stats span{font-size:11px}
.mobile-records-dialog .register-stats div:last-child{display:flex}
.mobile-trend{padding:0;margin-bottom:0;margin-top:18px;border:1px solid #dbe5e3;border-radius:7px}
.mobile-trend summary{padding:13px 12px;font-size:13px;color:#3d646b;cursor:pointer;min-height:44px}
.mobile-trend .trend{padding:0 12px 13px;margin:0;border:0}
.mobile-records-dialog .list-heading{padding:20px 18px 10px;margin:0;border:0;position:static}
.mobile-records-dialog .list-heading h2{font-size:15px}
.mobile-records-dialog .list-heading span{font-size:12px}
.mobile-records-dialog .event-list{overflow:visible;max-height:none}
.mobile-records-dialog .event-card{padding:15px 18px 15px 37px}
.mobile-records-dialog .event-card .event-dot{left:18px}
.mobile-records-dialog .event-title{font-size:15px;line-height:1.4;white-space:normal}
.mobile-records-dialog .event-meta{font-size:11px}
.mobile-records-dialog .event-month{font-size:11px;padding-left:18px;position:static}
.mobile-records-dialog .sidebar-foot{padding-bottom:25px}
.mobile-key-dialog{margin:auto 12px 12px;top:auto;bottom:0;width:calc(100% - 24px);max-height:calc(100dvh - 80px);padding:18px;border-radius:16px}
.mobile-key-dialog .mobile-sheet-head{padding:0 0 12px}
.mobile-key-dialog .legend{position:static;display:flex;flex-direction:column;gap:0;padding:7px 0;margin:0;max-width:none;border:0;box-shadow:none;background:transparent}
.mobile-key-dialog .legend span{padding:12px 0;min-height:44px;font-size:14px;white-space:normal;line-height:1.3;border-bottom:1px solid #edf1f1}
.mobile-key-dialog .legend i{width:10px;height:10px;flex-shrink:0;margin-right:6px}
.mobile-key-dialog p{font-size:12px;line-height:1.5;margin:10px 0 0;color:#6b828a}
.detail{position:fixed;z-index:950;top:70px;bottom:0;left:0;right:0;width:100%;border-radius:18px 18px 0 0;border:1px solid #d7e1e1;box-shadow:0 -20px 80px #17333e30}
.detail-head{padding:21px 20px 15px}
.close-detail{height:44px;width:44px}
.detail h2{font-size:22px;line-height:1.25;padding-right:16px}
.detail dd{font-size:15px;line-height:1.65}
.detail-scroll{padding-bottom:max(24px,env(safe-area-inset-bottom))}
.detail-status{font-size:12px}
.detail .media-thumbs{padding-top:13px}
.map-error{top:12px;right:65px;left:12px}
.mobile-records-dialog::backdrop,.mobile-key-dialog::backdrop{background:#12303b55;backdrop-filter:blur(2px)}

}

@media(max-width:760px) and (max-height:520px){html.mobile-layout,html.mobile-layout body{height:auto;min-height:100dvh;overflow:auto}.workspace{flex:none;min-height:500px}.map-stage{min-height:250px}}
