@font-face{font-family:Barlow;src:url(/fonts/Barlow-Regular.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Barlow;src:url(/fonts/Barlow-SemiBold.ttf)format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Barlow;src:url(/fonts/Barlow-ExtraBold.ttf)format("truetype");font-weight:800;font-display:swap}:root{color:#24231f;font-synthesis:none;--ink:#24231f;--muted:#605f56;--accent:#ff673a;--line:#d5d3c8;--error:#a02323;background:#eeede6;font-family:Barlow,system-ui,sans-serif;line-height:1.5}*{box-sizing:border-box}body{min-width:0;margin:0}button,input,select,textarea{font:inherit;color:inherit}button,summary,select{cursor:pointer}button,input,select{min-height:48px}button{border:1px solid var(--line);overflow-wrap:anywhere;background:#fff;border-radius:8px;min-width:44px;padding:10px 16px;font-weight:600;line-height:1.4}button:hover:not(:disabled){background:#e7e5dc}button:disabled{opacity:.5;cursor:default}input,textarea,select{background:#fff;border:1px solid #89877d;border-radius:8px;width:100%;min-width:0;padding:11px 12px;font-size:16px;display:block}textarea{resize:vertical;min-height:88px;line-height:1.5}label{margin-bottom:8px;font-size:14px;font-weight:600;display:block}.customer-save-choice{align-items:center;gap:12px;min-height:48px;display:flex}.customer-save-choice input{flex:0 0 24px;width:24px;min-height:24px}input+label,textarea+label{margin-top:16px}:focus-visible{outline-offset:4px;outline:3px solid #24231f}[aria-invalid=true]{border:2px solid var(--error)}p,h1,h2,h3,span,output{overflow-wrap:anywhere}p{margin:0}h1,h2,h3{margin:0;line-height:1.15}h1{letter-spacing:-.045em;text-transform:uppercase;font-size:clamp(32px,7.5vw,46px);font-weight:800}h2{font-size:20px;font-weight:800}h3{margin-bottom:20px;font-size:18px}.shell{width:min(100% - 32px,760px);padding-bottom:max(40px, env(safe-area-inset-bottom));margin-inline:auto}.app-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:20px 0;display:flex}.wordmark{letter-spacing:-.06em;font-size:26px;font-weight:800}.brand-dot{color:#b63712}.language-picker{width:min(48%,210px)}.language-picker label{margin-bottom:4px;font-size:12px}.language-picker select{border-color:var(--line);background:0 0;padding:8px 10px}.editor-heading{padding:32px 0 24px}.eyebrow{letter-spacing:.065em;text-transform:uppercase;margin-bottom:12px;font-size:12px;font-weight:600}.eyebrow:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block}.muted{color:var(--muted);font-size:14px}.temporary{max-width:52ch;margin-top:12px}.document{background:#fffefa;border-radius:12px;box-shadow:0 4px 18px #24231f08}.quote-editor-controls{border:0;min-width:0;margin:0;padding:0}.document-meta,.customer-section,.items-section{padding:24px}.document-meta,.customer-section{border-bottom:1px solid var(--line)}.title-input{font-size:18px;font-weight:600}summary{overflow-wrap:anywhere;min-height:48px;padding:12px 0;font-size:14px;font-weight:600}.document-meta details{margin-top:8px}.document-meta details p{margin-top:12px}.section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.section-heading h2{align-items:baseline;gap:12px;display:flex}.step{color:var(--muted);font-size:12px;font-weight:400}.text-button{text-underline-offset:4px;background:0 0;border:0;padding:10px 12px;text-decoration:underline}.customer-summary{color:var(--muted);padding-left:27px;font-size:14px}.customer-summary p+p{white-space:pre-wrap;margin-top:4px}.customer-name{color:var(--ink);font-size:18px;font-weight:600}.customer-details{margin:8px 0 16px}.customer-details input{margin-bottom:16px}.actions{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.primary{background:var(--ink);color:#fffefa;border-color:var(--ink)}.primary:hover:not(:disabled){background:#444239}.example-customers{border-top:1px solid var(--line);margin-top:24px;padding-top:16px}.example-customers button{margin:8px 8px 0 0}.count{text-align:center;background:#eeede6;border-radius:50%;min-width:28px;padding:3px;font-size:14px}.item-card{border-bottom:1px solid var(--line);padding:12px 0 20px}.item-top{justify-content:space-between;align-items:center;display:flex}.item-number{color:var(--muted);font-size:12px}.item-description{white-space:pre-wrap;margin:0 0 12px;font-size:16px;font-weight:600}.item-amounts{font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.item-amounts span{color:var(--muted);font-size:14px}.item-amounts strong{font-size:18px;font-weight:600}.editing{border-bottom:2px solid var(--ink)}.number-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin:16px 0;display:grid}.number-fields>div{min-width:0}.number-fields label{min-height:42px}.item-form input{font-variant-numeric:tabular-nums}.danger{color:var(--error);margin-top:12px}.error{color:var(--error);margin-top:8px;font-size:14px}.add-button{background:var(--accent);border-color:#0000;justify-content:center;align-items:center;gap:10px;width:100%;min-height:52px;margin-top:24px;font-weight:800;display:flex}.add-button:hover:not(:disabled){background:#f48d61}.add-button span{font-size:24px;line-height:1}.total-section{background:var(--ink);color:#fffefa;border-radius:0 0 12px 12px;flex-wrap:wrap;justify-content:space-between;gap:20px;padding:24px;display:flex}.total-section h2{font-size:16px;font-weight:600}.total-section p{color:#dbd9d0;margin-top:6px;font-size:14px}.total-section output{letter-spacing:-.045em;font-variant-numeric:tabular-nums;max-width:100%;font-size:36px;font-weight:800;line-height:1.15}.demo-note{text-align:center;color:var(--muted);margin-top:16px;font-size:12px}.demo-tools{border-top:1px solid var(--line);margin-top:32px}.demo-tools p{margin-bottom:16px}.demo-tools button{margin-top:16px}.empty-state{padding:20px 0}.empty-state p{margin-bottom:8px;font-size:20px;font-weight:600}.undo{background:#eeede6;border-radius:8px;margin-top:16px;padding:16px;font-size:14px}.undo span{margin-bottom:12px;display:block}.home-link{min-height:48px;color:var(--ink);align-items:center;display:inline-flex}@media (width<=430px){.document-meta,.customer-section,.items-section,.total-section{padding:20px 16px}.customer-summary{padding-left:0}.section-heading h2{gap:8px}}@media (prefers-reduced-motion:no-preference){button{transition:background-color .12s}}.account-nav,.auth-links{flex-wrap:wrap;align-items:center;gap:12px;padding:16px 0;display:flex}.account-nav a,.auth-links a,.auth-panel>a{min-height:48px;color:var(--ink);overflow-wrap:anywhere;align-items:center;display:inline-flex}.auth-panel{background:#fffefa;border-radius:12px;margin-top:20px;padding:24px}.auth-panel>*+*{margin-top:20px}.quote-list{padding:0;list-style:none}.quote-list li{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px 0;display:flex}.quote-list a{color:var(--ink);overflow-wrap:anywhere;align-items:center;max-width:100%;min-height:48px;display:inline-flex}.quote-list span,.customer-section .field-hint{color:var(--muted);font-size:14px}.customer-section .field-hint{margin:12px 0}.auth-panel form>button{width:100%;margin-top:24px}.auth-panel .field-hint{color:var(--muted);margin-top:8px;font-size:14px}.auth-panel .field-hint+label,.auth-panel select+label{margin-top:16px}@media (width<=430px){.auth-panel{padding:20px 16px}}.v2-number-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.v2-number-fields>div{min-width:0}.v2-number-fields input[readonly]{background:#eeede6}.exact-source,.commercial-controls,.v2-summary,.recovery{overflow-wrap:anywhere;min-width:0}.exact-source p{white-space:normal}.v2-summary{border-top:1px solid #d8d7ce;padding:24px}.v2-breakdown{margin:20px 0}.v2-breakdown>div{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin:12px 0;display:grid}.v2-breakdown dd{text-align:right;margin:0}.v2-breakdown small{display:block}.v2-final{font-size:1.25rem;font-weight:800}.recovery textarea{width:100%}@media (width>=700px){.v2-number-fields{grid-template-columns:repeat(4,minmax(0,1fr))}}
