:root{--ink:#1c2430;--ink-soft:#4a5564;--paper:#f4f1ea;--paper-2:#ebe6dc;--panel:#fffdf8;--line:#d7d0c3;--accent:#1f4e79;--accent-soft:#e7f0f8;--warn:#d97706;--danger:#a40e26;--ok:#146c2e;--shadow:0 18px 40px #1c243014;--font-ui:"IBM Plex Sans", "Noto Sans SC", "PingFang SC", sans-serif;--font-display:"Noto Serif SC", "Source Han Serif SC", serif;color:var(--ink);background:radial-gradient(1200px 600px at 10% -10%, #1f4e791f, transparent 55%), radial-gradient(900px 500px at 100% 0%, #d9770614, transparent 50%), linear-gradient(180deg, #f7f4ee 0%, var(--paper) 40%, #efe9df 100%);font-family:var(--font-ui);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:#fffdf8e0;align-items:center;gap:24px;padding:14px 28px;display:flex;position:sticky;top:0}.topbar-context{z-index:9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#eff6fcf5;border-bottom:1px solid #cdd8e3;min-height:34px;position:sticky;top:73px;box-shadow:0 4px 10px #1c37500f}.topbar-context-inner{color:#59718a;align-items:center;gap:9px;width:min(1280px,100% - 40px);min-height:34px;margin:0 auto;font-size:13px;display:flex}.topbar-context-inner>span:first-child{color:#6d8296;letter-spacing:.06em;font-size:12px;font-weight:700}.topbar-context-inner b{color:#1d4f91;font-size:14px}.topbar-context-inner i{background:#b9cada;width:1px;height:14px}.topbar-context-inner small{color:#66788a;font-size:12px}.topbar-unit-status{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:2px 9px 2px 7px;font-size:12px;font-weight:700;line-height:1.3;display:inline-flex}.topbar-unit-status .unit-status-dot{width:8px;height:8px;margin-top:0}.topbar-unit-status.is-pending{color:#4a5564;background:#f4f5f7;border-color:#c8ced6}.topbar-unit-status.is-pending .unit-status-dot{background:#6b7280}.topbar-unit-status.is-running{color:#7a5200;background:#fff8eb;border-color:#e2b203}.topbar-unit-status.is-running .unit-status-dot{background:#d4a017;animation:1.4s ease-in-out infinite pulse}.topbar-unit-status.is-waiting{color:#1f4e79;background:#eaf3fb;border-color:#5b8fc7}.topbar-unit-status.is-waiting .unit-status-dot{background:#3b82c4;animation:1.4s ease-in-out infinite pulse}.topbar-unit-status.is-done{color:#146c2e;background:#eaf7ef;border-color:#3a9567}.topbar-unit-status.is-done .unit-status-dot{background:var(--ok)}.topbar-unit-status.is-partial{border-color:var(--warn);color:#92400e;background:#fff4e5}.topbar-unit-status.is-partial .unit-status-dot{background:var(--warn);animation:1.4s ease-in-out infinite pulse}.topbar-unit-status.is-failed{color:var(--danger);background:#fff1f0;border-color:#d36b6b}.topbar-unit-status.is-failed .unit-status-dot{background:var(--danger)}.topbar-unit-status.is-cancelled,.topbar-unit-status.is-unknown{color:#6b7280;background:#f7f7f7;border-color:#b0b6bf}.topbar-unit-status.is-cancelled .unit-status-dot,.topbar-unit-status.is-unknown .unit-status-dot{background:#9ca3af}.brand{color:inherit;align-items:center;gap:10px;min-width:0;text-decoration:none;display:flex}.brand:hover{text-decoration:none}.brand-divider{background:var(--line);flex:none;width:1px;height:22px}.brand-mark{font-family:var(--font-display);letter-spacing:.04em;color:var(--accent);font-size:22px;font-weight:700;line-height:1}.brand-text{color:var(--ink-soft);white-space:nowrap;font-size:13px}.association-mark{object-fit:contain;image-rendering:auto;flex:none;width:auto;display:block}.association-mark-sm{max-width:76px;height:28px}.association-mark-md{max-width:100px;height:36px}.app-footer{border-top:1px solid #0000;justify-content:center;margin-top:auto;padding:16px 28px 22px;display:flex}.vendor-credit{border-top:1px solid var(--line);color:var(--ink-soft);opacity:.78;border-radius:8px;align-items:center;gap:10px;margin-top:22px;padding:6px 8px;font-size:12px;text-decoration:none;transition:opacity .18s,color .18s,background-color .18s;display:inline-flex}.vendor-credit:hover{opacity:1;color:var(--ink);background:#ffffff73;text-decoration:none}.vendor-credit:focus-visible{outline-offset:2px;opacity:1;outline:2px solid #1f4e7959}.app-footer .vendor-credit{border-top:none;margin-top:0}.vendor-credit-label{letter-spacing:.02em}.vendor-credit-logo{object-fit:contain;opacity:.9;width:auto;height:22px;display:block}.vendor-credit:hover .vendor-credit-logo{opacity:1}.login-panel .vendor-credit{border-top:1px solid var(--line);border-radius:0 0 8px 8px;justify-content:center;width:100%;margin-top:22px;padding-top:16px}.topnav{flex:1;gap:14px;display:flex}.topnav a{color:var(--ink-soft);border-radius:999px;padding:6px 10px;text-decoration:none}.topnav a.active,.topnav a:hover{background:var(--accent-soft);color:var(--accent)}.topbar-user{align-items:center;gap:10px;display:flex}.user-chip{border:1px solid var(--line);color:inherit;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;text-decoration:none;display:inline-flex}a.user-chip:hover{background:var(--accent-soft);border-color:#9fc0df;text-decoration:none}.user-chip em{color:var(--ink-soft);font-size:12px;font-style:normal}.account-panel{width:min(520px,100%)}.account-panel h3{margin:0;font-size:16px}.page{width:min(1280px,100% - 40px);margin:24px auto 48px}.stack-page,.workbench-page{gap:18px;display:grid}.split-page{grid-template-columns:1fr 1.3fr;gap:18px;display:grid}@media (width<=900px){.split-page{grid-template-columns:1fr}.page{width:calc(100% - 24px)}.topbar{flex-wrap:wrap}}.panel{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:20px 22px}.panel-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.panel h2,.panel h3,.expert-layer h3{font-family:var(--font-display);margin:0 0 10px;font-weight:700}.workbench-section-title{font-family:var(--font-display);letter-spacing:.02em;border-bottom:2px solid var(--accent);color:var(--ink);margin:0 0 14px;padding:10px 0 12px;font-size:22px;font-weight:800;line-height:1.25}.summary-panel-head .workbench-section-title{border-bottom:0;flex:auto;min-width:0;margin:0;padding:0}.summary-panel-head{border-bottom:2px solid var(--accent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;padding-bottom:12px;display:flex}.muted{color:var(--ink-soft)}.hint{color:var(--ink-soft);margin:0 0 12px;line-height:1.6}.breadcrumb{color:var(--ink-soft);gap:8px;font-size:13px;display:flex}.btn{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;padding:9px 14px;transition:transform .15s,background .15s}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.secondary{background:var(--accent-soft);color:var(--accent);border-color:#9fc0df}.btn.secondary.is-on,.btn.is-on{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:inset 0 0 0 2px #ffffff59}.btn.ghost{background:0 0}.btn.danger{color:var(--danger);background:#fff5f5;border-color:#e8a0a0}.btn.danger:hover{background:#ffe8e8}.entity-row{gap:6px;display:grid}.entity-actions{flex-wrap:wrap;gap:6px;display:flex}.inline-check{color:var(--ink-soft);align-items:center;gap:6px;font-size:13px;display:inline-flex}.confirm-panel{background:#fff8f8;border:1px solid #e8a0a0;border-radius:12px;gap:10px;margin-top:16px;padding:14px 16px;display:grid}.confirm-panel ul{margin:0;padding-left:1.2em}.action-row.wrap{flex-wrap:wrap}.diagnosis-page{max-width:1180px}.diagnosis-hero{border-left:5px solid var(--accent);justify-content:space-between;align-items:center;gap:20px;display:flex}.diagnosis-hero h1{margin:2px 0 6px}.eyebrow{color:var(--accent);font:700 11px/1 var(--font-mono);letter-spacing:.14em;margin:0}.diagnosis-metrics{border:1px solid var(--line);background:var(--line);border-radius:12px;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.diagnosis-metrics>div{background:#fff;gap:4px;padding:16px;display:grid}.diagnosis-metrics b{font:700 28px/1 var(--font-display)}.diagnosis-metrics span{color:var(--ink-soft);font-size:13px}.diagnosis-metrics .bad b{color:var(--danger)}.diagnosis-metrics .warn b{color:#a66600}.diagnosis-list{gap:12px;display:grid}.diagnosis-item{border:1px solid var(--line);border-radius:12px;padding:14px 16px}.diagnosis-item.failed{border-left:4px solid var(--danger)}.diagnosis-item p{margin:8px 0;line-height:1.65}.diagnosis-item-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.diagnosis-item h3{margin:4px 0 0}.diagnosis-blocked-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.diagnosis-blocked-list li{background:#fffaf1;border-radius:8px;flex-wrap:wrap;gap:7px;padding:10px 12px;display:flex}.diagnosis-blocked-list span{color:var(--ink-soft)}.diagnosis-log pre{color:#dbe7ee;white-space:pre-wrap;word-break:break-word;max-height:580px;font:12px/1.55 var(--font-mono);background:#172028;border-radius:9px;margin:0;padding:14px;overflow:auto}@media (width<=720px){.summary-update-banner-head{flex-direction:column;align-items:start}.expert-delta-fold summary{gap:4px;display:grid}.expert-chat-bubble{max-width:90%}.diagnosis-hero{flex-direction:column;align-items:flex-start}.diagnosis-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.stack-form{gap:12px;margin-top:12px;display:grid}.stack-form.compact{border-top:1px dashed var(--line);margin-top:18px;padding-top:16px}.stack-form label,.form-row label{color:var(--ink-soft);gap:6px;font-size:13px;display:grid}.stack-form input,.stack-form select,.stack-form textarea,.expert-layer select,.expert-layer textarea{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;padding:10px 12px}.expert-layer textarea{resize:vertical;width:100%;min-height:96px;margin:10px 0}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.checkbox{align-items:center;gap:8px;display:flex!important}.form-error{color:var(--danger);margin:0}.banner{color:var(--ok);background:#e8f5ec;border:1px solid #b7dfc2;border-radius:10px;margin:0;padding:10px 12px;font-size:13px}.copy-status{color:var(--accent);font-size:13px}.partial-run-banner,.partial-run-warn{color:#8a5a00;background:#fff7e6;border:1px solid #f0d48a;border-radius:10px;margin:12px 0 0;padding:10px 12px;font-size:13px;line-height:1.5}.unit-picker{gap:10px;margin-top:8px;display:grid}.unit-picker-toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.unit-picker-groups{gap:10px;max-height:360px;padding-right:4px;display:grid;overflow:auto}.unit-picker-group{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 10px}.unit-picker-group h4{color:var(--ink);margin:0 0 6px;font-size:13px}.unit-picker-item{align-items:flex-start;gap:8px;padding:3px 0;font-size:13px;display:flex}.unit-picker-item.industry{background:#f3f8f4;border-radius:6px;padding:3px 6px}.unit-tag-industry{color:#146c2e;background:#dcefe2;border-radius:999px;margin-left:6px;padding:0 6px;font-size:11px;line-height:18px;display:inline-block}.kv-list{gap:8px;margin:0 0 14px;display:grid}.kv-list>div{grid-template-columns:88px 1fr;align-items:baseline;gap:8px;display:grid}.kv-list dt{color:var(--ink-soft);margin:0;font-size:13px}.kv-list dd{word-break:break-all;margin:0;font-size:14px}.assignment-facts{background:var(--accent-soft);border:1px solid #c5d4e4;border-radius:8px;gap:4px;margin:0;padding:8px 10px}.assignment-facts>div{grid-template-columns:4.5em 1fr;gap:8px}.assignment-facts dt{font-size:12px}.assignment-facts dd{color:var(--ink);font-weight:600}.temp-password{letter-spacing:.02em;background:#f4f1ea;border-radius:6px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:15px}.invite-share-preview{border:1px dashed var(--line);white-space:pre-wrap;word-break:break-word;color:var(--ink);background:#faf8f4;border-radius:10px;margin:12px 0 0;padding:12px 14px;font-size:13px;line-height:1.55}.entity-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.entity,.entity.linkish{text-align:left;border:1px solid var(--line);width:100%;color:inherit;background:#fff;border-radius:12px;gap:4px;padding:12px 14px;text-decoration:none;display:grid}.entity.active,.entity:hover,.entity.linkish:hover{background:var(--accent-soft);border-color:#9fc0df;text-decoration:none}.entity span,.entity.linkish span{color:var(--ink-soft);font-size:13px}.login-screen{place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{border:1px solid var(--line);width:min(440px,100%);box-shadow:var(--shadow);background:#fffdf8eb;border-radius:22px;padding:36px 32px;animation:.55s both rise}.login-association{justify-items:start;gap:6px;margin-bottom:14px;display:grid}.login-panel h1{font-family:var(--font-display);letter-spacing:.08em;color:var(--accent);margin:0;font-size:52px}.login-activate-title{font-family:var(--font-display);letter-spacing:.02em;font-size:32px!important}.login-product{font-family:var(--font-display);color:var(--ink);margin:4px 0 0;font-size:18px;font-weight:700}.eyebrow{letter-spacing:.08em;color:var(--ink-soft);margin:0 0 6px;font-size:12px}.login-lead{color:var(--ink-soft);line-height:1.65}@media (width<=900px){.brand-text{display:none}}.progress-bar{background:var(--paper-2);border-radius:999px;height:8px;overflow:hidden}.progress-bar i{background:var(--accent);height:100%;transition:width .2s;display:block}.steps{color:var(--ink-soft);margin:0;padding-left:18px;line-height:1.8}.table-wrap{margin:12px 0;overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 8px}.warn-row{background:#fff8eb}.action-row{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.ocr-status-panel h4{margin:14px 0 8px;font-size:14px}.ocr-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.ocr-metric{border:1px solid var(--line);text-align:center;background:#fff;border-radius:12px;padding:10px 6px}.ocr-metric b{font-size:18px;line-height:1.2;display:block}.ocr-metric span{color:var(--ink-soft);margin-top:4px;font-size:11px;display:block}.ocr-quality,.ocr-timeline{margin-top:8px}.ocr-timeline ul{margin:0;padding-left:18px;line-height:1.7}.ocr-quality ul{margin:6px 0 0;padding-left:18px}@media (width<=720px){.ocr-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.expert-workbench{color:#1c2333;background:linear-gradient(135deg,#f3f8ff,#fffdf8);border-color:#9eb5d2;font-size:16px;line-height:1.55}.expert-workbench .muted{color:#4a5564}.expert-workbench .workbench-section-title{font-size:20px;font-weight:700}.expert-workbench .workbench-unit-metrics .metric b{font-size:24px}.expert-workbench .workbench-unit-metrics .metric span{font-size:14px}.expert-layer{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.expert-layer:first-of-type{margin-top:8px}.unit-review-section{background:linear-gradient(#f5f9fd 0,#fff 220px);border:1px solid #c7d5e5;border-radius:16px;gap:16px;padding:14px;display:grid;box-shadow:0 8px 22px #2a48690f}.unit-nav-block{border-bottom:1px solid #d8e2ec;gap:10px;padding-bottom:14px;display:grid}.expert-layer-head{align-items:center;gap:10px;margin-bottom:10px;display:flex}.expert-layer-head h3{color:var(--ink);margin:0;font-size:18px;font-weight:650}.expert-layer-num{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);border:1px solid #9fc0df;border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:grid}.expert-unit-board{flex-direction:column;gap:10px;min-width:0;display:flex}.expert-unit-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.expert-unit-nav{flex-wrap:wrap;gap:6px;display:flex}.expert-unit-nav-btn{border:1px solid var(--line);color:#385673;cursor:pointer;background:#f7f8fa;border-radius:999px;padding:4px 10px;font-size:12px}.expert-unit-filters{flex-wrap:wrap;align-items:center;gap:12px 16px;display:inline-flex}.expert-unit-filter{color:#385673;align-items:center;gap:8px;font-size:13px;display:inline-flex}.expert-unit-filter label{cursor:pointer;align-items:center;gap:4px;display:inline-flex}.expert-unit-empty{margin:4px 0 0}.expert-unit-groups{flex-direction:column;gap:12px;display:flex}.expert-unit-group-title{color:#385673;justify-content:space-between;align-items:baseline;gap:8px;margin:0 0 6px;font-size:13px;font-weight:650;display:flex}.expert-unit-group-title button{font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.expert-unit-group-meta{opacity:.78;font-weight:500}.expert-unit-list{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:8px;display:grid}.expert-unit-tile{min-width:0;position:relative}.expert-unit-choice{text-align:left;border:1px solid var(--line);color:var(--ink);box-sizing:border-box;cursor:pointer;background:#fff;border-left-width:4px;border-radius:10px;align-items:flex-start;gap:8px;width:100%;min-height:52px;padding:10px 12px;font-size:14px;display:flex}.unit-retry-btn{color:#b42318;cursor:pointer;background:#fff;border:1px solid;border-radius:5px;padding:2px 6px;font-size:12px;font-weight:700;line-height:1.25;position:absolute;bottom:6px;right:7px}.unit-retry-btn:hover,.unit-retry-btn:focus-visible{color:#fff;background:#b42318;outline:none}.unit-retry-btn.is-partial{color:#92400e}.unit-retry-btn.is-partial:hover,.unit-retry-btn.is-partial:focus-visible{color:#fff;background:#92400e}.expert-unit-choice:has(+.unit-retry-btn) .unit-choice-body{padding-bottom:19px}.expert-unit-choice.active{z-index:1;outline:none;transform:translateY(-1px);box-shadow:0 0 0 3px #1d4f9147,0 7px 15px #1d4f9124}.expert-unit-choice.active .unit-choice-name{font-weight:750}.expert-unit-choice.active .unit-status-text{opacity:1}.unit-detail-context{color:#385673;background:#edf5fd;border-left:4px solid #1d4f91;border-radius:8px;flex-wrap:wrap;align-items:baseline;gap:8px;margin-top:-2px;padding:10px 14px;display:flex}.unit-detail-context span{font-size:13px}.unit-detail-context b{color:#183f6c;font-size:17px}.unit-detail-context .industry-track-mark,.unit-choice-name .industry-track-mark{color:#8fa3b5;font-size:11px;font-weight:400}.unit-detail-context span:last-child{color:#64748b}.unit-choice-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.unit-choice-name{color:inherit;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;font-weight:650;line-height:1.35;display:-webkit-box;overflow:hidden}.unit-status-dot{background:#8b949e;border-radius:50%;flex:none;width:10px;height:10px;margin-top:4px}.unit-status-text{color:inherit;opacity:.9;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;line-height:1.3;overflow:hidden}@media (width<=720px){.unit-review-section{padding:10px}.expert-unit-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=420px){.expert-unit-list{grid-template-columns:1fr}}.expert-unit-choice.is-running .unit-status-dot,.expert-unit-choice.is-partial .unit-status-dot,.expert-unit-choice.is-waiting .unit-status-dot{animation:1.4s ease-in-out infinite pulse}.expert-unit-choice.is-pending{color:#4a5564;background:#f4f5f7;border-color:#c8ced6 #c8ced6 #c8ced6 #6b7280}.expert-unit-choice.is-pending .unit-status-dot{background:#6b7280}.expert-unit-choice.is-running{color:#7a5200;background:#fff8eb;border-color:#e2b203 #e2b203 #e2b203 #d4a017}.expert-unit-choice.is-running .unit-status-dot{background:#d4a017}.expert-unit-choice.is-waiting{color:#1f4e79;background:#eaf3fb;border-color:#5b8fc7 #5b8fc7 #5b8fc7 #3b82c4}.expert-unit-choice.is-waiting .unit-status-dot{background:#3b82c4}.expert-unit-choice.is-done{border-color:#3a9567;border-left-color:var(--ok);color:#146c2e;background:#eaf7ef}.expert-unit-choice.is-done .unit-status-dot{background:var(--ok)}.expert-unit-choice.is-partial{border-color:var(--warn);border-left-color:var(--warn);color:#92400e;background:#fff4e5}.expert-unit-choice.is-partial .unit-status-dot{background:var(--warn)}.expert-unit-choice.is-failed{border-color:#d36b6b;border-left-color:var(--danger);color:var(--danger);background:#fff1f0}.expert-unit-choice.is-failed .unit-status-dot{background:var(--danger)}.expert-unit-choice.is-cancelled{color:#6b7280;background:#f7f7f7;border-color:#b0b6bf #b0b6bf #b0b6bf #9ca3af}.expert-unit-choice.is-cancelled .unit-status-dot{background:#9ca3af}.unit-status-text.is-grade-letter{letter-spacing:.04em;opacity:1;font-size:22px;font-weight:800;line-height:1.1}.unit-status-text.is-grade-a{color:#146c2e}.unit-status-text.is-grade-b{color:#2563eb}.unit-status-text.is-grade-c{color:#b8860b}.unit-status-text.is-grade-d{color:#b42318}.unit-weight-line{color:#64748b;font-size:11px;font-weight:650;line-height:1.2}.scoring-rule-unit{border:1px solid var(--line);background:#fafbfc;border-radius:10px;margin:10px 0;padding:8px 12px}.scoring-rule-unit>summary{cursor:pointer;align-items:baseline;gap:12px;font-weight:650;display:flex}.industry-track-mark{color:#6b7c8a;letter-spacing:0;margin-left:6px;font-size:11px;font-weight:400;display:inline}.industry-track-note{color:#5c6b78;font-size:14px}.unit-score-dim.industry-track,.scoring-rule-unit.industry-track,tr.industry-track td:first-child{background:#f4f7fa}.expert-finding.industry-track,.expert-panel-block.industry-track,.summary-item-card.industry-track{border-color:#c5d0da;box-shadow:inset 4px 0 #8fa3b5}.summary-plain-list li.industry-track,.expert-panel-plain-list li.industry-track{background:#f4f7fa}.unit-score-grade-badge.grade-U{color:#5c6b78}.task-score-audit{margin-top:8px}.task-score-audit>summary{cursor:pointer;color:var(--accent);font-size:13px}.expert-unit-choice.active.is-pending{border-color:#6b7280}.expert-unit-choice.active.is-running{border-color:#b8860b}.expert-unit-choice.active.is-waiting{border-color:#2b6ea8}.expert-unit-choice.active.is-done{border-color:#146c2e}.expert-unit-choice.active.is-partial{border-color:#b45309}.expert-unit-choice.active.is-failed{border-color:#b42318}.expert-unit-choice.active.is-cancelled{border-color:#6b7280}.state-legend-fold{margin:8px 0 0}.state-legend-fold>summary{cursor:pointer;color:var(--accent);-webkit-user-select:none;user-select:none;font-size:14px;list-style:none}.state-legend-fold>summary::-webkit-details-marker{display:none}.state-legend{border:1px dashed var(--line);background:#fafbfc;border-radius:10px;flex-wrap:wrap;gap:10px 18px;margin:10px 0 4px;padding:10px 12px;display:flex}.state-legend-item{align-items:flex-start;gap:7px;min-width:200px;display:flex}.state-legend-dot{background:#8b949e;border-radius:50%;flex:none;width:12px;height:12px;margin-top:4px}.state-legend-text{flex-direction:column;font-size:13px;line-height:1.5;display:flex}.state-legend-text b{font-size:14px}.state-legend-text span{color:#4a5564}.state-legend-item.kind-waiting .state-legend-dot{background:#3b82c4}.state-legend-item.kind-running .state-legend-dot{background:#d4a017}.state-legend-item.kind-done .state-legend-dot{background:var(--ok)}.state-legend-item.kind-attention .state-legend-dot{background:var(--warn)}.state-legend-item.kind-failed .state-legend-dot{background:var(--danger)}.state-legend-item.kind-cancelled .state-legend-dot{background:#9ca3af}.expert-columns{grid-template-columns:1fr 1fr;gap:12px;margin-top:10px;display:grid}@media (width<=800px){.expert-columns{grid-template-columns:1fr}}.expert-text-block{border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px 14px}.expert-text-block h4{color:#1c2333;margin:0 0 8px;font-size:16px}.expert-scroll{max-height:none;overflow:visible}.expert-scroll.tall{max-height:none}.expert-scroll ul,.dossier-mat-list,.evidence-list{margin:0;padding-left:18px}.dossier-mat-list{padding-left:0;list-style:none}.dossier-mat{border-bottom:1px dashed var(--line);color:#1c2333;gap:8px;padding:12px 0;font-size:15px;display:grid}.dossier-mat .mat-index{color:#1f4e79;font-weight:700}.dossier-guide{background:#eef5fb;border:1px solid #c5d8eb;border-radius:10px;margin:0 0 10px;padding:12px 14px}.partial-alert{border:1px solid #f1b96a;border-left:5px solid var(--warn);color:#7c3c05;background:#fff8eb;border-radius:8px;margin:0;padding:14px 16px;font-size:15px;line-height:1.65}.partial-alert b{font-size:16px;display:block}.expert-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.expert-list{gap:8px;margin-top:12px;display:grid}.expert-item{border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px 14px;font-size:15px}.unit-judgment-bar{background:#eef5fb;border:1px solid #9fc0df;border-radius:12px;gap:8px;padding:16px 18px;display:grid}.unit-judgment-label{color:#1f4e79;font-size:14px;font-weight:600}.unit-judgment-text{color:#1c2333;font-size:20px;font-weight:700;line-height:1.45}.unit-judgment-meta{color:#334155;flex-wrap:wrap;gap:8px 16px;font-size:15px;display:flex}.unit-judgment-summary{color:#334155;margin:0;font-size:16px;line-height:1.55}.unit-score-panel{background:#fbf7ee;border:1px solid #d7c7a1;border-radius:12px;gap:10px;margin:12px 0 16px;padding:14px 16px;display:grid}.unit-score-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.task-score-summary{background:#fbf7ee;border:1px solid #d7c7a1;gap:6px;margin:0 0 16px;padding:12px 14px;display:grid}.task-score-total{margin:4px 0 0;font-size:22px;font-weight:650}.task-score-purpose{color:#5b4a32;margin:2px 0 0;font-size:13px}.unit-score-summary-grade{flex-wrap:wrap;align-items:baseline;gap:8px 12px;margin:0;display:flex}.unit-score-summary-grade .unit-score-grade-letter{font-size:32px}.unit-score-summary-grade .unit-score-grade-tag{font-size:18px}.unit-score-summary-wait{color:#475569;flex-wrap:wrap;align-items:baseline;gap:8px 12px;margin:0;font-size:18px;display:flex}.unit-score-share{color:#475569;font-size:13px;font-weight:650}.unit-score-dim-title{gap:2px;min-width:0;display:grid}.unit-score-dim-share{color:#64748b;font-size:12px;font-weight:650}.unit-score-summary-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.unit-score-tech{cursor:pointer;color:#64748b;background:0 0;border:0;padding:4px 2px;font-size:13px;text-decoration:underline}.unit-score-tech:hover{color:#1f4e79}.unit-score-head,.unit-score-meta,.unit-score-actions,.unit-score-feedback,.unit-score-evidence{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.unit-score-exclude,.unit-score-hint{color:#7c4a03;margin:0;font-size:14px}.unit-score-error{color:#9f1239;margin:0}.unit-score-dim{background:#fff;border:1px solid #ead9b2;border-radius:10px;gap:10px;padding:14px 16px;display:grid}.unit-score-dim-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 16px;display:flex}.unit-score-dim-name{color:#1c2333;font-size:18px;font-weight:700;line-height:1.35}.unit-score-grade-badge{flex-shrink:0;align-items:baseline;gap:8px;display:inline-flex}.unit-score-grade-letter{font-size:28px;font-weight:800;line-height:1}.unit-score-grade-tag{font-size:16px;font-weight:700}.unit-score-grade-cap{color:#64748b;font-size:15px;font-weight:650}.unit-score-grade-badge.grade-A,.unit-score-grade.grade-A,.unit-score-summary-grade.grade-A{color:#3a9567}.unit-score-grade-badge.grade-B,.unit-score-grade.grade-B,.unit-score-summary-grade.grade-B{color:#1f4e79}.unit-score-grade-badge.grade-C,.unit-score-grade.grade-C,.unit-score-summary-grade.grade-C{color:#b45309}.unit-score-grade-badge.grade-D,.unit-score-grade.grade-D,.unit-score-summary-grade.grade-D{color:#9a3412}.unit-score-grade-anchor{color:#1c2333;margin:0;font-size:15px;line-height:1.55}.unit-score-reason-text{color:#334155;margin:0;font-size:15px;line-height:1.6}.unit-score-low-note{color:#57534e;margin:0;font-size:14px;line-height:1.55}.unit-score-block h4{color:#475569;margin:0 0 6px;font-size:14px;font-weight:700}.unit-score-trace{border-top:1px dashed #cbd5e1;margin-top:12px;padding-top:10px}.unit-score-trace .unit-score-reason-text{color:#64748b;font-size:14px}.unit-score-point{color:#475569;margin:0;font-size:14px;line-height:1.55}.unit-score-empty-ev{color:#94a3b8;margin:0;font-size:14px}.unit-score-feedback input,.unit-score-feedback select{min-height:36px}.unit-score-feedback input{flex:1;min-width:180px}.unit-score-elements{color:#334155;margin:8px 0 0;padding-left:1.2em;font-size:14px}.unit-score-anchors,.unit-score-versions{gap:4px 12px;margin:8px 0 0;display:grid}.unit-score-anchors>div,.unit-score-versions>div{border-radius:6px;grid-template-columns:2em 1fr;align-items:baseline;gap:6px;padding:4px 8px;display:grid}.unit-score-anchors dt,.unit-score-versions dt{color:#475569;margin:0;font-weight:700}.unit-score-anchors dd,.unit-score-versions dd{color:#334155;margin:0;font-size:14px}.unit-score-anchors>div.is-current{font-weight:650}.unit-score-anchors>div.is-current.anchor-A{background:#ecf8f1;box-shadow:inset 4px 0 #3a9567}.unit-score-anchors>div.is-current.anchor-B{background:#eef5fb;box-shadow:inset 4px 0 #1f4e79}.unit-score-anchors>div.is-current.anchor-C{background:#fff7ed;box-shadow:inset 4px 0 #b45309}.unit-score-anchors>div.is-current.anchor-D{background:#fff1eb;box-shadow:inset 4px 0 #9a3412}.unit-score-evidence-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.unit-score-evidence-row{align-items:center;gap:10px;display:flex}.unit-score-evidence-loc{color:#334155;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;overflow:hidden}.unit-score-evidence-row .source-btn{flex-shrink:0}@media (width<=720px){.unit-score-summary-actions{width:100%;margin-left:0}.unit-score-evidence-row{flex-wrap:wrap}.unit-score-evidence-loc{white-space:normal}.unit-score-evidence-row .source-btn{margin-left:auto}}.unit-score-dims{gap:12px;display:grid}.findings-main h3{color:#1c2333;flex-wrap:wrap;align-items:baseline;gap:8px 12px;margin:0 0 12px;font-size:22px;font-weight:700;display:flex}.findings-main-updated-note{color:#1f4e79;font-size:14px;font-weight:600}.findings-main{background:0 0;border:1px solid #0000;border-radius:12px;padding:14px 16px}.findings-stack{gap:14px;display:grid}.review-section-updated{box-shadow:inset 4px 0 #a66b16;background:#fff9ee!important;border-color:#c7b28a!important}.unit-judgment-bar.review-section-updated .unit-judgment-label,.findings-main.review-section-updated .findings-main-updated-note,.unit-secondary-fold.review-section-updated>summary{color:#8a5310}.review-section-updated.review-section-flash{animation:.55s ease-in-out 3 review-section-flash}@keyframes review-section-flash{0%,to{background:#fff9ee;box-shadow:inset 4px 0 #a66b16}50%{background:#ffe2a8;box-shadow:inset 4px 0 #a66b16,0 0 0 3px #a66b1638}}@media (prefers-reduced-motion:reduce){.review-section-updated.review-section-flash{animation:none}}.findings-expand-btn{width:100%;margin-top:12px}.findings-empty{text-align:center;border:1px dashed var(--line);color:#4a5564;background:#fff;border-radius:12px;padding:28px 18px;font-size:18px;font-weight:600}.unit-secondary-fold{border:1px solid var(--line);background:#fff;border-radius:12px;padding:4px 14px 10px}.unit-secondary-fold>summary{cursor:pointer;color:#1f4e79;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:12px 0;font-size:16px;font-weight:600;list-style:none;display:flex}.unit-secondary-fold>summary::-webkit-details-marker{display:none}.unit-secondary-fold>summary:before{content:"▸";color:#5b8fc7;width:1em;transition:transform .15s;display:inline-block}.unit-secondary-fold[open]>summary:before{content:"▾"}.unit-secondary-body{padding-bottom:8px}.unit-secondary-body h4{margin:14px 0 8px;font-size:16px}.unit-reference-panel{margin-top:16px}.unit-reference-panel h5{color:#1f4e79;margin:12px 0 8px;font-size:15px}.unit-reference-fingerprint,.unit-reference-notice{color:#5b6570;margin:6px 0 10px;font-size:13px;line-height:1.55}.unit-reference-notice{color:#9a6700;background:#fff8e8;border-radius:8px;padding:8px 10px}.unit-reference-item{border:1px solid var(--line);background:#f8fafc;border-radius:10px;margin-bottom:8px;padding:8px 12px}.unit-reference-item>summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:8px;font-size:14px;display:flex}.unit-reference-item-body{margin-top:8px}.unit-reference-content{white-space:pre-wrap;border:1px solid var(--line);background:#fff;border-radius:8px;max-height:280px;margin:8px 0;padding:10px;font-family:inherit;font-size:13px;line-height:1.55;overflow:auto}.unit-secondary-collapse{min-height:40px;margin-top:14px}.expert-chat-panel{background:#f8fafc;border:1px solid #ccd8e6;border-radius:14px;grid-template-rows:auto auto auto;gap:12px;margin-top:14px;padding:16px;display:grid}.expert-chat-panel-head h3{color:#182d4a;margin:0;font-size:19px}.expert-chat-panel-head p{color:#5b6878;margin:5px 0 0;font-size:14px;line-height:1.5}.expert-chat-stream{background:#eef2f6;border:1px solid #e2e8f0;border-radius:12px;align-content:start;gap:14px;height:auto;min-height:0;max-height:min(48vh,520px);padding:4px 2px 8px;display:grid;overflow:hidden auto}.expert-chat-stream.is-empty{background:0 0;border-style:dashed;max-height:none;padding:6px 10px}.expert-chat-stream.is-empty .expert-review-empty{padding:2px 0;font-size:13px}.expert-chat-initial-note{color:#64748b;margin:0;padding:4px 8px;font-size:13px}.expert-chat-expand-earlier{appearance:none;color:#1d4f91;font:inherit;cursor:pointer;background:#fff;border:1px dashed #9eb5d2;border-radius:999px;justify-self:center;padding:6px 12px;font-size:13px;font-weight:600}.expert-chat-expand-earlier:focus-visible{outline-offset:2px;outline:2px solid #1d4f91}.expert-chat-round{gap:10px;display:grid}.expert-chat-round-divider{color:#475569;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;font-size:13px;font-weight:700;display:grid}.expert-chat-round-divider:before,.expert-chat-round-divider:after{content:"";background:#c5d0db;height:1px}.expert-chat-pair{gap:8px;display:grid}.expert-chat-bubble{box-sizing:border-box;background:#fff;border:1px solid #d5dde8;border-radius:12px;max-width:78%;padding:10px 12px}.expert-chat-bubble.expert{background:#e8f0fa;border-color:#b7c9e0;justify-self:end}.expert-chat-bubble.ai{background:#fff;justify-self:start}.expert-chat-bubble.waiting,.expert-chat-bubble.pending{background:#f1f5f9;border-style:dashed}.expert-chat-bubble.system-failed{background:#fff5f5;border-color:#e2b6b6}.expert-chat-role{color:#49657f;margin-bottom:4px;font-size:12px;font-weight:700;display:block}.expert-chat-bubble.expert .expert-chat-role{color:#1d4f91}.expert-chat-bubble.ai .expert-chat-role{color:#334155}.expert-chat-bubble.system-failed .expert-chat-role{color:#912018}.expert-chat-bubble p{color:#1f2937;white-space:pre-wrap;margin:0;line-height:1.55}.expert-chat-bubble small{color:#64748b;margin-top:6px;font-size:12px;display:block}.expert-chat-impact{background:#fff;border:1px solid #d5dde8;border-radius:10px;gap:8px;padding:10px 12px;display:grid}.expert-chat-impact.status-updated{background:#fff9ee;border-color:#c7b28a}.expert-chat-impact.status-failed{background:#fff5f5;border-color:#e2b6b6}.expert-chat-impact.status-unchanged{background:#f8fafc;border-color:#c5d0db}.expert-chat-impact>p{color:#1f2937;margin:0;font-size:14px;font-weight:600}.expert-chat-impact>small{color:#475569}.expert-chat-badges{flex-wrap:wrap;gap:6px;display:flex}.expert-chat-badges span{color:#1f2937;background:#fff;border:1px solid #d7e2ee;border-radius:999px;align-items:center;min-height:26px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-flex}.expert-chat-retry-btn{justify-self:start;min-height:36px}.expert-review-empty{color:#64748b;margin:0;padding:4px 0}.expert-delta-fold{border-top:1px solid #dbe4ee;padding-top:10px}.expert-delta-fold summary{cursor:pointer;color:#344b63;justify-content:space-between;gap:8px;font-weight:700;display:flex}.expert-delta-fold summary span{color:#64748b;font-size:13px;font-weight:500}.expert-delta-fold>p{color:#475569;margin:12px 0 0}.expert-delta-hint{font-size:13px;color:#64748b!important}.summary-update-banner{background:#fff9ee;border:1px solid #c7b28a;border-left:4px solid #a66b16;border-radius:12px;gap:10px;margin:16px 0 20px;padding:14px 16px;display:grid}.summary-update-banner-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.summary-update-kicker{color:#8a5914;letter-spacing:.08em;font-size:12px;font-weight:700}.summary-update-banner h2{color:#57380a;margin:2px 0 4px;font-size:19px}.summary-update-banner p{color:#684c20;margin:0;line-height:1.5}.summary-update-source-line{color:#76592b;font-size:14px}.summary-update-source-link{appearance:none;color:#805613;font:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline;text-decoration-thickness:1px}.summary-update-source-link:hover,.summary-update-source-link:focus-visible{color:#533500}.summary-update-source-tip{color:#8a7450;margin-left:6px;font-size:13px}.summary-update-banner-body{border-top:1px solid #e5d4b4;gap:10px;padding-top:12px;display:grid}.summary-update-explanation{font-size:14px}.summary-update-sources{color:#4b5563;gap:5px;margin:0;padding-left:18px;display:grid}.summary-update-head{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.summary-update-head h3{margin:0;font-size:17px}.summary-update-actions{flex-wrap:wrap;gap:8px;display:flex}.summary-update-source-badge{color:#805613;background:#fff7e6;border:1px solid #dcc18e;border-radius:999px;padding:2px 8px;font-size:13px;font-weight:600}.expert-action-panel{background:#fff;border:1px solid #9eb5d2;border-radius:12px;gap:10px;padding:14px 16px;display:grid}.expert-chat-composer{gap:8px;padding:12px;position:sticky;bottom:0}.expert-action-hint{color:#4a5564;margin:0;font-size:13px}.expert-chat-compose-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:10px;display:grid}.expert-chat-compose-main{min-width:0;display:flex;position:relative}.expert-action-input{border:1px solid var(--line);color:#1c2333;box-sizing:border-box;resize:vertical;background:#fff;border-radius:10px;width:100%;height:88px;min-height:88px;margin:0;padding:12px 14px 28px;font-size:16px;line-height:1.55}.expert-action-input:disabled{color:#64748b;background:#f1f5f9}.expert-action-toolbar{flex-wrap:wrap;align-items:center;gap:10px 12px;display:flex}.expert-action-disabled-reason{color:#8a5310;margin:0;font-size:13px;font-weight:600}.expert-char-count{color:#94a3b8;pointer-events:none;font-size:12px;position:absolute;bottom:8px;right:10px}.expert-chat-composer .expert-submit-btn{box-sizing:border-box;border-radius:10px;justify-content:center;align-self:stretch;align-items:center;min-width:96px;height:100%;min-height:88px;padding:12px 18px;display:inline-flex}.expert-action-kind{color:#334155;align-items:center;gap:8px;min-width:0;margin:0;font-size:14px;display:inline-flex}.expert-action-kind select{border:1px solid var(--line);color:#1c2333;background:#fff;border-radius:10px;min-width:140px;padding:10px 12px;font-size:15px}.expert-submit-btn{min-height:44px;padding:10px 18px;font-size:15px;font-weight:700}@media (width<=720px){.expert-chat-stream{max-height:min(42vh,420px)}.expert-chat-bubble{max-width:90%}.expert-chat-compose-row{grid-template-columns:1fr}.expert-chat-composer .expert-submit-btn,.expert-action-toolbar .btn{width:100%}.expert-action-toolbar{align-items:stretch}.expert-action-kind,.expert-action-kind select{width:100%}}@media (prefers-reduced-motion:reduce){.expert-chat-stream{scroll-behavior:auto}}.course-selection-banner{background:#eff6ff;border:1px solid #93c5fd;border-left:5px solid #2563eb;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin:0 0 16px;padding:14px 16px;display:flex}.course-selection-banner.optional.state-running{background:#fff8eb;border-color:#f0c36d #f0c36d #f0c36d #d97706}.course-selection-banner.optional.state-completed{background:#f0fdf4;border-color:#86efac #86efac #86efac #16a34a}.course-selection-banner.optional.state-partial,.course-selection-banner.optional.state-failed{background:#fff8eb;border-color:#f0c36d #f0c36d #f0c36d #d97706}.course-selection-banner>div{flex-direction:column;gap:4px;min-width:0;display:flex}.course-selection-banner b{color:#1e3a8a;font-size:15px}.course-selection-banner.optional.state-running b,.course-selection-banner.optional.state-partial b,.course-selection-banner.optional.state-failed b{color:#9a3412}.course-selection-banner.optional.state-completed b{color:#14532d}.task-status-card.course-eval-card.state-running{border-color:#f0c36d}.task-status-card.course-eval-card.state-completed{border-color:#86efac}.task-status-jump.linkish{color:#1d4ed8;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;margin-top:4px;padding:0;display:inline}.course-selection-modal{z-index:1200;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));overscroll-behavior:contain;box-sizing:border-box;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}.course-selection-modal-backdrop{background:#1c23338c;position:fixed;inset:0}.course-selection-modal-panel{z-index:1;box-sizing:border-box;background:#fffdf8;border:1px solid #d7e4f5;border-radius:14px;flex-direction:column;width:min(720px,100%);max-height:min(90dvh,100vh - 32px);margin:auto;padding:0;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 48px #1c233338}.course-selection-modal-head{background:#fffdf8;border-bottom:1px solid #e6edf5;flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 20px 12px;display:flex}.course-selection-modal-head h3{color:#1e3a5f;margin:0 0 4px;font-size:17px;font-weight:700}.course-selection-modal-head p{margin:0;font-size:13px;line-height:1.45}.course-selection-modal-close{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:28px;line-height:1}.course-selection-modal-close:hover{color:var(--ink)}.course-selection-modal-close:disabled{opacity:.5;cursor:not-allowed}.course-selection-modal-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;padding:12px 20px;overflow:hidden auto}.course-selection-hint{color:#1f4e79;background:#eef5fb;border:1px solid #9fc0df;border-radius:8px;margin:0 0 12px;padding:10px 12px;font-size:13px;line-height:1.5}.course-selection-manual{background:#f8fbfe;border:1px dashed #9fc0df;border-radius:10px;margin:0 0 14px;padding:12px}.course-selection-manual-label{color:#1f4e79;margin-bottom:8px;font-size:13px;font-weight:650;display:block}.course-selection-manual-row{align-items:center;gap:8px;display:flex}.course-selection-manual-row input{border:1px solid var(--line);border-radius:8px;flex:auto;min-width:0;min-height:36px;padding:8px 10px;font-size:14px}.course-selection-manual-list{gap:6px;margin:10px 0 0;padding:0;list-style:none;display:grid}.course-selection-manual-list li{background:#fff;border:1px solid #c5d8eb;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:14px;font-weight:600;display:flex}.course-selection-manual-list em{color:#7c3c05;background:#fff8eb;border:1px solid #f1b96a;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:12px;font-style:normal;font-weight:600}.course-selection-list{gap:8px;margin:0 0 12px;display:grid}.course-selection-list-caption{color:#4a5564;font-size:13px;font-weight:650}.course-selection-item{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.course-selection-item.checked{background:#eaf3fc;border-color:#3b82c4}.course-selection-item input[type=checkbox]{margin-top:4px}.course-selection-item-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.course-selection-item-main{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:0;padding:0;display:block}.course-selection-item-title{align-items:center;gap:8px;font-weight:600;display:flex}.course-selection-item-title .tag{color:var(--ink-soft);background:#eceef1;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:400}.course-selection-meta-line{color:#64748b;margin:0;font-size:12px;line-height:1.45}.course-selection-meta-line b{color:#475569;margin-right:6px;font-weight:650;display:inline}.course-selection-reason{border:1px solid var(--line);border-radius:6px;margin-top:2px;padding:6px 8px;font-size:12.5px}.course-selection-focus{box-sizing:border-box;resize:vertical;width:100%;min-height:56px;max-height:120px;margin:0 0 8px}.course-selection-modal-actions{background:#fffdf8;border-top:1px solid #e6edf5;flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:10px;padding:12px 20px 16px;display:flex}.course-selection-count{color:#4a5564;margin-right:auto;font-size:13px;font-weight:600}@media (width<=720px),(height<=720px){.course-selection-banner{flex-direction:column;align-items:stretch}.course-selection-modal{padding:8px 10px}.course-selection-modal-panel{max-height:min(94dvh,100vh - 16px)}.course-selection-modal-head,.course-selection-modal-body{padding-left:14px;padding-right:14px}.course-selection-modal-actions{padding:12px 14px 14px}.course-selection-modal-head p{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.course-selection-manual-row{flex-wrap:wrap}.course-selection-manual-row .btn{width:100%}.course-selection-count{width:100%;margin:0 0 4px}.course-selection-modal-actions .btn{width:100%}}.expert-empty-state{border:1px dashed var(--line);background:#fff;border-radius:12px;gap:8px;padding:22px;font-size:16px;display:grid}.expert-empty-state b{font-size:18px}.expert-finding{border:1px solid var(--line);background:#fff;border-left-width:6px;border-radius:14px;padding:16px 18px}.expert-finding.sev-critical{border-left-color:var(--danger)}.expert-finding.sev-major{border-left-color:var(--warn)}.expert-finding.sev-info,.expert-finding.sev-minor{border-left-color:#5b8fc7}.workbench-title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.finding-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.finding-title{color:#1c2333;margin:0 0 10px;font-size:20px;font-weight:700;line-height:1.45}.finding-reason{color:#1c2333;margin-top:4px;font-size:16px;line-height:1.6}.finding-reason p{margin:0 0 6px}.finding-expand{font-size:15px}.finding-action{color:#1c2333;background:#f4f8fd;border:1px solid #c5d8eb;border-radius:8px;margin-top:10px;padding:10px 12px;font-size:16px;font-weight:650;line-height:1.5}.finding-evidence{margin-top:12px}.finding-evidence .evidence-list{gap:10px;padding:0;list-style:none;display:grid}.finding-evidence .evidence-list li{border:1px solid var(--line);background:#fafbfc;border-radius:8px;gap:8px;padding:10px 12px;font-size:15px;display:grid}.evidence-actions,.finding-doc-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.source-btn{color:#1f4e79;cursor:pointer;background:#f4f8fd;border:1px solid #9fc0df;border-radius:8px;justify-content:center;align-items:center;min-height:34px;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.source-btn:hover{background:#e7f0f8;border-color:#5b8fc7}.source-btn.ghost{border-color:var(--line);color:#4a5564;background:#fff}.source-btn.ghost:hover{background:#f5f7fa}.finding-feedback-foot{border-top:1px dashed var(--line);margin-top:14px;padding-top:12px}.peer-feedback-list{background:#f4f8fd;border:1px solid #d5e2ee;border-radius:10px;margin:0 0 12px;padding:10px 12px}.peer-feedback-title{color:#1f4e79;margin:0 0 8px;font-size:12.5px;font-weight:700}.peer-feedback-list ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.peer-feedback-item{background:#fff;border:1px solid #e2eaf2;border-radius:8px;padding:8px 10px}.peer-feedback-item.down{border-left:3px solid #ca5a45}.peer-feedback-item.up{border-left:3px solid #3a9567}.peer-feedback-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.peer-feedback-head strong{color:var(--ink);font-size:13px}.peer-feedback-role{color:var(--ink-soft);background:#fff;border:1px solid #d5e2ee;border-radius:999px;padding:1px 8px;font-size:12px;font-style:normal;font-weight:500}.peer-feedback-tags{flex-wrap:wrap;gap:4px;margin:4px 0;display:flex}.peer-feedback-comment{color:var(--ink);white-space:pre-wrap;margin:4px 0 0;font-size:13px;line-height:1.5}.source-viewer-modal{z-index:1300;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.source-viewer-backdrop{background:#0f172a73;position:absolute;inset:0}.source-viewer-panel{z-index:1;background:#fff;border:1px solid #9fc0df;border-radius:14px;flex-direction:column;width:min(920px,100%);max-height:min(88vh,920px);display:flex;position:relative;overflow:hidden;box-shadow:0 18px 48px #0f172a38}.source-viewer-head{border-bottom:1px solid var(--line);background:#f4f8fd;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 18px;display:flex}.source-viewer-head h3{color:#1c2333;margin:0 0 4px;font-size:18px}.source-viewer-head .muted{margin:0;font-size:13px;line-height:1.45}.source-viewer-status{margin:12px 18px}.source-viewer-close{color:#64748b;cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:28px;line-height:1}.source-viewer-close:hover{color:#1c2333}.source-viewer-toolbar{border-bottom:1px solid var(--line);color:#334155;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 18px;font-size:14px;display:flex}.source-viewer-body{background:#fafbfc;flex:1;min-height:0;padding:10px 12px 16px;overflow:auto}.source-viewer-omit{color:#1f4e79;cursor:pointer;text-align:left;background:#eef5fb;border:1px dashed #9fc0df;border-radius:8px;width:100%;margin:6px 0;padding:10px 12px;font-size:14px;font-weight:600;display:block}.source-viewer-omit:hover{background:#dceaf6}.source-viewer-lines{border:1px solid var(--line);background:#fff;border-radius:10px;font-family:ui-monospace,SFMono-Regular,Consolas,Microsoft YaHei,monospace;font-size:13px;line-height:1.55;overflow:hidden}.source-viewer-line{border-bottom:1px solid #f0f2f5;grid-template-columns:56px 1fr;gap:0;display:grid}.source-viewer-line:last-child{border-bottom:0}.source-viewer-line.hit{background:#fff4bf;box-shadow:inset 4px 0 #d29922}.source-viewer-ln{text-align:right;color:#94a3b8;-webkit-user-select:none;user-select:none;background:#f8fafc;border-right:1px solid #eef2f6;padding:4px 8px}.source-viewer-line.hit .source-viewer-ln{color:#7c3c05;background:#ffe8a3;font-weight:700}.source-viewer-tx{white-space:pre-wrap;word-break:break-word;color:#1c2333;padding:4px 12px}@media (width<=720px){.source-viewer-modal{align-items:flex-start;padding:8px}.source-viewer-panel{max-height:94vh}}.sev-badge{letter-spacing:.02em;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;min-width:3em;padding:6px 12px;font-size:14px;font-weight:700;display:inline-flex}.sev-badge.sev-critical{color:#fff;background:var(--danger);border-color:var(--danger)}.sev-badge.sev-major{color:#7c3c05;background:#ffedd5;border-color:#f1b96a}.sev-badge.sev-info,.sev-badge.sev-minor{color:#1f4e79;background:#eaf3fb;border-color:#9fc0df}.finding-kind{color:#4a5564;background:#f1f3f5;border:1px solid #d0d5dd;border-radius:999px;padding:4px 10px;font-size:13px;display:inline-flex}.quality-flag-chip{color:#9a3412;background:#fff7ed;border:1px solid #fdba74;border-radius:6px;align-items:center;padding:4px 10px;font-size:13px;font-weight:600;display:inline-flex}.verify-state-chip{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;align-items:center;padding:4px 10px;font-size:13px;font-weight:600;display:inline-flex}.verify-state-chip.material_located{color:#0f766e;background:#ecfdf5;border-color:#99f6e4}.verify-state-chip.needs_expert_review{color:#92400e;background:#fffbeb;border-color:#fde68a}.feedback-control{gap:8px;margin-top:0;display:grid}.feedback-control.general{border:1px solid var(--line);background:#faf8f4;border-radius:10px;margin-top:16px;padding:14px 14px 12px}.summary-general-feedback-title{color:var(--ink);margin:0;font-size:15px;font-weight:650}.summary-general-feedback-desc{margin:0;font-size:13px}.feedback-general-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.feedback-char-count{color:var(--ink-soft);margin-left:auto;font-size:12px}.feedback-analysis-card.summary-general{border-left:3px solid #1f4e79}.feedback-old-general-fold{border:1px dashed var(--line);background:#fcfbf8;border-radius:10px;padding:8px 10px}.feedback-old-general-fold>summary{cursor:pointer;color:var(--ink-soft);margin-bottom:8px;font-size:13px}.feedback-choice{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.feedback-btn{color:#4a5564;cursor:pointer;background:#fff;border:1px solid #cfd6df;border-radius:8px;justify-content:center;align-items:center;min-height:34px;padding:6px 12px;font-size:13px;font-weight:600;line-height:1;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.feedback-btn:hover{color:#1c2333;background:#f5f7fa;border-color:#9aa7b8}.feedback-btn.up.selected{color:#146c2e;background:#e8f6ee;border-color:#3a9567}.feedback-btn.down.selected{color:#b42318;background:#fff1f0;border-color:#d36b6b}.feedback-btn:disabled,.feedback-tag:disabled{cursor:wait;opacity:.65}.feedback-clear{font-size:12px}.feedback-detail{gap:8px;display:grid}.feedback-tags{flex-wrap:wrap;gap:6px;display:flex}.feedback-tag{border:1px solid var(--line);color:#4a5564;cursor:pointer;background:#fff;border-radius:999px;min-height:30px;padding:5px 10px;font-size:12px}.feedback-tag.selected{color:#1f5e43;background:#e8f6ee;border-color:#3a9567}.feedback-detail textarea{resize:vertical;min-height:56px;font-size:14px}.feedback-status{color:var(--ink-soft);font-size:12px}.finding-action-history{color:var(--muted);margin:0;padding-left:18px;font-size:12px}.sev-chip{border:1px solid var(--line);background:#f6f8fa;border-radius:999px;align-items:center;padding:2px 8px;font-size:12px;display:inline-flex}.sev-critical,.expert-finding.sev-critical{border-color:#e8b4b8}.sev-chip.sev-critical{color:var(--danger);background:#fff1f0;border-color:#e8b4b8}.sev-chip.sev-major{color:#92400e;background:#ffedd5;border-color:#f1b96a}.sev-chip.sev-info{color:#1f4e79;background:#eaf3fb;border-color:#9fc0df}.source-chip{background:var(--accent-soft);border:1px solid #9fc0df;border-radius:999px;margin-left:6px;padding:2px 8px;font-size:12px;display:inline-flex}.diagnose-grid{grid-template-columns:1fr 1fr;gap:10px 16px;font-size:14px;display:grid}.diagnose-grid .span-2{grid-column:span 2}.diagnose-grid .label{color:var(--ink-soft);margin-bottom:2px;font-size:12px;display:block}.status-pill{border:1px solid var(--line);color:#4a5564;background:#f0f2f5;border-radius:999px;padding:2px 10px;font-weight:600;display:inline-block}.status-pill.pending,.status-pill.unknown{color:#374151;background:#e5e7eb;border-color:#c8ced6}.status-pill.running{color:#7a5200;background:#fff1c2;border-color:#e2b203}.status-pill.waiting_recovery{color:#1e3a5f;background:#e8f1fa;border-color:#7aa3c7}.status-pill.awaiting_input{color:#1f4e79;background:#d7e8f8;border-color:#5b8fc7}.status-pill.succeeded,.status-pill.completed{color:#146c2e;background:#d8f0e1;border-color:#3a9567}.status-pill.partial,.status-pill.completed_with_attention{color:#92400e;background:#ffedd5;border-color:#f1b96a}.status-pill.failed{color:var(--danger);background:#ffe4e1;border-color:#d36b6b}.status-pill.cancelled{color:#6b7280;background:#eceef1;border-color:#b0b6bf}.running-box{background:#fff8e8;border:1px solid #e2c36a;border-radius:10px;margin-top:12px;padding:10px 12px}.unit-progress-table{margin-top:14px;overflow:auto}.loading-screen{min-height:100vh;color:var(--ink-soft);place-items:center;display:grid}.task-summary-table td{vertical-align:top}.task-list-score-cell{min-width:8.5rem}.task-list-score{color:#1e3a5f;letter-spacing:-.02em;background:#e8f0fb;border:1px solid #b7c9e0;border-radius:10px;padding:4px 12px;font-size:22px;font-weight:700;line-height:1.2;display:inline-block}.task-list-score-pending{font-size:13px;line-height:1.4}.task-list-ranking-brief{color:#334155;max-width:16rem;font-size:12.5px;font-weight:650;line-height:1.35;text-decoration:none}a.task-list-ranking-brief:hover{color:var(--accent);text-decoration:underline}.task-summary-table .status-pill.succeeded,.task-summary-table .status-pill.completed{color:#3d6b4a;background:#eef6f1;border-color:#b7d4c2;font-weight:500}.task-summary-table .task-action-hint{color:var(--ink-soft);margin-top:4px;font-size:12px;font-weight:400}.task-cell-stack{gap:3px;min-width:0;display:grid}.task-cell-sub{font-size:12px;line-height:1.35}.task-title-link{color:var(--ink);font-weight:650;text-decoration:none}.task-title-link:hover{color:var(--accent);text-decoration:underline}.task-batch-link{color:inherit;text-decoration:none}.task-batch-link:hover{color:var(--accent);text-decoration:underline}.task-batch-filename{text-overflow:ellipsis;white-space:nowrap;max-width:28ch;overflow:hidden}.task-filters-panel{margin-bottom:12px}.task-filters-primary,.task-filters-more{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));align-items:end;gap:10px 12px;display:grid}.task-filters-more{border-top:1px dashed var(--line);margin-top:12px;padding-top:12px}.task-filters-panel label{color:var(--ink-soft);gap:4px;font-size:12.5px;display:grid}.task-filters-panel select,.task-filters-panel input{border:1px solid var(--line);min-height:34px;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:6px 10px}.task-filter-keyword{grid-column:span 2;min-width:0}.task-filters-actions{flex-wrap:wrap;align-items:end;gap:8px;padding-bottom:1px;display:flex}@media (width<=720px){.task-filter-keyword{grid-column:span 1}}.batch-task-list{gap:8px;min-width:14rem;margin:0;padding:0;list-style:none;display:grid}.batch-task-list li{gap:2px;display:grid}.batch-task-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.task-action-hint{color:#9a3412;margin-top:4px;font-size:12.5px;font-weight:600}.status-pill.waiting_recovery+.task-action-hint{color:#1e3a5f}.task-status-hero-outcome:has(.waiting_recovery) .task-status-hero-hint{color:#1e3a5f}.status-pill-lg{padding:6px 14px;font-size:15px}.status-pill.delivery-delivered{color:#146c2e;background:#d8f0e1;border-color:#3a9567}.status-pill.delivery-delivered_with_warning{color:#92400e;background:#ffedd5;border-color:#f1b96a}.status-pill.delivery-blocked{color:var(--danger);background:#ffe4e1;border-color:#d36b6b}.task-status-hero{background:linear-gradient(#eef5fd 0%,#fffdf8 70%);border:1px solid #b7c9e0;border-radius:14px;gap:14px;margin:12px 0 14px;padding:16px;display:grid}.task-status-hero-main{grid-template-columns:minmax(160px,.9fr) minmax(0,2.2fr) minmax(140px,.9fr);align-items:start;gap:14px;display:grid}.task-status-hero-outcome{gap:8px;min-width:0;display:grid}.task-status-hero-hint{color:#1e3a5f;margin:0;font-size:15px;font-weight:700;line-height:1.35}.task-status-hero-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0;display:grid}.task-status-card{border:1px solid var(--line);background:#fff;border-radius:12px;gap:2px;min-width:0;padding:10px 8px;display:grid}.task-status-card b{overflow-wrap:anywhere;font-size:18px;line-height:1.2}.task-status-card span{color:var(--ink-soft);font-size:12px}.task-status-card small{overflow-wrap:anywhere;font-size:11px;line-height:1.35}.task-status-card.attention{background:#fff8eb;border-color:#f1b96a}.task-status-card.state-failed{background:#fff5f4;border-color:#d36b6b}.task-status-card.state-ready{background:#f5fbf7;border-color:#3a9567}.task-status-card.state-running,.task-status-card.state-reporting{background:#fffdf5;border-color:#e2b203}.task-status-jump{color:var(--accent);margin-top:4px;font-size:12px;text-decoration:underline}.task-status-hero-time{gap:8px;min-width:0;font-size:13px;display:grid}.task-status-hero-time>div{gap:2px;display:grid}.task-status-hero-time b{overflow-wrap:anywhere;font-weight:600}.task-status-hero-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (width<=1100px){.task-status-hero-main{grid-template-columns:1fr}.task-status-hero-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.task-status-hero-cards{grid-template-columns:1fr}.task-summary-table{display:block;overflow-x:auto}}.task-id-line{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 10px;font-size:13px;display:flex}.mono-id,.path-line{overflow-wrap:anywhere;background:#f6f3ec;border-radius:6px;max-width:100%;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}button.linkish,.linkish{color:var(--accent);background:0 0;border:0;padding:0;font-size:12px;text-decoration:underline}.metric-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.metric{border:1px solid var(--line);text-align:center;background:#fff;border-radius:12px;padding:10px}.metric b{font-size:22px;font-family:var(--font-display);display:block}.metric span{color:var(--ink-soft);font-size:12px}.progress-bar{background:#ebe6dc;border-radius:999px;height:8px;margin-top:10px;overflow:hidden}.progress-bar>div{background:var(--accent);height:100%;transition:width .25s}.diag-details{gap:14px;margin-top:14px;display:grid}.diag-layout{grid-template-columns:minmax(220px,.9fr) 1.4fr;gap:14px;display:grid}@media (width<=900px){.diag-layout,.metric-row{grid-template-columns:1fr}}.diag-units{gap:8px;min-width:0;max-height:420px;display:grid;overflow:auto}.diag-unit{text-align:left;border:1px solid var(--line);background:#fff;border-left-width:4px;border-radius:10px;gap:4px;width:100%;min-width:0;padding:10px;display:grid;overflow:hidden}.diag-unit.kind-waiting{background:#f5f9fd;border-left-color:#3b82c4}.diag-unit.kind-running{background:#fffdf5;border-left-color:#e2b203}.diag-unit.kind-done{background:#f5fbf7;border-left-color:#3a9567}.diag-unit.kind-attention{border-left-color:var(--warn);background:#fffaf2}.diag-unit.kind-failed{background:#fff8f7;border-left-color:#d36b6b}.diag-unit.kind-cancelled{background:#f8f8f8;border-left-color:#b0b6bf}.diag-unit.status-pending,.diag-unit.status-unknown{border-left-color:#8b949e}.diag-unit.status-running{background:#fffdf5;border-left-color:#e2b203}.diag-unit.status-awaiting_input{background:#f5f9fd;border-left-color:#5b8fc7}.diag-unit.status-succeeded{background:#f5fbf7;border-left-color:#3a9567}.diag-unit.status-partial{border-left-color:var(--warn);background:#fffaf2}.diag-unit.status-failed{background:#fff8f7;border-left-color:#d36b6b}.diag-unit.status-cancelled{background:#f8f8f8;border-left-color:#b0b6bf}.diag-unit.selected{box-shadow:inset 0 0 0 2px var(--accent);border-color:var(--accent)}.diag-unit-title{justify-content:space-between;align-items:center;gap:8px;min-width:0;font-weight:600;display:flex}.diag-unit-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.diag-unit-title .status-pill{white-space:nowrap;flex:none}.diag-unit-message{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.copybar{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;display:flex}.tech-notes{border:1px solid var(--line);background:#fff;border-radius:10px;margin:8px 0;padding:10px 12px}.tech-notes ul{margin:6px 0 0;padding-left:18px}.diag-events{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px}.diag-events summary{cursor:pointer;font-weight:600}.event-list{gap:8px;max-height:280px;margin-top:8px;display:grid;overflow:auto}.event-item{border-left:3px solid var(--line);white-space:pre-wrap;background:#faf8f3;border-radius:0 8px 8px 0;padding:6px 10px;font-size:13px}.event-item.error,.event-item.warn{border-left-color:var(--warn)}.event-meta{color:var(--ink-soft);margin-bottom:2px;font-size:12px}.workbench-unit-metrics{margin:10px 0 14px}.workbench-diagnostic-layout{gap:14px;width:100%;min-width:0;max-width:100%;display:grid}.workbench-diagnostic-layout.with-diag{grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr);align-items:start}.workbench-diagnostic-main{min-width:0;max-width:100%}.workbench-diagnostic-side{min-width:0;max-width:100%;position:sticky;top:12px;overflow:hidden}.inline-run-diagnosis{box-sizing:border-box;background:#f5f9fd;border:1px solid #c5d8eb;border-left:5px solid #3b82c4;border-radius:12px;gap:10px;min-width:0;max-width:100%;padding:12px 14px;display:grid;overflow:hidden}.inline-run-diagnosis-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.inline-run-diagnosis-head b{overflow-wrap:anywhere;word-break:break-word;min-width:0}.inline-run-diagnosis-status{gap:2px;min-width:0;display:grid}.inline-run-diagnosis-status p{overflow-wrap:anywhere;word-break:break-word;margin:0}.inline-run-diagnosis .copybar{min-width:0;max-width:100%}.inline-run-diagnosis-events{border:1px solid var(--line);background:#fff;border-radius:10px;gap:6px;min-width:0;max-width:100%;padding:10px;display:grid;overflow:hidden}.inline-run-diagnosis-events .event-list{min-width:0;max-height:320px;margin-top:0;overflow:hidden auto}.inline-run-diagnosis .event-item{overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap;min-width:0;max-width:100%}.inline-run-diagnosis-tech{background:#fff;min-width:0;max-width:100%;margin:0;overflow:hidden}.inline-run-diagnosis-tech ul,.inline-run-diagnosis-tech li{overflow-wrap:anywhere;word-break:break-word;min-width:0}.summary-diagnostic-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr);align-items:start;gap:14px;width:100%;min-width:0;max-width:100%;display:grid}.summary-diagnostic-main{min-width:0;max-width:100%}.summary-diagnostic-side{min-width:0;max-width:100%;position:sticky;top:12px;overflow:hidden}@media (width<=980px){.workbench-diagnostic-layout.with-diag,.summary-diagnostic-layout{grid-template-columns:1fr}.workbench-diagnostic-side,.summary-diagnostic-side{position:static}}.summary-panel{color:#1c2333;font-size:16px;line-height:1.55}.summary-panel .summary-finding-group{margin-top:12px}.summary-panel .summary-finding-group.connotation{border-left:3px solid #c4a35a;padding-left:10px}.summary-panel ol,.summary-panel ul{margin:6px 0 0;padding-left:20px}.summary-meta-fold{border:1px solid var(--line);background:#fff;border-radius:10px;margin:0 0 12px;padding:2px 12px 8px}.summary-meta-fold>summary{cursor:pointer;color:#1f4e79;-webkit-user-select:none;user-select:none;padding:10px 0;font-size:14px;font-weight:600;list-style:none}.summary-meta-fold>summary::-webkit-details-marker{display:none}.summary-meta{gap:4px;margin:0;display:grid}.summary-meta .muted{color:#4a5564;margin:0;font-size:13px}.summary-decision-card{background:#eef5fb;border:1px solid #9fc0df;border-radius:12px;gap:8px;margin:0 0 14px;padding:16px 18px;display:grid}.summary-decision-label{color:#1f4e79;font-size:14px;font-weight:600}.summary-decision-text{color:#1c2333;font-size:22px;font-weight:700;line-height:1.45}.summary-decision-reason{color:#334155;margin:0;font-size:16px;line-height:1.55}.summary-decision-feedback{margin-top:4px}.summary-tab-shell{background:#fff;border:1px solid #9fc0df;border-radius:14px;margin:0 0 14px;overflow:hidden}.summary-tab-shell.connotation{border-color:#d4b56a}.summary-tab-bar{background:#e7f0f8;border-bottom:1px solid #9fc0df;flex-wrap:nowrap;gap:0;display:flex;overflow-x:auto}.summary-tab-shell.connotation .summary-tab-bar{border-bottom-color:#d4b56a}.summary-tab-btn{text-align:left;color:#1f4e79;cursor:pointer;background:0 0;border:0;border-right:1px solid #c5d8eb;border-radius:0;flex-direction:column;flex:1 1 0;justify-content:center;align-items:flex-start;gap:2px;min-width:112px;min-height:64px;margin-bottom:-1px;padding:12px 14px;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.summary-tab-btn:last-child{border-right:0}.summary-tab-btn:hover{background:#dceaf6}.summary-tab-btn.selected{color:#1f4e79;box-shadow:inset 0 3px 0 var(--accent);z-index:1;background:#fff;position:relative}.summary-tab-btn.connotation{color:#7c3c05}.summary-tab-btn.connotation:hover{background:#fff1d6}.summary-tab-btn.connotation.selected{color:#7c3c05;background:#fff;box-shadow:inset 0 3px #8a6a2a}.summary-tab-shell.industry{border-color:#8fa3b5}.summary-tab-shell.industry .summary-tab-bar{border-bottom-color:#8fa3b5}.summary-tab-btn.industry{color:#3d5266}.summary-tab-btn.industry:hover{background:#eef2f6}.summary-tab-btn.industry.selected{color:#3d5266;background:#fff;box-shadow:inset 0 3px #8fa3b5}.industry-obs-id{color:#3d5266;letter-spacing:0;background:#f4f7fa;border:1px solid #c5d0da;border-radius:4px;margin-right:6px;padding:0 6px;font-size:11px;font-weight:650;display:inline-block}.summary-industry-obs{gap:8px;display:grid}.summary-industry-obs-title,.expert-panel-industry-obs-title{color:#3d5266;margin:4px 0 0;font-size:14px;font-weight:650}.expert-panel-industry-obs{margin:8px 0 16px}.summary-tab-btn b{font-size:20px;font-family:var(--font-display);color:inherit;line-height:1.2}.summary-tab-btn span{color:inherit;opacity:.95;font-size:13px;font-weight:650;line-height:1.3}.summary-tab-body{background:#fff;padding:16px 18px 18px}.summary-tab-body .summary-finding-group{margin-top:0}.summary-tab-body .summary-finding-group h3,.summary-tab-body .summary-finding-group h4,.summary-priority-list h3{color:#1c2333;margin:0 0 12px;font-size:18px;font-weight:700}.summary-item-stack{gap:12px;display:grid}.summary-display-group{gap:8px;margin-top:8px;display:grid}.summary-display-group-title{color:#1f4e79;margin:4px 0 0;font-size:15px;font-weight:700}.summary-item-card{border:1px solid var(--line);background:#fff;border-left-width:5px;border-radius:12px;gap:8px;padding:14px 16px;display:grid}.summary-item-card.sev-critical{border-left-color:var(--danger)}.summary-item-card.sev-major{border-left-color:var(--warn)}.summary-item-card.sev-info,.summary-item-card.sev-minor{border-left-color:#5b8fc7}.summary-item-head{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.summary-item-title{color:#1c2333;flex:1;min-width:180px;margin:0;font-size:18px;font-weight:700;line-height:1.45}.summary-item-reason,.summary-item-advice,.summary-item-units{color:#1c2333;margin:0;font-size:15px;line-height:1.55}.summary-item-actions{flex-wrap:wrap;align-items:flex-start;gap:10px;margin-top:2px;display:flex}.summary-item-actions .feedback-control,.summary-check-item .feedback-control{flex:100%}.summary-show-all{min-height:44px;margin-top:10px}.summary-plain-list,.summary-checklist{gap:10px;margin:0;padding:0;list-style:none;display:grid}.summary-plain-list li{border:1px solid var(--line);background:#fafbfc;border-radius:10px;padding:10px 12px;font-size:15px;line-height:1.5}.summary-check-item{border:1px solid var(--line);background:#fff;border-radius:10px;gap:6px;padding:12px 14px;display:grid}.summary-check-main{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.summary-check-main b{color:#1c2333;font-size:16px}.summary-check-status{color:#1f4e79;background:#eaf3fb;border:1px solid #9fc0df;border-radius:999px;padding:2px 10px;font-size:13px;font-weight:600}.summary-check-reason{color:#334155;margin:0;font-size:15px;line-height:1.5}.summary-dimension-note{margin:0 0 10px}.summary-expert-notes{background:#fff8eb;border:1px solid #f1b96a;border-radius:10px;margin:0 0 14px;padding:12px 14px}.summary-expert-notes h4{color:#7c3c05;margin:0 0 8px;font-size:16px}.summary-expert-notes ul{color:#7c3c05;margin:0;padding-left:18px}.summary-deliverable-hint{color:#4a5564;margin:14px 0 0;font-size:14px}.result-cards{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:12px 0;display:grid}.result-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:12px;gap:4px;padding:12px;display:grid}.result-card.selected{border-color:var(--accent);background:var(--accent-soft)}.result-card.connotation{border-color:#c4a35a}.result-card b{font-size:18px;font-family:var(--font-display)}.result-card span{color:var(--ink-soft);font-size:12px}@media (width<=720px){.summary-tab-btn{flex:none;min-width:132px}.summary-tab-body{padding:14px}.summary-decision-text{font-size:20px}}.file-guide{gap:10px;display:grid}.file-card{border:1px solid var(--line);background:#fff;border-radius:12px;gap:4px;padding:12px;display:grid}.file-card .file-line{margin:0}.file-card .desc{color:var(--ink-soft);margin:0;font-size:13px}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.25)}}.panel,.login-panel,.expert-layer{animation:.45s both rise}.expert-layer:nth-of-type(2){animation-delay:50ms}.expert-layer:nth-of-type(3){animation-delay:.1s}.material-context-title{font-size:22px;line-height:1.3;font-family:var(--font-display);margin:0}.material-context-title-row{flex-wrap:wrap;align-items:center;gap:10px 12px;display:flex}.material-context-meta{margin:6px 0 0}.material-context-header{align-items:flex-start}.material-context-actions{flex-wrap:wrap;gap:8px;display:flex}.review-type-badge{letter-spacing:.02em;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:4px 12px;font-size:13px;font-weight:700;line-height:1.35;display:inline-flex}.review-type-badge.application{color:#1d4f91;background:#e8f1fb;border-color:#9dbfe8}.review-type-badge.self_assessment{color:#0f5c4c;background:#e4f6f1;border-color:#8bc9b8}.review-type-badge.unknown{color:#5b4636;background:#f3eee6;border-color:#d2c4b2}.review-type-badge.compact{padding:2px 8px;font-size:12px;font-weight:600}.task-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.feedback-analysis-page .feedback-stat-cards{margin-top:8px}.feedback-overview-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px 20px;margin-top:12px;display:grid}.feedback-overview-grid h3,.feedback-day-trend h3{margin:0 0 6px;font-size:14px}.feedback-filters{flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 12px;display:flex}.feedback-filters input,.feedback-filters select{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:140px;padding:7px 10px}.feedback-filters input[placeholder*=搜索]{min-width:220px}.user-logs-tabs{gap:8px;margin:0 0 12px;display:flex}.user-logs-tab{border:1px solid var(--line);cursor:pointer;font:inherit;color:var(--ink-soft);background:#fff;border-radius:8px;padding:8px 14px}.user-logs-tab.selected{color:var(--ink);background:#f3f7fb;border-color:#1f4e79;font-weight:600}.user-logs-pager{justify-content:flex-end;align-items:center;gap:12px;margin-top:12px;display:flex}.mono-cell{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.feedback-card-list{gap:16px;margin-top:10px;display:grid}.feedback-analysis-card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:0;display:grid;overflow:hidden}.feedback-analysis-card.down{border-left:4px solid #ca5a45}.feedback-analysis-card.up{border-left:4px solid #3a9567}.feedback-analysis-card.mixed{border-left:4px solid #b45309}.feedback-analysis-card.group .feedback-ai-block{border-bottom:1px solid #efe8dc}.feedback-expert-group-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.feedback-expert-group-item{background:#fff;border:1px solid #efe8dc;border-radius:10px;padding:12px}.feedback-expert-group-item.down{border-left:3px solid #ca5a45}.feedback-expert-group-item.up{border-left:3px solid #3a9567}.feedback-expert-group-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.feedback-expert-group-item .feedback-reviewer-name{justify-content:flex-start}.feedback-expert-group-item .feedback-reviewer-meta{justify-content:flex-start;margin-bottom:6px}.feedback-card-head{border-bottom:1px solid var(--line);background:#faf8f4;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 20px;padding:14px 16px 12px;display:flex}.feedback-card-head-main{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.feedback-scope,.feedback-unit{color:var(--ink-soft);font-size:13px}.feedback-sample-badge{color:var(--ink-soft);background:#efe9df;border-radius:999px;padding:2px 8px;font-size:12px}.feedback-sample-badge.explained{color:#2f6b4f;background:#e4f0ea}.feedback-reviewer{text-align:right;min-width:180px}.feedback-reviewer-name{color:var(--ink);justify-content:flex-end;align-items:baseline;gap:8px;font-size:15px;font-weight:650;display:flex}.feedback-reviewer-name em{color:var(--ink-soft);border:1px solid var(--line);background:#fff;border-radius:999px;padding:1px 8px;font-size:12px;font-style:normal;font-weight:500}.feedback-reviewer-meta{color:var(--ink-soft);flex-wrap:wrap;justify-content:flex-end;gap:4px 12px;margin-top:4px;font-size:12px;display:flex}.feedback-expert-block{background:linear-gradient(#fffdf8 0%,#fff 100%);border-bottom:1px solid #efe8dc;padding:16px 18px}.feedback-expert-block h3{color:var(--ink);letter-spacing:.02em;margin:0 0 10px;font-size:15px;font-weight:700}.feedback-tag-row{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.feedback-tag-chip{color:#2c4a66;background:#eef3f8;border:1px solid #d5e2ee;border-radius:999px;padding:3px 9px;font-size:12px}.feedback-analysis-card.down .feedback-tag-chip{color:#8a3b2c;background:#f8ece8;border-color:#ecc4b8}.feedback-comment{color:var(--ink);white-space:pre-wrap;word-break:break-word;margin:0;font-size:15px;line-height:1.65}.feedback-comment.empty{color:var(--ink-soft);font-size:13px}.feedback-ai-block{padding:12px 18px 14px}.feedback-ai-block h3{color:var(--ink-soft);text-transform:none;margin:0 0 6px;font-size:12px;font-weight:600}.feedback-ai-title{color:var(--ink);margin:0 0 6px;font-size:14px;font-weight:600}.feedback-ai-block p{margin:0 0 4px}.feedback-evidence-fold{margin-top:8px;font-size:13px}.feedback-evidence-fold summary{cursor:pointer;color:var(--accent);-webkit-user-select:none;user-select:none;list-style:none}.feedback-evidence-fold summary::-webkit-details-marker{display:none}.feedback-evidence-fold[open] summary{margin-bottom:6px}.feedback-analysis-card .evidence-list{margin:0;padding-left:18px}.feedback-trace{border-top:1px dashed var(--line);color:var(--ink-soft);background:#fbfaf7;flex-wrap:wrap;gap:6px 14px;padding:10px 16px;font-size:12px;display:flex}@media (width<=720px){.feedback-reviewer{text-align:left;width:100%}.feedback-reviewer-name,.feedback-reviewer-meta{justify-content:flex-start}}.warn-text{color:#b45309}.selected-row td{background:var(--accent-soft)}.task-review-tabs{flex-wrap:wrap;gap:8px;margin:0 0 4px;display:flex}.task-review-tabs .btn{align-items:center;gap:8px;display:inline-flex}.task-tab-count{min-width:1.5em;color:inherit;background:#0000000f;border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:12px;font-weight:600;line-height:1.4;display:inline-flex}.task-review-tabs .btn.primary .task-tab-count{background:#ffffff38}.wizard-steps{background:var(--panel-muted,#f7f8fa);border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;gap:8px;margin:14px 0 12px;padding:12px;display:flex}.wizard-step{min-width:108px;color:var(--ink-soft);flex:120px;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:inline-flex}.wizard-step-index{color:#5c564c;background:#e8e4dc;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:600;display:inline-flex}.wizard-step-current{color:var(--ink);font-weight:600}.wizard-step-current .wizard-step-index{background:var(--accent);color:#fff}.wizard-step-done{color:var(--ink)}.wizard-step-done .wizard-step-index{color:#1f6b45;background:#d8efe3}.wizard-stage-banner{background:#eef5fb;border:1px solid #c5d8eb;border-radius:10px;margin:0 0 14px;padding:12px 14px}.wizard-stage-status{margin:0 0 4px;font-size:14px}.wizard-stage-hint{color:var(--ink-soft);margin:0;font-size:13px;line-height:1.55}.wizard-waiting{border:1px dashed var(--line);text-align:center;background:#faf9f6;border-radius:10px;margin:12px 0;padding:16px}.wizard-waiting b{margin-bottom:6px;font-size:15px;display:block}.wizard-cta{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.variant-notice{color:#6b4d1a;background:#fffaf0;border:1px solid #e6d5b8;border-radius:8px;margin:10px 0 14px;padding:8px 12px;font-size:13px}.variant-notice summary{cursor:pointer;font-weight:600}.variant-notice ul{margin:8px 0 0;padding-left:18px}.ocr-failure-panel{background:#fff8f7;border:1px solid #f0b4b4;border-radius:10px;margin-top:14px;padding:12px}.ocr-failure-panel h4{margin:0 0 6px}.ocr-failure-panel .btn{margin-top:6px;margin-right:8px}.dialog-overlay{z-index:40;background:#141c2873;place-items:center;display:grid;position:fixed;inset:0}.dialog-card{background:#fff;border-radius:14px;width:min(560px,100vw - 32px);padding:20px;box-shadow:0 18px 40px #141c282e}.dialog-card h3{margin:0 0 8px}.wizard-ack{color:#7c3c05;cursor:pointer;align-items:flex-start;gap:8px;margin-top:10px;font-size:13px;display:flex}.wizard-ack input{margin-top:3px}.wizard-more{margin-top:14px}.wizard-more-body{border:1px solid var(--line);background:#faf9f6;border-radius:8px;justify-items:start;gap:8px;margin-top:10px;padding:12px;display:grid}.wizard-feedback{border-radius:8px;margin:0 0 12px;padding:10px 12px;font-size:13px;line-height:1.5}.wizard-feedback.ok{color:#166534;background:#f0fdf4;border:1px solid #86efac}.wizard-feedback.err{color:#9f2d2d;background:#fff8f7;border:1px solid #f0b4b4}.wizard-ready-banner{background:#f0fdf4;border:1px solid #86efac;border-left:5px solid #16a34a;border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:14px;padding:14px 16px;display:flex}.wizard-ready-banner b{color:#166534;font-size:15px}.wizard-ready-banner span{color:#3f6212;flex:180px;font-size:13px}@media (width<=720px){.wizard-step{flex:100%}}.era-breadcrumb{border:1px solid var(--line);background:#faf8f4;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0 0 14px;padding:8px 10px;font-size:13px;display:flex}.era-breadcrumb button{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.era-breadcrumb button.active,.era-crumb-current{color:var(--ink);cursor:default;font-weight:600}.era-breadcrumb span{color:var(--ink-soft)}.era-page .era-signal-head,.era-page .era-queue-toolbar,.era-page .era-detail-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-bottom:8px;display:flex}.era-page .era-signal-cards{margin-top:4px}.era-page details{margin-top:12px}.era-page details>summary{cursor:pointer;color:var(--accent);-webkit-user-select:none;user-select:none;margin-bottom:8px}.era-queue-list{gap:8px;margin-top:12px;display:grid}.era-queue-row{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;grid-template-columns:minmax(0,1.4fr) minmax(180px,.9fr);gap:12px;width:100%;padding:12px 14px;display:grid}.era-queue-row:hover{background:#fffcf7;border-color:#d3c4ad}.era-queue-row.active{border-color:var(--accent);background:var(--accent-soft)}.era-queue-main p{color:var(--ink);margin:6px 0 0;font-size:14px}.era-queue-meta{flex-direction:column;align-items:flex-start;gap:4px;font-size:12px;display:flex}.era-tag{color:#6b5b45;background:#f3efe6;border:1px solid #e4d9c6;border-radius:999px;padding:1px 8px;font-size:12px;display:inline-flex}.era-tag.warn{color:#9a3412;background:#fff7ed;border-color:#fdba74}.era-status{color:#374151;background:#f3f4f6;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-flex}.era-status-failed{color:#991b1b;background:#fef2f2}.era-status-partial{color:#9a3412;background:#fff7ed}.era-status-running{color:#1d4ed8;background:#eff6ff}.era-status-succeeded{color:#166534;background:#f0fdf4}.era-detail-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:16px;display:grid}.era-chat-pane,.era-insight-rail{border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px 14px}.era-round-title{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:10px;display:flex}.era-chat-stream{flex-direction:column;gap:10px;max-height:62vh;padding:4px 2px 12px;display:flex;overflow:auto}.era-bubble{border:1px solid var(--line);border-radius:12px;max-width:min(88%,640px);padding:10px 12px}.era-bubble.expert{background:#f7f3ea;border-color:#e6dcc8;align-self:flex-end}.era-bubble.ai{background:#f8fafc;border-color:#e2e8f0;align-self:flex-start}.era-bubble-meta{color:var(--ink-soft);margin-bottom:4px;font-size:12px}.era-bubble-body{white-space:pre-wrap;font-size:14px;line-height:1.55}.era-impact{color:var(--ink-soft);margin-top:8px;font-size:12px}.era-pre{border:1px solid var(--line);background:#faf9f6;border-radius:8px;max-height:280px;margin:0;padding:10px;font-size:12px;overflow:auto}.era-insight-rail{gap:10px;display:grid;position:sticky;top:12px}.era-insight-block h4{margin:0 0 4px;font-size:13px}.era-insight-block p{color:var(--ink);margin:0;font-size:13px;line-height:1.5}.era-insight-block select,.era-insight-block input,.era-insight-block textarea{width:100%;margin:0 0 8px}@media (width<=980px){.era-queue-row,.era-detail-grid{grid-template-columns:1fr}.era-insight-rail{position:static}}.ranking-page h1{margin:0 0 8px;font-size:22px}.ranking-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.ranking-head-actions{flex-wrap:wrap;gap:8px;display:flex}.ranking-stats{grid-template-columns:repeat(6,minmax(110px,1fr));margin:12px 0 16px;padding-bottom:2px;overflow-x:auto}.ranking-stats .ocr-metric{min-width:110px}.ranking-table{background:#fff;max-height:calc(100vh - 220px);overflow-x:auto}.ranking-table table{border-collapse:separate;border-spacing:0;background:#fff;width:100%}.ranking-table thead th{z-index:2;color:var(--ink,#1f1c16);box-shadow:inset 0 -1px 0 var(--line,#e5e2da);white-space:nowrap;background:#f3f0e8;font-weight:650;position:sticky}.ranking-table thead tr:first-child th{height:40px;top:0}.ranking-table thead tr:nth-child(2) th{height:36px;top:40px}.ranking-table th:first-child,.ranking-table td:first-child{z-index:1;position:sticky;left:0}.ranking-table thead th:first-child{z-index:4;background:#f3f0e8}.ranking-table tbody td,.ranking-table tbody td:first-child{background:#fff}.ranking-table td,.ranking-table th{vertical-align:top;padding:8px 10px}.ranking-table .status-pill,.ranking-table .col-status .muted{white-space:nowrap}.ranking-table .num{text-align:right;font-variant-numeric:tabular-nums}.ranking-table .g-total{box-shadow:inset 0 -1px 0 var(--line,#e5e2da)}.ranking-table .g-industry{border-left:1px solid var(--line,#e5e2da)}.ranking-table .col-rank,.ranking-table .ranking-rank{white-space:nowrap;min-width:4.75em}.ranking-obs{flex-direction:column;align-items:flex-end;gap:6px;min-width:8.5rem;display:flex}.ranking-obs .muted{text-align:right;line-height:1.35}.ranking-score{font-size:16px;font-weight:650;line-height:1.2}.ranking-json{max-height:320px;font-size:12px;overflow:auto}.ranking-page textarea{width:100%}.ranking-algo{color:var(--ink-soft,#5b574d);font-size:13px;line-height:1.55}.ranking-algo-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.ranking-algo-toggle{cursor:pointer;min-width:0;color:var(--ink,#1f1c16);font:inherit;text-align:left;background:0 0;border:0;align-items:baseline;gap:12px;padding:0;font-weight:650;display:flex}.ranking-algo-toggle small{color:var(--ink-soft,#5b574d);font-size:12px;font-weight:400}.ranking-algo-grid{grid-template-columns:.8fr 1.25fr 1fr;gap:12px;margin-top:14px;display:grid}.ranking-algo-grid section{border:1px solid var(--line,#e5e2da);background:#fff;border-radius:10px;padding:12px}.ranking-algo-grid h3{color:var(--ink,#1f1c16);margin:0 0 7px;font-size:13px}.ranking-algo p{margin:0 0 7px}.ranking-algo code{color:var(--ink,#1f1c16);font:inherit;font-weight:600}.ranking-algo-note{border-top:1px solid var(--line,#e5e2da);padding-top:10px;margin:12px 2px 0!important}.ranking-page .task-filters{border:1px solid var(--line,#e5e2da);background:#ffffffb8;border-radius:12px;flex-wrap:wrap;align-items:flex-end;gap:10px 12px;padding:12px;display:flex}.ranking-page .task-filters>label{gap:5px;min-width:0;display:grid}.ranking-page .task-filters>label:first-child{flex:132px}.ranking-page .task-filters>label:nth-child(2){flex:120px}.ranking-page .task-filters>label:nth-child(3){flex:1.1 150px}.ranking-page .task-filters>label:nth-child(4),.ranking-page .task-filters>label:nth-child(5){flex:0 96px}.ranking-page .task-filters input:not([type=checkbox]),.ranking-page .task-filters select{width:100%;min-width:0;max-width:100%}.ranking-page .task-filters label:has(input[type=checkbox]){white-space:nowrap;flex:none;align-self:flex-end;align-items:center;gap:6px;padding-bottom:6px;display:inline-flex}.ranking-page .task-filters .btn{flex:none}.ranking-run-list{gap:7px;margin:10px 0 0;padding:0;list-style:none;display:grid}.ranking-run-list li{align-items:center;gap:8px;display:flex}.ranking-history-bar{color:#7a5b16;background:#fff8eb;border:1px solid #b0893a;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;display:flex}.ranking-dist,.ranking-compare{margin:12px 0}.ranking-hist{margin-top:14px}.ranking-hist-toolbar,.ranking-compare-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.ranking-compare-toolbar label{gap:4px;font-size:12px;display:grid}.ranking-compare-toolbar label:has(input[type=checkbox]){align-self:end;align-items:center;display:flex}.ranking-hist-svg{width:100%;max-width:720px;height:auto;display:block}.ranking-hist-bar{fill:#6b8f71;cursor:pointer}.ranking-hist-bar.is-on{fill:#3f6b4a}.ranking-hist-grid{stroke:#ece8de;stroke-width:1px}.ranking-hist-tick{fill:var(--ink-soft,#5b574d);font-size:11px}.ranking-hist-mean{stroke:#8a6d1d;stroke-width:1.5px;stroke-dasharray:2 3}.ranking-hist-median{stroke:#1f4b73;stroke-width:1.5px;stroke-dasharray:5 4}.ranking-hist-legend,.ranking-hist-bucket{margin:8px 0 0}.ranking-hist-bucket ul{margin:6px 0 0;padding-left:18px}.ranking-weight-diffs{margin:6px 0 12px;padding-left:18px}.ranking-delta.is-up{color:#3f6b4a}.ranking-delta.is-down{color:#b42318}.ranking-delta.is-entered{color:#1f4b73}.ranking-delta.is-left{color:#7a5b16}.ranking-rule-card{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.ranking-sort{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.ranking-sort.is-on{color:var(--ink,#1f1c16);font-weight:650}.ranking-school{font:inherit;text-align:left;cursor:pointer;color:inherit;background:0 0;border:0;padding:0}.ranking-row-actions{white-space:nowrap;flex-wrap:nowrap;align-items:center;gap:4px;display:flex}.ranking-table .col-onsite{max-width:8.5em}.ranking-table .col-onsite .muted{line-height:1.35}.ranking-table .col-actions{white-space:nowrap;width:1%}.ranking-icon-btn{border:1px solid var(--line,#e5e2da);width:32px;height:32px;color:var(--ink,#1f1c16);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;padding:0;line-height:0;text-decoration:none;display:inline-flex}.ranking-icon-btn:hover{background:var(--accent-soft,#eef4fb)}.ranking-icon-btn:disabled{opacity:.45;cursor:not-allowed}.ranking-icon-btn.is-remove{color:var(--danger,#b42318)}.ranking-icon-btn.is-remove:hover{background:#fff5f5}.ranking-row-defer td:first-child{box-shadow:inset 3px 0 0 var(--warn,#b45309)}.ranking-rank.top-1{color:#8a6d1d}.ranking-rank.top-2{color:#6b7280}.ranking-rank.top-3{color:#8b5a2b}.ranking-industry-bar{flex-shrink:0;gap:1px;width:100%;max-width:140px;height:8px;margin:0;display:flex}.ranking-industry-bar i{background:#d6d3c8;border-radius:1px;flex:1;min-width:6px}.ranking-industry-bar i.g-a{background:#5b7c5a}.ranking-industry-bar i.g-b{background:#7a8f6a}.ranking-industry-bar i.g-c{background:#c4a35a}.ranking-industry-bar i.g-d{background:#b45309}.ranking-industry-bar i.g-u{background:#d6d3c8}.ranking-error-bar{border:1px solid var(--danger,#b42318);color:var(--danger,#b42318);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;display:flex}.ranking-empty{text-align:center;padding:28px 16px}.ranking-id-import{margin-top:16px}.ranking-conflicts{margin:12px 0 0;padding-left:18px}.ranking-units{margin:8px 0;padding-left:18px}@media (width<=960px){.ranking-hide-narrow,.ranking-industry-bar{display:none}.ranking-algo-grid{grid-template-columns:1fr}.ranking-page .task-filters{align-items:stretch}}.page:has(.expert-panel-page){width:100%;max-width:none;margin:0;padding:0}.expert-panel-page{--ep-ink:#1a1a1a;--ep-muted:#4a4a4a;--ep-line:#c8c4b8;--ep-paper:#fffcf7;--ep-desk:#efece4;--ep-link:#1a365d;--ep-font:"Noto Serif SC", "Source Han Serif SC", "Songti SC", SimSun, "Times New Roman", serif;--ep-topbar:72px;--ep-banner-h:56px;--ep-chrome:calc(var(--ep-topbar) + var(--ep-banner-h));width:100%;min-height:calc(100vh - var(--ep-topbar));background:var(--ep-desk);color:var(--ep-ink);font-family:var(--ep-font);flex-direction:column;align-items:stretch;gap:0;margin:0;padding:0;font-size:18px;font-weight:400;line-height:1.75;display:flex}.expert-panel-banner{top:var(--ep-topbar);z-index:21;color:#f5f8fa;background:#0d2433;border-bottom:1px solid #3d6b84;flex-wrap:wrap;align-items:baseline;gap:6px 18px;width:100%;padding:10px 20px;display:flex;position:sticky}.expert-panel-banner-title{letter-spacing:.04em;font-size:18px;font-weight:700}.expert-panel-banner-meta{color:#d5dde3;font-size:15px}.expert-panel-body{align-items:flex-start;width:100%;min-width:0;display:flex}.expert-panel-page [id^=ep-]{scroll-margin-top:calc(var(--ep-chrome) + 8px)}.expert-panel-outline{width:248px;top:var(--ep-chrome);max-height:calc(100vh - var(--ep-chrome));background:var(--ep-desk);border-right:1px solid var(--ep-line);color:var(--ep-ink);z-index:5;scrollbar-width:thin;scrollbar-color:#c8c4b8 transparent;flex:0 0 248px;align-self:flex-start;padding:16px 14px 28px 18px;font-size:14px;line-height:1.5;position:sticky;overflow:auto}.expert-panel-outline-title{letter-spacing:.14em;color:var(--ep-muted);margin:0 0 10px;font-size:12px}.expert-panel-outline-list,.expert-panel-outline-list ol{margin:0;padding:0;list-style:none}.expert-panel-outline-list>li{margin:0 0 4px}.expert-panel-outline-list ol{margin:2px 0 8px .7rem}.expert-panel-outline-h1{text-align:left;width:100%;color:var(--ep-ink);font:inherit;cursor:pointer;background:0 0;border:0;padding:3px 0;font-size:14px;display:block}.expert-panel-outline li.is-current>.expert-panel-outline-h1{font-weight:700}.expert-panel-outline a.is-active,.expert-panel-outline-h1.is-active{color:var(--ep-ink);font-weight:700}.expert-panel-outline li.is-active-branch>a:not(.is-active){color:var(--ep-ink)}.expert-panel-outline a{color:var(--ep-link);padding:2px 0;text-decoration:none;display:block}.expert-panel-outline-list ol ol ol{color:var(--ep-muted);margin-left:.55rem;font-size:13px}.expert-panel-outline-list ol ol ol a{color:var(--ep-muted)}.expert-panel-outline-list ol ol ol a.is-active{color:var(--ep-ink)}.expert-panel-outline a:hover,.expert-panel-outline-h1:hover{text-underline-offset:2px;text-decoration:underline}.expert-panel-outline-foot{border-top:1px solid var(--ep-line);margin:14px 0 0;padding-top:12px;font-size:14px}.expert-panel-paper{background:var(--ep-paper);min-width:0;max-width:none;color:var(--ep-ink);box-shadow:none;border:0;border-left:1px solid #e4dfd4;flex:auto;margin:0;padding:16px 32px 72px}.expert-panel-page.with-dock .expert-panel-paper{padding-right:calc(min(42vw,520px) + 28px)}.expert-panel-masthead{text-align:center;border-bottom:1px solid var(--ep-ink);margin:0 0 2.2rem;padding-bottom:1.2rem}.expert-panel-running{letter-spacing:.18em;color:var(--ep-muted);margin:0 0 10px;font-size:15px}.expert-panel-masthead h1{letter-spacing:.04em;margin:0 0 10px;font-size:26px;font-weight:700;line-height:1.4}.expert-panel-meta{color:var(--ep-muted);margin:0;font-size:15px;line-height:1.7}.expert-panel-page h1,.expert-panel-page h2,.expert-panel-page h3,.expert-panel-page h4,.expert-panel-page h5,.expert-panel-page section[id],.expert-panel-page .expert-panel-unit{scroll-margin-top:168px}.expert-panel-page h1,.expert-panel-page h2,.expert-panel-page h3,.expert-panel-page h4,.expert-panel-page h5{color:var(--ep-ink);font-family:inherit;font-weight:700;line-height:1.45}.expert-panel-page h1.expert-panel-chapter{letter-spacing:.08em;text-align:center;border:0;margin:.4rem 0 1.4rem;padding-bottom:0;font-size:28px;font-weight:700}.expert-panel-page h2{border-bottom:1px solid var(--ep-ink);margin:2.4rem 0 .85rem;padding-bottom:6px;font-size:22px;font-weight:700}.expert-panel-page h3,.expert-panel-page .expert-panel-unit-title{border:0;margin:2.2rem 0 .8rem;font-size:20px;font-weight:700}.expert-panel-page .expert-panel-unit-title .industry-track-mark,.expert-panel-outline .industry-track-mark{color:#8fa3b5;font-size:11px;font-weight:400}.expert-panel-page h4{border:0;margin:1.55rem 0 .5rem;font-size:18px;font-weight:700}.expert-panel-page h5,.expert-panel-page .expert-panel-item-title{border:0;margin:0 0 .28rem;font-size:16px;font-weight:700;line-height:1.5}.expert-panel-unit-sec{margin:0 0 .4rem}.expert-panel-h4-row{justify-content:space-between;align-items:baseline;gap:12px;margin:1.55rem 0 .5rem;display:flex}.expert-panel-h4-row h4{margin:0}.expert-panel-h4-actions{flex-wrap:wrap;align-items:baseline;gap:4px 14px;display:flex}.expert-panel-h4-actions .btn{min-height:36px;font-size:15px}.expert-panel-task-score{margin:0 0 .55rem;font-size:22px;font-weight:700;line-height:1.45}.expert-panel-score-line{margin:0 0 .4rem;font-size:16px;line-height:1.7}.expert-panel-findings{margin:.15rem 0 0;padding-left:1.5em}.expert-panel-cat-group{margin:0 0 1.1rem}.expert-panel-page h3.expert-panel-cat-head{border:0;margin:1.35rem 0 .4rem;font-size:18px;font-weight:700}.expert-panel-plain-list{margin:.2rem 0 0;padding-left:1.5em}.expert-panel-page p,.expert-panel-page li{color:var(--ep-ink)}.expert-panel-page .muted,.expert-panel-page .copy-status{color:var(--ep-muted)}.expert-panel-page a{color:var(--ep-link)}.expert-panel-shell-block{margin:0 0 1.4rem}.expert-panel-course-hint{color:var(--ep-muted);margin:0 0 1rem;font-size:16px}.expert-panel-more{color:var(--ep-muted);margin:0 0 1.4rem;font-size:16px}.expert-panel-more summary{cursor:pointer;min-height:44px}.expert-panel-notice{background:0 0;border:0;margin:0 0 1.4rem;padding:0 0 .2rem}.expert-panel-update-actions{flex-wrap:wrap;gap:0 1.6rem;margin:.5rem 0 0;display:flex}.expert-panel-update-status{color:var(--ep-muted);margin:.55rem 0 0}.expert-panel-text-btn,.expert-panel-page .btn,.expert-panel-page .btn.primary,.expert-panel-page .btn.secondary,.expert-panel-page .linkish,.expert-panel-page .source-btn,.expert-panel-page .feedback-btn,.expert-panel-page .unit-score-tech{min-height:44px;color:var(--ep-link);font:inherit;text-underline-offset:3px;box-shadow:none;background:0 0;border:0;border-radius:0;align-items:center;padding:0 2px;font-size:16px;font-weight:500;text-decoration:underline;display:inline-flex}.expert-panel-text-btn:disabled,.expert-panel-page .btn:disabled{color:var(--ep-muted);cursor:not-allowed;text-decoration:none}.expert-panel-page .feedback-btn.selected{color:var(--ep-ink);font-weight:700}.expert-panel-page .feedback-btn.up.selected,.expert-panel-page .feedback-btn.down.selected,.expert-panel-page .feedback-btn:hover{color:var(--ep-ink);background:0 0;border:0}.expert-panel-filter{color:var(--ep-muted);margin:0 0 1rem;font-size:15px}.expert-panel-filter label{align-items:center;gap:8px;min-height:36px;display:inline-flex}.expert-panel-tabs{border-bottom:1px solid var(--ep-ink);background:var(--ep-paper);z-index:4;flex-wrap:nowrap;align-items:center;gap:0;margin:0 0 .9rem;padding:2px 0 8px;display:flex;position:sticky;top:72px;overflow-x:auto}.expert-panel-tab-note{color:var(--ep-muted);margin:0 0 1rem;font-size:16px}.expert-panel-tab-group{flex:none;align-items:center;display:inline-flex}.expert-panel-tab-sep{background:var(--ep-ink);opacity:.28;flex:none;width:1px;height:14px;margin:0 10px;display:inline-block}.expert-panel-tab{min-width:36px;min-height:36px;color:var(--ep-ink);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:0;padding:4px 8px;font-size:15px;line-height:1.2}.expert-panel-tab.is-active,.expert-panel-tab[aria-selected=true]{color:var(--ep-ink);box-shadow:inset 0 -2px 0 var(--ep-ink);background:0 0;font-weight:700}.expert-panel-tab:focus-visible,.expert-panel-page button:focus-visible,.expert-panel-page a:focus-visible,.expert-panel-page textarea:focus-visible{outline:2px solid var(--ep-ink);outline-offset:2px}.expert-panel-toc{border-bottom:1px solid var(--ep-line);margin:0 0 1.4rem;padding:0 0 .8rem;font-size:16px}.expert-panel-toc ol{padding-left:1.5rem}.expert-panel-toc a{color:var(--ep-link)}.expert-panel-toc label{align-items:center;gap:8px;min-height:44px;display:inline-flex}.expert-panel-block{background:0 0;border:0;margin:0 0 1.2rem;padding:0;position:relative}.expert-panel-block-title{margin:.15rem 0 .3rem;font-weight:600}.expert-panel-block-meta{color:var(--ep-muted);margin:0 0 .35rem;font-size:14px;line-height:1.55;display:block}.expert-panel-block-meta>span+span:before{content:"　"}.expert-panel-page .sev-badge,.expert-panel-page .finding-kind,.expert-panel-page .verify-state-chip,.expert-panel-page .quality-flag-chip,.expert-panel-page .summary-update-source-badge,.expert-panel-page .status-pill{color:var(--ep-muted);background:0 0;border:0;border-radius:0;padding:0;font-size:15px;font-weight:500;display:inline}.expert-panel-page .sev-badge.sev-critical:before{content:"【严重】"}.expert-panel-page .sev-badge.sev-major:before{content:"【重要】"}.expert-panel-page .sev-badge.sev-minor:before{content:"【一般】"}.expert-panel-page .sev-badge.sev-info:before{content:"【参考】"}.expert-panel-page .sev-badge{font-size:0}.expert-panel-page .sev-badge:before,.expert-panel-status-mark{color:var(--ep-muted);font-size:14px}.expert-panel-unit{background:0 0;border:0;margin:0 0 2.8rem;padding:0}.expert-panel-unit-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.expert-panel-unit-head .muted{font-size:15px}.expert-panel-unit-sec .expert-panel-review{margin-top:.7rem}.expert-panel-paper .finding-reason{color:var(--ep-ink);margin:.15rem 0 0;font-size:18px;line-height:1.75}.expert-panel-paper .finding-reason p{margin:0 0 .4rem}.expert-panel-paper .evidence-list{margin:.35rem 0 0;padding-left:1.2em}.expert-panel-paper .evidence-list li{color:var(--ep-muted);margin:0 0 .35rem;font-size:16px;line-height:1.65}.expert-panel-paper .finding-action{color:var(--ep-muted);background:0 0;border:0;border-radius:0;margin-top:6px;padding:0;font-size:16px;font-weight:400;line-height:1.65}.expert-panel-paper .unit-secondary-fold{background:0 0;border:0;border-radius:0;margin:1.55rem 0 0;padding:0}.expert-panel-paper .unit-secondary-fold>summary{color:var(--ep-muted);min-height:36px;padding:0 0 .45rem;font-size:18px;font-weight:700}.expert-panel-paper .unit-secondary-fold>summary:before{color:var(--ep-muted)}.expert-panel-paper .unit-score-panel,.expert-panel-paper .expert-panel-score.unit-score-panel,.expert-panel-paper .unit-score-dim,.expert-panel-paper .unit-score-dims,.expert-panel-paper .expert-chat-bubble,.expert-panel-paper .feedback-control,.expert-panel-paper .feedback-detail,.expert-panel-files,.expert-panel-paper .file-card{padding:0;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important}.expert-panel-page .unit-score-summary-grade .unit-score-grade-letter{color:var(--ep-ink);font-size:18px;font-weight:700}.expert-panel-page .unit-score-grade-tag,.expert-panel-page .unit-score-share,.expert-panel-page .unit-score-hint{color:var(--ep-muted);font-size:16px}.expert-panel-page .unit-score-grade-badge,.expert-panel-page .unit-score-summary-grade.grade-A,.expert-panel-page .unit-score-summary-grade.grade-B,.expert-panel-page .unit-score-summary-grade.grade-C,.expert-panel-page .unit-score-summary-grade.grade-D,.expert-panel-page .unit-score-grade-badge.grade-A,.expert-panel-page .unit-score-grade-badge.grade-B,.expert-panel-page .unit-score-grade-badge.grade-C,.expert-panel-page .unit-score-grade-badge.grade-D{color:var(--ep-ink);background:0 0;border:0}.expert-panel-files{border-top:1px solid var(--ep-line);margin-top:2rem;padding-top:.4rem}.expert-panel-files h3{margin-top:0}.expert-panel-files .file-card{border-bottom:1px solid var(--ep-line);padding:8px 0}.expert-panel-page .file-card .desc{color:var(--ep-muted);font-size:16px}.expert-panel-page textarea,.expert-panel-page .expert-action-input,.expert-panel-page select,.expert-panel-page input{background:var(--ep-paper);color:var(--ep-ink);border:0;border-bottom:1px solid var(--ep-line);font:inherit;border-radius:0}.expert-panel-page .expert-chat-bubble{margin:.4rem 0;padding:0}.expert-panel-page .expert-chat-bubble.expert,.expert-panel-page .expert-chat-bubble.ai{background:0 0;border:0}.expert-panel-page .expert-chat-role{color:var(--ep-muted);font-size:15px}.expert-panel-rail-wrap{min-height:0}.expert-panel-page .feedback-control.expert-panel-rail{z-index:auto;opacity:0;pointer-events:none;background:var(--ep-paper);gap:4px;max-height:0;margin:0;padding:0;display:grid;position:static;bottom:auto;left:auto;right:auto;overflow:hidden;transform:none}.expert-panel-block:hover .feedback-control.expert-panel-rail,.expert-panel-block:focus-within .feedback-control.expert-panel-rail{opacity:1;pointer-events:auto;max-height:280px;margin-top:6px;overflow:auto;border-top:1px solid var(--ep-line)!important;padding:6px 0 4px!important}.expert-panel-page .expert-panel-rail-line{justify-content:flex-end;align-items:baseline;gap:2px 8px;width:100%}.expert-panel-rail-sources{flex-wrap:wrap;justify-content:flex-end;gap:0 10px;min-width:0;display:inline-flex}.expert-panel-rail-sign{border-left:1px solid var(--ep-line);flex:none;align-items:baseline;gap:12px;margin-left:.6em;padding-left:.9em;display:inline-flex}.expert-panel-page .feedback-control.expert-panel-rail .source-btn,.expert-panel-page .feedback-control.expert-panel-rail .feedback-btn,.expert-panel-page .feedback-control.expert-panel-rail .btn{min-height:28px;padding:0;font-size:14px;line-height:1.3}.expert-panel-touch-ops{min-height:44px;margin-top:8px;display:none}.expert-panel-source-dock,.expert-panel-score-dock,.expert-panel-review-dock{top:var(--ep-chrome);width:min(42vw,520px);height:calc(100vh - var(--ep-chrome) - 12px);max-height:calc(100vh - var(--ep-chrome) - 12px);z-index:6;background:var(--ep-paper);color:var(--ep-ink);border:1px solid var(--ep-line);font-family:var(--ep-font);scrollbar-width:thin;scrollbar-color:#c8c4b8 transparent;flex-direction:column;display:flex;position:fixed;right:12px;overflow:hidden}.expert-panel-source-dock::-webkit-scrollbar{width:6px;height:6px}.expert-panel-score-dock::-webkit-scrollbar{width:6px;height:6px}.expert-panel-review-dock::-webkit-scrollbar{width:6px;height:6px}.expert-panel-outline::-webkit-scrollbar{width:6px;height:6px}.expert-panel-source-dock::-webkit-scrollbar-track{background:0 0}.expert-panel-score-dock::-webkit-scrollbar-track{background:0 0}.expert-panel-review-dock::-webkit-scrollbar-track{background:0 0}.expert-panel-outline::-webkit-scrollbar-track{background:0 0}.expert-panel-source-dock::-webkit-scrollbar-thumb{background:#c8c4b8;border-radius:6px}.expert-panel-score-dock::-webkit-scrollbar-thumb{background:#c8c4b8;border-radius:6px}.expert-panel-review-dock::-webkit-scrollbar-thumb{background:#c8c4b8;border-radius:6px}.expert-panel-outline::-webkit-scrollbar-thumb{background:#c8c4b8;border-radius:6px}.expert-panel-source-dock::-webkit-scrollbar-thumb:hover{background:#a8a498}.expert-panel-score-dock::-webkit-scrollbar-thumb:hover{background:#a8a498}.expert-panel-review-dock::-webkit-scrollbar-thumb:hover{background:#a8a498}.expert-panel-outline::-webkit-scrollbar-thumb:hover{background:#a8a498}.unit-score-inspect-panel{flex-direction:column;height:100%;min-height:0;padding:0;font-size:16px;line-height:1.7;display:flex;overflow:hidden}.expert-panel-dock-bar{border-bottom:1px solid var(--ep-line);background:var(--ep-paper);flex:none;justify-content:space-between;align-items:center;gap:8px;height:40px;min-height:40px;padding:0 8px 0 12px;display:flex}.expert-panel-dock-bar-title{min-width:0;color:var(--ep-muted);white-space:nowrap;flex:1;align-items:baseline;gap:.6em;margin:0;font-size:13px;display:flex;overflow:hidden}.expert-panel-dock-bar-title strong{color:var(--ep-ink);text-overflow:ellipsis;font-size:15px;font-weight:700;overflow:hidden}.expert-panel-dock-bar-title .muted{text-overflow:ellipsis;overflow:hidden}.expert-panel-dock-close{min-height:40px;color:var(--ep-link);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;flex:none;padding:0 8px;font-size:15px;text-decoration:underline}.expert-panel-dock-scroll{scrollbar-width:thin;scrollbar-color:#c8c4b8 transparent;flex:1;min-height:0;padding:12px 16px 24px;overflow:auto}.expert-panel-dock-scroll::-webkit-scrollbar{width:6px;height:6px}.expert-panel-dock-scroll::-webkit-scrollbar-thumb{background:#c8c4b8;border-radius:6px}.expert-review-conversation.is-pinned{flex-direction:column;flex:1;min-height:0;padding:0 12px 10px;display:flex}.expert-review-conversation.is-pinned .expert-chat-stream{flex:1;min-height:0;max-height:none;overflow:auto}.expert-review-conversation.is-pinned .expert-chat-composer{flex:none;margin-top:8px}.unit-score-inspect-kicker{letter-spacing:.14em;color:#5a6570;margin:0 0 4px;font-size:12px}.unit-score-inspect-head{border-bottom:1px solid var(--ep-line);justify-content:space-between;align-items:flex-start;gap:12px;margin:0 0 12px;padding-bottom:10px;display:flex}.unit-score-inspect-head h2{border:0;margin:0;padding:0;font-size:20px;font-weight:700;line-height:1.4}.unit-score-inspect-toolbar{flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 16px;display:flex}.expert-panel-score-dock .unit-score-dim{border:0;border-bottom:1px solid var(--ep-line);background:0 0;border-radius:0;gap:8px;margin:0 0 1.35rem;padding:0 0 1.15rem;display:grid}.expert-panel-score-dock .unit-score-dim-name{font-size:17px;font-weight:700;line-height:1.45}.expert-panel-score-dock .unit-score-reason-text,.expert-panel-score-dock .unit-score-grade-anchor,.expert-panel-score-dock .unit-score-point,.expert-panel-score-dock .unit-score-low-note{font-size:16px;line-height:1.7}.expert-panel-score-dock .unit-score-block h4{margin:.9rem 0 .35rem;font-size:15px;font-weight:700;line-height:1.5}.expert-panel-score-dock .unit-score-anchors>div.is-current{box-shadow:none;background:0 0;font-weight:700}.expert-panel-source-dock .source-viewer-panel{width:100%;height:100%;min-height:0;max-height:none;box-shadow:none;background:var(--ep-paper);border:0;border-radius:0;flex:1;overflow:hidden}.expert-panel-source-dock .source-viewer-head{background:var(--ep-paper);flex:none;align-items:center;height:40px;min-height:40px;padding:0 8px 0 12px}.expert-panel-source-dock .source-viewer-head .muted{display:none}.expert-panel-source-dock .source-viewer-head h3{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:15px;line-height:1.3;overflow:hidden}.expert-panel-source-dock .source-viewer-close{min-height:40px;font-size:22px}.expert-panel-review-head{flex-wrap:wrap;align-items:center;gap:8px;min-height:44px;display:flex}.expert-review-dock-panel{flex-direction:column;flex:1;height:100%;min-height:0;padding:0;display:flex;overflow:hidden}.expert-review-dock-lead{color:var(--ep-muted);flex:none;margin:0;padding:8px 12px 0;font-size:13px;line-height:1.45}.expert-panel-unit-sec .findings-main-updated-note{color:var(--ep-muted);margin-left:8px;font-size:14px;font-weight:400}.expert-panel-page .form-error{color:var(--ep-ink);background:0 0}.expert-panel-page .feedback-tag{color:var(--ep-ink);background:0 0;border:0;border-bottom:1px solid #0000;border-radius:0}.expert-panel-page .feedback-tag.selected{border-bottom-color:var(--ep-ink);font-weight:600}.expert-panel-page .peer-feedback-item{background:0 0;border:0}@media (pointer:coarse){.expert-panel-page .feedback-control.expert-panel-rail{opacity:1;pointer-events:auto;border-top:1px solid var(--ep-line);max-height:none;margin-top:6px;padding:6px 0 4px;overflow:visible}.expert-panel-touch-ops{opacity:1;pointer-events:auto;display:inline-flex;position:static}}@media (prefers-reduced-motion:reduce){.expert-panel-page *{scroll-behavior:auto!important;transition:none!important}}@media (width<=1099px){.expert-panel-page.with-dock .expert-panel-paper{padding-right:20px}.expert-panel-source-dock,.expert-panel-score-dock,.expert-panel-review-dock{display:none}}@media (width<=980px){.expert-panel-body{flex-direction:column}.expert-panel-outline{border-right:0;border-bottom:1px solid var(--ep-line);flex-basis:auto;width:100%;max-height:36vh}}@media (width<=720px){.expert-panel-paper{padding:16px 16px 48px}}.page:has(.projects-home){flex-direction:column;width:min(1440px,100% - 32px);min-height:calc(100vh - 120px);margin:16px auto 24px;display:flex}.projects-home{flex:1;grid-template-columns:minmax(240px,280px) minmax(0,1fr);align-items:stretch;gap:18px;min-height:calc(100vh - 140px);display:grid}.projects-rail{max-height:calc(100vh - 112px);position:sticky;top:96px;overflow:auto}.projects-rail .entity-actions .btn{padding:4px 8px;font-size:12px}.projects-rail-totals{margin:8px 0 0;font-size:12px;line-height:1.55}.preprocess-watch-card{text-align:left;border:1px solid var(--line);width:100%;color:inherit;background:#fff;border-radius:10px;gap:2px;margin-top:10px;padding:10px 12px;display:grid}.preprocess-watch-card strong{font-size:14px}.preprocess-watch-card span{color:var(--ink-soft);font-size:12px}.preprocess-watch-card.is-active{background:#eaf3fb;border-color:#5b8fc7}.ocr-throughput-wrap{margin:12px 0 16px}.ocr-throughput-note{margin:8px 0 0}.ocr-live{border:1px solid var(--border,#e2e2e2);border-radius:8px;flex:none;margin:0 0 12px;padding:10px 12px}.ocr-live-summary{margin:0 0 6px}.ocr-live-idle{color:#b45309;margin:0 0 6px}.ocr-live-table{margin-top:6px}.ocr-fault-title{margin:0 0 8px;font-size:15px}.projects-main .ocr-throughput-wrap,.projects-main .ocr-fault-wrap{flex:none;min-height:0}.projects-main .ocr-throughput-wrap{margin:0 0 8px}.projects-main .ocr-fault-wrap{margin:16px 0 0}.ocr-fault-message{word-break:break-word;max-width:36em}.projects-rail .year-group{margin-top:16px}.projects-rail .year-group h3{letter-spacing:.08em;color:var(--ink-soft);font-size:12px;font-family:var(--font-ui);margin:0 0 8px;font-weight:700}.projects-rail .entity-row{gap:6px}.projects-main{flex-direction:column;min-width:0;min-height:0;display:flex}.projects-main .table-wrap{flex:auto;min-height:min(520px,100vh - 280px);margin:0;overflow:visible}.campaign-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.campaign-head h2{margin:4px 0 6px}.campaign-head .eyebrow{margin-bottom:0}.work-stats{border:1px solid var(--line);background:var(--line);border-radius:12px;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin:0 0 16px;display:grid;overflow:hidden}.work-stats>div{background:#fff;gap:4px;padding:10px 12px;display:grid}.work-stats b{font:700 24px/1 var(--font-display);color:var(--accent)}.work-stats span{color:var(--ink-soft);font-size:12px}.work-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.work-search,.work-toolbar select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;padding:8px 12px}.work-search{flex:220px;min-width:220px}.work-toolbar .btn.primary{margin-left:auto}.program-work-table{border-collapse:collapse;width:100%}.program-work-table th{text-align:left;color:var(--ink-soft);border-bottom:1px solid var(--line);padding:8px 10px;font-size:12px;font-weight:700}.program-work-table td{vertical-align:middle;border-bottom:1px solid #efe8dc;padding:8px 10px}.preprocess-batch-list{gap:8px;min-width:220px;display:grid}.preprocess-batch-row{color:inherit;background:#fff;border:1px solid #eadfcd;border-radius:8px;gap:3px;padding:6px 8px;text-decoration:none;display:grid}.preprocess-batch-row:hover{border-color:tan}.preprocess-batch-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.preprocess-batch-pages{color:var(--ink-soft);font-size:12px}.preprocess-batch-bar{height:6px;margin:2px 0 0}@media (width<=900px){.preprocess-batch-list{min-width:0}}.program-work-name{gap:3px;display:grid}.program-work-name span{color:var(--ink-soft);font-size:12px}.program-work-actions{white-space:normal;flex-wrap:wrap;align-items:center;gap:6px;display:flex}.program-work-actions .btn{padding:6px 10px;font-size:13px}.program-work-row.is-expanded td{border-bottom-color:#0000}.program-tree-row td{vertical-align:top;background:#faf7f1;padding:0 10px 12px}.program-tree-empty{align-items:center;gap:10px;display:flex}.program-tree{gap:8px;display:grid}.program-tree-count{color:var(--ink-soft);margin:0;font-size:12px}.program-tree-batch{background:#fff;border:1px solid #eadfcd;border-radius:10px;gap:8px;margin-top:8px;padding:10px 12px;display:grid}.program-tree-batch:first-child{margin-top:0}.program-tree-batch-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.program-tree-batch-head strong{display:block}.program-tree-batch-head span{color:var(--ink-soft);font-size:12px}.program-tree-actions{flex-wrap:wrap;gap:6px;display:flex}.program-tree-actions .btn{padding:5px 9px;font-size:12px}.program-tree-tasks{gap:8px;margin:0;padding:0;list-style:none;display:grid}.program-tree-tasks li{border-top:1px dashed #eadfcd;justify-content:space-between;align-items:center;gap:12px;padding:8px 0 0;display:flex}.program-tree-tasks li>div:first-child{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.school-group-row td{color:var(--ink-soft);background:#f7f2e8;padding:8px 10px;font-size:13px;font-weight:700}.row-menu{position:relative}.row-menu-toggle{padding:7px 10px}.row-menu-list{z-index:5;border:1px solid var(--line);background:#fff;border-radius:10px;min-width:132px;padding:6px;display:grid;position:absolute;top:calc(100% + 4px);right:0}.row-menu-list a,.row-menu-list button{text-align:left;width:100%;color:inherit;background:0 0;border:0;border-radius:8px;padding:7px 10px;text-decoration:none;display:block}.row-menu-list a:hover,.row-menu-list button:hover{background:var(--accent-soft);text-decoration:none}.row-menu-list .danger{color:var(--danger)}.empty-campaign{padding:24px 8px 12px}.status-pill.work-no_material,.status-pill.work-archived{color:#4a5564;background:#f4f5f7;border-color:#c8ced6}.status-pill.work-pending_confirm,.status-pill.work-processing{color:#7a5200;background:#fff8eb;border-color:#e2b203}.status-pill.work-ready{color:#1f4e79;background:#eaf3fb;border-color:#5b8fc7}.status-pill.work-reviewing{border-color:var(--warn);color:#92400e;background:#fff4e5}.status-pill.work-delivered,.status-pill.work-done{color:#146c2e;background:#eaf7ef;border-color:#3a9567}.status-pill.work-failed{color:var(--danger);background:#fff1f0;border-color:#d36b6b}.ops-alert-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.ops-alert{border-radius:10px;gap:4px;margin:0;padding:12px 14px;line-height:1.55;display:grid}.ops-alert span{color:var(--ink-soft);font-size:14px}.ops-alert-ok{background:#eaf7ef;border:1px solid #3a9567}.ops-alert-yellow{background:#fff8eb;border:1px solid #e2b203}.ops-alert-red{background:#fff1f0;border:1px solid #d36b6b}.ops-backup-block{gap:10px;display:grid}.ops-tabs{gap:8px;margin:0 0 16px;display:flex}.ops-tab{border:1px solid var(--line);background:var(--panel);color:var(--ink-soft);border-radius:999px;padding:7px 16px;font-weight:600}.ops-tab.active{background:var(--accent-soft);color:var(--accent);border-color:#9fc0df}.ops-mem{gap:16px;display:grid}.ops-mem-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.ops-mem-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.ops-mem-card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px 14px}.ops-mem-card h3{margin:0 0 4px;font-size:16px}.ops-mem-status{border-radius:999px;padding:2px 10px;font-size:13px;display:inline-block}.ops-mem-status.is-ok{color:var(--ok);background:#eaf7ef}.ops-mem-status.is-watch{color:#7a5200;background:#fff8eb}.ops-mem-status.is-danger,.ops-mem-status.is-oom,.ops-mem-status.is-stale{color:var(--danger);background:#fff1f0}.ops-alert-orange{background:#fff4e5;border:1px solid #ea580c}.ops-mem-svg{border:1px solid var(--line);background:#fffdf8;border-radius:10px;width:100%;height:auto;display:block}@media (width<=980px){.projects-home{grid-template-columns:1fr}.projects-rail{position:static}.work-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.work-toolbar .btn.primary{margin-left:0}.campaign-head{flex-direction:column}.ops-mem-cards{grid-template-columns:1fr 1fr}}
