:root{--blue: #1565c0;--blue-d: #0d47a1;--blue-l: #1e88e5;--blue-50: #e8f1fb;--blue-100: #d6e8fb;--blue-soft: #f5f9ff;--blue-200: #bbdefb;--amber: #ba7517;--amber-d: #854f0b;--amber-50: #fff3e0;--red: #a32d2d;--red-50: #fcebeb;--red-d: #791f1f;--green: #0f6e56;--green-50: #e1f5ee;--line: #e5e7eb;--text3: #6b7280}html,body,#root{height:100%;margin:0}body{font-family:Microsoft YaHei,PingFang SC,Hiragino Sans GB,sans-serif;background:#eef3f9;color:#171616;font-size:14px;line-height:1.6}.app-shell{min-height:100vh}.app-brand{padding:20px 20px 16px;border-bottom:1px solid rgba(255,255,255,.16);color:#fff}.app-brand__logo{width:34px;height:34px;border-radius:8px;background:#fff;color:var(--blue-d);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;margin-bottom:10px}.app-brand__title{font-size:15px;font-weight:600;margin:0 0 3px}.app-brand__sub{font-size:11.5px;margin:0;color:#bbdefb;line-height:1.5}.app-menu-group{padding:12px 20px 6px;font-size:11px;color:#90caf9;letter-spacing:.5px}.app-footer-note{margin:16px;padding:12px 14px;border-radius:8px;background:#ffffff14;font-size:11px;color:#bbdefb;line-height:1.6}.app-topbar{background:#fff;border-bottom:1px solid var(--line);padding:0 24px;height:56px;display:flex;align-items:center;justify-content:space-between}.app-crumb{font-size:12.5px;color:var(--text3)}.app-crumb b{color:var(--blue-d);font-weight:500}.app-stage{padding:22px 26px 44px;max-width:1180px}.ai-block{background:var(--blue-soft);border-left:3px solid var(--blue);border-radius:0 8px 8px 0;padding:12px 15px;font-size:12.5px;color:#4b5563;margin-bottom:16px}.ai-block__title{color:var(--blue-d);font-weight:600;margin-bottom:4px;display:flex;align-items:center;gap:8px}.ai-block--readonly{border-style:dashed}.ai-block--warn{background:var(--amber-50);border-left-color:var(--amber)}.ai-block--warn .ai-block__title{color:var(--amber-d)}.ai-block--danger{background:var(--red-50);border-left-color:var(--red)}.ai-block--danger .ai-block__title{color:var(--red-d)}.ai-block--ok{background:var(--green-50);border-left-color:var(--green)}.ai-block--ok .ai-block__title{color:var(--green)}.human-bar{margin-top:18px;padding:14px 16px;border-radius:10px;background:#fff;border:1px solid var(--blue-200);border-left:4px solid var(--blue)}.human-bar--amber{border-color:#f0c98a;border-left-color:var(--amber)}.human-bar__title{font-size:12.5px;font-weight:600;color:var(--blue-d);margin-bottom:4px}.human-bar--amber .human-bar__title{color:var(--amber-d)}.human-bar__desc{font-size:12px;color:var(--text3);margin-bottom:10px}.stamp{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:7px;font-size:11.5px;font-weight:600;border:1.5px solid;margin-right:8px}.stamp--ai{color:var(--blue-d);border-color:var(--blue-200);background:var(--blue-soft)}.stamp--human{color:var(--amber-d);border-color:#f0c98a;background:var(--amber-50)}.stamp--final{color:var(--red-d);border-color:#efb9b9;background:var(--red-50)}.stamp--muted{color:#5f5e5a;border-color:var(--line);background:#f7f7f5}.doc-preview{border:1px solid var(--line);border-radius:10px;background:#fff;padding:26px 30px;font-size:12.5px;line-height:1.9;color:#4b5563;max-height:460px;overflow:auto}.doc-preview h4{font-size:14px;color:#171616;margin:0 0 4px;text-align:center;font-weight:600}.doc-preview .doc-sub{text-align:center;font-size:11.5px;color:var(--text3);margin-bottom:18px}.doc-preview h5{font-size:12.5px;color:var(--blue-d);margin:16px 0 6px;font-weight:600}.doc-preview .doc-section-group{margin-bottom:14px}.doc-preview .doc-section-name{font-size:12px;color:var(--amber-d);margin:10px 0 4px}.doc-preview .doc-empty-notice{color:var(--amber-d);background:#fff9e6;padding:3px 6px;border-radius:4px;display:inline-block}.hl{background:#fff9e6;padding:1px 4px;border-radius:3px;color:var(--amber-d);font-weight:500}.stepbar{display:flex;align-items:center;gap:0;margin-bottom:20px;flex-wrap:wrap}.stepbar__item{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text3)}.stepbar__num{width:24px;height:24px;border-radius:50%;background:#fff;border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--text3)}.stepbar__item--done .stepbar__num{background:var(--blue);border-color:var(--blue);color:#fff}.stepbar__item--done{color:var(--blue-d);font-weight:500}.stepbar__item--cur .stepbar__num{border-color:var(--blue);color:var(--blue);border-width:2px}.stepbar__item--cur{color:var(--blue);font-weight:600}.stepbar__bar{width:28px;height:1px;background:var(--line);margin:0 9px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0d47a1,#1565c0 55%,#1e88e5);padding:24px}.login-card{width:100%;max-width:880px;background:#fff;border-radius:16px;overflow:hidden;display:grid;grid-template-columns:380px 1fr;box-shadow:0 20px 60px #0d47a147}.login-side{background:var(--blue-d);color:#fff;padding:34px 30px}.login-side h1{font-size:19px;margin:14px 0 8px;font-weight:600}.login-side p{font-size:12.5px;color:#bbdefb;line-height:1.8}.login-form{padding:36px 40px}.login-hint{margin-top:18px;font-size:11.5px;color:var(--text3);line-height:1.9;border-top:1px dashed var(--line);padding-top:14px}.demo-account{cursor:pointer;color:var(--blue);text-decoration:underline dotted}.meta-line{font-size:12px;color:var(--text3);margin-bottom:12px}.required-mark{color:var(--red);margin-left:3px}.trace-step{border-left:2px solid var(--blue-200);margin-left:7px;padding-left:18px}.trace-step__item{position:relative;padding-bottom:16px}.trace-step__item:before{content:"";position:absolute;left:-25px;top:5px;width:10px;height:10px;border-radius:50%;background:#fff;border:2.5px solid var(--blue-200)}.trace-step__title{font-size:13px;font-weight:600;color:var(--blue-d)}.trace-step__desc{font-size:12px;color:#4b5563}.trace-step__meta{font-size:11.5px;color:var(--text3)}.submit-note{font-size:12px;color:var(--text3);margin-top:8px}.inline-actions{display:flex;gap:8px;flex-wrap:wrap}@media print{.app-sidebar,.app-header,.ant-tabs-nav,.human-action-bar,.inline-actions,.ant-btn,.ant-alert,.ant-modal-root,.ant-upload{display:none!important}body,.app-main,.page-card{background:#fff!important;color:#000!important;box-shadow:none!important;border:none!important}table,th,td{border:1px solid #333!important;color:#000!important;font-size:11.5px}.ant-table-expanded-row{display:table-row!important}pre{white-space:pre-wrap!important;word-break:break-all}.page-card:after{content:"本页由「教育场景数字员工」打印生成，打印动作已写入审计留痕（不可删除）。";display:block;margin-top:14px;font-size:10.5px;color:#444}}
