.ar-tabs{align-items:center;margin-bottom:14px}.ar-tabs .chip{padding:6px 15px;font-weight:500}.ar-tabs .chip.on,.ar-tabs .chip.on:hover{background:var(--accent);border-color:transparent;color:#fff;box-shadow:0 6px 18px #007aff47}.ar-grid-2{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:14px;align-items:start}@media (max-width: 900px){.ar-grid-2{grid-template-columns:1fr}}.ar-aging{display:grid;gap:11px}.ar-aging-row{display:grid;grid-template-columns:86px minmax(0,1fr) 92px 46px;align-items:center;gap:10px}.ar-aging-k{font-size:12px;color:var(--muted);white-space:nowrap}.ar-aging-track{height:8px;border-radius:999px;background:var(--track);overflow:hidden}.ar-aging-track>i{display:block;height:100%;border-radius:999px;transition:width .5s ease}.ar-aging-v{font-size:13px;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.ar-aging-p{font-size:12px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.ar-health{display:grid;gap:14px}.ar-health-main{display:flex;align-items:baseline;gap:9px}.ar-health-num{font-size:32px;font-weight:700;letter-spacing:-1px;line-height:1.1;font-variant-numeric:tabular-nums}.ar-health-lb{font-size:12px;color:var(--muted)}.ar-health-bar{height:10px;border-radius:999px;background:var(--track);overflow:hidden}.ar-health-bar>i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .5s ease}.ar-health-list{display:grid;gap:9px}.ar-health-list>div{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;padding-bottom:9px;border-bottom:1px solid var(--hairline)}.ar-health-list>div:last-child{border-bottom:0;padding-bottom:0}.ar-health-list span{color:var(--muted)}.ar-health-list b{font-variant-numeric:tabular-nums;font-weight:600}.ar-setup{background:var(--glass);border:1px solid var(--glass-line);border-radius:var(--radius-sm);padding:16px 18px;margin-bottom:16px;box-shadow:var(--shadow)}.ar-setup-hd{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:15px}.ar-setup-hd b{font-size:14px}.ar-setup-hd>span{font-size:12px;color:var(--muted)}.ar-setup-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}@media (max-width: 900px){.ar-setup-steps{grid-template-columns:1fr;gap:12px}}.ar-step{display:flex;gap:10px}.ar-step-n{flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:1px}.ar-step-t{font-size:13px;font-weight:600;margin-bottom:3px}.ar-step-d{font-size:12px;color:var(--muted);line-height:1.62}.ar-tip{margin-top:13px;font-size:12px;color:var(--muted);line-height:1.6}.ar-dist{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:4px}@media (max-width: 700px){.ar-dist{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}}.ar-dist-i{text-align:center}.ar-dist-k{font-size:12.5px;color:var(--muted);margin-bottom:2px}.ar-dist-v{font-size:24px;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums}.ar-dist-bar{height:6px;border-radius:999px;background:var(--track);margin-top:7px;overflow:hidden}.ar-dist-bar>i{display:block;height:100%;border-radius:999px;background:var(--accent);transition:width .45s ease}.ar-dist-i.risk .ar-dist-k,.ar-dist-i.risk .ar-dist-v{color:var(--down)}.ar-dist-i.risk .ar-dist-bar>i{background:var(--down)}.ar-suggest{display:block;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ar-page .empty{padding:30px 20px}.ar-empty{display:grid;justify-items:center;gap:3px}.ar-empty-ico{width:42px;height:42px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:700;margin-bottom:7px}.ar-empty-t{font-size:13.5px;font-weight:600;color:var(--text)}.ar-empty-d{font-size:12px;color:var(--muted);line-height:1.62;max-width:400px;margin-top:2px}@media (max-width: 600px){.ar-aging-row{grid-template-columns:74px minmax(0,1fr) 78px}.ar-aging-p{display:none}.ar-health-num{font-size:26px}.ar-tabs .chip{padding:6px 12px}}.sup-mgr{display:grid;grid-template-columns:350px minmax(0,1fr);gap:14px}.sup-form{border:1px solid var(--border);border-radius:10px;padding:12px;background:#588cff0a;align-self:start}.sup-form-title{font-weight:600;font-size:13px;margin-bottom:10px;padding-left:8px;border-left:3px solid var(--accent)}.sup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px}.sup-f{display:flex;flex-direction:column;gap:4px;min-width:0}.sup-f.span2{grid-column:1 / -1}.sup-f label{font-size:12px;color:var(--muted)}.sup-f input,.sup-f select{height:32px;padding:0 8px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text);font-size:13px;width:100%;box-sizing:border-box}.sup-form-ops{display:flex;gap:8px;margin-top:10px}.sup-form-ops button{height:32px;padding:0 12px;font-size:13px}.sup-list-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.sup-list-head input{flex:1;height:32px;padding:0 8px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text);font-size:13px}.sup-sub{font-size:11.5px;margin-top:2px}.sup-tabs{display:flex;align-items:center;gap:6px;margin-bottom:10px;flex-wrap:wrap}.sup-tabs button{height:30px;padding:0 12px;font-size:12.5px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer}.sup-tabs button.on{background:var(--accent);border-color:var(--accent);color:#fff}.sup-f .req{color:var(--red);margin-left:2px}@media (max-width: 768px){.sup-mgr{grid-template-columns:minmax(0,1fr)}.sup-grid{grid-template-columns:1fr}}.skm-tip{margin-bottom:14px;padding:12px 16px;border-radius:8px;font-size:13px;line-height:2;background:#588cff14;border:1px solid var(--border)}.skm-tip b{margin:0 2px}.skm-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}.skm-toolbar select,.skm-toolbar input{height:32px;padding:0 8px;border:1px solid var(--border);border-radius:6px;background:var(--bg-input, transparent);color:var(--text);font-size:13px}.skm-search{min-width:240px;flex:1}.skm-actions{display:flex;gap:6px;flex-wrap:wrap;margin-left:auto}.skm-actions button{height:32px;padding:0 10px;font-size:13px}.skm-ops{display:flex;gap:6px}.skm-ops button.link{background:none;border:none;color:var(--accent);cursor:pointer;padding:0;font-size:12px}.skm-ops button.link.danger{color:var(--danger, #e5484d)}.skm-pager{display:flex;align-items:center;gap:10px;padding-top:8px;font-size:13px}.skm-bulk{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;padding:10px 12px;border:1px dashed var(--border);border-radius:8px;background:#588cff0d;font-size:13px}.skm-bulk input,.skm-bulk select{height:30px;padding:0 8px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text)}.skm-form{max-height:62vh;overflow:auto}.skm-group{margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--border)}.skm-group:last-child{border-bottom:none}.skm-group-title{font-weight:600;font-size:13px;margin-bottom:8px;padding-left:8px;border-left:3px solid var(--accent)}.skm-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.skm-field{display:flex;flex-direction:column;gap:4px}.skm-field.span2{grid-column:span 2}.skm-field label{font-size:12px;color:var(--muted)}.skm-field .req{color:var(--danger, #e5484d);margin-left:2px}.skm-field input,.skm-field select,.skm-field textarea{padding:6px 8px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text);font-size:13px}.cat-mgr{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cat-col-title{font-weight:600;font-size:13px;margin-bottom:6px;padding-left:8px;border-left:3px solid var(--accent)}.cat-list{max-height:46vh;overflow:auto;border:1px solid var(--border);border-radius:8px}.cat-row{display:flex;align-items:center;gap:8px;padding:7px 10px;font-size:13px;cursor:pointer;border-bottom:1px solid var(--border)}.cat-row:last-child{border-bottom:none}.cat-row:hover{background:#588cff0f}.cat-row.active{background:#588cff24}.cat-name{flex:1;display:flex;align-items:center;gap:5px}.cat-used{color:var(--muted);font-size:12px}.cat-ops{display:flex;gap:6px}.cat-ops button.link{background:none;border:none;color:var(--accent);cursor:pointer;padding:0;font-size:12px}.cat-ops button.link.danger{color:var(--danger, #e5484d)}.cat-add{display:flex;gap:6px;margin-top:8px}.cat-add input{flex:1;height:32px;padding:0 8px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text)}.cat-add button{height:32px;padding:0 12px;font-size:13px}.skm .tbl-wrap table{font-size:13px}.skm .tbl-wrap th{padding:9px 12px;font-size:12px;letter-spacing:.02em;color:var(--muted);background:#7878800f;white-space:nowrap}.skm .tbl-wrap td{padding:11px 12px;line-height:1.55;vertical-align:middle}.skm .tbl-wrap tbody tr{border-top:1px solid rgba(120,120,128,.1)}.skm .tbl-wrap tbody tr:hover{background:#588cff0d}.skm .tbl-wrap td:first-child,.skm .tbl-wrap th:first-child{padding-left:14px}.skm-ops{gap:10px}.skm-ops button.link{font-size:12.5px;line-height:1.6}.skm-sup{display:inline-flex;align-items:center;gap:6px}.skm-pick-row{display:flex;gap:6px;align-items:center}.skm-pick-row select{flex:1;min-width:0}.skm-pick-add{width:34px;height:32px;padding:0;flex:0 0 34px;font-size:16px;line-height:1;border-radius:6px}@media (max-width: 768px){.cat-mgr{grid-template-columns:1fr}.skm .tbl-wrap td,.skm .tbl-wrap th{padding:9px 10px}}@media (max-width: 768px){.skm-fields{grid-template-columns:1fr}.skm-field.span2{grid-column:span 1}.skm-search{min-width:140px}.skm-actions{margin-left:0}}.profit-page .kpi.pf-key{background:linear-gradient(180deg,#007aff12,#007aff00) padding-box,var(--card);border-color:#007aff38}.profit-page .kpi.pf-key .value{color:var(--accent)}.pf-health{display:grid;grid-template-columns:330px minmax(0,1fr);gap:24px;align-items:stretch}.pf-gauge{border-right:1px solid var(--hairline);padding-right:24px;display:flex;flex-direction:column;justify-content:center}.pf-gauge-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;color:var(--muted);margin-bottom:2px}.pf-gauge-num{font-size:48px;font-weight:700;line-height:1.02;letter-spacing:-1.2px;font-variant-numeric:tabular-nums;margin-top:4px}.pf-gauge-num small{font-size:20px;font-weight:600;margin-left:3px;color:var(--muted);letter-spacing:0}.pf-gauge-bar{position:relative;height:9px;border-radius:999px;background:var(--track);margin-top:16px}.pf-gauge-bar>i{display:block;height:100%;border-radius:999px;transition:width .55s cubic-bezier(.4,0,.2,1)}.pf-gauge-bar>b{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--muted);opacity:.5;border-radius:2px}.pf-gauge-scale{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-top:7px;font-variant-numeric:tabular-nums}.pf-gauge-note{font-size:12px;color:var(--muted);margin-top:10px;line-height:1.6}.pf-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-content:center}.pf-m-k{font-size:12px;color:var(--muted)}.pf-m-v{font-size:23px;font-weight:700;margin-top:4px;line-height:1.2;font-variant-numeric:tabular-nums}.pf-m-f{font-size:11.5px;color:var(--muted);margin-top:3px;line-height:1.45}.pf-verdict{margin-top:20px;padding:12px 15px;border-radius:11px;background:var(--accent-soft);font-size:13px;line-height:1.8;color:var(--text)}.pf-verdict.risk{background:#ff3b3014}.pf-verdict b{color:var(--accent);font-variant-numeric:tabular-nums}.pf-verdict.risk b{color:var(--down)}.pf-verdict .pf-vd-dim{color:var(--muted)}.pf-split{margin-top:16px}.pf-split-t{font-size:12.5px;color:var(--muted);margin-bottom:9px;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.pf-split-t b{color:var(--text);font-size:13px}.pf-split-bar{display:flex;height:28px;border-radius:8px;overflow:hidden;background:var(--track)}.pf-split-bar>span{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#fff;overflow:hidden;white-space:nowrap;transition:width .55s cubic-bezier(.4,0,.2,1)}.pf-split-bar>span+span{box-shadow:inset 1px 0 #ffffff59}.pf-split-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:11px}.pf-lg{display:flex;align-items:center;gap:6px;font-size:12px}.pf-lg>i{width:9px;height:9px;border-radius:3px;flex:0 0 auto}.pf-lg>span{color:var(--muted)}.pf-lg>b{font-variant-numeric:tabular-nums;font-weight:600}.pf-cost-list{margin-top:10px}.pf-cost-row{display:grid;grid-template-columns:96px minmax(0,1fr) 84px 58px;gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid var(--hairline);font-size:12.5px}.pf-cost-row:last-child{border-bottom:0}.pf-cost-k{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pf-cost-bar{height:6px;border-radius:999px;background:var(--track);overflow:hidden}.pf-cost-bar>i{display:block;height:100%;border-radius:999px;background:var(--accent);opacity:.72;transition:width .5s cubic-bezier(.4,0,.2,1)}.pf-cost-v{text-align:right;font-variant-numeric:tabular-nums}.pf-cost-s{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}.pf-cost-row.pf-cost-zero .pf-cost-k,.pf-cost-row.pf-cost-zero .pf-cost-v,.pf-cost-row.pf-cost-zero .pf-cost-s{opacity:.5}@media (max-width: 560px){.pf-cost-row{grid-template-columns:84px minmax(0,1fr) 70px}.pf-cost-s{display:none}}.pf-fold-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}.pf-fold-body{margin-top:15px}.pf-fold-tag{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;background:var(--fill);font-size:11.5px;color:var(--muted)}.pf-fold-tag.on{background:#ff950024;color:#b26a00}.pf-insight{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.pf-i{padding:11px 13px;border-radius:10px;background:var(--fill);border:1px solid var(--hairline)}.pf-i-k{font-size:11.5px;color:var(--muted)}.pf-i-v{font-size:15px;font-weight:600;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pf-i-f{font-size:11.5px;color:var(--muted);margin-top:2px;font-variant-numeric:tabular-nums}.pf-i.warn .pf-i-v{color:var(--warn)}.pf-i.good .pf-i-v{color:var(--up)}.pf-lift{margin-top:12px;padding:10px 13px;border-radius:10px;background:var(--fill);font-size:12.5px;line-height:1.7;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.pf-lift .pf-up{color:var(--up);font-weight:600;font-variant-numeric:tabular-nums}.pf-lift .pf-down{color:var(--down);font-weight:600;font-variant-numeric:tabular-nums}.profit-page .empty{padding:26px 18px}.pf-empty{display:grid;justify-items:center;gap:3px}.pf-empty-ico{width:40px;height:40px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;margin-bottom:7px}.pf-empty-t{font-size:13px;font-weight:600;color:var(--text)}.pf-empty-d{font-size:12px;color:var(--muted);line-height:1.62;max-width:380px;margin-top:2px}@media (max-width: 1080px){.pf-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}@media (max-width: 900px){.pf-health{grid-template-columns:minmax(0,1fr);gap:18px}.pf-gauge{border-right:0;border-bottom:1px solid var(--hairline);padding-right:0;padding-bottom:18px}.pf-gauge-num{font-size:40px}.pf-insight{grid-template-columns:minmax(0,1fr)}}@media (max-width: 560px){.pf-split-bar>span{font-size:10px}.pf-verdict{font-size:12.5px;padding:11px 13px}}.af-page{display:grid;gap:14px}.af-toast{padding:8px 12px;border-radius:8px;font-size:13px;color:var(--accent);background:var(--accent-soft)}.af-mute{color:var(--muted);font-size:12px}.af-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;letter-spacing:.3px}.af-denied{padding:18px;font-size:13px;color:var(--muted)}.af-try{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.af-try label{display:grid;gap:4px;font-size:12px;color:var(--muted)}.af-try input,.af-try select{width:160px}.af-try-out{flex:1;min-width:260px;padding:8px 10px;border-radius:8px;background:var(--fill);font-size:13px}.af-chain{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0}.af-node{display:inline-flex;flex-direction:column;padding:4px 10px;border-radius:8px;font-size:12px;border:1px solid var(--hairline);background:var(--card-solid, var(--bg-card))}.af-node em{font-style:normal;font-size:11px;color:var(--muted)}.af-node.review{border-left:3px solid #007aff}.af-node.finance{border-left:3px solid #ff9500}.af-node.pay{border-left:3px solid #34c759}.af-arrow{font-style:normal;color:var(--muted);font-size:12px}.af-flows{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:12px}.af-flow{padding:12px 14px;border-radius:12px;border:1px solid var(--hairline);background:var(--fill)}.af-flow.off{opacity:.58}.af-flow-h{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:14px}.af-flow-range{margin:4px 0 2px;font-size:12px;color:var(--muted)}.af-flow-note{font-size:12px;color:var(--muted)}.af-flow-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;padding-top:6px;border-top:1px dashed var(--hairline)}.af-op{display:inline-flex;gap:10px}.af-empty{padding:20px;text-align:center;font-size:13px;color:var(--muted)}.af-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.af-sub{margin:10px 0 6px;font-size:12px;font-weight:600;color:var(--muted)}.af-step-row{display:grid;grid-template-columns:26px 1.2fr 1fr 1.4fr auto;gap:6px;align-items:center;margin-bottom:6px}.af-step-no{width:22px;height:22px;line-height:22px;text-align:center;border-radius:50%;font-size:12px;background:var(--fill);color:var(--muted)}.af-items{display:flex;flex-wrap:wrap;gap:6px}.af-chip{padding:4px 10px;border-radius:999px;font-size:12px;border:1px solid var(--hairline);background:transparent;color:inherit;cursor:pointer}.af-chip.on{background:var(--accent);border-color:var(--accent);color:#fff}.af-check{display:flex;align-items:center;gap:6px;margin:6px 0;font-size:13px}@media (max-width: 768px){.af-flows,.af-form-grid{grid-template-columns:1fr}.af-step-row{grid-template-columns:26px 1fr;grid-auto-rows:min-content}.af-try input,.af-try select{width:100%}}.af-gap{margin-top:8px;padding:7px 10px;border-radius:8px;font-size:12px;line-height:1.6;color:#a15c00;background:#ff95001f;border:1px solid rgba(255,149,0,.28)}[data-theme=dark] .af-gap{color:#ffb84d}.ss{display:flex;flex-direction:column;gap:12px}.ss-alert{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 12px;border-radius:12px;font-size:12.5px;border:1px solid color-mix(in srgb,var(--down, #dc2626) 40%,transparent);background:color-mix(in srgb,var(--down, #dc2626) 8%,transparent)}.ss-alert b{color:var(--down, #dc2626)}.ss-alert span{color:var(--muted)}.ss-alert button{padding:3px 10px;font-size:12px}.ss-presets{display:flex;gap:6px;flex-wrap:wrap}.ss-presets button{padding:4px 11px;font-size:12.5px}.ss-ops{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.ss-ops button{padding:3px 9px;font-size:12px}.ss-bar{flex:1;height:12px;border-radius:999px;background:var(--fill, #eef0f6);overflow:hidden;min-width:60px}.ss-bar>i{display:block;height:100%;background:var(--brand, #3355ff);border-radius:999px}.ss-goals{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:12px}.ss-goal{border:1px solid var(--hairline, #e5e8f0);border-radius:12px;padding:11px 12px;display:flex;flex-direction:column;gap:6px;background:var(--bg, #fff)}.ss-goal.st-done{border-color:var(--up, #16a34a);background:color-mix(in srgb,var(--up, #16a34a) 7%,var(--bg, #fff))}.ss-goal.st-warn{border-color:color-mix(in srgb,var(--warn, #d97706) 55%,var(--hairline))}.ss-goal.st-danger{border-color:var(--down, #dc2626);background:color-mix(in srgb,var(--down, #dc2626) 6%,var(--bg, #fff))}.ss-goal-top{display:flex;align-items:center;gap:6px;justify-content:space-between}.ss-goal-top b{font-size:13.5px}.ss-goal-rate{display:flex;align-items:baseline;gap:6px;font-size:18px;font-variant-numeric:tabular-nums}.ss-goal-rate .muted{font-size:11.5px}.ss-goal-meta{font-size:12px;color:var(--muted)}.ss-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:4px 10px;max-height:240px;overflow:auto;border:1px solid var(--hairline, #e5e8f0);border-radius:10px;padding:8px 10px}.ss-pick-item{display:flex;align-items:center;gap:6px;font-size:12.5px;cursor:pointer}@media (max-width: 768px){.ss-goals{grid-template-columns:1fr}}.ws{display:flex;flex-direction:column;gap:12px}.ws-alert{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 12px;border-radius:12px;font-size:12.5px;border:1px solid color-mix(in srgb,var(--down, #dc2626) 40%,transparent);background:color-mix(in srgb,var(--down, #dc2626) 8%,transparent)}.ws-alert b{color:var(--down, #dc2626)}.ws-alert span{color:var(--muted)}.ws-alert button{padding:3px 10px;font-size:12px}.ws-lead-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ws-view{display:flex;gap:6px}.ws-selbar{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}.ws-selbar button{padding:3px 9px;font-size:12px}.ws-funnel-wrap{margin:8px 0}.ws-funnel-row{display:flex;align-items:center;gap:8px;font-size:12.5px;margin-bottom:5px}.ws-funnel-name{width:60px;flex:none}.ws-funnel-bar{flex:1;height:14px;border-radius:999px;background:var(--fill, #eef0f6);overflow:hidden}.ws-funnel-bar>i{display:block;height:100%;background:var(--brand, #3355ff);border-radius:999px}.ws-funnel-val{width:34px;text-align:right;font-variant-numeric:tabular-nums}.ws-funnel-rate{width:48px;text-align:right;font-style:normal;color:var(--muted)}.ws-funnel-amt{width:78px;text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}.ws-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ws-col{background:var(--fill, #f7f8fc);border:1px solid var(--hairline, #e5e8f0);border-radius:12px;padding:10px}.ws-col-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.ws-col-head b{font-size:13px}.ws-col-body{display:flex;flex-direction:column;gap:8px;max-height:480px;overflow:auto}.ws-lead{background:var(--bg, #fff);border:1px solid var(--hairline, #e5e8f0);border-radius:10px;padding:9px 10px;display:flex;flex-direction:column;gap:5px}.ws-lead.warn{border-color:color-mix(in srgb,var(--warn, #d97706) 55%,var(--hairline))}.ws-lead.danger{border-color:var(--down, #dc2626);background:color-mix(in srgb,var(--down, #dc2626) 6%,var(--bg, #fff))}.ws-lead-top{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:13px}.ws-lead-meta{font-size:11.5px;color:var(--muted)}.ws-lead-body{font-size:11.5px;color:var(--muted);line-height:1.6}.ws-lead-ops{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}.ws-lead-ops button{padding:3px 9px;font-size:12px}.ws-ops{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.ws-link{padding:3px 9px;font-size:12px;text-decoration:none;border:1px solid var(--hairline, #e5e8f0);border-radius:8px;color:var(--brand, #3355ff)}@media (max-width: 1280px){.ws-board{grid-template-columns:1fr}}.tr-cal-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.tr-cal-bar input[type=month]{width:150px}.tr-cal-bar button{padding:3px 9px;font-size:12px}.tr-cal-sum{font-size:12.5px;color:var(--muted)}.tr-cal-scroll{overflow-x:auto;border:1px solid var(--hairline, #e5e8f0);border-radius:10px}.tr-cal-tbl{border-collapse:collapse;font-size:11.5px;width:max-content}.tr-cal-tbl th,.tr-cal-tbl td{border:1px solid var(--hairline, #e5e8f0);padding:2px 3px;text-align:center;min-width:40px;height:30px;white-space:nowrap}.tr-cal-tbl thead th{background:var(--fill, #f7f8fc);font-weight:600}.tr-cal-tbl thead th b{display:block;font-size:11px}.tr-cal-tbl thead th em{display:block;font-style:normal;font-size:10px;color:var(--muted)}.tr-cal-tbl th.we,.tr-cal-tbl td.we{background:color-mix(in srgb,var(--muted) 8%,transparent)}.tr-cal-tbl th.today,.tr-cal-tbl td.today{box-shadow:inset 0 0 0 2px var(--brand, #3355ff)}.tr-cal-name{position:sticky;left:0;z-index:2;background:var(--bg, #fff);text-align:left!important;min-width:118px;max-width:168px;overflow:hidden;text-overflow:ellipsis;padding-left:8px!important}.tr-cal-tbl thead .tr-cal-name{z-index:3}.tr-cal-total{background:var(--fill, #f7f8fc);font-weight:600}.tr-cal-daily td{font-size:10.5px;color:var(--muted)}.tr-cal-daily td.has{color:var(--fg, #111);font-weight:600}.tr-cell{cursor:pointer}.tr-cell:hover{outline:2px solid var(--brand, #3355ff);outline-offset:-2px}.tr-cell.st-wait{background:color-mix(in srgb,var(--brand, #3355ff) 18%,transparent)}.tr-cell.st-done{background:color-mix(in srgb,var(--up, #16a34a) 22%,transparent)}.tr-cell.st-cancel{background:color-mix(in srgb,var(--muted) 18%,transparent);color:var(--muted)}.tr-cal-legend{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:8px;font-size:11.5px;color:var(--muted)}.tr-cal-legend i{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:4px;vertical-align:-1px}.tr-cal-legend i.st-wait{background:color-mix(in srgb,var(--brand, #3355ff) 40%,transparent)}.tr-cal-legend i.st-done{background:color-mix(in srgb,var(--up, #16a34a) 50%,transparent)}.tr-cal-legend i.st-cancel{background:color-mix(in srgb,var(--muted) 40%,transparent)}.modal .foot .spacer{flex:1}.wm{display:flex;flex-direction:column;gap:14px}.wm-pace{display:flex;flex-direction:column;gap:8px;margin:12px 0 4px}.wm-pace-row{display:flex;align-items:center;gap:10px}.wm-pace-label{width:60px;font-size:12.5px;color:var(--muted);flex:none}.wm-pace-foot{font-size:12px;color:var(--muted);flex:none}.wm-bar{position:relative;flex:1;height:16px;border-radius:999px;background:var(--fill, #eef0f6);overflow:hidden}.wm-bar>i{display:block;height:100%;border-radius:999px;background:var(--brand, #3355ff)}.wm-bar>i.ok{background:var(--up, #16a34a)}.wm-bar>i.warn{background:var(--warn, #d97706)}.wm-bar>i.danger{background:var(--down, #dc2626)}.wm-bar>em{position:absolute;right:8px;top:0;line-height:16px;font-size:11px;font-style:normal;color:var(--text);font-variant-numeric:tabular-nums}.wm-bar-lg{height:20px}.wm-bar-lg>em{line-height:20px}.wm-quad-wrap{margin-top:14px}.wm-quad{width:100%;max-width:520px;height:auto}.wm-quad-bg{fill:var(--fill, #f7f8fc);stroke:var(--hairline, #e5e8f0)}.wm-quad-mid{stroke:var(--hairline, #d5d9e6);stroke-dasharray:4 4}.wm-quad-tag{font-size:10.5px;fill:var(--muted);text-anchor:end}.wm-quad-tag.warn{fill:var(--warn, #d97706)}.wm-quad-axis{font-size:10.5px;fill:var(--muted)}.wm-bubble{fill-opacity:.55;stroke-width:1.5}.wm-bubble.ok{fill:var(--up, #16a34a);stroke:var(--up, #16a34a)}.wm-bubble.warn{fill:var(--warn, #d97706);stroke:var(--warn, #d97706)}.wm-bubble.danger{fill:var(--down, #dc2626);stroke:var(--down, #dc2626)}.wm-bubble-txt{font-size:10.5px;text-anchor:middle;fill:var(--text)}.wm-matrix{overflow:auto}.wm-matrix table{width:100%;border-collapse:collapse;font-size:12.5px}.wm-matrix th,.wm-matrix td{padding:7px 8px;border:1px solid var(--hairline, #e5e8f0);text-align:center}.wm-matrix th{color:var(--muted);font-weight:600;background:var(--fill, #f7f8fc)}.wm-row-name{text-align:left;font-weight:600;white-space:nowrap}.wm-ch-link{color:var(--text);text-decoration:none;border-bottom:1px dashed var(--hairline)}.wm-ch-link:hover{color:var(--brand, #3355ff)}.wm-cell{min-width:96px}.wm-cell b{display:block;font-size:13px}.wm-cell span{display:block;font-size:11px;color:var(--muted)}.wm-cell em{display:block;font-size:10.5px;font-style:normal}.wm-cell.ok{background:color-mix(in srgb,var(--up, #16a34a) 14%,transparent)}.wm-cell.warn{background:color-mix(in srgb,var(--warn, #d97706) 16%,transparent)}.wm-cell.danger{background:color-mix(in srgb,var(--down, #dc2626) 14%,transparent)}.wm-todos{display:flex;flex-direction:column;gap:6px;max-height:380px;overflow:auto}.wm-todo{display:flex;align-items:center;gap:10px;padding:7px 10px;border:1px solid var(--hairline, #e5e8f0);border-radius:10px;background:var(--fill, #f7f8fc)}.wm-todo.danger{border-color:var(--down, #dc2626);background:color-mix(in srgb,var(--down, #dc2626) 6%,transparent)}.wm-todo.warn{border-color:color-mix(in srgb,var(--warn, #d97706) 45%,var(--hairline))}.wm-todo-type{flex:none;font-size:11px;color:var(--muted);padding:2px 7px;border:1px solid var(--hairline, #e5e8f0);border-radius:999px}.wm-todo-main{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.wm-todo-main b{font-size:12.5px;font-weight:600}.wm-todo-main span{font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wm-todo-owner{flex:none;font-size:11.5px;color:var(--muted)}.wm-todo-go{flex:none;font-size:12px;color:var(--brand, #3355ff);text-decoration:none}.wm-cards{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1.4fr) minmax(180px,1fr);gap:16px}.wm-stat-row{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:12.5px}.wm-stat-row>span{width:46px;color:var(--muted);flex:none}.wm-stat-row>b{width:30px;text-align:right;font-variant-numeric:tabular-nums}.wm-card-overdue ul{margin:0;padding-left:16px}.wm-card-overdue li{font-size:12.5px;margin-bottom:4px}.wm-card-overdue li a{color:var(--text);text-decoration:none;border-bottom:1px dashed var(--hairline)}.wm-card-overdue li span{margin-left:6px;font-size:11px}@media (max-width: 1280px){.wm-cards{grid-template-columns:1fr}}.dc{display:flex;flex-direction:column;gap:12px}.dc-view{display:flex;gap:6px}.dc-selbar{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}.dc-selbar button{padding:3px 9px;font-size:12px}.dc-alert{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 12px;border-radius:12px;font-size:12.5px;border:1px solid color-mix(in srgb,var(--down, #dc2626) 40%,transparent);background:color-mix(in srgb,var(--down, #dc2626) 8%,transparent)}.dc-alert b{color:var(--down, #dc2626)}.dc-alert span{color:var(--muted)}.dc-alert button{padding:3px 10px;font-size:12px}.dc-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.dc-col{background:var(--fill, #f7f8fc);border:1px solid var(--hairline, #e5e8f0);border-radius:12px;padding:10px}.dc-col-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.dc-col-head b{font-size:13px}.dc-col-body{display:flex;flex-direction:column;gap:8px;max-height:560px;overflow:auto}.dc-card{background:var(--bg, #fff);border:1px solid var(--hairline, #e5e8f0);border-radius:10px;padding:9px 10px;display:flex;flex-direction:column;gap:5px}.dc-card.warn{border-color:color-mix(in srgb,var(--warn, #d97706) 55%,var(--hairline))}.dc-card.danger{border-color:var(--down, #dc2626);background:color-mix(in srgb,var(--down, #dc2626) 6%,var(--bg, #fff))}.dc-card-top{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.dc-card-title{font-size:13px}.dc-card-body{font-size:11.5px;color:var(--muted);line-height:1.6}.dc-card-meta{font-size:11.5px;color:var(--muted)}.dc-card-link{font-size:11.5px;color:var(--brand, #3355ff);text-decoration:none}.dc-card-ops{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}.dc-card-ops button{padding:3px 9px;font-size:12px}.dc-ops{display:flex;gap:6px;flex-wrap:wrap}.dc-bottom{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dc-bar-row{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:12.5px}.dc-bar-name{width:54px;flex:none}.dc-bar-row b{width:28px;text-align:right;font-variant-numeric:tabular-nums}.dc-bar{flex:1;height:12px;border-radius:999px;background:var(--fill, #eef0f6);overflow:hidden}.dc-bar>i{display:block;height:100%;background:var(--brand, #3355ff);border-radius:999px}.dc-trend{display:flex;align-items:flex-end;gap:3px;height:92px;position:relative}.dc-trend-col{flex:1;height:78px;display:flex;align-items:flex-end;gap:1px}.dc-trend-col>i{flex:1;min-width:3px;border-radius:2px 2px 0 0}.dc-trend-col>i.cr{background:color-mix(in srgb,var(--muted) 55%,transparent)}.dc-trend-col>i.cv{background:var(--up, #16a34a)}.dc-trend-legend{position:absolute;right:0;bottom:-4px;display:flex;gap:10px;font-size:10.5px;color:var(--muted)}.dc-trend-legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:3px}.dc-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;font-size:12.5px}.dc-detail>div{display:flex;gap:8px}.dc-detail span{color:var(--muted);width:68px;flex:none}.dc-detail-body{background:var(--fill, #f7f8fc);padding:10px;border-radius:10px;font-size:12.5px;line-height:1.8;white-space:pre-wrap;min-height:44px}@media (max-width: 1280px){.dc-board{grid-template-columns:repeat(2,minmax(0,1fr))}.dc-bottom{grid-template-columns:1fr}}.mg{display:flex;flex-direction:column;gap:12px}.mg-view{display:flex;gap:6px}.mg-selbar{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}.mg-selbar button{padding:3px 9px;font-size:12px}.mg-alert{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 12px;border-radius:12px;font-size:12.5px;border:1px solid color-mix(in srgb,var(--down, #dc2626) 40%,transparent);background:color-mix(in srgb,var(--down, #dc2626) 8%,transparent)}.mg-alert b{color:var(--down, #dc2626)}.mg-alert span{color:var(--muted)}.mg-alert button{padding:3px 10px;font-size:12px}.mg-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.mg-col{background:var(--fill, #f7f8fc);border:1px solid var(--hairline, #e5e8f0);border-radius:12px;padding:10px}.mg-col-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.mg-col-head b{font-size:13px}.mg-col-body{display:flex;flex-direction:column;gap:8px;max-height:560px;overflow:auto}.mg-card{background:var(--bg, #fff);border:1px solid var(--hairline, #e5e8f0);border-radius:10px;padding:9px 10px;display:flex;flex-direction:column;gap:5px}.mg-card.warn{border-color:color-mix(in srgb,var(--warn, #d97706) 55%,var(--hairline))}.mg-card.danger{border-color:var(--down, #dc2626);background:color-mix(in srgb,var(--down, #dc2626) 6%,var(--bg, #fff))}.mg-card-top{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.mg-card-title{font-size:13px}.mg-card-body{font-size:11.5px;color:var(--muted);line-height:1.6}.mg-card-meta{font-size:11.5px;color:var(--muted)}.mg-card-link{font-size:11.5px;color:var(--brand, #3355ff);text-decoration:none;border-top:1px dashed var(--hairline);padding-top:5px}.mg-card-ops{display:flex;gap:6px;margin-top:2px}.mg-card-ops button{padding:3px 9px;font-size:12px}.mg-bottom{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.mg-src-row{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:12.5px}.mg-src-name{width:54px;flex:none}.mg-src-row b{width:28px;text-align:right;font-variant-numeric:tabular-nums}.mg-bar{flex:1;height:12px;border-radius:999px;background:var(--fill, #eef0f6);overflow:hidden}.mg-bar>i{display:block;height:100%;background:var(--brand, #3355ff);border-radius:999px}.mg-trend{display:flex;align-items:flex-end;gap:2px;height:92px;position:relative}.mg-trend-col{flex:1;height:78px;display:flex;align-items:flex-end;gap:1px}.mg-trend-col>i{flex:1;min-width:2px;border-radius:2px 2px 0 0}.mg-trend-col>i.cr{background:color-mix(in srgb,var(--muted) 55%,transparent)}.mg-trend-col>i.cv{background:var(--up, #16a34a)}.mg-trend-legend{position:absolute;right:0;bottom:-4px;display:flex;gap:10px;font-size:10.5px;color:var(--muted)}.mg-trend-legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:3px}.mg-wh{font-size:12.5px;line-height:1.8}.mg-wh code{background:var(--fill, #f7f8fc);padding:2px 6px;border-radius:6px;font-size:12px;word-break:break-all}.mg-wh pre{background:var(--fill, #f7f8fc);padding:10px;border-radius:10px;font-size:11.5px;overflow:auto;margin:6px 0}.mg-wh ul{margin:6px 0;padding-left:18px;color:var(--muted)}.warn-txt{color:var(--warn, #d97706)}@media (max-width: 1280px){.mg-board,.mg-bottom{grid-template-columns:1fr}}.bc{display:flex;flex-direction:column;gap:12px}.bc-view{display:flex;gap:6px}.bc-selbar{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}.bc-selbar button{padding:3px 9px;font-size:12px}.bc-alert{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 12px;border-radius:12px;font-size:12.5px;border:1px solid color-mix(in srgb,var(--down, #dc2626) 40%,transparent);background:color-mix(in srgb,var(--down, #dc2626) 8%,transparent)}.bc-alert b{color:var(--down, #dc2626)}.bc-alert span{color:var(--muted)}.bc-alert button{padding:3px 10px;font-size:12px}.bc-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.bc-col{background:var(--fill, #f7f8fc);border:1px solid var(--hairline, #e5e8f0);border-radius:12px;padding:10px}.bc-col-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.bc-col-head b{font-size:13px}.bc-col-body{display:flex;flex-direction:column;gap:8px;max-height:560px;overflow:auto}.bc-card{background:var(--bg, #fff);border:1px solid var(--hairline, #e5e8f0);border-radius:10px;padding:9px 10px;display:flex;flex-direction:column;gap:5px}.bc-card.soon{border-color:color-mix(in srgb,var(--warn, #d97706) 55%,var(--hairline))}.bc-card.overdue{border-color:var(--down, #dc2626);background:color-mix(in srgb,var(--down, #dc2626) 6%,var(--bg, #fff))}.bc-card-top{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.bc-card-top a.badge{text-decoration:none}.bc-card-title{font-size:13px}.bc-card-body{font-size:11.5px;color:var(--muted);line-height:1.6}.bc-card-meta{font-size:11.5px;color:var(--muted)}.bc-card-ops{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}.bc-card-ops button{padding:3px 9px;font-size:12px}.bc-bottom{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.bc-src-row{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:12.5px}.bc-src-name{width:54px;flex:none}.bc-src-row b{width:28px;text-align:right;font-variant-numeric:tabular-nums}.bc-bar{flex:1;height:12px;border-radius:999px;background:var(--fill, #eef0f6);overflow:hidden}.bc-bar>i{display:block;height:100%;background:var(--brand, #3355ff);border-radius:999px}.bc-trend{display:flex;align-items:flex-end;gap:3px;height:92px;position:relative}.bc-trend-col{flex:1;height:78px;display:flex;align-items:flex-end;gap:1px}.bc-trend-col>i{flex:1;min-width:3px;border-radius:2px 2px 0 0}.bc-trend-col>i.cr{background:color-mix(in srgb,var(--muted) 55%,transparent)}.bc-trend-col>i.cv{background:var(--up, #16a34a)}.bc-trend-legend{position:absolute;right:0;bottom:-4px;display:flex;gap:10px;font-size:10.5px;color:var(--muted)}.bc-trend-legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:3px}.bc-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;font-size:12.5px}.bc-detail>div{display:flex;gap:8px}.bc-detail span{color:var(--muted);width:68px;flex:none}.bc-detail-body{background:var(--fill, #f7f8fc);padding:10px;border-radius:10px;font-size:12.5px;line-height:1.8;white-space:pre-wrap;min-height:60px}@media (max-width: 1280px){.bc-board{grid-template-columns:repeat(2,minmax(0,1fr))}.bc-bottom{grid-template-columns:1fr}}.clb-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.clb-tags button{padding:3px 9px;font-size:12px}.clb-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.clb-card{border:1px solid var(--hairline, #e5e8f0);border-radius:12px;padding:11px 12px;background:var(--bg, #fff);display:flex;flex-direction:column;gap:6px;cursor:pointer;transition:border-color .15s,box-shadow .15s}.clb-card:hover{border-color:var(--brand, #3355ff);box-shadow:0 4px 14px #0000000f}.clb-card-top{display:flex;align-items:flex-start;gap:6px;justify-content:space-between}.clb-card-top b{font-size:13.5px;line-height:1.35}.clb-card-sum{font-size:12.5px;color:var(--muted);line-height:1.5;min-height:34px}.clb-card-tags{display:flex;flex-wrap:wrap;gap:4px}.clb-card-foot{font-size:12px;color:var(--muted)}.clb-card-ops{display:flex;gap:6px;margin-top:2px}.clb-card-ops button{padding:2px 8px;font-size:12px}.clb-kanban{display:grid;grid-template-columns:repeat(4,minmax(210px,1fr));gap:10px}.clb-col{border:1px solid var(--hairline, #e5e8f0);border-radius:12px;background:var(--bg-soft, #fafbfd);display:flex;flex-direction:column}.clb-col-head{padding:8px 10px;border-bottom:1px solid var(--hairline, #e5e8f0);display:flex;justify-content:space-between;align-items:center}.clb-col-body{padding:8px;display:flex;flex-direction:column;gap:8px;max-height:520px;overflow:auto}.clb-alert{border:1px solid rgba(229,72,77,.3);background:#e5484d0f;border-radius:10px;padding:8px 10px;font-size:12.5px;margin-bottom:10px;line-height:1.8}@media (max-width: 900px){.clb-kanban{grid-template-columns:repeat(2,minmax(180px,1fr))}}@media (max-width: 768px){.clb-cards,.clb-kanban{grid-template-columns:1fr}}.kb-up{border:1px dashed #c3ccda;border-radius:10px;padding:14px 16px;margin-bottom:10px;background:#fbfcfe;cursor:pointer;transition:all .15s}.kb-up:hover{border-color:#2563eb;background:#f5f8ff}.kb-up.on{border-color:#2563eb;background:#eaf1ff;box-shadow:0 0 0 3px #2563eb1a}.kb-up-title{font-weight:600;font-size:14px;margin-bottom:4px}.kb-up-hint{color:#6b7280;font-size:12px;line-height:1.7}.kb-up-prog{margin-top:6px;font-size:12px;color:#2563eb;font-weight:600}.kb-res{border-radius:10px;padding:10px 14px;margin-bottom:10px;font-size:13px}.kb-res.good{background:#f0fdf4;border:1px solid #bbf7d0}.kb-res.bad{background:#fef2f2;border:1px solid #fecaca}.kb-res-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.kb-res-line{line-height:1.9}.kb-res-line.err{color:#b91c1c}.badge.new{background:#2563eb;color:#fff;margin-left:4px}.kb-pv-frame{width:100%;height:72vh;border:1px solid #e5e8ee;border-radius:8px;background:#fff}.kb-pv-img{max-width:100%;max-height:72vh;border-radius:8px}.kb-pv-load{padding:60px 0;text-align:center;color:#6b7280}.clb-card-top .badge+.badge{margin-left:4px}td .badge+.badge{margin-left:3px}.cm-tabs{display:flex;gap:6px;flex-wrap:wrap}.cm-tab{padding:6px 12px;border:1px solid #d8dee9;border-radius:999px;background:#fff;cursor:pointer;font-size:13px;color:#4b5563}.cm-tab.on{background:#2563eb;border-color:#2563eb;color:#fff}.cm-bar{height:6px;background:#eef1f6;border-radius:999px;overflow:hidden;margin:6px 0}.cm-bar i{display:block;height:100%;background:linear-gradient(90deg,#3b82f6,#22c55e)}.cm-aud-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}@media (max-width: 768px){.cm-aud-grid{grid-template-columns:1fr}}.ai-form{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin-bottom:8px}.ai-form .spacer{flex:1}.ai-form>div{min-width:150px}.ai-sec{display:flex;align-items:baseline;gap:10px;margin:10px 0 4px}.ai-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--hairline, #e5e8f0);border-radius:8px;margin-bottom:6px;font-size:13px}.ai-res .tbl-wrap table.ai-tbl input,.ai-res .tbl-wrap table.ai-tbl select{width:100%;padding:4px 6px;font-size:12.5px}.ai-tbl td{vertical-align:middle}.ai-bad{border-color:#e5484d!important;background:#e5484d0f}@media (max-width: 900px){.ai-form>div{min-width:45%}.ai-res .tbl-wrap{overflow-x:auto}}.mt-viz{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:12px;margin-bottom:12px}.mt-viz-row{display:flex;align-items:center;gap:16px}.mt-ring{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none}.mt-ring svg{display:block}.mt-ring circle{transition:stroke-dashoffset .5s ease}.mt-ring-txt{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.25;pointer-events:none}.mt-ring-txt b{font-size:16px}.mt-ring-txt span{font-size:11px;color:var(--muted)}.mt-stack-bar{width:100%;display:flex;border-radius:8px;overflow:hidden;background:#7878801f}.mt-stack-bar span{display:block;height:100%;transition:width .4s ease}.mt-legend{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;font-size:12px;color:var(--muted)}.mt-legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:4px}.mt-owner{display:flex;flex-direction:column;gap:8px}.mt-owner-row{display:flex;align-items:center;gap:8px;font-size:12px}.mt-owner-name{width:76px;flex:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mt-owner-track{flex:1;height:14px;border-radius:7px;background:#7878801f;display:flex;align-items:center}.mt-owner-bar{display:flex;height:14px;border-radius:7px;overflow:hidden;background:#7878804d;min-width:4px}.mt-owner-bar .s-done{background:var(--up, #22c55e)}.mt-owner-bar .s-late{background:var(--down, #e5484d)}.mt-owner-num{width:120px;flex:none;text-align:right;color:var(--muted)}.mt-owner-num em{font-style:normal;color:var(--down, #e5484d);margin-left:6px}.mt-owner-num b{margin-left:6px}.mt-trend{width:100%}.mt-trend-plot{display:flex;align-items:stretch;gap:8px}.mt-trend-col{flex:1;display:flex;flex-direction:column;align-items:center;min-width:0}.mt-trend-val{font-size:10px;color:var(--muted)}.mt-trend-bar{position:relative;flex:1;width:100%;display:flex;align-items:flex-end}.mt-trend-bar i{width:100%;border-radius:4px 4px 0 0;display:block;min-height:2px;transition:height .4s ease}.mt-trend-bar em{position:absolute;left:50%;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:var(--down, #e5484d)}.mt-trend-lab{font-size:10px;color:var(--muted);margin-top:4px;white-space:nowrap}.mt-tl{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.mt-tl-day{flex:none;width:132px;border:1px solid var(--hairline, #e5e8f0);border-radius:10px;padding:8px;background:var(--bg-soft, #fafbfd)}.mt-tl-day.today{border-color:#2563eb}.mt-tl-head{display:flex;align-items:center;gap:6px;font-size:12px;margin-bottom:6px}.mt-tl-head span{color:var(--muted)}.mt-tl-head em{font-style:normal;font-size:10px;color:#fff;background:#2563eb;border-radius:6px;padding:0 5px}.mt-tl-item{font-size:11px;padding:5px 6px;border-radius:6px;margin-bottom:4px;background:#7878801a;border-left:3px solid #94a3b8}.mt-tl-item.p-高{border-left-color:var(--down, #e5484d)}.mt-tl-item.p-中{border-left-color:#2563eb}.mt-tl-item.p-低{border-left-color:#94a3b8}.mt-tl-owner{display:block;color:var(--muted)}.mt-tl-txt{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mt-card-mid{display:flex;align-items:center;gap:12px;margin:6px 0}.mt-card-meta{display:flex;flex-direction:column;gap:3px;font-size:12px}.clb-card-foot{display:flex;justify-content:space-between;align-items:center;gap:6px}.mt-detail-head{display:flex;align-items:center;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--hairline, #e5e8f0)}.mt-sec{margin-top:12px}.mt-decs{display:flex;flex-direction:column;gap:6px;margin-top:6px}.mt-dec{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:7px 10px;border-radius:8px;background:#78788012;font-size:13px}.mt-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:8px}.mt-board-col{background:var(--bg-soft, #fafbfd);border:1px solid var(--hairline, #e5e8f0);border-radius:10px;padding:8px;min-height:80px}.mt-board-head{font-size:12px;color:var(--muted);margin-bottom:6px;display:flex;justify-content:space-between}.mt-act{background:var(--bg, #fff);border:1px solid var(--hairline, #e5e8f0);border-radius:8px;padding:8px;margin-bottom:6px}.mt-act.late{border-color:#e5484d73;background:#e5484d0f}.mt-act-top{display:flex;gap:6px;font-size:12.5px;line-height:1.45}.mt-pri{flex:none;font-size:10px;padding:1px 5px;border-radius:5px;color:#fff;background:#2563eb;height:fit-content}.mt-pri.p-高{background:var(--down, #e5484d)}.mt-pri.p-中{background:#2563eb}.mt-pri.p-低{background:#94a3b8}.mt-act-meta{font-size:11px;color:var(--muted);margin-top:4px}.mt-act-line{font-size:11px;margin-top:3px}.mt-act-evi{font-size:11px;color:var(--muted);margin-top:3px;border-left:2px solid var(--hairline, #e5e8f0);padding-left:6px}.mt-act-foot{display:flex;gap:4px;align-items:center;margin-top:6px;flex-wrap:wrap}.mt-act-foot button{padding:1px 7px;font-size:11px}@media (max-width: 900px){.mt-board,.mt-viz{grid-template-columns:1fr}}[data-theme=dark] .kb-up{background:var(--bg-soft);border-color:var(--border)}[data-theme=dark] .kb-up:hover{background:#0a84ff1a;border-color:var(--accent)}[data-theme=dark] .kb-up.on{background:#0a84ff29;border-color:var(--accent)}[data-theme=dark] .kb-up-hint{color:var(--muted)}[data-theme=dark] .kb-up-prog{color:#8ab4ff}[data-theme=dark] .kb-res.good{background:#34c75924;border-color:#34c7594d}[data-theme=dark] .kb-res.bad{background:#ff3b3024;border-color:#ff3b3052}[data-theme=dark] .kb-res-line.err{color:#ff6b60}[data-theme=dark] .kb-pv-frame{background:var(--card-solid);border-color:var(--border)}[data-theme=dark] .kb-pv-load{color:var(--muted)}[data-theme=dark] .cm-tab{background:var(--btn-bg);border-color:var(--border);color:var(--text)}[data-theme=dark] .cm-tab.on{background:var(--accent);border-color:var(--accent);color:#fff}[data-theme=dark] .cm-bar{background:var(--track)}[data-theme=dark] .clb-col,[data-theme=dark] .mt-board-col,[data-theme=dark] .mt-tl-day{background:var(--bg-soft);border-color:var(--border)}[data-theme=dark] .mt-tl-item,[data-theme=dark] .mt-dec{background:var(--fill)}[data-theme=dark] .badge.warn{color:#ffd08a;background:#ff9f0a2e}[data-theme=dark] .badge.ok{color:#6ee79a}[data-theme=dark] .badge.danger{color:#ff8a80}.aiw{display:flex;flex-direction:column;gap:14px}.aiw-hero{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;padding:18px 20px;border-radius:14px;background:linear-gradient(120deg,var(--accent-soft),transparent 62%),var(--card);border:1px solid var(--border)}.aiw-hero h1{font-size:22px;margin:0 0 6px;letter-spacing:-.2px}.aiw-hero p{margin:0;font-size:13px;color:var(--muted);line-height:1.6}.aiw-llm{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.aiw-jobs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.aiw-job{text-align:left;cursor:pointer;padding:14px 16px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text);display:flex;flex-direction:column;gap:6px;transition:transform .16s,border-color .16s,box-shadow .16s}.aiw-job:hover{transform:translateY(-1px);border-color:var(--accent)}.aiw-job.on{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:linear-gradient(180deg,var(--accent-soft),var(--card))}.aiw-job-ico{font-size:22px;line-height:1}.aiw-job b{font-size:15px}.aiw-job em{font-style:normal;font-size:12.5px;color:var(--muted);line-height:1.6}.aiw-job-foot{font-size:11.5px;color:var(--muted);margin-top:2px}.aiw-bar{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--card)}.aiw-bar label{display:flex;flex-direction:column;gap:5px;font-size:11.5px;color:var(--muted)}.aiw-bar input,.aiw-bar select{height:34px;padding:0 10px;border-radius:9px;min-width:120px;border:1px solid var(--border);background:var(--card-solid);color:var(--text);font-size:13px}.aiw-bar input[type=date],.aiw-bar input[type=month]{min-width:140px}.aiw-bar-hint{flex:1;min-width:200px;font-size:11.5px;color:var(--muted);line-height:1.5}.aiw-bar button.primary{height:34px}.aiw-result{padding:16px 18px;border-radius:14px;border:1px solid var(--border);background:var(--card);border-left:3px solid var(--accent);display:flex;flex-direction:column;gap:12px}.aiw-rhead{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.aiw-rhead b{font-size:14.5px}.aiw-meta{font-size:11.5px;color:var(--muted)}.aiw-err{font-size:11.5px;color:var(--warn)}.aiw-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.aiw-kpi{padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--card-solid);display:flex;flex-direction:column;gap:3px}.aiw-kpi span{font-size:11px;color:var(--muted)}.aiw-kpi b{font-size:15px;font-variant-numeric:tabular-nums}.aiw-kpi em{font-style:normal;font-size:11px;color:var(--muted)}.aiw-kpi em.up{color:var(--up)}.aiw-kpi em.down{color:var(--down)}.aiw-summary{margin:0;font-size:14.5px;line-height:1.85;letter-spacing:.1px;padding:12px 14px;border-radius:10px;background:var(--accent-soft)}.aiw-points{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.aiw-point{padding:9px 11px;border-radius:9px;border:1px solid var(--border);display:flex;flex-direction:column;gap:3px;background:var(--card-solid)}.aiw-point span{font-size:11px;color:var(--muted)}.aiw-point b{font-size:13px}.aiw-point.up b{color:var(--up)}.aiw-point.down b{color:var(--down)}.aiw-causes{display:flex;flex-direction:column;gap:8px}.aiw-cause{padding:10px 12px;border-radius:9px;border:1px solid var(--border);background:var(--card-solid)}.aiw-cause-h{display:flex;align-items:center;gap:8px}.aiw-cause-h b{font-size:13px}.aiw-conf{margin-left:auto;font-size:11px;color:var(--muted)}.aiw-cause p{margin:6px 0 0;font-size:12.5px;color:var(--muted);line-height:1.7}.aiw-notcause{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.aiw-notcause em{font-style:normal;padding:3px 9px;border-radius:20px;background:var(--track, rgba(120, 120, 128, .14));text-decoration:line-through}.aiw-gaps{display:flex;flex-direction:column;gap:6px}.aiw-gap{display:flex;align-items:center;gap:10px;padding:8px 11px;border-radius:9px;border:1px solid var(--border);background:var(--card-solid);font-size:12.5px}.aiw-gap span{flex:1}.aiw-gap b{color:var(--down);font-variant-numeric:tabular-nums}.aiw-gap b.over{color:var(--up)}.aiw-gap em{font-style:normal;font-size:11.5px;color:var(--muted)}.aiw-risks{display:flex;flex-direction:column;gap:6px}.aiw-risk{display:flex;align-items:baseline;gap:10px;padding:8px 11px;border-radius:9px;border-left:3px solid var(--border);background:var(--card-solid);font-size:12.5px}.aiw-risk b{min-width:120px}.aiw-risk span{color:var(--muted);line-height:1.6}.aiw-risk.lv-hi{border-left-color:var(--down)}.aiw-risk.lv-mid{border-left-color:var(--warn)}.aiw-risk.lv-lo{border-left-color:var(--up)}.aiw-acts{display:flex;flex-direction:column;gap:8px;padding-top:4px;border-top:1px dashed var(--border)}.aiw-acts-h{display:flex;align-items:baseline;gap:8px;margin-top:8px}.aiw-acts-h b{font-size:13px}.aiw-acts-h span{font-size:11.5px;color:var(--muted)}.aiw-act{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px;border:1px solid var(--border);background:var(--card-solid)}.aiw-act.on{border-color:var(--accent);background:var(--accent-soft)}.aiw-act input[type=checkbox]{width:17px;height:17px;flex:0 0 auto}.aiw-act-t{flex:1;font-size:13px;line-height:1.55}.aiw-act select,.aiw-act input[type=date]{height:32px;border-radius:8px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:12.5px;padding:0 8px}.aiw-acts-f{display:flex;align-items:center;gap:10px}.aiw-acts-f span{font-size:12px;color:var(--muted)}.aiw-acts-f button.primary{margin-left:auto;height:34px}.aiw-facts{border-top:1px dashed var(--border);padding-top:8px}.aiw-facts summary{cursor:pointer;font-size:12px;color:var(--muted)}.aiw-facts pre{margin:8px 0 0;padding:12px;border-radius:9px;max-height:300px;overflow:auto;background:var(--card-solid);border:1px solid var(--border);font-size:11px;line-height:1.6;color:var(--muted);white-space:pre-wrap;word-break:break-all}.aiw-sum-mini{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12.5px}@media (max-width: 1100px){.aiw-jobs{grid-template-columns:1fr}.aiw-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 768px){.aiw-hero{padding:14px 15px}.aiw-hero h1{font-size:19px}.aiw-bar{flex-direction:column;align-items:stretch}.aiw-bar label{width:100%}.aiw-bar input,.aiw-bar select{width:100%;min-width:0}.aiw-bar button.primary{width:100%;height:40px}.aiw-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.aiw-act{flex-wrap:wrap}.aiw-act-t{flex:1 1 100%}.aiw-act select,.aiw-act input[type=date]{flex:1}.aiw-act input[type=checkbox]{width:20px;height:20px}.aiw-summary{font-size:14px}}.aiw-sec-h{display:flex;align-items:baseline;gap:8px;font-size:12px;color:var(--muted);margin-bottom:4px}.aiw-sec-h span{font-size:11px;opacity:.78}.aiw-layers,.aiw-movers,.aiw-flags,.aiw-findings{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:11px;border:1px solid var(--border);background:var(--card)}.aiw-layer{display:flex;align-items:center;gap:8px;font-size:12.5px;padding:5px 4px;border-bottom:1px dashed var(--border);border-radius:8px}.aiw-layer:last-child{border-bottom:0}.aiw-layer.clickable{cursor:pointer}.aiw-layer.clickable:hover{background:var(--accent-soft)}.aiw-lv{font-size:11px;padding:1px 7px;border-radius:20px;background:var(--accent-soft);color:var(--accent);white-space:nowrap}.aiw-layer b{font-weight:600}.aiw-layer-v{color:var(--muted)}.aiw-layer em,.aiw-mover em{font-style:normal;font-size:12px;margin-left:auto;white-space:nowrap}.aiw-layer em.up,.aiw-mover em.up{color:#2e9e5b}.aiw-layer em.down,.aiw-mover em.down{color:#d94b4b}.aiw-movers .aiw-mover{display:flex;align-items:center;gap:8px;font-size:12.5px;padding:5px 4px;border-radius:8px;cursor:pointer}.aiw-movers .aiw-mover:hover{background:var(--accent-soft)}.aiw-movers .aiw-mover span{font-size:11px;color:var(--muted)}.aiw-flag{display:flex;flex-direction:column;gap:2px;font-size:12.5px;padding:6px 9px;border-left:3px solid var(--accent);border-radius:6px;background:var(--accent-soft)}.aiw-flag.lv-hi{border-left-color:#d94b4b}.aiw-flag.lv-mid{border-left-color:#e8a33d}.aiw-flag.lv-lo{border-left-color:#8a8f98}.aiw-flag span{font-size:11.5px;color:var(--muted)}.aiw-find{display:flex;flex-direction:column;gap:2px;font-size:12.5px;padding:6px 2px;border-bottom:1px dashed var(--border)}.aiw-find:last-child{border-bottom:0}.aiw-find em{font-style:normal;font-size:11.5px;color:var(--muted)}.aiw-st em{font-style:normal;font-size:11px;color:var(--muted);margin-left:4px}.aiw-subj input{min-width:190px}@media (max-width: 900px){.aiw-jobs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.aiw-jobs{grid-template-columns:1fr}}.aiw-focus,.aiw-attr,.aiw-contrib,.aiw-checks,.aiw-eff,.aiw-forecast{padding:10px 12px;border-radius:11px;border:1px solid var(--border);background:var(--card);display:flex;flex-direction:column;gap:6px}.aiw-focus{border-left:3px solid var(--accent)}.aiw-focus-i{display:flex;flex-direction:column;gap:2px;font-size:12.5px;padding:4px 0}.aiw-focus-i b{font-weight:600}.aiw-focus-i span{color:var(--muted);font-size:11.5px}.aiw-focus-i em{font-style:normal;font-size:11px;color:var(--accent)}.aiw-forecast{flex-direction:row;flex-wrap:wrap;gap:10px 18px;align-items:baseline}.aiw-forecast>div{display:flex;align-items:baseline;gap:6px;font-size:12.5px}.aiw-forecast i{font-style:normal;color:var(--muted);font-size:11.5px}.aiw-forecast b{font-weight:600}.aiw-forecast span{color:var(--muted);font-size:11.5px}.aiw-forecast .need b{color:#d94b4b}.aiw-impact{font-size:12.5px;color:var(--muted)}.aiw-impact b{font-weight:600;color:var(--text)}.aiw-attr-h{font-size:12.5px;display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}.aiw-attr-h em{font-style:normal;margin-left:auto;padding:1px 8px;border-radius:20px;background:var(--accent-soft);color:var(--accent);font-size:11.5px}.aiw-attr-bars{display:flex;gap:10px}.aiw-bar{flex:1;display:flex;align-items:baseline;gap:6px;font-size:12px;padding:6px 8px;border-radius:8px;background:var(--accent-soft)}.aiw-bar i{font-style:normal;color:var(--muted)}.aiw-bar b{font-weight:600}.aiw-bar em{font-style:normal;margin-left:auto;font-size:11.5px}.aiw-ct-dim{font-size:11px;color:var(--muted)}.aiw-ct{display:flex;align-items:baseline;gap:8px;font-size:12.5px;padding:4px 0;border-bottom:1px dashed var(--border)}.aiw-ct:last-child{border-bottom:0}.aiw-ct b{font-weight:600}.aiw-ct span{color:var(--muted)}.aiw-ct em{font-style:normal;margin-left:auto}.aiw-ct em.down{color:#d94b4b}.aiw-ct em.up{color:#2e9e5b}.aiw-ct i{font-style:normal;font-size:11px;color:var(--muted)}.aiw-eff{flex-direction:row;flex-wrap:wrap;gap:10px 18px}.aiw-eff>div{display:flex;align-items:baseline;gap:6px;font-size:12.5px}.aiw-eff i{font-style:normal;color:var(--muted);font-size:11.5px}.aiw-eff b{font-weight:600}.aiw-eff span{color:var(--muted);font-size:11.5px}.aiw-check{display:flex;flex-direction:column;gap:2px;font-size:12.5px;padding:4px 0}.aiw-check span{color:var(--muted);font-size:11.5px}.aiw-main{display:flex;gap:14px;align-items:stretch;margin-bottom:14px}.botcrew{width:268px;flex:0 0 268px;display:flex;flex-direction:column;gap:8px;max-height:620px;overflow:auto;padding-right:2px}.botcrew-h{font-size:12px;color:var(--muted, #8a94a6);padding:2px 4px;letter-spacing:.5px}.botcard{display:block;text-align:left;width:100%;cursor:pointer;border:1px solid var(--border, #e6e9ef);border-radius:12px;background:var(--card-solid, #fff);padding:12px;transition:border-color .15s,box-shadow .15s,transform .15s}.botcard:hover{border-color:var(--accent, #3b82f6);transform:translateY(-1px)}.botcard.on{border-color:var(--accent, #3b82f6);box-shadow:0 0 0 3px #3b82f61f;background:#3b82f60d}.botcard b{display:block;font-size:13px;margin:6px 0 4px}.botcard em{display:block;font-style:normal;font-size:11.5px;line-height:1.6;color:var(--muted, #8a94a6)}.botcard-foot{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:11px;color:var(--muted, #8a94a6)}.botav{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:17px;background:linear-gradient(135deg,#3b82f629,#8b5cf629);border:1px solid var(--border, #e6e9ef);flex:0 0 34px}.botav.on{box-shadow:0 0 0 3px #22c55e29}.dot{width:7px;height:7px;border-radius:50%;background:#c8ced9;display:inline-block}.dot.on{background:#22c55e;animation:botpulse 1.8s ease-in-out infinite}@keyframes botpulse{0%,to{box-shadow:0 0 #22c55e80}50%{box-shadow:0 0 0 5px #22c55e00}}.botpanel{flex:1;min-width:0;display:flex;flex-direction:column;border:1px solid var(--border, #e6e9ef);border-radius:14px;background:var(--card-solid, #fff);overflow:hidden}.botstream{flex:1;min-height:420px;max-height:620px;overflow:auto;padding:16px;display:flex;flex-direction:column;gap:14px}.botempty{text-align:center;padding:40px 20px}.botempty-av{width:62px;height:62px;margin:0 auto 14px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:30px;background:linear-gradient(135deg,#3b82f62e,#8b5cf62e)}.botempty h3{margin:0 0 8px;font-size:16px}.botempty p{margin:0 0 16px;font-size:13px;line-height:1.8;color:var(--muted, #8a94a6)}.botquick{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.bq{border:1px solid var(--border, #e6e9ef);background:var(--card-solid, #fff);border-radius:999px;padding:7px 13px;font-size:12.5px;cursor:pointer;color:inherit}.bq:hover{border-color:var(--accent, #3b82f6);color:var(--accent, #3b82f6)}.bq.sm{padding:5px 10px;font-size:12px}.bmsg{display:flex;gap:10px;align-items:flex-start}.bmsg.me{justify-content:flex-end}.bmsg.me .bbub{background:var(--accent, #3b82f6);color:#fff;border-radius:12px 12px 2px;padding:9px 13px;font-size:13.5px;line-height:1.7;max-width:72%;white-space:pre-wrap;word-break:break-word}.bmsg .bat{font-size:11px;color:var(--muted, #8a94a6);align-self:flex-end}.bbody{min-width:0;flex:1}.bhead{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.bhead b{font-size:12.5px}.bhead span{font-size:11px;color:var(--muted, #8a94a6)}.bhead em{font-style:normal;font-size:11px;color:var(--muted, #8a94a6);border:1px solid var(--border, #e6e9ef);border-radius:999px;padding:1px 7px}.btext{font-size:13.5px;line-height:1.85;white-space:pre-wrap;word-break:break-word;background:var(--fill, #f6f8fb);border-radius:4px 12px 12px;padding:11px 13px}.bpoints{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.bpoints .bp{font-size:11.5px;padding:3px 9px;border-radius:999px;background:var(--fill, #f6f8fb);border:1px solid var(--border, #e6e9ef)}.bpoints .bp b{margin-left:4px}.bpoints .bp.up b{color:#16a34a}.bpoints .bp.down b{color:#dc2626}.bacts{margin-top:10px;border:1px dashed var(--border, #e6e9ef);border-radius:10px;padding:10px}.bacts-h{font-size:11.5px;color:var(--muted, #8a94a6);margin-bottom:8px}.bact{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;font-size:12.5px;cursor:pointer}.bact:hover{background:var(--fill, #f6f8fb)}.bact.on{background:#3b82f612}.bact span{flex:1;min-width:0}.bact select{max-width:118px;font-size:12px}.badopt{margin-top:8px;border:0;border-radius:8px;cursor:pointer;background:var(--accent, #3b82f6);color:#fff;padding:7px 14px;font-size:12.5px}.badopt:disabled{opacity:.5;cursor:default}.bfollow{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.btyping{font-size:12.5px;color:var(--muted, #8a94a6);display:flex;align-items:center;gap:4px}.btyping i{width:6px;height:6px;border-radius:50%;background:var(--muted, #8a94a6);animation:botblink 1.2s infinite}.btyping i:nth-child(2){animation-delay:.2s}.btyping i:nth-child(3){animation-delay:.4s;margin-right:4px}@keyframes botblink{0%,to{opacity:.25}50%{opacity:1}}.composer{display:flex;gap:8px;align-items:center;padding:12px;border-top:1px solid var(--border, #e6e9ef);background:var(--card-solid, #fff)}.composer input{flex:1;min-width:0;font-size:13.5px;padding:10px 12px;border-radius:10px;border:1px solid var(--border, #e6e9ef);background:var(--fill, #f6f8fb);color:inherit}.composer input:focus{outline:none;border-color:var(--accent, #3b82f6)}.composer button{white-space:nowrap}.composer-bot{display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:5px 9px;border-radius:999px;background:#3b82f61a;color:var(--accent, #3b82f6)}.composer-bot button{border:0;background:none;cursor:pointer;font-size:14px;color:inherit}@media (max-width: 900px){.aiw-main{flex-direction:column}.botcrew{width:100%;flex:none;flex-direction:row;overflow-x:auto;max-height:none;padding-bottom:4px}.botcrew-h{display:none}.botcard{min-width:200px;flex:0 0 200px}.botstream{min-height:340px;max-height:52vh}}.botusage{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:6px 12px;border-bottom:1px solid #eef0f3;font-size:12px;color:#6b7280}.botusage b{color:#111827;font-weight:600}.botusage select{font-size:12px;max-width:190px}.bfb{display:flex;align-items:center;gap:8px;margin-top:8px}.fb{font-size:12px;padding:2px 9px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;cursor:pointer;color:#6b7280}.fb:hover{border-color:#c7cbd1}.fb.on{background:#eef2ff;border-color:#4c6ef5;color:#364fc7}.su-speaker{border-left:3px solid #4c6ef5;padding:2px 0 2px 12px;margin:0 0 16px}.su-say{margin-top:8px;font-size:13.5px;line-height:1.75}.su-block{margin-top:10px}.su-k{font-size:12px;color:#8a93a6;margin-bottom:4px}.su-fu{font-size:12.5px;line-height:1.8}.su-fu b.ok{color:#2f9e44}.su-fu b.bad{color:#e8590c}.botrole{display:block;font-style:normal;font-size:11.5px;color:#8a93a6;margin-top:1px}.aiw-llm{gap:10px}.aiteam-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:12px}.aiteam-card{border:1px solid #e6e9ef;border-radius:10px;padding:12px 14px;background:#fff}.aiteam-head{display:flex;gap:10px;align-items:flex-start}.aiteam-av{font-size:26px;line-height:1}.aiteam-name{font-size:15px;font-weight:600}.aiteam-name em{font-style:normal;font-weight:400;font-size:12px;color:#7048e8;margin-left:6px}.aiteam-line{font-size:12.5px;margin-top:6px}.aiteam-k{color:#8a93a6;display:inline-block;width:52px}.aiteam-why{font-size:11.5px;color:#8a93a6;margin-top:8px;line-height:1.6}.aiteam-edit{margin-top:10px;border-top:1px dashed #e6e9ef;padding-top:10px}.aiteam-edit label{display:flex;gap:8px;align-items:center;margin-bottom:6px}.aiteam-edit label>span{width:60px;font-size:12px;color:#8a93a6;flex:none}.aiteam-edit input,.aiteam-edit select{flex:1;min-width:0}@media (max-width: 768px){.aiteam-grid{grid-template-columns:1fr}}.aiteam-cp{color:#7048e8}.aiteam-rules{font-size:12px;color:#5c6478;line-height:1.65}.aiteam-sample{font-size:11.5px;color:#8a93a6;line-height:1.65;margin-top:8px;border-left:2px solid #eceef2;padding-left:8px}.aiteam-edit label.aiteam-ta{align-items:flex-start}.aiteam-edit label.aiteam-ta>span{margin-top:6px}.aiteam-edit textarea{flex:1;min-width:0;font-family:inherit;font-size:12px}.su-nick{font-size:11.5px;color:#7048e8}.aiw-insight{margin:12px 0}.aiw-insight-body{background:linear-gradient(90deg,#f6f3ff,#fbfaff);border-left:3px solid #7048e8;border-radius:6px;padding:10px 12px;font-size:13px;line-height:1.7;color:#2f3542}.aiw-plan{margin:12px 0}.aiw-step{display:flex;gap:10px;margin-bottom:8px}.aiw-step-n{flex:0 0 22px;height:22px;border-radius:50%;background:#7048e8;color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center}.aiw-step-b{flex:1;min-width:0;font-size:12.5px;line-height:1.6}.aiw-step-b>b{display:block;color:#2f3542}.aiw-step-m{display:flex;flex-wrap:wrap;gap:10px;font-size:11.5px;color:#7a8394;margin-top:2px}.aiw-step-b>em{display:block;font-style:normal;color:#5c6478;margin-top:3px}.aiw-verify{margin:12px 0}.aiw-vrow{border:1px solid #eceef2;border-radius:6px;padding:8px 10px;margin-bottom:6px;font-size:12px;line-height:1.6}.aiw-vrow>b{display:block;color:#2f3542;margin-bottom:2px}.aiw-vrow>span{color:#7048e8}.aiw-vrow>em{font-style:normal;color:#7a8394;display:block}.su-insight{margin-top:8px;padding:8px 10px;border-radius:6px;background:#f6f3ff;border-left:3px solid #7048e8;font-size:12.5px;line-height:1.65;color:#3d4351}.binsight{display:flex;gap:8px;align-items:flex-start;margin:8px 0;padding:8px 10px;border-radius:6px;background:linear-gradient(90deg,#f6f3ff,#fbfaff);border-left:3px solid #7048e8;font-size:12.5px;line-height:1.65;color:#3d4351}.binsight-k{flex:0 0 auto;background:#7048e8;color:#fff;border-radius:4px;padding:1px 6px;font-size:11px;line-height:1.6}.bplan{margin:10px 0}.bplan-h{font-size:12px;color:#7a8394;margin-bottom:6px}.bplan-h>span{margin-left:6px}.bplan-row{display:flex;gap:8px;margin-bottom:7px}.bplan-n{flex:0 0 18px;height:18px;border-radius:50%;background:#7048e8;color:#fff;font-size:11px;display:flex;align-items:center;justify-content:center}.bplan-b{flex:1;min-width:0;font-size:12.5px;line-height:1.6}.bplan-b>b{display:block;color:#2f3542}.bplan-m{display:flex;flex-wrap:wrap;gap:8px;font-size:11.5px;color:#7a8394}.bplan-b>em{display:block;font-style:normal;color:#7048e8;margin-top:2px}.bact-x{display:block;width:100%;margin-top:2px}.bact-x>b{display:block;color:#7048e8;font-weight:600;font-size:11.5px}.bact-x>em{display:block;font-style:normal;color:#7a8394;font-size:11.5px}[data-theme=dark] .aiteam-card{background:var(--card-solid);border-color:var(--border)}[data-theme=dark] .aiteam-name em{color:#a78bfa}[data-theme=dark] .aiteam-k,[data-theme=dark] .su-k,[data-theme=dark] .botrole{color:var(--muted)}[data-theme=dark] .aiteam-cp{color:#a78bfa}[data-theme=dark] .aiteam-rules,[data-theme=dark] .aiteam-sample,[data-theme=dark] .aiteam-role{color:var(--muted)}[data-theme=dark] .fb{background:var(--btn-bg);border-color:var(--border);color:var(--muted)}[data-theme=dark] .fb:hover{border-color:var(--accent);color:var(--text)}[data-theme=dark] .fb.on{background:#0a84ff33;border-color:var(--accent);color:#8ab4ff}[data-theme=dark] .su-speaker{border-left-color:var(--accent)}[data-theme=dark] .su-fu b.ok{color:#30d158}[data-theme=dark] .su-fu b.bad{color:#ff9f0a}[data-theme=dark] .binsight{background:#0a84ff1f;border-left-color:var(--accent);color:var(--text)}[data-theme=dark] .bplan-n{background:var(--accent)}[data-theme=dark] .bplan-b>em{color:#8ab4ff}[data-theme=dark] .bact-x>b{color:#8ab4ff}[data-theme=dark] .aiw-insight-body{background:#0a84ff1f;border-left-color:var(--accent);color:var(--text)}[data-theme=dark] .aiw-vrow{border-color:var(--border)}[data-theme=dark] .aiw-step-n{background:var(--accent)}[data-theme=dark] .aiw-step-b>em{color:#8ab4ff}[data-theme=dark] .botusage,[data-theme=dark] .botusage b,[data-theme=dark] .botusage span{color:var(--text)}[data-theme=dark] .botusage b{color:#8ab4ff}.aia{border-radius:50%;display:block}.su-hostav,.su-pname{display:inline-flex;align-items:center;gap:5px;vertical-align:middle}.su-pname .aia{margin-right:1px}.botav{display:inline-flex;align-items:center;justify-content:center;overflow:hidden}.botav .aia{border-radius:50%}.aiteam-presets{display:block;margin-bottom:10px}.aiteam-presets>span{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.aiteam-preset-list{display:flex;flex-wrap:wrap;gap:6px}.aiteam-preset{display:flex;flex-direction:column;gap:2px;align-items:flex-start;padding:6px 10px;border-radius:9px;cursor:pointer;text-align:left;border:1px solid var(--border);background:var(--btn-bg);color:var(--text);max-width:100%}.aiteam-preset:hover{border-color:var(--accent);background:var(--accent-soft)}.aiteam-preset>b{font-size:12.5px}.aiteam-preset>em{font-style:normal;font-size:11px;color:var(--muted);line-height:1.5}.aiteam-preset-hint{font-size:11px;color:var(--muted);margin-top:5px;line-height:1.6}[data-theme=dark] .aiteam-preset>em{color:var(--muted)}.botmodel{display:inline-flex;align-items:baseline;gap:5px;font-size:12px;color:var(--muted);margin-right:2px}.botmodel>b{color:var(--text);font-weight:600}.botmodel>em{font-style:normal;font-size:11px;color:var(--muted);font-family:ui-monospace,Menlo,Consolas,monospace}[data-theme=dark] .botmodel>b{color:#8ab4ff}.histops{display:inline-flex;gap:12px}.hist-del{border:0;background:none;padding:2px 4px;cursor:pointer;font-size:12px;color:var(--down);border-radius:6px}.hist-del:hover{background:#ff3b301f}.sesswrap{display:block}.sessq{width:100%;margin-bottom:12px;padding:8px 11px;font-size:13px;border-radius:9px;border:1px solid var(--border);background:var(--bg-input, var(--card-solid));color:var(--text)}.sessgroup{margin-bottom:14px}.sessgh{display:flex;align-items:center;gap:7px;margin-bottom:6px;font-size:11.5px;color:var(--muted);letter-spacing:.3px}.sessgh>span{background:var(--track);border-radius:20px;padding:0 7px;font-size:10.5px}.sessrow{display:flex;align-items:stretch;gap:6px;border:1px solid transparent;border-radius:9px;margin-bottom:4px}.sessrow:hover{background:var(--fill)}.sessrow.on{border-color:var(--accent);background:var(--accent-soft)}.sessmain{flex:1;min-width:0;text-align:left;cursor:pointer;border:0;background:none;padding:8px 9px;border-radius:9px;display:flex;flex-direction:column;gap:2px}.sessmain>b{font-size:13px;color:var(--text);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sessmain>span{font-size:11.5px;color:var(--muted)}.sessdel{flex:none;align-self:center;margin-right:6px;border:1px solid var(--border);background:var(--btn-bg);color:var(--down);font-size:11.5px;padding:3px 9px;border-radius:7px;cursor:pointer}.sessdel:hover{background:#ff3b301f;border-color:var(--down)}.clrwrap{display:block}.clrline{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-size:13px}.clrline>span{flex:0 0 66px;color:var(--muted);font-size:12.5px}.clrline>select{flex:1;padding:7px 10px;font-size:13px;border-radius:9px;border:1px solid var(--border);background:var(--card-solid);color:var(--text)}.clrline>select:disabled{opacity:.5}.clrhint{margin-top:4px;padding:9px 11px;border-radius:8px;font-size:12.5px;background:#ff9f0a1f;color:#b26a00;border-left:3px solid #ff9f0a}[data-theme=dark] .clrhint{color:#ffd08a}.bq.danger{color:var(--down, #d92d20);border-color:var(--down, #d92d20)}.bq.danger:hover{background:#ff3b301f}[data-theme=dark] .bq.danger{color:#ff8a80;border-color:#ff8a80}.db-tabs{display:flex;gap:6px;flex-wrap:wrap}.db-tabs button{padding:4px 11px;font-size:12.5px}.db-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:12px}.db-card{border:1px solid var(--hairline, #e5e8f0);border-radius:12px;padding:11px 12px;display:flex;flex-direction:column;gap:7px;background:var(--bg, #fff);cursor:pointer;transition:border-color .15s,box-shadow .15s}.db-card:hover{border-color:var(--brand, #3355ff);box-shadow:0 4px 14px #0000000f}.db-card-top{display:flex;align-items:center;gap:6px;justify-content:space-between}.db-card-top b{font-size:14px}.db-card-sub{font-size:12px;color:var(--muted)}.db-card-kpis{display:grid;grid-template-columns:1fr 1fr;gap:4px 10px}.db-ck{display:flex;align-items:baseline;justify-content:space-between;gap:6px;font-size:12.5px}.db-ck-l{color:var(--muted)}.db-ck b{font-variant-numeric:tabular-nums}.db-card-foot{font-size:12px;color:var(--brand, #3355ff)}.db-spark{display:flex;align-items:flex-end;gap:3px;height:28px}.db-spark>i{flex:1;border-radius:2px 2px 0 0;background:color-mix(in srgb,var(--brand, #3355ff) 55%,transparent);min-height:3px}.db-detail{display:flex;flex-direction:column;gap:12px}.db-plan-bar{height:10px;border-radius:6px;background:var(--border, #e5e8f0);overflow:hidden;margin-bottom:8px}.db-plan-bar>i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,var(--brand, #3355ff),#00c48c);transition:width .3s}.db-plan-meta{display:flex;flex-wrap:wrap;gap:14px;font-size:12.5px;color:var(--muted);margin-bottom:8px}.db-plan-meta b{font-variant-numeric:tabular-nums}@media (max-width: 768px){.db-wall{grid-template-columns:1fr}}.pd-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:12px}.pd-body{display:grid;grid-template-columns:300px minmax(0,1fr);gap:14px;align-items:start}.pd-list{background:var(--card-solid, var(--card, #fff));border:1px solid var(--hairline, #e5e8f0);border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 210px);position:sticky;top:8px}.pd-list-head{display:flex;flex-direction:column;gap:6px}.pd-list-head input,.pd-list-head select{width:100%}.pd-list-scroll{overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding-right:2px}.pd-item{text-align:left;border:1px solid var(--hairline, #e5e8f0);background:var(--fill, #f7f8fc);border-radius:12px;padding:9px 10px;cursor:pointer;display:flex;flex-direction:column;gap:5px;transition:border-color .15s,background .15s,transform .1s}.pd-item:hover{border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.pd-item:active{transform:scale(.995)}.pd-item.on{border-color:var(--accent, #3b6ef6);background:color-mix(in srgb,var(--accent) 8%,transparent);box-shadow:inset 2px 0 0 var(--accent, #3b6ef6)}.pd-item-top{display:flex;align-items:center;gap:6px}.pd-item-top b{font-size:13px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-item-meta{font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-item-foot{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);flex-wrap:wrap}.pd-item-date{margin-left:auto}.pd-new{width:100%}.pd-bar{position:relative;height:8px;border-radius:6px;background:var(--track, #e9edf6);overflow:hidden;display:flex;align-items:center}.pd-bar i{display:block;height:100%;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 70%,#fff),var(--accent, #3b6ef6));border-radius:6px;transition:width .3s ease}.pd-bar em{position:absolute;right:4px;font-size:10px;font-style:normal;color:var(--text);mix-blend-mode:normal;background:color-mix(in srgb,var(--card, #fff) 78%,transparent);padding:0 3px;border-radius:4px;line-height:12px}.pd-detail{min-width:0}.pd-hint{padding:44px 20px;text-align:center;color:var(--muted);border:1px dashed var(--hairline, #e5e8f0);border-radius:14px}.pd-head{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--hairline, #e5e8f0);border-radius:14px 14px 0 0;background:var(--card-solid, var(--card, #fff));flex-wrap:wrap}.pd-head-main{flex:1;min-width:260px}.pd-head-main h3{margin:0 0 6px;font-size:16px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pd-head-meta{font-size:12px;color:var(--muted);line-height:1.7}.pd-head-ops{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.pd-tabs{display:flex;gap:4px;padding:0 10px;border-left:1px solid var(--hairline, #e5e8f0);border-right:1px solid var(--hairline, #e5e8f0);border-bottom:1px solid var(--hairline, #e5e8f0);background:var(--card-solid, var(--card, #fff));overflow-x:auto}.pd-tabs button{border:0;background:none;padding:9px 12px;font-size:13px;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.pd-tabs button em{font-style:normal;font-size:10.5px;padding:0 5px;border-radius:8px;background:var(--fill);color:var(--muted)}.pd-tabs button.on{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.pd-tabs button.on em{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}.pd-overview{padding:14px;border:1px solid var(--hairline);border-top:0;border-radius:0 0 14px 14px;background:var(--card-solid, var(--card, #fff))}.pd-ring-card{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.pd-ring{width:132px;height:132px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.pd-ring-inner{width:100px;height:100px;border-radius:50%;background:var(--card-solid, #fff);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 2px 10px #0000000f}.pd-ring-inner b{font-size:24px;font-variant-numeric:tabular-nums}.pd-ring-inner span{font-size:11px;color:var(--muted)}.pd-ring-side{display:flex;flex-direction:column;gap:6px;font-size:12.5px;min-width:160px}.pd-ring-side>div{display:flex;justify-content:space-between;gap:16px}.pd-ring-side span{color:var(--muted)}.pd-ring-side button{margin-top:4px}.pd-phases{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.pd-phase{text-align:left;border:1px solid var(--hairline);background:var(--fill);border-radius:10px;padding:8px 9px;cursor:pointer;display:flex;flex-direction:column;gap:5px;transition:border-color .15s}.pd-phase:hover{border-color:var(--accent)}.pd-phase.hollow{border-style:dashed;opacity:.8}.pd-phase-top{display:flex;justify-content:space-between;font-size:12.5px}.pd-phase-top span{color:var(--muted);font-size:11px}.pd-phase-meta{display:flex;gap:7px;flex-wrap:wrap;font-size:10.5px;color:var(--muted)}.pd-tip{margin-bottom:12px;padding:9px 12px;border-radius:10px;font-size:12.5px;line-height:1.65;background:color-mix(in srgb,var(--warn, #d97706) 10%,transparent);border:1px solid color-mix(in srgb,var(--warn, #d97706) 28%,transparent)}.pd-risk{margin-top:14px;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--down, #dc2626) 8%,transparent);border:1px solid color-mix(in srgb,var(--down, #dc2626) 26%,transparent);font-size:12.5px}.pd-risk b{display:block;margin-bottom:4px;color:var(--down, #dc2626)}.pd-risk ul{margin:0;padding-left:18px;line-height:1.75}.pd-tasks{padding:12px 14px 16px;border:1px solid var(--hairline);border-top:0;border-radius:0 0 14px 14px;background:var(--card-solid, var(--card, #fff))}.pd-toolbar{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.pd-toolbar select{max-width:130px}.pd-empty{padding:26px 12px;text-align:center;color:var(--muted);border:1px dashed var(--hairline);border-radius:12px}.pd-empty p{margin:0 0 10px;font-size:13px}.pd-tbl{overflow-x:auto}.pd-tbl table{width:100%;border-collapse:collapse;font-size:12.5px}.pd-tbl th{text-align:left;font-weight:600;font-size:11.5px;color:var(--muted);padding:7px 8px;border-bottom:1px solid var(--hairline);white-space:nowrap}.pd-tbl td{padding:7px 8px;border-bottom:1px solid var(--hairline);vertical-align:top}.pd-tbl tr.late td{background:color-mix(in srgb,var(--down, #dc2626) 5%,transparent)}.pd-tbl td.num{text-align:right;font-variant-numeric:tabular-nums}.pd-tbl .pd-td-name div{font-weight:500}.pd-tbl .pd-td-name small{display:block;font-size:11px;color:var(--muted);margin-top:2px}.pd-tbl .pd-td-name small.down{color:var(--down, #dc2626)}.pd-tbl .pd-td-op{white-space:nowrap}.pd-tbl input[type=number]{width:62px}.pd-tbl select{max-width:92px}.pd-depts{padding:14px;border:1px solid var(--hairline);border-top:0;border-radius:0 0 14px 14px;background:var(--card-solid, var(--card, #fff));display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.pd-dept-tip{grid-column:1 / -1;font-size:12px;color:var(--muted)}.pd-dept{text-align:left;border:1px solid var(--hairline);background:var(--fill);border-radius:10px;padding:9px 10px;cursor:pointer;display:flex;flex-direction:column;gap:6px}.pd-dept:hover{border-color:var(--accent)}.pd-dept-name{display:flex;justify-content:space-between;font-size:12.5px}.pd-dept-name span{color:var(--muted);font-size:11px}.pd-dept-tags{display:flex;gap:5px}.pd-archive{padding:14px;border:1px solid var(--hairline);border-top:0;border-radius:0 0 14px 14px;background:var(--card-solid, var(--card, #fff));display:flex;flex-direction:column;gap:10px}.pd-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.pd-form-foot{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap}.pd-check{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted);margin-top:8px;line-height:1.6}.pd-check input{width:auto}.pd-phase.gate-bad{border-color:var(--down, #dc2626);background:color-mix(in srgb,var(--down, #dc2626) 7%,transparent)}.pd-phase-main{width:100%;border:0;background:none;padding:0;text-align:left;cursor:pointer;color:inherit;font:inherit;display:flex;flex-direction:column;gap:5px}.pd-phase-foot{display:flex;align-items:center;gap:6px;margin-top:7px;padding-top:6px;border-top:1px dashed var(--hairline, #e5e8f0)}.pd-phase-foot .spacer{flex:1}.pd-phase-foot .badge{font-size:10.5px}.pd-bom{margin-top:14px;padding-top:12px;border-top:1px solid var(--hairline, #e5e8f0);display:flex;flex-direction:column;gap:10px}.pd-bom-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pd-bom-head b{font-size:13.5px}.pd-bom-head .muted{font-size:12px}.pd-bom-head .spacer{flex:1}.pd-bom-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.pd-bom-kpi{border:1px solid var(--hairline, #e5e8f0);border-radius:10px;padding:8px 10px;background:var(--fill, #f7f8fc);display:flex;flex-direction:column;gap:2px}.pd-bom-kpi span{font-size:11px;color:var(--muted)}.pd-bom-kpi b{font-size:15px;font-variant-numeric:tabular-nums}.pd-bom-kpi.bad b{color:var(--down, #dc2626)}.pd-bom-kpi.good b{color:var(--up, #16a34a)}.pd-bom-cats{display:flex;flex-direction:column;gap:5px}.pd-bom-cat{display:grid;grid-template-columns:48px minmax(0,1fr) 80px;align-items:center;gap:8px;font-size:12px}.pd-bom-cat b{text-align:right;font-variant-numeric:tabular-nums}.pd-alerts{margin-bottom:12px;border:1px solid color-mix(in srgb,var(--down, #dc2626) 30%,transparent);border-radius:14px;background:color-mix(in srgb,var(--down, #dc2626) 6%,transparent);overflow:hidden}.pd-alerts-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 12px;font-size:13px}.pd-alerts-head b{color:var(--down, #dc2626)}.pd-alerts-head span{font-size:12px;color:var(--muted)}.pd-alerts-head .spacer{flex:1}.pd-alerts-body{border-top:1px solid color-mix(in srgb,var(--down, #dc2626) 18%,transparent)}.pd-alert-item{width:100%;display:flex;align-items:center;flex-wrap:wrap;gap:3px 8px;text-align:left;border:0;border-top:1px solid color-mix(in srgb,var(--down, #dc2626) 12%,transparent);background:none;padding:8px 12px;cursor:pointer;color:inherit;font:inherit}.pd-alert-item:first-child{border-top:0}.pd-alert-item:hover{background:color-mix(in srgb,var(--down, #dc2626) 9%,transparent)}.pd-alert-item>b{font-size:13px}.pd-alert-meta{font-size:11.5px;color:var(--muted)}.pd-alert-tags{display:flex;gap:4px}.pd-alert-detail{flex:1 0 100%;font-size:11.5px;color:var(--muted)}.pd-alert-go{margin-left:auto;font-size:11.5px;color:var(--accent, #3b6ef6)}@media (max-width: 1280px){.pd-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 1024px){.pd-body{grid-template-columns:1fr}.pd-list{position:static;max-height:none}.pd-list-scroll{max-height:320px}}@media (max-width: 768px){.pd-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.pd-form{grid-template-columns:1fr}.pd-ring-card{gap:12px}.pd-ring{width:112px;height:112px}.pd-ring-inner{width:84px;height:84px}.pd-ring-inner b{font-size:20px}}.ds{display:flex;flex-direction:column;gap:14px}.ds-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.ds-tip{padding:10px 12px;border-radius:12px;font-size:12.5px;line-height:1.75;background:color-mix(in srgb,var(--warn, #d97706) 10%,transparent);border:1px solid color-mix(in srgb,var(--warn, #d97706) 26%,transparent)}.ds-tip b{color:var(--warn, #d97706)}.ds-ops{display:flex;gap:8px}.ds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}.ds-card{border:1px solid var(--hairline, #e5e8f0);border-radius:12px;padding:11px 12px;display:flex;flex-direction:column;gap:6px;background:var(--fill, #f7f8fc)}.ds-card.off{opacity:.62}.ds-card.bad{border-color:var(--down, #dc2626);background:color-mix(in srgb,var(--down, #dc2626) 6%,transparent)}.ds-card-head{display:flex;align-items:center;gap:8px}.ds-card-head b{font-size:14px}.ds-card-head .spacer{flex:1}.ds-card-meta{font-size:12px;color:var(--muted)}.ds-card-status{display:flex;gap:5px;flex-wrap:wrap}.ds-card-foot{display:flex;flex-direction:column;gap:2px;font-size:11.5px;color:var(--muted)}.ds-card-warn{font-size:11.5px;color:var(--warn, #d97706);background:color-mix(in srgb,var(--warn, #d97706) 12%,transparent);border-radius:8px;padding:4px 8px}.ds-card-ops{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.ds-card-ops button{padding:3px 9px;font-size:12px}.ds-tbl{overflow:auto;max-height:420px}.ds-tbl table{width:100%;border-collapse:collapse;font-size:12.5px}.ds-tbl th,.ds-tbl td{padding:6px 8px;border-bottom:1px solid var(--hairline, #e5e8f0);text-align:left;white-space:nowrap}.ds-tbl th{position:sticky;top:0;background:var(--bg, #fff);color:var(--muted);font-weight:600}.ds-tbl .num{text-align:right;font-variant-numeric:tabular-nums}.ds-tbl tr.row-bad{background:color-mix(in srgb,var(--down, #dc2626) 6%,transparent)}.ds-log{white-space:normal;color:var(--muted);font-size:11.5px;max-width:320px}.ds-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 12px}.ds-sec{margin:12px 0 6px;font-size:12.5px;font-weight:600;padding-bottom:5px;border-bottom:1px solid var(--hairline, #e5e8f0)}.ds-note{margin-top:8px;font-size:12px;line-height:1.7;color:var(--muted);background:var(--fill, #f7f8fc);border-radius:10px;padding:8px 10px}.ds-check{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:12.5px;color:var(--muted)}.ds-check input{width:auto}@media (max-width: 1280px){.ds-grid{grid-template-columns:1fr}}.sc-viz{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:12px;margin-bottom:12px}.sc-viz>*{min-width:0}.sc-viz-row{display:flex;align-items:center;gap:16px;min-width:0}.sc-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.sc-tab{padding:7px 14px;border-radius:999px;cursor:pointer;font-size:13px;border:1px solid var(--hairline, #e5e8f0);background:var(--bg, #fff);color:var(--text)}.sc-tab.on{background:#2563eb;border-color:#2563eb;color:#fff}.sc-tab b{margin-left:4px;font-size:11px;opacity:.8}.sc-alert-list{display:flex;flex-direction:column;gap:6px}.sc-alert{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;background:#e5484d0f;border:1px solid rgba(229,72,77,.25);font-size:12.5px}.sc-alert.warn{background:#f59e0b14;border-color:#f59e0b4d}.sc-alert-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.sc-alert-main span{font-size:11.5px}.sc-tabs-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.sc-tabs-row>select{max-width:150px}.sc-bars{display:flex;align-items:flex-end;gap:5px;height:128px}.sc-bars-col{flex:1 1 0;display:flex;align-items:flex-end;gap:2px;min-width:0;height:100%}.sc-bars-col i{flex:1 1 0;display:block;border-radius:3px 3px 0 0;min-height:2px;transition:height .4s ease}.sc-bars-axis{display:flex;gap:5px;margin-top:4px}.sc-bars-axis span{flex:1 1 0;min-width:0;text-align:center;font-size:9.5px;color:var(--muted);overflow:hidden;white-space:nowrap}.sc-legend{display:flex;gap:12px;margin-top:8px;font-size:12px;color:var(--muted);flex-wrap:wrap}.sc-legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:4px}.sc-note{font-size:12px;color:var(--muted);line-height:1.7}@media (max-width: 768px){.sc-viz{grid-template-columns:minmax(0,1fr)}.sc-tabs{flex:1 1 100%;flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.sc-tab{flex:0 0 auto;min-height:38px;display:inline-flex;align-items:center}.sc-tabs-row{gap:8px}.sc-bars{height:104px;gap:3px}.sc-bars-axis{gap:3px}.sc-bars-axis span{font-size:9px}.sc-viz-row{gap:12px}}@media (max-width: 520px){.sc-bars-axis span:nth-child(2n){visibility:hidden}}.sc .tbl-wrap td{padding:10px 12px;line-height:1.55;vertical-align:middle}.sc .tbl-wrap th{padding:9px 12px;font-size:12px;color:var(--muted);background:#7878800f;white-space:nowrap}.sc .tbl-wrap tbody tr{border-top:1px solid rgba(120,120,128,.1)}.sc .tbl-wrap tbody tr:hover{background:#588cff0d}.sc-grade-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.sc-grade{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 9px;font-size:12px;cursor:pointer;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--text);font-family:inherit}.sc-grade:hover{background:#588cff1a;border-color:var(--accent)}.sc-grade i{width:7px;height:7px;border-radius:50%;display:block}.sc-grade span{color:var(--muted)}.sc-grade b{font-variant-numeric:tabular-nums}.sc-note-sm{font-size:11.5px;color:var(--muted);margin-top:8px;line-height:1.7}.sc-ch-list{display:flex;flex-direction:column;gap:9px}.sc-ch-row{display:flex;align-items:center;gap:8px;font-size:12.5px;min-width:0}.sc-ch-name{flex:0 0 76px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sc-ch-bar{flex:1 1 auto;min-width:0;height:8px;border-radius:999px;background:#78788024;overflow:hidden}.sc-ch-bar i{display:block;height:100%;border-radius:999px;background:var(--accent)}.sc-ch-val{flex:0 0 auto;color:var(--muted);font-variant-numeric:tabular-nums}.sc-sum{display:inline-flex;align-items:center;gap:4px;font-size:12.5px;color:var(--muted)}.sc-sum b{color:var(--text)}.ghost.on{border-color:var(--accent);color:var(--accent)}.sc-health{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 12px;margin-bottom:10px;font-size:12.5px;border:1px solid var(--border);border-radius:10px;background:#588cff0a}.sc-health-gap{flex:1 1 0}.sc-pill{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 10px;border-radius:999px;cursor:pointer;border:1px solid var(--border);background:transparent;color:var(--text);font-size:12.5px}.sc-pill b{font-variant-numeric:tabular-nums}.sc-pill i{width:7px;height:7px;border-radius:50%;display:inline-block}.sc-pill.on{border-color:var(--accent);color:var(--accent);background:#588cff1a}.sc-dos{display:flex;align-items:center;gap:6px;min-width:108px}.sc-dos-bar{flex:1;height:6px;border-radius:999px;overflow:hidden;background:var(--track)}.sc-dos-bar i{display:block;height:100%;border-radius:999px}.sc-dos em{font-style:normal;font-size:12px;color:var(--muted);min-width:46px;text-align:right}.sc-buy{display:inline-flex;gap:6px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.sc-buy span{white-space:nowrap}.sc-sub-hint{font-size:11.5px;color:var(--muted);margin-top:2px}.sc-quote-head{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--muted);margin-bottom:10px}.sc-quote-head b{color:var(--text)}.sc-quote-add{margin-top:12px;padding-top:12px;border-top:1px solid var(--hairline)}.sc-quote-title{font-size:13px;font-weight:600;margin-bottom:8px}.sc-quote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px}.sc-form-ops{display:flex;gap:8px;margin-top:10px}.q-lowest{background:#34c75914}.q-lowest .badge{margin-left:6px}.sc-po-sup{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px}.sc-po-sup .sc-pill{height:30px;gap:6px}.sc-po-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 10px;margin-top:12px}.po-num{width:100%;height:30px;padding:0 6px;font-size:13px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text)}.sc-po-off{opacity:.45}@media (max-width: 768px){.sc-quote-grid,.sc-po-form{grid-template-columns:1fr}}@media (max-width: 768px){.sc .tbl-wrap td,.sc .tbl-wrap th{padding:9px 10px}.sc-ch-name{flex-basis:60px}.sc-sum{flex:1 1 100%}}.ex-cell{min-width:132px}.ex-line{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:12.5px}.ex-no{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;color:var(--muted);margin:2px 0;word-break:break-all}.ex-link{background:none;border:none;padding:0;margin:0;color:var(--accent, #2563eb);cursor:pointer;font-size:11.5px;font-family:inherit}.ex-link:hover{text-decoration:underline}.ex-card-extra{display:inline-flex;align-items:center;gap:8px}.ap-page{display:flex;flex-direction:column;gap:14px}.ap-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.ap-head h1{margin:0;font-size:20px}.ap-sub{margin:4px 0 0;font-size:13px;color:var(--muted, #8a8f98);line-height:1.6}.ap-toast{padding:8px 12px;border-radius:8px;font-size:13px;background:#34c7591f;color:var(--up, #34c759);border:1px solid rgba(52,199,89,.28)}.ap-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.ap-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.ap-filters label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted, #8a8f98)}.ap-filters select,.ap-filters input{min-height:34px}.ap-op{display:flex;flex-wrap:wrap;gap:8px}.ap-op .link-btn.danger{color:var(--down, #ff3b30)}.ap-items{display:flex;flex-direction:column;gap:6px}.ap-item{display:flex;justify-content:space-between;align-items:center;padding:7px 10px;border-radius:8px;font-size:13px;background:var(--fill, rgba(120, 120, 128, .08))}.ap-item-k{color:var(--muted, #8a8f98)}.ap-item-v{font-weight:600;font-variant-numeric:tabular-nums}.ap-alert{margin:8px 0;padding:9px 12px;border-radius:8px;font-size:12.5px;line-height:1.65;background:#ff9f0a1f;color:#f59e0b;border:1px solid rgba(255,159,10,.3)}.ap-extra{display:flex;align-items:center;gap:6px;font-size:12.5px;margin:6px 0 10px}.ap-review{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;margin-bottom:6px}.ap-review>div{display:flex;justify-content:space-between;font-size:13px;padding:5px 0;border-bottom:1px dashed var(--border, rgba(120, 120, 128, .2))}.ap-review span{color:var(--muted, #8a8f98)}.ap-review b{font-variant-numeric:tabular-nums}@media (max-width: 768px){.ap-head{flex-direction:column}.ap-review{grid-template-columns:1fr}}.fin-stmt{display:flex;flex-direction:column;gap:10px}.fin-line{display:grid;grid-template-columns:110px 1fr 150px;align-items:center;gap:10px;padding:6px 0;border-bottom:1px dashed var(--border, rgba(128, 128, 128, .22))}.fin-line:last-child{border-bottom:0}.fin-strong{font-weight:700;font-size:15px}.fin-k{color:var(--muted, #8a8f98)}.fin-v{text-align:right;font-variant-numeric:tabular-nums}.fin-s{font-size:12px;color:var(--muted, #8a8f98);text-align:right}.ap-bars{display:flex;flex-direction:column;gap:8px}.ap-bar-row{display:grid;grid-template-columns:118px 1fr 108px 48px;align-items:center;gap:10px;font-size:13px}.ap-bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ap-bar-track{height:8px;background:var(--fill, rgba(128, 128, 128, .16));border-radius:4px;overflow:hidden}.ap-bar-track i{display:block;height:100%;background:var(--accent, #3b6ef5);border-radius:4px}.ap-bar-val{text-align:right;font-variant-numeric:tabular-nums}.ap-up{color:#2e7d32}.ap-down{color:#c62828}.ap-bulk{display:flex;align-items:center;gap:12px;margin-bottom:10px;font-size:13px}.ap-bulk-all{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.ap-bulk-all input{width:16px;height:16px}.ap-tip{margin:10px 0;padding:9px 12px;font-size:13px;line-height:1.7;border-radius:8px;border:1px dashed var(--accent, #3b6ef5);background:color-mix(in srgb,var(--accent, #3b6ef5) 8%,transparent)}.ap-grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 900px){.ap-grid2{grid-template-columns:1fr}.fin-line{grid-template-columns:92px 1fr 120px}.ap-bar-row{grid-template-columns:96px 1fr 92px}.ap-bar-row .ap-bar-val{font-size:12px}}.ap2-page{display:grid;gap:14px}.ap2-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}.ap2-head h1{margin:0 0 4px;font-size:20px;font-weight:650;letter-spacing:.2px}.ap2-sub{margin:0;font-size:12.5px;line-height:1.75;color:var(--muted);max-width:720px}.ap2-sub b{color:var(--accent);font-weight:600}.ap2-tabs{display:flex;gap:4px;padding:4px;border-radius:11px;background:var(--fill);border:1px solid var(--hairline)}.ap2-tabs button{position:relative;border:0;background:transparent;cursor:pointer;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:550;color:var(--muted);transition:all .16s;white-space:nowrap}.ap2-tabs button:hover{color:var(--text)}.ap2-tabs button.on{background:var(--card-solid);color:var(--accent);box-shadow:var(--shadow-sm);font-weight:650}.ap2-dot-count{display:inline-grid;place-items:center;margin-left:6px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;font-size:11px;font-style:normal;font-weight:700;background:#ff3b30;color:#fff;text-align:center}.ap2-mute{color:var(--muted);font-size:12px}.ap2-op{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.ap2-cat{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:5px;font-size:10.5px;font-style:normal;font-weight:600;line-height:1.5;vertical-align:middle}.ap2-cat.cost{background:#ff950029;color:#ff9500}.ap2-cat.expense{background:#007aff24;color:#007aff}.ap2-toast{position:fixed;left:50%;bottom:34px;transform:translate(-50%);z-index:200;padding:10px 18px;border-radius:10px;font-size:13px;background:var(--card-solid);color:var(--text);box-shadow:var(--shadow-lg);border:1px solid var(--hairline)}.ap2-empty{padding:26px 16px;text-align:center}.ap2-empty-ico{width:42px;height:42px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;font-size:18px;font-weight:600;background:var(--accent-soft);color:var(--accent)}.ap2-empty-t{font-size:13.5px;font-weight:600}.ap2-empty-d{margin-top:5px;font-size:12px;color:var(--muted);max-width:440px;margin-inline:auto;line-height:1.7}.ap2-quick{display:grid;grid-template-columns:repeat(auto-fill,minmax(146px,1fr));gap:10px}.ap2-quick-item{display:grid;gap:4px;padding:12px 13px;text-align:left;cursor:pointer;border:1px solid var(--hairline);border-radius:11px;background:var(--glass);transition:all .16s;font:inherit}.ap2-quick-item:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.ap2-quick-item b{font-size:13.5px;font-weight:600}.ap2-quick-item span{font-size:11px;color:var(--muted)}.ap2-quick-more{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}.ap2-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:11px}.ap2-card{padding:13px 14px;border-radius:12px;border:1px solid var(--hairline);background:var(--glass);border-left:3px solid var(--hairline)}.ap2-card.st-warn{border-left-color:#ff9500}.ap2-card.st-ok{border-left-color:#34c759}.ap2-card.st-danger{border-left-color:#ff3b30}.ap2-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.ap2-card-title{font-size:14px;font-weight:620}.ap2-card-sub{margin-top:3px;font-size:11.5px;color:var(--muted)}.ap2-card-amt{font-size:16px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.ap2-card-note{margin:8px 0 10px;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ap2-card-foot{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px dashed var(--hairline)}.ap2-steps{display:flex;align-items:center;gap:0;padding:2px 0}.ap2-steps-line{flex:1;height:1.5px;background:var(--track);margin:0 6px;min-width:10px}.ap2-steps-line.on{background:#34c759}.ap2-step{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;color:var(--muted);white-space:nowrap}.ap2-step b{width:17px;height:17px;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:700;background:var(--track);color:var(--muted)}.ap2-step.done{color:#34c759}.ap2-step.done b{background:#34c759;color:#fff}.ap2-step.now{color:#ff9500;font-weight:600}.ap2-step.now b{background:#ff9500;color:#fff}.ap2-step.bad{color:#ff3b30}.ap2-step.bad b{background:#ff3b30;color:#fff}.ap2-todo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:12px}.ap2-todo{padding:15px 16px;border-radius:13px;border:1px solid var(--hairline);background:var(--card-solid);box-shadow:var(--shadow-sm)}.ap2-todo.warn{border-top:3px solid #ff9500}.ap2-todo.ok{border-top:3px solid #34c759}.ap2-todo-h{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:620;margin-bottom:8px}.ap2-todo-amt{font-size:26px;font-weight:700;letter-spacing:-.4px;font-variant-numeric:tabular-nums;margin-bottom:3px}.ap2-todo-foot{font-size:11.5px;color:var(--muted);margin-bottom:10px}.ap2-todo-list{display:grid;gap:7px}.ap2-todo-row{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:9px;padding:7px 9px;border-radius:8px;background:var(--fill);font-size:12.5px}.ap2-todo-row .ap2-mute{font-size:11px;white-space:nowrap}.ap2-todo-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.ap2-todo-row b{font-variant-numeric:tabular-nums;white-space:nowrap}.ap2-todo-row .ap2-op{justify-content:flex-end;gap:6px;flex-wrap:nowrap}.ap2-grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:12px}.ap2-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.ap2-filters label{display:grid;gap:5px;font-size:12px;color:var(--muted)}.ap2-filters select,.ap2-filters input{min-width:130px}.ap2-bulk{display:flex;align-items:center;gap:12px;margin-bottom:10px;font-size:12.5px}.ap2-bulk-all{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.ap2-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.ap2-amt{font-size:19px;font-weight:700;font-variant-numeric:tabular-nums;height:44px}.ap2-review{display:grid;grid-template-columns:1fr 1fr;gap:9px 14px;margin-bottom:12px}.ap2-review>div{display:grid;gap:2px}.ap2-review span{font-size:11.5px;color:var(--muted)}.ap2-review b{font-size:13px;font-weight:600;word-break:break-all}.ap2-tip{padding:9px 12px;margin-bottom:10px;border-radius:8px;font-size:12px;line-height:1.7;background:var(--accent-soft);border:1px solid var(--glass-line)}.ap2-alert{padding:9px 12px;margin-bottom:10px;border-radius:8px;font-size:12px;line-height:1.7;background:#ff95001a;border:1px solid rgba(255,149,0,.3)}.ap2-extra{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;margin-bottom:10px}@media (max-width: 768px){.ap2-head{flex-direction:column;align-items:stretch;gap:10px}.ap2-tabs{width:100%}.ap2-tabs button{flex:1;padding:10px 8px}.ap2-quick{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.ap2-cards,.ap2-todo-grid,.ap2-grid-2,.ap2-form-grid,.ap2-review{grid-template-columns:1fr}.ap2-todo-row{grid-template-columns:auto 1fr auto;row-gap:5px}.ap2-todo-row .ap2-op{grid-column:1 / -1}.ap2-todo-amt{font-size:22px}.ap2-card-note{white-space:normal}}.ap2-step-tag{display:inline-flex;align-items:center;padding:1px 7px;border-radius:999px;font-size:11px;white-space:nowrap;color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-soft)}.ap2-bank-title{margin:12px 0 6px;padding-top:9px;border-top:1px dashed var(--hairline);font-size:12px;font-weight:600;color:var(--muted)}.ap2-bank-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}.ap2-bank{padding:10px 12px;border-radius:10px;border:1px solid var(--hairline);background:var(--fill)}.ap2-bank-name{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600}.ap2-bank-no{margin:3px 0;font-size:13px;letter-spacing:.5px;font-variant-numeric:tabular-nums}@media (max-width: 768px){.ap2-bank-list{grid-template-columns:1fr}}.ap2-contract{margin:2px 0 12px;padding:10px 12px;border-radius:10px;background:var(--fill, #f6f7f9);border:1px dashed var(--hairline, #d8dde5)}.ap2-contract.ok{border-style:solid;border-color:#007aff59;background:#007aff0f}.ap2-contract-h{font-size:13px;display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}.ap2-contract-h em{font-style:normal;color:var(--muted);font-size:12px;margin-left:auto}.ap2-contract-b{font-size:12.5px;color:var(--muted);margin-top:5px;line-height:1.6;word-break:break-all}.ap2-flow-prev{margin-top:14px;padding:12px;border-radius:10px;background:var(--fill, #f6f7f9)}.ap2-flow-prev-h{font-size:13px;display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}.ap2-flow-prev-h b{color:var(--accent, #007aff)}.ap2-flow-prev-h em{font-style:normal;font-size:12px;color:var(--muted)}.ap2-flow-prev-nodes{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px}.ap2-fp-node{display:inline-flex;flex-direction:column;gap:1px;padding:5px 10px;border-radius:8px;font-size:12.5px;background:var(--card-solid, #fff);border:1px solid var(--hairline, #e3e7ee)}.ap2-fp-node em{font-style:normal;font-size:11px;color:var(--muted)}.ap2-fp-node.now{border-color:var(--accent);color:var(--accent)}.ap2-fp-node.pay{border-color:#34c75980}.ap2-fp-line{width:14px;height:1px;background:var(--hairline, #d8dde5);display:inline-block}.apd-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.apd-code{font-size:17px;font-weight:700;letter-spacing:.3px}.apd-meta{font-size:12.5px;color:var(--muted);margin-top:4px}.apd-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:0 0 auto}.apd-step-now{font-size:12px;color:var(--muted)}.apd-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0 4px}.apd-kpis>div{background:var(--fill, #f6f7f9);border-radius:10px;padding:9px 11px;min-width:0}.apd-kpis em{display:block;font-style:normal;font-size:11.5px;color:var(--muted);margin-bottom:3px}.apd-kpis b{font-size:14px;font-variant-numeric:tabular-nums;word-break:break-all}.apd-sub{font-size:13px;font-weight:600;margin:16px 0 8px;padding-left:8px;border-left:3px solid var(--accent, #007aff)}.apd-flow{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.apd-node{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;font-size:12.5px;background:var(--card-solid, #fff);border:1px solid var(--hairline, #e3e7ee)}.apd-node b{width:17px;height:17px;border-radius:50%;background:var(--track, #e9edf3);color:var(--muted);display:inline-flex;align-items:center;justify-content:center;font-size:11px}.apd-node em{font-style:normal;font-size:11px;color:var(--muted)}.apd-node.done{border-color:#34c75973}.apd-node.done b{background:var(--up, #34c759);color:#fff}.apd-node.now{border-color:var(--accent);color:var(--accent)}.apd-node.now b{background:var(--accent);color:#fff}.apd-node.bad{border-color:#ff3b3073}.apd-node.bad b{background:var(--down, #ff3b30);color:#fff}.apd-line{width:16px;height:1px;background:var(--hairline, #d8dde5)}.apd-line.on{background:var(--up, #34c759)}.apd-tl{border-left:2px solid var(--hairline, #e3e7ee);margin-left:6px;padding-left:14px}.apd-tl-row{position:relative;padding:0 0 12px}.apd-tl-row:last-child{padding-bottom:0}.apd-tl-row b{font-size:13px}.apd-tl-row span{display:block;font-size:12px;color:var(--muted);margin-top:2px}.apd-tl-row em{display:block;font-style:normal;font-size:12px;color:var(--warn, #b26a00);margin-top:3px}.apd-dot{position:absolute;left:-22px;top:4px;width:9px;height:9px;border-radius:50%;background:var(--track, #d8dde5);border:2px solid var(--card-solid, #fff)}.apd-dot.done{background:var(--up, #34c759)}.apd-dot.bad{background:var(--down, #ff3b30)}.apd-tbl{width:100%;border-collapse:collapse;font-size:12.5px}.apd-tbl th,.apd-tbl td{border-bottom:1px solid var(--hairline, #eef1f5);padding:8px 6px;text-align:left;vertical-align:top}.apd-tbl th{width:76px;color:var(--muted);font-weight:500;background:transparent}.apd-mute{color:var(--muted);font-size:12px}.apd-err{color:var(--down, #ff3b30);font-size:13px;padding:10px 0}@media (max-width: 768px){.apd-kpis{grid-template-columns:1fr 1fr}.apd-node{font-size:12px;padding:5px 8px}.apd-node em{display:none}.ap2-contract-h em{margin-left:0}.ap2-flow-prev-nodes{gap:4px}.ap2-fp-node{font-size:12px;padding:4px 8px}.ap2-fp-line{width:8px}.ap2-op{flex-wrap:wrap;gap:6px}.apd-tbl th{width:66px}}.fin2-page{--fin2-cost: #ff9500;--fin2-exp: #af52de;--fin2-profit: #34c759;--fin2-loss: #ff3b30}.fin2-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.fin2-head h1{margin:0 0 6px}.fin2-sub{margin:0;max-width:760px;font-size:12.5px;line-height:1.75;color:var(--muted)}.fin2-sub b{color:var(--text)}.fin2-head-act{display:flex;gap:8px;flex:0 0 auto}.fin2-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;margin-bottom:14px;border-radius:var(--radius-sm, 12px);background:var(--glass);border:1px solid var(--glass-line, var(--hairline))}.fin2-chips{display:flex;flex-wrap:wrap;gap:6px}.fin2-chip{padding:5px 12px;font-size:12.5px;border-radius:999px;border:1px solid var(--hairline);background:transparent;color:var(--text);cursor:pointer;transition:background .18s,color .18s,border-color .18s;white-space:nowrap}.fin2-chip:hover{border-color:var(--accent);color:var(--accent)}.fin2-chip.on{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.fin2-dates{display:flex;align-items:center;gap:6px;margin-left:auto;font-size:12.5px;color:var(--muted)}.fin2-dates input{min-height:30px;padding:2px 8px;font-size:12.5px;border-radius:8px;border:1px solid var(--hairline);background:var(--card-solid, #fff);color:var(--text)}.fin2-cmp{font-size:12px;color:var(--muted);white-space:nowrap}.fin2-split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:26px;align-items:start}.fin2-steps{display:flex;flex-direction:column;gap:14px}.fin2-step{display:flex;flex-direction:column;gap:6px}.fin2-step-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:12.5px}.fin2-step-h>span{color:var(--muted)}.fin2-step-h>b{font-size:14.5px;font-variant-numeric:tabular-nums;letter-spacing:-.2px}.fin2-step.sum .fin2-step-h>b{color:var(--fin2-profit)}.fin2-step.neg .fin2-step-h>b{color:var(--fin2-cost)}.fin2-step.zero .fin2-step-h>b{color:var(--muted)}.fin2-step-bar{height:10px;border-radius:999px;background:var(--track, var(--fill));overflow:hidden}.fin2-step-bar>i{display:block;height:100%;border-radius:999px;transition:width .55s cubic-bezier(.4,0,.2,1)}.fin2-step.base .fin2-step-bar>i{background:var(--accent);opacity:.85}.fin2-step.neg .fin2-step-bar>i{background:var(--fin2-cost);opacity:.8}.fin2-step.sum .fin2-step-bar>i{background:var(--fin2-profit);opacity:.85}.fin2-step.zero .fin2-step-bar>i{background:var(--muted);opacity:.3}.fin2-step-foot{font-size:11.5px;color:var(--muted)}.fin2-100{display:flex;flex-direction:column;gap:12px}.fin2-100-title{font-size:12.5px;color:var(--muted)}.fin2-100-bar{display:flex;height:34px;border-radius:10px;overflow:hidden;background:var(--track, var(--fill))}.fin2-100-seg{display:flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:600;color:#fff;min-width:0;overflow:hidden;transition:width .55s cubic-bezier(.4,0,.2,1)}.fin2-100-seg.cost{background:var(--fin2-cost);color:#40260a}.fin2-100-seg.exp{background:var(--fin2-exp)}.fin2-100-seg.profit{background:var(--fin2-profit);color:#04331a}.fin2-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;color:var(--muted)}.fin2-legend>span{display:inline-flex;align-items:center;gap:6px}.fin2-legend i{width:9px;height:9px;border-radius:3px;display:inline-block}.fin2-note{padding:10px 12px;font-size:12.5px;line-height:1.8;border-radius:10px;border:1px solid var(--hairline);background:color-mix(in srgb,var(--accent) 6%,transparent)}.fin2-note b{color:var(--text)}.fin2-tbl-wrap{overflow-x:auto}.fin2-tbl{width:100%;border-collapse:collapse;font-size:12.5px}.fin2-tbl th{padding:8px 10px;text-align:right;font-weight:600;font-size:11.5px;color:var(--muted);letter-spacing:.3px;border-bottom:1px solid var(--hairline);white-space:nowrap}.fin2-tbl th:first-child,.fin2-tbl td:first-child{text-align:left}.fin2-tbl td{padding:9px 10px;text-align:right;border-bottom:1px solid var(--hairline);font-variant-numeric:tabular-nums;white-space:nowrap}.fin2-tbl tbody tr:last-child td{border-bottom:0}.fin2-tbl tbody tr:hover td{background:color-mix(in srgb,var(--accent) 4%,transparent)}.fin2-tbl tr.total td{font-weight:700;border-top:1px solid var(--hairline);border-bottom:0}.fin2-tbl .fin2-k{color:var(--muted)}.fin2-tbl .fin2-em{font-weight:600}.fin2-tbl .fin2-dim{color:var(--muted);font-size:11.5px}.fin2-tbl .up{color:var(--up, #2e7d32)}.fin2-tbl .down{color:var(--down, #c62828)}.fin2-tbl .flat{color:var(--muted)}.fin2-share{display:inline-flex;align-items:center;gap:6px;justify-content:flex-end;width:100%}.fin2-share>i{display:block;height:6px;border-radius:999px;background:var(--accent);opacity:.55;min-width:2px}.fin2-bars{display:flex;flex-direction:column;gap:9px}.fin2-bar-row{display:grid;grid-template-columns:108px minmax(0,1fr) 88px 54px;align-items:center;gap:10px;font-size:12.5px}.fin2-bar-k{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fin2-bar-track{height:7px;border-radius:999px;background:var(--track, var(--fill));overflow:hidden}.fin2-bar-track>i{display:block;height:100%;border-radius:999px;background:var(--accent);opacity:.7;transition:width .5s cubic-bezier(.4,0,.2,1)}.fin2-bar-v{text-align:right;font-variant-numeric:tabular-nums}.fin2-bar-s{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}.fin2-bar-row.zero .fin2-bar-k,.fin2-bar-row.zero .fin2-bar-v,.fin2-bar-row.zero .fin2-bar-s{opacity:.55}.fin2-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:34px 20px;text-align:center;border-radius:12px;border:1px dashed var(--hairline);background:color-mix(in srgb,var(--accent) 3%,transparent)}.fin2-empty-ico{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;font-size:17px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--accent),#6f8cff);opacity:.9}.fin2-empty-t{font-size:13.5px;font-weight:600}.fin2-empty-d{max-width:460px;font-size:12px;line-height:1.75;color:var(--muted)}.fin2-empty-d b{color:var(--text)}.fin2-grid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.fin2-charts{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px;padding-bottom:4px}.fin2-chart-t{font-size:12px;font-weight:600;color:var(--muted);margin-bottom:4px}@media (max-width: 1024px){.fin2-split,.fin2-charts{grid-template-columns:1fr;gap:18px}.fin2-grid2{grid-template-columns:1fr}}@media (max-width: 768px){.fin2-head{flex-direction:column}.fin2-head-act{width:100%;justify-content:flex-end}.fin2-head-act>button{flex:0 0 auto}.fin2-dates{margin-left:0;width:100%;flex-wrap:wrap}.fin2-dates input{flex:1;min-width:0}.fin2-bar-row{grid-template-columns:88px minmax(0,1fr) 76px}.fin2-bar-s{display:none}.fin2-tbl th,.fin2-tbl td{padding:8px;font-size:12px}.fin2-100-seg{font-size:10.5px}}.fin2-perm-note{margin-bottom:14px;padding:10px 14px;font-size:12.5px;line-height:1.75;border-radius:10px;border:1px solid color-mix(in srgb,var(--warn, #ff9500) 38%,transparent);background:color-mix(in srgb,var(--warn, #ff9500) 10%,transparent)}.fin2-perm-note b{color:var(--text)}.emp{display:flex;flex-direction:column;gap:14px}.emp-hero{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;padding:18px 20px;border-radius:16px;background:radial-gradient(120% 180% at 0% 0%,color-mix(in srgb,var(--accent) 14%,transparent) 0%,transparent 58%),var(--glass-strong, var(--card-solid));border:1px solid var(--hairline)}.emp-hero-txt{flex:1;min-width:240px}.emp-hero-txt h2{margin:0 0 6px;font-size:20px;font-weight:700;letter-spacing:-.3px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.emp-hero-txt p{margin:0;font-size:12.5px;color:var(--muted);line-height:1.7;max-width:720px}.emp-hero-ops{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.emp-kpis{display:grid;gap:10px;grid-template-columns:repeat(6,minmax(0,1fr))}.emp-kpis .kpi{padding:14px 16px}.emp-kpis .kpi .value{font-size:22px}.emp-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;border-radius:14px;background:var(--card-solid, var(--card));border:1px solid var(--hairline)}.emp-toolbar select{width:132px}.emp-search{flex:1;min-width:180px}.emp-spacer{flex:1}.emp-view{display:flex;padding:3px;border-radius:999px;background:var(--fill)}.emp-view button{padding:5px 14px;font-size:12.5px;background:transparent;color:var(--muted);border-radius:999px}.emp-view button.on{background:var(--card-solid, #fff);color:var(--text);font-weight:600;box-shadow:0 1px 4px #0000001a}.emp-selbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12.5px;color:var(--muted);padding:0 4px}.emp-selall{display:inline-flex;align-items:center;gap:7px;cursor:pointer}.emp-selnum b{color:var(--text)}.emp-selbar input[type=checkbox]{width:16px;height:16px}.emp-groups{display:flex;flex-direction:column;gap:12px}.emp-group{border-radius:16px;overflow:hidden;background:var(--card-solid, var(--card));border:1px solid var(--hairline)}.emp-ghead{display:flex;align-items:center;gap:10px;cursor:pointer;padding:12px 14px;background:var(--fill);-webkit-user-select:none;user-select:none}.emp-ghead:hover{background:var(--fill-2)}.emp-gico{width:30px;height:30px;border-radius:9px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--accent);background:var(--accent-soft)}.emp-gname{font-size:14px;font-weight:600}.emp-gsub{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.emp-gdot{width:6px;height:6px;border-radius:50%;display:inline-block}.emp-gdot.on{background:var(--up, #34c759);margin-left:4px}.emp-gdot.off{background:var(--muted)}.emp-gwarn{font-style:normal;font-size:11.5px;padding:1px 8px;border-radius:999px;color:#b26a00;background:#ff9f0a29}.emp-garrow{margin-left:auto;font-size:18px;color:var(--muted);line-height:1;transform:rotate(0);transition:transform .2s ease}.emp-garrow.open{transform:rotate(90deg)}.emp-rows{display:flex;flex-direction:column}.emp-row{display:grid;align-items:center;gap:10px;grid-template-columns:20px 38px minmax(150px,1.5fr) 110px 150px 200px;padding:10px 14px;border-top:1px solid var(--hairline);transition:background .15s ease}.emp-row:first-child{border-top:0}.emp-row:hover{background:var(--row-hover, rgba(120, 120, 128, .06))}.emp-row.off{opacity:.62}.emp-ck{width:16px;height:16px;justify-self:center}.emp-ava{width:38px;height:38px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;color:#fff;background:linear-gradient(180deg,var(--accent-2, #4aa3ff),var(--accent, #007aff))}.emp-ava.warn{background:linear-gradient(180deg,#ffb340,#ff9f0a)}.emp-ava.sm{width:26px;height:26px;font-size:12px;border-radius:8px}.emp-id{min-width:0}.emp-name{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:13.5px;font-weight:600;line-height:1.4}.emp-sub{font-size:12px;color:var(--muted);margin-top:2px}.emp-cell{font-size:12.5px;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emp-k{display:none}.emp-acc-on{color:var(--text)}.emp-acc-off{color:#b26a00;background:#ff9f0a24;padding:1px 8px;border-radius:999px;font-size:11.5px}.emp-ops{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.emp-ops button{padding:5px 10px;font-size:12px}.emp-tname{display:inline-flex;align-items:center;gap:7px}.emp-bulk{position:sticky;bottom:12px;z-index:20;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 14px;border-radius:14px;background:var(--card-solid, #fff);border:1px solid var(--hairline);box-shadow:0 10px 30px #00000029}.emp-bulk b{color:var(--text)}.emp-bulk button{padding:7px 14px;font-size:12.5px}.emp-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:34px 16px;text-align:center}.emp-empty-ico{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:var(--accent);background:var(--accent-soft)}.emp-empty b{font-size:14px}.emp-empty span{font-size:12.5px;color:var(--muted)}.emp-empty-ops{display:flex;gap:8px;margin-top:6px}@media (max-width: 1180px){.emp-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.emp-row{grid-template-columns:20px 38px minmax(130px,1.4fr) 100px 130px 170px}}@media (max-width: 860px){.emp-row{grid-template-columns:20px 34px minmax(0,1fr);grid-template-areas:"ck ava id" "ck brand brand" "ck acc acc" "ops ops ops";row-gap:6px;padding:12px}.emp-ck{grid-area:ck;align-self:start;margin-top:8px}.emp-ava{grid-area:ava;width:34px;height:34px}.emp-id{grid-area:id}.emp-brand{grid-area:brand}.emp-acc{grid-area:acc}.emp-ops{grid-area:ops;justify-content:flex-start}.emp-k{display:inline;color:var(--muted);margin-right:6px;font-size:11.5px}}@media (max-width: 768px){.emp-hero{padding:14px}.emp-hero-txt h2{font-size:17px}.emp-hero-ops{width:100%}.emp-hero-ops button{flex:1}.emp-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.emp-toolbar{padding:8px 10px}.emp-search{width:100%;flex:1 1 100%}.emp-toolbar select{flex:1;width:auto}.emp-spacer{display:none}.emp-view{width:100%}.emp-view button{flex:1}.emp-bulk{bottom:70px}}.sec-page{display:block}.sec-tip{margin-bottom:14px;padding:11px 14px;font-size:12.5px;line-height:1.8;border-radius:10px;background:var(--accent-soft);border:1px solid var(--hairline)}.sec-list{display:grid;gap:10px}.sec-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--hairline);border-radius:10px;background:var(--glass);transition:border-color .15s}.sec-item:hover{border-color:var(--accent)}.sec-item.cur{border-color:color-mix(in srgb,var(--up) 45%,transparent);background:color-mix(in srgb,var(--up) 6%,var(--glass))}.sec-ico{flex:0 0 42px;height:42px;display:grid;place-items:center;font-size:20px;border-radius:10px;background:var(--fill)}.sec-main{flex:1;min-width:0}.sec-name{font-size:13.5px;font-weight:600;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sec-src{font-size:11.5px;font-weight:400;padding:1px 7px;border-radius:999px;background:var(--fill);color:var(--muted)}.sec-meta{margin-top:3px;font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sec-ua{font-size:12px;color:var(--muted)}@media (max-width: 768px){.sec-item{padding:10px;gap:9px}.sec-ico{flex:0 0 36px;height:36px;font-size:17px}.sec-meta{white-space:normal}}.tax-page{display:flex;flex-direction:column;gap:14px}.tax-page .kpis{margin-bottom:0}.tax-note{display:flex;flex-direction:column;gap:12px}.tax-note-main{font-size:13px;line-height:1.9;color:var(--muted);padding:10px 12px;border-radius:var(--radius-sm);background:var(--fill);border-left:3px solid var(--accent)}.tax-note-main strong{color:var(--text)}.tax-params{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:8px 12px}.tax-params>div{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--fill)}.tax-params span{font-size:11px;color:var(--muted)}.tax-params b{font-size:14px;font-variant-numeric:tabular-nums}.tax-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tax-page .chip{cursor:pointer;border:1px solid var(--hairline);background:transparent;color:var(--muted);border-radius:999px;padding:6px 14px;font-size:13px;transition:all .16s ease}.tax-page .chip:hover{border-color:var(--accent);color:var(--text)}.tax-page .chip.on{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.tax-period{margin-left:auto;height:32px;padding:0 10px;border-radius:var(--radius-sm);border:1px solid var(--hairline);background:var(--card-solid, var(--fill));color:var(--text);font-size:13px}.tax-calc{display:flex;flex-direction:column}.tax-calc-row{display:grid;grid-template-columns:1.4fr 1.1fr .8fr 1fr;gap:10px;align-items:center;padding:10px 4px;border-bottom:1px solid var(--hairline);font-size:13px;font-variant-numeric:tabular-nums}.tax-calc-row:last-child{border-bottom:0}.tax-calc-row.head{font-size:11px;color:var(--muted);padding:6px 4px;border-bottom:1px solid var(--hairline)}.tax-calc-row .tc-name{font-weight:600}.tax-calc-row .tc-tax{font-weight:600;color:var(--accent);text-align:right}.tax-calc-row .tc-note{grid-column:1 / -1;font-size:11px;color:var(--muted);line-height:1.7;margin-top:2px}.tax-rate-note{font-size:12px;line-height:1.9;color:var(--muted);padding:10px 12px;border-radius:var(--radius-sm);background:var(--fill);border-left:3px solid var(--accent);margin-bottom:10px}.tax-rate-note strong,.tax-rate-note b{color:var(--text)}.tax-inv-split{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted);padding:8px 12px;margin-bottom:12px;border-radius:var(--radius-sm);background:var(--fill);font-variant-numeric:tabular-nums}.tax-inv-split b{color:var(--text)}.tax-rate-group{margin-top:10px}.tax-rate-group:first-of-type{margin-top:0}.trg-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 0;font-size:13px;font-variant-numeric:tabular-nums}.trg-head .trg-desc{color:var(--muted)}.trg-head .trg-sum{margin-left:auto;color:var(--muted)}.trg-head .trg-tax{color:var(--accent)}.trg-total{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 4px;margin-top:6px;border-top:2px solid var(--hairline);font-size:13px;font-variant-numeric:tabular-nums}.trg-total>span:first-child{width:96px;color:var(--muted)}.trg-total>span:nth-child(2),.trg-total>span:nth-child(3){flex:1}.trg-total>b{min-width:130px;text-align:right;color:var(--accent)}.tax-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tax-trend{display:flex;flex-direction:column;gap:9px}.tax-trend-row{display:grid;grid-template-columns:62px 1fr 104px 52px;gap:10px;align-items:center;font-size:12px;font-variant-numeric:tabular-nums}.tax-trend-row .tt-p{color:var(--muted)}.tax-trend-row .tt-bar{height:10px;border-radius:999px;background:var(--track);overflow:hidden;display:block}.tax-trend-row .tt-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent-soft),var(--accent))}.tax-trend-row .tt-v{text-align:right}.tax-trend-row .tt-r{text-align:right;color:var(--muted)}.tax-alerts{display:flex;flex-direction:column;gap:10px}.tax-alert{padding:10px 12px;border-radius:var(--radius-sm);background:var(--fill);border-left:3px solid var(--warn)}.tax-alert.danger{border-left-color:var(--down)}.tax-alert .ta-head{display:flex;align-items:center;gap:8px;font-size:13px;margin-bottom:4px}.tax-alert .ta-detail{font-size:12px;line-height:1.8;color:var(--muted)}.tax-urgent{color:var(--down);font-weight:600}@media (max-width: 900px){.tax-grid-2{grid-template-columns:1fr}.tax-calc-row{grid-template-columns:1.2fr 1fr}.tax-calc-row.head{display:none}.tax-trend-row{grid-template-columns:56px 1fr 88px 46px;font-size:11px}}.tax-brand-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px;padding:10px 12px;background:var(--fill, rgba(127, 127, 127, .08));border:1px solid var(--hairline, rgba(127, 127, 127, .2));border-radius:var(--radius-sm, 10px)}.tax-brand-bar .tbb-label{font-size:13px;font-weight:600}.tax-brand-bar .tbb-select{min-height:34px;padding:4px 10px;font-size:13px;border-radius:8px;border:1px solid var(--hairline, rgba(127, 127, 127, .3));background:var(--card-solid, #fff);color:inherit}.tax-brand-bar .tbb-fixed{font-size:13px;font-weight:600}:root{--blue: #007aff;--green: #34c759;--indigo: #5856d6;--purple: #af52de;--pink: #ff2d55;--red: #ff3b30;--orange: #ff9500;--yellow: #ffcc00;--teal: #30b0c7;--accent: #007aff;--accent-2: #3b9bff;--up: #34c759;--down: #ff3b30;--warn: #ff9500;--bg: #f2f2f7;--card-solid: #ffffff;--glass: rgba(255, 255, 255, .66);--glass-strong: rgba(255, 255, 255, .82);--card: rgba(255, 255, 255, .72);--border: rgba(60, 60, 67, .12);--glass-line: rgba(255, 255, 255, .7);--hairline: rgba(60, 60, 67, .12);--fill: rgba(120, 120, 128, .12);--fill-2: rgba(120, 120, 128, .2);--track: rgba(120, 120, 128, .14);--row-hover: rgba(120, 120, 128, .08);--th-bg: rgba(255, 255, 255, .82);--text: #1c1c1e;--muted: rgba(60, 60, 67, .6);--accent-soft: rgba(0, 122, 255, .12);--btn-bg: rgba(255, 255, 255, .8);--mask: rgba(0, 0, 0, .32);--sidebar-bg: rgba(246, 246, 250, .74);--sidebar-text: #1c1c1e;--sidebar-muted: rgba(60, 60, 67, .66);--nav-hover: rgba(120, 120, 128, .14);--sidebar-line: rgba(60, 60, 67, .14);--radius: 22px;--radius-sm: 16px;--radius-xs: 11px;--shadow: 0 8px 26px rgba(0, 0, 0, .07);--shadow-lg: 0 20px 60px rgba(0, 0, 0, .16);--blur: 22px;--ease: cubic-bezier(.32, .72, 0, 1);--login-bg: transparent;--brand: #007aff;--bg-card: #ffffff;--bg-soft: #fafbfd;--bg-input: #ffffff;--fg: #1c1c1e;--danger: #ff3b30;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 6px 18px rgba(0, 0, 0, .09);--fin2-profit: #34c759;--fin2-cost: #ff9500;--fin2-exp: #af52de}[data-theme=dark]{--bg: #000000;--card-solid: #1c1c1e;--glass: rgba(30, 30, 34, .6);--glass-strong: rgba(38, 38, 44, .78);--card: rgba(28, 28, 30, .72);--border: rgba(255, 255, 255, .1);--glass-line: rgba(255, 255, 255, .14);--hairline: rgba(255, 255, 255, .1);--fill: rgba(118, 118, 128, .22);--fill-2: rgba(118, 118, 128, .32);--track: rgba(118, 118, 128, .24);--row-hover: rgba(255, 255, 255, .06);--th-bg: rgba(38, 38, 44, .8);--text: #f5f5f7;--muted: rgba(235, 235, 245, .58);--accent: #0a84ff;--accent-2: #4aa3ff;--accent-soft: rgba(10, 132, 255, .18);--btn-bg: rgba(60, 60, 67, .5);--mask: rgba(0, 0, 0, .5);--sidebar-bg: rgba(24, 24, 28, .62);--sidebar-text: #eaeaef;--sidebar-muted: rgba(235, 235, 245, .64);--nav-hover: rgba(255, 255, 255, .08);--sidebar-line: rgba(255, 255, 255, .1);--shadow: 0 10px 30px rgba(0, 0, 0, .45);--shadow-lg: 0 24px 70px rgba(0, 0, 0, .6);--brand: #0a84ff;--bg-card: #1c1c1e;--bg-soft: rgba(38, 38, 44, .6);--bg-input: rgba(58, 58, 64, .62);--fg: #f5f5f7;--danger: #ff453a;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 6px 18px rgba(0, 0, 0, .45);--fin2-profit: #30d158;--fin2-cost: #ff9f0a;--fin2-exp: #bf5af2}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Helvetica Neue,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.6;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;transition:background-color .3s var(--ease),color .3s var(--ease)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(58vw 44vw at 6% 2%,rgba(0,122,255,.28),transparent 62%),radial-gradient(50vw 40vw at 94% 6%,rgba(175,82,222,.22),transparent 62%),radial-gradient(54vw 42vw at 80% 98%,rgba(52,199,89,.18),transparent 62%),radial-gradient(46vw 36vw at 10% 94%,rgba(255,149,0,.16),transparent 62%);transition:opacity .3s var(--ease)}[data-theme=dark] body:before{background:radial-gradient(58vw 44vw at 6% 2%,rgba(10,132,255,.3),transparent 62%),radial-gradient(50vw 40vw at 94% 6%,rgba(175,82,222,.26),transparent 62%),radial-gradient(54vw 42vw at 80% 98%,rgba(48,209,88,.16),transparent 62%),radial-gradient(46vw 36vw at 10% 94%,rgba(255,149,0,.14),transparent 62%)}#root{min-height:100vh}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#78788057;border-radius:999px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:#7878808c;background-clip:content-box}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:none;box-shadow:0 0 0 3px #007aff59}.logo-wrap{display:flex;flex-direction:column;align-items:center;gap:6px}.logo-wrap.row-dir{flex-direction:row}.logo{display:block}.logo-sub{font-size:11px;color:var(--sidebar-muted);letter-spacing:.5px}.theme-btn{display:inline-flex;align-items:center;gap:6px;border-radius:999px;height:32px;padding:0 12px;font-size:12.5px;background:var(--fill);border:0;color:var(--text);transition:background .18s var(--ease),transform .15s var(--ease)}.theme-btn:hover{background:var(--fill-2)}.theme-btn:active{transform:scale(.97)}.theme-dot{display:inline-block;width:8px;height:8px;border-radius:999px}.login-theme-btn{position:fixed;top:18px;right:18px}.app-footer{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:22px 16px 26px;font-size:12px;color:var(--muted);line-height:1.6}.app-footer a{color:var(--muted);text-decoration:none}.app-footer a:hover{color:var(--text);text-decoration:underline}.app-footer .sep{opacity:.45}.app-footer .af-line{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.app-footer.login-footer{position:fixed;bottom:12px;left:0;right:0;padding:0}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--login-bg);padding:20px}.login-card{width:380px;max-width:100%;background:var(--glass-strong);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border:1px solid var(--glass-line);border-radius:28px;padding:34px 30px;box-shadow:var(--shadow-lg),inset 0 1px #ffffff80;animation:sheetIn .4s var(--ease)}.login-card h1{font-size:26px;font-weight:700;letter-spacing:-.5px;margin:0 0 4px;text-align:center}.login-card .sub{color:var(--muted);margin-bottom:24px;font-size:13px;text-align:center}.login-card .demo{margin-top:18px;font-size:12px;color:var(--muted);line-height:1.9;border-top:1px solid var(--hairline);padding-top:14px}.login-actions{display:flex;gap:10px;margin-top:12px}.login-actions button{flex:1}.login-msg{font-size:12px;margin-top:14px;padding:10px 12px;border-radius:var(--radius-xs);background:var(--accent-soft);color:var(--accent);line-height:1.6}.login-msg.error{background:#ff3b3024;color:var(--down)}.wx-split{display:flex;align-items:center;gap:10px;margin:16px 0 10px;color:var(--muted);font-size:12px}.wx-split:before,.wx-split:after{content:"";flex:1;height:1px;background:var(--hairline)}.wx-login-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 14px;border-radius:var(--radius-xs);border:1px solid #07c160;background:#07c160;color:#fff;font-size:14px;font-weight:600;cursor:pointer}.wx-login-btn:hover{background:#06ad56}.wx-qr-box{min-height:300px;display:flex;align-items:center;justify-content:center}.wx-qr-box iframe{border:0}.wx-tabs{display:flex;gap:8px;margin-top:14px;border-bottom:1px solid var(--hairline)}.wx-tabs button{flex:1;padding:8px 6px;background:none;border:0;border-bottom:2px solid transparent;color:var(--muted);font-size:13px;cursor:pointer}.wx-tabs button.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.layout{display:flex;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;width:236px;flex:0 0 236px;display:flex;flex-direction:column;background:var(--sidebar-bg);backdrop-filter:blur(28px) saturate(180%);-webkit-backdrop-filter:blur(28px) saturate(180%);border-right:1px solid var(--sidebar-line);color:var(--sidebar-text)}.sidebar .brand{padding:14px;border-bottom:1px solid var(--sidebar-line);display:flex;flex-direction:row;align-items:center;gap:10px}.sidebar .brand .lok-brand-mark{flex:0 0 auto;border-radius:9px;box-shadow:0 0 0 1px var(--sidebar-line),0 2px 8px #0000002e}.brand-txt{display:flex;flex-direction:column;gap:3px;min-width:0}.sidebar .brand .sys-name{font-size:13.5px;font-weight:600;color:var(--sidebar-text);letter-spacing:-.2px;line-height:1.1;white-space:nowrap}.sidebar .brand .logo-sub{font-size:10px;letter-spacing:.2px;color:var(--sidebar-muted);opacity:.8;line-height:1.1;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.nav{padding:10px;overflow-y:auto;flex:1}.nav-group{margin-bottom:4px}.nav-group-title{font-family:inherit;width:100%;display:flex;align-items:center;gap:6px;background:none;border:0;text-align:left;cursor:pointer;color:var(--sidebar-muted);font-size:12px;font-weight:600;padding:10px 12px;border-radius:var(--radius-xs);letter-spacing:.3px;transition:background .2s var(--ease),color .2s var(--ease)}.nav-group-title:hover{background:var(--nav-hover);color:var(--sidebar-text)}.nav-group-title .ng-ico{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex:0 0 16px;opacity:.8;transition:opacity .2s var(--ease)}.nav-group-title:hover .ng-ico{opacity:1}.nav-group.open>.nav-group-title .ng-ico{opacity:1}.nav-group-title .ng-count{font-size:11px;font-weight:600;padding:1px 7px;border-radius:999px;background:var(--nav-hover);color:var(--sidebar-muted)}.nav-group-title .ng-arrow{margin-left:auto;font-size:11px;opacity:.7;transform:rotate(-90deg);transition:transform .22s var(--ease)}.nav-group.open>.nav-group-title{color:var(--sidebar-text)}.nav-group.open>.nav-group-title .ng-arrow{transform:rotate(0)}.nav-group-title.has-active{color:var(--accent)}.nav-group-title.has-active .ng-count{background:var(--accent-soft);color:var(--accent)}.nav-items{margin:2px 0 6px 14px;padding-left:6px;border-left:1.5px solid var(--sidebar-line);animation:navOpen .22s var(--ease)}@keyframes navOpen{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.nav-items .nav-item{font-size:13px}.nav-item{display:block;padding:9px 12px;margin-bottom:2px;border-radius:var(--radius-xs);color:var(--sidebar-text);cursor:pointer;font-size:13px;text-decoration:none;transition:background .2s var(--ease),color .2s var(--ease),transform .15s var(--ease)}.nav-item:hover{background:var(--nav-hover)}.nav-item:active{transform:scale(.98)}.nav-item.active{background:var(--accent);color:#fff;font-weight:500;box-shadow:0 4px 14px #007aff4d}.sidebar-foot{padding:10px 10px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--sidebar-line)}.su-menu{width:100%}.su-card{width:100%;display:flex;align-items:center;gap:9px;padding:7px 10px 7px 7px;border-radius:14px;background:transparent;border:0;cursor:pointer;font:inherit;text-align:left;color:var(--sidebar-text);transition:background .18s var(--ease),transform .18s var(--ease)}.su-card:hover{background:var(--nav-hover)}.su-card.open{background:var(--nav-hover);box-shadow:inset 0 0 0 1px var(--sidebar-line)}.su-card:active{transform:scale(.99)}.su-avatar{width:30px;height:30px;font-size:13px}.su-meta{display:flex;flex-direction:column;min-width:0;line-height:1.28}.su-name{font-size:13px;font-weight:600;color:var(--sidebar-text);max-width:116px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.su-role{font-size:11px;color:var(--sidebar-muted);max-width:116px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.su-more{margin-left:auto;flex:0 0 auto;color:var(--sidebar-muted);font-size:17px;line-height:1;letter-spacing:1px;transform:translateY(-2px);transition:color .18s var(--ease)}.su-card:hover .su-more,.su-card.open .su-more{color:var(--sidebar-text)}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:40;height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;gap:12px;background:var(--glass-strong);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-bottom:1px solid var(--hairline)}.topbar .left{display:flex;align-items:center;gap:10px;min-width:0}.topbar .title{font-size:13px;color:var(--muted);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar .title .crumb-sep{margin:0 5px;opacity:.45}.topbar .right{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.ver-chip{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 11px;border-radius:999px;background:var(--fill);white-space:nowrap;letter-spacing:.2px;font-size:11.5px;color:var(--muted)}.ver-chip b{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.user-menu{position:relative;flex:0 0 auto}.user-avatar{width:28px;height:28px;flex:0 0 auto;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#0a84ff,#0062e0);color:#fff;font-size:13px;font-weight:600;line-height:1;box-shadow:0 2px 6px #007aff52}.user-avatar.lg{width:38px;height:38px;font-size:16px}.user-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60}.user-drop{position:absolute;top:calc(100% + 8px);right:0;z-index:61;min-width:216px;padding:8px;border-radius:16px;border:1px solid var(--glass-line);background:var(--glass-strong);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(26px) saturate(180%);backdrop-filter:blur(26px) saturate(180%);animation:sheetIn .2s var(--ease)}.ud-item{display:flex;align-items:center;gap:8px;width:100%;border:0;background:none;cursor:pointer;font:inherit;text-align:left;padding:9px 10px;border-radius:10px;font-size:13px;color:var(--text)}.ud-item:hover{background:var(--nav-hover)}.ud-item.danger{color:var(--down)}.sidebar-foot .su-drop{top:auto;bottom:calc(100% + 8px);left:0;right:0;width:auto;min-width:0;animation:sheetUp .2s var(--ease)}@keyframes sheetUp{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}.content{padding:20px 22px 44px;overflow-x:clip;width:100%;max-width:1560px;margin:0 auto}.page-head{margin:2px 0 18px}.page-head h1{margin:0;font-size:32px;font-weight:700;letter-spacing:-.4px;line-height:1.25;color:var(--text);text-wrap:pretty}.card{background:var(--glass);backdrop-filter:blur(var(--blur)) saturate(180%);-webkit-backdrop-filter:blur(var(--blur)) saturate(180%);border:1px solid var(--glass-line);border-radius:var(--radius);box-shadow:var(--shadow),inset 0 1px #ffffff80;padding:18px;margin-bottom:16px}.card h3{margin:0 0 14px;font-size:16px;font-weight:600;letter-spacing:-.2px;line-height:1.35;display:flex;align-items:center;justify-content:space-between;gap:10px}.card h3 .hint{font-weight:400;font-size:12px;color:var(--muted)}.grid{display:grid;gap:14px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-6{grid-template-columns:repeat(6,minmax(0,1fr))}.kpis{display:grid;gap:14px;margin-bottom:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.kpis:has(>.kpi:nth-child(6)){grid-template-columns:repeat(3,minmax(0,1fr))}.kpi{background:var(--glass);backdrop-filter:blur(var(--blur)) saturate(180%);-webkit-backdrop-filter:blur(var(--blur)) saturate(180%);border:1px solid var(--glass-line);border-radius:var(--radius-sm);padding:15px 17px;box-shadow:var(--shadow),inset 0 1px #ffffff80;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}.kpi:hover{transform:translateY(-2px);box-shadow:0 14px 34px #0000001a}.kpi .label{font-size:12px;color:var(--muted);font-weight:500;line-height:1.4}.kpi .value{font-size:24px;font-weight:700;margin:6px 0 5px;letter-spacing:-.4px;line-height:1.15;font-variant-numeric:tabular-nums}.kpi .foot{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;line-height:1.45}.kpi .foot .up{color:var(--up)}.kpi .foot .down{color:var(--down)}.kpi.accent{background:linear-gradient(135deg,rgba(0,122,255,.16),var(--glass));border-color:#007aff47}.filterbar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;background:var(--glass);backdrop-filter:blur(var(--blur)) saturate(180%);-webkit-backdrop-filter:blur(var(--blur)) saturate(180%);border:1px solid var(--glass-line);border-radius:var(--radius-sm);padding:14px 16px;margin-bottom:16px;box-shadow:var(--shadow),inset 0 1px #ffffff80}.field{display:flex;flex-direction:column;gap:5px}.field label{font-size:12px;color:var(--muted);font-weight:500;line-height:1.4}input,select,textarea{border:1px solid transparent;border-radius:var(--radius-xs);padding:9px 12px;font-size:13px;font-family:inherit;background:var(--fill);color:var(--text);outline:none;transition:background .2s var(--ease),box-shadow .2s var(--ease)}input:focus,select:focus,textarea:focus{background:var(--fill-2)}input::placeholder,textarea::placeholder{color:var(--muted)}input[type=file]{padding:6px}input[type=date],input[type=month]{min-width:130px}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:26px;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 15px) 51%,calc(100% - 10px) 51%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}button{border:0;border-radius:999px;padding:9px 16px;font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;color:var(--text);background:var(--fill);transition:transform .15s var(--ease),background .2s var(--ease),box-shadow .2s var(--ease),opacity .2s}button:hover{background:var(--fill-2)}button:active{transform:scale(.96)}button.primary{background:linear-gradient(180deg,var(--accent-2),var(--accent));color:#fff;box-shadow:0 4px 16px #007aff52,inset 0 1px #ffffff59}button.primary:hover{opacity:.92;background:linear-gradient(180deg,var(--accent-2),var(--accent))}button.ghost:not(.primary){background:transparent;border:1px solid var(--hairline)}button.ghost:not(.primary):hover{background:var(--fill)}button.primary.ghost{border:0}button.danger{color:var(--red);background:#ff3b301a;border:1px solid rgba(255,59,48,.22)}button.danger:hover{background:#ff3b302e}button:disabled{opacity:.45;cursor:not-allowed;transform:none}.chips{display:flex;flex-wrap:wrap;gap:7px}.chip{border:1px solid var(--hairline);border-radius:999px;padding:6px 14px;font-size:12px;cursor:pointer;background:var(--fill);color:var(--text);transition:transform .15s var(--ease),background .2s var(--ease),color .2s var(--ease)}.chip:hover{background:var(--fill-2)}.chip:active{transform:scale(.96)}.chip.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:500;box-shadow:0 3px 12px #007aff4d}table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;line-height:1.45}th,td{padding:12px;border-bottom:1px solid var(--hairline);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}th:first-child,td:first-child{text-align:left}th{color:var(--muted);font-weight:600;font-size:12px;letter-spacing:.2px;background:var(--th-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);position:sticky;top:0;z-index:2}tbody tr:hover td{background:var(--row-hover)}tbody tr:last-child td{border-bottom:0}.tbl-wrap{max-height:460px;overflow:auto;border:1px solid var(--glass-line);border-radius:var(--radius-sm);background:var(--glass);box-shadow:var(--shadow)}.tbl-wrap table{border:none}.card .tbl-wrap{margin:0 -12px;border:0;border-radius:0;background:transparent;box-shadow:none}.card .tbl-wrap:last-child{margin-bottom:-6px}.card>table{margin:0 -12px}.card,.kpi,.badge,.legend,.toast,.modal{font-variant-numeric:tabular-nums}.card,.modal,.toast{overflow-wrap:break-word}.card b,.modal b,.toast b{font-weight:600}.sub-title{font-size:13px;font-weight:600;color:var(--text);margin:14px 0 6px;letter-spacing:-.1px;line-height:1.4}.sub-title:first-child{margin-top:0}.mini-list{margin-top:2px}.mini-row{display:flex;gap:8px;font-size:13px;line-height:1.7}.mini-row .mini-name{min-width:90px}.card ul,.card ol{margin:2px 0 0;padding-left:18px}.card li{margin-bottom:4px;font-size:13px;line-height:1.65}.card li:last-child{margin-bottom:0}.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:500;line-height:1.5;font-variant-numeric:tabular-nums;background:var(--accent-soft);color:var(--accent)}.badge.warn{background:#ff950029;color:#b26a00}[data-theme=dark] .badge.warn{color:var(--warn)}.badge.danger{background:#ff3b3024;color:var(--down)}.badge.ok{background:#34c75929;color:#1a8f43}[data-theme=dark] .badge.ok{color:var(--up)}.badge.grey{background:var(--track);color:var(--muted)}.empty{padding:44px 20px;text-align:center;color:var(--muted);font-size:13px;line-height:1.7}.muted{color:var(--muted)}.up{color:var(--up)}.down{color:var(--down)}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.spacer{flex:1}.legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted);line-height:1.5}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{display:inline-block;width:9px;height:9px;border-radius:3px}.toast-wrap{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:999;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}.toast{display:flex;align-items:center;gap:9px;background:var(--glass-strong);backdrop-filter:blur(26px) saturate(180%);-webkit-backdrop-filter:blur(26px) saturate(180%);border:1px solid var(--glass-line);border-radius:20px;padding:11px 18px;box-shadow:var(--shadow-lg);font-size:13px;max-width:78vw;animation:toastIn .34s var(--ease)}.toast:before{content:"";width:8px;height:8px;border-radius:999px;background:var(--accent);flex:0 0 8px}.toast.error:before{background:var(--red)}.toast.success:before{background:var(--green)}@keyframes toastIn{0%{opacity:0;transform:translateY(-16px) scale(.94)}to{opacity:1;transform:none}}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--mask);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:900;padding:24px 16px;animation:fadeIn .2s var(--ease)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--glass-strong);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border:1px solid var(--glass-line);border-radius:26px;width:600px;max-width:92vw;max-height:calc(100vh - 48px);display:flex;flex-direction:column;overflow:hidden;padding:22px;box-shadow:var(--shadow-lg),inset 0 1px #ffffff80;animation:sheetIn .36s var(--ease)}.modal-body{flex:1 1 auto;min-height:0;overflow:auto;margin:0 -6px;padding:0 6px;overscroll-behavior:contain}.modal>h3{flex:0 0 auto}@keyframes sheetIn{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:none}}.modal h3{margin:0 0 16px;font-size:17px;font-weight:600;letter-spacing:-.3px;line-height:1.3}.cm-fgroup-title{font-size:12px;font-weight:600;color:var(--accent);margin:8px 0 6px;padding-bottom:5px;border-bottom:1px solid var(--hairline)}.cm-trend{font-size:12px}.cm-mini-bar{height:6px;background:var(--track);border-radius:999px;overflow:hidden;min-width:60px}.cm-mini-bar>div{height:100%;background:linear-gradient(90deg,var(--accent-2),var(--accent))}.ch-logo{display:inline-flex;align-items:center;justify-content:center;flex:none;color:#fff;font-weight:600;line-height:1;-webkit-user-select:none;user-select:none;text-shadow:0 1px 2px rgba(0,0,0,.22);box-shadow:inset 0 1px #ffffff40,0 1px 3px #00000029}.ch-logo-img{object-fit:cover;background:var(--track);box-shadow:none}.ch-logo-plat{background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 1px 2px #0000000f}.ch-logo-text{font-weight:800;letter-spacing:-.4px;line-height:1;font-family:-apple-system,SF Pro Display,PingFang SC,sans-serif}.cm-wall-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:10px}.cm-chip{padding:3px 10px;border-radius:999px;font-size:12px;cursor:pointer;border:1px solid var(--border);background:transparent;color:var(--muted)}.cm-chip:hover{color:var(--accent);border-color:var(--accent)}.cm-chip.active{color:var(--accent);border-color:var(--accent);background:var(--accent-soft);font-weight:600}.cm-wall-toggle{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--muted);cursor:pointer}.cm-wall-toggle input{width:13px;height:13px}.cm-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.cm-wall-card{position:relative;text-align:center;cursor:pointer;padding:12px 10px 9px;border:1px solid var(--border);border-radius:var(--radius-xs);background:var(--btn-bg);transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease}.cm-wall-card:hover{transform:translateY(-2px);border-color:var(--accent);box-shadow:var(--shadow)}.cm-wall-card.off{opacity:.6}.cm-wall-logo{position:relative;display:inline-flex;margin-bottom:7px}.cm-wall-upload,.cm-wall-del{position:absolute;top:-4px;display:none;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:11px;line-height:1;background:var(--accent);color:#fff;box-shadow:0 1px 4px #0000004d}.cm-wall-upload{right:-6px}.cm-wall-del{left:-6px;background:var(--down)}.cm-wall-card:hover .cm-wall-upload,.cm-wall-card:hover .cm-wall-del{display:inline-flex}.cm-wall-name{font-size:13px;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cm-wall-shop{font-size:11px;color:var(--muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cm-wall-metric{font-size:12px;margin-top:5px}.cm-wall-prog{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:5px;font-size:11px}.cm-wall-prog .cm-mini-bar{flex:1;max-width:70px}.cm-wall-foot{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:6px;font-size:11px;color:var(--muted)}.cm-wall-sync{color:var(--up);font-weight:700}.cm-wall-link{color:var(--accent);text-decoration:none}.cm-dot{position:absolute;top:8px;left:8px;width:7px;height:7px;border-radius:50%}.cm-dot.st-ok{background:var(--up)}.cm-dot.st-warn{background:var(--warn)}.cm-dot.st-grey{background:var(--muted)}@media (max-width: 520px){.cm-wall{grid-template-columns:repeat(auto-fill,minmax(118px,1fr))}.cm-wall-card{padding:10px 6px 8px}}.modal-body>.field+.field{margin-top:12px}.modal .foot{display:flex;justify-content:flex-end;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid var(--hairline);flex:0 0 auto}.progress{height:8px;background:var(--track);border-radius:999px;overflow:hidden}.progress>div{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent-2),var(--accent))}.notif-box{position:relative}.notif-btn{position:relative;display:inline-flex;align-items:center;gap:11px;height:32px;padding:0 12px;border-radius:999px;background:var(--fill);color:var(--text);font-size:12.5px;font-weight:500;transition:background .18s var(--ease),transform .15s var(--ease)}.notif-btn:hover{background:var(--fill-2)}.notif-btn:active{transform:scale(.97)}.notif-btn.open{background:var(--glass-strong);box-shadow:inset 0 0 0 1px var(--glass-line)}.notif-ico{position:relative;display:inline-flex;align-items:center;justify-content:center}.notif-ico svg{display:block;opacity:.85}.notif-label{line-height:1}.notif-badge{position:absolute;top:-7px;right:-6px;min-width:17px;height:17px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--red);color:#fff;font-size:10px;font-weight:700;line-height:1;letter-spacing:-.2px;font-variant-numeric:tabular-nums;box-shadow:0 0 0 2px var(--bg),0 2px 6px #ff3b3059}.notif-head-title{display:inline-flex;align-items:center;gap:6px}.notif-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 6px;border-radius:999px;background:var(--red);color:#fff;font-size:10.5px;font-weight:700;line-height:1}.notif-panel{position:absolute;right:0;top:42px;width:344px;z-index:80;padding:10px;background:var(--card-solid);border:1px solid var(--glass-line);border-radius:20px;box-shadow:var(--shadow-lg);animation:popIn .24s var(--ease)}@keyframes popIn{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:none}}.notif-head{font-size:13px;font-weight:600;padding:2px 4px 10px;margin-bottom:8px;border-bottom:1px solid var(--hairline);display:flex;align-items:center;justify-content:space-between}.notif-list{max-height:400px;overflow:auto;padding-top:2px}.notif-item{padding:11px 12px;border-radius:12px;margin-bottom:7px;background:var(--fill);transition:background .15s var(--ease)}.notif-item:hover{background:var(--fill-2)}.notif-item.unread{border-left:3px solid var(--accent);padding-left:10px}.notif-title{display:flex;gap:7px;align-items:flex-start;font-size:12.5px;line-height:1.45}.notif-title .badge{flex:0 0 auto;white-space:nowrap;font-size:11px;padding:0 7px;line-height:1.7}.notif-title b{flex:1 1 auto;min-width:0;font-weight:600}.notif-content{margin:5px 0 7px;font-size:12px;color:var(--muted);white-space:pre-wrap;line-height:1.6}.notif-foot{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted)}.link-btn{border:none;background:none;color:var(--accent);padding:0;font-size:12px;cursor:pointer;font-family:inherit}.link-btn:hover{text-decoration:underline;color:var(--accent)}.reset-link{color:var(--accent);word-break:break-all;font-size:12px}.menu-btn{display:none;width:38px;height:38px;flex:0 0 38px;align-items:center;justify-content:center;background:var(--fill);border:0;border-radius:999px;color:var(--text);font-size:17px;line-height:1;cursor:pointer}.sidebar-mask{display:none}@media (max-width: 1200px){.ver-chip-label{display:none}.topbar .right{gap:8px}}@media (max-width: 1100px){.grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 768px){.sidebar{position:fixed;left:0;top:0;bottom:0;z-index:60;width:268px;flex-basis:268px;transform:translate(-100%);transition:transform .28s var(--ease);box-shadow:var(--shadow-lg);padding-top:env(safe-area-inset-top)}.sidebar.open{transform:none}.sidebar-mask{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:var(--mask);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.menu-btn{display:inline-flex}.sidebar-foot{padding-bottom:calc(14px + env(safe-area-inset-bottom))}.topbar{height:calc(52px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 14px 0;gap:8px}.topbar .title{display:none}.topbar .right{gap:8px}.topbar .right>span{display:none}.su-card{padding:6px 8px}.su-name,.su-role{max-width:150px}.content{padding:14px 14px calc(32px + env(safe-area-inset-bottom))}.page-head{margin:0 0 14px}.page-head h1{font-size:26px;letter-spacing:-.3px;line-height:1.3}.card{padding:15px;border-radius:18px;margin-bottom:14px}.card h3{font-size:15px;margin-bottom:12px}.card .tbl-wrap{margin:0 -15px}.kpi{padding:13px 14px;border-radius:var(--radius-sm)}.kpi .value{font-size:20px}.grid{gap:12px}.grid-2,.grid-3,.grid-4,.grid-6{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2{grid-template-columns:minmax(0,1fr)}.kpis,.kpis:has(>.kpi:nth-child(6)){grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.filterbar{padding:12px;gap:10px 12px;border-radius:var(--radius-sm)}.field{flex:1 1 calc(50% - 6px);min-width:0}.filterbar>.field:first-child{flex:1 1 100%}.field:has(textarea),.field:has(input[type=file]),.field:has(input[type=checkbox]){flex:1 1 100%}.field input,.field select,.field textarea{width:100%}.theme-label,.notif-label{display:none}.theme-btn,.notif-btn{width:44px;height:44px;padding:0;justify-content:center;gap:0;border-radius:999px}.notif-badge{top:-6px;right:-7px}input,select,textarea{font-size:16px;padding:11px 12px}button{min-height:44px;padding:10px 16px}.chip{padding:8px 14px}.spacer{display:none}.tbl-wrap{max-height:60vh;border-radius:14px}th,td{padding:12px 10px}th:first-child,td:first-child{position:sticky;left:0;background:var(--card-solid);z-index:1}th:first-child{z-index:3}.modal-mask{align-items:flex-end;padding:0}.modal{width:100%!important;max-width:100%;border-radius:24px 24px 0 0;max-height:calc(100dvh - 24px);padding:20px 16px calc(14px + env(safe-area-inset-bottom));animation:sheetUp .38s var(--ease)}@keyframes sheetUp{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:none}}.notif-panel{width:min(340px,calc(100vw - 24px));right:-6px}.login-card{padding:28px 20px;border-radius:24px}.toast-wrap{top:calc(10px + env(safe-area-inset-top))}}@media (max-width: 420px){.grid-3,.grid-4,.grid-6{grid-template-columns:repeat(2,minmax(0,1fr))}.page-head h1{font-size:23px;line-height:1.3}.kpi{padding:11px 12px}.kpi .value{font-size:19px}.kpi .label{font-size:11px}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media (max-width: 768px){.topbar .title{display:flex;align-items:center;gap:5px;min-width:0;font-size:13.5px;font-weight:600}.topbar .title>span:not(.crumb-sep){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .left{min-width:0;flex:1}.page-head{margin:0 0 10px}.page-head h1{font-size:21px;line-height:1.3}.tbl-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}th:first-child,td:first-child{box-shadow:2px 0 6px #00000012}.chart-wrap svg,.card svg,.chart-wrap,.mt-ring svg{max-width:100%}.chart-wrap{overflow-x:auto}.modal .grid.grid-2{grid-template-columns:minmax(0,1fr)}.modal .foot{flex-wrap:wrap;gap:8px}.modal .foot>button{flex:1 1 45%;min-height:44px}.filterbar>button{flex:1 1 auto}.kpi .foot{font-size:11px;line-height:1.5}.kpi .label{font-size:11.5px}.card,.kpi,.sc-alert,.badge{overflow-wrap:anywhere}}.kpi-prog{margin-top:9px}.kpi-bar{height:6px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--muted) 22%,transparent)}.kpi-bar>i{display:block;height:100%;border-radius:999px;background:var(--accent);transition:width .35s var(--ease)}.kpi-bar>i.ok{background:var(--up)}.kpi-bar>i.warn{background:var(--warn)}.kpi-bar>i.bad{background:var(--down)}.kpi-prog-foot{margin-top:5px;font-size:11.5px;line-height:1.4;color:var(--muted)}.kpi-prog-foot .warn-t{color:var(--warn)}.risk-list{display:flex;flex-direction:column;gap:8px}.risk-item{display:flex;align-items:center;gap:10px;cursor:pointer;padding:10px 12px;border-radius:14px;background:var(--fill);border:1px solid var(--hairline);transition:background .18s var(--ease),transform .18s var(--ease)}.risk-item:hover{background:var(--nav-hover)}.risk-item:active{transform:scale(.995)}.risk-item.high{border-color:color-mix(in srgb,var(--down) 34%,transparent)}.risk-item.mid{border-color:color-mix(in srgb,var(--warn) 34%,transparent)}.risk-body{flex:1;min-width:0}.risk-title{font-size:13.5px;font-weight:600;color:var(--text)}.risk-detail{font-size:12px;line-height:1.5;color:var(--muted);margin-top:2px}.risk-go{flex:0 0 auto;font-size:12px;color:var(--accent)}@media (max-width: 768px){.risk-item{flex-wrap:wrap}.risk-go{width:100%;text-align:right}}.warn-box{padding:9px 12px;border-radius:12px;font-size:12.5px;line-height:1.5;background:color-mix(in srgb,var(--warn) 14%,transparent);border:1px solid color-mix(in srgb,var(--warn) 34%,transparent)}.chart-wrap{position:relative}.chart-tip{position:absolute;top:6px;transform:translate(-50%);min-width:132px;max-width:240px;padding:7px 10px;background:var(--card-solid);border:1px solid var(--hairline);border-radius:10px;box-shadow:var(--shadow-md, 0 6px 18px rgba(0, 0, 0, .18));font-size:12px;line-height:1.5;pointer-events:none;z-index:5}.chart-tip .ct-x{font-weight:600;margin-bottom:4px;font-variant-numeric:tabular-nums}.chart-tip .ct-row{display:flex;align-items:center;gap:6px}.chart-tip .ct-row i{width:8px;height:8px;border-radius:2px;flex:0 0 auto}.chart-tip .ct-name{color:var(--muted)}.chart-tip .ct-row b{margin-left:auto;font-variant-numeric:tabular-nums}.heatmap{display:grid;gap:3px;font-size:12px}.hm-cell{padding:6px 8px;border-radius:8px;min-height:32px;display:flex;align-items:center;justify-content:center;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hm-head{color:var(--muted);font-weight:600;font-size:11.5px}.hm-row{justify-content:flex-start;color:var(--text);font-weight:500;background:var(--fill)}.hm-val{color:var(--text);border:1px solid var(--hairline)}.hm-val .hm-num{font-size:11.5px}.hm-legend{flex:0 0 120px;height:8px;border-radius:999px;background:linear-gradient(to right,color-mix(in srgb,var(--accent) 6%,transparent),color-mix(in srgb,var(--accent) 90%,transparent))}.markdown{font-size:13.5px;line-height:1.75;color:var(--text)}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{margin:18px 0 8px;font-weight:650;line-height:1.35;color:var(--text)}.markdown h1{font-size:20px;padding-bottom:6px;border-bottom:1px solid var(--hairline)}.markdown h2{font-size:17px;padding-bottom:4px;border-bottom:1px solid var(--hairline)}.markdown h3{font-size:15px}.markdown h4,.markdown h5,.markdown h6{font-size:13.5px;color:var(--muted)}.markdown p{margin:8px 0}.markdown ul,.markdown ol{margin:8px 0;padding-left:22px}.markdown ul{list-style:disc}.markdown ol{list-style:decimal}.markdown li{margin:3px 0}.markdown a{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent}.markdown a:hover{border-bottom-color:var(--accent)}.markdown code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;padding:1px 5px;border-radius:6px;background:var(--fill);border:1px solid var(--hairline)}.markdown .md-code{margin:10px 0;padding:11px 13px;border-radius:10px;overflow-x:auto;background:var(--fill);border:1px solid var(--hairline)}.markdown .md-code code{padding:0;border:0;background:none;font-size:12.5px;line-height:1.6}.markdown blockquote{margin:10px 0;padding:6px 12px;border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 6%,transparent);color:var(--muted);border-radius:0 8px 8px 0}.markdown hr{margin:14px 0;border:0;border-top:1px solid var(--hairline)}.markdown .md-table-wrap{margin:10px 0;overflow-x:auto}.markdown table{width:100%;border-collapse:collapse;font-size:12.5px}.markdown th,.markdown td{padding:6px 9px;border:1px solid var(--hairline);text-align:left}.markdown th{background:var(--fill);font-weight:600}.markdown img{max-width:100%;border-radius:8px}.markdown del{color:var(--muted)}.rev-list{display:flex;flex-direction:column;gap:8px}.rev-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:var(--fill);border:1px solid var(--hairline)}.rev-avatar{width:36px;height:36px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;color:#fff;background:linear-gradient(180deg,var(--accent-2),var(--accent))}.rev-main{flex:1;min-width:0}.rev-name{font-weight:600;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.rev-meta{font-size:12px;color:var(--muted);margin-top:3px;line-height:1.5}.rev-ops{display:flex;gap:6px;flex:0 0 auto}.rv-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;padding:10px 12px;border-radius:10px;background:var(--fill)}.rv-info span{display:block;font-size:11px;color:var(--muted)}.rv-info b{font-size:13px}.audit-detail{display:inline-block;max-width:420px;vertical-align:bottom;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 768px){.rev-row{flex-wrap:wrap}.rev-ops{width:100%}.rev-ops button{flex:1}.rv-info{grid-template-columns:1fr}.audit-detail{max-width:160px}}.rev-toolbar{margin-bottom:10px;gap:8px;flex-wrap:wrap;align-items:center}.rev-avatar.g0{background:linear-gradient(180deg,#4aa3ff,#007aff)}.rev-avatar.g1{background:linear-gradient(180deg,#8e8cff,#5e5ce6)}.rev-avatar.g2{background:linear-gradient(180deg,#34d05f,#00a344)}.rev-avatar.g3{background:linear-gradient(180deg,#ffb340,#ff9f0a)}.rev-avatar.g4{background:linear-gradient(180deg,#ff7d8c,#e0354b)}.rev-role{font-size:11px;padding:1px 8px;border-radius:999px;color:var(--text);background:var(--fill-2);font-weight:500}.rev-warn{margin-top:4px;font-size:11.5px;color:#b26a00;background:#ff9f0a24;border-radius:8px;padding:3px 8px;display:inline-block}.rev-ok{color:#1b8a3a;font-weight:600}.rev-no{color:var(--red, #e0354b);font-weight:600}.rev-hist{margin-top:10px;padding:10px 12px;border-radius:12px;background:var(--fill);border:1px solid var(--hairline)}.rev-hist-head{font-size:12px;font-weight:600;color:var(--muted);margin-bottom:6px}.rev-hist-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;padding:4px 0;border-top:1px dashed var(--hairline)}.rev-hist-row:first-of-type{border-top:0}.rv-checks{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.rv-checks span{font-size:11.5px;padding:3px 10px;border-radius:999px;background:var(--fill)}.rv-checks span.ok{color:#1b8a3a;background:#34c75924}.rv-checks span.warn{color:#b26a00;background:#ff9f0a29}.rv-sec{margin-top:14px}.rv-sec-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.rv-sec-head button{padding:4px 10px;font-size:12px}.rv-roles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:6px}.rv-role-card{padding:9px 11px;border-radius:12px;cursor:pointer;border:1px solid var(--hairline);background:var(--fill);transition:border-color .15s ease,background .15s ease,transform .15s ease}.rv-role-card:hover{background:var(--fill-2)}.rv-role-card:active{transform:scale(.985)}.rv-role-card b{display:block;font-size:13px}.rv-role-card span{display:block;font-size:11px;color:var(--muted);margin-top:2px;line-height:1.45}.rv-role-card.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent) inset}.rv-role-card.on b{color:var(--accent)}.rv-alert{margin-top:6px;font-size:11.5px;color:var(--red, #e0354b);background:#ff3b301a;border-radius:8px;padding:4px 9px;display:inline-block}.u-brand-chips{display:inline-flex;flex-wrap:wrap;gap:4px}.u-brand-chip{display:inline-block;font-size:11.5px;padding:1px 8px;border-radius:999px;background:var(--fill);cursor:pointer;line-height:1.7}.u-brand-chip:hover{background:var(--fill-2)}.u-brand-chip.on{background:var(--accent);color:#fff}.u-brand-chip.warn{color:#b26a00;background:#ff9f0a29}@media (max-width: 768px){.rv-roles{grid-template-columns:1fr}.rev-ops{width:100%}.rev-ops button{flex:1}}@media (max-width: 768px){.rev-ops{width:100%}.rev-ops button{flex:1;white-space:nowrap}.rev-ops button.rv-quick{display:none}}@keyframes revFlash{0%{box-shadow:0 0 #007aff61}35%{box-shadow:0 0 0 5px #007aff33}to{box-shadow:0 0 #007aff00}}.card.rev-flash{animation:revFlash 1.7s ease-out 2}.rev-row.rev-hit{border-color:var(--accent)!important;background:var(--accent-soft)!important;box-shadow:0 0 0 2px var(--accent) inset}.rev-new,.rv-newbrand{margin-top:5px;font-size:11.5px;line-height:1.6;color:#8e5a00;background:#ff9f0a24;border-radius:8px;padding:4px 9px}.rv-newbrand{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:12px;background:#ff9f0a1f;border:1px dashed rgba(255,159,10,.5)}.rv-newbrand button{padding:4px 10px;font-size:12px}.chip.nb-add{border:1px dashed var(--border, #ccc);color:var(--muted);background:transparent}.chip.nb-add:hover{color:var(--text);border-color:var(--accent)}.chip.nb-add.active{border-color:var(--accent);color:var(--accent)}.chip.nb-new{background:var(--accent);color:#fff}a.primary,a.primary:link,a.primary:visited,a.primary:hover{display:inline-block;padding:8px 16px;border-radius:10px;background:linear-gradient(180deg,var(--accent-2),var(--accent));color:#fff;text-decoration:none;font-size:13px;font-weight:600;box-shadow:0 2px 8px #007aff47}a.primary:hover{filter:brightness(1.07)}.lg-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px 16px;flex-wrap:wrap}.lg-head-txt{min-width:0}.lg-head-hint{display:block;margin-top:4px;font-size:12px;line-height:1.6;color:var(--muted)}.lg-scopes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.lg-scope{display:flex;align-items:flex-start;gap:9px;text-align:left;padding:10px 12px;border:1px solid var(--border);border-radius:11px;background:var(--card-solid);color:var(--text);font:inherit;cursor:pointer;transition:border-color .16s var(--ease, ease),background .16s var(--ease, ease)}.lg-scope:hover{border-color:var(--accent)}.lg-scope.on{border-color:var(--accent);background:var(--accent-soft)}.lg-dot{flex:none;width:14px;height:14px;margin-top:2px;border-radius:50%;border:1.5px solid var(--border);background:var(--bg-input);transition:box-shadow .16s var(--ease, ease),border-color .16s var(--ease, ease)}.lg-scope.on .lg-dot{border-color:var(--accent);box-shadow:inset 0 0 0 3.5px var(--accent)}.lg-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.lg-body>b{font-size:13px;font-weight:600;line-height:1.45}.lg-body>em{font-style:normal;font-size:11.5px;color:var(--muted);line-height:1.55}.lg-num{flex:none;font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:1px}@media (max-width: 900px){.lg-scopes{grid-template-columns:1fr}}@media (max-width: 768px){html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{touch-action:manipulation;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}button,a,.chip,.nav-item,.risk-item,.cm-wall-card,.su-card,tbody tr{transition:transform .12s ease,background .16s ease,opacity .16s ease}button:active,.chip:active,.nav-item:active,.risk-item:active,.cm-wall-card:active,.su-card:active,tbody tr:active{transform:scale(.98)}.logo-sub,.ng-count,.ng-arrow,.kpi .label,.kpi .foot,.hint,.muted,.badge,.legend,.cm-wall-shop,.cm-wall-foot,.kpi-prog-foot,.sc-alert-main span,.wm-cell span,.tr-cal-sum,.app-footer,.card h3 .hint,.empty,th{font-size:12px}.logo-sub,.ng-count,.ng-arrow{font-size:12px!important}.page-head h1{font-size:20px;line-height:1.32}.sc-bars-axis span{font-size:10px}.tr-cal-tbl{font-size:11.5px}input:not([type=checkbox]):not([type=radio]),select,textarea{min-height:42px}input[type=checkbox],input[type=radio]{width:18px;height:18px;min-width:18px}label:has(input[type=checkbox]){min-height:44px;display:flex;align-items:center;gap:8px}.app-footer a{display:inline-flex;align-items:center;min-height:40px;padding:0 2px}.badge,.link-btn,.wm-ch-link,.dc-card-link,a.ghost{display:inline-flex;align-items:center;min-height:32px}.cm-chip,.chip{min-height:40px;display:inline-flex;align-items:center}.filterbar{gap:10px;padding:12px}.filterbar>.field{flex:1 1 calc(50% - 5px);min-width:0}.filterbar>.field:first-child{flex:1 1 100%}.filterbar .chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.filterbar .chips::-webkit-scrollbar{display:none}.filterbar .chips .chip{flex:0 0 auto}.fb-more{flex:1 1 100%;justify-content:center;min-height:40px;border:1px dashed var(--hairline);background:transparent;color:var(--accent);font-size:13px;font-weight:500}.fb-more:active{background:var(--fill)}.tbl-wrap{max-height:62vh}.tbl-wrap,.card .tbl-wrap,.wm-matrix,.tr-cal-scroll{box-shadow:inset -14px 0 14px -14px #00000038;-webkit-overflow-scrolling:touch}tbody td{padding:13px 10px}.wm-matrix,.tr-cal-scroll{max-width:100%}.tr-cal-tbl th,.tr-cal-tbl td{min-width:34px;height:30px}.card svg,.chart-wrap svg,.mt-ring svg{max-width:100%;height:auto}.chart-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.sc-bars{height:112px}.card{padding:14px;margin-bottom:12px;border-radius:16px}.cm-wall{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.cm-wall-card{padding:12px 8px 10px}.row{gap:8px}.grid{gap:12px}.kpi{padding:12px 13px}.kpi .value{font-size:20px}.modal{max-height:calc(100dvh - 24px);overscroll-behavior:contain}.modal-body{-webkit-overflow-scrolling:touch}.modal-mask{overscroll-behavior:contain}.modal .foot>button{flex:1 1 45%}.modal h3{font-size:17px}.pager,.toolbar,.bulk-bar,.dc-tools,.sc-tools{flex-wrap:wrap;gap:8px}.pager button,.pager .pg-btn{min-width:40px;min-height:40px}.toast-wrap{left:12px;right:12px}.toast{width:auto;max-width:none}.sidebar{width:82vw;max-width:304px}.nav-item{min-height:44px;display:flex;align-items:center}.nav-group-title{min-height:44px}.sidebar .brand{padding-bottom:4px}.content{padding-bottom:calc(86px + env(safe-area-inset-bottom))}.app-footer{padding-bottom:calc(18px + env(safe-area-inset-bottom))}.back-top{position:fixed;right:14px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:46;width:46px;height:46px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--glass-strong, var(--card));color:var(--text);border:1px solid var(--hairline);box-shadow:0 8px 24px #0000002e;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.back-top:active{transform:scale(.94)}.tip-toggle{display:inline-flex;align-items:center;min-height:38px;padding:8px 0 2px;font-size:12.5px;font-weight:500;color:var(--accent);background:none;border:0;font-family:inherit}.cm-tip.collapsed .tip-body,.skm-tip.collapsed .tip-body{display:none}.cm-tip,.skm-tip{font-size:12.5px;line-height:1.65}.cm-tip.collapsed{padding:0 12px!important;background:transparent!important;border-color:transparent!important}.skm-tip.collapsed{padding:0 2px 2px!important;background:transparent!important;border-color:transparent!important}.card h3{flex-wrap:wrap;row-gap:2px}.card h3 .hint{flex:1 1 100%;margin-left:0!important;text-align:left}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:48;display:flex;align-items:stretch;padding-bottom:env(safe-area-inset-bottom);background:var(--glass-strong, #fff);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid var(--hairline)}.tab-item{flex:1;min-height:56px;padding:7px 0 5px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:none;border:0;color:var(--muted);font-size:11.5px;font-family:inherit}.tab-item.on{color:var(--accent);font-weight:600}.tab-ico{display:flex;align-items:center;justify-content:center;height:22px}.tab-ico svg{width:22px;height:22px}.tab-item.on .tab-ico svg{stroke-width:2.3}.tab-item:active{background:none;transform:none;opacity:.55}.tbl-cards{display:flex;flex-direction:column;gap:10px}.tbl-card{padding:12px 14px;border-radius:14px;border:1px solid var(--glass-line, var(--hairline));background:var(--glass)}.tbl-card.clickable{cursor:pointer}.tc-head{font-size:14px;font-weight:600;line-height:1.4;padding-bottom:8px;margin-bottom:9px;border-bottom:1px dashed var(--hairline)}.tc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}.tc-item{min-width:0}.tc-k{display:block;font-size:12px;color:var(--muted)}.tc-v{display:block;font-size:13px;white-space:normal;word-break:break-word}.tc-v button{margin:2px 6px 2px 0}}@media (min-width: 769px){.tip-toggle,.back-top{display:none}.tabbar{display:none!important}}.fs-wrap{position:relative;display:inline-flex;align-items:center}.fs-btn{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 10px 0 11px;border-radius:999px;background:var(--fill);color:var(--muted);font-size:12.5px;font-weight:500;white-space:nowrap;transition:background .18s var(--ease),color .18s var(--ease),transform .15s var(--ease)}.fs-btn:hover{background:var(--fill-2);color:var(--text)}.fs-btn:active{transform:scale(.97)}.fs-btn.open{background:var(--glass-strong);color:var(--text);box-shadow:inset 0 0 0 1px var(--glass-line)}.fs-btn svg{display:block;opacity:.8}.fs-btn-txt{line-height:1}.fs-kbd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;line-height:1;padding:3px 5px;border-radius:5px;color:var(--muted);background:#78788024;border:1px solid var(--hairline)}.fs-panel{position:absolute;right:0;top:42px;z-index:90;width:384px;max-height:min(62vh,560px);display:flex;flex-direction:column;padding:8px;border-radius:20px;background:var(--card-solid);border:1px solid var(--glass-line);box-shadow:var(--shadow-lg);animation:popIn .22s var(--ease)}.fs-search{display:flex;align-items:center;gap:8px;padding:4px 6px 8px;color:var(--muted);border-bottom:1px solid var(--hairline)}.fs-input{flex:1;min-width:0;border:0;outline:none;background:transparent;font-size:13.5px;color:var(--text);padding:6px 0;font-family:inherit}.fs-input::placeholder{color:var(--muted)}.fs-clear{width:20px;height:20px;min-height:0;padding:0;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--fill);color:var(--muted);font-size:14px;line-height:1}.fs-clear:hover{background:var(--fill-2);color:var(--text)}.fs-kbd-esc{flex:0 0 auto}.fs-list{flex:1;min-height:0;overflow-y:auto;padding:4px 0 2px;overscroll-behavior:contain}.fs-sec{font-size:11px;color:var(--muted);letter-spacing:.3px;padding:8px 10px 4px}.fs-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:11px;cursor:pointer;color:var(--text);font-size:13.5px}.fs-row:hover{background:var(--row-hover)}.fs-row.active{background:var(--accent-soft)}.fs-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fs-group{flex:0 0 auto;font-size:10.5px;color:var(--muted);background:var(--fill);padding:1px 6px;border-radius:999px;white-space:nowrap}.fs-spacer{flex:1}.fs-star{flex:0 0 auto;width:26px;height:26px;min-height:0;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:transparent;color:var(--muted);transition:color .15s var(--ease),background .15s var(--ease),transform .15s var(--ease)}.fs-star:hover{background:var(--fill);color:var(--orange)}.fs-star:active{transform:scale(.88)}.fs-star.on{color:var(--yellow);filter:drop-shadow(0 1px 3px rgba(255,204,0,.45))}.fs-hl{background:#ffcc0052;color:inherit;border-radius:3px;padding:0 1px}.fs-empty{padding:20px 12px;text-align:center;color:var(--muted);font-size:12.5px;line-height:1.7}.fs-empty span{display:block;font-size:11.5px;opacity:.82}.fs-foot{display:flex;align-items:center;gap:10px;padding:7px 10px 1px;border-top:1px solid var(--hairline);font-size:11px;color:var(--muted)}.fs-foot-tip{opacity:.85}@media (max-width: 768px){.topbar .right>span.fs-wrap{display:inline-flex}.fs-btn{width:44px;height:44px;padding:0;justify-content:center;gap:0}.fs-btn-txt,.fs-btn .fs-kbd{display:none}.fs-btn svg{width:18px;height:18px}.fs-panel{position:fixed;left:10px;right:10px;top:calc(58px + env(safe-area-inset-top));width:auto;max-height:74vh;border-radius:18px;z-index:95}.fs-row{padding:11px 10px;font-size:14px}.fs-star{width:34px;height:34px;min-height:34px}.fs-input{font-size:16px;padding:8px 0}.fs-clear{width:26px;height:26px}.fs-kbd-esc,.fs-hints{display:none}}
