:root{color-scheme:light;--ink:#192333;--muted:#7b8798;--line:#e7edf1;--green:#12a99e;--green-dark:#078b82;--bg:#f4f9fa;--sidebar:248px}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font:14px/1.65 "Microsoft YaHei","PingFang SC",Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{outline-offset:4px}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:var(--green-dark);text-decoration:none}[hidden]{display:none!important}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.muted{font-size:13px;color:var(--muted)}.error{color:#cd4359;font-size:13px;min-height:0;margin:12px 0}.error:empty{display:none}h1{font-size:25px;letter-spacing:-.5px;line-height:1.45;margin:5px 0 8px}h2{font-size:17px;line-height:1.5;margin:0 0 14px}h3{font-size:14px;margin:0 0 12px}small{font-weight:400;color:var(--muted);font-size:12px;margin-left:8px}p{margin:8px 0 14px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:42px;padding:10px 22px;border-radius:9px;font-weight:500;border:1px solid transparent;transition:background .15s,box-shadow .15s}.primary{background:var(--green);color:white;box-shadow:0 3px 7px #13a99c16}.primary:hover{background:var(--green-dark)}.secondary{background:white;border-color:#dfe7ec;color:#455367}.secondary:hover{background:#f2fbfa;border-color:#a6dcd7}.quiet,.text-button{background:transparent;border:0;padding:7px 3px;color:var(--muted);font-size:12px}.quiet:hover,.text-button:hover{color:var(--green-dark)}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.4px;color:#69a59f}.online-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#20b9a5;flex-shrink:0}.actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.align-end{display:flex;align-items:flex-end}

/* Sign in */
.signed-out{background:#f7fafb}.login-view{position:relative;min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:42px 24px;background-image:linear-gradient(#d9e7ec28 1px,transparent 1px),linear-gradient(90deg,#d9e7ec28 1px,transparent 1px),radial-gradient(ellipse 400px 290px at 100% 0,#b3eee54d,transparent),radial-gradient(ellipse 390px 260px at 0 100%,#b6ece94d,transparent);background-size:64px 64px,64px 64px,100% 100%,100% 100%}.login-wrap{width:448px;max-width:100%}.login-brand{text-align:center;margin-bottom:28px}.login-brand img{display:block;margin:0 auto 12px;border-radius:18px;box-shadow:0 7px 16px #15b5a620;object-fit:contain}.login-brand h1{font-size:27px;color:#10a89b;font-weight:700;letter-spacing:.5px;margin:8px 0 2px}.login-brand>p{color:#8396ad;font-size:13px;letter-spacing:.5px;margin:0}.login-form{border:1px solid #ffffffeb;background:#ffffffd9;border-radius:18px;box-shadow:0 15px 40px #293d4d0c;padding:30px 32px 24px;backdrop-filter:blur(12px)}.login-form h2{text-align:center;font-size:24px;font-weight:700;margin:0 0 5px}.login-subtitle{text-align:center;color:#8b96a7;font-size:13px;margin:0 0 26px}.login-form>label{display:block;font-size:13px;font-weight:500;color:#48566b;margin:18px 0 7px}.input-with-icon{position:relative;display:flex;align-items:center}.input-with-icon>.icon{position:absolute;left:14px;color:#9aa7b8;width:19px;height:19px;pointer-events:none}.input-with-icon input{height:46px;padding-left:43px;padding-right:44px;border-radius:10px;background:#f0f5fc;border:1px solid #e2e8f1}.input-with-icon input::placeholder{color:#a4afbf}.eye-button{position:absolute;right:7px;width:34px;height:34px;padding:7px;background:none;border:0;color:#9aa7b8;display:flex;align-items:center;justify-content:center;border-radius:6px}.eye-button:hover{color:var(--green-dark);background:#e8f0f8}.login-submit{width:100%;margin-top:27px;background:linear-gradient(100deg,#54cbbd,#63bebc);height:44px;border-radius:10px;box-shadow:0 3px 7px #22b9a925}.login-submit:hover{background:linear-gradient(100deg,#29b9a9,#35aaa9)}.login-submit .icon{width:18px;height:18px}.login-note{color:#9aa6b5;font-size:11px;text-align:center;margin:18px 0 0}.login-footer{text-align:center;color:#8da3bf;font-size:12px;margin:26px 0 0}

/* Shared shell */
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);z-index:40;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;transition:width .18s,transform .18s}.brand{height:79px;display:flex;align-items:center;gap:12px;padding:0 23px;color:var(--ink);border-bottom:1px solid var(--line);flex-shrink:0}.brand img{border-radius:11px;box-shadow:0 3px 10px #0bb6aa17;object-fit:contain}.brand-copy{display:flex;flex-direction:column;line-height:1.45}.brand-copy strong{font-size:21px;font-weight:700;letter-spacing:1px}.brand-copy small{font-size:10px;margin:1px 0 0;color:#9aa6b4;letter-spacing:1px}.sidebar-label{font-size:10px;color:#a3afbb;letter-spacing:1.6px;padding:25px 24px 11px}.tool-nav{padding:0 12px}.tool-button{width:100%;min-height:46px;display:flex;align-items:center;gap:10px;padding:11px 12px;border:0;border-radius:10px;background:none;color:#607086;font-size:13px;text-align:left;white-space:nowrap;margin-bottom:5px}.tool-button .icon{width:19px;height:19px;stroke-width:1.5}.tool-button:hover{background:#f6f9fa;color:#1c6b69}.tool-button.active{background:#eafaf7;color:#079b90}.tool-button.active .icon{color:#00a99b}.tool-label{min-width:0}.soon-tag{margin-left:auto;font-size:9px;padding:2px 5px;border:1px solid #e8edf2;background:#f6f8fa;color:#99a3af;border-radius:4px}.sidebar-bottom{margin-top:auto;padding:16px 12px 20px}.sidebar-divider{height:1px;background:var(--line);margin:13px 8px}.external-mark{margin-left:auto;color:#a0aab7}.sidebar-foot{display:flex;align-items:center;gap:7px;padding:11px 13px 0;font-size:10px;letter-spacing:.3px;color:#a0aab8}.main-shell{margin-left:var(--sidebar);min-height:100vh;min-width:0;transition:margin-left .18s;background:radial-gradient(ellipse 900px 400px at 32% 2%,#ccefeb75,transparent),#f5f9fa}.topbar{height:79px;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 34px;background:#ffffffec;border-bottom:1px solid #e9eff2;backdrop-filter:blur(16px)}.breadcrumb{display:flex;align-items:center;gap:12px;font-size:12px;color:#97a2b2;min-width:0}.breadcrumb strong{color:#526176;font-weight:500}.breadcrumb-slash{color:#c1cbd4}.account{display:flex;align-items:center;gap:10px;flex-shrink:0}.avatar{height:33px;width:33px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#e2f6f1;color:#159d90;font-size:13px}.account-copy{display:flex;flex-direction:column;line-height:1.55}.account-copy strong{font-size:12px;font-weight:500}.account-copy>span{color:#9ba7b6;font-size:10px}.account-actions{display:flex;gap:12px;margin-left:13px;padding-left:17px;border-left:1px solid var(--line)}.main-content{max-width:1440px;padding:30px 34px 0;margin:auto;min-width:0}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 24px}.page-heading h1{margin-top:5px;font-size:25px}.page-heading p{font-size:12px;color:#91a0b0;margin:0}.version-pill{border:1px solid #d8ebe6;display:flex;align-items:center;gap:8px;border-radius:20px;padding:6px 12px;font-size:11px;color:#6c9b90;background:#f7fffc;white-space:nowrap}.overview-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:26px}.overview-card{display:flex;align-items:center;gap:15px;padding:20px 23px;background:#fff;border:1px solid #ebf0f3;box-shadow:0 2px 3px #21384906;border-radius:15px}.metric-icon{height:44px;width:44px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.metric-icon .icon{width:23px;height:23px}.mint{background:#dff9ef;color:#07aa80}.blue{background:#e6efff;color:#4c83ee}.violet{background:#f0e8ff;color:#9664e7}.overview-card>div{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:12px}.metric-label{font-size:11px;color:#8b97a7;grid-column:1/-1}.overview-card strong{font-size:25px;line-height:1.3;font-weight:650;font-variant-numeric:tabular-nums;margin-top:2px}.metric-caption{font-size:10px;color:#b0bac6;grid-column:1/-1;margin-top:2px}.nav{display:flex;align-items:center;gap:30px;border-bottom:1px solid #e0e8ec;margin-bottom:22px}.nav-button{background:none;border:0;border-bottom:2px solid transparent;padding:12px 3px 14px;color:#8996a6;font-size:13px}.nav-button.active{color:#079e92;border-bottom-color:#18b6a5;font-weight:600}#history-count{background:#e7f3ef;padding:1px 6px;border-radius:5px;font-size:10px;margin-left:4px;color:#5d9c8d}.content-card{background:#fff;border:1px solid #e9eef2;border-radius:15px;padding:26px;box-shadow:0 2px 3px #183d4305}.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.section-head h2{margin:0 0 2px}.section-head p{margin:3px 0 0}.workspace-footer{display:flex;justify-content:space-between;align-items:center;padding:26px 0;font-size:10px;color:#a8b3bf}.workspace-footer>span{color:#b4bec8}

/* Forms */
.form-section{padding:26px 28px;background:#fff;border:1px solid #e9eef2;border-radius:15px;margin:0 0 20px;box-shadow:0 2px 3px #183d4305}.section-label{display:flex;align-items:center;gap:12px;margin-bottom:23px}.section-label>span:first-child{color:#0ca698;background:#e9f8f4;border-radius:8px;padding:7px 9px;font-size:11px;font-weight:600}.section-label h2{font-size:15px;margin:0 0 2px}.section-label p{font-size:11px;color:#a0acba;margin:0}.section-label>.cost-badge{margin-left:auto;color:#38a18c;background:#f0faf5;border:1px solid #e1f1e8;border-radius:5px;padding:4px 7px;font-size:10px;white-space:nowrap}.form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:19px 25px}.wide{grid-column:1/-1}label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:500;color:#506075;min-width:0}input,select,textarea{width:100%;min-height:43px;border:1px solid #e0e7ec;border-radius:8px;padding:10px 12px;background:#fcfdfe;font-size:13px;font-weight:400}input::placeholder,textarea::placeholder{color:#b3bdc9}input:focus,select:focus,textarea:focus{border-color:#70c9c0;outline:3px solid #18b5a50c;background:white}textarea{resize:vertical}input[type=file]{padding:9px;font-size:12px}.field-note{font-size:10px;color:#a2afbb;margin:16px 0 0;line-height:1.9}.upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.upload{position:relative;align-items:center;border:1px dashed #cddfdf;border-radius:10px;padding:22px;background:#fcfefe;cursor:pointer;text-align:center;gap:5px;transition:border-color .15s,background .15s}.upload:hover{background:#f1fbf8;border-color:#3cbbaa}.upload strong{font-size:13px;color:#526276}.upload>.muted{font-size:11px}.upload input{position:absolute;inset:0;width:100%;height:100%;cursor:pointer;opacity:0}.upload:focus-within{outline:3px solid #0bb9a42b}.file-icon{width:38px;height:38px;background:#eaf7f4;color:#3bab9b;border-radius:9px;display:flex;align-items:center;justify-content:center;margin-bottom:3px}.file-icon .icon{width:20px;height:20px}.file-name{font-size:10px;color:#3ba998;margin-top:5px;overflow-wrap:anywhere;max-width:100%}.submit-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:2px 2px 8px}.submit-bar p{font-size:11px;margin:0}.submit-bar .primary{min-width:150px}.submit-bar .icon{width:17px;height:17px}#user-form>h2{margin-bottom:24px}

/* Reports and tables */
.table-wrap,.scroll{max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:9px;background:white}table{border-collapse:collapse;width:100%;font-size:12px}th,td{padding:13px 14px;text-align:left;border-bottom:1px solid #ecf0f3;vertical-align:top}tr:last-child td{border-bottom:0}th{font-size:11px;color:#8391a3;font-weight:500;background:#f7fafb;white-space:nowrap}td{overflow-wrap:anywhere;color:#556479}.empty{text-align:center;color:var(--muted);padding:65px 20px;font-size:12px}.state{display:inline-block;font-size:10px;border-radius:5px;padding:2px 7px;white-space:nowrap;color:#a98729;background:#fff8e9}.state.completed{color:#209f82;background:#eaf8f1}.state.failed{color:#cf5b66;background:#fff0f2}.job-link{font-weight:500;color:#249d90;background:transparent;border:0;padding:0;text-align:left}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:10px;background:#fcfefe;margin-bottom:20px}.stat{padding:18px;min-width:0}.stat+.stat{border-left:1px solid var(--line)}.stat-label{font-size:11px;color:#93a1b0}.stat-number{font-size:23px;font-weight:600;line-height:1.4;margin-top:4px;overflow-wrap:anywhere}.report-section{padding:25px 0;border-top:1px solid var(--line)}.report-section ul{padding-left:22px;margin:6px 0}.report-section li{margin-bottom:5px}.analysis{font-size:13px;line-height:1.9;border-top:0;padding-top:0}.analysis h2{font-size:18px;margin:26px 0 14px}.analysis h3{font-size:15px;margin:22px 0 12px}.analysis p{margin:10px 0 15px}.analysis table{min-width:580px}.analysis .eyebrow{margin-bottom:8px}.filter-row{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:14px}.filter-row input{flex:1;min-width:180px}.filter-row select{width:160px}.pager{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin:14px 0;font-size:12px}.no-model{background:#f0faf7;border-left:3px solid #48b4a2;padding:12px 16px;border-radius:0 8px 8px 0;font-size:12px;color:#60837c}.notice{background:#e9f9f3;color:#249e80;border:1px solid #d6f0e7;border-radius:9px;padding:12px 16px;margin-bottom:20px;font-size:12px}.report-message{padding:30px 0}.source-map{max-height:220px;overflow:auto;font-size:11px;white-space:pre-wrap;background:#f8fbfc;padding:14px;border:1px solid var(--line)}.spaced{margin-top:24px}details{margin-top:20px;color:var(--muted);font-size:12px}dialog{border:1px solid #e7edf1;border-radius:16px;padding:28px;max-width:440px;width:calc(100% - 32px);box-shadow:0 20px 70px #112e4030}dialog::backdrop{background:#253c4b50;backdrop-filter:blur(3px)}dialog label{margin:16px 0}

/* Future tools */
.coming-soon{min-height:440px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:55px 24px}.coming-icon{width:78px;height:78px;border-radius:23px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e1f8f3,#eef3fc);color:#33aa9f;box-shadow:0 8px 20px #11aa9b0a;margin-bottom:22px}.coming-icon .icon{width:35px;height:35px;stroke-width:1.2}.construction-badge{font-size:10px;letter-spacing:1px;color:#9b83c8;border:1px solid #eee7f7;border-radius:20px;padding:3px 12px;background:#faf7fe;margin-bottom:13px}.coming-soon h2{font-size:22px;margin-bottom:8px}.coming-soon p{font-size:12px;color:#98a6b5;margin:0 0 28px}.coming-soon .secondary{font-size:12px}.coming-soon .icon{width:17px}

.icon-button{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:none;border:0;border-radius:7px;color:#75879a}.mobile-menu{display:none}.sidebar-backdrop{position:fixed;inset:0;background:#253c4b45;z-index:35;border:0;width:100%;height:100%;backdrop-filter:blur(2px)}.sidebar-compact{--sidebar:76px}.sidebar-compact .brand{padding:0 19px}.sidebar-compact .brand-copy,.sidebar-compact .sidebar-label,.sidebar-compact .tool-label,.sidebar-compact .soon-tag,.sidebar-compact .external-mark,.sidebar-compact .sidebar-foot{display:none}.sidebar-compact .tool-nav{padding-top:23px}.sidebar-compact .tool-button{justify-content:center;padding:12px 4px}.sidebar-compact #collapse-sidebar .icon{transform:rotate(180deg)}
@media(max-width:1100px){:root{--sidebar:230px}.main-content{padding:25px 24px 0}.topbar{padding:0 24px}.tool-button{font-size:12px;gap:8px}.overview-card{padding:17px;gap:12px}.account-actions{gap:9px;margin-left:3px;padding-left:12px}.account-copy{max-width:110px}.account-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.metric-caption{font-size:9px}}
@media(max-width:760px){.login-view{padding:30px 20px}.login-wrap{width:410px}.login-brand h1{font-size:24px}.login-brand{margin-bottom:23px}.login-form{padding:27px 24px 23px}.login-form h2{font-size:22px}.login-footer{margin-top:23px}.sidebar{width:248px;transform:translateX(-100%)}.sidebar-open .sidebar{transform:translateX(0)}.sidebar-compact .brand-copy,.sidebar-compact .tool-label,.sidebar-compact .sidebar-label,.sidebar-compact .soon-tag,.sidebar-compact .external-mark,.sidebar-compact .sidebar-foot{display:flex}.sidebar-compact .brand{padding:0 23px}.sidebar-compact .tool-button{justify-content:flex-start;padding:11px 12px}.sidebar-compact .tool-nav{padding-top:0}.main-shell{margin-left:0}.topbar{height:66px;padding:0 17px;gap:12px}.mobile-menu{display:flex;flex-shrink:0}.breadcrumb>span{display:none}.breadcrumb strong{font-size:11px}.account{gap:7px;margin-left:auto}.account-copy,.account-actions #password-open{display:none}.account-actions{border:0;padding:0;margin:0}.avatar{width:29px;height:29px;font-size:11px}.account-actions .quiet{font-size:11px}.main-content{padding:23px 16px 0}.page-heading{gap:12px;margin-bottom:21px;align-items:flex-start}.page-heading h1{font-size:21px;letter-spacing:-.5px}.page-heading p{font-size:11px;line-height:1.8}.eyebrow{font-size:8px;letter-spacing:1px}.version-pill{display:none}.overview-cards{gap:9px;margin-bottom:19px}.overview-card{padding:14px 10px;display:block;border-radius:12px}.metric-icon{width:30px;height:30px;border-radius:8px;margin-bottom:9px}.metric-icon .icon{width:18px;height:18px}.overview-card>div{display:block}.metric-label{font-size:10px;display:block}.overview-card strong{font-size:23px;display:block;margin-top:2px}.metric-caption{display:none}.nav{gap:24px;margin-bottom:18px}.nav-button{font-size:12px;padding-top:8px;padding-bottom:12px}.form-section{padding:20px 18px;border-radius:12px;margin-bottom:16px}.section-label{gap:10px;margin-bottom:19px}.section-label h2{font-size:14px}.section-label p{font-size:10px}.section-label>.cost-badge{font-size:8px;padding:3px 5px}.form-grid,.upload-grid{grid-template-columns:1fr;gap:17px}.wide{grid-column:auto}.field-note{font-size:9px}.upload{padding:20px}.submit-bar{flex-direction:column;align-items:stretch;padding:3px 0 6px;gap:14px}.submit-bar p{font-size:10px}.submit-bar .primary{width:100%}.content-card{padding:19px 16px;border-radius:12px}.section-head{align-items:flex-start;flex-wrap:wrap;gap:12px}.stats{grid-template-columns:1fr 1fr}.stat{padding:14px}.stat:nth-child(3){border-left:0;border-top:1px solid var(--line)}.stat:nth-child(4){border-top:1px solid var(--line)}.stat-number{font-size:21px}.analysis{font-size:12px}.analysis h2{font-size:16px}.analysis h3{font-size:14px}th,td{padding:11px 10px}.workspace-footer{font-size:9px}.workspace-footer>span{font-size:8px}.coming-soon{min-height:390px;padding:40px 20px}.coming-soon h2{font-size:21px}.coming-soon p{font-size:11px}.coming-soon .secondary{font-size:11px;padding:10px 14px}}
.overview-history{margin-bottom:20px}.range-picker{display:flex;flex-direction:row;align-items:center;gap:10px;white-space:nowrap;font-size:11px;color:#91a0b0}.range-picker select{min-height:36px;padding:6px 11px;min-width:108px;font-size:12px}.overview-chart{width:100%;overflow:hidden}.overview-chart svg{display:block;width:100%;max-height:260px}.chart-grid{stroke:#edf1f4;stroke-width:1}.chart-axis{fill:#9caaba;font:11px Arial,sans-serif}.calls-bar{fill:#42bbaa}.reports-bar{fill:#8da7ef}.chart-legend{display:flex;gap:22px;font-size:10px;color:#8998a9;justify-content:flex-end;padding-right:10px}.chart-legend span:before{content:'';width:8px;height:8px;display:inline-block;margin-right:7px;border-radius:2px}.calls-key:before{background:#42bbaa}.reports-key:before{background:#8da7ef}.overview-summary{font-size:11px;color:#8b9dae;margin:9px 0 0;padding-top:14px;border-top:1px solid var(--line)}#overview-daily table{min-width:620px}.wizard-intro{padding:48px 25px;min-height:400px;display:flex;align-items:center;flex-direction:column;justify-content:center;text-align:center}.wizard-intro h2{font-size:21px;margin:0 0 9px}.wizard-intro>p{font-size:12px;color:#93a2b2;max-width:440px}.wizard-intro .coming-icon{width:64px;height:64px;border-radius:18px;margin-bottom:20px}.intro-steps{display:flex;align-items:center;justify-content:center;gap:16px;font-size:11px;color:#8298a6;margin:13px 0 26px}.intro-steps i{font-style:normal;color:#bbcad0}.wizard-intro .field-note{font-size:10px;margin-top:18px}.wizard-intro .primary{min-width:154px}.wizard-progress{display:flex;list-style:none;padding:22px 25px;margin:0 0 22px;background:#fff;border:1px solid var(--line);border-radius:13px;gap:22px}.wizard-progress li{display:flex;align-items:center;gap:11px;flex:1;color:#a4b0bb;font-size:12px;position:relative}.wizard-progress li>span{display:flex;align-items:center;justify-content:center;width:31px;height:31px;border-radius:50%;background:#f0f4f6;color:#9babb7;font-size:12px;flex-shrink:0}.wizard-progress small{display:block;font-size:9px;color:#aebbc7;margin:2px 0 0}.wizard-progress .active{color:#128f83;font-weight:500}.wizard-progress .active>span{background:#27b6a5;color:white}.wizard-progress .done{color:#3b9b8b}.wizard-progress .done>span{background:#e3f8ef;color:#27a68d}.wizard-progress .unavailable{opacity:.6}.wizard-actions{display:flex;align-items:center;justify-content:space-between;padding-top:25px;margin-top:23px;border-top:1px solid var(--line)}.wizard-actions .primary{font-size:12px}.market-closed{display:flex;align-items:center;gap:10px;padding:13px 15px;background:#f7f9fb;border-radius:8px;font-size:11px;color:#9ba8b6;margin-top:21px}.market-closed .icon{width:16px;height:16px}.task-progress{margin:24px 0 8px}.progress-rail{height:6px;border-radius:5px;background:#edf2f5;overflow:hidden}.progress-rail:before{content:'';height:100%;display:block;width:12%;background:#4dbca9;border-radius:5px;transition:width .4s}.task-progress.data .progress-rail:before{width:38%}.task-progress.model .progress-rail:before{width:72%}.task-progress.failed .progress-rail:before{width:100%;background:#dca0a6}.task-stages{display:flex;justify-content:space-between;font-size:11px;color:#98a9b6;margin-top:11px}.task-stages>span:first-child,.task-progress.data .task-stages>span:nth-child(2),.task-progress.model .task-stages>span{color:#4b9d8c}.copy-feedback{border-radius:8px;padding:10px 13px;background:#effaf5;color:#2f9a7b;font-size:12px}.clipboard-buffer{position:fixed;left:-9999px;top:0}.mobile-only{display:none}
@media(max-width:760px){.mobile-only{display:flex}.wizard-progress{padding:15px 12px;gap:10px}.wizard-progress li{gap:7px;font-size:10px}.wizard-progress li>span{width:24px;height:24px;font-size:10px}.wizard-progress small{font-size:8px;max-width:78px}.wizard-intro{min-height:390px;padding:36px 18px}.wizard-intro h2{font-size:19px}.wizard-intro>p{font-size:11px}.intro-steps{gap:8px;font-size:9px;flex-wrap:wrap}.wizard-actions{gap:13px}.market-closed{font-size:10px;padding:12px}.overview-history .section-head{flex-wrap:wrap}.overview-summary{font-size:10px;line-height:1.9}.task-stages{font-size:9px}.range-picker{font-size:10px}#report-actions{gap:9px}#report-actions .primary,#report-actions .secondary{font-size:11px;padding:8px 12px}.overview-chart{overflow:auto}.overview-chart svg{min-width:540px}}
.view-job{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:112px;min-height:38px;padding:9px 15px;border:1px solid #acdcd1;border-radius:8px;background:#eaf8f3;color:#118a76;font-size:12px;font-weight:600;white-space:nowrap;box-shadow:0 2px 3px #168d7210;transition:background .15s,border-color .15s,box-shadow .15s}.view-job:hover{background:#d5f0e7;border-color:#67bfab;box-shadow:0 3px 8px #168d721b}.view-job:focus-visible{outline:3px solid #20b39d55}.view-job .icon{height:16px;width:16px;stroke-width:1.8}
.generation-panel{padding:30px;border:1px solid #cce9df;border-radius:14px;background:linear-gradient(125deg,#eefaf6,#f8fcfb);box-shadow:0 8px 24px #208e7207;margin:15px 0 8px}.generation-head{display:flex;align-items:center;gap:21px}.generation-indicator{position:relative;width:74px;height:74px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 16px #0aa58513}.generation-indicator>.icon{height:28px;width:28px;color:#20a991;stroke-width:1.4}.generation-ring{position:absolute;inset:0;border:3px solid #d7eee5;border-top-color:#20ad91;border-right-color:#87d9be;border-radius:50%;animation:generation-spin 1.25s linear infinite}.generation-heading{flex:1;min-width:0}.generation-kicker{font-size:11px;color:#46aa91;font-weight:600;letter-spacing:.6px}.generation-heading h2{font-size:22px;line-height:1.5;color:#164c41;margin:5px 0 7px;letter-spacing:-.3px}.generation-stage{font-size:12px;color:#6d9a8d;margin:0;line-height:1.8}.generation-live{display:flex;align-items:center;gap:7px;background:white;border:1px solid #d4eee2;color:#3c9c80;border-radius:20px;font-size:10px;padding:6px 10px;white-space:nowrap;align-self:flex-start}.generation-live>i{display:block;width:6px;height:6px;background:#2cba91;border-radius:50%;animation:generation-pulse 1.7s ease-in-out infinite}.generation-panel .task-progress{margin:29px 0 26px}.generation-panel .progress-rail{position:relative;height:8px;background:#dcefe8}.generation-panel .progress-rail:before{background:linear-gradient(90deg,#5fc9ae,#24ae92)}.generation-panel .progress-rail:after{content:'';position:absolute;inset:0 auto 0 0;width:35%;background:linear-gradient(90deg,transparent,#ffffffaa,transparent);animation:generation-shimmer 2.3s ease-in-out infinite}.generation-panel .task-stages{margin-top:13px;font-size:11px}.generation-panel .task-progress.model .task-stages>span:last-child,.generation-panel .task-progress.data .task-stages>span:nth-child(2){font-weight:600;color:#118c72}.generation-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #dceee6;padding-top:20px}.generation-timing{display:flex;gap:28px;align-items:center;flex-wrap:wrap}.generation-timing>span{display:flex;align-items:center;gap:11px;color:#8ca89d;font-size:11px}.generation-timing strong{font:500 19px/1.5 Consolas,"SFMono-Regular",monospace;color:#368e77;font-variant-numeric:tabular-nums}#generation-elapsed{font-size:24px;color:#18785f}.generation-wait{display:flex;align-items:center;gap:8px;color:#4c9b84;font-size:11px;white-space:nowrap}.loading-dots{display:inline-flex;gap:4px;align-items:center}.loading-dots>i{display:block;width:4px;height:4px;border-radius:50%;background:currentColor;animation:generation-dot 1.2s ease-in-out infinite}.loading-dots>i:nth-child(2){animation-delay:.16s}.loading-dots>i:nth-child(3){animation-delay:.32s}.generation-help{color:#8aa99e;font-size:10px;margin:16px 0 0;line-height:1.9}.generation-failed{border:1px solid #f0d9dc;background:#fff8f8;border-radius:12px;padding:25px;color:#af5666}.generation-panel.sync-delayed{border-color:#eadfc8;background:#fffdf6}.sync-delayed .generation-live{background:#fffaf0;border-color:#eddfc1;color:#b28a42}.sync-delayed .generation-live>i{background:#caa05a;animation:none}.sync-delayed .generation-ring{animation-play-state:paused;border-top-color:#caa05a;border-right-color:#e6d8b7}.sync-delayed .progress-rail:after{animation-play-state:paused}.sync-delayed .generation-wait,.sync-delayed .generation-help{color:#aa8b52}
@keyframes generation-spin{to{transform:rotate(360deg)}}@keyframes generation-shimmer{from{transform:translateX(-110%)}to{transform:translateX(390%)}}@keyframes generation-pulse{0%,100%{box-shadow:0 0 0 0 #2cba9130;opacity:1}50%{box-shadow:0 0 0 5px #2cba9100;opacity:.55}}@keyframes generation-dot{0%,80%,100%{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
@media(max-width:1100px){.generation-head{flex-wrap:wrap}.generation-live{margin-left:95px;margin-top:-12px}.generation-heading h2{font-size:20px}}
@media(max-width:760px){.view-job{min-width:100px;min-height:38px;padding:8px 11px;font-size:11px;gap:6px}.generation-panel{padding:21px 17px;border-radius:11px}.generation-head{align-items:flex-start;gap:14px}.generation-indicator{width:50px;height:50px;margin-top:3px}.generation-indicator>.icon{height:23px;width:23px}.generation-ring{border-width:2px}.generation-heading h2{font-size:17px;margin-top:4px}.generation-kicker{font-size:9px}.generation-stage{font-size:10px}.generation-live{margin-left:64px;margin-top:-6px;font-size:9px;padding:4px 8px}.generation-panel .task-progress{margin:23px 0 20px}.generation-panel .task-stages{font-size:9px}.generation-footer{align-items:flex-start;gap:14px}.generation-timing{flex-direction:column;gap:10px;align-items:flex-start}.generation-timing>span{font-size:9px;gap:9px}.generation-timing strong{font-size:15px}#generation-elapsed{font-size:20px}.generation-wait{font-size:9px;padding-top:8px}.generation-help{font-size:9px}.loading-dots{gap:3px}.loading-dots>i{width:3px;height:3px}}
@media(max-width:760px){.generation-head{display:grid;grid-template-columns:50px minmax(0,1fr);align-items:start;gap:12px 14px}.generation-indicator{grid-column:1;grid-row:1}.generation-heading{grid-column:2;grid-row:1}.generation-live{grid-column:2;grid-row:2;margin:0;justify-self:start}}
.topbar-right{margin-left:auto;display:flex;align-items:center;gap:20px;min-width:0}.model-connection{position:relative}.model-status{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #eadfc5;background:#fffaf0;color:#aa8844;border-radius:20px;font-size:10px;white-space:nowrap;max-width:250px}.model-status.connected{background:#effaf5;border-color:#d2eede;color:#269475}.model-status.error,.model-status.not_configured{background:#fff3f3;border-color:#f0dada;color:#bf6268}.model-status-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.model-status.checking .model-status-dot{animation:generation-pulse 1s infinite}.model-chevron{opacity:.6}.model-popover{position:absolute;right:0;top:calc(100% + 12px);width:290px;padding:19px;border:1px solid #e0e9e8;border-radius:12px;background:white;box-shadow:0 12px 36px #173c3920;z-index:70;font-size:12px}.model-popover>strong{font-size:13px}.model-popover>p{font-size:11px;color:#879a9f;line-height:1.8;margin:11px 0}.model-config-name{padding:8px 10px;border-radius:6px;background:#f3f8f7;color:#408879;font-family:Consolas,monospace;overflow-wrap:anywhere}.model-popover .secondary{width:100%;font-size:11px;min-height:36px}.model-popover .model-check-note{font-size:10px;margin-bottom:0}
@media(max-width:1100px){.topbar-right{gap:12px}.model-status{max-width:210px}#model-status-label{overflow:hidden;text-overflow:ellipsis}.breadcrumb{flex-shrink:1}}
@media(max-width:760px){.topbar{height:auto;min-height:66px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px;gap:10px}.topbar-right{width:100%;justify-content:space-between;gap:10px}.topbar-right .account{margin-left:auto}.model-status{max-width:245px;font-size:9px}.model-popover{right:auto;left:0;width:min(290px,calc(100vw - 34px))}.model-popover .model-last-check{font-size:10px}}
.market-opt-in{padding:18px;background:#f1faf7;border:1px solid #dcefe7;border-radius:10px;margin-top:21px}.market-opt-in>label{display:flex;flex-direction:row;align-items:flex-start;gap:11px;font-size:12px;color:#358b77;cursor:pointer}.market-opt-in input[type=checkbox]{width:16px;height:16px;min-height:16px;padding:0;margin-top:2px;accent-color:#15aa92}.market-opt-in label small{display:block;margin:3px 0 0;font-size:10px;color:#80a99b}.market-opt-in>p{font-size:11px;color:#8aa89d;margin:12px 0 0}.market-opt-in .field-note{font-size:10px}.task-progress.market .progress-rail:before{width:55%}.automatic-step{color:#8ba49a}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.generation-ring,.generation-live>i,.generation-panel .progress-rail:after,.loading-dots>i{animation:none!important}}
@media print{.sidebar,.topbar,.nav,.overview-cards,.page-heading,.workspace-footer,.actions,.text-button,.filter-row,.pager{display:none!important}.main-shell{margin:0;background:white}.main-content{padding:0;max-width:none}.content-card{padding:0;border:0;box-shadow:none}.table-wrap{overflow:visible}.report-section{break-inside:avoid}.analysis table{min-width:0}}

.market-connect-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.market-connect-row p{font-size:11px;color:#759a8b;margin:0}.market-connect-row .secondary{font-size:10px;min-height:32px;padding:6px 12px;white-space:nowrap}
.zhixia-connection{flex-shrink:0}
.login-keyboard-capture{position:absolute;left:20px;top:65px;width:1px;height:1px;min-height:1px;padding:0;border:0;opacity:0;pointer-events:none;resize:none}.login-panel-input{justify-content:flex-end}
.zhixia-login-dialog{max-width:1260px;width:calc(100% - 40px);max-height:94vh;padding:18px;overflow:auto}.login-panel-head{display:flex;justify-content:space-between;gap:15px;align-items:center}.login-panel-head p{font-size:12px;color:#79958a;margin:5px 0 12px}.zhixia-login-screen{border:1px solid #deebe5;background:#f6faf8;min-height:200px;border-radius:8px;overflow:hidden}.zhixia-login-screen img{width:100%;height:auto;display:block;cursor:pointer}.zhixia-login-screen>div{padding:60px 20px;text-align:center;color:#79958a}.login-panel-input{display:flex;gap:8px;margin-top:12px;align-items:center}.login-panel-input input{flex:1;min-width:90px}.login-panel-input button{font-size:11px;white-space:nowrap;padding:8px 12px}.zhixia-login-dialog .field-note{margin-top:12px}@media(max-width:760px){.zhixia-login-dialog{width:calc(100% - 20px);padding:12px}.login-panel-input{flex-wrap:wrap}.login-panel-input input{flex-basis:100%}.zhixia-login-screen{overflow:auto}.zhixia-login-screen img{width:1000px;max-width:none}}
@media(max-width:760px){.topbar-right{flex-wrap:wrap;gap:8px}.zhixia-connection{position:static}.zhixia-popover{top:calc(100% + 8px);right:17px;left:auto}.topbar-right #model-status{max-width:150px}}
