:root{--brand-50:#eef0ff;--brand-100:#e0e3ff;--brand-200:#c5c9ff;--brand-300:#a3a8ff;--brand-400:#7f86fb;--brand:#4f5bf5;--brand-600:#3f48e0;--brand-700:#3238b8;--brand-800:#272c8f;--brand-900:#1b1e66;--accent:#9a5cf5;--brand-hover:var(--brand-600);--brand-bg:var(--brand-50);--brand-gradient:linear-gradient(135deg, #4f5bf5 0%, #7a58f6 55%, #9a5cf5 100%);--success:#12b76a;--success-bg:#e8f8f0;--warning:#f79009;--warning-bg:#fef4e6;--danger:#f04438;--danger-bg:#feeceb;--info:#378add;--info-bg:#e6f1fb;--ink:#171a2e;--ink-2:#666b85;--ink-3:#9aa0b4;--line:#e5e7f2;--bg-page:#f4f5fb;--bg-card:#fff;--bg-sidebar:linear-gradient(180deg, #14162e 0%, #1b1e44 100%);--font-h1:20px;--font-h2:14.5px;--font-body:13.5px;--font-caption:12px;--radius:12px;--radius-sm:8px;--sidebar-w:232px;--control-h:32px;--shadow-card:0 1px 2px #171a2e0a;--shadow-card-hover:0 6px 20px #4f5bf51a;--shadow-btn:0 2px 10px #4f5bf559;--shadow-md:0 6px 18px #171a2e1f;--shadow-lg:0 12px 40px #0f172a2e}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,PingFang SC,Microsoft YaHei,sans-serif;font-size:var(--font-body);color:var(--ink);background:var(--bg-page);-webkit-font-smoothing:antialiased}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#c9cce0;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--ink-3)}::-webkit-scrollbar-track{background:0 0}.app{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-w);min-width:var(--sidebar-w);background:var(--bg-sidebar);color:#fff;flex-direction:column;height:100vh;padding:24px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.logo{border-bottom:1px solid #ffffff14;align-items:center;gap:10px;margin-bottom:12px;padding:0 12px 20px;display:flex}.logo>div:last-child{flex:1;min-width:0}.logo-badge{background:var(--brand-gradient);border-radius:10px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;font-weight:700;display:flex;box-shadow:0 4px 14px #4f5bf573}.logo-title{font-size:var(--font-h2);white-space:nowrap;font-weight:600;line-height:1.35}.logo-sub{color:#ffffff6b;white-space:nowrap;margin-top:1px;font-size:11px}.nav-group{color:#ffffff57;letter-spacing:2px;-webkit-user-select:none;user-select:none;padding:14px 12px 6px;font-size:11px}.nav-item{border-radius:var(--radius-sm);color:#ffffff9e;cursor:pointer;height:36px;font-size:var(--font-body);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;margin-bottom:2px;padding:0 12px 0 15px;transition:background .15s,color .15s,opacity .15s;display:flex;position:relative}.nav-item:hover{color:#fff;background:#ffffff0f}.nav-item.active{color:#fff;background:#4f5bf538}.nav-item.active:before{content:"";background:var(--brand-gradient);border-radius:2px;width:3px;position:absolute;top:8px;bottom:8px;left:0}.nav-item .dot{opacity:.7;background:currentColor;border-radius:50%;width:6px;height:6px}.main{flex:1;min-width:0}.content{max-width:1160px;padding:24px 24px 48px;animation:.18s ease-out page-in}@keyframes page-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.page-title{font-size:var(--font-h1);letter-spacing:-.3px;margin-bottom:4px;font-weight:700}.page-desc{font-size:var(--font-caption);color:var(--ink-2);margin-bottom:24px}.card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:16px 20px;transition:box-shadow .2s,transform .2s}.card:hover{box-shadow:var(--shadow-card-hover)}.card-title{font-size:var(--font-h2);margin-bottom:12px;font-weight:600}.stat-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px;display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:14px 16px;transition:box-shadow .2s,transform .2s}.stat-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-1px)}.stat-label{font-size:var(--font-caption);color:var(--ink-2);align-items:center;gap:6px;margin-bottom:8px;display:flex}.stat-label:before{content:"";background:var(--dot,var(--brand));border-radius:50%;width:7px;height:7px}.stat-value{letter-spacing:-.5px;font-variant-numeric:tabular-nums;background:var(--brand-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:26px;font-weight:700}.bars{flex-direction:column;gap:10px;display:flex}.bar-row{grid-template-columns:90px 1fr 110px;align-items:center;gap:12px;display:grid}.bar-name{font-size:var(--font-caption);color:var(--ink-2)}.bar-track{background:var(--bg-page);border-radius:6px;height:12px;overflow:hidden}.bar-fill{background:var(--brand-gradient);border-radius:6px;height:100%;transition:width .4s}.bar-meta{font-size:var(--font-caption);color:var(--ink-2);text-align:right;font-variant-numeric:tabular-nums}.empty-tip{color:var(--ink-3);font-size:var(--font-body);padding:8px 0}table.tbl{border-collapse:collapse;width:100%}.tbl th{font-size:var(--font-caption);color:var(--ink-2);text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:6px 10px;font-weight:500}.tbl td{border-bottom:1px solid var(--line);font-size:var(--font-body);padding:9px 10px}.tbl tbody tr{transition:background .12s}.tbl tbody tr:hover{background:var(--brand-50)}.tbl tbody tr:last-child td{border-bottom:none}.tbl .num{text-align:right;font-variant-numeric:tabular-nums}tr.row-detail>td{box-shadow:inset 3px 0 0 var(--brand);background:#f8f9ff}.tag{white-space:nowrap;border-radius:20px;align-items:center;gap:4px;padding:1px 9px;font-size:11px;line-height:18px;display:inline-flex}.tag-success{background:var(--success-bg);color:var(--success)}.tag-warning{background:var(--warning-bg);color:var(--warning)}.tag-danger{background:var(--danger-bg);color:var(--danger)}.tag-info{background:var(--info-bg);color:var(--info)}.tag-brand{background:var(--brand-bg);color:var(--brand)}.tag-muted{color:var(--ink-2);background:#eef0f4}.btn{height:var(--control-h);border-radius:var(--radius-sm);font-size:var(--font-body);cursor:pointer;border:none;justify-content:center;align-items:center;gap:6px;padding:0 14px;transition:transform .15s,box-shadow .15s,background .15s,border-color .15s,color .15s;display:inline-flex}.btn-primary{background:var(--brand-gradient);color:#fff;box-shadow:var(--shadow-btn);background-position:0%;background-size:150% 150%}.btn-primary:hover:not(:disabled){background-position:100%;transform:translateY(-1px);box-shadow:0 4px 16px #4f5bf573}.btn-primary:active:not(:disabled){transform:translateY(0)scale(.98)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-secondary{background:var(--bg-card);border:1px solid var(--line);color:var(--ink-2)}.btn-secondary:hover{color:var(--brand);border-color:var(--brand-200)}.btn-secondary:active{transform:scale(.98)}.btn-sm{height:26px;font-size:var(--font-caption);padding:0 10px}.btn-danger-ghost{border:1px solid var(--line);color:var(--danger);background:0 0}.btn-danger-ghost:hover{border-color:var(--danger);background:var(--danger-bg)}.form-grid{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.form-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:12px 16px;margin-bottom:12px;display:grid}.form-item{flex-direction:column;gap:5px;min-width:0;display:flex}.form-item label{font-size:var(--font-caption);color:var(--ink-2)}.form-item label .req{color:var(--danger);margin-left:2px}.form-item select,.form-item input{height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--font-body);color:var(--ink);background:var(--bg-card);outline:none;width:100%;min-width:0;padding:0 10px;transition:border-color .15s,box-shadow .15s}.form-item select{cursor:pointer}.form-item select:focus,.form-item input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-100)}.form-item input[type=number]{min-width:0}.form-item input[type=checkbox]{accent-color:var(--brand);cursor:pointer}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.chip{height:var(--control-h);border:1px solid var(--line);font-size:var(--font-body);color:var(--ink-2);background:var(--bg-card);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:16px;align-items:center;gap:6px;padding:0 12px;transition:border-color .15s,background .15s,color .15s,transform .15s;display:inline-flex}.chip:hover{border-color:var(--brand-300);color:var(--brand)}.chip:active{transform:scale(.97)}.chip.on{background:var(--brand-bg);border-color:var(--brand);color:var(--brand);font-weight:500}.chip.on:before{content:"✓";font-size:12px;font-weight:700}.chip input[type=checkbox]{opacity:0;width:1px;height:1px;position:absolute}.form-item textarea{border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--font-body);color:var(--ink);background:var(--bg-card);resize:vertical;outline:none;width:100%;min-width:0;min-height:64px;padding:8px 10px;font-family:inherit;line-height:1.6;transition:border-color .15s,box-shadow .15s}.form-item textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-100)}.form-item textarea::placeholder{color:var(--ink-3)}.longtail{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.longtail span{font-size:var(--font-caption);color:var(--ink-2);background:var(--bg-page);border:1px solid var(--line);border-radius:6px;padding:2px 8px}.expand-btn{color:var(--brand);font-size:var(--font-caption);cursor:pointer;background:0 0;border:none;padding:0}.expand-btn:hover{text-decoration:underline}.diag-score-card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);align-items:center;gap:16px;padding:16px 20px;display:flex}.diag-score-num{letter-spacing:-1px;font-variant-numeric:tabular-nums;background:var(--brand-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:42px;font-weight:700;line-height:1}.diag-score-line{margin-bottom:4px}.diag-score-sub{font-size:var(--font-caption);color:var(--ink-2)}.progress-track{background:var(--bg-page);border-radius:4px;flex:1;height:8px;overflow:hidden}.progress-fill{background:var(--brand-gradient);border-radius:4px;height:100%;transition:width .4s}.kb-content{white-space:pre-wrap;color:var(--ink-2);font-size:var(--font-body);line-height:1.8}.img-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.img-card{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-card);transition:box-shadow .2s,transform .2s;overflow:hidden}.img-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.img-card img{aspect-ratio:1;object-fit:cover;width:100%;display:block}@media (width<=900px){.stat-grid{grid-template-columns:repeat(2,1fr)}.sidebar{display:none}.content{padding:16px}.form-row{grid-template-columns:1fr}}.diag-hero{border:1px solid var(--line);background:linear-gradient(135deg,#4f5bf50a,#9a5cf50f);border-radius:12px;flex-wrap:wrap;align-items:center;gap:22px;padding:16px 18px;display:flex}.stat-grid{flex:1;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px;min-width:300px;display:grid}.stat-card{background:var(--surface,#fff);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:2px;padding:12px 14px;display:flex;box-shadow:0 1px 3px #1c21300d}.stat-card b{letter-spacing:-.3px;font-size:22px;line-height:1.2}.stat-card b.grad-num{background:linear-gradient(120deg,#4f5bf5,#9a5cf5);color:#0000;-webkit-background-clip:text;background-clip:text}.stat-card span{color:var(--ink-3,#8a90a3);font-size:12px}.stat-card em{color:var(--ink-3,#8a90a3);font-size:11px;font-style:normal}.muted{color:var(--ink-2)}.small{font-size:var(--font-caption)}.strong{color:var(--ink);font-weight:600}.btn-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.form-msg{font-size:var(--font-caption);color:var(--brand);margin-top:10px}.checkbox-row{align-items:center;gap:8px;display:flex;flex-direction:row!important}.checkbox-row input[type=checkbox]{width:15px;height:15px;accent-color:var(--brand);cursor:pointer;flex:none;margin:0}.checkbox-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px 18px;display:grid}.preview-box{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-page);font-size:var(--font-body);max-height:420px;padding:14px 18px;line-height:1.8;overflow:auto}.preview-box h1{margin:4px 0 10px;font-size:16px}.preview-box h2,.preview-box h3{margin:12px 0 6px;font-size:14px}.preview-box p{margin:6px 0}.preview-box ul,.preview-box ol{margin:6px 0;padding-left:20px}.preview-box blockquote{border-left:3px solid var(--brand-200,var(--brand));color:var(--ink-2);margin:8px 0;padding:2px 0 2px 12px}.tbl-wrap{overflow-x:auto}.skeleton{background:linear-gradient(90deg, var(--bg-page) 25%, #e9edf3 50%, var(--bg-page) 75%);background-size:200% 100%;border-radius:4px;height:14px;margin:8px 0;animation:1.2s infinite skeleton-wave}@keyframes skeleton-wave{0%{background-position:200% 0}to{background-position:-200% 0}}.card-sub{font-size:var(--font-caption);color:var(--ink-2);margin:-8px 0 12px}.modal-mask{z-index:100;background:#0f172a73;justify-content:center;align-items:center;animation:.15s ease-out page-in;display:flex;position:fixed;inset:0}.modal-box{background:var(--bg-card);border-radius:12px;width:400px;max-width:calc(100vw - 48px);padding:22px 24px;box-shadow:0 12px 40px #0f172a2e}.modal-title{font-size:var(--font-h2);margin-bottom:8px;font-weight:600}.modal-body{font-size:var(--font-body);color:var(--ink-2);margin-bottom:18px;line-height:1.7}.step-row{border-bottom:1px dashed var(--line);align-items:flex-start;gap:12px;padding:10px 0;display:flex}.step-row:last-child{border-bottom:none}.step-num{background:var(--brand-bg,#eef2ff);width:22px;height:22px;color:var(--brand);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-top:2px;font-size:12px;font-weight:600;display:flex}.step-done{background:var(--success-bg,#e8f7ee);color:var(--success)}.plan-row{border-bottom:1px dashed var(--line);align-items:center;gap:16px;padding:14px 4px;display:flex}.plan-row:last-child{border-bottom:none}.plan-main{flex:1;min-width:0}.plan-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.plan-name{font-size:var(--font-h2);font-weight:600}.plan-auto{font-size:var(--font-caption);color:var(--brand);background:var(--brand-bg);border-radius:10px;padding:1px 8px}.plan-meta{font-size:var(--font-caption);color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:14px;margin-top:5px;display:flex}.plan-kws{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.kw-chip{font-size:var(--font-caption);color:var(--ink-2);background:var(--bg-page);border:1px solid var(--line);border-radius:10px;padding:1px 9px}.plan-ops{flex:none;align-items:center;gap:8px;display:flex}.btn-danger-ghost{color:var(--ink-3);background:0 0;border:1px solid #0000}.btn-danger-ghost:hover{color:var(--danger);background:var(--danger-bg)}.switch{cursor:pointer;flex:none;width:36px;height:20px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.switch .slider{background:#d5d9e8;border-radius:20px;transition:background .18s;position:absolute;inset:0}.switch .slider:before{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .18s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #171a2e40}.switch input:checked+.slider{background:var(--brand)}.switch input:checked+.slider:before{transform:translate(16px)}.switch input:focus-visible+.slider{outline:2px solid var(--brand-200);outline-offset:2px}.plan-summary{font-size:var(--font-caption);color:var(--brand);background:var(--brand-bg);border-radius:var(--radius-sm);grid-column:1/-1;padding:8px 12px;line-height:1.6}.plan-runs{width:100%;padding:4px 4px 10px}.plan-run-item{font-size:var(--font-caption);color:var(--ink-2);border-bottom:1px dashed var(--line);flex-wrap:wrap;align-items:baseline;gap:12px;padding:5px 0;display:flex}.plan-run-item:last-child{border-bottom:none}.plan-run-ok{color:var(--success);font-weight:600}.plan-run-bad{color:var(--danger);font-weight:600}.seg{border:1px solid var(--line);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.seg button{background:var(--bg-card);color:var(--ink-2);font-size:var(--font-body);cursor:pointer;border:none;padding:5px 14px;transition:all .15s}.seg button+button{border-left:1px solid var(--line)}.seg button.on{background:var(--brand-bg);color:var(--brand);font-weight:600}.pick{flex-wrap:wrap;gap:6px;display:flex}.pick button{border:1px solid var(--line);background:var(--bg-card);color:var(--ink-2);font-size:var(--font-caption);cursor:pointer;border-radius:14px;padding:3px 12px;transition:all .15s}.pick button:hover{border-color:var(--brand-200);color:var(--brand)}.pick button.on{background:var(--brand-bg);border-color:var(--brand-300);color:var(--brand);font-weight:600}.form-hint{font-size:var(--font-caption);color:var(--ink-3);margin-top:4px;line-height:1.6}.kpicker{position:relative}.kpicker-box{cursor:pointer;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-card);flex-wrap:wrap;align-items:center;gap:4px;min-height:38px;padding:5px 10px;transition:border-color .15s;display:flex}.kpicker-box:hover,.kpicker-box.open{border-color:var(--brand-300)}.kpicker-box:focus-visible{outline:2px solid var(--brand-200);outline-offset:1px}.kpicker-placeholder{color:var(--ink-3);font-size:var(--font-body)}.kpicker-tags{flex-wrap:wrap;flex:1;gap:4px;display:flex}.kpicker-tag{font-size:var(--font-caption);color:var(--brand);background:var(--brand-bg);border-radius:10px;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.kpicker-tag i{cursor:pointer;color:var(--ink-3);font-size:13px;font-style:normal;line-height:1}.kpicker-tag i:hover{color:var(--danger)}.kpicker-arrow{color:var(--ink-3);margin-left:auto;font-size:12px}.kpicker-menu{z-index:30;background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius-sm);max-height:240px;box-shadow:var(--shadow-md);position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.kpicker-search{box-sizing:border-box;border:none;border-bottom:1px solid var(--line);width:100%;font-size:var(--font-body);color:var(--ink);background:0 0;outline:none;padding:8px 10px}.kpicker-item{font-size:var(--font-body);color:var(--ink);cursor:pointer;align-items:center;gap:8px;padding:8px 12px;display:flex}.kpicker-item:hover{background:var(--bg-page)}.kpicker-item.on{color:var(--brand);font-weight:600}.kpicker-check{text-align:center;flex:none;width:16px}.kpicker-empty{text-align:center;font-size:var(--font-caption);color:var(--ink-3);padding:12px}.platform-checks{flex-wrap:wrap;gap:6px 14px;padding:4px 0 2px;display:flex}.pcheck{cursor:pointer;font-size:var(--font-caption);color:var(--ink-2);align-items:center;gap:5px;font-weight:400;display:inline-flex}.pcheck input{width:14px;height:14px;accent-color:var(--brand);cursor:pointer}.pcheck-all{color:var(--ink);font-weight:600}.check-line{cursor:pointer;font-size:var(--font-caption);color:var(--ink-2);align-items:center;gap:6px;font-weight:400;display:inline-flex}.cb-sm{width:14px;height:14px;accent-color:var(--brand);cursor:pointer}.kpicker-single{font-size:var(--font-body);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.hform{max-width:860px}.hform-row{grid-template-columns:132px 1fr;align-items:start;gap:6px 16px;padding:8px 0;display:grid}.hform-row>label{text-align:right;font-size:var(--font-body);color:var(--ink);white-space:nowrap;padding-top:7px}.hform-row>label .req{color:var(--danger);margin-right:2px;font-weight:600}.hform-ctl{min-width:0}.hform-ctl input,.hform-ctl select,.hform-ctl textarea{border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--font-body);color:var(--ink);background:var(--bg-card);outline:none;width:100%;padding:0 10px;transition:border-color .15s,box-shadow .15s}.hform-ctl input,.hform-ctl select{height:var(--control-h)}.hform-ctl textarea{resize:vertical;padding:8px 10px;font-family:inherit;line-height:1.7}.hform-ctl input:focus,.hform-ctl select:focus,.hform-ctl textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-100)}.hform-ctl input[type=number]{width:96px}.hform-ctl input[type=checkbox]{width:14px;height:14px;accent-color:var(--brand);cursor:pointer;flex:none}.hform-inline{align-items:center;gap:8px;display:flex}.hform-unit{font-size:var(--font-caption);color:var(--ink-2)}.hform-actions{gap:10px;margin:14px 0 4px 148px;display:flex}@media (width<=700px){.hform-row{grid-template-columns:1fr}.hform-row>label{text-align:left;padding-top:0}.hform-actions{margin-left:0}}.wt-card>.card-title,.wt-card .card-title{align-items:center;gap:8px;display:flex}.wt-card>.card-title:before,.wt-card .card-title:before{content:"";background:var(--brand-gradient);border-radius:2px;flex:none;width:4px;height:16px}.card-head{align-items:center;gap:10px;margin-bottom:14px;display:flex}.card-head .card-title{flex:1;min-width:0;margin-bottom:0}.card-head-actions{flex:none;align-items:center;gap:8px;display:flex}.count-badge{background:var(--brand-100);min-width:20px;height:18px;color:var(--brand);border-radius:9px;justify-content:center;align-items:center;padding:0 7px;font-size:11px;font-weight:600;display:inline-flex}.fold-btn{cursor:pointer;font-size:var(--font-caption);color:var(--ink-3);background:0 0;border:none;border-radius:6px;padding:4px 8px}.fold-btn:hover{color:var(--brand);background:var(--brand-100)}.aux-card{background:#fbfbfd}.aux-card>.card-head{border-bottom:1px solid var(--line);margin-bottom:14px;padding-bottom:10px}.aux-card>.card-head .card-title{font-size:var(--font-body)}.btn-outline{background:var(--bg-card);border:1px solid var(--brand-200);color:var(--brand)}.btn-outline:hover:not(:disabled){background:var(--brand-100);border-color:var(--brand)}.btn-outline:active:not(:disabled){transform:scale(.98)}.btn-text{color:var(--ink-2);background:0 0;border:none;padding:0 8px}.btn-text:hover:not(:disabled){color:var(--brand)}.btn-text:disabled{opacity:.5;cursor:not-allowed}.stepper{height:var(--control-h);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-card);align-items:stretch;display:inline-flex;overflow:hidden}.stepper button{cursor:pointer;width:32px;color:var(--ink-2);background:0 0;border:none;font-size:16px;line-height:1}.stepper button:hover:not(:disabled){color:var(--brand);background:var(--brand-100)}.stepper button:disabled{opacity:.35;cursor:not-allowed}.stepper-val{border-left:1px solid var(--line);border-right:1px solid var(--line);min-width:44px;font-weight:600;font-size:var(--font-body);justify-content:center;align-items:center;display:inline-flex}.empty-state{text-align:center;padding:34px 16px}.empty-state .es-icon{margin-bottom:8px;font-size:30px}.empty-state .es-text{margin-bottom:4px;font-weight:600}.empty-state .es-sub{font-size:var(--font-caption);color:var(--ink-3);margin-bottom:14px}.tbl td.tag-cell{width:86px}.tbl tbody tr.data-row:hover td{background:#f7f7ff;transition:background .12s}tr.group-row td{background:var(--bg-page);font-weight:600;font-size:var(--font-caption);color:var(--ink-2)}tr.group-row.group-row-fail td{background:var(--danger-bg);color:var(--danger)}tr.group-row-toggle{cursor:pointer;-webkit-user-select:none;user-select:none}tr.group-row-toggle:hover td{filter:brightness(.96)}.group-arrow{width:14px;color:var(--ink-3);font-size:10px;display:inline-block}tr.group-more td{padding:6px 0}.src-tabs{gap:8px;margin-bottom:16px;display:flex}.src-tab{border:1px solid var(--line);background:var(--bg-card);color:var(--ink-2);font-size:var(--font-body);cursor:pointer;border-radius:999px;padding:7px 18px;transition:all .15s}.src-tab:hover{border-color:var(--brand-300);color:var(--brand)}.src-tab.active{background:var(--brand-bg);border-color:var(--brand);color:var(--brand);font-weight:600}.mcp-snippet{border-radius:var(--radius-sm);border:1px solid var(--line);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--font-caption);color:var(--ink-2);white-space:pre-wrap;word-break:break-all;-webkit-user-select:all;user-select:all;background:#f6f7fd;margin-top:8px;padding:10px 12px}
