:root{--bg: var(--tg-theme-bg-color, #0f1620);--card: var(--tg-theme-secondary-bg-color, #1b2531);--card2: rgba(255, 255, 255, .04);--text: var(--tg-theme-text-color, #f3f6fa);--hint: var(--tg-theme-hint-color, #8a98a6);--accent: var(--tg-theme-button-color, #3d8bff);--accent-text: var(--tg-theme-button-text-color, #fff);--ok: #36c46b;--warn: #efb23c;--danger: #f2564b;--line: rgba(255, 255, 255, .07);--radius: 16px;--shadow: 0 6px 22px rgba(0, 0, 0, .22)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;background:var(--bg)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,SF Pro Text,Roboto,sans-serif;color:var(--text);-webkit-font-smoothing:antialiased;font-size:15px}#app{max-width:680px;margin:0 auto;padding:10px 12px 96px}.fade{animation:fade .25s ease}@keyframes fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.app-head{display:flex;align-items:center;justify-content:space-between;padding:6px 2px 12px}.app-head h1{font-size:19px;font-weight:700;margin:0;letter-spacing:-.01em}.app-head .who{font-size:12px;color:var(--hint)}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{padding:7px 13px;border-radius:999px;background:var(--card);color:var(--hint);font-size:13px;border:1px solid transparent;cursor:pointer;transition:.15s;user-select:none}.chip.on{background:var(--accent);color:var(--accent-text)}.seg{display:flex;background:var(--card);border-radius:12px;padding:3px;gap:2px}.seg button{flex:1;border:none;background:transparent;color:var(--hint);padding:8px;border-radius:9px;font-size:13px;cursor:pointer;transition:.15s}.seg button.on{background:var(--accent);color:var(--accent-text);font-weight:600}.card{background:var(--card);border-radius:var(--radius);padding:14px;margin-bottom:12px;box-shadow:var(--shadow)}.card.tap{cursor:pointer}.card h2{font-size:12px;color:var(--hint);margin:0 0 10px;text-transform:uppercase;letter-spacing:.06em;font-weight:600}.sec-title{font-size:12px;color:var(--hint);text-transform:uppercase;letter-spacing:.06em;margin:16px 2px 8px;font-weight:600}.stat-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:12px}.stat{background:var(--card);border-radius:var(--radius);padding:13px;box-shadow:var(--shadow)}.stat .lbl{font-size:11px;color:var(--hint);text-transform:uppercase;letter-spacing:.04em}.stat .val{font-size:19px;font-weight:700;margin-top:5px;letter-spacing:-.02em;line-height:1.1}.stat .val.sm{font-size:16px}.trend{display:inline-flex;align-items:center;gap:3px;font-size:11px;margin-top:5px;padding:2px 6px;border-radius:7px;background:var(--card2)}.trend.up{color:var(--danger)}.trend.down{color:var(--ok)}.trend.flat{color:var(--hint)}.trend.good.up{color:var(--ok)}.trend.good.down{color:var(--danger)}.row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}.row:last-child{border-bottom:none}.row .grow{flex:1;min-width:0}.row .k{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row .v{font-size:14px;font-weight:600;white-space:nowrap}.row .sub{font-size:11px;color:var(--hint)}.rank{width:22px;height:22px;border-radius:7px;background:var(--card2);display:grid;place-items:center;font-size:11px;color:var(--hint);flex:none}.pbar{height:5px;border-radius:3px;background:var(--card2);overflow:hidden;margin-top:6px}.pbar>span{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,var(--accent),#6db0ff)}.chart{width:100%;height:120px;display:block}.chart .ax{fill:var(--hint);font-size:9px}.badge{font-size:10px;padding:2px 7px;border-radius:7px;background:var(--card2);color:var(--hint);white-space:nowrap}.badge.ok{background:#36c46b29;color:var(--ok)}.badge.warn{background:#efb23c29;color:var(--warn)}.badge.low{background:#f2564b29;color:var(--danger)}.badge.est{background:#ffffff0f}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none}.gauge{height:8px;border-radius:5px;background:var(--card2);overflow:hidden;margin:10px 0 6px}.gauge>span{display:block;height:100%;border-radius:5px}button.btn{background:var(--accent);color:var(--accent-text);border:none;border-radius:12px;padding:11px 15px;font-size:14px;font-weight:600;cursor:pointer}button.btn:disabled{opacity:.5}button.btn.ghost{background:var(--card2);color:var(--text);font-weight:500}button.btn.block{width:100%}button.btn.sm{padding:8px 12px;font-size:13px;border-radius:10px}.inp{background:#00000038;border:1px solid var(--line);color:var(--text);border-radius:12px;padding:11px;font-size:15px;width:100%;outline:none}.inp:focus{border-color:var(--accent)}.flex{display:flex;gap:8px;align-items:center}.between{display:flex;align-items:center;justify-content:space-between;gap:10px}.muted{color:var(--hint);font-size:13px}.tiny{font-size:11px;color:var(--hint)}.mt{margin-top:10px}.mt2{margin-top:16px}.err{color:var(--danger);font-size:13px;padding:10px}.center{text-align:center}.switch{position:relative;width:44px;height:26px;flex:none}.switch input{display:none}.switch .sl{position:absolute;inset:0;background:var(--card2);border-radius:999px;transition:.2s}.switch .sl:before{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.switch input:checked+.sl{background:var(--accent)}.switch input:checked+.sl:before{transform:translate(18px)}.skel{background:linear-gradient(90deg,var(--card) 25%,var(--card2) 37%,var(--card) 63%);background-size:400% 100%;animation:shimmer 1.3s infinite;border-radius:10px}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.tabbar{position:fixed;left:0;right:0;bottom:0;display:flex;background:var(--card);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));z-index:20}.tabbar button{flex:1;background:none;border:none;color:var(--hint);display:flex;flex-direction:column;align-items:center;gap:2px;font-size:10.5px;padding:4px 0;cursor:pointer}.tabbar button.on{color:var(--accent)}.tabbar .ic{font-size:19px;line-height:1}.sheet-bg{position:fixed;inset:0;background:#00000080;z-index:30;animation:fade .2s}.sheet{position:fixed;left:0;right:0;bottom:0;background:var(--bg);border-radius:18px 18px 0 0;padding:16px 16px calc(20px + env(safe-area-inset-bottom));z-index:31;max-width:680px;margin:0 auto;animation:up .25s ease}@keyframes up{0%{transform:translateY(100%)}to{transform:none}}.sheet h3{margin:4px 0 14px;font-size:17px}.grab{width:38px;height:4px;border-radius:3px;background:var(--card2);margin:0 auto 12px}.toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%);background:#000d;color:#fff;padding:10px 16px;border-radius:12px;font-size:13px;z-index:50;animation:fade .2s;max-width:90%}.toast.ok{background:#36c46bf2}.toast.err{background:#f2564bf2}.empty{text-align:center;color:var(--hint);padding:30px 10px;font-size:14px}
