:root{--blue: #3e5df0;--blue-dark: #2f49c4;--on-blue: #fff;--ink: #101010;--panel-dark: #161616;--line-dark: #2c2c2c;--gray-1: #f7f8fa;--gray-2: #eef0f4;--line: #e3e6ec;--text: #1c1e24;--text-dim: #6b7280;--text-faint: #9aa0ae;--text-head: #444;--amber-text: #92400e;--sunken: #fbfcfe;--accent-tint: #eef2ff;--accent-line: #d5ddfb;--accent-text: #1e40af;--ok-bg: #e8f7ee;--ok-line: #bfe8cd;--ok-text: #14532d;--danger-bg: #fdf4f4;--danger-line: #f3c9c9;--danger-text: #b42318;--warn-bg: #fdf6e3;--warn-line: #f0e0b0;--mat: #e8eaef;--scrim: rgba(255,255,255,.85);--border-hover: #c9cfdb;--disabled: #ccd2df;--green: #16a34a;--amber: #d97706;--page: #f7f8fa;--surface: #fff;--raised: #fff;--row-hover: #f7f9ff;--row-line: #f0f1f5;--field: #fff;--accent-soft: #e8ecfd;--toast-bg: #101010;--toast-fg: #fff;--radius: 10px;--mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--sans: -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", Helvetica, Arial, sans-serif;color-scheme:light}:root[data-theme=dark]{--blue: #7189ff;--blue-dark: #8b9dff;--on-blue: #0b0d12;--gray-1: #1b1f27;--gray-2: #232733;--line: #2b303c;--text: #e6e8ee;--text-dim: #98a0b0;--text-faint: #939bac;--text-head: #c3c9d6;--amber-text: #f5a524;--sunken: #11141a;--accent-tint: #232a45;--accent-line: #33406b;--accent-text: #a8c4ff;--ok-bg: #16301f;--ok-line: #2a5238;--ok-text: #7fdca6;--danger-bg: #331a1a;--danger-line: #58292a;--danger-text: #ff9d95;--warn-bg: #332a12;--warn-line: #574726;--mat: #0a0c10;--scrim: rgba(12,15,20,.85);--border-hover: #3c4354;--disabled: #363c4a;color-scheme:dark;--green: #34d17f;--amber: #f5a524;--page: #0f1115;--surface: #151820;--raised: #1b1f27;--row-hover: #1d2331;--row-line: #22262f;--field: #1b1f27;--accent-soft: #232a45;--toast-bg: #e9ecf5;--toast-fg: #14161c}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--sans);color:var(--text);background:var(--page);-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer;color:inherit}input,select,textarea{font-family:inherit;color:inherit;background:var(--field)}a{color:inherit;text-decoration:none}.mkt{background:#0d0d0d;color:#fff;min-height:100vh}.mkt-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:18px 28px;background:#0d0d0deb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mkt-logo{display:flex;align-items:center;gap:10px;font-size:26px;font-weight:700;letter-spacing:-.5px}.mkt-logo svg{width:34px;height:34px}.mkt-nav{display:flex;gap:10px;align-items:center}.btn{border:none;border-radius:4px;padding:12px 26px;font-size:15px;font-family:var(--mono)}.btn-white{background:#fff;color:#111}.btn-blue{background:var(--blue);color:#fff}.btn-blue:hover{background:var(--blue-dark)}.btn-ghost-dark{background:#1b1b1b;color:#fff;border:1px solid var(--line-dark)}.mkt-hero{padding:90px 28px 40px;border:1px solid var(--line-dark);border-bottom:none;max-width:1200px;margin:0 auto}.mkt-hero h1{font-size:clamp(38px,6vw,64px);font-weight:600;letter-spacing:-1.5px;line-height:1.05;max-width:760px}.mkt-hero p{margin-top:26px;font-size:19px;line-height:1.5;color:#cfcfcf;max-width:720px}.mkt-shot{margin:0 auto;max-width:1200px;padding:46px 28px;border-left:1px solid var(--line-dark);border-right:1px solid var(--line-dark);background:repeating-linear-gradient(-55deg,transparent 0 22px,rgba(255,255,255,.045) 22px 23px),#141414}.mkt-shot .frame{border-radius:10px;overflow:hidden;border:1px solid #333;box-shadow:0 30px 80px #0000008c;background:#fff}.mkt-shot .chrome{display:flex;align-items:center;gap:6px;background:#1c1c1e;padding:9px 12px;position:relative}.mkt-shot .chrome i{width:10px;height:10px;border-radius:50%;display:block}.mkt-shot .chrome i:nth-child(1){background:#ff5f57}.mkt-shot .chrome i:nth-child(2){background:#febc2e}.mkt-shot .chrome i:nth-child(3){background:#28c840}.mkt-shot .chrome span{position:absolute;left:0;right:0;text-align:center;font-size:10.5px;color:#9a9a9a;font-family:var(--sans);pointer-events:none}.mkt-section{max-width:1200px;margin:0 auto;padding:70px 28px;border:1px solid var(--line-dark);border-bottom:none}.mkt-kicker{font-family:var(--mono);font-size:14px;letter-spacing:1px;color:#bbb;margin-bottom:18px}.mkt-section h2{font-size:clamp(30px,4vw,44px);font-weight:600;letter-spacing:-1px}.mkt-section>p{margin-top:20px;font-size:17px;line-height:1.55;color:#cfcfcf;max-width:700px}.mkt-learn{display:inline-flex;align-items:center;gap:12px;margin-top:34px;background:#131313;border:1px solid var(--line-dark);color:#fff;padding:16px 26px;font-family:var(--mono);font-size:15px}.mkt-learn:hover{border-color:#555}.mkt-features{margin-top:50px;border-top:1px solid var(--line-dark)}.mkt-feature{display:grid;grid-template-columns:110px 1fr;gap:22px;padding:30px 0;border-bottom:1px solid var(--line-dark);align-items:center}.mkt-feature .icon{width:76px;height:76px;background:#1b1b1b;border-radius:6px;display:flex;align-items:center;justify-content:center}.mkt-feature .icon svg{width:38px;height:38px;stroke:#fff}.mkt-feature h3{font-family:var(--mono);font-size:16px;letter-spacing:1px;font-weight:600}.mkt-feature p{margin-top:8px;color:#b9b9b9;font-size:17px;line-height:1.45}.mkt-quotes{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1px;background:var(--line-dark);border:1px solid var(--line-dark);margin-top:50px}.mkt-quote{background:#101010;padding:30px}.mkt-quote .who{font-family:var(--mono);font-size:12.5px;letter-spacing:1px;color:#9a9a9a;margin-bottom:14px}.mkt-quote p{font-size:16px;line-height:1.5;color:#e6e6e6}.mkt-news{text-align:left}.mkt-news form{margin-top:26px;display:flex;gap:10px;max-width:460px}.mkt-news input{flex:1;background:#151515;border:1px solid var(--line-dark);color:#fff;padding:14px;border-radius:4px;font-size:15px}.mkt-footer{border:1px solid var(--line-dark);padding:34px 28px;max-width:1200px;margin:0 auto;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;color:#9a9a9a;font-size:13.5px;font-family:var(--mono)}.mkt-footer nav{display:flex;gap:22px;flex-wrap:wrap}.mkt-contact{font-family:var(--mono);color:#bbb;display:flex;flex-direction:column;gap:8px;font-size:14px}.lang-switch{display:inline-flex;border:1px solid var(--line-dark);border-radius:4px;overflow:hidden}.lang-switch button{background:transparent;color:#aaa;border:none;padding:8px 12px;font-family:var(--mono);font-size:13px}.lang-switch button.active{background:#fff;color:#111}.lang-switch.on-light{border-color:var(--line)}.lang-switch.on-light button{color:var(--text-dim)}.lang-switch.on-light button.active{background:var(--ink);color:#fff}.app{display:flex;height:100vh;overflow:hidden;background:var(--page);--rail-w: 64px}.rail{width:64px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;padding:12px 0;gap:4px}.rail .brand{margin-bottom:14px}.rail .brand svg{width:30px;height:30px}.rail a,.rail .rail-btn{width:48px;padding:7px 0 5px;border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--text-dim);font-size:9.5px;border:none;background:none}.rail a svg,.rail .rail-btn svg{width:19px;height:19px}.rail a:hover{background:var(--gray-2)}.rail a.active{background:var(--accent-soft);color:var(--blue)}.rail .spacer{flex:1}.main{flex:1;overflow:auto;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:16px;padding:10px 18px;background:var(--page);position:sticky;top:0;z-index:20}.topbar h1{font-size:15px;font-weight:600;display:flex;align-items:center;gap:8px}.topbar .search{flex:1;max-width:560px;position:relative}.topbar .search input{width:100%;padding:8px 12px 8px 34px;border:1px solid var(--line);border-radius:8px;font-size:13px;background:var(--field);color:var(--text)}.topbar .search svg{position:absolute;left:10px;top:8px;width:15px;height:15px;color:var(--text-faint)}.topbar .hint{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--text);white-space:nowrap}.topbar .hint a{color:var(--blue);font-weight:600;text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}.topbar .hint a:hover{color:var(--blue-dark)}.info-dot{position:relative;display:inline-flex;align-items:center;color:var(--text-faint);cursor:help;border-radius:50%}.info-dot svg{width:14px;height:14px}.info-dot:hover,.info-dot:focus{color:var(--text-dim);outline:none}.info-pop{position:absolute;top:calc(100% + 8px);right:0;z-index:90;width:268px;background:var(--raised);border:1px solid var(--line);border-radius:9px;padding:9px 11px;font-size:11.5px;font-weight:400;line-height:1.5;color:var(--text-dim);white-space:normal;text-align:left;box-shadow:0 12px 30px #14182829;opacity:0;visibility:hidden;transition:opacity .12s}.info-dot:hover .info-pop,.info-dot:focus .info-pop{opacity:1;visibility:visible}.btn-sm{padding:8px 14px;border-radius:8px;font-size:13px;font-family:var(--sans);font-weight:500;border:1px solid var(--line);background:var(--field);color:var(--text)}.btn-sm.primary{background:var(--blue);border-color:var(--blue);color:var(--on-blue)}.btn-sm.primary:hover{background:var(--blue-dark)}.btn-sm.danger{color:var(--danger-text);transition:background .12s,border-color .12s}.btn-sm.danger:hover{background:var(--danger-bg);border-color:var(--danger-line)}.sheet{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:8px 18px 24px;overflow:auto}table.grid{width:100%;border-collapse:collapse;font-size:12.5px;min-width:980px}table.grid th{text-align:left;font-weight:600;color:var(--text-head);padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap;position:sticky;top:0;background:var(--surface);z-index:5}table.grid td{padding:9px 12px;border-bottom:1px solid var(--row-line);vertical-align:middle;white-space:nowrap}table.grid tr.row:hover td{background:var(--row-hover);cursor:pointer}table.grid tr.row:not(.seen) td{font-weight:600}table.grid tr.row.triaged td{font-weight:400}.new-files{display:inline-flex;align-items:center;gap:3px;padding:1px 7px;border-radius:999px;background:var(--accent-tint);color:var(--accent-text);font-size:10.5px;font-weight:600}.new-files svg{width:10px;height:10px}.unread-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;background:transparent;display:inline-block}.unread-dot.on{background:var(--blue)}table.grid tr.row.seen td{background:var(--gray-1);color:var(--text-dim)}table.grid tr.row.seen td b{color:var(--text-dim);font-weight:500}table.grid tr.row.seen:hover td{background:var(--row-hover)}.rfq-id{font-weight:600}.muted{color:var(--text-dim)}.warn{color:var(--amber)}.part-chips{display:flex;align-items:center;gap:6px}.count-pill{background:var(--gray-2);border-radius:999px;min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:600;padding:0 7px}.thumb{width:30px;height:30px;border:1px solid var(--line);border-radius:6px;background:var(--raised);display:inline-flex;align-items:center;justify-content:center}.thumb svg{width:24px;height:24px}.imp-thumb{width:56px;height:56px;border-radius:8px;position:relative}.imp-thumb>svg{width:44px;height:44px}.imp-thumb .imp-zoom{display:none;position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);z-index:80;background:var(--raised);border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 38px #1418282e;padding:12px}.imp-thumb .imp-zoom svg{width:150px;height:150px}.imp-thumb:hover .imp-zoom{display:flex}.imp-grid td{padding-top:10px;padding-bottom:10px;vertical-align:middle}.status-cell{display:flex;flex-direction:column;gap:3px;min-width:100px;align-items:flex-start}.status-bar{display:flex;gap:3px}.status-bar i{display:block;width:26px;height:7px;border-radius:4px;background:var(--gray-2)}.status-bar i.on{background:var(--blue)}.status-label{font-size:11px;color:var(--text-dim)}.status-label .sent-date{color:var(--blue)}.status-outline{border:1px solid var(--line);border-radius:999px;padding:3px 10px;font-size:11px;color:var(--text-dim)}.cust-edit{border:none;background:none;color:var(--text-faint);padding:3px 5px;border-radius:6px;line-height:0;opacity:0;transition:opacity .12s,color .12s}.cust-edit svg{width:13px;height:13px}tr.row:hover .cust-edit{opacity:1}.cust-edit:hover{color:var(--blue);background:var(--gray-1)}.cust-edit:focus-visible{opacity:1;outline:2px solid var(--blue);outline-offset:1px}.cust-more{display:inline-block;margin-left:6px;padding:0 6px;border-radius:999px;background:var(--gray-2);color:var(--text-dim);font-size:10.5px;font-weight:600}.cust-k-head{display:block;font-size:11.5px;color:var(--text-dim);margin-bottom:6px}.cust-k-list{display:flex;flex-direction:column;gap:8px}.cust-k{border:1px solid var(--line);border-radius:8px;padding:8px 9px;background:var(--raised)}.cust-k.primary{border-color:var(--accent-line);background:var(--accent-tint)}.cust-k-fields{display:grid;grid-template-columns:1fr 1.3fr .9fr;gap:6px}.cust-k-fields input{width:100%;border:1px solid var(--line);border-radius:6px;padding:5px 7px;font-size:12px}.cust-k-actions{display:flex;align-items:center;gap:10px;margin-top:6px}.cust-k-badge{font-size:10.5px;font-weight:600;color:var(--accent-text);background:var(--accent-tint);border-radius:999px;padding:1px 8px}.cust-k-x{margin-left:auto;border:none;background:none;color:var(--text-dim);font-size:11px;padding:2px 5px;border-radius:5px}.cust-k-x:hover:not(:disabled){background:var(--danger-bg);color:var(--danger-text)}.cust-k-x:disabled{opacity:.3;cursor:default}.dash-boxes{display:flex;gap:10px;align-items:stretch;margin:12px 18px 0}.dash-box{flex:0 0 auto;min-width:186px;text-align:left;background:var(--raised);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:10px 14px 11px;display:flex;flex-direction:column;gap:2px;transition:border-color .12s,box-shadow .12s}.dash-box:hover{border-color:var(--border-hover)}.dash-box.on{border-color:var(--blue);box-shadow:0 0 0 2px #3e5df01a}.dash-box-label{font-size:11.5px;color:var(--text-dim)}.dash-box-count{font-size:21px;font-weight:600;line-height:1.15;font-variant-numeric:tabular-nums}.dash-box-count.amber{color:var(--amber)}.dash-box-hint{font-size:11px;color:var(--text-faint)}.dash-scope{align-self:flex-end;margin-bottom:3px;display:inline-flex;gap:2px;background:var(--gray-2);border-radius:9px;padding:3px}.dash-scope button{border:none;background:none;border-radius:7px;padding:5px 12px;font-size:12.5px;color:var(--text-dim)}.dash-scope button:hover{color:var(--text)}.dash-scope button.on{background:var(--surface);color:var(--text);font-weight:600;box-shadow:0 1px 2px #1418281a}.dash-scope .n{color:var(--text-faint);font-weight:400}.dash-more{display:block;margin:0 18px 24px;padding:9px 12px;width:calc(100% - 36px);background:var(--gray-1);border:1px solid var(--line);border-radius:8px;font-size:12.5px;color:var(--text-dim);text-align:center}.dash-more:hover{border-color:var(--blue);color:var(--blue)}.asg-cell{position:relative;display:inline-flex}.asg-btn{border:none;background:none;color:inherit;padding:0;line-height:1;border-radius:50%;display:inline-flex}.asg-btn.none{width:24px;height:24px;align-items:center;justify-content:center;border:1px dashed var(--line);color:var(--text-faint);font-size:13px;transition:border-color .12s,color .12s}.asg-btn.none:hover{border-color:var(--blue);color:var(--blue);border-style:solid}.asg-btn:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.tag-pop.asg-pop{left:auto;right:0;width:210px}.asg-slot{width:20px;height:20px;border-radius:50%;border:1px dashed var(--line);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:var(--text-faint);font-size:11px}.rfq-layout{display:grid;grid-template-columns:250px 1fr;gap:14px;padding:8px 18px 24px;align-items:start}.pf-pane{position:sticky;top:8px;max-height:calc(100vh - 16px);overflow-y:auto}.pf-flash{animation:pfFlash 1.5s ease;border-radius:6px}@keyframes pfFlash{0%,55%{outline:2px solid var(--danger-text);outline-offset:3px}to{outline:2px solid transparent;outline-offset:3px}}.rfq-layout:has(.rfq-side.side-min){grid-template-columns:0px 1fr}.rfq-side{position:relative}.rfq-side.side-min{padding:0;border:none;background:none;min-height:100vh}.side-handle{position:absolute;top:calc(50vh - var(--side-top, 8px));transform:translateY(-50%);z-index:60;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid var(--text-faint);background:var(--raised);color:var(--text-dim);cursor:pointer;font-size:14px;line-height:1;padding:0 0 2px;box-shadow:0 1px 4px #1418282e,0 2px 10px #00000029}.side-handle:hover{color:var(--text);border-color:var(--text-dim)}.side-handle.on-rail:hover,.side-handle.on-edge:hover{border-color:var(--text-dim)}.side-handle.on-rail{position:fixed;left:calc(var(--rail-w, 46px) - 12px);top:50vh}.side-handle.on-edge{right:-12px}.app.rail-min{--rail-w: 46px}.app.rail-min .rail{width:var(--rail-w)}.app.rail-min .rail a span,.app.rail-min .rail .rail-btn span{display:none}.app.rail-min .rail a,.app.rail-min .rail .rail-btn{width:34px;padding:8px 0}.q-left{display:flex;flex-direction:column;gap:14px;min-width:0}.q-groups{display:flex;flex-direction:column;gap:6px;padding:4px 10px 12px}.q-group-add{display:flex;align-items:center;gap:8px}.q-group-add input{border:1px solid var(--line);border-radius:6px;padding:6px 9px;font-size:12.5px;background:var(--field);color:var(--text);width:180px}.q-group-add input:focus{outline:none;border-color:var(--blue)}.q-group-row{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;padding:7px 10px;font-size:12.5px;background:var(--field)}.q-group-row .muted{font-size:11.5px}.q-selsum{display:flex;flex-direction:column;align-items:flex-end;gap:4px;padding:12px 10px 4px}.q-selsum .lbl{font-size:10.5px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--text-dim)}.q-selsum .row{display:flex;align-items:center;gap:18px;font-size:13px}.q-selsum .row>span{display:flex;align-items:center}.q-selsum .row b{min-width:110px;text-align:right;font-variant-numeric:tabular-nums}.q-selsum .q-info{position:relative;margin-left:6px;color:var(--text-dim);display:inline-flex;cursor:default}.q-selsum .q-info:hover{color:var(--blue)}.rfq-export{display:flex;align-items:center;justify-content:center;gap:6px;width:100%}.rfq-export svg{width:13px;height:13px}.rfq-side-actions{display:flex;flex-direction:column;gap:6px;margin-top:12px;padding-top:12px;border-top:1px solid var(--gray-2)}.rfq-side-actions>a{display:block}.rfq-side-actions .btn-sm{width:100%;padding:8px 12px;font-size:12.5px}.rfq-side{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px;--side-top: 8px;position:sticky;top:var(--side-top);max-height:calc(100vh - var(--side-top) - 16px);display:flex;flex-direction:column}.rfq-layout .rfq-side,.est-layout .rfq-side{min-height:calc(100vh - var(--side-top) - 16px)}.rfq-side-foot{margin-top:auto;padding-top:12px}.rfq-side>*{flex-shrink:0}.rfq-side .steps{overflow-y:auto;min-height:0;flex-shrink:1}.rfq-side h2{font-size:14px;display:flex;align-items:center;gap:8px}.rfq-side h2 .rfq-home{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--gray-1);font-size:13.5px;font-weight:700;transition:border-color .12s,background .12s,color .12s}.rfq-side h2 .rfq-home .go{margin-left:auto;color:var(--text-dim);opacity:0;transition:opacity .12s;font-weight:600}.rfq-side h2 .rfq-home:hover{border-color:var(--blue);color:var(--blue);background:var(--accent-tint)}.rfq-side h2 .rfq-home:hover .go{opacity:1;color:var(--blue)}.rfq-side .company{font-weight:600;margin-top:12px;font-size:13px}.rfq-side .contact{margin-top:8px;font-size:12.5px;position:relative}.rfq-side .contact .muted{font-size:12px}.rfq-side .contact-edit{position:absolute;top:-2px;right:-2px;border:none;background:none;color:var(--text-dim);padding:3px;border-radius:5px;opacity:0;transition:opacity .12s}.rfq-side .contact:hover .contact-edit,.rfq-side .contact-edit:focus-visible{opacity:1}.rfq-side .contact-edit:hover{background:var(--gray-1);color:var(--blue)}.rfq-side .contact.editing{display:flex;flex-direction:column;gap:5px}.rfq-side .contact.editing input{border:1px solid var(--line);border-radius:6px;padding:5px 7px;font-size:12px;font-family:var(--sans);width:100%}.rfq-side .contact.editing input:focus{outline:none;border-color:var(--blue)}.rfq-side .contact-actions{display:flex;align-items:center;gap:8px;margin-top:1px}.rfq-side .contact-actions .linkish{width:auto;font-size:11px}.rfq-side .contact-actions .btn-sm{margin-left:auto;padding:4px 10px;font-size:11.5px}.rfq-side .rev{display:flex;gap:8px;margin-top:12px;align-items:center}.rfq-side .linkish{color:var(--text);font-size:12.5px;display:flex;gap:8px;align-items:center;padding:7px 0;border:none;background:none;width:100%;text-align:left}.rfq-side .linkish svg{width:15px;height:15px}.rfq-side hr{border:none;border-top:1px solid var(--gray-2);margin:10px 0}.steps{margin-top:6px;position:relative}.step{position:relative;padding:6px 0 6px 26px}.step:before{content:"";position:absolute;left:6px;top:12px;width:11px;height:11px;border-radius:50%;border:2px solid var(--line);background:var(--surface)}.step.done:before{background:var(--blue);border-color:var(--blue)}.step.active:before{border-color:var(--blue);background:var(--accent-soft)}.step:after{content:"";position:absolute;left:12.75px;top:29px;bottom:-8px;width:1.5px;background:var(--line)}.step:last-child:after{display:none}.step .step-title{font-size:13px;font-weight:600}.step ul{list-style:none;margin-top:4px}.step ul li{font-size:12px;color:var(--text-dim);padding:3px 0}.step ul li a{color:var(--text-dim)}.step ul li a:hover{color:var(--blue)}.step ul.asm-tree{max-height:33vh;overflow-y:auto;padding-right:4px}.step ul li.done{color:var(--blue)}.rfq-main{display:flex;flex-direction:column;gap:14px;min-width:0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.collapse-btn{border:none;background:none;color:var(--text-faint);font-size:12px;cursor:pointer;padding:2px 5px;border-radius:5px;flex-shrink:0}.collapse-btn:hover{color:var(--blue);background:var(--gray-2)}.panel-head{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--gray-2);font-size:12.5px}.panel-head .title{font-weight:600;display:flex;align-items:center;gap:8px}.panel-head .title svg{width:15px;height:15px}.panel-body{padding:14px}.email-body{font-size:13px;line-height:1.55;white-space:pre-wrap;color:var(--text)}.email-meta{font-size:12px;color:var(--text-dim)}.rfq-two-col{display:grid;grid-template-columns:5fr 6fr;gap:14px}@media (max-width: 1100px){.rfq-two-col{grid-template-columns:1fr}}.filecards{display:flex;gap:10px;flex-wrap:wrap}.filecard{width:118px;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--surface);text-align:left;padding:0}.filecard:hover{border-color:var(--blue)}.filecard .preview{height:74px;background:var(--gray-1);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--gray-2)}.filecard .preview svg{width:52px;height:52px}.filecard .fname{font-size:10.5px;padding:6px 8px 2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filecard .fmeta{font-size:9.5px;color:var(--text-dim);padding:0 8px 7px}.file-filters{display:flex;gap:12px;font-size:12px;align-items:center;flex-wrap:wrap}.file-filters label{display:inline-flex;gap:5px;align-items:center;color:var(--text-head)}.parts-table{width:100%;border-collapse:collapse;font-size:12.5px}.parts-table th{text-align:left;font-weight:600;color:var(--text-head);padding:8px 10px;border-bottom:1px solid var(--line)}.parts-table td{padding:10px;border-bottom:1px solid var(--row-line);vertical-align:middle}.parts-table tr:hover td{background:var(--row-hover);cursor:pointer}.proc-badge{font-family:var(--mono);font-size:9px;letter-spacing:.5px;background:var(--ink);color:#fff;padding:3px 7px;border-radius:3px}.pn{font-weight:600}.pname{color:var(--text-dim);font-size:11.5px;margin-top:2px;text-transform:uppercase;letter-spacing:.2px}.filelink{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--text-head);padding:1.5px 0}.filelink svg{width:12px;height:12px;color:var(--text-dim)}.filelink.none{color:var(--text-faint)}.filelink.none svg{color:var(--text-faint)}.asm-parts td{vertical-align:top}.asm-parts .row-no{color:var(--text-faint);font-size:10px;padding-top:12px;text-align:right;padding-right:0}.asm-parts .proc-badge{white-space:nowrap}.asm-rail{width:20px;flex:0 0 20px;align-self:stretch;margin:-10px 0;border-left:1px solid var(--line)}.asm-fold{border:none;background:none;color:var(--text-dim);font-size:13px;line-height:1;padding:0 2px;border-radius:4px;cursor:pointer}.asm-fold:hover{color:var(--blue);background:var(--accent-tint)}.asm-per{font-family:var(--mono);font-size:10px;color:var(--text-dim)}.rfq-actions{display:flex;justify-content:flex-end;gap:10px;padding:0 0 8px}.est-layout{display:grid;--side-w: 250px;grid-template-columns:var(--side-w) minmax(340px,calc((100% - var(--side-w) - 10px - 42px) * var(--calc, .45))) 10px minmax(320px,1fr);gap:14px;padding:8px 18px 24px;align-items:start}.est-layout:has(.rfq-side.side-min){--side-w: 0px}.split-handle{align-self:stretch;min-height:220px;position:relative;cursor:col-resize;display:flex;align-items:center;justify-content:center;border-radius:6px}.split-handle .grip{width:3px;height:46px;border-radius:3px;background:var(--line);transition:background .12s,height .12s}.split-handle:hover .grip,.split-handle.on .grip,.split-handle:focus-visible .grip{background:var(--blue);height:74px}.split-handle:focus-visible{outline:2px solid var(--blue);outline-offset:2px}@media (max-width: 1400px){.est-layout{grid-template-columns:var(--side-w) minmax(300px,calc((100% - var(--side-w) - 10px - 42px) * var(--calc, .45))) 10px minmax(280px,1fr)}}@media (max-width: 1100px){.est-layout{grid-template-columns:1fr}.est-layout .rfq-side{position:static;max-height:none;min-height:0}.est-layout .rfq-side .steps{overflow-y:visible}.split-handle{display:none}}.est-head{padding:12px 14px;border-bottom:1px solid var(--gray-2)}.facts-toggle{border:none;background:none;color:var(--text-dim);font-size:12px;line-height:1;padding:2px 4px;margin-right:2px;border-radius:4px;cursor:pointer}.facts-toggle:hover{color:var(--blue);background:var(--accent-tint)}.facts-count{display:inline-flex;gap:5px;margin-left:8px;vertical-align:1px}.facts-count .chip{font-size:10px;padding:1.5px 7px;border-radius:999px;border:1px solid;font-weight:600}.facts-count .chip.ok{color:var(--ok-text);border-color:var(--ok-line);background:var(--ok-bg)}.facts-count .chip.warn{color:var(--amber);border-color:var(--warn-line);background:var(--warn-bg)}.facts-table{width:100%;border-collapse:collapse;font-size:12px;margin-top:10px}.facts-table th{text-align:left;font-weight:600;color:var(--text-dim);font-size:10.5px;text-transform:uppercase;letter-spacing:.4px;padding:4px 8px;border-bottom:1px solid var(--line)}.facts-table td{padding:6px 8px;border-bottom:1px solid var(--row-line);vertical-align:top}.facts-table tr:last-child td{border-bottom:none}.facts-table .f-label{color:var(--text-dim);white-space:nowrap}.facts-table .f-value{font-weight:600}.facts-table .f-editable{border:none;background:none;font:inherit;font-weight:600;color:var(--text);padding:0;text-align:left;cursor:pointer;border-bottom:1px dashed transparent}.facts-table .f-editable:hover{color:var(--blue);border-bottom-color:var(--blue)}.f-edit-input{border:1px solid var(--blue);border-radius:5px;padding:3px 6px;font-size:12px;width:100%;max-width:210px}.f-edit-dims{display:inline-flex;gap:4px;align-items:center;font-size:11.5px;color:var(--text-dim)}.f-edit-dims input{width:54px;border:1px solid var(--blue);border-radius:5px;padding:3px 5px;font-size:11.5px}button.fact-mark{border:none;font:inherit;font-size:11.5px;cursor:pointer;padding:1px 5px}.fact-mark.link:hover{text-decoration:underline;filter:brightness(1.12)}.facts-table tr.calc td{cursor:help}.fact-mark{padding:1px 5px;border-radius:4px;font-size:11.5px}.fact-mark.ok{background:var(--ok-bg);color:var(--ok-text);box-shadow:inset 0 0 0 1px var(--ok-line)}.fact-mark.warn{background:var(--warn-bg);color:var(--amber);box-shadow:inset 0 0 0 1px var(--warn-line)}.fact-mark.danger{background:var(--danger-bg);color:var(--danger-text);box-shadow:inset 0 0 0 1px var(--danger-line)}.fact-prev{display:block;margin-top:2px;font-size:10.5px;color:var(--text-faint)}.fact-prev s{text-decoration-color:var(--text-faint)}.src-badge{font-family:var(--mono);font-size:9px;letter-spacing:.5px;padding:3px 7px;border-radius:3px;white-space:nowrap;background:var(--gray-2);color:var(--text-head)}.src-badge.ai{background:var(--warn-bg);color:var(--amber);box-shadow:inset 0 0 0 1px var(--warn-line)}.fact-paste{display:flex;gap:8px;align-items:center;margin-top:10px}.fact-paste input{flex:1;border:1px solid var(--line);border-radius:7px;padding:6px 9px;font-size:12px}.fact-cands{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.fact-cands .cand{border:1px solid var(--accent-line);background:var(--accent-tint);color:var(--blue);border-radius:7px;padding:4px 10px;font-size:11.5px;cursor:pointer}.fact-cands .cand:hover{background:var(--accent-soft)}.src-body{white-space:pre-wrap;font-size:13px;line-height:1.65;padding:14px 18px;max-height:52vh;overflow-y:auto;-webkit-user-select:text;user-select:text;cursor:text}.src-body mark{background:var(--ok-bg);color:var(--ok-text);box-shadow:inset 0 0 0 1px var(--ok-line);border-radius:3px;padding:0 2px}.src-assign{border-top:1px solid var(--gray-2);padding:10px 18px 14px}.est-head .pn-line{display:flex;align-items:baseline;gap:8px}.est-head .pn-line .pn{font-size:15px}.est-head .desc{font-size:12px;margin-top:6px;color:var(--text)}.est-head .dims{font-size:11.5px;color:var(--text-dim);margin-top:5px;display:flex;gap:14px;flex-wrap:wrap}.est-pin{position:sticky;top:0;z-index:6;background:var(--surface);border-radius:var(--radius) var(--radius) 0 0}.facts-panel{max-height:38vh;overflow-y:auto}.wf-bar{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--gray-2);flex-wrap:wrap}.wf-icon{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text-head);cursor:pointer;transition:color .12s,border-color .12s,background .12s}.wf-icon svg{width:14px;height:14px}.wf-icon:hover{color:var(--blue);border-color:var(--blue)}.wf-icon.wide{width:auto;padding:0 10px;gap:6px;font-size:12px}.wf-icon.armed{color:var(--danger-text);border-color:var(--danger-line);background:var(--danger-bg)}.wf-select{background:var(--ink);color:#fff;border:none;border-radius:6px;height:32px;padding:0 12px;font:inherit;font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:8px;cursor:pointer}.wf-caret{width:14px;height:14px;opacity:.85;flex-shrink:0}.wf-wrap{position:relative;display:inline-flex}.wf-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:60;min-width:232px;background:var(--ink);border-radius:10px;padding:6px;box-shadow:0 14px 34px #00000061;display:flex;flex-direction:column;gap:2px}.wf-menu button{border:none;background:none;color:#fff;text-align:left;font:inherit;font-size:12.5px;padding:9px 12px;border-radius:7px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px}.wf-menu button:hover{background:#ffffff24}.wf-menu button.on{background:#fff3;font-weight:600}.wf-sect{font-size:10px;letter-spacing:.5px;text-transform:uppercase;color:#ffffff8c;padding:8px 12px 3px}.qty-cols{margin-left:auto;display:flex;gap:4px;align-items:center;font-size:12px;color:var(--text-dim)}.qty-cols b{min-width:64px;text-align:right;color:var(--text);font-weight:600}.mat-sec{padding:12px 14px;border-bottom:1px solid var(--gray-2)}.child-list{display:flex;flex-direction:column;gap:2px}.child-row{padding:10px 0;border-bottom:1px solid var(--row-line)}.child-row:last-child{border-bottom:none}.child-id{display:flex;align-items:center;gap:10px}.child-foot{display:flex;align-items:flex-end;gap:10px;margin-top:6px}.child-row .btn-sm{white-space:nowrap}.child-row .child-money{display:flex;flex-direction:column;gap:2px;margin-left:auto}.child-row .child-money .tot-line{display:flex;align-items:center;gap:8px;justify-content:flex-end}.child-row .child-money .label{font-size:10.5px;color:var(--text-dim)}.per-parent{font-size:12px;color:var(--text-dim);margin-left:4px}.per-parent b{color:var(--text);font-family:var(--mono);font-size:11px}.per-parent a{color:var(--blue)}.sec-title{font-size:12.5px;font-weight:700;display:flex;align-items:center;gap:8px}.sec-title svg{width:14px;height:14px}.mat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}.field label{display:block;font-size:10.5px;color:var(--text-dim);margin-bottom:3px}.field input,.field select{width:100%;border:1px solid var(--line);border-radius:6px;padding:6px 8px;font-size:12px;background:var(--field);color:var(--text)}.field .static{font-size:12px;padding:6px 0}.op-row{position:relative;padding:10px 44px 10px 14px;border-bottom:1px solid var(--gray-2);min-height:76px}.op-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.op-line .op-name{flex:1 1 150px}.op-line .op-costs{margin-left:auto}.op-line .op-costs b{min-width:74px}.op-times{display:inline-flex;gap:8px}.ffield{position:relative;display:inline-flex;width:96px}.ffield input{width:100%;border:1px solid var(--line);border-radius:7px;padding:8px 8px 5px;font-size:12px;background:var(--surface);color:var(--text);-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.ffield input::-webkit-outer-spin-button,.ffield input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ffield input::placeholder{color:var(--text-dim);opacity:.6;font-weight:400}.ffield input.tuned{color:var(--blue);font-weight:600}.ffield .flabel{position:absolute;left:8px;top:50%;transform:translateY(-50%);font-size:10.5px;color:var(--text-dim);pointer-events:none;transition:top .12s,font-size .12s,color .12s;white-space:nowrap;max-width:calc(100% - 14px);overflow:hidden;text-overflow:ellipsis}.ffield .flabel.up,.ffield.focus .flabel,.ffield:focus-within .flabel{top:0;left:6px;font-size:9px;background:var(--surface);padding:0 3px;max-width:none}.ffield.focus input,.ffield:focus-within input{border-color:var(--blue)}.ffield.focus .flabel,.ffield:focus-within .flabel{color:var(--blue)}.ffield.req input{border-color:var(--danger-text)}.ffield.req .flabel{color:var(--danger-text)}.ffield.req.focus input,.ffield.req:focus-within input{border-color:var(--blue)}.ffield.req.focus .flabel,.ffield.req:focus-within .flabel{color:var(--blue)}.ffield .fsuffix{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:10.5px;color:var(--text-dim);pointer-events:none}.ffield.suf input{padding-right:32px}.ffield.bad input{border-color:var(--danger-text);background:var(--danger-bg)}.ffield.bad .flabel{color:var(--danger-text)}.op-inputs{justify-content:space-between}.op-set{display:flex;flex-direction:column;gap:9px;align-items:flex-start;min-width:0}.op-set>.field{width:auto}.op-set-row{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.op-rate-line{display:flex;gap:6px;align-items:center;font-size:12px;position:relative}.op-rate-line .linkish{font-size:12px}.rate-in{width:72px;border:1px solid var(--blue);border-radius:6px;padding:4px 6px;font-size:12px}.pct-wrap{position:relative;display:inline-flex}.rate-in.pct{width:56px;padding-right:22px;text-align:right}.pct-suf{position:absolute;right:7px;top:50%;transform:translateY(-50%);font-size:11px;color:var(--text-dim);pointer-events:none}.op-rate-line .linkish{white-space:nowrap;background:none;border:none;padding:0;font-size:12.5px;font-weight:600;color:var(--text);cursor:pointer}.op-rate-line .linkish:hover:not(:disabled){color:var(--blue)}.op-rate-line .linkish:disabled{opacity:.45;cursor:default}.rate-menu{top:calc(100% + 4px);left:0;min-width:215px}.rate-menu button{white-space:nowrap}.tuned-t{color:var(--blue)!important;font-weight:600}.op-tier{display:flex;flex-direction:column;gap:4px;align-items:flex-end}.tier-row{display:flex;gap:4px;align-items:center;justify-content:flex-end}.tier-lab{font-size:10px;color:var(--text-dim);min-width:46px;text-align:right;margin-right:3px}.tier-c{min-width:74px;text-align:right;font-size:11.5px}.tier-row.head .tier-c{font-size:10px;color:var(--text-dim)}.tier-row.dim .tier-c{color:var(--text-dim);font-size:11px}.tier-row .tier-c.tuned,.op-costs b.tuned{color:var(--blue)}.mat-pick{border:1px solid var(--line);border-radius:6px;padding:5px 8px;font-size:12.5px;font-weight:600;background:var(--field);color:var(--text);max-width:300px;min-width:0}.mat-pick-btn{display:inline-flex;align-items:center;gap:6px;cursor:pointer;text-align:left}.mat-pick-btn .caret{color:var(--text-dim);font-size:10px}.mat-pick-btn:hover{border-color:var(--blue)}.mat-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:60;min-width:470px;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 32px #0000004d;overflow:hidden}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px 10px 10px}.form-tile{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px 8px;border:1px solid transparent;border-radius:8px;background:none;color:var(--text);cursor:pointer;font-size:10.5px;line-height:1.2;text-align:center}.form-tile svg{color:var(--text-dim)}.form-tile:hover{background:var(--gray-1)}.form-tile.active{border-color:var(--blue);color:var(--blue)}.form-tile.active svg{color:var(--blue)}.mat-menu-ai{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--accent-tint);border-bottom:1px solid var(--line);font-size:12.5px}.mat-menu-ai b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-menu-ai .muted{display:block;font-size:11px}.mat-menu-ai .btn-sm{margin-left:auto;padding:4px 12px;font-size:11px;flex-shrink:0}.mat-menu .spark{color:var(--blue);font-size:11px}.mat-menu-search{padding:8px 10px;border-bottom:1px solid var(--line)}.mat-menu-search input{width:100%;border:1px solid var(--line);border-radius:6px;padding:6px 9px;font-size:12.5px;background:var(--field);color:var(--text)}.mat-menu-search input:focus{outline:none;border-color:var(--blue)}.mat-menu .row .grp{color:var(--text-dim);font-size:10.5px;white-space:nowrap}.mat-menu .row .recent{color:var(--text-dim);font-size:11px}.mat-menu .mat-none{padding:10px 12px;color:var(--text-dim);font-size:12px}.mat-menu-cols{display:flex;height:280px}.mat-menu .col{min-width:150px;padding:6px 0;overflow-y:auto}.mat-menu .col.grades{display:flex;flex-direction:column;overflow:hidden}.mat-menu .col-scroll{flex:1;overflow-y:auto;min-height:0}.mat-menu .col+.col{border-left:1px solid var(--line)}.mat-menu .col.grades{flex:1;min-width:300px}.mat-menu .col-head{font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--text-dim);padding:4px 12px 6px}.mat-menu .row{display:flex;align-items:center;gap:6px;width:100%;border:none;background:none;text-align:left;padding:7px 12px;font-size:12.5px;color:var(--text);cursor:pointer}.mat-menu .row:hover{background:var(--gray-1)}.mat-menu .row.active{background:var(--accent-tint);color:var(--blue);font-weight:600}.mat-menu .row .chev{margin-left:auto;color:var(--text-dim)}.mat-menu .row .nm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-menu .row .price{margin-left:auto;color:var(--text-dim);font-size:11px;white-space:nowrap}.mat-menu .row.custom{color:var(--danger-text);font-weight:600;border-top:1px solid var(--gray-2);margin-top:4px}.mat-type{max-width:150px;font-weight:500;color:var(--text-dim)}.mat-custom{border-color:var(--danger-text);color:var(--text);width:190px}.mat-custom::placeholder{color:var(--danger-text);opacity:.7}.bad-t{color:var(--danger-text)!important}.fin-pick{max-width:220px;font-weight:500}.hd-fin-wrap{position:relative;display:inline-block;border-bottom:1px dotted transparent;cursor:pointer}.hd-fin-wrap:hover,.hd-fin-wrap:focus-within{color:var(--blue);border-bottom-color:var(--blue)}.hd-fin-pick{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;border:none;font:inherit}.fin-missing{display:flex;gap:10px;align-items:center;padding:8px 44px 8px 14px;font-size:12px;color:var(--danger-text);border-bottom:1px solid var(--gray-2)}.fin-missing.bad{background:var(--danger-bg)}.q-profit{font-size:10.5px;color:var(--text-dim);font-weight:400;cursor:help}.q-chip{font-family:var(--mono);font-size:9px;letter-spacing:.5px;padding:2.5px 7px;border:1px solid var(--line);border-radius:999px;color:var(--text-dim);white-space:nowrap}.q-pi-namein{border:1px solid var(--line);border-radius:6px;padding:4px 8px;font-size:12px;background:var(--field);color:var(--text);width:170px}.q-pi-addsel{max-width:240px}.q-pi-note{font-size:10.5px;color:var(--text-faint)}.q-pi-addsel{border:1px solid var(--line);border-radius:6px;padding:4px 6px;font-size:11.5px;background:var(--field);color:var(--text)}.breakdown .pp-head{display:inline-flex;gap:7px;align-items:center;min-width:0}.breakdown .pp-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:56px}.breakdown .pp-kind{font-size:11px;color:var(--text-dim);white-space:nowrap}.breakdown .pp-row{padding:6px 30px 6px 8px;border-bottom:1px solid var(--gray-2);align-items:center;position:relative;min-height:39px}.pricing-bd .pp-row{background:var(--field)}.pricing-bd .pp-costrow{background:none}.pp-trash{position:absolute;right:0;top:50%;transform:translateY(-50%)}.pricing-bd .pp-add{padding-right:30px}.pp-badge{font-family:var(--mono);font-size:8.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;padding:2.5px 7px;border-radius:4px;white-space:nowrap;color:#16181d}.pp-badge.material{background:#f5479b}.pp-badge.labor{background:#b06df5}.pp-badge.outside{background:#f5a13c}.pp-badge.total,.pp-badge.purchased{background:#4fd0e8}.pp-cellrow{display:inline-flex;align-items:center;gap:3px}.pp-summary{border-top:1px dashed var(--line);margin-top:8px;padding-top:6px;display:flex;flex-direction:column;gap:2px}.pricing-bd .pp-sum{padding:4px 30px 4px 8px;font-size:12.5px;color:var(--text-head);align-items:center;border-bottom:1px solid var(--gray-2);min-height:39px}.pricing-bd .pp-summary .pp-sum:last-child{border-bottom:none}.pricing-bd .pp-hero{background:var(--field)}.pricing-bd .pp-sum>span{font-weight:700}.pricing-bd .pp-sum .tot-cols b{font-weight:400;font-size:12.5px;color:var(--text-head)}.pricing-bd .pp-sum .tot-cols .pp-strong{font-weight:700;color:var(--text);font-size:12.5px}.pricing-bd .pp-sum .tot-cols .pp-profit{display:inline-flex;flex-direction:column;align-items:flex-end;color:var(--text);font-weight:600;font-size:12.5px;gap:1px}.pp-pricecell{display:inline-flex;align-items:center;gap:3px;justify-content:flex-end}.pricing-bd .pp-hero>span{font-size:12.5px;font-weight:700;color:var(--text)}.pricing-bd .pp-hero .pp-val.price{font-size:12.5px;font-weight:700}.pp-editin.price{width:84px;font-size:12.5px;font-weight:700}.pp-cell{display:inline-flex;flex-direction:column;align-items:flex-end;min-width:64px;gap:1px}.pp-pct{width:56px;text-align:right;border:1px solid var(--line);border-radius:6px;padding:3px 6px;font-size:11.5px;background:var(--field);color:var(--text)}.pp-pct.tuned{color:var(--blue);font-weight:600;border-color:var(--accent-line)}.pp-amt{font-size:11px;color:var(--text-dim)}.pp-add{display:flex;gap:8px;align-items:center;padding:6px 0}.bd-head{display:flex;align-items:center;gap:8px;width:100%;background:none;border:none;padding:0;cursor:pointer;color:var(--text);text-align:left;min-height:39px}.bd-caret{color:var(--text-dim);font-size:12px;line-height:1;transform:rotate(-90deg);transition:transform .15s}.bd-caret.open{transform:rotate(0)}.bd-headsum{margin-left:auto}.bd-headsum b{font-size:11px;color:var(--text-dim);font-weight:400}.pp-val{background:none;border:none;padding:0;color:var(--blue);font-weight:600;font-size:12.5px;cursor:pointer;white-space:nowrap}.pp-val:hover{text-decoration:underline}.pp-val.ovr{text-decoration:underline dotted;text-underline-offset:2px}.pp-val.dim{color:var(--text-dim);font-weight:500;cursor:default}.pp-val.dim:hover{text-decoration:none}.pp-editin{width:58px;text-align:right;border:none;border-bottom:1px solid var(--blue);border-radius:0;background:none;color:var(--text);font-size:12.5px;padding:1px 2px}.pp-editin:focus{outline:none}.pp-editin,.pp-pct{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.pp-editin::-webkit-outer-spin-button,.pp-editin::-webkit-inner-spin-button,.pp-pct::-webkit-outer-spin-button,.pp-pct::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pp-badge.cost{background:var(--gray-3, #3a3f4b);color:var(--text-dim)}.pp-costrow{cursor:help}.cb-row{background:none;cursor:default}.breakdown .tot-cols{gap:18px}.breakdown .bd-row.time{padding-right:30px}.breakdown .pp-row.cb-totalrow{border-bottom:none}.cb-row .pp-name{min-width:0}.cb-cell{display:inline-flex;flex-direction:column;align-items:flex-end;min-width:64px;gap:1px}.cb-total{font-size:12.5px;font-weight:600;color:var(--text-head)}.cb-totalrow .cb-total,.cb-totalrow .pp-name{font-weight:700;color:var(--text)}.pp-add select,.pp-add .q-pi-namein{border:1px solid var(--line);border-radius:6px;padding:4px 6px;font-size:11.5px;background:var(--field);color:var(--text)}.mat-row .op-set{flex:1 1 300px;min-width:0;gap:11px}.mat-row .op-tier{flex:0 0 auto;border-left:1px solid var(--gray-2);padding-left:14px}.mat-blank-sum{font-size:11.5px;color:var(--text-dim);font-weight:400;white-space:nowrap}.mat-blank-sum.tuned-t{color:var(--blue);font-weight:400}.blank-grid{display:flex;flex-direction:column;gap:4px}.bg-row{display:flex;gap:6px;align-items:center}.bg-lab{font-size:10px;color:var(--text-dim);min-width:52px;text-align:right;margin-right:2px}.bg-c{width:64px;text-align:right;font-size:11.5px;flex-shrink:0}.bg-row.head .bg-c{font-size:10px;color:var(--text-dim)}.bg-row.dim .bg-c{color:var(--text-dim);font-size:11px}.bg-in,.field input.bg-in{width:64px;text-align:right;border:1px solid var(--line);border-radius:6px;padding:4px 6px;font-size:12px;background:var(--field);color:var(--text);flex-shrink:0}.bg-in.tuned,.field input.bg-in.tuned{color:var(--blue);font-weight:600;border-color:var(--accent-line)}.bg-unit,.bg-info{font-size:10px;color:var(--text-dim)}.bg-unit{width:22px;flex-shrink:0}.bg-c.kg{width:48px;color:var(--text-dim);font-size:11px}.bg-row.head .bg-c.kg{font-size:10px}.bg-info{cursor:help}.nest-btn{display:inline-flex;align-items:center;gap:7px;padding:6px 13px;border:1px solid var(--line);border-radius:999px;background:var(--field);color:var(--text);font-size:12.5px;font-weight:600;line-height:1.2}.nest-btn svg{width:16px;height:16px;color:var(--text-dim)}.nest-btn:hover{border-color:var(--accent-line);color:var(--blue)}.nest-btn.on{background:var(--accent-tint);border-color:var(--accent-line);color:var(--blue)}.nest-btn.on svg{color:var(--blue)}.nest-svg{width:100%;min-width:190px;max-width:300px;display:block;border:1px solid var(--line);border-radius:6px;background:var(--field)}.nest-blank{fill:var(--accent-tint);stroke:var(--blue);stroke-width:1;opacity:.85}.nest-cap{font-size:10.5px;color:var(--text-dim)}.nest-cap.warn{color:var(--danger-text)}.nest-row{display:flex;gap:14px;align-items:center}.nest-count{font-size:17px;font-weight:700;color:var(--text-dim);min-width:38px;text-align:center;flex-shrink:0}.nest-svg.nest-lg{max-width:none;flex:1}.nest-tafel{fill:var(--surface);stroke:var(--line)}.nest-caret{padding:6px 8px}.nest-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:70;width:235px;background:var(--raised);border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 38px #14182829;padding:10px 12px;display:flex;flex-direction:column;gap:9px}.nest-menu .nm-title{font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);font-weight:700}.nest-menu .nm-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12.5px}.nest-menu .nm-hint{font-size:11px}.nest-menu .sw:disabled{opacity:.55}.op-cost-in{width:74px;border:1px solid var(--line);border-radius:6px;padding:4px 6px;font-size:12px;text-align:right;background:var(--surface);color:var(--text)}.op-cost-in.tuned{color:var(--blue);font-weight:600;border-color:var(--accent-line)}.op-inputs input,.op-cost-in,.rate-in{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.op-inputs input::-webkit-outer-spin-button,.op-inputs input::-webkit-inner-spin-button,.op-cost-in::-webkit-outer-spin-button,.op-cost-in::-webkit-inner-spin-button,.rate-in::-webkit-outer-spin-button,.rate-in::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.op-chevron{border:none;background:none;color:var(--text-dim);font-size:13px;line-height:1;padding:3px 4px;margin-left:-4px;border-radius:5px;cursor:pointer;transition:transform .15s,color .12s;transform:rotate(-90deg)}.op-chevron:hover{color:var(--blue);background:var(--accent-tint)}.op-chevron.open{transform:rotate(0)}.op-line{cursor:pointer}.op-line input,.op-line .ffield{cursor:auto}.op-ext-chip{font-family:var(--mono);font-size:9px;letter-spacing:.5px;padding:2.5px 7px;border-radius:3px;background:var(--warn-bg);color:var(--amber);box-shadow:inset 0 0 0 1px var(--warn-line);white-space:nowrap}.op-note-mark{color:var(--text-dim);font-size:11px;cursor:help}.note-ta{width:100%;border:1px solid var(--line);border-radius:7px;padding:7px 9px;font-size:12px;line-height:1.5;resize:vertical;background:var(--surface);color:var(--text)}.breakdown .pp-row.note-row{display:flex;align-items:flex-start;gap:10px;background:var(--field)}.note-row .pp-head{padding-top:3px}.note-row-ta{flex:1;border:none;background:none;resize:none;outline:none;font:inherit;font-size:12.5px;line-height:1.55;color:var(--text);padding:2px 0;min-height:21px}.note-row-ta::placeholder{color:var(--text-dim);opacity:.6}.op-times input:disabled,.op-inputs input:disabled{opacity:.45}.op-actions{position:absolute;right:8px;top:0;bottom:0;width:28px;padding:8px 0;display:flex;flex-direction:column;align-items:center;justify-content:space-between}.op-actions .drag-handle{padding:1px 3px;line-height:1}.op-actions .op-remove{padding:3px}.op-name{font-size:12.5px;font-weight:600;display:flex;align-items:center;gap:8px;min-width:0}.op-name svg{width:13px;height:13px;color:var(--text-dim)}.op-inputs{display:flex;gap:10px;margin-top:8px;flex-wrap:wrap;align-items:flex-end}.op-inputs .field{width:92px}.op-costs{display:flex;gap:4px;font-size:12px;justify-content:flex-end}.op-costs b{min-width:64px;text-align:right;font-weight:600}.op-costs.dim b{color:var(--text-dim);font-weight:400;font-size:11px}.op-remove{background:none;border:none;color:var(--text-faint);padding:4px;font-size:12px;line-height:1}.op-remove:hover:not(:disabled){color:var(--danger-text)}.op-remove:disabled{opacity:.35;cursor:default}.op-remove svg{width:14px;height:14px}.breakdown{padding:10px 14px;border-top:1px solid var(--gray-2);background:var(--sunken)}.bd-title{font-size:11px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px}.bd-row{display:grid;grid-template-columns:1fr auto;gap:8px;padding:3px 0;font-size:11.5px;color:var(--text-head)}.breakdown .bd-row,.breakdown .tot-cols.unit b{font-size:12.5px}.bd-row.time{border-top:1px dashed var(--line);margin-top:5px;padding-top:7px;font-weight:600;color:var(--text)}.unit-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:70;min-width:92px;background:var(--raised);border:1px solid var(--line);border-radius:8px;padding:4px;box-shadow:0 12px 30px #1418282e;display:flex;flex-direction:column;gap:1px}.unit-menu button{border:none;background:none;color:var(--text);text-align:left;font-size:12px;padding:7px 10px;border-radius:6px;cursor:pointer}.unit-menu button:hover{background:var(--row-hover)}.unit-menu button.on{background:var(--accent-tint);color:var(--blue);font-weight:600}.op-gap{position:relative;height:12px;margin:-6px 0;cursor:pointer;z-index:2}.op-gap-line{position:absolute;left:14px;right:44px;top:5px;height:2px;border-radius:2px;background:var(--blue);opacity:0;transition:opacity .1s}.op-gap-plus{position:absolute;right:20px;top:-4px;width:20px;height:20px;border-radius:50%;background:var(--blue);color:var(--on-blue);font-size:14px;line-height:19px;text-align:center;opacity:0;transition:opacity .1s}.op-gap:hover .op-gap-line,.op-gap:hover .op-gap-plus{opacity:1}.add-op{position:relative;padding:12px 14px}.add-op input{width:100%;border:1px dashed var(--border-hover);border-radius:8px;padding:9px 12px;font-size:12.5px;background:var(--gray-1)}.op-menu{position:absolute;left:14px;right:14px;top:52px;background:var(--raised);border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 30px #1418281f;z-index:30;max-height:260px;overflow:auto}.op-menu button{display:flex;width:100%;gap:8px;align-items:center;padding:9px 12px;font-size:12.5px;background:none;border:none;text-align:left}.op-menu button:hover{background:var(--row-hover)}.op-menu .lib-head{font-size:10.5px;color:var(--text-dim);padding:8px 12px 2px}.est-totals{padding:12px 14px;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;background:var(--sunken);border-radius:0 0 var(--radius) var(--radius)}.est-totals .label{font-size:12.5px;font-weight:700}.tot-cols{display:flex;gap:4px;font-size:12.5px}.tot-cols b{min-width:64px;text-align:right}.tot-cols.unit b{font-weight:400;color:var(--text-dim);font-size:11.5px}.est-cta{display:flex;gap:10px;padding:12px 14px 14px;align-items:center;flex-wrap:wrap}.est-sticky{position:sticky;bottom:0;z-index:20;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 -2px 14px #14182812;padding:9px 12px 10px}.est-sticky-row{display:flex;align-items:flex-start;gap:12px}.est-sticky-row.bottom{align-items:center;margin-top:8px}.est-sticky-totals{margin-left:auto;display:flex;flex-direction:column;gap:2px;background:var(--gray-1);border-radius:8px;padding:5px 9px}.est-sticky-totals .tot-line{display:flex;align-items:center;gap:10px}.est-sticky-totals .label{font-size:11px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.3px;width:42px;text-align:right}.est-sticky-totals .tot-cols b{font-size:12.5px}.est-sticky-totals .tot-cols.unit b{font-weight:500;color:var(--text-dim)}.part-nav{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-dim)}.part-nav button{border:1px solid var(--line);background:var(--field);border-radius:6px;width:22px;height:22px;font-size:14px;line-height:1;color:var(--text);display:flex;align-items:center;justify-content:center}.part-nav button:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.part-nav button:disabled{opacity:.35;cursor:default}.part-nav span{padding:0 3px;white-space:nowrap}.btn-sm.is-inactive{color:var(--text-faint);cursor:default}.btn-sm.is-inactive:hover{background:var(--field);border-color:var(--line)}.btn-sm.primary.is-inactive{background:var(--disabled);border-color:var(--disabled);color:var(--text-dim);cursor:default}.btn-sm.primary.is-inactive:hover{background:var(--disabled)}.link-files{position:relative}.link-files-btn{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--field);border-radius:8px;padding:6px 11px;font-size:12px;font-family:var(--sans);color:var(--text-dim)}.link-files-btn:hover{border-color:var(--blue);color:var(--text)}.link-files-btn .caret{font-size:12px;opacity:.7}.link-files-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30}.link-files-menu{position:absolute;bottom:calc(100% + 6px);left:0;z-index:31;min-width:260px;max-width:340px;max-height:260px;overflow:auto;background:var(--raised);border:1px solid var(--line);border-radius:9px;box-shadow:0 6px 22px #14182824;padding:4px}.link-files-menu .row{display:flex;align-items:center;gap:8px;width:100%;border:none;background:none;border-radius:6px;padding:6px 8px;font-size:12px;font-family:var(--sans);color:var(--text);text-align:left;cursor:pointer}.link-files-menu .row:hover{background:var(--gray-1)}.link-files-menu .row .nm{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-files-menu .row .kind{font-size:10px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.3px;flex-shrink:0}.link-files-menu .row.upload{border-top:1px solid var(--gray-2);border-radius:0 0 6px 6px;margin-top:3px;padding-top:8px;color:var(--blue)}.link-files-menu .empty{padding:9px 10px;font-size:11.5px;color:var(--text-dim)}.viewer-panel{position:sticky;top:54px}.viewer-tabs{display:flex;gap:4px;padding:8px 10px;border-bottom:1px solid var(--gray-2);align-items:center}.viewer-tabs button{border:1px solid transparent;background:none;border-radius:6px;padding:6px 12px;font-size:12px;color:var(--text-dim)}.viewer-tabs button.active{background:var(--gray-2);color:var(--text);font-weight:600}.viewer-body{height:520px;position:relative;background:var(--surface);border-radius:0 0 var(--radius) var(--radius);overflow:hidden}.viewer-body canvas{display:block}.viewer-hint{position:absolute;bottom:10px;left:12px;font-size:10.5px;color:var(--text-dim);background:var(--scrim);padding:3px 8px;border-radius:5px}.viewer-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--text-dim);font-size:12px;text-align:center;padding:20px}.drawing-wrap{height:100%;overflow:auto;background:var(--mat);padding:14px}.drawing-wrap svg{background:#fff;box-shadow:0 4px 18px #0000001a;display:block;width:100%;height:auto}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f121a73;z-index:160;display:flex;align-items:center;justify-content:center;padding:30px}.modal{background:var(--raised);border-radius:12px;width:min(880px,100%);max-height:84vh;overflow:auto;box-shadow:0 30px 80px #0000004d}.modal-head{display:flex;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid var(--gray-2)}.modal-head h3{font-size:14px}.modal-head .search{flex:1;max-width:320px}.modal-head .search input{width:100%;border:1px solid var(--line);border-radius:8px;padding:7px 10px;font-size:12.5px;background:var(--field);color:var(--text)}.modal-head .x{margin-left:auto;border:none;background:none;font-size:18px;color:var(--text-dim)}.ai-panel{display:flex;flex-direction:column}.ai-body{padding:10px 12px;overflow:auto;max-height:380px;display:flex;flex-direction:column;gap:7px}.ai-body:empty{display:none}.ai-section-title{font-size:11px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px}.ai-finding{display:flex;gap:8px;align-items:flex-start;padding:7px 0;border-bottom:1px solid var(--gray-2)}.ai-sev{font-size:10px;font-weight:700;border-radius:5px;padding:2px 7px;flex-shrink:0;margin-top:1px;text-transform:uppercase;letter-spacing:.3px}.ai-msg{font-size:12px;line-height:1.45;white-space:pre-wrap;border-radius:8px;padding:6px 9px;max-width:94%}.ai-msg.user{align-self:flex-end;background:var(--accent-tint);border:1px solid var(--accent-line)}.ai-msg.assistant{align-self:flex-start;background:var(--gray-1);border:1px solid var(--gray-2)}.ai-action{background:none;border:none;border-radius:6px;padding:4px 7px;font-family:var(--sans);font-size:11.5px;font-weight:500;color:var(--text-dim);cursor:pointer;white-space:nowrap;transition:background .12s,color .12s}.ai-action:hover:not(:disabled){background:var(--gray-1);color:var(--text)}.ai-action:disabled{opacity:.5;cursor:default}.ai-compose{display:flex;gap:8px;padding:10px 14px 12px;border-top:1px solid var(--gray-2)}.ai-compose input{flex:1;border:1px solid var(--line);border-radius:8px;padding:8px 11px;font-size:12.5px}.ai-review,.ai-suggestion{border:1px solid var(--gray-2);border-radius:10px;padding:10px 12px;background:var(--sunken)}.msg-thread{padding:14px 18px;display:flex;flex-direction:column;gap:10px;max-height:46vh;overflow:auto}.msg-thread.msg-full{padding:0;max-height:none;overflow:visible}.conv-thread{display:flex;flex-direction:column;gap:14px}.conv-item{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.conv-item.out{align-items:flex-end}.conv-meta{display:flex;gap:6px;font-size:11px;color:var(--text-dim);margin-bottom:4px;align-items:baseline}.conv-auto{border:1px solid var(--line);border-radius:999px;padding:0 7px;font-size:10px;color:var(--text-faint);white-space:nowrap}.conv-bubble{border:1px solid var(--line);border-radius:12px;padding:10px 13px;background:var(--surface);max-width:min(82%,560px);box-sizing:border-box}.conv-item.out .conv-bubble{background:var(--accent-tint);border-color:var(--accent-line)}.conv-pick{text-align:left;border:none;border-radius:8px;padding:9px 10px;cursor:pointer;display:block;width:100%;color:var(--text)}.conv-pick:hover{background:var(--gray-1)}.conv-pane{display:flex;flex-direction:column;gap:12px;min-width:0;min-height:calc(100vh - var(--side-top, 8px) - 16px - 38px)}.conv-compose{position:sticky;bottom:16px;margin-top:auto;z-index:5;box-shadow:0 -8px 22px #14182812}@media (max-width: 1100px){.conv-pane{min-height:0}.conv-compose{position:static}}.msg-card{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--surface);max-width:92%}.msg-card.out{align-self:flex-end;background:var(--accent-tint);border-color:var(--accent-line)}.msg-meta{display:flex;gap:6px;font-size:11.5px;align-items:baseline}.msg-subject{font-size:12px;font-weight:600;margin-top:4px}.msg-body{font-size:12.5px;line-height:1.5;margin-top:4px;white-space:pre-wrap;color:var(--text)}.msg-compose{display:flex;gap:10px;padding:12px 18px 16px;border-top:1px solid var(--gray-2);align-items:flex-end}.msg-compose textarea{flex:1;border:1px solid var(--line);border-radius:8px;padding:9px 11px;font-size:12.5px;min-height:58px;resize:vertical}.tl-list{padding:14px 18px 18px;display:flex;flex-direction:column}.tl-item{display:flex;gap:12px;position:relative;padding-bottom:14px}.tl-item:not(:last-child):before{content:"";position:absolute;left:13px;top:28px;bottom:0;width:1.5px;background:var(--gray-2)}.tl-dot{width:27px;height:27px;border-radius:50%;background:var(--gray-2);flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--text-dim)}.tl-dot svg{width:13px;height:13px}.tl-text{font-size:12.5px;padding-top:3px}.quote-layout{padding:8px 18px 24px;display:flex;flex-direction:column;gap:14px}.quote-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.quote-toolbar .grow{flex:1}.toggle{display:inline-flex;align-items:center;gap:8px;font-size:12.5px}.toggle .sw{width:34px;height:19px;background:var(--disabled);border-radius:999px;position:relative;border:none}.toggle .sw:after{content:"";position:absolute;top:2px;left:2px;width:15px;height:15px;background:#fff;border-radius:50%;transition:left .15s}.toggle .sw.on{background:var(--blue)}.toggle .sw.on:after{left:17px}.toggle .sw.sm{width:28px;height:16px}.toggle .sw.sm:after{width:12px;height:12px}.toggle .sw.sm.on:after{left:14px}.toggle .t-label{font-size:10.5px;color:var(--text-dim)}.toggle .t-label.active{color:var(--text);font-weight:600}.drag-handle{cursor:grab;color:var(--text-faint);font-size:13px;letter-spacing:-2px;padding:2px 4px 2px 0;-webkit-user-select:none;user-select:none}.drag-handle:hover{color:var(--blue)}.op-row.dragging{opacity:.45}.op-row.drop-target{box-shadow:inset 0 3px 0 var(--blue)}.quote-grid{display:grid;grid-template-columns:7fr 4fr;gap:14px;align-items:start}@media (max-width: 1100px){.quote-grid{grid-template-columns:1fr}}.qtable{width:100%;border-collapse:collapse;font-size:12.5px}.qtable th{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);font-weight:600;color:var(--text-head);white-space:nowrap}.qtable td{padding:8px 10px;border-bottom:1px solid var(--row-line);vertical-align:middle}.qtable .part-cell{display:flex;gap:10px;align-items:center}.qtable input[type=number],.qtable input[type=text]{width:84px;border:1px solid var(--line);border-radius:6px;padding:5px 7px;font-size:12px}.qtable .money{text-align:right;font-variant-numeric:tabular-nums}.qtable tr.part-head td{background:var(--sunken);font-weight:600}.bulk-panel{background:var(--sunken);border:1px solid var(--line);border-radius:var(--radius);padding:14px}.bulk-panel h4{font-size:13px;margin-bottom:12px}.bulk-grid{display:grid;grid-template-columns:1fr 110px 30px;gap:8px;align-items:center;font-size:12.5px}.bulk-grid .head{font-size:11px;color:var(--text-dim);font-weight:600}.bulk-grid input{border:1px solid var(--line);border-radius:6px;padding:6px 8px;font-size:12px;width:100%;background:var(--field);color:var(--text)}.bulk-add{grid-column:1 / -1;border:1px solid var(--line);background:var(--field);border-radius:8px;padding:8px;font-size:12.5px;color:var(--text-dim)}.bulk-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.notes-box textarea{width:100%;min-height:120px;border:1px solid var(--line);border-radius:8px;padding:10px;font-size:12.5px;line-height:1.5;resize:vertical}.qdoc,.fdoc{--text: #1c1e24;--text-dim: #6b7280;--text-head: #444;--text-faint: #9aa0ae;--line: #e3e6ec;--gray-1: #f7f8fa;--gray-2: #eef0f4;--surface: #fff;--raised: #fff;--field: #fff;--sunken: #fbfcfe;--blue: #3e5df0;--amber-text: #92400e;--ok-bg: #e8f7ee;--ok-line: #bfe8cd;--ok-text: #14532d;--warn-bg: #fdf6e3;--warn-line: #f0e0b0;--danger-bg: #fdf4f4;--danger-line: #f3c9c9;--danger-text: #b42318;--accent-tint: #eef2ff;--accent-line: #d5ddfb;--accent-text: #1e40af;color-scheme:light;color:var(--text)}.qdoc-wrap{background:var(--mat);padding:26px;border-radius:var(--radius);display:flex;justify-content:center}.qdoc{background:#fff;width:min(760px,100%);padding:34px 38px;box-shadow:0 10px 40px #00000024;font-size:12px}.qdoc-head{display:flex;justify-content:space-between;gap:20px;border-bottom:2px solid var(--ink);padding-bottom:14px}.qdoc-head .shop-name{font-weight:800;font-size:15px;letter-spacing:.3px}.qdoc-head .shop-meta{color:#555;margin-top:4px;line-height:1.5;font-size:10.5px}.qdoc-head .qno{text-align:right}.qdoc-head .qno .n{font-size:17px;font-weight:700}.qdoc-head .qno div{font-size:10.5px;color:#555;margin-top:2px}.qdoc-blocks{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:14px 0}.qdoc-blocks h5{font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:#666;margin-bottom:5px}.qdoc-blocks .box{border:1px solid var(--line);border-radius:6px;padding:9px;min-height:58px;line-height:1.5;font-size:11px}.qdoc table{width:100%;border-collapse:collapse;font-size:11px}.qdoc th{text-align:left;border-bottom:1.5px solid var(--ink);padding:6px;font-size:10px;text-transform:uppercase;letter-spacing:.4px}.qdoc td{padding:6px;border-bottom:1px solid #eceef2;vertical-align:top}.qdoc .item-part{display:flex;gap:9px}.qdoc .item-part .thumb{width:34px;height:34px}.qdoc .small-print{margin-top:16px;font-size:8.2px;color:#777;line-height:1.55}.qdoc .powered{margin-top:14px;text-align:right;font-size:9px;color:#999}.send-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:14px;align-items:stretch;flex:1;min-height:0}@media (max-width: 1100px){.send-grid{grid-template-columns:1fr}}.doc-pane{min-width:0;min-height:0;overflow-y:auto;position:relative}.doc-toolbar{position:sticky;bottom:8px;z-index:30;display:flex;gap:8px;align-items:center;justify-content:flex-end;padding:6px 10px;margin-top:10px;width:fit-content;margin-left:auto;margin-right:8px}.mail-thread{display:flex;flex-direction:column;gap:10px;padding:12px;overflow-y:auto;flex:1;min-height:0}.mail-bubble{max-width:86%;border-radius:12px;padding:8px 11px;font-size:12.5px;line-height:1.5}.mail-bubble.in{align-self:flex-start;background:var(--field);border:1px solid var(--gray-2);border-bottom-left-radius:4px}.mail-bubble.out{align-self:flex-end;background:var(--accent-tint);border:1px solid var(--accent-soft);border-bottom-right-radius:4px}.mail-meta{font-size:10.5px;color:var(--text-dim);margin-bottom:3px}.email-compose{display:flex;flex-direction:column}.compose-row{display:flex;gap:8px;align-items:center;padding:9px 14px;border-bottom:1px solid var(--gray-2);font-size:12.5px;flex-wrap:wrap}.pill{background:var(--gray-2);border-radius:999px;padding:4px 10px;font-size:12px;display:inline-flex;gap:6px;align-items:center}.pill button{border:none;background:none;color:var(--text-dim);font-size:11px}.compose-row input{border:none;outline:none;font-size:12.5px;flex:1;min-width:120px}.compose-tools{display:flex;gap:6px;padding:6px 12px;border-bottom:1px solid var(--gray-2);color:var(--text-dim);font-size:12px;align-items:center}.compose-tools button.ct{border:none;background:none;color:var(--text-dim);font-size:12.5px;width:24px;height:24px;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}.compose-tools button.ct:hover{background:var(--gray-2);color:var(--text)}.compose-tools button.ct.on{background:var(--accent-tint);color:var(--accent-text)}.email-compose textarea{border:none;outline:none;padding:14px;font-size:13px;line-height:1.55;min-height:170px;resize:vertical}.compose-editor{padding:14px;font-size:13px;line-height:1.55;min-height:170px;outline:none;overflow-y:auto;cursor:text}.compose-editor ul,.compose-editor ol{padding-left:22px;margin:4px 0}.attach-chip{margin:0 14px 12px;border:1px solid var(--line);border-radius:8px;padding:9px 12px;font-size:12px;display:inline-flex;gap:8px;align-items:center;width:fit-content}.attach-chip svg{width:14px;height:14px;color:var(--danger-text)}.compose-actions{display:flex;justify-content:flex-end;gap:8px;padding:0 14px 14px}.sent-banner{background:var(--ok-bg);border:1px solid var(--ok-line);color:var(--ok-text);padding:10px 14px;border-radius:8px;font-size:13px;display:flex;gap:8px;align-items:center}.stale-banner{background:var(--warn-bg);border:1px solid var(--warn-line);color:var(--amber-text);padding:10px 14px;border-radius:8px;font-size:12.5px;display:flex;gap:10px;align-items:center}.stale-tip{position:relative;display:inline-flex}.stale-tip .tip-bubble{display:none;position:absolute;right:0;top:calc(100% + 7px);z-index:60;width:320px;background:var(--raised);border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 38px #14182829;padding:10px 12px;font-size:12px;line-height:1.5;color:var(--text);font-weight:400;white-space:normal;text-align:left}.stale-tip:hover .tip-bubble{display:block}.vr-flash{animation:vr-flash 1.8s ease-out 1}@keyframes vr-flash{0%{box-shadow:0 0 0 3px var(--amber-bg),0 0 0 1px var(--amber-text)}70%{box-shadow:0 0 0 3px var(--amber-bg),0 0 0 1px var(--amber-text)}to{box-shadow:0 0 0 0 transparent}}.settings-layout{display:grid;grid-template-columns:210px 1fr;gap:14px;padding:8px 18px 24px;align-items:start}.settings-nav{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:8px}.settings-nav button{display:block;width:100%;text-align:left;padding:8px 10px;border-radius:7px;border:none;background:none;font-size:13px;color:var(--text)}.settings-nav button.active{background:var(--accent-soft);color:var(--blue);font-weight:600}.settings-body{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;min-width:0}.settings-body h3{font-size:14px;margin-bottom:14px}.settings-body .form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px 18px;padding:0;max-width:1000px}.saved-note{color:var(--green);font-size:12.5px;margin-left:10px}.toast{position:fixed;bottom:22px;right:22px;background:var(--toast-bg);color:var(--toast-fg);padding:12px 16px;border-radius:10px;font-size:13px;box-shadow:0 10px 30px #00000040;z-index:200}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--disabled);border-radius:6px}::-webkit-scrollbar-track{background:transparent}.prev-est-wrap{position:relative;display:inline-flex}.prev-est-chip{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--warn-line);background:var(--warn-bg);color:var(--amber-text);border-radius:999px;padding:2px 10px;font-size:11px;font-weight:600;cursor:pointer}.prev-est-chip:hover{filter:brightness(.97)}.prev-est-pop{position:absolute;top:calc(100% + 6px);left:0;z-index:90;width:320px;background:var(--raised);border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 40px #0f172a2e;padding:10px 12px}.prev-est-pop .pep-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);margin-bottom:6px}.prev-est-pop .pep-row{padding:7px 0;border-top:1px solid var(--gray-2)}.prev-est-pop .pep-row:first-of-type{border-top:none}.prev-est-pop .pep-main{display:flex;align-items:center;gap:6px;font-size:12.5px}.prev-est-pop .pep-via{margin-left:auto;font-size:10px;font-weight:600;border-radius:5px;padding:1px 6px;background:var(--accent-tint);color:var(--accent-text)}.prev-est-pop .pep-via.v-geo{background:var(--warn-bg);color:var(--amber-text)}.prev-est-pop .pep-sub{font-size:11px;margin-top:1px}.prev-est-pop .pep-actions{display:flex;gap:14px;margin-top:4px;font-size:11.5px}.prev-est-pop .pep-actions a{color:var(--blue)}.prev-est-pop .pep-hint{font-size:10.5px;margin-top:8px;line-height:1.45}.drawer-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a40;z-index:150}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,94vw);background:var(--raised);z-index:151;box-shadow:-18px 0 50px #0f172a2e;display:flex;flex-direction:column;animation:drawer-in .18s ease-out}.drawer.half{width:clamp(480px,50vw,720px);max-width:94vw}@keyframes drawer-in{0%{transform:translate(40px);opacity:0}to{transform:none;opacity:1}}.drawer .drawer-head{display:flex;align-items:center;gap:8px;padding:14px 18px;border-bottom:1px solid var(--line)}.drawer .drawer-head h3{font-size:14px;display:flex;align-items:center;gap:7px}.drawer .drawer-body{flex:1;overflow-y:auto;padding:14px 18px 20px;display:flex;flex-direction:column;gap:12px}.drawer .drawer-foot{border-top:1px solid var(--line);padding:12px 18px;display:flex;gap:8px;flex-wrap:wrap}.ext-summary{display:flex;align-items:center;gap:12px;margin:10px 14px;padding:12px 14px;border:1px solid var(--accent-line);background:var(--accent-tint);border-radius:10px;font-size:12.5px;flex-wrap:wrap}.qdoc.fdoc{width:595.3pt;padding:0;background:none;box-shadow:none;position:relative;font-family:Arial,Helvetica,sans-serif;font-size:9.07pt;line-height:10.5pt;color:#000}.fsheet{position:relative;width:595.3pt;height:841.9pt;background:#fff;box-shadow:0 10px 40px #00000024;overflow:hidden}.fsheet+.fsheet{margin-top:16px}.fsheet .body1{position:absolute;left:56.2pt;right:31.7pt;top:286.6pt}.fsheet .bodyc{position:absolute;left:56.2pt;right:31.7pt;top:130pt}.fsheet .cont-title{position:absolute;left:56.2pt;top:55pt;font-size:11pt;font-weight:700;line-height:13pt}.fsheet .blatt{position:absolute;right:31.7pt;top:800pt}.fdoc-table.cont{margin-top:0}.fdoc-measure{position:absolute;left:-9999px;top:0;width:507.4pt;visibility:hidden}.fdoc .lh-logo{position:absolute;left:459.5pt;top:40pt;width:104pt}.fdoc .lh-tagline{position:absolute;left:459.5pt;top:98.5pt;width:104pt}.fdoc-brand{position:absolute;right:31.7pt;top:40pt;text-align:right}.fdoc-brand .b-top{font-size:20pt;font-weight:700;letter-spacing:5pt;color:#8a8f98;line-height:1}.fdoc-brand .b-sub{font-size:9pt;letter-spacing:8pt;color:#b3b8c0;margin-top:2pt}.fdoc-brand .b-slogan{margin-top:22pt;font-size:9.5pt;color:#1c1e22}.fdoc .sender-line{position:absolute;left:56.2pt;top:158.1pt;font-size:6.25pt;line-height:8pt}.fdoc .recipient{position:absolute;left:56.2pt;top:182.5pt;font-size:10pt;line-height:11.6pt}.fdoc .meta{position:absolute;left:462pt;top:180.4pt;font-size:8pt}.fdoc .meta-row{display:flex;height:12.8pt}.fdoc .meta-row .l{min-width:49.5pt;flex:none;padding-right:3pt}.fdoc-title{font-size:11pt;font-weight:700;line-height:13pt}.fdoc-re{font-size:8pt;font-weight:700;margin-top:5pt;line-height:10.5pt}.fdoc-intro{margin-top:15.5pt}.fdoc-table{width:100%;border-collapse:collapse;margin-top:7.7pt;font-size:9.07pt}.fdoc-table th,.fdoc-table td{padding:0;vertical-align:top;font-size:9.07pt;line-height:10.5pt;font-weight:400;text-align:left;border:none}.fdoc-table thead th{border-top:.5pt solid #000;border-bottom:.5pt solid #000;padding:3.6pt 0 4pt;white-space:nowrap;text-transform:none;letter-spacing:0}.fdoc-table .num,.fdoc-table td.qty{text-align:right}.fdoc-table .me{padding-left:6.3pt}.fdoc-table th.menge{position:relative;left:2.1pt}.fdoc-table td.price{text-align:right;vertical-align:bottom}.fdoc-table .pos-thumb{display:inline-flex;width:56pt;height:56pt;margin-top:4.5pt;border:.5pt solid #d5d9e2;border-radius:4.5pt;background:#fff;align-items:center;justify-content:center}.fdoc-table .pos-thumb svg{width:45pt;height:45pt}.fdoc-table tr.grp td{padding-top:5.2pt;font-weight:700}.fdoc-table tr.item td{padding-top:8.8pt}.fdoc-table tr.alt td{padding-top:4pt}.fdoc-table tr.gap td{height:8pt;padding:0}.fdoc-table tr.gap.g5 td{height:5pt}.fdoc-table tr.rule td{border-top:.5pt solid #000;padding:0}.fdoc-table tr.sums td{padding-top:6.8pt}.fdoc-table tr.sums.tight td{padding-top:3.8pt}.fdoc-table tr.grand td{padding-top:6.9pt;font-weight:700}.fdoc-table tr.dbl td{height:2.6pt;border-top:.5pt solid #000;border-bottom:1pt solid #000;padding:0}.fdoc-table td .d{color:#000;font-size:9.07pt;line-height:10.5pt}.fdoc-table .alt-note{font-size:7pt;color:#555;text-align:right;padding-top:3pt}.fdoc-groups{margin-top:10.5pt}.fdoc-groups .row{display:flex;justify-content:space-between;font-size:9.07pt;padding:1pt 0}.fdoc-conditions{margin-top:14.3pt}.fdoc-conditions .term-row{display:flex}.fdoc-conditions .term-row+.term-row{margin-top:10.5pt}.fdoc-conditions .k{width:110.4pt;flex:none;font-weight:700;display:inline-block}.fdoc-conditions .free{margin-top:10.5pt;white-space:pre-wrap}.fdoc-contacts{margin-top:21pt}.fdoc-contacts .head{font-weight:700}.fdoc-contacts .contact-row{display:flex;margin-top:10.5pt}.fdoc-contacts .contact-row+.contact-row{margin-top:9.8pt}.fdoc-contacts .k{width:110.4pt;flex:none}.fdoc-contacts .nm{margin-left:2.5pt}.fdoc-regards{margin-top:19.5pt}.fdoc-regards .firm{margin-top:10.5pt}.fdoc-footer{position:absolute;left:37pt;top:773.2pt;right:auto;font-size:6.1pt;line-height:7.9pt;color:#000}.fdoc-footer .c{position:absolute;top:0}.fdoc-footer .c1{left:0;top:-1.2pt;width:62pt}.fdoc-footer .c1 .fn{font-size:7pt;font-weight:700;line-height:8.7pt;display:inline-block}.fdoc-footer .c2{left:66.8pt;width:80pt}.fdoc-footer .c2 .k{display:inline-block;width:12.5pt}.fdoc-footer .c3{left:153pt;top:-.4pt;width:140pt;text-align:right}.fdoc-footer .c3 .tax{margin-top:2pt}.fdoc-footer .c4{left:305.5pt;top:-.4pt;width:143pt;text-align:right}.fdoc-footer .c4 .b2{margin-top:2pt}.fdoc .lh-badges{position:absolute;left:512.5pt;top:732pt;width:42pt}.fdoc .lh-badges img{display:block;width:42pt}.fdoc .lh-badges img+img{width:38pt;margin:1.5pt 0 0 3pt}@media print{@page{size:A4;margin:0}.qdoc.fdoc,.fsheet{box-shadow:none}.fsheet+.fsheet{margin-top:0;page-break-before:always}.fdoc-measure{display:none}}.qty-edit .qty-cell{position:relative;display:inline-flex;align-items:center}.qty-edit .qty-cell input{width:64px;text-align:center;font-weight:600;font-size:12px;color:var(--text);border:1px solid transparent;border-radius:5px;background:none;padding:2px 0;font-family:inherit}.qty-edit .qty-cell input:hover{border-color:var(--line);background:var(--field)}.qty-edit .qty-cell input:focus{border-color:var(--blue);background:var(--field);outline:none}.qty-edit .qty-cell input::-webkit-outer-spin-button,.qty-edit .qty-cell input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.qty-edit .qty-cell input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.qty-edit .qty-x{position:absolute;left:2px;top:50%;transform:translateY(-50%);border:none;background:none;color:var(--danger-text);font-size:9px;line-height:1;padding:3px;opacity:0;transition:opacity .12s}.qty-edit .qty-cell:hover .qty-x{opacity:.85}.qty-edit .qty-add{border:1px dashed transparent;background:none;border-radius:5px;width:20px;height:20px;font-size:13px;color:var(--text-dim);line-height:1;padding:0;opacity:0;transition:opacity .12s,border-color .12s}.qty-edit:hover .qty-add{opacity:1;border-color:var(--line)}.qty-edit .qty-add:hover{border-color:var(--blue);color:var(--blue)}.rail .rail-user{width:48px;padding:7px 0 5px;border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--text-dim);font-size:9.5px}.rail .rail-user .cl-userButtonAvatarBox{width:19px;height:19px}.pres-av{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-weight:700;letter-spacing:.2px;border:1px solid;flex-shrink:0;background:hsl(var(--h) 62% 92%);color:hsl(var(--h) 55% 32%);border-color:hsl(var(--h) 55% 78%)}:root[data-theme=dark] .pres-av{background:hsl(var(--h) 28% 26%);color:hsl(var(--h) 70% 80%);border-color:hsl(var(--h) 26% 38%)}.pres-stack{display:inline-flex;align-items:center}.pres-stack .pres-av+.pres-av{margin-left:-6px}.pres-more{font-size:10px;color:var(--text-dim);margin-left:4px;font-weight:600}.pres-note{display:flex;align-items:center;gap:7px;margin-top:10px;padding:7px 9px;background:var(--accent-tint);border:1px solid var(--accent-line);border-radius:8px;font-size:11.5px;color:var(--accent-text);line-height:1.4}.rail-online{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 0 2px}.rail-online .pres-stack{flex-wrap:wrap;justify-content:center}.rail-online-label{font-size:8.5px;color:var(--text-dim)}.exp-opt{display:flex;gap:9px;align-items:flex-start;font-size:12.5px;cursor:pointer}.exp-opt input{margin-top:2px;flex-shrink:0}.exp-opt span{display:flex;flex-direction:column;gap:2px}.exp-opt .muted{font-size:11.5px;line-height:1.45}.msg-cc{display:flex;align-items:center;gap:8px;margin-bottom:6px}.msg-cc label{font-size:11.5px;color:var(--text-dim);flex-shrink:0}.msg-cc input{flex:1;min-width:0;border:1px solid var(--line);border-radius:7px;padding:5px 8px;font-size:12px;background:var(--field);color:var(--text)}.msg-attach{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.msg-attach .attach-chip button{border:none;background:none;color:inherit;padding:0 0 0 4px;font-size:11px}.fileview{display:inline-flex;gap:2px;background:var(--gray-2);border-radius:8px;padding:2px}.fileview button{border:none;background:none;border-radius:6px;padding:4px 7px;color:var(--text-dim);display:inline-flex}.fileview button svg{width:14px;height:14px}.fileview button.on{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #1418281a}.filerows{display:flex;flex-direction:column;gap:4px}.filerow{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;text-align:left;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.filerow:hover{border-color:var(--blue)}.filerow .preview{display:flex;align-items:center;justify-content:center}.filerow .preview svg{width:18px;height:18px}.filerow .fname{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filerow .fmeta{font-size:11px;color:var(--text-dim);white-space:nowrap}.rev{display:flex;align-items:center;gap:8px}.rev select,.rev-new{height:30px;box-sizing:border-box;border:1px solid var(--line);border-radius:7px;background:var(--field);color:var(--text);font-family:var(--sans);font-size:12px;padding:0 9px}.rev select{flex:1;min-width:0}.rev-new{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;color:var(--text-dim)}.rev-new svg{width:12px;height:12px}.rev-new:hover{border-color:var(--blue);color:var(--blue)}.parts-table tr.linked td{background:var(--accent-tint)}.filecard.linked,.filerow.linked{border-color:var(--blue);background:var(--accent-tint)}.parts-table tr.linked td:first-child{box-shadow:inset 3px 0 0 var(--blue)}.tag-cell{display:flex;align-items:center;gap:4px;flex-wrap:wrap;position:relative;min-width:90px}.tag-pill{display:inline-flex;align-items:center;gap:4px;border:1px solid;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;white-space:nowrap;max-width:190px;overflow:hidden;text-overflow:ellipsis}.tag-pill.sm{font-size:10px;padding:1px 7px}.tag-pill[data-color=red]{background:#fdecec;color:#b42318;border-color:#f6cfcb}.tag-pill[data-color=orange]{background:#fff2e4;color:#b54708;border-color:#f7d9b8}.tag-pill[data-color=amber]{background:#fdf6e3;color:#92400e;border-color:#f0e0b0}.tag-pill[data-color=green]{background:#e8f7ee;color:#14532d;border-color:#bfe8cd}.tag-pill[data-color=blue]{background:#eff6ff;color:#1e40af;border-color:#bfd7f2}.tag-pill[data-color=violet]{background:#f1eefe;color:#5b21b6;border-color:#d8cffb}.tag-pill[data-color=pink]{background:#fdeef6;color:#9d174d;border-color:#f7cde1}.tag-pill[data-color=slate]{background:#f1f3f7;color:#3a4256;border-color:#dde1ea}:root[data-theme=dark] .tag-pill[data-color=red]{background:#3b1d1d;color:#ffb3ab;border-color:#5b2b2b}:root[data-theme=dark] .tag-pill[data-color=orange]{background:#3b2616;color:#ffc48c;border-color:#5c3a22}:root[data-theme=dark] .tag-pill[data-color=amber]{background:#38301a;color:#f2ce7e;border-color:#564926}:root[data-theme=dark] .tag-pill[data-color=green]{background:#183426;color:#88e0ac;border-color:#265139}:root[data-theme=dark] .tag-pill[data-color=blue]{background:#1b2745;color:#a8c4ff;border-color:#2b3c66}:root[data-theme=dark] .tag-pill[data-color=violet]{background:#291f47;color:#c5b0ff;border-color:#3d2e69}:root[data-theme=dark] .tag-pill[data-color=pink]{background:#3a1e2c;color:#ffaacb;border-color:#582f43}:root[data-theme=dark] .tag-pill[data-color=slate]{background:#242833;color:#c2cade;border-color:#353b4b}.tag-x{border:none;background:none;color:inherit;padding:0;font-size:9px;line-height:1;opacity:0;transition:opacity .12s}.tag-pill:hover .tag-x{opacity:.7}.tag-x:hover{opacity:1!important}.tag-add{width:19px;height:19px;border-radius:50%;border:1px dashed var(--line);background:none;color:var(--text-faint);font-size:12px;line-height:1;padding:0;opacity:0;transition:opacity .12s,border-color .12s}tr.row:hover .tag-add,.tag-cell:hover .tag-add{opacity:1}.tag-add:hover{border-color:var(--blue);color:var(--blue);border-style:solid}.tag-pop{position:absolute;top:calc(100% + 6px);left:0;z-index:60;width:250px;background:var(--raised);border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 38px #14182829;overflow:hidden}.tag-search{display:flex;align-items:center;gap:7px;padding:9px 11px;border-bottom:1px solid var(--gray-2);font-size:12px}.tag-search input{flex:1;border:none;outline:none;font-size:12.5px;background:none}.tag-list{max-height:220px;overflow-y:auto;padding:5px}.tag-opt{display:flex;align-items:center;gap:6px;width:100%;text-align:left;border:none;background:none;padding:5px 6px;border-radius:7px;font-size:12px;color:var(--text)}.tag-opt:hover:not(:disabled){background:var(--gray-1)}.tag-opt:disabled{cursor:default}.tag-opt.create{color:var(--blue);font-weight:600}.tag-check{margin-left:auto;color:var(--green);font-weight:700}.tag-empty{padding:10px 8px;font-size:11.5px;color:var(--text-dim)}.tag-filter{position:relative;display:inline-flex}.tag-funnel{border:none;background:none;color:var(--text-faint);font-size:12px;padding:0 3px;line-height:1}.tag-funnel.on,.tag-funnel:hover{color:var(--blue)}.part-chips .thumb,.rfq-side .thumb{position:relative}.rfq-side .thumb-tick{width:12px;height:12px;left:-3px;bottom:-3px;border-width:1.5px}.rfq-side .thumb-tick svg{width:7px!important;height:7px!important}.thumb-tick{position:absolute;left:-4px;bottom:-4px;width:14px;height:14px;border-radius:50%;background:var(--blue);border:2px solid var(--surface);display:flex;align-items:center;justify-content:center}.thumb-tick svg{width:8px!important;height:8px!important;color:#fff;stroke-width:3.5}.thumb-tick.no{background:var(--danger-text)}.thumb-tick.no svg{stroke-width:2.6}.viewer-tabs{position:relative}.viewer-tools{margin-left:auto;display:inline-flex;gap:2px;padding-right:4px}.viewer-tools button{border:none;background:none;padding:5px 6px;border-radius:6px;color:var(--text-dim);display:inline-flex;align-items:center}.viewer-tools button:hover{background:var(--gray-2);color:var(--blue)}.viewer-body{position:relative}.viewer-switch{position:absolute;right:14px;bottom:14px;width:54px;height:54px;padding:0;border:1px solid var(--line);border-radius:10px;background:var(--surface);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px #14182824;transition:border-color .12s,transform .12s}.viewer-switch:hover{border-color:var(--blue);transform:translateY(-1px)}.viewer-modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f121a73;z-index:300}.viewer-panel-box.is-full{position:fixed;top:4vh;left:4vw;width:92vw;height:92vh;z-index:301;display:flex;flex-direction:column;background:var(--surface);border:none;border-radius:12px;box-shadow:0 30px 80px #00000052}.viewer-panel-box.is-full .viewer-body{flex:1;min-height:0}.viewer-panel-box.is-full .drawing-wrap{height:100%}.viewer-panel-box:fullscreen .viewer-body{flex:1;min-height:0}.viewer-panel-box:fullscreen .drawing-wrap,.viewer-panel-box:fullscreen .viewer-body>div:first-child{height:100%}.viewer-window{height:100vh;display:flex;flex-direction:column;background:var(--gray-1)}.viewer-window .viewer-panel-box{flex:1;display:flex;flex-direction:column;border-radius:0;border:none}.viewer-window .drawing-wrap{height:100%}.viewer-zoom{display:inline-flex;align-items:center;gap:1px;margin-right:6px;border:1px solid var(--line);border-radius:7px;overflow:hidden}.viewer-zoom button{border:none;background:none;padding:4px 8px;font-size:13px;color:var(--text-dim);line-height:1}.viewer-zoom button.pct{font-size:11px;min-width:46px;font-variant-numeric:tabular-nums;color:var(--text-dim)}.viewer-zoom button:hover{background:var(--gray-2);color:var(--blue)}.drawing-wrap{overflow:auto;cursor:grab;touch-action:none;overscroll-behavior:contain}.drawing-wrap.grabbing{cursor:grabbing}.drawing-wrap.grabbing *{pointer-events:none}.drawing-zoomer{margin:0 auto;-webkit-user-select:none;user-select:none;position:relative;container-type:size;aspect-ratio:720 / 520}.drawing-zoomer.rot{aspect-ratio:520 / 720}.drawing-rot{position:absolute;top:50%;left:50%;transform-origin:center center;width:100cqw;height:100cqh}.drawing-zoomer.rot .drawing-rot{width:100cqh;height:100cqw}.drawing-rot svg{width:100%;height:100%}.est-right{position:sticky;top:8px;height:calc(100vh - 32px);display:flex;flex-direction:column;gap:14px;min-width:0}.est-right .viewer-panel-box:not(.is-full){flex:1;min-height:200px;display:flex;flex-direction:column}.est-right .viewer-panel-box:not(.is-full) .viewer-body{flex:1;min-height:0;height:auto}.ai-dock{flex-shrink:0}.ai-dock-bar{display:flex;align-items:center;gap:8px;padding:10px 12px}.ai-dock-bar .spark{color:var(--blue);font-size:13px}.ai-dock{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 2px 10px #1418280d;transition:border-color .12s}.ai-dock:not(.open):hover{border-color:var(--blue)}.ai-dock.open{flex:0 0 clamp(260px,50%,620px)}.ai-dock:not(.open) .ai-body,.ai-dock:not(.open) .panel-head{display:none}.ai-dock:not(.open) .ai-compose{border-top:none;padding:9px 10px 10px}.ai-dock-head{display:flex;align-items:center;gap:8px;padding:7px 13px 8px;border-bottom:1px solid var(--gray-2)}.ai-dock-head .title{font-size:13px;font-weight:600}.ai-dock-body{flex:1;min-height:0;overflow:hidden;display:flex}.ai-dock-body .panel.ai-panel{border:none;box-shadow:none;flex:1;min-height:0;display:flex;flex-direction:column;background:transparent}.ai-dock-body .ai-body{order:1;flex:1;min-height:0;max-height:none;overflow-y:auto}.ai-dock.open .ai-dock-body .ai-body:empty{display:flex}.ai-dock-body .panel-head{order:2;border-bottom:none;display:flex;gap:2px;padding:4px 9px 0}.ai-dock-body .panel-head>.collapse-btn,.ai-dock-body .panel-head>.title,.ai-dock-body .panel-head>div{display:none}.ai-dock-body .ai-compose{order:3;padding:7px 12px 10px}.ai-send{display:inline-flex;align-items:center;justify-content:center;width:33px;height:33px;padding:0;flex:0 0 33px}.cplx-chip{background:var(--amber-bg);color:var(--amber-text);border:none;cursor:pointer}.btn-sm.cplx-on{border-color:var(--amber-text);color:var(--amber-text);font-weight:700}.cplx-f input:not(:focus)::placeholder{opacity:0}
