:root{--tg-bg:#eef0f4;--tg-card:#fff;--tg-text:#111318;--tg-hint:#8a8f99;--tg-accent:#3b82f6;--tg-accentText:#fff;--stroke:#7882962e;--count:5;--app-h:100dvh;--app-top:0px;--app-bottom:0px;--u:calc(min(33vw, calc(var(--app-h) * .17)) * (1 - (var(--count) - 5) * .065))}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}html,body{overscroll-behavior:none;margin:0;overflow:hidden}body{background:var(--tg-bg);color:var(--tg-text);-webkit-font-smoothing:antialiased;font:15px/1.4 -apple-system,BlinkMacSystemFont,SF Pro Text,Inter,Segoe UI,Roboto,sans-serif}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}h1{letter-spacing:-.02em;margin:0}.app{height:var(--app-h);padding:calc(max(20px, env(safe-area-inset-top,0px)) + var(--app-top,0px)) 16px calc(16px + max(env(safe-area-inset-bottom,0px), var(--app-bottom,0px)));background:linear-gradient(168deg, var(--g1,#6a7382) 0%, var(--g2,#c2c8d0) 58%, var(--tg-bg) 100%);flex-direction:column;transition:background .6s;display:flex;overflow:hidden}html[data-scheme=dark] .app{background:linear-gradient(168deg, color-mix(in srgb, var(--g1) 70%, #05070b) 0%, color-mix(in srgb, var(--g2) 30%, #05070b) 58%, var(--tg-bg) 100%)}.head{text-align:center;color:#fff;text-shadow:0 2px 18px #00000038;flex:none}.temp{letter-spacing:-.05em;font-size:clamp(56px,16dvh,104px);font-weight:300;line-height:.95}.city{letter-spacing:.01em;color:inherit;opacity:.92;margin-top:6px;padding:4px 10px;font-size:17px;font-weight:500}.city:active{opacity:.6}.stickers{flex-wrap:wrap;flex:auto;place-content:center;align-items:center;gap:clamp(0px,.6vw,6px);min-height:0;padding:8px 0 0;display:flex;overflow:hidden}.sticker{width:calc(var(--u) * var(--scale));height:calc(var(--u) * var(--scale));transform:rotate(var(--tilt));filter:drop-shadow(0 6px 14px #0e142038);animation:.32s cubic-bezier(.2,1.3,.4,1) both pop;animation-delay:var(--delay);display:block}@keyframes pop{0%{opacity:0;transform:rotate(var(--tilt)) scale(.7)}to{opacity:1;transform:rotate(var(--tilt)) scale(1)}}.stickers:active .sticker{transform:rotate(var(--tilt)) scale(.96);transition:transform .15s}.intro{text-align:center;color:#fff;text-shadow:0 2px 18px #0003;flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:10px;display:flex}.intro-mark{font-size:54px}.intro h1{max-width:18ch;margin-bottom:12px;padding:0 20px;font-size:26px}.error{color:#ffdcd8;max-width:30ch;margin:0 0 6px;font-size:14px}.loader{opacity:.8;background:#fff;border-radius:3px;width:40px;height:3px;animation:1s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.25;transform:scaleX(.5)}50%{opacity:1;transform:scaleX(1)}}.btn{border-radius:14px;min-width:240px;padding:14px 26px;font-size:16px;font-weight:600}.btn:active{transform:scale(.98)}.btn.primary{color:#1b1f27;background:#fff;box-shadow:0 8px 24px #0a0f192e}.btn.plain{color:#fff;opacity:.85;font-weight:500}.sheet-backdrop{z-index:20;background:#0a0e1673;justify-content:center;align-items:flex-end;animation:.2s fade;display:flex;position:fixed;inset:0}@keyframes fade{0%{opacity:0}to{opacity:1}}.sheet{background:var(--tg-card);width:100%;max-width:520px;color:var(--tg-text);padding:10px 16px calc(20px + max(env(safe-area-inset-bottom,0px), var(--app-bottom,0px)));max-height:calc(var(--app-h) * .82);border-radius:22px 22px 0 0;gap:10px;animation:.25s cubic-bezier(.2,.8,.3,1) up;display:grid}@keyframes up{0%{transform:translateY(30px)}to{transform:none}}.sheet h3{margin:0;font-size:18px}.sheet-grip{background:var(--tg-hint);opacity:.35;border-radius:3px;width:38px;height:4px;margin:0 auto 4px}.input{border:1px solid var(--stroke);background:color-mix(in srgb, var(--tg-hint) 8%, transparent);width:100%;color:var(--tg-text);border-radius:12px;outline:none;padding:12px 14px;font-size:15px}.input:focus{border-color:var(--tg-accent)}.btn.ghost.wide{background:color-mix(in srgb, var(--tg-hint) 14%, transparent);width:100%;min-width:0;color:var(--tg-text);padding:12px;font-size:15px}.city-list{gap:2px;display:grid;overflow-y:auto}.city-list .city{text-align:left;color:var(--tg-text);opacity:1;text-shadow:none;border-radius:12px;justify-content:space-between;align-items:baseline;gap:10px;margin:0;padding:12px 10px;font-size:15px;display:flex}.city-list .city:active{background:color-mix(in srgb, var(--tg-hint) 12%, transparent)}.muted{color:var(--tg-hint)}.small{font-size:12.5px}
