@font-face{font-family:M;font-weight:500;font-display:swap;src:url(/fonts/Manrope-500-cyrillic.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:M;font-weight:500;font-display:swap;src:url(/fonts/Manrope-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+20BD,U+2212}
@font-face{font-family:M;font-weight:600;font-display:swap;src:url(/fonts/Manrope-600-cyrillic.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:M;font-weight:600;font-display:swap;src:url(/fonts/Manrope-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+20BD,U+2212}
@font-face{font-family:M;font-weight:700;font-display:swap;src:url(/fonts/Manrope-700-cyrillic.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:M;font-weight:700;font-display:swap;src:url(/fonts/Manrope-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+20BD,U+2212}
@font-face{font-family:M;font-weight:800;font-display:swap;src:url(/fonts/Manrope-800-cyrillic.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:M;font-weight:800;font-display:swap;src:url(/fonts/Manrope-800-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+20BD,U+2212}

:root{
  --bg:#F2F4F8; --card:#FFFFFF; --card2:#F6F8FB; --line:#ECEFF4; --text:#111827; --muted:#8B93A3; --muted2:#B4BBC7;
  --accent:#3D7BE4; --accent2:#9DBDF3; --accent-soft:#E8F0FD; --ok:#18A058; --ok-soft:#E5F6EC; --bad:#E5484D;
  --bad-soft:#FDECEC; --warn:#E39A10; --warn-soft:#FDF3E1; --shadow:0 1px 2px rgba(16,24,40,.04),0 4px 16px rgba(16,24,40,.04);
  --c2:#8FB3EE; --c3:#C9D2E0; --r:20px; --nav-h:68px; --safe-b:env(safe-area-inset-bottom,0px);
}
html[data-theme=dark]{
  --bg:#0D1015; --card:#161A21; --card2:#1C212A; --line:#232934; --text:#ECEFF4; --muted:#8B95A6; --muted2:#5A6372;
  --accent:#5A97FF; --accent2:#2E4F86; --accent-soft:#1A2A45; --ok:#34C77B; --ok-soft:#14301F; --bad:#FF6369;
  --bad-soft:#3A1A1C; --warn:#F2B13C; --warn-soft:#3A2C12; --shadow:none; --c2:#3E66A8; --c3:#4A5363;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;background:var(--bg);color:var(--text);font:500 15px/1.35 M,-apple-system,"SF Pro Text",Roboto,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;transition:background .25s,color .25s}
button,input,select{font:inherit;color:inherit}
button{cursor:pointer;border:0;background:none;padding:0}
svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
#app{max-width:480px;margin:0 auto;padding:0 16px calc(var(--nav-h) + var(--safe-b) + 18px)}

/* шапка */
.top{display:flex;align-items:center;justify-content:space-between;padding:16px 0 14px;position:sticky;top:0;z-index:5;
  background:linear-gradient(var(--bg) 78%,transparent)}
.brand{display:flex;align-items:center;gap:10px}
.logo{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:#fff;
  background:linear-gradient(135deg,#5B95F5,#2F63D3);box-shadow:0 6px 16px rgba(61,123,228,.28)}
.logo svg{width:22px;height:22px;stroke-width:2.4}.logo .dot{fill:#fff;stroke:none}
.brand-txt{display:flex;flex-direction:column;line-height:1.05}
.brand-txt b{font-size:21px;font-weight:800;letter-spacing:-.4px}.brand-txt span{font-size:12px;color:var(--muted);font-weight:600}
.theme{display:flex;gap:2px;padding:3px;border-radius:99px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}
.th-k{width:38px;height:30px;border-radius:99px;display:grid;place-items:center;color:var(--muted2);transition:.2s}
.th-k svg{width:17px;height:17px}
html:not([data-theme=dark]) .th-k[data-t=light],html[data-theme=dark] .th-k[data-t=dark]{background:var(--accent-soft);color:var(--accent)}
html[data-theme=dark] .th-k[data-t=dark]{background:var(--card2)}

/* общие блоки */
.h{display:flex;align-items:center;justify-content:space-between;margin:22px 2px 10px}
.h h2{margin:0;font-size:19px;font-weight:800;letter-spacing:-.3px}
.h .sub{font-size:12.5px;color:var(--muted);font-weight:600}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}
.pad{padding:16px}
.muted{color:var(--muted)} .small{font-size:12.5px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fade{animation:fade .28s ease both}
@keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* карточки-цифры */
.stat{padding:14px 14px 13px;min-width:0;display:flex;flex-direction:column;gap:9px;text-align:left}
.stat .row1{display:flex;align-items:center;gap:9px;min-width:0}
.ic{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);flex:none}
.ic svg{width:19px;height:19px}
.ic.ok{background:var(--ok-soft);color:var(--ok)}.ic.bad{background:var(--bad-soft);color:var(--bad)}.ic.warn{background:var(--warn-soft);color:var(--warn)}
.big{font-size:27px;font-weight:800;letter-spacing:-.8px;line-height:1;white-space:nowrap}
.big small{font-size:15px;font-weight:700;color:var(--muted);letter-spacing:0;margin-left:1px}
.stat .lbl{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted);font-weight:600;min-width:0}
.stat .lbl span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chip{display:inline-flex;align-items:center;gap:3px;font-size:11.5px;font-weight:700;padding:3px 7px;border-radius:99px;white-space:nowrap}
.chip svg{width:12px;height:12px;stroke-width:2.6}
.chip.ok{background:var(--ok-soft);color:var(--ok)}.chip.bad{background:var(--bad-soft);color:var(--bad)}
.chip.warn{background:var(--warn-soft);color:var(--warn)}.chip.acc{background:var(--accent-soft);color:var(--accent)}
.chip.gray{background:var(--card2);color:var(--muted)}
.trend{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;margin-left:auto;flex:none}
.trend svg{width:13px;height:13px;stroke-width:2.5}
.trend.ok{background:var(--ok-soft);color:var(--ok)}.trend.bad{background:var(--bad-soft);color:var(--bad)}.trend.warn{background:var(--warn-soft);color:var(--warn)}

/* баннер */
.banner{display:flex;gap:12px;padding:14px;border-radius:var(--r);margin-top:2px}
.banner.bad{background:var(--bad-soft);color:var(--bad)}.banner.ok{background:var(--ok-soft);color:var(--ok)}
.banner b{display:block;font-weight:800;margin-bottom:3px}
.banner ul{margin:0;padding:0;list-style:none;color:var(--text);font-size:13.5px}
.banner li{padding:2px 0 2px 12px;position:relative}.banner li:before{content:"";position:absolute;left:0;top:10px;width:5px;height:5px;border-radius:50%;background:var(--bad)}

/* сегменты */
.seg{display:inline-flex;padding:3px;border-radius:99px;background:var(--card2);border:1px solid var(--line)}
.seg button{padding:5px 11px;border-radius:99px;font-size:12px;font-weight:700;color:var(--muted)}
.seg button.on{background:var(--card);color:var(--text);box-shadow:0 1px 3px rgba(0,0,0,.08)}
html[data-theme=dark] .seg button.on{background:#2A313C}

/* график */
.chart{padding:16px 12px 12px 6px}
.chart svg{width:100%;height:auto;display:block;overflow:visible;stroke:none}
.gauge,.arc svg{stroke:none}.gauge{stroke-linecap:butt}
.chart .gl{stroke:var(--line);stroke-width:1}
.chart .ax{fill:var(--muted);font-size:10.5px;font-weight:600}
.chart .b1{fill:var(--accent)}.chart .b2{fill:var(--accent2)}.chart .bh{fill:var(--bad)}
.legend{display:flex;gap:14px;padding:0 0 0 12px;font-size:12px;color:var(--muted);font-weight:600}
.legend i{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:5px;vertical-align:-1px}

/* строки списков */
.list{overflow:hidden}
.li{display:flex;align-items:center;gap:12px;padding:12px 14px;border-top:1px solid var(--line);width:100%;text-align:left}
.li:first-child{border-top:0}
.li .tx{flex:1;min-width:0}
.li .t1{font-weight:700;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.li .t2{font-size:12.5px;color:var(--muted);font-weight:600;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.li .t2 .sep{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--muted2);margin:0 6px;vertical-align:2px}
.tile{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;font-weight:800;font-size:16px;flex:none}
.act{color:var(--accent);font-weight:700;font-size:13.5px;padding:6px 2px 6px 8px;flex:none}
.act.red{color:var(--bad)}

/* мини-шкалы */
.meter{height:6px;border-radius:9px;background:var(--card2);overflow:hidden}
html[data-theme=dark] .meter{background:#252B35}
.meter i{display:block;height:100%;border-radius:9px;background:var(--accent);transition:width .6s cubic-bezier(.2,.8,.2,1)}
.meter i.warn{background:var(--warn)}.meter i.bad{background:var(--bad)}

/* лимиты */
.hero{padding:18px 16px 16px;text-align:center}
.hero .gauge{width:100%;max-width:290px;height:auto;margin:8px auto 0;display:block}
.hero p{margin:6px 0 0;color:var(--muted);font-size:14px;font-weight:600}
.hero p b{color:var(--accent)}.hero p b.warn{color:var(--warn)}.hero p b.bad{color:var(--bad)}
.brain{padding:14px 14px 12px}
.brain .hd{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.brain .hd b{font-size:16px;font-weight:800}.brain .hd span{font-size:12.5px;color:var(--muted);font-weight:600}
.arcs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.arc{background:var(--card2);border-radius:16px;padding:10px 8px 10px;text-align:center}
.arc svg{width:100%;max-width:132px;height:auto;display:block;margin:0 auto}
.arc .w{font-size:12px;font-weight:700;color:var(--muted);margin-top:2px}
.arc .r{font-size:11.5px;color:var(--muted);font-weight:600;margin-top:1px}
.arc.solo{grid-column:1/-1}
.g-track{stroke:var(--accent-soft)} html[data-theme=dark] .g-track{stroke:#243248}
.g-val{stroke:var(--accent)}.g-val.warn{stroke:var(--warn)}.g-val.bad{stroke:var(--bad)}
.g-num{fill:var(--text);font-weight:800}.g-sub{fill:var(--muted);font-weight:600}
.needle{fill:var(--text)}.hub{fill:var(--card);stroke:var(--text)}

/* сервера */
.srv{padding:14px;margin-bottom:10px}
.srv .hd{display:flex;align-items:center;gap:11px}
.srv .hd .tx{flex:1;min-width:0}
.srv .t1{font-weight:800;font-size:15.5px}.srv .t2{font-size:12.5px;color:var(--muted);font-weight:600;margin-top:1px}
.kv{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}
.kv>div{background:var(--card2);border-radius:13px;padding:9px 10px}
.kv .k{font-size:11.5px;color:var(--muted);font-weight:700}
.kv .v{font-size:16px;font-weight:800;margin:2px 0 6px;letter-spacing:-.3px}
.svcs{margin-top:10px;border-top:1px dashed var(--line);padding-top:6px}
.svc{display:flex;align-items:center;gap:9px;padding:7px 0;font-size:13.5px;font-weight:600}
.svc .d{width:8px;height:8px;border-radius:50%;background:var(--muted2);flex:none}
.svc .d.ok{background:var(--ok);box-shadow:0 0 0 3px var(--ok-soft)}.svc .d.bad{background:var(--bad);box-shadow:0 0 0 3px var(--bad-soft)}
.svc .n{flex:1;min-width:0}
.btn-s{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700;color:var(--accent);background:var(--accent-soft);
  padding:6px 10px;border-radius:99px}
.btn-s svg{width:14px;height:14px;stroke-width:2.3}
.more{display:flex;align-items:center;gap:4px;margin-top:8px;font-size:12.5px;color:var(--accent);font-weight:700}
.more svg{width:15px;height:15px;transition:transform .2s}.more.open svg{transform:rotate(180deg)}

/* подписки */
.search{display:flex;align-items:center;gap:8px;padding:0 14px;height:44px;border-radius:99px;background:var(--card);border:1px solid var(--line);
  color:var(--muted)}
.search input{flex:1;border:0;background:none;outline:0;font-size:15px;color:var(--text);min-width:0}
.search input::placeholder{color:var(--muted)}
.plus{width:40px;height:40px;border-radius:13px;border:1.8px solid var(--text);display:grid;place-items:center}
.plus svg{width:20px;height:20px;stroke-width:2.2}
.total{display:flex;align-items:center;gap:12px;padding:14px;margin-top:10px}
.total .tx{flex:1;min-width:0}
.total .k{font-size:12.5px;color:var(--muted);font-weight:700}
.total .v{font-size:22px;font-weight:800;letter-spacing:-.5px;margin-top:2px}
.total .v span{color:var(--muted);font-weight:700;font-size:16px}

/* метрики шин */
.mx{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}
.mx>div{background:var(--card2);border-radius:14px;padding:10px}
.mx .v{font-size:20px;font-weight:800;letter-spacing:-.4px}
.mx .k{font-size:11.5px;color:var(--muted);font-weight:700;margin-top:1px}

/* лимиты на обзоре */
.lrow{display:flex;align-items:center;gap:10px;padding:8px 0}
.lrow .nm{width:62px;font-weight:800;font-size:13.5px}
.lrow .mt{flex:1}
.lrow .pc{width:44px;text-align:right;font-weight:800;font-size:13.5px}

.foot{display:flex;align-items:center;justify-content:center;gap:8px;margin:18px 0 4px;color:var(--muted);font-size:12.5px;font-weight:600}
.foot button{display:inline-flex;align-items:center;gap:5px;color:var(--accent);font-weight:700}
.foot svg{width:15px;height:15px}
.spin svg{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}

/* нижнее меню */
.tabs{position:fixed;left:0;right:0;bottom:0;z-index:10;display:flex;justify-content:center;background:var(--card);border-top:1px solid var(--line);
  padding:0 6px var(--safe-b)}
.tabs .in{display:flex;width:100%;max-width:480px}
.tab{flex:1;height:var(--nav-h);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--muted2);
  font-size:11px;font-weight:700;position:relative}
.tab svg{width:23px;height:23px}
.tab.on{color:var(--accent)}
.tab .badge{position:absolute;top:10px;left:calc(50% + 6px);min-width:16px;height:16px;border-radius:99px;background:var(--bad);color:#fff;
  font-size:10px;display:grid;place-items:center;padding:0 4px;border:2px solid var(--card)}

/* шторка */
.sheet-bg{position:fixed;inset:0;background:rgba(10,14,20,.38);opacity:0;pointer-events:none;transition:opacity .25s;z-index:20}
.sheet-bg.on{opacity:1;pointer-events:auto}
.sheet{position:fixed;left:0;right:0;bottom:0;z-index:21;max-width:480px;margin:0 auto;background:var(--card);border-radius:24px 24px 0 0;
  padding:8px 16px calc(18px + var(--safe-b));transform:translateY(105%);transition:transform .3s cubic-bezier(.2,.8,.2,1);max-height:92vh;overflow:auto}
.sheet.on{transform:none}
.grab{width:40px;height:5px;border-radius:9px;background:var(--line);margin:0 auto 12px}
.sheet h3{margin:0 0 14px;font-size:19px;font-weight:800}
.f{display:block;margin-bottom:12px}
.f>span{display:block;font-size:12.5px;font-weight:700;color:var(--muted);margin:0 0 6px 4px}
.f input{width:100%;height:46px;border-radius:14px;border:1px solid var(--line);background:var(--card2);padding:0 14px;font-size:16px;outline:0}
.f input:focus{border-color:var(--accent)}
.f2{display:grid;grid-template-columns:1.2fr 1fr;gap:10px}
.seg.w{display:flex}.seg.w button{flex:1;padding:9px 0;font-size:14px}
.btn{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;height:50px;border-radius:15px;background:var(--accent);color:#fff;
  font-weight:800;font-size:15.5px;margin-top:6px}
.btn.ghost{background:var(--accent-soft);color:var(--accent)}.btn.red{background:var(--bad-soft);color:var(--bad)}
.btn:disabled{opacity:.6}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}

.toast{position:fixed;left:50%;bottom:calc(var(--nav-h) + var(--safe-b) + 14px);transform:translate(-50%,20px);background:#111827;color:#fff;
  padding:10px 16px;border-radius:14px;font-size:14px;font-weight:700;opacity:0;transition:.25s;z-index:30;pointer-events:none;max-width:90vw}
.toast.on{opacity:1;transform:translate(-50%,0)}
html[data-theme=dark] .toast{background:#ECEFF4;color:#111827}

.lock{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:20px}
.lock .ic{width:64px;height:64px}.lock .ic svg{width:28px;height:28px}
.lock h2{margin:6px 0 0;font-weight:800}.lock p{margin:0;color:var(--muted);max-width:280px}
.sk{background:linear-gradient(90deg,var(--card2),var(--line),var(--card2));background-size:200% 100%;animation:sk 1.2s infinite;border-radius:var(--r)}
@keyframes sk{to{background-position:-200% 0}}

/* v2: главная одной фразой */
.hero2{text-align:center;padding:22px 16px 18px;border-radius:24px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}
.hero2 .hic{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin:0 auto 10px;background:var(--accent-soft);color:var(--accent)}
.hero2 .hic svg{width:28px;height:28px;stroke-width:2.2}
.hero2.ok .hic{background:var(--ok-soft);color:var(--ok)}.hero2.warn .hic{background:var(--warn-soft);color:var(--warn)}.hero2.bad .hic{background:var(--bad-soft);color:var(--bad)}
.hero2 .hl{font-size:26px;font-weight:800;letter-spacing:-.6px}
.hero2 .hs{font-size:13.5px;color:var(--muted);font-weight:600;margin-top:4px}
.acts{margin-top:12px;display:flex;flex-direction:column;gap:4px}
.arow{display:flex;gap:8px}
.abtn{flex:1;min-width:0;display:flex;align-items:center;gap:10px;height:52px;padding:0 16px;border-radius:16px;font-weight:800;font-size:15px;text-align:left;
  background:var(--accent);color:#fff;box-shadow:0 6px 16px rgba(61,123,228,.22)}
.abtn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.abtn.bad{background:var(--bad);box-shadow:0 6px 16px rgba(229,72,77,.22)}
.abtn.warn{background:var(--accent)}
.abtn svg{width:20px;height:20px;stroke-width:2.2}
.adone{flex:none;height:52px;padding:0 14px;border-radius:16px;background:var(--card);border:1px solid var(--line);font-weight:800;font-size:13.5px;color:var(--ok)}
.awhy{font-size:12.5px;color:var(--muted);font-weight:600;margin:0 6px 8px}
.quick{display:grid;grid-template-columns:auto 1fr;gap:8px;margin-top:12px}
.qbtn{display:flex;align-items:center;justify-content:center;gap:7px;height:46px;padding:0 14px;border-radius:15px;background:var(--card);border:1px solid var(--line);
  font-weight:700;font-size:14px;color:var(--accent);box-shadow:var(--shadow);white-space:nowrap;overflow:hidden}
.qbtn.spin svg{animation:pulse 1s ease-in-out infinite}@keyframes pulse{50%{opacity:.3}}
.more.center{justify-content:center;width:100%;margin-top:14px;padding:6px}

/* v2: сервера словами */
.say{margin-top:10px;font-size:14.5px;font-weight:700;padding:10px 12px;border-radius:13px;background:var(--ok-soft);color:var(--ok)}
.say.warn{background:var(--warn-soft);color:var(--warn)}.say.bad{background:var(--bad-soft);color:var(--bad)}
.tech{font-size:12px;color:var(--muted);font-weight:600;margin-top:8px;font-family:ui-monospace,Menlo,monospace}

/* v2: оплаты */
.sum{display:flex;align-items:center;gap:10px;padding:16px;margin-top:2px}
.sum .sl{flex:1;min-width:0}
.sum .k{font-size:12.5px;color:var(--muted);font-weight:700}
.sum .v{font-size:30px;font-weight:800;letter-spacing:-.8px;margin:2px 0 10px;white-space:nowrap}
.sum .sr{width:112px;flex:none}
.donut{width:112px;height:112px;display:block;stroke-linecap:butt}
.dn-track{stroke:var(--card2)} html[data-theme=dark] .dn-track{stroke:#232A35}
.cats{display:flex;flex-direction:column;gap:6px}
.cr{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600}
.cr i{width:9px;height:9px;border-radius:3px;flex:none}
.cr span{color:var(--muted);min-width:58px}.cr b{font-weight:800}.cr em{font-style:normal;color:var(--muted);font-size:12px;margin-left:auto}
.note{margin:8px 4px 0;font-weight:600}
.need{padding:13px 14px}.need .k{font-size:12.5px;color:var(--muted);font-weight:700}
.need .v{font-size:21px;font-weight:800;letter-spacing:-.5px;margin-top:3px}
.cal .dt{width:42px;height:44px;border-radius:13px;background:var(--card2);display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none;line-height:1}
.cal .dt b{font-size:17px;font-weight:800}.cal .dt span{font-size:10.5px;color:var(--muted);font-weight:700;margin-top:3px}
.cal .dt.acc{background:var(--accent-soft);color:var(--accent)}.cal .dt.warn{background:var(--warn-soft);color:var(--warn)}
.cal .dt.acc span,.cal .dt.warn span{color:inherit;opacity:.8}
.amt{font-weight:800;font-size:15px;white-space:nowrap}
.calsep{font-size:11.5px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;padding:10px 14px 6px;border-top:1px solid var(--line);background:var(--card2)}

@media (max-width:350px){
  .sum .v{font-size:25px}.sum .sr,.donut{width:92px;height:92px}
  #app{padding-left:12px;padding-right:12px}
  .big{font-size:23px}.stat{padding:12px}.ic{width:34px;height:34px}.grid2{gap:8px}
  .kv .v{font-size:14.5px}.tab{font-size:10px}.lrow .nm{width:54px}
}
