:root{--bg:#061522;--panel:#0b2030;--panel2:#102b3e;--line:#23475c;--text:#f5f8fb;--muted:#9bb3c2;--cyan:#35c5f0;--blue:#1d9bf0;--orange:#ff9b42;--danger:#ff6174;--shadow:0 20px 55px rgba(0,0,0,.24)}
[hidden]{display:none!important}
*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;color:var(--text);background:radial-gradient(circle at 78% -10%,#123d55 0,transparent 35%),var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;max-width:1420px;margin:auto;padding:0 30px;border-bottom:1px solid rgba(105,176,211,.2)}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,var(--cyan),#1776d2);font-weight:900;font-style:italic;box-shadow:0 8px 25px rgba(31,159,226,.28)}.brand strong,.brand small{display:block}.brand strong{letter-spacing:.12em}.brand small{color:var(--muted);font-size:12px;margin-top:2px}.topbar nav{display:flex;align-items:center;gap:24px}.topbar nav a,.topbar nav button{color:#bdd0db;text-decoration:none;background:none;border:0;font:inherit;cursor:pointer}.topbar nav a:hover{color:#fff}.topbar nav button{padding:10px 16px;border-radius:999px;background:#dff7ff;color:#073149;font-weight:800}main{max-width:1420px;margin:auto;padding:0 30px 70px}.hero{min-height:280px;display:flex;align-items:center;justify-content:space-between;gap:40px}.hero>div:first-child{max-width:780px}.eyebrow{color:var(--cyan);font-weight:800;letter-spacing:.18em;font-size:13px}.hero h1{font-size:clamp(48px,7vw,94px);letter-spacing:-.06em;line-height:.9;margin:16px 0 24px}.hero p:not(.eyebrow){color:#b8cbd6;max-width:690px;font-size:19px;line-height:1.6}.era{width:210px;height:180px;border:1px solid var(--line);border-radius:30px;background:linear-gradient(145deg,rgba(53,197,240,.13),rgba(255,155,66,.08));display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(2deg);box-shadow:var(--shadow)}.era span{font-size:58px;font-weight:900;color:var(--orange);font-variant-numeric:tabular-nums}.era small{font-size:11px;letter-spacing:.16em;color:var(--muted)}.search-panel,.results-section{border:1px solid var(--line);border-radius:26px;background:rgba(9,31,46,.93);padding:28px;box-shadow:var(--shadow)}.section-title{display:flex;align-items:center;gap:14px;margin-bottom:22px}.section-title>span{color:var(--cyan);font-size:12px;font-weight:900;letter-spacing:.16em}.section-title h2{margin:0;font-size:23px}.section-title p{margin:0 0 0 auto;color:var(--muted)}.event-tabs{display:flex;gap:8px;overflow:auto;padding-bottom:8px;scrollbar-width:thin}.event-tabs button,.presets button{white-space:nowrap;border:1px solid var(--line);background:#0a1b29;color:#b8cad5;border-radius:999px;padding:11px 16px;font-weight:750;cursor:pointer}.event-tabs button.active{background:var(--cyan);border-color:var(--cyan);color:#052034}form{display:grid;grid-template-columns:2fr repeat(5,1fr) 1.15fr;gap:12px;margin-top:18px}label{display:flex;flex-direction:column;gap:8px;color:#9db5c4;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}input,select{width:100%;height:48px;border:1px solid var(--line);border-radius:12px;background:#071925;color:#fff;padding:0 13px;font:600 14px inherit;outline:none}input:focus,select:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(53,197,240,.12)}.search-button{height:48px;align-self:end;display:flex;align-items:center;justify-content:space-between;border:0;border-radius:12px;background:linear-gradient(100deg,var(--blue),var(--cyan));color:#031724;padding:0 16px;font-size:14px;font-weight:900;cursor:pointer}.search-button b{font-size:22px}.presets{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:18px}.presets>span{color:var(--muted);font-size:13px;margin-right:3px}.presets button{padding:7px 11px;font-size:12px}.results-section{margin-top:24px;min-height:350px}.results-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:22px}.results-list{display:flex;flex-direction:column;gap:8px;min-width:0}.event-row{display:grid;grid-template-columns:72px minmax(120px,1fr) minmax(120px,1.3fr) auto;align-items:center;gap:15px;width:100%;border:1px solid transparent;border-radius:15px;background:#0e2839;color:inherit;text-align:left;padding:13px 16px;cursor:pointer;transition:.18s}.event-row:hover,.event-row.selected{border-color:#3ca8d0;background:#13364b;transform:translateX(3px)}.event-row .rank{font-size:12px;color:#7595a8;font-weight:900}.event-row .date{font-weight:850}.event-row .place{color:#b2c5d0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-row .value{font-size:25px;font-weight:900;color:var(--orange);font-variant-numeric:tabular-nums}.event-row .value.cold{color:#55c9ff}.map-card{position:sticky;top:18px;height:max-content;border:1px solid var(--line);border-radius:18px;background:#081a27;overflow:hidden}.map-card #map{height:470px;background:#0a2434}.map-card p{margin:0;padding:12px 16px;color:var(--muted);font-size:12px}.loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:60px;color:var(--muted)}.loading i{width:24px;height:24px;border:3px solid #23475c;border-top-color:var(--cyan);border-radius:50%;animation:spin .8s linear infinite}.error{padding:16px;border-radius:12px;background:rgba(255,97,116,.12);color:#ff9aa7;border:1px solid rgba(255,97,116,.3)}.empty{padding:55px 20px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:16px}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#0d2637;color:#fff}.popup-value{color:var(--orange);font-size:19px;font-weight:900}.popup-link{display:inline-block;margin-top:8px;color:#4bd2ff;font-weight:800}footer{max-width:1420px;margin:auto;padding:25px 30px 40px;border-top:1px solid rgba(105,176,211,.2);display:flex;justify-content:space-between;color:#7693a5;font-size:12px}footer a{color:#9bc7dc}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1100px){form{grid-template-columns:repeat(3,1fr)}label.wide{grid-column:span 2}.results-grid{grid-template-columns:1fr}.map-card{position:relative;top:auto;order:-1}.map-card #map{height:340px}}
@media(max-width:700px){.topbar{height:auto;padding:15px 18px}.topbar nav a{display:none}.topbar nav{gap:8px}.brand-mark{width:42px;height:42px}.brand small{font-size:10px}main{padding:0 14px 50px}.hero{min-height:240px}.hero h1{font-size:52px}.hero p:not(.eyebrow){font-size:16px}.era{display:none}.search-panel,.results-section{padding:17px;border-radius:20px}.section-title{align-items:flex-start;flex-wrap:wrap}.section-title p{width:100%;margin:0;font-size:13px}form{grid-template-columns:1fr 1fr}.wide,.search-button{grid-column:span 2}.event-row{grid-template-columns:50px 1fr auto;gap:8px;padding:12px}.event-row .place{grid-column:2/4;font-size:13px}.event-row .value{grid-column:3;grid-row:1;font-size:21px}.map-card #map{height:285px}footer{padding:20px 16px;display:block}footer span{display:block;margin:7px 0}}

/* Advanced explorer */
.topbar nav .nav-plain{padding:0;background:none;color:#bdd0db;font-weight:400}
form{grid-template-columns:2fr repeat(7,1fr) 1.15fr}
.result-tools{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin:-8px 0 18px}
.result-tools button{border:1px solid var(--line);background:#0a1b29;color:#bcd0dc;border-radius:10px;padding:9px 12px;font-weight:750;cursor:pointer}
.result-tools button:hover{border-color:var(--cyan);color:#fff}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}
.kpi{padding:15px;border-radius:15px;background:linear-gradient(145deg,#102d40,#0b2232);border:1px solid var(--line)}
.kpi small{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.kpi b{display:block;margin-top:5px;font-size:23px}
.analysis{display:grid;grid-template-columns:210px 1fr;align-items:center;gap:20px;padding:17px 18px;margin-bottom:20px;background:#081b29;border:1px solid var(--line);border-radius:16px}
.analysis h3{margin:0 0 5px;font-size:15px}.analysis p{margin:0;color:var(--muted);font-size:12px}.analysis canvas{width:100%;height:150px}
.event-detail{min-height:112px;padding:14px 16px;color:var(--muted);font-size:12px}
.event-detail strong{display:block;color:#fff;font-size:17px;margin-bottom:4px}.event-detail .detail-value{color:var(--orange);font-size:25px;font-weight:900}
.event-detail a{display:inline-block;float:right;margin-top:6px;padding:9px 12px;border-radius:9px;background:var(--cyan);color:#052034;text-decoration:none;font-weight:900}
.method{padding:42px 4px 0}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.method article{padding:20px;border-top:1px solid var(--line);color:#fff}.method article p{color:var(--muted);font-size:14px;line-height:1.6}
dialog{width:min(620px,calc(100% - 28px));max-height:80vh;border:1px solid var(--line);border-radius:20px;background:#0a1e2d;color:#fff;box-shadow:0 30px 100px #000;padding:20px}
dialog::backdrop{background:rgba(0,8,14,.76);backdrop-filter:blur(5px)}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head h2{margin:0}.dialog-head button{border:0;background:none;color:#fff;font-size:30px;cursor:pointer}
.saved-item{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.saved-item small{display:block;color:var(--muted)}.saved-item button{border:1px solid var(--line);border-radius:8px;background:#102d40;color:#fff;padding:8px;cursor:pointer}
@media(max-width:1100px){form{grid-template-columns:repeat(3,1fr)}.analysis{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){form{grid-template-columns:1fr 1fr}.wide,.search-button{grid-column:span 2}.method-grid{grid-template-columns:1fr}.method{padding-top:30px}.kpis{grid-template-columns:1fr 1fr}.kpi b{font-size:18px}.analysis{padding:14px}.event-detail a{float:none;display:block;text-align:center}.topbar nav .nav-plain{display:inline-block}}
