*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#fff;--bg-page:#f3f7fc;--bg-subtle:#f6fafe;--chip:#eaf1f9;--sidebar-bg:#f3f7fd;--sidebar-hover:#e6eefa;--sidebar-active:#dbe8f9;--card:#fff;--border:#e1e8f2;--border-strong:#cbd8ea;--text:#17212f;--muted:#64748b;--faint:#91a0b8;--disabled:#c2cede;--scrollbar:#ccd8e9;--scrollbar-hover:#b1c3dd;--user-bubble:#e6effc;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-soft:#e8f0fe;--primary-soft-border:#c8dbfc;--accent:#0ea5e9;--violet:#6d5cff;--grad-brand:linear-gradient(135deg,#4353ff,#2563eb 45%,#08b5f0);--grad-brand-vivid:linear-gradient(135deg,#4338e0,#2563eb 42%,#00b3f0);--grad-bubble-user:linear-gradient(135deg,#4749e8,#2563eb 55%,#0d7fd6);--glow-primary:0 4px 16px rgba(37,99,235,.32);--glow-primary-lg:0 6px 26px rgba(37,99,235,.42);--success:#0f9960;--success-hover:#0c7a4d;--success-soft:#e3f6ed;--success-soft-border:#bde8d3;--danger:#d6455a;--danger-hover:#b82c43;--danger-soft:#fdebee;--warning:#b45309;--warning-soft:#fdf3df;--warning-soft-border:#f8ddb8;--info:#0891b2;--info-soft:#e0f4f9;--info-soft-border:#bfe7f1;--orange:#d97706;--orange-soft:#fef0e0;--orange-soft-border:#f8ddb8;--primary-dark:var(--primary-hover);--green:var(--success);--green-soft:var(--success-soft);--red:var(--danger);--red-soft:var(--danger-soft);--amber:var(--warning);--amber-soft:var(--warning-soft);--cyan:var(--info);--cyan-soft:var(--info-soft);--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:17px;--text-xl:20px;--text-2xl:26px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:32px;--sp-8:48px;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:22px;--shadow-sm:0 1px 2px rgba(30,58,110,.06);--shadow-md:0 1px 2px rgba(30,58,110,.05),0 4px 14px rgba(30,58,110,.08);--shadow-lg:0 4px 14px rgba(30,58,110,.08),0 18px 48px rgba(30,58,110,.16);--ring:0 0 0 3px rgba(37,99,235,.18)}html{-webkit-font-smoothing:antialiased}body{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Segoe UI,sans-serif;background:radial-gradient(1100px 520px at 88% -8%,rgba(8,181,240,.1),transparent 62%),radial-gradient(900px 480px at -8% 24%,rgba(37,99,235,.08),transparent 58%),radial-gradient(1000px 620px at 55% 112%,rgba(109,92,255,.07),transparent 62%),var(--bg-page);background-attachment:fixed;color:var(--text);font-size:var(--text-base);line-height:1.65}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}::selection{background:var(--primary-soft)}.kpi-value::selection,.progress-label::selection,.running-text::selection,.welcome-title::selection{color:var(--primary-hover);background:var(--primary-soft)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover)}::-webkit-scrollbar-track{background:transparent}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.layout{display:flex;min-height:100vh}.sidebar{width:232px;color:var(--text);background:hsla(0,0%,100%,.62);backdrop-filter:blur(22px) saturate(1.5);-webkit-backdrop-filter:blur(22px) saturate(1.5);padding:14px 0 0;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid rgba(203,216,234,.55);height:100vh;position:-webkit-sticky;position:sticky;top:0;overflow:hidden;overscroll-behavior:contain}.sidebar:before{content:"";position:absolute;left:0;right:0;top:0;height:180px;background:radial-gradient(ellipse 130% 100% at 50% -30%,rgba(37,99,235,.07),transparent 70%);pointer-events:none}.sidebar .logo{display:flex;gap:9px;font-size:var(--text-md);color:var(--text);padding:6px var(--sp-4) 0;letter-spacing:.2px}.logo-mark,.sidebar .logo{align-items:center;font-weight:700}.logo-mark{width:26px;height:26px;border-radius:var(--radius-sm);flex-shrink:0;background:var(--grad-brand);color:#fff;font-size:var(--text-sm);display:inline-flex;justify-content:center}.logo-img{height:48px;width:auto;display:block}.mobile-topbar .logo-img{height:36px}.sidebar nav a{display:flex;align-items:center;gap:9px;padding:var(--sp-2) var(--sp-3);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-sm);transition:background .15s,color .15s}.sidebar:not(.chat-sidebar) nav a{margin:0 var(--sp-2) 2px}.sidebar nav a:hover{background:var(--sidebar-hover);text-decoration:none}.sidebar nav a.active{background:var(--sidebar-active);font-weight:600;color:var(--primary-hover)}.sidebar nav a.active .nav-icon{color:var(--primary)}.sidebar .foot{margin-top:auto;padding:var(--sp-3);font-size:var(--text-xs);color:var(--muted);border-top:1px solid var(--border)}.credit-card{display:block;margin-bottom:var(--sp-2);padding:10px 12px;border-radius:var(--radius-md);background:var(--grad-brand-vivid);color:#fff;box-shadow:var(--glow-primary);position:relative;overflow:hidden;transition:box-shadow .2s,transform .12s}.credit-card:after{content:"";position:absolute;right:-30px;top:-30px;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,hsla(0,0%,100%,.28),transparent 70%);pointer-events:none}.credit-card:hover{text-decoration:none;box-shadow:var(--glow-primary-lg);transform:translateY(-1px)}.credit-card,.credit-card:hover{color:#fff}.credit-card-user{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid hsla(0,0%,100%,.22)}.credit-avatar{width:26px;height:26px;border-radius:50%;flex-shrink:0;background:hsla(0,0%,100%,.22);border:1px solid hsla(0,0%,100%,.35);display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:700;color:#fff}.credit-username{min-width:0;flex:1 1;font-size:var(--text-sm);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.credit-card-label{display:flex;align-items:center;gap:5px;font-size:var(--text-xs);opacity:.85}.credit-card-num{display:block;font-size:20px;font-weight:700;line-height:1.3;letter-spacing:-.3px}.credit-card-cta{font-size:var(--text-xs);opacity:.8}.user-chip{display:flex;align-items:center;gap:10px;padding:6px var(--sp-1)}.user-avatar{width:30px;height:30px;border-radius:50%;flex-shrink:0;background:var(--grad-brand);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:600}.user-meta{min-width:0;flex:1 1;display:block}.user-name{display:block;font-size:var(--text-sm);font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-credits{display:block}.logout-btn,.user-credits{font-size:var(--text-xs);color:var(--muted)}.logout-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:var(--sp-2);padding:6px 10px;background:transparent;border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;text-align:center}.logout-btn:hover{background:var(--sidebar-hover);color:var(--text)}.foot-actions{display:flex;gap:6px}.foot-actions .logout-btn{flex:1 1;min-width:0;padding:6px 4px;white-space:nowrap}.main{flex:1 1;padding:28px clamp(36px,3vw,64px);min-width:0}.page-title{font-size:var(--text-xl);font-weight:700;margin-bottom:var(--sp-4);letter-spacing:-.2px;display:flex;align-items:center;gap:10px}.page-title:before{content:"";width:4px;height:1.05em;border-radius:2px;flex-shrink:0;background:var(--grad-brand)}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-5) 22px;margin-bottom:var(--sp-4);box-shadow:var(--shadow-sm)}.card h3{font-size:var(--text-md);margin-bottom:var(--sp-3)}.row{display:flex;flex-wrap:wrap;align-items:center}.grid2,.row{gap:var(--sp-3)}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--sp-3)}label{display:block;font-size:var(--text-sm);color:var(--muted);margin:10px 0 5px;font-weight:500}input,select,textarea{width:100%;padding:9px var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:var(--text-base);font-family:inherit;background:#fbfdff;color:var(--text);transition:border-color .15s,box-shadow .15s,background .15s}textarea{min-height:76px;resize:vertical}input:hover,select:hover,textarea:hover{border-color:#a9bedd}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:var(--ring);background:var(--bg)}input::placeholder,textarea::placeholder{color:var(--faint)}button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px var(--sp-4);border:none;border-radius:var(--radius-sm);background-color:var(--primary);color:#fff;font-size:var(--text-base);cursor:pointer;font-family:inherit;font-weight:500;transition:background .15s,box-shadow .15s,transform .05s}button:hover{background-color:var(--primary-hover)}button:active{transform:translateY(1px)}button:disabled{background-color:var(--disabled);cursor:not-allowed;transform:none}button.ghost{background:transparent;color:var(--text);border:1px solid var(--border-strong);font-weight:500}button.ghost:hover{background:var(--primary-soft);border-color:var(--primary-soft-border);color:var(--primary)}button.ghost:disabled{background:transparent;color:var(--disabled);border-color:var(--border)}button.danger{background:var(--danger)}button.danger:hover{background:var(--danger-hover)}button.small{padding:5px var(--sp-3);font-size:var(--text-sm)}button.approve{background:var(--success)}button.approve:hover{background:var(--success-hover)}.action-primary,.composer-submit,.login-box button[type=submit]{background-image:var(--grad-brand-vivid);background-size:150% 100%;background-position:0 0;box-shadow:var(--glow-primary);transition:background-position .3s ease,box-shadow .2s,transform .08s}.action-primary:hover:not(:disabled),.composer-submit:hover:not(:disabled),.login-box button[type=submit]:hover:not(:disabled){background-position:100% 0;box-shadow:var(--glow-primary-lg);transform:translateY(-1px)}.action-primary:active:not(:disabled),.composer-submit:active:not(:disabled),.login-box button[type=submit]:active:not(:disabled){transform:translateY(0);box-shadow:var(--glow-primary)}.action-primary:disabled,.composer-submit:disabled,.login-box button[type=submit]:disabled{background-image:none;box-shadow:none}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:var(--radius-sm);background:transparent;border:none;color:var(--muted);cursor:pointer}.icon-btn:hover{background:var(--sidebar-hover);color:var(--text)}.icon-btn.danger{background:transparent;color:var(--muted)}.icon-btn.danger:hover{background:var(--danger-soft);color:var(--danger)}.btn-spinner{width:14px;height:14px;border-radius:50%;flex-shrink:0;border:2px solid hsla(0,0%,100%,.35);border-top-color:#fff;animation:rotate .8s linear infinite;display:inline-block}button.ghost .btn-spinner{border-color:var(--border-strong);border-top-color:var(--muted)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:9px 10px;border-bottom:1px solid var(--border);font-size:var(--text-sm);vertical-align:top}th{color:var(--faint);font-weight:600;background:transparent;font-size:var(--text-xs);letter-spacing:.4px;border-bottom-color:var(--border-strong)}tr:last-child td{border-bottom:none}.card>.table-wrap tbody tr{transition:background .12s}.card>.table-wrap tbody tr:hover{background:var(--bg-subtle)}.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:var(--text-xs);white-space:nowrap;background:var(--chip);color:var(--muted);font-weight:500}.badge.green{background:var(--success-soft);color:var(--success)}.badge.red{background:var(--danger-soft);color:var(--danger)}.badge.amber{background:var(--warning-soft);color:var(--warning)}.badge.blue{background:var(--primary-soft);color:var(--primary)}.badge.cyan{background:var(--info-soft);color:var(--info)}.badge.orange{background:var(--orange-soft);color:var(--orange)}.badge.gray{background:var(--chip);color:var(--muted)}.error-msg{color:var(--danger);font-size:var(--text-sm);margin-top:10px}.field-error{color:var(--danger);margin-top:var(--sp-1)}.field-error,.hint{font-size:var(--text-xs)}.hint{color:var(--muted)}.steps{display:flex;gap:var(--sp-1);margin-bottom:var(--sp-5);flex-wrap:wrap}.step{padding:6px 14px;border-radius:999px;font-size:var(--text-sm);background:var(--chip);color:var(--muted)}.step.done{background:var(--success-soft);color:var(--success)}.step.current{background:var(--grad-brand);color:#fff;box-shadow:0 2px 8px rgba(37,99,235,.3)}.md-preview{font-size:var(--text-base);line-height:1.8;white-space:pre-wrap;word-break:break-word;max-height:400px;overflow-y:auto;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px}.img-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:10px;gap:10px}.img-grid .img-item{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:var(--bg);position:relative}.img-grid img{width:100%;height:90px;object-fit:cover;display:block}.img-grid .meta{padding:6px var(--sp-2);font-size:var(--text-xs);color:var(--muted);justify-content:space-between;gap:6px}.empty-state,.img-grid .meta{display:flex;align-items:center}.empty-state{padding:var(--sp-7) var(--sp-5);text-align:center;color:var(--faint);flex-direction:column;gap:10px}.empty-state svg{color:var(--border-strong)}.empty-state p{font-size:var(--text-sm);color:var(--muted)}.skeleton{display:block;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--chip) 25%,var(--bg-subtle) 45%,var(--chip) 65%);background-size:200% 100%;animation:shimmer 1.4s ease infinite}@keyframes shimmer{to{background-position:-200% 0}}.skeleton-row{height:16px;margin:var(--sp-3) 0}.toaster{position:fixed;top:var(--sp-4);right:var(--sp-4);z-index:1000;flex-direction:column;pointer-events:none;max-width:min(360px,calc(100vw - 32px))}.toast,.toaster{display:flex;gap:10px}.toast{pointer-events:auto;align-items:flex-start;padding:var(--sp-3) 14px;border-radius:var(--radius-md);background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-lg);font-size:var(--text-sm);line-height:1.5;color:var(--text);animation:toast-in .16s ease-out}.toast svg{flex-shrink:0;margin-top:1px}.toast.success svg{color:var(--success)}.toast.error svg{color:var(--danger)}.toast.info svg{color:var(--primary)}.toast.leaving{animation:toast-out .16s ease-in forwards}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes toast-out{to{opacity:0;transform:translateY(-6px)}}.modal-overlay{position:fixed;inset:0;z-index:900;background:rgba(15,27,48,.42);backdrop-filter:blur(8px) saturate(1.2);-webkit-backdrop-filter:blur(8px) saturate(1.2);display:flex;align-items:center;justify-content:center;padding:var(--sp-5);animation:fade-in .15s ease-out}.modal{background:hsla(0,0%,100%,.92);border:1px solid hsla(0,0%,100%,.6);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:440px;max-width:100%;max-height:85vh;overflow-y:auto;padding:var(--sp-6) var(--sp-6) var(--sp-5);animation:modal-in .15s ease-out}.modal.wide{width:680px}.modal.media-picker-modal{width:min(980px,96vw)}.modal.xwide{width:min(1100px,94vw);height:88vh;max-height:88vh;display:flex;flex-direction:column;overflow:hidden}.modal.xwide .modal-actions{margin-top:var(--sp-4);flex-shrink:0}.article-editor-title{width:100%;font-size:var(--text-md);font-weight:700;padding:8px 10px;margin-bottom:var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-sm)}.article-editor-body{flex:1 1;min-height:0}.article-editor-body .toastui-editor-defaultUI{height:100%!important}.toastui-editor-defaultUI button{background-color:transparent;padding:0;font-weight:400;transition:none}.toastui-editor-defaultUI button:disabled,.toastui-editor-defaultUI button:hover{background-color:transparent}.toastui-editor-defaultUI button:active{transform:none}.toastui-editor-defaultUI input:focus{box-shadow:none}.toastui-editor-defaultUI .toastui-editor-toolbar-icons:not(:disabled).active{background-position-y:3px}.article-editor-body .toastui-editor-contents,.article-editor-body .toastui-editor-defaultUI,.article-editor-body .toastui-editor-popup{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Segoe UI,sans-serif}.article-editor-body .toastui-editor-contents{font-size:14px;line-height:1.75;color:var(--text)}.article-editor-body .toastui-editor-contents h1,.article-editor-body .toastui-editor-contents h2{border-bottom-color:var(--border)}.article-editor-body .toastui-editor-defaultUI{border:1px solid var(--border-strong);border-radius:var(--radius-sm)}.article-editor-body .toastui-editor-defaultUI-toolbar{background:var(--bg-subtle);border-bottom:1px solid var(--border);border-radius:var(--radius-sm) var(--radius-sm) 0 0;padding:0 12px}.article-editor-body .toastui-editor-defaultUI-toolbar button{border-color:transparent}.article-editor-body .toastui-editor-defaultUI-toolbar button:not(:disabled):hover{border-color:var(--primary-soft-border);background-color:var(--primary-soft)}.article-editor-body .toastui-editor-toolbar-divider{background-color:var(--border-strong)}.article-editor-body .toastui-editor-mode-switch{border-top-color:var(--border)}.article-editor-body .toastui-editor-mode-switch .tab-item{background:var(--bg-subtle);border-color:var(--border);color:var(--faint)}.article-editor-body .toastui-editor-mode-switch .tab-item.active{background:var(--bg);border-top-color:var(--bg);color:var(--primary);font-weight:600}.article-editor-title{background:var(--bg-subtle);border-color:var(--border-strong)}.article-editor-title:focus{background:var(--bg)}.toastui-editor-defaultUI-toolbar button.kb-image-btn{width:auto;height:32px;margin:0;padding:0 10px;font-size:12px;font-weight:500;color:var(--primary);border:1px solid var(--primary-soft-border);border-radius:7px;background-color:var(--primary-soft);gap:4px}.toastui-editor-defaultUI-toolbar button.kb-image-btn:hover{background-color:var(--primary-soft);border-color:var(--primary)}.toastui-editor-defaultUI-toolbar button.kb-image-btn svg{flex-shrink:0}.image-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:10px;gap:10px;max-height:52vh;overflow-y:auto;padding:2px}.image-picker-cell{position:relative;border:1px solid var(--border);border-radius:var(--radius-sm);padding:0;overflow:hidden;cursor:pointer;background:var(--bg-subtle);aspect-ratio:4/3}.image-picker-cell:hover{border-color:var(--primary);box-shadow:var(--shadow-sm)}.image-picker-cell img{width:100%;height:100%;object-fit:cover;display:block}.image-picker-tag{position:absolute;left:6px;bottom:6px;background:rgba(23,30,45,.68);color:#fff;font-size:11px;padding:2px 7px;border-radius:999px;max-width:calc(100% - 12px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-title{font-size:var(--text-md);font-weight:700;margin-bottom:6px;display:flex;align-items:center;gap:8px}.modal-title svg{flex-shrink:0}.modal-title.danger svg{color:var(--danger)}.modal-desc{color:var(--muted);line-height:1.7}.modal-body,.modal-desc{font-size:var(--text-sm);margin-bottom:var(--sp-4)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:var(--sp-5)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}.modal-warning{display:flex;align-items:flex-start;gap:8px;padding:10px var(--sp-3);border-radius:var(--radius-sm);background:var(--warning-soft);color:var(--warning);font-size:var(--text-sm);margin-top:var(--sp-3)}.modal-warning svg{flex-shrink:0;margin-top:2px}.fee-list{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.fee-row{display:flex;align-items:baseline;gap:8px;padding:9px var(--sp-3);border-bottom:1px solid var(--border);font-size:var(--text-sm)}.fee-row:last-child{border-bottom:none}.fee-row .fee-name{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fee-row .fee-amount{font-weight:600;flex-shrink:0}.fee-row.total{background:var(--bg-subtle);font-weight:700}.login-split{display:flex;min-height:100vh;position:relative;overflow:hidden;background:radial-gradient(ellipse 55% 45% at 18% 12%,rgba(14,165,233,.12),transparent 65%),radial-gradient(ellipse 60% 55% at 88% 92%,rgba(37,99,235,.14),transparent 68%),linear-gradient(155deg,#f4f8ff,#e9f1fd 48%,#dcebfb)}.login-split:before{inset:0;background-image:linear-gradient(rgba(37,99,235,.055) 1px,transparent 0),linear-gradient(90deg,rgba(37,99,235,.055) 1px,transparent 0);background-size:44px 44px;mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000 30%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 45%,#000 30%,transparent 80%)}.login-split:after,.login-split:before{content:"";position:absolute;pointer-events:none}.login-split:after{right:-120px;top:-120px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(14,165,233,.14),transparent 70%)}.login-hero{flex:1 1 54%;min-width:0;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1;padding:var(--sp-8) 7vw;color:var(--text)}.hero-inner{position:relative;max-width:520px}.hero-brand{display:flex;align-items:center;margin-bottom:var(--sp-7)}.hero-logo-img{height:60px;width:auto;display:block}.hero-slogan{font-size:clamp(28px,3.2vw,40px);font-weight:700;line-height:1.35;letter-spacing:.5px;color:var(--text)}.hero-slogan,.hero-sub{margin-bottom:var(--sp-4)}.hero-sub{font-size:var(--text-md);color:var(--muted)}.hero-points{display:flex;flex-direction:column;gap:var(--sp-3)}.hero-point{display:flex;align-items:center;gap:14px;padding:14px var(--sp-4);border-radius:var(--radius-md);background:hsla(0,0%,100%,.72);border:1px solid rgba(37,99,235,.12);box-shadow:0 2px 10px rgba(23,30,45,.04);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background .18s,transform .18s}.hero-point:hover{background:#fff;transform:translateX(4px)}.hero-point-icon{width:38px;height:38px;border-radius:10px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:rgba(14,165,233,.14);color:var(--primary)}.hero-point-text{display:flex;flex-direction:column;gap:1px;min-width:0}.hero-point-text b{font-size:var(--text-md);font-weight:600;letter-spacing:1px;color:var(--text)}.hero-point-text i{font-style:normal;font-size:var(--text-sm);color:var(--muted)}.hero-foot{position:absolute;left:7vw;bottom:var(--sp-6);z-index:1;font-size:var(--text-xs);color:var(--faint);letter-spacing:2px}.login-side{flex:1 1 46%;min-width:0;position:relative;z-index:1}.login-side,.login-wrap{display:flex;align-items:center;justify-content:center;padding:var(--sp-6)}.login-wrap{min-height:100vh;background:radial-gradient(ellipse 60% 50% at 20% 0,rgba(37,99,235,.1),transparent),radial-gradient(ellipse 50% 40% at 85% 100%,rgba(14,165,233,.1),transparent),var(--bg-page)}.login-box{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:40px 36px 32px;width:400px;max-width:100%;box-shadow:var(--shadow-lg)}.login-logo{width:48px;height:48px;border-radius:14px;margin-bottom:18px;background:var(--grad-brand);color:#fff;font-size:22px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(37,99,235,.35)}.login-logo-img{height:44px;width:auto;display:block;margin-bottom:18px}.login-box h1{font-size:var(--text-xl);margin-bottom:var(--sp-1);letter-spacing:-.2px}.login-box>p{color:var(--muted);font-size:var(--text-sm);margin-bottom:22px}.login-box label{margin-top:14px}.login-box button[type=submit]{width:100%;margin-top:22px;padding:11px;font-size:var(--text-md);border-radius:10px}.login-foot{margin-top:18px;text-align:center;font-size:var(--text-xs);color:var(--faint)}.password-field{position:relative}.password-field input{padding-right:40px}.password-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:28px;height:28px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--faint);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.password-toggle:hover{background:var(--sidebar-hover);color:var(--muted);transform:translateY(-50%)}.chat-sidebar{width:264px}.step-nav{margin-bottom:2px}.step-badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-right:9px;border-radius:50%;background:var(--sidebar-active);color:var(--muted);font-size:11px;font-weight:700;line-height:1}.step-nav a.active .step-badge,.step-task-row.active .step-badge{background:var(--primary);color:#fff}.step-task-row{display:flex;align-items:center;margin:0 var(--sp-2) 2px;border-radius:var(--radius-sm)}.step-task-row:hover{background:var(--sidebar-hover)}.step-task-row.active{background:var(--sidebar-active)}.step-task-row.active .step-task-label{font-weight:600}.manage-nav .step-task-label{flex:1 1;min-width:0;display:flex;align-items:center;margin:0;padding:6px var(--sp-3);color:var(--text);font-size:var(--text-sm)}.step-task-label:hover{text-decoration:none}.manage-nav .step-new-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin:0 6px 0 0;padding:0;border-radius:var(--radius-sm);color:var(--muted)}.manage-nav .step-new-btn:hover{background:var(--sidebar-active);color:var(--primary);text-decoration:none}.side-section{padding:8px var(--sp-5) 4px;font-size:11px;color:var(--faint);font-weight:600;letter-spacing:.8px;text-transform:uppercase}.chat-list{flex:1 1 auto;overflow-y:auto;min-height:84px;overscroll-behavior:contain}.chat-item{position:relative;display:flex;align-items:stretch;margin:0 var(--sp-2) 2px;border-radius:var(--radius-sm);transition:background .15s}.chat-item.menu-open,.chat-item:hover{background:var(--sidebar-hover)}.chat-item.active{background:var(--sidebar-active)}.chat-item a{flex:1 1;min-width:0;display:block;margin:0;padding:5px var(--sp-3);color:var(--text);font-size:var(--text-sm);line-height:1.4}.chat-item a:hover{text-decoration:none}.chat-item-menu{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:none;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--muted);cursor:pointer}.chat-item.menu-open .chat-item-menu,.chat-item:hover .chat-item-menu{display:inline-flex}.chat-item-menu:hover{background:var(--sidebar-active);color:var(--text)}.chat-item.menu-open .chat-item-status,.chat-item.menu-open .chat-item-title,.chat-item:hover .chat-item-status,.chat-item:hover .chat-item-title{padding-right:24px}.chat-item-title{font-weight:500}.chat-item-status,.chat-item-title{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-item-status{font-size:var(--text-xs);color:var(--faint)}.chat-item-status.attention{color:var(--warning);font-weight:500}.chat-item-status.attention:before{content:"● ";font-size:8px;vertical-align:1px}.chat-list-empty{padding:var(--sp-2) 22px;font-size:var(--text-xs);color:var(--faint)}.ctx-menu{position:fixed;z-index:120;min-width:132px;padding:4px;background:hsla(0,0%,100%,.85);border:1px solid var(--border);border-radius:var(--radius-md);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);box-shadow:var(--shadow-lg);animation:fade-in .1s ease-out}.ctx-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text);font-size:var(--text-sm);font-weight:400;cursor:pointer;text-align:left;justify-content:flex-start}.ctx-menu button:hover{background:var(--sidebar-hover)}.ctx-menu button.danger{color:var(--danger);background:transparent}.ctx-menu button.danger:hover{background:var(--danger-soft)}.manage-nav{flex-shrink:0}.manage-nav a{display:flex;align-items:center;padding:6px var(--sp-3);margin:0 var(--sp-2) 2px;border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-sm);transition:background .15s,color .15s}.manage-nav a:hover{background:var(--sidebar-hover);text-decoration:none}.manage-nav a.active{background:var(--sidebar-active);font-weight:600}.nav-icon{margin-right:9px;font-size:var(--text-base);display:inline-flex;align-items:center;color:var(--muted)}.chat-main{padding:0!important;max-width:none!important}.chat-main,.chat-page{display:flex;flex-direction:column;height:100vh;background:var(--bg)}.chat-header,.chat-page{position:relative}.chat-header{display:flex;align-items:center;gap:10px;padding:13px 28px;border-bottom:1px solid var(--border);background:linear-gradient(to right,var(--card),#f7fafe 60%,#f2f8fe);flex-shrink:0;z-index:5}.chat-header:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(to right,var(--primary),var(--accent) 40%,transparent 85%);opacity:.35;pointer-events:none}.chat-title{font-size:var(--text-md);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-scroll{flex:1 1;overflow-y:auto;padding:28px 0 var(--sp-4);background:radial-gradient(900px 260px at 50% -120px,rgba(37,99,235,.055),transparent 70%),var(--bg)}.chat-loading{padding:80px;text-align:center;color:var(--muted)}.chat-error{max-width:780px;margin:var(--sp-2) auto;padding:10px var(--sp-4);border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger);font-size:var(--text-sm)}.scroll-to-bottom{position:absolute;right:28px;bottom:96px;z-index:6;width:36px;height:36px;padding:0;border-radius:50%;background:var(--card);border:1px solid var(--border-strong);color:var(--muted);box-shadow:var(--shadow-md);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;animation:fade-in .15s ease-out}.scroll-to-bottom:hover{background:var(--sidebar-hover);color:var(--text)}.msg{display:flex;max-width:820px;margin:0 auto 26px;padding:0 28px;gap:var(--sp-3);content-visibility:auto;contain-intrinsic-size:auto 160px}.chat-scroll .msg{animation:msg-in .28s ease-out backwards}@keyframes msg-in{0%{opacity:0;transform:translateY(8px)}}.msg.user{flex-direction:row-reverse}.msg-avatar{width:30px;height:30px;border-radius:50%;flex-shrink:0;margin-top:2px;background:var(--grad-brand);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--text-base);box-shadow:0 2px 8px rgba(37,99,235,.28)}.msg:has(.live-run) .msg-avatar{animation:avatar-breathe 2.2s ease-in-out infinite}@keyframes avatar-breathe{0%,to{box-shadow:0 2px 8px rgba(37,99,235,.28),0 0 0 0 rgba(37,99,235,.3)}50%{box-shadow:0 2px 12px rgba(37,99,235,.4),0 0 0 7px rgba(37,99,235,0)}}.msg-body{flex:1 1;min-width:0}.msg.user .msg-body{display:flex;justify-content:flex-end}.msg-agent{font-size:var(--text-xs);color:var(--muted);font-weight:600;margin-bottom:5px;display:flex;align-items:center;gap:6px}.msg-agent:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--faint)}.msg-agent.agent-blue:before{background:var(--primary);box-shadow:0 0 6px rgba(37,99,235,.55)}.msg-agent.agent-cyan:before{background:var(--info);box-shadow:0 0 6px rgba(8,145,178,.5)}.msg-agent.agent-orange:before{background:var(--orange);box-shadow:0 0 6px rgba(217,119,6,.45)}.msg-agent.agent-green:before{background:var(--success);box-shadow:0 0 6px rgba(15,153,96,.5)}.msg-agent.agent-amber:before{background:var(--warning);box-shadow:0 0 6px rgba(180,83,9,.45)}.bubble{border-radius:var(--radius-lg);font-size:var(--text-base)}.bubble.assistant{background:var(--card);border:1px solid var(--border);padding:var(--sp-4) var(--sp-5);border-top-left-radius:6px;box-shadow:var(--shadow-sm)}.bubble.user{background:var(--grad-bubble-user);color:#fff;padding:var(--sp-3) 18px;border:none;box-shadow:0 4px 16px rgba(37,99,235,.22);border-radius:var(--radius-lg);border-bottom-right-radius:6px;max-width:85%}.bubble.user .brief-line,.bubble.user .brief-rows{color:hsla(0,0%,100%,.82)}.bubble.user .brief-title{color:#fff}.bubble.user .badge{background:hsla(0,0%,100%,.22);color:#fff;border-color:transparent}.bubble.user .review-summary{color:#fff}.bubble.user .review-note,.bubble.user .review-summary .review-note{color:#ffd9df}.bubble.user a{color:#fff;text-decoration:underline}.bubble.user code{background:hsla(0,0%,100%,.18);color:#fff}.bubble.user ::selection{background:hsla(0,0%,100%,.28)}.brief-card .brief-title{font-weight:600;margin-bottom:6px}.brief-rows{display:flex;flex-wrap:wrap;gap:6px var(--sp-4)}.brief-line,.brief-rows{font-size:var(--text-sm);color:var(--muted)}.brief-line{margin-top:6px}.review-summary{font-size:var(--text-sm)}.review-summary .review-note{color:var(--danger);margin-top:var(--sp-1)}.card-head{margin-bottom:10px;color:var(--text);font-weight:500;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.card-head .head-action{margin-left:auto}.intent-item{border-top:1px solid var(--border);padding:13px 0}.intent-item:first-of-type{border-top:none}.intent-item.rejected{opacity:.55}.intent-q{display:flex;gap:9px;align-items:baseline}.intent-idx{flex-shrink:0;width:21px;height:21px;border-radius:50%;background:var(--primary-soft);color:var(--primary);font-size:var(--text-xs);display:inline-flex;align-items:center;justify-content:center}.intent-idx,.intent-text{font-weight:600}.intent-meta{display:flex;gap:6px;margin:6px 0 0 30px;flex-wrap:wrap}.intent-rationale{margin:6px 0 0 30px;font-size:var(--text-sm);color:var(--muted)}.intent-item .review-btns,.intent-item .review-reject-row{margin:10px 0 0 30px}.article-item{border-top:1px solid var(--border);padding:13px 0}.article-item:first-of-type{border-top:none}.article-item.rejected{opacity:.55}.article-title{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:none;padding:0;color:var(--text);font-size:var(--text-base);font-weight:600;text-align:left;cursor:pointer}.article-title:hover{background:none;color:var(--primary)}.article-arrow{color:var(--faint);flex-shrink:0;margin-left:var(--sp-2);font-size:var(--text-xs);display:inline-flex;align-items:center}.article-meta{display:flex;gap:var(--sp-2);margin-top:var(--sp-1);flex-wrap:wrap;align-items:center}.article-summary{margin-top:6px;font-size:var(--text-sm);color:var(--muted)}.article-content{margin-top:10px;padding:var(--sp-4) 18px;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-md);max-height:480px;overflow-y:auto}.article-item .review-btns,.article-item .review-reject-row{margin-top:10px}.audit-badge{display:inline-flex;align-items:center;gap:4px}.audit-report{margin-top:10px;padding:10px 14px;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm)}.audit-report-head{font-weight:600}.audit-report-list{margin:6px 0 0;padding:0;list-style:none}.audit-report-list li{display:flex;gap:var(--sp-2);align-items:baseline;padding:3px 0;color:var(--muted)}.audit-report-list .badge{flex-shrink:0}.md-body{font-size:var(--text-base);line-height:1.8;word-break:break-word}.md-body h1,.md-body h2{font-size:var(--text-lg);margin:14px 0 var(--sp-2)}.md-body h3,.md-body h4{font-size:var(--text-md);margin:var(--sp-3) 0 6px}.md-body p{margin:var(--sp-2) 0}.md-body ol,.md-body ul{margin:var(--sp-2) 0;padding-left:22px}.md-body table{margin:10px 0}.md-body table td,.md-body table th{border:1px solid var(--border);padding:6px 10px}.md-body code{background:var(--chip);padding:1px 5px;border-radius:4px;font-size:var(--text-sm)}.md-body blockquote{border-left:3px solid var(--border-strong);padding-left:var(--sp-3);color:var(--muted);margin:var(--sp-2) 0}.md-body img{max-width:100%;border-radius:var(--radius-sm)}.plan-item{border-top:1px solid var(--border);padding:13px 0}.plan-item:first-of-type{border-top:none}.plan-item.rejected{opacity:.55}.plan-line{display:flex;gap:var(--sp-2);align-items:center;flex-wrap:wrap}.plan-article{font-weight:600}.plan-arrow{color:var(--faint)}.plan-media{font-weight:600;color:var(--primary)}.plan-price{margin-left:auto;font-weight:700}.plan-reason{margin-top:var(--sp-1);font-size:var(--text-sm);color:var(--muted)}.plan-meta{display:flex;gap:var(--sp-2);margin-top:6px;align-items:center;flex-wrap:wrap}.plan-url{font-size:var(--text-sm)}.plan-item .review-btns,.plan-item .review-reject-row{margin-top:10px}.publish-item{display:flex;gap:var(--sp-2);align-items:baseline;flex-wrap:wrap;border-top:1px solid var(--border);padding:11px 0}.publish-item:first-of-type{border-top:none}.publish-title{font-weight:600}.review-btns,.review-reject-row{display:flex;gap:var(--sp-2)}.review-reject-row{align-items:center}.review-reject-row input{flex:1 1}.review-note{margin-top:6px;font-size:var(--text-sm);color:var(--danger)}.thinking{margin:10px 0;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle);overflow:hidden}.thinking.active{border-color:var(--primary-soft-border);background:linear-gradient(135deg,#f6faff,#f0f8fe);box-shadow:0 0 0 1px rgba(37,99,235,.04),0 2px 12px rgba(37,99,235,.08)}.thinking-toggle{display:flex;align-items:center;gap:var(--sp-2);width:100%;background:none;border:none;padding:9px 14px;color:var(--muted);font-size:var(--text-sm);cursor:pointer;text-align:left;font-weight:500}.thinking-toggle:hover{background:var(--chip)}.thinking-icon{color:var(--info);display:inline-flex;align-items:center}.thinking-icon.spin{animation:pulse 1.2s ease-in-out infinite}.thinking-arrow{margin-left:auto;color:var(--faint);font-size:11px;display:inline-flex;align-items:center}.thinking-content{padding:var(--sp-1) 14px var(--sp-3);font-size:var(--text-xs);line-height:1.7;color:var(--muted);white-space:pre-wrap;word-break:break-word;max-height:220px;overflow-y:auto}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.progress-bubble{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.progress-label{font-size:var(--text-sm);color:var(--text)}.progress-label,.running-text{background:linear-gradient(90deg,var(--text) 0,var(--text) 35%,var(--primary) 50%,var(--accent) 58%,var(--text) 72%,var(--text) 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:text-sheen 2.6s linear infinite}@keyframes text-sheen{0%{background-position:110% 0}to{background-position:-110% 0}}.progress-track{flex-basis:100%;height:4px;background:var(--chip);margin-top:6px}.progress-fill,.progress-track{border-radius:2px;overflow:hidden}.progress-fill{display:block;height:100%;position:relative;background:var(--grad-brand);transition:width .4s}.progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.55),transparent);background-size:40% 100%;background-repeat:no-repeat;animation:progress-sheen 1.6s ease-in-out infinite}@keyframes progress-sheen{0%{background-position:-60% 0}to{background-position:160% 0}}.spinner{width:14px;height:14px;border-radius:50%;flex-shrink:0;border:2px solid var(--primary-soft-border);border-top-color:var(--primary);animation:rotate .8s linear infinite;display:inline-block}@keyframes rotate{to{transform:rotate(1turn)}}.live-run{min-width:240px}.action-bar{flex-shrink:0;padding:var(--sp-2) 28px var(--sp-5);background:var(--bg);position:relative}.action-bar:before{content:"";position:absolute;left:0;right:0;top:-32px;height:32px;background:linear-gradient(to bottom,hsla(0,0%,100%,0),var(--bg));pointer-events:none}.action-inner{max-width:780px;margin:0 auto;background:var(--card);border:1px solid var(--border-strong);border-radius:var(--radius-lg);padding:var(--sp-3) var(--sp-4);box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:10px;transition:border-color .15s,box-shadow .15s}.action-inner:focus-within{border-color:transparent;background:linear-gradient(var(--card),var(--card)) padding-box,var(--grad-brand) border-box;box-shadow:var(--shadow-md),0 4px 20px rgba(37,99,235,.15)}.action-guide{justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap}.action-guide,.action-hint{display:flex;align-items:center}.action-hint{font-size:var(--text-sm);color:var(--muted);line-height:1.6;gap:var(--sp-2);min-width:0}.action-secondary{display:flex;gap:var(--sp-2);flex-wrap:wrap;margin-left:auto}.action-pill{padding:5px 14px;font-size:var(--text-sm);font-weight:500;background:transparent;color:var(--muted);border:1px solid var(--border-strong);border-radius:999px;transition:background .15s,color .15s,border-color .15s}.action-pill:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--primary-soft-border)}.action-pill{display:inline-flex;align-items:center;gap:6px}.action-pill.active{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.action-pill:disabled{opacity:.45;cursor:not-allowed}.action-pill:disabled:hover{background:transparent;color:var(--muted);border-color:var(--border-strong)}.media-picker-toolbar{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2);flex-wrap:wrap}.media-picker-search{flex:1 1;min-width:200px;display:flex;align-items:center;gap:6px;border:1px solid var(--border-strong);border-radius:999px;padding:5px 12px;color:var(--muted)}.media-picker-search input{flex:1 1;min-width:0;border:none;padding:0;font-size:var(--text-sm);background:transparent;box-shadow:none;outline:none}.media-picker-search input:focus{box-shadow:none}.media-picker-clear{display:inline-flex;padding:2px;background:transparent;border:none;color:var(--muted);cursor:pointer}.media-filter-wrap,.media-picker-bulk{display:flex;gap:var(--sp-2)}.media-filter-wrap{flex-direction:column;padding:var(--sp-2) 0;margin-bottom:var(--sp-2);border-bottom:1px solid var(--border)}.media-type-pills{display:flex;gap:6px;flex-wrap:wrap}.media-type-pill{padding:3px 10px;border-radius:999px;font-size:var(--text-xs);font-weight:500;border:1px solid var(--border-strong);background:transparent;color:var(--muted);cursor:pointer;transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.media-type-pill:hover{background:var(--sidebar-hover);color:var(--text)}.media-type-pill.active{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.media-filter-controls{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.media-filter-select select{height:28px;padding:0 8px;font-size:var(--text-xs);border-radius:var(--radius-xs);border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);cursor:pointer;outline:none}.media-filter-select select:focus{border-color:var(--primary)}.media-price-range{display:flex;align-items:center;gap:4px;border:1px solid var(--border-strong);border-radius:var(--radius-xs);padding:0 8px;height:28px;background:var(--surface-2)}.media-price-label{font-size:var(--text-xs);color:var(--muted);flex-shrink:0}.media-price-input{width:42px;border:none;padding:0;font-size:var(--text-xs);text-align:center;background:transparent;box-shadow:none;outline:none;color:var(--text);-moz-appearance:textfield}.media-price-input::-webkit-inner-spin-button,.media-price-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.media-filter-reset,.media-price-sep{font-size:var(--text-xs);color:var(--muted)}.media-filter-reset{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;font-weight:500;border:1px dashed var(--border-strong);background:transparent;cursor:pointer;transition:color .15s,border-color .15s;white-space:nowrap}.media-filter-reset:hover{color:var(--text);border-color:var(--text)}.media-picker-list{max-height:42vh;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:var(--sp-3)}.media-picker-row{display:flex;align-items:center;gap:10px;padding:9px 12px;margin:0;border-bottom:1px solid var(--border);cursor:pointer;font-weight:400}.media-picker-row:last-child{border-bottom:none}.media-picker-row:hover{background:var(--sidebar-hover)}.media-picker-row.checked{background:var(--primary-soft)}.media-picker-row input[type=checkbox]{width:14px;height:14px;padding:0;border:none;box-shadow:none;flex-shrink:0;accent-color:var(--primary);transition:none}.media-picker-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.media-picker-name{font-size:var(--text-sm);font-weight:600;color:var(--text);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.media-picker-industry{font-weight:400}.media-picker-industry,.media-picker-meta{font-size:var(--text-xs);color:var(--muted)}.media-picker-meta{line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-picker-price{font-weight:700;color:var(--text);flex-shrink:0;font-size:var(--text-sm)}.media-picker-empty{padding:24px;text-align:center;font-size:var(--text-sm);color:var(--muted)}.media-picker-actions{align-items:center}.media-picker-count{margin-right:auto;font-size:var(--text-xs);color:var(--muted)}.media-picker-capped{color:var(--muted)}.media-picker-filtered{color:var(--primary)}@keyframes media-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.media-skeleton-wrap{padding:4px 0}.media-skeleton-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--border)}.media-skeleton-row:last-child{border-bottom:none}.media-skeleton-check{width:14px;height:14px;border-radius:3px;flex-shrink:0;background:linear-gradient(90deg,var(--border) 25%,var(--sidebar-hover) 50%,var(--border) 75%);background-size:800px 100%;animation:media-shimmer 1.4s linear infinite}.media-skeleton-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:6px}.media-skeleton-title{height:13px;animation:media-shimmer 1.4s linear infinite}.media-skeleton-meta,.media-skeleton-title{border-radius:4px;background:linear-gradient(90deg,var(--border) 25%,var(--sidebar-hover) 50%,var(--border) 75%);background-size:800px 100%}.media-skeleton-meta{height:10px;animation:media-shimmer 1.4s linear .1s infinite}.media-skeleton-price{width:36px;height:13px;border-radius:4px;flex-shrink:0;background:linear-gradient(90deg,var(--border) 25%,var(--sidebar-hover) 50%,var(--border) 75%);background-size:800px 100%;animation:media-shimmer 1.4s linear .2s infinite}.action-cta-row{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.action-primary{padding:10px 24px;font-size:var(--text-base);border-radius:999px;font-weight:600;display:inline-flex;align-items:center;gap:10px}.cost-badge{font-size:var(--text-xs);font-weight:500;line-height:1;padding:3px 8px;border-radius:999px;background:hsla(0,0%,100%,.22);color:#fff}.action-primary:disabled .cost-badge{background:hsla(0,0%,100%,.3)}.action-balance{font-size:var(--text-xs);color:var(--faint);display:inline-flex;align-items:center;gap:5px}.action-balance.warning{color:var(--warning)}.action-running{display:flex;align-items:center;gap:10px;padding:5px 0;font-size:var(--text-sm);color:var(--text)}.action-running-sub{color:var(--faint);font-size:var(--text-xs)}.feedback-box{display:flex;flex-direction:column;gap:6px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);padding:10px var(--sp-3) var(--sp-2)}.feedback-box.disabled{opacity:.75}.feedback-input{width:100%;border:none;outline:none;resize:none;background:transparent;font:inherit;font-size:var(--text-base);line-height:1.6;color:var(--text);max-height:120px;padding:0}.feedback-input::placeholder{color:var(--faint)}.feedback-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-3)}.feedback-meta{font-size:var(--text-xs);color:var(--faint);line-height:1.5;display:inline-flex;align-items:center;gap:5px;min-width:0}.feedback-meta.warning{color:var(--warning)}.feedback-send{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:999px;background:var(--grad-brand);color:#fff;cursor:pointer;box-shadow:0 2px 8px rgba(37,99,235,.26);transition:box-shadow .15s,transform .1s,background .15s}.feedback-send:hover:not(:disabled){box-shadow:var(--glow-primary);transform:translateY(-1px)}.feedback-send:disabled{background:var(--chip);color:var(--faint);cursor:not-allowed;box-shadow:none}.chat-text{font-size:var(--text-sm);line-height:1.7;white-space:pre-wrap;word-break:break-word}.new-chat-wrap{display:flex;flex-direction:column;align-items:center;padding:8vh var(--sp-6) var(--sp-8);flex:1 1;min-height:0;overflow-y:auto;position:relative;background:radial-gradient(ellipse 50% 38% at 50% 0,rgba(37,99,235,.07),transparent 70%),radial-gradient(ellipse 40% 30% at 12% 28%,rgba(14,165,233,.06),transparent 70%),radial-gradient(ellipse 40% 30% at 90% 60%,rgba(37,99,235,.05),transparent 70%),var(--bg)}.new-chat-wrap:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(37,99,235,.045) 1px,transparent 0),linear-gradient(90deg,rgba(37,99,235,.045) 1px,transparent 0);background-size:44px 44px;mask-image:radial-gradient(ellipse 75% 55% at 50% 18%,#000 25%,transparent 78%);-webkit-mask-image:radial-gradient(ellipse 75% 55% at 50% 18%,#000 25%,transparent 78%)}.new-chat-wrap>*,.welcome-head{position:relative}.welcome-head{text-align:center;margin-bottom:28px}.welcome-head>:not(.welcome-blobs){position:relative;z-index:1}.welcome-blobs{position:absolute;left:50%;top:-40px;width:0;pointer-events:none;z-index:0}.welcome-blobs i{position:absolute;border-radius:50%;filter:blur(28px);will-change:transform}.welcome-blobs i:first-child{width:180px;height:180px;left:-210px;top:-30px;background:radial-gradient(circle,rgba(67,83,255,.3),transparent 70%);animation:blob-drift 14s ease-in-out infinite alternate}.welcome-blobs i:nth-child(2){width:220px;height:220px;left:30px;top:-60px;background:radial-gradient(circle,rgba(8,181,240,.26),transparent 70%);animation:blob-drift 17s ease-in-out -4s infinite alternate}.welcome-blobs i:nth-child(3){width:150px;height:150px;left:-80px;top:60px;background:radial-gradient(circle,rgba(37,99,235,.28),transparent 70%);animation:blob-drift 21s ease-in-out -9s infinite alternate}@keyframes blob-drift{50%{transform:translate(18px,-14px) scale(1.08)}}.welcome-mark{width:52px;height:52px;border-radius:var(--radius-lg);margin:0 auto var(--sp-4);background:var(--grad-brand-vivid);color:#fff;font-size:24px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(37,99,235,.3);animation:welcome-glow 3s ease-in-out infinite}@keyframes welcome-glow{0%,to{box-shadow:0 8px 24px rgba(37,99,235,.3)}50%{box-shadow:0 8px 32px rgba(14,165,233,.48)}}.welcome-title{font-size:30px;font-weight:700;letter-spacing:-.4px;margin-bottom:var(--sp-2);background:linear-gradient(100deg,var(--text) 32%,var(--primary) 68%,var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}.welcome-sub{font-size:var(--text-base);color:var(--muted);max-width:480px;line-height:1.7}.composer{width:100%;max-width:640px;border:1px solid var(--border);border-radius:var(--radius-xl);padding:26px 30px 28px;box-shadow:var(--shadow-md),0 24px 60px -32px rgba(37,99,235,.28);background:linear-gradient(to right,var(--primary),var(--accent),transparent 92%) top /100% 3px no-repeat,radial-gradient(420px 200px at 88% -60px,rgba(8,181,240,.1),transparent 70%),radial-gradient(360px 220px at -10% 110%,rgba(109,92,255,.06),transparent 70%),var(--card);flex-shrink:0}.composer-section{display:flex;align-items:center;gap:10px;margin:22px 0 2px;padding-top:18px;border-top:1px dashed var(--border)}.composer-section:first-child{margin-top:0;padding-top:0;border-top:none}.composer-step-no{width:22px;height:22px;border-radius:7px;flex-shrink:0;background:var(--grad-brand);color:#fff;font-size:var(--text-xs);font-weight:700;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(37,99,235,.28)}.composer-section b{font-size:var(--text-sm);font-weight:700;letter-spacing:.2px}.composer-section i{font-style:normal;font-size:var(--text-xs);color:var(--faint)}.composer-title{font-size:16px;font-weight:700;margin-bottom:var(--sp-1)}.composer-sub{font-size:var(--text-sm);color:var(--muted);margin-bottom:14px;line-height:1.7}.composer-empty{padding:18px var(--sp-5);background:var(--warning-soft);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--warning)}.composer-submit{width:100%;margin-top:var(--sp-5);padding:var(--sp-3);font-size:var(--text-md);border-radius:999px;font-weight:600}.auto-mode-card{display:flex;align-items:center;gap:var(--sp-3);margin-top:var(--sp-4);padding:var(--sp-3) var(--sp-4);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:border-color .15s,background .15s}.auto-mode-card.on,.auto-mode-card:hover{border-color:var(--info)}.auto-mode-card.on{background:var(--info-soft)}.auto-mode-card input{display:none}.auto-mode-text{flex:1 1}.auto-mode-title{font-weight:600;font-size:var(--text-sm)}.auto-mode-desc{font-size:var(--text-xs);color:var(--muted);line-height:1.6;margin-top:2px}.auto-mode-switch{flex-shrink:0;width:36px;height:20px;border-radius:999px;background:var(--chip);position:relative;transition:background .15s}.auto-mode-switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:left .15s}.auto-mode-card.on .auto-mode-switch{background:linear-gradient(135deg,var(--info),var(--accent));box-shadow:0 1px 6px rgba(8,145,178,.35)}.auto-mode-card.on .auto-mode-switch:after{left:18px}.flow-steps{display:flex;gap:6px;align-items:center;justify-content:center;margin-top:14px;flex-wrap:wrap;font-size:var(--text-xs)}.flow-step{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:var(--sp-1) var(--sp-3);font-weight:500;background:hsla(0,0%,100%,.75);border:1px solid var(--border);color:var(--muted);box-shadow:var(--shadow-sm)}.flow-step svg{flex-shrink:0}.flow-step.blue{background:var(--primary-soft);border-color:var(--primary-soft-border);color:var(--primary)}.flow-step.cyan{background:var(--info-soft);border-color:var(--info-soft-border);color:var(--info)}.flow-step.orange{background:var(--orange-soft);border-color:var(--orange-soft-border);color:var(--orange)}.flow-step.green{background:var(--success-soft);border-color:var(--success-soft-border);color:var(--success)}.flow-sep{color:var(--faint)}.kb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:var(--sp-4);gap:var(--sp-4)}.kb-grid.products{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.kb-card{display:flex;flex-direction:column;gap:10px;text-align:left;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);padding:18px;box-shadow:var(--shadow-sm);color:var(--text);font-size:var(--text-base);font-weight:400;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .1s}.kb-card:hover{border-color:var(--primary-soft-border);box-shadow:var(--shadow-md);transform:translateY(-1px)}.kb-card:active{transform:none}.kb-card.as-item{padding:14px 16px}.kb-card:not(.kb-card-new){position:relative;overflow:hidden}.kb-card:not(.kb-card-new):before{content:"";position:absolute;right:-44px;top:-44px;width:140px;height:140px;border-radius:50%;pointer-events:none}.kb-card:not(.kb-card-new)>*{position:relative}.kb-grid>.kb-card:nth-child(4n+1):not(.kb-card-new){background:linear-gradient(155deg,#ecf3ff,#fbfdff 62%);border-color:#d6e3fb}.kb-grid>.kb-card:nth-child(4n+1):not(.kb-card-new):before{background:radial-gradient(circle,rgba(37,99,235,.15),transparent 70%)}.kb-grid>.kb-card:nth-child(4n+2):not(.kb-card-new){background:linear-gradient(155deg,#e7f7fc,#fbfeff 62%);border-color:#cdeaf4}.kb-grid>.kb-card:nth-child(4n+2):not(.kb-card-new):before{background:radial-gradient(circle,rgba(8,145,178,.14),transparent 70%)}.kb-grid>.kb-card:nth-child(4n+2):not(.kb-card-new) .kb-card-logo{background:linear-gradient(135deg,#0891b2,#08b5f0)}.kb-grid>.kb-card:nth-child(4n+3):not(.kb-card-new){background:linear-gradient(155deg,#f1efff,#fdfcff 62%);border-color:#e0dcf9}.kb-grid>.kb-card:nth-child(4n+3):not(.kb-card-new):before{background:radial-gradient(circle,rgba(109,92,255,.14),transparent 70%)}.kb-grid>.kb-card:nth-child(4n+3):not(.kb-card-new) .kb-card-logo{background:linear-gradient(135deg,#6d5cff,#9d7bfa)}.kb-grid>.kb-card:nth-child(4n):not(.kb-card-new){background:linear-gradient(155deg,#e8f8f0,#fbfffd 62%);border-color:#cdeeda}.kb-grid>.kb-card:nth-child(4n):not(.kb-card-new):before{background:radial-gradient(circle,rgba(15,153,96,.14),transparent 70%)}.kb-grid>.kb-card:nth-child(4n):not(.kb-card-new) .kb-card-logo{background:linear-gradient(135deg,#0f9960,#2ecf8e)}.kb-card-head{display:flex;align-items:center;gap:10px;width:100%}.kb-card-logo{width:36px;height:36px;border-radius:10px;flex-shrink:0;background:var(--grad-brand);color:#fff;font-size:var(--text-md);font-weight:700;display:inline-flex;align-items:center;justify-content:center}.kb-card-title{flex:1 1;min-width:0;display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.kb-card-title b{font-size:var(--text-md);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kb-card-arrow{color:var(--faint);flex-shrink:0}.kb-card-desc{font-size:var(--text-sm);color:var(--muted);line-height:1.6;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(2 * 1.6em)}.kb-card-foot{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:var(--text-xs);color:var(--muted);margin-top:auto}.kb-card-foot span{display:inline-flex;align-items:center;gap:5px}.kb-card-foot .kb-card-time{margin-left:auto;color:var(--faint)}.kb-card-new{align-items:center;justify-content:center;text-align:center;border-style:dashed;border-color:var(--border-strong);background:var(--bg-subtle);box-shadow:none;min-height:172px;gap:var(--sp-2)}.kb-card-new:hover{border-color:var(--primary);background:var(--primary-soft);transform:none}.kb-card-new b{font-size:var(--text-md)}.kb-card-new .kb-card-desc{min-height:0}.kb-new-icon{width:40px;height:40px;border-radius:50%;background:var(--primary-soft);color:var(--primary);display:inline-flex;align-items:center;justify-content:center}.kb-card-new:hover .kb-new-icon{background:var(--bg)}.kb-progress-row{display:flex;align-items:center;gap:10px;width:100%}.kb-progress{flex:1 1;height:6px;border-radius:3px;background:var(--chip);overflow:hidden}.kb-progress-fill{display:block;height:100%;border-radius:3px;transition:width .3s}.kb-progress-fill.low{background:var(--danger)}.kb-progress-fill.mid{background:var(--orange)}.kb-progress-fill.high{background:var(--success)}.kb-progress-label{flex-shrink:0;font-size:var(--text-xs);color:var(--muted);white-space:nowrap}.kb-back{display:inline-flex;align-items:center;gap:6px;margin-bottom:14px;font-size:var(--text-sm);color:var(--muted)}.kb-back:hover{color:var(--primary);text-decoration:none}.kb-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.kb-head-logo{width:46px;height:46px;border-radius:var(--radius-md);flex-shrink:0;background:var(--grad-brand);color:#fff;font-size:var(--text-xl);font-weight:700;display:inline-flex;align-items:center;justify-content:center}.kb-head-main{flex:1 1;min-width:200px;display:flex;flex-direction:column;gap:6px}.kb-head-title{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.kb-head-title b{font-size:var(--text-lg);font-weight:700}.kb-section-head{display:flex;align-items:flex-start;gap:var(--sp-3);justify-content:space-between;margin-bottom:14px}.kb-section-head h3{margin-bottom:2px}.kb-section-head>button,.kb-section-head>label{flex-shrink:0}.kb-field-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--sp-3);gap:var(--sp-3)}.kb-field{border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px var(--sp-3) var(--sp-3);background:var(--bg-subtle);min-width:0}.kb-field-label{font-size:var(--text-xs);color:var(--muted);font-weight:600;margin-bottom:5px}.kb-field-value{font-size:var(--text-sm);line-height:1.7;white-space:pre-wrap;word-break:break-word;max-height:132px;overflow-y:auto}.kb-field.empty{background:var(--bg);border-style:dashed}.kb-field-fill{display:inline-flex;align-items:center;gap:5px;padding:3px 0;border:none;background:transparent;color:var(--faint);font-size:var(--text-sm);font-weight:400;cursor:pointer}.kb-field-fill:hover{background:transparent;color:var(--primary)}.kb-group-hint{font-size:var(--text-xs);color:var(--faint);font-weight:400;margin-left:auto}.kb-upload-btn{display:inline-flex;align-items:center;gap:6px;padding:5px var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;color:var(--text);font-weight:500}.kb-upload-btn:hover{background:var(--sidebar-hover)}.field-group{border:1px solid var(--border);border-radius:var(--radius-md);margin-top:var(--sp-3);overflow:hidden}.field-group summary{padding:var(--sp-3) 14px;font-size:var(--text-base);font-weight:600;cursor:pointer;background:var(--bg-subtle);list-style:none;display:flex;align-items:center;gap:var(--sp-2);-webkit-user-select:none;-moz-user-select:none;user-select:none}.field-group summary::-webkit-details-marker{display:none}.field-group summary:hover{background:var(--chip)}.field-group summary .group-arrow{margin-left:auto;color:var(--faint);transition:transform .15s;display:inline-flex}.field-group[open] summary{border-bottom:1px solid var(--border)}.field-group[open] summary .group-arrow{transform:rotate(180deg)}.field-group .group-body{padding:var(--sp-1) 14px 14px}@media (min-width:1600px){.msg{max-width:1060px}.action-inner,.chat-error{max-width:1020px}}.mobile-topbar,.sidebar-overlay{display:none}@media (max-width:768px){.mobile-topbar{display:flex;align-items:center;gap:10px;position:-webkit-sticky;position:sticky;top:0;z-index:60;padding:10px var(--sp-4);background:var(--bg);border-bottom:1px solid var(--border);font-size:var(--text-md);font-weight:700}.mobile-topbar .icon-btn{width:34px;height:34px}.layout{flex-direction:column}.sidebar,.sidebar.chat-sidebar{position:fixed;left:0;top:0;bottom:0;z-index:80;width:min(280px,82vw);height:100dvh;transform:translateX(-100%);transition:transform .2s ease-out;box-shadow:none;background:hsla(0,0%,100%,.92);overflow-y:auto}.sidebar.open{transform:translateX(0);box-shadow:var(--shadow-lg)}.chat-item-menu{display:inline-flex}.chat-item .chat-item-status,.chat-item .chat-item-title{padding-right:24px}.sidebar-overlay{display:block;position:fixed;inset:0;z-index:70;background:rgba(23,30,45,.35);animation:fade-in .15s ease-out}.main{padding:var(--sp-4)}.chat-main{height:auto;min-height:calc(100dvh - 55px)}.chat-page{height:calc(100dvh - 55px)}.chat-header{padding:10px var(--sp-4)}.msg{padding:0 var(--sp-4)}.action-bar{padding:var(--sp-2) var(--sp-4) var(--sp-4)}.action-guide{flex-direction:column;align-items:flex-start;gap:var(--sp-2)}.action-secondary{margin-left:0}.action-cta-row .action-primary{flex:1 1;justify-content:center}.scroll-to-bottom{right:var(--sp-4)}.grid2,.kb-field-grid,.kb-grid,.kb-grid.products{grid-template-columns:1fr}.kb-section-head{flex-wrap:wrap}.login-box{padding:28px 22px 24px}.login-split{flex-direction:column}.login-hero{flex:none;padding:var(--sp-7) var(--sp-5);justify-content:flex-start}.hero-brand{margin-bottom:var(--sp-4)}.hero-slogan{font-size:24px}.hero-slogan,.hero-sub{margin-bottom:var(--sp-3)}.hero-points{gap:var(--sp-2)}.hero-point{padding:10px var(--sp-3)}.hero-point-icon{width:32px;height:32px}.hero-foot,.hero-point-text i{display:none}.login-side{flex:1 1;padding:var(--sp-5) var(--sp-4) var(--sp-7)}.new-chat-wrap{padding:var(--sp-6) var(--sp-4) var(--sp-7)}.composer{padding:var(--sp-5) var(--sp-4)}.bubble.user{max-width:95%}}.agent-page-title{display:flex;align-items:center;gap:8px;margin-bottom:var(--sp-2)}.agent-page-desc{color:var(--muted);font-size:var(--text-sm);line-height:1.7;margin-bottom:var(--sp-4);max-width:720px}.cost-chip{padding:1px 8px;border-radius:999px;font-size:var(--text-xs);background:hsla(0,0%,100%,.18);color:#fff;font-weight:500}button:disabled .cost-chip{background:hsla(0,0%,100%,.25)}.intent-set-card{padding:var(--sp-4) 18px}.intent-set-head{display:flex;align-items:center;gap:8px;cursor:pointer;flex-wrap:wrap}.intent-set-toggle{display:inline-flex;align-items:center;color:var(--muted);flex-shrink:0}.intent-set-name{font-weight:600;font-size:var(--text-base)}.rationale-cell{color:var(--muted);font-size:var(--text-xs);line-height:1.6}.weight-cell{display:flex;align-items:center;gap:8px}.weight-cell b{font-size:var(--text-sm);min-width:20px}.weight-bar{flex:1 1;height:6px;border-radius:999px;background:var(--chip);overflow:hidden;min-width:50px}.weight-bar>span{display:block;height:100%;border-radius:999px;background:var(--grad-brand)}.weight-input{display:flex;align-items:center;gap:10px;padding-top:8px}.weight-input input[type=range]{padding:0}.weight-input b{min-width:26px;text-align:right}.strategy-report-body{max-height:70vh;overflow-y:auto;padding-right:6px}@media (max-width:720px){.intent-set-head .hint{margin-left:0!important;width:100%;order:9}.strategy-report-body{max-height:60vh}}.question-mode-tabs{display:inline-flex;gap:4px;padding:3px;background:var(--chip);border-radius:var(--radius-sm);margin-bottom:8px}.question-mode-tabs button{padding:4px 12px;border-radius:6px;background:transparent;color:var(--muted);font-size:var(--text-sm);font-weight:500;border:none}.question-mode-tabs button:hover{background:hsla(0,0%,100%,.6);color:var(--text)}.question-mode-tabs button.active{background:var(--bg);color:var(--text);box-shadow:var(--shadow-sm)}.question-picker{max-height:240px;overflow-y:auto;border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:6px;background:var(--bg)}.question-group{font-size:var(--text-xs);color:var(--muted);font-weight:600;padding:8px 8px 4px;letter-spacing:.3px}.question-option{display:flex;align-items:center;gap:8px;padding:7px 8px;margin:0;border-radius:6px;cursor:pointer;font-weight:400}.question-option:hover{background:var(--sidebar-hover)}.question-option.checked{background:var(--primary-soft)}.question-option input[type=checkbox],.question-option input[type=radio]{width:14px;height:14px;padding:0;border:none;box-shadow:none;flex-shrink:0;accent-color:var(--primary);transition:none}.question-option .question-text{flex:1 1;font-size:var(--text-sm);color:var(--text);line-height:1.5}.question-option .question-text.muted{color:var(--muted)}.question-option .question-weight{font-size:var(--text-xs);font-weight:600;color:var(--primary);flex-shrink:0}.question-picker-empty{border:1px dashed var(--border-strong);border-radius:var(--radius-sm);padding:14px;font-size:var(--text-sm);color:var(--muted);background:var(--bg-subtle)}.platform-chips{display:flex;flex-wrap:wrap;gap:6px;padding-top:2px}.platform-chip{padding:5px 12px;border-radius:999px;font-size:var(--text-sm);font-weight:500;background:var(--chip);color:var(--muted);border:1px solid transparent}.platform-chip:hover{background:var(--sidebar-hover);color:var(--text)}.platform-chip.checked{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.pager{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;margin-top:var(--sp-4)}.pager-info{font-size:var(--text-sm);color:var(--faint)}.pager-btns{display:flex;align-items:center;gap:4px}.pager-btn{min-width:30px;height:30px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted);font-size:var(--text-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:background .12s,color .12s,border-color .12s}.pager-btn:hover:not(:disabled):not(.active){background:var(--primary-soft);color:var(--primary);border-color:var(--primary-soft-border)}.pager-btn:disabled{color:var(--disabled);background:var(--bg-subtle);cursor:default}.pager-btn.active{background:var(--grad-brand);border-color:transparent;color:#fff;font-weight:600;box-shadow:0 2px 8px rgba(37,99,235,.28);cursor:default}.pager-ellipsis{color:var(--disabled);font-size:var(--text-sm);padding:0 2px}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--sp-3);gap:var(--sp-3);margin-bottom:var(--sp-4)}.kpi-card{display:flex;align-items:flex-start;gap:var(--sp-3);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px var(--sp-4);box-shadow:var(--shadow-sm);min-width:0;position:relative;overflow:hidden;transition:border-color .15s,box-shadow .15s,transform .15s}.kpi-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--grad-brand);opacity:0;transition:opacity .15s}.kpi-card:hover{border-color:var(--primary-soft-border);box-shadow:var(--shadow-md);transform:translateY(-2px)}.kpi-card:hover:before{opacity:1}.kpi-icon{width:34px;height:34px;border-radius:10px;flex-shrink:0;margin-top:2px;background:linear-gradient(135deg,var(--primary-soft),#dff2fd);color:var(--primary);border:1px solid rgba(37,99,235,.1);display:inline-flex;align-items:center;justify-content:center}.kpi-main{display:flex;flex-direction:column;min-width:0}.kpi-value{font-size:var(--text-xl);font-weight:700;line-height:1.3;letter-spacing:-.3px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:linear-gradient(120deg,#17212f 30%,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:transparent}.kpi-label{font-size:var(--text-sm);color:var(--muted);font-weight:500}.kpi-sub{font-size:var(--text-xs);color:var(--faint);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bi-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--sp-4);gap:var(--sp-4)}.bi-grid .card{margin-bottom:0}.chart-card h3{margin-bottom:6px}.bi-anim{opacity:0;animation:bi-rise .45s cubic-bezier(.22,.8,.36,1) forwards}@keyframes bi-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.bi-grid .card:hover,.chart-card.bi-anim:hover{border-color:var(--primary-soft-border);box-shadow:var(--shadow-md)}.bi-grid .card,.chart-card{transition:border-color .15s,box-shadow .15s}.trend-sub-label{display:flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--muted);margin:6px 0 2px 4px}.trend-sub-label .dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.chart-empty{height:200px;display:flex;align-items:center;justify-content:center;color:var(--faint);font-size:var(--text-sm);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-subtle)}.funnel{display:flex;flex-direction:column;gap:6px}.funnel-row{display:flex;align-items:center;gap:var(--sp-3)}.funnel-label{flex-shrink:0;width:96px;text-align:right;font-size:var(--text-sm);color:var(--muted)}.funnel-track{flex:1 1;display:flex;align-items:center;gap:10px;min-width:0}.funnel-bar{display:block;height:22px;border-radius:4px;flex-shrink:0;transform-origin:left center;animation:funnel-grow .6s cubic-bezier(.22,.8,.36,1) backwards;transition:width .4s}@keyframes funnel-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.bi-anim{opacity:1}.bi-anim,.funnel-bar{animation:none}}.funnel-value{font-size:var(--text-sm);flex-shrink:0}.funnel-rate{flex-shrink:0;width:52px;text-align:right;font-size:var(--text-xs);color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:1100px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.kpi-grid{grid-template-columns:1fr 1fr}.bi-grid{grid-template-columns:1fr}.funnel-label{width:84px}.funnel-rate{width:40px}}