:root{--bg: #ffffff;--panel: #ffffff;--panel-2: #f8faff;--border: #e3e8f2;--border-strong: #cdd7e8;--text: #1c2433;--text-2: #5a6a82;--text-3: #8b98ad;--primary: #4f5df0;--primary-soft: #eef0ff;--canvas-bg: #eceff4;--green: #16a34a;--green-soft: #e9f9ee;--red: #dc2626;--red-soft: #fdecec;--radius: 6px;--radius-pill: 999px;--radius-circle: 50%;--shadow: 0 1px 2px rgba(23, 30, 60, .05), 0 10px 30px rgba(23, 30, 60, .06)}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.55;min-height:100vh}.app{max-width:1200px;margin:0 auto;padding:24px}.app-title{font-size:22px;font-weight:800;margin:0 0 20px}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px;margin-bottom:20px}.card h2,.card h3{margin:0 0 12px;font-size:16px}.login-anim{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.85}.login-wrap,.login-page{position:relative;z-index:1;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-tabs{display:flex;gap:8px;margin-bottom:14px}.login-tab{flex:1;padding:8px 0;border:1px solid var(--border-strong);border-radius:var(--radius);background:transparent;color:var(--text-2);font-size:13.5px;font-weight:700;cursor:pointer;transition:.15s}.login-tab:hover{border-color:var(--primary);color:var(--primary)}.login-tab.is-on{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.login-home{position:fixed;top:18px;left:20px;z-index:3;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:13px;color:var(--text-2);text-decoration:none;background:#ffffffc7;border:1px solid var(--border);border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:color .18s,border-color .18s}.login-home:hover{color:var(--primary);border-color:var(--primary)}@media (max-width: 640px){.login-home{top:12px;left:12px}}.login-card{width:100%;max-width:420px;background:var(--panel);border:1px solid rgba(255,255,255,.65);border-radius:var(--radius);box-shadow:0 20px 50px #4f46e529;padding:48px 40px}.login-mark{width:76px;height:76px;display:block;margin:0 auto 10px}.login-logo{width:232px;max-width:100%;height:auto;display:block;margin:0 auto 14px}.login-header{text-align:center;margin-bottom:32px}.login-card h1{margin:0;font-size:24px;text-align:center;font-weight:700;line-height:1.4}.login-card h1+p,.login-card h2{margin:5px 0 0;font-size:14.4px;color:#64748b;line-height:1.2}.login-card p{margin:5px 0 0;font-size:14.4px;color:#64748b;line-height:1.2}.form-row{margin-bottom:14px}.form-row label{display:block;font-weight:600;margin-bottom:6px;font-size:13px}.form-group{margin-bottom:17px}.form-group label{display:block;margin-bottom:8px;font-size:14.4px;font-weight:500;color:#0f172a}.form-control{width:100%;height:39px;padding:10px 14px;font-size:15.2px;line-height:1.2;background:#fffc;border:1px solid #e0e7ff;border-radius:var(--radius);color:#0f172a;transition:.22s}.form-control:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #6366f12e}.login-card .btn{width:100%;height:46px;padding:0;font-size:16px;font-weight:500;border:none;border-radius:var(--radius);cursor:pointer;background:#4f46e5;color:#fff;transition:.2s}.login-card .btn:hover{background:#4338ca;color:#fff}.login-card .err{color:#ef4444;font-size:13px;margin:6px 0 8px}.login-card .footer{text-align:center;margin-top:22px;font-size:12px;color:#64748b}.footer-notices{color:inherit;text-decoration:underline;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent)}.footer-notices:hover{text-decoration-color:currentColor}.code-row{display:flex;gap:8px;align-items:stretch}.code-row .form-control{flex:1;min-width:0}.btn-code,.login-card .btn-code{flex:none;width:auto;white-space:nowrap;height:39px;padding:0 12px;font-size:13px;border-radius:var(--radius);background:#eef0ff;border:1px solid #c7cdfb;color:#4f46e5}.btn-code:hover:not(:disabled),.login-card .btn-code:hover:not(:disabled){background:#e3e6ff;border-color:#4f46e5;color:#4338ca}.btn-code:disabled,.login-card .btn-code:disabled{opacity:.55;cursor:not-allowed}.login-aux{text-align:center;margin-top:12px}.link-btn{background:none;border:none;padding:0;color:#64748b;font-size:13px;cursor:pointer}.link-btn:hover{color:#4f46e5;text-decoration:underline;text-underline-offset:2px}.reset-done{text-align:center;padding:8px 0 4px}.reset-done-title{font-size:16px;font-weight:700;color:var(--text)}.reset-done-hint{font-size:13px;color:var(--text-3);margin:8px 0 18px}.lw-slot{min-width:0}@media (min-width: 1240px){.login-page{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:56px;align-items:center;padding:32px 56px}.login-page>.lw-slot{grid-column:1}.login-page>.login-card{grid-column:2;justify-self:end}}@media (max-width: 1239px){.login-page>.lw-slot{display:none}}input,textarea,select{width:100%;padding:10px 12px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);color:var(--text);font:inherit;outline:none;transition:border-color .15s,box-shadow .15s}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 13%,transparent)}textarea{min-height:90px;resize:vertical}button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 16px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);color:var(--text);font-weight:600;font-size:13px;cursor:pointer;transition:.15s ease}button:hover,.btn:hover{border-color:var(--primary);color:var(--primary)}button.primary,.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}button.primary:hover,.btn.primary:hover{background:#3d4bd8;color:#fff}button.block,.btn.block{width:100%}.toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}table.data-table{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}table.data-table th{background:var(--panel-2);text-align:left;padding:10px 12px;font-size:13px;border-bottom:1px solid var(--border)}table.data-table td{padding:10px 12px;border-bottom:1px solid var(--border);font-size:13px}.file-list{display:flex;flex-direction:column;gap:8px;margin-top:10px;flex:1 1 0;min-height:80px;overflow-y:auto;scrollbar-width:thin}.file-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.pre-block{background:#f5f7fb;border:1px solid var(--border);border-radius:var(--radius);padding:12px;white-space:pre-wrap;word-break:break-word;max-height:360px;overflow:auto}.muted{color:var(--text-3);font-size:12px}.section-title{font-weight:800;margin-bottom:10px}:root{--bg: #ffffff;--panel: #ffffff;--panel-2: #f8faff;--border: #e3e8f2;--border-strong: #cdd7e8;--text: #1c2433;--text-2: #5a6a82;--text-3: #8b98ad;--primary: #4f5df0;--primary-2: #7c3aed;--primary-soft: #eef0ff;--teal: #0d9488;--teal-soft: #e6f7f5;--amber: #d97706;--amber-soft: #fef3e2;--green: #16a34a;--green-soft: #e9f9ee;--red: #dc2626;--red-soft: #fdecec;--shadow: 0 1px 2px rgba(23, 30, 60, .05), 0 10px 30px rgba(23, 30, 60, .06);--shadow-lg: 0 2px 4px rgba(23, 30, 60, .06), 0 24px 48px rgba(23, 30, 60, .12);--mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace}body.dark{--bg: #0b1020;--panel: #131a2e;--panel-2: #10172a;--canvas-bg: #171a21;--border: #24304c;--border-strong: #334066;--text: #e8edf7;--text-2: #9daac4;--text-3: #7e8bab;--primary: #818cf8;--primary-2: #a78bfa;--primary-soft: #1c2445;--teal: #2dd4bf;--teal-soft: #0d2a2e;--amber: #fbbf24;--amber-soft: #31260f;--green: #4ade80;--green-soft: #0e2e1c;--red: #f87171;--red-soft: #331417;--shadow: 0 1px 2px rgba(0, 0, 0, .35), 0 10px 30px rgba(0, 0, 0, .3);--shadow-lg: 0 2px 4px rgba(0, 0, 0, .4), 0 24px 48px rgba(0, 0, 0, .5)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.55;min-height:100vh;padding-left:280px;transition:padding-left .3s cubic-bezier(.4,0,.2,1)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.hidden{display:none!important}#convSidebar{position:fixed;top:0;left:0;bottom:0;width:280px;background:#fff;border-right:1px solid var(--border);display:flex;flex-direction:column;z-index:60;overflow:hidden;padding-bottom:8px;transform:translate(0);transition:transform .3s cubic-bezier(.4,0,.2,1);will-change:transform}body.sidebar-collapsed{padding-left:56px}body.sidebar-collapsed #convSidebar{transform:translate(-280px)}#convRail{position:fixed;top:0;left:0;bottom:0;width:56px;background:#fff;border-right:1px solid var(--border);display:flex;flex-direction:column;align-items:center;padding-top:18px;gap:14px;z-index:55}.rail-btn{width:36px;height:36px;min-width:36px;flex:none;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-circle);background:transparent;color:var(--text-2);font-weight:800;font-size:15px;transition:.15s}.rail-btn:hover{background:var(--primary-soft);color:var(--primary)}.conv-logo-row{height:60px;flex:none;display:flex;align-items:center;gap:8px;padding:8px;box-sizing:border-box;margin-bottom:8px}.conv-brand{flex:1;min-width:0;display:inline-flex;align-items:center;gap:8px}.conv-mark{width:26px;height:26px;flex:none;display:block}.conv-logo{width:92px;height:auto;flex:none;display:block}.conv-toggle{width:28px;height:28px;min-width:28px;flex:none;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-circle);background:transparent;color:var(--text-2);transition:.15s}.conv-toggle:hover{background:var(--primary-soft);color:var(--primary)}.conv-toggle svg{width:16px;height:16px;flex:none}.conv-toggle-mark{display:none;width:16px;height:16px;flex:none}.conv-toggle-panel,body.sidebar-collapsed .conv-toggle-mark{display:inline-flex}body.sidebar-collapsed .conv-toggle-panel,body.sidebar-collapsed .conv-toggle:hover .conv-toggle-mark{display:none}body.sidebar-collapsed .conv-toggle:hover .conv-toggle-panel{display:inline-flex}.conv-new-big{box-sizing:border-box;height:38px;flex:none;margin:0 8px 8px;padding:0 16px;display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);color:var(--text);font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;transition:.15s}.conv-new-big:hover{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.conv-new-label{white-space:nowrap}.conv-search{padding:0 8px 8px}.conv-search input{width:100%;height:41px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);font-size:12.5px;color:var(--text)}.conv-search input:focus{outline:none;border-color:var(--primary)}.conv-scope-btn{margin:0 8px 8px;padding:7px 10px;width:calc(100% - 16px);border:1px dashed var(--border-strong);border-radius:var(--radius);background:transparent;color:var(--text-2);font-size:12px;font-weight:600;cursor:pointer;transition:.15s}.conv-scope-btn:hover{border-color:var(--primary);color:var(--primary)}.conv-scope-btn.is-on{border-style:solid;border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.conv-user-group{margin-bottom:6px}.conv-user-head{display:flex;align-items:center;gap:6px;padding:6px 8px 2px;font-size:11px;font-weight:700;color:var(--text-3);letter-spacing:.3px}.conv-user-count{font-size:10.5px;font-weight:700;color:var(--text-3);background:var(--panel-2);border-radius:var(--radius-pill);padding:0 7px;line-height:16px}.conv-owner-badge{flex:none;font-size:10.5px;font-weight:700;color:var(--primary);background:var(--primary-soft);border-radius:var(--radius);padding:1px 6px;max-width:70px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-viewing-banner{margin:0 8px 10px;padding:7px 12px;border:1px solid color-mix(in srgb,var(--primary) 32%,transparent);background:var(--primary-soft);color:var(--text-2);font-size:12px;border-radius:var(--radius)}.conv-viewing-banner b{color:var(--primary)}.conv-list{flex:1;overflow-y:auto;padding:6px 8px 8px}.conv-item{display:flex;flex-direction:column;gap:3px;padding:10px 12px;margin:4px 0;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;transition:.15s}.conv-item:hover{background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 25%,transparent)}.conv-item.active{background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 45%,transparent)}.conv-item-top{display:flex;align-items:center;gap:8px;min-width:0}.conv-item-title{flex:1;font-size:13px;font-weight:600;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.conv-item.active .conv-item-title{color:var(--primary)}.conv-rename-input{flex:1;min-width:0;padding:5px 8px;font-size:12.5px;border:1px solid var(--primary);border-radius:var(--radius);background:var(--panel)}.conv-item-meta{font-size:11px;color:var(--text-3);display:flex;align-items:center;gap:8px;min-width:0}.conv-item-meta span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv-item-meta .dot{width:6px;height:6px;border-radius:var(--radius-circle);background:var(--text-3);flex:none}.conv-item-meta .dot.has-job{background:var(--teal)}.conv-item-meta .dot.done{background:var(--green)}.conv-del,.conv-edit{width:24px;height:24px;border-radius:var(--radius);border:none;background:transparent;color:var(--text-3);font-size:14px;visibility:hidden;align-items:center;justify-content:center;flex:none;padding:0;transition:background-color .15s ease,color .15s ease,transform .15s ease}.conv-item:hover .conv-del,.conv-item:hover .conv-edit{visibility:visible}.conv-del:hover,.conv-edit:hover{transform:scale(1.08)}.conv-del:hover{background:var(--red-soft);color:var(--red)}.conv-edit:hover{background:var(--primary-soft);color:var(--primary)}.conv-empty{text-align:center;color:var(--text-3);font-size:12.5px;padding:30px 12px}.plugin-panel{flex:none;border-top:1px solid var(--border);background:var(--panel-2);padding:8px 8px 10px;display:flex;flex-direction:column;gap:8px;max-height:280px}.plugin-panel-head{font-size:12px;font-weight:700;color:var(--text-2)}.plugin-section{min-height:0}.plugin-title{display:flex;justify-content:space-between;align-items:center;font-size:11.5px;font-weight:700;color:var(--text-3);margin-bottom:2px}.plugin-title b{color:var(--primary);font-weight:700}.plugin-scroll{max-height:110px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);padding:4px}.plugin-subtitle{font-size:10.5px;font-weight:700;color:var(--text-3);margin:3px 2px 1px}.plugin-item{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-2);padding:2px 5px;border-radius:var(--radius);min-width:0}.plugin-item:hover{background:var(--primary-soft);color:var(--primary)}.plugin-dot{width:6px;height:6px;border-radius:var(--radius-circle);background:var(--green);flex:none}.plugin-item.disabled .plugin-dot{background:var(--text-3);opacity:.5}.plugin-item.disabled{opacity:.6}.plugin-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plugin-panel-trigger{flex:none;margin:0 8px 8px;display:flex;align-items:center;justify-content:space-between;width:calc(100% - 16px);padding:8px 12px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);color:var(--text-2);font-size:12.5px;font-weight:600;cursor:pointer;transition:.15s}.plugin-panel-trigger:hover{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.plugin-count{font-size:11px;font-weight:700;color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-pill);padding:1px 8px}.settings-about .footer-notices{color:var(--primary);font-weight:600;background:none;border:none;padding:0;font-size:11.5px;cursor:pointer;text-decoration:underline;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,var(--primary) 45%,transparent)}.settings-about .footer-notices:hover{color:var(--primary);text-decoration-color:currentColor}.plugin-modal-body{padding:14px 16px;overflow-y:auto}.plugin-modal-body .plugin-title{margin-bottom:4px}.pl-modal-scroll{max-height:none}.main-area{display:flex;flex-direction:column;height:100vh;min-width:0;overflow:hidden}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:14px;padding:9px 24px;min-height:52px;box-sizing:border-box;flex-wrap:wrap;background:var(--panel);border-bottom:1px solid var(--border)}.auth-expired-banner{flex:none;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;padding:7px 16px;background:var(--amber-soft);color:var(--amber);border-bottom:1px solid color-mix(in srgb,var(--amber) 30%,transparent);font-size:13px;font-weight:600}.usage-chip{display:inline-flex;align-items:center;gap:6px;color:var(--text-2);font-size:12.5px;flex:0 1 auto;white-space:nowrap}.usage-wave{display:inline-block;vertical-align:middle;border-radius:var(--radius);flex:none}.topbar-actions .btn{height:28px;padding:4px 10px}.logo{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius);background:var(--panel);border:1px solid var(--border-strong);flex:none;overflow:hidden}.logo img{width:32px;height:32px;display:block}.brand-name{font-weight:700;font-size:17px;letter-spacing:.2px}.brand-sub{font-size:12px;color:var(--text-3)}.topbar-center{flex:0 0 auto;display:flex;justify-content:center;gap:8px;align-items:center;margin-left:auto}.ws-switch{display:inline-flex;align-items:center;gap:2px;padding:3px;background:var(--panel-2, var(--panel));border:1px solid var(--border);border-radius:var(--radius-pill);flex:none}.ws-switch button{border:none;background:transparent;cursor:pointer;padding:5px 16px;border-radius:var(--radius-pill);color:var(--text-2);font-size:13px;font-weight:600;line-height:1.2;transition:background .18s,color .18s}.ws-switch button:hover{color:var(--text)}.ws-switch button.is-on{background:var(--panel);color:var(--text);box-shadow:0 1px 2px #0000000f}.session-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:1px dashed var(--border-strong);border-radius:var(--radius-pill);color:var(--text-2);font-size:12.5px}.topbar-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--border-strong);background:var(--panel);color:var(--text);border-radius:var(--radius);padding:8px 14px;font-size:13px;font-weight:600;transition:.15s ease}.btn:hover{border-color:var(--primary);color:var(--primary)}.btn-primary{border:none;color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2));box-shadow:0 6px 16px #4f5df047}.btn-primary:hover{filter:brightness(1.07);color:#fff}.btn-primary:disabled{background:var(--border-strong);color:var(--text-3);box-shadow:none;cursor:not-allowed;filter:none}.btn-sm{padding:6px 10px;font-size:12.5px;border-radius:var(--radius)}.btn-ghost{border-color:transparent;background:transparent;color:var(--text-2)}.btn-ghost:hover{background:var(--primary-soft);color:var(--primary);border-color:transparent}.admin-entry{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:28px;padding:0 12px;flex:none;border:1px solid color-mix(in srgb,var(--primary) 38%,transparent);border-radius:var(--radius);background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 5%,var(--panel)),color-mix(in srgb,var(--primary) 13%,var(--panel)));color:var(--primary);font-size:12.5px;font-weight:600;letter-spacing:.2px;text-decoration:none;white-space:nowrap;box-shadow:0 1px 2px color-mix(in srgb,var(--primary) 16%,transparent);transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .08s ease}.admin-entry svg{width:13px;height:13px;flex:none}.admin-entry:hover{border-color:var(--primary);background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 11%,var(--panel)),color-mix(in srgb,var(--primary) 20%,var(--panel)));box-shadow:0 3px 8px color-mix(in srgb,var(--primary) 24%,transparent)}.admin-entry:active{transform:translateY(1px);background:color-mix(in srgb,var(--primary) 18%,var(--panel));box-shadow:inset 0 1px 3px color-mix(in srgb,var(--primary) 32%,transparent)}.admin-entry:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 20%,transparent),0 1px 2px color-mix(in srgb,var(--primary) 16%,transparent)}.billing-chip{display:inline-flex;align-items:center;gap:6px;flex:none;height:28px;padding:0 11px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel-2);color:var(--text-2);font-size:12.5px;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums;cursor:default}.billing-chip svg{width:14px;height:14px;flex:none}.billing-chip b{color:var(--text);font-weight:800}.billing-chip.is-neg{border-color:color-mix(in srgb,var(--red) 45%,transparent);color:var(--red);background:var(--red-soft)}.billing-chip.is-neg b{color:var(--red)}.icon-btn{width:34px;height:34px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius)}.status-pill{display:inline-flex;align-items:center;gap:7px;padding:5px 12px;border-radius:var(--radius-pill);font-size:12.5px;font-weight:600;background:var(--amber-soft);color:var(--amber);border:1px solid color-mix(in srgb,currentColor 25%,transparent);white-space:nowrap}.status-pill .dot{width:7px;height:7px;border-radius:var(--radius-circle);background:currentColor;flex:none}.status-pill.is-blue{background:var(--primary-soft);color:var(--primary)}.status-pill.is-green{background:var(--green-soft);color:var(--green)}.workflow{display:grid;grid-template-columns:minmax(300px,1fr) minmax(300px,1.05fr) minmax(300px,1.1fr);grid-template-rows:minmax(0,1fr);align-items:stretch;gap:10px;padding:12px 16px 10px;max-width:1700px;margin:0 auto;flex:1;min-height:0;min-width:0;width:100%}.workflow[data-layout="1-1-1"]{grid-template-columns:minmax(300px,1fr) minmax(300px,1fr) minmax(300px,1fr)}.workflow[data-layout="2-1"]{grid-template-columns:minmax(360px,1.8fr) minmax(300px,1fr) minmax(300px,1fr)}.workflow[data-layout="1-2"]{grid-template-columns:minmax(300px,1fr) minmax(300px,1fr) minmax(360px,1.8fr)}.workflow[data-layout="3"]{grid-template-columns:minmax(0,1fr);grid-template-rows:none}.plot-workspace{flex:1;min-height:0;min-width:0;width:100%;max-width:1700px;margin:0 auto;padding:12px 16px 10px;display:flex;align-items:center;justify-content:center}.plot-workspace.is-live{align-items:stretch;justify-content:flex-start;gap:14px}.plot-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;overflow:auto}.plot-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.plot-title{font-size:16px;font-weight:700;color:var(--text)}.plot-sub{font-size:12px;color:var(--text-3);margin-top:2px}.plot-sub code,.plot-foot code{font-size:11.5px;background:var(--panel-2);padding:1px 4px;border-radius:var(--radius)}.plot-canvas{flex:1;min-height:0;display:flex;flex-direction:column;gap:10px;align-items:flex-start}.plot-controls{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--text-2)}.plot-controls label{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--text-3)}.plot-controls select{min-width:130px;max-width:220px;font-size:12px;padding:3px 6px}.plot-save{display:flex;gap:8px}.plot-svg{background:#fff;border:1px solid var(--border);border-radius:var(--radius);max-width:100%;height:auto}.plot-note{font-size:12px;color:var(--text-2);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);padding:5px 9px}.plot-hollow{font-size:12.5px;color:var(--text-3);padding:14px 4px}.struct-view{width:100%;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:#fff}.struct-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 10px;border-bottom:1px solid var(--border);background:var(--panel-2)}.struct-name{font-size:12px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.struct-host{width:100%;height:420px}button.plot-dl{background:none;border:0;padding:0;cursor:pointer;font-family:inherit}.plot-side{width:330px;flex:none;display:flex;flex-direction:column;gap:12px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:12px;overflow:auto;max-height:100%}.plot-group{display:flex;flex-direction:column;gap:6px}.plot-group-title{font-size:12.5px;font-weight:700;color:var(--text);display:flex;align-items:baseline;gap:8px}.plot-group-hint{font-size:11px;font-weight:400;color:var(--text-3)}.plot-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.plot-list li{display:flex;align-items:center;gap:8px;padding:2px 4px;border-radius:var(--radius)}.plot-list li.is-on{background:#eef0ff}.plot-file{flex:1;min-width:0;text-align:left;background:none;border:0;padding:2px 0;cursor:pointer;font-size:12px;color:var(--text);font-family:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plot-file:hover{color:var(--primary);text-decoration:underline}.plot-size{font-size:11px;color:var(--text-3);flex:none}.plot-dl{font-size:11px;color:var(--primary);flex:none}.plot-foot{font-size:11.5px;color:var(--text-3);border-top:1px solid var(--border);padding-top:8px}.plot-workspace.is-board{align-items:stretch;gap:12px}.plot-left,.plot-right{width:300px;flex:none;display:flex;flex-direction:column;gap:10px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:10px;overflow:auto;max-height:100%}.plot-right{width:330px}.plot-side.is-inline{width:auto;border:0;background:none;padding:0}.plot-head-right{display:flex;align-items:center;gap:10px;flex:none}.board-list{display:flex;flex-direction:column;gap:6px}.board-list-head,.board-assets-head{display:flex;align-items:baseline;gap:8px}.board-list-title{font-size:12.5px;font-weight:700;color:var(--text)}.board-list-count{font-size:11px;color:var(--text-3)}.board-list-head .board-mini,.board-assets-head .board-mini{margin-left:auto}.board-list-body{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px;max-height:168px;overflow:auto}.board-item{display:flex;align-items:center;gap:4px;padding:2px 4px;border-radius:var(--radius)}.board-item.is-on{background:#eef0ff}.board-item-name{flex:1;min-width:0;display:flex;align-items:center;gap:6px;text-align:left;background:none;border:0;padding:2px 0;cursor:pointer;font-size:12px;color:var(--text);font-family:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-item-dot{width:6px;height:6px;border-radius:var(--radius-circle);background:var(--border);flex:none}.board-item-dot[data-on=true]{background:var(--primary)}.board-item-meta{font-size:10.5px;color:var(--text-3)}.board-item-input{flex:1;min-width:0;font-size:12px;padding:2px 5px}.board-item-ops{display:flex;gap:2px;flex:none}.board-list-foot{display:flex;align-items:center;gap:6px;border-top:1px solid var(--border);padding-top:6px}.board-save-state{margin-left:auto;font-size:11px;color:var(--text-3)}.board-mini{font-size:11px;padding:2px 6px;cursor:pointer;font-family:inherit;background:var(--panel-2);color:var(--text-2);border:1px solid var(--border);border-radius:var(--radius)}.board-mini:hover:not(:disabled){color:var(--primary);border-color:var(--primary)}.board-mini:disabled{opacity:.5;cursor:not-allowed}.board-mini.is-danger:hover:not(:disabled){color:#dc2626;border-color:#dc2626}.board-assets{display:flex;flex-direction:column;gap:6px;min-height:0}.board-assets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:6px;max-height:300px;overflow:auto}.board-asset{display:flex;flex-direction:column;gap:2px;padding:4px;cursor:grab;font-family:inherit;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);text-align:left}.board-asset img{width:100%;height:56px;object-fit:contain;background:#fff;border-radius:var(--radius)}.board-asset-name{font-size:10px;color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-assets-tools{display:flex;flex-direction:column;gap:5px;border-top:1px solid var(--border);padding-top:8px}.board-group-title{font-size:12px;font-weight:700;color:var(--text);display:flex;gap:6px;align-items:baseline}.board-group-hint{font-size:10.5px;font-weight:400;color:var(--text-3)}.board-tool-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:120px;overflow:auto}.board-tool{font-size:11.5px;color:var(--text-2);text-decoration:none}.board-tool:hover{color:var(--primary);text-decoration:underline}.plot-canvas.is-board-canvas{align-items:center;justify-content:flex-start;overflow:auto;padding:8px;background:var(--panel-2)}.board-stage{display:inline-block;padding:10px;border-radius:var(--radius)}.board-stage.is-dragover{outline:1px dashed var(--primary);outline-offset:2px}.board-svg{background:#fff;box-shadow:0 1px 6px #1c24331f;touch-action:none;-webkit-user-select:none;user-select:none}.board-handle,.board-rotate{cursor:nwse-resize}.board-ruler{pointer-events:none}.board-statusbar{display:flex;align-items:center;gap:12px;width:100%;font-size:11.5px;color:var(--text-3)}.board-inspector{display:flex;flex-direction:column;gap:8px}.board-sec{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.board-sec-head{width:100%;display:flex;align-items:center;gap:8px;padding:7px 9px;cursor:pointer;background:var(--panel-2);border:0;font-family:inherit;font-size:12.5px;font-weight:700;color:var(--text)}.board-sec-hint{margin-left:auto;font-size:10.5px;font-weight:400;color:var(--text-3)}.board-sec-caret{color:var(--text-3)}.board-sec-body{display:flex;flex-direction:column;gap:6px;padding:8px 9px}.board-row{display:flex;align-items:center;gap:6px;font-size:11.5px}.board-row-label{width:78px;flex:none;color:var(--text-3)}.board-row-ctl{display:flex;align-items:center;gap:5px;flex-wrap:wrap;flex:1;min-width:0}.board-row-off{display:flex;align-items:center;gap:5px;flex-wrap:wrap;border:0;margin:0;padding:0;min-width:0;flex:1;opacity:.45}.board-row-off :disabled,.board-row-off :disabled *{cursor:not-allowed}.board-row[data-disabled] .board-row-label{color:var(--text-3)}.board-btn.is-tiny{min-width:0;padding:1px 5px;font-size:11px;line-height:1.35}.se-nudge-hint{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap;margin-left:2px}.board-num.is-off{opacity:.5}.board-off-note{flex:0 1 auto;min-width:0;max-width:60%;color:var(--text-3);font-size:11px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board-off-tag{flex:none;font-size:10.5px;color:var(--text-3);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-pill);padding:0 6px;margin-left:6px}.board-sec.is-off .board-sec-head span:first-child{color:var(--text-3)}.board-num{display:inline-flex;align-items:center;gap:3px}.board-num input{width:62px;font-size:11.5px;padding:2px 4px}.board-unit{font-size:10.5px;color:var(--text-3)}.board-times{color:var(--text-3)}.board-color{width:26px;height:22px;padding:0;border:1px solid var(--border);border-radius:var(--radius);background:none}.board-hex,.board-select{flex:1;min-width:0;font-size:11.5px;padding:2px 5px}.board-range{flex:1;min-width:60px}.board-style-block{display:flex;flex-direction:column;width:100%;min-width:0}.board-style-radio{display:flex;align-items:center;gap:6px;min-height:17px;font-size:11.5px;line-height:1.3;color:var(--text);cursor:pointer}.board-style-radio input[type=radio]{width:13px;height:13px;margin:0;accent-color:var(--primary);flex:none}.board-style-sub{display:flex;align-items:center;gap:6px;min-height:18px;padding:0 0 1px 19px;font-size:11px;color:var(--text-3)}.board-style-sub .board-num input{width:52px;font-size:11px;padding:1px 3px}.board-style-sub>span:first-child{flex:none}.board-textarea{width:100%;font-size:11.5px;font-family:inherit;padding:4px 6px;resize:vertical}.board-seg{display:inline-flex;gap:3px;flex-wrap:wrap}.board-btn{font-size:11px;padding:2px 7px;cursor:pointer;font-family:inherit;background:var(--panel-2);color:var(--text-2);border:1px solid var(--border);border-radius:var(--radius)}.board-btn:hover:not(:disabled){color:var(--primary);border-color:var(--primary)}.board-btn.is-on{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.board-btn.is-danger:hover:not(:disabled){color:#dc2626;border-color:#dc2626}.board-btn:disabled{opacity:.5;cursor:not-allowed}.board-btn.is-icon{min-width:26px;height:24px;padding:0 4px;display:inline-flex;align-items:center;justify-content:center;line-height:1}.board-btn.is-icon .board-symbol{font-size:15px}.board-mini .board-symbol{font-size:16px}.board-symbol{display:inline-flex;align-items:center;justify-content:center;font-variant-emoji:text;filter:grayscale(1) contrast(1.2) brightness(.82);line-height:1}.board-swatch{width:16px;height:16px;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;padding:0}.board-hollow{font-size:11.5px;color:var(--text-3);padding:6px 2px}.board-hint{font-size:10.5px;color:var(--text-3)}.board-ok{font-size:11.5px;color:#16a34a}.board-issues{display:flex;flex-direction:column;gap:4px}.board-issue{font-size:11px;padding:4px 6px;border-radius:var(--radius);border:1px solid var(--border);background:var(--panel-2)}.board-issue.is-block{color:#b91c1c}.board-issue.is-warn{color:#b45309}.board-ack{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-2)}.board-alert{font-size:11.5px;padding:6px 8px;border-radius:var(--radius);border:1px solid var(--border);background:var(--panel-2)}.board-alert.is-error{color:#b91c1c}.board-alert.is-warn{color:#b45309}.board-alert-actions{display:flex;gap:6px;margin-top:5px}.board-layers{display:flex;flex-direction:column;gap:2px;max-height:220px;overflow:auto}.board-layer{display:flex;align-items:center;gap:4px;padding:2px 4px;border-radius:var(--radius)}.board-layer.is-on{background:#eef0ff}.board-layer-name{flex:1;min-width:0;display:flex;align-items:center;gap:6px;text-align:left;background:none;border:0;cursor:pointer;font-family:inherit;font-size:11.5px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-layer-kind{font-size:10px;color:var(--text-3);flex:none}.board-layer-ops{display:flex;gap:2px;flex:none}@media (max-width: 1180px){.plot-workspace.is-live{flex-direction:column}.plot-side{width:auto;max-height:40vh}.plot-left,.plot-right{width:auto;max-height:34vh}}.plot-shell{width:100%;max-width:520px;display:flex;flex-direction:column;align-items:center;gap:10px;padding:44px 28px;background:var(--panel);border:1px dashed var(--border-strong);border-radius:var(--radius);color:var(--text-2);text-align:center}.plot-shell svg{color:var(--text-3)}.plot-shell-title{font-size:17px;font-weight:700;color:var(--text)}.plot-shell-hint{font-size:13px;color:var(--text-3)}.panel{background:transparent;border:none;border-radius:0;box-shadow:none;display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}.panel-head{display:flex;align-items:center;gap:12px;padding:8px 12px 7px 6px;border-bottom:1px solid var(--border);background:transparent;min-width:0;overflow:hidden}.panel-head .panel-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-head .num{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:1.5px;color:var(--primary);padding:4px 8px;border-radius:var(--radius);background:var(--primary-soft)}.panel-title{font-weight:700;font-size:15px;letter-spacing:.3px;line-height:1.2}.panel-head .right{margin-left:auto;display:flex;gap:8px;align-items:center;flex-wrap:nowrap;white-space:nowrap}.panel.is-hidden{width:0!important;min-width:0!important;overflow:visible!important;padding:0!important}.panel.is-hidden .panel-head,.panel.is-hidden .panel-body{display:none!important}.panel{position:relative}.panel,.panel-head,.panel-body{background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important}.panel-head{border-bottom:none!important}.workflow>.panel,section.panel{display:flex;flex-direction:column}.col-resize{position:absolute;top:0;bottom:0;width:10px;cursor:col-resize;z-index:6;touch-action:none}.col-resize.is-right{right:-6px;width:14px}.col-resize.is-left{left:-6px;width:14px}.col-resize.is-right:after,.col-resize.is-left:after{left:6px}.col-resize.is-y{left:0;right:0;width:auto;height:14px;cursor:row-resize}.col-resize.is-top{top:-6px}.col-resize.is-bottom{bottom:-6px}.col-resize.is-y:after{left:0;right:0;top:6px;height:1px;width:auto}.col-resize.is-y:hover:after,.col-resize.is-y:active:after{height:2px;width:auto;left:0;right:0;background:var(--primary)}.col-resize.is-readonly{cursor:default;pointer-events:none}.col-resize.is-readonly:hover:after,.col-resize.is-readonly:active:after{background:var(--border-strong, var(--border));width:1px}.col-resize:after{content:"";position:absolute;left:4px;top:0;bottom:0;width:1px;border-radius:0;background:var(--border-strong, var(--border));transition:background .15s,width .15s}.col-resize:hover:after,.col-resize:active:after{background:var(--primary);width:2px}.panel-body{padding:10px 8px 0;margin-bottom:10px;display:flex;flex-direction:column;gap:8px;flex:1;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden}.panel-body{--panel-content-max: 780px}.panel-inner{width:100%;max-width:var(--panel-content-max, 780px);margin:0 auto;min-width:0;display:flex;flex-direction:column;gap:8px}.panel-inner-stack{flex:1;min-height:0}@media (max-width: 1920px){.workflow{padding-left:0;padding-right:0;column-gap:0}.panel-body{--panel-content-max: 100%;padding-left:8px;padding-right:8px}}.workflow>.panel{min-width:0}.dsh-view,.dsh-chat,.dsh-messages,.dsh-assistant-text{min-width:0;overflow-wrap:anywhere}.dsh-assistant-text img,.dsh-assistant-text svg,.dsh-assistant-text iframe{max-width:100%;height:auto}.dsh-assistant-text table{display:block;max-width:100%;overflow-x:auto}.out-file,.dsh-out-file{min-width:0}#askList{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin}.field-label{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--text-2);margin-bottom:8px}.field-label .req{color:var(--red);font-weight:800}.chip-row{display:flex;flex-wrap:wrap;gap:7px}.chip{padding:6px 11px;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:var(--panel);color:var(--text-2);font-size:12.5px;font-weight:600;cursor:pointer;transition:.15s}.chip:hover{border-color:var(--primary);color:var(--primary)}.chip.on{background:var(--primary-soft);color:var(--primary);border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent)}textarea,select,input[type=text],input[type=number]{width:100%;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);padding:10px 12px;outline:none;transition:.15s}textarea{resize:none;min-height:96px}textarea:focus,select:focus,input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 13%,transparent)}textarea::placeholder{color:var(--text-3)}.dropzone{position:relative;border:1.5px dashed var(--border-strong);border-radius:var(--radius);background:var(--panel-2);padding:12px;text-align:center;color:var(--text-3);font-size:12.5px;cursor:pointer;transition:.18s}.dropzone:hover,.dropzone.drag{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.dropzone .dz-icon{margin-bottom:6px;color:var(--primary)}.upload-menu{position:absolute;left:50%;bottom:12px;transform:translate(-50%);display:flex;gap:8px;z-index:20;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius);padding:6px;box-shadow:var(--shadow)}.upload-menu.hidden{display:none}.upload-menu .btn{padding:5px 10px;font-size:12px;white-space:nowrap}.file-list{display:flex;flex-direction:column;gap:8px}.file-item{display:flex;align-items:center;gap:10px;border:none;border-radius:0;padding:4px 6px;background:transparent;animation:pop .25s ease}@keyframes pop{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.file-icon{width:32px;height:32px;border-radius:var(--radius);flex:none;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;letter-spacing:.5px;background:var(--teal-soft);color:var(--teal)}.file-icon.ext-cif{background:#dff3e8;color:#0e7a52}.file-icon.ext-json{background:#efe7fb;color:#7a3ff2}.file-icon.ext-xyz{background:#fdeedd;color:#c46a1b}.file-icon.ext-csv{background:#e4f0fd;color:#1e6fd9}.file-icon.ext-inp,.file-icon.ext-com{background:#fde5e5;color:#c0392b}.file-icon.ext-out,.file-icon.ext-log{background:#ececec;color:#6b6b6b}.file-icon.ext-txt{background:#eef2f5;color:#5a6a78}.file-icon.ext-pdb{background:#fdeef5;color:#c2447a}.file-icon.ext-docx{background:#e4f0fd;color:#1e6fd9}.file-icon.ext-xlsx{background:#e3f5e6;color:#1a7d3a}.file-icon.ext-png{background:#e4f0fd;color:#1e6fd9}.file-icon.ext-md{background:#f0f2f0;color:#4a5a4a}.file-item .fname{font-size:12.5px;font-weight:600;word-break:break-all}.file-item .fmeta{font-size:11px;color:var(--text-3)}.file-item .del{margin-left:auto;width:24px;height:24px;flex:none;padding:0;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-3);font-size:15px;border-radius:var(--radius)}.file-item .del:hover{color:var(--text-2);background:transparent}.file-item .fstatus{font-size:11px;color:var(--text-3)}.file-item .fstatus.ok{color:var(--green);font-weight:600}.file-item .fstatus.err{color:var(--red);font-weight:600}.file-item .fstatus.up{color:var(--primary);font-weight:600}.file-progress{height:4px;width:100%;margin-top:6px;background:var(--border);border-radius:var(--radius-pill);overflow:hidden}.file-progress i{display:block;height:100%;border-radius:var(--radius-pill);background:var(--primary);transition:width .15s ease}.file-progress.done i{background:var(--green)}.file-progress.err i{background:var(--red)}.ai-bubble{display:flex;gap:10px;border:1px solid var(--border);border-radius:var(--radius);padding:12px;background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 25%,var(--border));animation:pop .3s ease}.ai-avatar{width:28px;height:28px;border-radius:var(--radius);flex:none;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font-size:13px;font-weight:800}.ai-bubble .bubble-text{font-size:13px}.ai-bubble .bubble-title{font-weight:700;color:var(--primary);margin-bottom:3px}.tag-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.tag{font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:var(--radius-pill);background:var(--panel);border:1px solid var(--border-strong);color:var(--text-2)}.tag b{color:var(--primary);font-weight:700}.skill-pill{display:inline-flex;align-items:center;gap:8px;padding:5px 10px;border-radius:var(--radius);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 35%,transparent);color:var(--primary);font-size:12.5px;font-weight:700}.skill-pill .skill-slug{font-family:var(--mono);font-weight:500;font-size:11px;color:var(--text-2)}.skill-copy{border:none;background:transparent;color:var(--primary);font-size:12px;font-weight:800;cursor:pointer;padding:2px 4px}.skill-copy:hover{text-decoration:underline}.structure-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);padding:12px}.structure-card .sc-head{display:flex;align-items:center;gap:8px;font-weight:700;font-size:13px;margin-bottom:8px;color:var(--text-2)}.structure-card img{width:100%;border-radius:var(--radius);background:#fff;border:1px solid var(--border);display:block}.structure-card .sc-empty{text-align:center;color:var(--text-3);font-size:12px;padding:20px;border:1px dashed var(--border-strong);border-radius:var(--radius)}.thinking{display:inline-flex;align-items:center;gap:8px;color:var(--text-2);font-size:12.5px}.dots{display:inline-flex;gap:3px}.dots span{width:5px;height:5px;border-radius:var(--radius-circle);background:var(--primary);animation:blink 1.2s infinite}.dots span:nth-child(2){animation-delay:.2s}.dots span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:.25}40%{opacity:1}}.q-item{border:1px solid var(--border);border-radius:var(--radius);padding:12px;background:var(--panel-2);box-shadow:var(--shadow);animation:pop .3s ease}.q-item.answered{border-color:color-mix(in srgb,var(--green) 45%,var(--border));background:var(--green-soft)}.q-item.skipped{border-color:var(--border);opacity:.62}.q-top{display:flex;align-items:center;gap:8px;margin-bottom:8px}.q-no{width:20px;height:20px;border-radius:var(--radius);flex:none;background:var(--primary-soft);color:var(--primary);font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center}.q-text{font-size:13px;font-weight:600;flex:1}.q-state{font-size:11px;font-weight:700;padding:2px 8px;border-radius:var(--radius-pill)}.q-state.wait{background:var(--amber-soft);color:var(--amber)}.q-state.ok{background:var(--green-soft);color:var(--green)}.q-state.skip{background:var(--border);color:var(--text-3)}.q-req{font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:var(--radius-pill);background:var(--red-soft);color:var(--red)}.q-req.opt{background:var(--border);color:var(--text-3)}.q-hint{font-size:11.5px;color:var(--text-3);margin-top:6px}.q-actions{margin-top:8px;display:flex;justify-content:flex-end}.round-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);padding:12px 14px;animation:pop .3s ease}.round-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.round-badge{font-size:11px;font-weight:800;padding:3px 9px;border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary)}.round-title{font-size:13px;font-weight:700;flex:1}.round-state{font-size:11px;font-weight:700;padding:2px 8px;border-radius:var(--radius-pill);background:var(--amber-soft);color:var(--amber)}.round-state.done{background:var(--green-soft);color:var(--green)}.round-state.error,.round-state.stopped{background:var(--red-soft);color:var(--red)}.round-stream{font-size:12.5px;line-height:1.6;background:var(--panel-2);border-radius:var(--radius);padding:10px;max-height:220px;overflow-y:auto;white-space:pre-wrap}.round-stream .reasoning{color:var(--text-3)}.round-stream .content{color:var(--text)}.round-reasoning{margin-bottom:8px}.round-reasoning summary{cursor:pointer;color:var(--primary);font-size:12px;font-weight:600;-webkit-user-select:none;user-select:none}.reasoning-summary{color:var(--text-3);font-weight:400;font-size:11px}.round-reasoning.running summary{animation:reasoning-pulse 2s infinite}@keyframes reasoning-pulse{0%,to{opacity:1}50%{opacity:.55}}.round-reasoning .reasoning{margin-top:6px;color:var(--text-3);white-space:pre-wrap;font-size:12px}.round-actions{display:flex;gap:8px;margin-top:10px}.plan-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);padding:12px;box-shadow:var(--shadow)}.plan-card+.plan-card{margin-top:10px}.plan-card .p-title{font-weight:700;color:var(--primary);margin-bottom:4px}.plan-card .p-line{font-size:12.5px;color:var(--text-2);margin-top:3px}.plan-card .p-line b{color:var(--text)}.structure-3d{width:100%;height:360px;border-radius:var(--radius);border:1px solid var(--border);background:var(--panel-2);overflow:hidden;position:relative}.structure-3d .viewer-label{position:absolute;top:8px;left:10px;z-index:2;font-size:11px;color:var(--text-3);background:color-mix(in srgb,var(--panel) 80%,transparent);padding:3px 8px;border-radius:var(--radius-pill)}.progress-wrap{margin-top:2px}.progress-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--text-2);margin-bottom:7px}.progress-meta b{color:var(--primary)}.progress{height:8px;border-radius:var(--radius-pill);background:var(--border);overflow:hidden}.progress>i{display:block;height:100%;width:0%;background:linear-gradient(90deg,var(--teal),var(--primary));border-radius:var(--radius-pill);transition:width .4s ease}.empty-state{flex:1;min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;border:1.5px dashed var(--border-strong);border-radius:var(--radius);color:var(--text-3);padding:24px}.empty-state .big-icon{width:58px;height:58px;border-radius:var(--radius);background:var(--panel-2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--text-3)}.empty-state .t{font-weight:700;color:var(--text-2);font-size:14px}.run-steps{display:flex;flex-direction:column;gap:8px}.run-step{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--text-3);font-weight:600;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);transition:.3s}.run-step .rs-icon{width:22px;height:22px;flex:none;display:flex;align-items:center;justify-content:center}.run-step.running{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 40%,var(--border));background:var(--primary-soft)}.run-step.done{color:var(--green);border-color:color-mix(in srgb,var(--green) 30%,var(--border))}.run-step .rs-time{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--text-3)}.spinner{width:14px;height:14px;border-radius:var(--radius-circle);flex:none;border:2px solid color-mix(in srgb,var(--primary) 25%,transparent);border-top-color:var(--primary);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.terminal{background:#0d1526;color:#c9d6ef;border-radius:var(--radius);padding:12px;font-family:var(--mono);font-size:11.5px;line-height:1.7;max-height:148px;overflow-y:auto}.terminal .t-line{display:block;white-space:nowrap}.terminal .t-time{color:#5f7ba8}.terminal .t-ok{color:#4ade80}.terminal .t-warn{color:#fbbf24}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.metric{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);padding:11px 12px}.metric .m-label{font-size:11px;color:var(--text-3);font-weight:600;letter-spacing:.3px}.metric .m-value{font-family:var(--mono);font-size:16.5px;font-weight:700;margin-top:3px;color:var(--primary)}.metric .m-value.green{color:var(--green)}.metric .m-unit{font-size:11px;color:var(--text-3);font-weight:500}.card-title{font-size:12px;font-weight:800;color:var(--text-2);letter-spacing:.6px;display:flex;align-items:center;gap:6px;margin:4px 0 8px}.result-table{width:100%;border-collapse:collapse;font-size:12.5px}.result-table th{text-align:left;padding:7px 10px;color:var(--text-3);font-size:11px;font-weight:700;letter-spacing:.4px;border-bottom:1px solid var(--border-strong)}.result-table td{padding:8px 10px;border-bottom:1px solid var(--border)}.result-table tr:last-child td{border-bottom:none}.result-table .mono{font-family:var(--mono);font-size:12px}.result-table tr.hl td{background:var(--green-soft);font-weight:700}.chart-box{border:1px solid var(--border);border-radius:var(--radius);padding:12px;background:var(--panel-2)}.chart-box svg{width:100%;height:auto;display:block}.img-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.img-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);overflow:hidden}.img-card img{width:100%;height:150px;object-fit:contain;background:#fff;display:block}.img-card .ic-cap{padding:8px 10px;font-size:12px;font-weight:600;color:var(--text-2);border-top:1px solid var(--border)}.img-card .ic-empty{height:150px;display:flex;align-items:center;justify-content:center;color:var(--text-3);font-size:12px;background:var(--panel-2)}.diag-log{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);padding:10px 12px;font-size:12px}.diag-log summary{cursor:pointer;font-weight:700;color:var(--text-2)}.diag-log pre{margin:10px 0 0;padding:10px;border-radius:var(--radius);background:#0b1020;color:#c9d5e8;font-family:var(--mono);font-size:11px;line-height:1.55;max-height:260px;overflow:auto;white-space:pre-wrap;word-break:break-all}.af-dirgroup{border-top:1px solid var(--border)}.af-dirgroup:first-child{border-top:none}.af-dir{display:flex;align-items:center;gap:8px;padding:7px 9px;cursor:pointer;font-size:12px;color:var(--text);background:var(--panel-2)}.af-dir:hover{color:var(--primary)}.af-dir .sf-caret{color:var(--text-3);flex:none}.af-dir-name{flex:1;min-width:0;font-weight:600;word-break:break-all}.af-dir-meta{flex:none;color:var(--text-3);font-family:var(--mono);font-size:11px}.af-dirbody{padding-left:10px}.out-file{display:flex;align-items:center;gap:9px;border:1px solid var(--border);border-radius:var(--radius);padding:7px 9px;font-size:12px}.out-file .of-name{font-weight:600;flex:1;word-break:break-all}.out-file .of-size{color:var(--text-3);font-family:var(--mono);font-size:11px}.out-file .dl{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);width:26px;height:26px;display:flex;align-items:center;justify-content:center;color:var(--text-2)}.out-file .dl:hover{color:var(--primary);border-color:var(--primary)}.footer-note{text-align:center;color:var(--text-3);font-size:12px;padding:6px 24px 10px}.login-card .footer a,.footer-note a{color:inherit;text-decoration:underline;text-underline-offset:2px}.login-card .footer a:hover,.footer-note a:hover{color:var(--text-2, #475569)}.login-card .footer a.footer-notices.is-hl,.footer-note a.footer-notices.is-hl{color:var(--primary);font-weight:600;text-decoration:underline;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,var(--primary) 45%,transparent)}.login-card .footer a.footer-notices.is-hl:hover,.footer-note a.footer-notices.is-hl:hover{color:var(--primary);text-decoration-color:currentColor}.beian-gongan{display:inline-flex;align-items:center;gap:3px;vertical-align:middle}.beian-gongan img{width:16px;height:16px;display:block}.beian-icp,.beian-gongan{white-space:nowrap}.admin-gate{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:40px 16px 0}.admin-gate-note{color:var(--text-3);font-size:13px}.admin-gate .footer-note{margin-top:auto}body.cineb-standalone #root{min-height:100vh;display:flex;flex-direction:column}body.cineb-standalone #root>.footer-note{margin-top:auto}@media (max-width: 1280px){.panel,.panel-head,.panel-body{background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important}.workflow,.workflow[data-layout],.workflow[data-layout="2-1"],.workflow[data-layout="1-2"],.workflow[data-layout="3"]{grid-template-columns:1fr;grid-template-rows:none;height:auto}.panel{min-height:520px}.panel-body,#askList{overflow-y:visible}.topbar{padding:8px 16px}}.workflow[data-layout="3"]{max-width:none;padding-left:0;padding-right:0}.workflow[data-layout="3"] .panel-body{--panel-content-max: 100%;padding-left:8px;padding-right:8px}@media (max-width: 1100px){.usage-chip{flex:1 1 auto}.topbar-actions{flex:0 1 auto;order:2}.topbar-center{flex:1 1 100%;order:3}}body.admin-page,body.auth-page,body.portal-page{padding-left:0!important}.admin-root{min-height:100vh}.admin-root>.topbar{min-height:60px;padding-left:8px}.admin-wrap{max-width:1200px;margin:0 auto;padding:22px 24px 56px;display:flex;flex-direction:column;gap:30px}.admin-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px 24px}.admin-card{background:transparent;border:none;border-radius:0;box-shadow:none;padding:4px 0 0}.admin-label{color:var(--text-3, #8b98ad);font-size:11.5px;font-weight:600;letter-spacing:.4px}.admin-value{font-size:26px;font-weight:800;margin-top:8px;line-height:1.15;color:var(--text, #1c2433)}.admin-section{background:transparent;border:none;border-radius:0;box-shadow:none;padding:0}.admin-section h2{display:flex;align-items:center;gap:9px;margin:0 0 14px;font-size:15px;font-weight:700;letter-spacing:.3px;color:var(--text, #1c2433)}.admin-section h2 .num{font-family:var(--mono, ui-monospace, Menlo, monospace);font-size:11px;font-weight:700;letter-spacing:1.5px;color:var(--primary, #4f5df0);padding:4px 8px;border-radius:var(--radius);background:var(--primary-soft, #eef0ff)}.admin-section h2.sub{margin-top:26px}.admin-form{display:flex;gap:12px 16px;flex-wrap:wrap;align-items:flex-end;margin-top:14px}.admin-field{display:flex;flex-direction:column;gap:5px}.admin-field>label{font-size:11.5px;font-weight:600;color:var(--text-3, #8b98ad);letter-spacing:.3px}.admin-field input,.admin-field select{min-width:150px}.admin-switch{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-size:12px;font-weight:600;color:var(--text-2, #5a6a82);-webkit-user-select:none;user-select:none}.admin-switch input{position:absolute;opacity:0;pointer-events:none}.admin-switch-track{width:34px;height:19px;border-radius:var(--radius-pill);background:var(--border, #d9e0ec);position:relative;transition:background .18s;flex:none}.admin-switch-track:after{content:"";position:absolute;top:2.5px;left:3px;width:14px;height:14px;border-radius:var(--radius-circle);background:#fff;box-shadow:0 1px 2px #0000002e;transition:left .18s}.admin-switch input:checked+.admin-switch-track{background:var(--primary, #4f5df0)}.admin-switch input:checked+.admin-switch-track:after{left:17px}.admin-switch input:disabled+.admin-switch-track{opacity:.45}.role-check{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-2, #5a6a82);-webkit-user-select:none;user-select:none;cursor:pointer}.role-check input{margin:0;accent-color:var(--primary, #4f5df0)}.admin-root .cell-role{font-size:12.5px;color:var(--text-3, #8b98ad)}.admin-root .cell-role.is-admin{color:var(--text, #1c2433);font-weight:600}.admin-root .load-item{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--text-2, #5a6a82)}.admin-root .stat-dot{width:7px;height:7px;border-radius:var(--radius-circle);background:var(--green, #16a34a);flex:none}.admin-root .stat-dot.is-warn{background:var(--amber, #d97706)}.admin-root table{width:100%;border-collapse:collapse}.admin-root th,.admin-root td{text-align:left;padding:10px;border-bottom:1px solid var(--border, #e3e8f2);font-size:12.5px}.admin-root th{color:var(--text-3, #8b98ad);font-weight:600;font-size:11px;letter-spacing:.5px;white-space:nowrap}.admin-root tbody tr:last-child td{border-bottom:none}.admin-root td:has(.btn){white-space:nowrap}.admin-root td .btn:not(:last-child){margin-right:6px}.admin-root input,.admin-root select{background:var(--panel, #fff);border:1px solid var(--border-strong, #cdd7e8);color:var(--text, #1c2433);border-radius:var(--radius);padding:6px 10px;font-size:12.5px;transition:.15s}.admin-root input:focus,.admin-root select:focus{outline:none;border-color:var(--primary, #4f5df0);box-shadow:0 0 0 3px var(--primary-soft, #eef0ff)}.admin-root .core-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px}@media (min-width: 640px){.admin-root .core-grid{grid-template-columns:repeat(8,1fr)}}@media (min-width: 1000px){.admin-root .core-grid{grid-template-columns:repeat(16,1fr)}}.admin-root .core-cell{min-width:0;height:40px;border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:10px;font-weight:700;cursor:default;border:1px solid transparent}.admin-root .core-cell small{font-size:8px;font-weight:500;opacity:.8}.admin-root .core-cell.idle{background:var(--green-soft, #e9f9ee);color:var(--green, #16a34a);border-color:color-mix(in srgb,var(--green, #16a34a) 35%,transparent)}.admin-root .core-cell.physical{background:var(--primary-soft, #eef0ff);color:var(--primary, #4f5df0);border-color:color-mix(in srgb,var(--primary, #4f5df0) 35%,transparent)}.admin-root .core-cell.hyper{background:#06b6d421;color:#0e7490;border-color:#06b6d459}.admin-root .core-cell.dual{background:#f9731621;color:#c2410c;border-color:#f9731659}.admin-root .core-cell.reserved{background:transparent;color:var(--text-3, #8b98ad);border:1px dashed var(--border-strong, #cdd7e8);opacity:.75}.admin-root .core-cell.reserved small{opacity:.7}.admin-root .admin-cards{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:20px 28px}.admin-root .admin-card{padding:4px 0 0}.admin-root .admin-value{font-size:28px;font-weight:800;margin-top:6px;line-height:1.1;font-variant-numeric:tabular-nums;letter-spacing:.3px}.admin-root .admin-value-sub{font-size:14px;font-weight:600;color:var(--text-3, #8b98ad);margin-left:5px}.admin-root .admin-tick{width:26px;height:3px;border-radius:var(--radius-pill);margin-top:10px}.admin-root .tick-primary{background:var(--primary, #4f5df0)}.admin-root .tick-green{background:var(--green, #16a34a)}.admin-root .tick-gray{background:var(--border-strong, #cdd7e8)}.admin-root .tick-violet{background:var(--primary-2, #7c3aed)}.admin-root .admin-bar{height:2px;border-radius:var(--radius-pill);background:var(--panel-2, #f8faff);margin-top:10px;overflow:hidden}.admin-root .admin-bar i{display:block;height:100%;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--primary, #4f5df0),var(--primary-2, #7c3aed));transition:width .5s ease}.admin-root .admin-wrap{gap:34px}.admin-root .admin-section>h2{gap:10px;margin:0 0 12px;font-size:15px;font-weight:700;letter-spacing:.3px}.admin-root .admin-section>h2 .num{font-family:var(--mono, ui-monospace, Menlo, monospace);font-size:11px;font-weight:700;letter-spacing:1.2px;padding:4px 8px;border-radius:var(--radius)}.admin-root .admin-section>h2 .num.chip-blue{background:var(--primary-soft, #eef0ff);color:var(--primary, #4f5df0)}.admin-root .admin-section>h2 .num.chip-teal{background:#06b6d41f;color:#0e7490}.admin-root .admin-section>h2 .num.chip-amber{background:var(--amber-soft, #fef3e2);color:var(--amber, #d97706)}.admin-root .admin-section>h2 .num.chip-green{background:var(--green-soft, #e9f9ee);color:var(--green, #16a34a)}.admin-root .admin-section>h2 .num.chip-violet{background:#7c3aed1a;color:var(--primary-2, #7c3aed)}.admin-root .admin-section>h2 .hint{margin-left:auto;font-size:11.5px;font-weight:500;color:var(--text-3, #8b98ad);white-space:nowrap}.admin-root .admin-section+.admin-section{border-top:1px solid var(--border, #e3e8f2);padding-top:26px}.admin-root .table-wrap{overflow-x:auto}.admin-root th{padding:8px 10px;font-size:11px;font-weight:650;letter-spacing:.6px;color:var(--text-3, #8b98ad);border-bottom:1px solid var(--border-strong, #cdd7e8)}.admin-root td{padding:10px;font-size:12.5px;border-bottom:1px solid var(--border, #e3e8f2)}.admin-root tbody tr:hover td{background:var(--panel-2, #f8faff)}.admin-root .num-cell{text-align:right;font-variant-numeric:tabular-nums}.admin-root .mono-cell{font-family:var(--mono, ui-monospace, Menlo, monospace);font-size:11.5px}.admin-root .empty{text-align:center;color:var(--text-3, #8b98ad);padding:22px 10px;font-size:12.5px;border-bottom:none}.admin-root .state-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;white-space:nowrap}.admin-root .state-badge .dot{width:6px;height:6px;border-radius:var(--radius-circle);background:currentColor;flex:none}.admin-root .state-badge.st-green{background:var(--green-soft, #e9f9ee);color:var(--green, #16a34a)}.admin-root .state-badge.st-amber{background:var(--amber-soft, #fef3e2);color:var(--amber, #d97706)}.admin-root .state-badge.st-red{background:var(--red-soft, #fdecec);color:var(--red, #dc2626)}.admin-root .state-badge.st-gray{background:var(--panel-2, #f8faff);color:var(--text-3, #8b98ad)}.admin-root input,.admin-root select{height:34px}.admin-root input::placeholder{color:var(--text-3, #8b98ad)}.admin-root .admin-field>label{letter-spacing:.3px}.admin-root input[type=number]::-webkit-outer-spin-button,.admin-root input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.admin-root input[type=number]{-moz-appearance:textfield}.admin-root .cf-stepper{display:inline-flex;align-items:stretch}.admin-root .cf-stepper-input{min-width:0;padding:6px 8px;text-align:right;border-radius:var(--radius) 0 0 var(--radius);border-right:none;font-variant-numeric:tabular-nums}.admin-root .cf-stepper-btn{width:30px;height:34px;padding:0;flex:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-strong, #cdd7e8);background:var(--panel-2, #f8faff);color:var(--text-2, #5a6a82);font-size:14px;font-weight:700;line-height:1;transition:background .15s ease,color .15s ease}.admin-root .cf-stepper-btn.dec{border-radius:0;border-left:none;border-right:none}.admin-root .cf-stepper-btn.inc{border-left:1px solid var(--border-strong, #cdd7e8);border-radius:0 var(--radius) var(--radius) 0}.admin-root .cf-stepper-btn.dec:hover:not(:disabled){background:var(--red-soft, #fdecec);color:var(--red, #dc2626)}.admin-root .cf-stepper-btn.inc:hover:not(:disabled){background:var(--green-soft, #e9f9ee);color:var(--green, #16a34a)}.admin-root .cf-stepper-btn:active:not(:disabled){background:var(--border, #e3e8f2)}.admin-root .cf-stepper-btn:focus-visible,.admin-root .cf-stepper-input:focus-visible{outline:none;box-shadow:0 0 0 3px var(--primary-soft, #eef0ff)}.admin-root .cf-stepper-btn:disabled{opacity:.55;cursor:not-allowed}.admin-root .admin-switch input{width:16px;max-width:16px;min-width:0;height:16px;max-height:16px}.admin-root .btn-ghost.danger:hover{background:var(--red-soft, #fdecec);color:var(--red, #dc2626)}.admin-root .admin-msg{display:flex;align-items:center;gap:8px;margin:10px 0 0;padding:8px 12px;border:1px solid color-mix(in srgb,currentColor 32%,transparent);border-radius:var(--radius);font-size:12.5px;font-weight:600}.admin-root .admin-msg.err{color:#b91c1c;background:var(--red-soft, #fdecec)}.admin-root .admin-msg.ok{color:#15803d;background:var(--green-soft, #e9f9ee)}.admin-root .admin-msg:empty{display:none}body.admin-page .topbar .brand-name,body.portal-page .topbar .brand-name{font-size:16px}body.portal-page .topbar-actions,body.admin-page .topbar-actions{margin-left:auto}.admin-root #who{color:var(--text-3, #8b98ad);font-size:12px;font-weight:600}@media (max-width: 1000px){.admin-root .admin-cards{grid-template-columns:repeat(2,1fr)}.admin-root .admin-section>h2 .hint{display:none}.admin-root .admin-toc{display:none}}@media (max-width: 640px){.admin-root .admin-cards{grid-template-columns:1fr}.admin-root .admin-wrap{padding:18px 14px 44px}}.admin-root .admin-alert{border:1px solid var(--border, #e3e8f2);border-radius:var(--radius);background:var(--panel-2, #f8faff);padding:8px 12px}.admin-root .admin-alert.is-set{background:var(--amber-soft, #fef3e2);border-color:color-mix(in srgb,var(--amber, #d97706) 38%,transparent)}.admin-root .admin-alert-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-root .admin-alert-row>b{flex:none}.admin-root .admin-alert-row>.ui-btn{margin-left:auto;flex:none}.admin-root .admin-alert-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;color:var(--text, #1c2433)}.admin-root .admin-alert.is-set .admin-alert-text{color:var(--amber, #d97706)}.admin-root .admin-alert-edit{display:flex;flex-direction:column;gap:8px}.admin-root .admin-alert-edit textarea{width:100%;font-family:inherit;font-size:13px;line-height:1.6;padding:8px}.admin-root .admin-alert-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-root{--admin-topbar-h: 52px}.admin-root .admin-statusbar{position:sticky;top:var(--admin-topbar-h);z-index:40;max-width:1200px;margin:0 auto;padding:0 24px}.admin-root .admin-statusbar .admin-msg{margin:8px 0 0}.admin-root .admin-toc{position:sticky;top:var(--admin-topbar-h);z-index:30;display:flex;flex-wrap:wrap;gap:6px;margin:-6px 0 0;padding:8px 0;background:var(--bg, #fff);border-bottom:1px solid var(--border, #e3e8f2)}.admin-root .admin-toc a{display:inline-flex;align-items:center;padding:3px 10px;white-space:nowrap;border:1px solid transparent;border-radius:var(--radius-pill);font-size:12px;font-weight:600;color:var(--text-2, #5a6a82);text-decoration:none}.admin-root .admin-toc a:hover{background:var(--primary-soft, #eef0ff);color:var(--primary, #4f5df0)}.admin-root .admin-toc a.is-current{background:var(--primary-soft, #eef0ff);color:var(--primary, #4f5df0);border-color:color-mix(in srgb,var(--primary, #4f5df0) 30%,transparent)}.admin-root .admin-block{background:var(--panel-2, #f8faff);border:1px solid var(--border, #e3e8f2);border-radius:var(--radius);padding:12px 14px;margin-top:12px}.admin-root .admin-block-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:8px}.admin-root .admin-block-head>b{font-size:13px;font-weight:700;color:var(--text, #1c2433)}.admin-root .admin-block .table-wrap{margin-top:0}.billing-money{font-variant-numeric:tabular-nums;white-space:nowrap}.billing-money.is-neg{color:var(--red)}.billing-page-note{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;padding:10px 12px;margin-top:12px;border:1px solid color-mix(in srgb,var(--amber) 35%,transparent);border-radius:var(--radius);background:var(--amber-soft);color:color-mix(in srgb,var(--amber) 78%,var(--text));font-size:12.5px;font-weight:600}.billing-page-note.is-blocked{border-color:color-mix(in srgb,var(--red) 35%,transparent);background:var(--red-soft);color:var(--red)}.billing-page-note a{color:inherit;font-weight:800}.billing-recharge{margin-top:16px;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.billing-recharge-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.billing-recharge-head strong{display:block;font-size:14px;color:var(--text)}.billing-recharge-head span{display:block;margin-top:3px;font-size:12px;color:var(--text-2)}.billing-recharge-total{flex:none;font-size:12px;color:var(--text-2)}.billing-recharge-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px}.billing-recharge-row .ui-btn.is-active{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.billing-recharge-custom{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--text-2)}.billing-recharge-custom input{width:92px;height:28px;padding:0 8px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);color:var(--text)}.billing-recharge-hint{margin-top:10px;font-size:11.5px;color:var(--text-3)}.billing-rate-table td,.billing-rate-table th{white-space:nowrap}.billing-rate-table .muted{font-weight:500}.billing-kv{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:12.5px;color:var(--text-2)}.billing-kv b{color:var(--text);font-variant-numeric:tabular-nums}.admin-root .admin-note{margin-top:12px}.admin-root .admin-note>summary{cursor:pointer;font-size:12.5px;font-weight:600;color:var(--text-3, #8b98ad)}.admin-root .admin-note>summary:hover{color:var(--primary, #4f5df0)}.admin-root .admin-actions{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.admin-root .admin-actions>.ui-btn-danger{margin-left:4px}.admin-root td:has(.ui-btn){white-space:nowrap}.admin-root .ops-cell{text-align:right}.admin-root .table-wrap--long{max-height:60vh;overflow:auto}.admin-root .table-wrap--long thead th{position:sticky;top:0;z-index:1;background:var(--bg, #fff)}.admin-root .hist-filter{margin-bottom:12px}.admin-root .hist-summary{margin-left:auto;align-self:center;font-size:12.5px}.admin-root .hist-sev-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-root .hist-sev{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;flex:none;border:1px solid var(--border-strong, #cdd7e8);border-radius:var(--radius);background:var(--panel, #fff);color:var(--text-2, #5a6a82);font-size:12.5px;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.admin-root .hist-sev:hover{border-color:var(--primary, #4f5df0);color:var(--primary, #4f5df0)}.admin-root .hist-sev.is-on{border-color:var(--primary, #4f5df0);background:var(--primary-soft, #eef0ff);color:var(--primary, #4f5df0)}.admin-root .hist-sev .n{font-variant-numeric:tabular-nums;font-weight:500;color:var(--text-3, #8b98ad)}.admin-root .hist-sev:hover .n,.admin-root .hist-sev.is-on .n{color:inherit;opacity:.75}.admin-root .hist-reset{margin-left:4px}.admin-root .hist-month-block{margin-top:10px}.admin-root .hist-month{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;padding:8px 12px;border:1px solid var(--border, #e3e8f2);border-radius:var(--radius);background:var(--panel-2, #f8faff);color:var(--text, #1c2433);font-size:13px;font-weight:700;text-align:left;cursor:pointer;transition:border-color .15s ease}.admin-root .hist-month:hover{border-color:var(--primary, #4f5df0)}.admin-root .hist-month .hist-month-label{flex:none;font-size:13.5px}.admin-root .hist-month>.muted{font-weight:500}.admin-root .hist-month-caret{flex:none;width:6px;height:6px;margin-left:auto;margin-right:3px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;opacity:.75;transform:rotate(45deg);transition:transform .2s ease}.admin-root .hist-month.is-open .hist-month-caret{transform:rotate(-135deg)}.admin-root .hist-month-block .table-wrap{margin-top:6px}.admin-root .hist-sort{display:inline-flex;align-items:center;gap:5px;padding:0;border:none;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer}.admin-root .hist-sort:hover,.admin-root .hist-sort.is-on{color:var(--primary, #4f5df0)}.admin-root .hist-sort-caret{flex:none;width:5px;height:5px;opacity:.45;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translate(-1px,-1px)}.admin-root .hist-sort-caret.is-asc{opacity:1;transform:rotate(-135deg) translate(-1px,-1px)}.admin-root .hist-sort-caret.is-desc{opacity:1;transform:rotate(45deg) translate(-1px,-1px)}.admin-root .load-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}@media (max-width: 1200px){.admin-root .load-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 760px){.admin-root .load-grid{grid-template-columns:1fr}}.admin-root .metric-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px;font-size:12.5px}.admin-root .metric-card{display:flex;flex-direction:column;gap:6px;min-width:0;border:1px solid var(--border, #e3e8f2);border-radius:var(--radius);background:var(--panel-2, #f8faff);padding:10px 12px}.admin-root .metric-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}.admin-root .metric-head>b{font-size:12.5px;font-weight:700;color:var(--text, #1c2433);white-space:nowrap}.admin-root .metric-stat{font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-2, #5a6a82)}.admin-root .metric-plot{background:var(--panel, #fff);border:1px solid var(--border, #e3e8f2);border-radius:var(--radius);padding:6px 8px 4px;min-width:0}.admin-root .metric-yaxis{position:relative;width:24px;height:96px;flex:none;font-size:9.5px;color:var(--text-3, #8b98ad);font-variant-numeric:tabular-nums}.admin-root .metric-yaxis>span{position:absolute;left:0}.admin-root .metric-yaxis>span:nth-child(1){top:0}.admin-root .metric-yaxis>span:nth-child(2){top:50%;transform:translateY(-50%)}.admin-root .metric-yaxis>span:nth-child(3){bottom:0}.admin-root .metric-empty{display:flex;align-items:center;justify-content:center;height:96px;padding:0 10px;text-align:center;font-size:12px;color:var(--text-3, #8b98ad)}.admin-root .metric-xaxis{display:flex;justify-content:space-between;margin-top:2px;padding-left:30px;font-size:9.5px;color:var(--text-3, #8b98ad)}.admin-root .hist-table{table-layout:fixed}.admin-root .hist-table th,.admin-root .hist-table td{overflow:hidden;text-overflow:ellipsis}.admin-root .hist-table-wrap{scrollbar-gutter:stable}.admin-root .empty{padding:14px 10px}.platform-notice{display:flex;align-items:center;justify-content:center;gap:8px;flex:none;padding:8px 14px;font-size:12.5px;font-weight:600;line-height:1.5;text-align:center;color:var(--amber, #d97706);background:var(--amber-soft, #fef3e2);border-bottom:1px solid color-mix(in srgb,var(--amber, #d97706) 32%,transparent)}.platform-notice-text{min-width:0;white-space:pre-wrap;word-break:break-word}.admin-root .core-map-cells{gap:3px}.admin-root .core-cell{display:block;width:18px;height:18px;min-width:0;padding:0;border:1px solid transparent;border-radius:var(--radius);transition:transform .12s ease,box-shadow .12s ease}.admin-root .core-cell:hover{position:relative;z-index:1;transform:scale(1.2);box-shadow:0 0 0 2px color-mix(in srgb,var(--text-3, #8b98ad) 55%,transparent)}.admin-root .core-cell.is-free{background:var(--panel-2, #f8faff);box-shadow:inset 0 0 0 1px var(--border-strong, #cdd7e8)}.admin-root .core-cell.is-conflict{background:repeating-linear-gradient(45deg,var(--red, #dc2626),var(--red, #dc2626) 3px,#fff 3px,#fff 6px)}.admin-root .core-legend-item i{width:12px;height:12px}@media (max-width: 1000px){.admin-root .admin-toc{display:none}}.admin-root .admin-wrap.has-status .admin-toc{position:static}.upload-menu .btn{background:var(--panel);color:var(--text-2);border:1px solid var(--border-strong)}.upload-menu .btn:hover{background:var(--primary-soft)!important;color:var(--primary)!important;border-color:var(--primary)!important}.dsh-conversation{display:flex;flex-direction:column;flex:1;min-height:0;height:100%;background:var(--panel);border-radius:var(--radius);overflow:hidden}.dsh-conv-header{display:flex;align-items:center;gap:10px;padding:9px 14px;border-bottom:1px solid var(--border);flex:none;flex-wrap:wrap}.dsh-conv-head{display:inline-flex;align-items:center;gap:8px;flex:none;white-space:nowrap}.dsh-conv-title{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:650;color:var(--text);white-space:nowrap}.dsh-conv-title:before{content:"";width:6px;height:6px;border-radius:var(--radius-circle);background:#2d7dd6;flex:none}.dsh-conv-chip{font-size:10.5px;font-weight:600;letter-spacing:.3px;padding:2px 9px;border-radius:var(--radius-pill);background:#eef4ff;color:#2d6bd8;border:1px solid #c9dafb;white-space:nowrap;cursor:default}.dsh-conv-meta{display:inline-flex;align-items:center;gap:7px;flex:none;margin-left:auto;max-width:100%;flex-wrap:nowrap}.dsh-chat-scroll{flex:1;min-height:0;overflow-y:auto;padding:16px}.dsh-chat-column{max-width:748px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:16px}.dsh-flow-item{min-width:0}.dsh-flow-item:empty{display:none}.dsh-empty{color:var(--text-3);font-size:13px;line-height:20px;padding:4px 2px}.dsh-user-row{display:flex;justify-content:flex-end}.dsh-user-bubble{max-width:min(525px,82%);background:#edf3fe;border-radius:var(--radius);padding:10px 16px;font-size:14px;line-height:22px;color:#0f1115;white-space:pre-wrap;word-break:break-word}.dsh-assistant{display:flex;flex-direction:column;gap:6px;width:100%;max-width:100%}.dsh-assistant-text{font-size:14px;line-height:24px;color:#0f1115;white-space:pre-wrap;word-break:break-word}.dsh-reasoning{margin:0}.dsh-reasoning summary{display:inline-flex;align-items:center;gap:5px;padding:2px 0;border-radius:var(--radius);font-size:12px;line-height:18px;color:var(--text-3);cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.dsh-reasoning summary::-webkit-details-marker{display:none}.dsh-reasoning summary:after{width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;content:"";opacity:.8;transform:rotate(-45deg);transition:transform .12s ease}.dsh-reasoning[open] summary:after{transform:rotate(45deg)}.dsh-reasoning pre{margin-top:4px}.dsh-tool-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);padding:0;font-size:12px;line-height:17px}.dsh-tool-summary{display:flex;align-items:center;gap:6px;min-width:0;padding:5px 9px;color:var(--text-2);cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.dsh-tool-summary::-webkit-details-marker{display:none}.dsh-tool-summary:after{width:6px;height:6px;flex:none;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;content:"";opacity:.8;margin-left:auto;transform:rotate(-45deg);transition:transform .12s ease}.dsh-tool-card[open] .dsh-tool-summary:after{transform:rotate(45deg)}.dsh-tool-summary svg{flex:none;width:13px;height:13px;color:#4176e6}.dsh-tool-name{flex:1 1 auto;min-width:0;display:inline-flex;align-items:center;gap:6px;overflow:hidden;white-space:nowrap;font-weight:700;color:#4176e6}.dsh-tool-name .dsh-tool-snippet{flex:0 1 auto;min-width:0}.dsh-tool-body{padding:0 10px 8px}.dsh-tool-args{font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:11px;color:var(--text-2);background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:6px 8px;margin:4px 0;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.dsh-tool-result{white-space:pre-wrap;word-break:break-word;color:var(--text-2)}.dsh-input-bar{flex:none;padding:0 16px}.cf-auto-slider{display:flex;align-items:center;gap:6px;flex:0 0 auto;min-width:0}.cf-auto-slider-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:92px;flex:0 0 auto;height:8px;border-radius:var(--radius-pill);margin:0;padding:0;outline:none;cursor:pointer;background:transparent;box-shadow:none}.cf-auto-slider-input::-webkit-slider-runnable-track{height:8px;border-radius:var(--radius-pill);background:linear-gradient(90deg,#60a5fa,#7c3aed 65%,#6d28d9);box-shadow:inset 0 0 0 1px #00000014}.cf-auto-slider-input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:15px;height:15px;margin-top:-3.5px;border-radius:var(--radius-circle);background:#fff;border:2px solid var(--primary, #7c3aed);box-shadow:0 1px 3px #0000004d}.cf-auto-slider-input::-moz-range-track{height:8px;border-radius:var(--radius-pill);background:linear-gradient(90deg,#60a5fa,#7c3aed 65%,#6d28d9);box-shadow:inset 0 0 0 1px #00000014}.cf-auto-slider-input::-moz-range-thumb{width:15px;height:15px;border-radius:var(--radius-circle);background:#fff;border:2px solid var(--primary, #7c3aed);box-shadow:0 1px 3px #0000004d}.cf-auto-slider-level{font-size:12px;white-space:nowrap;color:var(--fg-dim, #666)}.cf-auto-slider-level.is-low{color:#3b82f6}.cf-auto-slider-level.is-high{color:#7c3aed}.cf-auto-slider-level.is-max{color:#5b21b6}.dsh-input-card{max-width:780px;margin:0 auto;display:flex;flex-direction:column;gap:4px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);box-shadow:none;padding:8px 10px 8px 16px}.dsh-input-card input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-size:14px;line-height:22px;color:var(--text)}.dsh-input-card input::placeholder{color:var(--text-3)}.dsh-send-btn{flex:none;border:none;border-radius:var(--radius);padding:8px 16px;font-size:13px;font-weight:600;color:#fff;background:#4176e6;cursor:pointer;transition:background .15s ease}.dsh-send-btn:hover{background:#5686fe}.dsh-send-btn:disabled{opacity:.55;cursor:default}.dsh-send-btn.is-stop{background:#687079}.dsh-send-btn.is-stop:hover{background:#7b848e}.dsh-send-btn.is-stop svg{vertical-align:-1px;margin-right:4px}.dsh-round-btn{flex:none;width:32px;height:32px;border-radius:var(--radius-pill);border:none;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:#4176e6;cursor:pointer;transition:background .15s ease,opacity .15s ease}.dsh-round-btn svg{flex:none;width:14px;height:14px;min-width:14px;display:block}.dsh-round-btn:hover{background:#5686fe}.dsh-round-btn:disabled{opacity:.45;cursor:default}.dsh-round-btn.is-stop{background:#4176e6}.dsh-round-btn.is-stop:hover{background:#5686fe}.dsh-ctx-meter{position:relative;display:inline-flex;margin-right:2px}.dsh-ctx-trigger{display:grid;place-items:center;flex:none;width:28px;height:28px;min-width:28px;max-width:28px;padding:0;box-sizing:border-box;line-height:0;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--text-2);cursor:pointer}.dsh-ctx-trigger>svg{display:block}.dsh-ctx-trigger:hover{background:var(--panel-2, rgba(0,0,0,.05))}.dsh-ctx-track{fill:none;stroke:var(--border, #e2e6ec);stroke-width:2}.dsh-ctx-fill{fill:none;stroke:#4176e6;stroke-width:2;stroke-linecap:round}.dsh-ctx-panel{position:absolute;bottom:calc(100% + 8px);right:0;z-index:100;box-sizing:border-box;width:220px;padding:10px 12px;border:1px solid var(--border-strong, #cdd7e8);border-radius:var(--radius);background:var(--panel-1, #fff);box-shadow:0 12px 32px #0f172a2e;font-size:12px;color:var(--text-2);cursor:default}[data-theme=dark] .dsh-ctx-panel{background:#1d2228;border-color:#333a44}.dsh-ctx-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.dsh-ctx-percent{font-weight:600;color:var(--text-1)}.dsh-ctx-figures{font-variant-numeric:tabular-nums;color:var(--text-1)}.dsh-ctx-bar{margin:8px 0 2px;height:4px;border-radius:var(--radius-pill);background:var(--panel-2, rgba(0,0,0,.06));overflow:hidden}.dsh-ctx-bar i{display:block;height:100%;border-radius:var(--radius-pill);background:#4176e6}.dsh-assistant-text{white-space:normal}.dsh-assistant-text p{margin:0 0 8px}.dsh-assistant-text p:last-child{margin-bottom:0}.dsh-assistant-text pre{overflow-x:auto;padding:8px 10px;border-radius:var(--radius);background:#f3f4f8;font-size:12.5px;line-height:18px}.dsh-assistant-text code{padding:1px 4px;border-radius:var(--radius);background:#eef0f5;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.dsh-assistant-text pre code{padding:0;background:none}.dsh-assistant-text table{border-collapse:collapse;margin:8px 0;font-size:13px}.dsh-assistant-text th,.dsh-assistant-text td{border:1px solid #e2e5ec;padding:4px 8px}.dsh-assistant-text ul,.dsh-assistant-text ol{margin:6px 0;padding-left:20px}.dsh-assistant-text blockquote{margin:6px 0;padding:6px 10px;background:var(--panel-2, #f8faff);border-radius:var(--radius);color:#555}.dsh-assistant-text img{max-width:100%;border-radius:var(--radius)}.dsh-tool-card.dsh-tool-error{border-color:#f0b0b8;background:#fdf4f5}.dsh-tool-card.dsh-tool-error .dsh-tool-summary{color:#c0392b}.dsh-tool-card.dsh-tool-aborted{border-color:var(--border);background:var(--panel-2, #f6f7fb)}.dsh-tool-card.dsh-tool-aborted .dsh-tool-summary{color:var(--text-2)}.dsh-tool-images{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.dsh-tool-images img{max-width:260px;max-height:200px;border-radius:var(--radius);border:1px solid #e2e5ec}.plugin-tool-row{padding:3px 8px 3px 24px;font-size:12px;color:#6b7591;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.dsh-tool-structures{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.dsh-struct-card{flex:1 1 46%;min-width:190px;max-width:272px;border:1px solid #dde2ec;border-radius:var(--radius);background:#fafbfe;overflow:hidden;display:flex;flex-direction:column}.dsh-struct-name{padding:4px 8px;font-size:11px;color:#5b6b9e;border-bottom:1px solid #eaeef6;background:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dsh-struct-canvas{width:100%;min-width:170px;height:210px;background:#fff;position:relative;overflow:hidden}.dsh-struct-img{max-width:100%;max-height:210px;display:block}.dsh-struct-loading{font-size:12px;color:#9aa3b5;padding:16px}.dsh-struct-card{cursor:pointer}.dsh-struct-card.live{cursor:default;border-color:#5b6b9e;box-shadow:0 0 0 1px #5b6b9e40}.panel,section.panel{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.dsh-todo-wrap{flex:none;padding:0 12px 8px}.dsh-todo{max-width:780px;margin:0 auto;padding:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.dsh-todo-body{display:flex;flex-direction:column;gap:4px;padding:4px 10px}.dsh-todo-header{display:flex;align-items:center;gap:8px;width:100%;padding:0;border:none;background:transparent;text-align:left;cursor:pointer}.dsh-todo-lead{display:grid;flex:none;place-items:center;color:var(--text-3)}.dsh-todo-title{flex:none;font-size:12.5px;line-height:20px;font-weight:600;color:var(--text)}.dsh-todo-progress{flex:1 1 auto;min-width:0;overflow:hidden;font-size:12.5px;line-height:18px;font-weight:400;color:var(--text-3);text-overflow:ellipsis;white-space:nowrap}.dsh-todo-chevron{display:grid;flex:none;place-items:center;color:var(--text-3)}.dsh-todo-list{display:flex;flex-direction:column;gap:4px;margin:0;padding:0 0 2px;list-style:none;max-height:180px;overflow-y:auto}.dsh-todo-item{display:flex;align-items:center;gap:8px;min-width:0;font-size:12px;line-height:18px;color:var(--text-2)}.dsh-todo-glyph{display:grid;flex:none;place-items:center;width:16px;height:16px}.dsh-todo-glyph-completed{color:var(--green)}.dsh-todo-glyph-pending{color:var(--text-3)}.dsh-todo-glyph-progress{color:var(--primary);animation:dsh-todo-spin 1s linear infinite}@keyframes dsh-todo-spin{to{transform:rotate(360deg)}}.dsh-todo-content{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-mini{flex:none;min-width:150px;justify-content:flex-end;margin-left:auto;position:relative;display:inline-flex;align-items:center;padding:4px 11px;font-size:11.5px;color:var(--text-2, #9aa0b8);background:linear-gradient(180deg,#8490be1a,#8490be08);border:1px solid rgba(132,144,190,.18);border-radius:var(--radius-pill);cursor:default;white-space:nowrap;transition:background-color .2s ease,border-color .2s ease}.stats-mini:hover{background:#8490be26;border-color:#8490be61}.stats-full{position:absolute;top:calc(100% + 12px);right:0;min-width:380px;padding:12px 16px;text-align:left;font-size:12px;font-variant-numeric:tabular-nums;line-height:1.9;color:var(--text-2, #9aa0b8);background:var(--panel, #171a26);border:1px solid rgba(132,144,190,.22);border-radius:var(--radius);box-shadow:0 14px 36px #00000061;opacity:0;visibility:hidden;transform:translateY(-5px);transition:opacity .18s ease,transform .18s ease,visibility .18s;pointer-events:none;z-index:60}.stats-mini:hover .stats-full,.stats-mini:focus-within .stats-full{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.stats-full-line{font-size:12.5px;color:var(--text-2, #9aa0b8);line-height:1.9;white-space:normal;word-break:break-word}.dsh-load-more{align-self:center;margin:10px auto 12px;padding:6px 16px;font-size:12px;font-weight:500;color:var(--text-2, #9aa0b8);background:transparent;border:1px dashed var(--border, #2e3350);border-radius:var(--radius-pill);cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.dsh-load-more:hover{background:#8490be14;color:var(--text, #e6e9f2);border-color:#8490be66;border-style:solid}.dsh-load-more:active{opacity:.7}.dsh-tool-snippet{margin-left:7px;padding:.5px 5px;font-size:10.5px;line-height:16px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--text-2, #8b8fa3);background:#808cb41f;border:1px solid rgba(128,140,180,.18);border-radius:var(--radius);max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.dsh-msg-footer{display:flex;align-items:center;gap:2px;margin-top:6px;padding:2px 0;opacity:1}.dsh-msg-clock{font-size:11px;color:var(--text-3, #98a2b8);margin-right:6px}.dsh-msg-action{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:var(--radius);background:transparent;color:var(--text-2);cursor:pointer;padding:0}.dsh-msg-action:hover{background:var(--primary-soft);color:var(--primary)}.dsh-deliverables{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:8px}.dsh-deliverables-label{font-size:11px;color:var(--text-3, #98a2b8);font-weight:600;letter-spacing:.04em}.dsh-deliverable-chip{display:inline-flex;align-items:center;gap:4px;border:1px solid color-mix(in srgb,var(--primary) 32%,transparent);background:var(--primary-soft);color:var(--primary);border-radius:var(--radius);padding:3px 8px;font-size:11.5px;cursor:pointer}.dsh-deliverable-chip:hover{background:color-mix(in srgb,var(--primary) 14%,transparent)}.dsh-code-block{position:relative;margin:8px 0}.dsh-code-block pre{margin:0;padding:12px 44px 12px 12px;background:#0f172a;color:#e2e8f0;border-radius:var(--radius);overflow-x:auto;font-size:12.5px;line-height:1.55}.dsh-code-copy{position:absolute;top:8px;right:8px;border:1px solid rgba(255,255,255,.18);background:#94a3b82e;color:#e2e8f0;border-radius:var(--radius);padding:2px 8px;font-size:11px;cursor:pointer;opacity:.8}.dsh-code-copy:hover{opacity:1}.dsh-file-link{color:var(--primary);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.dsh-tool-right{display:inline-flex;flex:none;align-items:center;gap:6px;margin-left:6px;white-space:nowrap}.dsh-tool-duration{font-size:10.5px;color:var(--text-3, #98a2b8);font-variant-numeric:tabular-nums}.dsh-tool-status{font-size:10.5px;padding:.5px 6px;border-radius:var(--radius-pill);border:1px solid transparent}.dsh-tool-status.is-ok{color:#12805c;background:#12805c1a;border-color:#12805c40}.dsh-tool-status.is-err{color:#c0392b;background:#c0392b1a;border-color:#c0392b40}.dsh-tool-status.is-run{color:#b07a00;background:#b07a001a;border-color:#b07a0040}.dsh-tool-status.is-abort{color:var(--text-2);background:#64748b1a;border-color:#64748b40}.dsh-assistant-text table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}.dsh-assistant-text .katex-display{overflow-x:auto;overflow-y:hidden}@media (prefers-color-scheme: dark){.dsh-code-block pre{background:#0b1220}}.dsh-goal-dock{padding:0 2px 8px}.dsh-goal-bar{display:flex;align-items:center;gap:7px;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border));background:var(--primary-soft);border-radius:var(--radius);padding:6px 10px;font-size:12.5px}.dsh-goal-glyph{color:var(--primary);display:inline-flex;flex:none}.dsh-goal-phase{flex:none;font-size:11px;font-weight:700;color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,transparent);border-radius:var(--radius-pill);padding:1px 8px}.dsh-goal-objective{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-1)}.dsh-goal-input{flex:1;min-width:0;border:1px solid var(--border);background:var(--bg);color:var(--text-1);border-radius:var(--radius);padding:6px 10px;font-size:12.5px}.dsh-goal-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 13%,transparent)}.dsh-goal-actions{display:inline-flex;gap:2px;flex:none}.dsh-goal-act{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:var(--radius);background:transparent;color:var(--text-2);cursor:pointer;padding:0}.dsh-goal-act:hover{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}.dsh-goal-act.is-save{color:var(--primary)}.dsh-goal-act:disabled{opacity:.5;cursor:default}.dsh-goal-error{color:var(--danger, #c0392b);font-size:12px;line-height:1.3;max-width:40ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dsh-plan-chip{display:inline-flex;align-items:center;gap:5px;flex:none;border:1px solid var(--border);background:var(--panel-2);color:var(--text-2);border-radius:var(--radius-pill);padding:5px 10px;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.dsh-plan-chip:hover{background:var(--primary-soft);color:var(--primary)}.dsh-plan-chip.is-on{background:color-mix(in srgb,var(--primary) 14%,transparent);border-color:color-mix(in srgb,var(--primary) 40%,transparent);color:var(--primary)}.dsh-approval-wrap{padding:4px 2px 10px}.dsh-approval-card{display:flex;align-items:center;gap:10px;border:1px solid color-mix(in srgb,#b07a00 38%,var(--border));background:color-mix(in srgb,#b07a00 7%,var(--panel-1, #fff));border-radius:var(--radius);padding:10px 12px}.dsh-approval-icon{color:#b07a00;display:inline-flex;flex:none}.dsh-approval-main{flex:1;min-width:0}.dsh-approval-title{font-size:13px;font-weight:700;color:var(--text-1)}.dsh-approval-desc{font-size:12px;color:var(--text-2);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dsh-approval-desc code{background:color-mix(in srgb,#b07a00 12%,transparent);border-radius:var(--radius);padding:1px 5px;font-size:11.5px}.dsh-approval-actions{display:inline-flex;gap:8px;flex:none}.dsh-approval-deny,.dsh-approval-allow{border:1px solid var(--border);background:var(--panel-2);color:var(--text-2);border-radius:var(--radius);padding:6px 14px;font-size:12.5px;cursor:pointer}.dsh-approval-allow{background:var(--primary);border-color:var(--primary);color:#fff}.dsh-approval-deny:hover{border-color:#c0392b;color:#c0392b}.dsh-approval-allow:hover{filter:brightness(1.06);color:#fff}.dsh-question-wrap{padding:4px 2px 10px;display:flex;flex-direction:column;gap:8px}.dsh-question-card{border:1px solid var(--border);background:var(--panel-1, #fff);border-radius:var(--radius);padding:10px 12px;display:flex;flex-direction:column;gap:8px}.dsh-question-head{display:flex;align-items:baseline;gap:8px}.dsh-question-header{flex:none;font-size:11px;font-weight:700;color:var(--primary);background:var(--primary-soft);border-radius:var(--radius-pill);padding:1px 8px}.dsh-question-text{font-size:13px;font-weight:600;color:var(--text-1)}.dsh-question-options{display:flex;flex-direction:column;align-items:stretch;gap:6px}.dsh-question-opt{display:flex;width:100%;flex:1 1 auto;align-items:center;flex-wrap:wrap;gap:5px;border:1px solid var(--border);background:var(--panel-2);color:var(--text-2);border-radius:var(--radius);padding:5px 10px;font-size:12.5px;cursor:pointer;max-width:100%;box-sizing:border-box;text-align:left}.dsh-question-opt span{flex:1 1 auto;min-width:0;white-space:normal;word-break:break-word}.dsh-question-opt small{flex:1 1 100%;color:var(--text-3, #98a2b8);font-size:11px}.dsh-question-opt.is-on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);font-weight:600}.dsh-question-custom{border:1px solid var(--border);background:var(--bg);color:var(--text-1);border-radius:var(--radius);padding:7px 10px;font-size:12.5px;width:100%;box-sizing:border-box}.dsh-question-custom:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 13%,transparent)}.dsh-question-actions{display:flex;justify-content:flex-end}.dsh-question-submit{border:none;background:var(--primary);color:#fff;border-radius:var(--radius);padding:7px 18px;font-size:12.5px;cursor:pointer}.dsh-question-submit:hover,.dsh-question-submit:active{background:#3d4bd8;color:#fff;filter:none}.dsh-composer-main{position:relative;flex:1;min-width:0;display:flex;flex-direction:column}.dsh-composer-toolbar{display:flex;align-items:center;gap:6px;padding:2px 2px 0}.dsh-interrupt-ask{margin-top:6px;border:1px solid var(--border, #e2e6ec);border-radius:var(--radius);padding:8px 10px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--panel-2, #f6f8fb)}[data-theme=dark] .dsh-interrupt-ask,[data-theme=dark] .dsh-interrupt-ask:not([data-theme=light]){background:#1d2228}.dsh-interrupt-ask-text{font-size:12px;color:var(--text-1);white-space:nowrap}.dsh-interrupt-ask-actions{display:flex;gap:6px;flex:none}.dsh-interrupt-ask-btn{border:1px solid var(--border, #d5dae3);background:transparent;color:var(--text-1);border-radius:var(--radius);padding:4px 10px;font-size:12px;cursor:pointer;display:flex;flex-direction:column;align-items:center;line-height:1.25;gap:1px}.dsh-interrupt-ask-btn small{font-size:10px;color:var(--text-2);font-weight:400}.dsh-interrupt-ask-btn:hover{background:var(--panel-2, #f0f3f8)}.dsh-interrupt-ask-btn.is-primary{background:#4176e6;border-color:#4176e6;color:#fff}.dsh-interrupt-ask-btn.is-primary small{color:#fffc}.dsh-interrupt-ask-btn.is-primary:hover{background:#5686fe}.dsh-interrupt-ask-btn.is-cancel{color:var(--text-2)}.dsh-queue-dock{box-sizing:border-box;width:100%;margin:0;border:1px solid var(--border, #e2e6ec);border-radius:var(--radius);background:var(--panel-2, #f6f8fb);padding:3px 6px;max-height:132px;overflow-y:auto}[data-theme=dark] .dsh-queue-dock{background:#1d2228}.dsh-queue-head{display:flex;align-items:center;justify-content:space-between;font-size:11.5px;color:var(--text-2);padding:1px 2px 3px}.dsh-queue-head-btn{border:1px solid var(--border, #d5dae3);background:transparent;color:var(--text-1);border-radius:var(--radius);padding:2px 8px;font-size:11px;cursor:pointer}.dsh-queue-head-btn:hover{background:var(--panel-2, #f0f3f8)}.dsh-queue-list{display:flex;flex-direction:column;gap:3px}.dsh-queue-row{display:flex;align-items:center;gap:6px;border-radius:var(--radius);padding:2px 5px;font-size:12px;color:var(--text-1)}.dsh-queue-row:hover{background:#4176e612}.dsh-queue-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dsh-queue-edit{flex:1;min-width:0;border:1px solid var(--border, #d5dae3);border-radius:var(--radius);background:transparent;color:var(--text-1);font-size:12px;padding:2px 6px;box-sizing:border-box}.dsh-queue-actions{display:flex;gap:3px;flex:none}.dsh-queue-act{border:none;background:transparent;color:var(--text-2);width:22px;height:22px;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.dsh-queue-act:hover{background:#0000000f;color:var(--text-1)}[data-theme=dark] .dsh-queue-act:hover{background:#ffffff1a}.dsh-queue-act:disabled{opacity:.4;cursor:default}.dsh-queue-act.is-steer{color:#4176e6}.dsh-queue-act.is-save{color:#2e9e5b}.dsh-toolbar-spacer{flex:1}.dsh-composer-input{width:100%;box-sizing:border-box;border:none;background:transparent;color:var(--text-1);font:inherit;resize:none;line-height:22px;min-height:44px;padding:2px 0;max-height:160px;overflow-y:auto}.dsh-composer-input:focus{outline:none}.dsh-composer-images{display:flex;flex-wrap:wrap;gap:6px;padding:6px 0 2px}.dsh-composer-img{position:relative;display:inline-flex;width:52px;height:52px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);background:var(--panel-2)}.dsh-composer-img img{width:100%;height:100%;object-fit:cover}.dsh-composer-img-null{font-size:9px;color:var(--text-2);padding:4px;overflow:hidden}.dsh-composer-img-up{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:14px;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.6)}.dsh-composer-img-del{position:absolute;top:1px;right:1px;width:16px;height:16px;border:none;border-radius:var(--radius-circle);background:#0f172aa6;color:#fff;font-size:10px;line-height:1;cursor:pointer;padding:0}.dsh-attach-btn{display:inline-flex;align-items:center;justify-content:center;flex:none;width:28px;height:28px;border:none;border-radius:var(--radius);background:transparent;color:var(--text-2);cursor:pointer;padding:0}.dsh-attach-btn:hover{background:var(--primary-soft);color:var(--primary)}.dsh-trigger-menu{position:absolute;left:0;bottom:calc(100% + 8px);z-index:40;min-width:220px;max-width:320px;background:var(--panel-1, #fff);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 10px 28px #0f172a2e;padding:5px;display:flex;flex-direction:column;max-height:260px;overflow-y:auto}.dsh-trigger-menu button{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-start;gap:2px 8px;border:none;background:transparent;color:var(--text-1);text-align:left;border-radius:var(--radius);padding:6px 9px;font-size:12.5px;cursor:pointer}.dsh-trigger-menu button:hover{background:var(--primary-soft)}.dsh-trigger-menu button b{flex:0 0 auto;min-width:92px;color:var(--primary)}.dsh-trigger-menu button span{flex:1 1 auto;min-width:0;text-align:left;color:var(--text-2);font-size:11.5px}.dsh-user-images{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;margin-bottom:6px}.dsh-user-image{max-width:160px;max-height:120px;border-radius:var(--radius);border:1px solid var(--border)}.conv-export{border:none;background:transparent;color:var(--text-2);cursor:pointer;border-radius:var(--radius);width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;padding:0;opacity:0;transition:opacity .15s ease}.conv-item:hover .conv-export{opacity:1}.conv-export:hover{background:var(--primary-soft);color:var(--primary)}.dsh-jobs-chips{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.dsh-jobs-chip{font-size:11px;font-weight:500;padding:2px 9px;border-radius:var(--radius-pill);border:1px solid transparent;white-space:nowrap;height:22px;display:inline-flex;align-items:center}.dsh-jobs-chip.is-run{color:#9a6a00;background:#b07a0012;border-color:#b07a0047}.dsh-jobs-chip.is-done{color:#12805c;background:#12805c12;border-color:#12805c47}.dsh-jobs-chip.is-fail{color:#c0392b;background:#c0392b12;border-color:#c0392b47}.dsh-jobs-cancel{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;border:1px solid rgba(192,57,43,.4);background:var(--panel);color:#c0392b;border-radius:var(--radius-pill);padding:2px 10px;height:22px;white-space:nowrap;cursor:pointer;transition:background .15s ease}.dsh-jobs-cancel:hover{background:#fbebea}.dsh-jobs-cancel:active{transform:translateY(1px)}.dsh-jobs-cancel:focus-visible{outline:2px solid rgba(192,57,43,.45);outline-offset:2px}.dsh-subagent-row{display:flex;align-items:center;gap:7px;padding:6px 2px;color:var(--text-2);font-size:12px}.dsh-subagent-row svg{color:#8b5cf6;flex:none}.dsh-subagent-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dsh-subagent-output{color:var(--text-3, #98a2b8)}.settings-tabs{display:flex;gap:4px;padding:10px 16px 0}.settings-tabs button{border:none;background:transparent;color:var(--text-2);font-size:13px;padding:7px 12px;border-radius:var(--radius) var(--radius) 0 0;cursor:pointer;border-bottom:2px solid transparent}.settings-tabs button.is-on{color:var(--primary);font-weight:700;border-bottom-color:var(--primary)}.settings-body{padding:14px 16px 18px;overflow-y:auto}.settings-section{display:flex;flex-direction:column;gap:12px}.settings-row{display:flex;align-items:center;gap:12px}.settings-label{flex:none;width:88px;font-size:12.5px;color:var(--text-2)}.settings-input{flex:1;min-width:0;border:1px solid var(--border);background:var(--bg);color:var(--text-1);border-radius:var(--radius);padding:7px 10px;font-size:12.5px}.settings-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 13%,transparent)}.settings-seg{display:inline-flex;gap:4px}.settings-seg button{border:1px solid var(--border);background:var(--panel-2);color:var(--text-2);border-radius:var(--radius);padding:5px 12px;font-size:12px;cursor:pointer}.settings-seg button.is-on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);font-weight:700}.settings-save{align-self:flex-start;border:none;background:var(--primary);color:#fff;border-radius:var(--radius);padding:7px 18px;font-size:12.5px;cursor:pointer}.settings-save:hover{filter:brightness(1.06);color:#fff}.settings-note{font-size:11.5px;color:var(--text-3, #98a2b8)}.settings-about{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;margin:14px 18px 4px;padding-top:10px;border-top:1px solid var(--border, #e5e7eb);font-size:11.5px;color:var(--text-3, #98a2b8)}.settings-about .footer-notices{color:var(--text-2, #475569)}.settings-about-hint{color:var(--text-3, #98a2b8)}.settings-plugins-list{display:flex;flex-direction:column;gap:4px;max-height:280px;overflow-y:auto}.settings-plugin-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius);border:1px solid var(--border)}.settings-plugin-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;color:var(--text-1)}.settings-plugin-state{flex:none;font-size:11px;color:#12805c;background:#12805c1a;border-radius:var(--radius-pill);padding:1px 8px}.settings-plugin-state.is-off{color:var(--text-3, #98a2b8);background:var(--panel-2)}.settings-plugin-btn{flex:none;border:1px solid var(--border);background:var(--panel-2);color:var(--text-2);border-radius:var(--radius);padding:3px 10px;font-size:11.5px;cursor:pointer}.settings-plugin-btn:hover{color:var(--primary);border-color:var(--primary)}.settings-config-card{display:flex;flex-direction:column;gap:8px;border:1px solid var(--border);border-radius:var(--radius);padding:10px;margin-top:4px}.settings-config-head{display:flex;align-items:center;justify-content:space-between}.settings-config-head b{font-size:12px;color:var(--text-2)}.settings-config-close{border:none;background:transparent;color:var(--text-2);cursor:pointer;font-size:14px}.settings-config-area{width:100%;box-sizing:border-box;background:#0f172a;color:#e2e8f0;border:none;border-radius:var(--radius);padding:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;resize:vertical}[data-theme=dark]{--bg: #0f1420;--panel-1: #151b2a;--panel-2: #1a2233;--text-1: #e7ecf5;--text-2: #aab3c5;--text-3: #7d8799;--border: #2a3348;--primary: #7c8bff;--primary-soft: #232c44}.dsh-live-badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:500;color:#1a7aa8;background:#1a7aa812;border:1px solid rgba(26,122,168,.28);border-radius:var(--radius-pill);padding:2px 9px;height:22px;white-space:nowrap}.dsh-live-dot{width:6px;height:6px;border-radius:var(--radius-circle);background:currentColor;animation:dsh-live-pulse 1.1s ease-in-out infinite}@keyframes dsh-live-pulse{0%,to{opacity:.35}50%{opacity:1}}html.no-select,html.no-select *{user-select:none!important;-webkit-user-select:none!important}.sf-list{display:flex;flex-direction:column;gap:6px}.sf-group{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:#fff}.sf-group-head{display:flex;align-items:center;gap:7px;width:100%;border:none;background:transparent;padding:7px 10px;font-size:12.5px;color:var(--text-1);cursor:pointer;text-align:left}.sf-group-head:hover{background:var(--panel-2)}.sf-caret{color:var(--primary);flex:none;width:20px;font-size:16px;line-height:1}.sf-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.sf-count{flex:none;font-size:11px;color:var(--text-3);background:var(--panel-2);border-radius:var(--radius-pill);padding:1px 7px}.sf-file{padding:8px 10px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:6px}.sf-file-name{font-size:11.5px;color:var(--text-2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.dsh-jobs-chips{position:relative;cursor:pointer}.dsh-jobs-chips.is-open .dsh-jobs-chip.is-run{background:#10b98129}.dsh-jobs-panel{z-index:60;width:300px;max-height:380px;overflow-y:auto;background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:0 12px 32px #0f172a2e;padding:8px}.dsh-jobs-panel-head{font-size:11.5px;font-weight:700;color:var(--text-2);padding:2px 6px 6px;display:flex;align-items:center;justify-content:space-between}.dsh-jobs-panel-close{border:none;background:transparent;color:var(--text-3);font-size:15px;line-height:1;cursor:pointer;padding:0 4px}.dsh-jobs-panel-close:hover{color:var(--red)}.dsh-jobs-row{display:flex;align-items:center;gap:7px;padding:2px 6px;min-height:24px;box-sizing:border-box;border-radius:var(--radius);font-size:12px}.dsh-jobs-row:hover{background:var(--panel-2)}.dsh-jobs-dot{width:7px;height:7px;border-radius:var(--radius-circle);flex:none}.dsh-jobs-dot.is-run{background:#10b981}.dsh-jobs-dot.is-done{background:var(--primary)}.dsh-jobs-dot.is-fail{background:var(--red)}.dsh-jobs-dot.is-queued{background:#f59e0b}.dsh-jobs-id{flex:1;min-width:0;font-family:var(--mono);font-size:11px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dsh-jobs-st{flex:none;font-size:11px;color:var(--text-3)}.dsh-jobs-row-cancel{flex:none;border:1px solid var(--border-strong);background:transparent;color:var(--red);font-size:10.5px;line-height:1.2;border-radius:var(--radius);padding:1px 6px;cursor:pointer}.dsh-jobs-row-cancel:hover{background:var(--red-soft)}.dsh-jobs-row-dl{flex:none;border:1px solid var(--border-strong);background:transparent;color:var(--green, #16a34a);font-size:10.5px;line-height:1.2;border-radius:var(--radius);padding:1px 6px;cursor:pointer;text-decoration:none;margin-left:6px}.dsh-jobs-row-dl:hover{background:var(--green-soft, #dcfce7)}.dsh-jobs-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:59;background:transparent}.dsh-mermaid{margin:10px 0;padding:14px 16px;border:1px solid var(--border-strong, #cdd7e8);border-radius:var(--radius);background:var(--panel-2, #f8faff);overflow:auto;display:flex;justify-content:center;align-items:flex-start}.dsh-mermaid svg{max-width:100%;height:auto;display:block;margin:0 auto}.dsh-mermaid .error-text{color:var(--red, #dc2626)}.flow-progress-card{margin:0;border:1px solid var(--border-strong, #cdd7e8);border-radius:var(--radius);background:var(--panel-2, #f8faff);overflow:hidden}.flow-progress-head{display:flex;align-items:center;gap:7px;padding:8px 12px;font-size:12px;font-weight:600;color:var(--text, #1c2433);border-bottom:1px solid var(--border, #e3e8f2)}.flow-progress-body{padding:6px 10px;max-height:45vh;overflow:auto}.flow-progress-body .dsh-mermaid{margin:4px 0}.flow-progress-empty{padding:12px 6px;font-size:12px;color:var(--text-3, #8b98ad)}.trash-panel{border-top:1px solid var(--border, #e3e8f2);padding:8px;max-height:30vh;overflow:auto}.trash-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:var(--text-3, #8b98ad);padding-bottom:6px}.trash-hint{flex:1 1 auto;min-width:0;line-height:1.35}.trash-clean{border:1px solid var(--border-strong, #cdd7e8);border-radius:var(--radius);background:transparent;color:var(--text-2, #5a6a82);font-size:11px;padding:3px 8px;cursor:pointer;flex:0 0 auto}.trash-clean:disabled{opacity:.5;cursor:not-allowed}.trash-clean--danger{border-color:var(--red, #dc2626);background:var(--red, #dc2626);color:#fff}.trash-clean--danger:hover:not(:disabled){background:var(--red, #dc2626);border-color:var(--red, #dc2626);color:#fff;filter:brightness(1.06)}.trash-clean--danger:disabled{opacity:.7;background:var(--red, #dc2626);border-color:var(--red, #dc2626);color:#fff}.trash-item{display:flex;align-items:center;gap:8px;padding:6px 2px;border-top:1px dashed var(--border, #e3e8f2)}.trash-title{flex:1;font-size:12px;color:var(--text-2, #5a6a82);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-time{font-size:11px;color:var(--text-3, #8b98ad);flex-shrink:0}.trash-restore{border:1px solid var(--teal, #0d9488);color:var(--teal, #0d9488);background:transparent;border-radius:var(--radius);font-size:11px;padding:2px 10px;cursor:pointer;flex-shrink:0}.trash-empty{font-size:12px;color:var(--text-3, #8b98ad);padding:8px 2px}.af-groups{display:flex;flex-direction:column;gap:8px}.af-group{border:1px solid var(--border);border-radius:var(--radius);background:#fff;overflow:hidden}.af-head{display:flex;align-items:center;gap:6px;width:100%;padding:9px 10px;background:var(--panel-2);border:none;cursor:pointer;font:inherit;text-align:left}.af-head:hover{background:var(--bg)}.af-toggle{display:flex;align-items:center;gap:6px;flex:1;min-width:0;background:transparent;border:none;padding:0;font:inherit;text-align:left;cursor:pointer}.af-package{flex:none;font-size:11.5px;padding:3px 10px;border:1px solid var(--primary);border-radius:var(--radius);color:var(--primary);background:#fff;text-decoration:none;white-space:nowrap}.af-package:hover{background:var(--primary);color:#fff}.af-name{flex:1;min-width:0;font-weight:700;font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.af-body{padding:4px 6px 6px;display:flex;flex-direction:column}.af-item{border-radius:var(--radius)}.af-item:hover{background:var(--panel-2)}.af-row{display:flex;align-items:center;gap:8px;padding:6px;cursor:pointer}.af-row.is-on{background:#eef1fb}.af-btn{padding:3px 9px;font-size:11.5px;flex:none}.af-src{display:inline-block;margin-left:6px;padding:0 6px;border-radius:var(--radius);font-size:10.5px;font-weight:600;color:#0e7490;background:#06b6d41f;vertical-align:1px}.af-more{padding:8px 6px 10px;text-align:center;font-size:11.5px;color:var(--text-3)}.af-preview{margin:2px 6px 6px;padding:8px 10px;background:#f7f8fb;border:1px solid var(--border);border-radius:var(--radius)}.af-preview pre{margin:0;font-size:11.5px;line-height:1.45;max-height:320px;overflow:auto;white-space:pre-wrap;word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.af-err{color:var(--red);font-size:12px}.af-doc{font-size:11.5px;line-height:1.55;color:var(--text-1, #26313f)}.af-doc p{margin:3px 0}.af-doc .af-docx-h{margin:8px 0 3px;font-size:13px}.af-doc h2.af-docx-h{font-size:13px;font-weight:700}.af-doc h3.af-docx-h,.af-doc h4.af-docx-h{font-size:12px;font-weight:700}.af-docx,.af-xlsx-wrap,.af-table-wrap{max-height:420px;overflow:auto}.af-table-wrap pre{margin:0;font-size:11.5px;white-space:pre-wrap;word-break:break-all}.af-xls{border-collapse:collapse;width:100%;font-size:11px}.af-xls th,.af-xls td{border:1px solid var(--border, #dde4f0);padding:2px 6px;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}.af-xls th{background:var(--panel-2, #eef1fb);font-weight:700;text-align:center;position:sticky;top:0}.af-xls td{text-align:right}.af-sheet{margin-bottom:8px;border:1px solid var(--border, #e3e8f2);border-radius:var(--radius);overflow:hidden}.af-sheet:last-child{margin-bottom:0}.af-sheet-name{display:flex;align-items:center;gap:8px;padding:4px 8px;background:var(--panel-2, #eef1fb);font-weight:700;font-size:12px;border-bottom:1px solid var(--border, #e3e8f2)}.af-sheet-meta{font-weight:400;font-size:10.5px;color:var(--text-3, #8b98ad)}.af-struct-wrap{display:flex;flex-direction:column}.af-struct{position:relative;height:360px;background:#fff;border:1px solid var(--border, #dde4f0);border-radius:var(--radius);overflow:hidden}.af-struct-state{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--text-3, #8b98ad);font-size:12px;text-align:center;padding:0 16px}.af-tools{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:6px 2px;font-size:11.5px;color:var(--text-2, #5a6a82)}.af-check{display:inline-flex;align-items:center;gap:4px;flex:none;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}.af-check input{flex:none;cursor:pointer}.af-img-wrap{display:flex;flex-direction:column;gap:4px}.af-img{max-width:100%;max-height:480px;border:1px solid var(--border, #dde4f0);border-radius:var(--radius);background:#fff}.af-pdf{width:100%;height:70vh;min-height:420px;border:1px solid var(--border, #dde4f0);border-radius:var(--radius);background:#fff}.af-note{margin:4px 0 0;font-size:11px;color:var(--text-3, #8b98ad)}.af-video-wrap{display:flex;flex-direction:column;gap:4px}.af-video{width:100%;max-height:480px;border:1px solid var(--border, #dde4f0);border-radius:var(--radius);background:#000}.cineb{display:flex;flex-direction:column;gap:7px}.cineb-canvas-wrap{position:relative;width:100%}.cineb-canvas{display:block;background:#fff;border:1px solid var(--border, #dde4f0);border-radius:var(--radius);cursor:grab;touch-action:none}.cineb-canvas:active{cursor:grabbing}.cineb-state{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:0 16px;text-align:center;border-radius:var(--radius);background:#ffffffbd;color:var(--text-3, #8b98ad);font-size:12px}.cineb-state.is-err{color:var(--red, #dc2626)}.cineb-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.cineb-bar .btn{padding:3px 9px;font-size:11.5px;border-radius:var(--radius)}.cineb-spacer{flex:1 1 auto}.cineb-sel{flex:none;max-width:190px;padding:3px 6px;border:1px solid var(--border-strong, #cdd7e8);border-radius:var(--radius);background:var(--panel, #fff);color:var(--text);font:inherit;font-size:11.5px}.cineb-sliders{display:flex;flex-direction:column;gap:3px}.cineb-sliders label{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--text-2, #5a6a82)}.cineb-sliders label>span{flex:none;width:78px;font-variant-numeric:tabular-nums}.cineb-sliders input[type=range]{flex:1 1 auto;min-width:0;height:16px;accent-color:var(--primary, #4f5df0)}.cineb-toggles{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:11.5px;color:var(--text-2, #5a6a82)}.cineb-toggles .af-check input:disabled+*{opacity:.5}.cineb-progress{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--text-2, #5a6a82)}.cineb-progress-bar{flex:1 1 auto;height:6px;border-radius:var(--radius-pill);background:var(--panel-2, #eef1fb);overflow:hidden}.cineb-progress-bar i{display:block;height:100%;background:var(--primary, #4f5df0);transition:width .12s linear}.cineb-export-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11.5px;color:var(--text-2, #5a6a82)}.cineb-export-row .btn{padding:3px 9px;font-size:11.5px}.cineb-hint{color:var(--text-3, #8b98ad)}.usage-users{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-2);flex-wrap:nowrap}.usage-users .is-me{color:var(--primary);font-weight:700}.pkg-float{position:fixed;top:80px;right:22px;z-index:1100;width:min(360px,calc(100vw - 44px));padding:12px 14px;border:1px solid var(--border-strong, #cdd7e8);border-radius:var(--radius);background:var(--panel, #fff);box-shadow:var(--shadow-lg, var(--shadow));display:flex;flex-direction:column;gap:8px;animation:ui-toast-in .25s ease}.pkg-float .pkg-state{margin-bottom:0}.pkg-float .pkg-meta,.pkg-float .pkg-warn,.pkg-float .pkg-err{margin-top:0}.pkg-float-ic{flex:none;width:18px;height:18px;border-radius:var(--radius-circle);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;line-height:1;color:#fff;background:var(--primary)}.pkg-float-ic.is-fail{background:var(--red)}.pkg-float-ic.is-ready{background:var(--green)}.pkg-float-actions{display:flex;justify-content:flex-end;gap:8px}.pkg-float-open .ui-toasts{top:300px}.pkg-state{display:flex;align-items:baseline;gap:10px;margin-bottom:8px}.pkg-state-label{font-size:13px;font-weight:700;color:var(--text)}.pkg-pct{margin-left:auto;font-size:18px;line-height:1;color:var(--primary);font-variant-numeric:tabular-nums}.pkg-pct.is-ready{color:var(--green)}.pkg-pct.is-failed{color:var(--red)}.pkg-bar{height:8px;border-radius:var(--radius-pill);background:var(--border);overflow:hidden}.pkg-bar>i{display:block;height:100%;width:0%;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--teal, #0d9488),var(--primary));transition:width .35s ease}.pkg-bar.is-indeterminate>i{width:35%!important;animation:pkg-indeterminate 1.2s ease-in-out infinite}.pkg-bar.is-ready>i{background:var(--green)}.pkg-bar.is-failed>i{background:var(--red)}@keyframes pkg-indeterminate{0%{transform:translate(-110%)}to{transform:translate(320%)}}.pkg-meta{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:8px;font-size:11.5px;color:var(--text-2);font-variant-numeric:tabular-nums}.pkg-warn{margin-top:8px;padding:6px 8px;border-radius:var(--radius);background:var(--amber-soft, #fef3e2);color:#9a6a00;font-size:11.5px;line-height:1.45}.pkg-err{margin-top:8px;padding:6px 8px;border-radius:var(--radius);background:var(--red-soft, #fdecec);color:var(--red);font-size:11.5px;line-height:1.45;max-height:96px;overflow:auto;word-break:break-word}.ui-toasts{transition:top .2s ease}@media (max-width: 520px){.pkg-float{left:12px;right:12px;width:auto}.pkg-float-open .ui-toasts{top:320px}}@media (prefers-reduced-motion: reduce){.pkg-float{animation:none}.pkg-bar>i{transition:none}.pkg-bar.is-indeterminate>i{animation-duration:3s}}.ui-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:24px;animation:ui-mask-in .15s ease}.ui-modal{display:flex;flex-direction:column;outline:none;width:min(560px,92vw);max-height:min(72vh,calc(100vh - 48px));background:var(--panel, #fff);border:1px solid var(--border-strong, #cdd7e8);border-radius:var(--radius);box-shadow:0 24px 64px #0f172a47;overflow:hidden;animation:ui-card-in .18s ease}.ui-modal-s{width:min(400px,92vw)}.ui-modal-m{width:min(560px,92vw)}.ui-modal-l{width:min(720px,92vw)}.ui-modal-xl{width:min(1120px,94vw);max-height:calc(100vh - 40px)}.ui-modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border, #e3e8f2);background:var(--panel-2, #f8faff)}.ui-modal.is-danger .ui-modal-head{background:var(--red-soft, #fde8e8)}.ui-modal-title{font-size:15px;font-weight:700;color:var(--text, #1c2433)}.ui-modal.is-danger .ui-modal-title{color:var(--red, #dc2626)}.ui-modal-close{border:none;background:transparent;color:var(--text-3);font-size:18px;line-height:1;width:28px;height:28px;border-radius:var(--radius);cursor:pointer}.ui-modal-close:hover{background:var(--red-soft);color:var(--red)}.ui-modal-body{padding:14px 16px;overflow-y:auto;font-size:13px;color:var(--text, #1c2433)}.ui-modal-foot{display:flex;justify-content:flex-end;gap:10px;padding:12px 16px;border-top:1px solid var(--border, #e3e8f2);background:var(--panel, #fff)}.ui-confirm-warn{color:var(--red, #dc2626);margin:8px 0 0;font-size:12.5px}.ui-btn{height:30px;padding:0 14px;border-radius:var(--radius);font-size:13px;cursor:pointer;border:1px solid var(--border-strong, #cdd7e8);background:transparent;color:var(--text, #1c2433)}.ui-btn:hover{background:var(--panel-2, #f8faff)}.ui-btn-primary{border-color:var(--primary);background:var(--primary);color:#fff}.ui-btn-primary:hover{background:var(--primary);border-color:var(--primary);color:#fff;filter:brightness(1.06)}.ui-btn-danger{border-color:var(--red, #dc2626);background:var(--red, #dc2626);color:#fff}.ui-btn-danger:hover{background:var(--red, #dc2626);border-color:var(--red, #dc2626);color:#fff;filter:brightness(1.06)}.ui-btn--sm{height:28px;padding:0 10px;font-size:12.5px;gap:5px}.ui-btn-ghost{border-color:transparent;background:transparent;color:var(--text-2, #5a6a82)}.ui-btn-ghost:hover{background:var(--primary-soft, #eef0ff);border-color:transparent;color:var(--primary, #4f5df0)}.ui-btn:focus-visible,.ui-btn-primary:focus-visible,.ui-btn-danger:focus-visible,.ui-btn-ghost:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary, #4f5df0) 22%,transparent)}.ui-btn:disabled,.ui-btn-ghost:disabled{background:var(--panel-2, #f8faff);border-color:var(--border, #e3e8f2);color:var(--text-3, #8b98ad);filter:none;box-shadow:none;cursor:not-allowed}.ui-btn-primary:disabled{background:var(--border-strong, #cdd7e8);border-color:transparent;color:var(--text-3, #8b98ad);filter:none;box-shadow:none;cursor:not-allowed}.ui-btn-danger:disabled{background:var(--red, #dc2626);border-color:var(--red, #dc2626);color:#fff;opacity:.7;filter:none;box-shadow:none;cursor:not-allowed}.ui-toasts{position:fixed;top:80px;right:22px;z-index:1200;display:flex;flex-direction:column;align-items:flex-end;gap:8px;pointer-events:none}.ui-toast{display:flex;align-items:center;gap:8px;min-width:200px;max-width:min(420px,80vw);padding:11px 14px;border-radius:var(--radius);background:var(--panel, #fff);border:1px solid var(--border-strong, #cdd7e8);box-shadow:var(--shadow-lg);font-size:13px;font-weight:600;color:var(--text, #1c2433);animation:ui-toast-in .25s ease}.ui-toast-ic{flex:none;width:18px;height:18px;border-radius:var(--radius-circle);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;background:var(--primary)}.ui-toast.is-success .ui-toast-ic{background:#16a34a}.ui-toast.is-error .ui-toast-ic{background:var(--red, #dc2626)}@keyframes ui-mask-in{0%{opacity:0}to{opacity:1}}@keyframes ui-card-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}@keyframes ui-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.cineb-page{max-width:1240px;margin:0 auto;padding:28px 24px 48px}.cineb-page-head h1{margin:0 0 6px;font-size:20px;letter-spacing:.3px;color:var(--text)}.cineb-page-head p{margin:0 0 18px;font-size:12.5px;color:var(--text-2, #5a6a82)}.cineb-page-state{font-size:13px;color:var(--text-3, #8b98ad)}.cineb-page-state.is-err{color:var(--red, #dc2626)}.cineb-page-body{padding:14px;border:1px solid var(--border, #dde4f0);border-radius:var(--radius);background:#fff}body.cineb-standalone{padding-left:0!important}.artifact-degraded{display:flex;align-items:center;gap:8px;margin:8px 12px 4px;padding:7px 10px;border-radius:var(--radius);font-size:12px;line-height:1.5;color:#b45309;background:#fffbeb;border:1px solid #fde68a}.artifact-degraded .dot{width:6px;height:6px;border-radius:var(--radius-circle);background:#f59e0b;flex:0 0 auto}.artifact-degraded>span:nth-child(2){flex:1 1 auto;min-width:0;word-break:break-word}.artifact-degraded .dsh-jobs-chip{flex:0 0 auto;cursor:pointer}.col1-hint{margin:0 12px 6px;padding:5px 9px;border-radius:var(--radius);font-size:12px;line-height:1.5;color:var(--muted, #64748b);background:#f8fafc;border:1px dashed var(--border, #dde4f0)}.col1-hint.is-warn{color:#b45309;background:#fffbeb;border-color:#fde68a;border-style:solid}.node-quiet-dot{display:inline-block;width:6px;height:6px;margin-left:6px;border-radius:var(--radius-circle);background:var(--muted, #94a3b8);opacity:.55;vertical-align:middle}.dsh-cmd-card{margin:6px 0;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-1, #fff);font-size:12.5px;line-height:1.55}.dsh-cmd-card.is-error{border-color:color-mix(in srgb,#dc2626 42%,transparent);background:var(--red-soft, #fdecec)}.dsh-cmd-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.dsh-cmd-head b{color:var(--primary);font-family:var(--font-mono, ui-monospace, monospace)}.dsh-cmd-args{color:var(--text-2);font-size:12px;word-break:break-word}.dsh-cmd-state{color:var(--text-2);font-size:11.5px}.dsh-cmd-text{margin-top:4px;color:var(--text-1);white-space:pre-wrap;word-break:break-word}.dsh-reminder-card{display:flex;align-items:baseline;gap:8px;margin:6px 0;padding:7px 10px;border:1px dashed var(--border);border-radius:var(--radius);background:var(--primary-soft, #f1f5f9);font-size:12.5px;line-height:1.55}.dsh-reminder-tag{flex:0 0 auto;font-size:11px;color:var(--primary);border:1px solid var(--primary);border-radius:var(--radius);padding:0 5px}.dsh-reminder-text{color:var(--text-1);word-break:break-word}.core-map-server{margin:0 0 14px}.core-map-head{display:flex;gap:10px;align-items:baseline;margin:0 0 6px;font-size:13px}.core-map-row{display:flex;gap:8px;align-items:center;margin:3px 0}.core-map-tag{flex:none;width:46px;font-size:11px;color:var(--text-3, #8b98ad);text-align:right}.core-map-cells{display:flex;flex-wrap:wrap;gap:2px}.core-cell{display:inline-block;width:11px;height:11px;border-radius:var(--radius);background:var(--primary, #4f5df0)}.core-cell.is-free{background:var(--surface-2, #eef1f6);box-shadow:inset 0 0 0 1px var(--border, #d8dee9)}.core-cell.is-conflict{background:repeating-linear-gradient(45deg,#c33,#c33 2px,#fff 2px,#fff 4px)}.core-legend{display:flex;flex-wrap:wrap;gap:12px;margin:8px 0 0;font-size:12px}.core-legend-item{display:inline-flex;align-items:center;gap:5px}.core-legend-item i{display:inline-block;width:10px;height:10px;border-radius:var(--radius)}.core-legend-item i.is-free{background:var(--surface-2, #eef1f6);box-shadow:inset 0 0 0 1px var(--border, #d8dee9)}.board-shell{position:relative;flex:1;min-width:0;min-height:0;width:100%;height:100%;overflow:hidden;background:var(--canvas-bg)}.board-readonly-veil{position:absolute;top:0;right:0;bottom:0;left:0;z-index:80;background:transparent;cursor:default}.showcase-boot-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:100vh;padding:24px;text-align:center;color:var(--text-2);font-family:var(--font)}.showcase-boot-error b{font-size:18px;color:var(--text)}.board-viewport{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.board-viewport.is-pan{cursor:grab}.board-viewport.is-dragover{outline:1px dashed var(--primary);outline-offset:-2px}.board-svg{display:block;box-shadow:var(--shadow-lg);touch-action:none}.board-rail{position:absolute;left:10px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:4px;padding:6px;background:color-mix(in srgb,var(--panel) 94%,transparent);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);z-index:5}.board-railitem{width:30px;height:28px;display:grid;place-items:center;background:transparent;border:1px solid transparent;border-radius:var(--radius);color:var(--text-2);font-size:14px;line-height:1;cursor:pointer}.board-railitem:hover{background:var(--panel-2);color:var(--text)}.board-railitem.is-on{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.board-railsep{display:block;height:1px;margin:3px 2px;background:var(--border)}.board-topbar{position:absolute;top:10px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:6px;flex-wrap:wrap;max-width:calc(100% - 380px);padding:5px 8px;background:color-mix(in srgb,var(--panel) 94%,transparent);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);z-index:6}.board-zoom{min-width:44px;text-align:center;font-size:12px;color:var(--text-2)}.board-save{font-size:12px;color:var(--text-3)}.board-boardpick{position:relative}.board-popup{position:absolute;top:32px;left:0;min-width:260px;padding:8px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:8}.board-panel{position:absolute;right:10px;top:10px;bottom:10px;display:flex;flex-direction:column;background:color-mix(in srgb,var(--panel) 96%,transparent);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);z-index:7;overflow:hidden}.board-panel.is-collapsed{width:44px}.board-panel-resize{position:absolute;left:0;top:0;bottom:0;width:5px;cursor:col-resize}.board-mini{flex:none;width:30px;height:30px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;line-height:1;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-2);cursor:pointer}.board-mini:hover{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.board-panel-tabs{display:flex;align-items:center;gap:2px;padding:6px;border-bottom:1px solid var(--border)}.board-tab{flex:1;padding:4px 6px;font-size:12px;color:var(--text-2);background:transparent;border:1px solid transparent;border-radius:var(--radius);cursor:pointer}.board-tab:hover{background:var(--panel-2)}.board-tab.is-on{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.board-panel-body{flex:1;min-height:0;overflow:auto;padding:8px}.board-drawer{position:absolute;left:62px;top:10px;bottom:10px;width:290px;display:flex;flex-direction:column;gap:8px;padding:10px;overflow:auto;background:color-mix(in srgb,var(--panel) 96%,transparent);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);z-index:6}.board-drawer-head{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-2)}.board-statusbar{position:absolute;left:62px;bottom:10px;display:flex;align-items:center;gap:10px;padding:4px 10px;font-size:12px;color:var(--text-2);background:color-mix(in srgb,var(--panel) 92%,transparent);border:1px solid var(--border);border-radius:var(--radius-pill);z-index:5}.board-status-msg{color:var(--primary)}.board-ctxmenu{position:absolute;min-width:160px;padding:4px;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:20}.board-ctxitem{text-align:left;padding:5px 8px;font-size:12px;color:var(--text);background:transparent;border:0;border-radius:var(--radius);cursor:pointer}.board-ctxitem:hover:not(:disabled){background:var(--primary-soft);color:var(--primary)}.board-ctxitem:disabled{color:var(--text-3);cursor:default}.board-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;padding:18px;background:color-mix(in srgb,var(--bg) 55%,transparent);display:flex;align-items:stretch;justify-content:center}.board-overlay.is-center{align-items:center}.board-help{max-width:560px;padding:14px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.board-help ul{margin:8px 0;padding-left:18px;font-size:13px;line-height:1.9;color:var(--text-2)}.board-chartpane{display:flex;flex-direction:column;gap:8px}.board-chart-preview{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:4px}.board-chart-preview svg{width:100%;height:auto;display:block}.board-actions{display:flex;flex-wrap:wrap;gap:6px}.board-history{margin:6px 0;padding-left:16px;display:flex;flex-direction:column;gap:4px}.board-layer.is-dim{opacity:.38}.board-layer-grip{color:var(--text-3);cursor:grab;font-size:12px}.board-hint{font-size:11px;color:var(--text-3)}.se-editor{display:flex;flex-direction:column;min-height:0}.se-editor .board-editor-body{min-height:0}.se-flex{flex:1}.se-dirty{font-size:11.5px;color:var(--text-3)}.se-dirty[data-dirty="1"]{color:var(--warn, #b45309);font-weight:600}.se-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid var(--line, #e5e8f0)}.se-supercell{display:inline-flex;align-items:center;gap:4px}.se-num{width:74px}.se-atoms{display:flex;flex-direction:column;gap:2px;max-height:320px;overflow:auto}.se-atom-row{display:grid;grid-template-columns:34px 44px repeat(3,1fr) 48px;gap:4px;align-items:center;padding:2px 4px;border-radius:var(--radius)}.se-atom-row.is-head{font-size:11px;color:var(--text-3);position:sticky;top:0;background:var(--surface, #fff)}.se-atom-row.is-sel{background:color-mix(in srgb,var(--primary) 14%,transparent)}.se-atom-row .se-idx{font-size:11px;color:var(--text-3)}.se-atom-row .se-el,.se-atom-row .se-num{width:100%;min-width:0}.se-atom-row .se-occ{font-size:11px;color:var(--text-3);text-align:right}.se-addrow{display:flex;align-items:center;gap:4px;margin-top:6px;flex-wrap:wrap;row-gap:6px}.se-addrow .board-mini,.se-addrow .board-btn{white-space:nowrap;flex:0 0 auto}.se-addrow .board-hex[data-ctl=structure-atom-filter]{flex:0 0 78px;width:78px}.se-canvas-wrap{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:12px}.se-canvas{display:block;max-width:100%;max-height:100%;width:auto;height:auto}.se-status{position:absolute;left:10px;right:10px;bottom:8px;font-size:11.5px;color:var(--text-3);background:color-mix(in srgb,var(--surface, #fff) 82%,transparent);padding:4px 8px;border-radius:var(--radius)}.se-stage{position:relative}.se-gpu{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;--struct-height: 100%;--struct-min-width: 0}.mv-mount{position:absolute;top:0;right:0;bottom:0;left:0}.se-side{overflow:auto}.se-sec{border-bottom:1px solid var(--line, #e5e8f0)}.se-sec-head{display:flex;align-items:center;gap:6px;width:100%;padding:7px 10px;background:none;border:0;cursor:pointer;color:inherit;font:inherit}.se-sec-title{font-size:12px;font-weight:600}.se-sec-hint{font-size:11px;color:var(--text-3);margin-left:auto}.se-sec-caret{color:var(--text-3);font-size:11px}.se-sec-body{padding:0 10px 10px;display:flex;flex-direction:column;gap:6px}.se-bonds{display:flex;flex-direction:column;gap:2px;max-height:220px;overflow:auto}.se-bond-row{display:grid;grid-template-columns:1fr 92px 40px;gap:4px;align-items:center;font-size:11.5px}.se-measure{display:flex;flex-direction:column;gap:3px}.se-measure-row{display:grid;grid-template-columns:54px 1fr auto;gap:6px;align-items:baseline;font-size:12px}.se-measure-site{color:var(--text-3);font-size:11.5px}.se-sym{font-size:12px;line-height:1.7}.se-display{display:flex;flex-direction:column;gap:6px}.se-frames{display:inline-flex;align-items:center;gap:6px}.se-frame-slider{width:132px}.se-frame-label{font-size:11.5px;color:var(--text-3);white-space:nowrap}.traj-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;background:var(--surface, #fff);display:flex;flex-direction:column}.traj-head{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line, #e5e8f0)}.traj-body{position:relative;flex:1;min-height:0}.traj-mount{position:absolute;top:0;right:0;bottom:0;left:0}.se-rdf{display:block;width:100%;height:auto;border:1px solid var(--line, #e5e8f0);border-radius:var(--radius)}.matter-layer{position:absolute;transform-origin:center center;pointer-events:none;overflow:hidden}.matter-layer canvas{display:block}.matter-gen{position:absolute;opacity:0;pointer-events:none}.matter-host{position:relative}.matter-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;pointer-events:none}.matter-cpu{display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden}.matter-cpu canvas{max-width:100%;max-height:100%;width:auto;height:auto;display:block;margin:auto}.matter-select-overlay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:100%;max-height:100%;width:auto;height:auto;pointer-events:none;z-index:3}.matter-status{display:flex;align-items:center;gap:6px;justify-content:center;width:100%;height:100%;padding:6px;font-size:12px;color:var(--text-3);text-align:center;background:color-mix(in srgb,var(--panel) 70%,transparent);border:1px dashed var(--border-strong);border-radius:var(--radius)}.matter-status.is-quiet{position:absolute;top:4px;right:6px;width:auto;height:auto;padding:1px 6px;font-size:11px;line-height:1.6;background:color-mix(in srgb,var(--panel) 88%,transparent);border:1px solid var(--border)}.board-warn-inline{font-size:12px;color:var(--amber, var(--red))}.board-row.is-stack{align-items:flex-start}.board-row.is-stack .board-row-ctl{flex-wrap:wrap}.board-mvgroup{margin:6px 0;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.board-mvgroup>summary{cursor:pointer;padding:5px 8px;font-size:12.5px;font-weight:600;color:var(--text-2)}.board-mvgroup[open]>summary{border-bottom:1px solid var(--border)}.board-mvgroup .board-row{padding:3px 8px}.board-strip{position:absolute;left:0;right:0;bottom:0;height:var(--strip-h, 96px);z-index:8;display:flex;flex-direction:column;background:color-mix(in srgb,var(--panel) 96%,transparent);border-top:1px solid var(--border)}.board-strip.is-collapsed{height:30px;flex-direction:row;align-items:center;gap:8px;padding:0 12px}.board-shell.has-strip .board-viewport{bottom:var(--strip-h, 96px)}.board-shell.has-strip-collapsed .board-viewport{bottom:30px}.board-shell.has-strip .board-panel{bottom:calc(var(--strip-h, 96px) + 10px)}.board-shell.has-strip-collapsed .board-panel{bottom:40px}.board-shell.has-strip .board-rail{top:calc(50% - (var(--strip-h, 96px) / 2))}.strip-body{flex:1;min-height:0;display:flex;gap:8px;flex-flow:row nowrap;align-items:center;padding:6px 10px 4px;overflow-x:auto;overflow-y:hidden}.strip-hollow{font-size:12px;color:var(--text-3);padding:0 4px}.board-editor{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;flex-direction:column;background:var(--panel)}.board-editor-head{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border)}.board-editor-body{flex:1;display:flex;min-height:0}.board-editor-stage{flex:1;min-width:0;display:grid;place-items:center;padding:12px;overflow:auto;background:var(--surface)}.board-editor-stage>svg{max-width:100%;max-height:100%}.board-editor-matter{width:min(70vh,100%);height:min(70vh,100%)}.board-editor-side{width:360px;flex-shrink:0;overflow:auto;border-left:1px solid var(--border);padding:8px}.strip-card-wrap{position:relative;display:flex;flex-shrink:0}.strip-card-wrap.is-focused .strip-card{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.strip-card-edit{position:absolute;top:4px;right:4px;z-index:2;padding:2px 6px;font-size:11px;line-height:1.4;color:var(--text);background:color-mix(in srgb,var(--panel) 88%,transparent);border:1px solid var(--border-strong);border-radius:var(--radius);cursor:pointer}.strip-card-edit:hover{border-color:var(--primary);color:var(--primary)}.strip-card{flex:none;width:auto;height:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:3px;cursor:grab;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-2)}.strip-card:active{cursor:grabbing}.strip-thumb{--thumb: clamp(20px, calc(var(--strip-h, 96px) - 34px - 10px - 6px - 14px), 160px);flex:none;width:var(--thumb);height:var(--thumb);display:grid;place-items:center;background:#fff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.board-strip.is-compact .strip-thumb{--thumb: clamp(20px, calc(var(--strip-h, 96px) - 34px - 10px - 6px), 160px)}.board-strip.is-compact .strip-name{display:none}.strip-thumb img{width:100%;height:100%;object-fit:contain}.strip-thumb-slot{display:grid;place-items:center;width:100%;height:100%;position:relative}.strip-thumb-slot.is-loading{opacity:.45;animation:strip-thumb-pulse 1.2s ease-in-out infinite}.strip-thumb-wait{font-size:11px;color:var(--text-3);text-align:center;line-height:1.3}.strip-thumb-badge{position:absolute;top:2px;right:2px;padding:0 4px;font-size:10px;line-height:1.5;white-space:nowrap;color:var(--amber, var(--primary));background:var(--amber-soft, var(--primary-soft));border-radius:var(--radius);pointer-events:none}@keyframes strip-thumb-pulse{0%,to{opacity:.45}50%{opacity:.85}}.strip-icon{font-size:18px;color:var(--text-2)}.strip-badge{font-size:11px;padding:2px 6px;border-radius:var(--radius);background:var(--primary-soft);color:var(--primary)}.strip-badge.is-volume{background:var(--amber-soft, var(--primary-soft));color:var(--amber, var(--primary))}.strip-name{flex:none;font-size:10.5px;max-width:96px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.strip-bar{flex:none;height:34px;display:flex;align-items:center;gap:8px;padding:0 10px}.strip-cats{display:inline-flex;gap:3px}.strip-cats .board-btn{padding:3px 7px;font-size:11px}.strip-filter{width:120px;height:24px}.strip-hidden{display:none}.strip-view{margin-left:auto;display:inline-flex;align-items:center;gap:4px}.strip-view .board-btn{padding:3px 7px;font-size:12px}.strip-bar .board-btn:hover:not(:disabled),.strip-bar .board-btn.is-on{background:var(--primary-soft)}.strip-card:hover{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.strip-focus-name{flex:none;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.25;color:var(--primary);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border));border-radius:var(--radius-pill);padding:2px 9px}.strip-msg-inline{flex:0 1 auto;min-width:0;max-width:46%;font-size:11.5px;color:var(--primary);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board-empty-hint{position:absolute;left:50%;top:18%;transform:translate(-50%);pointer-events:none;font-size:13px;color:var(--text-3);padding:6px 12px;border:1px dashed var(--border-strong);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--panel) 70%,transparent)}.board-panel-tabs.is-vertical{flex-direction:column;padding:6px 4px;gap:4px;border-bottom:none;align-items:center}.board-tab.is-icon{flex:none;width:34px;height:30px;padding:0;font-size:13px;font-weight:600;line-height:1;display:inline-flex;align-items:center;justify-content:center}.scene-edit-wrap{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.scene-edit-mount{position:absolute;top:0;right:0;bottom:0;left:0}.board-orbit-btn{cursor:pointer}.board-orbit-btn circle{filter:drop-shadow(0 1px 2px rgb(15 23 42 / .2))}.board-orbit-btn:hover circle{fill:var(--primary-strong, #3d4bd6)}.board-orbit-btn:hover text{fill:#fff}.board-orbit-surface{position:absolute;z-index:7;cursor:grab;touch-action:none;opacity:0}.matter-gpu{position:relative;width:100%;height:100%;overflow:hidden}.board-rotate-fab{position:absolute;z-index:9;width:22px;height:22px;border-radius:var(--radius-circle);display:flex;align-items:center;justify-content:center;padding:0;font-size:13px;line-height:1;color:var(--primary, #4f5df0);background:#fff;border:1.5px solid var(--primary, #4f5df0);box-shadow:0 1px 3px #0f172a38;cursor:pointer}.board-rotate-fab:hover,.board-rotate-fab.is-on{background:var(--primary, #4f5df0);color:#fff}.board-svg{overflow:visible}@media (max-width: 1920px){.workflow .dsh-chat-column{max-width:none;margin:0}.workflow .dsh-chat-scroll,.workflow .dsh-input-bar{padding-left:0;padding-right:0}.workflow .dsh-input-card{max-width:none;margin:0}}.cf-chart-table-wrap{border:1px solid var(--border);border-radius:var(--radius);overflow:auto;max-height:190px;background:#fff}.cf-chart-table{border-collapse:collapse;width:100%;font-size:11px}.cf-chart-table th,.cf-chart-table td{padding:4px 7px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}.cf-chart-table th{position:sticky;top:0;z-index:1;background:var(--panel-2);color:var(--text-2);font-weight:600}.cf-chart-table td{color:var(--text-2)}.cf-chart-table tr:last-child td{border-bottom:none}.cf-chart-table-wrap .board-hint{padding:4px 7px}.te-editor{display:flex;flex-direction:column;min-height:0}.te-editor .board-editor-body{min-height:0}.te-editor .board-editor-side{width:380px;padding:10px 12px}.te-editor .board-editor-side .board-chart-preview{max-height:230px;overflow:hidden}.te-editor .board-editor-side .board-actions{flex-wrap:wrap}.te-editor .te-stage{display:flex;flex-direction:column;align-items:stretch;justify-content:stretch;gap:6px;padding:10px 12px;overflow:hidden}.te-grid-wrap{flex:1;min-height:0;overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:#fff}.te-grid{border-collapse:separate;border-spacing:0;font-size:11.5px;min-width:100%}.te-grid th,.te-grid td{border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:0}.te-grid thead th{position:sticky;top:0;z-index:3;background:var(--panel-2);border-bottom:1px solid var(--border-strong)}.te-grid .te-corner{position:sticky;left:0;top:0;z-index:4;width:44px;padding:5px 7px;color:var(--text-3);font-weight:500;text-align:center;background:var(--panel-2)}.te-grid .te-rownum{position:sticky;left:0;z-index:2;width:44px;padding:4px 7px;color:var(--text-3);font-weight:500;text-align:right;background:var(--panel-2)}.te-grid thead input{width:100%;min-width:90px;box-sizing:border-box;padding:6px 8px;border:0;background:transparent;font:inherit;font-weight:600;color:var(--text);outline:none}.te-grid .te-cell input{width:100%;min-width:90px;box-sizing:border-box;padding:5px 8px;border:0;background:transparent;font:inherit;color:var(--text);outline:none}.te-grid .te-cell input:focus{background:var(--primary-soft);box-shadow:inset 0 0 0 2px var(--primary)}.te-grid .te-cell.is-hit input,.te-grid thead th.is-hit input{background:#fff7cd}.te-status{flex:none;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:0 2px;font-size:11px;color:var(--text-3)}.te-warn{color:var(--amber, #b45309)}.te-block{color:var(--red, #dc2626);font-weight:600}.te-pager{display:inline-flex;align-items:center;gap:6px;margin-left:auto}.te-load-error{max-width:460px;padding:18px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--text-2)}.te-load-error b{color:var(--red, #dc2626)}.te-load-error p{margin:8px 0 14px;line-height:1.6}.cf-chart-tree{display:flex;flex-direction:column;gap:2px;padding:5px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2)}.cf-chart-tree-row{text-align:left;font:inherit;font-size:11px;padding:3px 6px;border:0;border-radius:var(--radius);background:transparent;color:var(--text-2);cursor:pointer}.cf-chart-tree-row:hover{background:var(--primary-soft);color:var(--primary)}.cf-chart-tree-row.is-on{background:var(--primary-soft);color:var(--primary);font-weight:600}.cf-chart-tree-row.is-series{padding-left:16px}.cf-chart-tree-detail{display:flex;flex-direction:column;gap:4px;padding:6px;border:1px dashed var(--border-strong);border-radius:var(--radius);background:#fff}.cf-chart-tree-hint{padding:2px 4px}.cf-publication{border:1px solid var(--border);border-radius:var(--radius);padding:6px 8px;background:var(--panel-2);font-size:10.5px;color:var(--text-3)}.cf-publication.has-block{border-color:color-mix(in srgb,var(--red, #dc2626) 35%,var(--border))}.cf-publication.has-warn{border-color:color-mix(in srgb,var(--amber, #b45309) 35%,var(--border))}.cf-publication-head{display:flex;justify-content:space-between;gap:8px;color:var(--text-2)}.cf-publication-head b{font-weight:700}.cf-publication-issue{margin-top:3px;line-height:1.45}.cf-publication-issue.is-block{color:var(--red, #dc2626)}.cf-publication-issue.is-warn{color:var(--amber, #b45309)}.dsh-turn-error{display:grid;grid-template-columns:10px minmax(0,1fr);gap:8px;align-items:start;margin:4px 0 10px;padding:2px 0;font-size:13px;line-height:20px;color:var(--text-1)}.dsh-turn-error-dot{width:10px;height:10px;margin-top:5px;border-radius:var(--radius-circle);background:var(--red);flex:none}.dsh-turn-error-copy{min-width:0;overflow-wrap:anywhere}.dsh-turn-error-title{margin-right:6px;color:var(--red);font-weight:600}.dsh-turn-error-message{color:var(--text-2)}.dsh-chat-retry{margin:2px 0 10px;padding:5px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2, #f6f7f9);color:var(--text-2);font-size:12px;line-height:1.5}.dsh-chat-retry-summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:6px}.dsh-chat-retry-summary::-webkit-details-marker{display:none}.dsh-chat-retry-summary:before{content:"◌";color:var(--text-3, var(--text-2));animation:dsh-chat-retry-pulse 1.2s ease-in-out infinite}.dsh-chat-retry[open] .dsh-chat-retry-summary:before{content:"▾";animation:none}.dsh-chat-retry-text{font-variant-numeric:tabular-nums}.dsh-chat-retry-details{margin-top:4px;padding-left:18px;color:var(--text-2);display:flex;flex-direction:column;gap:2px;word-break:break-word}.dsh-chat-retry-label{color:var(--text-3, var(--text-2))}@keyframes dsh-chat-retry-pulse{0%,to{opacity:.35}50%{opacity:1}}@media (prefers-reduced-motion: reduce){.dsh-chat-retry-summary:before{animation:none}}.feedback-fab{position:fixed;right:18px;bottom:20px;z-index:800;display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 14px;border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--panel);color:var(--text-2);box-shadow:var(--shadow-lg);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.feedback-fab:hover{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);transform:translateY(-1px)}.feedback-fab:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent),var(--shadow-lg)}.feedback-fab svg{flex:none}.feedback-fab.is-plot{bottom:72px}@media (max-width: 1100px){.feedback-fab,.feedback-fab.is-plot{bottom:86px}}@media (max-width: 520px){.feedback-fab{right:12px;bottom:78px;padding:0 11px}.feedback-fab.is-plot{bottom:78px}.feedback-fab-label{display:none}}@media (prefers-reduced-motion: reduce){.feedback-fab{transition:none}.feedback-fab:hover{transform:none}}.feedback-form{display:flex;flex-direction:column;gap:12px}.feedback-intro{margin:0;color:var(--text-2);font-size:12.5px;line-height:1.7}.feedback-field{display:flex;flex-direction:column;gap:6px}.feedback-label{font-size:12px;font-weight:600;color:var(--text-2)}.feedback-required{color:var(--red)}.feedback-cats{display:flex;flex-wrap:wrap;gap:6px}.feedback-cat{border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--panel);color:var(--text-2);padding:5px 11px;font:inherit;font-size:12px;cursor:pointer}.feedback-cat:hover{border-color:var(--primary);color:var(--primary)}.feedback-cat.is-on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);font-weight:600}.feedback-cat:disabled{opacity:.55;cursor:default}.feedback-textarea,.feedback-input{width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--text);padding:8px 10px;font:inherit;font-size:13px;line-height:1.6}.feedback-textarea{resize:none;min-height:120px}.feedback-textarea:focus,.feedback-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}.feedback-textarea:disabled,.feedback-input:disabled{opacity:.65;cursor:default}.feedback-count{align-self:flex-end;font-size:11px;color:var(--text-3);font-variant-numeric:tabular-nums}.feedback-hint{color:var(--text-3);font-weight:400}.feedback-note{padding:7px 9px;border-radius:var(--radius);background:var(--amber-soft);color:var(--amber);font-size:11.5px;line-height:1.5}.feedback-ctx{display:flex;align-items:flex-start;gap:8px;padding:8px 2px;color:var(--text-2);font-size:12px;line-height:1.6;cursor:pointer}.feedback-ctx input{margin-top:2px;width:14px;height:14px;accent-color:var(--primary);flex:none}.feedback-ctx span{min-width:0}.feedback-err{padding:7px 9px;border-radius:var(--radius);background:var(--red-soft);color:var(--red);font-size:12px;line-height:1.5}.settings-about-sep{color:var(--border-strong)}.ui-modal-foot{flex-wrap:wrap}.fb-config-form{align-items:flex-end}.fb-config-line{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:10px;align-items:center;font-size:11.5px;color:var(--text-3)}.fb-config-line b{color:var(--text-2);font-weight:600}.fb-config-line .state-badge{margin-left:4px}.fb-filters{margin-top:2px}.fb-filters .admin-field input,.fb-filters .admin-field select{min-width:130px}.fb-pager{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:10px;font-size:11.5px;color:var(--text-3)}.fb-detail{display:flex;flex-direction:column;gap:14px}.fb-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px 16px}.fb-detail-grid>div{display:flex;flex-direction:column;gap:2px;font-size:11.5px}.fb-detail-grid span{color:var(--text-3);font-size:10.5px}.fb-detail-grid b{color:var(--text-2);font-weight:600;word-break:break-all}.fb-detail-section{display:flex;flex-direction:column;gap:6px}.fb-detail-section>b{font-size:12.5px;color:var(--text)}.fb-pre{margin:0;padding:9px 11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);color:var(--text-2);font-size:11.5px;line-height:1.55;white-space:pre-wrap;word-break:break-word;max-height:260px;overflow:auto}.fb-mail-error{padding:6px 8px;border-radius:var(--radius);background:var(--red-soft);color:var(--red);font-size:11.5px;line-height:1.5}.fb-finding{display:flex;flex-direction:column;gap:5px;padding:9px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.fb-finding-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12.5px}.fb-finding-detail{font-size:12px;color:var(--text-2);line-height:1.55}.fb-evidence{margin:0;padding:6px 8px;border-radius:var(--radius);background:var(--panel-2);color:var(--text-2);font-size:11px;white-space:pre-wrap;word-break:break-word;max-height:160px;overflow:auto}.fb-suggestion{font-size:11.5px;color:var(--text-2);line-height:1.5}.fb-note{width:100%;box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--text);padding:8px 10px;font:inherit;font-size:12.5px;line-height:1.6;resize:vertical}.fb-note:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}.fb-details{border-top:1px solid var(--border);padding-top:8px}.fb-details summary{cursor:pointer;font-size:12px;color:var(--text-2);font-weight:600}html.usage-account-html{scroll-behavior:auto;scrollbar-gutter:stable}.usage-root{--usage-bg: #f5f6f8;--usage-card: #ffffff;--usage-border: #e6e8ec;--usage-text: #1c2433;--usage-muted: #7a8294;--usage-primary: #101828;--usage-blue: #5b6cff;--usage-teal: #22b8b0;min-height:100vh;display:flex;background:var(--usage-bg);color:var(--usage-text)}.usage-sidebar{width:224px;flex:none;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:0;padding:0 0 16px;background:#fff;border-right:1px solid var(--usage-border)}.usage-sidebar-brand{height:60px;flex:none;display:flex;align-items:center;padding:0 8px;box-sizing:border-box}.usage-brand{display:flex;align-items:center;gap:8px;padding:0;text-decoration:none;color:inherit}.usage-brand img:first-child{width:26px;height:26px;display:block}.usage-brand img:nth-child(2){width:92px;height:auto;display:block}.usage-back-slot{position:fixed;top:12px;right:24px;z-index:30}html.usage-account-html body{padding-left:0!important;transition:none!important}body.portal-page{transition:none!important}.usage-nav{display:flex;flex-direction:column;gap:2px;padding:8px 8px 0}.usage-nav button{display:flex;align-items:center;justify-content:flex-start;text-align:left;width:100%;border:0;background:transparent;color:var(--usage-muted);font:inherit;font-size:13.5px;padding:9px 12px;border-radius:var(--radius);cursor:pointer}.usage-nav button:hover{background:#f2f4f7;color:var(--usage-text)}.usage-nav button.is-active{background:#f2f4f7;color:var(--usage-text);font-weight:700}.usage-sidebar-user{margin-top:auto;display:flex;align-items:center;gap:10px;padding:10px 8px;border-top:1px solid var(--usage-border)}.usage-avatar{width:32px;height:32px;border-radius:var(--radius-circle);display:grid;place-items:center;background:#eef0ff;color:#4f5df0;font-weight:800;font-size:13px}.usage-sidebar-user b{display:block;font-size:13px;font-weight:700}.usage-sidebar-user span{display:block;margin-top:1px;font-size:11px;color:var(--usage-muted)}.usage-sidebar-links{display:flex;flex-direction:column;gap:4px;padding:0 8px}.usage-sidebar-links button,.usage-sidebar-links a{border:0;background:transparent;padding:5px 0;color:var(--usage-muted);font:inherit;font-size:12px;text-align:left;cursor:pointer;text-decoration:none}.usage-sidebar-links button:hover,.usage-sidebar-links a:hover{color:var(--usage-text)}.usage-main{flex:1;min-width:0;padding:58px 42px 80px}.usage-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.usage-topbar h1{margin:0;font-size:26px;line-height:1.25;letter-spacing:-.02em}.usage-topbar p{margin:6px 0 0;color:var(--usage-muted);font-size:12.5px}.usage-topbar-actions{display:flex;align-items:center;gap:12px;flex:none}.usage-updated{color:var(--usage-muted);font-size:11.5px}.usage-btn{border:1px solid var(--usage-border);background:#fff;color:var(--usage-text);height:32px;padding:0 12px;border-radius:var(--radius);font:inherit;font-size:12.5px;cursor:pointer}.usage-btn:hover{background:#f7f8fa}.usage-btn:disabled{opacity:.6;cursor:default}.usage-primary{border:0;background:var(--usage-primary);color:#fff;height:32px;padding:0 14px;border-radius:var(--radius);font:inherit;font-size:12.5px;font-weight:700;cursor:pointer}.usage-primary:hover,.usage-primary:focus-visible{background:#263247;color:#fff}.usage-primary:disabled{opacity:.6;cursor:default;color:#fff}.usage-section{margin-top:30px;scroll-margin-top:20px}.usage-card{background:var(--usage-card);border:1px solid var(--usage-border);border-radius:var(--radius);padding:18px 20px}.usage-topcards{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:14px}.usage-balance-card{background:linear-gradient(135deg,#fff,#f2f4ff)}.usage-label{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--usage-muted);font-size:12.5px}.usage-status{border:1px solid #dce2ea;border-radius:var(--radius-pill);padding:2px 8px;font-size:10.5px;color:#667085}.usage-status.is-warn{border-color:#f3c6b8;background:#fff4f0;color:#c2410c}.usage-balance{margin-top:12px;font-size:38px;line-height:1.15;font-weight:800;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.usage-balance small,.usage-total small{font-size:12px;color:var(--usage-muted);font-weight:600;letter-spacing:0}.usage-balance.is-neg{color:#d92d20}.usage-balance-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;color:var(--usage-muted);font-size:11.5px}.usage-total{margin-top:12px;font-size:30px;line-height:1.2;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.usage-total-foot{margin-top:14px;color:var(--usage-muted);font-size:11.5px}.usage-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px}.usage-segmented{display:inline-flex;padding:3px;gap:2px;border:1px solid var(--usage-border);border-radius:var(--radius);background:#fff}.usage-segmented button{border:0;background:transparent;height:27px;padding:0 11px;border-radius:var(--radius);color:var(--usage-muted);font:inherit;font-size:12px;cursor:pointer}.usage-segmented button.is-active{background:#eef0ff;color:#4f5df0;font-weight:700}.usage-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}.usage-kpi{padding:16px 16px 14px}.usage-kpi span{display:block;color:var(--usage-muted);font-size:11.5px}.usage-kpi b{display:block;margin-top:8px;font-size:22px;line-height:1.2;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.usage-kpi small{display:block;margin-top:5px;color:var(--usage-muted);font-size:10.5px}.usage-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.usage-card-head b{display:block;font-size:13.5px}.usage-card-head span{display:block;margin-top:2px;color:var(--usage-muted);font-size:11px}.usage-muted{color:var(--usage-muted)}.usage-chart-card{margin-top:14px;padding-bottom:10px}.usage-legend{display:flex;align-items:center;gap:12px;color:var(--usage-muted);font-size:10.5px}.usage-legend i{display:inline-block;width:8px;height:8px;border-radius:var(--radius-circle);margin-right:4px;vertical-align:-1px}.usage-chart-scroll{overflow-x:auto;padding-bottom:2px}.usage-bars{height:208px;display:flex;align-items:stretch;gap:3px;padding-top:10px}.usage-bar-col{flex:1 1 0;min-width:9px;display:flex;flex-direction:column;align-items:stretch;gap:6px}.usage-bar-track{flex:1;display:flex;align-items:flex-end;padding:0 1px;border-bottom:1px solid #eef0f3;background:repeating-linear-gradient(to top,#fafbfc 0,#fafbfc 1px,transparent 1px,transparent 32px)}.usage-bar{width:100%;min-height:1px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;border-radius:var(--radius) var(--radius) 0 0;opacity:.9}.usage-bar-col:hover .usage-bar{opacity:1}.usage-bar-label{height:15px;color:var(--usage-muted);font-size:9.5px;text-align:center;white-space:nowrap;overflow:visible}.usage-empty{padding:30px 0;color:var(--usage-muted);text-align:center;font-size:12px}.usage-model-head{display:flex;align-items:baseline;gap:8px;margin:22px 0 10px}.usage-model-head b{font-size:13.5px}.usage-models{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.usage-model-card{padding:14px 16px}.usage-model-name{font-size:12.5px;font-weight:800}.usage-model-rows{display:flex;flex-direction:column;gap:5px;margin-top:10px;color:var(--usage-muted);font-size:11px}.usage-model-rows b{color:var(--usage-text);font-variant-numeric:tabular-nums}.usage-section-title{display:flex;align-items:baseline;gap:9px;margin:0 0 10px}.usage-section-title h2{margin:0;font-size:16px;letter-spacing:-.01em}.usage-section-title span{color:var(--usage-muted);font-size:11.5px}.usage-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-top:14px}.usage-table-card{min-width:0}.usage-card .table-wrap{margin-top:0}.usage-kv{display:flex;flex-wrap:wrap;gap:7px 18px;margin-top:12px;color:var(--usage-muted);font-size:12px}.usage-kv b{color:var(--usage-text);font-variant-numeric:tabular-nums}.usage-recharge-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.usage-amount{border:1px solid var(--usage-border);background:#fff;color:var(--usage-text);height:30px;padding:0 11px;border-radius:var(--radius);font:inherit;font-size:12px;cursor:pointer}.usage-amount.is-active{border-color:#4f5df0;background:#eef0ff;color:#4f5df0;font-weight:700}.usage-custom{display:inline-flex;align-items:center;gap:5px;color:var(--usage-muted);font-size:12px}.usage-custom input{width:88px;height:30px;border:1px solid var(--usage-border);border-radius:var(--radius);padding:0 8px;font:inherit;color:var(--usage-text);background:#fff}.usage-hint{margin-top:10px;color:var(--usage-muted);font-size:11px;line-height:1.6}.usage-note{margin-top:12px;padding:10px 12px;border:1px solid #f3d9b0;border-radius:var(--radius);background:#fff8ec;color:#a15c00;font-size:12px}.usage-note.is-blocked{border-color:#f3c6b8;background:#fff4f0;color:#c2410c}.usage-error{margin-bottom:14px;padding:10px 12px;border:1px solid #f3c6b8;border-radius:var(--radius);background:#fff4f0;color:#c2410c;font-size:12px}.usage-loading{min-height:100vh;display:grid;place-items:center;background:#f5f6f8;color:#7a8294;font:13px system-ui,sans-serif;gap:12px}.usage-skeleton{min-height:220px;display:grid;gap:12px;align-content:start}.usage-skeleton>div{height:38px;border-radius:var(--radius);background:#f3f4f6}@media (max-width: 1000px){.usage-main{padding:24px 24px 60px}.usage-kpis,.usage-models{grid-template-columns:repeat(2,minmax(0,1fr))}.usage-two-col{grid-template-columns:1fr}}@media (max-width: 760px){.usage-root{display:block}.usage-sidebar{position:static;width:auto;height:auto;display:block;padding:0 8px 8px;border-right:0;border-bottom:1px solid var(--usage-border)}.usage-sidebar-brand{height:50px;padding:0}.usage-back-slot{top:8px;right:12px}.usage-nav{flex-direction:row;overflow-x:auto;margin-top:4px;gap:4px;padding:0 0 2px}.usage-nav button{width:auto;white-space:nowrap;padding:7px 8px;font-size:12px}.usage-sidebar-user,.usage-sidebar-links{display:none}.usage-main{padding:52px 16px 56px}.usage-topbar{display:block}.usage-topbar-actions{justify-content:space-between;margin-top:10px}.usage-topcards,.usage-kpis,.usage-models{grid-template-columns:1fr}.usage-controls{flex-wrap:wrap}.usage-balance{font-size:32px}.usage-total{font-size:26px}.usage-bars{min-width:560px}}.usage-root{--usage-bg: #f6f8ff;--usage-card: #ffffff;--usage-border: #dce2f5;--usage-line-strong: #c9d2ef;--usage-text: #151a33;--usage-muted: #5a6380;--usage-faint: #8b93ad;--usage-primary: #4f5df0;--usage-accent: #4f5df0;--usage-accent-hover: #3b4ae0;--usage-blue: #4f5df0;--usage-teal: #8b93ad;--usage-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;background:var(--usage-bg);color:var(--usage-text)}.usage-sidebar{background:#fff;border-right-color:var(--usage-border)}.usage-sidebar-brand{border-bottom:1px solid var(--usage-border)}.usage-nav{padding-top:14px}.usage-nav button{border-radius:0;color:var(--usage-muted);font-size:13px;padding:9px 12px}.usage-nav button:hover{background:#f6f8ff;color:var(--usage-text)}.usage-nav button.is-active{background:#eef0ff;color:var(--usage-accent);font-weight:700}.usage-topbar{border-bottom:1px solid var(--usage-border);padding-bottom:18px;margin-bottom:26px}.usage-kicker{margin-bottom:8px;color:var(--usage-accent);font-family:var(--usage-mono);font-size:10px;font-weight:600;letter-spacing:.16em}.usage-topbar h1{font-size:30px;font-weight:800;letter-spacing:-.04em;color:var(--usage-text)}.usage-topbar p{max-width:620px;color:var(--usage-muted);font-size:12.5px}.usage-updated{font-family:var(--usage-mono);font-size:10px;letter-spacing:.04em;color:var(--usage-faint)}.usage-card{background:var(--usage-card);border:1px solid var(--usage-border);border-radius:0;box-shadow:none;padding:18px 20px}.usage-balance-card{background:#fff;border-top:2px solid var(--usage-accent)}.usage-label,.usage-card-head span,.usage-hint,.usage-muted{color:var(--usage-muted)}.usage-status{border-radius:0;border-color:var(--usage-border);color:var(--usage-muted);font-family:var(--usage-mono);font-size:10px;letter-spacing:.04em}.usage-status.is-warn{border-color:#e7b4a4;background:#fff8f5;color:#a63f25}.usage-balance,.usage-total,.usage-kpi b{color:var(--usage-text);font-variant-numeric:tabular-nums}.usage-balance small,.usage-total small{color:var(--usage-faint);font-family:var(--usage-mono);font-size:10px;letter-spacing:.08em}.usage-balance-foot,.usage-total-foot{color:var(--usage-faint)}.usage-primary{border-radius:0;background:var(--usage-accent);color:#fff;font-weight:700;letter-spacing:-.01em}.usage-primary:hover,.usage-primary:focus-visible{background:var(--usage-accent-hover);color:#fff}.usage-btn{border-radius:0;background:transparent;border-color:var(--usage-line-strong);color:var(--usage-text)}.usage-btn:hover{background:#eef0ff;border-color:var(--usage-accent);color:var(--usage-accent)}.usage-segmented{border-radius:0;border-color:var(--usage-border);background:transparent}.usage-segmented button{border-radius:0;font-family:var(--usage-mono);font-size:11px;letter-spacing:.03em}.usage-segmented button.is-active{background:var(--usage-accent);color:#fff}.usage-kpi{border-top:1px solid var(--usage-line-strong)}.usage-kpi span{font-family:var(--usage-mono);font-size:10px;letter-spacing:.06em;color:var(--usage-muted)}.usage-kpi b{font-size:23px;letter-spacing:-.03em}.usage-kpi small{color:var(--usage-faint)}.usage-card-head b{letter-spacing:-.01em}.usage-card-head{border-bottom:1px solid var(--usage-border);padding-bottom:12px}.usage-chart-card .usage-card-head{border-bottom:0;padding-bottom:0}.usage-legend{font-family:var(--usage-mono);font-size:10px}.usage-legend i{border-radius:0}.usage-legend i.is-token{background:var(--usage-blue)}.usage-legend i.is-compute{background:var(--usage-teal)}.usage-bar-track{border-bottom-color:var(--usage-line-strong);background:repeating-linear-gradient(to top,#f6f8ff 0,#f6f8ff 1px,transparent 1px,transparent 32px)}.usage-bar{border-radius:0}.usage-bar-token{background:var(--usage-blue)}.usage-bar-compute{background:var(--usage-teal)}.usage-bar-label{font-family:var(--usage-mono);color:var(--usage-faint);font-size:9px}.usage-model-head{border-bottom:1px solid var(--usage-border);padding-bottom:10px}.usage-model-head b{font-size:13px}.usage-model-card{border-top:1px solid var(--usage-line-strong)}.usage-model-name{font-family:var(--usage-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase}.usage-model-rows{font-family:var(--usage-mono);font-size:10.5px}.usage-model-rows b{font-size:11px}.usage-section-title{border-bottom:1px solid var(--usage-line-strong);padding-bottom:10px}.usage-section-title h2{font-size:18px;font-weight:800;letter-spacing:-.03em}.usage-section-title span{font-family:var(--usage-mono);font-size:10px;letter-spacing:.05em;color:var(--usage-faint)}.usage-card .table-wrap{border-top:1px solid var(--usage-border);margin-top:10px}.usage-root table th{color:var(--usage-muted);font-family:var(--usage-mono);font-size:9.5px;letter-spacing:.08em;font-weight:600;border-bottom-color:var(--usage-line-strong)}.usage-root table td{border-bottom-color:var(--usage-border);font-size:12px}.usage-root tbody tr:hover td{background:#f8faff}.usage-recharge-row{padding-top:4px}.usage-amount{border-radius:0;border-color:var(--usage-border);font-family:var(--usage-mono);font-size:11px}.usage-amount.is-active{border-color:var(--usage-accent);background:var(--usage-accent);color:#fff}.usage-custom input{border-radius:0;border-color:var(--usage-border);font-family:var(--usage-mono)}.usage-custom{font-family:var(--usage-mono);font-size:10px;color:var(--usage-faint)}.usage-hint{font-size:10.5px;color:var(--usage-faint)}.usage-note,.usage-error{border-radius:0}@media (max-width: 760px){.usage-nav{padding:0 0 2px}.usage-nav button{border-left:0;border-bottom:2px solid transparent;padding:7px 8px}.usage-nav button.is-active{border-bottom-color:var(--usage-accent)}.usage-topbar{padding-bottom:14px;margin-bottom:20px}.usage-topbar h1{font-size:26px}}:root{--cf-bg: #f6f8ff;--cf-surface: #ffffff;--cf-soft: #edf0ff;--cf-ink: #151a33;--cf-muted: #5a6380;--cf-faint: #8b93ad;--cf-line: #dce2f5;--cf-line-strong: #c9d2ef;--cf-accent: #4f5df0;--cf-accent-hover: #3b4ae0;--cf-ok: #3f7a56;--cf-max: 1360px;--cf-ease: cubic-bezier(.22, 1, .36, 1);--cf-sans: system-ui, -apple-system, "Segoe UI", "PingFang SC", "MiSans", "HarmonyOS Sans", "Microsoft YaHei", sans-serif;--cf-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}html{scrollbar-gutter:stable;scroll-behavior:smooth}body.landing-body{margin:0;padding-left:0!important;transition:none!important;background:var(--cf-bg);color:var(--cf-ink);font-family:var(--cf-sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.landing-body ::selection{background:#4f5df029;color:var(--cf-ink)}#landing-root{min-height:100vh}.cf{position:relative;overflow-x:clip;background:var(--cf-bg);color:var(--cf-ink)}.cf img{max-width:100%}.cf :where(a){color:inherit}.cf .platform-notice{background:#fef3e2}.cf-shell{width:min(100% - 80px,var(--cf-max));margin-inline:auto}.cf-skip{position:fixed;top:-60px;left:16px;z-index:200;padding:10px 14px;background:var(--cf-ink);color:#fff;font-size:13px;text-decoration:none;border-radius:0}.cf-skip:focus{top:12px}.cf :where(a,button,[tabindex]):focus-visible,.cf :where(.lp-shot-trigger,.lp-lightbox-close):focus-visible{outline:2px solid var(--cf-accent);outline-offset:3px}.cf-kicker{display:inline-flex;align-items:center;gap:10px;font-family:var(--cf-mono);font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--cf-accent)}.cf-kicker:before{content:"";width:26px;height:1px;background:currentColor;flex:none}.cf-h2{margin:16px 0 0;font-size:clamp(38px,5.6vw,84px);line-height:1;font-weight:800;letter-spacing:-.055em;color:var(--cf-ink);text-wrap:balance}.cf-sub{max-width:42em;margin:20px 0 0;font-size:16px;line-height:1.85;color:var(--cf-muted)}.cf-panel-head{display:flex;justify-content:space-between;gap:16px;padding-bottom:10px;border-bottom:1px solid var(--cf-line);font-family:var(--cf-mono);font-size:9px;letter-spacing:.12em;color:var(--cf-muted)}.cf-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border:1px solid var(--cf-accent);background:var(--cf-accent);color:#fff;font-family:var(--cf-sans);font-size:15px;font-weight:700;letter-spacing:-.01em;text-decoration:none;cursor:pointer;border-radius:0;transition:background-color .18s ease,border-color .18s ease,transform .12s ease}.cf-btn:hover,.cf-btn:focus-visible{background:var(--cf-accent-hover);border-color:var(--cf-accent-hover);color:#fff}.cf-btn:active{transform:translateY(1px)}.cf-header{position:sticky;top:0;z-index:90;background:#f6f8fff2;border-bottom:1px solid transparent;transition:border-color .2s ease}.cf-header.is-scrolled{border-bottom-color:var(--cf-line)}.cf-header-inner{width:min(100% - 80px,var(--cf-max));margin-inline:auto;height:64px;display:flex;align-items:center;gap:32px}.cf-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;flex:none}.cf-brand-mark{width:26px;height:26px;display:block}.cf-brand-word{height:25px;width:auto;display:block}.cf-nav{display:flex;align-items:center;gap:26px;margin-left:auto}.cf-nav-link{position:relative;padding:6px 0;font-size:13.5px;font-weight:500;color:var(--cf-muted);text-decoration:none;white-space:nowrap;transition:color .16s ease}.cf-nav-link:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--cf-accent);transform:scaleX(0);transform-origin:left;transition:transform .2s var(--cf-ease)}.cf-nav-link:hover,.cf-nav-link.is-active{color:var(--cf-ink)}.cf-nav-link.is-active:after{transform:scaleX(1)}.cf-header-meta{margin-left:8px;padding-left:18px;border-left:1px solid var(--cf-line);font-family:var(--cf-mono);font-size:9.5px;letter-spacing:.12em;color:var(--cf-muted);white-space:nowrap}.cf-menu-btn{display:none;width:40px;height:40px;margin-left:auto;align-items:center;justify-content:center;padding:0;box-sizing:border-box;border:1px solid var(--cf-line);background:transparent;color:var(--cf-ink);cursor:pointer;border-radius:0}.cf-menu-btn svg{width:24px;height:24px;flex:none}.cf-mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;flex-direction:column;padding:84px 24px 32px;background:var(--cf-bg);overflow-y:auto}.cf-mobile-menu nav{display:flex;flex-direction:column;border-top:1px solid var(--cf-line)}.cf-mobile-menu nav a{padding:20px 0;border-bottom:1px solid var(--cf-line);font-size:28px;font-weight:700;letter-spacing:-.04em;color:var(--cf-ink);text-decoration:none}.cf-mobile-note{margin-top:auto;padding-top:32px;font-family:var(--cf-mono);font-size:9.5px;letter-spacing:.12em;color:var(--cf-muted)}.cf-hero{display:flex;align-items:center;min-height:calc(100svh - 64px);padding:clamp(44px,6vw,76px) 0 clamp(48px,6vw,84px);border-bottom:1px solid var(--cf-line);background:linear-gradient(to right,rgba(79,93,240,.045) 1px,transparent 1px) 0 0 / 88px 88px,linear-gradient(to bottom,rgba(79,93,240,.045) 1px,transparent 1px) 0 0 / 88px 88px,var(--cf-bg)}.cf-hero-grid{display:grid;grid-template-columns:minmax(0,656px) minmax(0,1fr);align-items:center;gap:24px}.cf-hero-kicker{margin-bottom:18px}.cf-hero-title{margin:0;font-size:clamp(54px,8.8vw,138px);line-height:.94;font-weight:800;letter-spacing:-.065em;color:var(--cf-ink);text-wrap:balance}.cf-hero-title span{display:block}.cf-hero-title span:nth-child(2){color:var(--cf-accent)}.cf-hero-lead{max-width:31em;margin:22px 0 0;font-size:clamp(15px,1.2vw,17px);line-height:1.85;color:var(--cf-muted)}.cf-hero-outcomes{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 0;padding:0;list-style:none}.cf-hero-outcomes li{display:inline-flex;align-items:baseline;gap:7px;padding:7px 10px;border:1px solid var(--cf-line-strong);background:var(--cf-surface)}.cf-hero-outcomes b{font-size:12.5px;font-weight:700}.cf-hero-outcome-note{font-family:var(--cf-mono);font-size:8.5px;letter-spacing:.04em;color:var(--cf-muted)}.cf-hero-actions{margin-top:26px}.cf-hero-preview{display:grid;gap:10px;align-content:center}.cf-preview-card{padding:14px 16px 16px;border:1px solid var(--cf-line-strong);background:var(--cf-surface)}.cf-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:var(--cf-mono);font-size:8.5px;letter-spacing:.14em;color:var(--cf-muted)}.cf-preview-card--workbench{padding-bottom:10px}.cf-preview-workbench{position:relative;margin-top:10px;overflow:hidden;border:1px solid var(--cf-line);background:var(--cf-bg)}.cf-preview-frame{display:block;position:absolute;top:0;left:0;border:0;background:var(--cf-bg);transform-origin:top left}.cf-overview{padding:clamp(64px,8vw,108px) 0;background:var(--cf-surface);border-bottom:1px solid var(--cf-line)}.cf-overview-head{max-width:920px}.cf-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(32px,4vw,48px);border-top:1px solid var(--cf-line)}.cf-outcome{padding:24px 24px 28px 0;border-right:1px solid var(--cf-line)}.cf-outcome:not(:first-child){padding-left:24px}.cf-outcome:last-child{border-right:0}.cf-outcome-no{font-family:var(--cf-mono);font-size:9px;letter-spacing:.1em;color:var(--cf-muted)}.cf-outcome h3{margin:12px 0 0;font-size:22px;font-weight:800;letter-spacing:-.03em}.cf-outcome p{margin:8px 0 0;font-size:13.5px;line-height:1.75;color:var(--cf-muted)}.cf-outcome-facts{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0;padding:0;list-style:none}.cf-outcome-facts li{padding:2px 6px;border:1px solid var(--cf-line);font-family:var(--cf-mono);font-size:8px;color:var(--cf-muted)}.cf-overview-flow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin-top:clamp(28px,3.6vw,44px);border-top:1px solid var(--cf-line);border-bottom:1px solid var(--cf-line)}.cf-flow-step{padding:14px 12px 14px 0;border-right:1px solid var(--cf-line)}.cf-flow-step:not(:first-child){padding-left:12px}.cf-flow-step:last-child{border-right:0}.cf-flow-no{display:block;font-family:var(--cf-mono);font-size:8px;letter-spacing:.1em;color:var(--cf-muted)}.cf-flow-step b{display:block;margin-top:5px;font-size:15px;font-weight:700}.cf-flow-step em{display:block;margin-top:3px;font-style:normal;font-size:10.5px;color:var(--cf-muted)}.cf-overview-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:28px 0 0;padding:0;list-style:none;border-top:1px solid var(--cf-line);border-bottom:1px solid var(--cf-line)}.cf-overview-counts li{padding:12px 14px 12px 0;border-right:1px solid var(--cf-line)}.cf-overview-counts li:not(:first-child){padding-left:14px}.cf-overview-counts li:last-child{border-right:0}.cf-overview-counts b{display:block;font-family:var(--cf-mono);font-size:clamp(26px,2.6vw,38px);line-height:1.1;letter-spacing:-.05em}.cf-overview-counts span{display:block;margin-top:3px;font-family:var(--cf-mono);font-size:8px;letter-spacing:.12em;color:var(--cf-muted)}.cf-case{--cf-line: rgba(245, 247, 253, .2);--cf-line-strong: rgba(245, 247, 253, .3);--cf-muted: rgba(245, 247, 253, .72);--cf-ink: #f5f7fd;padding:clamp(64px,8vw,104px) 0;background:#151a33;color:#f5f7fd}.cf-case-head{max-width:920px;margin-bottom:clamp(32px,4vw,48px)}.cf-case .cf-kicker{color:#f5f7fdc7}.cf-case .cf-sub{color:#f5f7fdb8}.cf-case-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:clamp(32px,4.4vw,60px);align-items:start}.cf-case-story{display:flex;flex-direction:column;gap:28px}.cf-quote{margin:0;padding:4px 0 4px 18px;border-left:2px solid rgba(245,247,253,.5)}.cf-quote blockquote{margin:0;font-size:clamp(16px,1.4vw,20px);line-height:1.75;font-weight:500}.cf-quote figcaption{margin-top:12px;font-family:var(--cf-mono);font-size:8.5px;letter-spacing:.12em;color:#f5f7fd8c}.cf-trace-wrap{min-width:0}.cf-case .cf-panel-head{border-bottom-color:var(--cf-line);color:#f5f7fd8f}.cf-trace{margin:0;padding:0;list-style:none}.cf-trace li{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:9px 0;border-bottom:1px solid var(--cf-line)}.cf-trace-no{font-family:var(--cf-mono);font-size:8.5px;color:#f5f7fd80}.cf-trace code{font-family:var(--cf-mono);font-size:11px;color:#fff;overflow-wrap:anywhere}.cf-trace-note{font-size:10px;color:#f5f7fd9e;text-align:right}.cf-plate{border:1px solid var(--cf-line-strong);background:#fff;padding:8px}.cf-plate .lp-shot-trigger{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;text-align:left}.cf-plate .lp-shot-img{display:block;width:100%;height:auto;filter:saturate(.55) contrast(1.02);transition:filter .2s ease}.cf-plate .lp-shot-trigger:hover .lp-shot-img,.cf-plate .lp-shot-trigger:focus-visible .lp-shot-img{filter:none}.cf-plate .lp-shot-trigger:hover{outline:1px solid var(--cf-accent);outline-offset:-1px}.cf-plate-caption{margin:8px 2px 0;font-family:var(--cf-mono);font-size:8px;letter-spacing:.1em;color:var(--cf-muted)}.cf-case .cf-plate-caption{color:#f5f7fd8f}.cf-case-foot{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:20px;margin-top:clamp(28px,3.6vw,44px);align-items:stretch}.cf-ticket{padding:18px;background:#fff;color:#151a33;border:1px solid rgba(255,255,255,.2)}.cf-ticket-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.cf-ticket-kicker{font-family:var(--cf-mono);font-size:8.5px;letter-spacing:.12em;color:#5a6a82}.cf-status{display:inline-flex;align-items:center;gap:6px;font-family:var(--cf-mono);font-size:8.5px;letter-spacing:.1em;color:#3b4ae0}.cf-status i{width:6px;height:6px;background:var(--cf-ok);display:block}.cf-ticket-id{display:block;margin-top:10px;font-family:var(--cf-mono);font-size:clamp(18px,1.8vw,24px);font-weight:600;letter-spacing:-.04em}.cf-ticket-fields{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:14px 0 0;border-top:1px solid #dce3f3}.cf-ticket-fields>div{padding:8px 0;border-bottom:1px solid #dce3f3}.cf-ticket-fields dt{font-family:var(--cf-mono);font-size:8px;letter-spacing:.1em;color:#5a6a82}.cf-ticket-fields dd{margin:3px 0 0;font-family:var(--cf-mono);font-size:12px}.cf-output{display:grid;grid-template-columns:1fr 1.5fr 1.3fr .8fr .8fr;border-top:1px solid var(--cf-line);border-bottom:1px solid var(--cf-line)}.cf-output>div{padding:12px 12px 12px 0;border-right:1px solid var(--cf-line)}.cf-output>div:not(:first-child){padding-left:12px}.cf-output>div:last-child{border-right:0}.cf-output span{display:block;font-family:var(--cf-mono);font-size:8px;letter-spacing:.1em;color:#f5f7fd8c}.cf-output b{display:block;margin-top:5px;font-family:var(--cf-mono);font-size:11px;font-weight:500;overflow-wrap:anywhere}.cf-capabilities{padding:clamp(64px,8vw,104px) 0;background:var(--cf-soft);border-top:1px solid var(--cf-line);border-bottom:1px solid var(--cf-line)}.cf-cap-head{max-width:920px}.cf-cap-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:32px 0 0;padding:0;list-style:none;border-top:1px solid var(--cf-line);border-bottom:1px solid var(--cf-line)}.cf-cap-counts li{padding:12px 14px 12px 0;border-right:1px solid var(--cf-line)}.cf-cap-counts li:not(:first-child){padding-left:14px}.cf-cap-counts li:last-child{border-right:0}.cf-cap-counts b{display:block;font-family:var(--cf-mono);font-size:clamp(28px,3vw,44px);line-height:1;letter-spacing:-.06em}.cf-cap-counts span{display:block;margin-top:4px;font-family:var(--cf-mono);font-size:8px;letter-spacing:.12em;color:var(--cf-muted)}.cf-engine-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:28px;border-top:1px solid var(--cf-line);border-left:1px solid var(--cf-line)}.cf-engine{min-height:200px;padding:16px 16px 18px;border-right:1px solid var(--cf-line);border-bottom:1px solid var(--cf-line);background:var(--cf-surface)}.cf-engine-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.cf-engine-no{font-family:var(--cf-mono);font-size:8.5px;letter-spacing:.1em;color:var(--cf-muted)}.cf-engine-kind{font-family:var(--cf-mono);font-size:7.5px;letter-spacing:.04em;color:var(--cf-muted);text-align:right}.cf-engine h3{margin:20px 0 0;font-size:clamp(21px,1.9vw,28px);font-weight:800;letter-spacing:-.04em}.cf-engine p{margin:7px 0 0;font-size:11.5px;line-height:1.7;color:var(--cf-muted)}.cf-engine-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:14px}.cf-engine-tags span{padding:2px 5px;border:1px solid var(--cf-line);font-family:var(--cf-mono);font-size:7.5px;color:var(--cf-muted)}.cf-packages{margin-top:clamp(32px,4vw,48px)}.cf-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--cf-line);border-left:1px solid var(--cf-line)}.cf-package-group{min-height:88px;padding:10px 12px;border-right:1px solid var(--cf-line);border-bottom:1px solid var(--cf-line);background:var(--cf-surface)}.cf-package-label{display:block;margin-bottom:6px;font-family:var(--cf-mono);font-size:8px;letter-spacing:.1em;color:var(--cf-muted)}.cf-package-group code{display:block;font-family:var(--cf-mono);font-size:9.5px;line-height:1.55;color:var(--cf-ink);overflow-wrap:anywhere}.cf-boundary{display:grid;grid-template-columns:200px minmax(0,1fr);gap:20px;margin-top:32px;padding-top:14px;border-top:1px solid var(--cf-line)}.cf-boundary-label{font-family:var(--cf-mono);font-size:8.5px;letter-spacing:.1em;color:var(--cf-muted)}.cf-boundary ul{margin:0;padding:0;list-style:none}.cf-boundary li{position:relative;padding-left:14px;font-size:12px;line-height:1.7;color:var(--cf-muted)}.cf-boundary li+li{margin-top:5px}.cf-boundary li:before{content:"—";position:absolute;left:0;color:var(--cf-muted);font-family:var(--cf-mono);font-size:9px}.cf-delivery{padding:clamp(64px,8vw,104px) 0;background:var(--cf-bg);border-bottom:1px solid var(--cf-line)}.cf-delivery-head{max-width:920px}.cf-delivery-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,4.4vw,60px);margin-top:clamp(32px,4vw,48px);align-items:start}.cf-deliverables{border-top:1px solid var(--cf-line)}.cf-deliverable{display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;padding:16px 0;border-bottom:1px solid var(--cf-line)}.cf-deliverable-no{font-family:var(--cf-mono);font-size:9px;color:var(--cf-muted)}.cf-deliverable h3{margin:0;font-size:17px;font-weight:700;letter-spacing:-.02em}.cf-deliverable code{display:block;margin-top:4px;font-family:var(--cf-mono);font-size:9.5px;line-height:1.55;color:var(--cf-muted);overflow-wrap:anywhere}.cf-deliverable p{margin:6px 0 0;font-size:12px;line-height:1.7;color:var(--cf-muted)}.cf-rules{display:flex;flex-wrap:wrap;gap:6px 18px;margin:16px 0 0;padding:0;list-style:none}.cf-rules li{position:relative;padding-left:11px;font-family:var(--cf-mono);font-size:8.5px;color:var(--cf-muted)}.cf-rules li:before{content:"";position:absolute;left:0;top:.55em;width:4px;height:4px;background:var(--cf-accent)}.cf-delivery-visual{display:flex;flex-direction:column;gap:12px}.cf-delivery-visual .cf-plate{background:var(--cf-surface)}.cf-delivery-visual .cf-plate-caption{color:var(--cf-muted)}.cf-placeholders{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cf-placeholder{padding:12px;border:1px solid var(--cf-line-strong);background:var(--cf-surface)}.cf-placeholder-head{display:flex;justify-content:space-between;gap:10px;font-family:var(--cf-mono);font-size:8px;letter-spacing:.04em;color:var(--cf-muted)}.cf-placeholder-head em{font-style:normal;color:var(--cf-faint)}.cf-placeholder-doc{margin-top:12px}.cf-placeholder-doc span{display:block;height:1px;background:var(--cf-line-strong);margin:9px 0}.cf-placeholder-doc span:nth-child(1){width:62%;height:2px;background:var(--cf-muted)}.cf-placeholder-doc span:nth-child(2){width:92%}.cf-placeholder-doc span:nth-child(3){width:78%}.cf-placeholder-doc span:nth-child(4){width:86%}.cf-placeholder-doc span:nth-child(5){width:48%}.cf-placeholder-chart{margin-top:10px;color:var(--cf-muted)}.cf-placeholder-chart svg{display:block;width:100%;height:auto}.cf-closing{padding:clamp(76px,10vw,140px) 0 clamp(56px,7vw,92px);background:var(--cf-soft);border-top:1px solid var(--cf-line)}.cf-closing-title{max-width:11ch;margin:16px 0 0;font-size:clamp(50px,10vw,156px);line-height:.95;font-weight:800;letter-spacing:-.07em}.cf-closing-body{max-width:34em;margin:20px 0 0;font-size:15.5px;line-height:1.8;color:var(--cf-muted)}.cf-closing-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-top:clamp(40px,5vw,68px);padding-top:14px;border-top:1px solid var(--cf-line-strong)}.cf-closing-foot>span{font-family:var(--cf-mono);font-size:8.5px;letter-spacing:.12em;color:var(--cf-muted)}.cf-closing-foot ul{display:flex;gap:24px;margin:0;padding:0;list-style:none}.cf-closing-foot li{display:flex;align-items:baseline;gap:5px}.cf-closing-foot b{font-family:var(--cf-mono);font-size:14px;font-weight:600}.cf-closing-foot li span{font-family:var(--cf-mono);font-size:7.5px;letter-spacing:.1em;color:var(--cf-muted)}.cf-footer{padding:clamp(44px,5.5vw,64px) 0 20px;background:var(--cf-surface);border-top:1px solid var(--cf-line);color:var(--cf-ink)}.cf-footer-top{display:flex;align-items:center;justify-content:space-between;gap:24px}.cf-footer-issue{font-family:var(--cf-mono);font-size:8.5px;letter-spacing:.12em;color:var(--cf-muted)}.cf-footer-grid{display:grid;grid-template-columns:1.3fr .8fr .8fr .8fr;gap:28px;margin-top:32px;padding-top:22px;border-top:1px solid var(--cf-line)}.cf-footer-note{margin:0;font-size:12.5px;line-height:1.8;color:var(--cf-muted)}.cf-footer-col{display:flex;flex-direction:column;gap:7px}.cf-footer-col h3{margin:0 0 3px;font-family:var(--cf-mono);font-size:8px;letter-spacing:.12em;color:var(--cf-faint);font-weight:600}.cf-footer-col a,.cf-footer-col span{font-size:12px;line-height:1.6;color:var(--cf-muted);text-decoration:none}.cf-footer-col a:hover{color:var(--cf-ink);text-decoration:underline;text-underline-offset:3px}.cf-footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 20px;margin-top:32px;padding-top:14px;border-top:1px solid var(--cf-line);font-size:10.5px;color:var(--cf-muted)}.cf-footer-beian{display:inline-flex;flex-wrap:wrap;align-items:center;gap:0 8px}.cf-footer .beian-icp,.cf-footer .beian-gongan{color:var(--cf-muted);text-decoration:none}.cf-footer .beian-icp:hover,.cf-footer .beian-gongan:hover{color:var(--cf-ink);text-decoration:underline}.cf-footer .beian-gongan{display:inline-flex;align-items:center;gap:4px}.cf-footer .beian-gongan img{width:16px;height:16px}.lp-lightbox{width:min(1200px,calc(100vw - 48px));max-width:none;padding:0;border:1px solid var(--cf-line-strong);background:#fff;color:var(--cf-ink);border-radius:0}.lp-lightbox::backdrop{background:#090d18b8}.lp-lightbox[open]{animation:cf-fade-in .18s ease both}.lp-lightbox-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px;border-bottom:1px solid var(--cf-line);font-family:var(--cf-mono);font-size:10px;letter-spacing:.08em;color:var(--cf-muted)}.lp-lightbox-close{height:30px;padding:0 12px;border:1px solid var(--cf-line);background:transparent;color:var(--cf-ink);font:inherit;font-family:var(--cf-mono);font-size:10px;cursor:pointer;border-radius:0}.lp-lightbox-close:hover{border-color:var(--cf-accent);color:var(--cf-accent)}.lp-lightbox-img{display:block;width:100%;max-height:calc(90vh - 58px);object-fit:contain;background:#fff}@keyframes cf-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes cf-fade-in{0%{opacity:0}to{opacity:1}}.cf-js .cf-hero-kicker{animation:cf-rise .55s var(--cf-ease) both}.cf-js .cf-hero-title span{animation:cf-rise .7s var(--cf-ease) both}.cf-js .cf-hero-title span:nth-child(2){animation-delay:.06s}.cf-js .cf-hero-lead{animation:cf-rise .65s var(--cf-ease) .14s both}.cf-js .cf-hero-outcomes{animation:cf-rise .65s var(--cf-ease) .2s both}.cf-js .cf-hero-actions{animation:cf-rise .65s var(--cf-ease) .26s both}.cf-js .cf-hero-preview{animation:cf-rise .75s var(--cf-ease) .16s both}.cf-js .cf-preview-card{animation:cf-rise .6s var(--cf-ease) both}.cf-js .cf-preview-card:nth-child(2){animation-delay:.08s}.cf-js .cf-preview-card:nth-child(3){animation-delay:.16s}.cf-js [data-reveal]{opacity:0;transform:translateY(14px);transition:opacity .58s var(--cf-ease),transform .58s var(--cf-ease)}.cf-js [data-reveal].is-in{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.cf-js .cf-hero-kicker,.cf-js .cf-hero-title span,.cf-js .cf-hero-lead,.cf-js .cf-hero-outcomes,.cf-js .cf-hero-actions,.cf-js .cf-hero-preview,.cf-js .cf-preview-card{animation:none!important}.cf-js [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}.cf *{animation-duration:.001ms!important;transition-duration:.001ms!important}}@media (max-width: 1280px){.cf-hero-grid{grid-template-columns:1fr;gap:34px}.cf-hero-preview{grid-template-columns:1fr;align-items:start}}@media (max-width: 1020px){.cf-nav{display:none}.cf-menu-btn{display:inline-flex}.cf-header-meta{margin-left:auto}.cf-hero{min-height:0}.cf-hero-grid{grid-template-columns:1fr;gap:34px}.cf-hero-preview{grid-template-columns:1fr;align-items:start}.cf-case-grid,.cf-delivery-grid,.cf-case-foot{grid-template-columns:1fr}.cf-engine-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cf-footer-grid{grid-template-columns:1fr 1fr}}@media (max-width: 760px){.cf-shell,.cf-header-inner{width:min(100% - 40px,var(--cf-max))}.cf-header-inner{height:60px;gap:12px}.cf-brand-word{height:21px}.cf-header-meta{display:none}.cf-hero{padding:36px 0 48px}.cf-hero-title{font-size:clamp(50px,13.6vw,78px)}.cf-hero-lead{margin-top:18px;font-size:15px}.cf-hero-outcomes{margin-top:18px;gap:6px}.cf-hero-outcomes li{padding:6px 8px}.cf-hero-actions{margin-top:22px}.cf-hero-preview{grid-template-columns:1fr}.cf-h2{font-size:clamp(34px,8.6vw,52px)}.cf-sub{font-size:14.5px}.cf-overview-grid{grid-template-columns:1fr}.cf-outcome{border-right:0;border-bottom:1px solid var(--cf-line);padding:16px 0!important}.cf-outcome:last-child{border-bottom:0}.cf-overview-flow{grid-template-columns:repeat(3,minmax(0,1fr))}.cf-flow-step:nth-child(3n){border-right:0}.cf-overview-counts{grid-template-columns:1fr 1fr}.cf-overview-counts li:nth-child(2){border-right:0}.cf-overview-counts li:nth-child(3){border-top:1px solid var(--cf-line)}.cf-overview-counts li:nth-child(4){border-top:1px solid var(--cf-line);border-right:0}.cf-case-foot{gap:16px}.cf-output{grid-template-columns:1fr 1fr}.cf-output>div{border-right:0;border-bottom:1px solid var(--cf-line)}.cf-output>div:nth-child(odd){border-right:1px solid var(--cf-line)}.cf-output>div:last-child{border-bottom:0}.cf-cap-counts{grid-template-columns:1fr 1fr}.cf-cap-counts li:nth-child(2){border-right:0}.cf-cap-counts li:nth-child(3){border-top:1px solid var(--cf-line)}.cf-cap-counts li:nth-child(4){border-top:1px solid var(--cf-line);border-right:0}.cf-engine-grid{grid-template-columns:1fr}.cf-engine{min-height:0}.cf-package-grid{grid-template-columns:1fr 1fr}.cf-package-group{min-height:0}.cf-boundary{grid-template-columns:1fr;gap:10px}.cf-placeholders{grid-template-columns:1fr}.cf-closing-title{font-size:clamp(48px,12.6vw,88px)}.cf-closing-foot{flex-direction:column;align-items:flex-start}.cf-closing-foot ul{flex-wrap:wrap;gap:12px 18px}.cf-footer-grid{grid-template-columns:1fr;gap:20px}.cf-footer-bottom{flex-direction:column;align-items:flex-start}.cf-mobile-menu{padding-top:76px}.cf-mobile-menu nav a{font-size:24px}}@media (max-width: 460px){.cf-hero-title{font-size:50px}.cf-hero-lead{font-size:14.5px}.cf-hero-outcomes li{flex:1 1 auto;justify-content:center}.cf-btn{width:100%}.cf-hero-preview{gap:8px}.cf-flow-step{padding:12px 8px 12px 0}.cf-flow-step:not(:first-child){padding-left:8px}.cf-trace li{grid-template-columns:22px minmax(0,1fr)}.cf-trace-note{grid-column:2;text-align:left}.cf-output{grid-template-columns:1fr}.cf-output>div,.cf-output>div:nth-child(odd){border-right:0;border-top:1px solid var(--cf-line);padding-left:0}.cf-output>div:first-child{border-top:0}.cf-closing-title{font-size:44px}.cf-mobile-menu nav a{font-size:22px}}
