@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/manrope-cyrillic-ext.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/manrope-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/manrope-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f2f4f7;--card:#fff;--card2:#f4f6f9;--input:#eef1f5;--line:#e3e7ed;--line2:#d6dce4;--text:#111418;--muted:#5f6b7a;--accent:#ff8a3d;--accent-text:#1a0f06;--accent-glow:#ff8a3d47;--ok:#16a34a;--blue:#0891b2;--bad:#dc2626;--warn:#d97706;--nav:#f2f4f7f7;--shadow:0 1px 3px #10182812;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--ease:cubic-bezier(.2,.8,.2,1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0e1116;--card:#161b22;--card2:#1c222b;--input:#1c222b;--line:#242b35;--line2:#2a3340;--text:#f2f4f7;--muted:#8b95a5;--ok:#35d399;--blue:#4cc9f0;--bad:#ff5c5c;--warn:#ffc857;--nav:#0e1116f7;--shadow:none;--seg:#2a3340;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--seg:#2a3340;--bg:#0e1116;--card:#161b22;--card2:#1c222b;--input:#1c222b;--line:#242b35;--line2:#2a3340;--text:#f2f4f7;--muted:#8b95a5;--ok:#35d399;--blue:#4cc9f0;--bad:#ff5c5c;--warn:#ffc857;--nav:#0e1116f7;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@property --p{syntax:"<number>";inherits:false;initial-value:0}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);color:var(--text);font-feature-settings:"tnum";overscroll-behavior-y:none;margin:0;font:16px/1.4 Manrope,-apple-system,SF Pro Text,system-ui,sans-serif}body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:pan-x pan-y}input,textarea{-webkit-user-select:text;user-select:text}a{color:var(--blue);text-decoration:none}button{font-family:inherit}#app{flex-direction:column;min-height:100dvh;display:flex}.page{padding:calc(var(--sat) + 12px) 16px calc(var(--sab) + 92px);flex:1;width:100%;max-width:560px;margin:0 auto}.page.center{padding-bottom:calc(var(--sab) + 24px);flex-direction:column;justify-content:center;display:flex}h1{letter-spacing:-.3px;margin:8px 0 16px;font-size:24px;font-weight:800}h2{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:22px 0 8px 4px;font-size:12px;font-weight:700}.topbar{align-items:center;gap:10px;min-height:44px;margin-bottom:14px;display:flex}.topbar h1{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;margin:0;font-size:20px;overflow:hidden}.topbar .title{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.topbar .title h1{font-size:18px}.topbar .sub{color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.back,.iconbtn{background:var(--card);width:44px;height:44px;color:var(--text);cursor:pointer;box-shadow:var(--shadow);transition:transform .15s var(--ease), background-color .2s;border:0;border-radius:14px;flex:none;justify-content:center;align-items:center;display:inline-flex}.back:active,.iconbtn:active{transform:scale(.92)}.back svg,.iconbtn svg{width:22px;height:22px}.muted{color:var(--muted)}.small{font-size:13px}.grow{flex:1;min-width:0}.card{background:var(--card);box-shadow:var(--shadow);animation:rise .35s var(--ease) both;animation-delay:calc(var(--i,0) * 35ms);border-radius:20px;margin-bottom:12px;padding:14px 16px}.card.flat{animation:none}.row{align-items:center;gap:12px;display:flex}.row>.grow{flex:1;min-width:0}.list .card{padding:0;overflow:hidden}.list .item{border-bottom:1px solid var(--line);color:inherit;align-items:center;gap:12px;padding:12px 16px;transition:background-color .15s;display:flex}.list .item:active{background:var(--card2)}.list .item:last-child{border-bottom:0}.kv{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:10px 0;font-size:14px;display:flex}.kv:last-child{border-bottom:0}.kv .ico{width:20px;height:20px;color:var(--muted);flex:none}.kv .k{min-width:0;color:var(--muted);flex:1;font-weight:600}.kv .v{text-align:right;font-size:16px;font-weight:800}.kv .v.bad{color:var(--bad)}.btn{background:var(--input);width:100%;color:var(--text);cursor:pointer;transition:transform .15s var(--ease), opacity .2s, background-color .2s, box-shadow .3s;border:0;border-radius:18px;justify-content:center;align-items:center;gap:8px;padding:14px 16px;font-size:16px;font-weight:700;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:default;transform:none}.btn.primary{background:var(--accent);color:var(--accent-text);box-shadow:0 6px 18px var(--accent-glow)}.btn.danger{background:var(--bad);color:#fff;box-shadow:0 6px 18px color-mix(in srgb, var(--bad) 28%, transparent)}.btn.outline{border:1.5px solid var(--line2);color:var(--blue);background:0 0}.btn.ghost{color:var(--blue);background:0 0;font-weight:600}.btn.sm{border-radius:12px;width:auto;padding:9px 14px;font-size:14px}.btn.big{border-radius:20px;height:64px;padding:0 20px;font-size:18px;font-weight:800}.btn.mid{height:52px;padding:0 16px;font-size:15px}.btn svg{flex:none;width:22px;height:22px}.btn.big svg{width:24px;height:24px}.field{margin-bottom:12px}.field label{color:var(--muted);margin:0 0 4px 4px;font-size:13px;font-weight:600;display:block}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=time],input[type=number],select{background:var(--input);width:100%;color:var(--text);appearance:none;border:1.5px solid #0000;border-radius:14px;outline:none;padding:13px 14px;font-family:inherit;font-size:17px;transition:border-color .2s,box-shadow .2s}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-glow)}.err{color:var(--bad);margin:6px 4px;font-size:14px}.switch{flex:none;width:50px;height:30px;position:relative}.switch input{opacity:0;width:0;height:0;position:absolute}.switch span{background:var(--line2);border-radius:30px;transition:background-color .25s;position:absolute;inset:0}.switch span:before{content:"";width:26px;height:26px;transition:transform .25s var(--ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0000004d}.switch input:checked+span{background:var(--ok)}.switch input:checked+span:before{transform:translate(20px)}input[type=range]{width:100%;accent-color:var(--accent);height:32px}.seg{background:var(--input);border-radius:14px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;display:grid;position:relative}.seg button{z-index:1;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:11px;font-size:14px;font-weight:700;transition:color .2s,transform .15s;position:relative}.seg button:active{transform:scale(.94)}.seg button.on{color:var(--text)}.seg .pill{width:calc((100% - 8px - (var(--n) - 1) * 4px) / var(--n));background:var(--seg,var(--card));transform:translateX(calc(var(--k) * (100% + 4px)));transition:transform .3s var(--ease);border-radius:11px;position:absolute;top:4px;bottom:4px;left:4px;box-shadow:0 2px 8px #0000002e}.back{font-size:26px}.nav{background:var(--nav);border-top:1px solid var(--line);padding:6px 0 calc(var(--sab) + 6px);z-index:20;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.nav a{color:var(--muted);border-radius:14px;flex-direction:column;align-items:center;gap:3px;min-width:76px;padding:6px 18px;font-size:11px;font-weight:700;transition:color .2s,transform .15s;display:flex}.nav a:active{transform:scale(.92)}.nav a.router-link-active{color:var(--accent)}.nav a.router-link-active svg{transform:translateY(-2px)}.nav svg{width:24px;height:24px;transition:transform .25s var(--ease)}body.kbd .nav{display:none}.bars{align-items:flex-end;gap:2px;height:12px;display:inline-flex}.bars i{background:var(--line2);transform-origin:bottom;width:3px;animation:barUp .5s var(--ease) both;border-radius:1px;display:block}.bars i:first-child{height:4px}.bars i:nth-child(2){height:6px;animation-delay:50ms}.bars i:nth-child(3){height:8px;animation-delay:.1s}.bars i:nth-child(4){height:10px;animation-delay:.15s}.bars i:nth-child(5){height:12px;animation-delay:.2s}.bars i.on{background:var(--ok)}.bars.weak i.on{background:var(--warn)}.bars.none i.on{background:var(--bad)}.bars.lg{gap:4px;height:24px}.bars.lg i{width:6px}.bars.lg i:first-child{height:8px}.bars.lg i:nth-child(2){height:12px}.bars.lg i:nth-child(3){height:16px}.bars.lg i:nth-child(4){height:20px}.bars.lg i:nth-child(5){height:24px}.progress{background:var(--line);border-radius:4px;height:8px;margin:8px 0 4px;overflow:hidden}.progress>div{background:var(--accent);border-radius:4px;height:100%;transition:width .4s}.progress.err>div{background:var(--bad)}.toast{left:50%;bottom:calc(var(--sab) + 92px);background:var(--text);color:var(--bg);z-index:50;border-radius:14px;max-width:90%;padding:11px 16px;font-size:14px;font-weight:600;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #0000004d}.dot{background:var(--muted);border-radius:50%;flex:none;width:8px;height:8px;position:relative}.dot.on{background:var(--ok)}.dot.on:after{content:"";border:2px solid var(--ok);opacity:.5;border-radius:50%;animation:2s ease-out infinite pulse;position:absolute;inset:-3px}.badge{background:var(--input);color:var(--muted);border-radius:9px;padding:3px 9px;font-size:12px;font-weight:700}.badge.ok{background:color-mix(in srgb, var(--ok) 16%, transparent);color:var(--ok)}.badge.bad{background:color-mix(in srgb, var(--bad) 16%, transparent);color:var(--bad)}.badge.warn{background:color-mix(in srgb, var(--warn) 22%, transparent);color:var(--warn)}.stats{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px;display:grid}.stat{background:var(--card);box-shadow:var(--shadow);text-align:left;color:var(--text);animation:rise .35s var(--ease) both;animation-delay:calc(var(--i,0) * 35ms);transition:transform .15s var(--ease);border:0;border-radius:18px;flex-direction:column;gap:8px;padding:14px 14px 12px;font-family:inherit;display:flex}button.stat{cursor:pointer}button.stat:active{transform:scale(.96)}.stat svg{width:20px;height:20px}.stat b{letter-spacing:-.5px;font-size:20px;font-weight:800;line-height:1.1;display:block}.stat b small{color:var(--muted);letter-spacing:0;margin-left:3px;font-size:13px;font-weight:700}.stat span{color:var(--muted);font-size:11px;font-weight:600}.hero{border-radius:24px;flex-direction:column;align-items:center;gap:14px;padding:22px 20px 18px;display:flex}.ring{--p:0;background:conic-gradient(var(--ring,var(--line2)) calc(var(--p) * 1%), var(--line2) 0);width:196px;height:196px;transition:--p .6s var(--ease), background .4s;border-radius:50%;padding:10px;position:relative}.ring:before{content:"";opacity:0;box-shadow:0 0 40px var(--accent-glow);border-radius:50%;transition:opacity .4s;position:absolute;inset:-6px}.ring.on{--ring:var(--accent);--p:var(--prog,100)}.ring.on:before{opacity:1;animation:2.4s ease-in-out infinite glow}.ring.pump{--ring:var(--blue);--p:100}.ring.pump:before{opacity:1;box-shadow:0 0 36px color-mix(in srgb, var(--blue) 35%, transparent);animation:1.6s ease-in-out infinite glow}.ring.purge{--ring:var(--warn);--p:100}.ring.purge:before{opacity:1;box-shadow:0 0 36px color-mix(in srgb, var(--warn) 40%, transparent);animation:2s ease-in-out infinite glow}.ring.err{--ring:var(--bad);--p:100}.ring .in{z-index:1;background:var(--card);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:100%;height:100%;display:flex;position:relative}.ring .temp{letter-spacing:-2px;font-size:56px;font-weight:800;line-height:1}.ring .lbl{color:var(--muted);letter-spacing:1.2px;text-transform:uppercase;font-size:12px;font-weight:700}.hero .phase{letter-spacing:-.3px;text-align:center;font-size:22px;font-weight:800}.hero .sub{color:var(--muted);text-align:center;min-height:18px;font-size:13px;font-weight:600}.tick{animation:tick .35s var(--ease) both;display:inline-block}.flame.on{transform-origin:50% 90%;animation:1.2s ease-in-out infinite flicker}.drop.on{animation:1.4s ease-in-out infinite bob}.sheet-bg{z-index:40;background:#00000080;position:fixed;inset:0}.sheet{z-index:41;background:var(--card);padding:12px 16px calc(var(--sab) + 16px);border-radius:24px 24px 0 0;max-width:560px;margin:0 auto;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 40px #0000004d}.sheet .grip{background:var(--line2);border-radius:3px;width:40px;height:5px;margin:0 auto 14px}.sheet-enter-active,.sheet-leave-active{transition:opacity .25s}.sheet-enter-active .sheet,.sheet-leave-active .sheet{transition:transform .3s var(--ease)}.sheet-enter-from,.sheet-leave-to{opacity:0}.sheet-enter-from .sheet,.sheet-leave-to .sheet{transform:translateY(100%)}.skel{background:linear-gradient(90deg, var(--input) 25%, var(--line) 50%, var(--input) 75%);color:#0000;background-size:200% 100%;border-radius:8px;animation:1.4s linear infinite shimmer}.days{gap:6px;display:flex}.days button{background:var(--input);color:var(--muted);border:0;border-radius:10px;flex:1;padding:9px 0;font-size:13px;font-weight:700;transition:background-color .2s,color .2s,transform .15s}.days button:active{transform:scale(.92)}.days button.on{background:var(--accent);color:var(--accent-text)}.code{letter-spacing:4px;text-align:center;background:var(--input);-webkit-user-select:text;user-select:text;border-radius:14px;padding:12px;font-family:ui-monospace,Menlo,monospace;font-size:28px}.spinner{border:3px solid var(--line2);border-top-color:var(--accent);border-radius:50%;width:22px;height:22px;margin:20px auto;animation:.8s linear infinite spin}.logo{letter-spacing:-.5px;text-align:center;margin-bottom:4px;font-size:28px;font-weight:800}.logo em{color:var(--accent);font-style:normal}.fade-enter-active{transition:opacity .15s}.fade-leave-active{transition:opacity 80ms}.fade-enter-from,.fade-leave-to{opacity:0}.pop-enter-active{transition:opacity .25s, transform .3s var(--ease)}.pop-leave-active{transition:opacity .15s,transform .15s}.pop-enter-from,.pop-leave-to{opacity:0;transform:translate(-50%,10px)scale(.98)}@keyframes rise{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:none}}@keyframes tick{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pulse{0%{opacity:.7;transform:scale(.6)}to{opacity:0;transform:scale(2.2)}}@keyframes glow{0%,to{opacity:.55}50%{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes flicker{0%,to{transform:scale(1)rotate(-2deg)}30%{transform:scale(1.08)rotate(2deg)}60%{transform:scale(.96)rotate(-1deg)}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes barUp{0%{opacity:.3;transform:scaleY(.2)}to{opacity:1;transform:none}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
