*{box-sizing:border-box}html,body{background:var(--canvas);min-height:100%;color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--font-size-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-default);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}button,input,select,textarea,table{font:inherit;font-family:var(--font-sans);letter-spacing:var(--letter-spacing-default)}button{color:inherit}h1,h2,h3,h4,h5,h6,strong{color:var(--text-primary)}.app-shell{background:radial-gradient(circle at 88% -10%, #e9303712, transparent 25%), var(--canvas);min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);z-index:20;background:#fffffff5;flex-direction:column;width:246px;transition:width .22s;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-collapsed{width:76px}.brand-block{border-bottom:1px solid var(--line);align-items:center;gap:10px;height:82px;padding:14px 20px 12px 18px;display:flex;overflow:hidden}.brand-home-button{width:100%;min-width:0;height:56px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;align-items:center;gap:10px;margin:0;padding:0 6px 0 0;transition:background .16s,box-shadow .16s;display:flex}.brand-home-button:hover{background:#e930370b}.brand-home-button:focus-visible{outline:0;box-shadow:0 0 0 3px #e930371f}.brand-home-button:active{background:#e9303713}.brand-logo{object-fit:contain;object-position:center;flex:none;width:108px;height:54px}.sidebar-collapsed .brand-home-button{justify-content:center;padding-right:0}.sidebar-collapsed .brand-logo{object-fit:cover;object-position:50% 5%;border-radius:14px;width:42px;height:42px}.brand-copy{white-space:nowrap;flex-direction:column;display:flex}.brand-copy strong{font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-default);color:var(--jiu-red)}.brand-copy span{font-size:var(--font-size-caption);color:var(--text-muted);margin-top:3px}.collapse-button{border:1px solid var(--line);color:#858085;cursor:pointer;z-index:2;background:#fff;border-radius:9px;width:28px;height:28px;position:absolute;top:27px;right:-14px;box-shadow:0 4px 15px #1e101012}.nav{flex:1;padding:16px 12px;overflow-y:auto}.nav-group+.nav-group{border-top:1px solid #f0eeee;margin-top:16px;padding-top:15px}.nav-group-label{color:var(--text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-default);margin:0 10px 7px}.nav-item{color:#5e595d;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:13px;align-items:center;gap:11px;width:100%;height:42px;margin:2px 0;padding:0 10px;transition:height .22s cubic-bezier(.22,1,.36,1),padding .22s cubic-bezier(.22,1,.36,1),color .18s,background-color .18s,border-color .18s,box-shadow .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1);display:flex;position:relative;transform:translate(0,0)}.nav-item:hover{color:var(--jiu-red);background-color:#fffbfb;border-color:#e9303712;transform:translateY(-1px);box-shadow:0 5px 14px #1f191b0d,0 1px 3px #1f191b08}.nav-item.active{height:42px;color:var(--jiu-red);font-weight:var(--font-weight-medium);background-color:#fff9f9;border-color:#e9303729;padding:0 10px;transform:translateY(-1px);box-shadow:0 8px 18px #1f191b17,0 2px 5px #1f191b0a,inset 0 1px #ffffffeb}.nav-item:active{transform:translate(0,0);box-shadow:0 3px 8px #1f191b12,0 1px 2px #1f191b0a}.nav-item:focus{outline:none}.nav-item:focus-visible{outline-offset:2px;outline:2px solid #e930372e}.nav-item.active:before{content:none}.nav-icon{width:23px;height:23px;font-size:16px;font-weight:var(--font-weight-medium);place-items:center;transition:width .22s cubic-bezier(.22,1,.36,1),height .22s cubic-bezier(.22,1,.36,1),font-size .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1);display:grid}.nav-icon svg{width:20px;height:20px}.nav-label{white-space:nowrap;font-size:var(--font-size-navigation);font-weight:var(--font-weight-regular);line-height:var(--line-height-label);transition:font-size .22s cubic-bezier(.22,1,.36,1),font-weight .18s}.nav-item.active .nav-icon{width:23px;height:23px;color:var(--jiu-red);font-size:16px;transform:none}.nav-item.active .nav-label{font-size:var(--font-size-navigation);font-weight:var(--font-weight-medium)}.nav-item.active .nav-badge{box-shadow:0 2px 5px #e9303729}.nav-badge{background:var(--jiu-red);color:#fff;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-default);border-radius:5px;margin-left:auto;padding:2px 6px}.nav-count{min-width:20px;height:20px;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);background:#f0eded;border-radius:7px;place-items:center;margin-left:auto;display:grid}.sidebar-collapsed .nav-item{justify-content:center;padding:0}.sidebar-footer{border-top:1px solid var(--line);align-items:center;gap:10px;height:66px;padding:0 18px;display:flex}.sidebar-footer div{white-space:nowrap;flex-direction:column;display:flex}.sidebar-footer strong{font-size:13px;font-weight:var(--font-weight-medium)}.sidebar-footer span:not(.status-dot){color:var(--text-muted);font-size:var(--font-size-caption);margin-top:3px}.status-dot{background:#2cb27c;border-radius:50%;flex:none;width:7px;height:7px;box-shadow:0 0 0 4px #2cb27c1a}.main-shell{width:calc(100% - 246px);min-width:0;min-height:100vh;margin-left:246px;transition:margin-left .22s,width .22s}.sidebar-collapsed+.main-shell{width:calc(100% - 76px);margin-left:76px}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:10;background:#ffffffe6;justify-content:space-between;align-items:center;height:64px;padding:0 26px;display:flex;position:sticky;top:0}.breadcrumb{font-size:var(--font-size-navigation);line-height:var(--line-height-label);align-items:center;gap:10px;display:flex}.breadcrumb span{color:#9f999d}.breadcrumb b{color:#d8d3d5;font-weight:var(--font-weight-regular)}.breadcrumb strong{font-weight:var(--font-weight-medium)}.top-actions{align-items:center;gap:8px;display:flex}.ghost-icon,.service-chip,.user-chip{border:1px solid var(--line);cursor:pointer;background:#fff}.ghost-icon{color:#8c868a;border-radius:10px;width:34px;height:34px}.service-chip{height:34px;color:var(--text-secondary);font-size:13px;font-weight:var(--font-weight-regular);border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:flex}.demo-environment-chip{color:#d92736;letter-spacing:.02em;white-space:nowrap;background:#f02e3a0f;border:1px solid #f02e3a38;border-radius:999px;align-items:center;min-height:34px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex}.local-mode-chip{border:1px solid var(--line);height:34px;color:var(--text-muted);font-size:13px;font-weight:var(--font-weight-regular);background:#fff;border-radius:10px;align-items:center;padding:0 12px;display:inline-flex}.session-control-placeholder{border:1px solid var(--line);background:#ffffffb8;border-radius:12px;width:108px;height:40px;display:block}.admin-session-control{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:5px;height:40px;padding:3px 4px 3px 5px;display:flex;box-shadow:0 5px 18px #23141609}.admin-identity{align-items:center;gap:8px;padding-right:7px;display:flex}.admin-avatar{background:var(--brand-primary);color:#fff;border-radius:9px;place-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:grid}.admin-identity-copy{flex-direction:column;min-width:68px;line-height:1.2;display:flex}.admin-identity-copy strong{color:var(--text-primary);font-size:12px;font-weight:650}.admin-identity-copy small{color:var(--text-muted);margin-top:2px;font-size:10px}.admin-logout{border:0;border-left:1px solid var(--line);height:30px;color:var(--text-muted);cursor:pointer;background:0 0;padding:0 10px;font-size:11px;transition:color .16s,background .16s}.admin-logout:hover:not(:disabled){color:var(--brand-primary);background:var(--brand-primary-soft)}.admin-logout:disabled{cursor:wait;opacity:.6}.user-chip{border-radius:13px;align-items:center;gap:8px;min-width:145px;height:44px;padding:4px 9px 4px 5px;display:flex}.avatar{background:var(--jiu-red);color:#fff;width:34px;height:34px;font-weight:var(--font-weight-semibold);border-radius:10px;place-items:center;display:grid}.user-copy{text-align:left;flex-direction:column;flex:1;display:flex}.user-copy strong{font-size:var(--font-size-navigation);font-weight:var(--font-weight-medium)}.user-copy small{color:var(--text-muted);font-size:var(--font-size-caption);margin-top:2px}.page-content{max-width:1650px;margin:0 auto;padding:30px 28px 56px}.voc-page-tabs{box-sizing:border-box;scrollbar-width:thin;grid-template-columns:repeat(3,minmax(220px,1fr));gap:12px;width:100%;max-width:1650px;margin:0 auto;padding:20px 28px 0;display:grid;overflow-x:auto}.home-page-tabs{grid-template-columns:repeat(2,minmax(260px,1fr))}.inventory-page-tabs{grid-template-columns:repeat(4,minmax(220px,1fr))}.home-tab-symbol,.inventory-tab-symbol{font-size:14px;font-weight:var(--font-weight-semibold)}.home-tab-symbol{letter-spacing:-.04em}.voc-page-tab{border:1px solid var(--line);min-width:220px;height:76px;color:var(--text-secondary);cursor:pointer;text-align:left;background:#ffffffdb;border-radius:16px;align-items:center;gap:12px;padding:0 16px;transition:color .18s,background-color .18s,border-color .18s,box-shadow .2s,transform .2s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 5px 18px #23141609}.voc-page-tab:hover{color:var(--jiu-red);background:#fffdfd;border-color:#e9303724;transform:translateY(-2px);box-shadow:0 10px 26px #23141612}.voc-page-tab.active{color:var(--jiu-red);background:linear-gradient(135deg,#fff 0%,#fff4f5 100%);border-color:#e9303738;box-shadow:0 12px 28px #e930371a,inset 0 1px #ffffffe6}.voc-page-tab.active:after{content:"";background:var(--jiu-red);border-radius:3px 3px 0 0;height:3px;position:absolute;inset:auto 18px 0}.voc-page-tab-icon{background:var(--surface-muted);width:40px;height:40px;color:var(--text-muted);border-radius:12px;flex:none;place-items:center;transition:color .18s,background-color .18s;display:grid}.voc-page-tab:hover .voc-page-tab-icon,.voc-page-tab.active .voc-page-tab-icon{color:var(--jiu-red);background:#e9303717}.voc-page-tab-icon svg{width:21px;height:21px}.voc-page-tab-copy{flex-direction:column;flex:1;min-width:0;display:flex}.voc-page-tab-copy strong{color:inherit;font-size:16px;font-weight:var(--font-weight-medium);line-height:1.4}.voc-page-tab-copy small{color:var(--text-muted);font-size:13px;font-weight:var(--font-weight-regular);white-space:nowrap;margin-top:3px;line-height:1.4}.voc-page-tab-arrow{color:var(--text-disabled);font-size:17px;transition:color .18s,transform .18s}.voc-page-tab:hover .voc-page-tab-arrow,.voc-page-tab.active .voc-page-tab-arrow{color:var(--jiu-red);transform:translate(2px)}.asin-search-hero{width:100%;transition:min-height .24s,padding .24s,border-color .18s,box-shadow .18s;position:relative}.asin-search-hero.initial{background:#fff;border:0;flex-direction:column;justify-content:center;align-items:center;min-height:min(620px,100vh - 210px);margin:0;padding:72px 24px 110px;display:flex}.asin-search-hero.confirmed{background:#fff;border:1px solid #e9303721;border-radius:22px;margin-bottom:28px;padding:22px 24px 20px;overflow:hidden;box-shadow:0 12px 32px #2a181b0e}.asin-search-topline{justify-content:space-between;align-items:center;gap:16px;display:flex}.stage-identity{align-items:center;gap:10px;display:flex}.stage-identity>span,.section-stage-heading>span{background:var(--jiu-red);color:#fff;width:38px;height:38px;font-size:13px;font-weight:var(--font-weight-medium);border-radius:12px;place-items:center;display:grid;box-shadow:0 7px 16px #e9303729}.stage-identity div{flex-direction:column;display:flex}.stage-identity small{color:var(--jiu-red);font-size:12px;font-weight:var(--font-weight-medium);line-height:1.4}.stage-identity strong{font-size:14px;font-weight:var(--font-weight-medium);margin-top:1px;line-height:1.4}.asin-search-intro{text-align:center;width:100%;max-width:860px;margin:0 auto}.asin-search-intro>span{color:var(--jiu-red);font-size:11px;font-weight:var(--font-weight-semibold);letter-spacing:.14em;margin-bottom:10px;display:block}.asin-search-intro h1{color:var(--text-primary);font-size:clamp(32px,4vw,46px);font-weight:var(--font-weight-semibold);letter-spacing:-.025em;margin:0;line-height:1.18}.asin-search-intro p{color:var(--text-muted);font-size:16px;font-weight:var(--font-weight-regular);margin:14px 0 0;line-height:1.6}.asin-search-hero.confirmed .asin-search-intro{text-align:left}.asin-search-hero.confirmed .asin-search-intro>span{margin-bottom:4px}.asin-search-hero.confirmed .asin-search-intro h1{letter-spacing:-.01em;font-size:23px}.asin-search-hero.confirmed .asin-search-intro p{margin-top:4px;font-size:13px}.asin-search-engine{background:#fff;border:1px solid #ddd7d8;border-radius:36px;align-items:center;gap:0;width:min(100%,860px);min-height:70px;margin:34px auto 0;padding:7px;transition:border-color .18s,box-shadow .18s;display:flex;box-shadow:0 7px 22px #29161917,inset 0 1px #fffffff2}.asin-search-engine:focus-within{border-color:#e930376b;box-shadow:0 10px 28px #2916191c,0 0 0 3px #e930370e}.asin-search-hero.confirmed .asin-search-engine{border-radius:18px;width:100%;min-height:60px;margin-top:16px}.asin-market-control,.asin-input-control{flex-direction:column;justify-content:center;min-width:0;display:flex}.asin-market-control{flex:none;width:158px;padding:0 18px}.asin-input-control{flex:1;padding:0 22px}.asin-market-control>span,.asin-input-control>span{color:var(--text-muted);font-size:12px;font-weight:var(--font-weight-medium);margin-bottom:2px;line-height:1.4}.asin-market-control select,.asin-input-control :is(input,textarea){width:100%;min-height:32px;color:var(--text-primary);font-size:16px;font-weight:var(--font-weight-medium);background:0 0;border:0;outline:0;padding:0;line-height:1.4}.asin-input-control :is(input,textarea){letter-spacing:.04em;text-transform:uppercase;font-size:17px}.asin-input-control textarea{resize:none;height:45px;overflow-y:auto}.asin-input-control textarea:focus{box-shadow:none;background:0 0}.asin-input-control :is(input,textarea)::placeholder{color:var(--text-disabled);font-size:15px;font-weight:var(--font-weight-regular);letter-spacing:0}.asin-search-divider{background:var(--line);flex:none;width:1px;height:42px}.asin-search-button{border-radius:28px;flex:none;justify-content:center;align-items:center;gap:9px;min-width:148px;height:54px;font-size:15px;display:inline-flex}.asin-search-button svg{width:21px;height:21px}.asin-search-meta{border-top:1px solid #eee9ea;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:min(100%,860px);margin:24px auto 0;padding-top:16px;display:grid}.asin-search-meta>div{min-width:0;color:var(--text-primary);text-align:left;background:0 0;border:0;border-right:1px solid #eee9ea;flex-direction:column;align-items:flex-start;padding:2px 12px;display:flex}.asin-search-meta>:nth-child(3){border-right:0}.asin-search-meta small{color:var(--text-muted);font-size:11px}.asin-search-meta strong{max-width:100%;font-size:13px;font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;overflow:hidden}.asin-search-meta span{color:var(--text-disabled);margin-top:2px;font-size:10px}.asin-search-hero.confirmed .asin-search-meta{display:none}.asin-search-error{width:min(100%,860px);margin-left:auto;margin-right:auto}.section-stage-heading{align-items:flex-start;gap:12px;margin:32px 0 14px;display:flex}.section-stage-heading>span{color:var(--jiu-red);box-shadow:none;background:#fff;border:1px solid #e930372e;flex:none;margin-top:1px}.section-stage-heading .card-kicker{margin-bottom:3px}.section-stage-heading h2{font-size:18px;font-weight:var(--font-weight-semibold);margin:0;line-height:1.4}.section-stage-heading div>p:last-child{color:var(--text-muted);font-size:14px;font-weight:var(--font-weight-regular);margin:4px 0 0;line-height:1.55}.voc-demo-notice{color:var(--text-muted);background:#e930370b;border:1px solid #e930371f;border-radius:12px;margin:-6px 0 20px;padding:11px 14px;font-size:13px;line-height:1.55}.voc-skeleton-page{min-height:calc(100vh - 64px)}.voc-empty-state{border:1px solid var(--line);text-align:center;min-height:380px;box-shadow:var(--shadow-card);background:#fff;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;padding:52px 24px;display:flex}.voc-empty-icon{width:52px;height:52px;color:var(--jiu-red);background:#e9303712;border-radius:16px;place-items:center;margin-bottom:18px;display:grid}.voc-empty-icon svg{width:25px;height:25px}.voc-empty-state h2,.voc-skeleton-card h2{font-size:16px;font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading);margin:0}.voc-empty-state p{color:var(--text-muted);margin:8px 0 22px}.voc-skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.voc-skeleton-card{border:1px solid var(--line);min-height:190px;box-shadow:var(--shadow-card);background:#fff;border-radius:18px;padding:22px}.voc-skeleton-card>span{background:var(--surface-muted);color:var(--text-muted);font-size:12px;font-weight:var(--font-weight-medium);border-radius:7px;margin-bottom:20px;padding:4px 8px;display:inline-flex}.voc-skeleton-card p{max-width:420px;color:var(--text-muted);margin:10px 0 0;font-size:14px;line-height:1.6}.voc-console-page{min-height:calc(100vh - 64px)}.connection-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.connection-overview article{border:1px solid var(--line);min-height:88px;box-shadow:var(--shadow-card);background:#fffffff0;border-radius:15px;flex-direction:column;justify-content:center;padding:16px 18px;display:flex}.connection-overview article>span{color:var(--text-muted);font-size:13px;font-weight:var(--font-weight-regular);line-height:1.5}.connection-overview article>strong{font-size:16px;font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;line-height:1.4;overflow:hidden}.connection-state.connected{color:var(--status-success)}.connection-state.failed{color:var(--status-danger)}.connection-state.untested{color:var(--status-warning)}.connection-layout{grid-template-columns:minmax(0,1fr) 330px;align-items:stretch;gap:16px;margin-bottom:16px;display:grid}.connection-card,.connection-audit-card,.interface-status-card{border:1px solid var(--line);box-shadow:var(--shadow-card);background:#fffffff5;border-radius:18px}.connection-card{padding-bottom:20px}.connection-card .card-header h2,.interface-status-card .card-header h2,.connection-audit-card h2{font-size:16px;font-weight:var(--font-weight-semibold);margin:0;line-height:1.4}.connection-card .card-header p:last-child,.interface-status-card .card-header p:last-child{color:var(--text-muted);margin:6px 0 0;font-size:14px;line-height:1.55}.connection-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:4px 20px 0;display:grid}.connection-form label{flex-direction:column;min-width:0;display:flex}.connection-form label>span{color:var(--text-secondary);font-size:14px;font-weight:var(--font-weight-medium);margin-bottom:7px;line-height:1.4}.connection-form input{border:1px solid var(--line);width:100%;height:44px;color:var(--text-primary);font-size:15px;font-weight:var(--font-weight-regular);background:#fff;border-radius:11px;outline:0;padding:0 14px}.connection-form input:focus{box-shadow:var(--shadow-control-focus);border-color:#e930376b}.connection-form input[readonly]{background:var(--surface-muted);color:var(--text-muted)}.connection-form-wide{grid-column:1/-1}.connection-toggle-row{background:var(--surface-muted);border-radius:11px;justify-content:space-between;align-items:center;gap:12px;margin:18px 20px 0;padding:12px 14px;display:flex}.connection-toggle-row label{color:var(--text-primary);font-size:14px;font-weight:var(--font-weight-medium);cursor:pointer;align-items:center;gap:9px;display:inline-flex}.connection-toggle-row input{width:17px;height:17px;accent-color:var(--jiu-red)}.connection-toggle-row>span{color:var(--text-muted);font-size:13px;line-height:1.5}.key-security-note{background:var(--status-success-soft);border:1px solid #16845a24;border-radius:12px;align-items:flex-start;gap:10px;margin:12px 20px 0;padding:13px 14px;display:flex}.key-security-note>span{color:var(--status-success);font-size:12px;font-weight:var(--font-weight-medium);background:#16845a1c;border-radius:6px;padding:3px 7px;line-height:1.4}.key-security-note p{color:#42665a;font-size:13px;font-weight:var(--font-weight-regular);margin:0;line-height:1.55}.connection-feedback{border-radius:10px;margin:12px 20px 0;padding:10px 12px;font-size:13px;line-height:1.5}.connection-feedback.success{background:var(--status-success-soft);color:var(--status-success)}.connection-feedback.error{background:var(--status-danger-soft);color:var(--status-danger)}.connection-actions{justify-content:flex-end;gap:8px;margin:18px 20px 0;display:flex}.connection-actions button{min-width:138px}.connection-audit-card{padding:20px}.connection-audit-card dl{margin:18px 0 0}.connection-audit-card dl>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:39px;display:flex}.connection-audit-card dt{color:var(--text-muted);font-size:13px}.connection-audit-card dd{color:var(--text-primary);font-size:13px;font-weight:var(--font-weight-medium);text-align:right;margin:0}.connection-error-box{background:var(--surface-muted);border-radius:11px;margin-top:16px;padding:13px}.connection-error-box span{color:var(--text-muted);font-size:12px;font-weight:var(--font-weight-medium)}.connection-error-box p{color:var(--text-secondary);margin:6px 0 0;font-size:13px;line-height:1.5}.interface-status-card{overflow:hidden}.interface-table-wrap{border-top:1px solid var(--line);overflow-x:auto}.interface-table{border-collapse:collapse;width:100%;min-width:760px;font-size:14px}.interface-table th,.interface-table td{border-bottom:1px solid var(--line);color:var(--text-secondary);text-align:left;vertical-align:middle;padding:13px 16px}.interface-table th{background:var(--surface-muted);color:var(--text-muted);font-size:12px;font-weight:var(--font-weight-medium)}.interface-table tbody tr:last-child td{border-bottom:0}.interface-table strong{font-weight:var(--font-weight-medium)}.interface-table code{color:var(--text-muted);font-family:var(--font-sans);font-size:12px}.interface-status{background:var(--surface-muted);color:var(--text-muted);font-size:12px;font-weight:var(--font-weight-medium);white-space:nowrap;border-radius:7px;padding:4px 8px;line-height:1.4;display:inline-flex}.interface-status.connected,.interface-status.ready{background:var(--status-success-soft);color:var(--status-success)}.interface-status.failed{background:var(--status-danger-soft);color:var(--status-danger)}.interface-status.untested,.interface-status.waiting_test{background:var(--status-warning-soft);color:var(--status-warning)}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:22px;display:flex}.eyebrow,.card-kicker{color:var(--jiu-red);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);letter-spacing:var(--letter-spacing-default);margin:0 0 8px}.title-row{align-items:center;gap:11px;display:flex}.page-heading h1{font-size:var(--font-size-page-title);font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading);letter-spacing:0;margin:0}.page-heading>div>p:last-child{color:var(--text-secondary);font-size:var(--font-size-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);margin:8px 0 0}.version-tag{color:var(--jiu-red);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);letter-spacing:var(--letter-spacing-default);background:#fff6f7;border:1px solid #f0c9cc;border-radius:6px;padding:4px 8px}.heading-actions,.table-actions,.taxonomy-actions{align-items:center;gap:8px;display:flex}.primary-button,.secondary-button{height:38px;font-size:var(--font-size-button);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);cursor:pointer;border-radius:10px;padding:0 15px;transition:all .16s}.primary-button{border:1px solid var(--jiu-red);background:var(--jiu-red);color:#fff;box-shadow:0 7px 18px #e930372b}.primary-button:hover{background:var(--jiu-red-dark);transform:translateY(-1px)}.primary-button:disabled{opacity:.64;cursor:wait;transform:none}.secondary-button{border:1px solid var(--line);color:#5e585c;background:#fff}.secondary-button:hover{color:var(--jiu-red);border-color:#d9b9bb}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.metric-card{border:1px solid var(--line);background:#ffffffed;border-radius:15px;align-items:center;gap:14px;min-height:104px;padding:18px;display:flex;box-shadow:0 7px 24px #20111209}.metric-icon{width:42px;height:42px;font-size:16px;font-weight:var(--font-weight-semibold);border-radius:13px;place-items:center;display:grid}.metric-icon.red{background:var(--jiu-red);color:#fff}.metric-icon.rose{color:var(--jiu-red);background:#ffe3e5}.metric-icon.dark{color:#fff;background:#262124}.metric-icon.soft{color:#5b5559;background:#f0eded}.metric-card div{grid-template-columns:auto auto;align-items:baseline;column-gap:8px;display:grid}.metric-card small{color:var(--text-muted);font-size:var(--font-size-helper);font-weight:var(--font-weight-regular);line-height:var(--line-height-copy);grid-column:1/-1}.metric-card strong{font-size:24px;font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading);letter-spacing:0;margin-top:4px}.metric-card em{font-size:var(--font-size-caption);color:var(--text-muted);font-style:normal;line-height:var(--line-height-label)}.metric-card em.positive{color:var(--success)}.workflow-card,.tool-card,.run-panel,.taxonomy-card,.table-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffffff5;border-radius:16px}.workflow-card{margin-bottom:16px;padding:18px 20px 16px}#voc-analysis-settings{scroll-margin-top:150px}.card-header{border-bottom:1px solid #f0eeee;justify-content:space-between;align-items:flex-start;gap:18px;padding:19px 20px 17px;display:flex}.card-header.compact{border-bottom:0;padding:0 0 14px}.card-header h2{font-size:var(--font-size-card-title);font-weight:var(--font-weight-semibold);line-height:var(--line-height-label);letter-spacing:0;margin:0}.card-header p:not(.card-kicker){color:var(--text-muted);font-size:var(--font-size-helper);font-weight:var(--font-weight-regular);line-height:var(--line-height-copy);margin:5px 0 0}.safe-pill,.draft-pill{color:var(--success);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);background:#eff9f5;border-radius:7px;padding:5px 9px}.draft-pill{color:#a66519;background:#fff5e8}.workflow{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.workflow-step{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;align-items:center;gap:8px;padding:9px 7px;display:flex;position:relative}.workflow-step:hover{background:#faf8f8}.workflow-step.current{background:var(--jiu-red-soft)}.step-number{color:#918a8e;width:28px;height:28px;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);background:#f2efef;border-radius:9px;place-items:center;display:grid}.workflow-step.current .step-number{background:var(--jiu-red);color:#fff}.workflow-step.done .step-number{color:var(--success);background:#e9f7f1}.step-copy{flex-direction:column;min-width:0;display:flex}.step-copy strong{font-size:var(--font-size-navigation);font-weight:var(--font-weight-medium);line-height:var(--line-height-label)}.step-copy small{color:var(--text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-regular);line-height:var(--line-height-label);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;overflow:hidden}.workspace-grid{grid-template-columns:minmax(0,2.4fr) minmax(280px,.72fr);align-items:stretch;gap:14px;margin-bottom:16px;display:grid}.workspace-grid>*{min-width:0}.tool-card{overflow:hidden}.tool-title-line{align-items:center;gap:9px;display:flex}.main-tool-tag{background:var(--jiu-red-soft);color:var(--jiu-red);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);border-radius:6px;padding:3px 7px}.text-button,.row-button,.panel-link{cursor:pointer;background:0 0;border:0}.text-button{color:var(--jiu-red);font-size:var(--font-size-form-label);font-weight:var(--font-weight-medium);line-height:var(--line-height-label)}.form-grid{gap:10px;padding:16px 20px 0;display:grid}.form-grid.four{grid-template-columns:1.25fr 1fr .85fr .9fr}.form-grid.two{grid-template-columns:1fr 1fr}.form-grid label,.textarea-label{flex-direction:column;gap:6px;display:flex}.form-grid label>span,.textarea-label>span{color:var(--text-secondary);font-size:var(--font-size-form-label);font-weight:var(--font-weight-medium);line-height:var(--line-height-label)}input,select,textarea{border:1px solid var(--line);width:100%;color:var(--text-secondary);background:#fbfafa;outline:0;transition:all .14s}input,select{height:44px;font-size:var(--font-size-form-control);font-weight:var(--font-weight-regular);line-height:var(--line-height-copy);border-radius:9px;padding:0 14px}textarea{resize:vertical;min-height:64px;font-size:var(--font-size-form-control);font-weight:var(--font-weight-regular);line-height:var(--line-height-copy);border-radius:10px;padding:10px 14px}input:focus,select:focus,textarea:focus{background:#fff;border-color:#e9a8ac;box-shadow:0 0 0 3px #e9303712}.voc-source-tabs{border:1px solid var(--line);background:#f7f5f5;border-radius:11px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin:12px 20px 0;padding:4px;display:grid}.voc-data-decision{background:#fbf9f9;border:1px solid #eadfe0;border-radius:11px;justify-content:space-between;align-items:center;gap:16px;margin:2px 20px 12px;padding:12px 13px;display:flex}.voc-data-decision.linked{background:#effaf5;border-color:#bde2d3}.voc-data-decision>div{flex-direction:column;min-width:0;display:flex}.voc-data-decision small{color:var(--text-muted);font-size:10px}.voc-data-decision strong{font-size:12px;font-weight:var(--font-weight-semibold);margin-top:3px}.voc-data-decision>span{max-width:44%;color:var(--text-muted);text-align:right;font-size:11px;line-height:1.5}.voc-discovery-card{background:#fbf9f9;border:1px solid #eadfe0;border-radius:15px;margin:0 20px 18px;padding:16px}.voc-discovery-card.ready{background:#f2faf6;border-color:#bde2d3}.voc-discovery-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.voc-discovery-heading small{color:var(--jiu-red);font-size:10px;font-weight:var(--font-weight-semibold);letter-spacing:.08em}.voc-discovery-heading h3{font-size:16px;font-weight:var(--font-weight-semibold);margin:3px 0 0}.voc-discovery-heading>span{color:var(--text-muted);white-space:nowrap;background:#fff;border-radius:999px;padding:5px 9px;font-size:11px}.voc-discovery-plan,.voc-discovery-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.voc-discovery-plan>div,.voc-discovery-summary>div{background:#ffffffbf;border:1px solid #ded3d4c2;border-radius:10px;flex-direction:column;min-width:0;padding:10px 11px;display:flex}.voc-discovery-plan span,.voc-discovery-summary span{color:var(--text-muted);font-size:10px}.voc-discovery-plan strong,.voc-discovery-summary strong{font-size:12px;font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;overflow:hidden}.voc-product-list{gap:8px;margin-top:14px;display:grid}.voc-product-list article{background:#ffffffd1;border:1px solid #bde2d3e6;border-radius:11px;justify-content:space-between;align-items:center;gap:16px;padding:11px 12px;display:flex}.voc-product-list article>div{flex-direction:column;min-width:0;display:flex}.voc-product-list article small,.voc-product-list article span{color:var(--text-muted);font-size:10px}.voc-product-list article strong{font-size:13px;font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;margin:3px 0;overflow:hidden}.voc-product-list article>b{min-width:92px;color:var(--text-primary);text-align:right;flex-direction:column;font-size:20px;display:flex}.voc-product-list article>b small{font-weight:var(--font-weight-regular);margin-top:2px}.voc-discovery-notice{color:var(--text-muted);margin:11px 0 0;font-size:11px;line-height:1.55}.voc-discovery-card .sorftime-cost-confirm{margin-top:12px}.voc-discovery-action{width:100%;margin-top:10px}.voc-discovery-wait{text-align:center;background:#fbf9f9;border:1px dashed #ddd3d4;border-radius:12px;margin:0 20px 20px;padding:18px}.voc-discovery-wait strong{font-size:13px}.voc-discovery-wait p{color:var(--text-muted);margin:5px 0 0;font-size:11px}.voc-source-tabs button{min-height:36px;color:var(--text-muted);font-size:var(--font-size-form-label);font-weight:var(--font-weight-medium);cursor:pointer;background:0 0;border:0;border-radius:8px}.voc-source-tabs button.active{color:var(--jiu-red);background:#fff;box-shadow:0 3px 10px #26181912}.voc-inline-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.voc-source-tabs button:disabled{cursor:not-allowed;opacity:.55}.sorftime-download-panel{background:#fdfbfb;border:1px solid #eee4e5;border-radius:13px;margin:12px 20px 0;padding:14px}.sorftime-download-panel .form-grid{padding:0}.sorftime-checkbox-field{justify-content:flex-start}.sorftime-inline-check,.sorftime-cost-confirm{min-height:44px;color:var(--text-secondary);font-size:var(--font-size-form-control);align-items:center;gap:9px;display:flex}.sorftime-inline-check input,.sorftime-cost-confirm input{width:15px;height:15px;accent-color:var(--jiu-red);flex:none;padding:0}.sorftime-plan-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.sorftime-plan-actions span{color:var(--text-muted);font-size:var(--font-size-helper)}.sorftime-cost-card{background:#fff7f7;border:1px solid #efc8cb;border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px;padding:13px;display:grid}.sorftime-cost-card>div,.sorftime-audit-strip>div{flex-direction:column;min-width:0;display:flex}.sorftime-cost-card span,.sorftime-audit-strip span{color:var(--text-muted);font-size:11px}.sorftime-cost-card strong,.sorftime-audit-strip strong{font-size:14px;font-weight:var(--font-weight-semibold);margin-top:3px}.sorftime-cost-card p,.sorftime-cost-confirm{grid-column:1/-1;margin:2px 0 0}.sorftime-cost-card p{color:#8b5559;font-size:12px}.sorftime-cost-card .primary-button{grid-column:1/-1;justify-self:end}.sorftime-local-result{color:#157252;background:#effaf5;border:1px solid #bde2d3;border-radius:12px;margin-top:12px;padding:12px 13px;display:grid}.sorftime-local-result span{font-family:var(--font-mono);margin-top:3px;font-size:11px}.sorftime-local-result p{margin:6px 0 0;font-size:12px}.sorftime-audit-strip{border-top:1px solid #ece5e6;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:12px;padding-top:12px;display:grid}.upload-panel{background:#fdfbfb;border:1px dashed #e2d9da;border-radius:12px;justify-content:space-between;align-items:center;min-height:66px;margin:12px 20px 0;padding:11px 13px;display:flex}.upload-copy{align-items:center;gap:11px;display:flex}.upload-icon{background:var(--jiu-red-soft);width:36px;height:36px;color:var(--jiu-red);border-radius:10px;place-items:center;font-size:19px;display:grid}.upload-copy strong{font-size:var(--font-size-option-title);font-weight:var(--font-weight-medium);line-height:var(--line-height-option-title)}.upload-copy p{color:var(--text-muted);font-size:var(--font-size-helper);font-weight:var(--font-weight-regular);line-height:var(--line-height-copy);margin:4px 0 0}.file-button{border:1px solid var(--line);color:var(--text-secondary);font-size:var(--font-size-form-label);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);cursor:pointer;background:#fff;border-radius:9px;padding:8px 11px}.file-button input{display:none}.section-label{align-items:baseline;gap:8px;margin:15px 20px 8px;display:flex}.section-label span{font-size:var(--font-size-card-title);font-weight:var(--font-weight-semibold);line-height:var(--line-height-label)}.section-label small{color:var(--text-muted);font-size:var(--font-size-helper);font-weight:var(--font-weight-regular);line-height:var(--line-height-copy)}.context-grid{grid-template-columns:repeat(4,1fr);gap:8px;padding:0 20px;display:grid}.context-option{border:1px solid var(--line);cursor:pointer;border-radius:10px;gap:7px;min-height:74px;padding:12px 14px;display:flex}.context-option.selected{background:var(--jiu-red-soft);border-color:#ef9da2}.context-option:has(input:checked){background:var(--jiu-red-soft);border-color:#ef9da2}.context-option input{width:12px;height:12px;accent-color:var(--jiu-red);margin:2px 0 0}.context-option span{flex-direction:column;display:flex}.context-option strong{font-size:var(--font-size-option-title);font-weight:var(--font-weight-medium);line-height:var(--line-height-option-title)}.context-option small{color:var(--text-muted);font-size:var(--font-size-helper);font-weight:var(--font-weight-regular);line-height:var(--line-height-copy);margin-top:4px}.textarea-label{padding:12px 20px 0}.tool-footer{border-top:1px solid #f0eeee;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;padding:14px 20px;display:flex}.guard-note{color:var(--text-muted);font-size:var(--font-size-helper);font-weight:var(--font-weight-regular);line-height:var(--line-height-copy)}.guard-note span{color:var(--jiu-red);margin-right:6px}.run-button{min-width:130px}.run-panel{padding:19px}.run-state{color:#7b7478;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);background:#f1eeee;border-radius:7px;padding:5px 8px}.run-state.running,.run-state.queued,.run-state.waiting_approval{color:#b5681a;background:#fff2e6}.run-state.completed,.run-state.ready{color:var(--success);background:#eaf7f1}.run-state.failed{color:var(--jiu-red);background:#fff0f1}.progress-wrap{border-bottom:1px solid #f0eeee;align-items:center;gap:15px;padding:12px 0 17px;display:flex}.progress-ring{--progress:0deg;background:conic-gradient(var(--jiu-red) var(--progress), #f0eded 0);border-radius:50%;width:82px;height:82px;padding:7px}.progress-ring>div{text-align:center;background:#fff;border-radius:50%;place-content:center;width:100%;height:100%;display:grid}.progress-ring strong{font-size:18px;font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading)}.progress-ring span{color:var(--text-muted);font-size:var(--font-size-caption);line-height:var(--line-height-label);margin-top:2px}.progress-copy{flex-direction:column;display:flex}.progress-copy small{color:var(--text-muted);font-size:var(--font-size-caption);line-height:var(--line-height-label)}.progress-copy strong{font-size:var(--font-size-body);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);margin-top:4px}.progress-copy p{color:var(--text-muted);font-size:var(--font-size-caption);line-height:var(--line-height-label);margin:5px 0 0}.status-list{padding:12px 0}.status-list div{justify-content:space-between;align-items:center;min-height:28px;display:flex}.status-list span{color:var(--text-muted);font-size:var(--font-size-helper);line-height:var(--line-height-copy)}.status-list strong{font-size:var(--font-size-helper);font-weight:var(--font-weight-medium);line-height:var(--line-height-copy)}.voc-preflight-message,.voc-preflight-result{border-radius:12px;margin-top:14px;padding:12px 14px;font-size:13px;line-height:1.55}.voc-preflight-message.error,.voc-preflight-result.failed{color:#b4232c;background:#fff3f4;border:1px solid #f3c8cc}.voc-preflight-result.success{color:#157252;background:#effaf5;border:1px solid #bde2d3}.voc-preflight-result>div:first-child{justify-content:space-between;align-items:center;gap:12px;display:flex}.voc-preflight-result dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:10px 0 0;display:grid}.voc-preflight-result dl div{background:#ffffffb8;border-radius:8px;padding:7px 9px}.voc-preflight-result dt{color:var(--text-muted);font-size:11px}.voc-preflight-result dd{text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:12px;font-weight:600;overflow:hidden}.voc-preflight-result p{margin:8px 0 0}.voc-run-identifiers strong{max-width:200px;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.voc-asin-runs{gap:6px;display:grid}.voc-asin-runs div{border:1px solid var(--line);background:var(--surface-muted);border-radius:9px;flex-direction:column;padding:9px 10px;display:flex}.voc-asin-runs span{font-size:12px;font-weight:600}.voc-asin-runs strong{color:var(--text-muted);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10px;font-weight:500;overflow:hidden}.voc-run-created{color:var(--text-muted);text-align:right;margin:10px 0 0;font-size:11px}.voc-worker-authorization,.voc-taxonomy-approval,.voc-artifact-list{border:1px solid var(--line);background:var(--surface-muted);border-radius:12px;gap:10px;margin-top:12px;padding:12px;display:grid}.voc-worker-authorization>label:first-child{color:var(--text-secondary);grid-template-columns:1fr 120px;align-items:center;gap:10px;font-size:12px;display:grid}.voc-worker-authorization input[type=number]{border:1px solid var(--line);width:100%;min-width:0;color:var(--text-primary);background:#fff;border-radius:8px;padding:8px 10px}.checkbox-line{color:var(--text-secondary);align-items:flex-start;gap:8px;font-size:11px;line-height:1.5;display:flex}.checkbox-line input{accent-color:var(--jiu-red);margin-top:2px}.voc-taxonomy-approval{background:#fff8f8;border-color:#efc2c5}.voc-taxonomy-approval>div:first-child{gap:3px;display:grid}.voc-taxonomy-approval small,.voc-artifact-list>small{color:var(--jiu-red);letter-spacing:.08em;font-size:10px;font-weight:700}.voc-taxonomy-approval>div span{color:var(--text-muted);font-size:11px}.voc-taxonomy-approval ul{gap:6px;max-height:210px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.voc-taxonomy-approval li{background:#fff;border-radius:8px;gap:3px;padding:8px;display:grid}.voc-taxonomy-approval li strong{font-size:11px}.voc-taxonomy-approval li span{color:var(--text-muted);font-size:10px;line-height:1.45}.voc-artifact-list a{color:var(--text-secondary);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 9px;font-size:11px;display:flex}.voc-artifact-list a:hover{color:var(--jiu-red)}.voc-artifact-list a strong{color:var(--text-muted);font-size:10px;font-weight:500}.voc-refresh-run{width:100%;margin-top:12px}.voc-runtime-version-guard{text-align:center;background:#fff;border:1px solid #e9303733;border-radius:22px;width:min(680px,100% - 40px);margin:72px auto;padding:32px;box-shadow:0 22px 60px #2c14161f}.voc-runtime-version-guard>span{color:var(--jiu-red);letter-spacing:.08em;font-size:12px;font-weight:700}.voc-runtime-version-guard h1{margin:12px 0 0;font-size:24px}.voc-runtime-version-guard p{max-width:560px;color:var(--text-muted);margin:12px auto 22px;font-size:14px;line-height:1.75}.voc-run-empty{text-align:center;background:#fbf9f9;border:1px dashed #ddd4d5;border-radius:12px;margin-top:14px;padding:18px}.voc-run-empty strong{font-size:13px}.voc-run-empty p{color:var(--text-muted);margin:5px 0 0;font-size:12px}.demo-result-banner{color:#8d3037;background:#fff8f8;border:1px solid #f1d7da;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:15px 18px;display:flex}.demo-result-banner strong{font-size:13px}.demo-result-banner span{color:var(--text-muted);font-size:12px}.voc-history-list{border:1px solid var(--line);box-shadow:var(--shadow-card);background:#fff;border-radius:20px;padding:22px}.voc-history-filters{border:1px solid var(--line);box-shadow:var(--shadow-card);background:#fff;border-radius:18px;grid-template-columns:repeat(4,minmax(140px,1fr));gap:11px;padding:16px;display:grid}.voc-history-filters label{gap:6px;min-width:0;display:grid}.voc-history-filters label>span{color:var(--text-muted);font-size:11px}.voc-history-filters input,.voc-history-filters select{border:1px solid var(--line);width:100%;min-height:40px;color:var(--text-primary);font:inherit;background:#fff;border-radius:10px;outline:none;padding:0 11px}.voc-history-filters input:focus,.voc-history-filters select:focus{border-color:var(--jiu-red);box-shadow:0 0 0 3px #ef2f3a14}.voc-history-filter-actions{align-items:end;gap:8px;display:flex}.voc-history-filter-error{color:#b42331;background:#fff5f6;border:1px solid #f2c7cb;border-radius:12px;margin:0;padding:11px 14px;font-size:12px}.voc-history-list>article{border-top:1px solid var(--line);grid-template-columns:minmax(220px,1.4fr) minmax(180px,.8fr) auto auto;align-items:center;gap:16px;padding:15px 0;display:grid}.voc-history-list>article.quality-warning{background:#fff9f1;border-radius:12px;margin:0 -10px;padding-left:10px;padding-right:10px}.voc-history-list>article>div{flex-direction:column;gap:4px;display:flex}.voc-history-list article strong{font-size:14px}.voc-history-list article small,.voc-history-list article span,.voc-history-list article time{color:var(--text-muted);font-size:12px}.voc-history-list article code{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.voc-history-open{min-width:108px;min-height:38px;color:var(--jiu-red);cursor:pointer;font-size:12px;font-weight:var(--font-weight-semibold);background:#fff8f8;border:1px solid #efcfd1;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:0 13px;transition:border-color .16s,background-color .16s,transform .16s;display:inline-flex}.voc-history-open:hover{border-color:var(--jiu-red);background:#fff1f2;transform:translateY(-1px)}.voc-report-page{gap:16px;display:grid}.voc-report-hero,.voc-report-section,.voc-report-state{border:1px solid var(--line);box-shadow:var(--shadow-card);background:#fff;border-radius:20px}.voc-report-hero{background:radial-gradient(circle at 96% -20%,#e9303721,#0000 36%),#fff;padding:22px 24px 18px;position:relative;overflow:hidden}.voc-report-hero:before{content:"";background:var(--jiu-red);width:4px;position:absolute;inset:0 auto 0 0}.voc-report-back{color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.voc-report-back:hover{color:var(--jiu-red)}.voc-report-hero-main{justify-content:space-between;align-items:flex-start;gap:24px;margin-top:18px;display:flex}.voc-report-hero-main h1{letter-spacing:-.025em;max-width:920px;margin:4px 0 0;font-size:clamp(24px,2.4vw,36px);line-height:1.16}.voc-report-hero-main p:not(.card-kicker){color:var(--text-muted);margin:9px 0 0;font-size:13px}.voc-report-hero-actions{flex-direction:column;align-items:flex-end;gap:10px;min-width:170px;display:flex}.voc-report-hero-actions a{text-decoration:none}.voc-report-quality{font-size:12px;font-weight:var(--font-weight-semibold);border-radius:8px;padding:6px 10px}.voc-report-quality.passed{color:#14795a;background:#eaf8f2}.voc-report-quality.review{color:#a35f13;background:#fff2e5}.voc-report-runline{color:var(--text-muted);border-top:1px solid #f0eaeb;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:20px;padding-top:14px;font-size:11px;display:flex}.voc-report-runline code{color:#6d484c;text-overflow:ellipsis;white-space:nowrap;max-width:320px;overflow:hidden}.voc-report-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.voc-report-kpis article{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;min-width:0;padding:16px 17px;display:flex;box-shadow:0 8px 24px #2314160b}.voc-report-kpis article.negative{background:snow;border-color:#f0cdd0}.voc-report-kpis small{color:var(--text-muted);font-size:11px}.voc-report-kpis strong{letter-spacing:-.035em;margin-top:6px;font-size:26px;line-height:1}.voc-report-kpis span{color:var(--text-muted);margin-top:7px;font-size:11px}.voc-report-section{overflow:hidden}.voc-report-section>.card-header.compact{padding:19px 20px 0}.voc-finding-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:18px 20px 20px;display:grid}.voc-finding-card{background:#fdfcfc;border:1px solid #e8e2e3;border-radius:15px;min-width:0;padding:16px}.voc-finding-card.negative{background:#fff8f8;border-color:#f0cdd0}.voc-finding-card.positive{background:#f8fcfa;border-color:#cfe8de}.voc-finding-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.voc-finding-heading span{color:#8d5d62;font-size:10px;font-weight:var(--font-weight-semibold);background:#f4edef;border-radius:6px;padding:3px 7px}.voc-finding-card.negative .voc-finding-heading span{color:#b32e39;background:#feecef}.voc-finding-card.positive .voc-finding-heading span{color:#167354;background:#e5f5ee}.voc-finding-heading code{max-width:58%;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.voc-finding-card h3{min-height:42px;margin:12px 0 0;font-size:16px;line-height:1.35}.voc-finding-metrics{flex-wrap:wrap;align-items:baseline;gap:5px 9px;margin-top:12px;display:flex}.voc-finding-metrics strong{font-size:24px}.voc-finding-metrics span{color:var(--text-muted);font-size:10px}.voc-share-track{background:#eee9ea;border-radius:999px;height:5px;margin-top:10px;overflow:hidden}.voc-share-track span{border-radius:inherit;background:#8b7073;height:100%;display:block}.voc-finding-card.negative .voc-share-track span{background:var(--jiu-red)}.voc-finding-card.positive .voc-share-track span{background:#1d916e}.voc-finding-card>p{color:var(--text-muted);margin:10px 0 0;font-size:10px}.voc-evidence-stack{gap:7px;margin-top:13px;display:grid}.voc-evidence-stack blockquote{color:#624e51;background:#ffffffb3;border-left:2px solid #e3d5d7;margin:0;padding:8px 9px;font-size:10px;line-height:1.5}.voc-report-two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.voc-priority-list,.voc-trend-list{gap:9px;padding:4px 20px 20px;display:grid}.voc-priority-list article{background:snow;border:1px solid #f0d6d8;border-radius:12px;grid-template-columns:32px 1fr;gap:11px;padding:12px;display:grid}.voc-priority-list article>span{background:var(--jiu-red);color:#fff;width:32px;height:32px;font-size:11px;font-weight:var(--font-weight-semibold);border-radius:9px;place-items:center;display:grid}.voc-priority-list article div{flex-direction:column;min-width:0;display:flex}.voc-priority-list small{color:var(--text-muted);margin-top:2px;font-size:10px}.voc-priority-list p{color:#745b5e;margin:7px 0 0;font-size:11px}.voc-trend-list article{border-bottom:1px solid #f1eded;grid-template-columns:100px minmax(80px,1fr) 86px;align-items:center;gap:11px;padding:10px 0;display:grid}.voc-trend-list article>div:first-child{flex-direction:column;display:flex}.voc-trend-list article span,.voc-trend-list article b{color:var(--text-muted);font-size:10px}.voc-trend-rate{background:#eee9ea;border-radius:999px;height:6px;overflow:hidden}.voc-trend-rate span{background:var(--jiu-red);height:100%;display:block}.voc-report-filters{border:1px solid var(--line);background:#faf8f8;border-radius:10px;gap:2px;padding:3px;display:flex}.voc-report-filters button{min-width:54px;min-height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 10px;font-size:11px}.voc-report-filters button.active{color:var(--jiu-red);font-weight:var(--font-weight-semibold);background:#fff;box-shadow:0 2px 7px #23141614}.voc-report-review-list{padding:0 20px 20px;display:grid}.voc-report-review-list article{border-top:1px solid #f0eeee;grid-template-columns:185px minmax(280px,1fr) 86px;align-items:center;gap:14px;min-width:0;padding:13px 0;display:grid}.voc-report-review-meta,.voc-report-review-score{flex-direction:column;gap:4px;display:flex}.voc-report-review-meta strong{font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.voc-report-review-meta .sentiment{width:fit-content}.voc-report-review-copy{min-width:0}.voc-report-review-copy>div{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.voc-report-review-copy small,.voc-report-review-score small,.voc-report-review-score span{color:var(--text-muted);font-size:10px}.voc-report-review-copy blockquote{color:#5f4c4f;background:#fcf9f9;border-left:2px solid #e2d2d4;margin:8px 0 0;padding:9px 11px;font-size:11px;line-height:1.55}.voc-report-review-score{text-align:right;align-items:flex-end}.voc-report-review-score strong{font-size:15px}.voc-quality-checks{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:4px 20px 14px;display:grid}.voc-quality-checks>div{background:#f7fcfa;border:1px solid #d8ece4;border-radius:11px;grid-template-columns:22px 1fr auto;align-items:center;gap:7px;min-width:0;padding:10px;display:grid}.voc-quality-checks>div>span{color:#14795a;width:22px;height:22px;font-size:11px;font-weight:var(--font-weight-semibold);background:#def2e9;border-radius:50%;place-items:center;display:grid}.voc-quality-checks strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.voc-quality-checks small{color:#14795a;font-size:10px}.voc-quality-metrics{border-top:1px solid #f0eeee;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 20px 20px;padding-top:12px;display:grid}.voc-quality-metrics div{flex-direction:column;display:flex}.voc-quality-metrics dt{color:var(--text-muted);font-size:10px}.voc-quality-metrics dd{color:var(--text-primary);font-size:16px;font-weight:var(--font-weight-semibold);margin:3px 0 0}.voc-report-taxonomy{gap:7px;padding:4px 20px 20px;display:grid}.voc-report-taxonomy details{background:#fdfcfc;border:1px solid #ece6e7;border-radius:11px;padding:10px 11px}.voc-report-taxonomy summary{cursor:pointer;grid-template-columns:7px minmax(0,1fr) auto;align-items:center;gap:8px;list-style:none;display:grid}.voc-report-taxonomy summary::-webkit-details-marker{display:none}.voc-report-taxonomy summary>span{background:#8b7073;border-radius:50%;width:7px;height:7px}.voc-report-taxonomy summary>span.positive{background:#1d916e}.voc-report-taxonomy summary>span.negative{background:var(--jiu-red)}.voc-report-taxonomy summary strong{font-size:11px}.voc-report-taxonomy summary code{color:var(--text-muted);font-size:9px}.voc-report-taxonomy details p{color:#675356;margin:9px 0 0 15px;font-size:10px}.voc-report-taxonomy details small{color:var(--text-muted);margin:5px 0 0 15px;font-size:9px;display:block}.voc-report-artifacts{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:2px 20px 20px;display:grid}.voc-report-artifacts a{min-width:0;color:inherit;background:#fdfcfc;border:1px solid #e9e3e4;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px;text-decoration:none;display:flex}.voc-report-artifacts a:hover{background:#fff8f8;border-color:#efc8cb}.voc-report-artifacts a>span{flex-direction:column;min-width:0;display:flex}.voc-report-artifacts strong,.voc-report-artifacts small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.voc-report-artifacts strong{font-size:11px}.voc-report-artifacts small,.voc-report-artifacts b{color:var(--text-muted);font-size:9px}.voc-report-empty-copy{color:var(--text-muted);margin:0;padding:12px;font-size:12px}.voc-report-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:360px;padding:48px;display:flex}.voc-report-state-mark{width:54px;height:54px;color:var(--jiu-red);font-size:22px;font-weight:var(--font-weight-semibold);background:#fff0f1;border-radius:16px;place-items:center;display:grid}.voc-report-state h1{margin:18px 0 0}.voc-report-state p{max-width:560px;color:var(--text-muted);margin:8px 0 18px}.approval-box{background:snow;border:1px solid #f0d6d8;border-radius:12px;padding:12px}.approval-heading{gap:9px;display:flex}.approval-check{width:26px;height:26px;color:var(--jiu-red);font-size:var(--font-size-navigation);font-weight:var(--font-weight-semibold);background:#ffe4e6;border-radius:8px;place-items:center;display:grid}.approval-check.approved{color:var(--success);background:#e4f5ed}.approval-heading strong{font-size:var(--font-size-helper);font-weight:var(--font-weight-medium);line-height:var(--line-height-label)}.approval-heading p{color:var(--text-muted);font-size:var(--font-size-helper);line-height:var(--line-height-copy);margin:3px 0 0}.approval-button,.approved-button{width:100%;height:32px;font-size:var(--font-size-button);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);cursor:pointer;border-radius:8px;margin-top:10px}.approval-button{border:1px solid var(--jiu-red);background:var(--jiu-red);color:#fff}.approved-button{color:var(--success);background:#edf8f3;border:1px solid #cde8dc}.panel-link{width:100%;color:var(--jiu-red);font-size:var(--font-size-button);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);justify-content:space-between;margin-top:14px;padding:10px 2px 0;display:flex}.taxonomy-card,.table-card{margin-bottom:16px;overflow:hidden}.taxonomy-grid{grid-template-columns:repeat(2,1fr);gap:10px;padding:13px;display:grid}.taxonomy-item{border:1px solid var(--line);background:#fdfcfc;border-radius:13px;grid-template-columns:34px 1fr auto;align-items:start;gap:11px;min-height:104px;padding:13px;display:grid}.taxonomy-index{background:var(--jiu-red-soft);width:34px;height:34px;color:var(--jiu-red);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);border-radius:10px;place-items:center;display:grid}.taxonomy-copy>div:first-child{align-items:center;gap:7px;display:flex}.taxonomy-copy strong{font-size:var(--font-size-body);font-weight:var(--font-weight-medium);line-height:var(--line-height-label)}.taxonomy-copy code{color:var(--text-muted);font-family:var(--font-sans);font-size:var(--font-size-caption);line-height:var(--line-height-label)}.taxonomy-copy p{color:var(--text-muted);font-size:var(--font-size-helper);line-height:var(--line-height-copy);margin:5px 0 8px}.mini-tags{flex-wrap:wrap;gap:4px;display:flex}.mini-tags span{color:#716a6e;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);background:#f3f0f0;border-radius:5px;padding:3px 6px}.taxonomy-item>b{font-size:17px;font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading);align-items:baseline;gap:3px;display:flex}.taxonomy-item>b small{color:var(--text-muted);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.review-table-wrap{overflow-x:auto}.review-table{border-collapse:collapse;width:100%;color:var(--text-secondary);font-size:var(--font-size-table);font-weight:var(--font-weight-regular);line-height:var(--line-height-body)}.review-table th{color:var(--text-muted);text-align:left;font-weight:var(--font-weight-medium);white-space:nowrap;background:#faf8f8;padding:10px 13px}.review-table td{vertical-align:middle;border-top:1px solid #f1eeee;padding:12px 13px}.review-table td:first-child strong{font-size:var(--font-size-table);font-weight:var(--font-weight-medium);display:block}.stars{color:#e69e25;font-size:var(--font-size-caption);letter-spacing:var(--letter-spacing-default);margin-top:4px;display:block}.review-text{max-width:360px;font-size:var(--font-size-table);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);margin:0}.evidence{color:var(--jiu-red);font-size:var(--font-size-caption);line-height:var(--line-height-label);margin-top:5px;display:block}.label-pill,.sentiment{white-space:nowrap;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);border-radius:6px;padding:4px 7px}.label-pill{background:var(--jiu-red-soft);color:var(--jiu-red)}.sentiment.negative{color:#c92a31;background:#fff0f1}.sentiment.positive{color:var(--success);background:#eaf7f1}.confidence{background:#f0eded;border-radius:5px;min-width:82px;height:22px;position:relative;overflow:hidden}.confidence span{background:#f3b7ba;position:absolute;inset:0 auto 0 0}.confidence b{z-index:1;font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);padding-left:5px;line-height:22px;position:relative}.row-button{color:var(--jiu-red);font-size:var(--font-size-button);font-weight:var(--font-weight-medium);line-height:var(--line-height-label)}.placeholder-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - 64px);padding:70px 30px;display:flex}.placeholder-mark{background:var(--jiu-red);color:#fff;width:70px;height:70px;font-size:30px;font-weight:var(--font-weight-semibold);border-radius:21px;place-items:center;margin-bottom:22px;display:grid;box-shadow:0 17px 40px #e9303733}.placeholder-page h1{font-size:var(--font-size-page-title);font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading);letter-spacing:0;margin:0}.placeholder-page>p:not(.eyebrow){max-width:520px;color:var(--text-muted);font-size:var(--font-size-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);margin:13px auto 25px}.drawer-backdrop,.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:60;background:#1c121447;justify-content:flex-end;animation:.15s fade-in;display:flex;position:fixed;inset:0}.drawer{background:#fff;width:min(430px,94vw);height:100%;padding:22px;animation:.22s slide-in;box-shadow:-20px 0 60px #2611141f}.drawer-header{justify-content:space-between;align-items:flex-start;display:flex}.drawer-header h2{font-size:var(--font-size-module-title);font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading);letter-spacing:0;margin:0}.drawer-header>button{border:1px solid var(--line);color:#8c8589;cursor:pointer;background:#fff;border-radius:10px;width:32px;height:32px}.history-list{gap:10px;margin-top:24px;display:grid}.history-list article{border:1px solid var(--line);background:#fdfcfc;border-radius:13px;padding:15px}.history-top,.history-bottom{justify-content:space-between;align-items:center;display:flex}.history-top span{color:var(--success);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);line-height:var(--line-height-label)}.history-top small,.history-bottom span{color:var(--text-muted);font-size:var(--font-size-caption);line-height:var(--line-height-label)}.history-list h3{font-size:var(--font-size-module-title);font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading);margin:11px 0 5px}.history-list p{color:var(--text-muted);font-size:var(--font-size-helper);line-height:var(--line-height-copy);margin:0 0 14px}.history-bottom button{color:var(--jiu-red);font-size:var(--font-size-button);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);cursor:pointer;background:0 0;border:0}.modal-backdrop{justify-content:center;align-items:center;padding:20px}.logic-modal,.review-modal{background:#fff;border-radius:20px;width:min(720px,94vw);max-height:90vh;padding:24px;animation:.18s modal-in;overflow-y:auto;box-shadow:0 25px 80px #2611142e}.review-modal{width:min(520px,94vw)}.logic-intro{color:var(--text-muted);font-size:var(--font-size-helper);line-height:var(--line-height-copy);margin:22px 0 15px}.architecture-flow{gap:7px;display:grid}.architecture-node{border:1px solid var(--line);border-radius:12px;align-items:center;gap:11px;min-height:58px;padding:10px 12px;display:flex}.architecture-node>span{background:var(--jiu-red-soft);width:32px;height:32px;color:var(--jiu-red);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);border-radius:9px;place-items:center;display:grid}.architecture-node strong{font-size:var(--font-size-body);font-weight:var(--font-weight-medium);line-height:var(--line-height-label)}.architecture-node p{color:var(--text-muted);font-size:var(--font-size-helper);line-height:var(--line-height-copy);margin:4px 0 0}.logic-contract{color:#fff;background:#231f21;border-radius:12px;margin-top:14px;padding:14px}.logic-contract strong,.logic-contract code{display:block}.logic-contract strong{color:#fff;font-size:var(--font-size-helper);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);margin-bottom:9px}.logic-contract code{color:#f3bec1;font-family:var(--font-sans);font-size:var(--font-size-caption);line-height:var(--line-height-label);margin-top:5px}.modal-button{width:100%;margin-top:16px}.review-original,.evidence-box{background:#faf8f8;border-radius:12px;margin-top:20px;padding:14px}.review-original span,.evidence-box span,.detail-grid span{color:var(--text-muted);font-size:var(--font-size-helper);line-height:var(--line-height-copy)}.review-original p,.evidence-box p{font-size:var(--font-size-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);margin:7px 0 0}.evidence-box{border-left:3px solid var(--jiu-red);background:var(--jiu-red-soft)}.detail-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.detail-grid div{border:1px solid var(--line);border-radius:10px;flex-direction:column;padding:11px;display:flex}.detail-grid strong{font-size:var(--font-size-body);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);margin-top:5px}.toast{color:#fff;min-height:44px;font-size:var(--font-size-helper);font-weight:var(--font-weight-regular);line-height:var(--line-height-copy);z-index:100;background:#241f21;border-radius:12px;align-items:center;gap:8px;padding:0 16px;animation:.22s toast-in;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 14px 35px #1a0d0f33}.toast span{background:var(--jiu-red);border-radius:6px;place-items:center;width:20px;height:20px;display:grid}.ai-home-page{min-height:calc(100vh - 64px)}.ai-home-heading{align-items:center}.inventory-module-status,.saihu-shell-status,.saihu-selection-count{background:var(--status-warning-soft);color:var(--status-warning);font-size:12px;font-weight:var(--font-weight-medium);white-space:nowrap;border-radius:8px;padding:5px 9px}.saihu-settings-page{min-height:calc(100vh - 160px)}.saihu-settings-layout{grid-template-columns:minmax(360px,.85fr) minmax(520px,1.15fr);align-items:start;gap:16px;display:grid}.saihu-settings-card{border:1px solid var(--line);box-shadow:var(--shadow-card);background:#fffffff7;border-radius:18px;overflow:hidden}.saihu-settings-card .card-header h2{font-size:17px;font-weight:var(--font-weight-semibold);margin:0}.saihu-connection-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:20px;display:grid}.saihu-connection-form label{flex-direction:column;min-width:0;display:flex}.saihu-connection-form label>span{color:var(--text-secondary);font-size:13px;font-weight:var(--font-weight-medium);margin-bottom:7px}.saihu-connection-form input,.saihu-connection-form textarea{border:1px solid var(--line);width:100%;color:var(--text-primary);font-family:var(--font-sans);background:#fff;border-radius:11px;outline:0;padding:0 13px;font-size:14px}.saihu-connection-form input{height:44px}.saihu-connection-form textarea{resize:vertical;min-height:92px;padding-top:11px}.saihu-connection-form input:focus,.saihu-connection-form textarea:focus{box-shadow:var(--shadow-control-focus);border-color:#e930376b}.saihu-form-wide{grid-column:1/-1}.saihu-shell-note{background:var(--surface-muted);border-radius:12px;margin:0 20px;padding:12px 14px}.saihu-shell-note strong{color:var(--text-primary);font-size:12px}.saihu-shell-note p{color:var(--text-muted);margin:4px 0 0;font-size:12px;line-height:1.55}.saihu-source-location code{overflow-wrap:anywhere;color:#343438;font-size:11px}.saihu-settings-card>.connection-actions{padding:18px 20px 20px}.saihu-selection-count{background:var(--jiu-red-soft);color:var(--jiu-red)}.saihu-data-groups{gap:20px;padding:20px;display:grid}.saihu-data-groups fieldset{border:0;min-width:0;margin:0;padding:0}.saihu-data-groups legend{color:var(--text-primary);font-size:14px;font-weight:var(--font-weight-semibold);margin-bottom:10px}.saihu-data-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.saihu-data-options label{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:13px;align-items:flex-start;gap:10px;min-height:72px;padding:12px;transition:border-color .16s,background-color .16s,box-shadow .16s;display:flex}.saihu-data-options label:hover{background:snow;border-color:#e9303733}.saihu-data-options label.selected{background:#fff6f6;border-color:#e930374d;box-shadow:0 6px 18px #e9303712}.saihu-data-options input{width:17px;height:17px;accent-color:var(--jiu-red);flex:none;margin:2px 0 0}.saihu-data-options label>span{flex-direction:column;min-width:0;display:flex}.saihu-data-options strong{font-size:13px;font-weight:var(--font-weight-medium)}.saihu-data-options small{color:var(--text-muted);margin-top:4px;font-size:11px;line-height:1.45}.saihu-selection-summary{background:var(--surface-muted);border-radius:13px;margin:0 20px 20px;padding:14px}.saihu-selection-summary>span{color:var(--text-secondary);font-size:12px;font-weight:var(--font-weight-medium)}.saihu-selection-summary>div{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.saihu-selection-summary b{color:var(--jiu-red);font-size:11px;font-weight:var(--font-weight-medium);background:#fff;border-radius:7px;padding:4px 7px}.saihu-selection-summary p{color:var(--text-muted);margin:7px 0 0;font-size:12px}.inventory-module-page{min-height:calc(100vh - 64px)}.inventory-empty-card{border:1px solid var(--line);min-height:280px;box-shadow:var(--shadow-card);background:radial-gradient(circle at 92% 10%,#e9303712,#0000 30%),#fff;border-radius:20px;align-items:center;gap:22px;padding:34px;display:flex}.inventory-empty-card>div:nth-child(2){flex:1;min-width:0}.inventory-empty-mark{background:var(--jiu-red-soft);width:74px;height:74px;color:var(--jiu-red);border-radius:22px;flex:none;place-items:center;font-size:30px;display:grid}.inventory-empty-card h2{font-size:20px;font-weight:var(--font-weight-semibold);margin:5px 0 0}.inventory-empty-card p:last-child{max-width:680px;color:var(--text-secondary);margin:10px 0 0;font-size:14px;line-height:1.7}.ai-global-status{border:1px solid var(--line);min-width:310px;box-shadow:var(--shadow-card);background:#fff;border-radius:15px;align-items:center;gap:12px;padding:14px 16px;display:flex}.ai-global-status>span{background:var(--status-warning-soft);width:34px;height:34px;color:var(--status-warning);border-radius:11px;place-items:center;display:grid}.ai-global-status.ready>span{background:var(--status-success-soft);color:var(--status-success)}.ai-global-status div{flex-direction:column;min-width:0;display:flex}.ai-global-status small{color:var(--text-muted);font-size:12px}.ai-global-status strong{font-size:14px;font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;overflow:hidden}.ai-audit-hero{grid-template-columns:minmax(330px,.9fr) minmax(0,1.6fr);gap:14px;margin-bottom:16px;display:grid}.ai-token-spotlight{color:#fff;background:radial-gradient(circle at 92% 8%,#ffffff2e,#0000 30%),linear-gradient(135deg,#e93037 0%,#c91f2a 100%);border-radius:20px;flex-direction:column;justify-content:center;align-items:stretch;gap:16px;min-height:210px;padding:24px;display:flex;box-shadow:0 18px 44px #c11a2333}.ai-token-spotlight p{color:#ffffffb3;font-size:11px;font-weight:var(--font-weight-medium);letter-spacing:.12em;margin:0 0 10px}.ai-token-spotlight>div>strong{font-size:clamp(40px,3.6vw,58px);font-weight:var(--font-weight-semibold);letter-spacing:-.04em;white-space:nowrap;line-height:1;display:block}.ai-token-spotlight>div>span{color:#ffffffc7;margin-top:8px;font-size:14px;display:block}.ai-token-spotlight dl{border-top:1px solid #fff3;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 18px;width:100%;min-width:0;margin:0;padding-top:13px;display:grid}.ai-token-spotlight dl>div{justify-content:space-between;gap:12px;display:flex}.ai-token-spotlight dt{color:#ffffffa3;font-size:12px}.ai-token-spotlight dd{color:#fff;font-size:12px;font-weight:var(--font-weight-medium);white-space:nowrap;margin:0}.ai-monitor-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.ai-monitor-metrics article{border:1px solid var(--line);min-height:89px;box-shadow:var(--shadow-card);background:#fff;border-radius:16px;flex-direction:column;justify-content:center;padding:15px 17px;display:flex}.ai-monitor-metrics span,.ai-monitor-metrics small{color:var(--text-muted);font-size:12px}.ai-monitor-metrics strong{color:var(--text-primary);font-size:25px;font-weight:var(--font-weight-semibold);margin:4px 0 2px;line-height:1.1}.ai-monitor-metrics em{color:var(--text-muted);font-size:12px;font-style:normal;font-weight:var(--font-weight-regular);margin-left:4px}.ai-provider-layout{grid-template-columns:minmax(0,1fr) 330px;align-items:stretch;gap:16px;margin-bottom:16px;display:grid}.ai-config-card,.ai-routing-card,.ai-monitor-card{border:1px solid var(--line);box-shadow:var(--shadow-card);background:#fffffff7;border-radius:18px}.ai-config-card{padding-bottom:20px}.ai-config-card .card-header h2,.ai-routing-card h2,.ai-monitor-card .card-header h2{font-size:16px;font-weight:var(--font-weight-semibold);margin:0}.ai-config-card .card-header p:last-child{color:var(--text-muted);margin:6px 0 0;font-size:14px;line-height:1.55}.ai-provider-tabs{background:var(--surface-muted);border-radius:13px;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:0 20px 18px;padding:5px;display:grid}.ai-provider-tabs button{min-width:0;min-height:62px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex-direction:column;justify-content:center;align-items:flex-start;padding:9px 11px;display:flex;position:relative}.ai-provider-tabs button:hover{background:#ffffffbf}.ai-provider-tabs button.active{color:var(--text-primary);background:#fff;border-color:#e9303726;box-shadow:0 5px 16px #25121412}.ai-provider-tabs button>span{font-size:14px;font-weight:var(--font-weight-medium)}.ai-provider-tabs button>small{color:var(--text-muted);margin-top:3px;font-size:11px}.ai-provider-tabs button>b{background:var(--jiu-red-soft);color:var(--jiu-red);font-size:10px;font-weight:var(--font-weight-medium);border-radius:5px;padding:2px 5px;position:absolute;top:7px;right:7px}.ai-loading-copy{color:var(--text-muted);grid-column:1/-1;padding:16px;font-size:13px}.ai-config-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:0 20px;display:grid}.ai-config-form label{flex-direction:column;min-width:0;display:flex}.ai-config-form label>span{color:var(--text-secondary);font-size:14px;font-weight:var(--font-weight-medium);margin-bottom:7px}.ai-config-form input,.ai-config-form select{border:1px solid var(--line);width:100%;height:44px;color:var(--text-primary);font-family:var(--font-sans);background:#fff;border-radius:11px;outline:0;padding:0 13px;font-size:14px}.ai-config-form input:focus,.ai-config-form select:focus{box-shadow:var(--shadow-control-focus);border-color:#e930376b}.ai-config-form input[readonly]{background:var(--surface-muted);color:var(--text-muted)}.ai-toggle-row{margin-top:16px}.ai-routing-card{padding:20px}.ai-active-model{background:linear-gradient(145deg,#fff4f4,snow);border-radius:14px;flex-direction:column;margin-top:16px;padding:16px;display:flex}.ai-active-model>span{background:var(--jiu-red-soft);color:var(--jiu-red);font-size:11px;font-weight:var(--font-weight-medium);border-radius:6px;align-self:flex-start;padding:3px 7px}.ai-active-model strong{font-size:19px;font-weight:var(--font-weight-semibold);margin-top:13px}.ai-active-model code{color:var(--text-muted);font-family:var(--font-sans);margin-top:4px;font-size:12px}.ai-module-route-list{margin-top:13px;display:grid}.ai-module-route-list>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:38px;display:flex}.ai-module-route-list span{color:var(--text-secondary);font-size:13px}.ai-module-route-list strong{color:var(--status-success);font-size:12px;font-weight:var(--font-weight-medium)}.ai-route-note{color:var(--text-muted);margin:16px 0 0;font-size:12px;line-height:1.6}.ai-monitor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.ai-monitor-card{overflow:hidden}.ai-monitor-list{border-top:1px solid var(--line)}.ai-monitor-list>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:12px 20px;display:flex}.ai-monitor-list>div:last-child{border-bottom:0}.ai-monitor-list>div>div{flex-direction:column;display:flex}.ai-monitor-list>div>div:last-child{align-items:flex-end}.ai-monitor-list strong{font-size:14px;font-weight:var(--font-weight-medium)}.ai-monitor-list small,.ai-monitor-list span{color:var(--text-muted);margin-top:3px;font-size:12px}.ai-monitor-list b{color:var(--status-success);font-size:12px;font-weight:var(--font-weight-medium);margin-top:3px}.ai-empty-monitor{color:var(--text-muted);font-size:13px;justify-content:flex-start!important}.ai-audit-table-card{margin-bottom:20px}.ai-audit-table{min-width:880px}.ai-audit-table td strong,.ai-audit-table td code,.ai-audit-table td small{display:block}.ai-audit-table td code,.ai-audit-table td small{color:var(--text-muted);margin-top:3px;font-size:11px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes modal-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.nav-item,.nav-icon,.nav-label,.voc-page-tab,.voc-page-tab-arrow{transition-duration:.01ms}}@media (max-width:1500px){.context-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1180px){.connection-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.connection-layout,.ai-provider-layout,.ai-audit-hero,.saihu-settings-layout{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,1fr)}.workspace-grid{grid-template-columns:1fr}.voc-history-list>article{grid-template-columns:repeat(2,minmax(0,1fr))}.run-panel{grid-template-columns:1fr 1fr;gap:16px;display:grid}.run-panel .card-header,.run-panel .panel-link{grid-column:1/-1}.workflow{grid-template-columns:repeat(3,1fr)}.form-grid.four{grid-template-columns:repeat(2,1fr)}}@media (max-width:820px){.voc-skeleton-grid{grid-template-columns:1fr}.asin-search-hero.initial{min-height:min(560px,100vh - 188px);padding:56px 20px 88px}.asin-search-hero.confirmed{padding:20px}.sidebar{width:76px}.sidebar .brand-copy,.sidebar .nav-label,.sidebar .nav-group-label,.sidebar .nav-badge,.sidebar .nav-count,.sidebar .sidebar-footer div,.collapse-button{display:none}.sidebar .brand-logo{object-fit:cover;object-position:50% 5%;border-radius:14px;width:42px;height:42px}.sidebar .nav-item{justify-content:center;padding:0}.main-shell,.sidebar-collapsed+.main-shell{width:calc(100% - 76px);margin-left:76px}.page-content{padding:22px 16px 42px}.voc-page-tabs{padding:14px 16px 0}.page-heading{flex-direction:column;align-items:flex-start}.ai-global-status{width:100%;min-width:0}.topbar{padding:0 14px}.service-chip,.user-copy{display:none}.user-chip{min-width:auto}.taxonomy-grid{grid-template-columns:1fr 1fr}.run-panel{display:block}}@media (max-width:900px){.context-grid{grid-template-columns:1fr}}@media (max-width:620px){.connection-overview,.connection-form{grid-template-columns:1fr}.connection-form-wide{grid-column:auto}.connection-toggle-row,.connection-actions{flex-direction:column;align-items:stretch}.connection-actions button{width:100%}.ai-token-spotlight{flex-direction:column;align-items:flex-start}.ai-token-spotlight dl{width:100%}.ai-monitor-metrics,.ai-monitor-grid,.ai-config-form,.ai-provider-tabs{grid-template-columns:1fr}.ai-provider-tabs button{min-height:52px}.inventory-empty-card{flex-direction:column;align-items:stretch;padding:17px}.saihu-connection-form,.saihu-data-options{grid-template-columns:1fr}.saihu-form-wide{grid-column:auto}.asin-search-hero.initial .asin-search-intro h1{font-size:28px}.asin-search-intro p{font-size:14px}.asin-search-engine{border-radius:24px;grid-template-columns:1fr;gap:8px;height:auto;padding:10px;display:grid}.asin-market-control{border-bottom:1px solid var(--line);width:auto;min-height:52px;padding:0 12px 8px}.asin-input-control{min-height:58px;padding:0 12px}.asin-search-divider{display:none}.asin-search-button{grid-column:1;width:100%}.asin-search-meta{grid-template-columns:1fr;gap:0;padding-top:8px}.asin-search-meta>div{border-bottom:1px solid #eee9ea;border-right:0;padding:12px 4px}.asin-search-meta>:nth-child(3){border-bottom:0}.voc-preflight-result dl,.voc-history-list>article{grid-template-columns:1fr}.voc-preflight-result>div:first-child,.demo-result-banner{flex-direction:column;align-items:flex-start}.voc-source-tabs,.voc-discovery-plan,.voc-discovery-summary,.sorftime-cost-card,.sorftime-audit-strip{grid-template-columns:1fr}.voc-product-list article,.voc-data-decision{flex-direction:column;align-items:flex-start}.voc-data-decision>span{text-align:left;max-width:none}.voc-product-list article>b{text-align:left;min-width:0}.sorftime-plan-actions{flex-direction:column;align-items:stretch}.sorftime-cost-card .primary-button{width:100%}.progress-wrap{flex-direction:column;align-items:flex-start}.progress-copy,.voc-asin-runs div{width:100%;min-width:0}.progress-copy strong,.progress-copy p{overflow-wrap:anywhere}.voc-asin-runs strong{max-width:100%}.metric-grid,.taxonomy-grid,.form-grid.four,.form-grid.two,.context-grid,.detail-grid,.workflow{grid-template-columns:1fr}.metric-card{min-height:88px}.heading-actions{width:100%}.heading-actions button{flex:1}}.voc-resume-card{background:0 0;border:0;border-radius:14px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;min-height:46px;padding:5px 7px;transition:background .16s,box-shadow .16s;display:grid}.voc-resume-card:hover{background:#f7f7f7;box-shadow:inset 0 0 0 1px #231f2009}.voc-resume-card-mark{color:#8e898a;background:#f7f7f7;border-radius:10px;place-items:center;width:30px;height:30px;font-size:15px;display:grid}.voc-resume-card-copy{grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:7px;min-width:0;display:grid}.voc-resume-card-copy>span,.voc-resume-notice span{color:var(--jiu-red);font-size:9px;font-weight:var(--font-weight-semibold);letter-spacing:.06em;white-space:nowrap}.voc-resume-card-copy strong{color:var(--text-primary);font-size:12px;font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.voc-resume-card-copy small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;margin-top:1px;font-size:9px;overflow:hidden}.voc-resume-card-actions{align-items:center;display:flex}.voc-resume-card-actions button{min-height:32px;color:var(--jiu-red);font-size:11px;font-weight:var(--font-weight-medium);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:5px;padding:0 8px;display:inline-flex}.voc-resume-card-actions button:hover{background:#fff}.voc-resume-card-actions button:disabled{cursor:not-allowed;opacity:.5}.asin-search-support{align-items:center;gap:10px;width:min(100%,860px);margin:12px auto 0;display:flex}.asin-search-recent{color:#a09b9c;justify-content:flex-end;align-items:center;width:min(100%,860px);margin:7px auto 0;font-size:10px;display:flex}.asin-search-history-link{color:#8c8788;font-size:11px;font-weight:var(--font-weight-medium);white-space:nowrap;margin-left:auto;text-decoration:none}.asin-search-history-link:hover{color:var(--jiu-red)}.asin-search-quota{color:#8b8687;white-space:nowrap;background:#fafafa;border:1px solid #ebe9e9;border-radius:12px;align-items:center;gap:5px;width:auto;min-height:34px;margin:0;padding:0 10px;font-size:10px;display:flex}.asin-search-quota strong{color:var(--text-primary);font-size:12px;font-weight:var(--font-weight-semibold);letter-spacing:-.01em}.asin-search-quota small{color:#aaa5a6;font-size:9px}.asin-search-quota a{color:#8d8889;font-size:10px;font-weight:var(--font-weight-medium);border-left:1px solid #e7e4e4;align-items:center;gap:2px;margin-left:3px;padding-left:8px;text-decoration:none;display:inline-flex}.asin-search-quota a:hover{color:var(--jiu-red)}.asin-search-quota a span{margin-top:-1px;font-size:14px}.asin-search-quota-dot{background:var(--text-disabled);border-radius:50%;flex:none;width:6px;height:6px}.asin-search-quota-dot.ready{background:#119d6e;box-shadow:0 0 0 3px #119d6e17}.asin-search-hero.confirmed .asin-search-quota{margin:10px 0 0 auto}.voc-resume-notice{background:#eef9f5e0;border:1px solid #119d6e29;border-radius:15px;justify-content:space-between;align-items:center;gap:18px;margin:0 0 16px;padding:13px 15px;display:flex}.voc-resume-notice>div{flex-direction:column;min-width:0;display:flex}.voc-resume-notice span{color:#087652}.voc-resume-notice strong{color:var(--text-primary);font-size:13px;font-weight:var(--font-weight-medium);margin-top:3px}.voc-resume-notice small{color:var(--text-muted);margin-top:3px;font-size:11px}.voc-resume-notice .secondary-button{flex:none;min-height:36px}.voc-wizard-steps{border:1px solid var(--line);background:#fffffff0;border-radius:20px;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;width:100%;margin:0 0 24px;padding:8px;display:grid;box-shadow:0 10px 30px #2314160b}.voc-wizard-step{min-width:0;min-height:62px;color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:14px;align-items:center;gap:10px;padding:9px 11px;display:flex;position:relative}.voc-wizard-step:not(.locked):hover{color:var(--text-primary);background:#faf7f7}.voc-wizard-step.active{background:var(--jiu-red-soft);color:var(--jiu-red)}.voc-wizard-step.locked{color:var(--text-disabled);cursor:not-allowed}.voc-wizard-step-index{color:#8f878b;width:30px;height:30px;font-size:12px;font-weight:var(--font-weight-semibold);background:#f1eeee;border-radius:10px;flex:none;place-items:center;display:grid}.voc-wizard-step.active .voc-wizard-step-index{background:var(--jiu-red);color:#fff}.voc-wizard-step.completed:not(.active) .voc-wizard-step-index{color:var(--success);background:#e9f7f1}.voc-wizard-step-copy{flex-direction:column;min-width:0;display:flex}.voc-wizard-step-copy small{color:inherit;font-size:10px}.voc-wizard-step-copy strong{color:inherit;font-size:14px;font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;overflow:hidden}.voc-wizard-lock{margin-left:auto;font-size:10px}.voc-task-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;display:grid}.voc-wizard-main{min-width:0}.voc-step-card{border:1px solid var(--line);background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 14px 38px #2314160e}.voc-step-header{border-bottom:1px solid #f0eeee;justify-content:space-between;align-items:flex-start;gap:24px;padding:24px 26px 22px;display:flex}.voc-step-eyebrow{color:var(--jiu-red);font-size:11px;font-weight:var(--font-weight-semibold);letter-spacing:.08em;margin-bottom:6px;display:block}.voc-step-header h2,.voc-step-return h2{color:var(--text-primary);font-size:24px;font-weight:var(--font-weight-semibold);letter-spacing:-.015em;margin:0}.voc-step-header p,.voc-step-return p{max-width:720px;color:var(--text-muted);margin:7px 0 0;font-size:14px;line-height:1.6}.voc-step-return{padding:28px}.voc-step-return .secondary-button{margin-top:20px}.voc-business-state{color:#80777b;font-size:12px;font-weight:var(--font-weight-medium);background:#f3f0f0;border-radius:9px;flex:none;padding:6px 10px}.voc-business-state.success{color:var(--success);background:#eaf7f1}.voc-business-state.waiting,.voc-business-state.warning{color:#a9631b;background:#fff3e7}.voc-verify-overview{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:22px 26px;display:grid}.voc-verify-overview>div{background:var(--surface-muted);border-radius:14px;min-width:0;padding:14px}.voc-verify-overview small,.voc-quote-card small{color:var(--text-muted);font-size:12px;display:block}.voc-verify-overview strong,.voc-quote-card strong{font-size:20px;font-weight:var(--font-weight-semibold);margin-top:5px;display:block}.voc-verify-list{gap:10px;padding:0 26px;display:grid}.voc-verify-list>article{border:1px solid var(--line);border-radius:15px;grid-template-columns:minmax(0,1fr) minmax(230px,.55fr) auto;align-items:center;gap:18px;padding:16px;display:grid}.voc-verify-list article.failed{background:#fffafb;border-color:#e930373d}.voc-verify-list article>div:first-child{flex-direction:column;min-width:0;display:flex}.voc-verify-list article>div:first-child span{color:var(--jiu-red);font-size:12px;font-weight:var(--font-weight-medium)}.voc-verify-list article>div:first-child strong{font-size:15px;font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;overflow:hidden}.voc-verify-list article>div:first-child small{color:var(--text-muted);margin-top:4px;font-size:12px}.voc-verify-list dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.voc-verify-list dl div{min-width:0}.voc-verify-list dt{color:var(--text-muted);font-size:11px}.voc-verify-list dd{text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:13px;overflow:hidden}.voc-verify-list article>b{color:var(--success);font-size:12px}.voc-verify-list article.failed>b{color:var(--jiu-red)}.voc-project-fields{grid-template-columns:minmax(0,1.5fr) minmax(220px,.5fr);gap:12px;padding:20px 26px 0;display:grid}.voc-project-fields label,.voc-output-select,.voc-cost-authorization>label:not(.checkbox-line){flex-direction:column;gap:7px;display:flex}.voc-project-fields label>span,.voc-output-select>span,.voc-cost-authorization label>span{color:var(--text-secondary);font-size:13px;font-weight:var(--font-weight-medium)}.voc-project-fields input,.voc-project-fields select,.voc-output-select select,.voc-cost-authorization input[type=number]{border:1px solid var(--line);width:100%;height:46px;color:var(--text-primary);background:#fff;border-radius:12px;outline:0;padding:0 13px;font-size:14px}.voc-project-fields input:focus,.voc-project-fields select:focus,.voc-output-select select:focus,.voc-cost-authorization input[type=number]:focus{border-color:#e930376b;box-shadow:0 0 0 3px #e930370f}.voc-decision-summary{background:#f7faf9;border-radius:15px;justify-content:space-between;align-items:center;gap:18px;margin:18px 26px 0;padding:16px;display:flex}.voc-decision-summary div{flex-direction:column;display:flex}.voc-decision-summary small{color:var(--text-muted);font-size:11px}.voc-decision-summary strong{margin-top:4px;font-size:14px}.voc-decision-summary p{max-width:52%;color:var(--text-muted);margin:0;font-size:12px;line-height:1.55}.voc-family-plan{background:linear-gradient(135deg,#f6fbf9 0%,#fbfdfc 100%);border:1px solid #12896724;border-radius:14px;grid-template-columns:minmax(190px,.42fr) minmax(0,1fr);align-items:center;gap:16px;margin:14px 26px 0;padding:14px 16px;display:grid}.voc-family-plan div{flex-direction:column;gap:4px;display:flex}.voc-family-plan small{color:var(--success);font-size:11px;font-weight:var(--font-weight-medium)}.voc-family-plan strong{font-size:14px}.voc-family-plan p,.voc-family-plan em{color:var(--text-muted);margin:0;font-size:12px;font-style:normal;line-height:1.55}.voc-family-plan em{color:#9a6500;border-top:1px solid #1289671a;grid-column:1/-1;padding-top:10px}.voc-confirmation-panel,.voc-step-empty{background:#fffafb;border:1px solid #e9303724;border-radius:16px;margin:24px 26px 0;padding:20px}.voc-confirmation-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.voc-confirmation-metrics>div{background:#fff;border-radius:12px;flex-direction:column;padding:12px;display:flex}.voc-confirmation-metrics span{color:var(--text-muted);font-size:11px}.voc-confirmation-metrics strong{margin-top:4px;font-size:14px}.voc-confirmation-panel>p{color:var(--text-muted);margin:14px 0;font-size:13px}.voc-confirmation-panel .primary-button{margin-top:14px}.voc-step-empty{text-align:center}.voc-step-empty strong{font-size:17px}.voc-step-empty p{color:var(--text-muted);margin:7px 0 0;font-size:14px}.voc-step-empty .primary-button{margin-top:16px}.voc-step-footer{border-top:1px solid #f0eeee;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;padding:18px 26px;display:flex}.voc-local-dataset-banner{background:#f2faf7;border:1px solid #309a7033;border-radius:16px;flex-direction:column;margin:22px 26px 0;padding:18px;display:flex}.voc-local-dataset-banner span{color:var(--success);font-size:11px;font-weight:var(--font-weight-semibold)}.voc-local-dataset-banner strong{margin-top:5px;font-size:19px}.voc-local-dataset-banner p{color:var(--text-muted);margin:6px 0 0;font-size:13px}.voc-step-card>.voc-source-tabs{margin:20px 26px 0}.voc-download-workspace,.voc-upload-workspace{margin-top:2px}.voc-download-plan-action{align-items:center;gap:12px;padding:16px 26px 0;display:flex}.voc-download-plan-action span{color:var(--text-muted);font-size:12px}.voc-inline-checkbox small{min-height:46px;color:var(--text-secondary);align-items:center;gap:8px;font-size:13px;display:flex}.voc-quote-card{background:#fffafb;border:1px solid #e930372e;border-radius:16px;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 26px 0;padding:18px;display:grid}.voc-quote-card>div{background:#fff;border-radius:12px;padding:12px}.voc-quote-card>p,.voc-quote-card>label,.voc-quote-card>button{grid-column:1/-1}.voc-quote-card>p{color:var(--text-muted);margin:0;font-size:13px}.voc-quote-card>button{justify-self:end}.voc-upload-workspace{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:18px 26px 0;display:grid}.voc-upload-dropzone{cursor:pointer;text-align:center;background:snow;border:1px dashed #e930374d;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;min-height:96px;padding:16px;display:flex}.voc-upload-dropzone>span{color:var(--jiu-red);font-size:24px}.voc-upload-dropzone strong{margin-top:3px;font-size:14px}.voc-upload-dropzone small{color:var(--text-muted);margin-top:4px;font-size:12px}.voc-upload-dropzone input{display:none}.voc-download-audit{background:var(--surface-muted);color:var(--text-muted);border-radius:12px;flex-wrap:wrap;gap:8px 18px;margin:18px 26px 0;padding:12px 14px;font-size:12px;display:flex}.voc-engine-card{background:#f4faf8;border:1px solid #309a7033;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;margin:22px 26px 0;padding:17px 18px;display:flex}.voc-engine-card>div{flex-direction:column;display:flex}.voc-engine-card small{color:var(--success);font-size:11px;font-weight:var(--font-weight-semibold)}.voc-engine-card strong{margin-top:4px;font-size:16px}.voc-engine-card span{color:var(--text-muted);margin-top:4px;font-size:12px}.voc-engine-flow{background:var(--surface-muted);border-radius:16px;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 26px 0;padding:16px;display:grid}.voc-engine-flow>div,.voc-analysis-progress-list>div{align-items:flex-start;gap:9px;min-width:0;display:flex}.voc-engine-flow>div>span,.voc-analysis-progress-list>div>span{width:25px;height:25px;color:var(--text-muted);font-size:11px;font-weight:var(--font-weight-semibold);background:#e9e5e5;border-radius:8px;flex:none;place-items:center;display:grid}.voc-engine-flow p,.voc-analysis-progress-list p{flex-direction:column;margin:0;display:flex}.voc-engine-flow strong,.voc-analysis-progress-list strong{font-size:13px}.voc-engine-flow small,.voc-analysis-progress-list small{color:var(--text-muted);margin-top:3px;font-size:11px;line-height:1.45}.voc-section-title{justify-content:space-between;align-items:flex-end;padding:22px 26px 12px;display:flex}.voc-section-title>div{flex-direction:column;display:flex}.voc-section-title span{font-size:15px;font-weight:var(--font-weight-semibold)}.voc-section-title small{color:var(--text-muted);margin-top:4px;font-size:12px}.voc-section-title>strong{color:var(--jiu-red);font-size:12px}.voc-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 26px;display:grid}.voc-focus-grid>button{border:1px solid var(--line);cursor:pointer;text-align:left;background:#fff;border-radius:14px;align-items:flex-start;gap:10px;min-height:76px;padding:13px;display:flex}.voc-focus-grid>button:hover:not(:disabled){border-color:#e9303747}.voc-focus-grid>button.selected{background:var(--jiu-red-soft);border-color:#e930374d}.voc-focus-grid>button:disabled{opacity:.5;cursor:not-allowed}.voc-focus-grid>button>span{color:#fff;background:#f1eeee;border-radius:7px;flex:none;place-items:center;width:22px;height:22px;font-size:11px;display:grid}.voc-focus-grid>button.selected>span{background:var(--jiu-red)}.voc-focus-grid p{flex-direction:column;margin:0;display:flex}.voc-focus-grid strong{font-size:14px}.voc-focus-grid small{color:var(--text-muted);margin-top:4px;font-size:12px;line-height:1.45}.voc-report-note{flex-direction:column;gap:7px;padding:18px 26px 0;display:flex}.voc-report-note>span{font-size:13px;font-weight:var(--font-weight-medium)}.voc-report-note textarea{border:1px solid var(--line);resize:vertical;min-height:96px;color:var(--text-primary);font:inherit;border-radius:13px;outline:0;padding:12px 13px;font-size:14px;line-height:1.55}.voc-output-select{padding:16px 26px 0}.voc-output-summary{background:var(--surface-muted);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin:16px 26px 0;padding:13px 15px;display:flex}.voc-output-summary span{color:var(--text-muted);font-size:12px}.voc-output-summary strong{font-size:13px;font-weight:var(--font-weight-medium)}.voc-wide-action{width:calc(100% - 52px);margin:20px 26px 0}.voc-action-note{color:var(--text-muted);text-align:center;margin:9px 26px 0;font-size:12px}.voc-analysis-progress-list{gap:8px;margin:20px 26px 0;display:grid}.voc-analysis-progress-list>div{border:1px solid var(--line);border-radius:13px;align-items:center;padding:12px}.voc-analysis-progress-list>div.completed{background:#f7fbf9;border-color:#309a702b}.voc-analysis-progress-list>div.active{background:#fff8f8;border-color:#e9303733}.voc-analysis-progress-list>div.completed>span{background:var(--success);color:#fff}.voc-analysis-progress-list>div.active>span{background:var(--jiu-red);color:#fff}.voc-analysis-progress-list p{flex:1;min-width:0}.voc-analysis-progress-list>div>b{color:var(--text-muted);font-size:11px}.voc-analysis-progress-list>div.active>b{color:var(--jiu-red)}.voc-cost-authorization,.voc-taxonomy-confirmation{background:snow;border:1px solid #e9303729;border-radius:16px;margin:20px 26px 0;padding:20px}.voc-cost-authorization>div:first-child{flex-direction:column;margin-bottom:15px;display:flex}.voc-cost-authorization>div:first-child small,.voc-taxonomy-confirmation header small{color:var(--jiu-red);font-size:11px;font-weight:var(--font-weight-semibold)}.voc-cost-authorization>div:first-child strong,.voc-taxonomy-confirmation header strong{margin-top:4px;font-size:17px}.voc-cost-authorization>div:first-child p{color:var(--text-muted);margin:5px 0 0;font-size:12px}.voc-cost-authorization .checkbox-line,.voc-taxonomy-confirmation .checkbox-line{margin:14px 0}.voc-taxonomy-confirmation{scroll-margin-top:120px}.voc-taxonomy-confirmation header{justify-content:space-between;gap:18px;display:flex}.voc-taxonomy-confirmation header>div{flex-direction:column;display:flex}.voc-taxonomy-confirmation header span{color:var(--text-muted);margin-top:4px;font-size:12px}.voc-taxonomy-confirmation header>b{border-radius:8px;height:fit-content;padding:5px 8px;font-size:11px}.voc-taxonomy-confirmation header>b.passed{color:var(--success);background:#e9f7f1}.voc-taxonomy-confirmation header>b.warning{color:#a9631b;background:#fff2e6}.voc-taxonomy-list{gap:8px;margin-top:15px;display:grid}.voc-taxonomy-list details{border:1px solid var(--line);background:#fff;border-radius:12px;padding:11px 12px}.voc-taxonomy-list summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;list-style:none;display:grid}.voc-taxonomy-list summary::-webkit-details-marker{display:none}.voc-taxonomy-list summary span{color:var(--text-muted);background:#f3eeee;border-radius:6px;padding:3px 6px;font-size:10px}.voc-taxonomy-list summary strong{font-size:13px}.voc-taxonomy-list summary small{color:var(--text-muted);font-size:11px}.voc-taxonomy-list details>p{color:var(--text-secondary);margin:10px 0;font-size:12px;line-height:1.5}.voc-taxonomy-list dl{gap:7px;margin:0;display:grid}.voc-taxonomy-list dl div{grid-template-columns:42px minmax(0,1fr);gap:8px;display:grid}.voc-taxonomy-list dt{color:var(--text-muted);font-size:11px}.voc-taxonomy-list dd{color:var(--text-secondary);margin:0;font-size:11px;line-height:1.45}.voc-quality-alert{border-radius:14px;margin:18px 26px 0;padding:15px}.voc-quality-alert.failed{color:#a83a40;background:#fff5f6;border:1px solid #e930372e}.voc-quality-alert p{margin:5px 0 0;font-size:13px}.voc-quality-alert ul{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.voc-quality-alert li{background:#ffffffb8;border-radius:10px;padding:8px 10px;font-size:12px;line-height:1.5}.voc-report-result{background:#f4faf8;border:1px solid #309a7033;border-radius:17px;justify-content:space-between;align-items:center;gap:18px;margin:24px 26px 0;padding:22px;display:flex}.voc-report-result.warning{background:#fff9f1;border-color:#b6681a38}.voc-report-result>div{flex-direction:column;min-width:0;display:flex}.voc-report-result small{color:var(--text-muted);font-size:11px}.voc-report-result strong{text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:18px;overflow:hidden}.voc-report-result span{color:var(--text-muted);margin-top:5px;font-size:12px}.voc-report-result a{text-decoration:none}.voc-report-artifacts{gap:8px;margin:18px 26px 0;padding-bottom:24px;display:grid}.voc-report-artifacts>div:first-child{justify-content:space-between;align-items:baseline;display:flex}.voc-report-artifacts>div:first-child span{font-size:14px;font-weight:var(--font-weight-semibold)}.voc-report-artifacts>div:first-child small{color:var(--text-muted);font-size:11px}.voc-report-artifacts>a{border:1px solid var(--line);color:var(--text-primary);border-radius:11px;justify-content:space-between;padding:11px 13px;font-size:13px;text-decoration:none;display:flex}.voc-report-artifacts>a:hover{color:var(--jiu-red);border-color:#e930373d}.voc-progress-card{border:1px solid var(--line);background:#fff;border-radius:20px;padding:20px;position:sticky;top:84px;box-shadow:0 14px 36px #23141612}.voc-progress-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.voc-progress-heading>span{color:var(--text-muted);font-size:12px;font-weight:var(--font-weight-medium)}.voc-progress-state{color:#80777b;font-size:11px;font-weight:var(--font-weight-medium);background:#f3f0f0;border-radius:8px;padding:5px 8px}.voc-progress-state.running{background:var(--jiu-red-soft);color:var(--jiu-red)}.voc-progress-state.waiting,.voc-progress-state.warning{color:#a9631b;background:#fff2e6}.voc-progress-state.completed{color:var(--success);background:#e9f7f1}.voc-progress-state.failed{color:var(--jiu-red);background:#fff0f1}.voc-progress-card h2{font-size:16px;font-weight:var(--font-weight-semibold);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:14px 0 0;line-height:1.45;display:-webkit-box;overflow:hidden}.voc-progress-track{background:#f0eded;border-radius:999px;height:7px;margin-top:18px;overflow:hidden}.voc-progress-track>span{border-radius:inherit;background:var(--jiu-red);height:100%;transition:width .26s;display:block}.voc-progress-track.indeterminate>span{background:linear-gradient(90deg, transparent, var(--jiu-red), transparent);width:42%;animation:1.5s ease-in-out infinite voc-progress-indeterminate}@keyframes voc-progress-indeterminate{0%{transform:translate(-100%)}to{transform:translate(250%)}}.voc-progress-percent{color:var(--text-muted);justify-content:space-between;gap:12px;margin-top:7px;font-size:11px;display:flex}.voc-progress-percent strong{color:var(--text-secondary);font-weight:var(--font-weight-medium)}.voc-progress-stage{border-top:1px solid #f0eeee;flex-direction:column;margin-top:18px;padding-top:16px;display:flex}.voc-progress-stage small{color:var(--text-muted);font-size:11px}.voc-progress-stage strong{margin-top:4px;font-size:15px}.voc-progress-stage p{color:var(--text-muted);margin:6px 0 0;font-size:12px;line-height:1.55}.voc-progress-next{background:var(--surface-muted);color:var(--text-secondary);border-radius:11px;margin:16px 0 0;padding:11px 12px;font-size:12px;line-height:1.45}.voc-progress-next span{color:var(--text-muted);margin-right:6px}.voc-progress-primary{width:100%;margin-top:14px}.voc-progress-technical{margin-top:14px}.voc-progress-technical summary{color:var(--text-muted);cursor:pointer;font-size:11px}.voc-progress-technical dl{background:var(--surface-muted);border-radius:10px;margin:10px 0 0;padding:10px}.voc-progress-technical dl div{grid-template-columns:70px minmax(0,1fr);gap:8px;padding:5px 0;display:grid}.voc-progress-technical dt{color:var(--text-muted);font-size:10px}.voc-progress-technical dd{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:10px;overflow:hidden}.voc-progress-mobile{display:none}@media (prefers-reduced-motion:reduce){.voc-progress-track.indeterminate>span{animation:none}}@media (max-width:1180px){.voc-task-layout{grid-template-columns:minmax(0,1fr) 280px;gap:16px}.voc-wizard-step-copy small{display:none}.voc-wizard-step{padding:9px}}@media (max-width:980px){.page-content{padding-bottom:112px}.voc-task-layout{display:block}.voc-progress-card{display:none}.voc-progress-mobile{z-index:30;border:1px solid var(--line);background:#fff;border-radius:16px;display:block;position:fixed;bottom:14px;left:92px;right:16px;box-shadow:0 14px 42px #2314162b}.voc-progress-mobile>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;min-height:62px;padding:11px 14px;list-style:none;display:flex}.voc-progress-mobile>summary::-webkit-details-marker{display:none}.voc-progress-mobile>summary>span{flex-direction:column;min-width:0;display:flex}.voc-progress-mobile>summary small{color:var(--jiu-red);font-size:10px}.voc-progress-mobile>summary strong{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:13px;overflow:hidden}.voc-progress-mobile>summary b{color:var(--text-muted);font-size:12px}.voc-progress-mobile-body{border-top:1px solid #f0eeee;max-height:min(70vh,540px);padding:0 16px 16px;overflow-y:auto}.voc-progress-mobile-body .voc-progress-heading{margin-top:16px}}@media (max-width:720px){.voc-wizard-steps{grid-template-columns:repeat(5,56px);justify-content:space-between;overflow-x:auto}.voc-wizard-step{justify-content:center;min-height:54px}.voc-wizard-step-copy,.voc-wizard-lock{display:none}.voc-step-header{flex-direction:column;gap:12px;padding:20px}.voc-step-header h2,.voc-step-return h2{font-size:21px}.voc-verify-overview{grid-template-columns:repeat(2,minmax(0,1fr));padding:18px 20px}.voc-verify-list{padding:0 20px}.voc-verify-list>article,.voc-project-fields,.voc-focus-grid,.voc-engine-flow,.voc-quote-card{grid-template-columns:1fr}.voc-project-fields,.voc-focus-grid{padding-left:20px;padding-right:20px}.voc-decision-summary,.voc-family-plan,.voc-engine-card,.voc-report-result{flex-direction:column;align-items:flex-start}.voc-decision-summary{margin-left:20px;margin-right:20px}.voc-family-plan{grid-template-columns:1fr;margin-left:20px;margin-right:20px}.voc-decision-summary p{max-width:none}.voc-step-card>.voc-source-tabs,.voc-local-dataset-banner,.voc-quote-card,.voc-engine-card,.voc-engine-flow,.voc-analysis-progress-list,.voc-cost-authorization,.voc-taxonomy-confirmation,.voc-report-result,.voc-report-artifacts{margin-left:20px;margin-right:20px}.voc-upload-workspace{grid-template-columns:1fr;padding-left:20px;padding-right:20px}.voc-download-plan-action,.voc-step-footer{flex-direction:column;align-items:stretch}.voc-download-plan-action,.voc-download-audit,.voc-report-note,.voc-output-select,.voc-section-title{padding-left:20px;padding-right:20px}.voc-wide-action{width:calc(100% - 40px);margin-left:20px;margin-right:20px}.voc-progress-mobile{left:92px}}@media (max-width:620px){.voc-progress-mobile{bottom:10px;left:86px;right:10px}.asin-search-recent{justify-content:flex-start}.asin-search-support{flex-wrap:wrap;align-items:stretch}.voc-resume-card{order:3;grid-template-columns:30px minmax(0,1fr) auto;width:100%}.voc-resume-notice{flex-direction:column;align-items:stretch}.asin-search-history-link{align-self:center}}@media (max-width:1200px){.voc-report-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.voc-finding-grid,.voc-report-artifacts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.voc-report-hero-main{flex-direction:column}.voc-report-hero-actions{align-items:flex-start;width:100%}.voc-report-two-column{grid-template-columns:1fr}.voc-report-review-list article{grid-template-columns:150px minmax(0,1fr)}.voc-report-review-score{text-align:left;flex-direction:row;grid-column:2;align-items:flex-start}}@media (max-width:620px){.voc-report-hero,.voc-report-state{padding:18px}.voc-report-kpis,.voc-finding-grid,.voc-report-artifacts,.voc-quality-checks,.voc-quality-metrics{grid-template-columns:1fr}.voc-report-section .card-header{flex-direction:column;align-items:flex-start}.voc-finding-grid{padding:12px}.voc-report-review-list article{grid-template-columns:1fr}.voc-report-review-score{grid-column:auto}.voc-trend-list article{grid-template-columns:78px minmax(60px,1fr) 72px}.voc-history-list>article{grid-template-columns:1fr}.voc-history-open{width:100%}}.voc-report-preview-page{gap:14px;display:grid}.voc-quality-summary{box-shadow:var(--shadow-card);background:#f3fbf7;border:1px solid #cfe7dc;border-radius:16px;gap:13px;padding:17px 19px;display:grid}.voc-quality-summary.warning{background:#fff7f7;border-color:#f3c7c9}.voc-quality-summary>header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.voc-quality-summary>header span{color:#147354;font-size:9px;font-weight:var(--font-weight-semibold);letter-spacing:.1em}.voc-quality-summary.warning>header span{color:var(--jiu-red)}.voc-quality-summary h3{margin:4px 0 0;font-size:16px}.voc-quality-summary>header p,.voc-quality-summary footer p{color:var(--text-muted);margin:5px 0 0;font-size:11px;line-height:1.55}.voc-quality-summary>header>strong{color:#147354;background:#dff3e9;border-radius:999px;flex:none;padding:5px 9px;font-size:10px}.voc-quality-summary.warning>header>strong{color:#b42331;background:#ffe5e6}.voc-quality-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.voc-quality-summary-grid article{background:#fff;border:1px solid #f0d2d4;border-radius:12px;min-width:0;padding:12px}.voc-quality-summary-grid article>span{color:#b42331;font-size:9px;font-weight:var(--font-weight-semibold)}.voc-quality-summary-grid h4{margin:4px 0 0;font-size:13px}.voc-quality-summary-grid p{color:var(--text-muted);margin:8px 0 2px;font-size:11px}.voc-quality-summary-grid p strong{color:var(--text-primary);font-size:15px}.voc-quality-summary-grid small{color:#b42331;font-size:10px}.voc-quality-summary footer{border-top:1px solid #b4233124;padding-top:11px}.voc-quality-summary footer strong{font-size:11px}.voc-report-preview-header{border:1px solid var(--line);box-shadow:var(--shadow-card);background:#fff;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;padding:17px 19px;display:flex}.voc-report-preview-header h1{margin:5px 0 0;font-size:20px;line-height:1.25}.voc-report-preview-header p{color:var(--text-muted);margin:5px 0 0;font-size:11px}.voc-report-preview-back{color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:11px}.voc-report-preview-back:hover{color:var(--jiu-red)}.voc-report-preview-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.voc-report-preview-actions a{text-decoration:none}.voc-report-context-card,.voc-report-downloads{border:1px solid var(--line);box-shadow:var(--shadow-card);background:#fff;border-radius:16px;padding:17px 19px}.voc-report-context-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.voc-report-context-heading span,.voc-report-downloads>div:first-child>span{color:var(--jiu-red);font-size:9px;font-weight:var(--font-weight-semibold);letter-spacing:.1em}.voc-report-context-heading h2,.voc-report-downloads h2{margin:4px 0 0;font-size:16px}.voc-report-context-heading p,.voc-report-downloads p{color:var(--text-muted);margin:5px 0 0;font-size:11px}.voc-report-focuses{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.voc-report-focuses button{border:1px solid var(--line);min-height:34px;color:var(--text-muted);cursor:pointer;background:#fff;border-radius:999px;padding:0 11px;font-size:11px}.voc-report-focuses button.active{border-color:var(--jiu-red);color:var(--jiu-red);font-weight:var(--font-weight-semibold);background:#fff1f2}.voc-report-note{gap:6px;margin-top:13px;display:grid}.voc-report-note>span{color:var(--text-muted);font-size:11px}.voc-report-note textarea{border:1px solid var(--line);resize:vertical;min-height:72px;font:inherit;border-radius:11px;outline:none;padding:10px 12px}.voc-report-note textarea:focus{border-color:var(--jiu-red);box-shadow:0 0 0 3px #ef2f3a14}.voc-report-refresh-row{justify-content:space-between;align-items:center;gap:10px;margin-top:10px;display:flex}.voc-report-refresh-state{color:var(--text-muted);background:#f4f7fb;border-radius:9px;flex:1;margin:0;padding:9px 11px;font-size:11px}.voc-report-refresh-state.completed{color:#147354;background:#edf9f4}.voc-report-refresh-state.failed{color:#b42331;background:#fff1f2}.voc-report-preview-shell{background:#f4f7fb;border:1px solid #dce3ef;border-radius:18px;overflow:hidden;box-shadow:0 18px 50px #1d2d4e1a}.voc-report-preview-note{background:#fff;border-bottom:1px solid #dce3ef;justify-content:space-between;align-items:center;gap:14px;min-height:42px;padding:8px 13px;display:flex}.voc-report-preview-note span{color:#315fae;font-size:10px;font-weight:var(--font-weight-semibold);letter-spacing:.08em}.voc-report-preview-note p{color:var(--text-muted);margin:0;font-size:10px}.voc-report-preview-frame{background:#f4f7fb;border:0;width:100%;height:max(820px,100vh - 204px);display:block}.voc-report-downloads{gap:13px;display:grid}.voc-report-download-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.voc-report-download-grid a{border:1px solid var(--line);min-width:0;min-height:42px;color:var(--text-primary);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:9px 11px;text-decoration:none;display:flex}.voc-report-download-grid a:hover{border-color:var(--jiu-red);background:#fffafb}.voc-report-download-grid span{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.voc-report-download-grid strong{color:var(--text-muted);flex:none;font-size:10px}@media (max-width:820px){.voc-history-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.voc-report-preview-header{flex-direction:column;align-items:flex-start}.voc-report-preview-frame{height:max(760px,100vh - 240px)}.voc-report-download-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.voc-history-filters{grid-template-columns:1fr}.voc-history-filter-actions,.voc-history-filter-actions button{width:100%}.voc-report-context-heading,.voc-quality-summary>header,.voc-report-refresh-row{flex-direction:column}.voc-quality-summary-grid{grid-template-columns:1fr}.voc-report-context-heading>button,.voc-report-refresh-row>button,.voc-report-preview-actions{width:100%}.voc-report-preview-actions a{text-align:center;flex:1}.voc-report-preview-note{flex-direction:column;align-items:flex-start}.voc-report-download-grid{grid-template-columns:1fr}}
