.ops-layout{min-width:960px;min-height:100vh}.ops-layout .ant-layout-sider{color:#333;height:100vh;position:sticky;top:0}.brand{color:#fff;gap:6px;padding:30px 24px;display:grid}.brand strong{font-size:20px}.brand span{color:#aebbd0;font-size:13px}.account{padding:0 24px 24px}h1{margin:0 0 12px;font-size:26px;line-height:1.25}h2{margin:0 0 18px;font-size:18px}h3{margin:16px 0 12px;font-size:15px}p{line-height:1.6}.dashboard-counts{grid-template-columns:1fr 5fr 3fr 1fr;gap:12px;display:grid}.dashboard-counts .kpi-grid{grid-template-columns:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column}.kpi{color:var(--ink-900);border-radius:var(--radius);background:#fff;border-top:3px solid;gap:12px;padding:18px 12px;display:grid}.kpi strong{font-family:var(--font-mono);font-size:30px}.stage-1{color:var(--stage-survey);background:var(--stage-survey-bg)}.stage-2{color:var(--stage-material);background:var(--stage-material-bg)}.stage-3{color:var(--stage-receive);background:var(--stage-receive-bg)}.stage-4{color:var(--stage-install);background:var(--stage-install-bg)}.stage-5{color:var(--stage-accept);background:var(--stage-accept-bg)}.stage-6,.stage-7,.stage-8{color:var(--stage-pay);background:var(--stage-pay-bg)}.stage-9{color:var(--stage-done);background:var(--stage-done-bg)}.stage-stats{margin-bottom:16px}.stage-stats dl{flex-wrap:wrap;gap:4px 12px;margin:0;display:flex}.stage-stats dl>div{align-items:baseline;gap:4px;display:flex}.stage-stats.duration-card,.stage-stats .duration-card-row{flex-wrap:nowrap}.stage-stats.duration-card{cursor:default;overflow-x:auto}.stage-stats.duration-card>span,.stage-stats dl>div{white-space:nowrap;flex-shrink:0}.dashboard-counts .ant-statistic-title{min-height:40px}.ops-layout .toolbar .ant-input-affix-wrapper{min-width:300px}.stage-stats dt{color:var(--ink-500);font-size:12px}.stage-stats dd{font-family:var(--font-mono);margin:0;font-weight:600}.stage-stats small{color:var(--ink-400);font-size:11px;font-weight:400}.field{flex-direction:column;gap:8px;min-width:0;display:flex}.field>label{color:var(--ink-600);font-size:13px;font-weight:600}input:not([type=checkbox]):not([type=file]),select,textarea{font:inherit;border:1px solid var(--line-2);color:var(--ink-900);box-sizing:border-box;background:#fff;border-radius:6px;width:100%;min-width:0;padding:8px 10px}input[readonly],fieldset[disabled] input,fieldset[disabled] select{background:var(--paper-2);color:var(--ink-500)}.ops-layout .field input{color:var(--ink-900)}.ops-layout .field input.new-due-date{color:var(--ink-300)}.new-section-title{font-size:17px;font-weight:750}.kpi-group-title{color:var(--ink-400);margin-bottom:18px;font-size:14px;font-weight:600}.filters{flex-wrap:wrap;align-items:end;gap:16px;margin:16px 0 24px;display:flex}.filters .field{width:180px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.edit-form{gap:24px;max-width:1080px;margin-block:24px;display:grid}.edit-form .ant-btn{justify-self:start}fieldset{border:0;min-width:0;margin:0;padding:0}legend{margin-bottom:16px;font-size:16px;font-weight:700}.toolbar,.pager,.checks{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.toolbar .field{min-width:180px}.pager{justify-content:flex-end;margin-top:20px}.checks label{align-items:center;gap:8px;min-height:36px;display:flex}.error{border-left:4px solid var(--danger);background:var(--danger-soft);color:var(--danger);padding:12px 16px}.error p{margin:8px 0 0}.muted{color:var(--ink-500)}.device-row{border-top:1px solid var(--line);padding:16px 0}.device-row>strong{margin-bottom:16px;display:block}.photo-slot label{gap:12px;display:grid}.thumb-grid figure{overflow-wrap:anywhere;width:140px;margin:0;font-size:12px}.thumb-grid img{object-fit:cover;border-radius:6px}.photo-site{border-top:1px solid var(--line);padding-block:20px}.photo-site h2 small{color:var(--ink-500);font-size:13px}.photo-site details{padding-block:12px}.photo-site summary{cursor:pointer;font-weight:600}.assignment-row{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.next-action{color:var(--primary);background:var(--primary-soft);padding:12px 16px}.stage-times{color:var(--ink-500);flex-wrap:wrap;gap:8px 20px;margin-top:20px;font-size:12px;display:flex}.site-head{justify-content:space-between;align-items:baseline;gap:20px;display:flex}.site-block{border-top:1px solid var(--line);padding-block:20px}.login{background:var(--paper);grid-template-columns:1fr 1fr;align-items:center;min-height:100vh;display:grid}.login-brand{box-sizing:border-box;color:#fff;background:var(--ink-900);align-items:center;height:100%;padding:60px;font-size:32px;font-weight:700;display:grid}.login section{max-width:460px;padding:48px}.login form{gap:24px;margin-top:32px;display:grid}.print-sheet{background:#fff;max-width:900px;margin:auto;padding:32px}.print-sheet h1{margin-top:28px}.signatures{justify-content:space-between;margin-top:64px;display:flex}@media (width<=1200px){.kpi-grid{grid-template-columns:repeat(5,1fr)}.dashboard-counts{grid-template-columns:1fr}}@media print{@page{size:A4;margin:15mm}.ant-layout-sider,.no-print{display:none!important}.ops-layout,.ant-layout,.ant-layout-content{background:#fff;min-width:0;display:block}.ops-page,.print-sheet{width:auto;max-width:none;margin:0;padding:0}.print-sheet h2{margin-top:24px}.print-sheet .ant-descriptions{break-inside:avoid}.print-sheet a{color:inherit;text-decoration:none}}.todo-list{margin:0;padding:0;list-style:none}.todo-list li{border-top:1px solid var(--line)}.todo-list a{color:var(--ink-900);grid-template-columns:160px minmax(180px,1fr) minmax(160px,1fr);align-items:center;gap:20px;padding:14px 0;display:grid}.todo-list .todo-list .todo-action{color:var(--ink-500);font-size:13px}.assignment-row>div{overflow-wrap:anywhere;min-width:0}@media print{.ops-layout.ant-layout-has-sider>.ant-layout-content{width:100%!important}.print-sheet{box-sizing:border-box;width:100%}}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff")}:root{--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--ink-950:#08111d;--ink-900:#0e1b2c;--ink-800:#13233a;--ink-700:#2a3950;--ink-600:#3d4c63;--ink-500:#56657a;--ink-400:#6b798d;--ink-300:#8a96a8;--line:#e9e5dc;--line-2:#d8d3c7;--paper:#f4f2ed;--paper-2:#faf8f4;--surface:#fff;--primary:#2446c8;--primary-hover:#1c39a8;--primary-soft:#eaeefc;--primary-ring:#2446c847;--field:#0b7a5f;--field-soft:#e3f4ee;--danger:#c23a2b;--danger-soft:#fdecea;--note:#8a5a00;--note-bg:#fff6d6;--note-line:#e2b33a;--stage-survey:#a14b05;--stage-survey-bg:#fdf0dc;--stage-material:#6d28d9;--stage-material-bg:#efe9fd;--stage-receive:#0e7490;--stage-receive-bg:#e0f2f7;--stage-install:#0f766e;--stage-install-bg:#dff5f1;--stage-accept:#2446c8;--stage-accept-bg:#e6ecfd;--stage-pay:#8a5a00;--stage-pay-bg:#fff6d6;--stage-done:#15803d;--stage-done-bg:#e2f5e8;--radius:8px;--radius-lg:12px;--shadow-1:0 1px 2px #0e1b2c0d;--shadow-2:0 1px 2px #0e1b2c0a, 0 8px 24px #0e1b2c12;--shadow-3:0 2px 6px #0e1b2c0f, 0 18px 40px #0e1b2c1f;--ease:cubic-bezier(.2, .7, .2, 1);--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang TC", "Noto Sans TC", "Microsoft JhengHei", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;font-family:var(--font-sans);color:var(--ink-900);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}html,body,#root{background:var(--paper);min-height:100%;margin:0}body{font-feature-settings:"palt" 0}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-weight:500}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button{font-family:inherit}:where(button,a,[tabindex]):focus-visible{outline:3px solid var(--primary-ring);outline-offset:2px;border-radius:6px}::selection{background:#d7e0fb}@media (prefers-reduced-motion:reduce){.gate-cta .anticon,.gate-account-go,.task-card,.gate-card,.proto-btn,.gate-bar-btn,.ops-user{transition:none}}.ops-layout{flex:1;min-height:0}.ops-layout.ant-layout{background:var(--paper)}.ops-sider.ant-layout-sider{background:var(--ink-900);border-right:1px solid var(--ink-800);height:calc(100vh - 48px);top:48px;position:sticky!important}.ant-layout-sider-children{flex-direction:column;height:100%;display:flex}.ops-brand{color:#fff;align-items:center;gap:10px;padding:18px 20px 14px;display:flex}.ops-brand-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.ops-brand-name{letter-spacing:.02em;font-size:16px;font-weight:750}.ops-brand-sub{color:#8ea0bb;font-size:12px}.ops-nav{flex:1;padding-top:6px;overflow:auto}.ops-nav .ant-menu-dark{background:0 0;font-size:14px}.ops-nav .ant-menu-dark .ant-menu-item{font-weight:500}.ops-nav .ant-menu-dark .ant-menu-item-selected{font-weight:650}.ops-user{box-sizing:border-box;cursor:pointer;text-align:left;color:#e8edf5;background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;align-items:center;gap:10px;width:calc(100% - 24px);margin:12px;padding:10px 12px;font-size:13.3333px;transition:background .15s,border-color .15s;display:flex}.ops-user:hover{background:#ffffff14}.ops-user.is-active{background:#2446c847;border-color:#6d8cff80}.ops-user-avatar{background:var(--primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-weight:700;display:flex}.ops-user-meta{flex-direction:column;gap:1px;min-width:0;display:flex}.ops-user-name{text-overflow:ellipsis;white-space:nowrap;font-size:13.3333px;font-weight:650;overflow:hidden}.ops-user-sub{color:#8ea0bb;font-size:12px;line-height:1.45}.ops-sider.is-collapsed .ops-brand{justify-content:center;padding-inline:0}.ops-sider.is-collapsed .ops-brand-text,.ops-sider.is-collapsed .ops-user-meta{display:none}.ops-sider.is-collapsed .ops-user{justify-content:center;width:calc(100% - 16px);margin:8px;padding:8px 0}.ops-content{min-width:0}.ops-page{max-width:1320px;margin:0 auto;padding:20px 32px 64px}@media (width<=1199px){.ops-page{padding:16px 20px 56px}}.ops-page>.ant-breadcrumb{font-size:13px;margin-bottom:6px!important}.ops-page>.ant-breadcrumb a{color:var(--ink-400)}.ops-page>.ant-breadcrumb a:hover{color:var(--primary);background:0 0}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.page-head-main{min-width:0}.page-kicker{color:var(--ink-400);margin-bottom:4px;font-size:13px}.page-title{letter-spacing:-.015em;margin:0;font-size:26px;font-weight:750;line-height:1.3}.page-desc{color:var(--ink-500);flex-wrap:wrap;align-items:center;gap:6px 8px;margin-top:6px;line-height:1.7;display:flex}.page-desc strong{color:var(--ink-800);font-weight:650}.page-head-extra{gap:8px;display:flex}.page-alert{border-radius:10px;margin-bottom:16px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);overflow:hidden}.panel+.panel{margin-top:16px}.panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.panel-title{margin:0;font-size:15px;font-weight:700}.panel-meta{color:var(--ink-400);font-size:12px}.toolbar{border-bottom:1px solid var(--line);background:var(--paper-2);flex-wrap:wrap;align-items:center;gap:10px;padding:14px 16px;display:flex}.toolbar-search{width:300px;max-width:100%}.toolbar-select{width:140px}.toolbar-select.is-narrow{width:120px}.toolbar-count{color:var(--ink-400);white-space:nowrap;align-items:center;gap:4px;margin-left:auto;font-size:13px;display:inline-flex}.toolbar-count .mono{color:var(--ink-800);font-weight:600}.stage-averages{color:var(--ink-500);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0;padding:8px 16px 12px;font-size:12px;display:flex}.stage-averages-scope,.duration-card-scope{color:var(--ink-400)}.stage-avg .mono{color:var(--ink-800);font-weight:600}.duration-card{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:6px 12px;width:100%;margin:0 0 16px;padding:12px 16px;display:flex}.duration-card-title{color:var(--ink-800);font-size:14px;font-weight:700}.duration-card-row{color:var(--ink-500);flex-wrap:wrap;gap:4px 12px;font-size:12px;display:flex}.panel .ant-table-wrapper .ant-table{border-radius:0}.panel .ant-table-content,.panel .ant-table-body{scrollbar-width:thin;scrollbar-color:#0e1b2c59 transparent}.panel .ant-table-content::-webkit-scrollbar{height:8px}.panel .ant-table-body::-webkit-scrollbar{height:8px}.panel .ant-table-content::-webkit-scrollbar-thumb{background:#0e1b2c59;border-radius:4px}.panel .ant-table-body::-webkit-scrollbar-thumb{background:#0e1b2c59;border-radius:4px}.panel .ant-table-content,.panel .ant-table-body{overflow:auto hidden!important}.panel .ant-table-thead>tr>th,.panel .ant-table-tbody>tr>td{white-space:nowrap}.panel .ant-table-wrapper .ant-table-container{border-radius:0}.panel .ant-table-thead>tr>th{letter-spacing:.04em;white-space:nowrap;font-size:12px;font-weight:650}.panel .ant-table-tbody>tr>td{font-size:14px}.panel .ant-table-tbody>tr:last-child>td{border-bottom:0}.panel .ant-table-wrapper .ant-table-pagination{padding:0 16px}.ant-table-tbody>tr.is-clickable{cursor:pointer}.ant-table-tbody>tr.is-inactive>td{color:var(--ink-300)}.order-id{font-family:var(--font-mono);letter-spacing:-.01em;white-space:nowrap;font-size:13px;font-weight:600}.order-id:hover{text-underline-offset:3px;text-decoration:underline}.cell-strong{color:var(--ink-900);font-weight:600}.cell-meter{color:var(--ink-600);white-space:nowrap;font-size:13px}.cell-code{color:var(--ink-600);white-space:nowrap;font-size:12px}.cell-wait{white-space:normal;line-height:1.4;display:inline-block}.form-quiet{color:var(--ink-400);margin:0 0 16px;font-size:13px}.fform-lead{color:var(--ink-500);margin:-4px 16px 12px;font-size:13px}.ffield{gap:6px;margin-top:12px;font-size:14px;font-weight:650;display:grid}.ffield .adm-input{border:1px solid var(--line);background:var(--paper-2);border-radius:10px;padding:8px 10px}.fmeta-inline{color:var(--ink-400);font-size:12px;font-weight:500;display:block}.fstep-label{color:var(--ink-500);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.freceive-expect{border:1px solid var(--line);border-radius:10px;margin-top:8px;padding:8px 10px}.fpage-foot .fq{text-align:left;margin-top:8px}.cell-email{color:var(--ink-600);font-size:12px}.cell-warn{color:var(--danger);font-size:13px;font-weight:600}.empty-inline{color:var(--ink-400);justify-content:center;align-items:center;gap:4px;padding:28px 0;display:flex}.empty-state{text-align:center;padding:48px 24px}.empty-state-title{font-size:18px;font-weight:700}.empty-state p{color:var(--ink-500);margin:6px 0 18px}.pay-state{color:var(--ink-500);font-size:13px;font-weight:600}.pay-state[data-paid=true]{color:var(--stage-done)}.active-state{color:var(--stage-done);align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.active-state:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.active-state[data-active=false]{color:var(--ink-300)}.panel-tabs.ant-tabs{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);overflow:hidden}.panel-tabs>.ant-tabs-nav{margin:0;padding:0 18px}.panel-tabs>.ant-tabs-nav:before{border-color:var(--line)!important}.panel-tabs .ant-tabs-tab+.ant-tabs-tab{margin-left:28px}.panel-tabs .tab-intro{margin:14px 16px 0}.panel-tabs .ant-table-wrapper .ant-table-thead>tr>th{font-size:12px;font-weight:650}.panel-tabs .toolbar+.ant-table-wrapper,.panel-tabs .tab-intro+.toolbar{border-top:0}.panel-tabs .tab-intro+.toolbar{border-top:1px solid var(--line);margin-top:12px}.order-stage-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);overflow:hidden}.order-stage-tabs.ant-tabs{margin:0}.order-stage-tabs>.ant-tabs-nav{margin:0;padding:0 8px}.order-stage-tabs>.ant-tabs-nav:before{border-color:var(--line)}.stage-tab-label{align-items:baseline;gap:6px;display:inline-flex}.stage-tab-count{color:var(--ink-400);font-variant-numeric:tabular-nums;font-size:12px;font-weight:650}.ant-tabs-tab-active .stage-tab-count{color:var(--primary)}.mine-group+.mine-group{border-top:1px solid var(--line)}.mine-group-head{align-items:center;gap:8px;padding:12px 16px 4px;display:flex}.mine-group-count{color:var(--ink-600);margin-left:auto;font-size:13px;font-weight:650}.mine-list{margin:0;padding:0 8px 8px;list-style:none}.mine-row{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:120px 160px minmax(0,1fr) minmax(140px,220px);align-items:center;gap:12px;width:100%;padding:8px;display:grid}.mine-row:hover{background:var(--paper-2)}.mine-site,.mine-wait{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.page-head-actions{align-items:center;gap:16px;display:inline-flex}.site-block{border:1px solid var(--line);border-radius:10px;margin:0 16px 16px;overflow:hidden}.site-block-head{background:var(--paper-2);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 12px;display:flex}.site-block-head .ant-btn:first-of-type{margin-left:auto}.site-block-meta{color:var(--ink-500);font-size:13px}.site-block .ant-table-wrapper{border-top:1px solid var(--line)}.modal-step{color:var(--ink-600);margin:10px 0 4px;font-size:13px;font-weight:650}.order-hero-owner{color:var(--ink-400);font-size:12px}.project-info{gap:12px;padding:16px;display:grid}.project-info-label{color:var(--ink-400);margin-bottom:2px;font-size:12px;display:block}.setup-card{margin-bottom:16px}.setup-list{margin:0;padding:0;list-style:none}.setup-row{border-top:1px solid var(--line);grid-template-columns:88px 150px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 16px;display:grid}.setup-label{font-weight:650}.setup-status{font-variant-numeric:tabular-nums;color:var(--ink-600)}.setup-row[data-ready=false] .setup-status{color:var(--note);font-weight:650}.setup-hint{color:var(--ink-400);font-size:13px}.dep-hint{color:var(--ink-600);margin-top:4px;font-size:13px;display:block}.prep-form .dep-hint{font-weight:400}.circuit-pending{color:var(--ink-400);margin-left:8px;font-size:12px}.kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-bottom:16px;display:grid}@media (width<=1100px){.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=700px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.kpi-tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);--kpi:var(--ink-300);padding:14px 16px}.kpi-tile[data-kpi=survey]{--kpi:var(--stage-survey)}.kpi-tile[data-kpi=material]{--kpi:var(--stage-material)}.kpi-tile[data-kpi=receive]{--kpi:var(--stage-receive)}.kpi-tile[data-kpi=accept]{--kpi:var(--stage-accept)}.kpi-tile[data-kpi=pay]{--kpi:var(--stage-pay)}.kpi-tile[data-kpi=install]{--kpi:var(--stage-install)}.kpi-tile .ant-statistic-title{color:var(--ink-600);align-items:center;gap:6px;margin-bottom:4px;font-size:13px;font-weight:600;display:flex}.kpi-tile .ant-statistic-title:before{content:"";background:var(--kpi);border-radius:50%;width:7px;height:7px}.kpi-tile .ant-statistic-content{font-variant-numeric:tabular-nums;color:var(--ink-900);font-size:28px;font-weight:700;line-height:1.2}.kpi-foot{color:var(--ink-400);margin-top:4px;font-size:12px}.stage-pill{white-space:nowrap;height:24px;color:var(--c);background:var(--bg);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--c) 18%, transparent);border-radius:999px;align-items:center;gap:6px;padding:0 10px 0 8px;font-size:12px;font-weight:650;display:inline-flex}.stage-pill:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.stage-pill.is-lg{height:28px;padding:0 12px 0 10px;font-size:13px}.stage-pill[data-stage=survey]{--c:var(--stage-survey);--bg:var(--stage-survey-bg)}.stage-pill[data-stage=material]{--c:var(--stage-material);--bg:var(--stage-material-bg)}.stage-pill[data-stage=receive]{--c:var(--stage-receive);--bg:var(--stage-receive-bg)}.stage-pill[data-stage=install]{--c:var(--stage-install);--bg:var(--stage-install-bg)}.stage-pill[data-stage=accept]{--c:var(--stage-accept);--bg:var(--stage-accept-bg)}.stage-pill[data-stage=pay]{--c:var(--stage-pay);--bg:var(--stage-pay-bg)}.stage-pill[data-stage=done]{--c:var(--stage-done);--bg:var(--stage-done-bg)}.urgency-pill{white-space:nowrap;height:22px;color:var(--ink-500);background:#f0ede6;border-radius:6px;align-items:center;padding:0 8px;font-size:12px;font-weight:650;display:inline-flex}.urgency-pill[data-tone=warm]{color:#a14b05;background:#fdecd6}.urgency-pill[data-tone=hot]{color:#fff;background:var(--danger)}.q-note{border:1px dashed var(--note-line);background:var(--note-bg);max-width:100%;min-height:24px;color:var(--note);cursor:help;vertical-align:middle;box-sizing:border-box;border-radius:6px;align-items:center;gap:6px;padding:1px 9px;font-size:12px;line-height:1.5;display:inline-flex}.q-note-id{white-space:nowrap;font-weight:700}.q-note-text{color:#6b5a33}.q-note:hover{background:#ffefb8}.q-note.is-default{color:#56657a;background:#f3f1ec;border-style:dotted;border-color:#b9b2a3}.q-note.is-default .q-note-text{color:#6b798d}.q-note.is-default:hover{background:#ece8e0}.q-note-tip.ant-tooltip{position:fixed}.order-hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin:4px 0 18px;display:flex}.order-hero-main{min-width:0}.order-hero-kicker{color:var(--ink-400);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.order-hero-kicker .mono:first-child{color:var(--primary);font-size:14px;font-weight:600}.order-hero-dot{background:var(--line-2);border-radius:50%;width:4px;height:4px}.order-hero-title{letter-spacing:-.015em;margin:4px 0 12px;font-size:28px;font-weight:750;line-height:1.3}.order-hero-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.meta-chip{background:var(--surface);border:1px solid var(--line);white-space:nowrap;border-radius:8px;align-items:center;gap:6px;height:28px;padding:0 10px;font-size:13px;font-weight:600;display:inline-flex}.meta-chip-label{color:var(--ink-400);font-size:12px;font-weight:500}.meta-chip.is-warn{color:var(--danger);background:var(--danger-soft);border-color:#f2c4bd}.order-trail{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);margin-bottom:14px;padding:16px 18px 18px}.trail-head{flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.trail-title{font-size:14px;font-weight:700}.trail-hint{color:var(--ink-400);font-size:12px}.trail-rail{grid-template-columns:repeat(9,minmax(0,1fr));gap:0;margin:0 0 10px;padding:0;list-style:none;display:grid}.trail-step{text-align:center;flex-direction:column;align-items:center;gap:8px;min-width:0;padding:0 4px 4px;display:flex;position:relative}.trail-step:after{content:"";z-index:2;background:var(--line);pointer-events:none;border-radius:2px;width:calc(100% - 56px);height:2px;position:absolute;top:15px;left:calc(50% + 22px)}.trail-step:last-child:after{display:none}.trail-step[data-status=finish]:after{background:var(--primary)}.trail-node{background:var(--surface);width:32px;height:32px;color:var(--ink-400);box-shadow:inset 0 0 0 2px var(--line-2);z-index:1;border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:inline-flex;position:relative}.trail-step[data-status=finish] .trail-node{background:var(--primary);color:#fff;box-shadow:none}.trail-step[data-status=process] .trail-node{background:var(--surface);color:var(--primary);box-shadow:inset 0 0 0 2px var(--primary), 0 0 0 5px var(--primary-soft)}.trail-label{font-size:14px;font-weight:700}.trail-days{min-height:16px;color:var(--ink-400);font-variant-numeric:tabular-nums;font-size:11px}.trail-step[data-status=wait] .trail-label{color:var(--ink-500)}.trail-now{color:var(--ink-500);margin:0;font-size:13px}.trail-now strong{color:var(--ink-800)}.trail-cycle{color:var(--ink-800);font-variant-numeric:tabular-nums;margin-left:10px}@media (width<=980px){.trail-rail{scrollbar-width:thin;grid-template-columns:repeat(9,minmax(84px,1fr));padding-bottom:4px;overflow-x:auto}}.next-step{border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-1);flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:14px;padding:14px 16px;display:flex}.next-step[data-tone=mine]{background:#eef7f1;border-color:#c9e7d3}.next-step-icon{color:var(--primary);font-size:22px;display:inline-flex}.next-step[data-tone=mine] .next-step-icon,.next-step[data-tone=done] .next-step-icon{color:var(--stage-done)}.next-step-body{flex:1;min-width:240px}.next-step-kicker{color:var(--ink-400);font-size:12px;font-weight:700}.next-step[data-tone=mine] .next-step-kicker{color:var(--stage-done)}.next-step-text{margin-top:2px;font-size:15px;font-weight:600;line-height:1.6}.next-step-actions{flex-wrap:wrap;gap:8px;display:flex}.order-hero-assign{color:var(--ink-500);flex-wrap:wrap;align-items:baseline;gap:6px 10px;margin-top:10px;font-size:13px;display:flex}.assign-seg{flex-wrap:wrap;align-items:baseline;gap:6px;display:inline-flex}.assign-seg-name{color:var(--ink-400);font-weight:650}.assign-seg-val{color:var(--ink-800);font-weight:650}.assign-seg-val.is-none{color:var(--ink-400);font-weight:500}.assign-seg-val.is-pm{color:var(--stage-material)}.assign-seg-lock,.assign-seg-prev{color:var(--ink-400);font-size:12px}.assign-sep{color:var(--line-2)}.assign-seg .ant-select{width:190px}.assign-link{font:inherit;color:var(--primary);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:13px;font-weight:600;text-decoration:underline}.assign-link:hover{color:var(--primary-hover)}.order-tabs.ant-tabs{margin-top:6px}.order-tabs>.ant-tabs-nav{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-bottom:0;margin-bottom:0;padding:0 20px}.order-tabs>.ant-tabs-nav:before{border-color:var(--line)!important}.order-tabs .ant-tabs-tab{color:var(--ink-500);font-weight:600}.tab-label{align-items:center;gap:6px;display:inline-flex}.tab-label[data-mark=wait]{color:var(--ink-400);font-weight:500}.tab-mark{color:var(--ink-400);font-size:14px}.tab-dot{background:var(--primary);border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.tab-label[data-mark=now]{color:var(--primary)}.tab-mine{height:20px;color:var(--stage-done);background:#eef7f1;border-radius:4px;align-items:center;padding:0 7px;font-size:12px;font-weight:700;display:inline-flex}.wait-line{color:var(--ink-500);margin:0 0 12px;font-size:14px;font-weight:600}.field-tabs{margin:8px 0 16px}.field-tabs .adm-tabs-header{border-bottom:1px solid var(--line)}.field-tabs .adm-tabs-tab{font-size:14px}.field-tabs .adm-tabs-content{padding:12px 0 0}.order-tabs .ant-tabs-tab+.ant-tabs-tab{margin-left:28px}.order-tabs>.ant-tabs-body-holder{background:var(--surface);border:1px solid var(--line);border-radius:0 0 var(--radius-lg) var(--radius-lg);box-shadow:var(--shadow-1);border-top:0;padding:20px}.order-tabs .ant-card{border-radius:var(--radius-lg);border-color:var(--line);background:var(--paper-2);box-shadow:none}.order-tabs .ant-card-head{border-bottom-color:var(--line);background:0 0;font-weight:700}.order-tabs .ant-descriptions-bordered .ant-descriptions-view{border-radius:10px}.order-tabs .ant-descriptions-item-label{color:var(--ink-500);white-space:nowrap;font-weight:600}.tab-empty{color:var(--ink-400);align-items:center;gap:8px;padding:6px 2px;font-size:13px;display:flex}.tab-empty .anticon{font-size:15px}.view-block{background:var(--paper-2);border:1px solid var(--line);border-radius:10px;padding:14px 16px}.edit-block{background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius-lg);padding:16px 18px}.edit-block-title{margin:0 0 12px;font-size:15px;font-weight:750}.source-note{background:var(--surface);border:1px solid var(--line);color:var(--ink-500);border-radius:8px;margin:0 0 14px;padding:8px 12px;font-size:13px}.source-note[data-source=pm]{color:var(--stage-material);background:var(--stage-material-bg);border-color:#ddd2fa;font-weight:600}.check-list.ant-checkbox-group{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;width:100%;display:grid}.check-list .ant-checkbox-wrapper{border:1px solid var(--line);background:var(--surface);border-radius:8px;margin:0;padding:10px 12px;font-weight:600;transition:border-color .15s,background .15s}.check-list .ant-checkbox-wrapper:hover{border-color:var(--primary)}.check-list .ant-checkbox-wrapper-checked{border-color:color-mix(in srgb, var(--primary) 45%, transparent);background:var(--primary-soft)}.form-grid{flex-wrap:wrap;align-items:flex-start;gap:0 24px;display:flex}.form-actions{border-top:1px dashed var(--line-2);flex-wrap:wrap;align-items:center;gap:12px;padding-top:14px;display:flex}.form-actions-hint{color:var(--ink-500);font-size:13px}.view-section{margin:8px 0 0;font-size:14px;font-weight:700}.unit-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;display:grid}.unit-card{border:1px solid var(--line);background:var(--paper-2);border-radius:10px;padding:12px}.unit-name{font-weight:700}.unit-ct{color:var(--ink-500);font-size:13px}.drawer-section{margin:20px 0 10px;font-size:14px;font-weight:700}.state-log{border-left:2px solid var(--line);margin:0;padding:0 0 0 16px;font-size:13px;list-style:none}.state-log li{color:var(--ink-600);grid-template-columns:128px 64px 1fr;gap:8px;padding:7px 0;display:grid;position:relative}.state-log li:before{content:"";background:var(--surface);width:10px;height:10px;box-shadow:inset 0 0 0 2px var(--primary);border-radius:50%;position:absolute;top:13px;left:-22px}.state-log li:last-child:before{background:var(--primary)}.state-log-at{color:var(--ink-400);font-size:12px}.state-log-by{color:var(--ink-900);font-weight:650}.order-form{flex-direction:column;gap:16px;display:flex}.req-mark{color:var(--danger);margin-left:3px;font-weight:700}.form-section{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);grid-template-columns:240px minmax(0,1fr);gap:24px;padding:24px;display:grid}.form-section-title{margin:0;font-size:17px;font-weight:750}.form-section-desc{color:var(--ink-500);margin:8px 0 0;font-size:13px;line-height:1.7}.form-section-body{min-width:0}.form-section-body>.ant-form-item:last-child,.form-section-body>:last-child .ant-form-item:last-child{margin-bottom:0}@media (width<=1080px){.form-section{grid-template-columns:1fr;gap:12px;padding:20px}}.order-form .ant-form-item-label>label{color:var(--ink-700);font-weight:600}.order-form .ant-form-item-extra{color:var(--ink-400);margin-top:4px;font-size:12px}.field-row{flex-wrap:wrap;align-items:flex-start;gap:0 20px;display:flex}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;max-width:760px;display:grid}@media (width<=720px){.field-grid{grid-template-columns:1fr}}.meter-field{width:520px;max-width:100%}.meter-extra{white-space:normal}.site-card{border:1px solid var(--line);background:var(--paper-2);border-radius:12px;max-width:760px;margin:0 0 4px;padding:14px 16px}.site-card[hidden]{display:none}.site-summary .ant-descriptions-item-label{color:var(--ink-400);font-weight:600}.site-summary .ant-descriptions-item-content{color:var(--ink-900);font-weight:600}.site-summary .ant-descriptions-row>td{padding-bottom:8px!important}.site-missing{color:var(--danger)}.site-edit-bar{border-top:1px dashed var(--line-2);flex-wrap:wrap;align-items:center;gap:12px;margin-top:4px;padding-top:10px;display:flex}.site-edit-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;margin-top:14px;display:grid}.site-edit-fields[hidden]{display:none}@media (width<=720px){.site-edit-fields{grid-template-columns:1fr}}.pm-equip{background:var(--stage-material-bg);border:1px solid #ddd2fa;border-radius:12px;max-width:760px;margin-bottom:18px;padding:14px 16px}.pm-equip-head{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.pm-equip-title{color:var(--stage-material);font-weight:700}.pm-equip-desc{color:var(--ink-600);font-size:13px;line-height:1.65}.pm-equip-row{background:var(--surface);border:1px solid var(--line);border-radius:10px;margin-bottom:10px;padding:12px 14px 4px}.pm-equip-main{flex-wrap:wrap;align-items:flex-start;gap:0 12px;display:flex}.pm-equip-remove{margin-top:30px}.pm-equip-main .pm-equip-remove{margin-left:auto}.pm-equip-ct{border-left:2px solid var(--line);flex-direction:column;align-items:flex-start;margin:0 0 8px 4px;padding:8px 0 0 14px;display:flex}.pm-equip-ct-row{flex-wrap:wrap;align-items:flex-start;gap:0 12px;display:flex}.pm-equip-ct-add{margin-bottom:4px;padding-left:0}.pm-equip-add{background:#fff9;width:100%;height:40px}.pm-equip-counts{flex-wrap:wrap;gap:10px 18px;margin-bottom:14px;display:flex}.pm-equip-count{align-items:center;gap:8px;display:flex}.pm-equip-count-label{font-size:13px;font-weight:600}.pm-unit{background:var(--surface);border:1px solid var(--line);border-radius:10px;margin-bottom:10px;padding:12px 14px}.pm-unit-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.pm-unit-ct{border-top:1px dashed var(--line);margin-top:10px;padding-top:8px}.pm-unit-ct-note{color:var(--ink-400);margin-bottom:8px;font-size:12px}.pm-unit-ct-row{align-items:center;gap:6px;margin-bottom:6px;margin-right:10px;display:inline-flex}.form-footer{z-index:5;border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);background:#ffffffe6;justify-content:flex-end;align-items:center;gap:10px;margin-top:4px;padding:14px 20px;display:flex;position:sticky;bottom:0;box-shadow:0 -8px 24px #0e1b2c14}@media (width>=961px){.form-footer{margin-right:64px}}.form-footer-hint{color:var(--ink-500);margin-right:auto;font-size:13px}.form-footer .ant-btn{min-width:96px;height:40px}@media (width<=720px){.form-footer{flex-wrap:wrap}.form-footer-hint{width:100%}}.site-select-dropdown{min-width:520px;max-width:calc(100vw - 32px)}.site-select-dropdown .ant-select-item-option-content{white-space:normal}.site-option{flex-direction:column;gap:2px;padding:4px 0;line-height:1.4;display:flex}.site-option-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.site-option-meter{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:600}.site-option-name{font-weight:600}.site-option-addr{color:var(--ink-500);font-size:12px}.site-option-empty{white-space:normal;max-width:420px;color:var(--ink-500);line-height:1.5}@media (width<=600px){.site-select-dropdown{min-width:0}}.profile-panel{max-width:720px}.profile-hero{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:20px;display:flex}.profile-avatar{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:20px;font-weight:700;display:inline-flex}.profile-name{font-size:20px;font-weight:750}.profile-sub{color:var(--ink-500);font-size:13px}.profile-panel .ant-descriptions{padding:16px 20px 20px}.field-shell{padding-top:var(--sat);background:var(--ink-900)}.field-shell-body{background:var(--paper)}.fpage{padding-top:var(--sat);background:var(--surface)}.fpage-body{background:var(--paper)}.field-shell,.fpage{flex-direction:column;flex:1;min-height:0;display:flex}.field-shell-body,.fpage-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.field-shell .adm-tab-bar{background:var(--surface);border-top:1px solid var(--line);padding-bottom:var(--sab)}.field-shell .adm-tab-bar-item{padding-block:6px 4px}.field-shell .adm-tab-bar-item-title{font-size:11px;font-weight:600}.field-page{padding-bottom:20px}.ftop{background:var(--ink-900);color:#fff;padding:6px 16px 14px}.ftop .fq{margin-top:12px}.ftop-sub{color:#8ea0bb;font-size:12px}.ftop-title{letter-spacing:-.01em;margin:2px 0 10px;font-size:24px;font-weight:750}.ftop-search{--background:#ffffff1a;--border-radius:10px;--height:40px;--placeholder-color:#8ea0bb;--padding-left:12px}.ftop-search .adm-search-bar-input-box{color:#fff;border:0}.ftop-search .adm-input-element{color:#fff}.ftop-search .adm-search-bar-input-box-icon{color:#8ea0bb}.ftabs{z-index:2;background:var(--surface);border-bottom:1px solid var(--line);--title-font-size:15px;--active-line-height:3px;--active-line-border-radius:3px;position:sticky;top:0}.ftabs .adm-tabs-tab{padding:12px 0 10px;font-weight:600}.ftab-count{box-sizing:border-box;min-width:20px;height:20px;font-size:12px;font-family:var(--font-mono);color:var(--ink-600);vertical-align:1px;background:#ece8df;border-radius:10px;justify-content:center;align-items:center;margin-left:6px;padding:0 6px;display:inline-flex}.ftab-count.is-hot{color:#fff;background:#f2750a}.task-list{flex-direction:column;gap:10px;padding:12px;display:flex}.task-card{box-sizing:border-box;text-align:left;border:1px solid var(--line);background:var(--surface);width:100%;color:inherit;font:inherit;cursor:pointer;box-shadow:var(--shadow-1);-webkit-tap-highlight-color:transparent;border-radius:14px;flex-direction:column;align-items:stretch;gap:6px;padding:14px 14px 12px;text-decoration:none;transition:transform .12s,box-shadow .15s;display:flex;position:relative}.task-card:active{box-shadow:none;transform:scale(.985)}.task-card-top{align-items:center;gap:8px;display:flex}.task-card-id{font-size:15px;font-weight:600}.task-card-go{color:var(--ink-300);margin-left:auto;font-size:16px}.task-card-name{font-size:17px;font-weight:700;line-height:1.4}.task-card-meta{color:var(--ink-500);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.task-card-foot{border-top:1px dashed var(--line);justify-content:space-between;align-items:center;gap:8px;margin-top:2px;padding-top:8px;display:flex}.task-action{color:var(--ink-500);font-size:13px;font-weight:600}.task-action.is-mine{color:#c25e05}.task-chip{height:22px;color:var(--ink-600);white-space:nowrap;background:#ece8df;border-radius:6px;align-items:center;padding:0 8px;font-size:12px;font-weight:600;display:inline-flex}.fempty{padding:40px 0 24px}.fempty-block{color:var(--ink-600);padding:24px 16px}.fempty-inline{color:var(--ink-400);padding:4px 0;font-size:14px}.fpage-nav{background:var(--surface);border-bottom:1px solid var(--line);--height:48px}.fpage-nav .adm-nav-bar-title{font-size:16px;font-weight:700}.fpage-nav .adm-nav-bar-back-arrow{font-size:22px}.fpage-foot{padding:10px 12px;padding-bottom:calc(10px + var(--sab));border-top:1px solid var(--line);background:#fffffff5;box-shadow:0 -8px 20px #0e1b2c0f}.fpage-foot .adm-button-large{--border-radius:12px;height:50px;font-size:17px;font-weight:700}.fpage-foot-hint{color:var(--ink-400);text-align:center;margin-top:6px;font-size:12px;line-height:1.5}.field-crumb{color:var(--ink-400);padding:10px 16px 0;font-size:12px}.fhero{padding:8px 16px 14px}.fhero-tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fhero-title{letter-spacing:-.01em;margin:10px 0 4px;font-size:22px;font-weight:750;line-height:1.35}.fhero-addr{color:var(--ink-500);font-size:14px;line-height:1.5}.fstages{grid-template-columns:repeat(9,minmax(0,1fr));gap:4px;margin:14px 0 0;padding:0;list-style:none;display:grid}.fstage{flex-direction:column;gap:6px;min-width:0;display:flex}.fstage-bar{background:#e2ded4;border-radius:3px;height:5px}.fstage[data-status=finish] .fstage-bar{background:var(--field)}.fstage[data-status=process] .fstage-bar{background:linear-gradient(90deg, var(--field) 50%, #9fd8c4 50%)}.fstage[data-status=skip] .fstage-bar{background:repeating-linear-gradient(135deg,#e2ded4 0 3px,#0000 3px 6px)}.fstage-label{color:var(--ink-400);text-align:center;font-size:11px;font-weight:600;line-height:1.3}.fstage[data-status=process] .fstage-label{color:var(--field)}.fstage[data-status=finish] .fstage-label{color:var(--ink-600)}.fnow{color:var(--ink-700);margin-top:12px;font-size:14px;font-weight:600}.fnotice{color:var(--ink-600);background:#eef1f6;border-radius:12px;margin:0 12px 12px;padding:12px 14px;font-size:14px;line-height:1.6}.fnotice.is-block{margin:16px 12px}.fnotice.is-warn{color:#7a4a12;background:#fdf0dc}.fcard{background:var(--surface);border:1px solid var(--line);border-radius:14px;margin:0 12px 12px;padding:14px 16px}.fcard.is-form{border-color:var(--line-2)}.fcard-edit{color:var(--field);margin-left:auto;font-size:12px;font-weight:650}.fcard-title{align-items:center;gap:8px;margin:0 0 10px;font-size:16px;font-weight:750;display:flex}.fcard-no{width:22px;height:22px;font-size:12px;font-family:var(--font-mono);background:var(--ink-900);color:#fff;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.fdl{grid-template-columns:84px 1fr;gap:10px 12px;margin:0;font-size:14px;line-height:1.55;display:grid}.fdl dt{color:var(--ink-400)}.fdl dd{overflow-wrap:anywhere;min-width:0;margin:0;font-weight:500}.fdl-contact{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.fcall{background:var(--field-soft);min-height:36px;color:var(--field);font-weight:650;font-family:var(--font-mono);border-radius:18px;align-items:center;gap:6px;padding:0 12px;font-size:13px;text-decoration:none;display:inline-flex}.fchips{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.fchip{background:var(--field-soft);height:28px;color:var(--field);border-radius:8px;align-items:center;padding:0 10px;font-size:13px;font-weight:650;display:inline-flex}.fchip.is-unit{color:var(--ink-700);background:#eef1f6;font-weight:600}.fmeta{color:var(--ink-500);margin:-2px 0 10px;font-size:13px;line-height:1.55}.fnote{margin:0;font-size:14px;line-height:1.6}.fq{color:var(--note);background:var(--note-bg);border:1px dashed var(--note-line);border-radius:8px;margin-top:10px;padding:6px 10px;font-size:12px;line-height:1.55}.fq.is-default{color:#56657a;background:#f3f1ec;border-style:dotted;border-color:#b9b2a3}.fq.is-page{margin:12px}.fform-head{color:var(--ink-500);flex-direction:column;gap:2px;padding:12px 16px 10px;font-size:13px;display:flex}.fform-head>span:last-child{color:var(--ink-900);font-size:17px;font-weight:700}.fchoice{flex-direction:column;gap:8px;display:flex}.fchoice .adm-radio{border:1px solid var(--line);border-radius:10px;margin:0;padding:12px}.fchoice .adm-radio-checked{border-color:var(--field);background:var(--field-soft)}.fform{--prefix-width:5.2em;--border-inner:1px solid var(--line);--border-top:0;--border-bottom:0;--padding-left:0;margin-top:10px}.fform .adm-list-body,.fform .adm-list-item{background:0 0}.fcount-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:8px 0;font-weight:600;display:flex}.fcount-row:first-of-type{border-top:0}.fcount-row[data-active]{color:var(--field)}.fcount-row .adm-stepper{--height:36px;--input-width:44px;--button-width:40px;--button-background-color:#eef1f6;--border-radius:8px;--input-font-size:16px}.funit{border-top:1px solid var(--line);padding:12px 0}.funit:first-of-type{border-top:0;padding-top:0}.funit-name{align-items:center;gap:6px;margin-bottom:8px;font-weight:700;display:flex}.funit-ok{color:var(--field);background:var(--field-soft);border-radius:10px;margin-left:auto;padding:2px 8px;font-size:12px;font-weight:650}.funit .adm-image-uploader{--cell-size:76px;--gap:8px}.funit .adm-image-uploader-upload-button{background:#eef1f6;border-radius:10px}.funit-ct{margin-top:10px}.funit-ct-list{flex-direction:column;gap:10px;margin-top:10px;display:flex}.funit-ct-row{flex-direction:column;gap:4px;display:flex}.funit-ct-row .adm-space{--gap:6px}.funit-ct-label{color:var(--ink-500);font-size:12px;font-weight:650;font-family:var(--font-mono)}.funit-ct-row .adm-selector{--checked-color:var(--field-soft);--checked-text-color:var(--field);--border-radius:8px}.funit-ct-row .adm-selector-item{font-size:13px}.ftools{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ftools .adm-checkbox{border:1px solid var(--line);border-radius:10px;padding:10px}.ftools .adm-checkbox-checked{border-color:var(--field);background:var(--field-soft)}.ftextarea{border:1px solid var(--line-2);box-sizing:border-box;background:var(--paper-2);border-radius:10px;margin-top:12px;padding:8px 10px}.ftop.is-profile{padding:22px 16px 20px}.field-profile-hero{align-items:center;gap:14px;display:flex}.field-avatar{background:var(--field);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:20px;font-weight:700;display:flex}.field-profile-name{font-size:20px;font-weight:750}.field-profile-sub{color:#8ea0bb;margin-top:2px;font-size:13px}.flist{border:1px solid var(--line);--border-top:0;--border-bottom:0;border-radius:14px;margin:12px;overflow:hidden}.flist .adm-list-header{background:var(--surface);color:var(--ink-500);font-weight:700}.flist .adm-list-item-content-extra{color:var(--ink-700);text-align:right;overflow-wrap:anywhere;max-width:72%}.pending-tag{cursor:help}.pending-lines{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.pending-lines-label{color:var(--ink-500);margin-right:4px;font-size:13px;font-weight:650}.line-chip{border:1px solid var(--line);background:var(--paper-2);border-radius:8px;align-items:center;height:28px;padding:0 10px;font-size:13px;font-weight:600;display:inline-flex}.form-section-body>.field-row:has(+.site-card[hidden])>.ant-form-item{margin-bottom:0}.flist .adm-list-item-content-extra .mono{font-size:13px}.field-shell-body,.fpage-body{scrollbar-width:thin;scrollbar-color:#0e1b2c47 transparent}.field-shell-body::-webkit-scrollbar{width:6px}.fpage-body::-webkit-scrollbar{width:6px}.field-shell-body::-webkit-scrollbar-thumb{background:#0e1b2c47;border-radius:3px}.fpage-body::-webkit-scrollbar-thumb{background:#0e1b2c47;border-radius:3px}.fpage-body:last-child{padding-bottom:calc(12px + var(--sab))}.prep-form{gap:20px;display:grid}.prep-form label{gap:8px;min-width:0;font-weight:500;display:grid}.prep-form input:not([type=checkbox]),.prep-form select{border:1px solid var(--line,#ccc);width:100%;min-width:0;font:inherit;box-sizing:border-box;background:#fff;border-radius:4px;padding:10px 12px}.prep-form fieldset{border:0;gap:12px;margin:0;padding:0;display:grid}.prep-form .prep-reuse{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.prep-form .prep-reuse>label{align-items:center;gap:6px;font-weight:400;display:inline-flex}.prep-form legend{margin-bottom:12px;font-weight:600}.prep-form .prep-check{align-items:center;gap:10px;font-weight:400;display:flex}.prep-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.prep-submit{color:#fff;font:inherit;cursor:pointer;background:#175d85;border:0;border-radius:4px;justify-self:start;padding:12px 20px}.screen .prep-grid{grid-template-columns:minmax(0,1fr)}.screen .edit-block{margin:0;padding:20px}.screen .prep-submit{width:100%}.screen .prep-photo input{font-size:14px}.time-filter{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}@media (width<=600px){.prep-grid{grid-template-columns:minmax(0,1fr)}}.order-tabs .edit-block{box-shadow:none;border:0;border-radius:0;padding:0}.screen .edit-block{box-shadow:none;border:0;border-radius:0}.screen .prep-form{font-size:16px}.prep-form .prep-check{cursor:pointer;min-height:36px}.prep-check input{flex:none;width:18px;height:18px}.prep-form button:not(.prep-submit){color:#175d85;cursor:pointer;font:inherit;background:#fff;border:1px solid #aebac2;border-radius:4px;padding:6px 12px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:560px;display:grid}.photo-slot{min-width:0}.photo-slot .ant-image{max-width:240px}.photo-slot-label{margin-bottom:8px;font-weight:500}.measure-row{margin-bottom:20px}.measure-row h4{font-size:inherit;margin:0 0 10px;font-weight:500}.install-photos-view{margin:24px 0}.install-photos-view section{margin-bottom:28px}.install-photos-view section>h4{margin:0 0 16px;font-size:16px}.check-block{margin-top:16px}.check-title{margin:0 0 10px;font-size:14px;font-weight:700}.check-gap{margin-top:16px}.check-sub{margin:0 0 6px;font-size:13px;font-weight:700}.measure-unit{margin-top:12px}.measure-table{border-collapse:collapse;table-layout:fixed;width:100%;max-width:640px;margin-top:6px}.measure-table th,.measure-table td{border:1px solid var(--line);text-align:left;vertical-align:middle;padding:5px 10px;font-size:13px;font-weight:500}.measure-table thead th{color:var(--ink-500);font-size:12px;font-weight:650}.measure-table .col-item{width:128px}.thumb-missing{box-sizing:border-box;border:1px dashed var(--line-2);width:72px;height:72px;color:var(--ink-400);border-radius:6px;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.thumb-grid{flex-wrap:wrap;gap:12px;display:flex}.thumb-cell{width:72px}.thumb-cell-label{color:var(--ink-500);margin-top:4px;font-size:12px;line-height:1.3}.unit-photos{margin-top:10px}.photo-filter{gap:10px}.photo-filter-multi{min-width:190px;max-width:280px}.photo-filter-multi.is-narrow{min-width:150px}.photo-project{margin-bottom:16px}.photo-site{padding:12px 18px 8px}.photo-site+.photo-site{border-top:1px solid var(--line)}.photo-site-head{align-items:baseline;gap:10px;font-size:14px;font-weight:700;display:flex}.photo-site-meter{color:var(--ink-400);font-size:12px;font-weight:500}.photo-count{color:var(--ink-400);white-space:nowrap;margin-left:auto;font-size:12px;font-weight:500}.photo-order{margin-top:10px}.photo-order-head{cursor:pointer;-webkit-user-select:none;user-select:none;flex-wrap:wrap;align-items:baseline;gap:10px;font-size:13px;font-weight:600;display:flex}.photo-order-date{color:var(--ink-400);font-weight:500}.photo-stage-counts{color:var(--ink-400);font-size:12px;font-weight:500}.photo-toggle{height:auto;padding:0}.photo-stage{margin-top:8px}.photo-stage-head{align-items:baseline;margin:4px 0 8px;font-size:13px;font-weight:700;display:flex}.photo-cell{width:96px}.photo-cell .thumb-cell-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.photo-file{width:96px;color:var(--ink-400);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11px;overflow:hidden}.field-shell,.fpage,.formal-field,.screen{--adm-color-primary:#0b7a5f;--adm-color-success:#15803d;--adm-color-warning:#a14b05;--adm-color-danger:#c23a2b;--adm-color-text:#0e1b2c;--adm-color-text-secondary:#56657a;--adm-color-weak:#6b798d;--adm-color-light:#8a96a8;--adm-color-border:#e9e5dc;--adm-color-box:#f4f2ed;--adm-color-background:#fff;--adm-font-family:var(--font-sans);--adm-font-size-main:15px;--adm-radius-m:10px}
