@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}}:root{--ink:#152033;--muted:#718096;--line:#e6eaf0;--blue:#2f6fed;--blue-dark:#2054c7;--blue-soft:#edf4ff;--bg:#f5f7fa;--card:#fff;--green:#17835a;--orange:#d47b16;--red:#d34b40}.login-page{background:radial-gradient(circle at 75% 15%,#315c9b 0 1px,#0000 2px),linear-gradient(135deg,#0e1d32,#172b47 60%,#203c63);place-items:center;min-height:100vh;padding:28px;display:grid}.login-card{background:#fff;border-radius:18px;width:min(430px,100%);padding:32px;box-shadow:0 30px 80px #07101f66}.login-brand{align-items:center;gap:12px;display:flex}.login-brand>span{color:#fff;background:#2f6fed;border-radius:11px;place-items:center;width:43px;height:43px;font-size:22px;font-weight:900;display:grid}.login-brand strong,.login-brand small{display:block}.login-brand strong{font-size:18px}.login-brand small{color:#8391a4;letter-spacing:2px;margin-top:3px;font-size:10px}.login-heading{margin:27px 0 22px}.login-heading p{color:#2f6fed;letter-spacing:2px;margin:0;font-size:9px;font-weight:900}.login-heading h1{margin:7px 0 6px;font-size:25px}.login-heading span{color:#7a8798;font-size:11px}.login-card>label{color:#526176;margin-top:14px;font-size:11px;font-weight:700;display:block}.login-card>label input,.login-card>label select{background:#fbfcfe;border:1px solid #dbe2ec;border-radius:8px;outline:none;width:100%;height:43px;margin-top:7px;padding:0 12px}.login-card>label input:focus,.login-card>label select:focus{border-color:#75a2f5;box-shadow:0 0 0 3px #edf4ff}.login-error{color:#c1433b;margin:10px 0 0;font-size:10px}.login-submit{width:100%;height:44px;margin-top:18px}.demo-accounts{border-top:1px solid #e9edf2;margin-top:20px;padding-top:16px}.demo-accounts>b{color:#8793a3;margin-bottom:8px;font-size:9px;display:block}.demo-accounts>span{grid-template-columns:85px 1fr auto;gap:7px;padding:5px 0;font-size:9px;display:grid}.demo-accounts i,.demo-accounts em{color:#7b899b;font-style:normal}.demo-accounts strong{color:#33465f}.logout-button{border-left:1px solid #e5e9ef!important;margin-left:12px!important;padding-left:18px!important}.role-readonly{pointer-events:none;opacity:.92;position:relative}.role-readonly:before{content:"工程审核只读资料";z-index:2;color:#a96412;background:#fff2dd;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:800;position:absolute;top:18px;right:18px}.machining-page{padding-bottom:45px}.machining-summary{grid-template-columns:repeat(4,1fr);gap:12px;margin:0 32px 18px;display:grid}.machining-summary>div{color:#fff;background:#14263e;border-radius:10px;padding:17px 18px}.machining-summary span,.machining-summary strong,.machining-summary small{display:block}.machining-summary span{color:#94a8c2;font-size:9px}.machining-summary strong{margin:7px 0 4px;font-size:24px}.machining-summary strong.over{color:#ffb05a}.machining-summary small{color:#8296af;font-size:9px}.machining-grid{grid-template-columns:minmax(360px,.8fr) minmax(480px,1.2fr);gap:16px;margin:0 32px;display:grid}.machining-form,.machining-table{padding:22px}.machining-form>label{color:#526176;margin-top:14px;font-size:10px;font-weight:700;display:block}.machining-form input,.machining-form select,.machining-form textarea{background:#fbfcfe;border:1px solid #dce2ea;border-radius:7px;outline:none;width:100%;margin-top:7px;padding:0 10px}.machining-form input,.machining-form select{height:40px}.machining-form textarea{resize:vertical;height:78px;padding-top:10px}.machining-fields{grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;display:grid}.machining-fields label{color:#526176;font-size:10px;font-weight:700}.machining-submit{width:100%;margin-top:14px}.machine-log-list{gap:9px;display:grid}.machine-log-list article{background:#fafbfd;border:1px solid #e2e7ee;border-radius:8px;padding:12px 85px 12px 13px;position:relative}.machine-log-list article>div{align-items:center;gap:9px;display:flex}.machine-log-list article>div b{font-size:11px}.machine-log-list article>div span{color:#2d63bd;background:#eaf1fd;border-radius:4px;padding:3px 6px;font-size:9px}.machine-log-list article>strong{color:#176c4e;font-size:18px;position:absolute;top:13px;right:13px}.machine-log-list article p{color:#8390a0;margin:6px 0 0;font-size:9px}.machine-log-list article small{color:#59697c;margin-top:6px;font-size:9px;display:block}.machine-log-list article>button{color:#c34c43;background:0 0;border:0;font-size:9px;position:absolute;bottom:10px;right:13px}.empty-machine{color:#8c98a8;flex-direction:column;justify-content:center;align-items:center;min-height:320px;display:flex}.empty-machine b{font-size:12px}.empty-machine span{margin-top:7px;font-size:9px}.record-link{color:#17243a;text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:11px;font-weight:800;-webkit-text-decoration:underline #9ab8ed;text-decoration:underline #9ab8ed}.record-link:hover{color:#2f6fed;text-decoration-color:#2f6fed}.dropzone.needs-file{background:#fffaf2;border-color:#e7b66c}.dropzone.needs-file .upload-icon{color:#b66b10;background:#fff0d8}.dropzone.needs-file em{color:#b66b10;font-weight:700}.report-sheet.pdf-exporting .report-summary>div{min-height:68px!important;padding:12px 11px 16px!important}.report-sheet.pdf-exporting .report-summary span{font-size:9px!important;line-height:16px!important}.report-sheet.pdf-exporting .report-summary strong{white-space:normal!important;margin-top:4px!important;padding-bottom:3px!important;font-size:11px!important;line-height:20px!important;overflow:visible!important}.report-sheet.pdf-exporting .report-score strong{padding-bottom:3px!important;line-height:28px!important}.report-sheet.pdf-exporting .report-section li{line-height:1.9!important}.customer-combo{width:100%;height:47px;background:0 0!important;border:0!important;margin:0!important;display:block!important;position:relative!important;overflow:visible!important}.customer-combo input{background:#fbfcfe!important;border:1px solid #dce2ea!important;border-radius:7px!important;width:100%!important;height:40px!important;margin-top:7px!important;padding-right:48px!important;display:block!important}.customer-combo input:focus{border-color:#75a2f5!important;box-shadow:0 0 0 3px #edf4ff!important}.customer-combo select{text-align:center;color:#4e6684!important;width:42px!important;height:38px!important;box-shadow:none!important;background:#f3f7fd!important;border:0!important;border-left:1px solid #e7ebf1!important;border-radius:0 6px 6px 0!important;margin:0!important;padding:0 4px!important;font-size:10px!important;position:absolute!important;top:8px!important;right:1px!important}.customer-combo select:disabled{cursor:not-allowed;color:#a8b2bf!important;background:#f7f8fa!important}.auto-read{color:#17805a;background:#e7f7ef;border-radius:999px;margin-left:7px;padding:3px 7px;font-size:9px;font-style:normal;font-weight:700;display:inline-block}.manual-read{color:#a86412;background:#fff3df;border-radius:999px;margin-left:7px;padding:3px 7px;font-size:9px;font-style:normal;font-weight:700;display:inline-block}.restore-auto{color:#2f6fed;background:#edf4ff;border:0;border-radius:5px;margin-left:7px;padding:3px 7px;font-size:9px;font-weight:700}.mold-formula{color:#66768a;background:#f5f8fc;border-radius:6px;margin:8px 0 0;padding:8px 10px;font-size:9px;line-height:1.6}.material-cost-card{background:#f8fbff;border:1px solid #dce6f2;border-radius:8px;margin-top:9px;padding:11px 12px}.material-cost-title{justify-content:space-between;align-items:center;display:flex}.material-cost-title span{color:#315d9c;font-size:10px;font-weight:800}.material-cost-title b{color:#176b4e;font-size:15px}.material-cost-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:9px;display:grid}.material-cost-grid p{background:#fff;border:1px solid #e7edf4;border-radius:6px;margin:0;padding:7px 8px}.material-cost-grid span,.material-cost-grid strong{display:block}.material-cost-grid span{color:#8895a5;font-size:8px}.material-cost-grid strong{color:#33465e;margin-top:3px;font-size:10px}.material-cost-card>small{color:#718198;margin-top:8px;font-size:9px;display:block}.size-row.detected input{color:#176848;cursor:not-allowed;background:#f2faf6;border-color:#bcded0}.size-row.detected label span{color:#56947d}.size-help{color:#8996a7;margin:7px 0 0;font-size:9px}.size-help.detected-unit{color:#26785b;background:#edf9f3;border-radius:6px;padding:7px 9px;line-height:1.55}.cavity-input>span{white-space:nowrap;font-weight:700;color:#64758a!important}.wechat-preview{z-index:150;background:#0d1726cc;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.wechat-preview-card{background:#fff;border-radius:15px;flex-direction:column;width:min(680px,100%);max-height:94vh;display:flex;overflow:hidden;box-shadow:0 24px 70px #07101f66}.wechat-preview-card>header{border-bottom:1px solid #e5e9ef;justify-content:space-between;align-items:center;padding:17px 20px;display:flex}.wechat-preview-card>header strong,.wechat-preview-card>header small{display:block}.wechat-preview-card>header strong{font-size:16px}.wechat-preview-card>header small{color:#8390a1;margin-top:4px;font-size:10px}.wechat-preview-card>header button{color:#526174;background:#f0f3f7;border:0;border-radius:50%;width:30px;height:30px;font-size:20px;line-height:1}.wechat-image-wrap{text-align:center;background:#edf2f6;flex:1;min-height:0;padding:16px;overflow:auto}.wechat-image-wrap img{width:min(420px,100%);height:auto;margin:0 auto;display:block;box-shadow:0 5px 20px #263b5530}.wechat-guide{background:#f1faf6;border-top:1px solid #d8eee4;padding:13px 20px}.wechat-guide b,.wechat-guide span{display:block}.wechat-guide b{color:#176c4d;font-size:11px}.wechat-guide span{color:#607366;margin-top:4px;font-size:10px}.wechat-preview-card>footer{border-top:1px solid #e5e9ef;justify-content:flex-end;gap:9px;padding:14px 20px;display:flex}.status-select{color:#aa6414;background:#fff6e9;border:1px solid #f0dcc2;border-radius:999px;outline:none;max-width:118px;padding:6px 9px;font-size:9px}.status-select:focus{box-shadow:0 0 0 3px #fff1dc}.status-select.approved{color:#177653;background:#edf9f4;border-color:#bfe4d5}.status-select.returned{color:#b74840;background:#fff4f3;border-color:#edcbc8}.quote-table .tr{grid-template-columns:1.05fr 1.15fr .48fr .58fr .78fr .45fr .58fr .32fr}.delete-heading,.delete-cell{text-align:center}.delete-cell button{color:#c44d44;background:#fff7f6;border:1px solid #efc8c5;border-radius:6px;padding:6px 10px;font-size:10px;font-weight:700}.delete-cell button:hover{color:#fff;background:#d9534a;border-color:#d9534a}.share-cell{text-align:center}.share-cell button{color:#14704f;white-space:nowrap;background:#edf9f4;border:1px solid #b8d8cb;border-radius:6px;padding:7px 10px;font-size:10px;font-weight:700}.share-cell button:hover{color:#fff;background:#177b58;border-color:#177b58}.share-cell.locked button{color:#8a97a7;background:#f5f7f9;border-color:#dfe4ea}.share-cell.locked button:hover{color:#59687a;background:#e9edf2;border-color:#cad2dc}.share-cell small{margin-top:4px!important;display:block!important}@media print{.app-shell,.report-toolbar{display:none!important}.report-modal{background:#fff!important;position:static!important;overflow:visible!important}.report-sheet{width:auto!important;min-height:auto!important;box-shadow:none!important;margin:0!important;padding:12mm!important}.report-section{break-inside:avoid}@page{size:A4;margin:0}}.report-modal{z-index:100;background:#e9eef4;position:fixed;inset:0;overflow:auto}.report-toolbar{z-index:2;background:#132238;justify-content:flex-end;align-items:center;gap:10px;height:58px;padding:0 28px;display:flex;position:sticky;top:0;box-shadow:0 3px 12px #101d2e33}.report-toolbar button{color:#405168;background:#fff;border:1px solid #d8e0ea;border-radius:7px;padding:9px 16px;font-weight:700}.report-toolbar .report-print{color:#fff;background:#2f6fed;border-color:#2f6fed}.report-sheet{background:#fff;width:210mm;min-height:297mm;margin:22px auto;padding:16mm;box-shadow:0 8px 32px #21334d26}.report-head{border-bottom:3px solid #1d4f98;justify-content:space-between;padding-bottom:14px;display:flex}.report-head>div:first-child strong,.report-head>div:first-child small{display:block}.report-head>div:first-child strong{font-size:22px}.report-head>div:first-child small{letter-spacing:2px;color:#718096;margin-top:4px;font-size:10px}.report-head h1{text-align:right;margin:0;font-size:22px}.report-head p{color:#718096;text-align:right;margin:6px 0 0;font-size:10px}.report-summary{background:#dfe5ed;border:1px solid #dfe5ed;grid-template-columns:repeat(4,1fr);gap:1px;margin:18px 0;display:grid}.report-summary>div{background:#f8fafc;min-width:0;padding:11px}.report-summary span,.report-summary strong{display:block}.report-summary span{color:#718096;font-size:9px}.report-summary strong{text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:12px;overflow:hidden}.report-score{color:#fff;background:#132238;border-radius:8px;grid-template-columns:repeat(3,1fr);gap:20px;padding:15px 18px;display:grid}.report-score span,.report-score strong{display:block}.report-score span{color:#9eb1c8;font-size:9px}.report-score strong{margin-top:6px;font-size:18px}.report-section{break-inside:avoid;border:1px solid #e1e6ed;border-radius:7px;margin-top:14px;overflow:hidden}.report-section h2{color:#24579f;background:#f2f6fb;margin:0;padding:8px 11px;font-size:11px}.report-section ul{grid-template-columns:1fr 1fr;gap:6px 20px;margin:0;padding:11px 26px;display:grid}.report-section li{color:#4d5d72;font-size:9px;line-height:1.55}.report-section.split{border-color:#ebd6b5}.report-section.split h2{color:#a45f0c;background:#fff7ea}.report-section.risk{border-color:#efd1cd}.report-section.risk h2{color:#b4473d;background:#fff3f1}.report-price{color:#fff;background:#132238;border-radius:8px;justify-content:space-between;align-items:center;margin-top:16px;padding:14px 17px;display:flex}.report-price span{color:#9eb1c8;font-size:10px}.report-price strong{font-size:25px}.report-sign{grid-template-columns:1fr 1fr;gap:50px;margin-top:34px;display:grid}.report-sign div{color:#718096;border-top:1px solid #8d99a8;padding-top:8px;font-size:10px}.report-note{color:#7d8998;margin-top:18px;font-size:9px;line-height:1.7}.split-card{background:#fafbfd;border:1px solid #dfe6ef;border-radius:9px;margin-top:12px;padding:13px}.split-card>div{align-items:center;gap:9px;margin-bottom:10px;display:flex}.split-card>div>span{color:#3d6598;background:#e7eef8;border-radius:7px;place-items:center;width:26px;height:26px;font-weight:900;display:grid}.split-card>div>small{color:#8290a2;font-size:10px}.split-card>div>strong{margin-left:auto;font-size:13px}.split-card ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.split-card li{color:#5f6e80;padding-left:12px;font-size:10px;line-height:1.5;position:relative}.split-card li:before{content:"";background:#7894b7;border-radius:50%;width:4px;height:4px;position:absolute;top:6px;left:1px}.split-card.suggest{background:#fffbf5;border-color:#f0d9b6}.split-card.suggest>div>span{color:#b76b10;background:#fff0d9}.split-card.suggest>div>strong{color:#b76b10}.split-card.critical{background:#fff8f7;border-color:#f0c7c4}.split-card.critical>div>span{color:#c34b41;background:#fde5e2}.split-card.critical>div>strong{color:#c34b41}.split-card.safe{background:#f7fcf9;border-color:#cfe9dd}.split-card.safe>div>span{color:#187a55;background:#e1f5eb}.split-card.safe>div>strong{color:#187a55}.result-block.tool{background:#f8faff;border:1px solid #e4ebf8;border-radius:8px;margin-top:12px;padding:13px}.result-block.tool h4 span{color:#235fcf;background:#dfeaff;border-radius:6px;width:22px;height:22px}.result-block.tool li:before{background:#4d82df}.mold-heading-row{justify-content:space-between;align-items:flex-end;gap:12px;margin-top:14px;display:flex}.mold-heading-row>.group-label{flex:1;margin:0}.mold-mode-select{width:145px}.mold-mode-select>span{color:#607086;margin-bottom:5px;font-size:9px;font-weight:700;display:block}.mold-mode-select select{color:#34475e;background:#fff;border:1px solid #d9e1eb;border-radius:6px;width:100%;height:34px;padding:0 8px;font-size:10px}.lower-mold-thickness{background:#f6f9fe;border:1px solid #d9e6f7;border-radius:7px;align-items:flex-end;gap:12px;margin-top:8px;padding:9px 10px;display:flex}.lower-mold-thickness label{width:31%}.lower-mold-thickness label span{color:#5d6e84;margin-bottom:5px;font-size:9px;display:block}.lower-mold-thickness input{border:1px solid #d6dfeb;border-radius:6px;width:100%;height:36px;padding:0 10px}.lower-mold-thickness small{color:#6380a6;padding-bottom:9px;font-size:9px}.material-cost-grid.split-cost{grid-template-columns:repeat(2,1fr)}@media (max-width:720px){.mold-heading-row{flex-direction:column;align-items:stretch}.mold-mode-select{width:100%}.lower-mold-thickness{flex-direction:column;align-items:stretch}.lower-mold-thickness label{width:100%}.material-cost-grid.split-cost{grid-template-columns:1fr}}.mold-pair-grid{grid-template-columns:1fr;gap:9px;margin-top:8px;display:grid}.mold-size-card{background:#fafcff;border:1px solid #dce5f0;border-radius:8px;padding:10px 11px 11px}.mold-size-card.upper{background:#f7faff;border-color:#b9d3ff}.mold-size-card.lower{background:#f7fcf9;border-color:#c9dfd4}.mold-size-card.same{margin-top:8px}.mold-size-card-title{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.mold-size-card-title b{color:#294c7a;font-size:10px}.mold-size-card.lower .mold-size-card-title b{color:#277056}.mold-size-card-title small{color:#8a98aa;font-size:8px}.mold-size-card .size-row input{background:#fff}.mold-size-card.upper .size-row input{border-color:#cbdcf6}.mold-size-card.lower .size-row input{border-color:#cfe3d9}.core-pull-size-section{background:#fffaf2;border:1px solid #efcfa2;border-radius:8px;margin-top:10px;padding:11px}.core-pull-size-head,.core-pull-item-title{justify-content:space-between;align-items:center;display:flex}.core-pull-size-head b,.core-pull-size-head small{display:block}.core-pull-size-head b{color:#9a5b12;font-size:10px}.core-pull-size-head small{color:#9b8871;margin-top:3px;font-size:8px}.core-pull-size-head em{color:#a05c0b;background:#ffe8c2;border-radius:999px;padding:4px 8px;font-size:9px;font-style:normal;font-weight:800}.core-pull-size-list{gap:8px;margin-top:9px;display:grid}.core-pull-size-list article{background:#fff;border:1px solid #f0dec5;border-radius:7px;padding:9px}.core-pull-item-title{margin-bottom:1px}.core-pull-item-title b{color:#66513b;font-size:9px}.core-pull-item-title small{color:#a08b75;font-size:8px}.core-pull-size-list .size-row input{background:#fffdf9;border-color:#eadbc7}.core-pull-cost{background:#fff9ec!important;border-color:#efcf9d!important}.core-pull-cost em{color:#b56a12;margin-top:3px;font-size:8px;font-style:normal;font-weight:800;display:block}.cavity-field{grid-column:1/-1}.cavity-input{position:relative}.cavity-input input{padding-right:34px}.cavity-input>span{color:#8290a2;font-size:11px;position:absolute;top:20px;right:12px}.cavity-field>small{color:#8290a2;align-items:center;gap:8px;margin-top:6px;font-size:9px;display:flex}.cavity-field>small button{background:var(--blue-soft);color:var(--blue);border:0;border-radius:4px;padding:3px 7px;font-size:9px}.plate-note{color:#788699;background:#f8fafc;border:1px solid #e4e9f0;border-radius:7px;flex-wrap:wrap;align-items:center;gap:7px;margin-top:10px;padding:9px 11px;font-size:9px;display:flex}.plate-note>span{color:var(--blue);font-weight:800}.plate-note>b{color:#405168}.plate-note>i{background:#b1bdca;border-radius:50%;width:3px;height:3px}*{box-sizing:border-box}html{background:var(--bg)}body{color:var(--ink);background:var(--bg);margin:0;font-family:Microsoft YaHei,PingFang SC,Arial,sans-serif;font-size:14px}button,input,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:flex}.sidebar{color:#fff;z-index:5;background:#132238;flex-direction:column;width:244px;padding:28px 18px 22px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;padding:0 8px 30px;display:flex}.brand-mark{background:linear-gradient(145deg,#4d8dff,#275acb);border-radius:11px;place-items:center;width:42px;height:42px;font-size:22px;font-weight:900;display:grid;box-shadow:0 8px 22px #0b1425}.brand strong,.brand small{display:block}.brand strong{letter-spacing:1px;font-size:18px}.brand small{color:#8da2bf;letter-spacing:2px;margin-top:3px;font-size:11px}.sidebar nav{gap:7px;display:grid}.sidebar nav button{color:#9eb0c8;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:11px;padding:13px 14px;transition:all .2s;display:flex}.sidebar nav button span{width:20px;font-size:19px}.sidebar nav button i{background:#243750;border-radius:999px;margin-left:auto;padding:2px 8px;font-size:11px;font-style:normal}.sidebar nav button:hover,.sidebar nav button.active{color:#fff;background:#243a58}.sidebar nav button.active{box-shadow:inset 3px 0 #4f8cff}.sidebar-note{background:#1b304b;border:1px solid #2d425e;border-radius:12px;margin-top:auto;padding:16px}.sidebar-note b,.sidebar-note strong{display:block}.sidebar-note b{color:#8da2bf;font-size:11px}.sidebar-note strong{color:#69a0ff;margin:7px 0;font-size:21px}.sidebar-note p{color:#9eb0c8;margin:0;font-size:11px;line-height:1.6}.engineer{border-top:1px solid #2b3d55;align-items:center;gap:9px;margin-top:18px;padding:18px 5px 0;display:flex}.engineer>span{background:#345781;border-radius:50%;place-items:center;width:34px;height:34px;font-size:11px;display:grid}.engineer b,.engineer small{display:block}.engineer b{font-size:11px}.engineer small{color:#7890ae;margin-top:3px;font-size:10px}.content{flex:1;min-width:0;margin-left:244px}.topbar{border-bottom:1px solid var(--line);height:54px;color:var(--muted);background:#fff;justify-content:flex-end;align-items:center;padding:0 34px;font-size:12px;display:flex}.topbar div{margin-right:22px}.topbar button{color:#516178;background:0 0;border:0}.live-dot{background:#2eb67d;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block;box-shadow:0 0 0 4px #e3f7ef}.page-heading{justify-content:space-between;align-items:end;max-width:1280px;margin:0 auto;padding:28px 32px 22px;display:flex}.page-heading p{color:var(--blue);letter-spacing:2.4px;margin:0 0 5px;font-size:10px;font-weight:800}.page-heading h1{letter-spacing:-1px;margin:0 0 6px;font-size:26px}.page-heading>div>span{color:var(--muted);font-size:13px}.steps{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:center;max-width:1216px;margin:0 auto 20px;padding:14px 34px;display:flex}.steps>div{color:#9aa7b8;align-items:center;gap:10px;min-width:170px;display:flex}.steps i{border:1px solid #d3dae4;border-radius:50%;place-items:center;width:28px;height:28px;font-size:12px;font-style:normal;font-weight:800;display:grid}.steps b,.steps small{display:block}.steps b{font-size:12px}.steps small{margin-top:2px;font-size:10px}.steps em{background:#dde3eb;flex:1;height:1px;margin:0 18px}.steps .done,.steps .current{color:var(--ink)}.steps .done i{background:var(--blue);border-color:var(--blue);color:#fff}.steps .current i{border:2px solid var(--blue);color:var(--blue)}.workspace{grid-template-columns:minmax(460px,.92fr) minmax(480px,1.08fr);gap:18px;max-width:1280px;margin:0 auto;padding:0 32px 50px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:12px;box-shadow:0 4px 18px #192a4609}.form-panel,.result-panel{padding:24px}.panel-title{border-bottom:1px solid #edf0f4;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:15px;display:flex}.panel-title>span{color:var(--blue);background:var(--blue-soft);border-radius:5px;padding:6px;font-size:10px;font-weight:900}.panel-title h2,.panel-title p{margin:0}.panel-title h2{font-size:15px}.panel-title p{color:#97a3b3;margin-top:4px;font-size:10px}.field-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.field-grid label,.group-label{color:#4e5e72;font-size:11px;font-weight:700}.field-grid input,.field-grid select,.size-row input{width:100%;height:40px;color:var(--ink);background:#fbfcfe;border:1px solid #dce2ea;border-radius:7px;outline:none;margin-top:7px;padding:0 11px}.field-grid input:focus,.field-grid select:focus,.size-row input:focus{border-color:#75a2f5;box-shadow:0 0 0 3px #edf4ff}.group-label{margin-top:18px;display:block}.size-row{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.size-row label{position:relative}.size-row label span{color:#9aa5b4;font-size:10px;position:absolute;top:19px;left:10px}.size-row input{padding-left:48px}.rush-row{background:#f8fafc;border:1px solid #e8edf2;border-radius:8px;align-items:center;gap:10px;margin-top:17px;padding:11px 13px;display:flex}.rush-row b,.rush-row small{display:block}.rush-row b{font-size:11px}.rush-row small{color:#8a98aa;margin-top:2px;font-size:10px}.switch input{display:none}.switch span{background:#c9d1dc;border-radius:20px;width:34px;height:19px;transition:all .2s;display:block;position:relative}.switch span:after{content:"";background:#fff;border-radius:50%;width:15px;height:15px;transition:all .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #8895a5}.switch input:checked+span{background:var(--blue)}.switch input:checked+span:after{transform:translate(15px)}.upload-title{margin-top:24px}.dropzone{width:100%;min-height:145px;color:var(--ink);background:#f8fbff;border:1.5px dashed #b8c8e0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;transition:all .2s;display:flex}.dropzone:hover{border-color:var(--blue);background:#f3f7ff}.dropzone input{display:none}.upload-icon{width:36px;height:36px;color:var(--blue);background:#e6efff;border-radius:50%;place-items:center;margin-bottom:9px;font-size:20px;display:grid}.dropzone strong{text-overflow:ellipsis;max-width:92%;font-size:12px;overflow:hidden}.dropzone small{color:#8694a6;margin:7px 0;font-size:10px}.dropzone em{color:#8ea0b7;font-size:9px;font-style:normal}.dropzone.has-file{background:#f7fbf9;border-style:solid;border-color:#a9d9c8}.dropzone.has-file .upload-icon{color:var(--green);background:#e3f5ee}.primary,.ghost{border-radius:7px;padding:10px 16px;font-size:12px;font-weight:700}.primary{border:1px solid var(--blue);background:var(--blue);color:#fff;box-shadow:0 3px 9px #2f6fed33}.primary:hover{background:var(--blue-dark)}.primary:disabled{opacity:.45;cursor:not-allowed}.ghost{color:#506077;background:#fff;border:1px solid #d9e0e9}.analyze{width:100%;height:43px;margin-top:14px}.spinner{vertical-align:-2px;border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:13px;height:13px;margin-right:8px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.result-panel{min-height:640px}.empty-result,.analyzing{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:540px;display:flex}.empty-result h3,.analyzing h3{margin:20px 0 8px;font-size:14px}.empty-result p,.analyzing p{color:#8a98aa;max-width:370px;margin:0;font-size:11px;line-height:1.7}.scan-box{color:#7da0db;background:linear-gradient(135deg,#f8fbff,#edf4ff);border:1px solid #b8c9e6;border-radius:7px;place-items:center;width:92px;height:72px;display:grid;position:relative}.scan-box b{letter-spacing:2px;font-size:18px}.scan-box span{border-color:var(--blue);width:13px;height:13px;position:absolute}.scan-box span:first-child{border-top:2px solid;border-left:2px solid;top:-1px;left:-1px}.scan-box span:nth-child(2){border-top:2px solid;border-right:2px solid;top:-1px;right:-1px}.scan-box span:nth-child(3){border-bottom:2px solid;border-left:2px solid;bottom:-1px;left:-1px}.scan-box span:nth-child(4){border-bottom:2px solid;border-right:2px solid;bottom:-1px;right:-1px}.mini-flow{color:#8c9aad;align-items:center;gap:10px;margin-top:23px;font-size:9px;display:flex}.mini-flow span{border:1px solid #e0e6ee;border-radius:4px;padding:5px 8px}.mini-flow i{font-style:normal}.radar{background:radial-gradient(circle,#edf4ff 0 3px,#0000 4px),repeating-radial-gradient(circle,#0000 0 14px,#dce7f8 15px);border:1px solid #bed0ef;border-radius:50%;place-items:center;width:92px;height:92px;display:grid;position:relative;overflow:hidden}.radar i{transform-origin:0 100%;background:linear-gradient(45deg,#0000,#6c9df455);width:50%;height:50%;animation:1.2s linear infinite scan;position:absolute;top:0;right:0}.radar b{color:var(--blue);font-size:10px}@keyframes scan{to{transform:rotate(360deg)}}.score-card{background:#f9fbfe;border:1px solid #e3e9f1;border-radius:10px;align-items:center;gap:16px;padding:15px;display:flex}.score-ring{background:conic-gradient(var(--score-color) var(--score),#e7ecf2 0);border-radius:50%;place-items:center;width:82px;height:82px;display:grid;position:relative}.score-ring:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:7px}.score-ring div{z-index:1;text-align:center}.score-ring strong{font-size:23px}.score-ring small{color:#9aa5b4;font-size:8px;display:block}.score-card>div:nth-child(2) span{color:#8290a2;font-size:10px}.score-card h3{margin:3px 0;font-size:21px}.score-card p{color:#8b98a8;margin:0;font-size:9px}.estimate{text-align:right;margin-left:auto;font-size:18px}.estimate small{color:#98a3b1;margin-top:3px;font-size:9px;display:block}.result-block{border-bottom:1px solid #edf0f4;padding:15px 2px}.result-block h4{align-items:center;gap:7px;margin:0 0 9px;font-size:11px;display:flex}.result-block h4 span{width:19px;height:19px;color:var(--blue);background:#edf3ff;border-radius:50%;place-items:center;font-size:9px;display:grid}.result-block ul{grid-template-columns:1fr 1fr;gap:7px 15px;margin:0;padding:0;list-style:none;display:grid}.result-block li{color:#5f6e80;padding-left:12px;font-size:10px;line-height:1.45;position:relative}.result-block li:before{content:"";background:#9bb2d5;border-radius:50%;width:4px;height:4px;position:absolute;top:6px;left:1px}.result-block.warn h4 span{color:var(--orange);background:#fff3e4}.result-block.warn li:before{background:var(--orange)}.result-block.good h4 span{color:var(--green);background:#e9f8f1}.result-block.good li:before{background:var(--green)}.price-box{color:#fff;background:#132238;border-radius:9px;grid-template-columns:1fr auto;align-items:center;margin-top:15px;padding:15px;display:grid}.price-box>div span,.price-box>div small{display:block}.price-box>div span{font-size:11px;font-weight:800}.price-box>div small{color:#91a5bf;margin-top:4px;font-size:9px}.price-box label{background:#203753;border:1px solid #355071;border-radius:6px;align-items:center;padding:3px 8px;display:flex}.price-box label span{color:#7ba6f2;font-weight:800}.price-box input{color:#fff;text-align:right;background:0 0;border:0;outline:none;width:100px;font-size:20px;font-weight:900}.price-range{color:#8ea2bb;border-top:1px solid #2d425b;grid-column:1/-1;margin-top:10px;padding-top:9px;font-size:9px}.result-actions{justify-content:flex-end;gap:8px;margin-top:15px;display:flex}.subpage{max-width:1280px;margin:0 auto}.table-panel,.boundary{margin:0 32px 50px}.table-tools{border-bottom:1px solid var(--line);justify-content:space-between;padding:19px 22px;display:flex}.table-tools span{color:var(--muted);font-size:11px}.quote-table{overflow:auto}.tr{border-bottom:1px solid #edf0f4;grid-template-columns:1.1fr 1.25fr .6fr .7fr .8fr .6fr;align-items:center;gap:18px;min-width:950px;padding:15px 22px;display:grid}.tr:last-child{border-bottom:0}.tr>span{font-size:11px}.tr b,.tr small{display:block}.tr b{font-size:11px}.tr small{color:#8b98a8;margin-top:4px;font-size:9px}.tr.th{color:#7c8a9d;background:#f8fafc;padding-top:10px;padding-bottom:10px;font-size:9px}.status{color:#b36b15;background:#fff3e2;border-radius:999px;padding:5px 8px;font-size:9px;font-style:normal}.version{color:#617188;border:1px solid #dce4ef;border-radius:999px;padding:7px 12px;font-size:10px}.rule-summary{grid-template-columns:repeat(4,1fr);gap:12px;margin:0 32px 18px;display:grid}.rule-summary>div{color:#fff;background:#15263d;border-radius:9px;padding:17px 20px}.rule-summary strong,.rule-summary span{display:block}.rule-summary strong{color:#6e9ff6;font-size:24px}.rule-summary span{color:#95a8c0;margin-top:3px;font-size:10px}.rules-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin:0 32px 18px;display:grid}.rule-card{padding:18px}.rule-card>div{color:var(--blue);justify-content:space-between;font-size:10px;display:flex}.rule-card>div span{background:var(--blue-soft);border-radius:4px;padding:4px;font-weight:800}.rule-card h3{margin:15px 0 7px;font-size:15px}.rule-card p{color:#6d7b8e;height:34px;margin:0;font-size:10px;line-height:1.6}.rule-card small{color:#9ba6b4;border-top:1px solid #edf0f4;margin-top:13px;padding-top:11px;font-size:9px;display:block}.boundary{padding:22px}.boundary h2{margin:0 0 17px;font-size:16px}.boundary>div{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.boundary p{border-left:3px solid var(--blue);margin:0;padding-left:12px}.boundary b,.boundary span{display:block}.boundary b{margin-bottom:5px;font-size:11px}.boundary span{color:#758397;font-size:10px;line-height:1.6}.toast{color:#fff;z-index:10;background:#12243a;border-radius:8px;padding:13px 18px;font-size:12px;position:fixed;bottom:25px;right:25px;box-shadow:0 10px 30px #15203340}@media (max-width:1050px){.workspace{grid-template-columns:1fr}.rules-grid{grid-template-columns:1fr 1fr}.boundary>div{grid-template-columns:1fr}.result-panel{min-height:560px}}@media (max-width:760px){.sidebar{width:100%;height:auto;padding:16px;position:static}.app-shell{display:block}.brand{padding-bottom:13px}.sidebar nav{grid-template-columns:repeat(3,1fr)}.sidebar nav button{justify-content:center;font-size:0}.sidebar nav button span{font-size:18px}.sidebar nav button i,.sidebar-note,.engineer{display:none}.content{margin:0}.topbar{display:none}.page-heading{padding:22px 16px 16px}.steps{margin:0 16px 15px;padding:11px}.steps small{display:none}.steps>div{min-width:auto}.steps em{margin:0 8px}.workspace{grid-template-columns:1fr;padding:0 16px 30px}.field-grid,.result-block ul{grid-template-columns:1fr}.rule-summary{grid-template-columns:1fr 1fr;margin:0 16px 14px}.rules-grid{grid-template-columns:1fr;margin:0 16px 14px}.table-panel,.boundary{margin:0 16px 30px}.boundary>div{grid-template-columns:1fr}.page-heading h1{font-size:22px}.form-panel,.result-panel{padding:18px}}@media print{.sidebar,.topbar,.steps,.form-panel,.result-actions,.page-heading .ghost{display:none}.content{margin:0}.workspace{padding:0;display:block}.result-panel{box-shadow:none;border:0}.page-heading{padding:0 0 20px}.price-box{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.login-page{color:#142238;background:radial-gradient(circle at 75% 15%,#7da9ee47,#0000 30%),linear-gradient(135deg,#0e1d32,#172b47 60%,#203c63);flex-direction:column;justify-content:center;align-items:center;gap:18px;min-height:100vh;padding:28px;display:flex}.login-standard-logo{object-fit:contain;width:min(310px,92%);height:auto;margin:0 auto 22px;display:block}.login-card{background:#fff;border-radius:18px;width:min(430px,100%);padding:32px;box-shadow:0 30px 80px #07101f66}.login-brand{align-items:center;gap:12px;display:flex}.login-brand>span{color:#fff;background:#2f6fed;border-radius:11px;place-items:center;width:43px;height:43px;font-size:22px;font-weight:900;display:grid}.login-brand strong,.login-brand small{display:block}.login-brand strong{font-size:18px}.login-brand small{color:#8391a4;letter-spacing:2px;margin-top:3px;font-size:10px}.login-heading{margin:27px 0 22px}.login-heading p{color:#2f6fed;letter-spacing:2px;margin:0;font-size:9px;font-weight:900}.login-heading h1{margin:7px 0 6px;font-size:25px}.login-heading span{color:#7a8798;font-size:11px}.login-card>label{color:#526176;margin-top:14px;font-size:11px;font-weight:700;display:block}.login-card>label input,.login-card>label select{background:#fbfcfe;border:1px solid #dbe2ec;border-radius:8px;outline:none;width:100%;height:43px;margin-top:7px;padding:0 12px}.login-card>label input:focus,.login-card>label select:focus{border-color:#75a2f5;box-shadow:0 0 0 3px #edf4ff}.login-error{color:#c1433b;margin:10px 0 0;font-size:11px}.login-submit{width:100%;height:44px;margin-top:18px}.demo-accounts{border-top:1px solid #e7ecf3;grid-template-columns:1fr 1fr;gap:8px;margin-top:22px;padding-top:18px;display:grid}.demo-accounts b{color:#7c899a;grid-column:1/-1;margin-bottom:2px;font-size:10px}.demo-accounts span{background:#f5f8fc;border-radius:8px;padding:9px 10px;font-size:10px}.demo-accounts i,.demo-accounts strong,.demo-accounts em{font-style:normal;display:block}.demo-accounts i{color:#2f6fed;font-weight:800}.demo-accounts strong{color:#26364d;margin:3px 0}.demo-accounts em{color:#8a96a7}@media (max-width:560px){.login-page{gap:12px;padding:16px}.login-standard-logo{width:min(270px,94%);margin-bottom:18px}.login-card{padding:24px 20px}.demo-accounts{grid-template-columns:1fr}}
.machining-page{width:100%;min-width:0;padding:0 0 48px}.machining-page .page-heading{background:#f5f7fb;border-bottom:1px solid #e5eaf1;justify-content:space-between;align-items:flex-end;min-height:168px;padding:34px 32px 26px;display:flex}.machining-page .page-heading p{color:#2f6fed;letter-spacing:2.2px;margin:0 0 9px;font-size:11px;font-weight:800}.machining-page .page-heading h1{color:#17263d;margin:0 0 8px;font-size:28px;line-height:1.2}.machining-page .page-heading span{color:#758399;font-size:12px}.machining-order-board{margin:22px 32px 18px;padding:0}.machining-order-board-head{border-bottom:1px solid #e6ebf2;justify-content:space-between;align-items:center;min-height:72px;padding:16px 20px;display:flex}.machining-order-board-head>div{align-items:center;gap:12px;display:flex}.machining-order-board-head>div>span{color:#2f6fed;background:#edf4ff;border-radius:7px;place-items:center;width:30px;height:30px;font-size:10px;font-weight:800;display:grid}.machining-order-board-head h2,.machining-order-board-head p{margin:0}.machining-order-board-head h2{color:#26364c;font-size:16px}.machining-order-board-head p{color:#8b98aa;margin-top:4px;font-size:10px}.machining-order-board-head>b{color:#728096;font-size:11px}.machining-order-list{display:grid}.machining-order-row{color:#24364d;text-align:left;background:#fff;border:0;border-bottom:1px solid #edf0f4;grid-template-columns:minmax(175px,1.4fr) 70px 105px 85px 95px 125px 82px;align-items:center;gap:12px;width:100%;min-height:76px;padding:13px 18px;transition:background .18s,box-shadow .18s;display:grid}.machining-order-row:last-child{border-bottom:0}.machining-order-row:hover{background:#f8fbff}.machining-order-row.selected{background:#f3f7ff;position:relative;box-shadow:inset 4px 0 #2f6fed}.machining-order-row.completed{color:#657389;background:#f7f9fc}.machining-order-row.completed.selected{box-shadow:inset 4px 0 #93a1b5}.order-main strong,.order-main small,.order-due small,.order-due b,.order-hours small,.order-hours b{display:block}.order-main strong{color:#1f3653;font-size:13px}.completed .order-main strong{color:#657389}.order-main small,.order-due small,.order-hours small{color:#8a97a8;margin-top:5px;font-size:9px}.order-due b,.order-hours b{margin-top:3px;font-size:11px}.order-hours b{white-space:nowrap}.order-priority,.order-rework,.order-status{white-space:nowrap;border-radius:999px;justify-self:start;padding:5px 9px;font-size:9px;font-weight:800}.order-priority.urgent{color:#fff;background:linear-gradient(135deg,#ff2d24,#ff5a36);border:1px solid #cf1712;box-shadow:0 0 0 3px #ff31271a,0 4px 10px #d8231b40}.order-priority.high{color:#7b3000;background:linear-gradient(135deg,#ffc928,#ff9f1a);border:1px solid #f08a00;box-shadow:0 3px 8px #f08a002e}.order-priority.normal{color:#2f6fed;background:#edf4ff}.order-priority.low{color:#6c788a;background:#eef2f6}.order-rework{color:#929cac;background:#f2f4f7}.order-rework.active{color:#bb5d18;background:#fff0e6}.order-status{color:#187353;background:#e9f7f0}.completed .order-status{color:#596678;background:#e7ebf0}.order-action{color:#2f6fed;justify-self:end;font-size:10px;font-weight:800}.completed .order-action{color:#66758a}.machining-order-empty{color:#8b98aa;text-align:center;padding:40px 20px;font-size:11px}.machining-detail-nav{background:#fff;border:1px solid #dce5f1;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;min-height:76px;margin:22px 32px 14px;padding:12px 16px;display:grid;box-shadow:0 6px 20px #1f304a0d}.machining-detail-nav>button{color:#2f6fed;background:#f7faff;border:1px solid #cfdaea;border-radius:8px;min-height:38px;padding:0 14px;font-size:11px;font-weight:800}.machining-detail-nav>div span,.machining-detail-nav>div strong,.machining-detail-nav>div small{display:block}.machining-detail-nav>div span{color:#8a97a8;font-size:9px}.machining-detail-nav>div strong{color:#243b5a;margin-top:3px;font-size:14px}.machining-detail-nav>div small{color:#7b899b;margin-top:3px;font-size:9px}.machining-selected-order{background:#f8fbff;border:1px solid #dce5f1;border-radius:8px;margin-top:16px;padding:11px 12px}.machining-selected-order span,.machining-selected-order strong,.machining-selected-order small{display:block}.machining-selected-order span{color:#7f8da0;font-size:9px}.machining-selected-order strong{color:#263a55;margin-top:5px;font-size:12px}.machining-selected-order small{color:#8190a3;margin-top:4px;font-size:9px}.core-pull-time-summary{background:#fff9ec;border:1px solid #efcf9d;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:8px;margin-top:10px;padding:11px 12px;display:grid}.core-pull-time-summary>div{grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px;display:flex}.core-pull-time-summary>div strong{text-align:right;margin-top:0}.core-pull-time-summary>div,.core-pull-time-summary>p{background:#fff;border-radius:6px;margin:0;padding:8px 9px}.core-pull-time-summary span,.core-pull-time-summary strong,.core-pull-time-summary b{display:block}.machining-target-switch{background:#f8fbff;border:1px solid #dbe4f0;border-radius:9px;margin-top:14px;padding:11px}.machining-target-switch>span,.machining-target-switch>small{display:block}.machining-target-switch>span{color:#526176;font-size:10px;font-weight:700}.machining-target-switch>div{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.machining-target-switch button{color:#526176;cursor:pointer;background:#fff;border:1px solid #cbd8e9;border-radius:7px;height:38px;font-weight:700}.machining-target-switch button.active{color:#1856c9;background:#eaf1ff;border-color:#2f6fed;box-shadow:inset 0 0 0 1px #2f6fed}.machining-target-switch button.active.core{color:#9a5a00;background:#fff3dc;border-color:#d58a20;box-shadow:inset 0 0 0 1px #d58a20}.machining-target-switch>small{color:#8090a5;margin-top:7px;font-size:9px}.core-pull-time-summary span{color:#967b58;font-size:8px}.core-pull-time-summary strong,.core-pull-time-summary b{color:#87500d;margin-top:4px;font-size:10px}.machining-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 32px 18px;display:grid}.machining-summary>div{color:#fff;background:#14263e;border-radius:12px;min-width:0;padding:18px;box-shadow:0 8px 22px #14263e1a}.machining-summary span,.machining-summary strong,.machining-summary small{display:block}.machining-summary span{color:#9cacc0;font-size:10px}.machining-summary strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;margin:7px 0 5px;font-size:23px;line-height:1.2;overflow:hidden}.machining-summary strong.over{color:#ffb05a}.machining-summary small{color:#8498b0;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.machining-grid{grid-template-columns:minmax(330px,.85fr) minmax(420px,1.15fr);align-items:start;gap:18px;margin:0 32px;display:grid}.machining-page .panel{background:#fff;border:1px solid #e2e8f0;border-radius:13px;min-width:0;overflow:hidden;box-shadow:0 8px 25px #1f304a0d}.machining-form,.machining-table{padding:22px}.machining-page .panel-title{border-bottom:1px solid #e9edf3;align-items:flex-start;gap:12px;padding-bottom:17px;display:flex}.machining-page .panel-title>span{color:#2f6fed;background:#edf4ff;border-radius:7px;flex:0 0 30px;place-items:center;height:30px;font-size:10px;font-weight:800;display:grid}.machining-page .panel-title h2{color:#26364c;margin:0 0 4px;font-size:16px}.machining-page .panel-title p{color:#9aa5b5;margin:0;font-size:10px}.machining-form>label,.machining-fields label{color:#526176;font-size:11px;font-weight:700;display:block}.machining-form>label{margin-top:16px}.work-priority{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:auto 92px minmax(0,1fr);align-items:center;gap:10px;margin-top:12px;padding:11px 12px;display:grid}.work-priority>span{color:#526176;font-size:10px;font-weight:700}.work-priority select{font-weight:700;width:92px!important;height:32px!important;margin:0!important}.work-priority b{border-radius:999px;place-items:center;min-width:62px;height:29px;font-size:10px;display:grid}.work-priority small{color:#8b97a8;font-size:9px}.work-priority .urgent{justify-content:center;align-items:center;min-width:78px;height:34px;font-size:12px;font-weight:900;display:flex;box-shadow:0 4px 11px #b9221d47;color:#fff!important;background:#e2342d!important;border:2px solid #a91915!important}.work-priority .high{justify-content:center;align-items:center;min-width:72px;height:34px;font-size:12px;font-weight:900;display:flex;box-shadow:0 3px 9px #d02c2233;color:#c8211a!important;background:#ffd83d!important;border:2px solid #e13c32!important}.work-priority b i{margin-right:5px;font-size:12px;font-style:normal;line-height:1;display:inline-block}.work-priority b span{line-height:1;display:inline-block}.work-priority.priority-urgent{background:#fff0ee;border:2px solid #d82f29;position:relative;overflow:hidden;box-shadow:0 5px 16px #c527202e}.work-priority.priority-urgent:before{content:"";background:#c51f1a;width:7px;position:absolute;inset:0 auto 0 0}.work-priority.priority-urgent>span{color:#a51f1a;font-weight:900}.work-priority.priority-urgent small{color:#a33d38;font-weight:800}.work-priority.priority-high{background:#fff5b8;border:2px solid #e84a3e;position:relative;overflow:hidden;box-shadow:0 5px 14px #d9463724}.work-priority.priority-high:before{content:"";background:#e53935;width:6px;position:absolute;inset:0 auto 0 0}.work-priority.priority-high>span{color:#9d271f;font-weight:900}.work-priority.priority-high small{color:#9b4a26;font-weight:700}.work-priority .normal{color:#2f6fed!important;background:#eef4ff!important;border-color:#bcd0f7!important}.work-priority .low{color:#6d7b8e!important;background:#f2f4f7!important;border-color:#d8dee7!important}.work-due-date{background:#f8fafc;border:1px solid #dfe5ed;border-radius:8px;grid-template-columns:auto 150px minmax(0,1fr);align-items:center;gap:10px;margin-top:10px;padding:11px 12px;display:grid}.work-due-date>span{color:#526176;font-size:10px;font-weight:700}.work-due-date input{width:150px!important;height:34px!important;margin:0!important}.work-due-date b{color:#26364c;font-size:11px}.work-due-date small{color:#8290a3;font-size:9px}.work-due-date.soon{background:#fff9ee;border-color:#f0ca92}.work-due-date.soon small{color:#ad6818;font-weight:700}.work-due-date.overdue{background:#fff2f0;border-color:#edb2ac}.work-due-date.overdue small{color:#c64339;font-weight:800}.active-rework-alert{background:#fff1ef;border:1px solid #eeaaa3;border-left:4px solid #d84e43;border-radius:8px;margin-top:10px;padding:12px 14px}.active-rework-alert strong,.active-rework-alert p,.active-rework-alert small{margin:0;display:block}.active-rework-alert strong{color:#c33f35;font-size:11px}.active-rework-alert p{color:#5d4750;margin-top:6px;font-size:10px;line-height:1.55}.active-rework-alert small{color:#9d7773;margin-top:6px;font-size:8px}.rework-control{background:#fbfcfe;border:1px solid #dfe5ed;border-radius:9px;margin-top:10px;padding:12px}.rework-control.has-active{background:#fffaf4;border-color:#efbd94}.rework-head{align-items:center;gap:9px;display:flex}.rework-head span{color:#526176;font-size:10px;font-weight:700}.rework-head b{color:#26364c;font-size:11px}.rework-head em,.rework-status{color:#b85c18;background:#fff0e5;border-radius:999px;margin-left:auto;padding:4px 9px;font-size:9px;font-style:normal}.rework-create{grid-template-columns:minmax(0,1fr) 82px;gap:8px;margin-top:10px;display:grid}.rework-create input{height:36px!important;margin:0!important}.rework-create button{color:#fff;cursor:pointer;background:#e87825;border:0;border-radius:7px;font-size:10px;font-weight:700}.rework-create button:disabled{cursor:not-allowed;background:#d7dde6}.rework-list{gap:7px;margin-top:10px;display:grid}.rework-list article{background:#fff;border-radius:7px;grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:10px;padding:9px 10px;display:grid;box-shadow:inset 0 0 0 1px #e7ebf1}.rework-list strong,.rework-list p,.rework-list small{margin:0;display:block}.rework-list strong{color:#32425a;font-size:10px}.rework-list p{color:#59687c;margin-top:3px;font-size:10px}.rework-list small{color:#96a0af;margin-top:4px;font-size:8px}.rework-list .rework-archive-note{color:#b06a23;font-weight:700}.rework-archive-photos{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.rework-archive-photos a{border:1px solid #efc994;border-radius:5px;width:38px;height:38px;display:block;overflow:hidden}.rework-archive-photos img{object-fit:cover;width:100%;height:100%}.rework-list select{font-size:9px;width:92px!important;height:32px!important;margin:0!important}.rework-status.done{color:#17835a;background:#eaf8f2}.machining-start-gate{background:linear-gradient(135deg,#f1f6ff,#e8f0ff);border:2px solid #2f6fed;border-radius:9px;justify-content:space-between;align-items:center;gap:14px;margin-top:14px;padding:15px;display:flex;box-shadow:0 5px 16px #2f6fed1f}.machining-start-gate span,.machining-start-gate h3,.machining-start-gate p{margin:0;display:block}.machining-start-gate span{color:#2f6fed;letter-spacing:1.5px;font-size:8px;font-weight:900}.machining-start-gate h3{color:#173f86;margin-top:3px;font-size:13px}.machining-start-gate p{color:#6d7f99;margin-top:4px;font-size:9px;line-height:1.5}.machining-start-gate button{color:#fff;background:#2f6fed;border:0;border-radius:7px;flex:none;min-width:105px;height:40px;font-size:11px;font-weight:900;box-shadow:0 4px 11px #2f6fed42}.machining-start-record{background:#f2faf6;border:1px solid #cde8dc;border-radius:7px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin-top:12px;padding:8px 10px;font-size:8px;display:grid}.machining-start-record span{color:#16825a;font-weight:900}.machining-start-record b{color:#466b5d}.machining-start-record small{color:#82998f}.machining-entry-fields{border:0;min-width:0;margin:0;padding:0}.machining-entry-fields.locked{opacity:.48;filter:grayscale(.25)}.machining-entry-fields.locked select,.machining-entry-fields.locked input,.machining-entry-fields.locked textarea,.machining-entry-fields.locked button{cursor:not-allowed}.machining-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:14px;display:grid}.machining-form input,.machining-form select,.machining-form textarea{color:#27374e;background:#fbfcfe;border:1px solid #dbe2ec;border-radius:8px;outline:none;width:100%;margin-top:7px;padding:0 11px}.machining-form input,.machining-form select{height:42px}.machining-form textarea{resize:vertical;min-height:82px;padding-top:11px}.machining-form input:focus,.machining-form select:focus,.machining-form textarea:focus{border-color:#74a0f4;box-shadow:0 0 0 3px #eef4ff}.machining-submit{width:100%;min-height:43px;margin-top:16px}.machine-log-list{gap:10px;margin-top:16px;display:grid}.machine-log-list article{background:#fafbfd;border:1px solid #e5eaf1;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;gap:5px 14px;padding:14px 16px;display:grid;position:relative}.machine-log-list article>div b,.machine-log-list article>div span{display:block}.machine-log-list article>div b{color:#26364c;font-size:12px}.machine-log-list article>div span,.machine-log-list article p,.machine-log-list article small{color:#8390a3;font-size:9px}.machine-log-list article>strong{color:#2f6fed;font-size:20px}.machine-log-list article p,.machine-log-list article small{grid-column:1/-1;margin:0}.machine-log-list article button{color:#d4574d;cursor:pointer;background:0 0;border:0;font-size:9px;position:absolute;bottom:12px;right:14px}.machine-log-list article .log-actions{gap:6px;display:flex;position:absolute;bottom:9px;right:12px}.machine-log-list article .log-actions button{color:#2f6fed;background:#fff;border:1px solid #b9cff5;border-radius:6px;min-width:39px;height:24px;padding:0 7px;font-size:8px;position:static}.machine-log-list article .log-actions .delete{color:#c94b42;border-color:#efc2be}.log-updated{color:#2f6fed!important}.log-edit-modal{z-index:1100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0d1b2e94;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.log-edit-modal>section{background:#fff;border-radius:15px;width:min(560px,100%);padding:24px;box-shadow:0 28px 80px #0814264d}.log-edit-head{border-bottom:1px solid #e7ebf1;justify-content:space-between;align-items:flex-start;padding-bottom:16px;display:flex}.log-edit-head small{color:#2f6fed;letter-spacing:1.6px;font-size:9px;font-weight:900}.log-edit-head h2{color:#26364c;margin:5px 0 0;font-size:21px}.log-edit-head button{color:#6d7b8f;cursor:pointer;background:#f3f5f8;border:0;border-radius:7px;width:31px;height:31px;font-size:19px}.log-edit-grid{grid-template-columns:1fr 1fr .8fr;gap:12px;margin-top:17px;display:grid}.log-edit-grid label,.log-edit-note{color:#526176;font-size:10px;font-weight:700;display:block}.log-edit-grid input,.log-edit-grid select,.log-edit-note textarea{background:#fbfcfe;border:1px solid #dbe2ec;border-radius:8px;outline:none;width:100%;margin-top:7px}.log-edit-grid input,.log-edit-grid select{height:40px;padding:0 10px}.log-edit-note{margin-top:14px}.log-edit-note textarea{resize:vertical;min-height:84px;padding:10px}.log-edit-modal>section>p{color:#8f9aa9;margin:10px 0 0;font-size:9px}.log-edit-actions{justify-content:flex-end;gap:9px;margin-top:18px;display:flex}.log-edit-actions button{color:#657388;cursor:pointer;background:#fff;border:1px solid #dce2ea;border-radius:7px;min-width:88px;height:38px;font-size:10px;font-weight:700}.log-edit-actions .save{color:#fff;background:#2f6fed;border-color:#2f6fed}.log-edit-actions .save:disabled{cursor:not-allowed;background:#d6dce5;border-color:#d6dce5}.empty-machine{text-align:center;background:#fafbfd;border:1px dashed #d7dfea;border-radius:11px;place-content:center;gap:8px;min-height:220px;margin-top:16px;display:grid}.empty-machine b{color:#526176;font-size:13px}.empty-machine span{color:#9aa5b5;font-size:10px}.completion-card{border-top:1px solid #e7ebf1;margin-top:18px;padding-top:18px}.completion-head,.completion-head>div{align-items:center;display:flex}.completion-head{justify-content:space-between;gap:12px}.completion-head>div{gap:10px}.completion-head>div>span{color:#2f6fed;background:#edf4ff;border-radius:7px;place-items:center;width:30px;height:30px;font-size:10px;font-weight:800;display:grid}.completion-head h3,.completion-head p{margin:0}.completion-head h3{color:#26364c;font-size:14px}.completion-head p{color:#96a1b1;margin-top:3px;font-size:9px}.machining-status{color:#2f6fed;text-align:center;background:#eef4ff;border-radius:999px;min-width:66px;padding:6px 10px;font-size:9px}.completion-photo-input{display:none}.photo-upload-button{color:#2f6fed;cursor:pointer;background:#f3f7ff;border:1px dashed #8db2f5;border-radius:9px;width:100%;min-height:44px;margin-top:14px;font-size:10px;font-weight:800}.photo-upload-button:disabled{color:#a0aab8;cursor:not-allowed;background:#f5f6f8;border-color:#d7dee8}.completion-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px;display:grid}.completion-gallery figure{background:#fff;border:1px solid #e0e6ee;border-radius:8px;margin:0;position:relative;overflow:hidden}.completion-photo-card{cursor:zoom-in}.completion-photo-card:focus-visible{outline-offset:2px;outline:3px solid #75a2f5}.completion-preview-media{width:100%;position:relative}.completion-preview-media span{color:#fff;background:#132238c7;border-radius:999px;padding:4px 7px;font-size:8px;font-weight:700;position:absolute;bottom:7px;right:7px}.completion-gallery img{aspect-ratio:4/3;object-fit:cover;background:#eef1f5;width:100%;display:block}.completion-gallery figcaption{padding:8px}.completion-gallery figcaption b,.completion-gallery figcaption small{text-overflow:ellipsis;display:block;overflow:hidden}.completion-gallery figcaption b{color:#425168;white-space:nowrap;font-size:9px}.completion-gallery figcaption small{color:#98a2b1;margin-top:4px;font-size:7px;line-height:1.45}.completion-gallery figure>.completion-delete{z-index:3;color:#fff;cursor:pointer;background:#b1342de6;border:1px solid #ffffffa6;border-radius:6px;width:auto;height:26px;padding:0 8px;font-size:8px;font-weight:800;position:absolute;top:5px;right:5px}.completion-lightbox{z-index:1200;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#07101de0;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.completion-lightbox>section{background:#101b2b;border-radius:12px;flex-direction:column;width:min(1100px,96vw);max-height:94vh;display:flex;position:relative;overflow:hidden;box-shadow:0 28px 90px #00000080}.completion-lightbox img{object-fit:contain;max-width:100%;max-height:calc(94vh - 70px);margin:auto;display:block}.completion-lightbox footer{color:#43536a;background:#fff;justify-content:space-between;align-items:center;gap:20px;padding:13px 17px;display:flex}.completion-lightbox footer b{font-size:11px}.completion-lightbox footer span{color:#8895a5;font-size:9px}.completion-lightbox-close{z-index:2;color:#fff;cursor:pointer;background:#0d192ac7;border:1px solid #ffffff61;border-radius:50%;width:38px;height:38px;font-size:25px;position:absolute;top:12px;right:12px}.completion-empty{text-align:center;background:#f8fafc;border-radius:8px;place-items:center;min-height:94px;margin-top:12px;padding:18px;display:grid}.completion-empty b,.completion-empty span{display:block}.completion-empty b{color:#647389;font-size:10px}.completion-empty span{color:#a0aab7;margin-top:5px;font-size:8px}.completion-warning{color:#c44238;background:#fff0ee;border-radius:7px;margin:10px 0 0;padding:8px 10px;font-size:9px}.work-complete-button{color:#fff;cursor:pointer;background:#17835a;border:0;border-radius:8px;width:100%;min-height:44px;margin-top:12px;font-size:11px;font-weight:800}.work-complete-button:disabled{cursor:not-allowed;background:#cbd5df}.completion-review-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:13px;display:grid}.completion-review-actions button{color:#bd493f;cursor:pointer;background:#fff;border:1px solid #e6b6b1;border-radius:8px;min-height:42px;font-size:10px;font-weight:800}.completion-review-actions .approve{color:#fff;background:#17835a;border-color:#17835a}.completion-review-actions .approve:disabled{cursor:not-allowed;background:#ccd4dd;border-color:#ccd4dd}.completion-finished{color:#17835a;text-align:center;background:#eaf8f2;border-radius:8px;margin-top:13px;padding:12px;font-size:10px;font-weight:800}@media (max-width:1080px){.machining-order-row{grid-template-columns:minmax(160px,1.4fr) 62px 92px 72px 112px 70px}.machining-order-row .order-rework{display:none}.machining-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.machining-grid{grid-template-columns:1fr}}@media (max-width:700px){.machining-page .page-heading{min-height:auto;padding:26px 18px 22px}.machining-summary,.machining-grid,.machining-order-board,.machining-detail-nav{margin-left:18px;margin-right:18px}.machining-detail-nav{grid-template-columns:1fr auto}.machining-detail-nav>button{grid-column:1/-1;justify-self:start}.machining-order-board-head{align-items:flex-start;gap:12px}.machining-order-row{grid-template-columns:1fr auto;gap:8px 12px;padding:15px}.machining-order-row .order-main{grid-column:1/-1}.machining-order-row .order-priority,.machining-order-row .order-due,.machining-order-row .order-hours,.machining-order-row .order-status,.machining-order-row .order-action{justify-self:start}.machining-order-row .order-action{justify-self:end}.machining-summary,.machining-fields{grid-template-columns:1fr}.core-pull-time-summary{grid-template-columns:1fr 1fr}.completion-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.log-edit-grid{grid-template-columns:1fr}.work-priority,.work-due-date{grid-template-columns:1fr auto}.work-due-date small,.work-priority small{grid-column:1/-1}}.time-entry-error{color:#c44238;margin-top:5px;font-size:9px;font-weight:700;display:block}
.core-pull-hint{color:#2f6fed;margin-top:6px;font-size:10px;font-weight:600;display:block}.customer-combo{width:100%!important;height:47px!important;display:block!important;position:relative!important;overflow:hidden!important}.customer-combo input{border-radius:7px!important;width:100%!important;height:40px!important;margin-top:7px!important;padding-right:48px!important}.customer-combo select{z-index:2!important;opacity:0!important;cursor:pointer!important;border:0!important;border-left:1px solid #e2e8f0!important;border-radius:0 7px 7px 0!important;width:44px!important;height:40px!important;margin:0!important;padding:0!important;position:absolute!important;top:7px!important;right:0!important}.customer-combo:after{content:"";z-index:1;pointer-events:none;border-bottom:2px solid #536b89;border-right:2px solid #536b89;width:7px;height:7px;position:absolute;top:23px;right:17px;transform:rotate(45deg)}.customer-combo:before{content:"";z-index:1;pointer-events:none;background:#f3f7fd;border-radius:0 6px 6px 0;width:43px;height:38px;position:absolute;top:8px;right:0}.customer-combo.no-history:after{opacity:.35}.customer-combo.no-history select{cursor:not-allowed!important}.priority-cell{flex-direction:column;align-items:center;gap:4px;display:flex!important}.priority-select{cursor:pointer;border-radius:999px;outline:none;width:82px;height:34px;padding:0 8px;font-size:10px;font-weight:700}.priority-badge{text-align:center;border:1px solid;border-radius:999px;justify-content:center;align-items:center;min-width:58px;height:27px;padding:0 12px;font-size:10px;line-height:1;display:inline-flex!important}.priority-select.urgent,.priority-badge.urgent{color:#fff;background:linear-gradient(135deg,#ff2d24,#ff5a36);border:2px solid #cf1712;font-weight:900;box-shadow:0 0 0 3px #ff31271f,0 5px 13px #d8231b52}.priority-select.high,.priority-badge.high{color:#7b3000;background:linear-gradient(135deg,#ffc928,#ff9f1a);border:2px solid #f08a00;font-weight:900;box-shadow:0 3px 9px #f08a0038}.priority-select.normal,.priority-badge.normal{color:#2f6fed;background:#eef4ff;border-color:#bcd0f7}.priority-select.low,.priority-badge.low{color:#6d7b8e;background:#f2f4f7;border-color:#d8dee7}.quote-table .tr{min-width:1080px;grid-template-columns:1.02fr 1.12fr .42fr .58fr .68fr .8fr .52fr .68fr .58fr .3fr!important}.price-box{gap:12px;grid-template-columns:minmax(180px,1fr) auto!important}.price-range-main{text-align:center;background:#203753;border:1px solid #416083;border-radius:7px;min-width:190px;padding:9px 14px}.price-range-main small,.price-range-main strong{display:block}.price-range-main small{color:#8fb1df!important;font-size:8px!important}.price-range-main strong{color:#fff;white-space:nowrap;margin-top:3px;font-size:19px}@media (max-width:760px){.price-box{grid-template-columns:1fr!important}.price-range-main{width:100%}}.due-date-cell{flex-direction:column;align-items:flex-start;gap:4px;display:flex!important}.due-date-cell input{color:#35465d;background:#fff;border:1px solid #d8e0ea;border-radius:7px;outline:none;width:112px;height:34px;padding:0 6px;font-size:9px}.due-date-cell b{color:#35465d;font-size:10px}.due-date-cell small{color:#8794a6;font-size:9px}.due-date-cell.soon input{background:#fff9ed;border-color:#efc78e}.due-date-cell.soon small{color:#ad6818;font-weight:700}.due-date-cell.overdue input{background:#fff1ef;border-color:#ecafa9}.due-date-cell.overdue small{color:#c44238;font-weight:800}.record-rework-badge{color:#c64036;background:#fff0ee;border:1px solid #efb0aa;border-radius:999px;align-items:center;min-height:21px;margin-top:6px;padding:0 7px;font-size:8px;font-style:normal;font-weight:800;display:inline-flex}.record-rework-trigger{color:#c64036;cursor:pointer;background:#fff;border:1px solid #efaaa3;border-radius:6px;min-height:25px;margin-top:6px;padding:0 9px;font-size:8px;font-weight:800;display:block}.record-rework-trigger:hover{background:#fff0ee}.rework-modal{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0d1b2e94;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.rework-modal>section{background:#fff;border-radius:15px;width:min(520px,100%);padding:24px;box-shadow:0 28px 80px #0814264d}.rework-modal-head{border-bottom:1px solid #e7ebf1;justify-content:space-between;align-items:flex-start;padding-bottom:16px;display:flex}.rework-modal-head small{color:#d05045;letter-spacing:1.7px;font-size:9px;font-weight:900}.rework-modal-head h2{color:#26364c;margin:5px 0 0;font-size:21px}.rework-modal-head button{color:#6d7b8f;cursor:pointer;background:#f3f5f8;border:0;border-radius:7px;width:31px;height:31px;font-size:19px}.rework-order-info{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.rework-order-info span{color:#8b97a8;background:#f7f9fc;border-radius:8px;padding:10px;font-size:9px}.rework-order-info strong{color:#35455c;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:11px;display:block;overflow:hidden}.rework-modal>section>label{color:#526176;margin-top:17px;font-size:11px;font-weight:700;display:block}.rework-modal textarea{resize:vertical;border:1px solid #dbe2ec;border-radius:8px;outline:none;width:100%;min-height:110px;margin-top:8px;padding:11px}.rework-modal textarea:focus{border-color:#e58d84;box-shadow:0 0 0 3px #fff0ee}.rework-modal>section>p{color:#8995a6;margin:10px 0 0;font-size:9px;line-height:1.6}.rework-modal-actions{justify-content:flex-end;gap:9px;margin-top:20px;display:flex}.user-row{grid-template-columns:1.05fr .85fr .75fr 1.55fr 1fr .7fr .55fr!important}.machine-assignment-create{grid-column:1/-1}.machine-assignment-create>b{color:#526176;margin-bottom:8px;font-size:11px;display:block}.machine-assignment-create>div,.user-machine-picker,.start-machine-grid{flex-wrap:wrap;gap:6px;display:flex}.machine-assignment-create label{cursor:pointer}.machine-assignment-create input{display:none}.machine-assignment-create span,.user-machine-picker button,.start-machine-grid button{color:#607086;text-align:center;background:#fff;border:1px solid #d8e0ea;border-radius:7px;min-width:38px;padding:7px 8px;font-size:10px}.machine-assignment-create label.selected span,.user-machine-picker button.selected,.start-machine-grid button.selected{color:#245cc4;background:#eaf1ff;border-color:#2f6fed;font-weight:800}.user-machine-picker button{cursor:pointer;min-width:28px;padding:5px}.user-machine-picker button:disabled,.start-machine-grid button:disabled{cursor:not-allowed;opacity:.4}.machine-start-selector{align-items:stretch!important}.machine-start-selector>div{flex:1}.start-machine-grid{margin-top:12px}.machine-start-selector>button:disabled{opacity:.45;cursor:not-allowed}.machining-start-record em{color:#2f6fed;margin-top:7px;font-size:10px;font-style:normal;font-weight:800;display:block}@media (max-width:900px){.user-row{grid-template-columns:1fr!important}}.rework-modal-actions button{color:#657388;cursor:pointer;background:#fff;border:1px solid #dce2ea;border-radius:7px;min-width:92px;height:38px;font-size:10px;font-weight:700}.rework-modal-actions .confirm{color:#fff;background:#d75348;border-color:#d75348;min-width:126px}.rework-modal-actions .confirm:disabled{cursor:not-allowed;background:#d8dde5;border-color:#d8dde5}@media (max-width:560px){.rework-order-info{grid-template-columns:1fr}}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.record-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:1280px;margin:0 auto 14px;padding:0 32px;display:grid}.record-overview>div{background:#fff;border:1px solid #e1e7ef;border-radius:10px;padding:15px 17px;box-shadow:0 4px 14px #1f37560a}.record-overview span,.record-overview strong,.record-overview small{display:block}.record-overview span{color:#718096;font-size:10px}.record-overview strong{color:#203753;margin:5px 0 3px;font-size:23px}.record-overview small{color:#8b97a6;font-size:9px}.record-overview .danger{background:#fff8f7;border-color:#efc7c2}.record-overview .danger strong{color:#c3453c}.record-tools{align-items:center;gap:16px}.record-tools>div:first-child strong,.record-tools>div:first-child span{display:block}.record-tools>div:first-child span{color:#8693a3;margin-top:4px;font-size:9px}.record-filters{align-items:center;gap:8px;display:flex}.record-filters input,.record-filters select{color:#3f5067;background:#fff;border:1px solid #d8e0ea;border-radius:7px;outline:none;height:36px}.record-filters input{width:240px;padding:0 11px}.record-filters select{min-width:125px;padding:0 9px}.record-filters input:focus,.record-filters select:focus{border-color:#75a2f5;box-shadow:0 0 0 3px #edf4ff}.record-filters button{color:#66768a;cursor:pointer;background:#f7f9fc;border:1px solid #d8e0ea;border-radius:7px;height:36px;padding:0 11px}.record-empty{color:#8895a5;flex-direction:column;justify-content:center;align-items:center;min-height:220px;display:flex}.record-empty b{color:#43546b;font-size:13px}.record-empty span{margin-top:7px;font-size:10px}@media (max-width:900px){.record-overview{padding:0 16px}.record-tools{flex-direction:column;align-items:stretch}.record-filters{width:100%}.record-filters label:first-child{flex:1}.record-filters input{width:100%}.quote-table .th{display:none!important}.quote-table .tr:not(.th){background:#fff;border-radius:10px;margin:10px;border:1px solid #e1e7ef!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;min-width:0!important;padding:14px!important;display:grid!important}.quote-table .tr:not(.th)>span{min-width:0;border:0!important;padding:0!important}.quote-table .tr:not(.th)>span:first-child,.quote-table .tr:not(.th)>span:nth-child(2),.quote-table .tr:not(.th)>span:nth-child(6){grid-column:1/-1}.quote-table .tr:not(.th)>span:before{color:#8996a6;margin-bottom:4px;font-size:8px;font-weight:700;display:block}.quote-table .tr:not(.th)>span:nth-child(3):before{content:"复杂度"}.quote-table .tr:not(.th)>span:nth-child(4):before{content:"建议报价"}.quote-table .tr:not(.th)>span:nth-child(5):before{content:"最终成交价"}.quote-table .tr:not(.th)>span:nth-child(6):before{content:"当前状态"}.quote-table .tr:not(.th)>span:nth-child(7):before{content:"优先级"}.quote-table .tr:not(.th)>span:nth-child(8):before{content:"交期"}.quote-table .tr:not(.th)>span:nth-child(9):before{content:"客户报价"}.quote-table .tr:not(.th)>span:nth-child(10):before{content:"操作"}.priority-cell{align-items:flex-start}}@media (max-width:620px){.app-shell{display:block}.sidebar{width:100%;height:auto;padding:14px;position:static}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.sidebar nav button{white-space:normal;min-width:0;min-height:42px;padding:9px 10px}.sidebar-note,.engineer{display:none!important}.content{width:100%;margin-left:0}.topbar{min-height:48px;padding:0 14px;position:static}.page-heading{flex-direction:column;align-items:stretch;gap:12px}.page-heading>button{width:100%;min-height:42px}.record-overview{grid-template-columns:1fr}.record-filters{flex-direction:column;align-items:stretch}.record-filters select,.record-filters button{width:100%}.quote-table .tr:not(.th){grid-template-columns:1fr!important}.quote-table .tr:not(.th)>span{grid-column:1!important}.status-select,.priority-select,.due-date-cell input,.share-cell button{width:100%;max-width:none;min-height:40px}}.inspection-entry{color:#9c5908;cursor:pointer;background:#fff5e6;border:1px solid #e6a34d;border-radius:6px;width:100%;min-height:30px;margin-top:7px;padding:5px 8px;font-size:9px;font-weight:800;display:block}.inspection-entry:hover{background:#ffe9c7;border-color:#d88418}.quote-table .tr.completed-order{background:#f1f3f6}.quote-table .tr.completed-order>span>:not(.record-rework-trigger):not(.record-link){opacity:.42;filter:grayscale();pointer-events:none}.quote-table .tr.completed-order .record-rework-trigger{opacity:1;filter:none;pointer-events:auto;color:#bd3f36;background:#fff;border-color:#df655b;box-shadow:0 3px 9px #bd3f361f}.quote-table .tr.completed-order .record-link:not(.locked){opacity:1;filter:none;pointer-events:auto;color:#2f6fed;cursor:pointer}.quote-table .tr.completed-order .record-link.locked{opacity:.42;filter:grayscale();pointer-events:none;color:#66758a;text-decoration:none}.completed-readonly{pointer-events:none;opacity:.82;position:relative}.completed-readonly:after{content:"已验收完成 · 只读";z-index:3;color:#637083;background:#e8ebef;border-radius:999px;padding:6px 10px;font-size:9px;font-weight:800;position:absolute;top:16px;right:16px}
.login-admin-note{color:#8793a4;text-align:center;border-top:1px solid #e7ecf3;margin:20px 0 0;padding-top:16px;font-size:10px}.users-page{width:100%;min-width:0;padding-bottom:48px}.users-page .page-heading{background:#f5f7fb;border-bottom:1px solid #e5eaf1;min-height:168px;padding:34px 32px 26px}.users-page .page-heading p{color:#2f6fed;letter-spacing:2.2px;margin:0 0 9px;font-size:11px;font-weight:800}.users-page .page-heading h1{color:#17263d;margin:0 0 8px;font-size:28px}.users-page .page-heading span{color:#758399;font-size:12px}.users-layout{gap:18px;margin:22px 32px 0;display:grid}.users-page .panel{background:#fff;border:1px solid #e2e8f0;border-radius:13px;min-width:0;padding:22px;overflow:hidden;box-shadow:0 8px 25px #1f304a0d}.users-page .panel-title{border-bottom:1px solid #e9edf3;align-items:flex-start;gap:12px;padding-bottom:17px;display:flex}.users-page .panel-title>span{color:#2f6fed;background:#edf4ff;border-radius:7px;flex:0 0 30px;place-items:center;height:30px;font-size:10px;font-weight:800;display:grid}.users-page .panel-title h2{color:#26364c;margin:0 0 4px;font-size:16px}.users-page .panel-title p{color:#9aa5b5;margin:0;font-size:10px}.user-form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.user-form-grid label{color:#526176;font-size:11px;font-weight:700;display:block}.rotation-help,.shift-preview{margin-top:5px;font-weight:600;display:block;color:#2f6fed!important;font-size:9px!important}.shift-preview{color:#8794a6!important}.user-form-grid input,.user-form-grid select,.user-row input,.user-row select{color:#27374e;background:#fbfcfe;border:1px solid #dbe2ec;border-radius:8px;outline:none;width:100%;height:40px;margin-top:7px;padding:0 10px}.user-form-grid input:focus,.user-form-grid select:focus,.user-row input:focus,.user-row select:focus{border-color:#74a0f4;box-shadow:0 0 0 3px #eef4ff}.user-message{color:#2f6fed;margin:14px 0 0;font-size:10px;display:inline-block}.user-create-button{min-width:130px;height:42px;margin-top:16px}.user-table{min-width:780px;margin:18px -22px -22px}.user-list{overflow-x:auto!important}.user-row{border-top:1px solid #e9edf3;grid-template-columns:1.35fr 1fr .8fr 1fr .7fr .55fr;align-items:center;gap:12px;min-height:70px;padding:10px 22px;display:grid}.user-row:first-child{border-top:0}.user-row>span{min-width:0}.user-row b,.user-row small{display:block}.user-row b{color:#24344b;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.user-row small,.user-row em{color:#8b97a8;margin-top:4px;font-size:10px;font-style:normal}.user-row input,.user-row select{height:36px;margin-top:0;font-size:10px}.user-head{color:#708097;background:#f7f9fc;min-height:42px;font-size:10px;font-weight:700}.account-status,.account-delete{cursor:pointer;background:#fff;border-radius:7px;min-width:66px;height:32px;font-size:10px}.account-status.enabled{color:#17835a;border:1px solid #bce4d4}.account-status.disabled,.account-delete{color:#c34c43;border:1px solid #f0c3bf}.account-status:disabled,.account-delete:disabled{color:#a8b1be;cursor:not-allowed;border-color:#dfe4eb}@media (max-width:1050px){.user-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.users-page .page-heading{min-height:auto;padding:26px 18px 22px}.users-layout{margin-left:18px;margin-right:18px}.user-form-grid{grid-template-columns:1fr}}
.suggested-price-cell small,.suggested-price-cell b,.deal-price-cell>small,.deal-price-cell>b{display:block}.suggested-price-cell small,.deal-price-cell>small{white-space:nowrap;margin:0 0 5px!important}.suggested-price-cell b{color:#263c59;font-size:11px}.deal-price-cell>b{color:#65758a;font-size:11px}.deal-price-cell label{display:block;position:relative}.deal-price-cell label i{color:#1b7958;font-size:10px;font-style:normal;font-weight:800;position:absolute;top:50%;left:8px;transform:translateY(-50%)}.deal-price-cell input{color:#126b4b;background:#f1faf6;border:1px solid #a9d8c7;border-radius:6px;outline:none;width:100%;min-width:92px;height:31px;padding:0 7px 0 20px;font-size:12px;font-weight:800}.deal-price-cell input:focus{border-color:#268662;box-shadow:0 0 0 3px #dff4eb}.reconciliation-page{padding-bottom:48px}.statement-filter{justify-content:space-between;align-items:center;gap:20px;margin:0 32px 16px;padding:18px 20px;display:flex}.statement-filter>div{flex:1;grid-template-columns:minmax(220px,1fr) 190px;gap:14px;display:grid}.statement-filter label{color:#526176;font-size:10px;font-weight:700}.statement-filter select,.statement-filter input{background:#fbfcfe;border:1px solid #dbe3ed;border-radius:7px;outline:none;width:100%;height:40px;margin-top:7px;padding:0 11px;display:block}.statement-filter aside{color:#fff;background:#14263e;border-radius:9px;grid-template-columns:auto auto;gap:6px 16px;min-width:260px;padding:12px 16px;display:grid}.statement-filter aside span{color:#91a5bf;font-size:9px}.statement-filter aside strong{text-align:right;font-size:14px}.statement-sheet{margin:0 32px;overflow:hidden}.statement-sheet>header{border-bottom:1px solid #e8edf3;justify-content:space-between;align-items:center;gap:18px;padding:20px 22px;display:flex}.statement-sheet>header small{color:#2f6fed;letter-spacing:2px;font-size:8px;font-weight:900}.statement-sheet>header h2{margin:5px 0 4px;font-size:19px}.statement-sheet>header p{color:#8491a2;margin:0;font-size:9px}.statement-sheet>header>div:last-child{gap:8px;display:flex}.statement-sheet>header button{color:#4e5f75;background:#fff;border:1px solid #d7dfe9;border-radius:7px;padding:9px 13px;font-size:10px;font-weight:700}.statement-sheet>header button.primary{color:#fff;background:#2f6fed;border-color:#2f6fed}.statement-sheet>header button:disabled{opacity:.45;cursor:not-allowed}.statement-table{overflow-x:auto}.statement-row{border-bottom:1px solid #edf0f4;grid-template-columns:55px 110px 150px minmax(210px,1fr) 70px 130px 110px;align-items:center;gap:12px;min-width:860px;padding:13px 20px;display:grid}.statement-row.head{color:#77869a;background:#f5f8fc;padding-top:10px;padding-bottom:10px;font-size:9px}.statement-row>span{min-width:0;font-size:10px}.statement-row b,.statement-row small{display:block}.statement-row small{color:#8996a6;margin-top:4px;font-size:8px}.statement-row .amount{color:#176f50;font-size:13px;font-weight:900}.statement-total{background:#f1f6fd;justify-content:flex-end;align-items:center;gap:24px;padding:17px 22px;display:flex}.statement-total span{color:#68788d;font-size:11px}.statement-total b{color:#176f50;font-size:21px}.statement-empty{color:#8492a4;flex-direction:column;justify-content:center;align-items:center;min-height:300px;display:flex}.statement-empty b{color:#44556b;font-size:13px}.statement-empty span{margin-top:8px;font-size:10px}@media (max-width:900px){.statement-filter{flex-direction:column;align-items:stretch}.statement-filter aside{min-width:0}}@media (max-width:760px){.statement-filter,.statement-sheet{margin-left:16px;margin-right:16px}.statement-filter>div{grid-template-columns:1fr}.statement-sheet>header{flex-direction:column;align-items:stretch}.statement-sheet>header>div:last-child{grid-template-columns:1fr 1fr;display:grid}}.quote-table .tr{grid-template-columns:1.02fr 1.08fr .42fr .58fr .68fr .76fr .44fr .58fr .34fr .28fr!important}
