:root{--bg:#F5F7FB;--bg-2:#EEF1F7;--surface:#FFFFFF;--surface-2:#F8FAFD;--ink:#141A2E;--ink-2:#4B5568;--ink-3:#7C8699;--ink-4:#A9B1C1;--line:#E4E8F0;--line-2:#D3D9E5;--blue:#2F5BEA;--blue-2:#1F46C9;--blue-soft:#E9EEFD;--blue-ink:#1B3AA8;--amber:#F5A524;--amber-soft:#FFF3DC;--ok:#1E9E6A;--ok-soft:#E3F5EC;--warn:#E0A100;--warn-soft:#FFF6DB;--bad:#E5484D;--bad-soft:#FDE8E9;--gray:#9AA3B5;--gray-soft:#EEF0F4;--orange:#F0702A;--orange-soft:#FFEBDF;--spring:cubic-bezier(.2,.8,.2,1);--out:cubic-bezier(.16,1,.3,1);--fast:.18s;--base:.28s;--slow:.42s;--r-s:8px;--r:14px;--r-l:20px;--sh-1:0 1px 2px rgba(20,26,46,.05),0 1px 1px rgba(20,26,46,.03);--sh-2:0 4px 14px rgba(20,26,46,.07),0 1px 3px rgba(20,26,46,.05);--sh-3:0 18px 40px rgba(20,26,46,.14),0 4px 10px rgba(20,26,46,.06)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:Be Vietnam Pro,system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4{margin:0;line-height:1.2;letter-spacing:-.015em}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}input{font:inherit}.num{font-variant-numeric:tabular-nums}.mono{font-family:JetBrains Mono,ui-monospace,monospace}::selection{background:var(--blue-soft)}:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:6px}.topbar{position:sticky;top:0;z-index:40;height:60px;display:flex;align-items:center;gap:14px;padding:0 22px;background:#ffffffd1;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.02em;font-size:15px}.brand .beads{display:flex;gap:3px}.brand .beads i{width:9px;height:9px;border-radius:50%;background:var(--blue);display:block}.brand .beads i:nth-child(2){background:var(--amber)}.brand .beads i:nth-child(3){background:var(--ink)}.brand small{color:var(--ink-3);font-weight:600;font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin-left:4px}.ask{flex:1;max-width:640px;margin:0 auto;position:relative}.ask input{width:100%;height:40px;border-radius:999px;border:1px solid var(--line-2);background:var(--surface);padding:0 44px 0 42px;font-size:13.5px;color:var(--ink);transition:box-shadow var(--base) var(--spring),border-color var(--base)}.ask input::placeholder{color:var(--ink-4)}.ask input:focus{border-color:var(--blue);box-shadow:0 0 0 4px var(--blue-soft);outline:none}.ask .ico{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--ink-3)}.ask .kbd{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:10.5px;color:var(--ink-3);border:1px solid var(--line-2);border-radius:5px;padding:1px 6px;background:var(--surface-2)}.topbar .right{display:flex;align-items:center;gap:10px;margin-left:auto}.chip{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);font-size:12.5px;font-weight:600;color:var(--ink-2)}.chip .dot{width:7px;height:7px;border-radius:50%;background:var(--ok)}.iconbtn{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--ink-2);position:relative;transition:background var(--fast)}.iconbtn:hover{background:var(--surface-2)}.iconbtn .badge{position:absolute;top:6px;right:6px;width:8px;height:8px;border-radius:50%;background:var(--bad);border:2px solid #fff}.avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--blue),#7B93F2);color:#fff;display:grid;place-items:center;font-weight:700;font-size:12px}.roles{display:flex;gap:4px;padding:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:999px}.roles button{height:30px;padding:0 12px;border-radius:999px;font-size:12.5px;font-weight:600;color:var(--ink-3);transition:color var(--fast),background var(--base) var(--spring),transform var(--fast)}.roles button:hover{color:var(--ink)}.roles button.on{background:var(--ink);color:#fff;box-shadow:var(--sh-1)}.roles button:active{transform:scale(.97)}.view{display:none;padding:26px 28px 60px;max-width:1440px;margin:0 auto}.view.on{display:block;animation:viewIn var(--slow) var(--out) both}@keyframes viewIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.stagger>*{animation:rise var(--slow) var(--out) both}.stagger>*:nth-child(1){animation-delay:.02s}.stagger>*:nth-child(2){animation-delay:.06s}.stagger>*:nth-child(3){animation-delay:.1s}.stagger>*:nth-child(4){animation-delay:.14s}.stagger>*:nth-child(5){animation-delay:.18s}.stagger>*:nth-child(6){animation-delay:.22s}.stagger>*:nth-child(7){animation-delay:.26s}.stagger>*:nth-child(8){animation-delay:.3s}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.hello{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.hello h1{font-size:24px;font-weight:800}.hello p{margin:4px 0 0;color:var(--ink-3);font-size:13.5px}.hello .meta{display:flex;gap:8px;align-items:center}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-1)}.card.pad{padding:18px 20px}.card h3{font-size:14px;font-weight:700;display:flex;align-items:center;gap:8px}.card h3 .sub{color:var(--ink-3);font-weight:500;font-size:12.5px}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.link{color:var(--blue);font-weight:600;font-size:12.5px}.link:hover{text-decoration:underline}.kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:18px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;box-shadow:var(--sh-1);position:relative;overflow:hidden;transition:transform var(--base) var(--spring),box-shadow var(--base)}.kpi:hover{transform:translateY(-2px);box-shadow:var(--sh-2)}.kpi .l{font-size:12px;color:var(--ink-3);font-weight:600;letter-spacing:.02em}.kpi .v{font-size:28px;font-weight:800;letter-spacing:-.03em;margin-top:4px;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px}.kpi .v small{font-size:12.5px;font-weight:600;color:var(--ink-3);letter-spacing:0;flex-basis:100%;line-height:1.2}.kpi .d{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px;margin-top:8px}.kpi .d.up{background:var(--ok-soft);color:var(--ok)}.kpi .d.down{background:var(--bad-soft);color:var(--bad)}.kpi .d.flat{background:var(--gray-soft);color:var(--ink-2)}.kpi .d.warn{background:var(--warn-soft);color:#9a7100}.kpi .why{font-size:12px;color:var(--ink-2);margin-top:8px;line-height:1.4}.kpi.alert{border-color:#f3c4c6}.kpi.alert:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--bad)}.grid{display:grid;gap:16px}.g-2-1{grid-template-columns:2fr 1fr}.g-3-2{grid-template-columns:3fr 2fr}.g-1-1{grid-template-columns:1fr 1fr}.g-1-1-1{grid-template-columns:1fr 1fr 1fr}.stack{display:flex;flex-direction:column;gap:16px}.beadmap{display:grid;grid-template-columns:repeat(20,1fr);gap:7px}.bead{aspect-ratio:1;border-radius:50%;position:relative;cursor:pointer;transform:scale(.3);opacity:0;animation:pop var(--slow) var(--spring) both;transition:transform var(--fast) var(--spring),box-shadow var(--fast)}.bead:hover{transform:scale(1.25);z-index:2;box-shadow:0 0 0 3px #fff,0 0 0 5px currentColor}.bead.ok{background:var(--ok);color:var(--ok)}.bead.warn{background:var(--warn);color:var(--warn)}.bead.bad{background:var(--bad);color:var(--bad)}.bead.gray{background:var(--gray);color:var(--gray)}.bead.bad:after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--bad);opacity:.35;animation:pulse 1.8s ease-out infinite}@keyframes pop{to{transform:scale(1);opacity:1}}@keyframes pulse{0%{transform:scale(.7);opacity:.6}to{transform:scale(1.5);opacity:0}}.legend{display:flex;gap:14px;font-size:12px;color:var(--ink-2);flex-wrap:wrap}.legend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px;vertical-align:middle}.seg{display:inline-flex;background:var(--surface-2);border:1px solid var(--line);border-radius:8px;padding:3px}.seg button{height:26px;padding:0 10px;border-radius:6px;font-size:12px;font-weight:600;color:var(--ink-3)}.seg button.on{background:#fff;color:var(--ink);box-shadow:var(--sh-1)}.tip{position:fixed;z-index:60;pointer-events:none;background:var(--ink);color:#fff;font-size:12px;padding:8px 10px;border-radius:8px;box-shadow:var(--sh-3);max-width:260px;line-height:1.4;opacity:0;transform:translateY(4px);transition:opacity var(--fast),transform var(--fast)}.tip.on{opacity:1;transform:none}.tip b{color:#ffd27a}.ai{background:linear-gradient(180deg,#f7f9ff,#fff);border:1px solid #DCE4FB;border-radius:var(--r);padding:16px 18px;position:relative}.ai .tag{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--blue-ink);background:var(--blue-soft);padding:3px 8px;border-radius:999px;margin-bottom:10px}.ai .tag .spark{width:10px;height:10px;border-radius:50%;background:var(--blue);animation:spark 1.6s ease-in-out infinite}@keyframes spark{0%,to{transform:scale(.8);opacity:.6}50%{transform:scale(1.15);opacity:1}}.ai ol{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:10px}.ai li{font-size:13.5px;line-height:1.5}.ai li .act{display:inline-flex;gap:6px;margin-left:8px;vertical-align:middle}.ai .src{font-size:11.5px;color:var(--ink-3);margin-top:10px}.cursor:after{content:"▍";color:var(--blue);animation:blink 1s steps(2) infinite;margin-left:1px}@keyframes blink{50%{opacity:0}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:34px;padding:0 14px;border-radius:9px;font-size:13px;font-weight:600;border:1px solid var(--line-2);background:var(--surface);color:var(--ink);transition:transform var(--fast) var(--spring),background var(--fast),border-color var(--fast),box-shadow var(--fast)}.btn:hover{background:var(--surface-2);border-color:var(--ink-4)}.btn:active{transform:scale(.97)}.btn.primary{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 2px 8px #2f5bea47}.btn.primary:hover{background:var(--blue-2)}.btn.dark{background:var(--ink);border-color:var(--ink);color:#fff}.btn.ghost{border-color:transparent;background:transparent;color:var(--blue)}.btn.ghost:hover{background:var(--blue-soft)}.btn.sm{height:28px;padding:0 10px;font-size:12px;border-radius:7px}.btn.xs{height:24px;padding:0 8px;font-size:11.5px;border-radius:6px}.btn.ok{background:var(--ok);border-color:var(--ok);color:#fff}.btn.danger{color:var(--bad);border-color:#f3c4c6}.btn.danger:hover{background:var(--bad-soft)}.btn[disabled]{opacity:.55;cursor:default;transform:none!important}.btn .spin{width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:rot .8s linear infinite}@keyframes rot{to{transform:rotate(360deg)}}.pill{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 9px;border-radius:999px;font-size:11.5px;font-weight:700}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-soft);color:#9a7100}.pill.bad{background:var(--bad-soft);color:var(--bad)}.pill.gray{background:var(--gray-soft);color:var(--ink-2)}.pill.blue{background:var(--blue-soft);color:var(--blue-ink)}.pill.orange{background:var(--orange-soft);color:#b84e12}.pill.amber{background:var(--amber-soft);color:#9a6200}.pill i{width:6px;height:6px;border-radius:50%;background:currentColor}.inbox{display:flex;flex-direction:column;gap:10px}.task{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px 14px 18px;position:relative;box-shadow:var(--sh-1);transition:transform var(--base) var(--spring),box-shadow var(--base),opacity var(--slow),max-height var(--slow);overflow:hidden}.task:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:4px 0 0 4px}.task.bad:before{background:var(--bad)}.task.orange:before{background:var(--orange)}.task.warn:before{background:var(--warn)}.task.ok:before{background:var(--ok)}.task:hover{transform:translateY(-1px);box-shadow:var(--sh-2)}.task .t{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.task .t h4{font-size:14px;font-weight:700;line-height:1.3}.task .t h4 .money{color:var(--bad)}.task .t .why{font-size:12px;color:var(--ink-3);margin-top:3px}.task .acts{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap;align-items:center}.task .acts .whybtn{margin-left:auto;font-size:12px;color:var(--ink-3);font-weight:600}.task .acts .whybtn:hover{color:var(--blue)}.task.done{opacity:.55;transform:none}.task.done h4{text-decoration:line-through;color:var(--ink-3)}.faces{display:flex;margin-top:10px}.face{width:30px;height:30px;border-radius:50%;border:2px solid #fff;margin-left:-8px;display:grid;place-items:center;font-size:11px;font-weight:700;color:#fff;box-shadow:var(--sh-1)}.face:first-child{margin-left:0}.face.more{background:var(--surface-2);color:var(--ink-2);border-color:var(--line)}.reasons{margin:10px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:5px;font-size:12.5px;color:var(--ink-2)}.reasons li:before{content:"•";color:var(--orange);margin-right:7px;font-weight:800}.explain{background:var(--surface-2);border-radius:10px;padding:10px 12px;font-size:12.5px;color:var(--ink-2);margin-top:10px;display:none;line-height:1.5}.explain.on{display:block;animation:rise var(--base) var(--out)}.sending{margin-top:12px;display:none}.sending.on{display:block;animation:rise var(--base) var(--out)}.bar{height:6px;background:var(--bg-2);border-radius:999px;overflow:hidden}.bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--blue),#7B93F2);border-radius:999px;transition:width .35s var(--out)}.sending .lbl{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-3);margin-top:6px}.today{display:flex;flex-direction:column;gap:8px}.slot{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);transition:background var(--base)}.slot .time{font-weight:700;font-size:12.5px;width:44px;color:var(--ink-2)}.slot .who{flex:1;font-size:13px}.slot .who small{display:block;color:var(--ink-3);font-size:11.5px}.slot .st{width:10px;height:10px;border-radius:50%;background:var(--line-2)}.slot.done{background:var(--ok-soft);border-color:#cdebdc}.slot.done .st{background:var(--ok)}.slot.live{border-color:var(--blue);background:var(--blue-soft)}.slot.live .st{background:var(--blue);animation:spark 1.4s ease-in-out infinite}.chart{position:relative}.chart svg{width:100%;height:190px;display:block;overflow:visible}.chart .grid line{stroke:var(--line);stroke-width:1}.chart .avg{stroke:var(--ink-4);stroke-dasharray:4 4;stroke-width:1.5;fill:none}.chart .line{stroke:var(--blue);stroke-width:2.5;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:2000;stroke-dashoffset:2000;animation:draw 1.6s var(--out) forwards .2s}.chart .area{fill:url(#ga);opacity:0;animation:fade .8s ease forwards 1s}.chart .pt{fill:var(--blue);stroke:#fff;stroke-width:2;opacity:0;animation:fade .4s ease forwards 1.6s}.chart .lab{font-size:10.5px;fill:var(--ink-3)}@keyframes draw{to{stroke-dashoffset:0}}@keyframes fade{to{opacity:1}}.scrim{position:fixed;inset:0;background:#141a2e52;backdrop-filter:blur(2px);z-index:70;opacity:0;pointer-events:none;transition:opacity var(--base)}.scrim.on{opacity:1;pointer-events:auto}.sheet{position:fixed;top:0;right:0;bottom:0;width:460px;background:var(--surface);z-index:80;box-shadow:var(--sh-3);transform:translate(102%);transition:transform var(--slow) var(--out);display:flex;flex-direction:column}.sheet.on{transform:none}.sheet .sh{padding:18px 20px 12px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.sheet .sh h3{font-size:16px;font-weight:800}.sheet .body{padding:18px 20px;overflow:auto;flex:1}.sheet .foot{padding:14px 20px;border-top:1px solid var(--line);display:flex;gap:8px;justify-content:flex-end;background:var(--surface-2)}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13.5px}.row:last-child{border-bottom:0}.row .k{color:var(--ink-2)}.row .v{font-weight:700}.row .v.big{font-size:20px;letter-spacing:-.02em}.note{font-size:12px;color:var(--ink-3);display:flex;gap:6px;align-items:center}.callout{border-radius:10px;padding:10px 12px;font-size:12.5px;line-height:1.5}.callout.ok{background:var(--ok-soft);color:#146b47}.callout.warn{background:var(--warn-soft);color:#7a5a00}.callout.blue{background:var(--blue-soft);color:var(--blue-ink)}.callout.bad{background:var(--bad-soft);color:#9f2a2e}.qr{display:grid;place-items:center;padding:16px;border:1px dashed var(--line-2);border-radius:12px;background:var(--surface-2);position:relative}.qr svg{width:150px;height:150px}.qr .amt{margin-top:8px;font-weight:800;font-size:18px;letter-spacing:-.02em}.qr .wait{font-size:12px;color:var(--ink-3);display:flex;align-items:center;gap:6px;margin-top:4px}.qr .wait i{width:8px;height:8px;border-radius:50%;background:var(--amber);animation:spark 1.2s ease-in-out infinite}.paid{position:absolute;inset:0;border-radius:12px;background:#fffffff5;display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity var(--base)}.paid.on{opacity:1;pointer-events:auto}.tick{width:64px;height:64px;border-radius:50%;background:var(--ok);display:grid;place-items:center;transform:scale(.4);animation:tickIn .55s var(--spring) forwards}.tick svg{width:32px;height:32px;stroke:#fff;stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:draw .5s ease forwards .25s}@keyframes tickIn{to{transform:scale(1)}}.paid .m{font-weight:800;font-size:16px;margin-top:10px;color:var(--ok)}.paid .s{font-size:12px;color:var(--ink-3);margin-top:2px}.ring{position:absolute;width:64px;height:64px;border-radius:50%;border:2px solid var(--ok);animation:pulse 1.2s ease-out 1 .1s;opacity:0}.hero-search{max-width:760px;margin:36px auto 12px;text-align:center}.hero-search h1{font-size:26px;font-weight:800;margin-bottom:14px}.hero-search p{color:var(--ink-3);margin:0 0 16px}.bigsearch{position:relative}.bigsearch input{width:100%;height:56px;border-radius:16px;border:1px solid var(--line-2);background:#fff;padding:0 18px 0 52px;font-size:16px;box-shadow:var(--sh-2);transition:box-shadow var(--base),border-color var(--base)}.bigsearch input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 5px var(--blue-soft),var(--sh-2)}.bigsearch .ico{position:absolute;left:18px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--ink-3)}.results{position:absolute;left:0;right:0;top:64px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh-3);overflow:hidden;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity var(--fast),transform var(--fast);z-index:30;text-align:left}.results.on{opacity:1;transform:none;pointer-events:auto}.res{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer;transition:background var(--fast)}.res:hover,.res.sel{background:var(--surface-2)}.res .face{margin:0}.res .n{font-weight:700}.res small{display:block;color:var(--ink-3);font-size:12px}.res .r{margin-left:auto}.callstrip{display:flex;gap:10px;overflow:auto;padding:4px 2px 8px;max-width:980px;margin:0 auto}.callstrip .mini{flex:0 0 auto;display:flex;align-items:center;gap:10px;padding:10px 12px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh-1);font-size:12.5px;transition:transform var(--fast) var(--spring),box-shadow var(--fast);cursor:pointer}.callstrip .mini:hover{transform:translateY(-2px);box-shadow:var(--sh-2)}.callstrip .mini small{display:block;color:var(--ink-3);font-size:11.5px}.s360{display:none}.s360.on{display:block;animation:viewIn var(--slow) var(--out)}.s360 .head{display:flex;gap:18px;align-items:center;padding:20px 22px;background:#fff;border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--sh-1);margin-bottom:16px}.s360 .head .face.big{width:64px;height:64px;font-size:22px;margin:0}.s360 .head h2{font-size:20px;font-weight:800}.s360 .head .sub{color:var(--ink-3);font-size:13px;margin-top:2px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.s360 .head .nums{display:flex;gap:26px;margin-left:auto}.s360 .head .nums div{text-align:right}.s360 .head .nums b{display:block;font-size:22px;letter-spacing:-.02em}.s360 .head .nums span{font-size:11.5px;color:var(--ink-3);font-weight:600}.s360 .aisum{margin-top:8px;font-size:13px;color:var(--ink-2);display:flex;gap:8px;align-items:center}.s360 .aisum .spark{width:8px;height:8px;border-radius:50%;background:var(--blue);animation:spark 1.6s infinite}.timeline{position:relative;padding-left:22px}.timeline:before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--line)}.tl{position:relative;padding:0 0 16px}.tl:before{content:"";position:absolute;left:-19px;top:5px;width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--blue)}.tl.pay:before{border-color:var(--ok)}.tl.warn:before{border-color:var(--warn)}.tl.adv:before{border-color:var(--amber)}.tl .d{font-size:11.5px;color:var(--ink-3);font-weight:600}.tl .h{font-weight:700;font-size:13.5px;margin-top:1px}.tl .b{font-size:13px;color:var(--ink-2);margin-top:2px;line-height:1.5}.rail{display:flex;flex-direction:column;gap:8px}.rail .btn{justify-content:flex-start;height:40px;border-radius:10px}.rail .btn.glow{border-color:var(--blue);background:var(--blue-soft);color:var(--blue-ink);box-shadow:0 0 #2f5bea59;animation:glow 2.2s ease-in-out infinite}@keyframes glow{50%{box-shadow:0 0 0 6px #2f5bea00}}.rail .btn .ic{width:16px;height:16px;color:currentColor;opacity:.85}.spark4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.spark4 div{background:var(--surface-2);border-radius:10px;padding:10px}.spark4 .l{font-size:11.5px;color:var(--ink-3);font-weight:600}.spark4 svg{width:100%;height:36px;display:block;margin-top:4px}.spark4 polyline{fill:none;stroke:var(--blue);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.spark4 .v{font-weight:800;font-size:15px;margin-top:2px}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.week div{border-radius:8px;padding:8px 6px;text-align:center;font-size:11.5px;background:var(--surface-2);color:var(--ink-3)}.week div.on{background:var(--blue-soft);color:var(--blue-ink);font-weight:700}.week div b{display:block;font-size:12px}.callpop{position:fixed;left:50%;top:78px;transform:translate(-50%,-20px);background:var(--ink);color:#fff;border-radius:16px;padding:12px 16px;display:flex;align-items:center;gap:12px;box-shadow:var(--sh-3);z-index:65;opacity:0;pointer-events:none;transition:opacity var(--base),transform var(--slow) var(--spring)}.callpop.on{opacity:1;transform:translate(-50%);pointer-events:auto}.callpop .ringi{width:36px;height:36px;border-radius:50%;background:var(--ok);display:grid;place-items:center;animation:wiggle 1s ease-in-out infinite}@keyframes wiggle{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}.callpop b{display:block;font-size:13.5px}.callpop small{color:#b9c2d6;font-size:12px}.big3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.big{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;box-shadow:var(--sh-1);position:relative}.big .l{font-size:12.5px;color:var(--ink-3);font-weight:600}.big .v{font-size:34px;font-weight:800;letter-spacing:-.035em;margin-top:2px}.big .v small{font-size:15px;color:var(--ink-3);font-weight:600;letter-spacing:0}.big .note{margin-top:8px}.big .expl{position:absolute;right:14px;top:14px}.branches{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.bc{background:#fff;border:1px solid var(--line);border-left:4px solid var(--ok);border-radius:var(--r);padding:14px 16px;box-shadow:var(--sh-1);transition:transform var(--base) var(--spring),box-shadow var(--base)}.bc:hover{transform:translateY(-2px);box-shadow:var(--sh-2)}.bc.warn{border-left-color:var(--warn)}.bc.bad{border-left-color:var(--bad)}.bc h4{font-size:14px;font-weight:800;display:flex;justify-content:space-between;align-items:center}.bc .m{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;margin-top:10px;font-size:12.5px}.bc .m b{display:block;font-size:15px;letter-spacing:-.01em}.bc .m span{color:var(--ink-3);font-size:11.5px}.bc .m .vs{display:block;color:var(--ink-3);font-weight:500;font-size:11px;letter-spacing:0;margin-top:1px}.anom{display:flex;flex-direction:column;gap:8px}.anom .a{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:10px;background:var(--surface-2);font-size:13px;line-height:1.45}.anom .a .ic{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;flex:0 0 auto;font-size:13px}.anom .a.bad .ic{background:var(--bad-soft);color:var(--bad)}.anom .a.warn .ic{background:var(--warn-soft);color:#9a7100}.anom .a.info .ic{background:var(--blue-soft);color:var(--blue-ink)}.anom .a small{display:block;color:var(--ink-3);font-size:11.5px;margin-top:2px}.recon .ln{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.recon .ln:last-child{border-bottom:0}.recon .ln small{display:block;color:var(--ink-3);font-size:11.5px}.recon .ln.pending{background:var(--amber-soft);margin:0 -12px;padding:10px 12px;border-radius:8px;border-bottom:0}.recon .ln.ok{opacity:.6}.recon .ln.ok .st{color:var(--ok);font-weight:700}.recon .ln.dispute .st{color:var(--bad);font-weight:700}.totalline{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:12px;border-top:2px solid var(--ink);font-weight:800;font-size:15px}.phone-wrap{display:grid;grid-template-columns:420px 1fr;gap:28px;align-items:start}.phone{width:390px;height:844px;border-radius:44px;background:#0f1220;padding:12px;box-shadow:0 30px 60px #141a2e59,inset 0 0 0 2px #2a2f45;position:relative;margin:0 auto}.phone .screen{width:100%;height:100%;border-radius:34px;background:var(--bg);overflow:hidden;position:relative;display:flex;flex-direction:column}.phone .notch{position:absolute;top:12px;left:50%;transform:translate(-50%);width:120px;height:30px;background:#0f1220;border-radius:0 0 18px 18px;z-index:5}.ph-top{padding:44px 18px 10px;background:#fff;border-bottom:1px solid var(--line)}.ph-top .cls{font-weight:800;font-size:17px;letter-spacing:-.02em;display:flex;justify-content:space-between;align-items:center}.ph-top .cls .online{font-size:11px;color:var(--ok);font-weight:700;display:flex;align-items:center;gap:5px}.ph-top .cls .online i{width:7px;height:7px;border-radius:50%;background:var(--ok)}.ph-top .meta{font-size:12px;color:var(--ink-3);margin-top:2px}.ph-remind{margin:10px 14px 0;background:var(--amber-soft);border-radius:10px;padding:8px 10px;font-size:11.5px;color:#7a5a00;line-height:1.45}.ph-body{flex:1;min-height:0;overflow:auto;padding:12px 14px 90px}.kids{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.kid{display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent}.kid .av{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:20px;color:#fff;position:relative;border:3px solid transparent;transition:border-color var(--fast),transform var(--fast) var(--spring)}.kid .av .d{position:absolute;right:2px;top:2px;width:12px;height:12px;border-radius:50%;background:var(--blue);border:2px solid #fff;opacity:0;transform:scale(.5);transition:all var(--fast) var(--spring)}.kid.noted .av .d{opacity:1;transform:scale(1)}.kid .n{font-size:12px;font-weight:700}.kid .s{font-size:10.5px;color:var(--ink-3);margin-top:-4px}.kid.present .av{border-color:var(--ok);animation:tap .35s var(--spring)}.kid.absent .av{border-color:var(--bad);animation:tap .35s var(--spring)}.kid.excused .av{border-color:var(--gray);opacity:.6}.kid.present .av:after,.kid.absent .av:after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid currentColor;opacity:0;animation:pulse .6s ease-out}.kid.present .av{color:var(--ok)}.kid.absent .av{color:var(--bad)}@keyframes tap{0%{transform:scale(1)}40%{transform:scale(.9)}to{transform:scale(1)}}.micbar{position:absolute;left:0;right:0;bottom:0;padding:10px 14px 18px;background:linear-gradient(180deg,rgba(245,247,251,0),var(--bg) 30%)}.mic{display:flex;align-items:center;gap:10px}.mic .big{flex:1;height:52px;border-radius:16px;background:var(--ink);color:#fff;font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;gap:10px;transition:transform var(--fast) var(--spring),background var(--base)}.mic .big:active{transform:scale(.97)}.mic .big.rec{background:var(--bad);animation:recpulse 1.2s ease-in-out infinite}@keyframes recpulse{50%{box-shadow:0 0 0 8px #e5484d2e}}.mic .small{height:52px;padding:0 14px;border-radius:16px;background:#fff;border:1px solid var(--line-2);font-weight:700;font-size:12.5px}.ph-status{display:flex;justify-content:space-between;font-size:11.5px;color:var(--ink-3);margin-bottom:8px;font-weight:600}.transcript{margin:12px 0 0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;display:none}.transcript.on{display:block;animation:rise var(--base) var(--out)}.transcript .who{font-size:11px;font-weight:700;color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em}.transcript .tx{font-size:13.5px;margin-top:4px;line-height:1.5;min-height:20px}.fill{margin-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:6px}.fill div{background:var(--surface-2);border-radius:8px;padding:7px 9px;font-size:11.5px;opacity:0;transform:translateY(4px)}.fill div.on{animation:rise .35s var(--out) forwards}.fill div b{display:block;font-size:13px;margin-top:1px}.fill div.wide{grid-column:1/-1}.msgcard{margin-top:10px;border:1px solid #DCE4FB;background:#f7f9ff;border-radius:12px;padding:10px 12px;font-size:12.5px;line-height:1.5;display:none}.msgcard.on{display:block;animation:rise .35s var(--out)}.msgcard .src{font-size:10.5px;color:var(--blue-ink);font-weight:700;margin-bottom:4px;display:flex;align-items:center;gap:5px}.msgcard .acts{display:flex;gap:6px;margin-top:8px}.sentok{display:none;align-items:center;gap:8px;color:var(--ok);font-weight:700;font-size:12.5px;margin-top:8px}.sentok.on{display:flex;animation:rise .3s var(--out)}.side-notes{display:flex;flex-direction:column;gap:14px}.side-notes .card{padding:16px 18px}.side-notes h3{font-size:14px;margin-bottom:8px}.side-notes p{margin:0;font-size:13px;color:var(--ink-2);line-height:1.55}.cert{display:flex;gap:12px;align-items:flex-start}.cert .ic{width:38px;height:38px;border-radius:10px;background:var(--amber-soft);display:grid;place-items:center;color:#9a6200;flex:0 0 auto}.toasts{position:fixed;right:22px;bottom:22px;display:flex;flex-direction:column;gap:8px;z-index:90}.toast{background:var(--ink);color:#fff;padding:11px 14px;border-radius:12px;box-shadow:var(--sh-3);font-size:13px;display:flex;align-items:center;gap:10px;animation:toastIn .45s var(--spring) both;max-width:360px}.toast.out{animation:toastOut .3s ease forwards}.toast .ic{width:22px;height:22px;border-radius:50%;background:var(--ok);display:grid;place-items:center;flex:0 0 auto}.toast .ic.blue{background:var(--blue)}.toast .ic.amber{background:var(--amber)}.toast small{display:block;color:#b9c2d6;font-size:11.5px}@keyframes toastIn{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}@keyframes toastOut{to{opacity:0;transform:translateY(6px)}}.answer{position:absolute;left:0;right:0;top:48px;background:#fff;border:1px solid #DCE4FB;border-radius:16px;box-shadow:var(--sh-3);padding:16px 18px;z-index:50;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity var(--base),transform var(--base) var(--out);text-align:left}.answer.on{opacity:1;transform:none;pointer-events:auto}.answer .q{font-size:12px;color:var(--ink-3);font-weight:600}.answer .think{display:flex;gap:5px;align-items:center;margin:10px 0;color:var(--ink-3);font-size:12.5px}.answer .think i{width:6px;height:6px;border-radius:50%;background:var(--blue);animation:bounce 1s infinite}.answer .think i:nth-child(2){animation-delay:.15s}.answer .think i:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-4px);opacity:1}}.answer table{width:100%;border-collapse:collapse;font-size:12.5px;margin-top:8px}.answer th{text-align:left;color:var(--ink-3);font-weight:600;font-size:11.5px;padding:6px 8px;border-bottom:1px solid var(--line)}.answer td{padding:7px 8px;border-bottom:1px solid var(--line)}.answer tr:last-child td{border-bottom:0}.answer .concl{margin-top:10px;font-size:13.5px;line-height:1.5}.answer .acts{display:flex;gap:8px;margin-top:12px}.bars{display:flex;align-items:flex-end;gap:5px;height:34px}.bars i{flex:1;background:var(--blue-soft);border-radius:3px 3px 0 0;transform-origin:bottom;animation:grow .6s var(--out) both}.bars i.hi{background:var(--blue)}@keyframes grow{0%{transform:scaleY(0)}}.hint{position:fixed;left:22px;bottom:22px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px;font-size:12px;color:var(--ink-2);box-shadow:var(--sh-2);z-index:60;display:flex;gap:10px;align-items:center;max-width:420px}.hint b{color:var(--ink)}.hint .x{margin-left:auto;color:var(--ink-3)}.divider{height:1px;background:var(--line);margin:12px 0}.muted{color:var(--ink-3)}.small{font-size:12px}.tag-src{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:700;color:var(--blue-ink);background:var(--blue-soft);padding:2px 7px;border-radius:999px}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.bead{transform:none;opacity:1}}@media (max-width:1100px){.kpis{grid-template-columns:repeat(2,1fr)}.g-2-1,.g-3-2,.g-1-1,.g-1-1-1,.phone-wrap{grid-template-columns:1fr}.beadmap{grid-template-columns:repeat(12,1fr)}.big3,.branches{grid-template-columns:1fr}}
