@font-face{font-family:Inter;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/InterVariable.woff2)format("woff2")}:root{--motion-interaction:.12s;--motion-field-border:.18s;--motion-field-ring:.22s;--motion-popover-enter:.16s;--motion-popover-exit:.12s;--motion-modal-enter:.2s;--motion-modal-exit:.15s;--motion-notice-enter:.16s;--motion-notice-exit:.16s;--motion-disclosure-enter:.18s;--motion-disclosure-exit:.18s;--motion-panel:.22s;--motion-screen:.16s;--motion-ease-enter:cubic-bezier(.16, 1, .3, 1);--motion-ease-exit:cubic-bezier(.4, 0, 1, 1);--font-family:"Inter", "Noto Sans", "Segoe UI", system-ui, Arial, sans-serif;--font-size-xs:11px;--font-size-sm:12px;--font-size:13px;--font-size-lg:14px;--font-size-heading:16px;--line-height-xs:16px;--line-height-sm:18px;--line-height:20px;--line-height-lg:22px;--line-height-heading:24px;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--letter-spacing-heading:-.01em;--letter-spacing-label:.04em;--color-text:#0f172a;--color-text-secondary:#475569;--color-text-tertiary:#64748b;--color-text-on-brand:#f1f5f9;--color-text-on-brand-secondary:#cbd5e1;--color-text-on-brand-tertiary:#b0c0c3;--color-text-brand-warm:#f6c36c;--color-text-danger:#922b21;--color-text-success:#254f44;font-family:var(--font-family);font-size:var(--font-size);font-weight:var(--font-weight-regular);line-height:var(--line-height);font-variant-numeric:tabular-nums;font-optical-sizing:auto;color:var(--color-text);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--brand:#162a2c;--gold:#f5a623;--bronze:#8c6d3f;--canvas:#e2e8f0;--muted:var(--color-text-tertiary);--line:#dce3e8;--field-hover-border:#aebfc4;--field-focus-border:var(--bronze);--field-focus-ring:0 0 0 3px #f5a62329, 0 2px 8px #8c6d3f0f;background:#f8fafc}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,summary,textarea{font:inherit}button,summary{font-weight:var(--font-weight-medium)}button{cursor:pointer;color:inherit;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.45}button,input,select,summary{outline-offset:3px}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--bronze)}a{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-size:var(--font-size-heading);font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-heading)}b,strong{font-weight:var(--font-weight-medium)}small{font-size:var(--font-size-sm);line-height:var(--line-height-sm)}input[type=number],.money-input,output,table,.page-control,.zoom-control,.page-count-badge,.sheet-icon,.count,.category-tabs span,.takeoff-bottom-bar,.final-quote-card,.highlight-tooltip{font-variant-numeric:tabular-nums}::selection{background:#f8d798}[hidden]{display:none!important}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.select-control{width:100%;min-width:0}.select-trigger{width:100%;min-height:42px;color:var(--color-text);text-align:left;font-size:var(--font-size-lg);line-height:var(--line-height-lg);font-weight:var(--font-weight-regular);transition:border-color var(--motion-interaction), box-shadow var(--motion-interaction), background var(--motion-interaction);background:#fff;border:1px solid #d3dde2;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;display:flex;box-shadow:0 1px 2px #162a2c04}.select-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-value.is-placeholder{color:var(--muted)}.select-trigger>svg{color:#718783;transition:transform var(--motion-interaction);flex-shrink:0}.select-trigger:not(:disabled,:focus,[aria-expanded=true]):hover{background:#fcfdfc;border-color:#91aaa3}.select-trigger[aria-expanded=true]{border-color:#8c6d3f;box-shadow:0 0 0 3px #f5a62314}.select-trigger[aria-expanded=true]>svg{color:var(--brand);transform:rotate(180deg)}.select-trigger:disabled{background:#f1f5f5}.popover-surface.select-popover{width:min(var(--popover-anchor-width), calc(100vw - 16px));max-height:min(360px, var(--popover-available-height,calc(100dvh - 24px)));background:#fff;border:1px solid #d9e3df;border-radius:11px;flex-direction:column;min-width:0;padding:5px;display:flex;overflow:hidden;box-shadow:0 12px 36px #162a2c1c,0 2px 8px #162a2c0b}.select-options{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c8d5cf transparent;min-height:0;scroll-padding:5px;overflow:auto}.select-option{text-align:left;width:100%;min-height:40px;color:var(--color-text-secondary);font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight-regular);background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:9px 11px;display:flex}.select-option+.select-option{margin-top:2px}.select-option.is-active{color:var(--brand);background:#fff6e7}.select-option[aria-selected=true]{color:#254f44;background:#edf4f0}.select-option[aria-selected=true].is-active{background:#e5efe9}.select-option-copy{gap:2px;min-width:0;display:grid}.select-option-label{overflow-wrap:anywhere}.select-option[aria-selected=true] .select-option-label{font-weight:var(--font-weight-medium)}.select-option small{font-size:var(--font-size-xs);line-height:var(--line-height-xs);color:var(--muted)}.select-option-check{flex-shrink:0;align-items:center;width:16px;display:flex}.select-search{color:var(--muted);border-bottom:1px solid #e8eeea;flex-shrink:0;align-items:center;gap:8px;margin:3px 3px 5px;padding:6px 8px 10px;display:flex}.select-search input{width:100%;min-width:0;color:var(--color-text);font-size:var(--font-size);line-height:var(--line-height);background:0 0;border:0;outline:none;padding:3px 0}.select-search:focus-within{border-bottom-color:var(--bronze)}.select-empty{text-align:center;color:var(--muted);font-size:var(--font-size-sm);margin:0;padding:16px 10px}@media (pointer:coarse){.select-option{min-height:44px}}@media (prefers-reduced-motion:reduce){.select-trigger,.select-trigger>svg{transition:none}}.pricing-library{box-sizing:border-box;max-width:1440px;min-height:calc(100dvh - 56px);color:var(--color-text);flex-direction:column;margin:0 auto;padding:28px 24px 0;display:flex}.library-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.library-heading h1{margin:0 0 8px;font-size:clamp(24px,3vw,34px)}.pricing-library p,.pricing-library small{color:var(--color-text-secondary);line-height:1.6}.library-layout{flex:1;grid-template-columns:248px minmax(0,1fr);align-items:start;gap:24px;display:grid}.library-sidebar{gap:12px;display:grid}.library-sidebar h2{margin:18px 0 0;font-size:17px}.library-sidebar>p{margin:0}.library-sidebar>button,.library-sidebar section>button{width:100%}.library-sidebar section{gap:12px;display:grid}.library-card,.library-editor{border:1px solid var(--line);background:#fff;border-radius:12px;min-width:0}.library-card{padding:16px}.library-card.selected{border-color:var(--gold,#c9a962);box-shadow:0 0 0 1px #c9a96220}.library-preset-name{text-align:left;width:100%;color:inherit;overflow-wrap:anywhere;background:0 0;border:0;padding:0;font-weight:650;line-height:1.5;display:block}.library-default{color:#80570d;background:#fff4d8;border:1px solid #edd296;border-radius:999px;align-items:center;margin-top:10px;padding:4px 9px;font-size:11px;font-weight:600;line-height:16px;display:inline-flex}.library-card p{overflow-wrap:anywhere;margin:8px 0}.library-card-actions{border-top:1px solid #eef1ef;justify-content:flex-end;gap:4px;padding-top:8px;display:flex}.pricing-library .library-icon-button{width:36px;height:36px;color:var(--color-text-secondary);background:0 0;border:1px solid #0000;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.pricing-library .library-icon-button:not(:disabled):hover{color:var(--brand);background:#edf3f0}.pricing-library .library-icon-button:focus-visible{outline:2px solid var(--bronze);outline-offset:2px}.pricing-library .library-delete:not(:disabled):is(:hover,:focus-visible){color:#b42318;background:#fff0ee}.library-editor{padding:24px}.library-editor fieldset{border:0;min-width:0;margin:0;padding:0}.library-form-legend{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.library-editor-header{align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.library-editor-title{flex:1;min-width:0}.library-editor-kicker{font-size:var(--font-size-sm);margin:0 0 8px}.library-title-row{align-items:flex-start;gap:8px;display:flex}.library-title-row h2{letter-spacing:-.02em;overflow-wrap:anywhere;min-width:0;margin:0;font-size:clamp(22px,2.4vw,28px);font-weight:650;line-height:1.35}.library-name-editor{align-items:center;gap:4px;max-width:560px;display:flex}.library-title-input{box-sizing:border-box;border:1px solid var(--line);width:100%;min-width:0;height:44px;color:inherit;font:inherit;background:#fff;border-radius:7px;flex:1;padding:8px 10px;font-size:20px;font-weight:600}.library-cancel{font-size:var(--font-size-sm);flex-shrink:0;margin-top:24px;padding:6px 0}.library-metadata{gap:16px;display:grid}.library-metadata label{gap:8px;font-weight:500;display:grid}.library-metadata input,.library-metadata textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;color:inherit;font:inherit;background:#fff;border-radius:7px;padding:10px 12px}.library-metadata textarea{resize:vertical;min-height:68px}.library-field-hint{font-size:var(--font-size-sm);margin:16px 0 20px}.library-groups{gap:16px;display:grid}.library-group{border:1px solid var(--line);background:#fff;border-radius:10px;min-width:0}.library-group>.disclosure-toggle{width:100%;min-height:58px;color:var(--brand);font-size:var(--font-size-lg);text-align:left;border-radius:9px;gap:12px;padding:16px}.library-group>.disclosure-toggle>span{align-items:center;gap:12px;min-width:0;display:flex}.library-group>.disclosure-toggle>svg{flex-shrink:0}.library-group-number{color:#516d62;background:#eef3f0;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:11px;font-weight:600;display:inline-flex}.library-group>.disclosure-toggle[aria-expanded=true] .library-group-number{color:#856117;background:#f9efd9}.library-group>.disclosure-toggle:hover{background:#f8faf9}.library-group>.disclosure-toggle:focus-visible{outline:2px solid var(--bronze);outline-offset:3px}.library-group>.disclosure-content{padding:0}.library-fields-grid{grid-template-columns:minmax(0,1fr);gap:16px;padding:4px 16px 20px;display:grid}.library-editor .number-field{grid-template-columns:minmax(0,1fr);align-items:start;gap:8px;min-width:0;margin:0;font-weight:500}.library-editor .number-field>div{border-radius:7px;min-width:0}.library-editor .number-field input{text-align:left;height:44px;padding:10px 12px;scroll-margin-block:100px 180px}.library-editor .number-field small{flex-shrink:0;padding-right:12px;font-weight:400}.library-save-actions{z-index:5;min-width:0;padding:16px 24px max(16px, env(safe-area-inset-bottom));border:1px solid var(--line);background:#fff;border-radius:12px 12px 0 0;flex-shrink:0;margin:16px 0 0 272px;position:sticky;bottom:0;box-shadow:0 -6px 20px #162a2c0d}.library-action-buttons{align-items:center;gap:12px;display:flex}.library-action-buttons button{justify-content:center;align-items:center;gap:8px;min-height:44px;line-height:1.4;display:inline-flex}.library-action-buttons button svg{flex-shrink:0}.library-set-default svg{color:var(--bronze)}.library-reset{margin-right:auto}.library-message{font-size:var(--font-size-sm);overflow-wrap:anywhere;margin:0 0 12px}.library-exceptions{font-size:var(--font-size-sm);margin-top:20px}@media (width>=768px){.library-fields-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.library-fields-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1023px){.library-layout{grid-template-columns:1fr}.library-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.library-sidebar>h2,.library-sidebar>p,.library-sidebar>section{grid-column:1/-1}.library-save-actions{margin-left:0}}@media (width<=600px){.pricing-library{padding:20px 14px 0}.library-heading{flex-direction:column;align-items:start}.library-sidebar{grid-template-columns:1fr}.library-editor{padding:20px 16px}.library-editor-header{flex-wrap:wrap;gap:8px}.library-editor-title{flex-basis:100%}.library-cancel{margin-top:0}.pricing-library .library-icon-button{width:44px;height:44px}.library-group>.disclosure-toggle{gap:8px;padding:14px 12px}.library-group>.disclosure-toggle>span{gap:8px}.library-fields-grid{padding:4px 12px 16px}.library-editor .number-field input{height:48px}.library-save-actions{padding:12px 12px max(12px, env(safe-area-inset-bottom))}.library-action-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.library-action-buttons .secondary-button{padding-inline:6px;font-size:12px}.library-action-buttons .secondary-button svg{display:none}.library-reset{margin:0}.library-save{grid-column:1/-1}}.application{min-height:100dvh}.workspace-mode{flex-direction:column;height:100dvh;display:flex;overflow:hidden}button{background:0 0;border:0}svg{flex-shrink:0}.primary-button,.secondary-button,.gold-button{font-weight:var(--font-weight-medium);min-height:42px;font-size:var(--font-size);line-height:var(--line-height);border-radius:7px;justify-content:center;align-items:center;gap:9px;padding:11px 16px;display:inline-flex}.primary-button{background:var(--brand);color:var(--color-text-on-brand)}.secondary-button{border:1px solid var(--line);background:#fff}.gold-button{background:var(--gold);color:var(--brand)}.primary-button:hover:not(:disabled){background:#284447}.gold-button:hover:not(:disabled){background:#ffbc4b}.text-button{color:var(--brand);font-weight:var(--font-weight-medium);font-size:var(--font-size);line-height:var(--line-height);align-items:center;gap:8px;padding:6px;display:inline-flex}.icon-button{border-radius:5px;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:6px;display:inline-flex}.icon-button:hover:not(:disabled){background:#0f172a10}.compact-header{background:var(--brand);height:56px;color:var(--color-text-on-brand);z-index:30;flex:0 0 56px;align-items:center;gap:16px;padding:0 18px;display:flex}.compact-brand{color:var(--color-text-brand-warm);white-space:nowrap;align-items:center;gap:9px;padding:0;display:flex}.compact-brand img{object-fit:contain;width:36px;height:38px}.compact-brand>span{font-size:var(--font-size-heading);font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading)}.compact-brand i{font-style:normal;font-weight:var(--font-weight-regular)}.compact-project{border-left:1px solid #ffffff30;align-items:center;gap:8px;min-width:0;max-width:300px;padding-left:14px;display:flex}.compact-project select{color:var(--color-text-on-brand);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);cursor:pointer;width:100%;min-width:70px;max-width:230px;line-height:var(--line-height-lg);background:0 0;border:0}.compact-project option{background:var(--brand)}.page-count-badge{color:var(--gold);font-size:var(--font-size-xs);white-space:nowrap;line-height:var(--line-height-xs);font-weight:var(--font-weight-medium);background:#f5a62318;border:1px solid #f5a62333;border-radius:4px;padding:4px 7px}.unsaved-dot{background:var(--gold);border-radius:50%;flex-shrink:0;width:7px;height:7px}.workflow-stepper{white-space:nowrap;align-items:center;gap:8px;margin:auto;display:flex}.workflow-stepper button{color:var(--color-text-on-brand-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular);align-items:center;gap:7px;padding:6px;display:flex}.workflow-stepper button>span{width:23px;height:23px;font-size:var(--font-size-xs);line-height:var(--line-height-xs);font-weight:var(--font-weight-medium);border:1px solid #ffffff40;border-radius:50%;place-items:center;display:grid}.workflow-stepper button[aria-current=step]{color:var(--gold)}.workflow-stepper button[aria-current=step]>span{background:var(--gold);color:var(--brand);border-color:var(--gold)}.compact-actions{align-items:center;gap:5px;margin-left:auto;display:flex}.compact-actions button,.compact-action-menu button{white-space:nowrap;font-size:var(--font-size-sm);color:inherit;line-height:var(--line-height-sm);font-weight:var(--font-weight-medium);border-radius:5px;align-items:center;gap:7px;padding:8px 10px;display:flex}.compact-actions button:hover:not(:disabled){background:#ffffff15}.compact-actions .gold-button,.compact-action-menu .gold-button{color:var(--brand);min-height:34px}.compact-action-menu{margin-left:auto;display:none;position:relative}.compact-action-menu summary{cursor:pointer;padding:7px;list-style:none;display:flex}.compact-action-menu>div{background:var(--brand);border-radius:8px;gap:5px;width:200px;padding:9px;display:grid;position:absolute;top:40px;right:0;box-shadow:0 12px 30px #0003}.app-alert{font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight-regular);flex-shrink:0;align-items:center;gap:10px;padding:10px 16px;display:flex}.app-alert>span{flex:1}.error-alert{color:var(--color-text-danger);background:#fff1f0}.success-alert{color:var(--color-text-success);background:#edf4f2}.workspace-mode>.app-alert{z-index:50;border-radius:8px;width:max-content;max-width:calc(100% - 24px);position:fixed;top:62px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #0f172a20}.loading-page{min-height:70vh;color:var(--muted);place-content:center;justify-items:center;gap:18px;display:grid}.takeoff-screen{flex-direction:column;flex:1;min-height:0;display:flex}.takeoff-workspace{flex:1;grid-template-columns:240px minmax(0,1fr);min-height:0;display:grid}.takeoff-workspace.sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}.sheets-panel{border-right:1px solid var(--line);background:#fff;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.sidebar-collapsed>.sheets-panel{visibility:hidden}.panel-heading,.section-heading{border-bottom:1px solid var(--line);min-height:46px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-sm);flex-shrink:0;align-items:center;gap:10px;padding:10px 16px;display:flex}.panel-heading .count{color:var(--bronze);margin-left:auto}.panel-heading .icon-button{margin-left:auto}.sheet-list{flex:1;padding:8px;overflow:auto}.sheet-row{border:1px solid #0000;border-radius:6px;align-items:center;margin-bottom:7px;display:flex}.sheet-row.active{background:var(--brand);color:var(--color-text-on-brand);border-color:var(--brand)}.sheet-row.ignored{opacity:.65}.sheet-select{text-align:left;flex:1;align-items:center;gap:10px;min-width:0;padding:11px 6px;display:flex}.sheet-select>span:last-child{flex-direction:column;gap:3px;min-width:0;display:flex}.sheet-select b{font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight-medium)}.sheet-select small{font-size:var(--font-size-sm);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular);overflow-wrap:anywhere;color:var(--color-text-secondary)}.sheet-select>span:last-child>small:last-child,.sheet-icon small{font-size:var(--font-size-xs);line-height:var(--line-height-xs)}.sheet-select>span:last-child>small:last-child{color:var(--color-text-tertiary)}.sheet-row.active .sheet-select small{color:var(--color-text-on-brand-secondary)}.sheet-row.active .sheet-select>span:last-child>small:last-child{color:var(--color-text-on-brand-tertiary)}.sheet-icon{color:var(--bronze);flex-direction:column;align-items:center;gap:2px;display:flex}.active .sheet-icon{color:var(--gold)}.sheet-visibility{margin-right:3px}.hidden-pages{font-size:var(--font-size-sm);border-top:1px solid var(--line);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular);align-items:center;gap:8px;padding:14px 12px;display:flex}.hidden-pages>span{margin-left:auto}.panel-empty{font-size:var(--font-size-sm);color:var(--muted);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular);padding:16px 8px}.sidebar-scrim{display:none}.takeoff-main{min-width:0;min-height:0;display:grid;overflow:hidden}.viewer-panel{background:var(--canvas);min-width:0;min-height:0;position:relative;overflow:hidden}.pdf-stage{cursor:grab;touch-action:none;outline-offset:-3px;-webkit-user-select:none;user-select:none;position:absolute;inset:0;overflow:hidden}.pdf-stage.dragging{cursor:grabbing}.pdf-surface{transform-origin:0 0;background:#fff;position:absolute;top:0;left:0;box-shadow:0 3px 16px #0f172a25}.canvas-host,.canvas-host canvas{width:100%;height:100%;display:block}.highlight-layer{pointer-events:none;position:absolute;inset:0}.highlight-zone{pointer-events:auto;cursor:inherit;border:2px solid;border-radius:2px;padding:0;position:absolute}.highlight-zone.selected{outline:3px solid var(--gold);outline-offset:3px;z-index:2}.highlight-tooltip{white-space:nowrap;max-width:450px;font-size:var(--font-size-sm);background:var(--brand);color:var(--color-text-on-brand);pointer-events:none;line-height:var(--line-height-sm);font-weight:var(--font-weight-regular);border-radius:4px;padding:6px 10px;display:none;position:absolute;bottom:calc(100% + 7px);left:0;box-shadow:0 2px 6px #0002}.highlight-zone:hover .highlight-tooltip,.highlight-zone:focus-visible .highlight-tooltip{display:block}.floating-pdf-toolbar{z-index:5;white-space:nowrap;background:#fffffff5;border:1px solid #cdd6df;border-radius:10px;align-items:center;gap:4px;max-width:calc(100% - 16px);padding:4px;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%);box-shadow:0 3px 12px #0f172a12}.page-control,.zoom-control{font-size:var(--font-size-sm);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular);align-items:center;gap:3px;display:flex}.page-control{border-left:1px solid var(--line);border-right:1px solid var(--line);padding:0 3px}.zoom-control output{text-align:center;min-width:43px;font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);line-height:var(--line-height-sm)}.overlay-toggle[aria-pressed=true]{color:var(--brand);background:#f5a62330}.drawing-title{font-size:var(--font-size-xs);color:var(--color-text-secondary);pointer-events:none;white-space:nowrap;text-overflow:ellipsis;max-width:75%;line-height:var(--line-height-xs);font-weight:var(--font-weight-regular);background:#ffffffbd;border-radius:4px;padding:4px 8px;position:absolute;bottom:8px;left:12px;overflow:hidden}.viewer-message{z-index:4;font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight-regular);background:#fff;border-radius:8px;padding:15px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.analysis-action{z-index:6;text-align:center;flex-direction:column;align-items:center;gap:6px;max-width:90%;display:flex;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.analysis-action small{font-size:var(--font-size-sm);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular);background:#fff;border-radius:4px;padding:7px}.split-controls{z-index:7;background:#f1f5f9;border-block:1px solid #cad4df;align-items:center;min-height:28px;display:flex;position:relative}.split-handle{cursor:ns-resize;touch-action:none;flex:1;justify-content:center;align-self:stretch;align-items:center;min-width:45px;display:flex}.split-handle>span{background:#94a3b8;border-radius:5px;width:40px;height:4px}.split-presets{gap:5px;padding-right:12px;display:flex}.split-presets button{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:var(--line-height-xs);font-weight:var(--font-weight-regular);border-radius:3px;padding:4px 8px}.split-presets button:hover{background:#dce3e8}.maximize-pdf .takeoff-main{grid-template-rows:minmax(0,1fr)}.maximize-pdf .boq-panel,.maximize-pdf .split-controls{display:none}.maximize-table .takeoff-main{grid-template-rows:minmax(0,1fr)}.maximize-table .viewer-panel,.maximize-table .split-controls{display:none}.boq-panel{background:#fff;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.section-heading h2{font-size:var(--font-size-lg);line-height:var(--line-height-lg);font-weight:var(--font-weight-medium);align-items:center;gap:8px;display:flex}.category-tabs{border-bottom:1px solid var(--line);flex-shrink:0;gap:3px;padding:6px 12px;display:flex;overflow:auto}.category-tabs button{white-space:nowrap;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-sm);border-radius:5px;align-items:center;gap:7px;padding:6px 10px;display:flex}.category-tabs .active{background:var(--brand);color:var(--color-text-on-brand)}.category-tabs span{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:var(--line-height-xs);font-weight:var(--font-weight-regular)}.category-tabs .active span{color:var(--color-text-on-brand-secondary)}.category-tabs i,.item-name i{border-radius:50%;flex-shrink:0;width:7px;height:7px}.boq-scroll{flex:1;min-height:0;overflow:auto}.boq-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--font-size);white-space:nowrap;line-height:var(--line-height);font-weight:var(--font-weight-regular)}.boq-table th{z-index:2;text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);border-bottom:1px solid var(--line);line-height:var(--line-height-sm);background:#f8fafc;padding:10px 14px;position:sticky;top:0}.boq-table td{border-bottom:1px solid #edf0f3;padding:10px 14px}.boq-table tr.selected td{background:#fff8eb}.boq-table input[type=number]{font-size:var(--font-size-lg);font-weight:var(--font-weight-regular);text-align:right;width:78px;height:38px;line-height:var(--line-height-lg);background:#fff;border:1px solid #d4dce5;border-radius:5px;padding:5px 7px}.boq-table td:first-child{min-width:160px}.boq-table input[type=checkbox]{width:22px;height:22px;accent-color:var(--brand);cursor:pointer}.item-name{font-size:var(--font-size);font-weight:var(--font-weight-medium);line-height:var(--line-height);align-items:center;gap:9px;padding:6px 0;display:flex}.page-link{color:var(--bronze);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);line-height:var(--line-height-sm);text-decoration:underline}.dimension-inputs,.dimension-inputs label{align-items:center;gap:7px;display:flex}.dimension-inputs label>span{color:var(--color-text-tertiary)}.boq-table :is(th,td):is(:nth-child(2),:nth-child(3),:nth-child(6),:nth-child(7)){text-align:right}.formula-cell{color:var(--color-text-secondary);font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight-regular)}.quantity-cell{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;line-height:var(--line-height-lg)}.quantity-cell small{font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);line-height:var(--line-height-xs)}.table-empty{text-align:center;color:var(--muted);font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight-regular);padding:24px}.takeoff-bottom-bar{background:var(--brand);min-height:52px;color:var(--color-text-on-brand-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular);flex:none;align-items:center;gap:28px;padding:6px 18px;display:flex}.takeoff-bottom-bar>span{align-items:center;gap:8px;display:flex}.takeoff-bottom-bar b{color:var(--color-text-on-brand);font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight-medium)}.review-progress.complete,.review-progress.complete b{color:var(--gold)}.takeoff-confirmation{flex-direction:column;align-items:flex-end;gap:3px;max-width:50%;margin-left:auto;display:flex}.pricing-block-reason{max-width:60ch;font-size:var(--font-size-xs);line-height:var(--line-height-xs);text-align:right;margin:0}.takeoff-bottom-bar .gold-button{font-size:var(--font-size);min-height:38px;line-height:var(--line-height);font-weight:var(--font-weight-medium);padding:8px 15px}.pricing-screen{background:#f8fafc;flex:1;overflow:auto}.pricing-screen-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;max-width:1440px;margin:auto;padding:20px 32px;display:flex}.pricing-screen-heading>span{font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-label);color:var(--muted);line-height:var(--line-height-xs);font-weight:var(--font-weight-medium)}.pricing-columns{grid-template-columns:minmax(0,45fr) minmax(0,55fr);gap:48px;max-width:1440px;margin:auto;padding:32px;display:grid}.pricing-settings h1{font-size:var(--font-size-heading);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-heading);font-weight:var(--font-weight-semibold)}.pricing-settings>p{color:var(--muted);line-height:var(--line-height);margin:8px 0 26px}.pricing-card{border:1px solid var(--line);background:#fff;border-radius:10px;margin-top:20px;padding:24px}.pricing-card h3{font-size:var(--font-size-lg);line-height:var(--line-height-lg);font-weight:var(--font-weight-medium);margin-bottom:18px}.number-field{line-height:var(--line-height);font-size:var(--font-size);font-weight:var(--font-weight-regular);grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:12px;margin:14px 0;display:grid}.number-field>div{background:#fff;border:1px solid #ced8e1;border-radius:6px;align-items:center;display:flex;overflow:hidden}.number-field>div:focus-within{border-color:var(--bronze);box-shadow:0 0 0 2px #f5a62318}.number-field input{width:100%;min-width:0;height:48px;font-size:var(--font-size-lg);font-weight:var(--font-weight-regular);text-align:right;color:var(--brand);line-height:var(--line-height-lg);background:0 0;border:0;border-radius:0;padding:10px}.number-field input:focus-visible{outline:none}.number-field small{font-size:var(--font-size-xs);white-space:nowrap;color:var(--muted);line-height:var(--line-height-xs);font-weight:var(--font-weight-regular);padding-right:10px}.field-hint{color:var(--muted);font-size:var(--font-size-sm);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular);display:block}.card-divider{border-top:1px solid var(--line);margin:20px 0}.reference-rates{font-size:var(--font-size-sm);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular);background:#f8fafc;border-radius:5px;margin-bottom:20px;padding:12px}.reference-rates summary{cursor:pointer;color:var(--bronze);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);line-height:var(--line-height-sm)}.reference-rates p{line-height:var(--line-height);margin-top:10px}.reference-rates ul{line-height:var(--line-height);padding-left:18px}.reference-rates button{font-size:var(--font-size-sm);line-height:var(--line-height-sm);font-weight:var(--font-weight-medium)}.pricing-result{min-width:0}.quote-preview{border:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden}.quote-preview-heading{padding:28px}.eyebrow{letter-spacing:var(--letter-spacing-label);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--bronze);line-height:var(--line-height-xs);align-items:center;gap:9px;display:flex}.eyebrow>span{background:var(--gold);border-radius:50%;width:7px;height:7px}.quote-preview-heading h2{font-size:var(--font-size-heading);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-heading);font-weight:var(--font-weight-semibold);margin:12px 0}.quote-preview-heading p{font-size:var(--font-size);color:var(--muted);line-height:var(--line-height);font-weight:var(--font-weight-regular)}.quote-breakdown{border-collapse:collapse;width:100%}.quote-breakdown th{text-align:left;color:var(--muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-sm);background:#f8fafc;padding:12px 24px}.quote-breakdown th:last-child,.quote-breakdown td:last-child{text-align:right;white-space:nowrap}.quote-breakdown td{font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight-regular);border-bottom:1px solid #edf0f3;padding:19px 24px}.quote-breakdown td:last-child{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);font-variant-numeric:tabular-nums;line-height:var(--line-height-lg)}.line-number{font-size:var(--font-size-xs);color:var(--color-text-tertiary);line-height:var(--line-height-xs);font-weight:var(--font-weight-regular);margin-right:12px}.final-quote-card{background:var(--brand);color:var(--color-text-on-brand);border-radius:8px;margin:24px;padding:26px}.quote-status{font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-label);color:var(--color-text-on-brand-secondary);line-height:var(--line-height-xs);font-weight:var(--font-weight-medium)}.equivalent-area{font-size:var(--font-size-sm);color:var(--color-text-on-brand-secondary);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular);justify-content:space-between;gap:10px;margin-top:22px;display:flex}.equivalent-area b{color:var(--color-text-on-brand);font-size:var(--font-size-lg);line-height:var(--line-height-lg);font-weight:var(--font-weight-medium)}.total-quote{border-bottom:1px solid #ffffff24;flex-direction:column;gap:8px;padding:22px 0;display:flex}.total-quote>span{font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-label);color:var(--color-text-on-brand-secondary);line-height:var(--line-height-xs);font-weight:var(--font-weight-medium)}.total-quote strong{font-size:var(--font-size-heading);font-weight:var(--font-weight-semibold);color:var(--gold);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:var(--line-height-heading)}.total-quote small{font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);line-height:var(--line-height-sm)}.per-meter{flex-direction:column;gap:8px;padding-top:22px;display:flex}.per-meter>span{font-size:var(--font-size-sm);color:var(--color-text-on-brand-secondary);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular)}.per-meter strong{font-size:var(--font-size-heading);color:var(--gold);font-variant-numeric:tabular-nums;line-height:var(--line-height-heading);font-weight:var(--font-weight-semibold)}.per-meter small{font-size:var(--font-size-sm);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular)}.pricing-note{color:var(--muted);font-size:var(--font-size-sm);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular);padding:0 26px 24px}.entry-page{grid-template-columns:1.3fr 1fr;align-items:center;gap:100px;max-width:1240px;min-height:calc(100dvh - 56px);margin:auto;padding:70px 40px;display:grid}.entry-copy h1{font-size:var(--font-size-heading);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-heading);font-weight:var(--font-weight-semibold);margin:24px 0}.entry-copy h1 em{color:var(--bronze);font-style:normal}.entry-copy>p{font-size:var(--font-size-lg);line-height:var(--line-height-lg);color:var(--muted);font-weight:var(--font-weight-regular)}.entry-steps{align-items:center;gap:14px;margin-top:42px;display:flex}.entry-steps>span{font-size:var(--font-size-sm);white-space:nowrap;line-height:var(--line-height-sm);font-weight:var(--font-weight-regular);align-items:center;gap:8px;display:flex}.entry-steps>i{background:var(--line);width:18px;height:1px}.access-card{border:1px solid var(--line);text-align:center;background:#fff;border-radius:14px;flex-direction:column;align-items:center;gap:18px;padding:36px;display:flex;box-shadow:0 12px 50px #162a2c08}.access-icon{color:var(--bronze);background:#f7eee0;border-radius:12px;padding:18px}.access-card h2{font-size:var(--font-size-heading);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-heading);font-weight:var(--font-weight-semibold)}.access-card p{color:var(--muted);font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight-regular)}.access-card small{font-size:var(--font-size-sm);color:var(--muted);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular)}.access-card .primary-button{width:100%;margin-top:12px}.config-notice{font-size:var(--font-size);color:var(--muted);line-height:var(--line-height);font-weight:var(--font-weight-regular);background:#f8fafc;padding:15px}.projects-page{max-width:1280px;margin:auto;padding:64px 40px}.projects-intro{justify-content:space-between;align-items:center;gap:24px;margin-bottom:42px;display:flex}.projects-intro h1{font-size:var(--font-size-heading);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-heading);font-weight:var(--font-weight-semibold);margin:15px 0 10px}.projects-intro p{color:var(--muted);line-height:var(--line-height);font-size:var(--font-size);font-weight:var(--font-weight-regular)}.empty-projects{background:#fff;border:1px dashed #bfccd7;border-radius:12px;flex-direction:column;align-items:center;gap:15px;width:100%;padding:70px 24px;display:flex}.projects-status{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:22px;padding:24px;display:flex}.projects-status>svg{flex-shrink:0}.projects-status>span{flex:1;min-width:180px}.projects-status-error{color:#b42318}.empty-upload-icon{color:var(--bronze);background:#fbf4e7;border-radius:50%;margin-bottom:8px;padding:18px}.empty-projects h2{font-size:var(--font-size-heading);line-height:var(--line-height-heading);font-weight:var(--font-weight-medium)}.empty-projects p,.empty-projects small{color:var(--muted)}.empty-projects>span{color:var(--bronze);font-weight:var(--font-weight-semibold);align-items:center;gap:10px;display:flex}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.project-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:10px;padding:24px}.project-card:hover{border-color:var(--bronze);box-shadow:0 4px 18px #162a2c0d}.project-card-top,.project-card>div:last-child{color:var(--bronze);justify-content:space-between;align-items:center;display:flex}.project-card-top>span{font-size:var(--font-size-xs);color:var(--muted);line-height:var(--line-height-xs);font-weight:var(--font-weight-regular)}.project-card h2{font-size:var(--font-size-lg);overflow-wrap:anywhere;line-height:var(--line-height-lg);font-weight:var(--font-weight-medium);margin:28px 0 10px}.project-card p{font-size:var(--font-size-sm);color:var(--muted);overflow-wrap:anywhere;line-height:var(--line-height-sm);font-weight:var(--font-weight-regular)}.project-card>div:last-child{margin-top:28px}.project-card small{font-size:var(--font-size-xs);color:var(--muted);line-height:var(--line-height-xs);font-weight:var(--font-weight-regular)}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;background:#0f2028a6;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.upload-modal{background:#fff;border-radius:12px;width:min(100%,490px);max-height:95dvh;padding:28px;overflow:auto;box-shadow:0 16px 64px #0003}.modal-heading{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.modal-heading h2{font-size:var(--font-size-heading);line-height:var(--line-height-heading);font-weight:var(--font-weight-semibold)}.upload-dropzone{text-align:center;color:var(--bronze);cursor:pointer;background:#f8fafc;border:1px dashed #b6c5cd;border-radius:8px;flex-direction:column;align-items:center;gap:14px;padding:28px 15px;display:flex}.upload-dropzone b{overflow-wrap:anywhere;max-width:100%;font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight-medium)}.upload-dropzone small{font-size:var(--font-size-sm);color:var(--muted);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular)}.upload-dropzone input{max-width:100%;font-size:var(--font-size-sm);line-height:var(--line-height-sm);font-weight:var(--font-weight-regular)}.project-name-field{font-size:var(--font-size);font-weight:var(--font-weight-medium);line-height:var(--line-height);flex-direction:column;gap:10px;margin:22px 0;display:flex}.project-name-field input{border:1px solid var(--line);min-width:0;font-size:var(--font-size-lg);line-height:var(--line-height-lg);font-weight:var(--font-weight-regular);border-radius:6px;padding:12px}.upload-modal form>.primary-button{width:100%}@media (width>=1700px){.compact-project{max-width:380px}.compact-project select{max-width:280px}}@media (width<=1240px){.compact-actions{display:none}.compact-action-menu{display:block}.compact-project{max-width:280px}.compact-header{gap:12px}.pricing-columns{gap:24px;padding:24px}.number-field{grid-template-columns:minmax(0,1fr) 155px}.pricing-card{padding:20px}}@media (width<=899px){.compact-header{gap:10px;padding:0 10px}.compact-brand>span{display:none}.compact-project{flex:1;max-width:280px;padding-left:10px}.workflow-stepper button{padding:5px 2px}.workflow-stepper b{display:none}.workflow-stepper{gap:4px;margin:0}.page-count-badge{display:none}.takeoff-workspace,.takeoff-workspace.sidebar-collapsed{grid-template-columns:minmax(0,1fr);position:relative}.sheets-panel{z-index:22;width:240px;position:absolute;top:0;bottom:0;left:0;box-shadow:8px 0 26px #0002}.sidebar-collapsed>.sheets-panel{display:none}.sidebar-scrim{z-index:21;background:#0f172a50;display:block;position:absolute;inset:0}.takeoff-main{grid-column:1}.floating-pdf-toolbar{gap:1px;padding:3px;top:8px}.floating-pdf-toolbar .icon-button{min-width:28px;padding:4px}.floating-pdf-toolbar .page-control{font-size:var(--font-size-sm);padding:0}.zoom-control{gap:0}.zoom-control output{min-width:35px}.takeoff-bottom-bar{gap:14px}.takeoff-bottom-bar>.floor-area-summary{display:none}.pricing-columns{grid-template-columns:minmax(0,1fr);gap:28px;max-width:720px;padding:22px}.pricing-screen-heading{padding:16px 22px}.pricing-screen-heading>span{display:none}.number-field{grid-template-columns:minmax(0,1fr) 190px}.entry-page{grid-template-columns:1fr;gap:42px;max-width:620px;padding:50px 26px}.entry-steps{margin-top:28px}.projects-page{padding:36px 22px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-intro{flex-wrap:wrap;align-items:flex-start}}@media (width<=540px){.compact-header{gap:7px}.compact-brand img{width:30px;height:35px}.compact-project{max-width:180px;padding-left:7px}.workflow-stepper{gap:2px}.workflow-stepper>svg{width:10px}.workflow-stepper button>span{width:22px;height:22px}.compact-action-menu summary{padding:4px}.takeoff-bottom-bar{flex-wrap:wrap;flex-basis:auto;gap:6px;height:auto;min-height:88px;padding:8px 12px}.takeoff-bottom-bar>span.review-progress{font-size:var(--font-size-sm);width:100%;line-height:var(--line-height-sm);font-weight:var(--font-weight-regular);justify-content:center}.takeoff-bottom-bar .gold-button{width:100%;min-height:35px;margin:0;padding:7px}.takeoff-confirmation{width:100%;max-width:none;margin:0}.pricing-block-reason{text-align:left}.floating-pdf-toolbar{gap:0;width:max-content;max-width:calc(100% - 10px)}.floating-pdf-toolbar .icon-button{min-width:25px;min-height:30px;padding:3px}.floating-pdf-toolbar svg{width:16px}.page-control>span{font-size:var(--font-size-xs)}.page-control{gap:0}.zoom-control output{min-width:30px}.split-presets{gap:0;padding-right:4px}.split-presets button{padding:5px}.split-handle{min-width:40px}.split-handle>span{width:26px}.section-heading{gap:6px;padding:8px 10px}.category-tabs,.category-tabs button{padding:5px 8px}.drawing-title{bottom:5px}.analysis-action .primary-button{font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight-medium);padding:9px 12px}.boq-table th,.boq-table td{padding:9px 12px}.pricing-columns,.pricing-card{padding:18px 14px}.number-field{grid-template-columns:minmax(0,1fr) 158px;gap:10px}.number-field>span{font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight-regular)}.number-field small{padding-right:6px}.quote-preview-heading{padding:22px 18px}.quote-breakdown th,.quote-breakdown td{padding:15px 14px}.line-number{display:none}.final-quote-card{margin:16px;padding:20px}.pricing-note{padding:0 18px 20px}.pricing-screen-heading{padding:14px}.pricing-screen-heading button{font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight-medium)}.project-grid{grid-template-columns:1fr}.entry-steps{gap:9px}.entry-steps>span{gap:4px}.entry-steps>i{width:8px}.access-card{padding:26px 16px}.upload-modal{padding:22px}.app-alert{flex-wrap:wrap}}.boq-collapse-toggle{color:var(--color-text-on-brand);white-space:nowrap;border:1px solid #ffffff30;border-radius:5px;align-items:center;gap:6px;padding:6px 8px;display:inline-flex}.boq-collapse-toggle:hover{background:#ffffff15}.item-details-toggle{color:var(--bronze);font-size:var(--font-size-sm);line-height:var(--line-height-sm);align-items:center;gap:4px;padding:2px 0;display:inline-flex}.item-details-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.slab-area{color:var(--color-text-secondary);display:block}.formwork-cell{text-align:right;font-size:var(--font-size-lg);line-height:var(--line-height-lg)}.boq-table>tbody>tr>td:nth-child(7) input{width:108px}.component-detail-row>td{white-space:normal;background:#f8fafb}.component-details{max-width:1250px;color:var(--color-text-secondary);font-size:var(--font-size);line-height:var(--line-height);grid-template-columns:minmax(240px,1fr) minmax(420px,1.4fr);gap:20px;padding:6px 0;display:grid}.component-properties,.component-rebar{flex-direction:column;gap:10px;min-width:0;display:flex}.component-details label{flex-direction:column;gap:5px;display:flex}.component-details select,.component-details textarea,.component-details :is(label,td)>input:not([type=checkbox]){width:100%;min-width:0;color:var(--color-text);background:#fff;border:1px solid #d4dce5;border-radius:5px;padding:5px 7px}.component-details textarea{resize:vertical;min-height:62px}.component-details .inline-check{flex-direction:row;align-items:center;gap:8px}.component-sources{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;display:flex}.component-sources button{text-align:left;overflow-wrap:anywhere;max-width:350px;font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);line-height:var(--line-height-sm);background:#fff8eb;border:1px solid #e1c38d;border-radius:5px;padding:7px 10px}.component-sources button span{font-weight:var(--font-weight-medium);color:var(--brand);display:block}.detail-warning,.missing-rates{color:#8a4c04}.rebar-table{table-layout:fixed;border-collapse:collapse;width:100%}.boq-table .rebar-table th{font-size:var(--font-size-xs);padding:4px;position:static}.boq-table .rebar-table td{text-align:left;min-width:0;padding:4px}.rebar-table th:last-child{width:38px}.boq-table .rebar-table input{width:100%}.evidence-zone{border:3px dashed var(--gold);pointer-events:none;z-index:3;background:#f5a62328;position:absolute}.quote-quantities{border:1px solid var(--line);background:#f8fafc;border-radius:6px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 24px 24px;padding:14px;display:grid}.quote-quantities dt{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.quote-quantities dd{font-size:var(--font-size-lg);line-height:var(--line-height-lg);font-weight:var(--font-weight-medium);margin:3px 0 0}@media (width<=899px){.boq-collapse-toggle>span{display:none}}@media (width<=540px){.takeoff-bottom-bar>span.review-progress{flex:1;width:auto}.quote-quantities{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 16px 16px}}@media (prefers-reduced-motion:reduce){.pdf-surface.focusing{transition:none}}.analysis-progress{z-index:6;border:1px solid var(--line);width:min(560px,92%);max-height:calc(100% - 100px);color:var(--color-text-secondary);font-size:var(--font-size);line-height:var(--line-height);font-variant-numeric:tabular-nums;background:#f5f8f7;border-radius:8px;gap:8px;padding:12px 16px;display:grid;position:absolute;bottom:36px;left:50%;overflow:auto;transform:translate(-50%)}.analysis-progress-heading{align-items:flex-start;gap:8px;display:flex}.analysis-progress-title{flex-wrap:wrap;flex:1;align-items:center;gap:4px 12px;min-width:0;display:flex}.analysis-progress-toggle{flex-shrink:0;margin:-4px -8px 0 0}.analysis-progress strong{font-weight:var(--font-weight-semibold)}.analysis-progress progress{width:100%;height:6px;accent-color:var(--gold)}.analysis-progress small{font-size:var(--font-size-sm);line-height:var(--line-height-sm)}.analysis-progress p,.analysis-progress ul{margin:4px 0}.analysis-progress summary{cursor:pointer}.analysis-progress .primary-button,.analysis-progress .secondary-button{justify-self:start}.analysis-pipeline-steps{font-size:var(--font-size-sm);flex-wrap:wrap;gap:8px 16px;margin:0;padding:0;list-style:none;display:flex}.analysis-pipeline-steps li[aria-current=step]{color:var(--brand);font-weight:var(--font-weight-semibold)}.analysis-pipeline-steps li[data-completed=true]{color:var(--brand)}.analysis-pipeline-error{color:#8b5b05;max-width:480px;padding:0 12px}.analysis-pipeline-complete{flex-wrap:wrap;max-width:min(560px,92%)}.analysis-missing-action{bottom:12px;left:auto;right:12px;transform:none}.analysis-reconnect{color:#8b5b05}.analysis-progress.is-minimized{width:max-content;max-width:calc(100% - 24px);max-height:none;padding:0;bottom:12px;left:auto;right:12px;transform:none;box-shadow:0 3px 12px #162a2c18}.analysis-progress-compact{min-height:38px;color:var(--brand);font-size:var(--font-size-sm);line-height:var(--line-height-sm);font-weight:var(--font-weight-medium);flex-wrap:wrap;align-items:center;gap:6px 10px;padding:8px 12px;display:flex}.analysis-progress-compact:hover{background:#e8efec}.analysis-progress-warning{color:#8b5b05;font-size:var(--font-size-xs)}.verify-all-button{white-space:nowrap;flex-shrink:0}.boq-panel>.section-heading{flex-wrap:wrap}@keyframes analysis-progress-reveal{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.analysis-progress-title,.analysis-progress-compact{animation:analysis-progress-reveal var(--motion-popover-enter) var(--motion-ease-enter)}@media (prefers-reduced-motion:reduce){.analysis-progress-title,.analysis-progress-compact{animation:none}}:is(button,input,select,textarea){transition:background-color var(--motion-interaction) ease, color var(--motion-interaction) ease, border-color var(--motion-interaction) ease, box-shadow var(--motion-interaction) ease}:is(.primary-button,.secondary-button,.gold-button):active:not(:disabled){box-shadow:inset 0 2px 4px #0002}.secondary-button:hover:not(:disabled){background:#f1f5f7;border-color:#aebfc4}.compact-actions button:hover:not(:disabled):not(.gold-button){background:#ffffff15}.compact-actions .gold-button:hover:not(:disabled),.header-action-popover .gold-button:hover:not(:disabled){color:#162a2c;background:#ffbc4b}.compact-actions .gold-button:active:not(:disabled),.header-action-popover .gold-button:active:not(:disabled){color:#162a2c;background:#e99a19}.compact-actions .gold-button:focus-visible,.header-action-popover .gold-button:focus-visible{outline-offset:3px;outline:2px solid #ffdc9e}.project-card:hover:not(:disabled){transform:translateY(-2px)}.project-card{transition:transform var(--motion-interaction) var(--motion-ease-enter), border-color var(--motion-interaction) ease, box-shadow var(--motion-interaction) ease}.project-card:disabled{box-shadow:none;border-color:var(--line);transform:none}.sheet-row{transition:background-color var(--motion-interaction) ease, color var(--motion-interaction) ease, border-color var(--motion-interaction) ease}.sheet-row:not(.active):hover{background:#edf3f3}.boq-table>tbody>tr>td{transition:background-color var(--motion-interaction) ease}.highlight-tooltip{opacity:0;visibility:hidden;transition:opacity var(--motion-popover-enter) ease, transform var(--motion-popover-enter) var(--motion-ease-enter), visibility 0s var(--motion-popover-exit);display:block;transform:translateY(3px)}.highlight-zone:hover .highlight-tooltip,.highlight-zone:focus-visible .highlight-tooltip{visibility:visible;opacity:1;transition-delay:0s;transform:none}.item-details-toggle svg,.project-picker-trigger svg,.reference-rates-toggle svg{transition:transform var(--motion-disclosure-enter) var(--motion-ease-enter)}.rotated{transform:rotate(180deg)}.project-picker-trigger{min-width:70px;max-width:230px;color:var(--color-text-on-brand);font-size:var(--font-size-lg);line-height:var(--line-height-lg);font-weight:var(--font-weight-semibold);border-radius:5px;align-items:center;gap:8px;padding:6px 8px;display:flex}.project-picker-trigger span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-picker-trigger:hover:not(:disabled),.project-picker-trigger[aria-expanded=true]{background:#ffffff12}.popover-host{color:var(--color-text);background:0 0;border:0;max-width:calc(100vw - 16px);margin:0;padding:0;position:fixed;inset:auto;overflow:visible}.popover-host[data-popover-open=false]{pointer-events:none}.popover-surface{transform-origin:0 0;background:#fff;border:1px solid #d6e0e2;border-radius:8px;padding:6px;box-shadow:0 6px 24px #162a2c24,0 2px 5px #162a2c0d}.project-picker-popover{width:min(320px,100vw - 16px)}.project-search{border:1px solid var(--line);color:var(--muted);border-radius:5px;align-items:center;gap:8px;margin:3px 3px 7px;padding:7px 8px;display:flex}.project-search:focus-within{border-color:var(--bronze);box-shadow:0 0 0 2px #f5a62318}.project-search input{width:100%;min-width:0;color:var(--color-text);font-size:var(--font-size);line-height:var(--line-height);background:0 0;border:0;outline:none;padding:0}.project-options{overscroll-behavior:contain;max-height:min(320px,100dvh - 150px);overflow:auto}.project-option{text-align:left;width:100%;color:var(--color-text);border-radius:5px;align-items:center;gap:8px;padding:9px 10px;display:flex}.project-option>span{flex:1;gap:2px;min-width:0;display:grid}.project-option b{text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size);line-height:var(--line-height);display:block;overflow:hidden}.project-option small{color:var(--muted);font-size:var(--font-size-xs);line-height:var(--line-height-xs)}.project-option.active{background:#edf3f2}.project-option[aria-selected=true]{color:var(--brand)}.project-option[aria-selected=true] svg{color:var(--bronze)}.project-options-empty{color:var(--muted);font-size:var(--font-size-sm);text-align:center;padding:18px 10px}.header-action-popover{width:208px;max-height:calc(100dvh - 24px);overflow-y:auto}.header-action-popover>div{gap:4px;display:grid}.header-action-popover button{width:100%;font-size:var(--font-size-sm);line-height:var(--line-height-sm);border-radius:5px;align-items:center;gap:8px;padding:9px 10px;display:flex}.header-action-popover button:not(.gold-button):hover:not(:disabled),.header-action-popover button:not(.gold-button):focus-visible{background:#edf3f2}.header-action-popover .gold-button{min-height:36px;color:var(--brand)}.compact-action-menu>.icon-button{color:var(--color-text-on-brand);padding:7px}.animated-dialog{width:100%;max-width:none;height:100%;max-height:none;color:var(--color-text);background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0;overflow:visible}.animated-dialog::backdrop{background:0 0}.animated-dialog .modal-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;isolation:isolate;background:0 0}.animated-dialog .modal-backdrop:before{content:"";z-index:-1;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:1;transition:opacity var(--motion-modal-enter) var(--motion-ease-enter);background:#0f2028a6;position:fixed;inset:0}.animated-dialog .modal-backdrop[data-open=false]:before{opacity:0;transition-duration:var(--motion-modal-exit);transition-timing-function:var(--motion-ease-exit)}@starting-style{.animated-dialog .modal-backdrop:before{opacity:0}}.confirm-dialog h2{margin-bottom:12px}.confirm-dialog p{color:var(--color-text-secondary);margin-bottom:24px}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.animated-reveal{overflow:hidden}.component-detail-row>td{padding:0}.component-detail-content{padding:10px 14px}.reference-rates-toggle{color:var(--bronze);text-align:left;align-items:center;gap:5px;width:100%;padding:0;display:flex}.reference-rates-content{padding-top:10px}.notice-slot .app-alert>svg{order:-1}.workspace-mode>.notice-slot{z-index:50;width:max-content;max-width:calc(100% - 24px);position:fixed;top:62px;left:50%;transform:translate(-50%)}.workspace-mode>.notice-slot .app-alert{border-radius:8px;box-shadow:0 8px 32px #0f172a20}.takeoff-workspace{transition:grid-template-columns var(--motion-panel) var(--motion-ease-enter)}.sheets-panel{transition:visibility}.sidebar-collapsed>.sheets-panel{transition:visibility 0s var(--motion-panel)}.takeoff-main{transition:grid-template-rows var(--motion-panel) var(--motion-ease-enter)}.takeoff-workspace[data-resizing=true] .takeoff-main{transition:none}.split-controls{transition:opacity var(--motion-panel) ease, visibility 0s;overflow:hidden}.maximize-pdf .boq-panel,.maximize-pdf .split-controls,.maximize-table .viewer-panel,.maximize-table .split-controls{visibility:hidden;pointer-events:none;transition:visibility 0s var(--motion-panel), opacity var(--motion-panel) ease;display:flex}.maximize-table .viewer-panel{display:block}.maximize-pdf .split-controls,.maximize-table .split-controls{opacity:0;min-height:0}.takeoff-screen:not([hidden]),.pricing-screen,.projects-page{animation:screen-enter var(--motion-screen) var(--motion-ease-enter) both}.pdf-surface.focusing{transition:transform var(--motion-disclosure-enter) var(--motion-ease-enter), width var(--motion-disclosure-enter) var(--motion-ease-enter), height var(--motion-disclosure-enter) var(--motion-ease-enter)}@keyframes screen-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (width>=1700px){.project-picker-trigger{max-width:280px}}@media (width<=899px){.takeoff-workspace,.takeoff-workspace.sidebar-collapsed{transition:none}.sheets-panel{visibility:visible;transition:transform var(--motion-panel) var(--motion-ease-enter), visibility 0s;transform:translate(0)}.sidebar-collapsed>.sheets-panel{visibility:hidden;transition:transform var(--motion-panel) var(--motion-ease-enter), visibility 0s var(--motion-panel);display:flex;transform:translate(-100%)}.sidebar-scrim{opacity:1;transition:opacity var(--motion-panel) ease, visibility 0s}.sidebar-scrim[data-open=false]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--motion-panel) ease, visibility 0s var(--motion-panel)}}@media (width<=540px){.project-picker-trigger{max-width:150px;font-size:var(--font-size);padding:6px 4px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:0s!important;transition-delay:0s!important;animation-duration:0s!important;animation-delay:0s!important}.project-card:hover:not(:disabled){transform:none}.spin{animation:none}}.quote-tools{flex-wrap:wrap;align-items:flex-start;gap:10px;margin:12px 0;display:flex}.disclosure-toggle{width:100%;min-height:36px;color:var(--brand);text-align:left;font-size:var(--font-size-sm);line-height:var(--line-height-sm);font-weight:var(--font-weight-medium);justify-content:space-between;align-items:center;gap:10px;padding:7px 0;display:flex}.disclosure-toggle>svg{transition:transform var(--motion-disclosure-enter) var(--motion-ease-enter);flex-shrink:0}.disclosure-toggle[aria-expanded=true]>svg{transform:rotate(180deg)}.disclosure-content{min-width:0}.disclosure-content>p{margin:8px 0}.disclosure-content>p:first-child{margin-top:4px}.disclosure.pricing-card{padding:12px 24px}.disclosure.pricing-card>.disclosure-toggle{min-height:40px;color:var(--color-text);font-size:var(--font-size-lg)}.pricing-card>label:not(.number-field)+label:not(.number-field){margin-top:14px}.pricing-card .disclosure-content>label.number-field>span{color:var(--color-text)}.quote-review{background:#fffaf0;border:1px solid #ead8ad;border-radius:8px;margin:0 32px 18px;padding:4px 14px}.quote-review>.disclosure-toggle{min-height:40px}.quote-review-summary{color:#785309;flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.quote-review-summary>svg{flex-shrink:0}.review-details-label{color:var(--muted);font-size:var(--font-size-xs)}.quote-review .disclosure-content{font-size:var(--font-size-sm);padding:0 2px 10px;line-height:1.6}.quote-review ul{margin:6px 0 10px;padding-left:20px}.quote-review li+li{margin-top:4px}.quote-review-notes{margin-top:12px}.row-note .disclosure-toggle{width:auto;min-height:30px;font-size:var(--font-size-xs);color:var(--muted);justify-content:flex-start;gap:4px;padding:3px 0}.row-note .disclosure-toggle>svg{width:12px;height:12px}.row-note p{font-size:var(--font-size-xs);color:var(--muted);line-height:1.5}.contractor-cost-table .cost-exclusion{color:#785309}.total-quote .quote-vat{color:var(--color-text-on-brand-secondary)}.legacy-quote-help{margin:0 24px 20px}.analysis-retry-actions{flex-wrap:wrap;gap:8px;display:flex}.analysis-progress.is-minimized .analysis-retry-actions{padding:0 10px 10px}.analysis-progress.is-minimized .analysis-retry-actions button{font-size:var(--font-size-sm);min-height:36px;padding:7px 10px}.area-conversion{border-top:1px solid var(--border,#dce3df);margin-top:16px;padding-top:12px}.area-result{flex-wrap:wrap;justify-content:space-between;gap:12px;margin:12px 0;font-size:13px;line-height:1.5;display:flex}.area-result strong{white-space:nowrap}.area-conversion>label:not(.number-field){font-size:var(--font-size-sm);color:var(--color-text-secondary);gap:6px;display:grid}.area-conversion select{border:1px solid var(--line);width:100%;min-width:0;font-size:var(--font-size-lg);color:var(--color-text);background:#fff;border-radius:5px;padding:8px 9px}.contractor-tabs{border:1px solid var(--line);background:#eef3f2;border-radius:8px;gap:4px;margin-bottom:18px;padding:4px;display:flex}.contractor-tabs button{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);border-radius:5px;flex:1;padding:9px 10px}.contractor-tabs button[aria-selected=true]{color:var(--brand);background:#fff;box-shadow:0 1px 4px #162a2c15}.contractor-quote{min-width:0}.contractor-quote h2{font-size:var(--font-size-heading);line-height:var(--line-height-heading);color:var(--color-text);margin-bottom:8px}.mobile-quote-jump{display:none}.contractor-quote h3{font-size:var(--font-size-lg);margin:20px 0 10px}.contractor-quote [role=tabpanel]:not([hidden]){animation:screen-enter var(--motion-screen) var(--motion-ease-enter) both}.contractor-table-scroll{border:1px solid var(--line);border-radius:8px;max-width:100%;margin:14px 0;overflow:auto}:is(.contractor-cost-table,.material-norm-table){border-collapse:collapse;width:100%;font-size:var(--font-size);line-height:var(--line-height);background:#fff}.contractor-cost-table{table-layout:fixed;min-width:640px}.contractor-cost-table thead th:first-child{width:33%}.contractor-cost-table thead th:nth-child(2){width:11%}.contractor-cost-table thead th:nth-child(3){width:14%}.contractor-cost-table thead th:nth-child(4){width:20%}.contractor-cost-table thead th:nth-child(5){width:22%}.material-norm-table{min-width:560px}:is(.contractor-cost-table,.material-norm-table) :is(th,td){text-align:right;vertical-align:middle;border-bottom:1px solid #e7eded;padding:9px 10px}:is(.contractor-cost-table,.material-norm-table) th{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background:#f5f8f7}:is(.contractor-cost-table,.material-norm-table) :is(th,td):first-child{text-align:left}.contractor-cost-table td:first-child{overflow-wrap:anywhere}.contractor-cost-table td:first-child>span{display:block}.contractor-cost-table td small{max-width:300px;font-size:var(--font-size-xs);line-height:var(--line-height-xs);color:var(--muted);margin-top:3px;display:block}.contractor-cost-table td:nth-child(2){text-align:center;white-space:nowrap;color:var(--muted)}.contractor-cost-table :is(td:nth-child(3),td:nth-child(5)),.material-norm-table td:nth-child(n+3){font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);white-space:nowrap}.contractor-cost-table input{border:1px solid var(--line);text-align:right;width:112px;max-width:100%;font-size:var(--font-size-lg);line-height:var(--line-height-lg);font-weight:var(--font-weight-medium);background:#fff;border-radius:4px;padding:6px}.contractor-cost-table td:nth-child(3) input{width:85px}.contractor-cost-table .contractor-group :is(th,td){color:#162a2c;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);background:#e9f0ee}.contractor-cost-table .source-link{font-size:var(--font-size-xs);margin-top:3px;padding:2px 0}.contractor-cost-table .excluded-cost{color:var(--muted);background:#f7f9f9}.contractor-cost-table input:disabled{background:#f0f3f3}.contractor-totals{border:1px solid var(--line);background:#fff;border-radius:8px;margin:18px 0;padding:14px}.contractor-totals>div{justify-content:space-between;gap:16px;padding:7px 0;display:flex}.contractor-totals dt{color:var(--color-text-secondary)}.contractor-totals dd{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);white-space:nowrap;margin:0}.norm-presets{align-items:center;gap:8px;margin-bottom:12px;display:flex}.norm-presets button{font-size:var(--font-size-sm);padding:5px 8px}:is(.norm-item-fields,.add-boq-form){gap:12px;display:grid}:is(.norm-item-fields,.add-boq-form,.pricing-card,.pricing-card>.disclosure-content)>label{font-size:var(--font-size-sm);line-height:var(--line-height-sm);color:var(--color-text-secondary);gap:6px;display:grid}:is(.norm-item-fields,.add-boq-form,.pricing-card,.pricing-card>.disclosure-content)>label>:is(input:not([type=checkbox]),select),.source-dimensions>label>input{border:1px solid var(--line);width:100%;min-width:0;font-size:var(--font-size-lg);line-height:var(--line-height-lg);color:var(--color-text);background:#fff;border-radius:5px;padding:8px 9px}.norm-item-fields>label small{font-size:var(--font-size-xs);line-height:var(--line-height-xs);color:var(--muted)}.norm-item-fields .inline-check{align-items:center;display:flex}.component-details>.norm-item-fields{padding:0 0 16px}.source-dimensions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.add-boq-form{margin-top:18px}.source-editor-dialog{width:min(720px,100vw - 28px)}.source-editor-list{margin:14px 0}.source-editor-list article{border-top:1px solid var(--line);padding:14px 0}.source-editor-list h3{font-size:var(--font-size-lg);margin-bottom:12px}.source-editor-list .inline-check{margin:12px 0 5px}.derived-badge{color:var(--muted);font-size:var(--font-size-xs);margin-top:3px;display:inline-block}.quote-source-override{justify-items:start;gap:4px;max-width:340px;margin-top:6px;display:grid}.quote-source-override .derived-badge{white-space:normal;overflow-wrap:anywhere;margin:0}@media (width<=540px){.disclosure.pricing-card{padding:10px 14px}.legacy-quote-help{margin:0 18px 18px}.quote-review{margin-inline:14px;padding:4px 10px}.quote-review-summary{gap:5px 8px}.contractor-tabs button{font-size:var(--font-size-sm);padding:8px 5px}.contractor-totals{padding:10px}.contractor-totals dt{font-size:var(--font-size-sm)}.source-dimensions{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.disclosure-toggle>svg{transition:none}}.quantity-editor{flex-direction:column;align-items:flex-end;gap:4px;min-width:88px;display:flex}.quantity-value{color:inherit;font:inherit;font-variant-numeric:tabular-nums;cursor:text;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:flex-end;align-items:center;gap:5px;padding:5px 7px;display:inline-flex}.quantity-value svg{opacity:.35;flex-shrink:0}.quantity-value:hover:not(:disabled),.quantity-value:focus-visible{background:#e7f1f3;border-color:#9cb6bd;outline:none}.quantity-editor input{text-align:right;width:120px;max-width:100%}.quantity-override-actions{align-items:center;gap:3px;display:inline-flex}.quantity-editor .quantity-override-badge{color:#087c8e;white-space:nowrap;background:#e2f5f8;border-radius:4px;padding:2px 5px;font-size:10px}.quantity-reset{color:#087c8e;cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;padding:4px;display:inline-flex}.quantity-reset:hover{background:#d0edf2}.rounding-switch{margin:0}.rounding-switch button{padding:7px 10px;font-size:12px}@media (width<=899px){.mobile-quote-jump{margin:16px 22px 0;display:flex}}.pricing-columns{grid-template-columns:minmax(300px,350px) minmax(0,1fr);align-items:start}.pricing-accordion>.disclosure-toggle{gap:14px}.pricing-accordion>.disclosure-content{padding:4px 0 14px}.pricing-settings .number-field{grid-template-columns:minmax(0,1fr) minmax(110px,46%);gap:8px}.pricing-settings .number-field input{height:42px;padding:8px}.pricing-settings .disclosure-content>label:not(.number-field):not(.inline-check){font-size:var(--font-size-sm);color:var(--color-text-secondary);gap:6px;display:grid}.pricing-settings .disclosure-content>label:not(.number-field)+label:not(.number-field){margin-top:14px}.equivalent-area-highlight{color:#785309;background:#fff5e2;border-radius:7px;padding:12px}.equivalent-area-highlight strong{color:#785309;font-size:var(--font-size-lg)}.quote-view-switch{background:#eaf0ed;border:1px solid #d9e3dd;border-radius:9px;gap:4px;width:fit-content;max-width:100%;margin:14px 0;padding:4px;display:flex}.quote-view-switch button{color:var(--muted);font-size:var(--font-size-sm);background:0 0;border:0;border-radius:6px;padding:9px 14px}.quote-view-switch button[aria-pressed=true]{color:var(--brand);background:#fff;box-shadow:0 1px 4px #162a2c16}.quote-tools{align-items:center;gap:8px}.quote-tools>.quote-view-switch{margin:0}.pricing-presets{flex:none;margin-left:auto}.pricing-menu-trigger{min-height:42px;font-size:var(--font-size-sm);white-space:nowrap;justify-content:center;align-items:center;gap:12px;padding:9px 14px;display:flex}.pricing-menu-trigger>svg{transition:transform var(--motion-interaction)}.pricing-menu-trigger[aria-expanded=true]>svg{transform:rotate(180deg)}.popover-surface.pricing-menu{width:min(304px,100vw - 16px);max-height:min(calc(100dvh - 24px), var(--popover-available-height,100dvh));overscroll-behavior:contain;scrollbar-width:thin;background:#fff;border:1px solid #d9e3df;border-radius:11px;padding:6px;overflow-y:auto;box-shadow:0 12px 36px #162a2c1c,0 2px 8px #162a2c0b}.pricing-menu-item{width:100%;min-height:44px;color:var(--brand);text-align:left;font-size:var(--font-size-sm);background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:10px 12px;line-height:1.4;display:flex}.pricing-menu-item>svg{color:#718783;flex-shrink:0}.pricing-menu-item>span{overflow-wrap:anywhere;gap:3px;min-width:0;display:grid}.pricing-menu-item small,.pricing-menu-hint{font-size:var(--font-size-xs);color:var(--muted);line-height:1.4}.pricing-menu-item:not(:disabled):hover,.pricing-menu-item:focus-visible{background:#edf4f0}.pricing-menu-group{border-top:1px solid #e8eeea;margin-top:5px;padding-top:5px}.pricing-menu-label{font-size:var(--font-size-xs);color:var(--muted);margin:5px 12px;font-weight:500}.pricing-package-item{padding-left:38px}.pricing-menu-hint{margin:5px 12px 8px}.pricing-menu-reset,.pricing-menu-reset>svg{color:#9a5143}.preset-scope-hint{color:var(--muted);font-size:var(--font-size-xs);margin:8px 0 14px;line-height:1.5}.preset-save-form{gap:14px;margin-top:20px;display:grid}.preset-save-form label{gap:8px;display:grid}.preset-save-form input{border:1px solid var(--line);border-radius:7px;width:100%;padding:10px 12px}.contractor-cost-table .quote-fold-row>td{white-space:normal;text-align:left;padding:3px 10px}.quote-fold-row .disclosure-toggle{font-size:var(--font-size-xs);color:var(--muted)}.quote-fold-row .disclosure-toggle small{margin-left:8px;font-weight:400}.reference-cost-panel>td{background:#f1f5f6}.reference-cost-panel .disclosure-toggle{color:#516877}.supplementary-cost-table{border:1px solid var(--line);margin:5px 0 10px}.supplementary-cost-table td:first-child{width:33%}.supplementary-cost-table td:nth-child(2){width:11%}.supplementary-cost-table td:nth-child(3){width:14%}.supplementary-cost-table td:nth-child(4){width:20%}.supplementary-cost-table td:nth-child(5){width:22%}.contractor-cost-table .missing-row-price{color:#8b640d;font-size:var(--font-size-xs);font-weight:500}.quote-sticky-footer{z-index:8;background:var(--brand);color:#f1f5f9;border-top:1px solid #35504b;grid-template-columns:.7fr 1.25fr 1fr;align-items:center;gap:12px 28px;padding:16px 32px;display:grid;position:sticky;bottom:0;box-shadow:0 -4px 18px #162a2c17}.quote-sticky-footer.has-missing-rates{border-top-color:var(--gold)}.quote-footer-warning{text-align:left;color:#ffcf81;font-size:var(--font-size-xs);background:0 0;border:0;grid-column:1/-1;align-items:center;gap:7px;padding:0;display:flex}.quote-footer-warning svg{flex-shrink:0}.quote-sticky-footer .equivalent-area{border:0;gap:7px;margin:0;padding:0;display:grid}.quote-sticky-footer .equivalent-area b{color:#f6c36c;font-size:17px}.quote-cost-mix>span,.quote-footer-areas>span{font-size:var(--font-size-xs);color:#b8ccc6}.quote-cost-bar{background:#ffffff15;border-radius:4px;gap:2px;height:5px;margin:8px 0;display:flex;overflow:hidden}.quote-cost-bar i{flex-basis:0;min-width:0}.quote-cost-bar .cost-part-0{background:#f5a623}.quote-cost-bar .cost-part-1{background:#9dc3ad}.quote-cost-bar .cost-part-2{background:#91adbf}.quote-cost-bar .cost-part-3{background:#cfb5dd}.quote-cost-mix dl{grid-template-columns:1fr 1fr;gap:4px 14px;margin:0;display:grid}.quote-cost-mix dl>div{gap:1px;display:grid}.quote-cost-mix dt{font-size:var(--font-size-xs);color:#b8ccc6}.quote-cost-mix dd{font-size:var(--font-size-sm);white-space:nowrap;margin:0}.quote-cost-mix dd small{color:#b8ccc6}.quote-sticky-footer .total-quote{border:0;gap:2px;padding:0;display:grid}.quote-sticky-footer .total-quote>span{color:#b8ccc6;font-size:var(--font-size-xs)}.quote-sticky-footer .total-quote strong{color:#f6c36c;white-space:nowrap;font-size:24px;line-height:1.35}.quote-sticky-footer .total-quote strong small{font-size:12px}.quote-sticky-footer .total-quote .quote-vat{color:#b8ccc6;font-size:10px}.quote-sticky-footer .per-meter{color:#b8ccc6;flex-direction:row;justify-content:space-between;align-items:center;gap:10px;margin:5px 0 0;padding:0;font-size:10px;display:flex}.quote-sticky-footer .per-meter>span{font-size:10px;line-height:16px}.quote-sticky-footer .per-meter strong{color:#f1f5f9;font-size:11px;line-height:16px}.quote-sticky-footer .per-meter small{font-size:10px}.export-audience-options{border:0;gap:10px;margin:20px 0;padding:0;display:grid}.export-audience-options legend{font-size:var(--font-size-sm);color:var(--muted);margin-bottom:10px}.export-audience-option{border:1px solid var(--line);cursor:pointer;border-radius:9px;gap:12px;padding:16px;display:flex}.export-audience-option:has(:checked){background:#eef5f0;border-color:#739888}.export-audience-option input{accent-color:#254f44;margin-top:3px}.export-audience-option span{gap:5px;display:grid}.export-audience-option small{color:var(--muted);font-weight:400;line-height:1.5}.export-quote-dialog .dialog-actions{justify-content:flex-end}.export-quote-dialog .field-error{color:#a33d2f;font-size:var(--font-size-sm)}@media (width<=1050px){.pricing-columns{grid-template-columns:minmax(285px,32%) minmax(0,1fr);gap:20px}.quote-sticky-footer{grid-template-columns:.65fr 1.1fr 1fr;gap:14px;padding:14px 24px}}@media (width<=899px){.pricing-columns{grid-template-columns:1fr}.pricing-settings .number-field input{height:48px}.quote-sticky-footer{grid-template-columns:1fr 1fr;gap:10px 18px;padding:12px 18px}.quote-footer-areas{grid-column:1/-1}.quote-sticky-footer .equivalent-area{justify-content:space-between;gap:8px;display:flex}.quote-sticky-footer .equivalent-area b{font-size:13px}.quote-sticky-footer .total-quote strong{font-size:20px}}@media (width<=480px){.quote-sticky-footer{gap:8px 14px;padding:10px 14px}.quote-cost-mix dl{gap:4px 8px}.quote-cost-mix dd{font-size:10px}.quote-cost-mix dd small{display:block}.quote-sticky-footer .per-meter{flex-wrap:wrap;gap:0;margin-top:3px}.quote-sticky-footer .total-quote strong{font-size:18px}.quote-view-switch{width:100%}.quote-view-switch button{flex:1;padding:9px 6px}.quote-tools>.rounding-switch{width:auto}.quote-tools>.rounding-switch button{white-space:nowrap;flex:none;padding:9px 8px}.pricing-menu-trigger{gap:8px;padding-inline:10px}}.access-card{max-width:440px}.auth-card-heading{color:var(--bronze);justify-content:center;align-items:center;gap:10px;margin-bottom:12px;display:flex}.auth-card-heading h2{margin:0}.auth-form{text-align:left;flex-direction:column;gap:16px;margin-top:22px;display:flex}.auth-form>small{color:var(--muted);margin-top:-8px}.auth-field{text-align:left;flex-direction:column;gap:8px;min-width:0;font-weight:500;display:flex}.auth-field input{border:1px solid var(--line);width:100%;color:var(--ink);box-sizing:border-box;background:#fff;border-radius:8px;min-width:0;padding:11px 12px}.auth-field input:focus{outline-offset:2px;border-color:var(--bronze);outline:2px solid #ba976f66}.password-control{align-items:center;display:flex;position:relative}.password-control input{padding-right:45px}.password-control>.icon-button{background:0 0;position:absolute;right:5px}.auth-error,.auth-success{text-align:left;border-radius:8px;padding:12px 14px;font-weight:400;line-height:1.6}.auth-error{background:#fff2f0;color:#a62d22!important}.auth-success{background:#eff7ee;color:#366244!important}.auth-links{margin:18px 0 12px}.auth-button-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.auth-recovery-dialog{max-width:640px}.auth-recovery-dialog h2{margin-bottom:12px}.auth-recovery-dialog p{color:var(--muted);line-height:1.7}.recovery-codes{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0;display:grid}.recovery-codes code{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;background:#f5f4f0;border-radius:6px;padding:10px;font-size:12px}.auth-secret{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;background:#f5f4f0;margin-top:10px;padding:12px;display:block}.mfa-setup{flex-direction:column;gap:14px;display:flex}.mfa-setup p{color:var(--muted)}.mfa-qr{align-self:center;width:240px;max-width:100%}.mfa-setup details{text-align:left;font-size:13px}.mfa-setup summary{cursor:pointer;color:var(--muted)}.account-menu{flex-shrink:0;margin-left:8px}.account-menu-popover{flex-direction:column;min-width:240px;padding:8px;display:flex}.account-menu-email{color:var(--muted);border-bottom:1px solid var(--line);overflow-wrap:anywhere;margin-bottom:5px;padding:10px;font-size:12px}.account-menu-popover>button{text-align:left;background:0 0;border:0;border-radius:6px;padding:11px 12px}.account-menu-popover>button:hover{background:#f5f3ed}.account-page{box-sizing:border-box;width:100%;max-width:1180px;margin:0 auto;padding:40px 32px 80px;overflow:auto}.account-page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.account-page-heading h1{margin-bottom:8px;font-size:26px}.account-page-heading p{color:var(--muted);overflow-wrap:anywhere}.account-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.account-card{border:1px solid var(--line);background:#fff;border-radius:12px;min-width:0;padding:24px}.account-card h2{margin-bottom:12px;font-size:18px}.account-card>p,.account-card>small{color:var(--muted);margin-bottom:18px;line-height:1.7}.account-card .auth-form{max-width:430px}.reauth-section{background:#fbf8f1;border:1px solid #e9dfcd;border-radius:10px;margin-bottom:24px;padding:16px 20px}.reauth-section summary{cursor:pointer;font-weight:500}.reauth-section form{max-width:430px}.admin-page>.account-card{margin-bottom:22px}.admin-invite-form,.admin-workspace-form{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.admin-invite-form>.auth-field{flex:1;max-width:440px}.admin-workspace-form>.auth-field{flex:1;min-width:220px}.admin-list{flex-direction:column;gap:0;display:flex}.admin-list-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:16px 0;display:flex}.admin-list-row:last-child{border-bottom:0}.admin-list-row strong{overflow-wrap:anywhere;font-size:14px}.admin-list-row small{color:var(--muted);overflow-wrap:anywhere;margin-top:5px;font-size:12px;display:block}.admin-list-row>div:first-child{min-width:0}.audit-target{max-width:650px}.legacy-project-list{color:var(--muted);margin-bottom:18px;padding-left:20px}@media (width<=700px){.account-page{padding:25px 16px 55px}.account-grid{grid-template-columns:1fr}.account-page-heading{flex-direction:column;align-items:start}.account-card{padding:18px}.admin-list-row{flex-wrap:wrap;align-items:start}.recovery-codes{grid-template-columns:1fr}.admin-invite-form>.auth-field,.admin-workspace-form>.auth-field{min-width:100%}.access-card{padding:26px 20px}.account-menu{margin-left:0}}:is(input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=color],[type=hidden],[type=button],[type=submit],[type=reset],[type=image]),textarea,select,.select-trigger,.number-field>div,.project-search,.select-search){transition:border-color var(--motion-field-border) ease, box-shadow var(--motion-field-ring) var(--motion-ease-enter), background-color var(--motion-field-border) ease, color var(--motion-interaction) ease}@media (hover:hover) and (pointer:fine){:is(input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=color],[type=hidden],[type=button],[type=submit],[type=reset],[type=image]),textarea,select,.select-trigger):not(:disabled,[readonly],:focus,[aria-expanded=true]):hover{border-color:var(--field-hover-border)}:is(.number-field>div,.project-search):has(input:not(:disabled,[readonly])):not(:focus-within):hover{border-color:var(--field-hover-border)}}:is(input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=color],[type=hidden],[type=button],[type=submit],[type=reset],[type=image]),textarea,select,.select-trigger):enabled:focus,.select-trigger[aria-expanded=true],:is(.number-field>div,.project-search):focus-within{border-color:var(--field-focus-border);box-shadow:var(--field-focus-ring);outline:none}:is(.number-field,.project-search,.select-search) input:enabled:focus{box-shadow:none;border-color:#0000;outline:none}.select-search:focus-within{border-bottom-color:var(--field-focus-border);box-shadow:0 1px 0 var(--field-focus-border)}@media (forced-colors:active){:is(input,textarea,select,.select-trigger):focus-visible,:is(.number-field>div,.project-search,.select-search):focus-within{outline-offset:2px;outline:2px solid highlight}:is(.number-field,.project-search,.select-search) input:enabled:focus{outline:none}}
