*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#172b35;color:#f2f1e8;font-family:Arial,sans-serif}button,a,input{-webkit-tap-highlight-color:transparent}button,a{color:inherit}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,canvas:focus-visible{outline:2px solid #f8dca3;outline-offset:5px}#world{position:fixed;inset:0;width:100%;height:100%;touch-action:none;outline:none}header{position:absolute;top:32px;left:36px;right:36px;display:flex;align-items:start;justify-content:space-between;pointer-events:none}header a{pointer-events:auto;text-decoration:none}.brand{letter-spacing:6px;font-size:19px}.brand span{display:block;letter-spacing:2.2px;font-size:8px;margin-top:10px}.back{border:1px solid #ffffff40;border-radius:30px;padding:12px 18px;font-size:11px;background:#172b3538;backdrop-filter:blur(10px)}.intro{position:absolute;top:132px;left:38px;pointer-events:none;text-shadow:0 2px 22px #0005}.eyebrow{font-size:9px;letter-spacing:2px;color:#e8d3af}h1{font:400 clamp(36px,4.5vw,66px)/1.04 Georgia,serif;letter-spacing:-1.5px;margin:18px 0}p{font-size:12px;line-height:1.8;color:#e3e7e7}.map-label{position:absolute;pointer-events:none;font-size:10px;white-space:nowrap;color:white;text-shadow:0 1px 4px #000;padding:7px 10px;background:#16242b98;border:1px solid #ffffff2c;border-radius:5px}.map-label span{display:inline-block;width:6px;height:6px;border-radius:100%;background:#eda46c;margin-right:7px}footer{position:absolute;bottom:18px;left:36px;right:36px;max-width:980px;margin:auto}.hint{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.4px;margin:0 6px 14px;text-shadow:0 1px 6px #000}.controls{display:flex;align-items:center;gap:28px;padding:22px 24px;border:1px solid #ffffff29;border-radius:16px;background:#17252dde;backdrop-filter:blur(18px);box-shadow:0 6px 25px #0001}.views{display:flex;gap:4px;flex:1}.views button,#surface{background:none;border:1px solid transparent;padding:12px 11px;border-radius:8px;white-space:nowrap;font-size:11px;color:#cdd5d9}.views button[aria-pressed=true]{background:#e3c99b;color:#283033}.views button:hover,#surface:hover{border-color:#ffffff55}.light{flex:1;min-width:120px;max-width:230px}.light label{font-size:11px;display:flex;justify-content:space-between;align-items:center}output{color:#d6bd93;font-variant-numeric:tabular-nums}input{width:100%;height:3px;accent-color:#e5c89b;cursor:pointer;margin:13px 0}.ticks{display:flex;justify-content:space-between;font-size:8px;color:#aab8bc}#surface{border-color:#ffffff30;font-size:10px}.credits{display:flex;gap:16px;justify-content:space-between;font-size:9px;color:#d1d9da;margin:14px 5px 0;text-shadow:0 1px 4px #000}#sources{background:none;border:0;font-size:9px;padding:0;white-space:nowrap}#loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#17252de6;padding:20px 28px;border-radius:12px;font:20px Georgia,serif}#error{position:absolute;left:15%;right:15%;top:40%;padding:24px;background:#17252d;border:1px solid #e8ba94;border-radius:12px}dialog{max-width:560px;max-height:85vh;overflow:auto;border:1px solid #ffffff40;border-radius:18px;padding:35px;background:#182a33;color:#edf0e9;box-shadow:0 20px 100px #0008}dialog::backdrop{background:#091b2599;backdrop-filter:blur(8px)}dialog h2{font:28px Georgia,serif}dialog h3{font:19px Georgia,serif}dialog p{font-size:12px}#close-data{position:absolute;right:14px;top:10px;border:0;background:none;font-size:28px}[hidden]{display:none!important}@media(max-width:800px){header{left:23px;right:23px;top:23px}.intro{left:25px;top:113px}h1{font-size:40px}.controls{gap:12px;flex-wrap:wrap;padding:16px}.views{flex-basis:100%;justify-content:center}.views button{flex:1}.light{max-width:none}.credits{font-size:8px}.credits span{max-width:70%}footer{left:20px;right:20px;bottom:15px}.back{padding:10px 12px;font-size:10px}.intro p{font-size:11px}}@media(max-height:620px){.intro{top:96px}h1{font-size:30px;margin:10px 0}.intro p{display:none}.controls{padding:10px 14px}.hint{margin-bottom:7px}}

.shade{position:fixed;inset:0;pointer-events:none;background:linear-gradient(115deg,#071b2b70,transparent 43%),linear-gradient(0deg,#091a2828,transparent 35%)}
