:root{--font:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--text-page:1.5rem;--text-section:1.125rem;--text-card:.875rem;--text-body:.875rem;--text-helper:.75rem;--text-kpi:2rem;--text-input:var(--text-body);--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--leading-tight:1.4;--leading-body:1.5;--leading-loose:1.6;--tracking-label:.04em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--primary:#e81616;--primary-deep:#b81010;--primary-soft:#fdecec;--bg:#f3f3f3;--surface:#fff;--panel:#f7f7f7;--line:#e6e6e6;--line-loud:#8f8f8f;--ink:#0a0a0a;--muted:#6b6b6b;--shell:#0f0f0f;--shell-hover:#1f1f1f;--shell-line:#ffffff24;--on-shell:#fff;--on-shell-muted:#a8a8a8;--on-shell-dim:#8a8a8a;--danger:#b81010;--danger-deep:#9a0d0d;--danger-soft:#fdecec;--danger-line:#f0b8b8;--success:#2f8f5b;--success-ink:#1f6b45;--success-soft:#e8f4ed;--success-line:#bfe0cd;--warning:#8a5a1b;--warning-bright:#d68910;--warning-soft:#fdf3e3;--warning-line:#e8c89a;--neutral-soft:#f0f0f0;--neutral-ink:#3d3d3d;--info:#2563eb;--info-ink:#1d4ed8;--info-soft:#e8effc;--info-line:#c2d4f7;--pending:#7c3aed;--pending-ink:#6d28d9;--pending-soft:#f1ebfd;--pending-line:#ddcefa;--radius-sm:6px;--radius:8px;--radius-lg:12px;--topbar:0px;--shadow:0 12px 35px #0a0a0a17;font-family:var(--font);line-height:var(--leading-body);color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{min-width:320px;font-family:var(--font);font-size:var(--text-body);-webkit-font-smoothing:antialiased;margin:0}button,input,select,textarea{font:inherit}input,select,textarea{font-size:var(--text-input);font-weight:var(--weight-regular)}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--ink);text-wrap:balance}.app-shell{min-height:100svh;display:flex}.sidebar{background:var(--shell);width:230px;color:var(--on-shell);flex-direction:column;flex-shrink:0;padding:28px 18px 20px;display:flex}.brand{justify-content:center;padding:4px 12px 6px;display:flex}.brand-mark{width:112px;height:auto;display:block}.brand-mark-rail{object-fit:contain;width:38px;height:38px;display:none}nav{gap:7px;margin-top:34px;display:grid}.nav-item{color:#b8b8b8;text-align:left;font-weight:var(--weight-semibold);background:0 0;border:0;border-radius:8px;align-items:center;gap:11px;padding:12px 13px;display:flex}.nav-item:hover{background:var(--shell-hover);color:var(--on-shell)}.nav-item.active{background:var(--primary);color:#fff}.side-foot{border-top:1px solid var(--shell-line);flex-direction:column;align-items:stretch;gap:10px;margin-top:auto;padding-top:18px;display:flex}.side-foot .side-me{flex:none}.side-foot strong,.side-foot small{display:block}.side-foot strong{font-size:var(--text-body);font-weight:var(--weight-medium)}.side-foot small{color:var(--on-shell-muted);font-size:var(--text-helper);margin-top:2px}.avatar{color:#fff;width:31px;height:31px;font-size:var(--text-helper);font-weight:var(--weight-semibold);background:#2e2e2e;border-radius:50%;place-items:center;display:inline-grid}.main{flex:1;min-width:0}.topbar{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;height:64px;padding:0 clamp(24px,5vw,72px);display:none}.eyebrow{color:var(--muted);font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label)}.top-actions{align-items:center;gap:17px;margin-left:auto;display:flex}.topbar-brand{align-items:center;gap:9px;min-width:0;display:none}.topbar-brand img{object-fit:contain;flex:none;width:30px;height:30px;display:block}.topbar-brand span{font-size:var(--text-section);font-weight:var(--weight-semibold);color:var(--ink)}.content{max-width:1160px;margin:0 auto;padding:50px clamp(24px,5vw,72px) 80px}.welcome{justify-content:space-between;align-items:end;gap:30px;display:flex}.welcome h2,.survey-heading h2{font-size:var(--text-page);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:-.01em;margin:8px 0 9px}.muted{color:var(--muted);max-width:49ch}.primary-button,.secondary-button{font-size:var(--text-body);font-weight:var(--weight-semibold);white-space:nowrap;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:9px;padding:12px 16px;transition:background .18s;display:inline-flex}.primary-button{color:#fff;background:var(--primary)}.primary-button:hover{background:var(--primary-deep)}.secondary-button{color:var(--primary-deep);background:var(--surface);border-color:var(--line)}.icon{line-height:1}@media (hover:hover){.secondary-button:hover{background:var(--primary-soft)}}.secondary-button:active:not(:disabled),.row-start:active:not(:disabled),.row-action:active:not(:disabled){background:var(--panel)}.icon{flex:none;justify-content:center;align-items:center;display:inline-flex}.icon svg{width:1em;height:1em;display:block}.stat-label{color:var(--muted);font-size:var(--text-helper);display:block}.section-head{justify-content:space-between;align-items:end;margin-bottom:17px;display:flex}.section-head h3{font-size:var(--text-section);font-weight:var(--weight-semibold);margin-top:6px}.text-button,.back-button{color:var(--primary);font-size:var(--text-body);font-weight:var(--weight-semibold);background:0 0;border:0;padding:5px 0}.survey-list{border-top:1px solid var(--line)}.survey-row{border-bottom:1px solid var(--line);grid-template-columns:10px minmax(0,2fr) minmax(110px,1fr) minmax(120px,1fr) minmax(92px,.8fr) 128px;align-items:center;gap:13px;min-height:75px;display:grid}.status-dot{border-radius:50%;width:8px;height:8px}.survey-info strong,.survey-info span{display:block}.survey-info strong{font-size:var(--text-body);font-weight:var(--weight-medium)}.survey-info span,.survey-date{color:var(--muted);font-size:var(--text-helper);margin-top:2px}.survey-content{padding-top:30px}.back-button{align-items:center;gap:8px;margin-bottom:26px;display:flex}.survey-heading{justify-content:space-between;align-items:end;margin-bottom:31px;display:flex}.step-count{text-align:right;color:var(--muted)}.step-count strong{color:var(--primary);font-size:var(--text-body);margin-right:4px}.step-count span{font-size:var(--text-helper)}.survey-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr) 310px;align-items:start;display:grid}.survey-main{gap:var(--space-4);grid-template-columns:minmax(0,1fr);align-content:start;min-width:0;display:grid}.survey-main .form-panel+.form-panel{margin-top:0}.form-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.form-panel+.form-panel{margin-top:16px}.panel-title{align-items:center;gap:12px;margin-bottom:22px;display:flex}.step-badge{background:var(--primary-soft);width:27px;height:27px;color:var(--primary);font-size:var(--text-helper);font-weight:var(--weight-semibold);border-radius:50%;place-items:center;display:grid}.panel-title h3{font-size:var(--text-card);font-weight:var(--weight-semibold)}.panel-title p{color:var(--muted);font-size:var(--text-helper);margin-top:2px}label{color:var(--muted);font-size:var(--text-helper);font-weight:var(--weight-semibold)}.form-panel>label{display:block}input,select,textarea{border:1px solid var(--line-loud);width:100%;color:var(--ink);background:var(--surface);border-radius:5px;outline:0;margin-top:6px;padding:11px 12px;display:block}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}select{height:43px}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.checklist{gap:8px;display:grid}.check-row{border:1px solid var(--line);min-height:58px;color:var(--ink);cursor:pointer;border-radius:5px;grid-template-columns:21px 1fr auto;align-items:center;gap:11px;padding:10px 12px;transition:border-color .15s,background .15s;display:grid}.check-row:hover,.check-row.selected{background:#fafafa;border-color:#c9c9c9}.fake-check{color:#fff;border:1px solid #c4c4c4;border-radius:4px;place-items:center;width:19px;height:19px;font-size:.8125rem;display:grid}.selected .fake-check{background:var(--primary);border-color:var(--primary)}.check-row strong,.check-row small{display:block}.check-row small{color:var(--muted);font-size:var(--text-helper);font-weight:var(--weight-regular);margin-top:2px}.check-row b{font-size:var(--text-body);color:var(--primary-deep)}.notes-panel textarea{resize:vertical;width:100%;height:95px}.summary-panel{color:#fff;background:var(--shell);box-shadow:var(--shadow);padding:25px;position:sticky;top:20px}.summary-top{justify-content:space-between;align-items:center;display:flex}.summary-panel .eyebrow{color:var(--on-shell-muted)}.summary-ready{color:#7ddba4;font-size:var(--text-helper)}.summary-panel h3{font-size:var(--text-kpi);font-weight:var(--weight-bold);letter-spacing:-.02em;margin-top:27px}.summary-panel>p{color:var(--on-shell-muted);font-size:var(--text-helper)}.summary-lines{border-top:1px solid var(--shell-line);margin:26px 0 18px}.summary-lines div{border-bottom:1px solid var(--shell-line);justify-content:space-between;gap:10px;padding:12px 0;display:flex}.summary-lines span,.summary-lines strong{font-size:var(--text-body)}.empty-line{color:var(--on-shell-muted);font-size:var(--text-helper)}.summary-total{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.summary-total span{font-size:var(--text-helper);color:#c6c6c6}.summary-total strong{font-size:var(--text-section);font-weight:var(--weight-bold)}.summary-panel .primary-button{color:#fff;background:var(--primary);box-shadow:none;width:100%}.summary-panel .primary-button:hover{background:var(--primary-deep)}.summary-note{color:#9c9c9c;text-align:center;font-size:var(--text-helper);margin-top:12px;display:block}@media (width<=800px){:root{--topbar:0px}.sidebar{align-items:center;width:70px;padding:21px 12px}.brand{padding:8px}.nav-item{font-size:0}.brand-mark{display:none}.brand-mark-rail{display:block}.side-foot span:not(.avatar),.side-foot small,.side-foot strong{display:none}.nav-item{padding:12px}.nav-item .icon{font-size:1.125rem}.side-foot{border:0;padding:0}.topbar{padding-inline:24px}.survey-grid{grid-template-columns:1fr}.summary-panel{grid-row:1;position:static}.summary-panel h3{margin-top:10px}.summary-lines{display:none}.summary-total{margin:15px 0}}@media (width<=560px){:root{--topbar:56px;--text-page:1.375rem;--text-kpi:1.75rem;--text-input:1rem}.sidebar{display:none}.topbar{height:56px;padding-inline:18px;display:flex}.topbar-brand{display:flex}.content{padding:30px 17px 55px}.welcome,.survey-heading{display:block}.welcome .primary-button{width:100%;margin-top:22px}.section-head{align-items:baseline}.survey-row{grid-template-columns:9px 1fr 22px;gap:10px;padding:11px 0}.survey-status,.survey-date{display:none}.form-panel{padding:17px}.check-row{grid-template-columns:21px 1fr}.check-row b{grid-column:2;margin-top:-8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important}}.panel-title{position:relative}.fake-check.small{width:15px;height:15px;font-size:.625rem}.check-row{grid-template-columns:21px 1fr}.check-row strong{font-size:var(--text-body)}.other-input{border:1px solid var(--line-loud);width:100%;max-width:calc(100% - 32px);font-size:var(--text-input);color:var(--ink);background:var(--surface);border-radius:5px;margin:-2px 0 2px 32px;padding:9px 11px}.other-input:focus{border-color:var(--primary);outline:none}.photo-drop{text-align:center;background:var(--panel);cursor:pointer;border:1px dashed #cfcfcf;border-radius:6px;margin-top:4px;padding:30px 18px;transition:border-color .15s,background .15s;display:block}.photo-drop:hover,.photo-drop:focus-visible,.photo-drop.dragging{border-color:var(--primary);background:var(--primary-soft);outline:none}.photo-drop-icon{background:var(--surface);width:42px;height:42px;color:var(--primary);border:1px solid var(--line);border-radius:50%;place-items:center;margin:0 auto 12px;font-size:1.1875rem;display:grid}.photo-drop strong{font-size:var(--text-body);display:block}.photo-drop small{color:var(--muted);font-size:var(--text-helper);margin-top:4px;display:block}.photo-error{font-size:var(--text-helper);color:var(--danger);background:var(--danger-soft);border-radius:5px;margin-top:10px;padding:8px 11px}.photo-count{font-size:var(--text-helper);font-weight:var(--weight-regular);color:var(--muted);margin-top:14px}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:10px;margin-top:10px;display:grid}.photo-thumb{border:1px solid var(--line);background:var(--surface);border-radius:6px;margin:0;position:relative;overflow:hidden}.photo-thumb img{object-fit:cover;width:100%;height:78px;display:block}.photo-thumb figcaption{font-size:var(--text-helper);line-height:var(--leading-tight);color:var(--muted);word-break:break-all;padding:6px 7px}.photo-thumb figcaption small{font-size:var(--text-helper);opacity:.8;display:block}.photo-remove{color:#fff;background:#0a0a0ab8;border:0;border-radius:50%;place-items:center;width:20px;height:20px;font-size:.875rem;line-height:1;display:grid;position:absolute;top:5px;right:5px}.photo-remove:hover{background:var(--danger)}.notes-label{margin-top:18px;display:block}.summary-panel h3 em{font-style:normal;font-size:var(--text-section);font-weight:var(--weight-regular);color:var(--on-shell-muted)}.summary-lines strong{color:#7ddba4}.summary-panel .primary-button:disabled{opacity:.45;cursor:not-allowed}.summary-panel .primary-button:disabled:hover{background:var(--primary)}@media (width<=560px){.panel-title{flex-wrap:wrap}.check-row b{display:none}}.survey-row[data-open]{cursor:pointer;transition:background .15s}.survey-row[data-open]:hover{background:var(--panel)}.contact-card{border:1px solid var(--line);background:var(--panel);border-radius:6px;overflow:hidden}.survey-main{container-type:inline-size}@container (width>=560px){.survey-main .contact-card{grid-template-columns:1fr 1fr;display:grid}.survey-main .contact-line{border-bottom:1px solid var(--line)}.survey-main .contact-line:nth-child(odd){border-right:1px solid var(--line)}.survey-main .contact-line:nth-last-child(-n+2){border-bottom:0}}.contact-line{border-bottom:1px solid var(--line);grid-template-columns:108px 1fr;align-items:baseline;gap:12px;padding:10px 13px;display:grid}.contact-line:last-child{border-bottom:0}.contact-line>span{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--muted)}.contact-line strong{font-size:var(--text-body);font-family:var(--font);font-weight:var(--weight-semibold);word-break:break-word}.contact-line a{color:var(--primary);text-decoration:none}.contact-line a:hover{text-decoration:underline}.ghl-warning{font-size:var(--text-helper);color:var(--warning);background:var(--warning-soft);border-radius:5px;margin-top:10px;padding:8px 11px}.survey-type-field{margin-top:16px;display:block}@media (width<=560px){.contact-line{grid-template-columns:1fr;gap:2px}.survey-row[data-open]{padding-inline:6px}}.estimate-field{margin-top:12px;display:block}.estimate-field>span{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:#b8b8b8;align-items:baseline;gap:6px;display:flex}.estimate-field small{font-size:var(--text-helper);font-weight:var(--weight-regular);color:#949494}.estimate-input{background:#1b1b1b;border:1px solid #fff3;border-radius:6px;grid-template-columns:26px 1fr;align-items:center;margin-top:6px;transition:border-color .15s;display:grid}.estimate-input:focus-within{border-color:var(--primary)}.estimate-input .currency{text-align:center;font-size:var(--text-section);color:#b8b8b8}.estimate-input input{color:#fff;width:100%;font-family:var(--font);font-size:var(--text-section);font-weight:var(--weight-semibold);background:0 0;border:0;padding:10px 12px 10px 0}.estimate-input input:focus{outline:none}.estimate-input input::placeholder{color:var(--on-shell-dim);font-weight:var(--weight-medium)}.estimate-breakdown{font-size:var(--text-helper);margin-top:16px}.estimate-breakdown div{color:#c2c2c2;justify-content:space-between;padding:5px 0;display:flex}.estimate-breakdown .grand{border-top:1px solid var(--shell-line);margin-top:5px;padding-top:9px}.estimate-breakdown .grand span,.estimate-breakdown .grand strong{font-size:var(--text-body);color:#fff}.quote-content{max-width:940px;height:calc(100svh - var(--topbar));flex-direction:column;padding-block:34px 0;display:flex;overflow:hidden}.quote-scroll{scrollbar-gutter:stable;flex:1;min-height:0;padding-bottom:48px;overflow-y:auto}.quote-actions{flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:16px;padding-bottom:18px;display:flex}.quote-paper{box-shadow:var(--shadow);font-family:var(--font);color:#111;background:#fff;margin-top:28px;padding:52px 56px 34px;font-size:12px;line-height:1.45}.quote-paper strong,.quote-paper b,.quote-paper h2{font-family:var(--font)}.quote-head{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.quote-logo-img{-webkit-print-color-adjust:exact;print-color-adjust:exact;flex:none;width:118px;height:auto}.quote-word{letter-spacing:1px;color:#6f6f6f;font-size:50px;font-weight:400;line-height:1}.quote-meta{justify-content:space-between;align-items:flex-start;gap:20px;margin-top:26px;display:flex}.quote-meta em{color:#444;font-size:11.5px}.quote-meta div{text-align:right}.quote-meta div span{color:#333;font-size:11.5px;display:block}.quote-to{justify-content:flex-end;gap:46px;margin-top:22px;display:flex}.quote-to>span{color:#333;padding-top:1px;font-size:11.5px}.quote-to address{text-align:right;color:#222;min-width:220px;font-size:11.5px;font-style:normal;line-height:1.6}.quote-info,.quote-lines{border-collapse:collapse;width:100%;margin-top:26px}.quote-info th,.quote-lines th{text-align:left;color:#333;border:0;padding:6px 10px;font-size:11.5px;font-weight:400}.quote-info td{border:1px solid #b8b8b8;padding:8px 10px;font-size:11.5px}.quote-lines{margin-top:20px}.quote-lines th.qty,.quote-lines td.qty{text-align:left;width:42px}.quote-lines th:nth-child(3),.quote-lines td:nth-child(3),.quote-lines th:nth-child(4),.quote-lines td:nth-child(4){width:92px}.quote-lines td{vertical-align:top;border:1px solid #b8b8b8;padding:8px 10px;font-size:11.5px}.quote-lines td.desc strong{color:#1a1a1a;font-weight:700;display:block}.quote-lines td.desc ul{margin:4px 0 0;padding-left:20px}.quote-lines td.desc li{color:#222;margin-bottom:3px}.quote-lines td.desc li::marker{color:#444}.cost-line{margin-top:6px}.quote-totals{border-collapse:collapse;width:300px;margin-top:16px;margin-left:auto}.quote-totals td{border:1px solid #b8b8b8;padding:8px 12px;font-size:11.5px}.quote-totals td:first-child{width:50%}.quote-totals td:last-child{text-align:center}.quote-totals tr:last-child td{background:#f4f4f4;font-weight:700}.quote-totals .tbc{color:#777;font-style:italic;font-weight:400}.quote-foot{text-align:center;color:#555;margin-top:34px;font-size:10.5px;line-height:1.6}.quote-foot .thanks{color:#222;margin:10px 0;font-size:10.5px;font-style:italic;font-weight:700}.quote-foot a{color:var(--primary-deep)}.quote-paper.is-narrow{padding:26px 18px 22px;font-size:11px}.quote-paper.is-narrow .quote-word{font-size:34px}.quote-paper.is-narrow .quote-to{gap:18px}.quote-paper.is-narrow .quote-lines th:nth-child(3),.quote-paper.is-narrow .quote-lines td:nth-child(3),.quote-paper.is-narrow .quote-lines th:nth-child(4),.quote-paper.is-narrow .quote-lines td:nth-child(4){width:54px}.quote-paper.is-narrow .quote-totals{width:100%}.quote-paper.is-narrow .quote-info td{overflow-wrap:anywhere}@media print{@page{size:A4;margin:14mm}body{background:#fff}.sidebar,.topbar,.quote-actions,.back-button{display:none!important}.app-shell,.main,.content,.quote-content{max-width:none;margin:0;padding:0;display:block}.quote-paper{box-shadow:none;margin:0;padding:0;font-size:10.5px}.quote-content,.quote-scroll{height:auto;max-height:none;padding:0;display:block;overflow:visible}.quote-lines tr,.quote-info tr,.quote-foot{break-inside:avoid}}.quote-photos{border-top:1px solid #d5d5d5;margin-top:34px;padding-top:26px}.quote-photos h3{color:#1a1a1a;font-size:14px;font-weight:700}.quote-photos-note{color:#555;margin-top:4px;font-size:10.5px}.quote-photo-grid{grid-template-columns:repeat(2,1fr);gap:14px;margin-top:14px;display:grid}.quote-photo-grid figure{background:#fff;border:1px solid #b8b8b8;margin:0}.quote-photo-grid img{object-fit:cover;width:100%;height:190px;display:block}.quote-paper.is-narrow .quote-photo-grid{grid-template-columns:1fr}.quote-paper.is-narrow .quote-photo-grid img{height:160px}@media print{.quote-photos{break-before:page;border-top:0;margin-top:0;padding-top:0}.quote-photo-grid figure{break-inside:avoid}.quote-photo-grid img{-webkit-print-color-adjust:exact;print-color-adjust:exact;height:175px}}.login-shell{background:var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--surface);border:1px solid var(--line);width:100%;max-width:372px;box-shadow:var(--shadow);border-radius:10px;padding:36px 34px 30px}.login-logo{width:96px;height:auto;margin:0 auto 22px;display:block}.login-card h1{font-size:var(--text-page);font-weight:var(--weight-semibold);text-align:center;letter-spacing:-.01em}.login-sub{text-align:center;font-size:var(--text-helper);color:var(--muted);margin-top:7px}.login-card label{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--muted);margin-top:17px;display:block}.login-card input{border:1px solid var(--line-loud);width:100%;font-size:var(--text-input);color:var(--ink);background:var(--surface);border-radius:6px;margin-top:6px;padding:11px 12px}.login-card input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.login-card .primary-button{justify-content:center;margin-top:22px}.login-error{font-size:var(--text-helper);color:var(--danger);background:var(--danger-soft);border-radius:6px;margin-top:15px;padding:9px 11px}.login-note{text-align:center;font-size:var(--text-helper);line-height:var(--leading-body);color:var(--muted);margin-top:16px;display:block}.side-foot{position:relative}.survey-row.with-assign{grid-template-columns:10px minmax(0,1.9fr) minmax(100px,1fr) minmax(120px,1.05fr) minmax(110px,1fr) minmax(88px,.75fr) 128px}.assign-cell select{border:1px solid var(--line-loud);width:100%;font-size:var(--text-input);color:var(--ink);background:var(--surface);border-radius:5px;padding:6px 8px}.assign-cell select:focus{border-color:var(--primary);outline:none}.staff-panel{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin-top:26px;overflow:hidden}.staff-tabs{border-bottom:1px solid var(--line);padding:0 18px}.staff-tab{border-bottom:2px solid var(--primary);font-size:var(--text-body);font-weight:var(--weight-semibold);color:var(--primary);padding:13px 2px;display:inline-block}.staff-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;padding:16px 18px;display:flex}.staff-filter{border:1px solid var(--line-loud);background:var(--surface);min-width:168px;font-size:var(--text-input);color:var(--ink);border-radius:7px;padding:9px 11px}.staff-search{border:1px solid var(--line-loud);background:var(--surface);max-width:330px;color:var(--muted);border-radius:7px;flex:210px;align-items:center;gap:8px;padding:0 11px;display:flex}.staff-search .icon{font-size:.9375rem}.staff-search input{min-width:0;font-size:var(--text-input);color:var(--ink);appearance:none;background:0 0;border:0;flex:1;padding:9px 0}.staff-search input::-webkit-search-decoration{-webkit-appearance:none}.staff-search input::-webkit-search-cancel-button{-webkit-appearance:none}.staff-search input:focus{outline:none}.staff-search:focus-within,.staff-filter:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.staff-toolbar .primary-button{font-size:var(--text-body);font-weight:var(--weight-semibold);padding:9px 16px}.staff-scroll{overflow-x:auto}.staff-table{border-collapse:collapse;width:100%;min-width:720px}.staff-table th{border-block:1px solid var(--line);background:var(--panel);text-align:left;font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted);padding:10px 18px}.staff-table td{border-bottom:1px solid var(--line);font-size:var(--text-body);vertical-align:middle;padding:13px 18px}.staff-table tbody tr:last-child td{border-bottom:0}.staff-row.inactive{background:var(--panel)}.staff-row.inactive .staff-name,.staff-row.inactive .staff-mail{opacity:.55}.staff-name{align-items:center;gap:11px;display:flex}.staff-name .avatar{flex:none}.staff-who{align-items:center;display:flex}.staff-who strong{font-size:var(--text-body);font-weight:var(--weight-medium)}.staff-mail a{font-size:var(--text-body);color:var(--primary);word-break:break-all;text-decoration:none;display:block}.staff-mail a:hover{text-decoration:underline}.staff-id{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:var(--text-helper);color:var(--muted);align-items:center;gap:5px;margin-top:2px;display:flex}.staff-id.none{font-family:var(--font);color:var(--warning)}.staff-type{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:.06em;color:var(--muted)}.staff-pill{font-size:var(--text-helper);font-weight:var(--weight-semibold);border-radius:999px;padding:3px 9px;display:inline-block}.staff-pill.on{color:var(--success-ink);background:var(--success-soft)}.staff-pill.off{color:var(--neutral-ink);background:var(--neutral-soft)}th.staff-do,td.staff-do{text-align:right;white-space:nowrap}.row-action{width:30px;height:30px;color:var(--muted);background:0 0;border:0;border-radius:6px;padding:0;font-size:.9375rem;transition:color .15s,background .15s}.row-action+.row-action{margin-left:2px}@media (hover:hover){.row-action:hover:not(:disabled){color:var(--primary);background:var(--primary-soft)}.row-action.danger:hover:not(:disabled){color:var(--danger);background:var(--danger-soft)}}.row-action:disabled{opacity:.3;cursor:not-allowed}.staff-empty{text-align:center;color:var(--muted);padding:34px 18px!important}.staff-off td{opacity:.55}.page-lede{color:var(--muted);font-size:var(--text-helper);max-width:68ch;margin:-6px 0 18px}.supplier-note{color:var(--muted);font-size:var(--text-helper);margin-top:2px;display:block}.survey-type-field.needs-answer select{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-soft);color:var(--muted)}.survey-type-field.needs-answer select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.needs-answer-flag{font-style:normal;font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:.04em;color:var(--danger);background:var(--danger-soft);border-radius:999px;margin-left:8px;padding:2px 7px}.materials-card{background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:20px}.materials-card h3{font-size:var(--text-card);font-weight:var(--weight-semibold)}.mat-list{gap:4px;margin-top:14px;display:grid}.mat-row{grid-template-columns:1fr 62px 76px 26px;align-items:center;gap:6px;display:grid}.mat-row.is-extra{grid-template-columns:1fr 62px 76px 26px}.mat-row .row-action{width:26px;height:26px;font-size:.9375rem;line-height:1}.mat-name{font-size:var(--text-body);overflow-wrap:anywhere}.mat-qty,.mat-name-input{border:1px solid var(--line-loud);background:var(--surface);height:34px;color:var(--ink);font-size:var(--text-input);border-radius:5px;margin:0;padding:0 8px}.mat-qty{text-align:right;font-variant-numeric:tabular-nums;font-weight:var(--weight-bold)}.mat-qty:focus,.mat-name-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.mat-extras{border-top:1px dashed var(--line);margin-top:10px;padding-top:10px}.mat-add{font-size:var(--text-helper);font-weight:var(--weight-semibold);margin-top:12px}.sup-qty{color:var(--primary-deep);font-style:normal;font-size:var(--text-body);font-weight:var(--weight-bold);margin-top:2px;display:block}.review-side{align-content:start;gap:16px;display:grid}.review-side .price-card{position:static}.supplier-card{background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:20px}.supplier-card h3{font-size:var(--text-card);font-weight:var(--weight-semibold)}.sq-list{gap:2px;margin-top:14px;display:grid}.sq-row{border-bottom:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:9px 0;display:grid}.sq-do{align-items:center;gap:6px;display:inline-flex}.sq-act{border:1px solid var(--line);background:var(--surface);color:var(--primary-deep);font-size:var(--text-helper);font-weight:var(--weight-semibold);white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;transition:background .15s,border-color .15s;display:inline-flex}.sq-act .icon{font-size:.8125rem}.sq-act:hover{background:var(--primary-soft);border-color:var(--primary-soft)}.sq-act:focus-visible{outline:2px solid var(--primary);outline-offset:1px}@media (width<=560px){.sq-list{gap:8px}.sq-row{border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:minmax(0,1fr) auto;padding:10px 12px}.sq-row,.sq-row:last-child{border-bottom:1px solid var(--line)}.sq-row.chosen{border-color:var(--success-line);padding-left:12px;padding-right:12px}.sq-do{grid-column:1/-1;grid-auto-columns:1fr;grid-auto-flow:column;gap:6px;margin-top:10px;display:grid}.sq-do .sq-act{justify-content:center;min-height:38px}}.sq-row:last-child{border-bottom:0}.sq-row.chosen{background:var(--success-soft);border-radius:5px;padding-left:8px;padding-right:8px}.sq-who strong{font-size:var(--text-body);font-weight:var(--weight-medium);display:block}.sq-who small{color:var(--muted);font-size:var(--text-helper);margin-top:1px;display:block}.sq-amount{font-size:var(--text-body);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.sq-amount em{color:var(--muted);font-style:normal;font-weight:var(--weight-regular)}.sq-ask{width:100%;margin-top:16px}.trade-chips{flex-wrap:wrap;gap:4px;display:flex}.trade-chip{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--neutral-ink);background:var(--neutral-soft);white-space:nowrap;border-radius:999px;padding:2px 8px}.trade-set{border:1px solid var(--line);border-radius:var(--radius);min-width:0;margin-top:4px;padding:12px 14px}.trade-set legend{color:var(--muted);font-size:var(--text-helper);font-weight:var(--weight-semibold);padding:0 6px}.trade-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:6px;display:grid}.user-modal .trade-pick{color:var(--ink);font-size:var(--text-body);font-weight:var(--weight-regular);cursor:pointer;border-radius:5px;align-items:center;gap:9px;margin-top:0;padding:7px 8px;transition:background .15s;display:flex}.user-modal .trade-pick:hover{background:var(--panel)}.user-modal .trade-pick input{opacity:0;width:0;height:0;margin:0;padding:0;position:absolute}.user-modal .trade-pick .fake-check{flex:none}.user-modal .trade-pick:has(input:checked) .fake-check{background:var(--primary);border-color:var(--primary)}.user-modal .trade-pick:has(input:focus-visible) .fake-check{outline:2px solid var(--primary);outline-offset:2px}.staff-foot{border-top:1px solid var(--line);font-size:var(--text-helper);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:13px 18px;display:flex}.staff-pager{gap:6px;margin-left:auto;display:flex}.page-button{border:1px solid var(--line);background:var(--surface);font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--ink);border-radius:6px;padding:6px 11px}.page-button:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.page-button.current{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.page-button:disabled{opacity:.4;cursor:not-allowed}@media (width<=700px){.staff-toolbar{flex-direction:column;align-items:stretch;padding:14px}.staff-filter,.staff-search{width:100%;min-width:0;max-width:none}.staff-search{flex:none}.staff-toolbar .primary-button{justify-content:center;width:100%;min-height:44px}.staff-scroll{overflow-x:visible}.staff-table{min-width:0;display:block}.staff-table thead{display:none}.staff-table tbody{display:block}.staff-table tbody tr:last-child{border-bottom:0}.staff-table td{border:0;padding:0;display:block}.staff-table tbody tr{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:5px 10px;padding:11px 14px;display:flex}.staff-table td:first-child{flex:100%;order:1;min-width:0}.staff-table td:nth-child(2){flex:100%;order:2;min-width:0}.staff-table td:nth-child(3){flex:none;order:3}.staff-table td.staff-state{flex:none;order:4}.staff-table td.staff-do{flex:none;order:5;margin-left:auto}.staff-table td.staff-name{display:flex}.staff-table td.staff-empty{flex:100%;padding:26px 0!important}.staff-table td:nth-child(2) .supplier-note{margin:0;display:inline}.staff-table td:nth-child(2) .supplier-note:before{content:"·";color:var(--line-loud);margin:0 6px}.row-action{width:40px;height:40px;font-size:1.125rem}.row-action+.row-action{margin-left:6px}.staff-foot{padding:13px 14px}.staff-tabs,.staff-toolbar{padding-inline:14px}}.user-modal{max-width:462px;max-height:calc(100svh - 48px);overflow-y:auto}.user-modal label{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--muted);margin-top:15px;display:block}.user-modal input,.user-modal select{border:1px solid var(--line-loud);width:100%;font-size:var(--text-input);color:var(--ink);background:var(--surface);border-radius:6px;margin-top:5px;padding:10px 11px}.user-modal input:focus,.user-modal select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.user-modal input:disabled{color:var(--muted);background:var(--panel)}.user-modal .field-hint{margin:6px 0 0}.user-modal .team-error{margin-top:15px}.text-button.danger{color:var(--danger)}.team-notice{font-size:var(--text-helper);color:var(--success-ink);background:var(--success-soft);word-break:break-all;border-radius:7px;margin-top:20px;padding:11px 14px}.team-error{font-size:var(--text-helper);color:var(--danger);background:var(--danger-soft);border-radius:7px;margin-top:20px;padding:11px 14px}@media (width<=900px){.staff-search{max-width:none}}.side-me{text-align:left;color:inherit;background:0 0;border:0;border-radius:6px;flex:1;align-items:center;gap:10px;padding:0;display:flex}.side-me:hover strong{color:var(--primary)}.side-me strong,.side-me small{display:block}.link-button{color:var(--primary);font-size:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.account-layout{max-width:420px;margin-top:28px}#password-form label{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--muted);margin-bottom:14px;display:block}#password-form input{border:1px solid var(--line-loud);width:100%;font-size:var(--text-input);color:var(--ink);background:var(--surface);border-radius:6px;margin-top:5px;padding:10px 11px}#password-form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.login-card #password-form label,.login-card label{text-align:left}.kpi-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0 26px;display:grid}.kpi-band{margin:var(--space-6) 0 0;font-size:var(--text-section);font-weight:var(--weight-semibold)}.kpi-band+.kpi-grid{margin-top:var(--space-3)}.kpi{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:18px 20px;container-type:inline-size}.kpi strong{font-size:min(var(--text-kpi), 19.5cqi);font-weight:var(--weight-bold);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:9px 0 4px;display:block}.kpi small{font-size:var(--text-helper);color:var(--muted)}.kpi.warn{border-color:var(--warning-line);background:var(--warning-soft)}.kpi.warn strong{color:var(--warning)}.dash-grid{margin-top:var(--space-5);grid-template-columns:1fr 1fr;align-items:start;gap:18px;display:grid}.dash-grid .form-panel+.form-panel{margin-top:0}.workload{gap:13px;display:grid}.workload-row{grid-template-columns:1fr 88px 26px 56px;align-items:center;gap:11px;display:grid}.workload-name{font-size:var(--text-body);font-weight:var(--weight-medium)}.workload-name small{font-size:var(--text-helper);font-weight:var(--weight-regular);color:var(--muted);display:block}.workload-bar{background:var(--panel);border-radius:3px;height:6px;overflow:hidden}.workload-bar i{background:var(--primary);border-radius:3px;height:100%;display:block}.workload-row b{font-size:var(--text-body);text-align:right}.workload-sent{font-size:var(--text-helper);color:var(--muted);text-align:right}.feed{gap:2px;display:grid}.tier{font-style:normal;font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--primary);background:var(--primary-soft);border-radius:3px;margin-left:7px;padding:1px 6px}.text-button:disabled{opacity:.4;cursor:not-allowed}@media (width<=1000px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.dash-grid{grid-template-columns:1fr}}@media (width<=560px){.kpi-grid{grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 20px}.kpi{padding:12px 13px}.kpi strong{margin:5px 0 3px}.kpi small{line-height:var(--leading-tight)}}.side-foot{gap:8px;display:grid}.signout-panel{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;display:flex}.signout-panel strong{font-size:var(--text-card);font-weight:var(--weight-semibold);display:block}.signout-panel p{font-size:var(--text-helper);margin-top:3px}.signout-panel .secondary-button{align-items:center;gap:7px;display:inline-flex}.sent-badge{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--success-ink);background:var(--success-soft);border-radius:7px;align-items:center;gap:7px;padding:9px 14px;display:inline-flex}.sent-badge .icon{font-size:.8125rem}.public-shell{background:var(--bg);min-height:100vh;padding:32px 16px 56px}.public-inner{max-width:860px;margin:0 auto}.public-loading{text-align:center;color:var(--muted);padding:80px 0}.public-missing{text-align:center;background:var(--surface);border:1px solid var(--line);max-width:420px;box-shadow:var(--shadow);border-radius:10px;margin:80px auto;padding:36px 30px}.public-missing h1{font-size:var(--text-page);letter-spacing:-.01em;font-weight:var(--weight-semibold);margin-top:18px}.public-missing p{font-size:var(--text-body);line-height:var(--leading-loose);color:var(--muted);margin-top:9px}.public-foot{text-align:center;font-size:var(--text-helper);color:var(--muted);margin-top:22px}.sup-paper{background:var(--surface);border:1px solid var(--line);max-width:620px;box-shadow:var(--shadow);border-radius:10px;margin:0 auto;padding:clamp(20px,4vw,34px)}.sup-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:20px;display:flex}.sup-head h1{font-size:var(--text-page);letter-spacing:-.01em;font-weight:var(--weight-semibold)}.sup-head p{color:var(--muted);font-size:var(--text-helper);margin-top:4px}.sup-logo{flex:none;width:44px;height:auto}.sup-intro{color:var(--muted);font-size:var(--text-body);margin:18px 0 4px}.sup-brief{background:var(--primary-soft);border-radius:7px;margin:16px 0 4px;padding:12px 14px}.sup-brief strong{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--primary-deep);display:block}.sup-brief p{font-size:var(--text-body);margin-top:4px}.sup-group{margin-top:22px}.sup-group h3{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:8px}.sup-line{border-bottom:1px solid var(--line);font-size:var(--text-body);color:var(--ink);justify-content:space-between;align-items:center;gap:16px;padding:11px 0;display:flex}.sup-line>span:first-child{flex:auto}.sup-price{border:1px solid var(--line);background:var(--surface);border-radius:6px;flex:none;grid-template-columns:24px 1fr;align-items:center;width:148px;transition:border-color .15s,box-shadow .15s;display:grid}.sup-price:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.sup-price em{text-align:center;font-style:normal;font-size:var(--text-body);color:var(--muted)}.sup-price input{width:100%;color:var(--ink);font-size:var(--text-input);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;background:0 0;border:0;margin:0;padding:10px 11px 10px 0}.sup-price input:focus{box-shadow:none;outline:none}.sup-price input::placeholder{color:var(--muted);font-weight:var(--weight-regular)}.sup-line.done{font-weight:var(--weight-semibold)}.sup-line.done b{font-variant-numeric:tabular-nums}.sup-total{border-top:2px solid var(--ink);justify-content:space-between;align-items:baseline;margin-top:22px;padding-top:18px;display:flex}.sup-total span{font-size:var(--text-body);font-weight:var(--weight-bold)}.sup-total b{font-size:var(--text-section);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.sup-notes{color:var(--muted);font-size:var(--text-helper);font-weight:var(--weight-semibold);margin-top:24px;display:block}.sup-notes textarea{border:1px solid var(--line-loud);width:100%;font-size:var(--text-input);font-weight:var(--weight-regular);color:var(--ink);background:var(--surface);border-radius:6px;margin-top:6px;padding:10px 11px;font-family:inherit}.sup-notes textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.sup-send{align-items:center;gap:14px;margin-top:22px;display:flex}.sup-send small{color:var(--muted);font-size:var(--text-helper)}.sup-yournote{color:var(--muted);font-size:var(--text-helper);margin-top:16px}@media (width<=520px){.sup-line{grid-template-columns:1fr;gap:7px;display:grid}.sup-line .sup-price{width:100%}}.decision-bar{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;padding:20px 24px;display:flex}.decision-bar strong{font-size:var(--text-card);font-weight:var(--weight-semibold);display:block}.decision-bar span{font-size:var(--text-helper);color:var(--muted);margin-top:3px;display:block}.decision-actions{flex-wrap:wrap;gap:10px;display:flex}.decision-banner{border-radius:10px;margin-bottom:20px;padding:18px 24px}.decision-banner strong{font-size:var(--text-card);font-weight:var(--weight-semibold);display:block}.decision-banner span{font-size:var(--text-helper);margin-top:4px;display:block}.decision-banner.approved{color:var(--success-ink);background:var(--success-soft);border:1px solid var(--success-line)}.decision-banner.declined{color:var(--neutral-ink);background:var(--neutral-soft);border:1px solid var(--line)}.tracking{grid-template-columns:1fr 1fr;align-items:start;gap:18px;margin-top:26px;display:grid}.copy-link{justify-content:center;width:100%;margin-top:14px}.pdf-filed{font-size:var(--text-helper);line-height:var(--leading-body);color:var(--muted);margin-top:14px}.pdf-missing{border:1px solid var(--warning-line);background:var(--warning-soft);border-radius:7px;margin-top:14px;padding:11px 13px}.pdf-missing p{font-size:var(--text-helper);line-height:var(--leading-body);color:var(--warning)}.pdf-missing .secondary-button{justify-content:center;margin-top:10px}.track-verdict{border-radius:8px;margin-bottom:16px;padding:14px 16px}.track-verdict strong{font-size:var(--text-card);font-weight:var(--weight-semibold);display:block}.track-verdict span{font-size:var(--text-helper);margin-top:3px;display:block}.track-verdict.approved{color:var(--success-ink);background:var(--success-soft)}.track-verdict.declined{color:var(--neutral-ink);background:var(--neutral-soft)}.track-verdict.waiting{color:var(--muted);background:var(--panel)}.track-steps{gap:1px;display:grid}.track-step{border-bottom:1px solid var(--line);grid-template-columns:10px 1fr auto;align-items:center;gap:11px;padding:10px 0;display:grid}.track-step:last-child{border-bottom:0}.track-dot{background:var(--line);border-radius:50%;width:9px;height:9px}.track-step.done .track-dot{background:var(--success)}.track-label{font-size:var(--text-body);color:var(--muted)}.track-step.done .track-label{color:var(--ink);font-weight:var(--weight-semibold)}.track-label em{font-style:normal;font-size:var(--text-helper);color:var(--primary);margin-left:6px}.track-when{font-size:var(--text-helper);color:var(--muted);white-space:nowrap}@media (width<=900px){.tracking{grid-template-columns:1fr}}.field-hint{font-size:var(--text-helper);line-height:var(--leading-body);color:var(--muted);margin:-8px 0 14px}.contact-id strong{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:var(--text-helper);color:var(--muted);font-weight:var(--weight-regular)}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a0a0a80;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:12px;width:100%;max-width:428px;padding:28px 28px 22px;box-shadow:0 24px 60px #0a0a0a4d}.modal-backdrop.is-opening{animation:.2s cubic-bezier(.22,1,.36,1) modal-fade}.modal-backdrop.is-opening .modal{animation:.26s cubic-bezier(.22,1,.36,1) 20ms backwards modal-rise}.modal h2{font-size:var(--text-section);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.modal-body{font-size:var(--text-body);line-height:var(--leading-loose);color:var(--ink);margin-top:9px}.modal-detail{font-size:var(--text-body);font-weight:var(--weight-semibold);color:var(--ink);font-family:var(--font);margin-top:4px}.sq-lines{margin:var(--space-3) 0 0;padding:0;list-style:none}.sq-lines li{align-items:baseline;gap:var(--space-3);border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;padding:8px 0;display:grid}.sq-lines li:first-child{border-top:0}.sq-line-what{font-size:var(--text-body);line-height:var(--leading-body);color:var(--ink);overflow-wrap:anywhere}.sq-line-what em{font-size:var(--text-helper);color:var(--muted);margin-top:1px;font-style:normal;display:block}.sq-line-cost{font-size:var(--text-body);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}.sq-lines+.modal-detail{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1.5px solid var(--ink)}.modal-note{font-size:var(--text-helper);line-height:var(--leading-body);color:var(--muted);background:var(--panel);border-radius:7px;margin-top:14px;padding:10px 12px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.modal-actions button{justify-content:center;min-width:104px}.modal.danger h2{color:var(--danger)}.modal.danger .modal-note{color:var(--danger);background:var(--danger-soft)}.danger-button{font-size:var(--text-body);font-weight:var(--weight-semibold);color:#fff;background:var(--danger);box-shadow:var(--shadow);border:0;border-radius:7px;align-items:center;gap:8px;padding:11px 20px;transition:background .15s;display:inline-flex}.danger-button:hover{background:var(--danger-deep)}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-rise{0%{opacity:0;transform:translateY(14px)scale(.97)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.modal-backdrop.is-opening,.modal-backdrop.is-opening .modal{animation:none}}@media (width<=480px){.modal{padding:22px 20px 18px}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.modal-backdrop{padding:12px}.user-modal{max-height:calc(100svh - 24px)}}@media print{.modal-backdrop{display:none!important}}.sent-badge.approved{color:var(--success-ink);background:var(--success-soft)}.sent-badge.declined{color:var(--neutral-ink);background:var(--neutral-soft)}.track-step.refused .track-dot{background:#8a8a8a}.track-step.refused .track-label{color:var(--neutral-ink)}.modal-input{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--muted);margin-top:16px;display:block}.modal-input textarea{border:1px solid var(--line-loud);width:100%;font-size:var(--text-input);color:var(--ink);background:var(--surface);resize:vertical;border-radius:7px;margin-top:6px;padding:10px 12px;font-family:inherit}.modal-input textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}@media print{.public-shell{background:#fff;min-height:0;padding:0}.public-inner{max-width:none;margin:0}.decision-bar,.decision-banner,.public-foot,.login-error{display:none!important}}.tracking{align-items:stretch}.tracking .form-panel{flex-direction:column;display:flex}.tracking .form-panel+.form-panel{margin-top:0}.tracking .contact-card{margin-bottom:14px}.tracking .copy-link{margin-top:auto}@media print{.tracking{display:none!important}}.tracking .resend-button{justify-content:center;width:100%;margin-top:10px}.verdict-open{width:fit-content;font-size:var(--text-helper);font-weight:var(--weight-semibold);text-underline-offset:3px;margin-top:14px;text-decoration:underline;display:block}.panel-title .panel-edit{font-size:var(--text-helper);font-weight:var(--weight-semibold);align-self:flex-start;margin-left:auto}.contact-empty{font-style:normal;font-weight:var(--weight-medium);color:var(--muted)}.contact-edit{gap:12px;display:grid}.contact-field{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--muted);display:block}.contact-field input,.contact-field textarea{border:1px solid var(--line-loud);width:100%;font-family:inherit;font-size:var(--text-input);font-weight:var(--weight-regular);color:var(--ink);background:var(--surface);border-radius:6px;margin-top:6px;padding:10px 12px}.contact-field textarea{line-height:var(--leading-body);resize:vertical}.contact-field input:focus,.contact-field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}.contact-field input:disabled,.contact-field textarea:disabled{background:var(--panel);color:var(--muted)}.contact-hint{font-size:var(--text-helper);line-height:var(--leading-body);color:var(--muted)}.contact-actions{gap:10px;display:flex}.contact-actions button{flex:1}.choice-options{gap:6px;display:grid}.radio-row{background:var(--surface);font-size:var(--text-body);color:var(--ink);cursor:pointer;border:1px solid #0000;border-radius:5px;align-items:center;gap:9px;padding:7px 10px;transition:border-color .15s;display:flex}.radio-row:hover{border-color:#e3b9b9}.radio-row.selected{border-color:var(--primary)}.fake-radio{border:1px solid #c4c4c4;border-radius:50%;flex:none;place-items:center;width:15px;height:15px;display:grid}.radio-row.selected .fake-radio{border-color:var(--primary);border-width:4px}.summary-sub span{color:var(--muted);font-size:var(--text-helper);padding-left:12px}@media (width<=560px){.other-input{max-width:100%;margin-left:0}}@container (width>=560px){.survey-main .photo-drop{justify-content:center;align-items:center;gap:0 var(--space-4);text-align:left;padding:var(--space-5);grid-template-columns:auto minmax(0,auto);display:grid}.survey-main .photo-drop-icon{grid-row:span 2;margin:0}}.sidebar{overscroll-behavior:contain;scrollbar-width:none;align-self:flex-start;height:100svh;position:sticky;top:0;overflow-y:auto}.sidebar::-webkit-scrollbar{display:none}@media (height<=820px){.sidebar{padding-top:20px;padding-bottom:14px}nav{gap:3px;margin-top:20px}.nav-item{padding-block:9px}.side-foot{gap:6px;padding-top:12px}}@media print{.sidebar{height:auto;position:static}}:root{--on-shell-strong:#e4e4e4}.summary-panel h3{color:var(--on-shell)}.summary-panel h3 em{color:var(--on-shell-dim);font-size:var(--text-section);font-weight:var(--weight-regular)}.summary-lines span{color:var(--on-shell-strong)}.summary-sub span{color:var(--on-shell-muted)}.summary-total span{color:var(--on-shell-strong)}.summary-note{color:var(--on-shell-dim)}.estimate-field>span{color:var(--on-shell-strong)}.estimate-field small{color:var(--on-shell-dim)}.summary-panel{max-height:calc(100svh - var(--space-6));overscroll-behavior:contain;overflow-y:auto}.checklist .check-row{min-height:44px;padding:var(--space-2) var(--space-3)}@media (width>=801px){.survey-content:has(>.survey-grid){height:calc(100svh - var(--topbar));flex-direction:column;padding-bottom:0;display:flex;overflow:hidden}.survey-content .survey-grid{min-height:0;padding-bottom:var(--space-5);flex:1;align-items:stretch}.survey-main{height:100%;min-height:0;padding-right:var(--space-2);scrollbar-gutter:stable;overflow-y:auto}.survey-content .summary-panel{height:100%;min-height:0;max-height:none;position:static;overflow-y:auto}.review-content{height:auto;padding-bottom:var(--space-5);display:block;overflow:visible}}.survey-content{max-width:min(1560px,100%)}.survey-actions{flex-direction:column;align-items:flex-end;gap:4px;margin-left:auto;display:flex}.survey-actions .primary-button:disabled{opacity:.45;cursor:not-allowed}@media (width<=560px){.survey-actions{align-items:stretch;margin:18px 0 0}.survey-actions .primary-button{width:100%}}.survey-actions{align-items:flex-end;gap:var(--space-2);text-align:right;flex-direction:column;margin-left:auto;display:flex}.survey-actions .step-count{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);color:var(--muted)}.survey-actions .step-count strong{font-size:var(--text-body);margin-right:3px}.survey-actions small{font-size:var(--text-helper);color:var(--muted)}.survey-meta{align-items:center;gap:6px var(--space-4);font-size:var(--text-helper);flex-wrap:wrap;margin-top:8px;display:flex}.meta-item{max-width:100%;color:var(--ink);align-items:center;gap:7px;text-decoration:none;display:inline-flex}.meta-item>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.meta-item .icon{color:var(--muted);flex:none;font-size:.8125rem}a.meta-item:hover,a.meta-item:hover .icon{color:var(--primary)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.survey-type-field.inline{align-items:center;gap:var(--space-2);font-size:var(--text-helper);font-weight:var(--weight-semibold);margin-left:auto;display:flex}.survey-type-field.inline input,.survey-type-field.inline select{width:auto;min-width:210px;height:34px;font-size:var(--text-input);font-weight:var(--weight-semibold);margin:0;padding:6px 10px}@media (width<=800px){.survey-type-field.inline{width:100%;margin:var(--space-2) 0 0}.survey-type-field.inline input,.survey-type-field.inline select{flex:1;min-width:0}}@media (prefers-reduced-motion:reduce){.modal-backdrop,.modal{animation:none!important}}.check-toggle{width:40px;color:var(--muted);background:0 0;border:0;border-radius:0 4px 4px 0;flex:none;font-size:.9375rem;line-height:1;transition:color .15s,background .15s}.checklist .check-head{align-items:center;min-height:44px}.check-box{padding:0 var(--space-3);cursor:pointer;align-self:stretch;align-items:center;display:flex}.check-box:hover .fake-check{border-color:var(--primary)}.check-title{min-width:0;padding-right:var(--space-2);flex:1}.check-title strong{font-size:var(--text-body)}.check-toggle{border:1px solid var(--line);background:var(--surface);width:30px;height:30px;color:var(--ink);border-radius:6px;flex:none;place-items:center;margin-right:7px;padding:0;font-size:.6875rem;line-height:1;transition:color .15s,background .15s,border-color .15s;display:grid}.check-toggle:hover,.check-toggle.is-open{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.checklist .check-head{align-items:center;min-height:52px;transition:background .15s;display:flex}.checklist .check-head:hover{background:var(--panel)}.checklist .check-head.selected{background:var(--primary-soft)}.checklist .check-head.selected:hover{background:#fbe3e3}.check-title{min-width:0;padding-right:var(--space-2);flex:1;gap:1px;display:grid}.check-title strong{font-size:var(--text-body);line-height:var(--leading-tight)}.check-title small{font-size:var(--text-helper);line-height:var(--leading-tight);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.check-title small.needs{color:var(--primary-deep);font-weight:var(--weight-semibold)}.check-toggle{width:32px;height:32px;color:var(--muted);background:0 0;border:0;border-radius:7px;flex:none;place-items:center;margin-right:6px;padding:0;transition:color .15s,background .15s,transform .2s cubic-bezier(.22,1,.36,1);display:grid}.check-toggle svg{display:block}.check-toggle:hover{color:var(--ink);background:#0a0a0a0f}.check-toggle.is-open{color:var(--primary);transform:rotate(180deg)}.check-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}@media (prefers-reduced-motion:reduce){.check-toggle{transition:none}}.survey-type-field.inline input::placeholder{font-weight:var(--weight-medium);color:var(--muted)}.checklist{background:var(--surface);border:1px solid var(--line);border-radius:9px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1px;display:grid;overflow:hidden}.check-group{background:var(--surface);min-width:0;box-shadow:0 0 0 1px var(--line)}.category-add{width:100%;min-height:52px;box-shadow:0 0 0 1px var(--line);background:var(--panel);color:var(--primary);font-size:var(--text-helper);font-weight:var(--weight-semibold);text-align:center;border:0;justify-content:center;align-items:center;gap:8px;padding:10px 12px;transition:background .15s,color .15s;display:flex}.category-add:hover:not(.is-full){background:var(--primary-soft)}.category-add:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.category-add.is-full{color:var(--muted);font-weight:var(--weight-regular);cursor:default}.category-add.is-full small{font-size:var(--text-helper)}.category-new{gap:var(--space-2);padding:var(--space-3);box-shadow:0 0 0 1.5px var(--primary);display:grid}.category-new input{margin-top:0}.category-rename{align-self:center;align-items:center;gap:var(--space-2);flex-wrap:wrap;flex:1;display:flex}.category-rename input{flex:160px;width:auto;margin-top:0}.category-rename .primary-button,.category-rename .secondary-button{font-size:var(--text-body);font-weight:var(--weight-semibold);padding:8px 12px}.category-do{align-self:center;align-items:center;margin-left:auto;display:flex}.category-panel-head .category-do+.text-button{margin-left:var(--space-2)}.child-section{gap:var(--space-2);display:grid}.child-heading{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted)}.choice-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(230px,1fr));align-items:start;display:grid}.choice-group{padding:var(--space-2) var(--space-3) var(--space-3);border:1px solid var(--line);background:var(--surface);border-radius:7px;min-width:0;margin:0}.choice-group legend{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--ink);margin-left:-4px;padding:0 4px}.choice-options{gap:5px;margin-top:5px;display:grid}.choice-group.inline .choice-options{grid-template-columns:repeat(auto-fit,minmax(84px,1fr))}.single-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(215px,1fr));align-items:start;display:grid}.check-group.is-open{box-shadow:0 0 0 1.5px var(--primary);z-index:1;position:relative}.check-group.is-open .check-head{background:var(--primary-soft)}.category-panel{margin-top:var(--space-3);border:1px solid var(--line);background:var(--panel);border-radius:9px;overflow:hidden}.category-panel-head{align-items:baseline;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface);border-bottom:1px solid var(--line);display:flex}.category-panel-head h4{font-size:var(--text-card);font-weight:var(--weight-semibold);color:var(--ink)}.category-panel-head span{font-size:var(--text-helper);color:var(--muted)}.category-panel-head .text-button{font-size:var(--text-helper);font-weight:var(--weight-semibold);margin-left:auto}.category-panel-body{padding:var(--space-4);gap:var(--space-5);display:grid}.custom-list{gap:var(--space-2);display:grid}.custom-row{align-items:center;column-gap:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);grid-template-columns:minmax(0,1fr) auto;padding:10px 12px;display:grid}.custom-row>strong,.custom-row>small{overflow-wrap:anywhere;grid-column:1;min-width:0}.custom-row>strong{font-size:var(--text-body)}.custom-row>small{color:var(--muted);font-size:var(--text-helper);font-weight:var(--weight-regular);margin-top:2px}.custom-do{grid-area:1/2/span 2;align-items:center;display:flex}.custom-form{gap:var(--space-2);display:grid}.custom-form input,.custom-form textarea{margin-top:0}.custom-form textarea{resize:vertical;min-height:84px}.custom-form-actions{gap:var(--space-2);margin-top:var(--space-1);display:flex}@media (prefers-reduced-motion:no-preference){.category-panel.is-new{animation:.22s cubic-bezier(.22,1,.36,1) panel-open}}@keyframes panel-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.category-panel .check-row{min-height:36px;padding:6px var(--space-2);background:var(--surface);border-color:var(--line)}.category-panel .check-row:hover{border-color:#d8b3b3}.category-panel .check-row.selected{border-color:var(--primary);background:var(--surface)}.category-panel .check-row strong{font-size:var(--text-body);font-weight:var(--weight-semibold)}.check-row input,.check-box input,.radio-row input{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.check-row input:focus-visible+.fake-check,.check-box input:focus-visible+.fake-check,.radio-row input:focus-visible+.fake-radio{outline:2px solid var(--primary);outline-offset:2px}[hidden]{display:none!important}@media (width>=801px){.app-shell.shell-fixed{height:100svh;overflow:hidden}}.check-row,.check-box,.radio-row,.meta-item{position:relative}.toolbar-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.pay-block{margin-top:var(--space-4);box-shadow:var(--shadow);background:#fff;padding:22px 56px 24px}.pay-block h4{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink)}.pay-terms{font-size:var(--text-helper);color:var(--muted);margin-top:3px}.pay-grid{gap:8px;margin-top:12px;display:grid}.pay-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.pay-row>span{width:108px;font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted);flex:none}.pay-row>strong{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:var(--text-body);letter-spacing:.02em;color:var(--ink)}.pay-copy{color:#b0b0b0;background:0 0;border:0;flex:none;place-items:center;width:22px;height:22px;padding:0;transition:color .15s;display:grid}.pay-copy svg{display:block}.pay-copy .i-done,.pay-copy.copied .i-copy{display:none}.pay-copy.copied .i-done{display:block}.pay-copy:hover{color:var(--primary)}.pay-copy:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}.pay-copy.copied{color:var(--success-ink,#1b7f4c)}@media print{.pay-copy,.pay-block{display:none!important}}.quote-foot .foot-grid{border-top:1px solid var(--line);gap:5px;padding-top:11px;display:grid}.quote-foot .foot-legal strong{letter-spacing:.02em;color:#222;font-size:10.5px}.quote-foot .foot-address{color:#6b6b6b}.quote-foot .foot-legal,.quote-foot .foot-contact,.quote-foot .foot-reg{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 0;display:flex}.quote-foot .foot-contact>*+:before,.quote-foot .foot-reg>*+:before{content:"·";color:#c9c9c9;margin:0 10px;font-weight:400}.quote-foot .foot-reg{color:#8a8a8a;margin-top:3px}.quote-foot .foot-contact a{font-weight:600;text-decoration:none}.quote-foot .foot-contact a:hover{text-decoration:underline}@media (width<=760px){.pay-block{padding:20px 18px 22px}.pay-row>span{width:100%}}.job-type-custom{align-items:center;gap:var(--space-2);display:flex}.job-type-custom .text-button{font-size:var(--text-helper);font-weight:var(--weight-semibold);white-space:nowrap}@media (width<=800px){.job-type-custom{flex:1;min-width:0}}.survey-head{cursor:default;gap:14px;min-height:0;padding:10px 0}.survey-head span{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted)}.survey-head:hover{background:0 0}@media (width<=560px){.survey-head{display:none}}.survey-info{min-width:0}.survey-info strong,.survey-info span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.assign-cell.locked select{color:var(--muted);background:var(--panel);border-color:var(--line);cursor:not-allowed;opacity:1}.review-content .photo-thumb figcaption{display:none}.modal-fields{gap:var(--space-3);margin-top:var(--space-4);display:grid}.modal-field>span{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--muted);display:block}.modal-field>span small{font-weight:var(--weight-medium);text-transform:none}.modal-money{border:1px solid var(--line-loud);background:var(--surface);border-radius:7px;grid-template-columns:26px 1fr;align-items:center;margin-top:5px;transition:border-color .15s;display:grid}.modal-money:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.modal-money em{text-align:center;color:var(--muted);font-style:normal;font-size:var(--text-section)}.modal-money input{font-size:var(--text-section);font-weight:var(--weight-semibold);background:0 0;border:0;margin:0;padding:10px 12px 10px 0}.modal-money input:focus{box-shadow:none;border:0;outline:none}.modal-toggle{margin-top:var(--space-4);font-size:var(--text-body);font-weight:var(--weight-semibold);color:var(--ink);cursor:pointer;align-items:center;gap:9px;display:flex}.modal-toggle input{clip:rect(0 0 0 0);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.modal-toggle input:checked+.fake-check{background:var(--primary);border-color:var(--primary)}.modal-toggle input:focus-visible+.fake-check{outline:2px solid var(--primary);outline-offset:2px}.review-sheet{max-width:940px;box-shadow:var(--shadow);background:#fff;padding:42px 48px 36px}.sheet-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:2px solid var(--ink);flex-wrap:wrap;display:flex}.sheet-head h3{font-size:var(--text-card);font-weight:var(--weight-semibold)}.sheet-head>div>p{font-size:var(--text-helper);color:var(--muted);margin-top:3px}.sheet-head dl{gap:var(--space-5);flex-wrap:wrap;margin:0;display:flex}.sheet-head dt{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted)}.sheet-head dd{font-size:var(--text-body);font-weight:var(--weight-semibold);color:var(--ink);margin:2px 0 0}.sheet-group,.sheet-block{padding:var(--space-4) 0;border-bottom:1px solid var(--line)}.sheet-group:last-child,.sheet-block:last-child{border-bottom:0;padding-bottom:0}.sheet-group h4,.sheet-block h4{font-size:var(--text-card);font-weight:var(--weight-semibold);color:var(--ink);align-items:center;gap:9px;display:flex}.sheet-block h4 em{font-style:normal;font-size:var(--text-helper);font-weight:var(--weight-regular);color:var(--muted)}.sheet-items{gap:7px var(--space-5);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin:10px 0 0 30px;display:grid}.sheet-items li{font-size:var(--text-body);color:#333;align-items:center;gap:9px;list-style:none;display:flex}.sheet-tick{background:var(--primary);color:#fff;border-radius:3px;flex:none;place-items:center;width:15px;height:15px;font-size:.625rem;line-height:1;display:grid}.sheet-items .sheet-tick{background:#bdbdbd;width:13px;height:13px;font-size:.5625rem}.sheet-detail{font-size:var(--text-body);color:var(--muted);margin:8px 0 0 30px}.sheet-notes{font-size:var(--text-body);line-height:var(--leading-loose);color:#333;white-space:pre-wrap;margin-top:8px}.sheet-block .photo-grid{margin-top:12px}.sheet-block .photo-thumb figcaption{display:none}@media (width<=560px){.review-sheet{padding:26px 20px 24px}.sheet-items{margin-left:0}}.review-layout{gap:var(--space-4);grid-template-columns:minmax(0,1fr) 320px;align-items:start;display:grid}.review-layout .review-sheet{max-width:none}.price-card{top:var(--space-4);background:var(--shell);box-shadow:var(--shadow);color:var(--on-shell);border-radius:10px;padding:22px 22px 24px;position:sticky}.price-card h3{font-size:var(--text-card);font-weight:var(--weight-semibold);color:var(--on-shell)}.price-sub{font-size:var(--text-helper);line-height:var(--leading-body);color:var(--on-shell-muted);margin-top:4px}.price-field{margin-top:var(--space-4);display:block}.price-field>span:first-child{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--on-shell-strong);display:block}.price-input{background:#1b1b1b;border:1px solid #fff3;border-radius:8px;grid-template-columns:26px 1fr;align-items:center;margin-top:6px;transition:border-color .15s,box-shadow .15s;display:grid}.price-input:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #e8161640}.price-input em{text-align:center;font-style:normal;font-size:var(--text-section);color:var(--on-shell-dim)}.price-input input{color:var(--on-shell);font-size:var(--text-section);font-weight:var(--weight-bold);background:0 0;border:0;margin:0;padding:11px 12px 11px 0}.price-input input:focus{box-shadow:none;border:0;outline:none}.price-input input::placeholder{color:var(--on-shell-dim);font-weight:var(--weight-semibold)}.price-vat{margin-top:var(--space-4);font-size:var(--text-body);font-weight:var(--weight-semibold);color:var(--on-shell-strong);cursor:pointer;align-items:center;gap:9px;display:flex}.price-vat input{clip:rect(0 0 0 0);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.price-vat .fake-check{border-color:#6a6a6a}.price-vat input:checked+.fake-check{background:var(--primary);border-color:var(--primary)}.price-vat input:focus-visible+.fake-check{outline:2px solid var(--primary);outline-offset:2px}.price-total{margin:var(--space-4) 0 0;padding-top:var(--space-3);border-top:1px solid var(--shell-line);gap:7px;display:grid}.price-total>div{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.price-total dt{font-size:var(--text-body);color:var(--on-shell-muted)}.price-total dd{font-size:var(--text-body);font-weight:var(--weight-semibold);color:var(--on-shell-strong);margin:0}.price-total .grand{border-top:1px solid var(--shell-line);margin-top:3px;padding-top:9px}.price-total .grand dt{font-size:var(--text-body);font-weight:var(--weight-bold);color:var(--on-shell)}.price-total .grand dd{font-size:var(--text-section);font-weight:var(--weight-bold);color:var(--on-shell)}.price-hint{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--shell-line);font-size:var(--text-helper);line-height:var(--leading-body);color:var(--on-shell-muted)}@media (width<=900px){.review-layout{grid-template-columns:1fr}.price-card{position:static}}.pdf-extra{margin-top:22px}.pdf-pay{color:#333;text-align:center;font-size:10.5px;line-height:1.6}.survey-status{font-size:var(--text-helper);font-weight:var(--weight-semibold);line-height:var(--leading-body);white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-self:start;padding:4px 10px}.booked-text{color:var(--muted);background:var(--neutral-soft);border-color:#e4e4e4}.progress-text{color:var(--warning);background:var(--warning-soft);border-color:var(--warning-line)}.ready-text{color:var(--info-ink);background:var(--info-soft);border-color:var(--info-line)}.sent-text{color:var(--pending-ink);background:var(--pending-soft);border-color:var(--pending-line)}.approved-text{color:var(--success-ink);background:var(--success-soft);border-color:var(--success-line)}.declined-text{color:#fff;background:var(--neutral-ink);border-color:var(--neutral-ink)}.missed-text{color:var(--ink);background:var(--warning-bright);border-color:var(--warning-bright)}.status-dot.booked{background:#c4c4c4}.status-dot.progress{background:var(--warning-bright)}.status-dot.ready{background:var(--info)}.status-dot.sent{background:var(--pending)}.status-dot.approved{background:var(--success)}.status-dot.declined{background:var(--neutral-ink)}.status-dot.missed{background:var(--warning-bright)}@media (width<=560px){.content>.back-button,.content>.back-row{top:calc(56px + env(safe-area-inset-top));z-index:25;background:var(--bg);margin:-18px 0 8px;padding:12px 0;position:sticky}.content>.back-button{box-shadow:0 0 0 100vmax var(--bg);clip-path:inset(0 -100vmax)}.content>.back-row{margin-inline:-15px;padding-inline:15px}}.survey-dock{display:none}@media (width<=560px){.has-dock .survey-heading .survey-actions,.has-dock .summary-panel{display:none}.survey-dock{align-items:center;gap:var(--space-3);bottom:calc(56px + env(safe-area-inset-bottom));z-index:20;margin:var(--space-4) -15px -24px;background:var(--surface);border-top:1px solid var(--line);padding:10px 15px;display:flex;position:sticky;box-shadow:0 -1px 14px #0a0a0a12}.dock-status{flex:1;min-width:0}.dock-status strong{font-size:var(--text-body);font-weight:var(--weight-semibold);display:block}.dock-status small{-webkit-line-clamp:2;font-size:var(--text-helper);line-height:var(--leading-tight);color:var(--muted);-webkit-box-orient:vertical;margin-top:2px;display:-webkit-box;overflow:hidden}.dock-do{gap:var(--space-2);flex:none;display:flex}.dock-do button{min-height:44px;padding:10px 14px}.dock-do .primary-button:disabled{opacity:.45;cursor:not-allowed}}.chip-row{gap:var(--space-2);margin:var(--space-4) -15px var(--space-5);scrollbar-width:none;overscroll-behavior-x:contain;padding:0 15px;display:flex;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.chip{background:var(--surface);min-height:40px;color:var(--ink);font-size:var(--text-body);font-weight:var(--weight-medium);white-space:nowrap;border:1px solid #d6d6d6;border-radius:999px;flex:none;align-items:center;gap:7px;padding:0 14px;display:inline-flex}.chip b{font-weight:var(--weight-bold)}.chip.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-deep)}.chip:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.pipeline{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-items:stretch;margin-top:34px;display:flex;overflow:hidden}.pipe-stage{text-align:center;background:0 0;border:0;flex:1 1 0;justify-items:center;gap:3px;min-width:0;padding:15px 8px 13px;transition:background .15s,color .15s;display:grid}.pipe-stage strong{font-size:var(--text-kpi);letter-spacing:-.02em;font-weight:var(--weight-bold);line-height:var(--leading-tight);color:var(--ink)}.pipe-stage span{font-size:var(--text-helper);font-weight:var(--weight-regular);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.pipe-stage:hover{background:var(--panel)}.pipe-stage.on{background:var(--primary-soft)}.pipe-stage.on strong,.pipe-stage.on span{color:var(--primary)}.pipe-stage:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.pipe-link{background:var(--line);flex:none;align-self:stretch;width:1px;position:relative}.pipe-link:after{content:"";border-top:1px solid var(--line);border-right:1px solid var(--line);background:var(--surface);width:6px;height:6px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.ops-band{grid-template-columns:1.6fr 1fr;align-items:start;gap:16px;margin:16px 0 38px;display:grid}.ops-panel{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:16px 18px 14px}.ops-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:11px;display:flex}.ops-head h3{font-size:var(--text-card);font-weight:var(--weight-semibold)}.ops-head span{font-size:var(--text-helper);color:var(--muted);white-space:nowrap}.ops-empty{font-size:var(--text-helper);line-height:var(--leading-body);color:var(--muted)}.attention-list{margin:0;padding:0;list-style:none;display:grid}.attention-list li+li{border-top:1px solid var(--line)}.attention-list button{text-align:left;background:0 0;border:0;border-radius:5px;grid-template-columns:8px 22px 1fr;align-items:center;gap:9px;width:100%;padding:9px 4px;display:grid}.attention-list button:hover{background:var(--panel)}.attention-list button.on{background:var(--primary-soft)}.attention-list b{font-size:var(--text-body);font-weight:var(--weight-medium);text-align:right}.attention-list span{font-size:var(--text-helper);line-height:var(--leading-body);color:var(--muted)}.attention-list button.on span,.attention-list button.on b{color:var(--primary)}.week-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.week-list li{font-size:var(--text-body);color:var(--muted);grid-template-columns:1fr minmax(24px,54px) 16px;align-items:center;gap:10px;display:grid}.week-list li.today{color:var(--ink);font-weight:var(--weight-semibold)}.week-list li>span{white-space:nowrap}.week-list em{font-style:normal;font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--primary)}.week-bar{background:var(--panel);border-radius:3px;height:5px;display:block;overflow:hidden}.week-bar b{background:var(--line);border-radius:3px;height:100%;display:block}.week-list li.today .week-bar b{background:var(--primary)}.week-list>li>b{font-size:var(--text-body);text-align:right;color:var(--ink)}.home-welcome{align-items:start}.home-welcome .up-next{flex:0 460px}.up-next{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:100%;max-width:560px;overflow:hidden}.up-next-head{border-bottom:1px solid var(--line);background:var(--panel);justify-content:space-between;align-items:baseline;gap:12px;padding:11px 16px;display:flex}.up-next h4{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink);margin:0}.up-next-head span{font-size:var(--text-helper);color:var(--muted);white-space:nowrap}.up-next ul{margin:0;padding:0;list-style:none}.up-next li+li{border-top:1px solid var(--line)}.up-row{text-align:left;background:0 0;border:0;grid-template-columns:92px minmax(0,1fr) 18px;align-items:center;gap:14px;width:100%;padding:12px 16px;transition:background .15s;display:grid}.up-row:hover{background:var(--panel)}.up-row:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.up-when strong{font-size:var(--text-body);display:block}.up-when small,.up-who small{font-size:var(--text-helper);color:var(--muted);margin-top:2px;display:block}.up-who{min-width:0}.up-who strong{font-size:var(--text-body);font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.up-who small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.up-go{color:var(--muted);justify-self:end;font-size:.875rem;transition:color .15s}.up-row:hover .up-go{color:var(--primary)}.up-next li:first-child .up-row{box-shadow:inset 3px 0 0 var(--primary)}.up-next li:first-child .up-when strong{color:var(--primary)}.survey-head .cell-tech{padding-left:9px}.survey-head .cell-do{padding-left:13px}@media (width>=1041px) and (width<=1279px){.survey-row.with-assign{grid-template-columns:10px minmax(0,1.9fr) minmax(100px,1fr) minmax(120px,1.05fr) minmax(110px,1fr) 128px}.survey-row.visit-row:not(.with-assign),.survey-head:not(.inv-line):not(.with-assign){grid-template-columns:10px minmax(0,2fr) minmax(110px,1fr) minmax(120px,1fr) 128px}.visit-row .survey-added,.survey-head .cell-added{display:none}}@media (width<=1000px){.home-welcome{display:block}.home-welcome .up-next{margin-top:24px}}@media (width<=900px){.pipeline{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.pipe-stage{background:var(--surface)}.pipe-link{display:none}}@media (width<=620px){.ops-band{grid-template-columns:1fr}.pipeline{grid-template-columns:repeat(2,1fr)}}.row-start{border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:var(--text-helper);font-weight:var(--weight-semibold);white-space:nowrap;border-radius:6px;align-items:center;gap:7px;padding:7px 12px;transition:color .15s,border-color .15s,background .15s;display:inline-flex}@media (hover:hover){.row-start:hover{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}}.row-start:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.row-start .icon{font-size:.75rem}.detail-list{margin-top:var(--space-4);border:1px solid var(--line);border-radius:8px;gap:0;display:grid;overflow:hidden}.detail-row{gap:var(--space-3);border-bottom:1px solid var(--line);grid-template-columns:108px 1fr;align-items:baseline;padding:10px 13px;display:grid}.detail-row:last-child{border-bottom:0}.detail-list dt{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted)}.detail-list dd{font-size:var(--text-body);color:var(--ink);word-break:break-word;margin:0}.detail-list a{color:var(--primary-deep)}.detail-note{border-top:1px solid var(--line);background:var(--panel);padding:12px 13px}.detail-note dd{font-size:var(--text-body);line-height:var(--leading-loose);white-space:pre-wrap;margin-top:4px}@media (width<=560px){.detail-row{grid-template-columns:1fr;gap:2px}}.row-start{justify-content:center;width:100%}.survey-meta-edit{max-width:560px;margin-top:var(--space-3)}.survey-meta-edit .contact-edit{padding:var(--space-4);border:1px solid var(--line);background:var(--surface);border-radius:9px}.survey-meta .text-button{font-size:var(--text-helper);font-weight:var(--weight-semibold)}.ghl-warning .text-button{font-size:inherit;font-weight:var(--weight-bold)}.meta-item{min-width:0}.meta-address{max-width:min(34ch,45%)}@media (width<=900px){.meta-address{max-width:100%}}.cal-nav{gap:var(--space-2);align-items:center;display:flex}.cal-grid{margin-top:var(--space-5);background:var(--line);border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.cal-dow{background:var(--panel);font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted);padding:9px 10px}.cal-day{background:var(--surface);flex-direction:column;gap:5px;min-height:104px;padding:7px 8px 9px;display:flex}.cal-day.outside{background:var(--panel)}.cal-day.outside .cal-num{color:#b4b4b4}.cal-day.today{box-shadow:inset 0 0 0 2px var(--primary)}.cal-day.today .cal-num{color:var(--primary);font-weight:var(--weight-bold)}.cal-num{font-size:var(--text-helper);font-weight:var(--weight-semibold)}.cal-chips{flex-direction:column;gap:4px;display:flex;overflow-y:auto}.cal-chip{width:100%;font:inherit;text-align:left;font-size:var(--text-helper);line-height:var(--leading-tight);cursor:pointer;border:1px solid #0000;border-radius:6px;padding:4px 7px;display:block}.cal-chip-time{font-size:var(--text-helper);font-weight:var(--weight-semibold);opacity:.8;display:block}.cal-chip-who{font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.cal-chip.booked{color:var(--muted);background:var(--neutral-soft);border-color:#e4e4e4}.cal-chip.progress{color:var(--warning);background:var(--warning-soft);border-color:var(--warning-line)}.cal-chip.ready{color:var(--info-ink);background:var(--info-soft);border-color:var(--info-line)}.cal-chip.sent{color:var(--pending-ink);background:var(--pending-soft);border-color:var(--pending-line)}.cal-chip.approved{color:var(--success-ink);background:var(--success-soft);border-color:var(--success-line)}.cal-chip.declined{color:#fff;background:var(--neutral-ink);border-color:var(--neutral-ink)}.cal-chip.job{color:#fff;background:var(--ink);border-color:var(--ink)}.cal-chip.scaffolding{color:var(--ink);background:var(--surface);border-color:var(--ink)}.cal-key{gap:var(--space-4);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.cal-key span{font-size:var(--text-helper);color:var(--muted);align-items:center;gap:7px;display:inline-flex}.cal-swatch{border:1px solid #0000;border-radius:4px;flex:none;width:22px;height:13px}.cal-swatch.visit{background:var(--info-soft);border-color:var(--info-line)}.cal-swatch.job{background:var(--ink);border-color:var(--ink)}.cal-swatch.scaffolding{background:var(--surface);border-color:var(--ink)}.agenda{gap:var(--space-5);margin-top:var(--space-5);display:grid}.agenda-day h4{margin:0 0 var(--space-2);font-size:var(--text-card);font-weight:var(--weight-semibold);color:var(--ink)}.agenda-day h4 em{font-style:normal;font-size:var(--text-helper);color:var(--primary);margin-left:6px}.agenda-row{align-items:center;gap:var(--space-3);border-radius:var(--radius);background:var(--surface);width:100%;min-height:60px;color:var(--ink);text-align:left;border:1px solid #d6d6d6;padding:10px 14px;display:flex;box-shadow:0 1px 2px #0a0a0a0f}.agenda-row+.agenda-row{margin-top:var(--space-2)}.agenda-row:active{background:var(--panel)}.agenda-row:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.agenda-time{white-space:nowrap;width:74px;font-size:var(--text-body);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;flex:none}.agenda-row .status-dot{flex:none;width:10px;height:10px}.agenda-row .cal-swatch{border-radius:3px;width:10px;height:10px}.agenda-who{flex:1;min-width:0}.agenda-who strong{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-body);font-weight:var(--weight-semibold);display:block;overflow:hidden}.agenda-who small{font-size:var(--text-helper);color:var(--muted);margin-top:2px;display:block}.agenda-row>.icon{color:var(--muted);flex:none}.agenda-none,.agenda-empty{padding:var(--space-3) 0;font-size:var(--text-body);color:var(--muted)}@media (width<=720px){.cal-day{min-height:74px;padding:5px}.cal-dow{padding:7px 5px}.cal-chip{padding:3px 5px}.cal-chip-time{display:none}}.audit-list{border-top:1px solid var(--line);margin-top:var(--space-5)}.audit-row{border-bottom:1px solid var(--line);grid-template-columns:92px minmax(150px,1fr) minmax(170px,1.1fr) minmax(0,2fr);align-items:center;gap:14px;padding:11px 0;display:grid}.audit-head{border-bottom:1px solid var(--line);padding:10px 0}.audit-head span{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted)}.audit-when strong,.audit-when small,.audit-who strong,.audit-who small{display:block}.audit-when strong{font-size:var(--text-body);font-weight:var(--weight-bold)}.audit-when small,.audit-who small{color:var(--muted);font-size:var(--text-helper);margin-top:2px}.audit-who strong{font-size:var(--text-body);font-weight:var(--weight-medium)}.audit-detail{color:var(--muted);font-size:var(--text-body);text-overflow:ellipsis;overflow:hidden}@media (width<=720px){.audit-row{grid-template-columns:74px minmax(0,1fr);gap:8px 10px}.audit-head{display:none}.audit-who,.audit-detail{grid-column:2}}.chart-panel{margin-top:var(--space-5)}.plot{width:100%;height:auto;margin-top:var(--space-3);display:block;overflow:visible}.plot-grid{stroke:var(--line);stroke-width:1px}.plot-tick{fill:var(--muted);font-size:var(--text-helper);font-weight:var(--weight-regular)}.plot-label{fill:var(--ink);font-size:var(--text-helper);font-weight:var(--weight-semibold)}.plot-legend{gap:var(--space-4);margin-top:var(--space-2);display:flex}.plot-key{font-size:var(--text-helper);font-weight:var(--weight-regular);color:var(--muted);align-items:center;gap:7px;display:inline-flex}.plot-key:before{content:"";background:var(--key);border-radius:3px;width:10px;height:10px}.funnel{grid-template-columns:max-content minmax(0,1fr) 30px 42px;align-items:center;gap:15px 12px;display:grid}.funnel-row{display:contents}.funnel-name{font-size:var(--text-body);font-weight:var(--weight-semibold)}.funnel-track{background:var(--neutral-soft);border-radius:999px;height:9px;overflow:hidden}.funnel-track i{background:#2563eb;border-radius:999px;height:100%;display:block}.funnel-row b{text-align:right;font-size:var(--text-body);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.funnel-row small{text-align:right;color:var(--muted);font-size:var(--text-helper);font-variant-numeric:tabular-nums}@media (width<=560px){.funnel{grid-template-columns:max-content minmax(30px,1fr) 26px 38px;gap:12px 8px}}.dash-wide{grid-column:1/-1}.email-rates{margin-bottom:var(--space-5);grid-template-columns:1fr 1fr;gap:12px;display:grid}.rate{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:14px 16px}.rate strong{font-size:var(--text-kpi);font-weight:var(--weight-bold);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:7px 0 3px;display:block}.rate small{font-size:var(--text-helper);color:var(--muted)}.email-bounced{margin-top:var(--space-4);font-size:var(--text-helper);font-weight:var(--weight-regular);color:var(--warning)}@media (width<=560px){.email-rates{grid-template-columns:1fr}}.audit-action{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--primary);background:var(--primary-soft);white-space:nowrap;border-radius:999px;justify-self:start;padding:4px 10px}.sent-badge.lost{color:#fff;background:var(--ink)}.status-dot.lost{background:var(--ink)}.lost-text{color:#fff;background:var(--ink);border-color:var(--ink)}.tabbar,.top-me,.tools,.tools-band{display:none}@media (width<=560px){.tabbar{z-index:40;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);grid-auto-columns:1fr;grid-auto-flow:column;gap:0;margin-top:0;display:grid;position:fixed;inset:auto 0 0;box-shadow:0 -1px 14px #0a0a0a12}.tab{color:var(--muted);min-height:54px;font-size:var(--text-helper);font-weight:var(--weight-semibold);line-height:var(--leading-tight);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:7px 2px;display:flex}.tab .icon{font-size:1.5rem;line-height:1}.tab{gap:4px;padding-top:8px}.tab.active{color:var(--primary)}.main{padding-bottom:calc(56px + env(safe-area-inset-bottom))}.topbar{z-index:30;padding-top:env(safe-area-inset-top);height:calc(56px + env(safe-area-inset-top));position:sticky;top:0}.top-me{background:0 0;border:0;border-radius:50%;place-items:center;width:40px;height:40px;margin-left:2px;padding:0;display:inline-grid}.top-me .avatar{width:32px;height:32px;font-size:var(--text-helper);font-weight:var(--weight-semibold)}.top-me.active .avatar{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--primary)}.top-actions{gap:10px}.tools-band{display:block}.tools{margin:var(--space-3) 0 0;grid-template-columns:1fr 1fr;gap:10px;display:grid}.tool{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:80px;color:var(--ink);font-size:var(--text-body);font-weight:var(--weight-semibold);line-height:var(--leading-tight);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:14px 10px;transition:border-color .15s,background .15s;display:flex}.tool .icon{color:var(--muted);font-size:1.5rem}.tool:active{background:var(--panel);border-color:var(--primary)}.tool:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.primary-button,.secondary-button,.row-start,.danger-button{min-height:44px}*{-webkit-tap-highlight-color:transparent}}@media (display-mode:standalone){body{overscroll-behavior-y:none}}@media (width<=560px){.survey-row,.survey-row.with-assign{grid-template-columns:9px minmax(0,1fr) auto;gap:9px 10px;padding:13px 0}.survey-row .row-start{white-space:nowrap;grid-area:1/3;padding:9px 12px}.survey-row .survey-info{grid-area:1/2}.survey-row.with-assign .assign-cell{grid-area:2/2/auto/-1}}.assign-cell>.icon,.assign-cell>.assign-name{display:none}@media (width<=1040px){.survey-head:not(.inv-line){display:none}.survey-list:has(.visit-row){border-top:0}.survey-row.visit-row{margin-bottom:var(--space-3);border-radius:var(--radius);background:var(--surface);border:1px solid #d6d6d6;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"when status""info info""rule rule""assign do";gap:0 10px;padding:14px;box-shadow:0 1px 2px #0a0a0a0f}.visit-group{margin:var(--space-5) 0 var(--space-2);font-size:var(--text-card);font-weight:var(--weight-semibold);color:var(--ink)}.visit-group:first-child{margin-top:0}.visit-group span{color:var(--muted);font-weight:var(--weight-regular);margin-left:4px}.survey-row.visit-row:not(.with-assign){grid-template-areas:"when status""info info""rule rule""do do"}.survey-row.visit-row[data-open]{padding-inline:14px}.survey-row.visit-row[data-open]:hover{background:var(--surface)}.survey-row.visit-row[data-open]:active{background:var(--panel)}.survey-row.visit-row:after{content:"";border-top:1px solid var(--line);grid-area:rule;margin:12px 0}.visit-row .status-dot,.visit-row .survey-added{display:none}.visit-row>.survey-date:not(.survey-added){color:var(--ink);font-size:var(--text-body);font-weight:var(--weight-bold);grid-area:when;align-self:center;margin:0;display:block}.visit-row .survey-status{grid-area:status;place-self:center end;display:inline-block}.visit-row .survey-info{grid-area:info;margin-top:8px}.visit-row .survey-info strong{font-size:var(--text-section);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.visit-row .survey-info span{white-space:normal;-webkit-line-clamp:2;font-size:var(--text-body);color:var(--neutral-ink);line-height:var(--leading-body);-webkit-box-orient:vertical;margin-top:4px;display:-webkit-box}.visit-row .row-start{grid-area:do;place-self:center end}.visit-row:not(.with-assign) .row-start{justify-self:stretch}.survey-row.with-assign.visit-row .assign-cell{background:var(--panel);border:1px solid var(--line);min-width:0;max-width:100%;min-height:36px;color:var(--neutral-ink);font-size:var(--text-body);font-weight:var(--weight-medium);border-radius:999px;grid-area:assign;place-self:center start;align-items:center;gap:6px;padding:0 12px 0 10px;display:inline-flex;position:relative}.visit-row .assign-cell>.icon{color:var(--muted);font-size:.9375rem;display:inline-flex}.visit-row .assign-cell>.assign-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.visit-row .assign-cell:not(.locked):after{content:"";border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);flex:none;width:6px;height:6px;margin:-3px 0 0 2px;transform:rotate(45deg)}.visit-row .assign-cell select{opacity:0;width:100%;height:100%;position:absolute;inset:0}.visit-row .assign-cell:has(select:focus-visible){outline:2px solid var(--primary);outline-offset:1px}.survey-row.with-assign.visit-row .assign-cell.locked{color:var(--muted);background:0 0;border-color:#0000;padding-left:0}}.install-drawer{z-index:60;padding:calc(11px + env(safe-area-inset-top)) 14px 11px;background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:12px;transition:transform .36s cubic-bezier(.22,.8,.3,1);display:flex;position:fixed;inset:0 0 auto;transform:translateY(-100%);box-shadow:0 8px 28px #0a0a0a24}.install-drawer.open{transform:translateY(0)}.install-icon{border-radius:9px;flex-shrink:0;width:38px;height:38px}.install-text{flex:1;min-width:0}.install-text strong{font-size:var(--text-card);font-weight:var(--weight-semibold);line-height:var(--leading-tight);display:block}.install-text small{font-size:var(--text-helper);line-height:var(--leading-body);color:var(--muted);margin-top:2px;display:block}.install-drawer .install-go{font-size:var(--text-body);font-weight:var(--weight-semibold);flex-shrink:0;min-height:40px;padding:9px 15px}.install-close{width:30px;height:30px;color:var(--muted);background:0 0;border:0;border-radius:50%;flex-shrink:0;font-size:1.3125rem;line-height:1}.install-close:hover{background:var(--neutral-soft);color:var(--ink)}@media (prefers-reduced-motion:reduce){.install-drawer{transition:none}}@media (width<=560px){.quote-content{height:auto;padding-block:12px 0;display:block;overflow:visible}.quote-scroll{scrollbar-gutter:auto;overflow:visible}.quote-actions{gap:10px;padding-bottom:12px}.quote-actions .back-button{margin-bottom:0}.quote-actions .toolbar-actions{flex-wrap:wrap;gap:8px;width:100%;margin-top:0;display:flex;overflow:visible}.quote-actions .sent-badge{order:-1;justify-content:flex-start;width:100%;padding:8px 12px}.quote-actions .toolbar-actions>button{flex:1 1 0;justify-content:center;min-width:0}.quote-actions .secondary-button,.quote-actions .primary-button{font-size:var(--text-helper);font-weight:var(--weight-semibold);padding:10px 12px}.quote-actions .booked-pair{flex-wrap:wrap;gap:8px;width:100%;display:flex}.quote-actions .booked-when{width:100%;padding-right:0}.quote-actions .booked-pair>button{flex:1 1 0;justify-content:center;min-width:0}}.checklist>.category-panel{box-shadow:0 0 0 1px var(--line);border:0;border-radius:0;grid-column:1/-1;margin-top:0}@media (width>=561px){.checklist>.category-panel{order:999}}.approve-button{background:var(--success)}.approve-button:hover{background:var(--success-ink)}@media (width<=560px){.decision-bar{z-index:30;border-radius:0 0 12px 12px;flex-direction:column;align-items:stretch;gap:9px;margin:0 0 14px;padding:11px 14px;position:sticky;top:0}.decision-bar span{display:none}.decision-actions{flex-wrap:nowrap;gap:8px;display:flex}.decision-actions button{min-width:0;min-height:44px;font-size:var(--text-body);font-weight:var(--weight-semibold);flex:1 1 0;padding:10px 8px}.content{padding:18px 15px 24px}.back-button{margin-bottom:16px}.survey-heading{margin-bottom:20px}.welcome .primary-button{margin-top:15px}.form-panel{padding:15px}.form-panel+.form-panel{margin-top:12px}.panel-title{margin-bottom:14px}.contact-line{padding:8px 12px}.quote-content{padding-block:8px 0}.quote-actions{gap:8px;padding-bottom:8px}.quote-scroll{padding-bottom:24px}.tracking{gap:12px;margin-top:14px}.tracking .contact-card{margin-bottom:10px}}.avatar{overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;display:block}.profile-card{background:var(--surface);border:1px solid var(--line);align-items:center;gap:20px;max-width:760px;margin-top:4px;padding:22px;display:flex}.profile-photo{cursor:pointer;border-radius:50%;flex:none;width:96px;height:96px;position:relative}.profile-photo-face{background:var(--shell);color:#fff;width:100%;height:100%;font:700 1.75rem var(--font);letter-spacing:.5px;border-radius:50%;place-items:center;display:grid;overflow:hidden}.profile-photo-face img{object-fit:cover;width:100%;height:100%;display:block}.profile-photo-badge{border:3px solid var(--surface);background:var(--primary);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-size:.8125rem;display:grid;position:absolute;bottom:-2px;right:-2px}.profile-photo:hover .profile-photo-badge{background:var(--primary-deep)}.profile-photo.busy{opacity:.55;pointer-events:none}.profile-who{min-width:0}.profile-who h2{font-size:var(--text-page);font-weight:var(--weight-semibold);letter-spacing:-.01em;margin-top:4px}.profile-contact{color:var(--muted);font-size:var(--text-helper);word-break:break-word;margin-top:3px}.profile-tags{flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px;display:flex}.role-chip{background:var(--primary-soft);color:var(--primary-deep);font-size:var(--text-helper);font-weight:var(--weight-semibold);border-radius:999px;padding:4px 10px}.profile-photo-note{color:var(--muted);font-size:var(--text-helper)}.profile-who .login-error{margin-top:9px}.account-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;max-width:760px;margin-top:16px;display:grid}.account-layout .account-password{grid-column:1/-1}.account-layout .form-panel,.account-layout .signout-panel{margin-top:0}@media (width<=700px){.account-layout{grid-template-columns:1fr}}@media (width<=560px){.profile-card{gap:15px;padding:15px}.profile-photo{width:76px;height:76px}.profile-photo-face{font-size:1.4375rem}.profile-photo-badge{width:26px;height:26px;font-size:.75rem}}.full{width:100%}.account-content .panel-title h3,.signout-panel strong{font-size:var(--text-card);font-weight:var(--weight-semibold)}.account-content .panel-title p,.signout-panel p,.profile-contact,.profile-photo-note,.role-chip{font-size:var(--text-helper)}.detail-book{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.detail-book button{flex:auto;justify-content:center}.detail-actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.secondary-button.danger{color:var(--danger-deep);background:var(--danger-soft);border-color:var(--danger-line)}.secondary-button.danger:hover{background:var(--danger-line);border-color:var(--danger)}.modal-actions .secondary-button:not(.danger){color:var(--ink)}.secondary-button:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.secondary-button.danger:focus-visible{outline-color:var(--danger)}.drawer-back{margin-bottom:var(--space-2);font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--primary);display:inline-block}.drawer-body .detail-list{margin:0}.book-modal{background:var(--surface);border-radius:12px;flex-direction:column;width:100%;max-width:764px;max-height:calc(100svh - 56px);animation:.28s cubic-bezier(.22,1,.36,1) 20ms backwards modal-rise;display:flex;box-shadow:0 24px 60px #0a0a0a4d}.drawer-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid var(--line);display:flex}.drawer-head h2{font-size:var(--text-section);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.drawer-head p{font-size:var(--text-helper);line-height:var(--leading-body);color:var(--muted);margin-top:5px}.drawer-close{background:var(--panel);width:30px;height:30px;color:var(--muted);border:0;border-radius:50%;flex-shrink:0;font-size:1.0625rem;line-height:1}.drawer-close:hover{color:var(--ink);background:var(--line)}.drawer-body{min-width:0;padding:var(--space-5);flex:1;overflow:hidden auto}.drawer-foot{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-top:1px solid var(--line);display:flex}.drawer-chosen{min-width:0;font-size:var(--text-body);font-weight:var(--weight-semibold);color:var(--ink)}.drawer-foot .primary-button{flex-shrink:0}.slot-picker{gap:var(--space-6);grid-template-columns:minmax(0,1fr) 232px;align-content:start;min-width:0;display:grid}.bk-cal{min-width:0}.bk-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.bk-head strong{font-size:var(--text-card);font-weight:var(--weight-semibold)}.bk-nav{border:1px solid var(--line);background:var(--surface);width:32px;height:32px;color:var(--ink);border-radius:50%;flex:none;place-items:center;display:grid}.bk-nav:hover:not(:disabled){color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.bk-nav:disabled{color:var(--line)}.bk-grid{gap:var(--space-1);grid-template-columns:repeat(7,minmax(0,1fr));align-content:start;display:grid}.bk-names span{text-align:center;font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);color:var(--muted);padding:4px 0}.bk-day,.bk-blank{width:100%;min-width:0;max-width:56px;height:56px;font-size:var(--text-body);color:var(--line);background:0 0;border:0;border-radius:50%;place-items:center;margin-inline:auto;transition:background .15s,color .15s;display:grid}.bk-day.open{color:var(--primary);font-weight:var(--weight-bold);background:var(--primary-soft)}.bk-day.open:hover{background:#fbd9d9}.bk-day.current{color:#fff;background:var(--primary)}.slot-times{gap:var(--space-2);grid-template-columns:minmax(0,1fr);align-content:start;min-width:0;max-height:396px;display:grid;overflow-y:auto}.slot-time{border:1px solid var(--line);background:var(--surface);font-size:var(--text-body);font-weight:var(--weight-semibold);color:var(--ink);border-radius:7px;padding:11px 4px;transition:color .15s,border-color .15s,background .15s}.slot-time:hover{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.slot-time.current{color:#fff;border-color:var(--primary);background:var(--primary)}.bk-hint{font-size:var(--text-helper)}.bk-cal.is-waiting .bk-grid:not(.bk-names){opacity:.35;transition:opacity .2s}.bk-spinner{width:20px;height:20px;margin:var(--space-3) 0;border:2px solid var(--line);border-top-color:var(--primary);border-radius:50%;justify-self:center;animation:.7s linear infinite bk-spin}@keyframes bk-spin{to{transform:rotate(360deg)}}@media (width<=720px){.slot-picker{gap:var(--space-5);grid-template-columns:minmax(0,1fr)}.slot-times{max-height:island;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));max-height:220px}.bk-day,.bk-blank{max-width:44px;height:44px}}@media (prefers-reduced-motion:reduce){.book-modal{animation:none}.bk-spinner{animation-duration:2.4s}}.book-modal,.book-backdrop{animation:none}.book-modal.is-opening{animation:.28s cubic-bezier(.22,1,.36,1) 20ms backwards modal-rise}.book-backdrop.is-opening{animation:.2s cubic-bezier(.22,1,.36,1) modal-fade}@media (prefers-reduced-motion:reduce){.book-modal.is-opening,.book-backdrop.is-opening{animation:none}}.booked-pair{align-items:center;gap:var(--space-2);display:inline-flex}.booked-when{padding-right:var(--space-2);flex-direction:column;gap:1px;display:flex}.booked-when small{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted)}.booked-when strong{font-size:var(--text-body);color:var(--ink);white-space:nowrap}.bk-cancel{color:var(--primary)}.bk-cancel:hover{color:#fff;border-color:var(--primary);background:var(--primary)}.tracking .pdf-download{margin-top:14px;margin-bottom:10px}@media (width<=900px){.job-pipeline{grid-template-columns:repeat(2,1fr)}}.job-list{border-top:1px solid var(--line)}.job-row{gap:var(--space-5);padding:var(--space-4) 0;border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:minmax(0,1.1fr) minmax(0,1.6fr) 176px;align-items:center;display:grid;position:relative}.job-row:hover{background:var(--panel)}.job-row:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:8px}.job-who strong{font-size:var(--text-body);font-weight:var(--weight-medium);display:block}.job-who span{font-size:var(--text-helper);color:var(--muted);margin-top:2px;display:block}.job-who em{font-style:normal;font-size:var(--text-helper);color:var(--muted);margin-top:3px;display:block}.job-go{color:var(--muted);font-size:1.0625rem;display:none}.job-steps{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.job-step{align-items:center;gap:var(--space-2);min-width:0;display:flex}.job-tick{border:1.5px solid var(--line-loud);color:#fff;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;display:grid}.job-step.done .job-tick{border-color:var(--success);background:var(--success)}.job-step.na .job-tick{border:0}.job-step.na .job-tick:before{content:"";background:var(--line-loud);border-radius:1px;width:10px;height:2px}.job-tick svg{width:11px;height:11px}.job-step-text small{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted);display:block}.job-step-text strong{font-size:var(--text-body);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.job-step.na .job-step-text strong{color:var(--muted)}.job-do .secondary-button{font-size:var(--text-helper);font-weight:var(--weight-semibold);white-space:nowrap;width:100%;padding:8px 12px}.job-empty{padding:var(--space-6) 0;color:var(--muted);font-size:var(--text-body)}@media (width<=900px){.job-list{border-top:0}.job-row{gap:var(--space-3);margin-bottom:var(--space-3);border-radius:var(--radius);background:var(--surface);border:1px solid #d6d6d6;grid-template-columns:minmax(0,1fr);padding:14px;box-shadow:0 1px 2px #0a0a0a0f}.job-row:hover{background:var(--surface)}.job-row:active{background:var(--panel)}.job-who{padding-right:26px}.job-who strong{font-size:var(--text-section);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}.job-who span{font-size:var(--text-body);color:var(--neutral-ink);margin-top:4px}.job-go{display:block;position:absolute;top:16px;right:14px}.job-steps{border-top:1px solid var(--line);display:block}.job-step{border-top:1px solid var(--line);width:100%;padding:10px 0;display:flex}.job-step:first-child{border-top:0}.job-step:last-child{padding-bottom:0}.job-step-text{justify-content:space-between;align-items:baseline;gap:var(--space-3);flex:1;min-width:0;display:flex}.job-step-text small{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:0;text-transform:none;color:var(--ink)}.job-step-text strong{text-align:right;white-space:normal}.job-do{justify-self:stretch}.job-do .secondary-button{width:100%;font-size:var(--text-body);font-weight:var(--weight-semibold);padding:11px 16px}}.survey-row.inv-line{grid-template-columns:10px minmax(0,2fr) minmax(120px,1.1fr) minmax(96px,.8fr) minmax(120px,1fr) 128px}.inv-amount{text-align:right;font-size:var(--text-body);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;white-space:nowrap}.survey-head .inv-amount{font-size:var(--text-helper);font-weight:var(--weight-semibold)}.inv-type{text-overflow:ellipsis;white-space:nowrap;margin-top:0;overflow:hidden}@media (width<=560px){.survey-row.inv-line{grid-template-columns:9px minmax(0,1fr) auto;grid-template-areas:"dot info amount""dot type status""dot do do";align-items:center;gap:8px 10px;padding:13px 0}.inv-line .status-dot{grid-area:dot;align-self:start;margin-top:6px}.inv-line .survey-info{grid-area:info}.inv-line .inv-amount{grid-area:amount}.inv-line .inv-type{grid-area:type;display:block}.inv-line .survey-status{grid-area:status;justify-self:end;display:inline-block}.inv-line .row-start{grid-area:do;justify-content:center;width:100%}}.inv-panels{grid-template-columns:minmax(0,1.4fr) minmax(0,22rem)}@media (width<=900px){.inv-panels{grid-template-columns:minmax(0,1fr)}}.inv-text{font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty;max-width:62ch;margin:0}.inv-copy{margin-top:var(--space-4)}.inv-sums{display:grid}.inv-sum{justify-content:space-between;align-items:baseline;gap:var(--space-3);border-top:1px solid var(--line);font-size:var(--text-body);padding:9px 0;display:flex}.inv-sum:first-child{border-top:0}.inv-sum span{color:var(--muted)}.inv-sum b{font-variant-numeric:tabular-nums;font-weight:var(--weight-semibold)}.inv-sum.is-total{border-top:2px solid var(--ink);font-size:var(--text-body);margin-top:4px}.inv-sum.is-total span{color:var(--ink);font-weight:var(--weight-bold)}.inv-sum.is-total b{font-weight:var(--weight-bold)}.eyebrow .survey-status{vertical-align:middle;font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:0;text-transform:none;margin-left:4px;padding:2px 8px}.wty-panel{margin-top:var(--space-5);min-width:0}.wty-locked{color:var(--muted);font-size:var(--text-body);align-items:center;gap:8px;margin:0;display:flex}.wty-locked .icon svg{width:15px;height:15px}.wty-sent{margin:0 0 var(--space-4);background:var(--success-soft);border:1px solid var(--success-line);color:var(--success-ink);font-size:var(--text-body);border-radius:8px;align-items:center;gap:8px;padding:10px 12px;display:flex}.wty-sent .icon svg{width:15px;height:15px}.wty-picks{gap:var(--space-5) var(--space-6);flex-wrap:wrap;display:flex}.wty-pick{gap:6px;display:grid}.wty-pick>span{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted)}.wty-choices{gap:6px;display:flex}.wty-choice{border:1px solid var(--line-loud);background:var(--surface);font:inherit;font-size:var(--text-body);color:var(--ink);cursor:pointer;border-radius:8px;padding:8px 14px}.wty-choice:hover:not(:disabled){border-color:var(--line-loud)}.wty-choice.is-on{border-color:var(--ink);background:var(--ink);color:#fff;font-weight:var(--weight-semibold)}.wty-choice:disabled{opacity:.55;cursor:default}.wty-note{margin:var(--space-4) 0 0;font-size:var(--text-body);color:var(--muted)}.wty-note.is-warn{color:var(--primary-deep);align-items:center;gap:8px;display:flex}.wty-note.is-warn .icon svg{width:15px;height:15px}.wty-do{margin-top:var(--space-4);gap:var(--space-3);flex-wrap:wrap;display:flex}.wty-stage{max-height:0;overflow:hidden}.wty-stage.is-open{max-height:none;margin-top:var(--space-5);padding:var(--space-5);background:var(--bg);border:1px solid var(--line);border-radius:10px;overflow-x:auto}.wty-paper{width:820px;box-shadow:var(--shadow);font-family:var(--font);color:#111;background:#fff;flex:none;padding:48px 56px 40px;font-size:12px;line-height:1.5}.wty-head{justify-content:space-between;align-items:flex-start;gap:28px;display:flex}.wty-logo{-webkit-print-color-adjust:exact;print-color-adjust:exact;flex:none;width:112px;height:auto}.wty-issuer{text-align:right;color:#444;gap:1px;font-size:10.5px;line-height:1.55;display:grid}.wty-issuer strong{color:#111;font-size:11px}.wty-title{letter-spacing:-.01em;color:#111;margin:30px 0 22px;font-size:21px;font-weight:700}.wty-to{gap:3px;margin-bottom:22px;display:grid}.wty-field{gap:8px;font-size:11.5px;display:flex}.wty-field span{color:#555;flex:none;width:104px}.wty-field strong{color:#111;font-weight:600}.wty-dear{margin:0 0 12px;font-size:11.5px}.wty-body{text-wrap:pretty;margin:0 0 12px;font-size:11.5px;line-height:1.65}.wty-terms-title{color:#111;margin:22px 0 10px;font-size:13px;font-weight:700}.wty-terms{gap:9px;margin:0 0 20px;padding-left:18px;display:grid}.wty-terms li{text-wrap:pretty;font-size:11.5px;line-height:1.65}.wty-terms strong{font-weight:700}.wty-sign{margin-top:26px;font-size:11.5px;line-height:1.7}.wty-sign p{margin:0 0 10px}.wty-sign p:last-child{margin:0}.job-head-do .text-button{padding:0}.confetti{z-index:120;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.job-panels{gap:var(--space-4);margin-top:var(--space-5);grid-template-columns:minmax(0,22rem) minmax(0,1fr);align-items:start;display:grid}@media (width<=900px){.job-panels{grid-template-columns:minmax(0,1fr)}}.job-panels .form-panel{margin-top:0}.job-col{gap:var(--space-4);align-items:start;min-width:0;display:grid}.job-order{padding:var(--space-4) var(--space-5)}.job-order .panel-title{margin-bottom:var(--space-3)}.job-order .panel-title>div{min-width:0}.job-survey{padding:var(--space-4) var(--space-5)}.job-survey>summary{min-height:44px;margin:calc(var(--space-2) * -1);padding:var(--space-2);cursor:pointer;border-radius:6px;align-items:center;gap:12px;margin-bottom:0;list-style:none;transition:background .15s;display:flex}.job-survey>summary::-webkit-details-marker{display:none}.job-survey>summary:hover{background:var(--panel)}.job-survey>summary:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.job-survey>summary>div{min-width:0}.job-survey>summary:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);flex:none;width:7px;height:7px;margin:-2px 3px 0 auto;transition:transform .18s;transform:rotate(-45deg)}.job-survey[open]>summary:after{transform:rotate(45deg)}.job-survey[open]>summary{margin-bottom:var(--space-4)}@media (prefers-reduced-motion:reduce){.job-survey>summary,.job-survey>summary:after{transition:none}}.job-sched-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.job-sched-row:last-child{border-bottom:0;padding-bottom:0}.job-sched-what strong{font-size:var(--text-body);font-weight:var(--weight-medium);display:block}.job-sched-what span{font-size:var(--text-helper);color:var(--muted);margin-top:2px;display:block}.job-sched-do{gap:var(--space-2);flex-wrap:wrap;display:flex}.job-sched-do .secondary-button,.job-sched-do .primary-button{font-size:var(--text-body);font-weight:var(--weight-semibold);padding:9px 13px}.job-ordered{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--line);justify-content:flex-start}.job-ordered .job-sched-do{margin-left:auto}.job-ordered>.secondary-button{box-shadow:none;background:0 0;border-color:#0000}.job-ordered>.secondary-button:hover{background:var(--primary-soft)}@media (width<=560px){.job-ordered>.secondary-button{width:100%;margin-top:var(--space-3);order:3;justify-content:center}.job-ordered .job-sched-what{flex:1 1 0;order:1;min-width:0}.job-ordered .job-sched-do{flex:none;order:2}.job-ordered .job-sched-do .secondary-button{padding:9px 11px}}.sow-sheet{--sow-lead:var(--text-section);--sow-body:.9375rem;--sow-meta:var(--text-helper)}.sow-list{border-top:1px solid var(--line)}.sow-row{align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:96px minmax(0,1fr) 18px;display:grid}.sow-row:hover{background:var(--panel)}.sow-row:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:8px}.sow-when strong{font-size:var(--text-body);font-weight:var(--weight-medium);display:block}.sow-when small{font-size:var(--text-helper);color:var(--muted);margin-top:2px;display:block}.sow-row.now .sow-when strong{color:var(--primary)}.sow-who{min-width:0}.sow-who strong{font-size:var(--text-body);font-weight:var(--weight-medium);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sow-who small{font-size:var(--text-helper);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;display:block;overflow:hidden}.sow-go{color:var(--muted);justify-self:end;font-size:.9375rem}.sow-row:hover .sow-go{color:var(--primary)}.sow-actions{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.sow-head{margin-bottom:var(--space-5)}.sow-head h2{font-size:var(--text-page);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:-.01em;margin:7px 0 9px}.sow-address{font-size:var(--sow-body);font-weight:var(--weight-semibold);color:var(--primary);text-decoration:none}.sow-address:hover{text-decoration:underline}.sow-on{margin:var(--space-3) 0 0;font-size:var(--sow-lead);font-weight:var(--weight-bold)}.sow-callout{border:1px solid var(--warning-line);background:var(--warning-soft);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-4);border-radius:8px}.sow-callout h3{margin:0 0 var(--space-2);font-size:var(--sow-meta);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--warning)}.sow-callout p{font-size:var(--sow-body);line-height:var(--leading-loose);white-space:pre-wrap;margin:0}.form-panel.sow-facts{padding:0}.sow-fact{gap:var(--space-3);padding:14px var(--space-5);border-bottom:1px solid var(--line);grid-template-columns:122px minmax(0,1fr);align-items:baseline;display:grid}.sow-fact:last-child{border-bottom:0}.sow-fact>span{font-size:var(--sow-meta);font-weight:var(--weight-semibold);color:var(--muted)}.sow-fact strong{font-size:var(--sow-body);font-weight:var(--weight-semibold);word-break:break-word}.sow-fact.ready strong{color:var(--success-ink)}.sow-fact.blocked strong{color:var(--warning)}.sow-fact a{color:var(--primary);text-decoration:none}.sow-fact a:hover{text-decoration:underline}.sow-heading{margin:0 0 var(--space-3);font-size:var(--sow-lead)}.sow-summary{margin:0 0 var(--space-5);font-size:var(--sow-body);line-height:var(--leading-loose);color:var(--muted)}.sow-stages{gap:var(--space-5);margin:0;padding:0;list-style:none;display:grid}.sow-block{gap:var(--space-3);grid-template-columns:30px minmax(0,1fr);align-items:start;display:grid}.sow-photos{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(130px,1fr));display:grid}.sow-photos img{aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line);border-radius:7px;width:100%;display:block}@media (width<=560px){.sow-row{gap:var(--space-3);grid-template-columns:78px minmax(0,1fr) 16px}.sow-actions .secondary-button{flex:1;justify-content:center}.sow-fact{padding:12px var(--space-4);grid-template-columns:minmax(0,1fr);gap:3px}.sow-callout{padding:var(--space-4)}}@media print{.sow-printing .sidebar,.sow-printing .tabbar,.sow-printing .topbar,.sow-printing .sow-actions{display:none!important}.sow-printing .content{max-width:none;padding:0}.sow-printing .form-panel{box-shadow:none;break-inside:avoid;border-color:#d4d4d4}.sow-printing .sow-block{break-inside:avoid}.sow-printing .sow-callout{border-color:#b98a3a}.sow-printing .sow-photos{grid-template-columns:repeat(3,1fr)}}.sow-works-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.sow-works-head .sow-heading{margin:0}.sow-count{font-size:var(--sow-meta);font-weight:var(--weight-semibold);color:var(--muted);white-space:nowrap}.sow-count.all{color:var(--success-ink)}.sow-tick{border:1.5px solid var(--line);background:var(--surface);width:30px;height:30px;color:var(--muted);font-size:var(--text-helper);font-weight:var(--weight-semibold);border-radius:50%;flex:none;place-items:center;transition:background .15s,border-color .15s,color .15s;display:grid;position:relative}.sow-tick:before{content:"";position:absolute;inset:-8px}.sow-tick:hover{border-color:var(--primary);color:var(--primary)}.sow-tick:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.sow-tick .icon{font-size:.9375rem}.sow-block.done .sow-tick{border-color:var(--success);background:var(--success);color:#fff}.sow-block.done h4{color:var(--muted)}.sow-stage{min-width:0}.sow-stage h4{margin:4px 0 var(--space-2);font-size:var(--sow-body)}.sow-stage ul{gap:7px;margin:0;padding-left:17px;list-style:outside;display:grid}.sow-stage li{font-size:var(--sow-body);line-height:var(--leading-loose);color:var(--neutral-ink)}.sow-done-banner{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-5);border:1px solid var(--success-line);background:var(--success-soft);color:var(--success-ink);font-size:var(--sow-body);font-weight:var(--weight-bold);border-radius:8px;display:flex}.sow-add{gap:var(--space-3);margin-bottom:var(--space-5);display:grid}.sow-add textarea{border:1px solid var(--line-loud);background:var(--surface);width:100%;font:inherit;font-size:var(--sow-body);line-height:var(--leading-body);resize:vertical;border-radius:8px;padding:12px 14px}.sow-add textarea:focus-visible{outline:2px solid var(--primary);outline-offset:-1px;border-color:var(--primary)}.sow-add-do{gap:var(--space-2);flex-wrap:wrap;display:flex}.sow-add-do .secondary-button,.sow-add-do .primary-button{flex:auto;justify-content:center}.sow-pick{cursor:pointer}.sow-picked{font-size:var(--sow-meta);color:var(--success-ink);font-weight:var(--weight-semibold);margin:0}.sow-diary{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.sow-diary-empty{font-size:var(--sow-body)}.sow-entry{padding-top:var(--space-4);border-top:1px solid var(--line)}.sow-entry:first-child{border-top:0;padding-top:0}.sow-entry-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.sow-entry-head strong{font-size:var(--sow-body)}.sow-entry-head small{font-size:var(--sow-meta);color:var(--muted);white-space:nowrap}.sow-entry p{margin:0 0 var(--space-3);font-size:var(--sow-body);line-height:var(--leading-loose);white-space:pre-wrap;color:var(--neutral-ink)}.sow-entry .sow-photos{margin-top:var(--space-2)}.sow-finish{margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--line)}.sow-finish .full{width:100%}@media print{.sow-printing .sow-add,.sow-printing .sow-finish{display:none!important}.sow-printing .sow-tick{border-color:#999}.sow-printing .sow-entry{break-inside:avoid}}.job-supply{gap:14px;display:grid}.job-supply .materials-card,.job-supply .supplier-card{background:0 0;border:0;padding:0}.supply-head{border-bottom:1px solid var(--line);font-size:var(--text-body);font-weight:var(--weight-semibold);justify-content:space-between;align-items:center;margin-bottom:12px;padding:8px 0 12px;display:flex}.supply-head .supply-dots{letter-spacing:4px;color:var(--muted)}.supply-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding-top:12px;display:flex}.supply-foot.is-lone{justify-content:flex-end}.supply-foot .muted{font-size:var(--text-helper);color:var(--muted)}.supply-skipped,.supply-sent{border-radius:var(--radius);font-size:var(--text-body);margin:var(--space-3) 0 var(--space-4);padding:10px 12px}.supply-skipped{background:var(--pending-soft);color:var(--pending-ink);border:1px solid var(--pending-line)}.supply-sent{background:var(--success-soft);color:var(--success-ink);border:1px solid var(--success-line)}.mat-order{margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.mat-order-head{align-items:baseline;gap:var(--space-2);display:flex}.mat-order-head h4{font-size:var(--text-card);font-weight:var(--weight-semibold);color:var(--ink)}.mat-order-count{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--muted);background:var(--neutral-soft);border-radius:999px;flex:none;align-self:center;margin-left:auto;padding:2px 8px}.mat-order-count.has{color:var(--primary-deep);background:var(--primary-soft)}.mat-order-none{margin:var(--space-2) 0 0;font-size:var(--text-helper);line-height:var(--leading-body);color:var(--muted)}.mat-order-list{margin:var(--space-2) 0 0;padding:0;list-style:none}.job-order .mat-order-none{font-size:var(--text-helper);margin:0}.job-order .mat-order-list{margin:0}.mat-order-list li{align-items:center;gap:var(--space-3);border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto 26px;padding:7px 0;display:grid}.mat-order-list.is-static li{grid-template-columns:minmax(0,1fr) auto}.mat-order-list li:first-child{border-top:0}.mat-order-what{font-size:var(--text-body);color:var(--ink);overflow-wrap:anywhere}.mat-order-what em{font-size:var(--text-helper);color:var(--muted);margin-top:1px;font-style:normal;display:block}.mat-order-qty{font-size:var(--text-body);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}.mat-order-list .row-action{width:26px;height:26px;font-size:.875rem;line-height:1}.mat-row.is-on-order .mat-name{font-weight:var(--weight-bold)}.mat-row.is-on-order .mat-qty{border-color:var(--primary)}.mat-group{border-bottom:1px solid var(--line)}.materials-card{container-type:inline-size}@container (width>=520px){.mat-group[open]{column-gap:var(--space-5);grid-template-columns:1fr 1fr;align-items:start;display:grid}.mat-group[open]:has(.mat-row:nth-of-type(3)){grid-template-columns:1fr 1fr}.mat-group[open]:not(:has(.mat-row:nth-of-type(3))){display:block}.mat-group[open]>summary,.mat-group[open]>.mat-subhead{grid-column:1/-1}.job-supply .mat-group .mat-row{grid-template-columns:minmax(0,1fr) 64px 40px}.mat-extras{column-gap:var(--space-5);grid-template-columns:1fr 1fr;display:grid}}.mat-group>summary{align-items:center;gap:var(--space-2);min-height:44px;padding:8px var(--space-2);margin-inline:calc(var(--space-2) * -1);cursor:pointer;border-radius:6px;list-style:none;transition:background .15s;display:flex}.mat-group>summary:hover{background:var(--panel)}.mat-group>summary:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.mat-group>summary::-webkit-details-marker{display:none}.mat-group>summary:before{content:"";border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);flex:none;width:7px;height:7px;margin:-2px 1px 0;transition:transform .18s;transform:rotate(-45deg)}.mat-group[open]>summary:before{transform:rotate(45deg)}@media (prefers-reduced-motion:reduce){.mat-group>summary:before{transition:none}}.mat-group>summary:hover h4{color:var(--ink)}.mat-group[open]>summary{background:0 0}.mat-group h4{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink)}.mat-count{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--muted);background:var(--neutral-soft);border-radius:999px;margin-left:auto;padding:2px 7px}.mat-count.has{color:var(--primary-deep);background:var(--primary-soft)}.mat-group[open]{padding-bottom:10px}.mat-subhead{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--ink);margin:8px 0 2px}.mat-row.is-fitting .mat-name{padding-left:12px}.mat-unit-label{font-size:var(--text-helper);color:var(--muted)}.mat-variant{border:1px solid var(--line);background:var(--surface);height:30px;color:var(--ink);font-size:var(--text-helper);border-radius:5px;padding:0 6px}.mat-unit-input{width:100%}.mat-add-hint{color:var(--muted);font-size:var(--text-helper);margin-top:2px;display:block}.materials-card .mat-row{grid-template-columns:1fr 58px 30px;row-gap:4px}.materials-card .mat-variant{grid-column:1/-1;width:100%;margin-bottom:2px}.materials-card .mat-row.is-extra{grid-template-columns:1fr 52px 62px 26px}.job-supply{border-radius:var(--radius);background:var(--surface);border:0;gap:0;padding:0;display:grid;overflow:hidden;box-shadow:0 14px 34px #0000001c}.job-supply>.panel-title{padding:var(--space-4) var(--space-5);background:var(--panel);border-bottom:1px solid var(--line);align-items:center;margin:0}.job-supply>:not(.panel-title){padding-inline:var(--space-5)}.job-supply>.supply-head{padding-top:var(--space-4)}.job-supply>:last-child{padding-bottom:var(--space-5)}.job-supply>.supply-sent,.job-supply>.supply-skipped{margin-inline:var(--space-5);padding-inline:12px}.job-supply .mat-row{column-gap:var(--space-3);grid-template-columns:minmax(0,1fr) 64px 44px}.job-supply .mat-row.is-extra{grid-template-columns:minmax(0,1fr) 64px 72px 30px}.job-supply .mat-variant{grid-column:1/-1;max-width:100%}.job-supply .price-sub{color:var(--muted)}.rfq-modal{max-width:620px}.rfq-custom{border-top:1px dashed var(--line);margin-top:10px;padding-top:10px}.rfq-custom-row{grid-template-columns:1fr 1fr 26px;align-items:center;gap:6px;margin-bottom:8px;display:grid}@media (width<=560px){.rfq-custom-row{grid-template-columns:minmax(0,1fr) 30px}.rfq-custom-row>input:first-child{grid-column:1/-1}.rfq-custom .text-button{min-height:36px}}.user-modal .rfq-custom-row input{margin:0}.rfq-sheet{margin-top:var(--space-3);border:1px solid var(--line);border-radius:7px;overflow:hidden}.rfq-sheet header{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--panel);border-bottom:1px solid var(--line);padding:9px 10px;display:flex}.rfq-sheet h4{font-size:var(--text-card);font-weight:var(--weight-semibold);color:var(--ink)}.rfq-sheet header span{font-size:var(--text-helper);color:var(--muted);overflow-wrap:anywhere;margin-top:1px;display:block}.rfq-sheet-count{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--primary-deep);background:var(--primary-soft);border-radius:999px;flex:none;padding:2px 8px}.rfq-sheet .rfq-line:last-child{border-bottom:0}.rfq-sheet .field-hint{padding:6px 10px}.rfq-sheet.is-note header{background:var(--surface)}.rfq-note-text{font-size:var(--text-body);line-height:var(--leading-body);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:8px 10px}.rfq-group+.rfq-group{margin-top:14px}.rfq-group header{background:var(--primary-soft);border-radius:5px;justify-content:space-between;align-items:center;gap:10px;padding:6px 9px;display:flex}.rfq-group h4{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--primary-deep)}.user-modal .rfq-who{border:1px solid var(--line);border-radius:var(--radius);font-size:var(--text-body);font-weight:var(--weight-regular);color:var(--ink);cursor:pointer;align-items:center;gap:10px;margin-top:5px;padding:9px 10px;transition:background .15s,border-color .15s;display:flex;position:relative}.user-modal .rfq-who input{opacity:0;width:0;height:0;position:absolute}.user-modal .rfq-who .fake-check{flex:none}.user-modal .rfq-who:hover{background:var(--panel)}.user-modal .rfq-who.is-on{border-color:var(--primary);background:var(--primary-soft)}.user-modal .rfq-who:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:1px}.user-modal .rfq-who:has(input:checked) .fake-check{background:var(--primary);border-color:var(--primary)}.user-modal .rfq-who-name{min-width:0}.user-modal .rfq-who-name strong{font-size:var(--text-body);font-weight:var(--weight-medium);color:var(--ink);display:block}.user-modal .rfq-who-mark{width:30px;height:30px;font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--neutral-ink);background:var(--neutral-soft);border-radius:50%;flex:none;place-items:center;display:grid}.user-modal .rfq-who.is-on .rfq-who-mark{color:#fff;background:var(--primary)}.user-modal .rfq-who-trades{flex-wrap:wrap;align-items:center;gap:4px;margin-top:3px;display:flex}.user-modal .rfq-who.is-on .trade-chip{color:var(--primary-deep);background:#fff}.user-modal .rfq-who-untraded{font-size:var(--text-helper);font-style:normal;font-weight:var(--weight-regular);color:var(--muted)}.user-modal .rfq-who-trades small{font-size:var(--text-helper);color:var(--muted)}.user-modal .rfq-who-on{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--primary-deep);flex:none;margin-left:auto}.user-modal .rfq-item{border-bottom:1px solid var(--line);font-size:var(--text-body);font-weight:var(--weight-regular);color:var(--ink);cursor:pointer;align-items:center;gap:10px;margin-top:0;padding:7px 9px;transition:background .15s;display:flex;position:relative}.user-modal .rfq-item:last-child{border-bottom:0}.user-modal .rfq-item input{opacity:0;width:0;height:0;position:absolute}.user-modal .rfq-item .fake-check{flex:none}.user-modal .rfq-item:hover{background:var(--panel)}.user-modal .rfq-item:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:-2px}.user-modal .rfq-item:has(input:checked) .fake-check{background:var(--primary);border-color:var(--primary)}.user-modal .rfq-item-what{min-width:0;font-size:var(--text-body);color:var(--ink);overflow-wrap:anywhere;flex:1}.user-modal .rfq-item-what em{font-size:var(--text-helper);color:var(--muted);margin-top:1px;font-style:normal;display:block}.user-modal .rfq-item b{font-size:var(--text-body);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--ink);flex:none}.user-modal .rfq-item.is-off .rfq-item-what,.user-modal .rfq-item.is-off b{color:var(--muted)}.rfq-all{min-height:32px;font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--primary-deep);background:0 0;border:0;border-radius:5px;margin-left:auto;padding:4px 8px;text-decoration:underline}.rfq-all:hover{background:#fff;text-decoration:none}.rfq-all:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.rfq-asked{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--muted);background:var(--neutral-soft);border-radius:999px;flex:none;padding:2px 8px}.rfq-asked.has{color:var(--primary-deep);background:#fff}.rfq-line{border-bottom:1px solid var(--line);font-size:var(--text-body);justify-content:space-between;align-items:baseline;gap:12px;padding:6px 9px;display:flex}.rfq-line:last-child{border-bottom:0}.rfq-line em{color:var(--muted);font-style:normal;font-size:var(--text-helper)}.rfq-line b{font-variant-numeric:tabular-nums;white-space:nowrap}.sup-variant{color:var(--muted);font-style:normal;font-size:var(--text-helper);font-weight:var(--weight-regular);margin-left:6px;display:inline}.job-type{align-items:baseline;gap:var(--space-2);margin:0 0 var(--space-4);padding:8px var(--space-3);background:var(--primary-soft);border-radius:7px;display:inline-flex}.job-type span{font-size:var(--text-helper);font-weight:var(--weight-semibold);color:var(--primary-deep)}.job-type strong{font-size:var(--text-body);color:var(--ink)}.job-type.is-missing{background:var(--panel)}.job-type.is-missing span{color:var(--muted)}.job-type.is-missing strong{color:var(--muted);font-weight:var(--weight-semibold)}.job-scope{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.job-scope>li{padding-bottom:var(--space-3);border-bottom:1px solid var(--line)}.job-scope>li:last-child{border-bottom:0;padding-bottom:0}.job-scope h5{font-size:var(--text-card);font-weight:var(--weight-semibold);color:var(--ink);margin:0}.job-scope ul{margin:var(--space-2) 0 0;gap:var(--space-1);padding:0;list-style:none;display:grid}.job-scope ul li{padding-left:var(--space-3);font-size:var(--text-body);line-height:var(--leading-body);color:var(--ink);position:relative}.job-scope ul li:before{content:"✓";color:var(--success);font-size:.625rem;font-weight:700;line-height:1.8;position:absolute;top:0;left:1px}.job-scope-none{font-size:var(--text-helper);color:var(--muted);margin:0}.sq-skipped{color:var(--muted);background:var(--panel);font-size:var(--text-helper);border-radius:6px;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding:10px 12px;display:flex}.sq-skip{text-align:center;width:100%;font-size:var(--text-helper);font-weight:var(--weight-semibold);margin-top:8px;display:block}.job-facts{margin-top:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid;overflow:hidden}.job-field{box-shadow:1px 0 0 var(--line), 0 1px 0 var(--line);padding:12px 14px}.job-field>span{font-size:var(--text-helper);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted);display:block}.job-field strong{font-size:var(--text-body);font-weight:var(--weight-semibold);overflow-wrap:anywhere;margin-top:4px;display:block}.job-field a{color:inherit;text-underline-offset:2px;-webkit-text-decoration:underline #c9c9c9;text-decoration:underline #c9c9c9}.job-field a:hover,.job-field a:focus-visible{color:var(--primary);text-decoration-color:currentColor}@media (width<=560px){.job-facts{grid-auto-flow:dense}.job-field:has(a[href^=mailto\:]){grid-column:1/-1}}.job-field .contact-empty{color:var(--muted);font-style:normal;font-weight:var(--weight-regular)}.job-head-do{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.job-head-slot{align-items:center;gap:var(--space-3);display:inline-flex}.job-head-when{font-size:var(--text-body);font-weight:var(--weight-bold);white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.job-head-when b{font-weight:var(--weight-bold)}.job-head-none{font-size:var(--text-helper);color:var(--muted)}.job-head-wait{flex-direction:column;align-items:flex-start;gap:3px;display:inline-flex}.job-head-why{font-size:var(--text-helper);line-height:var(--leading-tight);color:var(--muted)}.job-head-do .secondary-button{color:#fff;background:var(--primary);border-color:var(--primary)}.job-head-do .secondary-button:hover:not(:disabled){background:var(--primary-deep);border-color:var(--primary-deep)}.job-head-do .job-head-slot>.secondary-button{color:var(--primary-deep);background:var(--surface);border-color:var(--line-loud)}.job-head-do .job-head-slot>.secondary-button:hover:not(:disabled){color:var(--primary-deep);background:var(--primary-soft);border-color:var(--primary)}.job-head-do .secondary-button:disabled{color:var(--muted);background:var(--surface);border-color:var(--line);opacity:1;cursor:not-allowed;box-shadow:none;transform:none}@media (width<=700px){.job-head-do{column-gap:var(--space-2);width:100%;margin-top:var(--space-3);grid-template-rows:auto auto auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;row-gap:6px;display:grid}.job-head-do>*{width:auto}.job-head-slot,.job-head-wait{grid-row:1/span 3;grid-template-rows:subgrid;align-items:center;display:grid}.job-head-when{text-align:center;white-space:normal;flex-direction:column;grid-row:1;justify-content:center;gap:0}.job-head-slot>.secondary-button,.job-head-wait>.secondary-button{grid-row:2}.job-head-why{text-align:center;grid-row:3}.job-head-do>.primary-button,.job-head-do>.secondary-button,.job-head-none{grid-row:2}.job-head-none{text-align:center;grid-column:auto}.job-head-do .primary-button,.job-head-do .secondary-button{min-height:40px;padding:8px 14px}.job-head-do .primary-button{width:auto;margin-top:0}.job-head-do:has(>.job-head-none){gap:var(--space-3);display:flex}.job-head-do:has(>.job-head-none) .job-head-none{text-align:left}.inv-head-do{grid-template-rows:none;grid-template-columns:minmax(0,1fr);row-gap:10px}.inv-head-do>*{grid-row:auto}.inv-head-do>.primary-button{width:100%}.inv-head-do .job-head-slot{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.inv-head-do .job-head-when{text-align:left;justify-content:flex-start}.eyebrow .survey-status{display:inline-block}}.manual-form{margin:var(--space-5) 0 var(--space-6)}.pick-search{max-width:none;margin-bottom:var(--space-3)}.form-panel>.pick-search{display:flex}.pick-search input{border:0;margin-top:0}.pick-list{border:1px solid var(--line);border-radius:var(--radius);display:grid;overflow:hidden}.pick-row{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:0;border-bottom:1px solid var(--line);background:var(--surface);color:var(--ink);text-align:left;transition:background .15s;display:flex}.pick-row:last-child{border-bottom:0}.pick-row .icon{color:var(--muted);flex:none}.pick-row:disabled{cursor:progress;opacity:.6}@media (hover:hover){.pick-row:hover:not(:disabled){background:var(--panel)}.pick-row:hover:not(:disabled) .icon{color:var(--primary)}}.pick-row:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.pick-text{gap:2px;min-width:0;display:grid}.pick-text strong{font-size:var(--text-body);font-weight:var(--weight-medium)}.pick-text small{color:var(--muted);font-size:var(--text-helper);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pick-empty{padding:var(--space-4);color:var(--muted);font-size:var(--text-helper)}.pick-list .pick-empty+.pick-empty{padding-top:0}.pick-actions{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);display:flex}.pick-actions button{align-items:center;gap:6px;display:inline-flex}.manual-form .photo-error{margin-top:var(--space-3)}.book-head-do{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.book-head-do button{align-items:center;gap:6px;display:inline-flex}.book-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;display:grid}.book-grid .form-panel+.form-panel{margin-top:0}.book-grid .panel-edit{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.book-list{display:grid}.book-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--line);display:flex}.book-row:first-child{border-top:0;padding-top:0}.book-text{gap:2px;min-width:0;display:grid}.book-text strong{font-size:var(--text-body);font-weight:var(--weight-medium)}.book-text em{font-style:normal;font-weight:var(--weight-regular);color:var(--muted)}.book-text span{color:var(--muted);font-size:var(--text-helper);overflow-wrap:anywhere}.book-do{flex:none;align-items:center;gap:2px;display:flex}.book-quote{margin-right:var(--space-2);font-size:var(--text-helper);padding:7px 12px}.book-list .pick-empty{padding:0}.book-quotes-head{margin-top:var(--space-6)}.book-line{cursor:pointer}@media (hover:hover){.book-line:hover td{background:var(--panel)}}.user-modal .kind-pick{gap:var(--space-2);margin-top:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.user-modal .kind-pick .radio-row{padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);font-size:var(--text-body);font-weight:var(--weight-semibold);align-items:flex-start;margin-top:0;display:flex}.user-modal .kind-pick .radio-row.selected{border-color:var(--primary)}.user-modal .kind-pick .fake-radio{margin-top:2px}.user-modal .kind-pick input{clip:rect(0 0 0 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.back-row{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:26px;display:flex}.back-row .back-button{margin-bottom:0}.back-row .text-button{align-items:center;gap:6px;display:inline-flex}.back-row .text-button .icon svg{width:15px;height:15px}.modal-checks{gap:var(--space-2);margin-top:var(--space-4);display:grid}.modal-checks .modal-toggle{padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);align-items:flex-start;margin-top:0;transition:border-color .15s,background .15s}.modal-checks .modal-toggle:has(input:checked){border-color:var(--line-loud);background:var(--panel)}.modal-checks .fake-check,.modal-checks .fake-radio{flex:none;margin-top:1px}.modal-choice.selected .fake-radio{border-color:var(--primary);border-width:5px}.modal-choice input:focus-visible+.fake-radio{outline:2px solid var(--primary);outline-offset:2px}.modal-check-text{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.modal-check-text small{color:var(--muted);font-size:var(--text-helper);font-weight:var(--weight-regular)}.modal-toggle.is-disabled{cursor:not-allowed;color:var(--muted);background:var(--panel)}.modal-toggle.is-disabled .fake-check{background:var(--neutral-soft)}@media (prefers-reduced-motion:reduce){.modal-checks .modal-toggle,.pick-row{transition:none}}@media (width<=560px){.back-row{margin-bottom:20px}.book-head-do{margin-top:var(--space-4);justify-content:stretch}.book-head-do button{flex:1;justify-content:center}.book-grid{grid-template-columns:minmax(0,1fr)}.book-row{align-items:flex-start}.user-modal .kind-pick{grid-template-columns:1fr}.pick-actions .secondary-button{flex:1;justify-content:center}}.survey-next{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.survey-next button{align-items:center;gap:6px;display:inline-flex}.materials-quote{gap:var(--space-4);max-width:760px;display:grid}.materials-type .panel-title{flex-wrap:wrap;margin-bottom:0}.quote-lines td.qty{white-space:nowrap}@media (width<=560px){.survey-next{flex-direction:column-reverse;align-items:stretch;width:100%}.survey-next button{justify-content:center;width:100%}}
