.wrap[data-v-b6b9e48b]{max-width:880px;margin:0 auto;padding:32px 20px}header[data-v-b6b9e48b]{display:flex;justify-content:space-between}nav a[data-v-b6b9e48b]{margin-left:16px}h1[data-v-b6b9e48b]{font-size:36px;margin:48px 0 12px}.btn[data-v-b6b9e48b]{display:inline-block;margin-top:20px;background:#1f6feb;color:#fff;padding:10px 16px;text-decoration:none}.factory-shell[data-v-8cc77e41]{min-height:100vh;display:flex;background:#f6f5f1;color:#272b29;font-family:var(--font-cjk)}.factory-nav[data-v-8cc77e41]{width:196px;flex:0 0 196px;background:#242a28;color:#d8dcd9;padding:30px 16px 20px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;box-sizing:border-box;z-index:35}.factory-brand[data-v-8cc77e41]{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none;font-size:24px;font-weight:650;letter-spacing:2px;padding:0 9px 36px}.brand-mark[data-v-8cc77e41]{width:40px;height:44px;display:grid;place-items:center;color:#f5af7c;background:#353b35;border:1px solid #555a4e;border-radius:12px}.brand-sub[data-v-8cc77e41]{display:block;font-size:10px;color:#bbc0bb;letter-spacing:1.2px;font-weight:400;margin-top:3px}.nav-section-label[data-v-8cc77e41]{font-size:10px;letter-spacing:1.8px;color:#9aa69f;padding:8px 14px 16px}.factory-nav nav[data-v-8cc77e41]{display:grid;gap:7px}.factory-nav-link[data-v-8cc77e41]{display:flex;gap:12px;align-items:center;padding:13px;border-radius:7px;color:#bdc6c0;text-decoration:none;font-size:13px;min-height:44px;box-sizing:border-box;transition:background .18s,color .18s}.factory-nav-link[data-v-8cc77e41]:hover{background:#333b36;color:#fff}.factory-nav-link.active[data-v-8cc77e41]{color:#ffbf95;background:#3d3d32}.nav-dot[data-v-8cc77e41]{width:5px;height:5px;border-radius:100%;background:#f29a66;margin-left:auto}.nav-bottom[data-v-8cc77e41]{margin-top:auto;padding:22px 10px 0}.workspace-label[data-v-8cc77e41]{font-size:11px;display:flex;align-items:center;gap:8px;color:#d2d8d3}.workspace-indicator[data-v-8cc77e41]{width:6px;height:6px;border-radius:50%;background:#90b39d}.nav-bottom p[data-v-8cc77e41]{font-size:10px;color:#a0aaa3;margin:8px 0 22px}.nav-plan[data-v-8cc77e41]{display:flex;justify-content:space-between;border-top:1px solid #434b45;padding-top:18px;font-size:11px;color:#c9d1ca;text-decoration:none}.factory-main[data-v-8cc77e41]{flex:1;min-width:0}.factory-topbar[data-v-8cc77e41]{height:70px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 32px;border-bottom:1px solid #e5e5df;background:#fafaf7}.factory-location[data-v-8cc77e41],.factory-account[data-v-8cc77e41]{display:flex;align-items:center;gap:12px;font-size:12px}.factory-location-icon[data-v-8cc77e41]{color:#788079;display:flex}.top-divider[data-v-8cc77e41]{color:#c4c6c1;padding:0 4px}.muted[data-v-8cc77e41]{color:#72786f}.factory-account[data-v-8cc77e41]{gap:10px}.account-avatar[data-v-8cc77e41]{width:28px;height:28px;background:#e9eade;color:#545c44;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700}.factory-topbar button[data-v-8cc77e41]{border:0;background:none;cursor:pointer;display:grid;place-items:center;color:#6b756d;width:36px;height:36px;border-radius:6px}.factory-topbar button[data-v-8cc77e41]:hover{background:#e9ece5}.factory-content[data-v-8cc77e41]{padding:28px 32px 40px;max-width:1800px;margin:auto;box-sizing:border-box}.factory-topbar .mobile-menu[data-v-8cc77e41]{display:none}.expired-link[data-v-8cc77e41]{font-size:11px;color:#a34220}.nav-scrim[data-v-8cc77e41]{display:none}a[data-v-8cc77e41]:focus-visible,button[data-v-8cc77e41]:focus-visible{outline:3px solid #e3a17b;outline-offset:3px}@media(min-width:1600px){.factory-nav[data-v-8cc77e41]{width:218px;flex-basis:218px}.factory-content[data-v-8cc77e41]{padding:36px 48px}.factory-topbar[data-v-8cc77e41]{padding:0 48px}}@media(max-width:1100px){.factory-nav[data-v-8cc77e41]{width:168px;flex-basis:168px;padding-left:10px;padding-right:10px}.factory-content[data-v-8cc77e41]{padding:22px 22px 32px}.factory-topbar[data-v-8cc77e41]{padding:0 22px}.factory-nav-link[data-v-8cc77e41]{font-size:12px}.factory-brand[data-v-8cc77e41]{font-size:22px;padding-left:6px}}@media(max-width:760px){.factory-nav[data-v-8cc77e41]{visibility:hidden;position:fixed;left:-215px;width:196px;transition:left .2s}.factory-nav.is-open[data-v-8cc77e41]{left:0;visibility:visible}.factory-topbar .mobile-menu[data-v-8cc77e41]{display:grid}.factory-topbar[data-v-8cc77e41]{height:58px;padding:0 12px}.factory-location[data-v-8cc77e41]{gap:7px;font-size:11px}.factory-location-icon[data-v-8cc77e41],.top-divider[data-v-8cc77e41],.factory-location .muted[data-v-8cc77e41],.account-name[data-v-8cc77e41]{display:none}.factory-account[data-v-8cc77e41]{gap:3px}.factory-content[data-v-8cc77e41]{padding:20px 14px 32px}.nav-scrim[data-v-8cc77e41]{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#17201b66;border:0}.factory-location>span[data-v-8cc77e41]{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(prefers-reduced-motion:reduce){[data-v-8cc77e41]{transition:none!important}}.head[data-v-866d4495]{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}.quote-studio{--ink: #292f2a;--muted: #737a70;--border: #e4e6df;--accent: #bc6034;--sage: #566d5b;color:var(--ink);font-size:13px;line-height:1.6}.quote-studio *,.studio-form *,.drawer-footer *{box-sizing:border-box}.quote-studio button,.studio-form button,.drawer-footer button{font:inherit;cursor:pointer;transition:background .18s,color .18s,border-color .18s}.quote-studio button:disabled,.studio-form button:disabled,.drawer-footer button:disabled{cursor:not-allowed;opacity:.45}.quote-studio button:focus-visible,.quote-studio a:focus-visible,.studio-form button:focus-visible,.drawer-footer button:focus-visible{outline:3px solid #da976e;outline-offset:3px}.studio-breadcrumb{display:flex;align-items:center;gap:9px;color:#737970;font-size:11px;margin-bottom:26px}.studio-breadcrumb a{color:#777e74;text-decoration:none}.studio-breadcrumb>a:hover{color:#ad582e}.studio-breadcrumb>span:not(.sync-state){font-family:ui-monospace,SFMono-Regular,monospace;font-size:10px}.sync-state{margin-left:auto;display:flex;align-items:center;gap:6px;font-size:10px}.sync-state>span{width:5px;height:5px;background:#698471;border-radius:50%}.sync-state>span.saving{background:#bd6033}.sync-state>span.failed{background:#c65940}.studio-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:26px}.eyebrow{font-family:ui-monospace,SFMono-Regular,monospace;font-size:9px;letter-spacing:1.8px;font-weight:600;color:#7b8478}.eyebrow>span{color:#a2a99d;margin-left:5px}.studio-heading h1{margin:7px 0;font-size:27px;letter-spacing:-.6px;font-weight:600;display:flex;align-items:center;gap:12px;line-height:1.45;overflow-wrap:anywhere}.status-pill{font-size:10px;font-weight:500;letter-spacing:1px;padding:2px 8px;border:1px solid #d7dacc;border-radius:4px;color:#6b765e;background:#eff0e8;white-space:nowrap}.studio-heading p{font-size:11px;color:var(--muted);margin:0}.bullet{margin:0 9px;color:#babeb3}.heading-actions{display:flex;align-items:center;gap:7px;flex-shrink:0}.icon-button{width:34px;height:36px;border:1px solid transparent;border-radius:5px;background:transparent;display:grid;place-items:center;color:#656e60}.icon-button:hover{background:#eaece4}.action-divider{height:20px;width:1px;background:#dce0d5;margin:0 7px}.studio-button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:9px 16px;border:1px solid transparent;border-radius:6px;font-size:12px!important;font-weight:550;white-space:nowrap}.studio-button.primary{background:#bc6034;color:#fff;border-color:#bc6034;box-shadow:0 2px 3px #6d361015}.studio-button.primary:hover{background:#a54f29;border-color:#a54f29}.studio-button.dark{background:#303d33;color:#fff}.studio-button.dark:hover{background:#465749}.studio-button.subtle{background:#fff;color:#454d41;border-color:#dedfd6}.studio-button.subtle:hover{background:#f0f2e9;border-color:#bdc5b5}.studio-button.small{padding:7px 11px;min-height:34px;font-size:11px!important}.text-button{display:inline-flex;align-items:center;gap:6px;padding:4px 0;min-height:28px;background:none;border:0;color:#8f4b29;font-size:11px!important;white-space:nowrap}.text-button:hover{color:#be6137}.text-button.inline{margin-left:12px;font-size:10px!important}.workflow-strip{display:flex;align-items:center;background:#efefe7;border:1px solid #e1e3d8;border-radius:9px;padding:17px 24px;margin-bottom:26px;gap:21px}.workflow-strip>button{flex:1;display:flex;align-items:center;gap:12px;border:0;text-align:left;background:transparent;color:#485041;padding:0;font-size:12px;min-height:40px}.workflow-strip small{display:block;color:#7b8373;font-size:10px;margin-top:2px}.step-number{font-family:ui-monospace,monospace;font-size:11px;display:grid;place-items:center;flex-shrink:0;width:31px;height:31px;border-radius:50%;background:#f7f7f2;border:1px solid #d7dbcf;color:#778169}.step-number.complete{background:#dce5d7;border-color:#d0dcc9;color:#55734d}.step-connector{width:34px;height:1px;background:#cfd4c5}.workflow-arrow{margin-left:auto;color:#89957e}.studio-columns{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.quote-canvas{min-width:0;display:flex;flex-direction:column;gap:20px}.parts-panel,.charges-panel{border:1px solid var(--border);border-radius:10px;background:#fff;overflow:hidden;box-shadow:0 2px 4px #323a2603}.parts-panel{padding:21px 24px 24px}.section-heading,.line-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-title{display:flex;align-items:center;gap:9px}.section-index{font-family:ui-monospace,monospace;font-size:10px;color:#959e8d;margin-right:1px}.section-title h2,.line-toolbar h2{font-size:13px;font-weight:600;margin:0}.count-label{background:#f0f2ec;color:#7d8675;border:1px solid #e7eae0;border-radius:4px;min-width:19px;height:19px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;vertical-align:middle;margin-left:3px}.parts-empty{display:flex;align-items:center;justify-content:center;gap:26px;padding:31px 10px 10px;min-height:216px}.empty-art{width:150px;flex-shrink:0;transform:rotate(-4deg)}.empty-art svg{width:100%;display:block}.parts-empty h3{font-size:16px;font-weight:550;margin:0 0 8px;letter-spacing:.2px}.parts-empty p{font-size:11px;max-width:245px;color:var(--muted);margin:0 0 18px;line-height:1.85}.parts-empty .studio-button{min-height:34px;padding:7px 12px;font-size:11px!important}.empty-support{display:block;font-size:9px;margin-top:12px;color:#7e8676}.part-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.part-card{min-width:0;display:flex;align-items:center;text-align:left;gap:10px;padding:14px 12px;background:#fafbf7;border:1px solid #e8eae1;border-radius:7px}.part-card:hover,.part-card.selected{border-color:#849c7f;background:#f0f4e9}.part-symbol{width:38px;height:42px;background:#e9efe3;color:#6b805e;display:grid;place-items:center;border-radius:6px;flex-shrink:0}.part-card-copy{min-width:0;flex:1}.part-card-copy strong{font-size:12px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:550}.part-card-copy small{font-size:9px;color:#7d8873;display:block;margin-top:4px;overflow-wrap:anywhere}.part-quantity{font-size:15px;color:#5d6b54;font-family:ui-monospace,monospace}.part-quantity small{display:block;font-size:9px;color:#8a9482;text-align:center}.part-card>svg{color:#899781}.canvas-tabs{display:flex;padding:0 23px;border-bottom:1px solid var(--border);gap:24px;overflow-x:auto;scrollbar-width:thin}.canvas-tabs button{position:relative;display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;flex-shrink:0;font-size:11px;color:#7e8577;background:none;border:0;padding:18px 0 16px}.canvas-tabs button.active{color:#a5532d;font-weight:600}.canvas-tabs button.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:#bd6033}.canvas-tab-content{padding:23px 24px 0;min-height:230px}.line-toolbar{margin-bottom:20px}.line-toolbar p{font-size:10px;color:#89917f;margin:5px 0 0}.charge-list-head{display:flex;justify-content:space-between;background:#f8f9f4;color:#818976;padding:10px 12px;border-radius:5px;font-size:9px;letter-spacing:.6px}.charge-row{display:flex;align-items:center;gap:11px;padding:17px 2px;border-bottom:1px solid #f0f1eb;min-height:89px}.charge-row:last-child{border-bottom:0}.line-check{display:flex;padding:6px 3px;align-self:flex-start;margin-top:1px}.line-check input,.form-checkbox input{accent-color:#687e5b;width:15px;height:15px;cursor:pointer}.charge-description{flex:1;min-width:0}.charge-description>div{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.charge-description strong{font-weight:550;font-size:12px;overflow-wrap:anywhere}.charge-description p{font-size:10px;color:#8a927f;margin:4px 0 0}.charge-description p>span{margin:0 6px;color:#bfc4b5}.charge-description small{font-size:9px;color:#8c9582}.charge-description .rate-needed{color:#ac7837}.tiny-tag{font-size:8px;padding:1px 5px;background:#f0f2e9;color:#838d76;border-radius:3px}.tiny-tag.warm{background:#faf0e4;color:#a06a31}.charge-row.inactive{background:#fdfdfb}.charge-row.inactive .charge-description strong{color:#848c7b}.charge-amount{text-align:right;min-width:84px;display:flex;align-items:flex-end;flex-direction:column}.charge-amount strong{font-family:ui-monospace,monospace;font-weight:550;font-size:14px;color:#3e4c34}.charge-amount .amount-pending{font-size:11px;color:#b78245}.charge-amount .text-button{font-size:9px!important;color:#888f7f;min-height:26px}.charges-empty{text-align:center;padding:23px 24px 27px;min-height:177px}.charges-empty>svg{color:#a3b19b;margin-bottom:10px}.charges-empty h3{font-size:12px;color:#5d6956;font-weight:500;margin:0 0 6px}.charges-empty p{font-size:10px;color:#89927f;line-height:1.9;margin:0 auto 7px;max-width:295px}.charges-empty .text-button{font-size:10px!important}.excluded-list{border-top:1px dashed #dfe4d6;margin-top:10px;font-size:10px;color:#89947c}.excluded-list summary{display:flex;align-items:center;gap:7px;cursor:pointer;min-height:44px}.excluded-list>div{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;background:#f8faf4}.excluded-list summary span{margin-left:auto}.quote-total{background:#fafbf7;border-top:1px solid #e5e9dd;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:10px}.document-label{display:inline-block;border:1px solid #dce2d3;border-radius:4px;padding:2px 7px;color:#7b866b;font-size:9px}.total-context p{font-size:9px;color:#909983;margin:7px 0 0}.total-numbers{display:flex;gap:24px;align-items:center}.total-numbers>div{display:flex;align-items:flex-end;flex-direction:column;gap:4px}.total-numbers span{font-size:9px;color:#859175;white-space:nowrap}.total-numbers strong{font-family:ui-monospace,monospace;font-size:14px;color:#667b51;font-weight:500;white-space:nowrap}.total-numbers .grand-total{border-left:1px solid #dfe5d6;padding-left:24px}.grand-total strong{font-size:21px;letter-spacing:-.7px;color:#384c2a}.grand-total small{font-size:8px;margin-left:5px;color:#9aaa8b}.workspace-footnote{display:flex;align-items:center;justify-content:center;gap:5px;font-size:9px;color:#929b86;margin:-4px 0 0}.assistant-panel{border:1px solid #dcdfd4;border-radius:10px;background:#f4f5ed;overflow:hidden;position:sticky;top:24px}.assistant-heading{padding:19px 19px 17px;border-bottom:1px solid #dfe3d7;display:flex;align-items:center;gap:10px;background:#edf0e5}.assistant-avatar{width:37px;height:37px;display:grid;place-items:center;background:#dfe6d4;color:#687e55;border-radius:10px;border:1px solid #d2ddc6}.assistant-heading h2{font-size:13px;font-weight:600;margin:0;color:#4d603e}.assistant-heading p{font-size:9px;color:#808e73;margin:3px 0 0}.assistant-dot{margin-left:auto;width:6px;height:6px;background:#b1b69c;border-radius:50%}.assistant-dot.online{background:#6e9360}.assistant-content{padding:25px 20px 16px}.assistant-welcome>.eyebrow{font-size:8px;letter-spacing:1.1px;color:#8e9b80}.assistant-welcome h3{font-size:21px;line-height:1.6;font-weight:450;letter-spacing:.5px;color:#44583a;margin:13px 0 11px}.assistant-welcome>p{font-size:11px;color:#849375;line-height:1.9;margin:0 0 26px}.suggestion-label{font-size:9px;color:#929e84;margin-bottom:9px}.prompt-suggestion{display:flex;align-items:center;gap:8px;border:1px solid #e1e5d8;border-radius:6px;background:#fafbf5;color:#697f53;width:100%;font-size:10px!important;padding:11px 12px;margin-top:7px;min-height:40px;text-align:left}.prompt-suggestion:hover{background:#e9efdf;border-color:#c8d5b9}.prompt-suggestion>svg:last-child{margin-left:auto;color:#9ca98c}.assistant-composer{margin:5px 14px 0;padding:11px;border:1px solid #d5ddca;border-radius:8px;background:#fff;box-shadow:0 2px 5px #43532106}.assistant-composer:focus-within{border-color:#a7bb94;box-shadow:0 0 0 3px #7f996511}.assistant-composer textarea{width:100%;resize:vertical;min-height:60px;max-height:180px;background:none;border:none;outline:none;font-family:inherit;font-size:11px;color:#44563c;line-height:1.8}.assistant-composer textarea::placeholder{color:#a0aa94}.assistant-composer>div{display:flex;justify-content:space-between;align-items:center;gap:7px;margin-top:7px}.assistant-composer>div>span{font-size:8px;color:#9ba68e}.assistant-composer button{width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:6px;background:#748966;color:#fff}.assistant-composer button:hover{background:#526d41}.assistant-disclosure{font-size:8px;line-height:1.8;color:#8a987a;margin:12px 20px 17px}.chat-log{max-height:390px;overflow-y:auto;scrollbar-width:thin;display:flex;flex-direction:column;gap:17px;padding-right:3px}.chat-message>span{font-size:9px;color:#849773}.chat-message p{background:#fff;border:1px solid #e3e9dc;padding:11px 12px;margin:5px 0 0;border-radius:0 8px 8px;font-size:11px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;color:#526449}.chat-message.user{padding-left:20px;text-align:right}.chat-message.user p{text-align:left;background:#e9efdf;border-color:#d7e2ca;border-radius:8px 0 8px 8px}.attention-card{margin-top:22px;background:#f8f0e0;border:1px solid #e9ddc7;border-radius:7px;padding:12px}.attention-card>div{display:flex;align-items:center;gap:7px;color:#a1773d;font-size:10px}.attention-card button{display:flex;justify-content:space-between;gap:8px;align-items:center;width:100%;border:0;border-top:1px solid #ece3d2;background:none;font-size:10px;text-align:left;color:#8b7656;padding:10px 0 1px;margin-top:9px}.attention-card small{font-size:9px;white-space:nowrap}.attention-card p{font-size:10px;color:#8b7656}.clarification-card{padding:14px;margin-top:14px;border-radius:7px;border:1px solid #d8e1ce;background:#fff}.clarification-card>strong{font-size:11px;font-weight:500;color:#60794b}.clarification-card button{display:flex;width:100%;justify-content:space-between;background:#f3f6ed;border:1px solid #dce4d3;padding:9px;margin-top:7px;color:#697f55;border-radius:4px;font-size:10px}.studio-alert{display:flex;gap:12px;background:#f1f0df;color:#827348;border:1px solid #e3ddc0;padding:13px 17px;border-radius:8px;margin-bottom:20px;font-size:12px}.studio-alert>svg{flex-shrink:0;margin-top:2px}.studio-alert.error{background:#fff2ed;border-color:#efd6c9;color:#9c553d}.studio-alert p{margin:4px 0;font-size:11px}.studio-loading{padding:100px;text-align:center;color:#758567;min-height:400px}.studio-loading p{margin-top:14px;font-size:12px}.drawing-select{max-width:270px;margin-bottom:20px!important}.drawing-board{background:#f3f6ed;border:1px solid #e1e9d7;border-radius:8px;overflow:hidden}.drawing-board svg{width:100%;max-height:300px;display:block}.drawing-board text{fill:#688051;font-family:ui-monospace,monospace;font-size:11px}.drawing-metrics{display:flex;gap:22px;padding:15px 0}.drawing-metrics>div{display:flex;flex-direction:column;gap:6px}.drawing-metrics span{font-size:9px;color:#909e81}.drawing-metrics strong{font-size:11px;font-weight:500;color:#687d54}.footnote{font-size:10px;color:#8a987c;line-height:1.9;margin:0 0 20px}.scenario-winner{background:#f0f5e9;border:1px solid #d9e4cb;padding:18px;border-radius:7px;margin-bottom:15px}.scenario-winner>span{font-size:10px;color:#7c9565}.scenario-winner h3{font-size:15px;color:#57753c;margin:8px 0 0;display:flex;justify-content:space-between;gap:12px}.scenario-row{display:flex;justify-content:space-between;gap:15px;font-size:11px;padding:16px 0;border-bottom:1px solid #eef1e8}.scenario-row>span{color:#7c8e69}.pricing-summary{display:flex;gap:25px;background:#f5f7ef;padding:13px 15px;border-radius:6px;font-size:10px;color:#879b73;margin-bottom:9px}.pricing-summary strong{color:#607d46;margin-left:10px}.rule-row{display:flex;gap:12px;padding:18px 0;border-bottom:1px solid #edf1e6;align-items:center}.rule-icon{width:32px;height:32px;border-radius:6px;display:grid;place-items:center;background:#f0f5e9;color:#7e9967;flex-shrink:0}.rule-row>div{flex:1}.rule-row strong{font-size:12px;font-weight:500}.rule-row p{font-size:10px;color:#8a9b79;margin:3px 0}.rule-row small{font-size:9px;color:#98a68b}.rule-row>span:last-child{font-size:11px;color:#6b8454;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.studio-form{font-family:var(--font-cjk);color:#384333;font-size:13px;padding:6px 0 14px}.form-intro{padding:9px 0 23px}.form-intro h3{font-size:22px;font-weight:500;letter-spacing:-.3px;margin:11px 0 7px;line-height:1.5}.form-intro p{font-size:12px;color:#879278;line-height:1.8;margin:0}.kind-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:24px}.kind-picker button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#f8faf4;border:1px solid #e2e8d9;border-radius:7px;color:#8c9e77;padding:13px 0;font-size:11px}.kind-picker button.selected{background:#eff5e6;border-color:#899f72;color:#536e3a}.field{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#697d55;margin-bottom:18px;min-width:0}.field input,.field select{width:100%;box-sizing:border-box;border:1px solid #d9e1cf;border-radius:6px;background:#fff;color:#394c2e;height:43px;font:inherit;font-size:13px;padding:9px 11px;outline:none}.field input:focus,.field select:focus{border-color:#8aa774;box-shadow:0 0 0 3px #8aa77415}.field input::placeholder{color:#aab69e}.field input:disabled,.field select:disabled{background:#f1f4ec}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.form-block{border-top:1px solid #e6ebdf;padding-top:18px;margin-top:5px}.form-block h4{font-weight:500;font-size:12px;margin:0 0 17px;display:flex;justify-content:space-between}.form-block h4>span{font-size:10px;color:#a0af91}.field-help{font-size:10px;line-height:1.8;color:#9ba98d;margin-top:-7px}.form-note{padding:14px;border-radius:7px;border:1px solid #dee6d4;background:#f4f7ee;color:#849a6d;display:flex;gap:10px;font-size:11px;line-height:1.8;margin:15px 0}.form-note>svg{flex-shrink:0;margin-top:2px}.form-note.warm{background:#fff6e9;border-color:#eaddc3;color:#9e7b40}.form-checkbox{display:flex;align-items:flex-start;gap:8px;margin:24px 0;color:#5c7846;font-size:12px}.form-checkbox input{margin-top:3px;flex-shrink:0}.form-checkbox small{display:block;font-size:10px;margin-top:6px;color:#98a889}.remove-charge{display:flex;align-items:center;gap:8px;background:none;border:0;color:#b47558;font-size:11px!important;padding:14px 0;margin-top:28px}.form-error{padding:12px 14px;background:#fff1ec;border:1px solid #efdbce;border-radius:6px;color:#a76649;font-size:12px;margin-top:16px;line-height:1.8}.drawer-footer{display:flex;justify-content:space-between;width:100%;gap:12px;font-family:var(--font-cjk)}.export-paper{border:1px solid #dfe6d5;background:#fff;padding:25px 22px;margin-top:15px;box-shadow:0 4px 20px #53683a08}.export-paper-top{display:flex;flex-direction:column;gap:8px;padding-bottom:23px;border-bottom:2px solid #5c7545}.export-paper-top>span{font-size:10px;letter-spacing:3px;color:#8f9f7b}.export-paper-top>strong{font-size:21px;font-weight:500;overflow-wrap:anywhere}.export-paper-top>small{font-size:10px;color:#92a27e}.export-line{display:flex;justify-content:space-between;gap:15px;padding:16px 0;border-bottom:1px solid #edf1e7;font-size:11px;color:#7c9165}.export-line strong{white-space:nowrap;color:#597840}.export-total{display:flex;justify-content:space-between;gap:15px;font-size:13px;color:#58743f;padding:25px 0 0}.export-total strong{font-family:ui-monospace,monospace;font-size:21px}.internal-export{width:100%;display:flex;align-items:center;gap:10px;background:#f6f8f1;border:1px solid #e1e7d8;border-radius:6px;padding:16px 12px;margin-top:25px;color:#718b59;text-align:left;font-size:12px}.internal-export>span{flex:1}.internal-export small{display:block;font-size:9px;color:#a0af8e;margin-top:5px}@media(min-width:1450px){.studio-columns{grid-template-columns:minmax(0,1fr) 330px;gap:28px}.assistant-content{padding:29px 25px 20px}.assistant-heading{padding:22px 24px}.parts-empty{min-height:240px;gap:35px}.empty-art{width:175px}.parts-empty h3{font-size:18px}.parts-empty p{font-size:12px}.parts-empty .studio-button{min-height:40px}.charge-description strong{font-size:13px}.charge-amount strong{font-size:15px}}@media(max-width:1200px){.studio-columns{grid-template-columns:minmax(0,1fr) 260px;gap:16px}.workflow-strip{padding:15px 17px;gap:12px}.step-connector{width:18px}.parts-panel{padding:18px}.parts-empty{gap:15px;padding-left:0;padding-right:0}.empty-art{width:110px}.parts-empty h3{font-size:14px}.canvas-tabs{padding:0 17px;gap:17px}.canvas-tabs button{font-size:10px}.canvas-tab-content{padding:20px 18px 0}.quote-total{padding:18px;flex-wrap:wrap}.total-numbers{margin-left:auto}.part-list{grid-template-columns:1fr}.assistant-content{padding:23px 17px 16px}.studio-heading h1{font-size:24px}.studio-heading p{font-size:10px}.studio-button.primary{padding-left:12px;padding-right:12px}}@media(max-width:1000px){.studio-columns{grid-template-columns:minmax(0,1fr)}.assistant-panel{position:static}.assistant-welcome h3{font-size:18px}.assistant-welcome h3 br,.assistant-welcome>p br{display:none}.assistant-welcome>p{margin-bottom:16px}.assistant-welcome .eyebrow{display:none}.assistant-welcome .prompt-suggestion{display:inline-flex;width:auto;margin:0 8px 0 0;gap:10px}.assistant-welcome .suggestion-label{display:none}.assistant-content{padding:16px 20px}.assistant-welcome h3{margin-top:0}.assistant-composer{margin:0 20px}.assistant-disclosure{margin-bottom:17px}.part-list{grid-template-columns:1fr 1fr}.parts-empty{min-height:190px}.empty-art{width:155px}.parts-empty h3{font-size:17px}.studio-heading{align-items:flex-start}.heading-actions{gap:3px}.action-divider{margin:0 2px}.workflow-strip small{font-size:9px}.step-connector{width:10px}.workflow-strip{gap:12px}.workflow-strip>button{gap:8px}.canvas-tabs{gap:28px}.canvas-tabs button{font-size:11px}.total-context{max-width:240px}}@media(max-width:600px){.studio-breadcrumb{margin-bottom:20px;font-size:10px}.sync-state{font-size:8px}.studio-breadcrumb>span:not(.sync-state){font-size:8px}.studio-heading{flex-wrap:wrap;gap:18px;margin-bottom:20px}.studio-heading>div:first-child{width:100%}.studio-heading h1{font-size:24px}.heading-actions{width:100%;justify-content:flex-end}.heading-actions>.studio-button{margin-left:auto}.heading-actions .action-divider{display:none}.icon-button{border-color:#e1e5d8;background:#fff;width:40px;height:40px}.eyebrow{font-size:8px}.workflow-strip{padding:13px 10px;gap:4px;margin-bottom:18px}.workflow-strip>button{flex-direction:column;align-items:center;text-align:center;gap:7px;font-size:10px}.workflow-strip small{display:none}.step-number{width:25px;height:25px;font-size:9px}.step-connector{width:18px;align-self:flex-start;margin-top:13px}.workflow-arrow{display:none}.parts-panel{padding:17px 16px}.section-title h2{font-size:12px}.parts-empty{gap:10px;min-height:195px;padding:24px 0 6px}.empty-art{width:92px}.parts-empty h3{font-size:14px}.parts-empty p{font-size:10px;margin-bottom:14px}.empty-support{font-size:8px}.part-list{grid-template-columns:1fr}.canvas-tabs{gap:0;padding:0 9px;justify-content:space-between}.canvas-tabs button{font-size:10px;gap:4px;padding:15px 4px}.canvas-tabs button svg{width:13px}.canvas-tab-content{padding:17px 16px 0}.line-toolbar{align-items:flex-start;margin-bottom:16px}.line-toolbar p{font-size:9px;max-width:160px}.line-toolbar h2{font-size:12px}.studio-button.small{font-size:10px!important;min-height:36px;padding:8px}.charges-empty{padding:25px 10px}.quote-total{gap:18px;padding:18px 16px}.total-context{width:100%;max-width:none;display:flex;align-items:center;gap:9px}.total-context p{margin:0;font-size:8px}.total-numbers{width:100%;margin-left:0;justify-content:space-between;gap:10px}.total-numbers>div{align-items:flex-start}.total-numbers .grand-total{align-items:flex-end;padding-left:16px}.grand-total strong{font-size:22px}.charge-row{gap:7px}.charge-description p{font-size:9px}.charge-description p>span{margin:0 4px}.charge-amount strong{font-size:13px}.charge-amount .text-button{min-height:34px}.assistant-welcome .prompt-suggestion{width:100%;margin-top:7px}.assistant-content{padding:20px}.assistant-composer textarea{font-size:16px}.assistant-composer>div>span{font-size:9px}.assistant-composer button{width:40px;height:40px}.assistant-disclosure{font-size:9px}.chat-message p{font-size:12px}.line-toolbar .text-button{font-size:10px!important}.drawing-metrics{flex-direction:column;gap:12px}.rule-row{gap:8px}.rule-row small{font-size:8px}.studio-alert{font-size:11px;padding:12px}.studio-loading{padding:80px 20px}.field input,.field select{font-size:16px}.drawer-footer .studio-button{min-height:44px}.kind-picker button{min-height:70px}.kind-picker{gap:6px}.form-intro h3{font-size:20px}.workspace-footnote{font-size:8px}}@media(prefers-reduced-motion:reduce){.quote-studio *,.studio-form *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.quote-studio .studio-heading p,.quote-studio .parts-empty p,.quote-studio .assistant-welcome>p{font-size:12px}.quote-studio .workflow-strip small,.quote-studio .line-toolbar p,.quote-studio .charge-description p,.quote-studio .assistant-heading p,.quote-studio .assistant-disclosure,.quote-studio .workspace-footnote,.quote-studio .footnote{font-size:11px;color:#687360}.quote-studio .charge-description small,.quote-studio .part-card-copy small,.quote-studio .total-context p,.quote-studio .total-numbers span,.quote-studio .empty-support{font-size:10px;color:#6d785f}.quote-studio .assistant-welcome>.eyebrow,.quote-studio .suggestion-label,.quote-studio .assistant-composer>div>span{color:#6b7a5c}.quote-studio .assistant-composer textarea{font-size:12px}.quote-studio .prompt-suggestion{font-size:12px!important}.quote-studio .charge-description strong{font-size:13px}.quote-studio .canvas-tabs button{font-size:12px}.quote-studio .line-toolbar h2,.quote-studio .section-title h2{font-size:14px}.quote-studio .charges-empty p{font-size:11px;color:#717e63}.quote-studio .charges-empty h3{font-size:13px}.quote-studio .assistant-disclosure{font-size:10px}.studio-form .field-help,.studio-form .form-intro p,.studio-form .form-checkbox small{color:#697b59}.studio-form .form-note{color:#667d53}.studio-form .internal-export small{color:#748761}.assistant-jump{display:none}@media(max-width:1000px){.assistant-jump{display:inline-flex;align-items:center;gap:6px;background:#e9eee1;color:#566f40;border:1px solid #cbd9bd;border-radius:6px;min-height:36px;padding:7px 10px;font-size:11px}.quote-studio .heading-actions{flex-wrap:wrap}}@media(max-width:600px){.quote-studio .canvas-tabs button{font-size:10px}.quote-studio .workflow-strip small{display:none}.quote-studio .parts-empty p,.quote-studio .studio-heading p{font-size:11px}.quote-studio .assistant-composer textarea{font-size:16px}.quote-studio .line-toolbar p{font-size:10px}.quote-studio .total-context p{font-size:9px}.quote-studio .studio-heading h1{font-size:22px}.quote-studio .assistant-disclosure{font-size:10px}.quote-studio .heading-actions .studio-button{font-size:11px!important}.quote-studio .workflow-strip>button{min-height:50px}}@media(max-width:600px){.quote-studio .line-check{min-width:34px;min-height:44px;justify-content:center;padding:6px 0;margin-top:0}.quote-studio .text-button{min-height:36px}.quote-studio .canvas-tabs button{min-height:44px}.quote-studio .assistant-jump{min-height:40px}}.drawing-intake{padding:26px 28px 22px;border:1px solid #d6e2db;border-radius:16px;background:linear-gradient(115deg,#f2f7f3,#fdfcf8 80%);margin-bottom:24px}.intake-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.intake-heading h2{margin:8px 0;font-size:24px;letter-spacing:-.6px;color:#263f35}.intake-heading p{margin:0;font-size:13px;color:#728077}.drawing-dropzone{display:flex;width:100%;align-items:center;text-align:left;gap:16px;padding:22px;background:#ffffffb5;border:1px dashed #a5bba9;border-radius:12px;color:#294335;cursor:pointer;transition:background .2s,border-color .2s}.drawing-dropzone:hover,.drawing-dropzone.dragging{background:#eaf2e8;border-color:#446e51}.drawing-dropzone:disabled{cursor:default;opacity:.6}.upload-symbol{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:#eaf1e7;flex-shrink:0}.upload-symbol svg{transform:rotate(180deg)}.drawing-dropzone strong{font-size:15px;display:block;margin-bottom:7px}.drawing-dropzone small{font-size:11px;color:#7b857e}.upload-cta{margin-left:auto;font-size:12px;background:#334e3d;color:#fff;border-radius:7px;padding:10px 16px;white-space:nowrap}.intake-note{font-size:11px;color:#7b857e;line-height:1.7;margin:12px 0 0}.intake-error{color:#a1412b;font-size:13px;line-height:1.7}.drawing-source{border-top:1px solid #dfe6dc;margin-top:20px;padding-top:18px}.drawing-file-row{display:flex;gap:12px;align-items:center}.drawing-file-row>div{flex:1;min-width:0}.drawing-file-row strong{font-size:13px;display:block;overflow-wrap:anywhere}.drawing-file-row small{display:block;font-size:11px;color:#69816e;margin-top:4px}.drawing-result-note{margin:12px 0;font-size:12px;color:#6f796d;line-height:1.8}.drawing-result-note.blocked{background:#faf0df;border:1px solid #eddfc7;padding:10px 13px;border-radius:8px;color:#84643c}.cad-result{display:flex;gap:20px;align-items:center;padding:10px 15px;background:#edf2e9;border-radius:10px}.cad-result svg{width:160px;height:88px;flex-shrink:0;color:#829b80}.cad-result span,.cad-result strong,.cad-result small{display:block}.cad-result span{font-size:10px;color:#72846e}.cad-result strong{font-size:15px;margin:7px 0;color:#374e3c}.cad-result small{color:#71806a;font-size:11px}.recognized-part{display:flex;align-items:center;justify-content:space-between;padding:14px 0 0;gap:14px}.recognized-part strong{font-size:13px}.recognized-part p,.recognized-part small{margin:6px 0 0;color:#7d8278;font-size:11px}.drawing-review{display:flex;flex-direction:column;gap:16px}.drawing-review>p{margin:0;color:#7b8077;font-size:12px}.drawing-review small{font-size:11px;color:#7b8077}.rectangle-confirm{display:flex;gap:8px;font-size:12px;align-items:center}.drawing-review .field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.drawing-review input[readonly]{background:#f0f2ec;color:#7b8077}@media(max-width:650px){.drawing-intake{padding:20px 16px}.intake-heading h2{font-size:21px}.drawing-dropzone{padding:16px 12px;gap:10px}.upload-cta{display:none}.drawing-dropzone strong{font-size:13px}.drawing-dropzone small{font-size:10px}.cad-result{gap:10px;padding:10px}.cad-result svg{width:95px}.cad-result strong{font-size:12px}.drawing-file-row{flex-wrap:wrap}.drawing-file-row>div{min-width:140px}}.brand[data-v-7e256f14]{padding:18px 16px 8px;font-weight:600}.top[data-v-7e256f14]{padding:10px 20px;display:flex;justify-content:space-between;background:#fff}:root{--font-cjk: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;--page-bg: #f4f6f8;--card-radius: 10px}html,body,#app{margin:0;min-height:100%;font-family:var(--font-cjk);background:var(--page-bg);color:#1f2329}button,input,select,textarea{font-family:inherit}.page-stack{display:flex;flex-direction:column;gap:16px}.page-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.money{font-variant-numeric:tabular-nums;text-align:right}.factory-touch :deep(.n-button){min-height:40px}.factory-touch :deep(.n-input),.factory-touch :deep(.n-base-selection){min-height:40px}.admin-dense :deep(.n-data-table-th){padding:6px 8px}.admin-dense :deep(.n-data-table-td){padding:5px 8px}@media(max-width:960px){.page-toolbar{align-items:stretch}}
