:root{color:#111827;background:#f3f4f6;font-family:Microsoft YaHei,PingFang SC,Arial,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}.app-shell{display:grid;grid-template-columns:272px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,#1d4ed8,#2563eb 48%,#1e40af);color:#f8fafc;padding:24px 18px;display:flex;flex-direction:column;gap:24px;box-shadow:12px 0 34px #1d4ed82e}.brand{display:flex;gap:12px;align-items:center}.brand-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:8px;background:#ffffff2e;color:#fff;border:1px solid rgba(255,255,255,.28)}.brand h1{margin:0;font-size:20px;letter-spacing:0}.brand p{margin:2px 0 0;color:#dbeafe;font-size:13px}.tabs{display:grid;gap:8px}.tabs button{border:0;border-radius:8px;background:transparent;color:#eff6ff;min-height:44px;padding:0 12px;display:flex;align-items:center;gap:10px;cursor:pointer;text-align:left}.tabs button.active,.tabs button:hover{background:#ffffff29;color:#fff}.sidebar-footer{margin-top:auto;display:flex;gap:8px;flex-wrap:wrap}.account-card{border:1px solid rgba(255,255,255,.24);border-radius:8px;padding:12px;background:#ffffff1f;display:grid;gap:9px}.account-card h3{font-size:15px}.account-card input,.account-card select{min-height:34px;padding:8px 10px;border-color:#ffffff52}.account-card p{margin:0;color:#dbeafe;font-size:12px;line-height:1.5}.account-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px}.account-tabs button,.account-button{border:1px solid rgba(255,255,255,.25);border-radius:6px;min-height:32px;color:#fff;background:#ffffff14;cursor:pointer}.account-tabs button.selected,.account-button{background:#22c55e;border-color:#22c55e}.account-user{display:grid;gap:2px}.account-user strong{color:#fff}.account-user span{color:#dbeafe;font-size:12px}.workspace{padding:28px;display:flex;flex-direction:column;gap:24px;background:#f3f4f6}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;color:#fff;background:linear-gradient(135deg,#1d4ed8,#2563eb 52%,#3b82f6);border-radius:8px;padding:26px;box-shadow:0 18px 42px #1d4ed838}.eyebrow{margin:0 0 6px;color:#dbeafe;font-size:13px}.topbar h2{margin:0;font-size:30px;letter-spacing:0}.metrics{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.metric{min-width:150px;background:#ffffff24;border:1px solid rgba(255,255,255,.26);border-radius:8px;padding:12px;display:flex;gap:10px;align-items:center}.metric span{display:block;color:#dbeafe;font-size:12px}.metric strong{display:block;font-size:14px}.panel{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:22px;box-shadow:0 16px 42px #11182714}.model-banner,.error-banner{border-radius:8px;padding:11px 14px;display:flex;gap:14px;justify-content:space-between;align-items:center;font-size:13px}.model-banner.ready{background:#dcfce7;color:#166534;border:1px solid #86efac}.model-banner.fallback{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe}.error-banner{background:#f8ded9;color:#762b22;border:1px solid #e6aca2}.two-col{display:grid;grid-template-columns:minmax(280px,360px) 1fr;gap:22px}.diagnosis-layout{grid-template-columns:minmax(430px,520px) minmax(620px,1fr);align-items:start}.diagnosis-layout .result-panel{min-height:520px}.diagnosis-layout .empty-state{min-height:190px}.control-panel,.result-panel{display:flex;flex-direction:column;gap:12px}h3,h4{margin:0}.control-panel label{color:#374151;font-size:13px;font-weight:700}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:#eef2ff;border:1px solid #dbeafe;border-radius:8px}.segmented button{border:0;border-radius:6px;min-height:36px;background:transparent;color:#1d4ed8;cursor:pointer;font-weight:700}.segmented button.selected{background:#fff;color:#111827;box-shadow:0 2px 8px #1d4ed824}textarea,input,select{width:100%;border:1px solid #d1d5db;border-radius:8px;background:#fff;padding:11px 12px;color:#111827}textarea{min-height:170px;resize:vertical}.strategy-textarea{min-height:210px;line-height:1.65}.diagnosis-note{min-height:82px;line-height:1.55}.demo-image-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.demo-image-grid button{border:1px solid #dbeafe;border-radius:8px;background:#fff;padding:8px;display:grid;gap:6px;color:#1f2937;cursor:pointer;text-align:left}.demo-image-grid button:hover{border-color:#22c55e;box-shadow:0 8px 18px #22c55e24}.demo-image-grid img{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:6px;background:#f8fafc}.demo-image-grid span{font-size:12px;font-weight:800}.decision-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.decision-field-grid label{display:grid;gap:6px;font-size:12px}.primary{border:0;border-radius:8px;background:#22c55e;color:#fff;padding:12px 14px;display:inline-flex;gap:8px;justify-content:center;align-items:center;cursor:pointer;min-height:44px}.primary:hover{background:#16a34a}.primary:disabled{cursor:wait;opacity:.68}.secondary{border:1px solid #93c5fd;border-radius:8px;background:#fff;color:#1d4ed8;padding:9px 12px;display:inline-flex;justify-content:center;align-items:center;cursor:pointer;min-height:38px;font-weight:700}.helper-text{margin:0;color:#4b5563;font-size:13px}.diagnosis-scope-card{display:grid;gap:10px;padding:12px;border:1px solid #dbeafe;border-radius:8px;background:#f8fbff}.diagnosis-scope-card>strong{color:#0f172a}.scope-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.scope-list article{border:1px solid #e5e7eb;border-radius:8px;background:#fff;padding:8px}.scope-list span{color:#1d4ed8;font-weight:800;font-size:13px}.scope-list p{margin:3px 0 0;color:#4b5563;font-size:12px;line-height:1.55}.result-panel{background:linear-gradient(135deg,rgba(219,234,254,.66),transparent 34%),#fff;border:1px solid #e5e7eb;border-radius:8px;padding:18px}.result-panel p{margin:0}.rich-answer{display:grid;gap:8px}.rich-answer p{margin:0;white-space:pre-wrap}.rich-answer h4{margin:10px 0 2px;color:#111827}.rich-list-item{padding-left:16px;position:relative}.rich-list-item:before{content:"";width:5px;height:5px;border-radius:50%;background:#2563eb;position:absolute;left:3px;top:.72em}.tag-row{display:flex;gap:8px;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;min-height:28px;padding:3px 9px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:700}.pill-green{background:#dcfce7;color:#166534}.pill-amber{background:#fef3c7;color:#92400e}.pill-blue{background:#d8e9f5;color:#234e68}.pill-red{background:#f6d6d1;color:#7c2c23}.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}.section-title p{margin:0;color:#4b5563}.graph-panel{display:grid;gap:16px}.graph-title-row{align-items:center;margin-bottom:0}.graph-title-row>div:first-child{display:grid;gap:6px}.graph-toolbar{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.graph-toolbar button{border:1px solid #bfdbfe;border-radius:8px;background:#fff;color:#1d4ed8;min-height:38px;padding:7px 12px;cursor:pointer;font-weight:700}.graph-toolbar button.selected{background:#1d4ed8;color:#fff;border-color:#1d4ed8}.graph-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,320px);gap:16px;align-items:start}.graph-canvas{border:1px solid #dbeafe;border-radius:8px;background:radial-gradient(circle at 48% 36%,rgba(219,234,254,.55),transparent 34%),linear-gradient(180deg,#f8fbfff5,#fffffffa),#f8fafc;padding:16px 18px;min-height:440px;display:grid;grid-template-rows:auto 1fr;gap:10px;align-items:stretch;justify-content:stretch}.graph-canvas-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 8px 0;min-height:24px;color:#1d4ed8}.graph-canvas-title strong{font-size:16px;line-height:1.25}.graph-canvas-title span{color:#64748b;font-size:12px;line-height:1.4}.graph-wrap svg{width:100%;height:clamp(360px,42vw,500px);min-height:0;background:transparent;border-radius:0;border:0;overflow:visible;-webkit-tap-highlight-color:transparent}.graph-wrap line{stroke:#8ec5ff;stroke-width:.45;opacity:.9}.graph-wrap circle{stroke:#fff;stroke-width:.95;filter:drop-shadow(0 6px 12px rgba(37,99,235,.12))}.graph-wrap text{text-anchor:middle;font-size:2.15px;font-weight:700;font-family:Microsoft YaHei,PingFang SC,Noto Sans CJK SC,Arial,sans-serif;fill:#fff;pointer-events:none;-webkit-user-select:none;user-select:none}.graph-wrap .graph-node-short{font-size:2.15px;letter-spacing:0}.node{cursor:pointer;outline:none}.node *,.node:focus,.node:focus-visible{outline:none}.node.selected circle{fill:#22c55e;stroke:#dcfce7;stroke-width:1.05;filter:drop-shadow(0 8px 16px rgba(34,197,94,.18))}.node.selected text{display:block;fill:#fff;stroke:none;filter:none;paint-order:normal;font-size:1.95px;font-weight:800}.node:focus-visible circle{fill:#22c55e;stroke:#dcfce7;stroke-width:1.05}.node-core circle{fill:#1d4ed8}.node-crop circle{fill:#d7f3a4}.node-crop text,.node-measure text{fill:#0f172a}.graph-wrap .node.selected text,.graph-wrap .node.selected.node-crop text,.graph-wrap .node.selected.node-measure text{fill:#fff;stroke:none;filter:none;paint-order:normal}.node-stage circle{fill:#3b82f6}.node-measure circle{fill:#e6c76d}.node-risk circle{fill:#db7b66}.node-yield circle{fill:#a78bfa}.node-storage circle{fill:#38bdf8}.node-exam circle{fill:#c4b5fd}.graph-side{display:grid;grid-template-rows:auto 1fr;gap:12px;min-height:0}.graph-focus{border:1px solid #dbeafe;border-radius:8px;background:#fff;padding:16px;display:grid;gap:10px;align-content:start;box-shadow:0 10px 24px #0f172a0a}.graph-focus small{color:#2563eb;font-weight:800}.graph-focus h4{margin:0;font-size:22px}.graph-focus p{margin:0;color:#374151;line-height:1.65}.graph-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-content:start;max-height:340px;overflow:auto;padding-right:4px}.graph-legend button{display:grid;grid-template-columns:32px 1fr;align-items:center;gap:8px;min-height:34px;padding:6px 8px;border:1px solid #dbeafe;border-radius:8px;background:#fff;color:#1f2937;text-align:left;cursor:pointer}.graph-legend button.selected,.graph-legend button:hover{border-color:#22c55e;background:#f0fdf4;box-shadow:0 8px 18px #22c55e1a}.graph-legend strong{color:#1d4ed8;font-size:13px}.graph-legend span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.graph-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;overflow:visible;padding:0}.graph-list article,.recommend-grid article{border:1px solid #e5e7eb;border-radius:8px;padding:10px 12px;background:#fff}.graph-list article{cursor:pointer;min-width:0;display:flex;align-items:center;gap:8px;min-height:42px}.graph-list article.selected,.graph-list article:hover{border-color:#22c55e;background:#f0fdf4;box-shadow:0 8px 20px #22c55e1a}.graph-list strong{color:#1d4ed8;font-size:13px;flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.graph-list span{color:#1f2937;font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.knowledge-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.knowledge-results article{border:1px solid #e5e7eb;border-radius:8px;padding:10px 12px;background:#fff}.knowledge-results p{margin:4px 0;color:#374151;line-height:1.55}.recommend-grid p{margin:6px 0 0;color:#4b5563}.score-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.score-line strong{font-size:42px;line-height:1}.empty-state{display:grid;place-items:center;gap:10px;min-height:220px;padding:28px;border:1px dashed #bfdbfe;border-radius:8px;background:#f8fafc;color:#4b5563;text-align:center}.empty-state svg{color:#1d4ed8}.empty-state p{max-width:420px;margin:0;line-height:1.7}.issue{display:grid;grid-template-columns:22px 1fr;gap:10px;padding:12px;border-radius:8px;background:#fff;border:1px solid #e5e7eb}.issue p{margin:4px 0}.issue small{color:#4b5563}.image-preview{width:100%;max-height:320px;object-fit:contain;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.diagnosis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.diagnosis-grid article,.field-checks{border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;padding:12px}.diagnosis-grid p{margin:6px 0 4px;color:#111827;font-weight:700}.diagnosis-grid small{color:#374151}.visual-findings{display:grid;gap:10px;padding:12px;border:1px solid #bbf7d0;border-radius:8px;background:#f0fdf4}.visual-findings h4{margin:0}.finding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.finding-grid article{border:1px solid #dcfce7;border-radius:8px;background:#fff;padding:10px}.finding-grid strong{color:#166534}.finding-grid p{margin:5px 0 0;color:#374151;line-height:1.65}.field-checks ul{margin:8px 0 0;padding-left:20px}.feedback-list{margin:0;padding-left:20px;display:grid;gap:10px}.yield-process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:6px 0 4px}.yield-process article{border:1px solid #dbeafe;border-radius:8px;background:#f8fbff;padding:12px;display:grid;gap:6px}.yield-process strong{color:#0f172a}.yield-process span{width:fit-content;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:800}.yield-process span.ok{background:#dcfce7;color:#166534}.yield-process span.need{background:#fee2e2;color:#991b1b}.yield-process p{margin:0;color:#4b5563;font-size:13px;line-height:1.6}.rubric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:18px}.rubric-grid article{border:1px solid #dbeafe;border-radius:8px;background:#f8fbff;padding:12px;display:grid;gap:6px}.rubric-grid strong{color:#0f172a}.rubric-grid span{width:fit-content;border-radius:999px;background:#dcfce7;color:#166534;padding:2px 8px;font-weight:800;font-size:12px}.rubric-grid p{color:#4b5563;line-height:1.6}.simulation-panel{border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;padding:14px;display:grid;gap:10px}.simulation-panel article{border-left:3px solid #2563eb;padding-left:10px}.simulation-panel p{margin:4px 0;color:#1f2937}.simulation-panel small{color:#b45309}.exam-card .question{padding:14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-weight:700}.paper-view{display:grid;gap:14px}.paper-section{padding:18px 20px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.paper-section p{margin:6px 0 10px;color:#4b5563}.paper-section ol,.paper-section ul{margin:0;padding-left:28px;display:grid;gap:14px}.paper-section li{padding-left:4px}.exam-item{display:grid;gap:8px;line-height:1.75}.exam-item p{margin:0;color:#111827;font-weight:600}.exam-options{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:6px 18px;color:#111827}.exam-options span{display:block}.answer-key{border-color:#86efac;background:#f0fdf4}.answer-section-list{display:grid;gap:14px}.answer-section-card{border:1px solid #bbf7d0;border-radius:8px;background:#fff;padding:14px 16px}.answer-section-card h5{margin:0 0 10px;font-size:17px;color:#111827}.answer-entry{display:grid;gap:4px;padding:10px 0;border-top:1px solid #dcfce7}.answer-entry:first-of-type{border-top:0;padding-top:0}.answer-entry strong{color:#1d4ed8}.answer-entry span{color:#111827;font-weight:800;margin-right:4px}.answer-block{display:grid;grid-template-columns:86px 1fr;gap:8px;margin-top:6px;color:#111827;line-height:1.75}.answer-block>span{margin:0;color:#166534}.answer-block.no-label{display:block}.answer-lines{display:grid;gap:6px}.answer-lines p{margin:0;padding-left:12px;border-left:3px solid #dcfce7;color:#111827}.answer-entry p{margin:0;white-space:pre-wrap;color:#111827;line-height:1.75}.recommend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.recommend-grid article{min-height:160px}.recommend-grid svg{color:#1d4ed8}.learning-detail-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:14px;margin-top:16px}.learning-detail-grid article{border:1px solid #dbeafe;border-radius:8px;background:#f8fbff;padding:14px}.learning-detail-grid ul,.learning-detail-grid ol{margin:10px 0 0;padding-left:20px;display:grid;gap:8px}.learning-detail-grid li span{display:block;color:#4b5563;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:static}.tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar,.section-title,.model-banner{display:block}.metrics{justify-content:flex-start;margin-top:16px}.two-col,.graph-wrap,.knowledge-results,.recommend-grid,.learning-detail-grid,.yield-process,.decision-field-grid{grid-template-columns:1fr}}@media(max-width:560px){.workspace{padding:16px}.topbar h2{font-size:24px}.tabs{grid-template-columns:1fr}.metric{width:100%}}
