:root{--bg: #0C0D11;--bg-raise: #13151B;--card-a: rgba(255, 255, 255, .05);--card-b: rgba(255, 255, 255, .022);--line: rgba(255, 255, 255, .09);--line-strong: rgba(255, 255, 255, .17);--text: #F5F6F8;--muted: #A2A9B5;--dim: #7B8290;--accent: #4FC4E9;--good: #8BDDB0;--warn: #EBC77E;--bad: #F2978F;--sat: env(safe-area-inset-top, 0px);--sab: env(safe-area-inset-bottom, 0px);--sal: env(safe-area-inset-left, 0px);--sar: env(safe-area-inset-right, 0px);--tab-h: 58px;--ease: cubic-bezier(.16, 1, .3, 1);color-scheme:dark}:root[data-safe="1"]{--sat: 47px;--sab: 34px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{background:var(--bg);-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.4 -apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Segoe UI,Roboto,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;overscroll-behavior-y:none;touch-action:manipulation}h1,h2,p{margin:0}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit}.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.dim{color:var(--dim)}.strong{font-weight:600}.silver{background:linear-gradient(180deg,#fff,#d7dce5 46%,#8e96a4);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:10px}.app{min-height:100dvh;padding-bottom:calc(var(--tab-h) + var(--sab) + 12px)}.screen{animation:fade .26s var(--ease) both}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.pad{padding:14px max(16px,var(--sal)) 8px max(16px,var(--sar));display:flex;flex-direction:column;gap:12px}.pad>*{min-width:0}.stack{display:flex;flex-direction:column;gap:10px}.head{position:sticky;top:0;z-index:8;background:var(--bg);padding:calc(var(--sat) + 12px) max(16px,var(--sal)) 10px max(16px,var(--sar));border-bottom:1px solid rgba(255,255,255,.06)}.head-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.head-text{min-width:0}.head h1{font-size:30px;line-height:1.12;font-weight:650;letter-spacing:-.02em;width:fit-content}.head-sub{margin-top:2px;color:var(--muted);font-size:13px}.demo-tag{display:inline-block;margin-top:6px;padding:2px 9px;font-size:12px;color:var(--muted);border:1px solid var(--line-strong);border-radius:999px}.icon-btn{flex:none;width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#ffffff24,#ffffff0d 55%,#4fc4e914);border:1px solid var(--line-strong);color:var(--text);padding:0}.icon-btn:active{transform:scale(.96)}.icon-btn.spin svg{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:10;display:flex;height:calc(var(--tab-h) + var(--sab));padding:0 var(--sar) var(--sab) var(--sal);background:#0d0e13f7;-webkit-backdrop-filter:blur(22px) saturate(140%);backdrop-filter:blur(22px) saturate(140%);border-top:1px solid var(--line)}.tab{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:none;border:0;padding:6px 2px 4px;color:var(--dim);position:relative;transition:color .16s var(--ease)}.tab-label{font-size:11px;font-weight:500;letter-spacing:.01em;white-space:nowrap}.tab.on{color:var(--text)}.tab.on:after{content:"";position:absolute;bottom:3px;left:50%;width:22px;height:2px;margin-left:-11px;background:var(--accent);border-radius:2px}.tab:active .tab-ico{transform:scale(.92)}.tab-ico{display:grid;transition:transform .16s var(--ease)}.offline-bar{position:fixed;left:16px;right:16px;z-index:9;bottom:calc(var(--tab-h) + var(--sab) + 8px);background:#1a1c23;border:1px solid var(--line-strong);border-radius:12px;padding:8px 12px;font-size:13px;color:var(--warn)}.card{background:linear-gradient(180deg,var(--card-a),var(--card-b));border:1px solid var(--line);border-radius:18px;padding:14px 16px;position:relative}.card.inner{margin-top:12px}.section-label{font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--dim);margin-bottom:8px}.note-title{font-weight:600;margin-bottom:4px}.note-text{color:var(--muted);font-size:13.5px}.note-text+.note-text{margin-top:6px}.note-text.dim{color:var(--dim)}.bad-text{color:var(--bad)}.note-bad{border-color:#f2978f59}.note-warn{border-color:#ebc77e59}.note-bad .btn{margin-top:10px}.note-fix{margin-top:8px;font-size:13px;color:var(--dim)}.empty{text-align:center;padding:22px 16px}.locked{text-align:center;padding:26px 18px}.locked-ico{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:14px;border:1px solid var(--line-strong);color:var(--muted);margin-bottom:10px}.foot-note{font-size:12px;color:var(--dim);text-align:center;padding:4px 8px}.foot-note.top{text-align:left;padding:0 2px}.chip{display:inline-flex;align-items:center;height:24px;padding:0 9px;font-size:12px;color:var(--muted);border:1px solid var(--line-strong);border-radius:999px;white-space:nowrap;max-width:100%}.pill{display:inline-flex;align-items:center;height:26px;padding:0 10px;font-size:12.5px;border-radius:999px;border:1px solid var(--line-strong);color:var(--muted);white-space:nowrap}.pill.good{color:var(--good);border-color:#8bddb066}.pill.warn{color:var(--warn);border-color:#ebc77e66}.pill.bad{color:var(--bad);border-color:#f2978f73}.chips-row{display:flex;flex-wrap:wrap;gap:8px}.chips-scroll{display:flex;gap:8px;overflow-x:auto;margin:0 -16px;padding:2px 16px;scrollbar-width:none}.chips-scroll::-webkit-scrollbar{display:none}.chips-scroll.wrap{flex-wrap:wrap;overflow:visible;margin:8px 0;padding:0}.chip-btn{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;font-size:13.5px;color:var(--muted);text-decoration:none;white-space:nowrap;border-radius:12px;border:1px solid var(--line);background:linear-gradient(135deg,#ffffff12,#ffffff06)}.chip-btn.on{color:var(--text);border-color:var(--line-strong);background:linear-gradient(135deg,#ffffff29,#ffffff0f 55%,#4fc4e91a);box-shadow:inset 0 -2px 0 var(--accent)}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 18px;border-radius:14px;color:var(--text);font-weight:550;border:1px solid var(--line-strong);background:linear-gradient(135deg,#ffffff29,#ffffff0f 55%,#4fc4e91a);transition:transform .14s var(--ease),opacity .14s}.btn:before{content:"";position:absolute;left:14px;right:14px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent)}.btn:active:not([disabled]){transform:scale(.98)}.btn[disabled]{opacity:.45;cursor:not-allowed}.btn.wide{width:100%}.btn.small{min-height:40px;padding:0 14px;font-size:14px}.btn.primary{background:linear-gradient(180deg,#f6f8fb,#c3c9d4);color:#0c0d11;border-color:#fff9;font-weight:650}.btn.primary:before{display:none}.actions{display:flex;flex-direction:column;gap:10px}.seg{display:flex;gap:6px;min-width:0}.seg-btn{position:relative;flex:1 1 0;min-width:0;min-height:42px;padding:0 6px;border-radius:12px;border:1px solid var(--line);color:var(--muted);background:linear-gradient(135deg,#ffffff12,#ffffff06);font-size:13.5px;white-space:nowrap;transition:color .16s var(--ease),background .16s var(--ease)}.seg-label{position:relative;display:inline-block;padding-bottom:3px}.seg-btn.on{color:var(--text);border-color:var(--line-strong);background:linear-gradient(135deg,#ffffff29,#ffffff0f 55%,#4fc4e91a)}.seg-btn.on .seg-label:after{content:"";position:absolute;left:12%;right:12%;bottom:0;height:2px;border-radius:2px;background:var(--accent)}.sortbar{display:flex;align-items:center;justify-content:space-between;gap:10px}.sortbar .seg{flex:1 1 auto;max-width:270px}.sortbar .seg-btn{min-height:42px;font-size:12.5px}.hero{padding:18px 18px 16px;display:flex;flex-direction:column;gap:8px}.hero-label{font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--dim)}.hero-num{font-size:clamp(34px,11.5vw,46px);line-height:1.05;font-weight:650;letter-spacing:-.03em;width:fit-content;max-width:100%}.delta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:13.5px}.delta.up{color:var(--good)}.delta.down{color:var(--bad)}.delta.flat{color:var(--muted)}.delta-prev{color:var(--dim)}.mini-delta{display:inline-flex;align-items:center;gap:4px;font-size:12.5px}.mini-delta.up{color:var(--good)}.mini-delta.down{color:var(--bad)}.mini-delta.flat{color:var(--muted)}.partial{margin-top:2px;padding:8px 10px;font-size:13px;color:var(--warn);border:1px solid rgba(235,199,126,.3);border-radius:12px}.block-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}.block-title{font-size:17px;font-weight:600}.block-sum{display:flex;align-items:baseline;gap:10px;font-size:17px}.rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.mrow-top{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.mrow-name{min-width:0;overflow-wrap:anywhere}.mrow-name em{font-style:normal;color:var(--dim);font-size:12.5px}.bar{height:3px;border-radius:2px;background:#ffffff12;margin:6px 0 4px;overflow:hidden}.bar i{display:block;height:100%;border-radius:2px;background:linear-gradient(90deg,#8e96a4,#fff)}.mrow-sub{font-size:12px;color:var(--dim)}.idle{margin-top:10px;font-size:12.5px;color:var(--dim);overflow-wrap:anywhere}.block .note-text{margin-top:8px}.block-locked{padding:2px 0}.how summary{cursor:pointer;font-weight:550;list-style:none;min-height:28px;display:flex;align-items:center}.how summary::-webkit-details-marker{display:none}.how summary:after{content:"";margin-left:auto;width:7px;height:7px;border-right:1.7px solid var(--muted);border-bottom:1.7px solid var(--muted);transform:rotate(45deg);transition:transform .2s var(--ease)}.how[open] summary:after{transform:rotate(-135deg)}.how-list{margin:10px 0 0;padding-left:18px;color:var(--muted);font-size:13.5px;display:flex;flex-direction:column;gap:6px}button.mcard{width:100%;text-align:left;display:flex;flex-direction:column;gap:8px;min-height:92px;transition:transform .14s var(--ease)}button.mcard:active{transform:scale(.99)}.mcard-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.mcard-name{font-size:17px;font-weight:600;min-width:0;overflow-wrap:anywhere}.mcard-line{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13.5px}.mcard-alert{color:var(--bad);font-size:13.5px;font-weight:550}.mcard-meta{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13.5px;color:var(--muted)}.mcard-meta b{color:var(--text);font-weight:600}.dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--dim)}.dot.fresh{background:var(--good)}.dot.stale{background:var(--warn)}.dot.old{background:var(--bad)}.group{display:flex;flex-direction:column;gap:8px}.group-head{display:flex;align-items:center;gap:8px;padding:6px 2px 0}.group-name{font-weight:600;min-width:0;overflow-wrap:anywhere}.group-n{margin-left:auto;font-size:13px}.list{padding:0;overflow:hidden}.wrow{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:54px;padding:8px 16px;background:none;border:0;border-bottom:1px solid var(--line);text-align:left}.wrow:last-child{border-bottom:0}.wrow:active{background:#ffffff0a}.wrow-main{min-width:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wrow-name{overflow-wrap:anywhere;font-weight:500}.wrow-time{flex:none;font-weight:600;text-align:right}.wrow-time small{display:block;font-size:10.5px;font-weight:400;color:var(--dim)}.wrow-time.good{color:var(--good)}.wrow-time.warn{color:var(--warn)}.wrow-time.bad{color:var(--bad)}.wrow-time.plain{color:var(--muted)}.badge{font-size:11.5px;color:var(--text);border:1px solid var(--line-strong);border-radius:999px;padding:1px 8px}.more{width:100%;min-height:46px;background:none;border:0;border-top:1px solid var(--line);color:var(--muted)}.open-mac{margin-top:16px;display:flex;flex-direction:column;gap:8px}.feed .ev{padding:12px 16px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:4px}.feed .ev:last-child{border-bottom:0}.ev-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.ev-time{font-size:12px;text-align:right}.ev-title{font-weight:550;overflow-wrap:anywhere}.ev-body{color:var(--muted);font-size:13px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;white-space:pre-line}.ev-amt{font-weight:600}.who-name{font-size:20px;font-weight:600;overflow-wrap:anywhere}.who-mail{font-size:13.5px;margin-bottom:10px;overflow-wrap:anywhere}.acc-list{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:10px}.acc{display:flex;gap:10px;align-items:flex-start;font-size:14px}.acc-ico{flex:none;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line-strong);margin-top:1px}.acc.yes .acc-ico{color:var(--good);border-color:#8bddb073}.acc.no .acc-ico{color:var(--dim)}.acc-text{min-width:0;overflow-wrap:anywhere}.sheet-wrap{position:fixed;inset:0;z-index:30;display:flex;align-items:flex-end}.sheet-back{position:absolute;inset:0;background:#040508b8;border:0;padding:0;animation:fadein .2s ease both}@keyframes fadein{0%{opacity:0}to{opacity:1}}.sheet{position:relative;width:100%;max-height:86dvh;overflow:hidden auto;background:#14161c;border:1px solid var(--line-strong);border-bottom:0;border-radius:24px 24px 0 0;padding:8px max(18px,var(--sal)) calc(var(--sab) + 20px) max(18px,var(--sar));animation:slide .28s var(--ease) both;outline:none}@keyframes slide{0%{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}.sheet-grab{width:38px;height:4px;border-radius:4px;background:var(--line-strong);margin:4px auto 6px}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.sheet-head h2{font-size:22px;font-weight:650;letter-spacing:-.01em;overflow-wrap:anywhere}.sheet-chips{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 12px}.kvs{display:flex;flex-direction:column;margin-bottom:12px}.kv{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line)}.kv-k{color:var(--muted);font-size:14px}.kv-v{text-align:right;font-weight:550;overflow-wrap:anywhere}.kv-v.good{color:var(--good)}.kv-v.warn{color:var(--warn)}.kv-v.bad{color:var(--bad)}.skel{display:flex;flex-direction:column;gap:10px}.skel-row{height:74px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(100deg,#ffffff08 30%,#ffffff12,#ffffff08 70%);background-size:220% 100%;animation:shimmer 1.4s linear infinite}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.boot{min-height:100dvh;display:grid;place-items:center}.boot-ring{width:34px;height:34px;border-radius:50%;border:2px solid var(--line-strong);border-top-color:var(--accent);animation:spin .9s linear infinite}.login{min-height:100dvh;padding:calc(var(--sat) + 40px) max(20px,var(--sal)) calc(var(--sab) + 28px) max(20px,var(--sar));display:flex;flex-direction:column;gap:22px;max-width:460px;margin:0 auto}.login-brand{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}.login-logo{width:84px;height:84px;border-radius:22px;border:1px solid var(--line-strong);object-fit:cover}.wordmark{font-size:36px;font-weight:700;letter-spacing:-.02em;line-height:1.1}.login-sub{color:var(--muted)}.underline-accent{width:42px;height:2px;border-radius:2px;background:var(--accent);opacity:.9}.login-form{display:flex;flex-direction:column;gap:14px;padding:18px}.field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}.field input{width:100%;min-height:48px;padding:0 14px;font-size:16px;color:var(--text);background:#ffffff0a;border:1px solid var(--line-strong);border-radius:12px;outline:none}.field input:focus{border-color:var(--accent)}.form-error{color:var(--bad);font-size:13.5px}.login-foot{color:var(--dim);font-size:12.5px;text-align:center}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(min-width:560px){.app{max-width:560px;margin:0 auto}.tabbar{left:50%;right:auto;width:560px;margin-left:-280px}}
