
:root{--dark:#243951;--muted:#8292a5;--accent:#4d60d5;--pale:#edf3fc;--shadow:0 12px 40px rgba(36,57,81,.15);--radius:22px}
*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--dark);background:#e7eef8}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid #8c9aff}
#map{position:absolute;inset:0;background:#e5ebf4}.leaflet-container{font-family:inherit}.leaflet-control-attribution{font-size:10px!important;background:#ffffffce!important;border-radius:8px 0 0 0;max-width:80vw;padding:2px 5px!important}.leaflet-control-container .leaflet-bottom{bottom:0!important}.leaflet-top.leaflet-left{display:none}
#rainCanvas{position:absolute;inset:0;z-index:430;pointer-events:none;opacity:.87;mix-blend-mode:multiply}
.top{position:absolute;z-index:1000;top:max(14px,env(safe-area-inset-top));left:14px;right:14px;display:flex;gap:10px;align-items:flex-start;pointer-events:none}
.glass{background:rgba(255,255,255,.95);border:1px solid rgba(255,255,255,.96);box-shadow:var(--shadow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.searchWrap{border-radius:23px;flex:1;min-width:0;pointer-events:auto;overflow:hidden}.searchHead{height:59px;display:flex;align-items:center;gap:10px;padding:0 14px}.logo{width:35px;height:35px;border-radius:12px;background:linear-gradient(140deg,#b9e5ff,#d5d8ff);display:grid;place-items:center;flex-shrink:0}.logo svg{width:22px}.title{font-size:17px;font-weight:800;letter-spacing:-.65px;line-height:1.25}.subtitle{font-size:11px;color:var(--muted);margin-top:3px}.cityChoose{border:0;background:transparent;display:flex;align-items:center;gap:3px;padding:5px 0;color:inherit;text-align:left;flex:1;min-width:0}.cityChoose .txt{flex:1;min-width:0}.chev{font-size:19px;color:#8294ac}.iconBtn{border:0;color:var(--dark);width:52px;height:58px;border-radius:21px;display:grid;place-items:center;pointer-events:auto;flex-shrink:0}.iconBtn svg,.mapBtn svg,.circle svg{width:22px;height:22px;stroke:currentColor;stroke-width:2.2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.dropdown{display:none;padding:4px 10px 12px}.dropdown.open{display:block}.dropdown button{display:block;width:100%;border:0;border-radius:12px;background:transparent;text-align:left;padding:10px 12px;color:var(--dark)}.dropdown button:active{background:#edf1ff}
.leftLabel{position:absolute;z-index:650;top:95px;left:15px;background:#ffffffec;border-radius:14px;padding:9px 12px;box-shadow:0 6px 18px #314b6821;pointer-events:none}.leftLabel .line1{font-size:12px;font-weight:750}.leftLabel .line2{font-size:11px;color:#8392a4;margin-top:4px}.live{display:inline-block;width:7px;height:7px;border-radius:50%;background:#64be7e;margin-right:5px}
.mapTools{position:absolute;right:15px;bottom:305px;z-index:800;display:grid;gap:8px}.mapBtn{width:49px;height:49px;border-radius:17px;border:0;display:grid;place-items:center;color:var(--dark)}
.bottom{position:absolute;z-index:900;left:11px;right:11px;bottom:calc(13px + env(safe-area-inset-bottom));border-radius:28px;padding:15px 15px 16px;max-width:650px;margin:auto;pointer-events:auto}
.grabber{width:37px;height:4px;border-radius:5px;background:#d5dfec;margin:-5px auto 12px}.status{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.status strong{font-size:14px}.status .badge{color:#3d9365;background:#e9f8ef;border-radius:10px;padding:5px 9px;font-size:11px;font-weight:700}.status .badge.model{color:#5360ca;background:#eef0ff}.status small{color:var(--muted);font-size:12px;display:block;margin-top:3px}
.actions{display:flex;justify-content:center;align-items:center;gap:8px;margin:7px 0 13px}.circle{border:0;width:42px;height:42px;border-radius:15px;background:#f0f4fa;color:#344963;display:grid;place-items:center}.circle.primary{width:51px;height:51px;border-radius:18px;color:white;background:var(--accent);box-shadow:0 7px 18px #4d60d54a}.circle.primary svg{fill:white;stroke:white}.speeds{display:flex;align-items:center;gap:2px;border-left:1px solid #e4eaf2;padding-left:12px;margin-left:9px}.speed{border:0;background:transparent;color:#8a9bae;padding:10px 9px;font-size:13px;font-weight:800;border-radius:12px}.speed.sel{color:var(--accent);background:#e8ecff}
#slider{width:100%;height:22px;margin:0;appearance:none;background:transparent;touch-action:none;cursor:pointer}#slider::-webkit-slider-runnable-track{height:6px;background:linear-gradient(to right,var(--accent) var(--progress,0%),#dfe6f2 var(--progress,0%));border-radius:10px}#slider::-moz-range-track{height:6px;background:#dfe6f2;border-radius:10px}#slider::-webkit-slider-thumb{appearance:none;width:20px;height:20px;background:var(--accent);border:3px solid white;border-radius:50%;margin-top:-7px;box-shadow:0 2px 8px #384bc755}#slider::-moz-range-thumb{width:16px;height:16px;background:var(--accent);border:3px solid white;border-radius:50%;box-shadow:0 2px 8px #384bc755}.ticks{display:flex;justify-content:space-between;font-size:11px;color:#8290a4;font-weight:650;margin:2px 0 7px}.note{color:#8996a9;font-size:10.5px;display:flex;align-items:center;justify-content:space-between;gap:4px}.note strong{color:#5265c7;font-weight:700}.mini{display:flex;gap:8px;margin-top:13px}.mini>div{flex:1;min-width:0;background:#f3f6fc;border-radius:15px;padding:11px 12px}.mini .caption{color:#8997a8;font-size:10px}.mini .value{font-size:16px;font-weight:800;margin-top:3px}.timeBubble{color:var(--accent);font-weight:800;font-size:17px}
.loading{position:absolute;z-index:700;top:48%;left:50%;transform:translate(-50%,-50%);background:#fffffff0;box-shadow:var(--shadow);padding:12px 15px;border-radius:12px;font-size:13px;max-width:80vw;text-align:center}.hidden{display:none!important}
@media(min-width:750px){.top{max-width:500px;left:24px;right:auto;top:22px;width:calc(100% - 48px)}.leftLabel{left:24px;top:105px}.bottom{left:24px;right:auto;width:400px;bottom:22px}.mapTools{right:24px;bottom:34px}.bottom .mini{display:flex}}

