:root{--tg-theme-bg-color: #ffffff;--tg-theme-secondary-bg-color: #efeff4;--tg-theme-section-bg-color: #ffffff;--tg-theme-text-color: #000000;--tg-theme-hint-color: #8e8e93;--tg-theme-section-header-text-color: #6d6d72;--tg-theme-link-color: #2481cc;--tg-theme-button-color: #2481cc;--tg-theme-button-text-color: #ffffff;--tg-theme-section-separator-color: #d8d8dc;--tg-theme-destructive-text-color: #ff3b30;--bg-accent: #8b5cf6;--bg-accent-soft: #ede7fe;--bg-success: #2fb350;--bg-warning: #e08a00}@media(prefers-color-scheme:dark){:root{--tg-theme-bg-color: #1c1c1d;--tg-theme-secondary-bg-color: #000000;--tg-theme-section-bg-color: #1c1c1d;--tg-theme-text-color: #ffffff;--tg-theme-hint-color: #98989e;--tg-theme-section-header-text-color: #8d8e93;--tg-theme-link-color: #3e88f7;--tg-theme-button-color: #3e88f7;--tg-theme-section-separator-color: #38383a;--tg-theme-destructive-text-color: #eb5545}}:root[data-scheme=dark]{--bg-accent: #a98bff;--bg-accent-soft: #2e2550;--bg-success: #32d74b;--bg-warning: #ffb340}*{box-sizing:border-box}body{margin:0;background:var(--tg-theme-secondary-bg-color);color:var(--tg-theme-text-color);font:17px/1.3 -apple-system,SF Pro Text,Roboto,system-ui,sans-serif;-webkit-font-smoothing:antialiased}#root{max-width:480px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column}button{font:inherit;color:inherit;border:0;background:none;padding:0;cursor:pointer}input{font:inherit;color:inherit;border:0;outline:0;background:none;min-width:0}.page{flex:1;padding-bottom:24px;display:flex;flex-direction:column}.page:has(>.mb-wrap){padding-bottom:0}.h1{font-size:28px;font-weight:700;line-height:1.15;text-wrap:pretty}.pad{padding:16px 16px 0}.hint{color:var(--tg-theme-hint-color)}.link{color:var(--tg-theme-link-color);cursor:pointer}.small{font-size:13px}.sub{font-size:15px}.err-text{color:var(--tg-theme-destructive-text-color)}.caps{padding:20px 32px 6px;font-size:13px;color:var(--tg-theme-section-header-text-color);text-transform:uppercase;display:flex;justify-content:space-between}.caps .link{text-transform:none}.note{padding:8px 32px 0;font-size:13px;color:var(--tg-theme-hint-color)}.card{margin:0 16px;background:var(--tg-theme-section-bg-color);border-radius:12px;overflow:hidden}.card+.card{margin-top:12px}.row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--tg-theme-section-separator-color)}.row:last-child{border-bottom:0}.row.between{justify-content:space-between}.dots{display:flex;justify-content:center;gap:6px;padding-bottom:8px}.dots span{width:6px;height:6px;border-radius:3px;background:var(--tg-theme-section-separator-color)}.dots span.on{width:20px;background:var(--tg-theme-button-color)}.icon-tile{width:40px;height:40px;border-radius:12px;background:var(--bg-accent-soft);color:var(--bg-accent);display:flex;align-items:center;justify-content:center;flex:none}.circle{width:28px;height:28px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;flex:none;font-weight:700}.ok-bg{background:var(--bg-success)}.warn-bg{background:var(--bg-warning)}.err-bg{background:var(--tg-theme-destructive-text-color)}.chip{padding:2px 8px;border-radius:999px;font-size:13px;font-weight:500;white-space:nowrap;flex:none}.chip.ok{background:color-mix(in srgb,var(--bg-success) 15%,transparent);color:var(--bg-success)}.chip.warn{background:color-mix(in srgb,var(--bg-warning) 18%,transparent);color:var(--bg-warning)}.chip.err{background:color-mix(in srgb,var(--tg-theme-destructive-text-color) 15%,transparent);color:var(--tg-theme-destructive-text-color)}.pill{padding:4px 10px;border-radius:999px;background:var(--tg-theme-section-bg-color);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}.field{margin:0 16px;background:var(--tg-theme-section-bg-color);border-radius:12px;display:flex;align-items:center;gap:8px;padding:0 8px 0 16px;height:48px}.field.bad{box-shadow:inset 0 0 0 1.5px var(--tg-theme-destructive-text-color)}.field input{flex:1;font-size:17px}.field input.mono{font-family:ui-monospace,monospace}.soft-btn{display:flex;align-items:center;justify-content:center;gap:4px;padding:6px 10px;border-radius:8px;background:var(--tg-theme-secondary-bg-color);color:var(--tg-theme-link-color);font-size:15px;font-weight:500}.btn{padding:12px 24px;border-radius:12px;background:var(--tg-theme-button-color);color:var(--tg-theme-button-text-color);font-size:17px;font-weight:600}.btn.ghost{background:var(--tg-theme-section-bg-color);color:var(--tg-theme-link-color)}.banner{margin:12px 16px 0;padding:12px 14px;border-radius:12px;display:flex;align-items:center;gap:12px;font-size:15px}.banner.accent{background:var(--bg-accent-soft)}.banner.success{background:color-mix(in srgb,var(--bg-success) 12%,var(--tg-theme-section-bg-color))}.search{margin:12px 16px 0;height:36px;border-radius:10px;background:var(--tg-theme-section-bg-color);display:flex;align-items:center;gap:6px;padding:0 10px;color:var(--tg-theme-hint-color)}.search input{flex:1;font-size:17px;color:var(--tg-theme-text-color)}.ch-row{display:flex;align-items:center;gap:12px;padding-left:16px;background:var(--tg-theme-section-bg-color);cursor:pointer;-webkit-user-select:none;user-select:none}.avatar{width:44px;height:44px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:17px;flex:none}.ch-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;padding:10px 16px 10px 0;border-bottom:1px solid var(--tg-theme-section-separator-color)}.ch-row:last-child .ch-body{border-bottom:0}.ch-line{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:18px}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.level{display:flex;align-items:center;gap:6px;flex:none;font-size:13px}.level b{color:var(--bg-accent)}.bar{width:40px;height:4px;border-radius:2px;background:var(--bg-accent-soft);overflow:hidden}.bar>span{display:block;height:100%;background:var(--bg-accent)}.problem{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--tg-theme-destructive-text-color);flex:none}.skel{background:var(--tg-theme-section-bg-color);border-radius:12px;animation:pulse 1.4s ease-in-out infinite}.skel-in{background:var(--tg-theme-secondary-bg-color)}@keyframes pulse{50%{opacity:.55}}.empty{padding:64px 32px 0;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.empty .title{font-size:20px;font-weight:600;padding-top:6px}.empty-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center}.tabs{position:sticky;bottom:0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;background:var(--tg-theme-bg-color);border-top:1px solid var(--tg-theme-section-separator-color);padding:6px 4px calc(12px + env(safe-area-inset-bottom))}.tab{display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--tg-theme-hint-color);font-size:11px;font-weight:500}.tab.on{color:var(--tg-theme-button-color)}.sheet-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;flex-direction:column;justify-content:flex-end;z-index:10}.sheet{max-width:480px;width:100%;margin:0 auto;background:var(--tg-theme-secondary-bg-color);border-radius:14px 14px 0 0;padding:8px 0 calc(20px + env(safe-area-inset-bottom));max-height:88%;overflow-y:auto}.grabber{width:36px;height:5px;border-radius:3px;background:var(--tg-theme-section-separator-color);margin:0 auto 8px}.stats3{display:grid;grid-template-columns:repeat(3,1fr);padding:12px 0;text-align:center}.stats3 b{display:block;font-size:20px}.switch{width:51px;height:31px;border-radius:16px;position:relative;flex:none;transition:background .2s}.switch>span{position:absolute;top:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0003;transition:left .2s}.mb-wrap{position:sticky;bottom:0;margin-top:auto;background:var(--tg-theme-bg-color);padding:8px 16px 14px}.mb{width:100%;height:50px;border-radius:12px;background:var(--tg-theme-button-color);color:var(--tg-theme-button-text-color);font-size:17px;font-weight:600;display:flex;align-items:center;justify-content:center}.mb:disabled{opacity:.5}.spinner{width:22px;height:22px;border-radius:50%;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.dev-back{padding:12px 16px 0;color:var(--tg-theme-link-color);cursor:pointer}.chip.info{background:color-mix(in srgb,var(--tg-theme-button-color) 15%,transparent);color:var(--tg-theme-link-color)}.seg{margin:0 16px;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:2px;border-radius:9px;background:var(--tg-theme-section-separator-color)}.seg>button{padding:7px 0;font-size:15px;border-radius:7px}.seg>button.on{font-weight:600;background:var(--tg-theme-section-bg-color);box-shadow:0 1px 3px #0000001f}.radio-card{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;background:var(--tg-theme-section-bg-color);cursor:pointer}.radio-card.on{box-shadow:inset 0 0 0 2px var(--tg-theme-button-color)}.radio{width:22px;height:22px;border-radius:50%;flex:none;border:2px solid var(--tg-theme-section-separator-color)}.radio-card.on .radio{border:7px solid var(--tg-theme-button-color)}.check{width:22px;height:22px;border-radius:50%;flex:none;border:2px solid var(--tg-theme-section-separator-color);display:flex;align-items:center;justify-content:center;color:var(--tg-theme-button-text-color)}.check.on{border:0;background:var(--tg-theme-button-color)}.sum-row{display:grid;grid-template-columns:minmax(0,1fr) 52px 100px 64px;gap:8px;padding:7px 12px;align-items:center;border-bottom:1px solid var(--tg-theme-section-separator-color);font-size:15px}.sum-row.head{font-size:13px;color:var(--tg-theme-hint-color);padding:8px 12px}.sum-row.skip{color:var(--tg-theme-hint-color)}.stepper{display:flex;align-items:center;justify-content:space-between;border-radius:8px;background:var(--tg-theme-secondary-bg-color);height:30px}.stepper button{width:30px;color:var(--tg-theme-link-color);font-size:20px}.stepper input{width:40px;text-align:center;font-weight:600;font-variant-numeric:tabular-nums;font-size:15px}.total{position:sticky;bottom:0;background:var(--tg-theme-bg-color);border-top:1px solid var(--tg-theme-section-separator-color);padding:10px 16px;display:flex;flex-direction:column;gap:4px;font-size:15px;margin-top:auto}.total+.mb-wrap{margin-top:0}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;overflow-y:auto;background:var(--tg-theme-secondary-bg-color);display:flex;flex-direction:column}.overlay>.page{max-width:480px;width:100%;margin:0 auto}.filters{display:flex;gap:8px;padding:12px 16px 0;overflow-x:auto}.filters button{padding:5px 12px;border-radius:8px;font-size:13px;font-weight:500;white-space:nowrap;border:1px solid var(--tg-theme-section-separator-color);color:var(--tg-theme-hint-color)}.filters button.on{border-color:var(--tg-theme-button-color);color:var(--tg-theme-link-color)}.hist-card{background:var(--tg-theme-section-bg-color);border-radius:12px;padding:12px 16px;display:flex;flex-direction:column;gap:3px;cursor:pointer}.page:has(.mb-wrap)+.tabs{position:static}
