@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('./assets/fonts/dm-sans-latin.woff2') format('woff2')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:400 700;font-display:swap;src:url('./assets/fonts/space-grotesk-latin.woff2') format('woff2')}
:root{color-scheme:dark;--bg:#0b1115;--surface:#10181d;--surface-raised:#152128;--line:rgba(199,223,217,.10);--line-strong:rgba(199,223,217,.20);--text:#edf1e9;--muted:#92a29f;--dim:#91a5a2;--mint:#bce9cd;--mint-dark:#15362b;--shallow:#f5c879;--intermediate:#77cabc;--deep:#a99af5;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;--sans:'DM Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--display:'Space Grotesk',var(--sans)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:14px}body{overflow:hidden}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer;background:none;border:0}button:disabled{cursor:wait;opacity:.4}a{color:inherit;text-decoration:none}button,a,input,select{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--mint);outline-offset:4px}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}button svg,a svg{vertical-align:middle}button:active:not(:disabled){transform:translateY(1px)}[hidden]{display:none!important}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.app-shell{display:flex;flex-direction:column;height:100dvh;min-height:670px;max-width:2400px;margin:0 auto}.topbar{height:76px;flex:none;padding:0 32px;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:40px;z-index:5;background:var(--bg)}.brand{display:flex;align-items:center;font-family:var(--display);font-size:25px;letter-spacing:-1.1px;font-weight:600}.brand>span:last-child{color:var(--mint)}.brand-mark{display:inline-block;position:relative;width:33px;height:33px;margin-right:11px}.brand-mark i{position:absolute;border-radius:50%;border:1px solid var(--mint);inset:0;opacity:.27}.brand-mark i:nth-child(2){inset:6px;opacity:.65}.brand-mark i:nth-child(3){inset:12px;background:var(--mint);border:0;opacity:1}.brand-caption{font:10px var(--mono);letter-spacing:2.2px;color:var(--dim)}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:24px}.data-status{display:flex;align-items:center;gap:9px;font-size:11px;color:var(--muted)}.status-dot,.tiny-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--mint);box-shadow:0 0 12px #bce9cd33}.data-status.offline .status-dot{background:var(--shallow)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:7px;color:var(--muted);font-size:24px;transition:background .15s,color .15s}.icon-button:hover{background:var(--surface-raised);color:var(--text)}.icon-button[aria-pressed=true]{color:var(--mint);background:#bce9cd0b}.icon-button.small{width:28px;height:28px}.icon-button.small svg{width:17px;height:17px}.workspace{flex:1;min-height:0;display:grid;grid-template-columns:308px minmax(0,1fr)}.sidebar{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--line);padding:29px 24px 0;background:linear-gradient(165deg,#111a1f 0%,#0e151a 90%);z-index:4}.eyebrow,.section-label{font:9px var(--mono);letter-spacing:1.7px;font-weight:500;color:var(--muted)}.sidebar-intro .eyebrow{color:var(--mint);font-size:8px;letter-spacing:1.9px}.sidebar-intro h1{font:500 29px/1.3 var(--display);letter-spacing:-1.1px;margin:13px 0 6px}.sidebar-intro p{font-size:12px;color:var(--muted);margin:0 0 24px}.mode-switch{display:flex;border:1px solid var(--line-strong);border-radius:7px;padding:4px;gap:3px}.mode-switch button{height:34px;display:flex;align-items:center;justify-content:center;gap:7px;flex:1;font-size:11px;color:var(--muted);border-radius:4px;transition:background .15s}.mode-switch button svg{height:14px;width:14px}.mode-switch button.active{background:var(--mint);color:#16251e;font-weight:700}.live-dot{width:5px;height:5px;display:inline-block;border-radius:50%;background:currentColor}.filter-section{padding-top:24px}.range-switch{display:flex;margin:10px 0 22px;gap:5px}.range-switch button{flex:1;height:29px;white-space:nowrap;font-size:10px;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:0 7px}.range-switch button.active{border-color:#bce9cd5c;color:var(--mint);background:#bce9cd0b}.range-switch button:hover{border-color:var(--muted)}.range-switch button span{margin-left:3px;color:var(--dim)}.filter-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:11px;color:var(--muted)}.filter-heading output{font:11px var(--mono);color:var(--text)}input[type=range]{height:18px;appearance:none;background:transparent;display:block;margin:0;width:100%;cursor:pointer;--fill:35.714%}input[type=range]::-webkit-slider-runnable-track{height:3px;background:linear-gradient(to right,var(--mint) var(--fill),#2b383a var(--fill));border-radius:3px}input[type=range]::-moz-range-track{height:3px;background:#2b383a;border-radius:3px}input[type=range]::-moz-range-progress{background:var(--mint);height:3px}input[type=range]::-webkit-slider-thumb{appearance:none;width:10px;height:10px;background:var(--mint);border-radius:50%;margin-top:-3.5px;border:2px solid var(--surface)}input[type=range]::-moz-range-thumb{width:8px;height:8px;background:var(--mint);border-radius:50%;border:2px solid var(--surface)}.range-endpoints{display:flex;justify-content:space-between;font:8px var(--mono);color:var(--dim);margin-top:1px}.depth-heading{margin:18px 0 20px;gap:10px}select{border:1px solid var(--line);background:var(--surface);border-radius:5px;color:var(--text);padding:6px 23px 6px 8px;font-size:10px;cursor:pointer;min-width:0}select option{background:var(--surface)}.stats-row{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}.stats-row>div{display:flex;flex-direction:column;gap:6px}.stats-row>div+div{border-left:1px solid var(--line);padding-left:22px}.stats-row strong{font:400 28px/1 var(--display);letter-spacing:-.9px;font-variant-numeric:tabular-nums}.stats-row>div+div strong{color:var(--shallow)}.stats-row span{font-size:10px;color:var(--muted)}.events-section{min-height:90px;flex:1;display:flex;flex-direction:column;margin-top:21px}.events-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.events-heading h2{font-size:11px;font-weight:500;margin:0}.events-heading>span{font:9px var(--mono);color:var(--dim)}.events-list{overflow:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#34413f transparent;flex:1;margin-right:-10px;padding-right:10px}.quake-row{display:flex;gap:10px;align-items:center;width:100%;padding:11px 0;border-bottom:1px solid var(--line);text-align:left;min-height:60px}.quake-row:hover,.quake-row.selected{background:#bce9cd06}.quake-row.selected .quake-place{color:var(--mint)}.quake-badge{width:39px;height:39px;border:1px solid color-mix(in srgb,var(--quake-color) 25%,transparent);background:color-mix(in srgb,var(--quake-color) 7%,transparent);color:var(--quake-color);border-radius:50%;display:flex;align-items:center;justify-content:center;font:12px var(--mono);flex:none}.quake-text{flex:1;min-width:0}.quake-place{font-size:11px;font-weight:500;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:5px}.quake-meta{font:9px var(--mono);color:var(--dim);display:flex;gap:9px}.quake-chevron{font-size:15px;color:var(--dim)}.sidebar-footer{display:flex;align-items:center;justify-content:space-between;flex:none;height:44px;border-top:1px solid var(--line);font-size:9px;color:var(--dim)}.sidebar-footer a svg{width:12px;height:12px;margin-left:4px}.sidebar-footer button{color:var(--dim);padding:8px}.sidebar-footer button svg{width:13px;height:13px}.globe-stage{position:relative;overflow:hidden;isolation:isolate;min-height:300px;background:radial-gradient(ellipse at 51% 48%,#1630321c 0%,#081014 55%,#091015 100%)}#globe{position:absolute;inset:0;z-index:0}.stage-grain{position:absolute;inset:0;z-index:-1;opacity:.24;background-image:radial-gradient(#c0d8d4 0.55px,transparent .7px),radial-gradient(#bcd7d1 .4px,transparent .8px);background-size:179px 163px,281px 197px;background-position:53px 32px,127px 118px;pointer-events:none}.stage-heading{position:absolute;top:30px;left:32px;pointer-events:none}.stage-heading>.eyebrow{font-size:9px;letter-spacing:2px;color:var(--dim)}.stage-state{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:11px;color:var(--muted)}#stage-state-dot{width:5px;height:5px;border-radius:50%;background:var(--dim)}.playing #stage-state-dot,.live-listening #stage-state-dot{background:var(--mint);box-shadow:0 0 0 3px #bce9cd10}.playing #stage-state-dot{animation:breathe 2s ease-in-out infinite}.globe-controls{display:flex;flex-direction:column;gap:3px;position:absolute;right:24px;top:50%;transform:translateY(-50%);padding:5px;border:1px solid var(--line);border-radius:9px;background:#0c151adb;backdrop-filter:blur(10px)}.globe-controls .icon-button{width:33px;height:33px}.globe-controls svg{width:16px;height:16px}.control-divider{height:1px;background:var(--line);margin:4px 5px}.depth-legend{position:absolute;left:32px;bottom:28px;width:220px;pointer-events:none}.depth-legend .section-label{font-size:8px;color:var(--muted)}.legend-gradient{height:3px;margin:12px 0 7px;background:linear-gradient(to right,var(--shallow) 0% 33.333%,var(--intermediate) 33.333% 66.667%,var(--deep) 66.667% 100%);border-radius:3px;opacity:.85}.legend-labels{display:flex;justify-content:space-between;font:8px var(--mono);color:var(--muted)}.legend-description{display:flex;justify-content:space-between;margin-top:9px;font-size:8px;color:var(--dim)}.globe-hint{display:flex;align-items:center;gap:7px;position:absolute;bottom:29px;right:28px;color:var(--dim);font-size:9px}.globe-hint svg{width:13px;height:13px}.intro-play{position:absolute;left:50%;bottom:122px;transform:translateX(-50%);border:1px solid #bce9cd27;border-radius:8px;display:flex;gap:13px;align-items:center;text-align:left;padding:13px 20px 13px 13px;background:#0c171be6;backdrop-filter:blur(12px);white-space:nowrap;box-shadow:0 10px 40px #0003;transition:border-color .2s,background .2s}.intro-play:hover{border-color:#bce9cd77;background:#15211feb}.intro-play:active:not(:disabled){transform:translateX(-50%) translateY(1px)}.intro-play-icon{display:flex;justify-content:center;align-items:center;background:var(--mint);color:#173024;border-radius:50%;height:33px;width:33px}.intro-play-icon svg{height:16px;width:16px;margin-left:2px}.intro-play strong{display:block;font-size:11px;font-weight:600;margin-bottom:4px}.intro-play small{display:block;font-size:9px;color:var(--muted)}.globe-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;color:var(--muted);font:10px var(--mono);letter-spacing:1px;background:radial-gradient(ellipse,#0b141deb,transparent 65%)}.loading-orbit{width:66px;height:66px;border:1px solid #bce9cd33;border-radius:50%;position:relative;margin-bottom:20px;animation:breathe 2.5s infinite}.loading-orbit:after,.loading-orbit:before{content:'';position:absolute;border:1px solid #bce9cd55;border-radius:50%;inset:11px}.loading-orbit:after{inset:24px;background:var(--mint)}.globe-error{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:280px;text-align:center;color:var(--muted)}.globe-error>svg{width:52px;height:52px;color:var(--mint)}.globe-error h2{font:500 21px var(--display);color:var(--text)}.globe-error p{font-size:12px;line-height:1.7}.selected-quake{position:absolute;left:32px;top:99px;background:#101c22ee;border:1px solid var(--line-strong);border-radius:8px;backdrop-filter:blur(14px);padding:13px 16px 17px;max-width:310px;min-width:250px;box-shadow:0 10px 40px #0003}.selected-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.selected-top .eyebrow{font-size:8px}.selected-main{display:flex;align-items:center;gap:14px;margin:10px 0}.selected-main>strong{font:400 33px var(--display);white-space:nowrap}.selected-main h2{font-size:12px;line-height:1.5;font-weight:500;margin:0}.selected-meta{font:9px var(--mono);color:var(--muted);line-height:1.9;display:flex;flex-direction:column}.selected-quake>a{display:inline-block;margin-top:13px;color:var(--mint);font-size:10px}.selected-quake>a svg{width:12px;height:12px}.player{border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line);flex:none;height:127px;display:grid;grid-template-columns:290px minmax(140px,1fr) 186px;align-items:center;gap:30px;padding:20px 32px;background:#111a1f;z-index:6}.player-transport{display:flex;align-items:center;gap:13px}.player-transport>.icon-button{width:24px;height:30px}.player-transport>.icon-button svg{width:17px;height:17px}.play-button{width:48px;height:48px;border-radius:50%;background:var(--mint);color:#1c382b;display:flex;align-items:center;justify-content:center;flex:none;box-shadow:0 0 25px #bce9cd0c}.play-button:hover{background:#cef7dc;box-shadow:0 0 25px #bce9cd20}.play-button svg{height:22px;width:22px}.play-button:not(.is-playing) svg{margin-left:2px}.player-title{min-width:0;padding-left:3px}.player-title strong{font-size:12px;font-weight:600;display:block;white-space:nowrap}.player-title>span{font-size:9px;line-height:1.6;color:var(--muted);margin-top:6px;display:block;max-width:150px}.timeline-block{min-width:0}.timeline-labels{display:flex;justify-content:space-between;align-items:center;gap:5px;font:8px var(--mono);color:var(--dim);margin-bottom:8px}.timeline-labels strong{color:var(--mint);font-size:10px;font-weight:400}.timeline-track{position:relative;height:38px;border-bottom:1px solid var(--line-strong)}#histogram{width:100%;height:37px;display:block}#timeline{position:absolute;inset:0;height:40px;opacity:0;z-index:2;cursor:ew-resize;touch-action:none}.timeline-playhead{position:absolute;height:43px;width:1px;left:100%;top:-3px;background:var(--mint);box-shadow:0 0 8px #bce9cd44;pointer-events:none}.timeline-playhead:before{content:'';position:absolute;top:-2px;left:-2px;border-top:4px solid var(--mint);border-left:2.5px solid transparent;border-right:2.5px solid transparent}.timeline-track:has(input:focus-visible){outline:2px solid var(--mint);outline-offset:5px}.timeline-caption{display:flex;justify-content:space-between;margin-top:7px;font:8px var(--mono);color:var(--dim);gap:8px}.player-options{min-width:0;display:flex;flex-direction:column;gap:14px}.options-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.options-top .icon-button{width:25px;height:26px}.options-top .icon-button svg{width:16px;height:16px}.duration-control{display:flex;align-items:center;gap:7px}.duration-control>span{font:8px var(--mono);color:var(--dim);letter-spacing:.6px}.duration-control>select{border:0;padding:4px 12px 4px 4px;background:transparent;font:10px var(--mono)}.volume-control{display:flex;align-items:center;gap:9px}.volume-control input{--fill:50%;flex:1;min-width:30px}.volume-control>span{font:9px var(--mono);color:var(--muted);width:25px}.bottom-bar{height:34px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 32px;color:var(--dim);font:8px var(--mono);letter-spacing:.3px;gap:15px}.bottom-bar>span:first-child{font-size:7px;letter-spacing:1.2px}.bottom-bar>span:first-child .tiny-dot{width:3px;height:3px;margin-right:7px;vertical-align:middle}.bottom-bar button{color:var(--muted);font-size:9px;font-family:var(--sans)}.bottom-bar button svg{width:11px;height:11px;margin-left:4px}.list-placeholder{padding:18px 0;text-align:left;color:var(--dim);font-size:11px;line-height:1.6}.loading-line{display:block;width:90%;height:8px;border-radius:3px;background:#9cbdaf0b;margin-bottom:12px;animation:breathe 2s infinite}.loading-line.short{width:60%}.list-empty{font-size:11px;color:var(--muted);line-height:1.8;padding:15px 0}.list-empty strong{font-weight:500;display:block;color:var(--text);margin-bottom:4px}.modal{width:min(540px,calc(100% - 32px));padding:30px;border:1px solid var(--line-strong);border-radius:13px;color:var(--text);background:#111d23;box-shadow:0 30px 100px #0009;max-height:85dvh;overflow:auto}.modal::backdrop{background:#03090cd9;backdrop-filter:blur(6px)}.modal-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.modal-heading .eyebrow{font-size:9px;color:var(--mint)}.modal h2{font:500 31px/1.2 var(--display);letter-spacing:-1px;margin:0 0 19px}.modal p{color:var(--muted);font-size:12px;line-height:1.8}.modal p.muted{font-size:10px;color:var(--dim);margin-top:22px}.about-grid{display:flex;flex-direction:column;gap:15px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:23px 0}.about-grid strong{font-size:12px;font-weight:500;color:var(--mint)}.about-grid p{margin:5px 0 0;font-size:11px}.source-notes{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.source-notes h3{font-size:11px;font-weight:500}.source-notes p{font-size:10px;color:var(--dim)}.source-notes a{text-decoration:underline;text-underline-offset:3px}.field-label{font-size:11px;color:var(--muted);display:block;margin:24px 0 9px}.full-select{width:100%;height:38px;padding:7px 13px;font-size:11px}.sound-samples{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:22px}.sample-button{border:1px solid var(--line);border-radius:7px;padding:18px 5px 12px;display:flex;flex-direction:column;align-items:center;transition:border-color .15s}.sample-button:hover{border-color:var(--line-strong);background:#bce9cd04}.sample-button strong{font-size:11px;font-weight:500;margin:16px 0 6px}.sample-button small{font:8px var(--mono);color:var(--dim)}.sample-button>span:last-child{font-size:8px;color:var(--muted);margin-top:18px}.sample-button>span:last-child svg{width:12px;height:12px}.sample-orbit{width:34px;height:34px;border:1px solid var(--sample);border-radius:50%;position:relative;opacity:.85}.sample-orbit:before{content:'';position:absolute;inset:6px;border:1px solid var(--sample);border-radius:50%}.sample-orbit:after{content:'';position:absolute;inset:13px;background:var(--sample);border-radius:50%}.shallow{--sample:var(--shallow)}.intermediate{--sample:var(--intermediate)}.deep{--sample:var(--deep)}.date-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:24px}.date-fields label{font-size:11px;color:var(--muted)}input[type=date]{width:100%;height:40px;margin-top:8px;background:var(--bg);border:1px solid var(--line-strong);border-radius:5px;color:var(--text);padding:10px;font-size:12px}.primary-button{height:40px;display:inline-flex;align-items:center;justify-content:center;gap:14px;background:var(--mint);border-radius:5px;color:#183222;font-size:12px;font-weight:600;padding:0 17px;margin-top:8px}.primary-button svg{width:15px;height:15px}.inline-error{color:var(--shallow)!important;min-height:0}.inline-error:empty{display:none}.toast{position:fixed;bottom:178px;left:50%;transform:translateX(-50%);max-width:min(500px,90vw);padding:13px 19px;background:#24362f;border:1px solid #bce9cd44;border-radius:8px;color:var(--text);font-size:12px;line-height:1.6;box-shadow:0 10px 40px #0007;z-index:30;pointer-events:none}.noscript{position:fixed;inset:0;display:grid;place-items:center;background:var(--bg);z-index:100;padding:30px}.skip-link{position:fixed;top:-60px;left:20px;background:var(--mint);color:#163322;padding:12px;z-index:100}.skip-link:focus{top:12px}@keyframes breathe{50%{opacity:.45}}.live-listening .live-dot{animation:breathe 1.8s infinite}.live-listening #timeline{cursor:default}.loading-data #refresh-button svg{animation:spin 1.5s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1600px){.workspace{grid-template-columns:350px minmax(0,1fr)}.sidebar{padding:35px 30px 0}.sidebar-intro h1{font-size:32px}.sidebar-intro p{font-size:13px}.filter-heading{font-size:12px}.events-heading h2{font-size:12px}.quake-place{font-size:12px}.quake-row{min-height:69px}.globe-controls{right:36px}.player{grid-template-columns:330px minmax(200px,1fr) 205px;gap:38px}}
@media(max-height:790px) and (min-width:901px){.sidebar{padding-top:20px}.sidebar-intro h1{font-size:25px;margin-top:10px}.sidebar-intro p{margin-bottom:16px}.filter-section{padding-top:17px}.range-switch{margin-bottom:14px}.depth-heading{margin:10px 0 14px}.stats-row{padding:13px 0}.stats-row strong{font-size:24px}.events-section{margin-top:15px}.player{height:117px}.topbar{height:67px}.intro-play{bottom:110px}}
@media(max-width:1100px){.brand-caption{display:none}.workspace{grid-template-columns:280px minmax(0,1fr)}.sidebar{padding-left:20px;padding-right:20px}.sidebar-intro h1{font-size:26px}.topbar{padding:0 24px}.player{grid-template-columns:247px minmax(140px,1fr) 160px;gap:18px;padding-left:23px;padding-right:23px}.player-title>span{font-size:8px;max-width:125px}.player-title strong{font-size:11px}.player-transport{gap:9px}.globe-hint{display:none}.depth-legend{width:195px;left:26px}.stage-heading{left:26px}.selected-quake{left:26px;max-width:275px}.globe-controls{right:16px}.bottom-bar{padding:0 24px}}
@media(max-width:900px){body{overflow:auto}.app-shell{min-height:100dvh;height:auto}.topbar{height:65px;padding:0 22px}.brand{font-size:23px}.topbar-actions{gap:10px}.data-status{font-size:9px}.workspace{display:flex;flex-direction:column-reverse;min-height:0}.globe-stage{height:clamp(430px,65dvh,650px);min-height:400px}.stage-heading{top:25px;left:23px}.globe-controls{right:15px}.depth-legend{left:23px;bottom:23px;width:190px}.intro-play{bottom:111px}.sidebar{border-right:0;border-top:1px solid var(--line);padding:24px;display:grid;grid-template-columns:1fr 1fr;column-gap:28px;row-gap:0}.sidebar-intro{grid-column:1}.sidebar-intro .eyebrow{font-size:8px}.sidebar-intro h1{font-size:28px}.sidebar-intro p{margin-bottom:17px}.mode-switch{grid-column:1}.filter-section{grid-column:2;grid-row:1 / span 2;padding-top:0}.stats-row{grid-column:1;margin-top:20px;border-bottom:0;padding-bottom:0}.events-section{grid-column:2;grid-row:3 / span 2;max-height:260px;margin-top:15px}.sidebar-footer{grid-column:1;align-self:end;border-top:0;margin-top:10px}.events-list{min-height:160px}.player{position:sticky;bottom:0;grid-template-columns:220px minmax(150px,1fr) 155px;height:120px;padding:16px 20px;gap:15px;box-shadow:0 -10px 45px #0002}.player-title>span{max-width:105px}.player-transport{gap:8px}.player-transport>.icon-button{width:22px}.play-button{width:44px;height:44px}.player-title strong{font-size:10px}.bottom-bar{order:0;height:37px;padding:0 22px}.bottom-bar>span:first-child{display:none}.selected-quake{left:23px;top:80px;max-width:275px}.toast{bottom:145px}}
@media(max-width:650px){.topbar{height:62px;padding:0 16px}.brand{font-size:22px}.brand-mark{width:29px;height:29px}.brand-mark i:nth-child(2){inset:5px}.brand-mark i:nth-child(3){inset:11px}.data-status{max-width:125px;line-height:1.5;font-size:9px}.topbar-actions>.icon-button{width:29px}.topbar-actions{gap:4px}.workspace{display:flex}.globe-stage{height:470px;min-height:410px;max-height:64dvh}.stage-heading{left:18px;top:20px}.stage-heading>.eyebrow{font-size:8px}.stage-state{font-size:10px}.globe-controls{right:10px;top:45%;padding:3px}.globe-controls .icon-button{height:30px;width:29px}.globe-controls svg{width:15px;height:15px}.depth-legend{left:18px;bottom:19px;width:175px}.legend-description{font-size:7px}.intro-play{bottom:100px;padding:11px 15px 11px 11px;gap:11px}.intro-play strong{font-size:11px}.intro-play small{font-size:8px}.intro-play-icon{width:29px;height:29px}.sidebar{padding:23px 18px;column-gap:20px;grid-template-columns:1fr 1fr}.sidebar-intro h1{font-size:24px;margin-top:12px}.sidebar-intro p{font-size:11px;margin-bottom:21px}.sidebar-intro .eyebrow{font-size:6px;letter-spacing:1.4px}.mode-switch button{font-size:10px;height:29px;gap:4px}.mode-switch{padding:3px}.filter-section .section-label{font-size:8px;letter-spacing:1px}.range-switch{gap:4px;margin-top:10px;margin-bottom:17px}.range-switch button{font-size:9px;padding:0 4px}.range-switch button span{display:none}.filter-heading{font-size:10px}.filter-heading output{font-size:10px}.depth-heading{flex-direction:column;align-items:stretch;gap:7px;margin-top:12px;margin-bottom:0}.depth-heading select{font-size:10px;width:100%;height:29px}.stats-row{grid-column:1 / -1;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;margin-top:21px}.stats-row>div{flex-direction:row;align-items:center;gap:10px}.stats-row>div+div{padding-left:19px}.stats-row strong{font-size:26px}.stats-row span{font-size:9px;max-width:63px}.events-section{grid-column:1 / -1;grid-row:auto;max-height:285px;margin-top:21px}.events-heading h2{font-size:12px}.events-list{margin-right:-4px;padding-right:4px}.quake-row{padding:11px 2px;min-height:61px}.quake-place{font-size:12px}.quake-meta{font-size:10px}.quake-badge{width:38px;height:38px}.sidebar-footer{grid-column:1 / -1;margin-top:9px;border-top:1px solid var(--line)}.player{display:grid;grid-template-columns:1fr 140px;gap:14px 10px;height:170px;padding:14px 18px max(12px,env(safe-area-inset-bottom));align-items:center}.player-transport{gap:11px;grid-column:1;grid-row:2}.player-title strong{font-size:10px}.player-title>span{font-size:8px;max-width:132px;margin-top:3px}.player-transport>.icon-button{width:17px}.play-button{width:38px;height:38px}.play-button svg{width:19px;height:19px}.timeline-block{grid-column:1 / -1;grid-row:1}.timeline-labels{font-size:7px;margin-bottom:5px}.timeline-labels strong{font-size:10px}.timeline-track{height:25px}#histogram{height:24px}#timeline{height:31px;top:-3px}.timeline-playhead{height:29px;top:-3px}.timeline-caption{margin-top:5px;font-size:7px}.player-options{gap:5px;grid-column:2;grid-row:2}.duration-control{gap:4px}.duration-control>span{font-size:7px}.duration-control>select{font-size:9px;padding-right:4px}.options-top{gap:3px}.options-top .icon-button{width:23px;height:23px}.volume-control{gap:5px}.volume-control .icon-button{width:23px;height:23px}.volume-control>span{font-size:8px;width:22px}.volume-control>input{height:15px}.bottom-bar{padding:0 18px;font-size:7px;height:32px;gap:8px}.bottom-bar button{font-size:8px}.selected-quake{top:79px;left:17px;width:240px;min-width:0;padding:10px 12px 13px}.selected-main>strong{font-size:28px}.selected-main h2{font-size:11px}.selected-meta{font-size:8px}.selected-top .eyebrow{font-size:7px}.toast{bottom:193px;font-size:11px;max-width:90vw;min-width:250px}.modal{padding:23px}.modal h2{font-size:27px}.modal p{font-size:11px}.sound-samples{gap:7px}.sample-button strong{font-size:10px}.sample-button small{font-size:7px}.sample-button>span:last-child{font-size:7px}.sound-modal{width:calc(100% - 24px)}.date-fields{gap:10px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

.timeline-caption{font-size:9px}
.sound-timeline-note{margin-top:23px;padding-top:19px;border-top:1px solid var(--line)}
.sound-timeline-note>strong{font-size:11px;font-weight:500;color:var(--mint)}
.sound-timeline-note>p{font-size:11px;margin:7px 0 0}
@media(max-width:650px){.timeline-caption{font-size:8px}}

.follow-button{position:absolute;top:28px;right:27px;display:flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid var(--line-strong);border-radius:6px;background:#101c22e6;color:var(--muted);font-size:10px;z-index:2;backdrop-filter:blur(8px)}
.follow-button svg{width:15px;height:15px}
.follow-button[aria-pressed=true]{color:var(--mint);border-color:#bce9cd55;background:#152d24e8}
.follow-button:hover{border-color:var(--mint);color:var(--text)}
.stage-heading{max-width:calc(100% - 195px)}
.stage-heading>.eyebrow,.stage-state>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.current-ping{position:absolute;left:32px;top:98px;display:flex;align-items:center;gap:11px;padding:10px 13px;max-width:min(345px,calc(100% - 100px));border-left:2px solid var(--quake-color);border-radius:0 6px 6px 0;background:#0c171ddd;pointer-events:none;backdrop-filter:blur(8px)}
.current-ping>span{font:500 17px var(--display);color:var(--quake-color);white-space:nowrap}
.current-ping>div{min-width:0;display:flex;flex-direction:column;gap:4px}
.current-ping strong{display:block;font-size:11px;font-weight:500;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.current-ping div>span{font:8px var(--mono);color:var(--muted)}
@media(max-width:650px){.follow-button{top:16px;right:14px;padding:8px 9px;font-size:9px;gap:5px}.follow-button svg{width:14px;height:14px}.stage-heading{max-width:calc(100% - 145px)}.current-ping{left:18px;top:80px;padding:9px 10px;max-width:calc(100% - 85px)}.current-ping>span{font-size:16px}.current-ping strong{font-size:10px}.current-ping div>span{font-size:7px}}

/* Shared, quiet numeric typography for magnitude readouts. */
.quake-badge,.filter-heading output,.selected-main>strong,.current-ping>span,#largest-mag{font-family:var(--sans);font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.025em}
.units-control{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:0 0 18px;font-size:11px;color:var(--muted)}
.units-switch{display:flex;padding:3px;gap:2px;border:1px solid var(--line);border-radius:6px;background:var(--bg)}
.units-switch button{padding:7px 9px;border-radius:4px;font-size:10px;color:var(--muted);white-space:nowrap}
.units-switch button span{font-size:9px;opacity:.7;margin-left:3px}
.units-switch button[aria-pressed=true]{background:var(--surface-raised);color:var(--mint);box-shadow:inset 0 0 0 1px #bce9cd22}
.units-switch button:hover{color:var(--text)}
@media(max-width:650px){.units-control{margin:12px 0 0;gap:6px}.units-switch{width:100%}.units-switch button{flex:1;padding:7px 3px}.units-switch button span{display:none}}

/* Choices live in memory only; the two controls share the sidebar width. */
.display-settings{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:10px;margin:0 0 18px}
.display-settings .units-control,.timezone-control{display:flex;flex-direction:column;align-items:stretch;gap:7px;margin:0;min-width:0;font-size:11px;color:var(--muted)}
.display-settings .units-switch{width:100%;padding:2px;gap:1px}
.display-settings .units-switch button{flex:1;padding:7px 3px;font-size:9px}
.display-settings .units-switch button span{display:none}
.timezone-control select{width:100%;height:33px;text-overflow:ellipsis;padding-left:7px}
.magnitude-anchor{width:0;height:0;pointer-events:none}
.magnitude-label{position:absolute;display:flex;align-items:baseline;gap:5px;padding:5px 8px;border:1px solid #c8e8dc40;border-radius:5px;background:#0b171eed;box-shadow:0 2px 9px #0004;color:#edf5f0;white-space:nowrap;font-family:var(--sans);line-height:1;pointer-events:auto;transform:translate(-50%,7px)}
.magnitude-label--top{transform:translate(-50%,calc(-100% - 7px))}
.magnitude-label--right{transform:translate(8px,-50%)}
.magnitude-label:active:not(:disabled){transform:translate(-50%,7px)}
.magnitude-label--top:active:not(:disabled){transform:translate(-50%,calc(-100% - 7px))}
.magnitude-label--right:active:not(:disabled){transform:translate(8px,-50%)}
.magnitude-label:hover{border-color:var(--mint);background:#172b30}
.magnitude-prefix{font-size:9px;font-weight:500;letter-spacing:.03em;color:#a9c1b8}
.magnitude-number{font-size:16px;font-weight:500;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
@media(max-width:650px){.display-settings{grid-template-columns:1fr;margin:12px 0 0;gap:10px}.magnitude-number{font-size:14px}.magnitude-prefix{font-size:8px}.magnitude-label{padding:5px 7px}.quake-meta{flex-wrap:wrap;gap:4px 9px}}


@media(max-width:650px){.units-switch button{min-height:33px}.timezone-control select{height:38px}}
@media(max-width:650px){.mode-switch{align-self:start;height:43px}.mode-switch button{height:33px}}

.quake-row{gap:0;padding:0}.quake-focus{display:flex;align-items:center;gap:10px;flex:1;min-width:0;align-self:stretch;padding:11px 0;text-align:left}.quake-usgs{display:flex;align-items:center;justify-content:center;flex:0 0 44px;min-height:44px;align-self:stretch;border-radius:5px}.quake-usgs:hover{background:#bce9cd12}.quake-usgs:hover .quake-chevron{color:var(--mint)}.quake-focus:focus-visible,.quake-usgs:focus-visible{outline-offset:-2px}

/* Compact catalogue tools and an explicit time-compression label. */
.events-heading{flex-wrap:wrap;gap:6px}.events-heading #event-sort{margin-left:auto;max-width:90px;font-size:9px;padding:4px 5px}.events-heading #events-count{width:100%;font-size:8px}.replay-speed{font:8px var(--mono);color:var(--muted);margin-top:5px}.timeline-caption{margin-top:4px}
@media(max-width:650px){.replay-speed{font-size:7px}.player{height:182px}.toast{bottom:205px}}

/* Phone layout: full-width filters, readable inputs and a three-row player.
   Keep the desktop composition and sound controls in their existing places. */
@media (max-width:650px) {
  .app-shell{min-height:100dvh;min-width:0}
  .topbar{gap:8px;padding-inline:14px}
  .topbar-actions{min-width:0}
  .data-status{max-width:105px;font-size:10px}
  .topbar-actions>.icon-button{width:44px;height:44px;flex:none}
  .brand{font-size:21px;flex:none}
  .brand-mark{margin-right:7px}
  .globe-stage{height:clamp(320px,calc(100svh - 275px),520px);min-height:320px;max-height:none;scroll-margin-top:0}
  .stage-heading{left:14px;top:17px;max-width:calc(100% - 155px)}
  .stage-state{line-height:1.5}
  .follow-button{right:14px;top:12px;min-height:44px;font-size:11px;padding:8px 10px}
  .current-ping{left:14px;top:73px;max-width:calc(100% - 28px);padding:8px 10px;backdrop-filter:none}
  .current-ping strong{font-size:12px}
  .current-ping div>span{font-size:9px}
  .globe-controls{left:14px;right:14px;top:auto;bottom:58px;transform:none;flex-direction:row;justify-content:space-between;gap:0;padding:2px;background:#0c151aee;backdrop-filter:none}
  .globe-controls .icon-button{width:44px;height:44px}
  .globe-controls .control-divider{width:1px;height:26px;margin:9px 0}
  .globe-controls svg{width:18px;height:18px}
  .depth-legend{left:16px;right:16px;bottom:13px;width:auto}
  .legend-gradient{margin:7px 0 5px}
  .legend-labels{font-size:9px}
  .legend-description{display:none}
  .intro-play{bottom:120px;max-width:calc(100% - 28px);min-height:52px;white-space:normal;backdrop-filter:none}
  .intro-play small{font-size:10px;line-height:1.4}
  .selected-quake{left:14px;top:73px;width:calc(100% - 28px);max-width:none;max-height:calc(100% - 185px);overflow:auto;backdrop-filter:none}
  .selected-quake .selected-meta{font-size:10px}
  .selected-quake .icon-button.small{width:44px;height:44px}
  .selected-quake>a{min-height:44px;display:flex;align-items:center;gap:5px;margin-top:4px;font-size:12px}
  .sidebar{display:flex;flex-direction:column;gap:0;padding:22px 16px 14px;min-width:0}
  .sidebar-intro h1{font-size:25px;margin:0 0 16px}
  .sidebar-intro .eyebrow,.sidebar-intro p{display:none}
  .mode-switch{height:auto;width:100%;align-self:stretch;padding:3px}
  .mode-switch button{height:44px;font-size:13px}
  .filter-section{padding-top:20px;min-width:0}
  .filter-section .section-label{font-size:10px}
  .range-switch{margin:9px 0 20px;gap:8px}
  .range-switch button{min-height:44px;font-size:12px;padding:0 8px}
  .filter-heading,.filter-heading output{font-size:12px}
  .filter-heading{margin-bottom:0}
  input[type=range]{height:40px}
  input[type=range]::-webkit-slider-thumb{width:20px;height:20px;margin-top:-8.5px}
  input[type=range]::-moz-range-thumb{width:16px;height:16px}
  .range-endpoints{font-size:10px}
  .depth-heading{flex-direction:row;align-items:center;justify-content:space-between;gap:16px;margin:16px 0}
  .depth-heading select{width:auto;max-width:75%;height:44px;font-size:16px}
  .display-settings{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin:0}
  .display-settings .units-control,.timezone-control{font-size:12px}
  .display-settings .units-switch button{min-height:40px;font-size:12px;padding:4px}
  .timezone-control select{height:46px;font-size:16px}
  .stats-row{margin-top:22px;padding:17px 0}
  .stats-row>div{min-width:0}
  .stats-row span{font-size:11px;max-width:90px}
  .events-section{flex:none;max-height:none;margin-top:20px;min-width:0}
  .events-heading{margin-bottom:8px}
  .events-heading h2{font-size:13px}
  .events-heading #event-sort{font-size:16px;max-width:140px;height:44px;padding-inline:8px}
  .events-heading #events-count{font-size:10px}
  .events-list{min-height:0;max-height:360px;overscroll-behavior-y:contain}
  .quake-row{padding:0;min-height:68px}
  .quake-focus{padding:12px 0}
  .quake-place{font-size:13px}
  .quake-meta{font-size:10px;line-height:1.4}
  .sidebar-footer{min-height:48px;font-size:11px;margin-top:12px}
  .sidebar-footer button{width:44px;height:44px}
  .player{height:auto;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:auto auto auto;gap:8px 4px;padding:10px 12px max(10px,env(safe-area-inset-bottom));min-width:0}
  .player-transport{grid-column:1 / 5;grid-row:1;min-width:0;gap:6px}
  .player-transport>.icon-button{width:36px;height:44px;flex:none}
  .play-button{width:44px;height:44px}
  .player-title{min-width:0;padding-left:2px}
  .player-title strong{font-size:12px;overflow:hidden;text-overflow:ellipsis}
  .player-title>span{display:none}
  .player-options,.options-top{display:contents}
  #loop-button{grid-column:5;grid-row:1;justify-self:center}
  #sound-settings-button{grid-column:6;grid-row:1;justify-self:end}
  .options-top .icon-button{width:44px;height:44px}
  .options-top .icon-button svg{width:19px;height:19px}
  .timeline-block{grid-column:1 / -1;grid-row:2;padding:0 4px}
  .timeline-labels{font-size:9px;gap:4px;flex-wrap:wrap;line-height:1.4}
  .timeline-labels strong{font-size:11px}
  .timeline-track{height:25px}
  #timeline{height:44px;top:-9px}
  .replay-speed{font-size:9px;margin-top:6px;line-height:1.4}
  .timeline-caption{font-size:9px;flex-wrap:wrap;line-height:1.4}
  .duration-control{grid-column:1 / 3;grid-row:3;gap:3px;min-width:0}
  .duration-control>span{display:none}
  .duration-control>select{height:44px;width:100%;font:16px var(--sans);padding:4px;background:var(--surface-raised);border-radius:5px}
  .volume-control{grid-column:3 / 7;grid-row:3;gap:6px;padding-left:6px;min-width:0}
  .volume-control .icon-button{height:44px;width:44px;flex:none}
  .volume-control>input{height:44px;min-width:20px}
  .volume-control>span{font-size:10px;width:32px;flex:none}
  .bottom-bar{height:auto;min-height:40px;font-size:9px;flex-wrap:wrap}
  .bottom-bar button{font-size:11px;min-height:44px}
  .modal{padding:20px;max-height:calc(100dvh - 24px);max-width:calc(100% - 24px)}
  .modal h2{font-size:25px}
  .modal p{font-size:13px}
  .modal .icon-button{height:44px;width:44px}
  .modal select,.modal input[type=date]{font-size:16px;min-height:44px}
  .sample-button strong{font-size:11px}
  .sample-button small,.sample-button>span:last-child{font-size:9px}
  .sample-button{min-width:0;padding-inline:3px}
  .toast{bottom:calc(235px + env(safe-area-inset-bottom))}
}
@media (max-width:360px) {
  .data-status{max-width:76px;font-size:9px}
  .topbar{padding-inline:10px}
  .stats-row>div{gap:6px}.stats-row>div+div{padding-left:12px}
  .stats-row strong{font-size:23px}
  .date-fields{grid-template-columns:1fr}
}

/* Always-visible voice switch, refresh state and mobile control drawer. */
.drawer-heading,.drawer-toggle,.drawer-scrim{display:none}
.haptics-button{border:1px solid var(--line-strong);border-radius:6px;min-height:36px;padding:7px 12px;font-size:11px;margin-bottom:15px;color:var(--muted)}
.haptics-button[aria-pressed=true]{color:var(--mint);background:var(--mint-dark)}
.haptics-button:disabled{cursor:default;font-size:10px}
.drawer-extras:empty{display:none}
.quick-controls{grid-column:1 / -1;grid-row:1;display:flex;align-items:center;gap:14px;min-width:0}
.sound-cycle{display:flex;align-items:center;gap:9px;border:1px solid var(--line-strong);border-radius:6px;padding:7px 12px;min-height:34px;font-size:11px;color:var(--mint);background:#bce9cd09}
.sound-cycle svg{width:16px;height:16px}.sound-cycle>span:last-child{font-size:18px;color:var(--muted)}
.refresh-status{font:9px/1.4 var(--mono);color:var(--muted);margin-left:auto;text-align:right}
.refresh-status:before{content:'';display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:var(--mint)}
.loading-data .refresh-status:before{width:10px;height:10px;border:1px solid var(--mint);border-right-color:transparent;background:transparent;animation:refresh-spin .8s linear infinite}
.loading-data #refresh-button svg{animation:refresh-spin .8s linear infinite}
@keyframes refresh-spin{to{transform:rotate(360deg)}}
.player{height:auto;min-height:155px;grid-template-rows:auto auto;padding-block:10px;row-gap:8px}
.player-transport,.timeline-block,.player-options{grid-row:2}
.reset-label{font-size:8px;display:block;line-height:1.2}
#reset-view{height:44px;flex-direction:column;gap:2px}
@media (min-width:901px){.sidebar-intro p{margin-bottom:15px}.sidebar{padding-top:18px}.filter-section{padding-top:16px}.haptics-button{min-height:28px;margin-bottom:8px}.haptics-button:disabled{display:none}}
@media (max-width:900px){
  body{overflow:hidden}
  .app-shell{height:100dvh;min-height:0;overflow:hidden}
  .topbar{height:60px;flex:none;padding-inline:14px}
  .data-status{display:none}
  .workspace{flex:1;min-height:0;display:block;position:relative}
  .globe-stage{height:100%;min-height:0;max-height:none;width:100%}
  .bottom-bar{display:none}
  .player{position:relative;bottom:auto;z-index:12;flex:none;min-height:0;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:auto auto auto;gap:7px 4px;padding:7px 12px max(9px,env(safe-area-inset-bottom));box-shadow:0 -8px 30px #0003}
  .quick-controls{grid-column:1 / -1;grid-row:1;display:grid;grid-template-columns:1fr 2fr;gap:3px 12px}
  .drawer-toggle{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;font-size:12px;color:var(--mint);border:1px solid var(--line-strong);border-radius:6px}
  .drawer-toggle svg{width:25px;height:14px;transition:transform .2s}
  .drawer-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
  .sound-cycle{min-height:44px;width:100%;justify-content:center;font-size:12px}
  .refresh-status{grid-column:1 / -1;margin:0;text-align:center;font-size:9px;min-height:14px}
  .player-transport{grid-row:2;grid-column:1 / 4;gap:10px;min-width:0}
  .player-transport>.icon-button{width:44px;height:44px;flex:none}
  .play-button{width:44px;height:44px}
  .player-title{display:none}
  .player-options,.options-top{display:contents}
  .duration-control{grid-row:2;grid-column:4 / 6;min-width:0}
  .duration-control>span{display:none}
  .duration-control>select{font:16px var(--sans);height:44px;width:100%;padding:4px 6px;background:var(--surface-raised);border-radius:5px}
  #loop-button{grid-row:2;grid-column:6;justify-self:end;width:44px;height:44px}
  .timeline-block{grid-row:3;grid-column:1 / -1;min-width:0;padding:0 4px}
  .timeline-labels{font-size:9px;flex-wrap:wrap;gap:4px;margin-bottom:4px;line-height:1.4}
  .timeline-labels strong{font-size:11px}
  .timeline-track{height:23px}#histogram{height:22px}#timeline{height:40px;top:-8px}
  .timeline-playhead{height:27px;top:-3px}.timeline-caption,.replay-speed{font-size:9px;line-height:1.3;margin-top:4px}
  .drawer-scrim{display:block;position:fixed;inset:0 0 var(--player-height,230px);z-index:9;background:#02090bb3;cursor:default}
  .sidebar{display:flex;flex-direction:column;position:fixed;z-index:11;inset:max(65px,12dvh) 0 var(--player-height,230px);border:1px solid var(--line-strong);border-bottom:0;border-radius:18px 18px 0 0;padding:12px 18px 20px;overflow-y:auto;overscroll-behavior:contain;visibility:hidden;transform:translateY(100%);transition:transform .2s,visibility .2s;background:#101b21;min-height:0;box-shadow:0 -15px 50px #0005}
  .drawer-open .sidebar{visibility:visible;transform:translateY(0)}
  .sidebar>*{flex-shrink:0}
  .drawer-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:14px}
  .drawer-heading .icon-button{width:44px;height:44px}
  .sidebar-intro{display:none}
  .drawer-extras{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin-bottom:12px}
  .drawer-extras .volume-control{grid-column:auto;grid-row:auto;min-width:0;gap:8px;padding:0}
  .drawer-extras .volume-control .icon-button{width:44px;height:44px}
  .drawer-extras .volume-control>input{height:44px;min-width:20px}
  .drawer-extras .volume-control>span{font-size:11px;width:32px}
  .drawer-extras #sound-settings-button{grid-column:auto;grid-row:auto;display:flex;width:auto;min-height:44px;gap:6px;padding:6px 9px;border:1px solid var(--line-strong)}
  .drawer-extras #sound-settings-button:after{content:'Sound';font-size:12px}
  .haptics-button{min-height:44px;width:100%;font-size:12px;margin-bottom:16px}
  .mode-switch{height:auto;align-self:stretch;width:100%}.mode-switch button{height:44px;font-size:13px}
  .filter-section{padding-top:18px}.range-switch button{height:44px;font-size:12px}
  .depth-heading select,.timezone-control select{font-size:16px;min-height:44px}
  .display-settings{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .stats-row{margin-top:18px}.events-section{max-height:none;min-height:0;flex:none}.events-list{max-height:none;min-height:0;overflow:visible}
  #zoom-in,#zoom-out,.globe-controls .control-divider{display:none}
  .globe-controls{top:auto;bottom:58px;left:auto;right:12px;transform:none;display:flex;flex-direction:row;gap:4px;padding:3px;background:#0c151aee;backdrop-filter:none}
  .globe-controls .icon-button{width:44px;height:44px}#reset-view{width:50px}
  .depth-legend{left:16px;right:16px;bottom:12px;width:auto}.legend-description{display:none}.legend-gradient{margin:7px 0 5px}
  .intro-play{bottom:120px;max-width:calc(100% - 28px);white-space:normal}
  .toast{bottom:calc(var(--player-height,230px) + 12px);z-index:30}
}
@media (max-height:560px) and (max-width:900px){
 .topbar{height:44px}.player{gap:3px;padding-top:4px}.timeline-block{display:none}
 .sidebar{top:48px}.stage-heading,.current-ping{display:none}.intro-play{bottom:110px}
}

/* Readability, keyboard access and constrained-height reflow. */
.sidebar-intro p{font-size:12px;line-height:1.6}
.drawer-zoom{display:none}
.quake-meta,.timeline-caption,.replay-speed,.refresh-status{font-size:11px}
.modal p.muted,.source-notes p,.sound-samples small{font-size:12px}
.modal p{font-size:14px}
#events-heading:focus{outline:2px solid var(--mint);outline-offset:4px}
@media(max-width:900px){
 .drawer-zoom{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px}
 .drawer-zoom span{font-size:12px;margin-right:auto}
 .drawer-zoom button{min-height:44px;padding:8px 12px;border:1px solid var(--line-strong);border-radius:6px;font-size:12px}
 .sidebar-intro{display:block}.sidebar-intro .eyebrow,.sidebar-intro h1{display:none}
 .sidebar-intro p{margin:4px 0 16px}
 .sidebar,.modal{overflow-wrap:anywhere}
}
@media(max-width:900px) and (max-height:420px){
 .drawer-open .sidebar{inset:8px;z-index:20;border:1px solid var(--line-strong);border-radius:12px}
 .drawer-open .drawer-scrim{inset:0;z-index:19}
}
@media(max-width:360px){
 .display-settings,.date-fields{grid-template-columns:minmax(0,1fr)}
 .modal{padding:18px}.sound-samples{grid-template-columns:minmax(0,1fr)}
 .sample-button{padding:12px}.quick-controls{gap:4px}
 .drawer-toggle,.sound-cycle{font-size:11px}
}
