:root{--ink:#1f2937;--muted:#64748b;--line:#e5e7eb;--paper:#fffdf8;--wash:#f6f3ed;--brand:#8b2e2e;--brand-dark:#631e1e;--gold:#bb8b35;--green:#31765a;--shadow:0 10px 32px #30201010}*{box-sizing:border-box}body{margin:0;background:var(--wash);color:var(--ink);font:14px/1.5 "Microsoft YaHei",system-ui,sans-serif}header{min-height:104px;background:linear-gradient(120deg,#221f1c,#3c2924);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:20px max(28px,calc((100vw - 1180px)/2));box-shadow:0 2px 12px #0003}h1,h2,h3,h4,p{margin:0}.eyebrow{font-size:12px;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}.role-switch{display:flex;align-items:center;gap:10px;font-size:13px;color:#e7ded6}.role-switch select{border-color:#695d53;background:#fff;color:var(--ink);min-width:100px}main{max-width:1180px;margin:0 auto;padding:34px 28px 64px}.toolbar,.detail-head,.action-card,.matrix-head{display:flex;justify-content:space-between;align-items:center;gap:18px}.toolbar h2,.detail-head h2{font-size:26px}.toolbar p{margin-top:4px;color:var(--muted)}button,select,input,textarea{font:inherit}button{cursor:pointer;border:0;border-radius:8px;padding:10px 16px;font-weight:700}.primary{background:var(--brand);color:#fff;box-shadow:0 4px 10px #8b2e2e36}.primary:hover{background:var(--brand-dark)}.ghost{border:1px solid #d8cfc3;background:#fffaf2;color:#704a26}.small{padding:7px 12px;font-size:12px}.filters{display:flex;gap:10px;margin:22px 0}input,select,textarea{border:1px solid #d7d9df;border-radius:7px;padding:9px 10px;background:#fff;color:var(--ink)}.filters input{width:320px}.order-list{display:grid;gap:12px}.order{background:var(--paper);border:1px solid #e8e0d7;border-radius:12px;box-shadow:var(--shadow);padding:18px 20px;display:grid;grid-template-columns:1fr auto;gap:10px;cursor:pointer}.order:hover{border-color:#c49a6c}.order h3{font-size:17px}.order p{color:var(--muted);font-size:13px;margin-top:5px}.pill{background:#f4e9d7;color:#784e1e;border-radius:999px;padding:5px 10px;white-space:nowrap;font-size:12px;font-weight:700}.pill.done{background:#dceee5;color:#256246}.back{padding:0;background:transparent;color:var(--brand);font-weight:700}.detail-head{margin-bottom:18px;justify-content:flex-start}.detail-head .pill{margin-left:auto}.order-number{margin-left:auto;border:1px solid #9b2933;border-radius:4px;padding:5px 10px;color:#8b2e2e;background:#fff8f6;font-weight:800;white-space:nowrap}.card{background:var(--paper);border:1px solid #e6dfd7;border-radius:12px;padding:22px;margin:16px 0;box-shadow:var(--shadow)}.paper-sheet{border-radius:3px;background:repeating-linear-gradient(0deg,#fffdf8 0,#fffdf8 36px,#f7f1e9 37px);border-color:#cfc3b5}.phase-title{display:flex;gap:13px;margin-bottom:20px}.phase-title>span{background:var(--brand);color:#fff;display:grid;place-items:center;border-radius:7px;width:34px;height:34px;font-weight:800}.phase h3{font-size:17px}.phase p,.hint{color:var(--muted);font-size:12px;margin-top:2px}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid #d8cfc4}.form-grid label,.wide{display:flex;flex-direction:column;gap:5px;font-weight:700;font-size:13px}.form-grid label{padding:9px;border-right:1px solid #d8cfc4;border-bottom:1px solid #d8cfc4;background:#fffefa}.form-grid input,.form-grid select{border:0;border-radius:0;padding:5px 0;background:transparent}.wide{margin-top:13px}.wide textarea{min-height:72px;resize:vertical}.upload{border:1px dashed #b69a78;border-radius:2px;padding:13px;background:#fffcf7}.first-upload{margin-top:0;margin-bottom:18px}.upload input{border:0;padding:0;background:transparent}.upload span{font-weight:400;color:var(--muted)}#imagePreview{max-width:250px;max-height:260px;object-fit:contain;border:1px solid var(--line);border-radius:2px;margin-top:6px}.paper-analysis{display:grid;grid-template-columns:2fr 1fr;gap:12px}.paper-analysis .leader-fields{grid-template-columns:1fr}.matrix-head{margin-top:22px}.matrix-head h4{font-size:15px}.matrix{overflow:auto;display:grid;grid-template-columns:100px repeat(4,minmax(110px,1fr));border-top:1px solid #bdb2a6;border-left:1px solid #bdb2a6;margin-top:8px}.matrix div{padding:8px;border-right:1px solid #bdb2a6;border-bottom:1px solid #bdb2a6;background:#fff}.matrix .head{background:#eee5d9;font-weight:700;color:#62452c}.matrix input{width:100%;border:0;padding:3px;background:transparent;text-align:center}.number-grid{display:grid;grid-template-columns:repeat(10,minmax(78px,1fr));gap:0;border-top:1px solid #bdb2a6;border-left:1px solid #bdb2a6}.number-cell{min-height:100px;background:#fff;display:grid;grid-template-rows:20px 32px 22px 18px;border-right:1px solid #bdb2a6;border-bottom:1px solid #bdb2a6;padding:4px;position:relative}.number-cell>span{font-size:11px;color:#8b7a67}.number-value{width:100%;border:0!important;border-bottom:1px solid #ddd1c3!important;border-radius:0!important;padding:3px!important;text-align:center;background:transparent!important}.number-cell.approved .number-value{font-weight:900;color:#7b2020;font-size:16px}.approval{display:flex;gap:3px;align-items:center;justify-content:center;font-size:11px;color:#796958}.approval input{margin:0}.approval-date{text-align:center;font-size:10px;color:var(--green);white-space:nowrap}.action-card{position:sticky;bottom:12px;background:#fffaf3;border-color:#dcc8ac}.actions{display:flex;gap:10px;align-items:center}#toast{position:fixed;right:24px;bottom:24px;background:#233127;color:#fff;border-radius:8px;padding:11px 16px;transform:translateY(80px);opacity:0;transition:.2s;box-shadow:var(--shadow)}#toast.show{transform:translateY(0);opacity:1}@media(max-width:720px){header{padding:18px;min-height:auto}.role-switch span{display:none}main{padding:22px 16px}.toolbar,.action-card{align-items:flex-start;flex-direction:column}.filters{flex-wrap:wrap}.filters input{width:100%}.form-grid,.paper-analysis{grid-template-columns:repeat(2,minmax(0,1fr))}.paper-analysis .leader-fields{grid-template-columns:1fr}.number-grid{grid-template-columns:repeat(5,1fr)}.actions{width:100%;flex-wrap:wrap}.detail-head h2,.toolbar h2{font-size:22px}}
@media print{@page{size:A4 portrait;margin:7mm}body{background:#fff;color:#000;font-family:"Microsoft YaHei",sans-serif}body>header,body>main,#toast{display:none!important}#printSheet{display:block!important}.a4-paper{font-size:8.2pt;line-height:1.2}.print-title{min-height:0;background:#fff;color:#000;box-shadow:none;padding:0 0 2mm;display:flex;justify-content:space-between;border-bottom:1px solid #000}.print-title h1{font-size:18pt;letter-spacing:3pt}.print-title p{font-size:8pt;margin-top:1mm}.print-title img{width:29mm;height:23mm;object-fit:contain;border:1px solid #888}.a4-paper h2{font-size:9pt;margin:2.5mm 0 1mm;padding-left:2mm;border-left:3px solid #7b2020}.print-fields{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #777;border-left:1px solid #777}.print-fields div{min-height:9mm;border-right:1px solid #777;border-bottom:1px solid #777;padding:1mm}.print-fields b{display:block;font-size:7pt;color:#555}.print-fields span{display:block;margin-top:.6mm;word-break:break-all}.print-analysis{grid-template-columns:repeat(4,1fr)}table{width:100%;border-collapse:collapse}.print-matrix th,.print-matrix td{height:6mm;text-align:center;border:1px solid #777;padding:1mm}.print-matrix th{background:#eee;font-weight:700}.print-numbers{table-layout:fixed}.print-numbers td{height:13.5mm;border:1px solid #777;padding:.8mm;text-align:center;vertical-align:top}.print-numbers small{display:block;text-align:left;color:#777;font-size:6pt}.print-numbers strong{display:block;font-size:9pt;margin-top:1mm}.print-numbers em{display:block;color:#257348;font-style:normal;font-size:6.5pt;margin-top:1mm}.print-numbers .selected strong{font-weight:900;color:#7b2020}.print-empty{border:1px solid #777;padding:2mm;color:#666}.a4-paper footer{display:flex;justify-content:space-between;border-top:1px solid #777;margin-top:2mm;padding-top:1.5mm;font-size:7pt}.a4-paper footer span{white-space:nowrap}}
@media screen{body{background:radial-gradient(circle at 12% 0,#f9f0e7 0,transparent 29%),#f7f5f1}.detail-head{padding:16px 20px;margin:0 0 14px;background:#fff;border:1px solid #e8ddd0;border-radius:14px;box-shadow:0 7px 20px #5e32130b}.detail-head h2{font-size:22px;letter-spacing:.02em}.card{border-radius:14px;padding:0;overflow:hidden;box-shadow:0 10px 28px #56321a0b;border-color:#e5dbcf}.paper-sheet{background:#fffdf9}.phase-title{align-items:flex-start;padding:20px 24px 17px;margin:0;border-bottom:1px solid #f0e8df;background:linear-gradient(90deg,#fff9f4,#fffdf9 65%)}.phase-title>span{width:40px;height:40px;border-radius:11px;background:linear-gradient(145deg,#a7423e,#7d2424);box-shadow:0 5px 12px #9a39342e}.phase h3{font-size:18px;line-height:1.3}.phase p{font-size:13px;margin-top:4px}.paper-sheet>.form-grid,.paper-sheet>.paper-analysis,.paper-sheet>.wide,.paper-sheet>.matrix,.paper-sheet>.matrix-head,.paper-sheet>.hint,.paper-sheet>.number-grid{margin-left:24px;margin-right:24px}.form-grid{gap:10px;border:0;margin-top:20px}.form-grid label{min-height:82px;padding:12px 14px;border:1px solid #e9e2d8!important;border-radius:10px;background:#fff;box-shadow:0 2px 4px #3a271107}.form-grid label:focus-within{border-color:#a44842!important;box-shadow:0 0 0 3px #a4484214}.form-grid input,.form-grid select{font-weight:600;font-size:15px;color:#273345}.form-grid label{font-size:12px;color:#7c6c5f}.form-grid input::placeholder{font-weight:400;color:#a9a19a}.first-upload{margin-top:20px!important;margin-bottom:0!important;border:1px dashed #cfae8c;background:linear-gradient(90deg,#fff7ee,#fffdf9);padding:18px 20px;border-radius:12px}.upload input{font-size:13px}.upload span{margin-top:3px}.wide{margin-bottom:20px}.wide textarea{border-color:#e5ddd3;background:#fff;border-radius:10px;padding:12px}.paper-analysis{margin-top:20px;gap:10px}.paper-analysis .form-grid{margin-top:0}.matrix-head{margin-top:20px;padding-top:16px;border-top:1px solid #f0e8df}.matrix{border-color:#e2d8cd;border-radius:10px;overflow:hidden}.matrix div{padding:10px;border-color:#e9e1d8}.matrix .head{background:#f8f0e7}.number-grid{margin-top:20px;margin-bottom:24px;border-color:#e2d8cd;border-radius:10px;overflow:hidden}.number-cell{min-height:92px;border-color:#e8e0d7;background:#fffdfb}.number-cell:hover{background:#fff7ef}.action-card{padding:16px 20px;border-radius:14px}.action-card h3{font-size:16px}.order-number{font-size:13px}.primary{border-radius:9px}.ghost{border-radius:9px}.hint{padding-bottom:18px}.order{border-radius:14px}}
@media screen{.upload-copy{display:grid;gap:8px}.upload-copy strong{font-size:16px;color:#3b2921}.upload-copy input{width:max-content}.upload.has-image{display:flex;align-items:center;justify-content:center;min-height:430px;padding:14px;background:#fff;box-shadow:inset 0 0 0 1px #eee6dd}.upload.has-image .upload-copy{display:none}.upload.has-image #imagePreview{display:block!important;width:100%;max-width:100%;max-height:720px;height:auto;object-fit:contain;border:0;margin:0;border-radius:8px}}
@media screen{.customer-fields>.field-spacer{border:1px dashed #e6ddd1;border-radius:10px;background:#fbfaf7}.customer-fields>:nth-child(n+13):nth-child(-n+16){background:#f8f0e7!important;border-color:#e5d4c0!important}.paper-sheet>label.wide{margin:0 24px 20px;padding:14px 16px;border:1px solid #e5d4c0;border-radius:10px;background:#f8f0e7}.paper-sheet>label.wide textarea{background:#fffdfa}}
@media screen{.customer-fields>.shishi-favorable-preview{min-height:82px;padding:12px 14px;border-style:solid!important;background:#fff!important}.shishi-favorable-preview>span{display:block;font-size:12px;font-weight:700;color:#667085}.shishi-favorable-preview>div{display:flex;gap:8px;margin-top:9px}.shishi-favorable-preview b{display:grid;place-items:center;min-width:38px;height:30px;padding:0 9px;border:1px solid #d9e1e8;border-radius:6px;background:#fff;color:#a33a3a;font-size:17px}}
@media screen{.form-grid input::placeholder{color:#aaa39b!important;font-weight:400!important;opacity:1}}
@media screen{body{background:#f7f8fa}.paper-sheet{background:#fff}.detail-head,.card{box-shadow:0 4px 14px #10182808;border-color:#e7eaee}.phase-title{background:#fff;border-bottom-color:#edf0f3}.form-grid label{background:#fff!important;border-color:#e3e7ec!important;box-shadow:none;color:#667085}.form-grid label:focus-within{border-color:#8d3131!important;box-shadow:0 0 0 3px #8d313110}.form-grid input,.form-grid select{color:#1d2939}.customer-fields>.field-spacer{background:#fbfcfd;border-color:#e6eaef}.customer-fields>:nth-child(n+13):nth-child(-n+16){background:#f3f7fa!important;border-color:#dce6ec!important}.paper-sheet>label.wide{background:#f3f7fa;border-color:#dce6ec}.paper-sheet>label.wide textarea{background:#fff;border-color:#dce6ec}.first-upload{background:#fafbfc;border-color:#cfd8e3}.matrix .head{background:#f3f7fa}.number-cell{border-color:#e3e7ec}.number-cell:hover{background:#f8fafc}.order-number{background:#fff;border-color:#d7dce3;color:#6d2525}.phase-title>span{background:#8d3131;box-shadow:none}}
@media screen{.paper-sheet>label.wide{margin-top:10px}}
@media screen{.form-grid select.is-placeholder{color:#aaa39b!important;font-weight:400!important}}
@media screen{.first-upload{padding:0!important;min-height:0!important;border:1px dashed #cbd5e1!important;background:#f8fafc!important}.upload-copy{display:flex;align-items:center;gap:18px;padding:19px 22px}.upload-title{display:flex;align-items:center;gap:11px;flex:1}.upload-title>span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#8d3131;color:#fff;font-size:12px;font-weight:800}.upload-title strong{display:block;font-size:15px;color:#344054;letter-spacing:.01em}.upload-title small{display:block;margin-top:2px;color:#98a2b3;font-size:12px}.file-trigger{display:inline-flex;align-items:center;cursor:pointer}.file-trigger input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.file-trigger span{padding:8px 14px;border-radius:8px;background:#fff;border:1px solid #d0d5dd;color:#344054;font-size:13px;font-weight:600;box-shadow:0 1px 2px #1018280d}.file-trigger:hover span{border-color:#8d3131;color:#8d3131}.upload-copy>#uploadHint{font-size:11px;color:#98a2b3;white-space:nowrap}.upload.has-image{padding:14px!important}}
@media screen{.assistant-entry{margin-top:10px;padding-top:14px;border-top:1px solid #e8edf1}.assistant-entry-title{display:flex;align-items:baseline;gap:8px;margin:0 24px 10px}.assistant-entry-title span{font-size:13px;font-weight:700;color:#496477}.assistant-entry-title p{font-size:12px;color:#98a2b3}.assistant-entry .form-grid{margin:0 24px}.assistant-entry .form-grid label{background:#f3f7fa!important;border-color:#dce6ec!important}.assistant-entry>label.wide{display:flex;flex-direction:column;gap:5px;margin:10px 24px 20px;padding:14px 16px;border:1px solid #dce6ec;border-radius:10px;background:#f3f7fa}.assistant-entry>label.wide textarea{background:#fff;border-color:#dce6ec}.assistant-customer-fields select.is-placeholder{color:#aaa39b!important;font-weight:400!important}}
@media screen{.analysis-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:28px;padding:22px 24px 24px}.analysis-left{min-width:0}.analysis-label{margin-bottom:10px;font-size:13px;font-weight:700;color:#496477}.analysis-fields{grid-template-columns:repeat(3,minmax(0,1fr))!important;margin:0!important}.analysis-fields label{min-height:76px}.analysis-fields>.field-spacer{border:1px dashed #e3e7ec;border-radius:10px;background:#fbfcfd}.analysis-fields>:nth-child(13){grid-column:1/-1}.matrix-side{min-width:0;padding-left:28px;border-left:1px solid #e8edf1}.matrix-side .matrix-head{margin-top:0;padding-top:0;border-top:0}.matrix-side .hint{padding-bottom:0}.matrix-side .matrix{margin-left:0;margin-right:0}.matrix-side .matrix div{font-size:13px}@media(max-width:900px){.analysis-layout{grid-template-columns:1fr}.matrix-side{padding:20px 0 0;border-left:0;border-top:1px solid #e8edf1}}}
@media screen{.matrix{grid-template-columns:78px repeat(4,minmax(0,1fr))}.matrix div{text-align:center;display:flex;align-items:center;justify-content:center}.matrix input{text-align:center}}
@media screen{.matrix .matrix-value input{font-size:16px;color:#a33a3a}.matrix .matrix-value.rejected input{color:#b9bfc8;text-decoration:line-through;text-decoration-thickness:1.5px}.matrix .matrix-value.rejected{background:#fafbfc}}
@media screen and (min-width:1200px){.teacher-image-float{position:fixed;z-index:30;left:20px;top:50%;width:clamp(300px,21vw,440px);padding:8px;background:#fff;border:1px solid #d9e2ea;border-radius:12px;box-shadow:0 12px 32px #10182820;transform:translateY(-50%)}.teacher-image-crop{width:100%;overflow:hidden;border-radius:7px}.teacher-image-float img{display:block;width:190%;max-width:none;height:auto;object-fit:contain}.close-teacher-image-float{position:relative;display:grid;place-items:center;width:30px;height:30px;margin:10px auto 0;padding:0;border:2px solid #fff;border-radius:50%;background:#8d3131;color:#fff;font-size:22px;line-height:1;box-shadow:0 3px 10px #10182838;cursor:pointer}.close-teacher-image-float:hover{background:#702525}}
@media screen{.assistant-customer-fields input,.assistant-customer-fields select{color:#a33a3a!important}.assistant-customer-fields input::placeholder{color:#a33a3a!important;opacity:1}.assistant-customer-fields select.is-placeholder{color:#a33a3a!important}}
@media screen{.analysis-fields input{color:#a33a3a!important}.analysis-fields input::placeholder{color:#a33a3a!important;opacity:1}.analysis-fields input[readonly]{color:#a33a3a!important}}
@media screen{.leader-analysis{padding:22px 24px 24px}.leader-analysis .analysis-label{margin-bottom:10px}.leader-analysis-fields{grid-template-columns:repeat(3,minmax(0,1fr))!important;margin:0!important}.analysis-fields>:last-child{grid-column:1/-1}}
@media screen{.analysis-fields input,.analysis-fields input:disabled,.analysis-fields input[readonly]{background:#fff!important;box-shadow:0 0 0 1000px #fff inset!important;color:#a33a3a!important;-webkit-text-fill-color:#a33a3a!important;font-weight:700!important;opacity:1!important}.analysis-fields .element-input{color:#a33a3a!important;-webkit-text-fill-color:#a33a3a!important}.analysis-fields input:focus{background:#fff!important}}
@media screen{.analysis-fields input[name="destiny"],.analysis-fields input[name="fortune"],.analysis-fields input[name="noble"],.analysis-fields input[name="destiny"]:disabled,.analysis-fields input[name="fortune"]:disabled,.analysis-fields input[name="noble"]:disabled{background:#f1f7fb!important;box-shadow:0 0 0 1000px #f1f7fb inset!important;color:#a33a3a!important;-webkit-text-fill-color:#a33a3a!important}}
@media screen{.analysis-fields input[name="numbers"],.analysis-fields input[name="avoid"],.analysis-fields input[name="tianyi"],.analysis-fields input[name="stars"]{color:#a33a3a!important;-webkit-text-fill-color:#a33a3a!important}}
@media screen{.customer-fields input:not(:placeholder-shown),.customer-fields select:not(.is-placeholder){color:#a33a3a!important}}
@media screen{.matrix.leader-selecting .matrix-value,.matrix.leader-selecting .matrix-value input{cursor:pointer}}
@media screen{.customer-summary{margin:14px 0 0;padding:11px 13px;border:1px solid #e3e7ec;border-radius:8px;background:#f8fafc;color:#526579;font-size:13px;line-height:1.7;word-break:break-all}}
@media screen{.batch-toolbar{display:flex;justify-content:space-between;align-items:center;padding:18px 24px 0}.batch-toolbar h4{font-size:15px}.number-batches{padding:16px 24px 24px;display:grid;gap:16px}.number-batch{border:1px solid #dfe6ec;border-radius:12px;background:#fbfcfd;overflow:hidden}.batch-head{display:flex;justify-content:space-between;align-items:center;padding:11px 14px;background:#f1f6fa}.batch-head label{font-weight:700;color:#50677c}.batch-head input{margin-left:8px;padding:5px 7px}.batch-columns,.batch-entry{display:grid;grid-template-columns:150px minmax(0,1fr) 230px;gap:12px;align-items:center}.batch-columns{padding:9px 14px;color:#667085;font-size:12px;font-weight:700;border-bottom:1px solid #e2e8ee}.batch-entry{padding:9px 14px;border-bottom:1px solid #e8edf1}.batch-entry:before{content:' ';}.batch-entry input{width:100%;border-color:#d8e0e7}.batch-entry{grid-template-columns:150px minmax(0,1fr) 230px 26px}.batch-entry .batch-number{grid-column:2}.batch-entry .batch-note{grid-column:2}.batch-confirm{grid-column:3;display:flex;gap:10px;align-items:center}.batch-confirm label{white-space:nowrap}.remove-entry{grid-column:4;padding:3px 7px;color:#a33a3a;background:transparent}.add-entry{margin:10px 14px 14px}.batch-entry .batch-note{margin-top:5px}.batch-entry{grid-template-rows:auto auto}.batch-entry:before{grid-row:1/3}.batch-entry .batch-number,.batch-entry .batch-confirm,.remove-entry{grid-row:1}.batch-entry .batch-note{grid-row:2}.batch-entry .batch-confirm{align-self:center}@media(max-width:720px){.batch-columns{display:none}.batch-entry{grid-template-columns:1fr 24px}.batch-entry:before{display:none}.batch-entry .batch-number,.batch-entry .batch-note,.batch-entry .batch-confirm{grid-column:1}.remove-entry{grid-column:2;grid-row:1}.batch-confirm{grid-row:3!important}.batch-head{align-items:flex-start;gap:8px;flex-direction:column}}}
@media screen{.batch-head{justify-content:flex-start;gap:18px}.batch-head .batch-source{width:210px}.batch-head label{display:flex;align-items:center;white-space:nowrap}}
@media screen and (min-width:721px){.batch-columns{grid-template-columns:150px minmax(160px,.8fr) minmax(160px,1.2fr) 230px 26px}.batch-columns span:nth-child(2){grid-column:2/4}.batch-columns span:nth-child(3){grid-column:4}.batch-entry{grid-template-columns:150px minmax(160px,.8fr) minmax(160px,1.2fr) 230px 26px;grid-template-rows:auto}.batch-entry:before{grid-row:1}.batch-entry .batch-number{grid-column:2;grid-row:1}.batch-entry .batch-note{grid-column:3;grid-row:1;margin-top:0}.batch-entry .batch-confirm{grid-column:4;grid-row:1}.batch-entry .remove-entry{grid-column:5;grid-row:1}}
@media screen{.add-batch-footer{padding:0 24px 24px;text-align:left}}
@media screen{.batch-confirm .available-label{display:flex;align-items:center;gap:6px;color:#475467;font-weight:600;white-space:nowrap}.batch-confirm .available-label span{display:inline!important}}
@media screen{.marker-only{display:none!important}#numberScreening.marker-visible .marker-only{display:flex!important;align-items:center;justify-content:center}#numberScreening.marker-visible .batch-columns{grid-template-columns:150px 58px minmax(160px,.8fr) minmax(160px,1.2fr) 230px 26px}#numberScreening.marker-visible .batch-columns .number-header{grid-column:3/5}#numberScreening.marker-visible .batch-columns span:last-child{grid-column:5}#numberScreening.marker-visible .batch-entry{grid-template-columns:150px 58px minmax(160px,.8fr) minmax(160px,1.2fr) 230px 26px}#numberScreening.marker-visible .marker-cell{grid-column:2;grid-row:1}#numberScreening.marker-visible .batch-number{grid-column:3;grid-row:1}#numberScreening.marker-visible .batch-note{grid-column:4;grid-row:1}#numberScreening.marker-visible .batch-confirm{grid-column:5;grid-row:1}#numberScreening.marker-visible .remove-entry{grid-column:6;grid-row:1}}
@media screen{.analysis-label{margin-bottom:27px;font-size:15px;color:#1f2937}.analysis-fields{margin-top:0!important}}
@media screen{.shishi-matrix-view .analysis-layout{grid-template-columns:1fr}.shishi-matrix-view .matrix-side{padding-left:0;border-left:0}.shishi-matrix-view .matrix-head{justify-content:flex-start}.shishi-matrix-view .matrix-head button{display:none}}
@media screen{.analysis-fields{transform:translateY(-5px)}}
@media screen{.analysis-label{transform:translateY(5px)}}
@media screen{.matrix-side .customer-summary{margin-top:26px}}
@media screen and (min-width:721px){#numberScreening.marker-visible .batch-columns{grid-template-columns:320px 90px minmax(250px,.8fr) minmax(380px,1.2fr) 400px 26px}#numberScreening.marker-visible .batch-entry{grid-template-columns:320px 90px minmax(250px,.8fr) minmax(380px,1.2fr) 400px 26px;min-height:102px;padding-top:16px;padding-bottom:16px}#numberScreening.marker-visible .batch-confirm{gap:14px}#numberScreening.marker-visible .batch-confirm .available-label{font-size:16px;color:#667085}#numberScreening.marker-visible .batch-confirm .batch-available-date{max-width:290px}}
@media screen and (min-width:721px){#numberScreening.marker-visible .batch-columns,#numberScreening.marker-visible .batch-entry{grid-template-columns:280px 80px minmax(190px,.8fr) minmax(280px,1.2fr) minmax(300px,.85fr) 26px;width:100%}#numberScreening.marker-visible .batch-columns .marker-only{grid-column:2!important}#numberScreening.marker-visible .batch-columns .number-header{grid-column:3/5!important}#numberScreening.marker-visible .batch-columns>span:last-child{grid-column:5!important}#numberScreening.marker-visible .marker-cell{grid-column:2!important;grid-row:1!important}#numberScreening.marker-visible .batch-number{grid-column:3!important;grid-row:1!important}#numberScreening.marker-visible .batch-note{grid-column:4!important;grid-row:1!important}#numberScreening.marker-visible .batch-confirm{grid-column:5!important;grid-row:1!important}#numberScreening.marker-visible .remove-entry{grid-column:6!important;grid-row:1!important}}
@media screen and (min-width:721px){#numberScreening.marker-visible .batch-entry{min-height:0;padding-top:9px;padding-bottom:9px}}
@media screen and (min-width:721px){#numberScreening.marker-visible .batch-columns,#numberScreening.marker-visible .batch-entry{grid-template-columns:90px minmax(130px,.55fr) minmax(360px,1.65fr) minmax(300px,.85fr)}#numberScreening:not(.marker-visible) .batch-columns,#numberScreening:not(.marker-visible) .batch-entry{grid-template-columns:90px minmax(130px,.55fr) minmax(360px,1.65fr) minmax(300px,.85fr)}}
@media screen and (min-width:721px){#numberScreening:not(.marker-visible) .batch-columns,#numberScreening:not(.marker-visible) .batch-entry{grid-template-columns:280px minmax(220px,.8fr) minmax(300px,1.2fr) minmax(300px,.85fr) 26px;width:100%}#numberScreening:not(.marker-visible) .batch-columns .number-header{grid-column:2/4!important}#numberScreening:not(.marker-visible) .batch-columns>span:last-child{grid-column:4!important}#numberScreening:not(.marker-visible) .batch-number{grid-column:2!important;grid-row:1!important}#numberScreening:not(.marker-visible) .batch-note{grid-column:3!important;grid-row:1!important}#numberScreening:not(.marker-visible) .batch-confirm{grid-column:4!important;grid-row:1!important}#numberScreening:not(.marker-visible) .remove-entry{grid-column:5!important;grid-row:1!important}}
@media screen and (min-width:721px){#numberScreening:not(.marker-visible) .batch-columns,#numberScreening:not(.marker-visible) .batch-entry{grid-template-columns:90px minmax(220px,.8fr) minmax(300px,1.2fr) minmax(300px,.85fr);width:100%}#numberScreening:not(.marker-visible) .delete-heading{grid-column:1!important}#numberScreening:not(.marker-visible) .batch-columns .number-header{grid-column:2/4!important}#numberScreening:not(.marker-visible) .batch-columns>span:last-child{grid-column:4!important}#numberScreening:not(.marker-visible) .batch-number{grid-column:2!important;grid-row:1!important}#numberScreening:not(.marker-visible) .batch-note{grid-column:3!important;grid-row:1!important}#numberScreening:not(.marker-visible) .batch-confirm{grid-column:4!important;grid-row:1!important}#numberScreening:not(.marker-visible) .remove-entry{grid-column:1!important;grid-row:1!important;justify-self:center}#numberScreening.marker-visible .delete-heading{display:none!important}#numberScreening.marker-visible .batch-columns,#numberScreening.marker-visible .batch-entry{grid-template-columns:90px minmax(190px,.8fr) minmax(280px,1.2fr) minmax(300px,.85fr)}#numberScreening.marker-visible .batch-columns .marker-only{grid-column:1!important}#numberScreening.marker-visible .batch-columns .number-header{grid-column:2/4!important}#numberScreening.marker-visible .batch-columns>span:last-child{grid-column:4!important}#numberScreening.marker-visible .marker-cell{grid-column:1!important}#numberScreening.marker-visible .batch-number{grid-column:2!important}#numberScreening.marker-visible .batch-note{grid-column:3!important}#numberScreening.marker-visible .batch-confirm{grid-column:4!important}#numberScreening.marker-visible .remove-entry{display:none!important}}
@media screen and (min-width:721px){#numberScreening:not(.marker-visible) .delete-heading{justify-self:center;text-align:center}#numberScreening .add-entry{margin-left:117px;padding:7px 12px;font-size:12px}}
@media screen{.batch-confirm .unavailable-label{display:flex;align-items:center;gap:6px;color:#8d3131;font-weight:600;white-space:nowrap}.batch-entry.unavailable{background:#fffafa}.batch-entry.unavailable input:not([type="checkbox"]){color:#b23a3a!important;border-color:#ebc5c5}.batch-entry.unavailable .batch-number{text-decoration:line-through;text-decoration-thickness:1.5px}.batch-entry.unavailable .batch-confirm label{color:#b23a3a}}
@media screen{.batch-entry.available{background:#f5fbf7}.batch-entry.available input:not([type="checkbox"]){color:#26734f!important;border-color:#bfe0cb}.batch-entry.available .batch-confirm label{color:#26734f}.batch-entry.available .batch-number{text-decoration:none}}
@media screen and (min-width:721px){#numberScreening:not(.marker-visible) .batch-columns,#numberScreening:not(.marker-visible) .batch-entry{grid-template-columns:70px minmax(170px,.8fr) minmax(260px,1.2fr) minmax(220px,.85fr) minmax(150px,.65fr);gap:14px;width:100%}#numberScreening:not(.marker-visible) .delete-heading,#numberScreening:not(.marker-visible) .remove-entry{grid-column:1!important}#numberScreening:not(.marker-visible) .number-header,#numberScreening:not(.marker-visible) .batch-number{grid-column:2!important}#numberScreening:not(.marker-visible) .note-header,#numberScreening:not(.marker-visible) .batch-note{grid-column:3!important}#numberScreening:not(.marker-visible) .confirm-header,#numberScreening:not(.marker-visible) .batch-confirm{grid-column:4!important}#numberScreening:not(.marker-visible) .date-header,#numberScreening:not(.marker-visible) .batch-available-date{grid-column:5!important}#numberScreening.marker-visible .batch-columns,#numberScreening.marker-visible .batch-entry{grid-template-columns:70px minmax(170px,.8fr) minmax(260px,1.2fr) minmax(220px,.85fr) minmax(150px,.65fr);gap:14px;width:100%}#numberScreening.marker-visible .marker-only{grid-column:1!important}#numberScreening.marker-visible .number-header,#numberScreening.marker-visible .batch-number{grid-column:2!important}#numberScreening.marker-visible .note-header,#numberScreening.marker-visible .batch-note{grid-column:3!important}#numberScreening.marker-visible .confirm-header,#numberScreening.marker-visible .batch-confirm{grid-column:4!important}#numberScreening.marker-visible .date-header,#numberScreening.marker-visible .batch-available-date{grid-column:5!important}#numberScreening.marker-visible .delete-heading,#numberScreening.marker-visible .remove-entry{display:none!important}.batch-entry .batch-available-date{grid-row:1!important;margin:0!important}.batch-confirm{display:flex;flex-wrap:wrap;gap:8px 12px}.batch-confirm label{display:flex;align-items:center;gap:5px;font-size:14px;white-space:nowrap}.batch-columns .confirm-header,.batch-columns .date-header{grid-row:auto!important}.batch-columns span{text-align:left}}
@media screen and (max-width:720px){.batch-entry .batch-available-date{grid-column:1!important;grid-row:4!important;margin-top:6px}.batch-columns .note-header,.batch-columns .confirm-header,.batch-columns .date-header{display:none}}
@media screen and (min-width:721px){#numberScreening.marker-visible .batch-columns,#numberScreening.marker-visible .batch-entry{grid-template-columns:52px minmax(145px,.48fr) minmax(290px,1.25fr) minmax(295px,1.1fr) minmax(190px,.7fr);gap:14px}#numberScreening.marker-visible .batch-columns>span,#numberScreening.marker-visible .batch-entry>*{grid-row:1!important}#numberScreening.marker-visible .marker-only{grid-column:1!important}#numberScreening.marker-visible .number-header,#numberScreening.marker-visible .batch-number{grid-column:2!important}#numberScreening.marker-visible .note-header,#numberScreening.marker-visible .batch-note{grid-column:3!important}#numberScreening.marker-visible .confirm-header,#numberScreening.marker-visible .batch-confirm{grid-column:4!important}#numberScreening.marker-visible .date-header,#numberScreening.marker-visible .batch-available-date{grid-column:5!important}#numberScreening.marker-visible .batch-confirm{flex-wrap:nowrap;gap:12px;justify-content:flex-start}#numberScreening.marker-visible .batch-confirm label{font-size:15px}#numberScreening.marker-visible .batch-confirm .delivery-label,#numberScreening.marker-visible .batch-confirm .delivery-label span{color:#1f7a52!important;font-weight:800!important}.batch-confirm .delivery-label{display:flex;align-items:center;gap:5px;white-space:nowrap}}
@media screen and (min-width:721px){#numberScreening:not(.marker-visible) .batch-columns,#numberScreening:not(.marker-visible) .batch-entry{grid-template-columns:52px minmax(145px,.48fr) minmax(290px,1.25fr) minmax(295px,1.1fr) minmax(190px,.7fr);gap:14px}#numberScreening:not(.marker-visible) .batch-columns>span,#numberScreening:not(.marker-visible) .batch-entry>*{grid-row:1!important}#numberScreening:not(.marker-visible) .delete-heading,#numberScreening:not(.marker-visible) .remove-entry{grid-column:1!important}#numberScreening:not(.marker-visible) .number-header,#numberScreening:not(.marker-visible) .batch-number{grid-column:2!important}#numberScreening:not(.marker-visible) .note-header,#numberScreening:not(.marker-visible) .batch-note{grid-column:3!important}#numberScreening:not(.marker-visible) .confirm-header,#numberScreening:not(.marker-visible) .batch-confirm{grid-column:4!important}#numberScreening:not(.marker-visible) .date-header,#numberScreening:not(.marker-visible) .batch-available-date{grid-column:5!important}#numberScreening:not(.marker-visible) .batch-confirm{flex-wrap:nowrap;gap:12px;justify-content:flex-start}#numberScreening:not(.marker-visible) .batch-confirm label{font-size:15px}#numberScreening:not(.marker-visible) .batch-confirm .delivery-label,#numberScreening:not(.marker-visible) .batch-confirm .delivery-label span{color:#1f7a52!important;font-weight:800!important}}
@media screen{body>header{position:sticky;top:0;z-index:1000}}
@media screen{#printSheet{display:none!important}}
@media screen{.customer-fields input[name="phone"]::placeholder{color:#a33a3a!important;opacity:1}}
@media screen{.customer-fields input::placeholder,.customer-fields select.is-placeholder{color:#a33a3a!important;opacity:1}}
@media screen{input:focus::placeholder,textarea:focus::placeholder{color:transparent!important}}
@media screen{.assistant-customer-fields input[name="deliveryNumber"]::placeholder{font-weight:700!important;color:#a33a3a!important;opacity:1}}
@media screen{#customerEntry .assistant-entry{margin-top:20px}.first-upload{background:#fff!important}.upload-title>span{display:none!important}.upload-title{gap:0}.upload-title small{margin-top:3px!important;color:#a33a3a!important;font-size:15px!important;font-weight:400!important}.upload-copy{padding-left:22px!important}}
@media screen{.element-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:4px}.analysis-fields .element-slots input{min-width:0;height:30px!important;padding:3px!important;border:1px solid #d9e1e8!important;border-radius:6px!important;background:#fff!important;text-align:center;font-size:14px!important;font-weight:600}.analysis-fields .element-slots input::placeholder{font-size:11px;color:#b3bdc9}.analysis-fields input[readonly]{color:#496477!important;background:#f8fafc!important;cursor:default}.analysis-fields label:has(.element-slots){padding-bottom:8px}}
@media screen{.analysis-fields>:nth-child(11){grid-column:span 2}.analysis-fields>:nth-child(12){display:none}.analysis-fields>:nth-child(11) input{letter-spacing:.02em}}
@media screen{.analysis-fields label:has(input[name="destiny"]),.analysis-fields label:has(input[name="fortune"]),.analysis-fields label:has(input[name="noble"]){background:#f1f7fb!important;border-color:#d8e6ef!important;box-shadow:none!important}}
@media screen{.analysis-fields input[name="numbers"],.analysis-fields input[name="avoid"],.analysis-fields input[name="tianyi"],.analysis-fields input[name="stars"]{background:transparent!important}.matrix{border-color:#d8e3eb!important}.matrix div{border-color:#e1e9ef!important;background:#fff!important}.matrix .head{background:#eef4f8!important;color:#35556f!important}.matrix-value.highlighted{background:#eaf4fa!important}.matrix-value.highlighted input{background:transparent!important}.matrix-value.rejected{background:#fff!important}.matrix-value.highlighted.rejected{background:#eaf4fa!important}.matrix .matrix-fuwei{background:#fff!important}}
@media screen{#customerEntry{padding-bottom:20px}}
/* 登录、工作台与流程提醒 */
.workflow-card { margin-bottom: 22px; padding: 22px 24px 18px; border: 1px solid #e0e7ee; border-radius: 14px; background: #fff; box-shadow: 0 4px 14px #10182808; }.workflow-heading { display: grid; grid-template-columns: auto 1fr auto auto; gap: 18px; align-items: center; }.workflow-heading h2 { font-size: 28px; }.workflow-steps { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; list-style: none; padding: 19px 0 0; margin: 18px 0 0; border-top: 1px solid #edf0f3; }.workflow-step { position: relative; min-width: 0; display: grid; grid-template-columns: 27px 1fr; gap: 8px; align-items: start; color: #98a2b3; font-size: 12px; line-height: 1.4; }.workflow-step::after { content: ''; position: absolute; top: 13px; left: calc(100% - 2px); width: 10px; height: 2px; background: #dfe5eb; }.workflow-step:last-child::after { display: none; }.workflow-step b { display: grid; place-items: center; width: 27px; height: 27px; border: 1px solid #d0d8e1; border-radius: 50%; background: #fff; font-size: 12px; }.workflow-step strong, .workflow-step span { display: block; }.workflow-step strong { color: inherit; }.workflow-step span { margin-top: 2px; font-size: 11px; }.workflow-step.done { color: #23704d; }.workflow-step.done b { color: #fff; border-color: #23704d; background: #23704d; }.workflow-step.current { color: #8d3131; }.workflow-step.current b { color: #fff; border-color: #8d3131; background: #8d3131; box-shadow: 0 0 0 4px #f5e7e2; }.workflow-step.done::after { background: #23704d; }
.workflow-footer { margin-top: 22px; padding-top: 0; }.workflow-footer .workflow-steps { margin-top: 0; border-top: 0; }
.operation-history { margin: 22px 0; padding: 20px 24px; border: 1px solid #e0e7ee; border-radius: 14px; background: #fff; box-shadow: 0 4px 14px #10182808; }.operation-history h3 { font-size: 17px; }.history-list { display: grid; gap: 9px; margin-top: 13px; }.history-item { display: grid; grid-template-columns: 72px 1fr; gap: 2px 12px; padding: 11px 12px; border-radius: 8px; background: #fafbfc; }.history-item strong { color: #8d3131; }.history-item span { color: #667085; font-size: 12px; }.history-item p { grid-column: 1 / -1; margin: 3px 0 0; color: #475467; font-size: 13px; }
.order { position: relative; }.order-actions { display: flex; align-items: center; gap: 10px; }.order-delete { width: 128px; min-width: 128px; min-height: 40px; border: 1px solid #e7a29e; background: #fff; color: #b42318; font-size: 13px; }.order-delete:hover { background: #fff3f2; border-color: #d95d57; }.order .pill { width: 128px; min-width: 128px; min-height: 40px; display: inline-flex; align-items: center; justify-content: center; padding: 8px 10px; border: 1px solid #e4caa7; border-radius: 9px; background: #fff8ea; color: #8a5a1d; text-align: center; font-size: 12px; }.order .pill.done { border-color: #b9dcc9; }
.toolbar { margin-top: 22px; padding: 22px 24px 16px; background: #fff; border: 1px solid #e0e7ee; border-bottom: 0; border-radius: 14px 14px 0 0; }.filters { margin: 0; padding: 0 24px 18px; background: #fff; border-left: 1px solid #e0e7ee; border-right: 1px solid #e0e7ee; }.order-list { padding: 0 24px 24px; background: #fff; border: 1px solid #e0e7ee; border-top: 0; border-radius: 0 0 14px 14px; }.order-list .order { margin: 0; }.order-list .card { margin: 0; }#demo { display: none !important; }
@media (max-width: 720px) { .toolbar { padding: 18px 16px 12px; }.filters { padding: 0 16px 14px; }.order-list { padding: 0 16px 16px; }.order { grid-template-columns: 1fr; }.order-actions { grid-column: 1; justify-content: flex-start; flex-wrap: wrap; }.order-delete, .order .pill { width: auto; min-width: 118px; } }
.toolbar h2 { font-size: 21px; }.toolbar p { font-size: 12px; letter-spacing: .08em; }.filters #newOrder { margin-left: 0; }.filters { align-items: center; }
.order-list > .card { min-height: 150px; margin: 0; padding: 28px 24px; display: grid; place-items: center; align-content: center; gap: 9px; border: 1px dashed #cbd7e2; background: linear-gradient(135deg, #fbfdff, #f4f8fb); box-shadow: none; text-align: center; }.order-list > .card::before { content: '暂无服务单'; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: #eaf2f8; color: #53738c; font-size: 12px; font-weight: 700; }.order-list > .card p { color: #667f95; font-size: 14px; }
.order-list > .card { min-height: 112px; }.order-list > .card::before { display: none; }
.role-switch { display: none; }
[hidden] { display: none !important; }
body:not(.authenticated) > header, body:not(.authenticated) > main, body:not(.authenticated) > .app-footer, body:not(.authenticated) > #printSheet, body:not(.authenticated) > #toast { display: none; }
.auth-view { min-height: 100vh; display: grid; place-items: center; padding: 24px; background: linear-gradient(135deg, #241f1c, #7d3c37 48%, #f0ded2); }
.auth-card { width: min(100%, 430px); background: #fff; padding: 34px; border-radius: 18px; box-shadow: 0 22px 60px #0003; display: grid; gap: 14px; }
.auth-card h1, .auth-card h2 { font-size: 25px; color: #273345; }.auth-copy { color: #667085; margin-bottom: 4px; }.auth-card label { display: grid; gap: 6px; color: #475467; font-weight: 700; }.auth-card input { padding: 12px; border-radius: 9px; }.primary-button { background: #8d3131; color: #fff; padding: 12px; border-radius: 9px; }.form-message { min-height: 20px; color: #b42318; }.form-message.success { color: #16794b; }.modal-backdrop { position: fixed; inset: 0; z-index: 3000; display: grid; place-items: center; background: #10182880; padding: 20px; }.modal-card { box-shadow: 0 26px 70px #0005; }
.header-actions { display: flex; align-items: center; gap: 10px; }.login-name { color: #f4e9df; font-size: 13px; }.logout-button, .notification-button { border: 1px solid #67554a; background: #fff; color: #3b2a23; padding: 8px 11px; font-size: 12px; }.notification-button b { margin-left: 5px; background: #8d3131; color: #fff; border-radius: 99px; padding: 1px 6px; }.notification-button:not(.has-notifications) b { display: none; }
.workbench { margin-bottom: 22px; padding: 20px; border: 1px solid #e0e7ee; border-radius: 14px; background: #fff; box-shadow: 0 4px 14px #10182808; }.workbench-heading h2 { margin-top: 3px; font-size: 21px; }.dashboard-cards { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-top: 16px; }.dashboard-card { min-height: 90px; padding: 14px; border-radius: 10px; background: #f4f8fb; border: 1px solid #e0e8ef; display: grid; gap: 2px; text-align: left; color: inherit; cursor: pointer; transition: border-color .15s, box-shadow .15s, transform .15s; }.dashboard-card:hover, .dashboard-card.active { border-color: #a7514b; box-shadow: 0 5px 13px #8d31311c; transform: translateY(-1px); }.dashboard-card.active { background: #fff7f4; }.dashboard-card span, .dashboard-card small { font-size: 12px; color: #667085; }.dashboard-card strong { font-size: 27px; color: #8d3131; }.dashboard-tasks { margin-top: 18px; padding-top: 14px; border-top: 1px solid #edf0f3; }.dashboard-tasks h3 { font-size: 15px; }.task-list { display: grid; gap: 8px; margin-top: 10px; }.task-item { width: 100%; display: flex; justify-content: space-between; align-items: center; padding: 10px 12px; border-radius: 8px; background: #fafbfc; color: inherit; text-align: left; cursor: pointer; }.task-item:hover { background: #fff7f4; }.task-item div { display: grid; gap: 2px; }.task-item span { font-size: 12px; color: #667085; }.task-arrow { color: #8d3131 !important; font-weight: 700; }.task-empty { padding: 10px 0; color: #98a2b3; font-size: 13px; }.actions #saveDraft { background: #fff; }
.notification-panel { position: fixed; top: 82px; right: 24px; z-index: 2000; width: min(380px, calc(100vw - 32px)); padding: 14px; border: 1px solid #e0e7ee; border-radius: 12px; background: #fff; box-shadow: 0 18px 45px #10182824; }.notification-panel h3 { font-size: 16px; margin-bottom: 8px; }.notification-item { width: 100%; text-align: left; padding: 11px 5px; border-radius: 0; border-bottom: 1px solid #edf0f3; background: transparent; display: grid; gap: 3px; color: #344054; font-weight: 400; }.notification-item:hover { background: #f8fafc; }.notification-item strong { font-size: 13px; }.notification-item span, .notification-item small { color: #667085; font-size: 12px; }.notification-item.read { opacity: .58; }
@media (max-width: 720px) { .header-actions { gap: 6px; }.login-name { display: none; }.notification-button { padding: 7px; }.dashboard-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }.workbench { padding: 16px; }.role-switch select { min-width: 82px; } }
@media (max-width: 900px) { .workflow-heading { grid-template-columns: auto 1fr; gap: 10px; }.workflow-heading .order-number, .workflow-heading .pill { grid-column: 2; justify-self: start; }.workflow-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }.workflow-step::after { display: none; } }
.app-footer { max-width: 1180px; margin: -34px auto 28px; padding: 0 28px; text-align: center; color: #98a2b3; font-size: 12px; }
@media screen{.task-item{min-height:76px;padding:13px 16px;border:1px solid #bfd5e5;border-left:5px solid #8d3131;border-radius:10px;background:#eef6fb;box-shadow:0 2px 7px #35556f12;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s}.task-item:hover{border-color:#8d3131;background:#fff4f1;box-shadow:0 6px 15px #8d31311c;transform:translateY(-1px)}.task-item strong{color:#273345;font-size:16px}.task-item .task-arrow{padding:5px 9px;border-radius:6px;background:#fff;color:#8d3131!important;box-shadow:0 1px 2px #10182812}}
@media screen and (min-width:1200px){.teacher-image-float{left:auto;right:20px}}
@media print { .app-footer { display: none !important; } }
.workflow-heading #statusPill { display: none; }.workflow-heading .order-number-editor { grid-column: 3 / -1; justify-self: end; margin-left: 0; display: flex; align-items: center; gap: 4px; white-space: nowrap; }.order-number-editor input { width: 56px; padding: 4px 5px; border: 0; border-bottom: 1px solid #c9d2dc; border-radius: 0; background: transparent; color: inherit; font-weight: 800; text-align: center; }.order-number-editor input:focus { outline: 0; border-bottom-color: #8d3131; }.order-number-editor input[readonly] { border-bottom-color: transparent; cursor: default; }
@media screen { .dual-phase-title { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; padding: 20px 24px 17px; border-bottom: 1px solid #edf0f3; background: #fff; } .dual-phase-step { display: flex; align-items: flex-start; gap: 13px; min-width: 0; } .dual-phase-step + .dual-phase-step { padding-left: 24px; border-left: 1px solid #edf0f3; } .dual-phase-step > span { display: grid; flex: 0 0 auto; place-items: center; width: 40px; height: 40px; border-radius: 11px; background: #8d3131; color: #fff; font-weight: 800; } .dual-phase-step h3 { font-size: 18px; line-height: 1.3; } .dual-phase-step p { margin-top: 4px; color: #667085; font-size: 13px; } }
@media (max-width: 720px) { .dual-phase-title { grid-template-columns: 1fr; gap: 16px; } .dual-phase-step + .dual-phase-step { padding: 16px 0 0; border-top: 1px solid #edf0f3; border-left: 0; } }
@media screen { .form-grid input[type="date"] { font-weight: 400; } }
@media screen { .form-grid input[type="date"] { cursor: pointer; } .form-grid input[type="date"]::-webkit-calendar-picker-indicator { cursor: pointer; opacity: 1; } }
@media screen { .customer-fields input:disabled, .customer-fields select:disabled, .assistant-customer-fields input:disabled, .assistant-customer-fields select:disabled { color: #a33a3a !important; -webkit-text-fill-color: #a33a3a; background: transparent !important; opacity: 1; font-weight: 600; } }
@media screen { .order .pill { width: fit-content; max-width: none; min-width: 128px; padding-left: 14px; padding-right: 14px; white-space: nowrap; } }
@media screen { .customer-fields input, .customer-fields select { background: #fff !important; color: #a33a3a !important; -webkit-text-fill-color: #a33a3a; font-weight: 600; } }
@media screen { .customer-fields input:disabled, .customer-fields select:disabled { background-color: #fff !important; -webkit-appearance: none; appearance: none; } .customer-fields input::selection { background: #fff; color: #a33a3a; } }
@media screen { .customer-fields input:disabled { background: #fff !important; -webkit-box-shadow: 0 0 0 1000px #fff inset !important; box-shadow: 0 0 0 1000px #fff inset !important; color: #a33a3a !important; -webkit-text-fill-color: #a33a3a !important; font-weight: 700 !important; user-select: none; } }
@media screen and (min-width:721px) {
  #numberScreening .batch-columns, #numberScreening .batch-entry { grid-template-columns:52px minmax(145px,.48fr) minmax(290px,1.25fr) minmax(295px,1.1fr) minmax(190px,.7fr) !important; gap:14px; }
  #numberScreening .batch-columns > span, #numberScreening .batch-entry > * { grid-row:1 !important; }
  #numberScreening:not(.marker-visible) .delete-heading, #numberScreening:not(.marker-visible) .remove-entry { grid-column:1 !important; }
  #numberScreening.marker-visible .marker-only { grid-column:1 !important; }
  #numberScreening .number-header, #numberScreening .batch-number { grid-column:2 !important; }
  #numberScreening .note-header, #numberScreening .batch-note { grid-column:3 !important; }
  #numberScreening .confirm-header, #numberScreening .batch-confirm { grid-column:4 !important; }
  #numberScreening .date-header, #numberScreening .batch-available-date { grid-column:5 !important; }
  #numberScreening.marker-visible .delete-heading, #numberScreening.marker-visible .remove-entry { display:none !important; }
  #numberScreening .batch-confirm { display:flex; flex-wrap:nowrap; gap:14px; align-items:center; }
}
@media screen {
  #numberScreening.screening-stage-four .confirm-header, #numberScreening.screening-stage-four .date-header, #numberScreening.screening-stage-four .batch-confirm, #numberScreening.screening-stage-four .batch-available-date { visibility:hidden; }
  #numberScreening.screening-stage-five .batch-available-date { display:none; }
  #numberScreening.screening-stage-five .batch-entry.is-available .batch-available-date { display:block; }
  #numberScreening.screening-stage-five .batch-confirm { min-height:34px; }
  .delivery-choice-wrap { margin-top:18px; padding:15px 17px; border:1px solid #dce6ed; border-radius:10px; background:#f8fafc; }
  .delivery-choice-wrap > b { display:block; color:#334155; font-size:14px; }
  .delivery-choices { display:flex; flex-wrap:wrap; gap:10px; margin-top:11px; }
  .delivery-choices label { display:grid; grid-template-columns:auto auto; gap:2px 7px; align-items:center; min-width:180px; padding:9px 11px; border:1px solid #cfe2d5; border-radius:8px; background:#fff; cursor:pointer; }
  .delivery-choices label input { grid-row:1 / 3; }
  .delivery-choices label span { color:#1f7a52; font-weight:800; }
  .delivery-choices label small { color:#667085; font-size:12px; }
  .delivery-choices p { color:#667085; font-size:13px; }
}
#toast { left: 50%; right: auto; top: 50%; bottom: auto; transform: translate(-50%, -40%); z-index: 3100; } #toast.show { transform: translate(-50%, -50%); }
.delivery-fulfillment { margin-top: 22px; padding: 22px 24px; }.delivery-heading > div { display: flex; align-items: flex-start; gap: 13px; }.delivery-heading span { display: grid; place-items: center; flex: 0 0 auto; width: 40px; height: 40px; border-radius: 11px; background: #8d3131; color: #fff; font-weight: 800; }.delivery-heading h3 { font-size: 18px; line-height: 1.3; }.delivery-heading p { margin-top: 4px; color: #667085; font-size: 13px; }.delivery-summary { display: grid; grid-template-columns: 120px 1fr; gap: 6px 14px; margin-top: 20px; padding: 16px 18px; border: 1px solid #dce6ed; border-radius: 10px; background: #f5f9fc; }.delivery-summary span { color: #526b80; font-size: 13px; }.delivery-summary strong { color: #9d342e; font-size: 21px; }.delivery-summary small { grid-column: 2; color: #667085; }.customer-activated { display: inline-flex; align-items: center; gap: 9px; margin-top: 16px; color: #8d3131; font-weight: 800; }.customer-reselect { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px; align-items: end; margin-top: 18px; padding-top: 18px; border-top: 1px solid #edf0f3; }.customer-reselect label { display: grid; gap: 7px; color: #475467; font-size: 13px; font-weight: 700; }.customer-reselect textarea { min-height: 76px; resize: vertical; background: #fff; color: #a33a3a; -webkit-text-fill-color: #a33a3a; font-weight: 600; }.customer-reselect button { min-height: 44px; white-space: nowrap; }
@media (max-width: 720px) { .delivery-fulfillment { padding: 18px; }.delivery-summary { grid-template-columns: 1fr; }.delivery-summary small { grid-column: 1; }.customer-reselect { grid-template-columns: 1fr; }.customer-reselect button { width: 100%; } }
.completion-modal { position: fixed; inset: 0; z-index: 3200; display: grid; place-items: center; padding: 20px; background: #10182880; }.completion-modal[hidden] { display: none; }.completion-modal-card { width: min(420px, 100%); padding: 28px; border-radius: 14px; background: #fff; box-shadow: 0 24px 64px #0004; text-align: center; }.completion-modal-card h3 { color: #243144; font-size: 20px; }.completion-modal-card p { margin: 10px 0 22px; color: #667085; }.completion-modal-card button { min-width: 108px; }
@media print { @page { size: A4 portrait; margin: 6mm; } .a4-paper { font-size: 7pt; line-height: 1.18; color: #151515; } .print-title { padding: 0 0 1.6mm; border-bottom: 1.2px solid #222; } .print-title h1 { font-size: 16pt; letter-spacing: 2pt; } .print-title h1 small { font-size: 8pt; letter-spacing: 0; } .print-title p { font-size: 7pt; } .print-upload { display: grid; place-items: center; margin: 2mm 0 1.5mm; page-break-inside: avoid; } .print-upload img { display: block; width: 100%; max-height: 34mm; object-fit: contain; border: 1px solid #777; } .print-upload figcaption { margin-top: .6mm; color: #555; font-size: 6.3pt; } .a4-paper h2 { margin: 1.8mm 0 .8mm; padding-left: 1.5mm; border-left-width: 2.5px; font-size: 8.5pt; } .print-fields { grid-template-columns: repeat(5, 1fr); } .print-fields div { min-height: 7.2mm; padding: .75mm 1mm; } .print-fields b { font-size: 6.2pt; } .print-fields span { margin-top: .35mm; font-size: 7.2pt; } .print-analysis { grid-template-columns: repeat(4, 1fr); } .print-matrix { table-layout: fixed; } .print-matrix th, .print-matrix td { height: 4.8mm; padding: .6mm; font-size: 7pt; } .print-batches { table-layout: fixed; } .print-batches th, .print-batches td { border: 1px solid #777; padding: .7mm; vertical-align: top; word-break: break-all; } .print-batches th { background: #eee; text-align: center; font-size: 6.3pt; } .print-batches td { font-size: 6.7pt; } .print-batches th:nth-child(1) { width: 5%; } .print-batches th:nth-child(2) { width: 10%; } .print-batches th:nth-child(3) { width: 11%; } .print-batches th:nth-child(4) { width: 14%; } .print-batches th:nth-child(5) { width: 26%; } .print-batches th:nth-child(6) { width: 10%; } .print-batches th:nth-child(7) { width: 11%; } .print-batches th:nth-child(8) { width: 9%; } .print-completion { display: grid; grid-template-columns: 1fr 1fr 2fr; border-top: 1px solid #777; border-left: 1px solid #777; } .print-completion div, .print-remark { border-right: 1px solid #777; border-bottom: 1px solid #777; padding: 1mm; } .print-completion b, .print-remark b { display: block; color: #555; font-size: 6.3pt; } .print-completion strong, .print-completion span, .print-remark span { display: block; margin-top: .45mm; font-size: 7.2pt; word-break: break-all; } .print-completion strong { color: #7b2020; } .print-remark { border-left: 1px solid #777; min-height: 8mm; } }
@media print { .a4-paper { min-height: 285mm; display: flex; flex-direction: column; } .print-upload { margin: 1.8mm 0 1.2mm; } .print-upload img { width: 100%; height: auto; max-height: none; object-fit: fill; } .print-analysis-combo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.5mm; align-items: stretch; page-break-inside: avoid; } .print-analysis-combo > div { min-width: 0; display: flex; flex-direction: column; } .print-analysis-combo h2 { margin-top: 1.8mm; } .print-analysis-combo .print-analysis { grid-template-columns: repeat(3, minmax(0, 1fr)); flex: 1; } .print-analysis-combo .print-fields div { min-height: 6.2mm; } .print-analysis-combo .print-matrix { height: 100%; flex: 1; } .print-analysis-combo .print-matrix th, .print-analysis-combo .print-matrix td { height: auto; padding: .4mm; font-size: 6.3pt; } .print-retention { margin-top: 1.8mm; } .print-remark { min-height: 18mm; } }
@media print { .print-matrix td.rejected { color: #8a8a8a; text-decoration: line-through; text-decoration-thickness: 1px; } }
@media print { .print-analysis-layout .span-2 { grid-column: span 2; } .print-analysis-layout .span-3 { grid-column: 1 / -1; } }
@media screen and (min-width:721px) {
  #numberScreening .batch-columns .confirm-header,
  #numberScreening .batch-columns .date-header {
    display:block !important;
    min-width:0;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
    line-height:20px;
  }
  #numberScreening.screening-stage-four .batch-columns .confirm-header,
  #numberScreening.screening-stage-four .batch-columns .date-header { visibility:hidden; }
}
@media screen and (min-width:721px) {
  #numberScreening.screening-stage-five .batch-columns,
  #numberScreening.screening-stage-five .batch-entry {
    grid-template-columns:52px 180px minmax(360px, 1fr) 230px 240px !important;
  }
  #numberScreening.screening-stage-five .batch-available-date {
    display:block !important;
    visibility:hidden;
    width:100%;
    transform:translateX(-10px);
  }
  #numberScreening.screening-stage-five .batch-entry.is-available .batch-available-date {
    visibility:visible;
  }
}
@media screen{.assistant-entry.shishi-assistant-preview .assistant-customer-fields{grid-template-columns:repeat(3,minmax(0,1fr))!important}.assistant-entry.shishi-assistant-preview>label.wide{display:none!important}}
@media screen{.batch-head .batch-no-source-label{gap:8px;padding:7px 14px;border:1px solid #c94a44;border-radius:7px;background:#fff7f6;color:#9c332f}.batch-no-source{width:17px;height:17px;accent-color:#a33a3a}.number-batch.no-source .batch-columns,.number-batch.no-source .batch-entries,.number-batch.no-source .add-entry{display:none}.number-batch.no-source::after{content:'本批次已记录：无号源，无需填写筛选号码。';display:block;padding:16px 14px;color:#9c332f;font-weight:700;background:#fff9f8}#numberScreening.shishi-submitted-screening .confirm-header,#numberScreening.shishi-submitted-screening .date-header,#numberScreening.shishi-submitted-screening .batch-confirm,#numberScreening.shishi-submitted-screening .batch-available-date{visibility:hidden}}
@media print{.print-batches thead{display:table-header-group}.print-batches tr{page-break-inside:avoid}.print-batches .print-no-source td{background:#f7eeee;font-weight:400}}
@media screen and (min-width:721px){#numberScreening.screening-stage-five .batch-columns,#numberScreening.screening-stage-five .batch-entry{grid-template-columns:52px 170px minmax(300px,1fr) 210px 200px!important}#numberScreening.screening-stage-five .batch-available-date{width:200px;transform:none}}
@media screen{.delivery-fulfillment{padding:20px!important;border-color:#e6ddd1!important;background:#fffdf9}.delivery-heading{padding-bottom:14px;border-bottom:1px solid #eee5da}.delivery-heading span{width:36px;height:36px;border-radius:10px;background:#9a3631}.delivery-heading h3{font-size:17px}.delivery-heading p{font-size:12px}.delivery-choice-wrap{margin-top:14px!important;padding:13px 15px!important;border-color:#dfe9e4!important;background:#f8fbf9!important}.delivery-choice-wrap>b{font-size:13px}.delivery-choices{margin-top:9px!important;gap:8px!important}.delivery-choices label{min-width:205px;padding:10px 12px;border-color:#c9dfd1;border-radius:9px;transition:border-color .15s,box-shadow .15s}.delivery-choices label:has(input:checked){border-color:#27815a;box-shadow:0 0 0 2px #27815a22;background:#fcfffd}.delivery-choices label input{accent-color:#27815a}.delivery-summary{grid-template-columns:135px minmax(0,1fr)!important;gap:3px 12px!important;margin-top:12px!important;padding:13px 15px!important;border-color:#d8e5ed!important;border-radius:9px!important;background:#f4f9fc!important}.delivery-summary span{align-self:center;font-weight:700;color:#516b7f}.delivery-summary strong{font-size:25px!important;letter-spacing:.4px}.delivery-summary small{line-height:1.5}.customer-activated{margin-top:12px!important;padding:9px 13px;border:1px solid #ead8d3;border-radius:8px;background:#fff7f5}.customer-activated input{width:17px;height:17px;accent-color:#9a3631}.customer-reselect{grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-top:12px!important;padding:14px 15px!important;border:1px solid #eee3d8!important;border-radius:9px;background:#fffaf5}.customer-reselect textarea{min-height:64px!important;border-color:#ddd4ca}.customer-reselect button{min-height:42px;border-color:#d9cbbd;background:#fffdf9}.customer-reselect button:hover{background:#f9f1e8}}
@media screen and (max-width:720px){.delivery-summary{grid-template-columns:1fr!important}.delivery-summary small{grid-column:1}.customer-reselect{grid-template-columns:1fr}.customer-reselect button{width:100%}}
@media screen{.delivery-status-row{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:12px;margin-top:12px}.delivery-status-row .delivery-summary{margin-top:0!important}.delivery-status-row .customer-activated{display:flex;justify-content:center;min-height:100%;margin-top:0!important;padding:13px 16px;font-size:16px}}
@media screen and (max-width:720px){.delivery-status-row{grid-template-columns:1fr}.delivery-status-row .customer-activated{min-height:0;justify-content:flex-start}}
@media print{.print-upload{display:block!important;height:calc(55mm + 30px);overflow:hidden;margin:1mm 0 .8mm!important;border:1px solid #777}.print-upload img{display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:cover!important;object-position:top!important;border:0!important}.print-upload figcaption{display:none!important}.a4-paper>h2:first-of-type{margin-top:1mm!important}}
@media print{.print-completion{grid-template-columns:1fr 1fr 1.6fr 1.6fr!important}.print-completion div{min-height:10mm}.print-retention .print-remark{display:none!important}}
@media screen{#numberScreening .batch-toolbar{padding:14px 20px 0}#numberScreening .batch-toolbar h4{font-size:15px;color:#40566b}#numberScreening .number-batches{padding:12px 20px 18px;gap:12px}#numberScreening .number-batch{border-color:#dfe7ed;border-radius:10px;background:#fff}#numberScreening .batch-head{min-height:58px;padding:9px 16px;background:#f4f8fb;gap:14px}#numberScreening .batch-head label{font-size:13px;color:#5c7184}#numberScreening .batch-head input{height:34px;margin-left:6px;padding:4px 9px;font-size:13px;font-weight:500;color:#445b70}#numberScreening .batch-head .batch-source{width:205px}#numberScreening .batch-no-source-label{padding:6px 11px!important;border-color:#e7b9b5!important;background:#fffafa!important;color:#aa625d!important}#numberScreening .batch-columns{min-height:42px;padding:8px 16px;font-size:12px;font-weight:600;color:#8a9aaa;background:#fbfcfd;border-bottom-color:#e8eef2}#numberScreening .batch-entry{min-height:58px;padding:8px 16px;border-bottom-color:#edf1f4;font-size:13px}#numberScreening .batch-entry input{height:36px;padding:5px 10px;font-size:13px;font-weight:500;color:#546b7d}#numberScreening .batch-confirm{gap:10px!important}#numberScreening .batch-confirm label{font-size:13px!important;font-weight:600}#numberScreening .batch-entry.available{background:#fbfefc}#numberScreening .batch-entry.unavailable{background:#fffdfd}#numberScreening .add-entry{margin:9px 16px 12px;padding:6px 11px;font-size:12px}#numberScreening .add-batch-footer{padding:0 20px 18px}#numberScreening .add-batch-footer button{font-size:12px}#numberScreening .number-batch.no-source::after{padding:12px 16px;font-size:13px;font-weight:500;color:#a96a66;background:#fffafa}#numberScreening .number-batch.no-source .batch-head{background:#fdf8f7}}
@media screen{#numberScreening .batch-head{min-height:52px;padding-block:8px}#numberScreening .batch-head label,#numberScreening .batch-head input{font-size:12px}#numberScreening .batch-no-source-label{height:34px!important;box-sizing:border-box;padding:0 10px!important;font-size:12px!important}#numberScreening .batch-no-source-label input{width:15px;height:15px;margin:0;padding:0}#numberScreening .batch-entry input[type="checkbox"]{width:16px!important;height:16px!important;margin:0!important;padding:0!important;flex:0 0 auto}#numberScreening .marker-cell{display:flex!important;align-items:center;justify-content:center}#numberScreening .batch-mark{accent-color:#75899a}#numberScreening .batch-entry.unavailable .batch-available-date{visibility:hidden!important}}
