@import "https://fonts.googleapis.com/css2?family=Instrument+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";@import "https://fonts.googleapis.com/css2?family=Instrument+Sans:wdth,wght@75..100,400..700&family=JetBrains+Mono:wght@400;500;600&display=swap";.data-table-toolbar{min-width:0}.data-table-toolbar .quote-workspace-search{border:1px solid var(--border-color);min-width:0;max-width:100%;color:var(--text-secondary);background:var(--surface);border-radius:6px;flex:0 420px;align-items:center;gap:8px;padding-inline:10px;display:flex}.data-table-toolbar .quote-workspace-search>svg{flex:none}.data-table-toolbar .quote-workspace-search>input{width:0;min-width:0;max-width:100%;height:100%;color:var(--text-primary);background:0 0;border:0;flex:1 1 0;padding-inline:0}.data-table-checkbox{width:16px;height:16px;min-height:16px;accent-color:var(--accent);cursor:pointer;margin:0;padding:0}.data-table input[type=checkbox]:focus:not(:focus-visible){box-shadow:none;outline:none}.data-table-checkbox:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.bulk-action-panel{border:1px solid color-mix(in srgb, var(--danger) 25%, var(--border-color));color:var(--text-primary);background:var(--danger-soft);border-radius:9px;justify-content:space-between;align-items:center;gap:16px;margin:12px 0;padding:12px 14px;display:flex}.bulk-action-panel .data-table-clear-selection{white-space:nowrap;min-height:32px;padding-inline:9px}.data-table-filter-toolbar{color:var(--text-primary)}.data-table-status-row{min-width:0}.data-table-toolbar-extras{border:0;min-width:0;margin:0;padding:0;display:contents}.data-table-toolbar-extras:disabled{opacity:.58}.data-table-scroll{overscroll-behavior-inline:contain;scrollbar-gutter:stable;border:1px solid var(--border-color);background:var(--surface);max-width:100%;box-shadow:none;border-radius:9px;position:relative;overflow:auto hidden}.data-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:0;color:var(--text-primary);font-size:var(--type-table,.875rem)}.data-table :is(th,td){text-align:left;vertical-align:middle;overflow-wrap:anywhere;white-space:normal;min-width:0;line-height:1.5}.data-table thead th{border-bottom:1px solid var(--border-color);color:var(--text-secondary);background:var(--surface-muted);font-size:var(--type-table,.875rem);letter-spacing:normal;text-align:left;text-transform:none;white-space:nowrap;padding:11px 12px;font-weight:600}.data-table tbody td,.data-table tbody th{border-top:1px solid var(--border-color);text-align:left;vertical-align:middle;padding:12px}.data-table thead tr{background:var(--surface-muted)}.data-table tbody tr{background:var(--surface)}.data-table tbody tr:hover{background:color-mix(in srgb, var(--accent-soft) 42%, var(--surface))}.data-table tbody tr.bulk-selected{background:color-mix(in srgb, var(--accent-soft) 72%, var(--surface))}.data-table tbody tr:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.data-table :is(.data-table-selection-cell,.data-table-selection-heading,.table-selection-cell,.table-selection-heading){text-align:center;width:40px;min-width:40px;padding-inline:7px;overflow:visible}.data-table tbody .table-column-numeric{font-variant-numeric:tabular-nums;text-align:right}.data-table .status-pill{line-height:1.2}.data-table th{position:relative}.data-table thead th>button{white-space:nowrap;font-size:inherit;text-transform:none;letter-spacing:normal;padding-right:16px}.data-table-resize-handle{z-index:4;cursor:col-resize;touch-action:none;width:12px;display:block;position:absolute;top:0;bottom:0;right:-1px}.data-table-resize-handle:after{content:"";background:var(--border-strong);width:2px;position:absolute;top:25%;bottom:25%;right:5px}.data-table-resize-handle:hover:after,.data-table-resize-handle:focus-visible:after{background:var(--accent);width:3px}.data-table-resize-handle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.data-table-reveal{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.data-table-reveal :is(strong,small,.customer-cell-truncate){text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.data-table-reveal:focus{white-space:normal;overflow-wrap:anywhere}.data-table-reveal:focus :is(strong,small,.customer-cell-truncate){white-space:normal}.data-table-range{gap:var(--space-2);flex-wrap:wrap;display:flex}.data-table-range>input{width:130px;max-width:100%}.data-table :is(.status-pill,.quote-status-pill){width:fit-content;max-width:100%;font-size:var(--type-meta);font-weight:var(--weight-semibold);line-height:var(--line-body);border-radius:999px;align-items:center;padding:4px 9px;display:inline-flex}.data-table-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.data-table-toolbar :is(button,input):disabled,.data-table-filter-toolbar button:disabled,.data-table-filter-rows :is(button,input,select):disabled{cursor:not-allowed;opacity:.55}@media (width>=561px){.data-table tr>:is(.table-selection-cell,.table-selection-heading):first-child{z-index:2;background:inherit;position:sticky;left:0}.data-table tr>:is(.customer-actions-cell,.customer-actions-heading):last-child{z-index:2;background:inherit;position:sticky;right:0}}@media (width<=700px){.data-table-toolbar .quote-workspace-search{flex-basis:100%}.data-table-filter-toolbar{align-items:flex-start}}@media (width<=560px){.data-table-scroll.data-table-scroll{background:0 0;border:0;min-width:0;max-width:100%;overflow:visible}.data-table.data-table,.data-table tbody{table-layout:auto;min-width:0;display:block;width:100%!important}.data-table-resize-handle{display:none}.data-table-reveal,.data-table-reveal :is(strong,small,.customer-cell-truncate){white-space:normal;overflow:visible}.data-table .data-table-column-header-scroll{clip:auto;white-space:nowrap;border:1px solid var(--border-color);border-radius:8px;width:100%;height:auto;margin-bottom:9px;display:block;position:static;overflow-x:auto}.data-table .data-table-column-header-scroll tr{width:max-content;display:flex}.data-table .data-table-column-header-scroll th{flex:none;min-width:max-content;display:block}.data-table-column-header-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.data-table tbody tr{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;grid-template-columns:minmax(0,1fr);gap:0;margin:0 0 9px;padding:9px 10px;display:grid}.data-table tbody td,.data-table tbody th{overflow-wrap:anywhere;text-align:left;border:0;grid-template-columns:minmax(88px,34%) minmax(0,1fr);align-items:start;gap:8px;padding:5px 0;font-size:12px;display:grid;width:100%!important;min-width:0!important}.data-table tbody .table-column-numeric{text-align:left}.data-table tbody td:not(.data-table-selection-cell):not(.table-selection-cell):before,.data-table tbody th:not(.data-table-selection-cell):not(.table-selection-cell):before{content:attr(data-label);color:var(--text-secondary);letter-spacing:normal;text-transform:none;font-size:12px;font-weight:700}.data-table tbody :is(.data-table-selection-cell,.table-selection-cell){text-align:left;grid-column:1/-1;width:100%;padding:0 0 8px;display:block}}.data-table .data-table-column-drag{width:18px;min-width:18px;min-height:30px;color:var(--text-secondary);cursor:grab;touch-action:none;vertical-align:middle;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;margin-right:4px;font-size:16px;display:inline-flex;padding:0!important}.data-table-column-drag:hover{background:var(--accent-soft);color:var(--accent)}.data-table-column-drag>span:after{content:"⋮⋮"}.data-table-column-drag:active{cursor:grabbing}.data-table-column-drag:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.data-table th[data-drop-side=before]{box-shadow:inset 3px 0 var(--accent)}.data-table th[data-drop-side=after]{box-shadow:inset -3px 0 var(--accent)}.data-table :is(.table-selection-heading,.table-selection-cell){width:72px;min-width:72px}.data-table :is(.customer-actions-heading,.customer-actions-cell){width:110px;min-width:110px}.data-table.data-table thead th{padding-inline:8px}.data-table th .quote-sort-button{vertical-align:middle;width:auto;max-width:calc(100% - 22px);display:inline-flex}.data-table tr>:is(.table-selection-cell,.table-selection-heading):not(:first-child),.data-table tr>:is(.customer-actions-cell,.customer-actions-heading):not(:last-child),.invoice-table.data-table tbody td:not(.table-selection-cell){position:static}.data-table-filter-tools{align-items:center;gap:var(--space-2,8px);flex-wrap:wrap;min-width:0;display:contents}.data-table-toolbar .data-table-filter-tools .quote-workspace-search{min-height:var(--control-height,40px);height:var(--control-height,40px);border-radius:var(--radius-sm,6px)}.data-table-toolbar .data-table-filter-tools .data-table-add-filter{min-height:var(--control-height-compact,36px);font-size:var(--type-label,14px);border-style:solid;margin-left:0}.data-table-filter-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3,12px);border-block:1px solid var(--border-color);background:var(--surface-muted);min-width:0;padding:11px 14px;display:flex}.data-table-filter-toolbar .quote-filter-heading{min-width:0;color:var(--text-primary);font-size:var(--type-label,14px);flex-wrap:wrap;align-items:center;gap:8px 11px;display:flex}.data-table-filter-toolbar .quote-filter-heading strong{font-weight:var(--weight-semibold,600)}.data-table-filter-toolbar .quote-filter-heading>span{color:var(--text-secondary);font-size:var(--type-meta,12px);font-weight:var(--weight-regular,400)}.data-table-filter-toolbar .quote-filter-heading>span:last-child{flex-basis:100%}.data-table-filter-rows{gap:9px;padding:12px 14px;display:grid;container-type:inline-size}.data-table-filter-rows .quote-filter-row{border:1px solid var(--border-color);border-radius:var(--radius-md,8px);background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(0,.9fr) minmax(0,1.5fr) auto;align-items:start;gap:12px;min-width:0;padding:13px;display:grid}.data-table-filter-rows .quote-filter-row>label{min-width:0;color:var(--text-secondary);font-size:var(--type-meta,12px);font-weight:var(--weight-medium,500);align-content:start;gap:6px;display:grid}.data-table-filter-rows .quote-filter-row>label>span:first-child{color:var(--text-secondary);font-size:var(--type-meta,12px);font-weight:var(--weight-medium,500);letter-spacing:normal;text-transform:none}.data-table-filter-rows .quote-filter-row>label>:is(input:not([type=checkbox]),select),.data-table-filter-rows .quote-filter-row>label>.data-table-range>input{box-sizing:border-box;width:100%;min-width:0;min-height:var(--control-height,40px);border:1px solid var(--border-color);border-radius:var(--radius-sm,6px);background:var(--input-bg-color,var(--surface));height:auto;color:var(--text-primary);font:inherit;font-size:var(--type-body,14px);padding:7px 10px}.data-table-filter-rows .quote-filter-row>label>:is(input,select):focus-visible,.data-table-filter-rows .quote-filter-row>label>.data-table-range>input:focus-visible{outline:2px solid var(--focus-ring,var(--accent));outline-offset:1px;border-color:var(--accent)}.data-table-filter-rows .quote-filter-row select[multiple]{min-height:92px;padding-block:5px}.data-table-filter-rows .quote-filter-row select[multiple] option{padding:4px 6px}.data-table-filter-rows .data-table-filter-value>span:first-child{line-height:1.45}.data-table-filter-rows .filter-date-help{color:var(--text-tertiary);font-size:var(--type-meta,12px);font-weight:var(--weight-regular,400)}.data-table-filter-rows .data-table-range{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.data-table-filter-rows .data-table-range>input{width:100%}.data-table-filter-rows .data-table-multiple-choice{min-height:var(--touch-target,44px);border-radius:var(--radius-sm,6px);cursor:pointer;grid-area:2/1/auto/-1;justify-self:start;align-items:center;padding:2px 7px 2px 2px;color:var(--text-primary)!important;font-size:var(--type-meta,12px)!important;font-weight:var(--weight-medium,500)!important;gap:9px!important;display:flex!important}.data-table-filter-rows .data-table-multiple-choice:focus-within{outline:2px solid var(--focus-ring,var(--accent));outline-offset:1px}.data-table-filter-rows .quote-filter-row .data-table-multiple-choice>span{font-size:var(--type-label);font-weight:var(--weight-medium);letter-spacing:normal;text-transform:none;color:var(--text-primary)}.data-table-filter-rows .data-table-multiple-choice input[type=checkbox]{box-sizing:border-box;width:17px;min-width:17px;height:17px;min-height:17px;accent-color:var(--accent);cursor:pointer;flex:0 0 17px;margin:0;padding:0}.data-table-filter-rows .data-table-filter-actions{grid-area:1/4;grid-template-columns:auto auto;justify-content:flex-end;align-items:center;gap:8px;min-width:0;max-width:180px;padding-top:24px;display:grid}.data-table-filter-rows .data-table-filter-apply{min-height:var(--control-height-compact,36px)}.data-table-filter-state{color:var(--text-secondary);font-size:var(--type-meta,12px);white-space:nowrap;grid-column:1/-1}.data-table-filter-rows .quote-filter-row .field-error{color:var(--danger);font-size:var(--type-meta,12px);font-weight:var(--weight-regular,400);letter-spacing:normal;text-transform:none;line-height:1.4;display:block}.data-table-filter-rows [aria-invalid=true]{border-color:var(--danger)!important}.data-table-filter-rows .quote-filter-and{color:var(--text-tertiary);font-size:var(--type-meta,12px);font-weight:var(--weight-semibold,600);letter-spacing:.04em;grid-area:1/1/auto/-1;position:static;transform:none}.data-table-filter-rows .quote-filter-row:has(.quote-filter-and) .data-table-filter-actions{grid-row:2}.data-table-filter-rows .quote-filter-row:has(.quote-filter-and) .data-table-multiple-choice{grid-row:3}.data-table-filter-rows .quote-filter-remove{min-height:var(--touch-target,44px)}@media (width<=760px){.data-table-filter-rows .quote-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.data-table-filter-rows .quote-filter-row>label{min-width:0}.data-table-filter-rows .quote-filter-row .data-table-filter-actions{grid-area:auto/2;padding-top:0}.data-table-filter-rows .data-table-multiple-choice{grid-area:auto/1/auto/-1}.data-table-filter-rows .quote-filter-row:has(.quote-filter-and) :is(.data-table-filter-actions,.data-table-multiple-choice){grid-row:auto}}@container (width<=760px){.data-table-filter-rows .quote-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.data-table-filter-rows .quote-filter-row .data-table-filter-actions{grid-area:auto/2;padding-top:0}.data-table-filter-rows .data-table-multiple-choice{grid-area:auto/1/auto/-1}.data-table-filter-rows .quote-filter-row:has(.quote-filter-and) :is(.data-table-filter-actions,.data-table-multiple-choice){grid-row:auto}}@container (width<=520px){.data-table-filter-rows .quote-filter-row{grid-template-columns:minmax(0,1fr)}.data-table-filter-rows .quote-filter-and{grid-area:auto/1;position:static;transform:none}.data-table-filter-rows .quote-filter-row .data-table-filter-actions{grid-area:auto/1;justify-content:flex-start;max-width:none;padding-top:0}.data-table-filter-rows .quote-filter-row .data-table-multiple-choice{grid-area:auto/1}}@media (width<=520px){.data-table-filter-toolbar{flex-direction:column;align-items:flex-start}.data-table-filter-toolbar .quote-filter-actions{justify-content:flex-start;width:100%}.data-table-filter-rows{padding-inline:10px}.data-table-filter-rows .quote-filter-row{grid-template-columns:minmax(0,1fr);gap:10px;padding:11px}.data-table-filter-rows .quote-filter-and{grid-area:auto/1;position:static;transform:none}.data-table-filter-rows .quote-filter-row .data-table-filter-actions{grid-area:auto/1;justify-content:flex-start;padding-top:0}.data-table-filter-rows .quote-filter-row .data-table-multiple-choice{grid-area:auto/1}.data-table-filter-rows .data-table-range{grid-template-columns:minmax(0,1fr)}}:root .data-table-search.data-table-search{box-shadow:none}:root .data-table-search.data-table-search:focus-within{border-color:var(--accent);outline:2px solid var(--focus-ring,var(--accent));outline-offset:2px;box-shadow:none}:root .data-table-search.data-table-search>svg{flex:none}:root .data-table-search.data-table-search>input{height:100%;min-height:0;color:var(--text-primary);font-family:var(--font-body);font-size:13px;font-weight:var(--weight-regular,400);letter-spacing:normal;box-shadow:none;background:0 0;border:0;border-radius:0;outline:none;padding:0;line-height:1.4}:root .data-table-search.data-table-search>input::placeholder{color:var(--text-secondary);font-size:13px;font-weight:var(--weight-regular,400);opacity:1}:root .data-table-search.data-table-search>input:focus::placeholder{color:#0000}.ui-feedback{align-items:start;gap:var(--space-2);min-width:0;padding:var(--space-3);border:1px solid var(--info-border);border-radius:var(--radius-md);color:var(--info-text);background:var(--info-bg);font-size:var(--type-body);line-height:var(--line-body);grid-template-columns:20px minmax(0,1fr) auto;display:grid}.ui-feedback>svg{margin-top:2px}.ui-feedback>div{overflow-wrap:anywhere;min-width:0}.ui-feedback p:last-child{margin-bottom:0}.ui-feedback .icon-button{color:inherit;background:0 0;border-color:#0000}.ui-feedback-success{color:var(--success);background:var(--success-soft);border-color:var(--success-border)}.ui-feedback-warning{color:var(--warning-text);background:var(--warning-bg);border-color:var(--warning-border)}.ui-feedback-error{color:var(--danger);background:var(--danger-soft);border-color:var(--danger-border)}.ui-notification-area,.ui-feedback-transient{z-index:var(--layer-toast);top:var(--space-4);right:var(--page-gutter);width:min(420px, calc(100vw - 2 * var(--page-gutter)));box-sizing:border-box;position:fixed}.revision-draft-banner{margin-block:var(--space-3)}.revision-draft-banner strong{font-size:var(--type-subsection-title);font-weight:var(--weight-semibold);display:block}.revision-draft-banner p{margin-block:var(--space-2)}.revision-draft-banner ul{margin:var(--space-2) 0;padding-left:var(--space-5)}.revision-draft-banner .danger-button{margin-top:var(--space-2)}@media (width<=560px){.ui-notification-area,.ui-feedback-transient{top:auto;bottom:var(--space-4)}.revision-draft-banner .danger-button{width:100%}}.attention-modal{width:min(650px,100%)}.attention-list{overscroll-behavior:contain;scrollbar-gutter:stable;gap:7px;min-height:0;max-height:min(60vh,36rem);margin:0;padding:1px 4px 1px 1px;list-style:none;display:grid;overflow-y:auto}.attention-item{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;padding:10px 11px 10px 13px;transition:border-color .14s,background-color .14s;display:grid;position:relative}.attention-item:before{background:color-mix(in srgb, var(--accent) 58%, transparent);content:"";border-radius:0 2px 2px 0;width:2px;position:absolute;inset:8px auto 8px 0}.attention-item--amber:before,.attention-item--copper:before{background:color-mix(in srgb, var(--accent) 68%, #d69a42)}.attention-item--red:before{background:color-mix(in srgb, var(--danger) 72%, var(--accent))}.attention-item:hover{border-color:color-mix(in srgb, var(--accent) 34%, var(--border-color));background:color-mix(in srgb, var(--accent) 3%, var(--surface))}.attention-item-copy{gap:2px;min-width:0;display:grid}.attention-item-context,.attention-item-title,.attention-item-detail{overflow-wrap:anywhere;min-width:0;margin:0}.attention-item-context{color:var(--text-secondary);flex-wrap:wrap;align-items:baseline;gap:4px;font-size:.7rem;line-height:1.35;display:flex}.attention-context-separator{color:color-mix(in srgb, var(--accent) 55%, var(--text-secondary))}.attention-item-title{color:var(--text-primary);font-size:.86rem;font-weight:650;line-height:1.35}.attention-item-detail{color:var(--text-secondary);font-size:.76rem;line-height:1.4}.attention-item-action{border:1px solid color-mix(in srgb, var(--accent) 38%, var(--border-color));min-height:32px;color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--surface));font:inherit;cursor:pointer;border-radius:6px;flex:none;padding:0 10px;font-size:.76rem;font-weight:650;transition:border-color .14s,background-color .14s,color .14s}.attention-item-action:hover{border-color:var(--accent);color:var(--text-primary);background:color-mix(in srgb, var(--accent) 12%, var(--surface))}.attention-item-action:focus-visible,.attention-list:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.attention-list-empty{border:1px dashed color-mix(in srgb, var(--accent) 28%, var(--border-color));color:var(--text-secondary);background:color-mix(in srgb, var(--accent) 3%, var(--surface));text-align:center;border-radius:8px;padding:17px 14px;font-size:.84rem}@media (width<=560px){.attention-list{gap:6px;max-height:min(62vh,34rem);padding-right:2px}.attention-item{align-items:start;gap:8px;padding:9px 8px 9px 11px}.attention-item-action{align-self:center;min-height:30px;padding-inline:8px;font-size:.72rem}}@media (prefers-reduced-motion:reduce){.attention-item,.attention-item-action{transition:none}}.quote-recovery-awareness{color:var(--text-secondary);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-bottom:10px;font-size:.8rem;display:flex}.roadmap-notify-button{isolation:isolate;position:relative}.roadmap-notify-button.has-unsent-changes{border-color:color-mix(in srgb, var(--accent) 65%, var(--border-color));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 12%, transparent), 0 0 18px color-mix(in srgb, var(--accent) 28%, transparent)}.roadmap-notify-button.has-unsent-changes:after{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;top:5px;right:5px}.roadmap-publish-modal{width:min(920px,100%)}.roadmap-publish-form{gap:18px;display:grid}.roadmap-publish-section-heading{justify-content:space-between;align-items:start;gap:14px;display:flex}.roadmap-publish-section-heading h3,.roadmap-publish-section-heading h4{margin:0}.roadmap-publish-section-heading h3{font-size:1rem}.roadmap-change-summary,.roadmap-publish-recipients,.roadmap-email-preview{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:10px;gap:14px;padding:16px;display:grid}.roadmap-change-state{color:var(--text-secondary);background:var(--surface);border-radius:999px;flex:none;align-items:center;gap:6px;padding:5px 8px;font-size:.74rem;font-weight:700;display:inline-flex}.roadmap-change-state i{background:var(--text-secondary);border-radius:50%;width:7px;height:7px;display:block}.roadmap-change-state.changed{color:var(--accent)}.roadmap-change-state.changed i{background:var(--accent)}.roadmap-change-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.roadmap-change-groups section{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;min-width:0;padding:12px}.roadmap-change-groups h4{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0 0 9px;font-size:.76rem}.roadmap-change-groups ul,.roadmap-publish-recipients ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.roadmap-change-groups li{border:1px solid var(--border-color);border-radius:7px;gap:6px;min-width:0;padding:9px;display:grid}.roadmap-change-groups li>strong{overflow-wrap:anywhere;font-size:.84rem}.roadmap-before-after{color:var(--text-secondary);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:6px;font-size:.78rem;display:grid}.roadmap-before-after>span{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.roadmap-before-after small,.roadmap-change-groups li>small{color:var(--text-secondary);font-size:.7rem}.roadmap-publish-recipients li{border:1px solid var(--border-color);background:var(--surface);border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.roadmap-publish-recipients li>span{gap:2px;min-width:0;display:grid}.roadmap-publish-recipients li small{overflow-wrap:anywhere;color:var(--text-secondary)}.roadmap-publish-recipients li em{color:var(--danger);flex:none;font-size:.73rem;font-style:normal;font-weight:700}.roadmap-publish-recipients li.missing-email{border-style:dashed}.roadmap-email-fields{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:14px;display:grid}.roadmap-email-fields .field{align-content:start;gap:7px;display:grid}.roadmap-email-fields textarea{resize:vertical;min-height:170px}.roadmap-recipient-select{color:var(--text-secondary);grid-template-columns:auto minmax(180px,1fr);align-items:center;gap:8px;font-size:.78rem;display:grid}.roadmap-email-preview-card{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;min-height:150px;padding:16px}.roadmap-email-preview-card>p{color:var(--text-secondary);margin:0 0 7px;font-size:.8rem}.roadmap-rendered-email{border-top:1px solid var(--border-color);overflow-wrap:anywhere;margin-top:14px;padding-top:14px;line-height:1.55}.roadmap-rendered-email-text{white-space:pre-wrap}.roadmap-preview-status,.roadmap-preview-empty{color:var(--text-secondary);margin:0}.roadmap-publish-error{border:1px solid color-mix(in srgb, var(--danger) 35%, var(--border-color));color:var(--danger);background:var(--danger-soft);border-radius:8px;gap:6px;padding:11px 12px;display:grid}.roadmap-publish-error .small-button{justify-self:start}.roadmap-publish-actions{justify-content:flex-end;gap:9px;padding-top:2px;display:flex}@media (width<=680px){.roadmap-change-groups,.roadmap-email-fields{grid-template-columns:1fr}.roadmap-publish-section-heading,.roadmap-publish-recipients li{flex-direction:column;align-items:start}.roadmap-recipient-select{grid-template-columns:1fr;width:100%}.roadmap-recipient-select select{min-width:0}.roadmap-publish-actions{grid-template-columns:1fr 1fr;display:grid}}@media (prefers-reduced-motion:reduce){.roadmap-notify-button.has-unsent-changes{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}}.notifications-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.notification-mark-read{min-height:24px;font-size:11px}.notification-status{color:var(--success);font-size:11px;font-weight:600}.notification-row.is-read .notification-copy strong{font-weight:500}.marketing-page,.login-page{min-height:100vh;color:var(--text-primary);background:var(--app-bg)}.marketing-nav{border-bottom:1px solid var(--border-color);background:var(--surface);justify-content:space-between;align-items:center;gap:18px;min-height:76px;padding:16px clamp(18px,4vw,54px);display:flex}.marketing-actions,.hero-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.marketing-hero{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:center;gap:clamp(24px,5vw,76px);min-height:calc(100vh - 76px);padding:clamp(30px,6vw,78px) clamp(18px,5vw,72px);display:grid;position:relative;overflow:hidden}.hero-media{z-index:0;opacity:.18;position:absolute;inset:0}.hero-media img{object-fit:cover;width:100%;height:100%}.marketing-hero:after{content:"";z-index:1;background:linear-gradient(90deg, var(--app-bg) 0%, #f4f5f7eb 42%, #f4f5f7c7 100%);position:absolute;inset:0}[data-theme=dark] .marketing-hero:after{background:linear-gradient(90deg, var(--app-bg) 0%, #111827f0 42%, #111827c7 100%)}.hero-copy,.hero-dashboard{z-index:2;position:relative}.security-badge{width:fit-content;min-height:32px;color:var(--success);background:var(--success-soft);border-radius:999px;align-items:center;gap:8px;padding:0 11px;font-size:.86rem;font-weight:700;display:inline-flex}.hero-copy h1{letter-spacing:0;margin-top:22px;font-size:clamp(3.4rem,8vw,6.8rem);line-height:.92}.hero-copy p{max-width:680px;color:var(--text-secondary);margin:24px 0 30px;font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.65}.hero-dashboard{border:1px solid var(--border-color);background:color-mix(in srgb, var(--surface) 92%, transparent);border-radius:8px;justify-self:end;gap:16px;width:min(100%,520px);padding:18px;display:grid;box-shadow:0 24px 70px #0f172a2e}.preview-top{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:end;gap:18px;padding:6px 4px 14px;display:flex}.preview-top span,.preview-grid span,.preview-flow span{color:var(--text-secondary);font-size:.82rem}.preview-top strong{font-size:1.9rem}.preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.preview-grid div{background:var(--surface-muted);border-radius:8px;gap:10px;padding:14px;display:grid}.preview-flow{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.preview-flow div{gap:8px;display:grid}.preview-flow i{background:var(--surface-muted);border-radius:999px;height:7px}.preview-flow .done i{background:var(--accent)}.marketing-modules{background:var(--border-color);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;padding:1px;display:grid}.marketing-modules article{background:var(--surface);min-height:170px;padding:clamp(20px,4vw,34px)}.marketing-modules h2{letter-spacing:0;margin-bottom:12px;font-size:1.05rem}.marketing-modules p{color:var(--text-secondary);line-height:1.6}.login-page{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 12%, transparent), transparent 35%), var(--app-bg);place-items:center;padding:24px;display:grid}.login-panel{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;gap:22px;width:min(100%,460px);padding:24px;display:grid;box-shadow:0 24px 70px #0f172a29}.back-button{width:fit-content;color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.login-heading{gap:10px;display:grid}.login-heading h1{letter-spacing:0;font-size:2rem}.login-heading span{color:var(--accent);font-weight:700}.login-heading p{color:var(--text-secondary);line-height:1.6}.login-form{gap:14px;display:grid}.auth-form-grid,.auth-phone-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.auth-phone-grid{grid-template-columns:minmax(120px,.35fr) minmax(0,1fr)}.auth-field{min-width:0}.auth-field input{width:100%}.auth-field.has-error input{border-color:#b42318;box-shadow:0 0 0 3px #b423181f}.field-error,.field-hint{font-size:.78rem;font-weight:500;line-height:1.4;display:block}.field-error{color:#b42318}.field-hint{color:var(--text-secondary)}input:focus::placeholder,textarea:focus::placeholder{color:#0000}.auth-form-error{color:#8a1c13;background:color-mix(in srgb, #b42318 8%, var(--surface));border:1px solid #b4231847;border-radius:8px;padding:11px 12px;font-size:.9rem}.auth-form-success{color:var(--success);border:1px solid color-mix(in srgb, var(--success) 28%, transparent);background:var(--success-soft);border-radius:8px;padding:11px 12px;font-size:.9rem}.mandatory-password-page{min-height:100vh}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.auth-loading-page{min-height:100vh}.auth-loading-card{color:var(--text-secondary);justify-items:center;gap:18px;display:grid}.auth-spinner{border:3px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;width:30px;height:30px;animation:.8s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}.email-settings-form{padding-top:16px}.email-settings-form .email-settings-actions,.email-settings-form .email-settings-message{grid-column:1/-1}.email-settings-actions{padding-top:6px}.email-settings-message{border:1px solid var(--border-color);color:var(--text-secondary);background:var(--surface-muted);border-radius:8px;padding:11px 12px;font-size:.82rem}.email-delivery-history{border-top:1px solid var(--border-color);margin-top:10px;padding-top:18px}.email-delivery-heading,.email-delivery-row,.email-delivery-actions{align-items:center;gap:12px;display:flex}.email-delivery-heading,.email-delivery-row{justify-content:space-between}.email-delivery-heading h3{margin:0;font-size:15px}.email-delivery-list{gap:8px;margin-top:12px;display:grid}.email-delivery-row{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;padding:12px}.email-delivery-row>div:first-child{gap:3px;min-width:0;display:grid}.email-delivery-row small{display:block}.email-template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:4px 18px 20px;display:grid}.email-template-card{border:1px solid var(--border-color);min-width:0;color:var(--text-primary);background:var(--surface);text-align:left;cursor:pointer;border-radius:10px;gap:9px;padding:16px;display:grid}.email-template-card:hover,.email-template-card:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.email-template-card-heading{color:var(--accent);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.email-template-card-heading strong{color:var(--text-primary)}.email-template-card-heading small{color:var(--text-secondary);background:var(--surface-muted);white-space:nowrap;border-radius:999px;padding:4px 7px}.email-template-card>span:not(.email-template-card-heading),.email-template-card>small{color:var(--text-secondary);font-size:12px;line-height:1.5}.email-template-card .email-template-subject{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.email-template-modal{width:min(760px,100vw - 32px)}.email-template-form{gap:16px;display:grid}.email-template-form textarea{resize:vertical;min-height:230px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.5}.email-template-placeholders{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:9px;gap:8px;padding:14px;display:grid}.email-template-placeholders h3,.email-template-placeholders p{margin:0}.email-template-placeholders>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.email-template-placeholders>div>span{gap:3px;min-width:0;display:grid}.email-template-placeholders code{color:var(--accent);font-size:12px;font-weight:700}.email-template-placeholders small{color:var(--text-secondary);line-height:1.4}@media (width<=720px){.email-template-grid,.email-template-placeholders>div{grid-template-columns:1fr}.email-template-card-heading{grid-template-columns:auto minmax(0,1fr)}.email-template-card-heading small{grid-column:2;justify-self:start}}.email-delivery-actions{text-transform:capitalize}.email-delivery-row.failed{border-color:#ef9a9a}.email-config-state{color:var(--danger);background:var(--danger-soft);border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:700}.email-config-state.configured{color:var(--success);background:var(--success-soft)}.app-shell{background:var(--app-bg);min-height:100vh;color:var(--text-primary);grid-template-columns:280px minmax(0,1fr);transition:grid-template-columns .2s;display:grid}.sidebar{border-right:1px solid var(--border-color);background:var(--surface-strong);height:100vh;padding:22px 16px;position:sticky;top:0;overflow-y:auto}.brand{align-items:center;gap:12px;padding:0 8px 24px;display:flex}.brand-home-button{min-width:0;color:var(--text-primary);text-align:left;background:0 0;align-items:center;gap:12px;padding:0;display:flex}.brand-home-button:hover strong{color:var(--accent)}.brand-copy{min-width:0}.brand-mark{color:#fff;background:var(--accent);border-radius:8px;flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid}.brand strong,.brand span{display:block}.brand strong{font-size:1.1rem}.nav-collapse-button{width:36px;height:36px;color:var(--text-secondary);border:1px solid var(--border-color);background:var(--surface);border-radius:8px;flex:0 0 36px;place-items:center;margin-left:auto;display:grid}.side-nav{gap:4px;display:grid}.side-nav button,.record-row,.stat-card,.icon-button,.small-button,.primary-button,.danger-button{border-radius:8px}.side-nav button{width:100%;color:var(--text-secondary);text-align:left;align-items:center;gap:10px;padding:11px 12px;display:flex}.side-nav button:hover,.side-nav button.active{color:var(--text-primary);background:var(--hover-bg)}.sidebar.collapsed{padding-inline:12px;overflow-x:hidden}.sidebar.collapsed .brand{justify-content:center;gap:0;padding-inline:0}.sidebar.collapsed .brand-copy,.sidebar.collapsed .side-nav span{opacity:0;pointer-events:none;width:0;overflow:hidden}.sidebar.collapsed .brand-mark{display:none}.sidebar.collapsed .nav-collapse-button{margin-left:0}.sidebar.collapsed .side-nav button{justify-content:center;gap:0;padding-inline:0}.workspace{min-width:0;padding:24px}.topbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.eyebrow{color:var(--text-secondary);margin-bottom:4px;font-size:.82rem}.topbar-actions,.button-row,.panel-header,.tool-strip{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.notice{color:var(--accent);font-size:.9rem}.email-delivery-failed-notice{color:var(--danger);font-size:.9rem;font-weight:650;line-height:1.45}.workspace-conflict-notice{border:1px solid color-mix(in srgb, var(--danger) 35%, var(--border-color));color:var(--danger);background:var(--danger-soft);border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin:0 0 18px;padding:14px 16px;display:grid}.workspace-conflict-copy{gap:3px;min-width:0;display:grid}.workspace-conflict-copy strong{color:var(--text-primary);font-size:13px}.workspace-conflict-copy span{color:var(--text-secondary);font-size:11px;line-height:1.45}.workspace-conflict-safe-alternative{font-weight:650;color:var(--text-primary)!important}.workspace-conflict-error{font-weight:700;color:var(--danger)!important}.workspace-conflict-result{border:1px solid color-mix(in srgb, var(--success) 35%, var(--border-color));color:var(--text-primary);background:color-mix(in srgb, var(--success) 10%, var(--surface));border-radius:10px;align-items:center;gap:8px;margin:0 0 18px;padding:12px 16px;display:flex}.workspace-conflict-result:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.workspace-conflict-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.quote-conflict-comparison{border:1px solid color-mix(in srgb, var(--accent) 24%, var(--border-color));color:var(--text-primary);background:color-mix(in srgb, var(--surface) 94%, var(--accent) 6%);border-radius:8px;gap:16px;padding:16px;display:grid}.modal-card.quote-conflict-dialog{width:min(820px,100%)}.modal-card.quote-conflict-dialog .modal-content{overscroll-behavior:contain;overflow:auto}.modal-card.quote-conflict-confirmation{width:min(540px,100%)}.quote-conflict-comparison:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.quote-conflict-comparison>header,.quote-conflict-column-labels,.quote-conflict-values{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.quote-conflict-comparison>header{grid-template-columns:minmax(0,1fr) minmax(280px,1fr);align-items:end}.quote-conflict-comparison>header>div:first-child{gap:3px;display:grid}.quote-conflict-comparison>header span,.quote-conflict-comparison small,.quote-conflict-empty{color:var(--text-secondary);font-size:11px}.quote-conflict-comparison h3{margin:0 0 8px;font-size:12px}.quote-conflict-column-labels span,.quote-conflict-values small{font-weight:700}.quote-conflict-change-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.quote-conflict-change-list li{border:1px solid color-mix(in srgb, var(--border-color) 82%, var(--accent) 18%);background:var(--surface);border-radius:7px;grid-template-columns:minmax(130px,.55fr) minmax(280px,1fr);align-items:start;gap:12px;padding:10px;display:grid}.quote-conflict-change-list li>strong{font-size:12px}.quote-conflict-values>span{overflow-wrap:anywhere;gap:3px;min-width:0;font-size:12px;display:grid}.quote-conflict-draft-presence{border:1px solid var(--border-color);border-radius:7px;padding:10px}.quote-conflict-empty{margin:0}.quote-conflict-lifecycle-summary,.quote-conflict-no-difference{color:var(--text-secondary);background:color-mix(in srgb, var(--accent) 8%, var(--surface));border-radius:7px;margin:0;padding:10px 12px;font-size:12px;line-height:1.45}.quote-conflict-no-difference{color:var(--text-primary);border:1px solid color-mix(in srgb, var(--accent) 22%, var(--border-color))}@media (width<=960px){.workspace-conflict-notice{grid-template-columns:auto minmax(0,1fr)}.workspace-conflict-actions{grid-column:1/-1;justify-content:flex-start}}@media (width<=620px){.workspace-conflict-notice{align-items:start}.workspace-conflict-actions{width:100%;display:grid}.workspace-conflict-actions button{width:100%}.quote-conflict-comparison>header,.quote-conflict-change-list li{grid-template-columns:1fr}.quote-conflict-column-labels{display:none}.quote-conflict-values{grid-template-columns:1fr}.quote-conflict-values>span{background:var(--surface-muted);border-radius:6px;padding:8px}}.primary-button,.small-button,.danger-button,.icon-button{min-height:38px;color:var(--text-primary);border:1px solid var(--border-color);background:var(--surface);justify-content:center;align-items:center;gap:7px;padding:0 13px;display:inline-flex}.primary-button{color:var(--text-on-accent);background:var(--accent);border-color:var(--accent)}.danger-button{color:var(--danger)}.icon-button{width:38px;padding:0}.page-grid{gap:18px;min-width:0;display:grid}.split-grid,.crud-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;min-width:0;display:grid}.panel{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;min-width:0;padding:18px}.panel-header{justify-content:space-between;margin-bottom:16px}.record-list{gap:8px;display:grid}.crud-library{min-width:0}.record-card-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;display:grid}.record-card{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:10px;flex-direction:column;justify-content:space-between;gap:18px;min-width:0;min-height:164px;padding:16px;display:flex}.record-card.selected{border-color:color-mix(in srgb, var(--accent) 55%, var(--border-color))}.record-card-body{gap:6px;min-width:0;display:grid}.record-card-body strong{color:var(--text-primary);text-overflow:ellipsis;font-size:1rem;line-height:1.3;overflow:hidden}.record-card-body span,.record-card-body small{overflow-wrap:anywhere;color:var(--text-secondary);line-height:1.45}.record-card-body span{font-size:.82rem}.record-card-body small{font-size:.75rem}.record-card-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.record-card-actions .danger-button{margin-left:auto}body.modal-open{overflow:hidden}.modal-backdrop{z-index:var(--layer-dialog);background:color-mix(in srgb, var(--brand-black) 58%, transparent);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--border-color);border-radius:var(--radius-dialog);background:var(--surface);width:min(760px,100%);min-width:0;max-height:min(860px,100dvh - 48px);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.modal-card.template-modal{width:min(1080px,100%)}.modal-card.quote-delete-dialog{width:min(500px,100%)}.quote-delete-warning{align-items:flex-start;gap:14px;display:flex}.quote-delete-warning>span{width:40px;height:40px;color:var(--danger);background:var(--danger-soft);border-radius:50%;flex:none;place-items:center;display:grid}.quote-delete-warning p{margin:0;line-height:1.55}.quote-delete-warning p+p{color:var(--text-secondary);margin-top:6px}.quote-delete-warning .quote-delete-related{border-left:3px solid var(--danger);color:var(--text-primary);background:var(--danger-soft);border-radius:6px;margin-top:14px;padding:11px 12px;font-size:.9rem}.quote-delete-actions{border-top:1px solid var(--border-color);justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;display:flex}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.modal-header h2{font-size:var(--type-section-title);font-weight:var(--weight-semibold);line-height:var(--line-heading);letter-spacing:0;margin:0}.modal-close{width:36px;height:36px;color:var(--text-secondary);border:1px solid var(--border-color);background:var(--surface);border-radius:8px;flex:none;place-items:center;padding:0;display:grid}.modal-close:hover{color:var(--text-primary);background:var(--hover-bg)}.modal-content{overscroll-behavior:contain;min-height:0;padding:20px;overflow-y:auto}.quote-creation-modal{width:min(520px,100%)}.quote-creation-form{gap:22px;display:grid}.quote-creation-intro{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:10px;align-items:flex-start;gap:12px;padding:14px;display:flex}.quote-creation-icon{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:9px;flex:none;place-items:center;display:grid}.quote-creation-intro strong{color:var(--text-primary);font-size:13px;display:block}.quote-creation-intro p{color:var(--text-secondary);margin:4px 0 0;font-size:11px;line-height:1.55}.quote-name-field{gap:7px;display:grid}.quote-name-field input{box-sizing:border-box;width:100%}.quote-name-field input:focus::placeholder{color:#0000}.quote-name-field small{color:var(--text-secondary);font-size:10px;font-weight:400}.quote-creation-actions{justify-content:flex-end;gap:9px;padding-top:2px;display:flex}.modal-related-records{gap:12px;display:grid}.record-row{width:100%;color:var(--text-primary);background:var(--surface-muted);text-align:left;border:1px solid #0000;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.record-row:hover,.record-row.selected{border-color:var(--accent)}.record-row span,.muted,.task-card p,.template-card p,.empty-state p{color:var(--text-secondary)}.record-row strong,.record-row span{display:block}.record-row span{margin-top:4px;font-size:.82rem}.compact .record-row{padding:9px 10px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.field-full-width,.phone-field{grid-column:1/-1}.phone-input-group{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8px;display:grid}.phone-input-group select,.phone-input-group input{min-width:0}.contractor-phone-field{grid-column:1/-1;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);gap:13px;display:grid}.form-error{color:#8a1c13;background:color-mix(in srgb, #b42318 8%, var(--surface));border:1px solid #b4231847;border-radius:8px;margin-top:14px;padding:11px 12px;font-size:.88rem;line-height:1.45}.form-success{color:var(--success);border:1px solid color-mix(in srgb, var(--success) 28%, transparent);background:var(--success-soft);border-radius:8px;margin-top:14px;padding:11px 12px;font-size:.88rem;line-height:1.45}.price-list-editor{grid-template-columns:minmax(0,1fr) 270px;gap:14px;padding-bottom:2px;display:grid}.price-list-editor-heading{border-bottom:1px solid var(--border-color);grid-column:1;padding:13px 14px;font-size:12px}.price-list-form-grid{grid-column:1;padding:0 14px 14px}.price-list-editor .field-full-width{margin-top:2px}.price-list-editor .field-full-width textarea{min-height:150px}.price-list-rate-note{color:var(--text-secondary);border:1px solid var(--border-color);background:var(--surface-muted);border-radius:8px;grid-column:1/-1;padding:10px 12px;font-size:.78rem;line-height:1.5}.price-list-total{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;grid-area:1/2/span 2;grid-template-columns:1fr;align-self:start;gap:7px;margin:0;padding:16px;display:grid}.price-list-total span{color:var(--text-secondary);font-size:.76rem;font-weight:700}.price-list-total strong{color:var(--text-primary);font-variant-numeric:tabular-nums;grid-column:1;font-size:1.6rem}.price-list-total small{color:var(--text-secondary);font-size:.72rem}.price-list-total-meta{border-top:1px solid var(--border-color);gap:7px;margin:10px -16px -16px;padding:12px 16px;display:grid}.price-list-total-meta div{justify-content:space-between;gap:12px;display:flex}.price-list-total-meta dt,.price-list-total-meta dd{color:var(--text-secondary);margin:0;font-size:10px}.price-list-total-meta dd{color:var(--text-primary);font-variant-numeric:tabular-nums}.price-list-editor .form-error,.price-list-editor .form-success{grid-column:1}.price-list-editor-actions{grid-column:2;align-self:start;gap:8px;border:0!important;margin:0!important;padding:0!important;display:grid!important}.price-list-editor-actions button{width:100%}.price-list-detail-panel{background:0 0;border:0;max-width:none;padding:0}.customer-picker-row{gap:8px;display:flex}.customer-picker-row select{min-width:0}.customer-picker-row .small-button{flex:none}.inline-customer-form{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:8px;grid-column:1/-1;gap:14px;padding:16px;display:grid}.field,.tool-strip label{color:var(--text-secondary);text-transform:capitalize;gap:6px;font-size:.78rem;display:grid}input,select,textarea{width:100%;min-height:40px;color:var(--text-primary);background:var(--input-bg-color);border:1px solid var(--border-color);font:inherit;border-radius:8px;padding:9px 10px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}input:disabled,select:disabled,textarea:disabled,button:disabled{opacity:.68;cursor:not-allowed}textarea{resize:vertical;min-height:112px}.lock-banner{margin-bottom:var(--space-3);color:var(--warning-text);background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:var(--radius-md);font-size:var(--type-body);line-height:var(--line-body);padding:10px 12px}.email-quote-grid{grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:18px;display:grid}.email-quote-copy{align-content:start;gap:16px;display:grid}.email-quote-copy p{color:var(--text-secondary);line-height:1.6}.email-recipient{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:8px;gap:5px;padding:13px;display:grid}.email-recipient span{color:var(--text-secondary);font-size:.78rem}.email-recipient strong{overflow-wrap:anywhere}.email-quote-form{gap:12px;display:grid}.tool-strip{margin-bottom:14px}.tool-strip label{min-width:220px}.print-document{color:#202124;background:#fff;border-radius:8px;padding:24px}.print-document h2{color:#1b1d22;letter-spacing:0}.print-document p,.print-document span{color:#4b5563}.doc-grid{grid-template-columns:1fr 1fr;gap:18px;margin:18px 0;display:grid}.doc-grid div,.totals{gap:4px;display:grid}.print-document table{border-collapse:collapse;width:100%;margin:18px 0}.print-document th,.print-document td{text-align:left;border-bottom:1px solid #e5e7eb;padding:9px}.totals{justify-items:end}.task-board,.template-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.task-card,.template-card{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:8px;gap:14px;padding:14px;display:grid}.task-card h3,.template-card h3{letter-spacing:0;margin:8px 0 4px;font-size:1rem}.template-card-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.template-card-heading>strong{color:var(--text-secondary);flex:none;font-size:.78rem}.template-card-notes{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.template-editor{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}.template-main-column,.template-summary-column{gap:14px;min-width:0;display:grid}.template-panel,.template-summary-card{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;min-width:0}.template-panel>h3,.template-items-heading{border-bottom:1px solid var(--border-color);margin:0;padding:13px 16px}.template-panel h3{letter-spacing:0;font-size:14px}.template-details-grid{grid-template-columns:minmax(0,1fr);gap:12px;padding:16px;display:grid}.template-notes-field{grid-column:1/-1}.template-items-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.template-items-heading p{color:var(--text-secondary);margin:4px 0 0;font-size:12px;line-height:1.45}.template-items-scroll{width:100%;min-width:0;max-width:100%;overflow:hidden}.template-items-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.template-item-headings,.template-item-row{grid-template-columns:16px minmax(180px,1fr) minmax(220px,1.5fr) 34px;align-items:center;gap:7px;min-width:0;display:grid}.template-item-headings{z-index:2;color:var(--text-secondary);border-bottom:1px solid var(--border-color);letter-spacing:.035em;text-transform:uppercase;background:#f5f7f9;padding:8px 12px;font-size:9px;font-weight:700;position:sticky;top:0}.template-summary-card{grid-template-columns:auto auto minmax(260px,1fr) minmax(220px,.9fr);align-items:center;gap:16px;padding:13px 16px;display:grid}.template-summary-card>span{color:var(--text-secondary);text-transform:uppercase;font-size:11px;font-weight:700;display:block}.template-summary-card>strong{font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-size:26px;display:block}.template-summary-card p{border-left:1px solid var(--border-color);color:var(--text-secondary);margin:0;padding-left:16px;font-size:11px;line-height:1.5}.template-summary-counts{border-block:0;border-left:1px solid var(--border-color);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 16px;display:grid}.template-summary-counts span{color:var(--text-secondary);gap:2px;font-size:9px;line-height:1.25;display:grid}.template-summary-counts b{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:14px}.template-summary-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.template-summary-actions button{width:auto}.template-summary-actions .template-cancel-button{order:-1}.template-item-drag{color:#a7adb6;place-items:center;display:grid}.template-item-field{min-width:0;margin:0;display:block}.template-item-field>span:first-child,.template-item-actions>span:first-child{display:none}.template-item-field>input,.template-item-field>select{width:100%;min-width:0}.template-item-quantity input,.template-item-amount input{font-variant-numeric:tabular-nums;text-align:right}.template-item-total output{overflow-wrap:anywhere;min-width:0;color:var(--text-primary);font-variant-numeric:tabular-nums;text-align:right;font-size:11px;font-weight:700;display:block}.template-sync-status{white-space:normal;width:max-content;max-width:100%;min-height:20px;color:var(--text-secondary);background:var(--surface-muted);border-radius:999px;align-items:center;padding:3px 7px;font-size:9px;font-weight:700;line-height:1.2;display:inline-flex}.template-sync-status.current{color:var(--success);background:var(--success-soft)}.template-sync-status.out-of-sync{color:var(--warning-text);background:var(--warning-bg)}.template-sync-status.missing{color:var(--danger);background:var(--danger-soft)}.template-item-actions{place-items:center;display:grid}.template-cancel-button{justify-content:center;width:100%}.task-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.status-pill{min-height:24px;color:var(--accent);background:var(--accent-soft);border-radius:999px;align-items:center;padding:0 9px;font-size:.74rem;display:inline-flex}.status-pill.delayed{color:var(--danger);background:var(--danger-soft)}.status-pill.early,.status-pill.on-time{color:var(--success);background:var(--success-soft)}.data-table{overflow-x:auto}.table-row{border-bottom:1px solid var(--border-color);grid-template-columns:1.1fr 1fr 80px 90px 100px 1.5fr;gap:12px;min-width:860px;padding:11px 0;display:grid}.table-row.header{color:var(--text-secondary);font-size:.8rem}.panel-title-note{color:var(--accent);background:var(--accent-soft);vertical-align:middle;border-radius:999px;margin-left:8px;padding:4px 7px;font-size:.68rem;font-weight:700;display:inline-flex}.template-items{gap:0;width:100%;min-width:100%;display:grid}.template-item-entry{border-bottom:1px solid var(--border-color);gap:0;padding:6px 12px;transition:background-color .15s,box-shadow .15s;display:grid}.template-item-entry:hover{background:#fafbfc}.template-item-entry:focus-within{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.template-item-row{align-items:center;gap:8px;display:grid}.template-editor input,.template-editor textarea{min-height:34px}.template-item-row input,.template-item-row select{border-color:#dfe3e8;border-radius:5px;height:30px;min-height:30px;padding:0 8px;font-size:12px;line-height:1.2}.template-item-row input[readonly]{color:var(--text-primary);background:#fafbfc}.template-item-actions .icon-button{width:30px;height:30px;color:var(--text-tertiary);border-color:#0000}.template-item-actions .icon-button:hover{color:var(--danger);background:var(--danger-soft)}.template-sync-notice,.template-item-warning,.template-item-missing{color:var(--warning-text);background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:7px;align-items:center;gap:7px;padding:8px 10px;font-size:.75rem;line-height:1.35;display:flex}.template-sync-notice{align-items:flex-start}.template-item-warning{flex-wrap:wrap;margin:7px 52px 1px 30px}.template-item-warning .text-button{min-height:24px;margin-left:auto;padding:0 7px}.template-item-missing{color:var(--text-secondary);background:var(--surface);border-color:var(--border-color);margin:7px 52px 1px 30px}.template-editor textarea{min-height:62px}.template-library-notice{border:1px solid var(--border-color);background:var(--surface);color:var(--text-secondary);border-radius:7px;align-items:flex-start;gap:8px;margin:-8px 2px -4px;padding:9px 11px;font-size:10px;line-height:1.45;display:flex}.template-library-notice svg{flex:none;margin-top:1px}.template-table-view{padding:0;overflow:hidden}.template-table-view .library-table-toolbar{border-bottom:1px solid var(--border-color);margin:0;padding:11px 12px}.template-table-view .quote-filter-toolbar{padding:10px 12px}.template-table-view .library-table-scroll{border:0;border-radius:0}.template-library-table tbody th{font-weight:700}.template-detail-panel{background:0 0;border:0;max-width:none;padding:0}@media (width<=1050px){.template-summary-card{grid-template-columns:auto 1fr minmax(250px,1fr)}.template-summary-card p{border-top:1px solid var(--border-color);border-left:0;grid-column:1/-1;padding:10px 0 0}}@media (width<=1100px){.template-details-grid{grid-template-columns:1fr}.template-notes-field{grid-column:auto}.template-items-heading{flex-direction:column;align-items:flex-start}.template-items-heading .button-row{width:100%}.template-items-heading .button-row button{flex:1}.template-summary-card{padding:16px;display:block}.template-summary-card>strong{margin:7px 0 12px}.template-summary-counts{border-block:1px solid var(--border-color);border-left:0;gap:6px;padding:10px 0}.template-summary-card p{border:0;margin:12px 0 0;padding:0}.template-summary-actions{display:grid}.template-summary-actions button{width:100%}.template-summary-actions .template-cancel-button{order:0}.template-items-scroll{padding:0;overflow:visible}.template-item-headings{display:none}.template-items{background:var(--surface-muted);gap:12px;min-width:0;padding:12px}.template-item-entry{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;min-width:0;padding:14px}.template-item-row{grid-template-columns:minmax(0,1fr);grid-template-areas:"item""notes""actions";align-items:start;gap:13px 10px;min-width:0}.template-item-drag{display:none}.template-item-name{grid-area:item}.template-item-notes{grid-area:notes}.template-item-actions{grid-area:actions}.template-item-field>span:first-child,.template-item-actions>span:first-child{color:var(--text-secondary);margin-bottom:5px;font-size:12px;font-weight:700;display:block}.template-item-field input,.template-item-field select{min-height:44px}.template-item-total output{text-align:left;padding:5px 0;font-size:14px}.template-item-actions{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-top:10px;display:flex}.template-item-actions>span:first-child{margin:0}.template-item-actions .icon-button{width:44px;height:44px;color:var(--danger);background:var(--danger-soft)}.template-item-warning,.template-item-missing{flex-direction:column;align-items:flex-start;margin:12px 0 0;padding:10px}.template-item-warning .text-button{justify-content:center;width:100%;min-height:44px;margin:2px 0 0}}@media (prefers-reduced-motion:reduce){.template-item-entry{transition:none}}.settings-page{align-content:start}.settings-page-heading{gap:4px;display:grid}.settings-page-heading h2{letter-spacing:-.03em;margin:0;font-size:24px}.settings-page-heading p,.settings-page-description{color:var(--text-secondary);margin:0;font-size:12px}.settings-tab-list{border-bottom:1px solid var(--border-color);gap:24px;padding:0;display:flex;overflow-x:auto}.settings-tab{min-height:40px;color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;flex:none;padding:8px 0 10px;font-weight:700}.settings-tab:hover{color:var(--text-primary)}.settings-tab.active{border-bottom-color:var(--text-primary);color:var(--text-primary);box-shadow:none;background:0 0}.settings-tab:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 34%, transparent);outline-offset:1px}.settings-tab-panel:focus{outline:none}@media (width<=520px){.settings-tab-list{gap:2px;padding:3px}.settings-tab{white-space:normal;min-width:min(100%,156px);padding-inline:11px;font-size:.88rem}}.settings-notes{grid-column:1/-1}.settings-notes textarea{min-height:96px}.settings-company-card{max-width:760px;padding:0}.settings-company-card>.form-grid,.settings-company-form{padding:16px 18px 0}.settings-company-form{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-company-form .settings-notes{grid-column:1/-1}.settings-company-form .profile-settings-actions{grid-column:1/-1;margin-inline:-18px}.profile-settings-actions>:first-child:not(:last-child){margin-right:auto}.settings-suffix-input{position:relative}.settings-suffix-input input{padding-right:58px}.settings-suffix-input span{color:var(--text-secondary);font-size:11px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.settings-form-actions{justify-content:flex-end;align-items:center;gap:12px;padding:14px 18px;display:flex}.settings-save-state{color:var(--text-secondary);margin-right:auto;font-size:11px}.settings-danger-panel{border:1px solid color-mix(in srgb,var(--danger) 25%,var(--border-color));background:var(--surface);border-radius:8px;justify-content:space-between;align-items:center;gap:20px;max-width:760px;padding:14px 18px;display:flex}.settings-danger-panel .danger-zone-copy strong{color:var(--danger)}.settings-danger-panel p{max-width:600px;color:var(--text-secondary);margin:4px 0 0;font-size:11px;line-height:1.45}.email-template-layout{grid-template-columns:minmax(220px,290px) minmax(0,1fr);align-items:start;gap:14px;display:grid}.email-template-layout>.email-settings-message{grid-column:1/-1}.email-template-list,.email-template-editor{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;overflow:hidden}.email-template-list{padding:4px;display:grid}.email-template-card{border:0;border-radius:6px;gap:4px;padding:11px 10px}.email-template-card.active{background:var(--surface-muted)}.email-template-card-heading{grid-template-columns:auto minmax(0,1fr) auto}.email-template-card-heading strong{font-size:12px}.email-template-card-heading small{border:1px solid var(--border-color);background:var(--surface);font-size:9px}.email-template-card>span:not(.email-template-card-heading){padding-left:22px;font-size:10px}.email-template-editor>header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.email-template-editor h3{margin:0;font-size:14px}.email-template-editor header small{color:var(--text-secondary);font-size:10px}.email-template-editor .email-template-form{padding:14px 16px 0}.email-template-form textarea{min-height:190px;font-family:inherit}.email-template-preview{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:7px;gap:10px;padding:14px;display:grid}.email-template-preview>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.email-template-preview .eyebrow{margin:0 0 2px;font-size:9px}.email-template-preview h4{margin:0;font-size:12px}.email-template-preview-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.email-template-preview-viewport{border:1px solid var(--border-color);background:var(--surface);border-radius:5px;display:flex;overflow:hidden}.email-template-preview-viewport button{border:0;border-right:1px solid var(--border-color);min-height:28px;color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;padding:4px 7px;font-size:10px;font-weight:700}.email-template-preview-viewport button:last-child{border-right:0}.email-template-preview-viewport button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}.email-template-preview-viewport button:focus-visible{z-index:1;outline:2px solid var(--accent);outline-offset:-2px;position:relative}.email-template-preview-viewport span{font-size:9px;font-weight:400}.email-template-preview-state{color:var(--text-secondary);font-size:10px}.email-template-preview-notice{color:var(--text-secondary);margin:0;font-size:10px;line-height:1.4}.email-template-preview-canvas{width:100%;max-width:100%;overflow:hidden}.email-template-preview-canvas-content{transform-origin:0 0}.email-template-preview-frame{box-shadow:inset 0 0 0 1px var(--border-color);background:#fff;border-radius:5px;overflow:hidden}.email-template-preview-frame>p{border-bottom:1px solid var(--border-color);background:#f7f8f6;gap:8px;margin:0;padding:8px 10px;font-size:11px;font-weight:700;display:flex}.email-template-preview-frame>p span{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;flex:none;font-size:9px}.email-template-preview iframe{background:#fff;border:0;width:100%;height:300px;display:block}.email-template-preview-error{color:#a12424;margin:0;font-size:11px;line-height:1.45}.email-template-placeholders{background:0 0;border:0;padding:0}.email-template-placeholders p{font-size:11px}.email-template-placeholders p span{color:var(--text-secondary)}.email-template-placeholders>div{flex-wrap:wrap;gap:5px;display:flex}.email-template-placeholders button{border:1px solid var(--border-color);background:var(--surface);cursor:pointer;border-radius:5px;padding:4px 7px}.email-template-placeholders code{color:var(--text-primary);font-size:9px}.email-delivery-layout{grid-template-columns:minmax(0,1fr) 230px;align-items:start;gap:14px;display:grid}.email-delivery-layout>.muted{grid-column:1/-1}.email-delivery-settings-panel{padding:0}.email-delivery-settings-panel>.muted{padding:0 18px}.email-settings-form{padding:14px 18px 0}.email-api-key-field{grid-column:1/-1}.settings-test-action{color:var(--text-secondary);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-size:11px;display:flex}.email-settings-form .settings-test-action{grid-column:1/-1}.email-settings-actions{padding-right:0}.email-delivery-summary{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;padding:16px}.email-delivery-summary>strong{align-items:center;gap:6px;margin:10px 0 12px;font-size:13px;display:flex}.email-delivery-summary>strong i{background:var(--danger);border-radius:50%;width:7px;height:7px}.email-delivery-summary>strong.connected i{background:var(--success)}.email-delivery-summary dl{gap:7px;margin:0;display:grid}.email-delivery-summary dl div{justify-content:space-between;gap:10px;font-size:10px;display:flex}.email-delivery-summary dt{color:var(--text-secondary)}.email-delivery-summary dd{text-align:right;margin:0}.email-delivery-summary .text-button{color:var(--danger);margin-top:12px;padding:0;font-size:10px}.email-delivery-history{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;grid-column:1/-1;margin:0;padding:0;overflow:hidden}.email-delivery-heading{border-bottom:1px solid var(--border-color);padding:13px 16px}.email-delivery-heading h3{font-size:13px}.email-delivery-heading p{color:var(--text-secondary);margin:3px 0 0;font-size:10px}.email-delivery-table-wrap{max-width:100%;overflow-x:auto}.email-delivery-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:10px}.email-delivery-table th,.email-delivery-table td{border-bottom:1px solid var(--border-color);text-align:left;text-overflow:ellipsis;white-space:nowrap;padding:9px 12px;overflow:hidden}.email-delivery-table th{color:var(--text-secondary);text-transform:uppercase;font-size:9px}.email-delivery-table th:first-child{width:18%}.email-delivery-table th:nth-child(2){width:24%}.email-delivery-table th:nth-child(3){width:18%}.email-delivery-table th:nth-child(4){width:12%}.email-delivery-table th:nth-child(5){width:20%}.email-delivery-table th:nth-child(6){width:80px}.email-delivery-table td small{text-overflow:ellipsis;display:block;overflow:hidden}.email-delivery-table-wrap footer{color:var(--text-secondary);padding:10px 16px;font-size:10px}.email-delivery-badge{text-transform:capitalize;border-radius:99px;padding:3px 7px;display:inline-flex}.email-delivery-badge.pending,.email-delivery-badge.processing{color:#315b9b;background:#edf4ff}.email-delivery-badge.sent{color:var(--success);background:var(--success-soft)}.email-delivery-badge.failed{color:var(--danger);background:var(--danger-soft)}.email-delivery-empty{padding:18px}@media (width<=900px){.email-template-layout,.email-delivery-layout{grid-template-columns:1fr}.email-template-list{grid-template-columns:repeat(2,minmax(0,1fr))}.email-delivery-summary{grid-row:2}.email-delivery-history{grid-column:1}}@media (width<=620px){.settings-company-form,.email-template-list{grid-template-columns:1fr}.settings-danger-panel,.email-template-editor>header,.email-delivery-heading,.email-template-preview>header,.email-template-preview-controls{flex-direction:column;align-items:flex-start}.email-template-preview iframe{height:340px}.settings-form-actions{flex-wrap:wrap}.email-delivery-table{min-width:720px}.settings-page-heading h2{font-size:21px}}.health-list,.section-divider{gap:12px;display:grid}.section-divider{border-top:1px solid var(--border-color);margin-top:18px;padding-top:18px}.health-row{color:var(--danger);gap:8px;display:flex}.empty-state{text-align:center;justify-items:center;gap:8px;padding:42px 20px;display:grid}.metric-bar{gap:8px;margin-bottom:14px;display:grid}.metric-bar div{justify-content:space-between;gap:14px;display:flex}.metric-bar i{background:var(--surface-muted);border-radius:999px;height:8px;overflow:hidden}.metric-bar em{background:var(--accent);height:100%;display:block}@media (width<=1100px){.marketing-hero,.marketing-modules{grid-template-columns:1fr}.hero-dashboard{justify-self:stretch}.app-shell,.app-shell.nav-collapsed{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border-color);height:auto;position:static}.side-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar.collapsed{padding:16px}.sidebar.collapsed .brand{justify-content:space-between;padding-bottom:0}.sidebar.collapsed .brand-mark{display:grid}.sidebar.collapsed .side-nav{display:none}.split-grid,.crud-layout{grid-template-columns:1fr}}@media (width<=720px){.marketing-nav,.marketing-actions,.hero-actions{flex-direction:column;align-items:stretch}.marketing-actions button,.hero-actions button{width:100%}.auth-form-grid,.auth-phone-grid{grid-template-columns:1fr}.preview-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace,.sidebar{padding:16px}.topbar,.topbar-actions{flex-direction:column;align-items:stretch}.form-grid,.contractor-phone-field,.doc-grid,.task-fields,.email-quote-grid,.record-card-grid,.template-grid{grid-template-columns:1fr}.modal-backdrop{align-items:end;padding:0}.modal-card,.modal-card.template-modal{border-radius:14px 14px 0 0;width:100%;max-height:calc(100dvh - 12px)}.modal-header{padding:14px 16px}.modal-content{padding:16px}.quote-creation-actions{flex-direction:column-reverse;align-items:stretch}.quote-creation-actions button{width:100%}.record-card-actions{align-items:stretch}.record-card-actions button{flex:1}.record-card-actions .danger-button{margin-left:0}.price-list-total{grid-template-columns:1fr;align-items:start}.price-list-total strong{grid-area:auto/1}}@media print{.sidebar,.topbar,.quote-list{display:none}.app-shell,.workspace{background:#fff;padding:0;display:block}.panel{border:0;padding:0}}.sidebar{background:var(--sidebar);color:#fff;border:0;flex-direction:column;width:252px;padding:0 12px;display:flex;overflow:auto}.brand{border-bottom:1px solid #ffffff14;align-items:center;gap:8px;min-height:72px;padding:0 8px;display:flex}.brand-home-button{min-width:0;color:inherit;text-align:left;background:0 0;border:0;flex:1;padding:0}.siteflow-logo{align-items:center;gap:11px;display:flex}.siteflow-logo>span:last-child{flex-direction:column;min-width:0;display:flex}.siteflow-logo strong{letter-spacing:.08em;text-transform:uppercase;font-size:17px}.siteflow-logo small{color:var(--text-secondary);white-space:nowrap;margin-top:2px;font-size:9px}.brand-emblem{object-fit:cover;border:1px solid color-mix(in srgb,var(--brand-blue) 42%,var(--border-color));width:34px;height:34px;box-shadow:var(--shadow-sm);border-radius:9px;flex:none;display:block}.nav-collapse-button{color:#98a2b3;background:0 0;border:0;border-radius:7px;padding:7px}.workspace-switcher{color:#fff;text-align:left;background:#ffffff0e;border:1px solid #ffffff17;border-radius:9px;align-items:center;gap:9px;margin:14px 2px 10px;padding:9px;display:flex}.workspace-switcher>span:nth-child(2){flex-direction:column;flex:1;min-width:0;display:flex}.workspace-switcher strong{white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.workspace-switcher small{color:#98a2b3;font-size:10px}.workspace-avatar,.user-chip>span{background:#3a3e46;border-radius:7px;flex:none;place-items:center;width:28px;height:28px;font-size:10px;font-weight:700;display:grid}.side-nav{flex-direction:column;gap:4px;padding:3px 0 16px;display:flex}.nav-group p{letter-spacing:.08em;text-transform:uppercase;color:#7f8997;margin:0;padding:12px 10px 5px;font-size:10px}.side-nav button{color:#b8c0cc;background:0 0;border:0;border-radius:7px;align-items:center;gap:11px;width:100%;height:39px;padding:0 10px;font-size:13px;font-weight:500;display:flex;position:relative}.side-nav button.active{color:#fff;background:color-mix(in srgb,var(--brand-blue) 24%,transparent)}.side-nav button.active:before{content:"";background:var(--brand-blue);border-radius:3px;width:3px;height:20px;position:absolute;left:-2px}.sidebar-footer{border-top:1px solid #ffffff14;margin-top:auto;padding:10px 0}.user-chip{align-items:center;gap:10px;padding:10px;display:flex}.user-chip div{flex-direction:column;display:flex}.user-chip strong{font-size:12px}.user-chip small{color:#98a2b3;font-size:10px}.nav-collapsed{grid-template-columns:72px minmax(0,1fr)}.sidebar.collapsed{width:72px}.collapsed .workspace-switcher>span:not(:first-child),.collapsed .nav-group p,.collapsed .side-nav span,.collapsed .sidebar-footer span,.collapsed .user-chip div{display:none}.collapsed .workspace-switcher,.collapsed .side-nav button{justify-content:center}.collapsed .brand{justify-content:center;padding:0}.collapsed .brand-home-button{display:none}.workspace{min-width:0}.topbar{background:color-mix(in srgb,var(--surface) 96%,transparent);border-bottom:1px solid var(--border-color);z-index:20;align-items:center;height:72px;padding:0 28px;display:flex;position:sticky;top:0}.page-context{min-width:0}.topbar h1{letter-spacing:-.02em;margin:2px 0 0;font-size:19px}.eyebrow{color:var(--text-secondary);text-transform:none;letter-spacing:0;margin:0;font-size:11px}.topbar-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.icon-button,.notification-center{position:relative}.notification-trigger{z-index:1}.notification-count{border:2px solid var(--surface);background:var(--accent);color:#fff;border-radius:99px;place-items:center;min-width:16px;height:16px;padding:0 4px;font-size:9px;font-weight:700;line-height:1;display:grid;position:absolute;top:-5px;right:-5px}.notifications-panel{background:var(--surface);border:1px solid var(--border-color);z-index:40;border-radius:10px;outline:none;width:min(390px,100vw - 32px);padding:14px;position:absolute;top:46px;right:0;box-shadow:0 14px 34px #1b1d2229}.notifications-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;gap:15px;padding:2px 2px 12px;display:flex}.notifications-header h2{margin:3px 0 0;font-size:16px}.notifications-list{max-height:min(460px,100vh - 150px);margin:0 -4px;overflow-y:auto}.notification-row{text-align:left;border:0;border-bottom:1px solid var(--border-color);width:100%;color:var(--text-primary);background:0 0;grid-template-columns:8px minmax(0,1fr) auto;gap:10px;padding:13px 6px;display:grid}.notification-row:hover,.notification-row:focus-visible{background:var(--hover-bg);outline:none}.notification-indicator{background:var(--accent);border-radius:50%;width:8px;height:8px;margin-top:4px}.notification-indicator.overdue_task{background:var(--danger)}.notification-indicator.unassigned_task,.notification-indicator.missing_start_date{background:var(--warning-text)}.notification-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.notification-copy strong{font-size:12px}.notification-copy span{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.notification-copy small{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.notification-row time{color:var(--text-secondary);white-space:nowrap;font-size:10px}.notifications-empty{text-align:center;flex-direction:column;align-items:center;gap:7px;padding:30px 12px 18px;display:flex}.notifications-empty svg{color:var(--success)}.notifications-empty strong{font-size:13px}.notifications-empty p{max-width:260px;color:var(--text-secondary);margin:0;font-size:11px;line-height:1.5}.page-grid,.crud-layout,.workspace>.panel,.workspace>.task-board{margin:0;padding:24px 28px}.dashboard-intro{justify-content:space-between;align-items:flex-end;display:flex}.dashboard-intro h2{letter-spacing:-.035em;margin-bottom:5px;font-size:26px}.dashboard-intro p{color:var(--text-secondary);margin:0;font-size:13px}.primary-button,.small-button,.danger-button,.icon-button,.text-button{border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:36px;font-size:12px;font-weight:600;display:inline-flex}.primary-button{background:var(--accent);border:1px solid var(--accent);color:#fff;padding:0 14px}.primary-button:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.primary-button.large,.small-button.large{height:44px;padding:0 18px;font-size:13px}.small-button{background:var(--surface);border:1px solid var(--border-color);color:var(--text-primary);padding:0 12px}.small-button:hover{background:var(--hover-bg);border-color:#cbd5e1}.text-button{color:var(--accent);background:0 0;border:0;padding:0 5px}.danger-button{color:var(--danger);background:var(--surface);border:1px solid #fecaca;padding:0 12px}.icon-button{background:var(--surface);border:1px solid var(--border-color);width:36px;color:var(--text-secondary)}.stat-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.stat-card{border:1px solid var(--border-color);background:var(--surface);min-width:0;min-height:80px;box-shadow:none;color:var(--text-primary);font:inherit;text-align:left;border-radius:8px;align-content:center;justify-items:start;gap:3px;padding:10px 14px;line-height:1.3;display:grid}.stat-card:where(button){cursor:pointer;width:100%}.stat-card:where(button):hover{border-color:var(--border-strong);background:var(--hover-bg)}.stat-card:where(button):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.stat-card-label{color:var(--text-secondary);font-size:11px;font-weight:500;line-height:1.3;display:block}.stat-card strong{overflow-wrap:anywhere;min-width:0;max-width:100%;font-family:var(--numeric-font-family);font-size:21px;font-weight:var(--numeric-weight-strong);font-feature-settings:"tnum" 1,"lnum" 1;font-variant-numeric:var(--numeric-tabular);letter-spacing:-.035em;line-height:1.18;display:block}.stat-card small{color:var(--text-secondary);font-size:10px;line-height:1.35}.stat-card.warning strong{color:var(--danger)}.panel{border:1px solid var(--border-color);background:var(--surface);box-shadow:none;border-radius:10px;overflow:visible}.panel-header{border-bottom:1px solid var(--border-color);min-height:54px;padding:0 18px}.panel-header h2{letter-spacing:-.015em;font-size:15px}.panel-meta{color:var(--text-secondary);font-size:11px}.dashboard-main-grid{grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);gap:16px;display:grid}.split-grid{gap:16px}.chart-summary{align-items:center;gap:12px;padding:18px 20px 0;display:flex}.chart-summary strong{font-size:24px}.chart-summary span{color:var(--success);background:var(--success-soft);border-radius:99px;gap:4px;padding:4px 7px;font-size:11px;display:flex}.revenue-chart{border-bottom:1px solid var(--border-color);background:repeating-linear-gradient(to top,transparent 0,transparent 48px,var(--border-color) 49px);align-items:flex-end;gap:8%;height:150px;margin:12px 24px 0;display:flex}.revenue-chart i{background:var(--accent-soft);border-top:2px solid var(--accent);border-radius:5px 5px 0 0;flex:1;max-width:42px}.chart-labels{color:var(--text-secondary);justify-content:space-between;padding:8px 28px 17px;font-size:10px;display:flex}.health-list{padding:4px 16px}.attention-row{border-bottom:1px solid var(--border-color);align-items:center;gap:11px;padding:14px 0;display:flex}.attention-row:last-child{border:0}.attention-row>div{flex-direction:column;flex:1;min-width:0;display:flex}.attention-row strong{font-size:12px}.attention-row small{color:var(--text-secondary);margin-top:3px;font-size:10px}.attention-row button{color:var(--accent);background:0 0;border:0;font-size:11px;font-weight:600}.severity{border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.severity.amber{background:var(--warning-bg);color:var(--warning-text)}.severity.copper{background:var(--accent-soft);color:var(--accent)}.severity.red{background:var(--danger-soft);color:var(--danger)}.record-list{padding:6px}.record-row{border-bottom:1px solid var(--border-color);border-radius:6px;min-height:58px;padding:10px 12px}.record-row:hover{background:var(--hover-bg)}.record-row.selected{background:var(--accent-soft);box-shadow:inset 3px 0 var(--accent)}.record-row span,.record-row small{font-size:11px}.record-row b{font-variant-numeric:tabular-nums;font-size:12px}.status-pill{text-transform:capitalize;border-radius:99px;padding:4px 8px;font-weight:600;font-size:10px!important}.status-pill.open{background:var(--accent-soft);color:var(--accent)}.status-pill.approved,.status-pill.completed{background:var(--success-soft);color:var(--success)}.status-pill.ongoing{background:var(--accent-soft);color:var(--accent)}.status-pill.invoiced{background:var(--surface-muted);color:var(--text-secondary)}.schedule-preview{padding:4px 18px}.schedule-preview>div{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;padding:12px 0;display:flex}.schedule-preview time{color:var(--accent);font-size:10px;font-weight:700}.schedule-preview span{flex-direction:column;display:flex}.schedule-preview strong{font-size:12px}.schedule-preview small{color:var(--text-secondary);font-size:10px}.field{color:var(--text-secondary);text-transform:none;letter-spacing:0;gap:6px;font-size:11px;font-weight:600}.field input,.field select,.field textarea,input,select,textarea{border:1px solid var(--border-color);background:var(--input-bg-color);min-height:40px;color:var(--text-primary);border-radius:7px;padding:8px 10px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:0}.form-grid{gap:14px}.empty-state{padding:30px 18px}.empty-state svg{color:#98a2b3}.empty-state h3{font-size:13px}.empty-state p{font-size:11px}.marketing-page{background:var(--surface);color:var(--text-primary);min-height:100vh;overflow:hidden}.marketing-nav{justify-content:space-between;align-items:center;max-width:1180px;height:76px;margin:auto;padding:0 24px;display:flex}.marketing-nav .siteflow-logo small{color:var(--text-secondary)}.marketing-links{color:var(--text-secondary);gap:28px;font-size:13px;display:flex}.marketing-actions{align-items:center;gap:10px;display:flex}.marketing-hero{grid-template-columns:.9fr 1.1fr;align-items:center;gap:68px;max-width:1180px;margin:auto;padding:76px 24px 72px;display:grid;position:relative}.marketing-hero:before{content:"";background-image:linear-gradient(color-mix(in srgb,var(--brand-blue) 7%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--brand-blue) 7%,transparent) 1px,transparent 1px);z-index:0;background-size:32px 32px;position:absolute;inset:0 -30vw;-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000)}.hero-copy,.hero-dashboard{position:relative}.hero-copy h1{letter-spacing:-.055em;color:var(--text-primary);margin:20px 0;font-size:52px;line-height:1.04}.hero-copy>p{color:var(--text-secondary);max-width:610px;font-size:17px;line-height:1.65}.security-badge{color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:99px;align-items:center;gap:7px;padding:6px 10px;font-size:11px;font-weight:600;display:inline-flex}.trust-note{color:var(--text-secondary);align-items:center;gap:6px;margin-top:14px;display:flex}.hero-dashboard{background:var(--surface-strong);border:1px solid var(--border-color);height:430px;box-shadow:var(--shadow-lg);border-radius:14px;grid-template-columns:64px 1fr;display:grid;overflow:hidden;transform:perspective(1200px)rotateY(-2deg)}.mock-sidebar{background:var(--brand-charcoal);flex-direction:column;gap:18px;padding:18px 15px;display:flex}.mock-sidebar .brand-emblem{width:30px;height:30px}.mock-sidebar>i{background:#3e4752;border-radius:4px;width:30px;height:7px}.mock-sidebar>i:nth-of-type(2){background:var(--brand-blue)}.mock-main{min-width:0;padding:20px}.preview-top{justify-content:space-between;align-items:center;font-size:12px;display:flex}.preview-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0;display:grid}.preview-grid>div{background:var(--surface);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:6px;padding:13px;display:flex}.preview-grid span,.preview-grid small{color:var(--text-secondary);font-size:9px}.preview-grid b{font-size:16px}.mock-chart{background:var(--surface);border:1px solid var(--border-color);border-radius:9px;height:220px;padding:16px}.mock-chart>div{justify-content:space-between;font-size:10px;display:flex}.mock-chart svg{width:100%;height:160px;margin-top:15px;overflow:visible}.mock-chart path{fill:none;stroke:var(--brand-blue);stroke-width:3px;vector-effect:non-scaling-stroke}.mock-chart path.area{fill:var(--accent-soft);stroke:none}.logo-strip{border-block:1px solid var(--border-color);text-align:center;padding:28px 24px}.logo-strip p{text-transform:uppercase;letter-spacing:.12em;color:var(--text-secondary);font-size:10px}.logo-strip div{max-width:900px;color:var(--text-secondary);letter-spacing:.06em;justify-content:space-between;gap:30px;margin:auto;font-size:13px;display:flex}.marketing-section,.workflow-section,.pricing-preview,.faq,.testimonial{max-width:1120px;margin:auto;padding:100px 24px}.section-heading{max-width:700px;margin-bottom:44px}.section-heading>span,.workflow-section>div>span,.pricing-preview>div>span{color:var(--accent);letter-spacing:.1em;font-size:11px;font-weight:700}.section-heading h2,.workflow-section h2,.pricing-preview h2,.final-cta h2{letter-spacing:-.045em;margin:12px 0;font-size:36px;line-height:1.15}.section-heading p,.workflow-section p,.pricing-preview p{color:var(--text-secondary);line-height:1.6}.benefit-grid,.feature-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.benefit-grid article,.feature-grid article{border-top:2px solid var(--border-color);padding:26px 0}.benefit-grid article>span{color:var(--accent);font-size:11px}.benefit-grid h3,.feature-grid h3{margin:18px 0 8px;font-size:18px}.benefit-grid p,.feature-grid p{color:var(--text-secondary);font-size:13px;line-height:1.6}.feature-grid article{border:1px solid var(--border-color);border-radius:10px;padding:24px}.feature-grid svg{color:var(--accent)}.workflow-section{background:var(--brand-charcoal);color:#fff;grid-template-columns:1fr 1fr;gap:80px;max-width:none;padding-inline:max(24px,50vw - 536px);display:grid}.workflow-section p{color:var(--brand-light-silver)}.workflow-section ol{margin:0;padding:0;list-style:none}.workflow-section li{border-bottom:1px solid #3e4752;gap:16px;padding:18px 0;display:flex}.workflow-section li>b{background:var(--brand-blue);border-radius:50%;place-items:center;width:30px;height:30px;font-size:11px;display:grid}.workflow-section li>span{flex-direction:column;gap:5px;display:flex}.workflow-section li small{color:var(--brand-light-silver)}.testimonial{text-align:center;max-width:850px}.testimonial blockquote{letter-spacing:-.025em;margin:0 0 26px;font-size:26px;line-height:1.45}.testimonial p{flex-direction:column;font-size:12px;display:flex}.testimonial p span{color:var(--text-secondary);margin-top:5px}.pricing-preview{grid-template-columns:1fr 380px;align-items:center;gap:80px;display:grid}.pricing-preview article{border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:12px;padding:30px}.pricing-preview h3{margin:12px 0;font-size:34px}.pricing-preview h3 span{color:var(--text-secondary);font-size:13px;font-weight:400}.pricing-preview ul{color:var(--text-secondary);padding:0;font-size:13px;line-height:2.2;list-style:none}.pricing-preview li:before{content:"✓";color:var(--success);margin-right:9px}.pricing-preview button{width:100%}.faq{max-width:760px}.faq details{border-top:1px solid var(--border-color);padding:20px 0}.faq summary{cursor:pointer;font-weight:600}.faq details p{color:var(--text-secondary);margin:12px 0 0;font-size:13px;line-height:1.6}.final-cta{text-align:center;background:var(--accent-soft);padding:80px 24px}.final-cta .siteflow-logo{justify-content:center}.final-cta p{color:var(--text-secondary)}.marketing-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;max-width:1120px;margin:auto;padding:38px 24px;display:flex}.marketing-footer p{color:var(--text-secondary);margin:0;font-size:11px}.marketing-footer>div{gap:22px;font-size:12px;display:flex}.marketing-footer button{background:0 0;border:0}@media (width<=1180px){.dashboard-main-grid{grid-template-columns:1fr}}@media (width<=900px){.marketing-links{display:none}.marketing-hero{grid-template-columns:1fr;padding-top:50px}.hero-copy{text-align:center}.hero-copy>p{margin-inline:auto}.hero-actions,.trust-note{justify-content:center}.hero-dashboard{width:100%;max-width:680px;margin:auto}.workflow-section,.pricing-preview{grid-template-columns:1fr;gap:40px}}@media (width<=720px){.topbar{padding:0 16px}.page-context h1{font-size:17px}.topbar-actions>.icon-button{display:none}.page-grid,.crud-layout,.workspace>.panel,.workspace>.task-board{padding:18px 14px}.dashboard-intro{align-items:flex-start;gap:15px}.dashboard-intro .button-row .small-button{display:none}.dashboard-intro h2{font-size:22px}.quotes-page-header{flex-direction:column;align-items:stretch;padding:0 16px}.quotes-page-header .primary-button{width:100%}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-grid,.dashboard-main-grid{grid-template-columns:1fr}.notifications-panel{position:fixed;top:64px;right:16px}.marketing-nav{padding:0 16px}.marketing-nav .siteflow-logo small,.marketing-actions .text-button{display:none}.marketing-hero{gap:40px;padding:42px 18px 52px}.hero-copy h1{font-size:38px}.hero-copy>p{font-size:15px}.hero-dashboard{grid-template-columns:46px 1fr;height:320px}.mock-sidebar{padding:12px 8px}.mock-sidebar .siteflow-mark{width:28px}.mock-sidebar>i{width:25px}.mock-main{padding:12px}.preview-grid>div{padding:9px}.preview-grid>div:nth-child(2){display:none}.preview-grid{grid-template-columns:1fr 1fr}.mock-chart{height:155px}.mock-chart svg{height:100px}.logo-strip div{flex-wrap:wrap;justify-content:center}.marketing-section,.workflow-section,.pricing-preview,.faq,.testimonial{padding:70px 20px}.benefit-grid,.feature-grid{grid-template-columns:1fr}.section-heading h2,.workflow-section h2,.pricing-preview h2,.final-cta h2{font-size:30px}.testimonial blockquote{font-size:20px}.marketing-footer{flex-direction:column;align-items:flex-start;gap:24px}.marketing-footer p{order:3}}.schedule-page{padding:0 28px 32px}.schedule-toolbar{z-index:18;background:color-mix(in srgb,var(--app-bg) 96%,transparent);border-bottom:1px solid var(--border-color);padding:16px 0 12px;position:sticky;top:72px}.schedule-title,.schedule-controls{justify-content:space-between;align-items:center;gap:16px;display:flex}.schedule-title p{color:var(--text-secondary);margin:0;font-size:12px}.schedule-controls{flex-wrap:wrap;justify-content:flex-start;margin-top:14px}.schedule-tabs{background:#eeefec;border-radius:8px;padding:3px;display:flex}.schedule-tabs button,.date-nav button{height:30px;color:var(--text-secondary);text-transform:capitalize;background:0 0;border:0;border-radius:6px;padding:0 11px;font-size:11px;font-weight:600}.schedule-tabs button.active{background:var(--surface);color:var(--text-primary);box-shadow:0 1px 2px #1b1d221a}.date-nav{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;display:flex;overflow:hidden}.date-nav button{border-right:1px solid var(--border-color);color:var(--text-primary);border-radius:0}.date-nav button:last-child{border:0}.date-nav button:hover{background:var(--hover-bg)}.schedule-summary{align-items:center;gap:8px;padding:16px 0;display:flex}.schedule-summary>div{background:var(--surface);border:1px solid var(--border-color);border-radius:99px;align-items:center;gap:6px;height:32px;padding:0 11px;font-size:11px;display:flex}.schedule-summary i{background:#98a2b3;border-radius:50%;width:7px;height:7px}.schedule-summary strong{font-variant-numeric:tabular-nums}.schedule-summary span{color:var(--text-secondary)}.schedule-summary .delayed i{background:var(--warning-text)}.schedule-summary .unassigned i{background:#9ca3af}.schedule-summary .completed i{background:var(--success)}.schedule-project-selector{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:8px;font-size:10px;font-weight:700;display:flex}.schedule-project-selector select{min-width:220px;height:36px;color:var(--text-primary);font-size:11px;font-weight:600}.schedule-workspace{background:var(--surface);border:1px solid var(--border-color);border-radius:10px;grid-template-columns:minmax(360px,3fr) minmax(480px,7fr);min-height:580px;display:grid;overflow:visible}.schedule-workspace.no-selection{grid-template-columns:1fr}.task-list-panel{border-right:1px solid var(--border-color);background:#fbfbf9;border-radius:10px 0 0 10px;min-width:0}.task-list-heading{border-bottom:1px solid var(--border-color);height:46px;color:var(--text-secondary);z-index:4;background:#fbfbf9;justify-content:space-between;align-items:center;padding:0 14px;font-size:10px;display:flex;position:sticky;top:198px}.task-list-heading>div{align-items:center;gap:8px;display:flex}.task-list-heading strong{color:var(--text-primary);font-size:12px}.task-list{padding:4px 0}.task-row{border-bottom:1px solid #eceeea;min-height:64px;transition:background .14s,box-shadow .14s;position:relative}.task-row:hover{background:var(--surface)}.task-row.selected{background:var(--accent-soft);box-shadow:inset 3px 0 var(--accent)}.task-row-main{text-align:left;background:0 0;border:0;grid-template-columns:78px minmax(120px,1.3fr) minmax(120px,1fr) 108px;align-items:center;gap:9px;width:calc(100% - 36px);min-height:64px;padding:8px 5px 8px 12px;display:grid}.task-row-title,.task-row-dates{flex-direction:column;gap:3px;min-width:0;display:flex}.task-row-title strong{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.task-row-title span,.task-row-dates span{color:var(--text-secondary);font-size:9px}.task-row-dates strong{font-variant-numeric:tabular-nums;font-size:10px}.row-menu-button{width:28px;height:28px;color:var(--text-secondary);background:0 0;border:0;border-radius:6px;place-items:center;display:grid;position:absolute;top:17px;right:6px}.row-menu-button:hover{background:var(--surface-muted);color:var(--text-primary)}.task-row-menu{background:var(--surface);border:1px solid var(--border-color);z-index:20;border-radius:8px;width:160px;padding:5px;position:absolute;top:49px;right:7px;box-shadow:0 10px 26px #1b1d2224}.task-row-menu button{text-align:left;width:100%;height:31px;color:var(--text-primary);background:0 0;border:0;border-radius:5px;padding:0 9px;font-size:10px}.task-row-menu button:hover{background:var(--hover-bg)}.task-row-menu button.danger{color:var(--danger)}.schedule-status{color:#5d626b;text-transform:capitalize;white-space:nowrap;background:#f0f1ef;border-radius:99px;align-items:center;gap:5px;width:max-content;padding:4px 7px;font-size:9px;font-weight:700;display:inline-flex}.schedule-status i{background:currentColor;border-radius:50%;width:6px;height:6px}.schedule-status.in-progress{color:#56606e;background:#eef0f2}.schedule-status.completed{background:var(--success-soft);color:var(--success)}.schedule-status.delayed,.schedule-status.blocked{background:var(--warning-bg);color:var(--warning-text)}.schedule-status.draft{color:#777c84;background:#f1f1ef}.schedule-status.scheduled{background:var(--accent-soft);color:var(--accent)}.contractor-chip{align-items:center;gap:7px;min-width:0;display:flex}.contractor-chip>i{color:#4b5058;background:#e6e7e4;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:8px;font-style:normal;font-weight:700;display:grid}.contractor-chip>span{flex-direction:column;min-width:0;display:flex}.contractor-chip strong{white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.contractor-chip small{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:8px;overflow:hidden}.contractor-chip.unassigned>i{color:#8b9098;background:0 0;border:1px dashed #9ca3af}.task-details-panel{background:var(--surface);border-radius:0 10px 10px 0;min-width:0;padding:22px 24px}.task-details-panel>header{border-bottom:1px solid var(--border-color);padding-bottom:18px;display:flex}.task-details-panel header h2{letter-spacing:-.025em;margin:10px 0 4px;font-size:20px}.task-details-panel header p{color:var(--text-secondary);margin:0;font-size:10px}.task-detail-facts{border-bottom:1px solid var(--border-color);grid-template-columns:repeat(4,1fr);gap:16px;padding:18px 0;display:grid}.task-detail-facts>div{flex-direction:column;gap:7px;min-width:0;display:flex}.task-detail-facts>div>span{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-size:9px}.task-detail-facts>div>strong{font-size:11px}.task-editor{padding-top:20px}.task-editor h3{margin-bottom:14px;font-size:13px}.schedule-fields{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}.task-notes{margin-top:14px}.task-notes textarea{resize:vertical;min-height:72px}.task-details-panel>footer{align-items:center;gap:8px;padding-top:18px;display:flex}.task-details-panel .complete{color:var(--success)}.schedule-overview-copy{background:var(--surface-muted);color:var(--accent);border-radius:10px;align-items:flex-start;gap:12px;margin-top:22px;padding:18px;display:flex}.schedule-overview-copy h3{color:var(--text-primary);margin:0 0 5px;font-size:13px}.schedule-overview-copy p{max-width:620px;color:var(--text-secondary);margin:0;font-size:11px;line-height:1.55}.schedule-overview-copy+footer{padding-top:18px}.roadmap-review-trigger{grid-column:1/-1;justify-self:start}.roadmap-contractor-review{grid-column:2/-1;min-width:0}.roadmap-contractor-review .admin-task-review{margin-top:0}.schedule-empty{align-content:center;place-items:center;min-height:420px;display:grid}.schedule-empty .primary-button{margin-top:-18px}.view-table .task-list-panel{border:0}.view-calendar{grid-template-columns:1fr}.view-calendar .task-details-panel{width:100%;max-width:900px;margin:auto}@media (width<=1100px){.schedule-workspace{grid-template-columns:1fr}.task-list-panel{border-right:0;border-bottom:1px solid var(--border-color);border-radius:10px 10px 0 0;max-height:420px;overflow:auto}.task-details-panel{border-radius:0 0 10px 10px}.task-list-heading{top:0}.task-detail-facts{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){.schedule-page{padding:0 14px 24px}.schedule-toolbar{padding-top:16px;top:72px}.schedule-title h2{font-size:21px}.schedule-title p{display:none}.schedule-title .primary-button{width:38px;padding:0;font-size:0}.schedule-title .primary-button svg{margin:0}.schedule-controls{gap:8px}.schedule-tabs{width:100%;overflow:auto}.schedule-tabs button{flex:1}.date-nav button:nth-last-child(-n+2){display:none}.schedule-summary{padding:12px 0;overflow-x:auto}.schedule-summary>div{flex:none}.schedule-workspace{background:0 0;border:0;display:block}.task-list-panel{border:1px solid var(--border-color);border-radius:10px;max-height:none}.task-row-main{grid-template-columns:72px minmax(130px,1fr) 105px}.task-row-main .contractor-chip{display:none}.task-details-panel{z-index:70;border-radius:14px 14px 0 0;max-height:82vh;padding:20px;position:fixed;bottom:0;left:0;right:0;overflow:auto;box-shadow:0 -12px 32px #1b1d2229}.task-detail-facts{grid-template-columns:1fr 1fr}.schedule-fields{grid-template-columns:1fr}.task-details-panel>footer{background:var(--surface);flex-wrap:wrap;padding:12px 0 20px;position:sticky;bottom:-20px}}html,body,#root{width:100%;max-width:100%}.app-shell{--sidebar-width:252px;grid-template-columns:var(--sidebar-width) minmax(0,1fr);width:100%;min-width:0}.app-shell.nav-collapsed{--sidebar-width:72px;grid-template-columns:var(--sidebar-width) minmax(0,1fr)}.workspace{width:100%;min-width:0;max-width:100%;overflow-x:hidden}.schedule-page{width:100%;min-width:0;max-width:100%}.schedule-workspace{--task-columns:78px minmax(0,1.35fr) minmax(0,1fr) minmax(96px,.9fr) 32px;grid-template-columns:minmax(360px,420px) minmax(0,1fr);width:100%;min-width:0;max-width:100%;overflow:hidden}.task-list-panel{width:100%;min-width:0;max-width:100%;overflow:hidden}.task-list-scroll{max-width:100%;overflow:hidden auto}.task-list-heading{grid-template-columns:var(--task-columns);align-items:center;gap:9px;width:100%;min-width:0;display:grid}.task-row,.task-row-main,.task-row-main>*{min-width:0;max-width:100%}.task-row{width:100%;overflow:visible}.task-row-main{grid-template-columns:78px minmax(0,1.35fr) minmax(0,1fr) minmax(96px,.9fr);gap:9px;overflow:hidden}.task-row-title strong,.task-row-title span,.task-row-dates strong,.task-row-dates span,.contractor-chip strong,.contractor-chip small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.task-row-dates{overflow:hidden}.task-details-panel{width:100%;min-width:0;max-width:100%;overflow:hidden}.task-detail-scroll{overflow:hidden auto}.task-detail-content{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.task-detail-content>header{border-bottom:1px solid var(--border-color);justify-content:space-between;padding-bottom:18px;display:flex}.task-detail-content>header>div{min-width:0}.task-detail-content header h2,.task-detail-content header p{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.detail-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.detail-form-grid>*,.task-detail-content input,.task-detail-content select,.task-detail-content textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.detail-actions{flex-wrap:wrap;gap:8px;padding-top:18px;display:flex}.view-table,.view-calendar{grid-template-columns:minmax(0,1fr)}@media (width<=1200px) and (width>=901px){.schedule-workspace{grid-template-columns:minmax(320px,38%) minmax(0,1fr)}.task-list-panel{border-right:1px solid var(--border-color);border-bottom:0;border-radius:10px 0 0 10px;max-height:none;overflow:hidden}.task-details-panel{border-radius:0 10px 10px 0}.task-row-main{grid-template-columns:70px minmax(0,1fr) minmax(0,.85fr) minmax(90px,.75fr)}.task-list-heading{grid-template-columns:70px minmax(0,1fr) minmax(0,.85fr) minmax(90px,.75fr) 32px}.contractor-chip>i{display:none}}@media (width<=900px){.app-shell,.app-shell.nav-collapsed{--sidebar-width:0px;display:block}.schedule-workspace{grid-template-columns:minmax(0,1fr);overflow:visible}.task-list-panel{border-right:0;border-bottom:1px solid var(--border-color);width:100%;max-height:none}.task-details-panel{width:100%;max-width:100%}.task-list-heading{top:0}}@media (width<=760px){.task-row-main{grid-template-columns:70px minmax(0,1fr) minmax(90px,.8fr)}.task-list-heading{grid-template-columns:70px minmax(0,1fr) minmax(90px,.8fr) 32px}.task-list-heading>span:nth-of-type(2),.task-list-heading>span:nth-of-type(3){display:none}.detail-form-grid{grid-template-columns:minmax(0,1fr)}.task-detail-content>.detail-actions{background:var(--surface);padding:12px 0 20px;position:sticky;bottom:-20px}}.date-nav button.active{background:var(--accent-soft);color:var(--accent)}.schedule-range-label{color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.schedule-view-empty{text-align:center;color:var(--text-secondary);border-top:1px solid var(--border-color);background:var(--surface);padding:24px;font-size:11px}.schedule-calendar{background:var(--surface);border:1px solid var(--border-color);border-radius:10px;min-width:0;overflow:hidden}.calendar-title{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:14px 16px;display:flex}.calendar-title>div:first-child{align-items:center;gap:8px;min-width:0;display:flex}.calendar-title strong{font-size:13px}.calendar-title span{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:10px}.calendar-weekdays,.calendar-cells{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{border-bottom:1px solid var(--border-color);background:#fafaf8}.calendar-weekdays>div{color:var(--text-secondary);text-align:center;text-transform:uppercase;padding:10px 8px;font-size:10px;font-weight:700}.calendar-cells{grid-auto-rows:minmax(112px,1fr)}.calendar-day{background:var(--surface);border-bottom:1px solid #eceeea;border-right:1px solid #eceeea;min-width:0;padding:8px}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside-month{background:color-mix(in srgb,var(--surface-muted) 56%,var(--surface))}.calendar-day.outside-month .calendar-day-heading{opacity:.48}.calendar-day.today{box-shadow:inset 0 3px var(--accent)}.calendar-day-heading{min-height:20px;color:var(--text-secondary);align-items:center;gap:5px;font-size:9px;display:flex}.calendar-day-heading span{font-size:8px}.calendar-day-heading strong{color:var(--text-primary);font-size:13px}.calendar-day.today .calendar-day-heading strong{color:#fff;background:var(--accent);border-radius:50%;place-items:center;width:23px;height:23px;display:grid}.calendar-events{gap:4px;margin-top:7px;display:grid}.calendar-event{border:0;border-left:3px solid var(--accent);background:var(--accent-soft);width:100%;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;border-radius:4px;gap:2px;padding:5px 6px;display:grid}.calendar-event:hover{filter:brightness(.97);box-shadow:0 1px 3px #1b1d221f}.calendar-event strong,.calendar-event small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.calendar-event strong{font-size:9px}.calendar-event small{color:var(--text-secondary);font-size:8px}.calendar-event.in-progress{background:color-mix(in srgb,#64748b 12%,var(--surface));border-left-color:#64748b}.calendar-event.completed{border-left-color:var(--success);background:var(--success-soft)}.calendar-event.delayed,.calendar-event.blocked{border-left-color:var(--warning-text);background:color-mix(in srgb,var(--warning-text) 12%,var(--surface))}.calendar-event.scheduled{border-left-color:var(--accent)}@media (width<=760px){.date-nav{width:100%;overflow-x:auto}.date-nav button{flex:none;display:block!important}.schedule-range-label{order:3;width:100%}.calendar-title{flex-direction:column;align-items:center;gap:10px}.calendar-cells{grid-auto-rows:minmax(100px,1fr)}.calendar-day{padding:5px}.calendar-day-heading span{display:none}.calendar-event{padding:4px}.calendar-event small{display:none}}.schedule-page{max-width:1500px;margin:0 auto;padding:0 24px 36px;overflow-x:hidden}.schedule-toolbar{background:0 0;border-bottom:0;padding:20px 0 10px;position:relative;top:auto}.schedule-title h2{letter-spacing:-.025em;font-size:22px}.schedule-ready-button{border:1px solid var(--border-color);background:var(--surface);height:32px;color:var(--text-secondary);font:inherit;border-radius:6px;align-items:center;gap:7px;padding:0 11px;font-size:10px;display:inline-flex;box-shadow:0 1px 2px #1b1d220a}.schedule-ready-button:disabled{opacity:.58}.schedule-controls{justify-content:space-between;gap:12px;margin-top:18px}.schedule-controls-start,.schedule-controls-end{align-items:center;gap:10px;min-width:0;display:flex}.schedule-project-selector select{border-radius:5px;min-width:210px;height:34px}.schedule-tabs{border-radius:6px;padding:2px}.schedule-tabs button,.date-nav button,.schedule-range-tabs button{height:28px;padding:0 10px;font-size:10px}.schedule-controls-end{margin-left:auto}.date-nav{border-radius:5px}.schedule-range-tabs{background:#eeefec;border-radius:6px;gap:2px;padding:2px;display:flex}.schedule-range-tabs button{color:var(--text-secondary);background:0 0;border:0;border-radius:4px}.schedule-range-tabs button.active{background:var(--surface);color:var(--text-primary);box-shadow:0 1px 2px #1b1d221a}.schedule-summary{padding:8px 0 14px}.schedule-summary>div{height:25px;padding:0 9px;font-size:9px}.schedule-summary .progress i{background:#159c9c}.schedule-summary>button{background:var(--surface);border:1px solid var(--border-color);height:25px;color:var(--text-primary);white-space:nowrap;cursor:pointer;border-radius:99px;flex:none;align-items:center;gap:6px;padding:0 9px;font-size:9px;display:flex}.schedule-summary>button:hover{border-color:var(--text-secondary)}.schedule-summary>button.active{border-color:var(--text-secondary);box-shadow:inset 0 0 0 1px var(--text-secondary)}.schedule-summary>button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.schedule-status.not-started{background:var(--surface-muted);color:var(--text-secondary)}.schedule-page .schedule-status:is(.not-started,.in-progress,.delayed,.completed),.dashboard-calendar .dashboard-calendar-event small,.dashboard-calendar .dashboard-calendar-agenda small{text-transform:none}.calendar-event.not-started{border-left-color:var(--accent)}@media (width<=760px){.schedule-summary>button{min-height:44px}}.calendar-event.unassigned{color:#737983;background:0 0;border:1px dashed #b9bec5;border-left-width:3px}.schedule-sections{gap:18px;display:grid}.schedule-section{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;min-width:0;overflow:hidden}.schedule-task-section{padding:12px}.schedule-conflict-warning{border:1px solid var(--border-color);border-left:3px solid var(--warning-text);background:var(--surface);color:var(--text-primary);border-radius:7px;align-items:flex-start;gap:10px;margin:0 0 12px;padding:12px 14px;display:flex}.schedule-conflict-icon{background:color-mix(in srgb,var(--warning-text) 12%,var(--surface));width:26px;height:26px;color:var(--warning-text);border-radius:50%;flex:none;place-items:center;display:grid}.schedule-conflict-content{flex:1;min-width:0}.schedule-conflict-warning p{gap:2px;margin:0;font-size:10px;line-height:1.5;display:grid}.schedule-conflict-warning p strong{font-size:11px}.schedule-conflict-warning p span{color:var(--text-secondary)}.schedule-conflict-list{max-height:320px;margin:10px 0 0;overflow:auto}.schedule-conflict-list:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.schedule-conflict-list ol{gap:8px;margin:0;padding:0;list-style:none;display:grid}.schedule-conflict-list li{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:7px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:11px;display:grid}.schedule-conflict-list h3{grid-column:1/-1;margin:0;font-size:11px}.schedule-conflict-assignment{background:var(--surface);border-radius:6px;gap:3px;min-width:0;padding:9px;display:grid}.schedule-conflict-assignment>span,.schedule-conflict-assignment time{color:var(--text-secondary);font-size:9px}.schedule-conflict-assignment button{width:fit-content;max-width:100%;color:var(--accent);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;font-weight:700;line-height:1.4}.schedule-conflict-assignment button:hover{text-underline-offset:2px;text-decoration:underline}.schedule-conflict-assignment button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.schedule-workspace{border-radius:8px;min-height:0;overflow:visible}.task-list-panel{background:var(--surface);border-right:0;border-radius:8px;overflow:hidden}.task-row-date-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.row-menu-cell{position:relative}.row-menu-button{position:relative;inset:auto}.task-row-menu{top:30px}@media (width<=1100px){.schedule-controls{flex-direction:column;align-items:flex-start}.schedule-controls-end{justify-content:flex-end;width:100%;margin-left:0}.schedule-workspace{--task-main-columns:76px minmax(135px,1.2fr) minmax(120px,1fr) minmax(240px,1.5fr)}}@media (width<=760px){.schedule-page{padding-inline:12px}.schedule-title{align-items:flex-start}.schedule-title p{max-width:240px}.schedule-ready-button{flex:none;font-size:0}.schedule-ready-button svg{margin:0}.schedule-controls-start,.schedule-controls-end{flex-wrap:wrap;width:100%}.schedule-project-selector{width:100%}.schedule-project-selector select{width:100%;min-width:0}.schedule-tabs{width:100%;overflow-x:auto}.schedule-tabs button{flex:1}.schedule-controls-end{justify-content:flex-start}.schedule-range-label{order:0;width:100%}.date-nav{width:auto}.schedule-summary{overflow-x:auto}.schedule-summary>div{flex:none}.task-row-progress>strong{display:none}}.quotes-page{min-width:0}.quotes-page-header{justify-content:space-between;align-items:flex-end;gap:18px;margin:0 0 18px;padding:0 24px;display:flex}.quotes-page-header h2{letter-spacing:-.025em;margin:0 0 4px;font-size:22px}.quotes-page-header p{color:var(--text-secondary);margin:0;font-size:12px}.quote-status-tabs{border-bottom:1px solid var(--border-color);gap:2px;padding:12px;display:flex;overflow-x:auto}.quote-status-tabs button{height:27px;color:var(--text-secondary);text-transform:capitalize;background:0 0;border:0;border-radius:6px;padding:0 8px;font-size:9px}.quote-status-tabs button.active{background:var(--accent-soft);color:var(--accent);font-weight:700}.price-display{letter-spacing:-.035em;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:25px;line-height:1.2}.price-display.small{letter-spacing:-.01em;font-size:11px}.quote-status{color:#62666d;text-transform:capitalize;background:#eff0ee;border-radius:99px;width:max-content;padding:4px 7px;font-size:8px;font-weight:700;display:inline-flex}.quote-status.approved,.quote-status.completed{background:var(--success-soft);color:var(--success)}.quote-status.ongoing,.quote-status.sent{color:#596270;background:#eef0f2}.quote-status.invoiced,.quote-status.archived{color:#6c7077;background:#f0efed}.quote-status.canceled{background:var(--danger-soft);color:var(--danger)}.project-roadmap-view{gap:16px;display:grid}.roadmap-hero{border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border-color));background:linear-gradient(135deg,color-mix(in srgb,var(--accent-soft) 78%,var(--surface)),var(--surface) 72%);border-radius:14px;justify-content:space-between;align-items:center;gap:24px;padding:24px 26px;display:flex;box-shadow:0 8px 26px #1c231f0f}.roadmap-hero h2{letter-spacing:-.035em;margin:5px 0 7px;font-size:25px}.roadmap-hero p{max-width:640px;color:var(--text-secondary);margin:0;font-size:12px;line-height:1.55}.roadmap-primary-action{flex-direction:column;align-items:stretch;gap:8px;min-width:235px;display:flex}.roadmap-primary-action .primary-button,.roadmap-primary-action .small-button{justify-content:center}.roadmap-primary-action small{max-width:260px;color:var(--warning-text);text-align:center;font-size:9px;line-height:1.4}.roadmap-primary-action small.ready{color:var(--success)}.approved-quote-summary,.roadmap-editor{border:1px solid var(--border-color);background:var(--surface);border-radius:12px}.approved-quote-summary>header,.roadmap-editor>header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.approved-quote-summary>header>div{color:var(--success);align-items:center;gap:8px;font-size:11px;font-weight:700;display:flex}.approved-quote-summary dl{grid-template-columns:1.15fr 1fr 1.35fr .8fr 1.1fr 1fr;margin:0;display:grid}.approved-quote-summary dl>div{border-right:1px solid var(--border-color);min-width:0;padding:15px 16px}.approved-quote-summary dl>div:last-child{border-right:0}.approved-quote-summary dt{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px;font-size:8px;font-weight:700}.approved-quote-summary dd{overflow-wrap:anywhere;margin:0;font-size:10px;font-weight:650;line-height:1.35}.approved-quote-summary .approved-total{background:var(--accent-soft)}.approved-quote-summary .approved-total dd{color:var(--accent);letter-spacing:-.025em;font-size:17px}.roadmap-editor>header>div:first-child>span{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:800}.roadmap-editor>header h3{margin:3px 0 4px;font-size:18px}.roadmap-editor>header p{color:var(--text-secondary);margin:0;font-size:10px}.roadmap-editor>header>div:last-child{align-items:center;gap:8px;display:flex}.roadmap-editor>.empty-state{margin:18px}.roadmap-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.roadmap-item{border-bottom:1px solid var(--border-color);grid-template-columns:44px minmax(0,1fr) 34px;align-items:start;gap:12px;padding:15px 16px;display:grid}.roadmap-item:last-child{border-bottom:0}.roadmap-order{grid-template-columns:1fr 1fr;gap:3px;display:grid}.roadmap-order>span{background:var(--accent-soft);width:29px;height:29px;color:var(--accent);border-radius:50%;grid-column:1/-1;place-items:center;font-size:11px;font-weight:800;display:grid}.roadmap-order button,.roadmap-remove{width:14px;height:22px;color:var(--text-secondary);background:0 0;border:0;padding:0;font-size:13px}.roadmap-order button:disabled{opacity:.25}.roadmap-item-fields{grid-template-columns:minmax(180px,1.7fr) minmax(150px,1.2fr) 118px 118px 116px 88px;align-items:start;gap:10px;display:grid}.roadmap-item-fields .field{text-transform:uppercase;letter-spacing:.04em;gap:4px;font-size:8px}.roadmap-item-fields input,.roadmap-item-fields select{text-transform:none;letter-spacing:normal;height:34px;min-height:34px;font-size:10px}.roadmap-item-fields select.unassigned{border-color:color-mix(in srgb,var(--warning-text) 48%,var(--border-color));color:var(--warning-text);font-weight:700}.roadmap-notes{grid-column:1/-1}.roadmap-notes textarea{resize:vertical;text-transform:none;letter-spacing:normal;min-height:48px;font-size:10px}.roadmap-remove{border-radius:7px;place-items:center;width:30px;height:34px;display:grid}.roadmap-remove:hover{background:var(--danger-soft);color:var(--danger)}.communication-heading span{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);font-size:8px;font-weight:700}.premium-email-card{background:var(--surface);border:1px solid var(--border-color);border-radius:10px;overflow:hidden}.communication-heading{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;height:56px;padding:0 16px;display:flex}.communication-heading h2{margin:3px 0 0;font-size:15px}.premium-email-card>.panel{border:0;border-radius:0}.premium-email-card>.panel>.panel-header{display:none}.premium-email-card .email-quote-grid{grid-template-columns:minmax(180px,.7fr) minmax(260px,1.3fr);gap:20px;padding:14px}.premium-email-card textarea{min-height:74px}@media (width<=1050px){.quote-status-tabs{border:0;padding-block:8px}}@media (width<=720px){.premium-email-card .email-quote-grid{grid-template-columns:1fr}}.workspace{container-type:inline-size}@container (width<=1180px){.approved-quote-summary dl{grid-template-columns:repeat(3,minmax(0,1fr))}.approved-quote-summary dl>div:nth-child(3){border-right:0}.approved-quote-summary dl>div:nth-child(-n+3){border-bottom:1px solid var(--border-color)}}@container (width<=680px){.roadmap-hero,.roadmap-editor>header{flex-direction:column;align-items:stretch}.roadmap-primary-action{min-width:0}.approved-quote-summary>header{flex-direction:column;align-items:flex-start}.approved-quote-summary dl{grid-template-columns:1fr 1fr}.approved-quote-summary dl>div,.approved-quote-summary dl>div:nth-child(3){border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.approved-quote-summary dl>div:nth-child(2n){border-right:0}.approved-quote-summary dl>div:nth-last-child(-n+2){border-bottom:0}.roadmap-editor>header>div:last-child{flex-direction:column;align-items:stretch}}.email-dialog-backdrop{z-index:100;background:#1b1d228c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.email-dialog{background:var(--surface);border-radius:10px;width:min(760px,100%);max-height:calc(100vh - 48px);position:relative;overflow-y:auto;box-shadow:0 20px 55px #1b1d2238}.email-dialog-close{z-index:3;background:var(--surface-muted);width:30px;height:30px;color:var(--text-secondary);border:0;border-radius:7px;place-items:center;display:grid;position:absolute;top:13px;right:14px}.email-dialog-close:hover{color:var(--text-primary)}.email-dialog .premium-email-card{border:0}.email-dialog .communication-heading{padding-right:58px}.email-dialog .email-quote-grid{grid-template-columns:minmax(180px,.7fr) minmax(280px,1.3fr)}@media (width<=640px){.email-dialog-backdrop{align-items:end;padding:0}.email-dialog{border-radius:14px 14px 0 0;width:100%;max-height:90vh}.email-dialog .email-quote-grid{grid-template-columns:minmax(0,1fr)}}.quote-pipeline-total{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.quote-pipeline-total>span{text-transform:uppercase;letter-spacing:.08em;font-size:8px}.quote-pipeline-total .price-display{font-size:20px}@container (width<=520px){.quote-pipeline-total .price-display{font-size:17px}}.quote-status.awaiting{background:var(--warning-bg);color:var(--warning-text)}.contractor-header{border-bottom:1px solid var(--border-color);background:var(--surface);justify-content:space-between;align-items:center;min-height:72px;padding:14px clamp(18px,5vw,64px);display:flex}.portal-brand,.portal-user{align-items:center;gap:11px;display:flex}.portal-brand strong{font-family:var(--font-display,Inter,sans-serif);font-size:18px;display:block}.portal-brand small,.portal-user small{color:var(--text-secondary);font-size:11px;display:block}.portal-mark{object-fit:contain;border:1px solid color-mix(in srgb,var(--brand-blue) 42%,var(--border-color));background:var(--surface);width:34px;height:34px;box-shadow:var(--shadow-sm);border-radius:9px;display:block}.portal-user>span{background:var(--accent-soft);width:32px;height:32px;color:var(--accent);border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:grid}.portal-signout{color:var(--text-secondary);background:0 0;border:0;align-items:center;gap:7px;margin-left:14px;padding:8px 0;font-size:12px;display:inline-flex}.portal-main{width:min(100%,1080px);margin:auto;padding:clamp(30px,5vw,62px) 20px}.portal-intro{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:36px;display:flex}.portal-kicker{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:800}.portal-intro h1{font-family:var(--font-display,Inter,sans-serif);letter-spacing:-.045em;margin:0 0 10px;font-size:clamp(28px,5vw,44px)}.portal-intro p:last-child{color:var(--text-secondary);margin:0;font-size:14px}.portal-count{border-left:3px solid var(--accent);min-width:104px;padding:16px;display:grid}.portal-count strong{font-size:32px;line-height:1}.portal-count span{color:var(--text-secondary);margin-top:5px;font-size:11px}.portal-columns{grid-template-columns:minmax(0,1.4fr) minmax(270px,.8fr);gap:24px;display:grid}.portal-section-title{align-items:center;gap:9px;margin-bottom:12px;display:flex}.portal-section-title h2{margin:0;font-size:15px}.portal-section-title span{background:var(--surface-muted);min-width:22px;height:22px;color:var(--text-secondary);border-radius:50%;place-items:center;font-size:11px;display:grid}.portal-task{border:1px solid var(--border-color);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:12px;margin-bottom:14px;padding:20px}.task-top{justify-content:space-between;gap:15px;display:flex}.portal-task h3{margin:6px 0 0;font-size:18px}.portal-status,.account-state{height:24px;color:var(--text-secondary);background:var(--surface-muted);text-transform:capitalize;white-space:nowrap;border-radius:6px;padding:5px 9px;font-size:10px;font-weight:700}.portal-status.in-progress{color:var(--warning-text);background:var(--warning-bg)}.portal-status.completed{color:var(--success);background:var(--success-soft)}.portal-status.blocked{color:var(--danger);background:var(--danger-soft)}.portal-task-meta{color:var(--text-secondary);flex-wrap:wrap;gap:14px;margin:14px 0;font-size:11px;display:flex}.portal-task-meta span,.portal-attachments{align-items:center;gap:5px;display:flex}.portal-progress{border-top:1px solid var(--border-color);padding:13px 0}.portal-progress div{justify-content:space-between;font-size:11px;display:flex}.portal-progress b{color:var(--accent)}.portal-progress input{width:100%;accent-color:var(--accent)}.portal-form-grid{grid-template-columns:150px 1fr;gap:12px;display:grid}.portal-form-grid label{color:var(--text-secondary);gap:6px;font-size:11px;display:grid}.portal-wide{grid-column:1/-1}.portal-actions{align-items:center;gap:10px;margin-top:14px;display:flex}.upload-button{border:1px solid var(--border-color);min-height:36px;color:var(--accent);background:var(--surface-muted);cursor:pointer;border-radius:8px;align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:700;display:inline-flex}.upload-button input{display:none}.portal-attachments{border-top:1px solid var(--border-color);flex-wrap:wrap;margin-top:15px;padding-top:12px;font-size:11px}.portal-attachments a{color:var(--accent);text-decoration:underline}.portal-muted{color:var(--text-secondary);font-size:13px}.portal-message{border:1px dashed var(--border-color);color:var(--accent);text-align:center;border-radius:12px;justify-items:center;gap:8px;padding:55px 20px;display:grid}.portal-message span{color:var(--text-secondary);font-size:13px}.portal-message.error{color:var(--danger)}.portal-message button{margin-top:7px}.portal-loading{gap:12px;display:grid}.portal-loading i{background:var(--surface-muted);border-radius:12px;height:105px;animation:1.3s ease-in-out infinite portal-pulse}.portal-loading i:nth-child(2){opacity:.7}.portal-loading i:nth-child(3){opacity:.45}@keyframes portal-pulse{50%{opacity:.45}}.account-panel{border:1px solid var(--border-color);background:var(--surface);border-radius:10px;margin:22px 28px;padding:20px}.account-panel .panel-header p{color:var(--text-secondary);margin:4px 0 0;font-size:12px}.account-form{background:var(--surface-muted);border-radius:8px;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px;padding:16px;display:grid}.account-form .primary-button{grid-column:1/-1;justify-self:start}.account-list{gap:8px;display:grid}.account-row{border-top:1px solid var(--border-color);grid-template-columns:auto minmax(180px,1fr) auto auto;align-items:center;gap:10px;padding:10px;display:grid}.account-row>div{min-width:0;display:grid}.account-row small{color:var(--text-secondary);overflow-wrap:anywhere}.account-avatar{background:var(--accent-soft);width:30px;height:30px;color:var(--accent);border-radius:8px;place-items:center;font-size:10px;font-weight:800;display:grid}.account-state{color:var(--danger);background:var(--danger-soft)}.account-state.active{color:var(--success);background:var(--success-soft)}.account-error{color:var(--danger);font-size:12px}.account-row-actions{flex-direction:row;gap:7px;display:flex!important}.account-reset-form{background:var(--surface-muted);border-radius:8px;grid-column:2/-1;align-items:end;gap:9px;padding:10px;display:flex!important}.account-reset-form .field{flex:1;min-width:260px}.portal-instructions,.portal-recent-notes,.admin-completion-details{background:var(--surface-muted);border-radius:8px;padding:12px}.portal-instructions strong,.portal-recent-notes>strong,.admin-completion-details strong{color:var(--accent);letter-spacing:.06em;text-transform:uppercase;font-size:10px}.portal-instructions p,.admin-completion-details p{color:var(--text-primary);margin:5px 0 0;font-size:12px;line-height:1.5}.portal-recent-notes{gap:8px;margin-top:14px;display:grid}.portal-recent-notes p{color:var(--text-primary);gap:3px;margin:0;font-size:12px;display:grid}.portal-recent-notes p span{color:var(--text-secondary);font-size:10px}.upload-button.disabled{cursor:wait;opacity:.65}.account-form .field small{color:var(--text-secondary);font-size:10px;line-height:1.35}.admin-task-review{border-top:1px solid var(--border-color);gap:14px;margin-top:18px;padding-top:18px;display:grid}.admin-review-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.admin-review-heading h3{margin:0;font-size:14px}.admin-review-heading p{color:var(--text-secondary);margin:4px 0 0;font-size:11px}.admin-review-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-review-summary>div{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:8px;gap:4px;padding:12px;display:grid}.admin-review-summary span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:5px;font-size:10px;display:flex}.admin-review-summary strong{font-size:12px}.admin-review-summary small{color:var(--text-secondary);font-size:10px}.admin-review-block{gap:8px;display:grid}.admin-review-block h4{align-items:center;gap:6px;margin:0;font-size:11px;display:flex}.admin-review-block>p{color:var(--text-secondary);margin:0;font-size:11px}.admin-attachment-list,.admin-activity-list{gap:7px;display:grid}.admin-attachment-list a{border:1px solid var(--border-color);color:var(--text-primary);border-radius:7px;align-items:center;gap:8px;padding:9px;text-decoration:none;display:flex}.admin-attachment-list a:hover{border-color:var(--accent)}.admin-attachment-list span{gap:2px;min-width:0;display:grid}.admin-attachment-list strong{overflow-wrap:anywhere;font-size:11px}.admin-attachment-list small{color:var(--text-secondary);font-size:9px}.admin-activity-list>div{border-left:2px solid var(--border-color);background:var(--surface-muted);padding:9px 10px}.admin-activity-list span{color:var(--text-secondary);font-size:9px}.admin-activity-list p{margin:3px 0 0;font-size:11px;line-height:1.4}@media (width<=720px){.contractor-header{padding-inline:16px}.portal-user div{display:none}.portal-signout{margin-left:4px}.portal-main{padding-top:30px}.portal-intro{flex-direction:column;align-items:flex-start}.portal-count{align-self:stretch}.portal-columns{grid-template-columns:1fr}.completed-section{padding-top:12px}.portal-form-grid,.account-form,.admin-review-summary{grid-template-columns:1fr}.portal-wide{grid-column:auto}.portal-actions{flex-wrap:wrap;align-items:stretch}.account-panel{margin:16px;padding:15px}.account-row{flex-wrap:wrap;align-items:flex-start}.account-row .small-button{margin-left:40px}}.dashboard-lower{display:block}@media (width<=900px){.app-shell,.nav-collapsed{display:block}.sidebar,.sidebar.collapsed{z-index:60;width:100%;height:auto;max-height:none;padding:0;transition:none;position:sticky;top:0;transform:none}.sidebar .brand,.sidebar .workspace-switcher,.sidebar .sidebar-footer{display:none}.side-nav{flex-direction:row;gap:4px;padding:6px 12px;overflow-x:auto}.nav-group{display:contents}.nav-group p{display:none}.side-nav button{flex:none;width:auto;padding-inline:12px}.collapsed .side-nav span{display:inline}}.sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.quote-list-view{border:1px solid var(--border-color);background:var(--surface);border-radius:12px;min-width:0;margin:0 24px 56px;padding:18px}.quote-list-overview{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:20px;padding:0 2px 16px;display:flex}.quote-list-overview>div:first-child{align-items:baseline;gap:8px;display:flex}.quote-list-overview h2{letter-spacing:-.02em;margin:0;font-size:17px}.quote-list-overview>div:first-child span{color:var(--text-secondary);font-size:10px}.quote-list-overview .quote-pipeline-total{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.quote-list-overview .quote-pipeline-total>span{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:700}.quote-list-overview .quote-pipeline-total .price-display{font-size:21px}.quote-list-view .quote-browser-controls{align-items:center;gap:10px;margin:14px 0;display:flex}.quote-list-view .quote-workspace-search{flex:0 360px;width:min(360px,35%);margin:0}.quote-list-view .quote-status-tabs{border:0;min-width:0;padding:0}.quote-filter-toolbar{border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background:var(--surface-muted,#fafaf8);justify-content:space-between;align-items:center;gap:14px;margin:0;padding:10px 12px;display:flex}.quote-filter-heading,.quote-filter-actions{align-items:center;gap:8px;display:flex}.quote-filter-heading{color:var(--text-primary);font-size:10px}.quote-filter-heading svg{color:var(--accent)}.quote-filter-heading span{color:var(--text-secondary);font-size:9px;font-weight:500}.quote-filter-actions{flex-wrap:wrap;justify-content:flex-end}.quote-filter-actions .small-button,.quote-filter-actions .text-button{white-space:nowrap}.quote-filter-rows{border-bottom:1px solid var(--border-color);gap:8px;margin:0;padding:10px 12px 14px;display:grid}.quote-filter-row{border:1px solid var(--border-color);background:var(--surface-muted,#fafaf8);border-radius:8px;grid-template-columns:minmax(150px,1fr) minmax(120px,.8fr) minmax(170px,1.2fr) auto;align-items:end;gap:8px;padding:10px;display:grid;position:relative}.quote-filter-row label{gap:4px;min-width:0;display:grid}.quote-filter-row label>span{color:var(--text-secondary);letter-spacing:.045em;text-transform:uppercase;font-size:8px;font-weight:750}.quote-filter-row select,.quote-filter-row input{border:1px solid var(--border-color);background:var(--surface);width:100%;min-width:0;height:32px;color:var(--text-primary);font:inherit;border-radius:6px;padding:0 9px;font-size:10px}.quote-filter-and{color:var(--text-secondary);letter-spacing:.08em;font-size:8px;font-weight:800;position:absolute;top:50%;left:-34px;transform:translateY(-50%)}.quote-filter-remove{height:32px;margin:0}.quote-table thead th.is-dragging{opacity:.45}.quote-table thead th.drop-target{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.quote-sort-button{width:100%;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;text-align:left;text-transform:inherit;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:7px;padding:0;display:flex}.quote-sort-button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}.quote-sort-indicator{color:var(--accent);font-size:11px;line-height:1}.quote-table tbody tr{cursor:pointer;transition:background .14s}.quote-table tbody tr:has(.quote-row-link:focus-visible){outline:2px solid var(--accent);outline-offset:-2px;background:var(--accent-soft)}.quote-table tbody th{color:var(--accent);font-weight:750}.quote-row-link{width:100%;color:inherit;font:inherit;font-weight:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:0;padding:0;display:block}.quote-row-link:focus-visible{outline:0}.quote-table-title{color:var(--text-primary);font-weight:700}.quote-table-address{color:var(--text-secondary);white-space:normal;overflow-wrap:anywhere}.quote-table time{font-variant-numeric:tabular-nums;white-space:nowrap}.quote-table .price-display{font-size:11px}@media (width<=900px){.quote-list-view{margin-inline:16px;padding:14px}.quote-list-view .quote-browser-controls{flex-direction:column;align-items:stretch}.quote-list-view .quote-workspace-search{flex-basis:auto;width:100%}.quote-list-view .quote-status-tabs{width:100%;padding-bottom:3px}.quote-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-filter-remove{grid-column:2;justify-self:end}.quote-filter-and{left:-25px}}@media (width<=560px){.quote-filter-toolbar{flex-direction:column;align-items:flex-start}.quote-filter-actions{justify-content:flex-start;width:100%}.quote-filter-row{grid-template-columns:1fr 1fr;padding:9px}.quote-filter-and{grid-area:1/1/auto/-1;position:static;transform:none}.quote-filter-remove{grid-column:2}.quote-table-scroll{margin-inline:-1px}.quote-list-view{margin-inline:10px;padding:11px}.quote-list-overview{align-items:flex-start}.quote-list-overview .quote-pipeline-total .price-display{font-size:17px}.quotes-page-header{padding-inline:12px}}.library-page{gap:16px;padding:0 20px 26px;display:grid}.library-page-header{justify-content:space-between;align-items:flex-end;gap:20px;padding:16px 2px 2px;display:flex}.library-page-header>div:first-child{min-width:0}.library-page-header h2{letter-spacing:-.025em;margin:5px 0 4px;font-size:24px}.library-page-header p{max-width:720px;color:var(--text-secondary);margin:0;font-size:12px;line-height:1.5}.library-page-header.library-list-header{flex-flow:wrap;align-items:flex-end;gap:12px 20px;min-width:0;padding-inline:0}.library-list-header>div:first-child{flex:28rem}.library-list-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;width:max-content;min-width:0;max-width:100%;margin-left:auto;display:flex}.library-list-header .library-list-actions>button{min-height:var(--touch-target);white-space:nowrap;flex:none}.library-list-actions>button svg{flex-shrink:0}.library-description{margin:-8px 2px 0}.library-table-view,.library-detail-panel{border:1px solid var(--border-color);background:var(--surface);border-radius:10px;min-width:0;padding:16px}.library-table-toolbar{flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:12px;display:flex}.library-table-toolbar .quote-workspace-search{width:min(100%,420px);margin:0}.data-table-add-filter{white-space:nowrap;border-style:dashed;margin-left:auto}.library-table{min-width:0}.library-table th,.library-table td{text-overflow:clip;overflow:visible}.bulk-action-panel>div{gap:3px;min-width:0;display:grid}.bulk-action-panel strong{font-size:12px}.bulk-action-panel span{color:var(--text-secondary);font-size:10px}.bulk-action-panel p{margin:4px 0 0}.library-currency-value{font-variant-numeric:tabular-nums;font-weight:750}.library-detail-panel{max-width:980px}.library-detail-panel .template-editor{max-width:none}.library-detail-panel .section-divider{margin-bottom:0}.price-list-table-view{padding:0;overflow:hidden}.price-list-table-view .library-table-toolbar{border-bottom:1px solid var(--border-color);margin:0;padding:10px 12px}.price-list-table-view .quote-filter-toolbar{margin:0;padding:10px 12px}.price-list-table-view .library-table-scroll{border:0;border-radius:0}.price-list-item-cell{gap:2px;display:grid}.price-list-item-cell strong{color:var(--text-primary);font-size:12px}.price-list-item-cell small{color:var(--text-secondary);white-space:normal;overflow-wrap:anywhere;font-size:10px}.price-category-contractors{color:var(--accent);background:var(--accent-soft)}.price-category-material,.price-category-labor{color:var(--success);background:var(--success-soft)}.price-category-equipment{color:var(--warning-text);background:var(--warning-bg)}.price-category-other{color:var(--text-secondary);background:var(--surface-muted)}.price-list-footer{border:1px solid var(--border-color);color:var(--text-secondary);background:var(--surface);border-top:0;border-radius:0 0 10px 10px;justify-content:space-between;gap:20px;margin-top:-18px;padding:9px 13px;font-size:9px;display:flex}@media (width<=900px){.library-page{padding-inline:16px}.library-page-header{flex-direction:column;align-items:flex-start}.library-page-header>.button-row{align-items:stretch;width:100%}.library-table-view,.library-detail-panel{padding:14px}.price-list-table-view{padding:0}.price-list-editor{grid-template-columns:1fr}.price-list-total,.price-list-editor-actions{grid-area:auto/1}.price-list-editor-actions{grid-template-columns:1fr 1fr}}@media (width<=560px){.library-page{padding-inline:10px}.library-page-header>.button-row{flex-direction:column}.library-page-header>.button-row>*{width:100%}.library-table-view,.library-detail-panel{padding:11px}.library-table-toolbar .quote-workspace-search{width:100%}.library-table-toolbar{flex-direction:column;align-items:stretch}.library-table-toolbar .data-table-add-filter{width:100%;margin-left:0}.price-list-footer{flex-direction:column;align-items:flex-start;gap:4px}.price-list-editor-actions{grid-template-columns:1fr}.bulk-action-panel{flex-direction:column;align-items:stretch}.bulk-action-panel .danger-button{width:100%}.directory-browser-controls{align-items:stretch}.directory-browser-controls .quote-workspace-search,.directory-browser-controls .customer-filter-chip,.directory-browser-controls .data-table-add-filter,.directory-browser-controls .customer-columns-control,.directory-browser-controls .customer-columns-button{width:100%;margin-left:0}.directory-browser-controls .customer-filter-chip{border-left:0;justify-content:space-between}}.directory-list-view{min-width:0}.directory-list-heading{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:20px;padding:0 2px 14px;display:flex}.directory-list-heading>div{align-items:baseline;gap:8px;display:flex}.directory-list-heading h2{letter-spacing:-.02em;margin:0;font-size:17px}.directory-list-heading span{color:var(--text-secondary);font-size:10px}.directory-browser-controls{flex-wrap:wrap;align-items:center;gap:9px;margin:14px 0;display:flex}.directory-browser-controls .quote-workspace-search{flex:420px;width:min(420px,100%);min-width:min(280px,100%);margin:0}.directory-browser-controls>*{min-width:0;max-width:100%}.directory-browser-controls .customer-columns-control{flex-wrap:wrap;align-items:center;gap:9px;min-width:0;display:flex}.directory-browser-controls :is(.small-button,.customer-filter-chip){white-space:normal;overflow-wrap:anywhere;flex:none;max-width:100%}.directory-table thead th.is-dragging{opacity:.45}.directory-table thead th.drop-target{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.directory-table tbody tr{cursor:pointer;transition:background .14s}.directory-table tbody tr.selected{background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface))}.directory-table tbody tr:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:var(--accent-soft)}.directory-table tbody th{color:var(--accent);font-weight:750}.directory-table time{font-variant-numeric:tabular-nums;white-space:nowrap}.directory-row-link{width:100%;min-width:0;color:inherit;font:inherit;font-weight:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:0;gap:2px;padding:0;display:grid}.directory-row-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}.directory-row-link strong{font:inherit;font-weight:750}.directory-secondary{color:var(--text-secondary);overflow-wrap:anywhere;font-size:10px;font-weight:500;display:block}.directory-detail-page{min-width:0}.directory-detail-header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.directory-detail-header>div{min-width:0}.directory-detail-header h2{letter-spacing:-.035em;margin:2px 0 4px;font-size:24px}.directory-detail-header p{color:var(--text-secondary);margin:0;font-size:12px}.directory-detail-header>.text-button{flex:none}@media (width<=700px){.directory-browser-controls .quote-workspace-search{flex:1 0 100%;width:100%;min-width:0}.directory-browser-controls .data-table-add-filter{margin-left:0}.directory-browser-controls .data-table-add-filter,.directory-browser-controls .customer-columns-button{min-height:44px}.directory-detail-header{flex-direction:column}.directory-table-scroll{margin-inline:-1px}}.contractors-page,.contractor-detail-page{background:#f6f7fa;gap:14px;min-height:calc(100vh - 72px);padding:16px 24px 40px;display:grid}.contractors-page{grid-auto-rows:max-content;align-content:start}.contractors-page-header,.contractor-detail-header{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.contractors-page-header h2,.contractor-detail-header h2{letter-spacing:-.035em;margin:5px 0 3px;font-size:23px}.contractors-page-header p,.contractor-detail-header p{color:var(--text-secondary);margin:0;font-size:11px}.contractors-page-header .eyebrow,.contractor-detail-header .eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:8px}.contractors-table-panel{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;min-width:0;overflow:hidden}.directory-list-contractors .directory-browser-controls{border-bottom:1px solid var(--border-color);gap:9px;margin:0;padding:10px 12px}.directory-list-contractors .quote-workspace-search{height:32px}.directory-list-contractors .customer-columns-control{position:relative}.directory-list-contractors .directory-table-scroll{border:0;border-radius:0}.contractor-directory-table tbody th{color:var(--text-primary)}.contractor-name-cell{align-items:center;gap:8px;min-width:0;display:flex}.contractor-name-cell>span:last-child{min-width:0}.contractor-avatar{color:#6b7280;text-transform:uppercase;background:#edf0f4;border-radius:4px;flex:0 0 22px;place-items:center;width:22px;height:22px;font-size:7px;font-weight:750;display:grid}.contractor-trade-badge{border:1px solid var(--border-color);white-space:normal;overflow-wrap:anywhere;border-radius:999px;max-width:100%;padding:3px 7px;font-size:8px;display:inline-block}.contractor-row-menu{background:0 0;border:0;width:26px;height:26px}.contractor-back-button{width:max-content;padding:0}.contractor-detail-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}.contractor-detail-main,.contractor-detail-aside{gap:14px;display:grid}.contractor-detail-main .account-panel{border:1px solid var(--border-color);background:var(--surface);margin:0;padding:0}.contractor-detail-main .account-panel>.panel-header{border-bottom:1px solid var(--border-color);padding:12px 16px}.contractor-detail-main .account-panel>.portal-muted,.contractor-detail-main .account-panel>.account-error{margin:0;padding:14px 16px}.contractor-detail-main .account-form{padding:14px 16px}.contractor-detail-main .account-list{padding:0 16px 12px}.contractor-detail-main .account-row{grid-template-columns:auto minmax(180px,1fr) auto auto}.contractor-form-panel,.contractor-work-panel{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;min-width:0}.contractor-form-panel>h3,.contractor-work-panel>header{border-bottom:1px solid var(--border-color);margin:0;padding:13px 16px}.contractor-form-panel>h3,.contractor-work-panel h3{font-size:12px}.contractor-form-panel .contractor-setup{padding:15px 16px}.contractor-form-panel .contractor-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}.contractor-form-panel .contractor-fields>.field:nth-child(6),.contractor-form-panel .contractor-fields>.field:last-child{grid-column:1/-1}.contractor-form-panel textarea{min-height:64px}.contractor-detail-page .contractor-form-actions,.contractor-detail-page .contractor-inline-error{display:none}.contractor-work-panel>header{justify-content:space-between;align-items:center;gap:8px;display:flex}.contractor-work-panel>header>div{gap:2px;display:grid}.contractor-work-panel>header span{color:var(--text-secondary);font-size:8px}.contractor-work-list{padding:0 14px}.contractor-work-list article{border-bottom:1px solid var(--border-color);grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:8px;padding:11px 0;display:grid}.contractor-work-list article:last-child{border-bottom:0}.contractor-work-list article>small{color:var(--text-secondary);font-size:8px}.contractor-work-list article>span:nth-child(2){gap:2px;min-width:0;display:grid}.contractor-work-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.contractor-work-list span small{color:var(--text-secondary);font-size:8px}.contractor-work-empty{color:var(--text-secondary);margin:0;padding:16px;font-size:10px}.contractor-work-error{border-top:1px solid var(--border-color);color:var(--danger);margin:0;padding:8px 14px;font-size:8px}.contractor-detail-actions{gap:7px;display:grid}.contractor-detail-actions button{width:100%}@media (width<=900px){.contractor-detail-layout{grid-template-columns:1fr}.contractor-detail-aside{grid-template-columns:minmax(0,1fr) 220px}.contractors-page,.contractor-detail-page{padding-inline:16px}}@media (width<=700px){.contractors-page-header,.contractor-detail-header{flex-direction:column;align-items:flex-start}.contractors-page-header>button,.contractor-detail-header>button{width:100%}.directory-list-contractors .directory-browser-controls{flex-wrap:wrap}.directory-list-contractors .quote-workspace-search{flex-basis:100%;width:100%}.directory-list-contractors .customer-filter-chip{border-left:0;padding-left:0}.contractor-detail-aside,.contractor-form-panel .contractor-fields{grid-template-columns:1fr}.contractor-form-panel .contractor-fields>.field:nth-child(6),.contractor-form-panel .contractor-fields>.field:last-child{grid-column:auto}.contractors-page,.contractor-detail-page{padding-inline:10px}.contractor-detail-main .account-row{grid-template-columns:auto minmax(0,1fr)}}.customers-page{background:#f6f7fa;grid-auto-rows:max-content;align-content:start;gap:14px;min-height:calc(100vh - 72px);padding:16px 24px 40px;display:grid}.customers-page-header,.customer-detail-header{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.customers-page-header h2,.customer-detail-header h2{letter-spacing:-.035em;margin:5px 0 3px;font-size:23px}.customers-page-header p,.customer-detail-header p{color:var(--text-secondary);margin:0;font-size:11px}.customers-page-header .eyebrow,.customer-detail-header .eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:8px}.customers-table-panel{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;min-width:0;overflow:hidden}.directory-list-customers .directory-browser-controls{border-bottom:1px solid var(--border-color);gap:9px;margin:0;padding:10px 12px}.directory-list-customers .quote-workspace-search{height:32px}.customer-filter-chip{border:0;border-left:1px solid var(--border-color);height:32px;color:var(--text-primary);font:inherit;cursor:pointer;background:0 0;align-items:center;gap:15px;padding:0 10px;font-size:9px;display:inline-flex}.customer-filter-chip[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}.customer-filter-chip b{font-size:9px;font-weight:500}.directory-list-customers .customer-columns-control{position:relative}.customer-columns-menu{z-index:20;border:1px solid var(--border-color);background:var(--surface);border-radius:7px;gap:7px;width:180px;padding:10px;display:grid;position:absolute;top:calc(100% + 5px);right:0;box-shadow:0 10px 25px #0f172a21}.customer-columns-menu label{align-items:center;gap:7px;font-size:9px;display:flex}.customer-columns-menu input{width:14px;height:14px;margin:0}.directory-list-customers .directory-table-scroll{border:0;border-radius:0}.customer-directory-table tbody th{color:var(--text-primary)}.customer-name-cell{align-items:center;gap:8px;min-width:0;display:flex}.customer-avatar{color:#6b7280;background:#edf0f4;border-radius:4px;flex:0 0 22px;place-items:center;width:22px;height:22px;font-size:7px;font-weight:750;display:grid}.customer-avatar:before{content:attr(data-initials)}.customer-cell-truncate{white-space:normal;overflow-wrap:anywhere;min-width:0;display:block}.customer-actions-heading,.customer-actions-cell{text-align:center!important;width:110px!important;padding-inline:5px!important;overflow:visible!important}.customer-row-menu{background:0 0;border:0;width:26px;height:26px}.customer-row-actions{display:inline-block;position:relative}.customer-row-actions-menu{z-index:25;border:1px solid var(--border-color);background:var(--surface);border-radius:6px;width:120px;padding:4px;position:absolute;top:100%;right:0;box-shadow:0 8px 20px #0f172a24}.customer-row-actions-menu button{width:100%;color:var(--text-primary);font:inherit;text-align:left;background:0 0;border:0;border-radius:4px;padding:7px 8px;font-size:9px;display:block}.customer-row-actions-menu button:hover,.customer-row-actions-menu button:focus-visible{background:var(--surface-muted);outline:none}.customer-table-footer{color:var(--text-secondary);background:#fafaf9;padding:9px 13px;font-size:9px}.customer-detail-page{gap:15px;display:grid}.customer-back-button{width:max-content;padding:0}.customer-detail-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}.customer-detail-form-panel,.customer-quotes-card{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;min-width:0}.customer-detail-form-panel>h3,.customer-quotes-card>header{border-bottom:1px solid var(--border-color);margin:0;padding:13px 16px}.customer-detail-form-panel>h3,.customer-quotes-card h3{font-size:12px}.customer-detail-form-panel .customer-setup{padding:15px 16px}.customer-detail-form-panel .customer-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}.customer-detail-form-panel .customer-fields .phone-field,.customer-detail-form-panel .customer-fields .field:last-child,.customer-detail-form-panel .customer-fields .field:nth-child(6){grid-column:1/-1}.customer-detail-form-panel textarea{min-height:64px}.customer-detail-aside{gap:12px;display:grid}.customer-quotes-card>header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.customer-quotes-card>header div{gap:2px;display:grid}.customer-quotes-card>header span{color:var(--text-secondary);font-size:8px}.customer-quotes-card .text-button{padding:0;font-size:9px}.customer-quotes-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.customer-quotes-actions .small-button{min-height:44px}.customer-quotes-list{padding:0 14px}.customer-quotes-list>button{border:0;border-bottom:1px solid var(--border-color);width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;grid-template-columns:48px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:11px 0;display:grid}.customer-quotes-list>button:last-child{border-bottom:0}.customer-quotes-list small{color:var(--text-secondary);font-size:8px}.customer-quotes-list strong{text-overflow:ellipsis;min-width:0;font-size:10px;overflow:hidden}.customer-quotes-empty{color:var(--text-secondary);margin:0;padding:16px;font-size:10px}.customer-detail-actions{gap:7px;display:grid}.customer-detail-actions button{width:100%}@media (width<=900px){.customer-detail-layout{grid-template-columns:1fr}.customer-detail-aside{grid-template-columns:minmax(0,1fr) 220px}.customers-page{padding-inline:16px}}@media (width<=700px){.customers-page-header,.customer-detail-header{flex-direction:column;align-items:flex-start}.customers-page-header>button,.customer-detail-header>button{width:100%}.directory-list-customers .directory-browser-controls{flex-wrap:wrap}.directory-list-customers .quote-workspace-search{flex-basis:100%;width:100%}.customer-filter-chip{border-left:0;padding-left:0}.customer-detail-form-panel .customer-fields{grid-template-columns:1fr}.customer-detail-form-panel .customer-fields .phone-field,.customer-detail-form-panel .customer-fields .field:last-child,.customer-detail-form-panel .customer-fields .field:nth-child(6){grid-column:auto}.customer-detail-aside{grid-template-columns:1fr}.customers-page{padding-inline:10px}.customer-quotes-list>button{grid-template-columns:42px minmax(0,1fr) auto}.customer-quotes-list .price-display{text-align:left;grid-column:2}}.detail-tabs{gap:16px;min-width:0;display:grid}.detail-tablist{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:10px;gap:4px;max-width:100%;padding:4px;display:flex;overflow-x:auto}.detail-tablist button{min-height:44px;color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;padding:8px 13px;font-weight:700}.detail-tablist button[aria-selected=true]{color:var(--text-primary);background:var(--surface);box-shadow:0 1px 3px #0f172a1f}.detail-tablist button:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.profile-card{border:1px solid var(--border-color);background:var(--surface);border-radius:14px;min-width:0;padding:18px;box-shadow:0 12px 30px #0f172a0f}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.profile-card{border-color:color-mix(in srgb,var(--border-color) 78%,transparent);background:color-mix(in srgb,var(--surface) 84%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}}.profile-card-identity{align-items:center;gap:13px;margin-bottom:18px;display:flex}.profile-card-identity-copy{flex:1;min-width:0}.profile-card-identity>span{border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border-color));width:48px;height:48px;color:var(--accent);background:var(--accent-soft);border-radius:14px;flex:none;place-items:center;font-weight:800;display:grid}.profile-card-identity small{color:var(--text-secondary);font-weight:700}.profile-card-identity h3{overflow-wrap:anywhere;margin:2px 0 0;font-size:18px}.profile-card-identity p{color:var(--text-secondary);overflow-wrap:anywhere;margin:3px 0 0;font-size:13px}.profile-card-edit{border:1px solid var(--border-color);width:44px;height:44px;color:var(--text-secondary);background:var(--surface);cursor:pointer;border-radius:9px;flex:none;place-items:center;padding:0;display:grid}.profile-card-edit:hover{color:var(--accent);border-color:var(--accent)}.profile-card-edit:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.profile-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 22px;margin:0;display:grid}.profile-card dl>div{min-width:0}.profile-card dt{color:var(--text-secondary);text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:700}.profile-card dd{overflow-wrap:anywhere;margin:0;font-size:14px}.profile-card a{color:var(--accent)}.notes-workspace{border:1px solid var(--border-color);background:var(--surface);border-radius:14px;gap:12px;min-width:0;padding:18px;display:grid}.notes-workspace h3{margin:0;font-size:16px}.notes-workspace textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:110px}.notes-composer-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.notes-composer-actions small{color:var(--text-secondary);margin-right:auto}.notes-list{gap:10px;display:grid}.directory-note{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:10px;gap:8px;padding:13px;display:grid}.directory-note.is-pinned{border-color:color-mix(in srgb,var(--accent) 38%,var(--border-color));box-shadow:inset 3px 0 0 var(--accent)}.directory-note p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.5}.directory-note small,.notes-empty{color:var(--text-secondary)}.directory-note>div{flex-wrap:wrap;gap:12px;display:flex}.directory-note .text-button{min-height:44px;padding:0 4px}.notes-empty{margin:5px 0;line-height:1.5}@media (prefers-reduced-transparency:reduce){.profile-card{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}}@media (width<=700px){.profile-card dl{grid-template-columns:1fr}.detail-tablist{box-sizing:border-box;width:100%}.profile-card,.notes-workspace{padding:14px}.contractor-detail-layout,.customer-detail-layout{min-width:0}.customer-detail-actions .primary-button,.contractor-detail-actions .primary-button,.notes-composer-actions .primary-button{min-height:44px}}.contractor-work-groups{gap:8px;padding:12px 14px;display:grid}.contractor-work-group{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;min-width:0;overflow:hidden}.contractor-work-group:has(.contractor-work-group-header[aria-expanded=true]){background:color-mix(in srgb,var(--surface-muted) 38%,var(--surface))}.contractor-work-group-heading{margin:0}.contractor-work-group-header{width:100%;min-height:52px;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;display:flex}.contractor-work-group-header:hover{background:color-mix(in srgb,var(--surface-muted) 64%,transparent)}.contractor-work-group-header:focus-visible{z-index:1;outline:2px solid var(--accent);outline-offset:-2px;position:relative}.contractor-work-group-copy{gap:2px;min-width:0;display:grid}.contractor-work-group-copy small{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;font-size:9px;font-weight:700}.contractor-work-group-title{overflow-wrap:anywhere;font-size:13px;font-weight:750;line-height:1.3}.contractor-work-group-address{color:var(--text-secondary);overflow-wrap:anywhere;align-items:flex-start;gap:5px;font-size:10px;line-height:1.35;display:flex}.contractor-work-group-address svg{flex:none;margin-top:1px}.contractor-work-group-actions{flex:none;align-items:center;gap:9px;display:flex}.contractor-work-group-actions strong{color:var(--text-secondary);background:var(--surface-muted);white-space:nowrap;border-radius:999px;padding:4px 7px;font-size:9px}.contractor-work-chevron{color:var(--text-secondary);flex:none;transition:transform .18s}.contractor-work-group-header[aria-expanded=true] .contractor-work-chevron{transform:rotate(180deg)}.contractor-work-region{border-top:1px solid var(--border-color);animation:.16s ease-out contractor-work-reveal}@keyframes contractor-work-reveal{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.contractor-work-group .contractor-work-list{margin:0;padding:0 14px;list-style:none}.contractor-work-group .contractor-work-list li{border-bottom:1px solid var(--border-color);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;display:grid}.contractor-work-group .contractor-work-list li:last-child{border-bottom:0}.contractor-work-group .contractor-work-list li>span:first-child{gap:3px;min-width:0;display:grid}.contractor-work-group .contractor-work-list strong{overflow-wrap:anywhere;white-space:normal;font-size:11px}.contractor-work-group .contractor-work-list span small{color:var(--text-secondary);font-size:9px}.contractor-work-loading{border-bottom:1px solid var(--border-color);color:var(--text-secondary);margin:0;padding:8px 14px;font-size:10px}@media (width<=700px){.contractor-work-groups{padding:10px}.contractor-work-group-header{align-items:flex-start;gap:8px;min-height:58px;padding:10px}.contractor-work-group-actions{padding-top:2px}.contractor-work-group .contractor-work-list li{grid-template-columns:1fr;align-items:flex-start}.contractor-work-group .contractor-work-list .portal-status{justify-self:start}}@media (prefers-reduced-motion:reduce){.contractor-work-chevron{transition:none}.contractor-work-region{animation:none}}.quotes-page{background:#f6f7fa;min-height:calc(100vh - 72px);padding:16px 24px 40px}.quotes-page-header{align-items:center;margin:0 0 16px;padding:0}.quotes-page-header .eyebrow{text-transform:uppercase;letter-spacing:.07em;font-size:9px}.quotes-page-header h2{margin:5px 0 3px;font-size:23px}.quotes-page-header-actions{align-items:center;gap:22px;display:flex}.quotes-page-header-actions .quote-pipeline-total{align-items:flex-end}.quotes-page-header-actions .quote-pipeline-total .price-display{font-size:19px}.quote-list-view{border-radius:9px;margin:0;padding:0;position:relative;overflow:hidden}.quote-list-overview{display:none}.quote-list-view>.library-table-view{grid-template-columns:minmax(0,1fr) auto;padding:0;display:grid}.quote-list-view .quote-browser-controls{display:contents}.quote-list-view .data-table-status-row{grid-area:1/1/auto/-1;min-width:0}.quote-list-view .quote-status-tabs{border-bottom:1px solid var(--border-color);overscroll-behavior-inline:contain;scrollbar-width:none;-ms-overflow-style:none;grid-column:1/-1;gap:21px;width:100%;height:45px;padding:0 14px;overflow:auto hidden}.quote-list-view .quote-status-tabs::-webkit-scrollbar{width:0;height:0;display:none}.quote-list-view .quote-status-tabs button{white-space:nowrap;border-radius:0;height:45px;padding:0;font-size:10px;position:relative}.quote-list-view .quote-status-tabs button.active{color:var(--text-primary);background:0 0}.quote-list-view .quote-status-tabs button.active:after{content:"";background:var(--text-primary);height:2px;position:absolute;bottom:0;left:0;right:0}.quote-list-view .quote-workspace-search{flex-basis:auto;grid-column:1;width:min(260px,100% - 14px);height:32px;margin:10px 0 10px 14px}.quote-list-view .data-table-filter-tools{display:contents}.quote-list-view .data-table-add-filter{border-color:var(--border-color);background:var(--surface);white-space:nowrap;border-radius:7px;grid-column:2;place-self:center end;height:32px;min-height:32px;margin:0 14px 0 10px;padding:0 10px;font-size:10px;line-height:1}.quote-list-view .data-table-add-filter svg{flex:none;width:13px;height:13px}.quote-list-view .data-table-add-filter:hover:not(:disabled){border-color:var(--border-strong);background:var(--hover-bg)}.quote-list-view .data-table-add-filter:active:not(:disabled){background:var(--surface-muted);transform:translateY(1px)}.quote-list-view .data-table-add-filter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.quote-list-view .quote-filter-toolbar{border:0;border-top:1px solid var(--border-color);background:var(--surface-muted);grid-column:1/-1;align-self:center;margin:0;padding:10px 14px}.quote-list-view .quote-filter-heading{display:flex}.quote-list-view .quote-filter-actions{gap:7px}.quote-list-view .quote-filter-actions .small-button{height:32px;min-height:32px}.quote-list-view .quote-filter-actions .text-button{font-size:var(--type-label);white-space:nowrap}.quote-list-view .quote-filter-rows,.quote-list-view .bulk-action-panel,.quote-list-view .quote-table-scroll,.quote-list-view .empty-state{grid-column:1/-1}.quote-list-view .quote-filter-rows{margin:0 14px 10px}.quote-list-footer{border-top:1px solid var(--border-color);min-height:34px;color:var(--text-secondary);justify-content:space-between;align-items:center;padding:0 14px;font-size:8px;display:flex}.quote-detail-view{background:0 0;display:block}.template-item-tax{gap:5px;min-width:0;display:grid}.template-item-tax select,.template-item-tax input{width:100%;min-width:0}@media (width<=760px){.quotes-page{padding:16px 12px 28px}.quotes-page-header{align-items:stretch}.quotes-page-header-actions{justify-content:space-between}.quote-list-view>.library-table-view{grid-template-columns:1fr}.quote-list-view .quote-workspace-search{grid-column:1;width:calc(100% - 28px);margin-right:14px}.quote-list-view .data-table-add-filter{grid-column:1;justify-self:start;margin:0 14px 10px}.quote-list-view .quote-filter-toolbar{grid-column:1;margin:0;padding:10px 14px}.quote-list-view .quote-filter-actions{justify-content:flex-start}.quote-list-footer{flex-direction:column;justify-content:center;align-items:flex-start;gap:3px}}@media (width<=520px){.quotes-page-header-actions{flex-direction:column;align-items:stretch}.quotes-page-header-actions .quote-pipeline-total{align-items:flex-start}.quotes-page-header .primary-button{width:100%}}.app-shell .insight-value,.app-shell .insight-metrics .metric-bar b,.app-shell .record-row b{font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular);font-feature-settings:"tnum" 1, "lnum" 1;font-weight:var(--numeric-weight-strong);line-height:var(--numeric-line-height)}.app-shell .insight-value,.app-shell .template-summary-card>strong,.app-shell .price-list-total strong,.app-shell .price-display,.app-shell .summary-lines b,.app-shell .approved-total dd{overflow-wrap:anywhere;white-space:normal;min-width:0;max-width:100%}.app-shell .price-display,.app-shell .quote-summary-sidebar .summary-lines b,.app-shell .price-list-total strong,.app-shell .price-list-total-meta dd,.app-shell .template-summary-card>strong,.app-shell .template-summary-counts b,.app-shell .template-item-total output,.app-shell .library-currency-value{font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular);font-feature-settings:"tnum" 1, "lnum" 1;font-weight:var(--numeric-weight-strong);line-height:var(--numeric-line-height)}.app-shell .template-item-quantity input,.app-shell .template-item-amount input,.app-shell .quote-table time,.app-shell .directory-table time,.app-shell .schedule-summary strong,.app-shell .schedule-project-range,.app-shell .task-row-dates strong,.app-shell .task-row-progress>strong,.app-shell .dashboard-calendar-day>time,.app-shell .dashboard-calendar-agenda time,.app-shell .table-column-numeric,.app-shell .quote-number-cell{font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular);font-feature-settings:"tnum" 1, "lnum" 1;font-weight:var(--numeric-weight-emphasis)}.app-shell .quote-table time,.app-shell .directory-table time,.app-shell .schedule-summary strong,.app-shell .schedule-project-range,.app-shell .task-row-dates strong,.app-shell .task-row-progress>strong,.app-shell .dashboard-calendar-day>time,.app-shell .dashboard-calendar-agenda time,.app-shell .quote-number-cell{line-height:var(--numeric-line-height-regular)}.contractor-portal .portal-count strong,.contractor-portal .portal-task-meta{font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular);font-feature-settings:"tnum" 1, "lnum" 1}.contractor-portal .portal-count strong{font-weight:var(--numeric-weight-strong);line-height:var(--numeric-line-height)}.contractor-portal .portal-task-meta{font-weight:var(--numeric-weight-emphasis)}:where(.app-shell,.contractor-portal) .numeric-display{font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular);font-feature-settings:"tnum" 1, "lnum" 1;font-weight:var(--numeric-weight-strong);line-height:var(--numeric-line-height)}:where(.app-shell,.contractor-portal) .numeric-emphasis{font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular);font-feature-settings:"tnum" 1, "lnum" 1;font-weight:var(--numeric-weight-emphasis);line-height:var(--numeric-line-height)}:where(.app-shell,.contractor-portal) .numeric-regular{font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular);font-feature-settings:"tnum" 1, "lnum" 1;font-weight:var(--numeric-weight-regular);line-height:var(--numeric-line-height-regular)}.app-shell .email-delivery-summary dd,.app-shell .approved-quote-summary .approved-total dd,.app-shell .task-row-dates strong,.app-shell .task-row-dates time,.contractor-portal .portal-progress div b{font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular);font-feature-settings:"tnum" 1, "lnum" 1;font-weight:var(--numeric-weight-emphasis)}.app-shell .numeric-input,.contractor-portal .numeric-input{font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular);font-feature-settings:"tnum" 1, "lnum" 1;font-weight:var(--numeric-weight-emphasis);line-height:var(--numeric-line-height-regular)}.app-shell :is(input[type=date],input[type=tel],input[type=number],input[inputmode=numeric],input[inputmode=decimal]),.contractor-portal :is(input[type=date],input[type=tel],input[type=number],input[inputmode=numeric],input[inputmode=decimal]),.app-shell :is(time,.date-cell,.quote-number),.contractor-portal :is(time,.date-cell,.quote-number){font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular);font-feature-settings:"tnum" 1, "lnum" 1;font-weight:var(--numeric-weight-regular);line-height:var(--numeric-line-height-regular)}.app-shell .approved-quote-summary .approved-total dd,.app-shell .email-delivery-summary dd:not(:first-child){line-height:var(--numeric-line-height)}.numeric-input{-moz-appearance:textfield}.numeric-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.numeric-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.quote-table:not(.price-list-table):not(.template-library-table) :is(th,td,th *,td *){overflow-wrap:break-word;word-break:normal}.quote-table:not(.price-list-table):not(.template-library-table) thead th,.quote-table:not(.price-list-table):not(.template-library-table) thead th :where(.quote-sort-button){overflow-wrap:normal;word-break:normal}.quote-table:not(.price-list-table):not(.template-library-table) .quote-row-link{overflow-wrap:break-word;word-break:normal}.directory-table{width:max-content;min-width:0}.directory-table :is(th,td){overflow-wrap:break-word;word-break:normal}.directory-table thead th{overflow-wrap:normal;word-break:normal}.directory-table thead .quote-sort-button{white-space:nowrap}.directory-table .table-selection-heading,.directory-table .table-selection-cell{min-width:40px}.directory-table .customer-actions-heading,.directory-table .customer-actions-cell{min-width:38px}:where(.price-list-table,.template-library-table){width:100%;min-width:0}:is(.price-list-table,.template-library-table) tbody :where(th,td,th *,td *){overflow-wrap:anywhere;white-space:normal}.price-list-table .quote-row-link,.template-library-table .quote-row-link{overflow-wrap:anywhere}.price-list-table :is(th,td)[data-label=Name],.template-library-table :is(th,td)[data-label=Template\ name]{text-align:left}.dashboard-insights{gap:14px;display:grid}.insights-grid{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.insight-value{letter-spacing:-.035em;font-variant-numeric:tabular-nums;padding:4px 18px 0;font-size:26px;font-weight:700}.insights-grid>.panel>.muted{padding:0 18px;line-height:1.5}.insight-metrics .metric-bar{border:1px solid var(--border-color);background:var(--surface-strong);border-radius:8px;min-width:0;margin-bottom:0;padding:11px 12px}.insight-metrics .metric-bar>div{align-items:baseline;gap:8px}.insight-metrics .metric-bar span{overflow-wrap:anywhere;min-width:0;line-height:1.35}.insight-metrics .metric-bar b{flex:none}@media (width<=900px){.insight-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.insight-metrics{grid-template-columns:1fr}}.schedule-preview>details{border-bottom:1px solid var(--border-color)}.schedule-preview>details:last-child{border-bottom:0}.schedule-project-group summary{cursor:pointer;align-items:center;padding:13px 0;list-style:none;display:flex}.schedule-project-group summary::-webkit-details-marker{display:none}.schedule-project-group summary:before{content:"›";width:18px;color:var(--accent);font-size:20px;line-height:1;transition:transform .15s}.schedule-project-group[open] summary:before{transform:rotate(90deg)}.schedule-project-heading{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.schedule-project-heading strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.schedule-project-heading small{color:var(--text-secondary);font-size:10px}.schedule-project-tasks>div{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;padding:11px 0;display:flex}.schedule-project-tasks>div:last-child{border-bottom:0}.schedule-project-tasks span{flex-direction:column;min-width:0;display:flex}.schedule-project-tasks strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.schedule-project-tasks small{color:var(--text-secondary);font-size:10px}.task-list-heading strong{text-transform:uppercase;font-size:10px}@media (width>=1101px){.task-list-heading{z-index:auto;position:static}}.task-row-main{text-align:left;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:flex-start;gap:3px;width:100%;min-height:48px;padding:0;display:flex;position:static}.task-row-main:before{content:"";z-index:1;position:absolute;inset:0}.task-row:has(.task-row-main:focus-visible){outline:2px solid var(--accent);outline-offset:-2px}.task-row-status,.task-row-assignee,.task-row-dates,.row-menu-cell{min-width:0}.row-menu-button,.task-row-menu{z-index:2}.project-group+.project-group{border-top:1px solid var(--border-color)}.project-group-heading h3{min-width:0;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:11px;line-height:1.35;overflow:hidden}.project-group-toggle{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0;font-weight:700;display:flex}.project-group-toggle span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.project-group-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.project-group-toggle svg{flex:none;transition:transform .15s}.project-group-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.project-group-heading>span{color:var(--text-secondary);flex:none;font-size:9px}@media (width<=1200px) and (width>=901px){.schedule-workspace{--task-main-columns:70px minmax(0,1fr) minmax(0,.85fr) minmax(90px,.75fr)}}@media (width<=760px){.schedule-workspace{--task-main-columns:70px minmax(0,1fr) minmax(90px,.8fr)}.task-row-assignee{display:none}.task-list-heading>span:nth-of-type(3){display:block}.project-group-heading{padding-inline:10px}}.task-list-panel,.task-list-scroll{max-width:100%;overflow-x:hidden}.task-row-main{overflow:visible}.task-row-title strong,.task-row-title span,.task-row-dates strong,.task-row-dates span,.contractor-chip strong,.contractor-chip small,.project-group-heading h3{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;max-width:100%;overflow:visible}.project-group-heading h3{flex:1}@media (width<=760px){.task-row>.task-row-status,.task-row>.task-row-title,.task-row>.task-row-assignee,.task-row>.task-row-dates,.task-row>.row-menu-cell{grid-template-columns:minmax(82px,28%) minmax(0,1fr);align-items:start;gap:8px;width:100%;padding:5px 0;display:grid!important}.task-row>.task-row-status:before,.task-row>.task-row-title:before,.task-row>.task-row-assignee:before,.task-row>.task-row-dates:before,.task-row>.row-menu-cell:before{content:attr(data-label);color:var(--text-secondary);letter-spacing:.045em;text-transform:uppercase;font-size:8px;font-weight:750;line-height:1.5}.task-row-main{width:100%;min-height:0;padding:0;display:flex}.task-row-main .contractor-chip,.task-row-assignee .contractor-chip{display:flex!important}.row-menu-cell:empty{display:none!important}.row-menu-button{position:relative;top:auto;right:auto}.task-row-menu{top:38px;right:0}.project-group-heading{align-items:flex-start}}.roadmap-item-fields .required-mark{color:var(--danger);text-transform:none;letter-spacing:normal;font-size:7px;font-weight:700}.roadmap-item-fields .field.has-error input{border-color:var(--danger)}.roadmap-item-fields .field-error{color:var(--danger);text-transform:none;letter-spacing:normal;font-size:8px;font-weight:650;line-height:1.35}.roadmap-assignments{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:8px;grid-column:1/-1;gap:7px;padding:9px;display:grid}.roadmap-assignment-row{border:1px solid var(--border-color);background:var(--surface);border-radius:7px;grid-template-columns:minmax(180px,1.4fr) 140px 140px 28px;align-items:start;gap:8px;padding:8px;display:grid}.roadmap-assignment-row .field{display:grid}.roadmap-assignment-remove{height:30px;color:var(--danger);background:0 0;border:0;font-size:18px}.roadmap-add-assignment{justify-self:start;font-size:10px}.roadmap-include-control{color:var(--accent);grid-template-columns:auto auto;align-items:center;gap:3px 5px;font-size:9px;font-weight:700;display:grid}.roadmap-include-control input{grid-row:span 2;width:14px;height:14px}.roadmap-include-control small{color:var(--text-secondary);grid-column:2;font-size:7px;font-weight:500}.app-shell{background:var(--app-bg);grid-template-columns:180px minmax(0,1fr)}.sidebar{width:auto;height:100dvh;color:var(--text-primary);background:var(--surface-strong);border-right:1px solid var(--border-color);padding:16px 10px}.brand{border-bottom:1px solid var(--border-color);gap:9px;padding:2px 5px 18px}.brand-mark{background:var(--brand-charcoal);border-radius:6px;flex-basis:30px;width:30px;height:30px}.brand-home-button{color:var(--text-primary)}.brand strong{letter-spacing:-.02em;font-size:.9rem}.brand span{color:var(--text-tertiary);font-size:.68rem}.nav-collapse-button{width:30px;height:30px;color:var(--text-secondary);background:0 0;border-radius:5px;flex-basis:30px}.nav-collapse-button:hover{color:var(--text-primary);background:var(--hover-bg)}.workspace-switcher{color:var(--text-primary);background:var(--surface);border-color:var(--border-color)}.workspace-switcher small{color:var(--text-tertiary)}.workspace-avatar,.user-chip>span{color:var(--text-secondary);background:var(--surface-muted)}.side-nav{gap:1px}.nav-group p{color:var(--text-tertiary)}.side-nav button{min-height:34px;color:var(--text-secondary);border-radius:5px;gap:9px;padding:8px 9px;font-size:.81rem;font-weight:500}.side-nav button:hover{color:var(--text-primary);background:var(--hover-bg)}.nav-group-label,.side-nav-group-label{color:var(--text-tertiary);letter-spacing:.075em;margin:16px 7px 5px;font-size:.61rem;font-weight:600}.sidebar-footer{border-top-color:var(--border-color)}.user-chip strong{color:var(--text-primary)}.user-chip small{color:var(--text-tertiary)}.user-chip{min-width:0}.user-chip>div{flex:1;min-width:0}.user-chip strong,.user-chip small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-logout{width:34px;height:34px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;padding:0;display:grid}.sidebar-logout:hover{color:var(--text-primary);background:var(--hover-bg)}.sidebar-logout:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.sidebar-logout:disabled{opacity:.5;cursor:wait}.sidebar.collapsed .sidebar-footer{padding-block:10px}.sidebar.collapsed .user-chip{justify-content:center;padding:0}.sidebar.collapsed .user-chip>span,.sidebar.collapsed .user-chip>div{display:none}.sidebar.collapsed{width:auto;padding-inline:9px}.sidebar.collapsed .siteflow-logo>span{display:none}.sidebar.collapsed .side-nav button{min-height:36px}.workspace{max-width:1600px;padding:18px 24px 32px}.topbar{min-height:38px;margin-bottom:18px}.topbar h1{font-size:var(--type-page-title);font-weight:var(--weight-semibold);line-height:var(--line-heading);letter-spacing:-.025em}.eyebrow{color:var(--text-tertiary);letter-spacing:.07em;text-transform:uppercase;margin-bottom:3px;font-size:.68rem;font-weight:600}.topbar-actions,.button-row,.panel-header,.tool-strip{gap:8px}.notifications-panel{background:#fff;border-color:#dfe3e8;border-radius:10px;width:min(380px,100vw - 32px);padding:0;overflow:hidden;box-shadow:0 12px 30px #19202c2e}.notifications-header{border-bottom:1px solid #e3e6ea;align-items:center;padding:13px 16px}.notifications-heading{align-items:center;gap:8px;display:flex}.notifications-header h2{margin:0;font-size:14px;font-weight:650}.notifications-new-count{color:#315f9c;background:#eef4fc;border:1px solid #d8e4f6;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:600}.notification-mark-read{color:#315f9c;background:0 0;border:0;padding:0;font-size:11px}.notifications-list{max-height:min(455px,100vh - 170px);margin:0}.notification-row{background:#fff;border-bottom:1px solid #e3e6ea;grid-template-columns:32px minmax(0,1fr) auto;align-items:start;gap:10px;min-height:62px;padding:12px 16px;position:relative}.notification-row:last-child{border-bottom:0}.notification-row:hover,.notification-row:focus-visible{background:#f7f9fb}.notification-row:focus-visible{box-shadow:inset 0 0 0 2px var(--accent)}.notification-kind-icon{color:#5d6470;background:#f5f6f8;border:1px solid #dfe3e8;border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.notification-kind-icon.overdue_task,.notification-kind-icon.missing_start_date{color:#8a6230;background:#fff5e8;border-color:#ead7bd}.notification-kind-icon.unassigned_task{color:#5d6470;background:#f4f5f7}.notification-kind-icon.task_activity{color:#18766f;background:#e9f8f6;border-color:#bfe5df}.notification-copy{gap:4px;padding-right:2px}.notification-copy strong{font-size:12px;font-weight:500;line-height:1.3}.notification-copy small{color:#737b87;white-space:normal;font-size:10px;line-height:1.35;overflow:visible}.notification-row time{color:#9aa1aa;font-size:9px;line-height:1.4}.notification-indicator{background:#3267c8;width:6px;height:6px;margin:0;position:absolute;top:34px;right:16px}.notifications-footer{color:#9aa1aa;text-align:center;background:#fff;border-top:1px solid #e3e6ea;padding:13px 16px;font-size:10px}.app-shell :is(.primary-button,.small-button,.danger-button,.icon-button),.contractor-portal :is(.primary-button,.small-button,.danger-button,.icon-button){min-height:var(--control-height-compact);border-radius:var(--radius-sm);font-size:var(--type-label);font-weight:var(--weight-medium);box-shadow:none;padding:0 10px}.app-shell .primary-button,.contractor-portal .primary-button{color:var(--text-on-primary);background:var(--brand-charcoal);border-color:var(--brand-charcoal)}.app-shell .primary-button:hover:not(:disabled),.contractor-portal .primary-button:hover:not(:disabled){background:color-mix(in srgb,var(--brand-charcoal) 88%,var(--accent));border-color:color-mix(in srgb,var(--brand-charcoal) 88%,var(--accent))}[data-theme=dark] :is(.app-shell,.contractor-portal) .primary-button{color:var(--text-on-accent);background-color:var(--accent);border-color:var(--accent)}[data-theme=dark] :is(.app-shell,.contractor-portal) .primary-button:hover:not(:disabled){color:var(--text-on-accent);background-color:var(--accent-hover);border-color:var(--accent-hover)}[data-theme=dark] :is(.app-shell,.contractor-portal) .primary-button:focus-visible{outline-color:var(--text-primary);outline-offset:2px}[data-theme=dark] :is(.app-shell,.contractor-portal) .primary-button:disabled{color:var(--text-secondary);background-color:var(--surface-muted);border-color:var(--border-strong);opacity:1}.app-shell .small-button:hover:not(:disabled),.app-shell .icon-button:hover:not(:disabled),.contractor-portal .small-button:hover:not(:disabled),.contractor-portal .icon-button:hover:not(:disabled){border-color:var(--border-strong);background:var(--hover-bg)}.app-shell .danger-button,.contractor-portal .danger-button{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 42%,var(--border-color));background:var(--surface)}.app-shell .danger-button:hover:not(:disabled),.contractor-portal .danger-button:hover:not(:disabled){border-color:var(--danger);background:var(--danger-soft)}.app-shell .icon-button,.contractor-portal .icon-button{width:32px;padding:0}.panel{border-color:var(--border-color);box-shadow:none;border-radius:8px;padding:14px}.panel-header{margin-bottom:12px}.panel-header h2{font-size:var(--type-section-title);font-weight:var(--weight-semibold);line-height:var(--line-heading);letter-spacing:0}.panel-header p{color:var(--text-secondary);margin:3px 0 0;font-size:.75rem}.page-grid,.split-grid,.crud-layout{gap:14px}.record-list{gap:4px}.record-row{background:var(--surface-strong);border-radius:6px;padding:10px}.record-row:hover,.record-row.selected{border-color:var(--accent-border);background:var(--accent-soft)}.record-row span{font-size:.75rem}.record-card-grid{gap:10px}.record-card{background:var(--surface);border-radius:8px;min-height:142px;padding:14px}.record-card.selected{border-color:var(--accent-border);box-shadow:inset 2px 0 0 var(--accent)}input,select,textarea{border-color:var(--border-strong);min-height:34px;box-shadow:none;border-radius:5px;padding:7px 9px;font-size:.8125rem}textarea{min-height:76px}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:3px solid var(--focus-ring);outline-offset:0}.field,.tool-strip label{color:var(--text-secondary);text-transform:none;gap:5px;font-size:.75rem;font-weight:500}.modal-backdrop{background:color-mix(in srgb,var(--brand-black) 48%,transparent)}.modal-card{border-radius:var(--radius-dialog);box-shadow:var(--shadow-lg)}.modal-header{padding:var(--space-3) var(--space-4)}.modal-content{padding:var(--space-4)}.modal-close{border-radius:5px;width:30px;height:30px}.login-page{background:var(--app-bg);padding:20px}.login-panel{border-radius:8px;gap:18px;padding:22px;box-shadow:0 12px 32px #13161914}.login-heading h1{letter-spacing:-.025em;font-size:1.5rem;font-weight:600}.login-heading span{color:var(--accent)}.marketing-nav{background:var(--surface-strong);min-height:62px;padding:12px clamp(18px,4vw,54px)}.marketing-hero{min-height:calc(100dvh - 62px)}.hero-dashboard{border-radius:8px;box-shadow:0 14px 36px #1316191c}.security-badge{color:var(--accent);background:var(--accent-soft);border-radius:999px;font-size:.78rem}.siteflow-logo strong,.portal-brand strong{letter-spacing:-.025em}.mobile-nav-trigger,.mobile-nav-close,.mobile-nav-backdrop{display:none}.contractor-portal{background:var(--app-bg);min-height:100dvh;color:var(--text-primary)}.contractor-header{border-bottom:1px solid var(--border-color);background:var(--surface);min-height:58px;box-shadow:none;padding:10px clamp(16px,4vw,46px)}.portal-mark{border-radius:5px;width:28px;height:28px}.portal-brand{gap:9px}.portal-brand strong{font-size:.9rem}.portal-brand small{color:var(--text-tertiary);font-size:.7rem}.portal-user{gap:9px}.portal-user>span,.account-avatar{background:var(--surface-muted);width:28px;height:28px;color:var(--text-secondary);border-radius:50%;font-size:.69rem;font-weight:600}.portal-user b{font-size:.78rem}.portal-user small{color:var(--text-tertiary);font-size:.68rem}.portal-signout{border:1px solid var(--border-color);background:var(--surface);min-height:30px;color:var(--text-secondary);border-radius:5px;padding:0 8px;font-size:.75rem}.portal-main{max-width:1240px;padding:28px clamp(16px,4vw,46px) 44px}.portal-intro{border-bottom:1px solid var(--border-color);align-items:end;padding:0 0 20px}.portal-kicker{color:var(--text-tertiary);letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:.68rem;font-weight:600}.portal-intro h1{color:var(--text-primary);font-size:var(--type-page-title);font-weight:var(--weight-semibold);letter-spacing:-.03em;line-height:var(--line-heading);margin:0}.portal-intro p:not(.portal-kicker){color:var(--text-secondary);margin:6px 0 0;font-size:.875rem}.portal-count{border:1px solid var(--accent-border);background:var(--accent-soft);border-radius:6px;min-width:96px;padding:10px 14px}.portal-count strong{font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular);font-size:1.3rem}.portal-count span{color:var(--accent);font-size:.7rem}.portal-columns{gap:14px;margin-top:20px}.portal-columns section{min-width:0}.portal-section-title{margin-bottom:8px}.portal-section-title h2{font-size:var(--type-section-title);font-weight:var(--weight-semibold);line-height:var(--line-heading)}.portal-section-title>span{background:var(--surface-muted);min-width:20px;height:20px;color:var(--text-secondary);border-radius:999px;font-size:.7rem}.portal-task{border:1px solid var(--border-color);background:var(--surface);box-shadow:none;border-radius:8px;gap:13px;margin-bottom:10px;padding:14px}.portal-task.compact{background:var(--surface-strong);padding:12px}.task-top h3{letter-spacing:-.01em;margin:3px 0 0;font-size:.95rem;font-weight:600}.task-trade{color:var(--text-tertiary);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:600}.portal-task-meta{color:var(--text-secondary);font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular);gap:12px;font-size:.68rem}.portal-status{border:1px solid var(--border-color);text-transform:capitalize;border-radius:999px;min-height:22px;padding:3px 8px;font-size:.68rem;font-weight:600}.portal-status.in-progress{color:var(--accent);border-color:var(--accent-border);background:var(--accent-soft)}.portal-status.blocked{color:var(--warning-text);border-color:var(--warning-border);background:var(--warning-bg)}.portal-status.completed{color:var(--success);border-color:var(--success-border);background:var(--success-soft)}.portal-instructions,.portal-recent-notes,.portal-attachments{border-color:var(--border-color);background:var(--surface-strong)}.portal-instructions{border-radius:6px;padding:10px 12px}.portal-instructions strong,.portal-recent-notes strong{font-size:.72rem}.portal-instructions p{font-size:.78rem;line-height:1.5}.portal-progress div span,.portal-progress div b{font-size:.75rem}.portal-progress input{border:0;border-radius:0;min-height:0;padding:0}.portal-form-grid{gap:10px}.portal-form-grid label{color:var(--text-secondary);font-size:.75rem;font-weight:500}.portal-form-grid textarea{min-height:66px}.portal-actions{gap:8px}.upload-button{border-color:var(--border-strong);background:var(--surface);border-radius:6px;min-height:32px;padding:0 10px;font-size:.8rem}.save-message{color:var(--success);font-size:.75rem}.portal-message{border:1px solid var(--border-color);background:var(--surface);box-shadow:none;border-radius:8px;padding:28px}.portal-loading i{background:var(--surface-muted);border-radius:6px}.account-panel,.admin-task-review{border-color:var(--border-color);box-shadow:none;border-radius:8px}.account-form{gap:10px}.account-row{border-color:var(--border-color);background:var(--surface-strong);border-radius:6px}.account-state{border-radius:999px;font-size:.68rem}.account-state.active{background:var(--success-soft);color:var(--success)}.admin-review-heading h3{font-size:.875rem}.admin-review-heading p,.portal-muted{color:var(--text-secondary);font-size:.75rem}.admin-review-summary>div,.admin-completion-details,.admin-review-block{border-color:var(--border-color);background:var(--surface-strong);border-radius:6px}@media (width<=1100px){.app-shell,.app-shell.nav-collapsed{grid-template-columns:64px minmax(0,1fr)}.sidebar{border-right:1px solid var(--border-color);border-bottom:0;width:auto;height:100dvh;padding-inline:9px;position:sticky;top:0}.sidebar.collapsed{padding-inline:9px}.sidebar .side-nav,.sidebar.collapsed .side-nav{grid-template-columns:1fr;display:grid}.sidebar .brand-copy,.sidebar .side-nav span,.sidebar .nav-group-label,.sidebar .side-nav-group-label{opacity:0;pointer-events:none;width:0;overflow:hidden}.sidebar .brand,.sidebar.collapsed .brand{justify-content:center;padding:2px 0 18px}.sidebar .brand-mark,.sidebar.collapsed .brand-mark{display:none}.sidebar .nav-collapse-button{margin-left:0}.sidebar .side-nav button{justify-content:center;padding-inline:0}.sidebar .sidebar-footer{padding-block:10px;overflow:hidden}.sidebar .user-chip{justify-content:center;padding:0}.sidebar .user-chip>span,.sidebar .user-chip>div{display:none}}@media (width<=720px){.app-shell,.app-shell.nav-collapsed{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--border-color);width:100%;height:auto;min-height:54px;padding:8px 12px;position:static;overflow:visible}.sidebar .brand{display:none}.sidebar .side-nav{align-items:center;gap:3px;display:flex;overflow-x:auto}.sidebar .side-nav button{flex:0 0 36px;width:36px}.workspace{padding:16px 14px 28px}.topbar{align-items:flex-start;gap:10px}.topbar-actions{justify-content:flex-start}.split-grid,.crud-layout{grid-template-columns:1fr}.contractor-header{align-items:flex-start;gap:10px}.portal-user>div{display:none}.portal-signout{width:30px;padding:0;font-size:0}.portal-signout svg{margin:0}.portal-main{padding:20px 14px 32px}.portal-intro{align-items:flex-start;gap:14px}.portal-count{min-width:80px}.portal-columns{grid-template-columns:1fr}.portal-task-meta{gap:6px;display:grid}.portal-actions{align-items:center}.portal-actions .primary-button{margin-left:auto}}.app-shell{grid-template-columns:224px minmax(0,1fr)}.app-shell.nav-collapsed{grid-template-columns:64px minmax(0,1fr)}.sidebar{width:auto;height:100dvh;padding:16px 10px;position:sticky;top:0}.sidebar:not(.collapsed) .brand{justify-content:flex-start;padding:2px 5px 18px}.sidebar:not(.collapsed) .brand-home-button{display:flex}.sidebar:not(.collapsed) .brand-mark{display:grid}.sidebar:not(.collapsed) .workspace-switcher{display:flex}.sidebar:not(.collapsed) .side-nav{grid-template-columns:none;display:flex}.sidebar:not(.collapsed) .side-nav button{justify-content:flex-start;padding-inline:9px}.sidebar:not(.collapsed) .side-nav span,.sidebar:not(.collapsed) .brand-copy,.sidebar:not(.collapsed) .nav-group p,.sidebar:not(.collapsed) .nav-group-label,.sidebar:not(.collapsed) .side-nav-group-label{opacity:1;pointer-events:auto;width:auto;overflow:visible}.side-nav button{transition:background-color .16s,color .16s,box-shadow .16s}.side-nav button.active{color:var(--text-primary);background:var(--surface-muted);box-shadow:none}.side-nav button.active:before{content:none}.side-nav button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.dashboard-main{grid-template-columns:minmax(0,2.15fr) minmax(250px,.72fr);align-items:start;gap:14px;display:grid}.dashboard-lower,.dashboard-insights,.insights-grid{min-width:0}.dashboard-main .panel{padding:0}.dashboard-main .panel-header{margin:0}.dashboard-main .schedule-preview{padding:0 14px}.dashboard-calendar{min-width:0;padding:12px 14px 14px}.dashboard-calendar-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.dashboard-calendar-toolbar h3{margin:0;font-size:13px}.dashboard-month-grid{border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.dashboard-calendar-weekdays,.dashboard-calendar-week{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.dashboard-calendar-weekdays{background:var(--surface-muted);border-bottom:1px solid var(--border-color)}.dashboard-calendar-weekdays div{text-align:center;color:var(--text-secondary);text-transform:uppercase;padding:6px;font-size:9px;font-weight:700}.dashboard-calendar-day{border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);min-width:0;min-height:88px;padding:5px}.dashboard-calendar-day:last-child{border-right:0}.dashboard-calendar-week:last-child .dashboard-calendar-day{border-bottom:0}.dashboard-calendar-day>time{width:21px;height:21px;color:var(--text-secondary);place-items:center;margin-bottom:3px;font-size:9px;font-weight:700;display:grid}.dashboard-calendar-day.today>time{background:var(--accent);color:#fff;border-radius:50%}.dashboard-calendar-day.outside-month{background:var(--surface-muted);opacity:.55}.dashboard-calendar-events{gap:3px;display:grid}.dashboard-calendar-event{border:0;border-left:2px solid var(--accent);background:var(--accent-soft);min-width:0;color:var(--text-primary);text-align:left;border-radius:3px;padding:4px 5px}.dashboard-calendar-event strong,.dashboard-calendar-event small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.dashboard-calendar-event strong{font-size:9px}.dashboard-calendar-event small{color:var(--text-secondary);text-transform:capitalize;margin-top:1px;font-size:8px}.dashboard-calendar-event.completed{border-color:var(--success);background:var(--success-soft)}.dashboard-calendar-event.delayed,.dashboard-calendar-event.blocked{border-color:var(--danger);background:var(--danger-soft)}.dashboard-calendar-event.unassigned{border-color:var(--warning-text);background:var(--warning-bg)}.dashboard-calendar-event:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.dashboard-calendar-empty{padding:14px 0}.dashboard-calendar-agenda{margin:0;padding:0;list-style:none;display:none}.schedule-project-group summary{gap:12px;padding:10px 2px}.schedule-project-range{color:var(--text-tertiary);font-variant-numeric:tabular-nums;flex:none;font-size:10px}.schedule-project-tasks{padding:0}.schedule-project-tasks>div.schedule-preview-task{grid-template-columns:minmax(130px,1.4fr) minmax(110px,1fr) 92px auto;gap:10px;padding:8px 4px 8px 20px;display:grid}.schedule-preview-task>span{min-width:0}.schedule-preview-task time{white-space:nowrap;color:var(--text-secondary);font-weight:500}.schedule-preview-task .schedule-status{justify-self:end}.insight-metrics{grid-template-columns:1fr;gap:0;padding:8px 12px;display:grid}.insight-metrics .metric-bar{background:0 0;border:0;border-radius:0;grid-template-columns:minmax(0,1fr) 42%;align-items:center;gap:10px;padding:8px 0;display:grid}.insight-metrics .metric-bar>div{min-width:0}.insight-metrics .metric-bar span{font-size:10px}.insight-metrics .metric-bar b{font-size:11px}.insight-metrics .metric-bar>i{height:4px}.status-pipeline-footer{border-top:1px solid var(--border-color);color:var(--text-secondary);padding:12px 14px;font-size:10px}@media (width<=1180px){.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=860px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell,.app-shell.nav-collapsed{display:block}.workspace{width:100%;max-width:none}.sidebar,.sidebar.collapsed{z-index:102;visibility:hidden;pointer-events:none;border-right:1px solid var(--border-color);overscroll-behavior:contain;width:min(86vw,292px);height:100dvh;box-shadow:var(--shadow-lg);border-bottom:0;flex-direction:column;padding:16px 10px;transition:transform .2s,visibility 0s linear .2s;display:flex;position:fixed;inset:0 auto 0 0;overflow:hidden auto;transform:translate(-105%)}.sidebar.mobile-open,.sidebar.collapsed.mobile-open{visibility:visible;pointer-events:auto;transition-delay:0s;transform:translate(0)}.sidebar .brand,.sidebar.collapsed .brand{justify-content:flex-start;padding:2px 5px 18px;display:flex}.sidebar .brand-home-button,.sidebar.collapsed .brand-home-button{min-width:0;display:flex}.sidebar .siteflow-logo>span,.sidebar.collapsed .siteflow-logo>span{display:inline}.sidebar .workspace-switcher,.sidebar.collapsed .workspace-switcher{display:flex}.sidebar .side-nav,.sidebar.collapsed .side-nav{flex-direction:column;flex:1;align-items:stretch;gap:1px;padding:12px 0;display:flex;overflow:visible}.sidebar .nav-group,.sidebar.collapsed .nav-group{display:block}.sidebar .nav-group p,.sidebar.collapsed .nav-group p{opacity:1;pointer-events:auto;width:auto;display:block;overflow:visible}.sidebar .side-nav button,.sidebar.collapsed .side-nav button{flex:none;justify-content:flex-start;gap:9px;width:100%;min-width:0;min-height:42px;padding:9px}.sidebar .side-nav span,.sidebar.collapsed .side-nav span{opacity:1;pointer-events:auto;width:auto;display:inline;overflow:visible}.sidebar .sidebar-footer,.sidebar.collapsed .sidebar-footer{border-top:1px solid var(--border-color);flex:none;margin:0;padding:10px 0 0;display:block;overflow:visible}.sidebar .user-chip,.sidebar.collapsed .user-chip{justify-content:flex-start;padding:8px}.sidebar .user-chip>span,.sidebar .user-chip>div,.sidebar.collapsed .user-chip>span,.sidebar.collapsed .user-chip>div{display:flex}.sidebar .user-chip>div,.sidebar.collapsed .user-chip>div{flex-direction:column}.nav-collapse-button{display:none}.mobile-nav-close{border:1px solid var(--border-color);width:34px;height:34px;color:var(--text-secondary);background:var(--surface);border-radius:6px;flex:none;place-items:center;margin-left:auto;padding:0;display:grid}.mobile-nav-trigger{border:1px solid var(--border-strong);width:40px;height:40px;color:var(--text-primary);background:var(--surface);border-radius:6px;flex:none;place-items:center;padding:0;display:grid}.mobile-nav-backdrop{z-index:101;cursor:default;background:#13161975;border:0;width:100%;height:100%;padding:0;display:block;position:fixed;inset:0}.topbar{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid}.page-context,.topbar-actions{min-width:0}.dashboard-main{grid-template-columns:1fr}}@media (width<=680px){.schedule-project-tasks>div.schedule-preview-task{grid-template-columns:minmax(0,1fr) auto;padding-left:16px}.dashboard-task-contractor{display:none!important}.schedule-preview-task time{grid-column:1}.schedule-preview-task .schedule-status{grid-area:1/2/3}.schedule-project-range,.dashboard-month-grid{display:none}.dashboard-calendar-agenda{border-top:1px solid var(--border-color);display:grid}.dashboard-calendar-agenda li{border-bottom:1px solid var(--border-color)}.dashboard-calendar-agenda button{text-align:left;background:0 0;border:0;grid-template-columns:54px minmax(0,1fr);align-items:start;gap:10px;width:100%;padding:10px 2px;display:grid}.dashboard-calendar-agenda time{color:var(--accent);font-size:10px;font-weight:700}.dashboard-calendar-agenda span,.dashboard-calendar-agenda strong,.dashboard-calendar-agenda small{min-width:0;display:block}.dashboard-calendar-agenda strong{font-size:11px}.dashboard-calendar-agenda small{color:var(--text-secondary);text-transform:capitalize;margin-top:3px;font-size:9px}.dashboard-calendar-toolbar{flex-direction:column;align-items:flex-start}.dashboard-calendar-toolbar .date-nav{width:100%}.dashboard-calendar-toolbar .date-nav button{flex:1}.notifications-panel{width:calc(100vw - 20px);top:62px;right:10px}}@media (prefers-reduced-motion:reduce){.sidebar{transition:none}}.marketing-nav{background:var(--surface);max-width:1120px;height:76px;min-height:76px;padding:0 20px}.brand-emblem{object-fit:cover;background:var(--brand-charcoal);border-color:var(--brand-charcoal);display:block}.marketing-links{gap:34px}.marketing-links a{color:var(--text-secondary);padding:27px 0;font-size:.8125rem;font-weight:500;position:relative}.marketing-links a:after{content:"";background:var(--text-primary);transform-origin:100%;height:1px;transition:transform .2s;position:absolute;bottom:19px;left:0;right:0;transform:scaleX(0)}.marketing-links a:hover{color:var(--text-primary)}.marketing-links a:hover:after,.marketing-links a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.marketing-actions .text-button{border:1px solid var(--border-strong);min-height:38px;color:var(--text-primary);background:var(--surface);border-radius:6px;padding:0 15px}.marketing-actions .text-button:hover{border-color:var(--text-secondary);background:var(--surface-strong);transform:translateY(-1px)}.marketing-actions .primary-button,.hero-actions .primary-button{background:var(--brand-charcoal);border-color:var(--brand-charcoal)}.marketing-actions .primary-button:hover,.hero-actions .primary-button:hover{background:#282d32;border-color:#282d32;transform:translateY(-1px);box-shadow:0 5px 14px #13161924}.marketing-actions .primary-button svg,.hero-actions .primary-button svg{transition:transform .18s}.marketing-actions .primary-button:hover svg,.hero-actions .primary-button:hover svg{transform:translate(3px)}.marketing-menu-button{border:1px solid var(--border-strong);width:38px;height:38px;color:var(--text-primary);background:var(--surface);border-radius:6px;place-items:center;padding:0;display:none}.marketing-menu-button:hover{border-color:var(--text-secondary);background:var(--surface-strong)}.field.checkbox-field{cursor:pointer;align-items:center;gap:8px;min-height:44px;display:flex}.checkbox-field input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--accent);cursor:pointer;border-radius:3px;flex:0 0 18px;margin:0;padding:0}.checkbox-field input[type=checkbox]:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.checkbox-field input[type=checkbox]:disabled{cursor:not-allowed}@media (width<=900px){.marketing-nav{position:relative}.marketing-menu-button{display:grid}.marketing-links{z-index:50;border:1px solid var(--border-color);background:var(--surface);opacity:0;visibility:hidden;border-radius:8px;gap:2px;width:min(250px,100vw - 40px);padding:8px;transition:opacity .16s,visibility .16s,transform .16s;display:grid;position:absolute;top:calc(100% + 1px);right:20px;transform:translateY(-7px);box-shadow:0 16px 38px #13161926}.marketing-links.open{opacity:1;visibility:visible;transform:translateY(0)}.marketing-links a{color:var(--text-primary);border-radius:5px;padding:10px 12px}.marketing-links a:after{display:none}.marketing-links a:hover,.marketing-links a:focus-visible{background:var(--hover-bg)}}@media (width<=700px){.auth-form-grid,.auth-phone-grid{grid-template-columns:1fr}.marketing-nav{height:66px;min-height:66px}.marketing-actions .text-button{display:inline-flex}.marketing-actions .primary-button{display:none}.marketing-links{width:calc(100vw - 28px);right:14px}}@media (width<=720px){.marketing-nav{flex-direction:row;justify-content:space-between;align-items:center;gap:10px;height:66px;min-height:66px;padding:0 14px;display:flex}.marketing-nav>.siteflow-logo{flex:1;min-width:0}.marketing-actions{flex-flow:row;flex:none;align-items:center;gap:8px;display:flex}.marketing-actions button{width:auto}.marketing-actions .text-button{min-height:40px;padding-inline:12px}.marketing-menu-button{width:40px;min-width:40px;height:40px}.marketing-links{width:auto;max-height:calc(100dvh - 82px);top:calc(100% + 1px);left:14px;right:14px;overflow-y:auto}}.schedule-workspace{--task-main-columns:86px minmax(150px,1.25fr) minmax(130px,1fr) minmax(145px,.95fr) minmax(120px,.8fr);--task-columns:var(--task-main-columns) 30px}.task-list-title{border-bottom:1px solid var(--border-color);background:#f7f8f6;align-items:center;gap:8px;min-height:40px;padding:8px 14px;display:flex}.task-list-title strong{font-size:11px}.task-list-title>span{color:var(--text-secondary);font-size:9px}.task-list-collapse{color:var(--text-secondary);text-transform:none;letter-spacing:normal;background:0 0;border:0;margin-left:auto;padding:4px;font-size:9px;position:static}.task-list-heading{grid-template-columns:var(--task-columns);z-index:auto;border-top:0;border-bottom:1px solid var(--border-color);width:100%;min-width:0;height:36px;color:var(--text-secondary);letter-spacing:.045em;text-transform:uppercase;background:#f7f8f6;align-items:center;gap:9px;padding:0 14px;font-size:8px;display:grid;position:static}.task-list-heading>*{text-overflow:clip;white-space:normal;min-width:0;overflow:visible}.task-list-heading>div{flex-direction:column;align-items:flex-start;gap:1px;min-width:0;display:flex}.task-list-heading small{color:var(--text-secondary);font-size:8px;font-weight:400}.project-group,.project-group-tasks{min-width:0;max-width:100%;overflow:visible}.project-group-heading{background:#f7f8f6;border-left:0;justify-content:space-between;align-items:center;gap:12px;width:100%;min-width:0;min-height:34px;padding:8px 14px 8px 12px;display:flex}.task-row>*{min-width:0;overflow:hidden}.row-menu-cell{overflow:visible}.task-row-progress>span{min-width:0}.schedule-conflict-warning{max-width:100%;overflow:hidden}.schedule-conflict-content{min-width:0;max-width:100%}.schedule-conflict-toggle{color:var(--accent);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;margin-top:5px;padding:4px 0;font-size:10px;font-weight:700;display:inline-flex}.schedule-conflict-toggle svg{flex:none;transition:transform .15s}.schedule-conflict-toggle[aria-expanded=true] svg{transform:rotate(90deg)}.schedule-conflict-list{max-width:100%;overflow:auto}.task-row{grid-template-columns:var(--task-columns);border-bottom:1px solid #eceeea;align-items:center;gap:9px;width:100%;max-width:100%;min-height:57px;padding:5px 5px 5px 12px;transition:background .14s,box-shadow .14s;display:grid;position:relative;overflow:visible}.task-row-dates{flex-direction:column;gap:3px;min-width:0;display:flex}.task-row-progress{align-items:center;gap:8px;min-width:0;display:flex}.task-row-progress>span{background:#edf0f2;border-radius:99px;flex:1;height:4px;overflow:hidden}.task-row-progress>span i{border-radius:inherit;background:#159c9c;height:100%;display:block}.task-row-progress>strong{min-width:28px;color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:8px}@media (width<=1100px) and (width>=761px){.schedule-workspace{--task-main-columns:76px minmax(125px,1.15fr) minmax(110px,.9fr) minmax(125px,.85fr) minmax(100px,.7fr)}}@media (width<=760px){.schedule-sections{gap:14px}.schedule-task-section{padding:8px}.schedule-conflict-warning{padding:11px}.schedule-conflict-list li{grid-template-columns:minmax(0,1fr)}.schedule-conflict-assignment{padding:8px}.task-list-title{padding-inline:10px}.task-list-heading{display:none}.task-row{grid-template-columns:minmax(0,1fr);gap:0;padding:9px 10px}.task-row>.task-row-progress{grid-template-columns:minmax(82px,28%) minmax(0,1fr);align-items:center;gap:8px;width:100%;padding:5px 0;display:grid!important}.task-row>.task-row-progress:before{content:attr(data-label);color:var(--text-secondary);letter-spacing:.045em;text-transform:uppercase;font-size:8px;font-weight:750;line-height:1.5}}:where(.workspace,.page-grid,.quotes-page,.schedule-page,.library-page,.customers-page,.contractors-page,.contractor-detail-page){min-width:0;max-width:var(--content-max)}:where(.panel,.modal-card,.library-table-view,.library-detail-panel,.schedule-workspace,.settings-tab-panel,.email-template-editor,.email-delivery-history,.portal-task,.account-panel){min-width:0;max-width:100%}:where(p,small,strong,span,dd,dt,label,a,button){overflow-wrap:anywhere}:where(.calendar-grid,.email-delivery-table-wrap){overscroll-behavior-inline:contain;scrollbar-gutter:stable;max-width:100%}:where(.calendar-grid,.email-delivery-table-wrap):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.task-detail-close{z-index:2;border:1px solid var(--border-color);background:var(--surface);width:40px;height:40px;color:var(--text-secondary);border-radius:6px;place-items:center;margin:0 0 -40px auto;padding:0;display:grid;position:sticky;top:0}.calendar-grid-content{display:contents}.portal-instructions p,.portal-recent-notes p,.portal-attachments a,.account-row b,.account-row small{overflow-wrap:anywhere;word-break:break-word;max-width:100%}.portal-attachments{flex-wrap:wrap;min-width:0}.portal-attachments a,.account-row>div,.account-row-actions,.account-reset-form{min-width:0}.account-row-actions{flex-wrap:wrap;gap:6px;display:flex}@media (width<=900px){.customer-detail-aside,.contractor-detail-aside{grid-template-columns:1fr}.email-template-layout,.email-delivery-layout{grid-template-columns:minmax(0,1fr)}.schedule-page{padding-inline:var(--page-gutter)}.schedule-toolbar{position:relative;top:auto}.schedule-title,.schedule-controls,.schedule-controls-start,.schedule-controls-end{flex-wrap:wrap;align-items:stretch}.schedule-controls{grid-template-columns:1fr;display:grid}.schedule-controls-start,.schedule-controls-end{display:flex}.schedule-project-selector{flex:240px;min-width:0}.schedule-project-selector select{width:100%;min-width:0}.schedule-summary{overscroll-behavior-inline:contain;max-width:100%;overflow-x:auto}}@media (width<=760px){:root{--touch-target:44px}.workspace{padding:14px var(--page-gutter) 28px}.topbar{min-height:58px;margin:0 0 14px;padding:0}.topbar .eyebrow{display:none}.topbar h1{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:1.08rem;overflow:hidden}:where(button,.primary-button,.small-button,.danger-button,.icon-button,select,input){min-height:var(--touch-target)}.notifications-panel{inset:64px var(--page-gutter) auto;width:auto;max-height:calc(100dvh - 76px);position:fixed}.topbar-actions>.notification-center,.notification-center>.notification-trigger{display:grid}.notification-row{grid-template-columns:32px minmax(0,1fr);padding:12px}.notification-row time{white-space:normal;grid-column:2}.notification-indicator{right:12px}.modal-backdrop{align-items:end;padding:0}.modal-card,.modal-card.template-modal{border-radius:12px 12px 0 0;width:100%;max-height:calc(100dvh - 8px)}.modal-content{padding:14px}.schedule-title{grid-template-columns:1fr;display:grid}.schedule-title .schedule-ready-button{width:100%}.schedule-tabs,.schedule-range-tabs,.date-nav{max-width:100%;overflow-x:auto}.schedule-tabs{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.schedule-tabs button{min-width:0;padding-inline:7px}.schedule-controls-start,.schedule-controls-end{grid-template-columns:1fr;display:grid}.schedule-range-label{white-space:normal}.schedule-summary{padding:12px 0}.schedule-summary>div{flex:none}.schedule-workspace{min-height:0;display:block;overflow:visible}.task-list-panel{border-right:0;border-radius:8px}.task-details-panel{z-index:90;width:100%;max-height:min(82dvh,720px);padding:18px var(--page-gutter) max(20px,env(safe-area-inset-bottom));border:1px solid var(--border-color);border-radius:14px 14px 0 0;position:fixed;inset:auto 0 0;overflow-y:auto;box-shadow:0 -18px 48px #13161933}.task-detail-close{z-index:2;border:1px solid var(--border-color);background:var(--surface);width:40px;height:40px;color:var(--text-secondary);border-radius:6px;place-items:center;margin:0 0 -40px auto;padding:0;display:grid;position:sticky;top:0}.task-detail-content{padding-top:6px}.task-detail-content>header{padding-right:48px}.task-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-overview-copy{padding:12px}.detail-actions .primary-button{width:100%}.calendar-grid{border:1px solid var(--border-color);border-radius:8px;width:100%;min-width:0;overflow-x:auto}.calendar-grid-content{min-width:680px;display:block}.settings-page{gap:14px;padding-inline:0}.settings-tab-list{margin-inline:calc(var(--page-gutter) * -1);padding-inline:var(--page-gutter);scrollbar-width:thin}.settings-company-card,.settings-danger-panel{width:100%;max-width:100%}.settings-company-form{grid-template-columns:1fr}.settings-company-form .settings-notes{grid-column:auto}.settings-form-actions,.settings-test-action{flex-direction:column;align-items:stretch}.settings-save-state{margin:0}.settings-form-actions button,.settings-test-action button{width:100%}.settings-danger-panel{flex-direction:column;align-items:stretch}.settings-danger-panel .danger-button{width:100%}.email-template-list{grid-template-columns:1fr}.email-template-editor>header,.email-delivery-heading{flex-direction:column;align-items:flex-start}.email-template-editor>header .button-row{flex-wrap:wrap;width:100%}.email-template-editor>header .button-row button{flex:1}.contractor-header{align-items:center}.portal-user>div{flex-direction:column;min-width:0;display:flex}.portal-signout{width:auto;min-width:44px;padding-inline:10px;font-size:.75rem}.portal-intro{grid-template-columns:minmax(0,1fr) auto;display:grid}.portal-count{align-self:start}.portal-form-grid{grid-template-columns:1fr}.portal-wide{grid-column:auto}.portal-actions{grid-template-columns:1fr 1fr;display:grid}.portal-actions .primary-button{margin:0}.portal-actions .save-message{grid-column:1/-1}.account-panel .panel-header{flex-direction:column;align-items:stretch}.account-panel .panel-header button{width:100%}.account-form{grid-template-columns:1fr}.account-form .account-form-actions{grid-column:auto}.account-row{grid-template-columns:auto minmax(0,1fr)}.account-row .account-state{grid-column:2;justify-self:start}.account-row-actions,.account-reset-form{grid-column:1/-1}}@media (width<=520px){.stat-grid{grid-template-columns:1fr 1fr}.stat-card{min-height:80px;padding:10px 11px}.stat-card strong{font-size:1.15rem}.task-detail-facts{grid-template-columns:1fr}.portal-brand small,.portal-user>span{display:none}.portal-intro{grid-template-columns:1fr}.portal-count{width:100%}.portal-actions{grid-template-columns:1fr}.portal-actions .save-message{grid-column:auto}}.app-shell .sidebar{--admin-sidebar-bg:#111827;--admin-sidebar-text:#f8fafc;--admin-sidebar-muted:#cbd5e1;--admin-sidebar-subtle:#b7c4d5;--admin-sidebar-border:#344154;--admin-sidebar-hover:#273449;--admin-sidebar-selected:#244b73;--admin-sidebar-focus:#93c5fd;color:var(--admin-sidebar-text);background:var(--admin-sidebar-bg);border-color:var(--admin-sidebar-border)}.app-shell .sidebar .brand{border-bottom-color:var(--admin-sidebar-border)}.app-shell .sidebar .brand-home-button{color:var(--admin-sidebar-text)}.app-shell .sidebar .brand-home-button:hover strong{color:#bfdbfe}.app-shell .sidebar .siteflow-logo strong,.app-shell .sidebar .workspace-switcher strong,.app-shell .sidebar .user-chip strong{color:var(--admin-sidebar-text)}.app-shell .sidebar .siteflow-logo small,.app-shell .sidebar .workspace-switcher small,.app-shell .sidebar .user-chip small{color:var(--admin-sidebar-subtle)}.app-shell .sidebar .workspace-switcher{color:var(--admin-sidebar-text);border-color:var(--admin-sidebar-border);background:#1b2636}.app-shell .sidebar .workspace-switcher:hover{background:var(--admin-sidebar-hover);border-color:#52647c}.app-shell .sidebar .workspace-avatar,.app-shell .sidebar .user-chip>span{color:var(--admin-sidebar-text);background:#35445b}.app-shell .sidebar .nav-group p{color:var(--admin-sidebar-subtle)}.app-shell .sidebar .side-nav button{color:var(--admin-sidebar-muted)}.app-shell .sidebar .side-nav button:hover{color:var(--admin-sidebar-text);background:var(--admin-sidebar-hover)}.app-shell .sidebar .side-nav button.active,.app-shell .sidebar .side-nav button.active:hover{color:var(--admin-sidebar-text);background:var(--admin-sidebar-selected)}.app-shell .sidebar .side-nav button.active:before{background:#93c5fd}.app-shell .sidebar .sidebar-footer{border-top-color:var(--admin-sidebar-border)}.app-shell .sidebar{height:100dvh;min-height:0;padding-bottom:max(10px, env(safe-area-inset-bottom));flex-direction:column;display:flex;overflow:hidden}.app-shell .sidebar .brand,.app-shell .sidebar .workspace-switcher,.app-shell .sidebar .sidebar-footer{flex:none;min-width:0}.app-shell .sidebar .side-nav{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--admin-sidebar-border) transparent;flex-direction:column;flex:1 1 0;min-height:0;padding:4px 3px 12px;scroll-padding-block:6px;display:flex;overflow:hidden auto}.app-shell .sidebar .nav-group{flex:none;display:block}.app-shell .sidebar .sidebar-footer{margin-top:0;overflow:visible}.app-shell .sidebar:not(.collapsed) .user-chip>span{display:grid}.app-shell .sidebar:not(.collapsed) .user-chip>div{display:flex}.app-shell .sidebar .workspace-switcher>svg,.app-shell .sidebar .side-nav button>svg{flex-shrink:0}@media (height<=420px){.app-shell .sidebar{padding-top:8px}.app-shell .sidebar .brand{min-height:56px;padding-bottom:8px}.app-shell .sidebar:not(.collapsed) .siteflow-logo>span,.app-shell .sidebar.mobile-open .siteflow-logo>span{flex-direction:column;line-height:1.2;display:flex}.app-shell .sidebar .workspace-switcher{margin-block:6px}.app-shell .sidebar .sidebar-footer{padding-block:6px 0}.app-shell .sidebar .sidebar-footer .user-chip{row-gap:4px;padding:6px}.app-shell .sidebar .user-chip>div{line-height:1.25}.app-shell .sidebar .side-nav{padding-block:2px}.app-shell .sidebar .side-nav button{min-height:44px;padding-block:4px}}.app-shell .sidebar .nav-collapse-button,.app-shell .sidebar .mobile-nav-close{color:var(--admin-sidebar-muted);border-color:var(--admin-sidebar-border);background:0 0}.app-shell .sidebar .nav-collapse-button:hover,.app-shell .sidebar .mobile-nav-close:hover{color:var(--admin-sidebar-text);background:var(--admin-sidebar-hover)}.app-shell .sidebar .user-chip{align-items:center;gap:var(--space-2);grid-template-columns:28px minmax(0,1fr);min-width:0;display:grid}.app-shell .sidebar .user-chip>div{min-width:0}.app-shell .sidebar .sidebar-logout{width:100%;min-height:max(44px, var(--touch-target));justify-content:flex-start;align-items:center;gap:var(--space-2);color:var(--admin-sidebar-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;grid-column:1/-1;padding:0 11px;font-size:13px;font-weight:600;transition:color .14s,background-color .14s,border-color .14s,transform .1s;display:flex;position:relative}.app-shell .sidebar.collapsed:not(.mobile-open) .sidebar-logout{grid-column:1;justify-content:center;width:100%;padding-inline:0}.app-shell .sidebar.collapsed:not(.mobile-open) .user-chip{grid-template-columns:minmax(0,1fr);justify-items:center;gap:0}.app-shell .sidebar.collapsed:not(.mobile-open) .sidebar-logout-label{display:none}.app-shell .sidebar .sidebar-logout-tooltip{z-index:2;inset-inline:0;color:var(--admin-sidebar-text);text-align:center;pointer-events:none;white-space:nowrap;background:#273449;border:1px solid #52647c;border-radius:6px;padding:5px 4px;font-size:10px;font-weight:600;line-height:1.25;display:none;position:absolute;bottom:calc(100% + 6px);box-shadow:0 4px 12px #00000038}.app-shell .sidebar.collapsed:not(.mobile-open) .sidebar-logout:hover .sidebar-logout-tooltip,.app-shell .sidebar.collapsed:not(.mobile-open) .sidebar-logout:focus-visible .sidebar-logout-tooltip{display:block}.app-shell .sidebar.collapsed.mobile-open .sidebar-logout-label{display:inline}.app-shell .sidebar.collapsed.mobile-open .sidebar-logout-tooltip{display:none}.app-shell .sidebar.collapsed.mobile-open .user-chip{grid-template-columns:28px minmax(0,1fr);justify-items:stretch}.app-shell .sidebar .sidebar-logout:hover{color:var(--admin-sidebar-text);background:var(--admin-sidebar-hover);border-color:var(--admin-sidebar-border)}.app-shell .sidebar .sidebar-logout:active:not(:disabled){background:var(--admin-sidebar-selected);transform:translateY(1px)}.app-shell .sidebar .sidebar-logout-label{white-space:nowrap}.app-shell .sidebar .sidebar-logout>svg{flex-shrink:0}.app-shell .sidebar .sidebar-logout:disabled{color:#aab6c7;cursor:wait;opacity:.78;background:#1a2432;border-color:#344154}.app-shell .sidebar .brand-home-button:focus-visible,.app-shell .sidebar .workspace-switcher:focus-visible,.app-shell .sidebar .nav-collapse-button:focus-visible,.app-shell .sidebar .mobile-nav-close:focus-visible,.app-shell .sidebar .side-nav button:focus-visible,.app-shell .sidebar .sidebar-logout:focus-visible{outline:2px solid var(--admin-sidebar-focus);outline-offset:2px}.app-shell .topbar-actions>.theme-toggle{width:32px;min-height:var(--control-height-compact);flex:none;place-items:center;display:grid}.app-shell .topbar-actions{flex-direction:row;align-items:center}@media screen{[data-theme=dark] .app-shell .template-item-headings,[data-theme=dark] .app-shell .template-item-entry:hover,[data-theme=dark] .app-shell .template-item-row input[readonly]{background:var(--surface-strong)}[data-theme=dark] .app-shell .template-item-row input,[data-theme=dark] .app-shell .template-item-row select{border-color:var(--border-color)}[data-theme=dark] .app-shell .calendar-day.today .calendar-day-heading strong{color:var(--text-on-accent)}[data-theme=dark] .app-shell .calendar-event.unassigned{color:var(--text-tertiary);border-color:var(--border-strong)}[data-theme=dark] .app-shell .auth-error,[data-theme=dark] .app-shell .field-error{color:var(--danger)}[data-theme=dark] .app-shell,[data-theme=dark] .app-shell .workspace,[data-theme=dark] .app-shell .page-grid,[data-theme=dark] .app-shell .crud-layout,[data-theme=dark] .app-shell .schedule-page,[data-theme=dark] .app-shell .quotes-page,[data-theme=dark] .app-shell .customers-page,[data-theme=dark] .app-shell .contractors-page,[data-theme=dark] .app-shell .contractor-detail-page{color:var(--text-primary);background:var(--app-bg)}[data-theme=dark] .app-shell .panel,[data-theme=dark] .app-shell .stat-card,[data-theme=dark] .app-shell .library-table-view,[data-theme=dark] .app-shell .library-detail-panel,[data-theme=dark] .app-shell .directory-list-view,[data-theme=dark] .app-shell .directory-table,[data-theme=dark] .app-shell .directory-table-scroll,[data-theme=dark] .app-shell .customers-table-panel,[data-theme=dark] .app-shell .contractors-table-panel,[data-theme=dark] .app-shell .customer-detail-form-panel,[data-theme=dark] .app-shell .customer-quotes-card,[data-theme=dark] .app-shell .settings-company-card,[data-theme=dark] .app-shell .settings-tab-panel,[data-theme=dark] .app-shell .email-template-editor,[data-theme=dark] .app-shell .email-delivery-settings-panel,[data-theme=dark] .app-shell .email-delivery-history,[data-theme=dark] .app-shell .template-table-view,[data-theme=dark] .app-shell .price-list-table-view{color:var(--text-primary);border-color:var(--border-color);background-color:var(--surface)}[data-theme=dark] .app-shell .customers-page-header,[data-theme=dark] .app-shell .contractors-page-header,[data-theme=dark] .app-shell .customer-detail-header,[data-theme=dark] .app-shell .directory-list-heading,[data-theme=dark] .app-shell .library-table-toolbar,[data-theme=dark] .app-shell .quote-filter-toolbar,[data-theme=dark] .app-shell .quote-filter-row,[data-theme=dark] .app-shell .quote-list-footer,[data-theme=dark] .app-shell .customer-table-footer{color:var(--text-primary);border-color:var(--border-color);background-color:var(--surface-muted)}[data-theme=dark] .app-shell .customers-page-header,[data-theme=dark] .app-shell .contractors-page-header,[data-theme=dark] .app-shell .quotes-page-header{box-shadow:none;background:0 0;border-color:#0000;outline:none}[data-theme=dark] .app-shell .panel-header,[data-theme=dark] .app-shell .customer-detail-form-panel>h3,[data-theme=dark] .app-shell .customer-quotes-card>header,[data-theme=dark] .app-shell .email-delivery-heading,[data-theme=dark] .app-shell .data-table thead,[data-theme=dark] .app-shell .directory-table thead,[data-theme=dark] .app-shell .library-table thead,[data-theme=dark] .app-shell .quote-table thead,[data-theme=dark] .app-shell .email-delivery-table th{color:var(--text-secondary);border-color:var(--border-color);background-color:var(--surface-strong)}[data-theme=dark] .app-shell .data-table th,[data-theme=dark] .app-shell .data-table td,[data-theme=dark] .app-shell .directory-table th,[data-theme=dark] .app-shell .directory-table td,[data-theme=dark] .app-shell .library-table th,[data-theme=dark] .app-shell .library-table td,[data-theme=dark] .app-shell .quote-table th,[data-theme=dark] .app-shell .quote-table td,[data-theme=dark] .app-shell .email-delivery-table th,[data-theme=dark] .app-shell .email-delivery-table td{color:var(--text-primary);border-color:var(--border-color)}[data-theme=dark] .app-shell .data-table tbody tr:hover,[data-theme=dark] .app-shell .directory-table tbody tr:hover,[data-theme=dark] .app-shell .library-table tbody tr:hover,[data-theme=dark] .app-shell .quote-table tbody tr:hover,[data-theme=dark] .app-shell .table-row:hover,[data-theme=dark] .app-shell .directory-row-link:hover,[data-theme=dark] .app-shell .quote-row-link:hover{background-color:var(--hover-bg)}[data-theme=dark] .app-shell .directory-secondary,[data-theme=dark] .app-shell .directory-avatar,[data-theme=dark] .app-shell .contractor-avatar,[data-theme=dark] .app-shell .customer-avatar{color:var(--text-tertiary);background-color:var(--surface-muted)}[data-theme=dark] .app-shell .empty-state svg{color:var(--text-tertiary)}[data-theme=dark] .app-shell .quote-status,[data-theme=dark] .app-shell .schedule-status,[data-theme=dark] .app-shell .status-pill{color:var(--text-secondary);background-color:var(--surface-muted)}[data-theme=dark] .app-shell .quote-status.approved,[data-theme=dark] .app-shell .quote-status.completed,[data-theme=dark] .app-shell .schedule-status.completed,[data-theme=dark] .app-shell .status-pill.approved,[data-theme=dark] .app-shell .status-pill.completed,[data-theme=dark] .app-shell .email-delivery-badge.sent{color:var(--success);background-color:var(--success-soft)}[data-theme=dark] .app-shell .quote-status.ongoing,[data-theme=dark] .app-shell .quote-status.sent,[data-theme=dark] .app-shell .quote-status.invoiced,[data-theme=dark] .app-shell .quote-status.archived,[data-theme=dark] .app-shell .schedule-status.in-progress,[data-theme=dark] .app-shell .schedule-status.draft,[data-theme=dark] .app-shell .status-pill.invoiced,[data-theme=dark] .app-shell .email-delivery-badge.pending,[data-theme=dark] .app-shell .email-delivery-badge.processing{color:var(--text-secondary);background-color:var(--surface-muted)}[data-theme=dark] .app-shell .quote-status.canceled,[data-theme=dark] .app-shell .email-config-state,[data-theme=dark] .app-shell .email-delivery-badge.failed{color:var(--danger);background-color:var(--danger-soft)}[data-theme=dark] .app-shell .schedule-status.delayed,[data-theme=dark] .app-shell .schedule-status.blocked{color:var(--warning-text);background-color:var(--warning-bg)}[data-theme=dark] .app-shell .schedule-status.scheduled,[data-theme=dark] .app-shell .quote-status.open,[data-theme=dark] .app-shell .status-pill.open,[data-theme=dark] .app-shell .status-pill.ongoing{color:var(--accent);background-color:var(--accent-soft)}[data-theme=dark] .app-shell .email-config-state.configured{color:var(--success);background-color:var(--success-soft)}[data-theme=dark] .app-shell .schedule-toolbar,[data-theme=dark] .app-shell .schedule-workspace,[data-theme=dark] .app-shell .task-list-panel,[data-theme=dark] .app-shell .task-list-title,[data-theme=dark] .app-shell .task-list-heading,[data-theme=dark] .app-shell .project-group-heading,[data-theme=dark] .app-shell .calendar-weekdays,[data-theme=dark] .app-shell .calendar-day,[data-theme=dark] .app-shell .schedule-tabs,[data-theme=dark] .app-shell .schedule-range-tabs{color:var(--text-primary);border-color:var(--border-color);background-color:var(--surface)}[data-theme=dark] .app-shell .schedule-tabs,[data-theme=dark] .app-shell .schedule-range-tabs,[data-theme=dark] .app-shell .task-list-title,[data-theme=dark] .app-shell .task-list-heading,[data-theme=dark] .app-shell .project-group-heading,[data-theme=dark] .app-shell .calendar-weekdays{background-color:var(--surface-strong)}[data-theme=dark] .app-shell .task-row,[data-theme=dark] .app-shell .calendar-day{border-color:var(--border-color)}[data-theme=dark] .app-shell .task-row:hover,[data-theme=dark] .app-shell .task-row-menu button:hover{background-color:var(--hover-bg)}[data-theme=dark] .app-shell .task-row.selected{background-color:var(--accent-soft)}[data-theme=dark] .app-shell .task-row-progress>span{background-color:var(--surface-muted)}[data-theme=dark] .app-shell .task-row-progress>span i{background-color:var(--accent)}[data-theme=dark] .app-shell .contractor-chip>i{color:var(--text-secondary);background-color:var(--surface-muted)}[data-theme=dark] .app-shell .contractor-chip.unassigned>i{color:var(--text-tertiary);border-color:var(--border-strong);background:0 0}[data-theme=dark] .app-shell .settings-tab-list{border-color:var(--border-color);background-color:var(--surface-muted)}[data-theme=dark] .app-shell .settings-tab{color:var(--text-secondary)}[data-theme=dark] .app-shell .settings-tab:hover{color:var(--text-primary);background-color:var(--hover-bg)}[data-theme=dark] .app-shell .settings-tab.active{color:var(--text-primary);background-color:var(--surface)}[data-theme=dark] .app-shell .settings-danger-panel,[data-theme=dark] .app-shell .settings-notes,[data-theme=dark] .app-shell .email-settings-message,[data-theme=dark] .app-shell .email-template-placeholders,[data-theme=dark] .app-shell .email-template-preview,[data-theme=dark] .app-shell .email-template-card{color:var(--text-primary);border-color:var(--border-color);background-color:var(--surface-muted)}[data-theme=dark] .app-shell .email-template-card:hover,[data-theme=dark] .app-shell .email-template-card:focus-visible{border-color:var(--accent);background-color:var(--surface);box-shadow:0 0 0 3px var(--accent-soft)}[data-theme=dark] .app-shell .notifications-panel,[data-theme=dark] .app-shell .task-row-menu,[data-theme=dark] .app-shell .customer-row-actions-menu,[data-theme=dark] .app-shell .customer-columns-menu,[data-theme=dark] .app-shell .contractor-row-menu,[data-theme=dark] .app-shell .modal-card{color:var(--text-primary);border-color:var(--border-color);background-color:var(--surface);box-shadow:var(--shadow-lg)}[data-theme=dark] .app-shell .notifications-header,[data-theme=dark] .app-shell .notifications-footer,[data-theme=dark] .app-shell .notification-row,[data-theme=dark] .app-shell .modal-header{color:var(--text-primary);border-color:var(--border-color);background-color:var(--surface)}[data-theme=dark] .app-shell .notification-row:hover,[data-theme=dark] .app-shell .notification-row:focus-visible{background-color:var(--hover-bg)}[data-theme=dark] .app-shell .notifications-new-count,[data-theme=dark] .app-shell .notification-kind-icon{color:var(--accent);border-color:var(--accent-border);background-color:var(--accent-soft)}[data-theme=dark] .app-shell .notification-mark-read{color:var(--accent)}[data-theme=dark] .app-shell .notification-kind-icon.overdue_task,[data-theme=dark] .app-shell .notification-kind-icon.missing_start_date{color:var(--warning-text);border-color:var(--warning-border);background-color:var(--warning-bg)}[data-theme=dark] .app-shell .notification-kind-icon.task_activity{color:var(--success);border-color:var(--success-border);background-color:var(--success-soft)}[data-theme=dark] .app-shell .notification-copy small,[data-theme=dark] .app-shell .notification-row time,[data-theme=dark] .app-shell .notifications-footer{color:var(--text-tertiary)}[data-theme=dark] .app-shell .task-row-menu button,[data-theme=dark] .app-shell .customer-row-actions-menu button,[data-theme=dark] .app-shell .customer-columns-menu button,[data-theme=dark] .app-shell .row-menu-button,[data-theme=dark] .app-shell .modal-close{color:var(--text-secondary)}[data-theme=dark] .app-shell .task-row-menu button:hover,[data-theme=dark] .app-shell .customer-row-actions-menu button:hover,[data-theme=dark] .app-shell .customer-columns-menu button:hover,[data-theme=dark] .app-shell .row-menu-button:hover,[data-theme=dark] .app-shell .modal-close:hover{color:var(--text-primary);background-color:var(--hover-bg)}[data-theme=dark] .app-shell .small-button,[data-theme=dark] .app-shell .icon-button,[data-theme=dark] .app-shell .danger-button,[data-theme=dark] .app-shell .profile-card-edit{color:var(--text-primary);border-color:var(--border-color);background-color:var(--surface)}[data-theme=dark] .app-shell .danger-button{color:var(--danger);border-color:var(--danger-border)}[data-theme=dark] .app-shell .small-button:hover,[data-theme=dark] .app-shell .icon-button:hover,[data-theme=dark] .app-shell .profile-card-edit:hover{color:var(--text-primary);border-color:var(--border-strong);background-color:var(--hover-bg)}[data-theme=dark] .app-shell button:disabled,[data-theme=dark] .app-shell input:disabled,[data-theme=dark] .app-shell select:disabled,[data-theme=dark] .app-shell textarea:disabled{color:var(--text-tertiary);border-color:var(--border-color);background-color:var(--surface-muted)}[data-theme=dark] .app-shell input::placeholder,[data-theme=dark] .app-shell textarea::placeholder{color:var(--text-tertiary);opacity:1}[data-theme=dark] .app-shell :where(input,select,textarea,button,a,summary):focus-visible{outline-color:var(--focus-ring)}[data-theme=dark] .app-shell .email-delivery-row.failed{border-color:var(--danger-border)}[data-theme=dark] .app-shell .email-delivery-badge{color:var(--text-secondary);background-color:var(--surface-muted)}}.quote-status.edits_requested{color:#92400e;background:#fef3c7}.quote-edit-request{color:#713f12;background:#fffbeb;border:1px solid #f4c86a;border-radius:10px;margin:0 0 18px;padding:16px 18px}.quote-edit-request>div{align-items:center;gap:8px;display:flex}.quote-edit-request span{font-size:12px;font-weight:800}.quote-edit-request time{color:#92400e;margin-left:auto;font-size:10px}.quote-edit-request p{white-space:pre-wrap;margin:10px 0 0;font-size:12px;line-height:1.6}.step-notes-trigger{border:1px solid var(--border-color);min-height:36px;color:var(--text-secondary);background:var(--surface);font:inherit;cursor:pointer;border-radius:7px;align-items:center;gap:7px;padding:5px 9px;font-size:.78rem;transition:border-color .18s,color .18s,background-color .18s;display:inline-flex}.step-notes-trigger:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.step-notes-trigger:focus-visible,.step-notes-close:focus-visible,.step-notes-load:focus-visible,.step-notes-submit:focus-visible,.step-notes-error button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.step-notes-trigger.is-compact{min-height:32px}.step-notes-unread{color:var(--accent);align-items:center;gap:5px;font-size:.7rem;font-weight:700;display:inline-flex}.step-notes-unread i{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 14%, transparent);border-radius:50%;animation:2.2s ease-in-out infinite step-note-pulse}@keyframes step-note-pulse{50%{opacity:.68;transform:scale(.78)}}.step-notes-scrim{z-index:1200;background:color-mix(in srgb, var(--text-primary) 42%, transparent);place-items:center;padding:18px;animation:.16s ease-out step-note-fade;display:grid;position:fixed;inset:0}.step-notes-portal{z-index:1200;position:relative}.step-notes-dialog{border:1px solid var(--border-color);background:var(--surface);width:min(590px,100%);max-height:min(760px,100dvh - 36px);color:var(--text-primary);box-shadow:0 22px 70px color-mix(in srgb, var(--text-primary) 23%, transparent);border-radius:14px;flex-direction:column;animation:.2s ease-out step-note-rise;display:flex;overflow:hidden}.step-notes-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;padding:21px 23px 17px;display:flex}.step-notes-eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:.67rem;font-weight:800}.step-notes-header h2{margin:5px 0 1px;font-size:1.35rem}.step-notes-header p{color:var(--text-secondary);margin:0;font-size:.82rem}.step-notes-close{border:1px solid var(--border-color);width:38px;height:38px;color:var(--text-secondary);background:var(--surface-muted);cursor:pointer;border-radius:8px;place-items:center;display:grid}.step-notes-thread{align-content:start;gap:11px;min-height:170px;padding:17px 22px;display:grid;overflow-y:auto}.step-note-entry{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:9px;padding:12px 14px}.step-note-legacy{border-style:dashed}.step-note-meta{flex-wrap:wrap;justify-content:space-between;gap:5px 12px;font-size:.76rem;display:flex}.step-note-meta strong{color:var(--text-primary)}.step-note-meta span{color:var(--text-secondary);font-size:.7rem}.step-note-source{color:var(--text-secondary);margin-top:7px;font-size:.72rem;font-weight:600;display:block}.step-note-entry p{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text-primary);margin:9px 0 0;font-size:.86rem;line-height:1.55}.step-notes-empty{color:var(--text-secondary);text-align:center;margin:auto;padding:24px 0}.step-notes-skeleton{gap:8px;padding:10px 0;display:grid}.step-notes-skeleton i{background:var(--surface-muted);border-radius:8px;height:58px;animation:1.1s ease-in-out infinite alternate step-note-fade;display:block}.step-notes-skeleton i:nth-child(2){width:88%}.step-notes-skeleton i:nth-child(3){width:72%}.step-notes-error{color:var(--danger);justify-content:space-between;gap:10px;font-size:.8rem;display:flex}.step-notes-alert{border:1px solid color-mix(in srgb, var(--danger) 30%, var(--border-color));color:var(--danger);background:var(--danger-soft);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;padding:10px 12px;font-size:.78rem;display:flex}.step-notes-alert button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:4px;font-weight:800;text-decoration:underline}.step-notes-error button,.step-notes-load{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;font-weight:700}.step-notes-compose{border-top:1px solid var(--border-color);background:var(--surface);gap:8px;padding:15px 22px 19px;display:grid}.step-notes-compose label{font-size:.78rem;font-weight:700}.step-notes-compose textarea{resize:vertical;border:1px solid var(--border-color);width:100%;color:var(--text-primary);background:var(--surface-muted);font:inherit;border-radius:8px;padding:10px 12px;line-height:1.45}.step-notes-compose textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.step-notes-compose-actions{color:var(--text-secondary);justify-content:space-between;align-items:center;font-size:.72rem;display:flex}.step-notes-submit{min-height:38px;color:var(--surface);background:var(--accent);font:inherit;cursor:pointer;border:0;border-radius:7px;padding:7px 14px;font-weight:700}.step-notes-submit:disabled{opacity:.5;cursor:not-allowed}.step-notes-summary-alert{border:1px solid color-mix(in srgb, var(--warning-text) 30%, var(--border-color));color:var(--warning-text);background:var(--surface-muted);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;margin:0 0 12px;padding:9px 12px;font-size:.78rem;display:flex}.step-notes-summary-alert button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:4px;font-weight:800;text-decoration:underline}@keyframes step-note-fade{0%{opacity:.45}to{opacity:1}}@keyframes step-note-rise{0%{opacity:.65;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.step-notes-unread i,.step-notes-scrim,.step-notes-dialog,.step-notes-skeleton i{animation:none}.step-notes-trigger{transition:none}}@media (width<=520px){.step-notes-scrim{align-items:end;padding:0}.step-notes-dialog{border-radius:14px 14px 0 0;max-height:92dvh}.step-notes-thread{padding-inline:15px}.step-notes-header,.step-notes-compose{padding-inline:16px}.step-notes-alert,.step-notes-summary-alert{align-items:flex-start}}.contractor-password-input{align-items:stretch;gap:6px;min-width:0;display:flex}.contractor-password-input input{flex:1;width:0;min-width:0}.contractor-password-input button{color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:8px;flex:0 0 44px;place-items:center;display:grid}.contractor-password-input button:focus-visible{outline-offset:2px;outline:2px solid}.contractor-project-layout{grid-template-columns:minmax(190px,235px) minmax(0,1fr);align-items:start;gap:22px;display:grid}.contractor-project-nav{border:1px solid var(--border-color);background:var(--surface-strong);border-radius:8px;gap:5px;padding:11px;display:grid;position:sticky;top:16px}.contractor-project-nav>strong{color:var(--text-secondary);letter-spacing:.07em;text-transform:uppercase;padding:5px 7px 8px;font-size:.7rem}.contractor-project-nav button{min-width:0;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;gap:3px;padding:9px;display:grid}.contractor-project-nav button[aria-current=page]{border-color:color-mix(in srgb, var(--accent) 34%, var(--border-color));background:color-mix(in srgb, var(--accent) 8%, var(--surface))}.contractor-project-nav button:disabled{cursor:not-allowed;opacity:.62}.contractor-project-nav button>span,.project-nav-title{overflow-wrap:anywhere;font-size:.8rem;font-weight:700}.contractor-project-nav button>small{overflow-wrap:anywhere;color:var(--text-secondary);font-size:.68rem}.contractor-project-nav button:first-of-type{justify-content:space-between;align-items:center;gap:8px;display:flex}.contractor-project-nav button:first-of-type span{color:var(--text-secondary);flex:none;font-size:.7rem}.contractor-project-content{min-width:0}.contractor-project-mobile{display:none}.contractor-selected-project{border-left:3px solid var(--accent);background:var(--surface-strong);min-width:0;margin:0 0 15px;padding:12px 14px}.contractor-selected-project>span{color:var(--text-secondary);letter-spacing:.07em;text-transform:uppercase;font-size:.66rem;font-weight:700}.contractor-selected-project h2{overflow-wrap:anywhere;margin:4px 0;font-size:1.05rem}.contractor-selected-project p{color:var(--text-secondary);overflow-wrap:anywhere;margin:0;font-size:.72rem}.portal-project-meta{color:var(--text-secondary);overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:5px 10px;margin-top:10px;font-size:.68rem;display:flex}.portal-project-meta strong{color:var(--text-primary);font-size:.75rem}.portal-project-meta>span:first-child{color:var(--text-secondary);text-transform:uppercase;font-size:.65rem;font-weight:700}.portal-readonly{border-left:2px solid var(--border-strong);color:var(--text-secondary);background:var(--surface-muted);margin:12px 0;padding:9px 10px;font-size:.75rem}.portal-pending-photo{min-width:0;max-width:100%;color:var(--text-secondary);align-items:center;gap:8px;font-size:.72rem;display:flex}.portal-pending-photo>span{overflow-wrap:anywhere;text-overflow:ellipsis;max-width:240px;overflow:hidden}.portal-edit-fieldset{border:0;width:100%;min-width:0;margin:0;padding:0;display:grid}.contractor-portal [hidden]{display:none!important}@media (width<=760px){.contractor-project-layout{grid-template-columns:1fr;gap:12px}.contractor-project-nav{display:none}.contractor-project-mobile{color:var(--text-secondary);gap:6px;margin-bottom:12px;font-size:.73rem;font-weight:700;display:grid}.contractor-project-mobile select{text-overflow:ellipsis;width:100%;min-width:0;min-height:40px;overflow:hidden}}@media (width<=520px){.portal-project-meta{gap:4px;display:grid}}.portal-step-notes{justify-content:flex-start;margin:10px 0 2px;display:flex}.br-auth{--br-blue:#2f6bff;--br-hover:#1f57e8;--br-navy:#040a15;--br-900:#0a1629;--br-muted:#8c9ab5;--br-line:#96b2e824;--br-ink:#172033;--br-danger:#b8384b;min-height:100dvh;color:var(--br-ink);background:var(--br-navy);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);font-family:Instrument Sans,sans-serif;display:grid;overflow:hidden}.br-auth *{box-sizing:border-box}.br-auth .br-left{background:radial-gradient(520px 320px at 50% 8%, #2f6bff2e, transparent 70%), linear-gradient(180deg, var(--br-900), var(--br-navy) 70%);flex-direction:column;justify-content:center;align-items:center;gap:22px;min-height:100dvh;padding:28px 16px 34px;display:flex;position:relative}.br-auth .br-back{color:var(--br-muted);cursor:pointer;background:0 0;border:0;padding:8px 0;font:500 13px Instrument Sans,sans-serif;transition:color .2s;position:absolute;top:27px;left:clamp(24px,4vw,56px)}.br-auth .br-back:hover{color:#fff}.br-auth .br-back:focus-visible,.br-auth .br-link:focus-visible,.br-auth .br-eye:focus-visible{outline-offset:3px;border-radius:5px;outline:3px solid #2f6bff73}.br-auth .br-brand{color:#f4f6fa;letter-spacing:.42em;text-indent:.42em;justify-items:center;gap:8px;margin-top:6px;font-size:19px;font-weight:500;display:grid}.br-auth .br-brand img.br-supplied-logo{object-fit:contain;border-radius:0;width:220px;height:auto}.br-auth .br-brand:has(.br-supplied-logo){line-height:0}.br-auth .br-card{background:#fefefe;border-radius:16px;width:min(440px,100%);padding:clamp(25px,4vw,40px);animation:.55s both br-rise;box-shadow:0 0 0 1px #ffffff14,0 40px 80px -30px #000000c7,0 0 100px -40px #2f6bff80}.br-auth .br-card.signup{border-radius:14px;width:min(468px,100%);padding:26px 30px 24px}.br-auth .br-heading{margin-bottom:25px}.br-auth .br-card.signup .br-heading{margin-bottom:18px}.br-auth .br-heading h1{color:var(--br-ink);letter-spacing:-.035em;margin:0 0 8px;font-size:30px;font-weight:600;line-height:1.08}.br-auth .br-card.signup .br-heading h1{letter-spacing:-.04em;font-size:27px}.br-auth .br-heading p{color:#64718a;margin:0;font-size:14px;line-height:1.55}.br-auth .br-card.signup .br-heading p{font-size:12.5px;line-height:1.4}.br-auth .br-form{gap:15px;display:grid}.br-auth .br-card.signup .br-form{gap:10px}.br-auth .br-field{color:#354158;align-content:start;gap:7px;font-size:13px;font-weight:600;display:grid}.br-auth .br-card.signup .br-field{gap:4px;font-size:11.5px}.br-auth .br-label{display:block}.br-auth .br-required{color:var(--br-blue);margin-left:2px}.br-auth .br-control{position:relative}.br-auth .br-control svg{z-index:1;color:#70809a;pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.br-auth .br-control input,.br-auth .br-control select{width:100%;height:46px;color:var(--br-ink);background:#fff;border:1px solid #cdd5e1;border-radius:10px;outline:0;padding:0 13px 0 42px;font:400 14px Instrument Sans,sans-serif;transition:border-color .18s,box-shadow .18s}.br-auth .br-control select{padding-left:12px}.br-auth .br-control input:focus,.br-auth .br-control select:focus{border-color:var(--br-blue);box-shadow:0 0 0 3px #2f6bff2e}.br-auth .br-card.signup .br-control input,.br-auth .br-card.signup .br-control select{border-radius:8px;height:40px;font-size:13px}.br-auth .br-card.signup .br-control svg{width:15px;height:15px;left:12px}.br-auth .br-card.signup .br-control input{padding-left:36px}.br-auth .br-card.signup .br-control select{padding-left:10px}.br-auth .br-field.has-error input,.br-auth .br-field.has-error select{border-color:var(--br-danger)}.br-auth .br-error{color:var(--br-danger);font-size:12px;font-weight:500}.br-auth .br-hint{color:#77849a;font-size:11.5px;font-weight:400}.br-auth .br-card.signup .br-hint,.br-auth .br-card.signup .br-error{font-size:10.5px}.br-auth .br-eye{color:#5f6d84;cursor:pointer;background:0 0;border:0;padding:5px;font:500 11px JetBrains Mono,monospace;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.br-auth .br-control:has(.br-eye) input{padding-right:58px}.br-auth .br-card.signup .br-eye{font-size:10px;right:8px}.br-auth .br-card.signup .br-control:has(.br-eye) input{padding-right:50px}.br-auth .br-two{grid-template-columns:1fr 1fr;gap:12px;display:grid}.br-auth .br-card.signup .br-two{gap:9px}.br-auth .br-phone{grid-template-columns:116px 1fr}.br-auth .br-phone .br-control input{padding-left:42px}.br-auth .br-card.signup .br-phone .br-control input{padding-left:36px}.br-auth .br-options{color:#536077;justify-content:space-between;align-items:center;gap:10px;font-size:12.5px;display:flex}.br-auth .br-check{cursor:pointer;align-items:center;gap:8px;display:flex}.br-auth .br-check input,.br-auth .br-legal input{width:15px;height:15px;accent-color:var(--br-blue);margin:0}.br-auth .br-link{color:#245ee8;cursor:pointer;text-align:left;background:0 0;border:0;padding:2px 0;font:600 12.5px Instrument Sans,sans-serif}.br-auth .br-link:hover{color:var(--br-hover);text-decoration:underline}.br-auth .br-submit{color:#fff;background:var(--br-blue);cursor:pointer;border:0;border-radius:9px;height:48px;font:600 14px Instrument Sans,sans-serif;transition:transform .18s,background .18s;box-shadow:inset 0 1px #fff3,0 10px 30px -10px #2f6bffbf}.br-auth .br-submit:hover:not(:disabled){background:var(--br-hover);transform:translateY(-1px)}.br-auth .br-submit:active{background:#1947c2;transform:translateY(0)}.br-auth .br-card.signup .br-submit{height:43px;font-size:13px}.br-auth .br-notice{color:#83530a;background:#fff4e5;border:1px solid #f4d39b;border-radius:9px;margin-bottom:15px;padding:11px 12px;font-size:12.5px;line-height:1.4}.br-auth .br-notice-error{color:var(--br-danger);background:#fff1f3;border-color:#e7b5bd}.br-auth .br-divider{background:#e4e8ef;height:1px;margin:25px 0 16px}.br-auth .br-card.signup .br-divider{margin:17px 0 12px}.br-auth .br-switch{color:#69758b;text-align:center;font-size:13px}.br-auth .br-switch .br-link{margin-left:5px}.br-auth .br-legal{color:#5e6b80;align-items:flex-start;gap:8px;font-size:12px;line-height:1.45;display:flex}.br-auth .br-legal.has-error{color:var(--br-danger)}.br-auth .br-legal input{flex:none;margin-top:2px}.br-auth .br-card.signup .br-legal{gap:6px;font-size:11px;line-height:1.35}.br-auth .br-card.signup .br-legal input{width:13px;height:13px;margin-top:1px}.br-auth .br-card.signup .br-link,.br-auth .br-card.signup .br-switch{font-size:11.5px}.br-auth .br-under{color:#99a7bf;text-align:center;font-size:12px}.br-auth .br-right{border-left:1px solid var(--br-line);background:repeating-linear-gradient(90deg,#0000 0 34px,#96b2e81a 34px 35px,#0000 35px 52px,#96b2e80d 52px 53px),linear-gradient(#0b1830,#050b17);position:relative;overflow:hidden}.br-auth .br-right:before{content:"";clip-path:polygon(0 0,100% 0,62% 100%,0 78%);opacity:.86;background:repeating-linear-gradient(-35deg,#0000 0 9px,#abc4ef14 10px 11px),linear-gradient(135deg,#3a5584,#1b2e52 55%,#0c1932);border-right:1px solid #cddeff8c;position:absolute;inset:0 0 18%}.br-auth .br-right:after{content:"";background:#b4ceff73;width:1px;position:absolute;top:0;bottom:0;left:32%;box-shadow:0 0 12px #87b1ff73}.br-auth .br-wordstack{color:#e3e9f4;letter-spacing:.34em;gap:22px;font-size:clamp(18px,1.6vw,22px);font-weight:600;display:grid;position:absolute;top:50%;left:18%;transform:translateY(-50%)}.br-auth .br-wordstack i{background:var(--br-blue);width:44px;height:3px;margin-top:4px;box-shadow:0 0 15px #2f6bffcc}.br-auth .br-strap{color:var(--br-blue);letter-spacing:.26em;font:500 12px/1.7 JetBrains Mono,monospace;position:absolute;bottom:40px;left:clamp(24px,5vw,64px)}@keyframes br-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (width<=960px){.br-auth{display:block}.br-auth .br-right{display:none}.br-auth .br-left{min-height:100dvh}}@media (width<=520px){.br-auth .br-left{gap:17px;padding-top:72px;padding-left:14px;padding-right:14px}.br-auth .br-back{top:20px;left:23px}.br-auth .br-brand img.br-supplied-logo{width:180px}.br-auth .br-brand{font-size:16px}.br-auth .br-card{padding:24px 20px}.br-auth .br-card.signup{width:min(430px,100%);padding:22px 18px 20px}.br-auth .br-card.signup .br-heading h1{font-size:25px}.br-auth .br-two{grid-template-columns:1fr}.br-auth .br-phone{grid-template-columns:115px 1fr;gap:9px}.br-auth .br-options{flex-direction:column;align-items:flex-start}.br-auth .br-under{padding-bottom:6px}}.br-public-page{color:#172033;background:#f4f6f9;place-items:center;min-height:100dvh;padding:24px;font-family:Instrument Sans,sans-serif;display:grid}.br-public-page .br-public-card{background:#fff;border:1px solid #dce3ec;border-radius:16px;width:min(100%,500px);padding:42px;box-shadow:0 24px 70px #0f172a1f}.br-public-page img{width:min(220px,70%);height:auto;margin-bottom:24px}.br-public-page .br-public-kicker{color:#2f6bff;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:600}.br-public-page h1{color:#172033;letter-spacing:-.035em;margin:0 0 12px;font-size:30px}.br-public-page p:not(.br-public-kicker){color:#64718a;margin:0 0 24px;font-size:14px;line-height:1.6}.br-public-page button{color:#fff;cursor:pointer;background:#2f6bff;border:0;border-radius:9px;min-height:44px;padding:0 18px;font:600 14px Instrument Sans,sans-serif}@media (width<=520px){.br-public-page{padding:14px}.br-public-page .br-public-card{padding:28px 22px}}.br-sales-page{--br-sales-blue:#2f6bff;--br-sales-n950:#040a15;--br-sales-n900:#0a1629;--br-sales-n800:#10203a;--br-sales-text:#19263a;--br-sales-muted:#66738a;color:var(--br-sales-text);background:#fff;font-family:Instrument Sans,sans-serif}.br-sales-page *,.br-sales-page :before,.br-sales-page :after{box-sizing:border-box}.br-sales-page a{color:inherit;text-decoration:none}.br-sales-page .br-sales-nav{z-index:10;height:88px;margin-bottom:-88px;position:sticky;top:0}.br-sales-page .br-sales-nav-inner{align-items:center;gap:55px;max-width:1240px;height:88px;margin:auto;padding:0 16px;display:flex;position:relative}.br-sales-page .br-sales-nav.br-sales-stuck{background:var(--br-sales-n900)}.br-sales-page .br-sales-nav.br-sales-stuck .br-sales-nav-inner{max-width:1240px}.br-sales-page .br-sales-logo{color:#fff;white-space:nowrap;align-items:center;gap:11px;display:flex}.br-sales-page .br-sales-logo img{object-fit:cover;border-radius:8px;width:36px;height:36px}.br-sales-page .br-sales-logo strong{color:#fff;letter-spacing:.3em;font-size:15px;font-weight:500}.br-sales-page .br-sales-nav-links{gap:34px;margin:auto;display:flex}.br-sales-page .br-sales-nav-links a{color:#c9d4e8;white-space:nowrap;font-size:14.5px}.br-sales-page .br-sales-nav-actions{flex-shrink:0;align-items:center;gap:10px;margin-left:auto;display:flex}.br-sales-page .br-sales-primary,.br-sales-page .br-sales-ghost{white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:9px;min-height:54px;padding:0 20px;font-size:14px;font-weight:600;transition:transform .2s,background .2s,border-color .2s;display:inline-flex}.br-sales-page .br-sales-primary{background:var(--br-sales-blue);color:#fff;box-shadow:inset 0 1px #fff3,0 10px 30px -10px #2f6bffbf}.br-sales-page .br-sales-primary:hover{background:#1f57e8;transform:translateY(-2px)}.br-sales-page .br-sales-ghost{color:#fff;background:#0a162959;border-color:#c9d4e847}.br-sales-page .br-sales-ghost:hover{border-color:#c9d4e899}.br-sales-page .br-sales-small{min-height:38px;padding:0 15px}.br-sales-page .br-sales-menu-button{color:#fff;cursor:pointer;background:0 0;border:0;display:none}.br-sales-page .br-sales-mobile-menu{display:none}.br-sales-page .br-sales-hero{isolation:isolate;color:#fff;background:#040a15 url(/bruscore-hero-house.svg) 70% 100%/cover no-repeat;min-height:650px;position:relative}.br-sales-page .br-sales-hero:before,.br-sales-page .br-sales-closing:before{content:"";z-index:-1;background:linear-gradient(90deg,#040a1599,#040a1514 54%,#0000);position:absolute;inset:0}.br-sales-page .br-sales-hero-inner{max-width:1240px;margin:auto;padding:calc(88px + clamp(40px,6vw,80px)) 16px 0}.br-sales-page .br-sales-hero-copy{max-width:680px}.br-sales-page .br-sales-eyebrow,.br-sales-page .br-sales-blue-eyebrow{color:#5c8dff;letter-spacing:.24em;margin:0 0 22px;font:500 11px JetBrains Mono}.br-sales-page .br-sales-eyebrow:before{content:"";vertical-align:middle;background:linear-gradient(90deg,#0000,#5c8dff);width:28px;height:1px;margin-right:12px;display:inline-block}.br-sales-page .br-sales-hero h1,.br-sales-page .br-sales-tour h2,.br-sales-page .br-sales-how h2,.br-sales-page .br-sales-pricing h2,.br-sales-page .br-sales-closing h2{letter-spacing:-.035em;margin-top:0}.br-sales-page .br-sales-hero h1{letter-spacing:-.04em;margin-bottom:24px;font-size:clamp(42px,5.4vw,74px);font-weight:600;line-height:1}.br-sales-page .br-sales-hero h1 span{display:block}.br-sales-page .br-sales-hero h1 span+span{color:#0000;background:linear-gradient(95deg,#d5e1ff,#9dbaff 45%,#5c8dff);-webkit-background-clip:text;background-clip:text}.br-sales-page .br-sales-lede{color:#c9d4e8;max-width:30em;font-size:clamp(16px,1.5vw,19px);line-height:1.6}.br-sales-page .br-sales-hero-buttons{gap:14px;margin-top:27px;display:flex}.br-sales-page .br-sales-hero-buttons svg,.br-sales-page .br-sales-next svg{width:17px}.br-sales-page .br-sales-facts{max-width:630px;margin-top:clamp(28px,5vw,56px);padding-bottom:clamp(40px,6vw,72px);display:flex}.br-sales-page .br-sales-facts div{border-left:1px solid #96b2e824;padding:0 31px}.br-sales-page .br-sales-facts div:first-child{border:0;padding-left:0}.br-sales-page .br-sales-facts small,.br-sales-page .br-sales-facts b{display:block}.br-sales-page .br-sales-facts small{color:#8c9ab5;font-size:13px}.br-sales-page .br-sales-facts b{white-space:nowrap;font-size:38px;font-weight:600}.br-sales-page .br-sales-tour,.br-sales-page .br-sales-how,.br-sales-page .br-sales-pricing{max-width:1240px;margin:auto;padding:clamp(64px,9vw,112px) 16px}.br-sales-page .br-sales-tour h2,.br-sales-page .br-sales-how h2,.br-sales-page .br-sales-pricing h2,.br-sales-page .br-sales-closing h2{margin-bottom:14px;font-size:clamp(30px,3.6vw,46px);line-height:1.08}.br-sales-page .br-sales-tour header{max-width:650px}.br-sales-page .br-sales-tour header>p:last-child,.br-sales-page .br-sales-pricing>div>p{color:var(--br-sales-muted)}.br-sales-page .br-sales-tour-grid{grid-template-columns:340px 1fr;gap:clamp(24px,4vw,56px);margin-top:48px;display:grid}.br-sales-page .br-sales-tabs button{width:100%;color:var(--br-sales-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;gap:12px;padding:11px;display:flex}.br-sales-page .br-sales-tabs button>i{background:#edf1f7;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;display:grid}.br-sales-page .br-sales-tabs svg{width:18px}.br-sales-page .br-sales-tabs button>span{min-width:0}.br-sales-page .br-sales-tabs b,.br-sales-page .br-sales-tabs small{display:block}.br-sales-page .br-sales-tabs b{font-size:15px}.br-sales-page .br-sales-tabs small{color:var(--br-sales-muted);margin:9px 0;line-height:1.45}.br-sales-page .br-sales-tabs em{font-style:normal}.br-sales-page .br-sales-tabs em span{color:#526078;margin:5px 0;font-size:12px;display:block}.br-sales-page .br-sales-tabs em svg{width:12px;color:var(--br-sales-blue);vertical-align:middle}.br-sales-page .br-sales-tabs .br-sales-active{border-left:3px solid var(--br-sales-blue);background:#f8fafc;box-shadow:inset 0 0 0 1px #e2e7ef}.br-sales-page .br-sales-tabs .br-sales-active>i{color:#fff;background:var(--br-sales-blue)}.br-sales-page .br-sales-tabs .br-sales-next{width:auto;color:var(--br-sales-blue);align-items:center;margin-top:13px;font-weight:600;display:inline-flex}.br-sales-page .br-sales-stage{background:radial-gradient(600px 300px at 90% 0, #2f6bff59, transparent 70%), linear-gradient(160deg, var(--br-sales-n800), var(--br-sales-n950));border-radius:18px;padding:clamp(10px,1.6vw,18px);position:relative;box-shadow:inset 0 0 0 1px #9dbaff66}.br-sales-page .br-sales-stage-sample{z-index:2;color:#637aa8;letter-spacing:.08em;font:9px JetBrains Mono;position:absolute;top:25px;right:25px}.br-sales-page .br-sales-browser-bar{background:#fff;border-radius:9px 9px 0 0;align-items:center;gap:5px;height:34px;padding:0 10px;display:flex}.br-sales-page .br-sales-browser-bar i{background:#d6dce5;border-radius:50%;width:7px;height:7px}.br-sales-page .br-sales-browser-bar span{color:#738098;background:#f1f3f7;border-radius:5px;margin:auto;padding:4px 11px;font:10px JetBrains Mono}.br-sales-page .br-sales-app{background:#f4f6fa;height:500px;display:flex;overflow:hidden}.br-sales-page .br-sales-app aside{background:var(--br-sales-n900);flex:none;width:156px;padding-top:15px}.br-sales-page .br-sales-app aside span{color:#92a1bb;border-left:2px solid #0000;padding:9px 14px;font-size:11px;display:block}.br-sales-page .br-sales-app aside .br-sales-on{color:#fff;border-color:var(--br-sales-blue);background:#2f6bff2e}.br-sales-page .br-sales-app main{flex:1;min-width:0;overflow:auto}.br-sales-page .br-sales-panel{min-height:100%;padding:19px;animation:.35s both br-sales-rise;position:relative}.br-sales-page .br-sales-panel-sample{color:#7c889b;letter-spacing:.05em;font:8px JetBrains Mono;position:absolute;top:7px;right:12px}.br-sales-page .br-sales-panel-title,.br-sales-page .br-sales-toolbar,.br-sales-page .br-sales-timeline-top{justify-content:space-between;align-items:center;display:flex}.br-sales-page .br-sales-panel-title b{font-size:17px}.br-sales-page .br-sales-panel-title small,.br-sales-page .br-sales-quote-row small,.br-sales-page .br-sales-task small,.br-sales-page .br-sales-tr small{color:#7c889b;margin-top:3px;font-size:10px;display:block}.br-sales-page .br-sales-panel button,.br-sales-page .br-sales-approval-actions button{color:#fff;background:var(--br-sales-blue);cursor:pointer;border:0;border-radius:6px;padding:7px 10px;font-size:11px}.br-sales-page .br-sales-stats{grid-template-columns:repeat(4,1fr);gap:9px;margin:16px 0;display:grid}.br-sales-page .br-sales-stats div,.br-sales-page .br-sales-dashboard-lower section,.br-sales-page .br-sales-task,.br-sales-page .br-sales-templates>div{background:#fff;border:1px solid #e2e7ef;border-radius:8px;padding:11px}.br-sales-page .br-sales-stats small,.br-sales-page .br-sales-stats em{color:#718099;font-size:10px;font-style:normal;display:block}.br-sales-page .br-sales-stats b{margin:5px 0;font-size:19px;display:block}.br-sales-page .br-sales-stats div:nth-child(3) b{color:var(--br-sales-blue)}.br-sales-page .br-sales-dashboard-lower{grid-template-columns:1.35fr 1fr;gap:10px;display:grid}.br-sales-page .br-sales-dashboard-lower section>b{font-size:12px}.br-sales-page .br-sales-quote-row{border-bottom:1px solid #edf0f4;grid-template-columns:1.3fr .65fr .9fr;align-items:center;padding:9px 0;font-size:10px;display:grid}.br-sales-page .br-sales-status{color:#5b6270;background:#f1f2f4;border-radius:10px;width:max-content;padding:4px 6px;font-size:9px}.br-sales-page .br-sales-status-awaiting-approval{color:#8a5a00;background:#fff6e3}.br-sales-page .br-sales-status-edits-requested{color:#a33a45;background:#fdeef0}.br-sales-page .br-sales-status-ready-to-schedule{color:#1947c2;background:#edf3ff}.br-sales-page .br-sales-status-in-progress{color:#1a2e50;background:#eef1f6}.br-sales-page .br-sales-status-complete{color:#1d7654;background:#eaf7f1}.br-sales-page .br-sales-bars div{align-items:center;gap:7px;margin:8px 0;display:flex}.br-sales-page .br-sales-bars small{width:90px;font-size:9px}.br-sales-page .br-sales-bars i{background:var(--br-sales-blue);border-radius:9px;height:6px}.br-sales-page .br-sales-toolbar{gap:7px}.br-sales-page .br-sales-toolbar input{border:1px solid #dbe1e9;border-radius:6px;flex:1;min-width:0;padding:8px;font-size:10px}.br-sales-page .br-sales-toolbar button:nth-child(2){color:#516078;background:#fff;border:1px solid #dbe1e9}.br-sales-page .br-sales-pills{white-space:nowrap;gap:5px;margin:13px 0;display:flex;overflow:hidden}.br-sales-page .br-sales-pills span{background:#e9edf3;border-radius:9px;padding:5px 7px;font-size:9px}.br-sales-page .br-sales-pills .br-sales-selected{color:#fff;background:var(--br-sales-n900)}.br-sales-page .br-sales-table{background:#fff;border:1px solid #e2e7ef;border-radius:7px;min-width:520px;overflow:hidden}.br-sales-page .br-sales-tr{border-bottom:1px solid #edf0f4;grid-template-columns:2fr 1fr 1fr 1.2fr;align-items:center;gap:9px;padding:8px 11px;font-size:10px;display:grid}.br-sales-page .br-sales-tr.br-sales-head{color:#748099;font:9px JetBrains Mono}.br-sales-page .br-sales-price-table .br-sales-tr{grid-template-columns:2fr .7fr .7fr .7fr .9fr}.br-sales-page .br-sales-view-tag{color:var(--br-sales-blue);font:9px JetBrains Mono}.br-sales-page .br-sales-approval{background:#fff;max-width:520px;min-height:100%;margin:auto;padding-top:6px}.br-sales-page .br-sales-approval h3{margin:13px 0 5px;font-size:18px}.br-sales-page .br-sales-approval h3 small{color:#7a8798;font-size:11px;font-weight:400}.br-sales-page .br-sales-approval>p{color:#718099;font-size:11px}.br-sales-page .br-sales-scope{border-bottom:1px solid #e8ecf1;justify-content:space-between;padding:8px 0;font-size:11px;display:flex}.br-sales-page .br-sales-totals{text-align:right;margin-top:10px;font-size:11px}.br-sales-page .br-sales-totals span,.br-sales-page .br-sales-totals strong{margin:5px;display:block}.br-sales-page .br-sales-totals strong{font-size:15px}.br-sales-page .br-sales-totals b{margin-left:25px}.br-sales-page .br-sales-approval-actions{justify-content:flex-end;gap:9px;margin-top:14px;display:flex}.br-sales-page .br-sales-approval-actions button:first-child{color:#25334a;background:#fff;border:1px solid #ccd5e2}.br-sales-page .br-sales-timeline-top{gap:16px}.br-sales-page .br-sales-timeline-top strong{margin-left:auto}.br-sales-page .br-sales-weeks{color:#718099;grid-template-columns:repeat(5,1fr);margin-left:105px;font:9px JetBrains Mono;display:grid}.br-sales-page .br-sales-timeline{background:repeating-linear-gradient(90deg,#0000 0 19.8%,#dce3ed 20% 20.15%);min-width:530px;padding-top:14px;position:relative}.br-sales-page .br-sales-timeline-row{align-items:center;height:29px;display:flex}.br-sales-page .br-sales-timeline-row>b{width:105px;padding-left:4px;font-size:9px}.br-sales-page .br-sales-timeline-row>i{color:#fff;background:#4a75da;border-radius:4px;padding:4px 8px;font-size:9px;font-style:normal}.br-sales-page .br-sales-timeline-row .br-sales-bar-1{width:25%;margin-left:10%}.br-sales-page .br-sales-timeline-row .br-sales-bar-2{background:#5b99b8;width:22%;margin-left:26%}.br-sales-page .br-sales-timeline-row .br-sales-bar-3{background:#657ca8;width:24%;margin-left:43%}.br-sales-page .br-sales-timeline-row .br-sales-bar-4{background:#8c6bbe;width:15%;margin-left:15%}.br-sales-page .br-sales-timeline-row .br-sales-bar-5{background:#4d91a4;width:19%;margin-left:31%}.br-sales-page .br-sales-timeline-row .br-sales-bar-6{background:#5c75a7;width:22%;margin-left:50%}.br-sales-page .br-sales-timeline-row .br-sales-bar-7{background:#527f69;width:38%;margin-left:24%}.br-sales-page .br-sales-timeline-row .br-sales-bar-8{color:#65728d;background:repeating-linear-gradient(135deg,#e2e8f1 0 5px,#f4f6fa 5px 10px);width:40%;margin-left:46%}.br-sales-page .br-sales-today{border-left:1px solid var(--br-sales-blue);color:var(--br-sales-blue);font-size:8px;position:absolute;top:22px;bottom:0;left:48%}.br-sales-page .br-sales-price h4{margin:17px 0 8px;font-size:12px}.br-sales-page .br-sales-templates{gap:8px;display:flex}.br-sales-page .br-sales-templates>div{flex:1}.br-sales-page .br-sales-templates b,.br-sales-page .br-sales-templates small{font-size:10px;display:block}.br-sales-page .br-sales-templates small{color:#718099;margin-top:4px;font-size:9px}.br-sales-page .br-sales-contractor{max-width:440px;margin:auto;padding-top:6px}.br-sales-page .br-sales-contractor h3{align-items:center;gap:8px;margin:14px 0;font-size:17px;display:flex}.br-sales-page .br-sales-avatar{color:#1f57e8;background:#dbe6ff;border-radius:50%;padding:7px;font-size:10px}.br-sales-page .br-sales-task{margin:8px 0}.br-sales-page .br-sales-task>b,.br-sales-page .br-sales-task>small,.br-sales-page .br-sales-task>span{display:block}.br-sales-page .br-sales-task>span{color:#7b8799;margin-top:8px;font-size:10px}.br-sales-page .br-sales-task>span svg{vertical-align:middle;border:1px solid #bbc5d5;border-radius:3px;margin-right:5px}.br-sales-page .br-sales-task>span.br-sales-done{color:#246e51}.br-sales-page .br-sales-photos{gap:5px;margin-top:10px;display:flex}.br-sales-page .br-sales-photos i{background:linear-gradient(135deg,#a9c1e3,#536a91);border-radius:3px;width:28px;height:22px}.br-sales-page .br-sales-photos i:last-child{color:#6e7b90;background:#f0f3f7;place-items:center;font-style:normal;display:grid}.br-sales-page .br-sales-locked{color:#56647a;gap:6px;font-size:10px;display:flex}.br-sales-page .br-sales-mobile-caption{display:none}.br-sales-page .br-sales-presentation{min-width:0}.br-sales-page .br-sales-tabs button:focus-visible{outline-offset:2px;outline:3px solid #7fa2ff}.br-sales-page .br-sales-app{height:auto;min-height:500px}.br-sales-page .br-sales-app main{overflow:hidden}.br-sales-page .br-sales-app aside{flex-direction:column;padding:13px 0 10px;display:flex}.br-sales-page .br-sales-app aside span{align-items:center;gap:9px;padding:9px 14px;display:flex}.br-sales-page .br-sales-app aside svg{flex:none;width:14px;height:14px}.br-sales-page .br-sales-app aside b{font-size:10px;font-weight:500}.br-sales-page .br-sales-app aside .br-sales-settings{margin-top:auto}.br-sales-page .br-sales-side-brand{color:#fff;letter-spacing:.16em;align-items:center;gap:7px;padding:0 12px 13px;font:9px JetBrains Mono;display:flex}.br-sales-page .br-sales-side-brand img{object-fit:cover;border-radius:3px;width:16px;height:16px}.br-sales-page .br-sales-panel{min-height:500px;padding:20px 21px}.br-sales-page .br-sales-wide{padding-bottom:2px;overflow-x:auto}.br-sales-page .br-sales-section-head{justify-content:space-between;align-items:center;padding-bottom:6px;display:flex}.br-sales-page .br-sales-section-head small{color:#8190a8;letter-spacing:.06em;font:8px JetBrains Mono}.br-sales-page .br-sales-date{color:#718099;font-size:10px}.br-sales-page .br-sales-quote-row strong{text-align:right;font-size:10px;font-weight:600}.br-sales-page .br-sales-quote-row{grid-template-columns:40px minmax(0,1fr) 50px 105px;gap:7px}.br-sales-page .br-sales-quote-row>b{color:#7a879b;font:400 9px JetBrains Mono}.br-sales-page .br-sales-dashboard-lower section{min-width:0}.br-sales-page .br-sales-bars div{grid-template-columns:94px 1fr 13px;gap:6px;display:grid}.br-sales-page .br-sales-bars i{background:#e9edf3;width:auto}.br-sales-page .br-sales-bars i span{background:#436fd5;border-radius:9px;height:6px;display:block}.br-sales-page .br-sales-bars div:nth-child(3) i span{background:#c38a38}.br-sales-page .br-sales-bars div:nth-child(4) i span{background:#ba6272}.br-sales-page .br-sales-bars div:nth-child(5) i span{background:#6682c5}.br-sales-page .br-sales-bars div:nth-child(6) i span{background:#3d627f}.br-sales-page .br-sales-bars div:nth-child(7) i span{background:#4f9b77}.br-sales-page .br-sales-bars div>b{color:#637189;font-size:9px}.br-sales-page .br-sales-outline{color:#516078!important;background:#fff!important;border:1px solid #dbe1e9!important}.br-sales-page .br-sales-approval{max-width:570px;padding-top:3px}.br-sales-page .br-sales-approval-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin:0 0 12px;display:flex}.br-sales-page .br-sales-approval-heading>b{font-size:14px}.br-sales-page .br-sales-quote-card-title{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.br-sales-page .br-sales-quote-card-title h3{margin:0 0 3px;font-size:17px}.br-sales-page .br-sales-quote-card-title p{color:#718099;margin:0 0 12px;font-size:10px}.br-sales-page .br-sales-approval-heading h3{margin:8px 0 3px}.br-sales-page .br-sales-approval-heading p{color:#718099;margin:0;font-size:10px}.br-sales-page .br-sales-quote-card{background:#fff;border:1px solid #e0e6ef;border-radius:8px;padding:14px 15px 12px;box-shadow:0 5px 14px #1325420a}.br-sales-page .br-sales-card-meta{color:#77859a;gap:18px;padding-bottom:12px;font:8px JetBrains Mono;display:flex}.br-sales-page .br-sales-scope-head{color:#758399;border-top:1px solid #e8ecf1;border-bottom:1px solid #e8ecf1;justify-content:space-between;padding:8px 0;font:9px JetBrains Mono;display:flex}.br-sales-page .br-sales-scope{padding:9px 0}.br-sales-page .br-sales-scope b{font-weight:500}.br-sales-page .br-sales-totals{border-top:1px solid #e8ecf1;padding-top:4px}.br-sales-page .br-sales-totals span,.br-sales-page .br-sales-totals strong{margin:6px 0}.br-sales-page .br-sales-approval-actions{margin-top:12px}.br-sales-page .br-sales-schedule-heading{align-items:center;gap:14px;margin:2px 0 16px;font-size:13px;display:flex}.br-sales-page .br-sales-schedule-heading>strong{color:#64728a;white-space:nowrap;margin-left:auto;font-size:10px}.br-sales-page .br-sales-timeline-top{border:1px solid #dfe5ed;border-radius:6px;gap:8px;padding:3px;font-size:9px}.br-sales-page .br-sales-timeline-top span,.br-sales-page .br-sales-timeline-top b{padding:4px 5px}.br-sales-page .br-sales-timeline-top b{color:#fff;background:#162c50;border-radius:4px}.br-sales-page .br-sales-timeline{background:repeating-linear-gradient(90deg,#0000 0 16.6%,#e1e7ef 16.7% 16.85%);min-width:600px;padding-top:0}.br-sales-page .br-sales-weeks{grid-template-columns:120px repeat(5,1fr);margin:0;padding:0 0 8px}.br-sales-page .br-sales-weeks span{padding-left:5px}.br-sales-page .br-sales-weeks span:first-child{padding-left:4px}.br-sales-page .br-sales-timeline-row{border-top:1px solid #edf0f4;height:34px}.br-sales-page .br-sales-timeline-row>b{width:120px;font-size:9px}.br-sales-page .br-sales-timeline-row>b small{color:#7d899a;margin-top:2px;font-size:8px;font-weight:400;display:block}.br-sales-page .br-sales-timeline-row>i{align-items:center;gap:4px;min-height:20px;padding:4px 6px;display:flex}.br-sales-page .br-sales-timeline-row>i em{color:#345171;background:#fffc;border-radius:50%;place-items:center;width:13px;height:13px;font-size:6px;font-style:normal;display:grid}.br-sales-page .br-sales-today{top:26px;left:50%}.br-sales-page .br-sales-timeline{background:#fff;border:1px solid #dfe5ed;border-radius:7px;min-width:580px;padding-top:18px}.br-sales-page .br-sales-today{z-index:1;pointer-events:none;padding-left:3px;font-size:9px;line-height:12px;top:0;left:120px}.br-sales-page .br-sales-timeline-row{height:42px}.br-sales-page .br-sales-timeline-row>b{font-size:10px}.br-sales-page .br-sales-timeline-row>b small{font-size:9px}.br-sales-page .br-sales-track{background:repeating-linear-gradient(90deg,#e1e7ef 0 1px,#0000 1px 20%);flex:1;height:100%;position:relative}.br-sales-page .br-sales-track i{color:#fff;white-space:nowrap;border-radius:4px;align-items:center;gap:4px;height:21px;padding:3px 6px;font-size:10px;font-style:normal;display:flex;position:absolute;top:10px}.br-sales-page .br-sales-track .br-sales-bar-1{background:#173968;width:18%;margin:0;left:20%}.br-sales-page .br-sales-track .br-sales-bar-2{background:#2e68d8;width:17%;margin:0;left:39%}.br-sales-page .br-sales-track .br-sales-bar-3{background:#5876ad;width:24%;margin:0;left:57%}.br-sales-page .br-sales-track .br-sales-bar-4{background:#1e416e;width:15%;margin:0;left:0}.br-sales-page .br-sales-track .br-sales-bar-5{background:#3677d7;width:20%;margin:0;left:16%}.br-sales-page .br-sales-track .br-sales-bar-6{background:#6481b4;width:23%;margin:0;left:37%}.br-sales-page .br-sales-track .br-sales-bar-7{background:#42679a;width:31%;margin:0;left:60%}.br-sales-page .br-sales-track .br-sales-bar-8{color:#64728a;background:repeating-linear-gradient(135deg,#e2e8f1 0 5px,#f4f6fa 5px 10px);border:1px solid #d5dee9;width:36%;margin:0;left:60%}.br-sales-page .br-sales-track i em{color:#345171;background:#fffc;border-radius:50%;place-items:center;width:13px;height:13px;font-size:6px;font-style:normal;display:grid}.br-sales-page .br-sales-how{background:#f4f6fa;max-width:none;padding-left:max(16px,50vw - 604px);padding-right:max(16px,50vw - 604px)}.br-sales-page .br-sales-how>div{border-top:1px solid #d5dce6;grid-template-columns:repeat(4,1fr);margin-top:44px;display:grid}.br-sales-page .br-sales-how article{padding:0 24px 10px 0;position:relative}.br-sales-page .br-sales-how article:not(:first-child){padding-left:24px}.br-sales-page .br-sales-how article i{background:var(--br-sales-blue);width:44px;height:4px;margin-top:-2px;margin-bottom:27px;display:block}.br-sales-page .br-sales-how small{color:var(--br-sales-blue);font:10px JetBrains Mono}.br-sales-page .br-sales-how h3{margin:12px 0 7px;font-size:18px}.br-sales-page .br-sales-how p{color:#65728a;font-size:13px;line-height:1.5}.br-sales-page .br-sales-pricing{grid-template-columns:1fr 420px;align-items:center;gap:100px;display:grid}.br-sales-page .br-sales-pricing>div>p{max-width:450px;font-size:17px;line-height:1.6}.br-sales-page .br-sales-pricing article{color:#fff;background:radial-gradient(300px 180px at 100% 0,#2f6bff61,#0000 75%),linear-gradient(150deg,#10203a,#040a15);border-radius:16px;padding:32px}.br-sales-page .br-sales-pricing article>small{color:#9dbaff;font:10px JetBrains Mono}.br-sales-page .br-sales-pricing h3{margin:15px 0;font-size:44px}.br-sales-page .br-sales-pricing h3 span{color:#c9d4e8;font-size:14px;font-weight:400}.br-sales-page .br-sales-pricing li{color:#c9d4e8;margin:12px 0;font-size:13px}.br-sales-page .br-sales-pricing .br-sales-primary{width:100%;margin-top:15px}.br-sales-page .br-sales-pricing article>p{color:#8c9ab5;text-align:center;margin:16px 0 0;font-size:11px}.br-sales-page .br-sales-closing{isolation:isolate;color:#fff;background:#040a15 url(/bruscore-hero-house.svg) right 70%/cover no-repeat;justify-content:space-between;align-items:center;gap:30px;padding:54px max(16px,50vw - 604px);display:flex;position:relative}.br-sales-page .br-sales-closing h2{margin-bottom:8px}.br-sales-page .br-sales-closing p{color:#c9d4e8;margin:0}.br-sales-page .br-sales-closing .br-sales-primary{flex:none}.br-sales-page .br-sales-footer{color:#c9d4e8;background:#040a15;border-top:1px solid #376ddc;padding:26px max(16px,50vw - 604px)}.br-sales-page .br-sales-footer>div{align-items:center;gap:22px;display:flex}.br-sales-page .br-sales-footer>div:first-child>span{color:#8c9ab5;letter-spacing:.16em;font:10px JetBrains Mono}.br-sales-page .br-sales-footer nav{gap:18px;margin-left:auto;display:flex}.br-sales-page .br-sales-footer nav a,.br-sales-page .br-sales-footer nav button{color:#c9d4e8;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.br-sales-page .br-sales-footer>div+div{color:#8c9ab5;border-top:1px solid #96b2e824;justify-content:space-between;margin-top:22px;padding-top:18px;font-size:12px}.br-sales-page .br-sales-overlay{z-index:50;background:#040a15b3;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.br-sales-page .br-sales-dialog{max-width:400px;color:var(--br-sales-text);background:#fff;border-radius:14px;padding:28px;position:relative;box-shadow:0 30px 80px #00000059}.br-sales-page .br-sales-dialog-close{cursor:pointer;background:#edf1f7;border:0;border-radius:6px;place-items:center;padding:5px;display:grid;position:absolute;top:12px;right:12px}.br-sales-page .br-sales-dialog p:last-child{color:#607087;line-height:1.5}@keyframes br-sales-rise{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){.br-sales-page .br-sales-hero-copy,.br-sales-page .br-sales-facts{animation:.7s both br-sales-rise}.br-sales-page .br-sales-facts{animation-delay:.12s}}@media (width<=960px){.br-sales-page .br-sales-hero{background-position:78% 100%;background-size:auto 100%}.br-sales-page .br-sales-hero:before{background:linear-gradient(#040a15f0,#040a15e0 58%,#040a1566 82%,#040a15bf)}.br-sales-page .br-sales-nav-inner{gap:12px}.br-sales-page .br-sales-nav-links{display:none}.br-sales-page .br-sales-menu-button{place-items:center;width:44px;height:44px;padding:0;display:grid}.br-sales-page .br-sales-nav-actions .br-sales-small{min-height:44px}.br-sales-page .br-sales-mobile-menu:not([hidden]){background:var(--br-sales-n900);border-top:1px solid #96b2e833;flex-direction:column;gap:8px;max-height:calc(100dvh - 88px);padding:12px 16px 20px;display:flex;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 12px 20px #040a1533}.br-sales-page .br-sales-mobile-menu a{color:#c9d4e8;align-items:center;min-height:48px;display:flex}.br-sales-page .br-sales-mobile-menu .br-sales-primary{min-height:48px}.br-sales-page .br-sales-tour-grid{flex-direction:column;display:flex}.br-sales-page .br-sales-tabs{gap:8px;display:flex;overflow:auto}.br-sales-page .br-sales-tabs button{white-space:nowrap;border:1px solid #e2e7ef;flex:none;width:auto}.br-sales-page .br-sales-tabs button>span small,.br-sales-page .br-sales-tabs button>span em,.br-sales-page .br-sales-tabs .br-sales-next{display:none}.br-sales-page .br-sales-tabs .br-sales-active{color:#fff;background:var(--br-sales-n900);border:0}.br-sales-page .br-sales-stage{width:100%}.br-sales-page .br-sales-mobile-caption{color:#c9d4e8;margin:9px 2px 0;font-size:12px;display:block}.br-sales-page .br-sales-pricing{grid-template-columns:1fr;gap:34px}.br-sales-page .br-sales-app aside{width:52px}.br-sales-page .br-sales-app aside span{border-left-width:2px;padding:12px;font-size:0}.br-sales-page .br-sales-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=720px){.br-sales-page .br-sales-app{height:460px}.br-sales-page .br-sales-app aside{display:none}.br-sales-page .br-sales-dashboard-lower{grid-template-columns:1fr}.br-sales-page .br-sales-bars{display:none}.br-sales-page .br-sales-how>div{grid-template-columns:repeat(2,1fr);gap:24px}.br-sales-page .br-sales-how article:not(:first-child){padding-left:0}.br-sales-page .br-sales-closing{flex-wrap:wrap}.br-sales-page .br-sales-footer>div:first-child{flex-wrap:wrap;align-items:flex-start}.br-sales-page .br-sales-footer nav{justify-content:space-between;width:100%;margin:4px 0 0}.br-sales-page .br-sales-facts{justify-content:space-between}.br-sales-page .br-sales-facts div{padding:0 12px}}@media (width<=560px){.br-sales-page .br-sales-nav-actions .br-sales-nav-start{display:none}.br-sales-page .br-sales-hero-buttons{flex-direction:column}.br-sales-page .br-sales-hero-buttons>*{width:100%}.br-sales-page .br-sales-facts div{padding:0 8px}.br-sales-page .br-sales-facts small{font-size:11.5px}.br-sales-page .br-sales-facts b{font-size:22px}.br-sales-page .br-sales-tour,.br-sales-page .br-sales-how,.br-sales-page .br-sales-pricing{padding-top:64px;padding-bottom:64px}.br-sales-page .br-sales-how>div{grid-template-columns:1fr}.br-sales-page .br-sales-pricing article{padding:25px}.br-sales-page .br-sales-closing{padding-top:42px;padding-bottom:42px}}@media (prefers-reduced-motion:reduce){html:has(.br-sales-page){scroll-behavior:auto}.br-sales-page *,.br-sales-page :before,.br-sales-page :after{transition:none!important;animation:none!important}}@media (width<=960px){.br-sales-page .br-sales-tour-grid{grid-template-columns:minmax(0,720px);justify-content:center;gap:14px;margin-top:34px;display:grid}.br-sales-page .br-sales-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;display:grid;overflow:visible}.br-sales-page .br-sales-tabs button{white-space:normal;border:1px solid #e2e7ef;border-radius:8px;align-items:center;width:100%;min-width:0;min-height:52px;padding:7px 8px}.br-sales-page .br-sales-tabs button>i{border-radius:7px;width:29px;height:29px}.br-sales-page .br-sales-tabs button>i svg{width:15px}.br-sales-page .br-sales-tabs b{font-size:11px;line-height:1.2}.br-sales-page .br-sales-tabs button>span em{display:none}.br-sales-page .br-sales-tabs .br-sales-active{color:var(--br-sales-text);border:1px solid #b7caef;border-left:3px solid var(--br-sales-blue);background:#f4f7ff}.br-sales-page .br-sales-tabs .br-sales-active>i{color:#fff;background:var(--br-sales-blue)}.br-sales-page .br-sales-tabs .br-sales-next{display:none}.br-sales-page .br-sales-mobile-caption{color:#64728a;text-align:center;max-width:680px;margin:0 auto 11px;font-size:13px;line-height:1.45;display:block}.br-sales-page .br-sales-stage{border-radius:13px;width:100%;max-width:720px;margin:auto;padding:10px}.br-sales-page .br-sales-stage-sample{top:17px;right:18px}.br-sales-page .br-sales-app{min-height:0}.br-sales-page .br-sales-app aside{width:132px}.br-sales-page .br-sales-app aside span{padding:8px 11px;font-size:10px}.br-sales-page .br-sales-app aside b{font-size:9px}.br-sales-page .br-sales-panel{min-height:0;padding:17px}.br-sales-page .br-sales-dashboard-lower{grid-template-columns:1.25fr 1fr}.br-sales-page .br-sales-bars{display:block}}@media (width<=560px){.br-sales-page .br-sales-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.br-sales-page .br-sales-tabs button{gap:7px;min-height:48px;padding:6px}.br-sales-page .br-sales-tabs b{font-size:10px}.br-sales-page .br-sales-app aside{display:none}.br-sales-page .br-sales-panel{padding:15px 12px}.br-sales-page .br-sales-panel-sample{font-size:7px}.br-sales-page .br-sales-stats{gap:6px;margin:14px 0}.br-sales-page .br-sales-stats div{padding:8px}.br-sales-page .br-sales-stats b{font-size:15px}.br-sales-page .br-sales-dashboard-lower{grid-template-columns:1fr}.br-sales-page .br-sales-bars{display:block}.br-sales-page .br-sales-approval-heading{padding-top:5px}.br-sales-page .br-sales-approval-heading h3{font-size:16px}.br-sales-page .br-sales-card-meta{gap:7px;font-size:7px}.br-sales-page .br-sales-schedule-heading{flex-wrap:wrap;align-items:flex-start;gap:8px}.br-sales-page .br-sales-schedule-heading>strong{margin-left:0}.br-sales-page .br-sales-timeline-top{order:3;justify-content:center;width:100%}.br-sales-page .br-sales-templates{grid-template-columns:1fr;display:grid}}@media (width<=720px){.br-sales-page .br-sales-app{height:auto;min-height:0}.br-sales-page .br-sales-app main{overflow:visible}.br-sales-page .br-sales-panel{min-height:0}}.br-sales-page .br-sales-status{font-size:10px}.br-sales-page .br-sales-tr,.br-sales-page .br-sales-quote-row,.br-sales-page .br-sales-scope,.br-sales-page .br-sales-task{font-size:11px}.br-sales-page .br-sales-tr.br-sales-head,.br-sales-page .br-sales-view-tag,.br-sales-page .br-sales-bars small,.br-sales-page .br-sales-bars div>b{font-size:10px}@media (width<=960px){.br-sales-page .br-sales-tabs b{font-size:12px}.br-sales-page .br-sales-dashboard-lower{grid-template-columns:1fr}}@media (width<=560px){.br-sales-page .br-sales-quote-row{grid-template-columns:44px minmax(0,1fr);gap:6px 10px}.br-sales-page .br-sales-quote-row>strong{text-align:left}.br-sales-page .br-sales-quote-row>.br-sales-status{justify-self:end}}.quote-detail-view .quote-information{border:1px solid var(--qe-line);border-radius:var(--radius-lg);background:var(--qe-paper);grid-template-columns:minmax(0,1fr);min-width:0;display:grid;overflow:hidden}.quote-detail-view .quote-details-heading{justify-content:space-between;align-items:baseline;gap:12px;min-width:0;padding:15px 17px 10px;display:flex}.quote-detail-view .quote-details-heading h2{color:var(--qe-ink);font-size:var(--type-section-title);font-weight:var(--weight-semibold);line-height:var(--line-heading);margin:0}.quote-detail-view .quote-details-heading small{color:var(--qe-muted);font-size:var(--type-meta)}.quote-detail-view .quote-identity-row,.quote-detail-view .quote-address-row,.quote-detail-view .quote-date-row{gap:12px;min-width:0;padding:0 17px 12px;display:grid}.quote-detail-view .quote-identity-row{grid-template-columns:minmax(0,1fr) minmax(0,.92fr);padding-top:5px}.quote-detail-view .quote-address-row{grid-template-columns:minmax(0,1fr)}.quote-detail-view .quote-date-row{grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:16px}.quote-detail-view .quote-information .field,.quote-detail-view .quote-customer-field{min-width:0;color:var(--qe-muted);align-content:start;gap:5px;font-size:12px;display:grid}.quote-detail-view .quote-customer-label{min-height:32px;color:var(--qe-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.quote-detail-view .quote-customer-label>label{white-space:nowrap}.quote-detail-view .quote-customer-label .text-button{border:1px solid var(--qe-line);border-radius:var(--radius-sm);min-height:32px;color:var(--qe-blue);font-size:var(--type-label);padding:4px 7px}.quote-detail-view .quote-identity-row>.field>span{align-items:center;min-height:32px;display:flex}.quote-detail-view .quote-identity-row>.field{grid-template-rows:32px auto;align-items:center}.quote-detail-view .quote-customer-label .quote-add-customer{white-space:nowrap;flex:none;justify-content:center;align-items:center;gap:4px;display:inline-flex}.quote-detail-view .quote-information .quote-planned-date-error{grid-column:1/-1;margin-top:-5px}.quote-detail-view .quote-information .field>label,.quote-detail-view .quote-information .field>span:not(.sr-only){color:var(--qe-muted);font-size:var(--type-meta);line-height:var(--line-body)}.quote-detail-view .quote-information input,.quote-detail-view .quote-information select{width:100%;min-width:0;min-height:var(--control-height-compact);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--qe-ink);background:var(--input-bg-color);font-size:var(--type-body);padding:7px 10px}.quote-detail-view .quote-information input:focus-visible,.quote-detail-view .quote-information select:focus-visible{border-color:var(--accent);outline:2px solid var(--focus-ring);outline-offset:1px}.quote-detail-view .quote-information .field small{font-size:11px;line-height:1.4}.quote-detail-view .quote-information .field-error{color:var(--danger)}.quote-detail-view .quote-information select,.quote-detail-view .quote-information input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.quote-detail-view:is([data-theme=dark] *) .quote-information select,.quote-detail-view:is([data-theme=dark] *) .quote-information input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.quote-detail-view .quote-information select option{color:var(--qe-ink);background:var(--input-bg-color)}@container (width<=640px){.quote-detail-view .quote-identity-row{grid-template-columns:minmax(0,1fr)}.quote-detail-view .quote-date-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (width<=390px){.quote-detail-view .quote-date-row{grid-template-columns:minmax(0,1fr)}.quote-detail-view .quote-details-heading{flex-direction:column;align-items:flex-start;gap:3px}.quote-detail-view .quote-customer-label{gap:5px}}.quote-detail-view .quote-summary-sidebar{grid-template-columns:minmax(0,1fr);align-content:start;gap:12px;min-width:0;display:grid}.quote-detail-view .quote-summary-card{border:1px solid var(--qe-line);border-radius:var(--radius-lg);background:var(--qe-paper);gap:13px;min-width:0;padding:16px;display:grid}.quote-detail-view .quote-summary-card h2{color:var(--qe-ink);font-size:var(--type-section-title);font-weight:var(--weight-semibold);line-height:var(--line-heading);margin:0}.quote-detail-view .quote-summary-card .small-button{width:100%;margin-top:8px}.quote-detail-view .summary-lines{gap:9px;display:grid}.quote-detail-view .summary-lines>div{color:var(--qe-muted);overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.quote-detail-view .summary-lines b{color:var(--qe-ink);font-size:13px}.quote-detail-view .summary-lines .summary-total{border-top:1px solid var(--qe-line);align-items:baseline;gap:5px;margin-top:2px;padding-top:12px;display:grid}.quote-detail-view .summary-lines .summary-total b{color:var(--text-primary);font-size:27px;font-weight:var(--numeric-weight-strong);letter-spacing:-.035em}.quote-detail-view .summary-default-tax{border-bottom:1px solid var(--qe-line);grid-template-columns:minmax(0,1fr) 85px;align-items:center;gap:5px 8px;padding-bottom:10px;display:grid}.quote-detail-view .summary-default-tax>small{color:var(--qe-muted);grid-column:1/-1;font-size:12px;line-height:1.45}.quote-detail-view .default-tax-label{color:var(--qe-ink);justify-content:space-between;align-items:center;gap:10px;font-size:12px;font-weight:650;display:flex}.quote-detail-view .default-tax-input{border:1px solid var(--qe-line);background:var(--qe-paper);border-radius:6px;grid-template-columns:minmax(0,1fr) 26px;align-items:center;display:grid;overflow:hidden}.quote-detail-view .default-tax-input .numeric-input{width:100%;min-height:34px;color:var(--qe-ink);background:0 0;border:0;border-radius:0;padding:6px 9px;font-size:13px}.quote-detail-view .default-tax-input .numeric-input:focus{box-shadow:none;outline:none}.quote-detail-view .default-tax-input:focus-within{border-color:var(--border-strong)}.quote-detail-view .default-tax-input:has(.numeric-input:focus-visible){outline:2px solid var(--border-strong);outline-offset:2px}.quote-detail-view .default-tax-input>span{color:var(--qe-muted);font-size:var(--type-meta);text-align:center}.quote-detail-view .summary-lines .tax-breakdown small{color:var(--qe-muted);font-size:var(--type-meta);line-height:1.45}.quote-detail-view .quote-editor-switch{appearance:none;box-sizing:border-box;border:1px solid var(--border-strong);background:var(--surface-muted);cursor:pointer;border-radius:999px;flex:0 0 36px;align-items:center;width:36px;min-width:36px;height:22px;min-height:22px;margin:0;padding:2px;display:inline-flex;position:relative}.quote-detail-view .quote-editor-switch>span{background:var(--surface);width:16px;height:16px;box-shadow:var(--shadow-sm);transition:transform var(--motion-standard) var(--motion-ease);border-radius:50%;flex:0 0 16px;display:block}.quote-detail-view .quote-editor-switch[aria-checked=true]{background:var(--accent);border-color:var(--accent)}.quote-detail-view .quote-editor-switch[aria-checked=true]>span{transform:translate(14px)}.quote-detail-view .quote-editor-switch:disabled{opacity:.5;cursor:not-allowed}@media (prefers-reduced-motion:reduce){.quote-detail-view .quote-editor-switch>span{transition:none}}.quote-detail-view .estimate-table{border:1px solid var(--qe-line);border-radius:var(--radius-lg);background:var(--qe-paper);grid-column:1/-1;gap:10px;min-width:0;padding:16px;display:grid}.quote-detail-view .estimate-toolbar{justify-content:space-between;align-items:end;gap:14px;padding:3px 1px 2px;display:flex}.quote-detail-view .estimate-title{gap:3px;display:grid}.quote-detail-view .estimate-title h2{color:var(--qe-ink);font-size:var(--type-section-title);font-weight:var(--weight-semibold);line-height:var(--line-heading);letter-spacing:0;margin:0}.quote-detail-view .estimate-title>small{color:var(--qe-muted);font-size:var(--type-meta)}.quote-detail-view .estimate-toolbar-actions{align-items:center;gap:8px;display:flex}.quote-detail-view .quote-template-select{align-items:center;gap:7px;min-width:0;display:inline-flex;position:relative}.quote-detail-view .quote-template-select>select{max-width:230px;min-height:var(--control-height-compact);appearance:none;border:1px solid var(--qe-line);color:var(--qe-ink);background:var(--qe-paper);font-size:var(--type-label);cursor:pointer;border-radius:7px;padding:0 27px 0 10px}.quote-detail-view .quote-template-select>svg{pointer-events:none;color:var(--qe-muted);position:absolute;right:8px}.quote-detail-view .estimate-add-room{min-height:var(--control-height-compact);font-size:var(--type-label);border-radius:7px}.quote-detail-view .estimate-scroll{gap:8px;min-width:0;display:grid}.quote-detail-view .scope-empty{color:var(--qe-muted);margin:0;padding:16px}.quote-detail-view .room-accordion{border:1px solid var(--qe-line);border-radius:var(--radius-md);background:var(--qe-paper);min-width:0;box-shadow:var(--shadow-sm)}.quote-detail-view .room-header{align-items:center;gap:10px;min-width:0;min-height:53px;padding:8px 12px;display:flex}.quote-detail-view .room-collapse-button,.quote-detail-view .room-actions>button{width:29px;height:29px;color:var(--qe-muted);background:0 0;border:1px solid #0000;border-radius:6px;flex:0 0 29px;place-items:center;padding:0;display:grid}.quote-detail-view .room-collapse-button:hover,.quote-detail-view .room-actions>button:hover{border-color:var(--qe-line);color:var(--qe-ink);background:var(--qe-wash)}.quote-detail-view .room-collapse-button svg{transition:transform .15s}.quote-detail-view .room-accordion:not(.collapsed) .room-collapse-button svg{transform:rotate(90deg)}.quote-detail-view .room-accordion.collapsed .room-header{min-height:49px}.quote-detail-view .room-name{border:1px solid var(--control-border);border-radius:var(--radius-sm);width:auto;min-width:40px;color:var(--qe-ink);background:var(--qe-paper);font-size:var(--type-table-dense);font-weight:var(--weight-semibold);flex:1;padding:5px 7px}.quote-detail-view .room-name:focus{border-color:var(--accent);background:var(--qe-paper)}.quote-detail-view .room-count{color:var(--qe-muted);font-size:var(--type-meta);flex:none}.quote-detail-view .room-header>.price-display{color:var(--qe-ink);white-space:normal;overflow-wrap:anywhere;margin-left:auto;font-size:12px}.quote-detail-view .room-actions{align-items:center;gap:2px;display:flex}.quote-detail-view .room-actions .room-delete-button{color:var(--danger)}.quote-detail-view .room-content{min-width:0;padding:0 9px 9px}.quote-detail-view .estimate-columns,.quote-detail-view .estimate-row{grid-template-columns:minmax(80px,1.8fr) minmax(88px,.6fr) minmax(52px,.7fr) minmax(98px,.85fr) minmax(82px,.7fr) minmax(112px,1fr);gap:5px;min-width:0;display:grid}.quote-detail-view .estimate-columns{border-top:1px solid var(--qe-line);color:var(--qe-muted);font-size:var(--type-table-dense);font-weight:var(--weight-semibold);letter-spacing:.035em;text-transform:uppercase;align-items:center;padding:9px 9px 8px}.quote-detail-view .estimate-columns>span{white-space:nowrap;overflow-wrap:normal;word-break:normal}.quote-detail-view .estimate-row{border-top:1px solid var(--border-color);transition:background-color var(--motion-fast) var(--motion-ease);align-items:start;padding:10px 9px;position:relative}.quote-detail-view .estimate-row:hover{background:var(--surface-strong)}.quote-detail-view .estimate-row .numeric-input{font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular);font-feature-settings:"tnum" 1, "lnum" 1;font-weight:var(--numeric-weight-emphasis)}.quote-detail-view .estimate-item-cell{align-items:flex-start;gap:3px;min-width:0;display:flex}.quote-detail-view .estimate-field{min-width:0;padding-top:1px;position:relative}.quote-detail-view .estimate-item-cell>.description,.quote-detail-view .estimate-field>input,.quote-detail-view .estimate-field>select{border:1px solid var(--border-color);border-radius:var(--radius-sm);width:100%;min-width:0;height:34px;min-height:34px;color:var(--qe-ink);background:var(--input-bg-color);font-size:var(--type-table-dense);padding:0 8px}.quote-detail-view .estimate-item-cell>.description{resize:vertical;overflow-wrap:anywhere;width:0;height:auto;min-height:44px;line-height:1.35;font-size:var(--type-table);font-weight:var(--weight-medium);flex:1;padding:7px}.quote-detail-view .estimate-row input:focus,.quote-detail-view .estimate-row select:focus,.quote-detail-view .estimate-row textarea:focus-visible,.quote-detail-view .estimate-row select:focus-visible,.quote-detail-view .estimate-row input:focus-visible{border-color:var(--accent);outline:2px solid var(--focus-ring);outline-offset:1px}.quote-detail-view .estimate-field select{font-size:var(--type-table-dense);padding-right:20px}.quote-detail-view .estimate-markup-control>.numeric-input{padding-right:19px}.quote-detail-view .estimate-markup-control>span{color:var(--qe-muted);font-size:var(--type-meta);pointer-events:none;position:absolute;top:10px;right:9px}.quote-detail-view .estimate-total-cell{text-align:right;overflow-wrap:anywhere;justify-items:end;gap:3px;padding:5px 38px 0 2px;display:grid;position:relative}.quote-detail-view .estimate-total-cell .price-display{color:var(--qe-ink);font-size:var(--type-table);white-space:normal}.quote-detail-view .estimate-total-cell>small{color:var(--qe-muted);font-size:var(--type-meta)}.quote-detail-view .estimate-row>.scope-chips{align-items:center;column-gap:var(--space-2);flex-wrap:wrap;grid-area:2/1/auto/-1;row-gap:7px;min-width:0;display:flex}.quote-detail-view .scope-chip{border:1px solid var(--border-color);border-radius:var(--radius-sm);max-width:100%;min-height:36px;color:var(--text-secondary);background:var(--surface-muted);font-size:var(--type-label);align-items:center;gap:4px;padding:2px 7px;line-height:1.3;display:inline-flex;position:relative}.quote-detail-view .scope-chip select{appearance:none;max-width:100%;min-height:32px;color:inherit;font-size:var(--type-label);cursor:pointer;touch-action:manipulation;background:0 0;border:0;padding:0 9px 0 0;line-height:1.3}.quote-detail-view .scope-chip>svg,.quote-detail-view .scope-chip>span:last-child{flex:none}.quote-detail-view .tax-chip,.quote-detail-view .roadmap-chip{margin-left:var(--space-2)}.quote-detail-view .tax-rate-chip{gap:5px}.quote-detail-view .category-chip{color:var(--text-secondary);background:var(--surface-muted)}.quote-detail-view .category-chip:focus-within,.quote-detail-view .tax-chip:focus-within{border-color:var(--accent)}.quote-detail-view .tax-chip{color:var(--text-primary);background:var(--surface-muted)}.quote-detail-view .tax-rate-chip{padding-inline:5px}.quote-detail-view .tax-rate-chip .numeric-input{width:56px;min-height:32px;color:inherit;font-size:var(--type-label);background:0 0;border:0;padding:0}.quote-detail-view .roadmap-chip{min-height:32px;color:var(--text-secondary);background:var(--surface-muted);gap:9px}.quote-detail-view .roadmap-chip.is-selected{color:var(--accent);border-color:var(--accent-border);background:var(--accent-soft)}.quote-detail-view .line-tax-rate{color:var(--text-secondary);font-size:var(--type-meta)}.quote-detail-view .price-list-add:focus-within,.quote-detail-view .scope-chip:focus-within{outline:2px solid var(--qe-blue);outline-offset:2px}.quote-detail-view .scope-chip select:focus-visible{box-shadow:none;outline:0}.quote-detail-view .line-drag-handle{width:28px;min-width:28px;min-height:44px;color:var(--qe-muted);cursor:grab;touch-action:none;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid}.quote-detail-view .line-drag-handle:hover,.quote-detail-view .line-drag-handle[aria-pressed=true]{background:var(--qe-wash);color:var(--qe-blue)}.quote-detail-view .line-drag-handle[aria-pressed=true]{cursor:grabbing}.quote-detail-view .line-delete-button{width:34px;min-width:34px;height:44px;min-height:44px;color:var(--danger);background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;padding:0;display:grid;position:absolute;top:0;right:0}.quote-detail-view .line-delete-button:hover{background:var(--danger-soft);border-color:var(--danger-border)}.quote-detail-view .line-delete-button:focus-visible{outline:2px solid var(--danger);outline-offset:2px}.quote-detail-view .line-dragged{opacity:.55;background:var(--qe-wash);outline:1px dashed var(--qe-blue)}.quote-detail-view .line-drop-before{box-shadow:inset 0 3px var(--qe-blue)}.quote-detail-view .room-drop-target>.room-header{outline:2px solid var(--accent);outline-offset:-2px;background:var(--accent-soft)}.quote-detail-view .room-drag-handle{width:24px;min-width:24px;min-height:36px;color:var(--qe-muted);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;border:0;border-radius:5px;flex:0 0 24px;place-items:center;padding:0;display:grid}.quote-detail-view .room-drag-handle:hover:not(:disabled){color:var(--accent);background:var(--accent-soft)}.quote-detail-view .room-drag-handle[aria-pressed=true]{cursor:grabbing}.quote-detail-view .room-dragged{opacity:.55}.quote-detail-view .room-drop-before{box-shadow:0 -3px var(--accent)}.quote-detail-view .room-drop-after{box-shadow:0 3px var(--accent)}.quote-detail-view .room-line-add{border-top:1px solid var(--border-color);flex-wrap:wrap;align-items:center;gap:12px;min-height:44px;padding:8px 9px;display:flex}.quote-detail-view .room-line-add .text-button{color:var(--qe-blue);font-size:var(--type-label);font-weight:var(--weight-semibold);align-items:center;gap:5px;padding:3px 0;display:inline-flex}.quote-detail-view .room-add-divider{background:var(--qe-line);width:1px;height:17px}.quote-detail-view .price-list-add{color:var(--qe-muted);font-size:var(--type-label);cursor:pointer;align-items:center;gap:5px;display:inline-flex;position:relative}.quote-detail-view .price-list-add select{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.quote-detail-view .room-line-add>small{color:var(--qe-muted);font-size:var(--type-meta);margin-left:auto}.quote-detail-view .room-line-add kbd{border:1px solid var(--qe-line);color:var(--qe-ink);background:var(--qe-wash);font:inherit;border-radius:4px;padding:2px 5px}.quote-detail-view .room-subtotal{border-top:1px solid var(--qe-line);min-width:0;color:var(--qe-muted);font-size:var(--type-table-dense);justify-content:space-between;align-items:center;gap:12px;padding:8px 9px 2px;display:flex}.quote-detail-view .room-subtotal>span:last-child{color:var(--qe-ink);align-items:center;gap:9px;font-weight:650;display:flex}.quote-detail-view .room-subtotal .price-display{white-space:normal;overflow-wrap:anywhere}.quote-detail-view .estimate-save-bar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px 14px;padding-top:6px;display:flex}.quote-detail-view .estimate-save-bar .scope-save-notice{margin-right:auto}.quote-detail-view .estimate-save-draft{min-height:var(--control-height-compact);font-size:var(--type-label);border-radius:7px}.quote-detail-view .scope-save-notice{font-size:var(--type-label);color:var(--qe-muted);margin:0;line-height:1.4}.quote-detail-view .scope-save-notice-error{color:var(--danger)}.quote-detail-view .estimate-review .estimate-toolbar{align-items:start}.quote-detail-view .scope-edit-button{border:1px solid var(--qe-line);width:36px;height:36px;color:var(--qe-ink);background:var(--qe-paper);cursor:pointer;transition:background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease);border-radius:9px;flex:none;place-items:center;padding:0;display:grid;position:relative}.quote-detail-view .scope-edit-button:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.quote-detail-view .scope-edit-button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-color:var(--accent)}.quote-detail-view .scope-edit-button:after{z-index:5;color:var(--qe-paper);background:var(--qe-ink);content:attr(data-hint);font-size:var(--type-meta);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--motion-fast) var(--motion-ease);border-radius:6px;padding:4px 8px;line-height:1.2;position:absolute;top:calc(100% + 6px);right:0}.quote-detail-view .scope-edit-button:hover:after,.quote-detail-view .scope-edit-button:focus-visible:after{opacity:1}.quote-detail-view .scope-review-room-name{min-width:40px;color:var(--qe-ink);font-size:var(--type-table-dense);font-weight:var(--weight-semibold);overflow-wrap:anywhere;flex:1;margin:0}.quote-detail-view .scope-review-lines{margin:0;padding:0;list-style:none;display:grid}.quote-detail-view .scope-review-line{border-top:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 9px;display:flex}.quote-detail-view .scope-review-line-main{gap:3px;min-width:0;display:grid}.quote-detail-view .scope-review-line-name{color:var(--qe-ink);font-size:var(--type-table);font-weight:var(--weight-medium);overflow-wrap:anywhere}.quote-detail-view .scope-review-line-meta{color:var(--qe-muted);font-size:var(--type-meta);font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular);overflow-wrap:anywhere}.quote-detail-view .scope-review-line>.price-display{color:var(--qe-ink);font-size:var(--type-table);white-space:normal;text-align:right;flex:none}.quote-detail-view .scope-review-totals{border-top:1px solid var(--qe-line);justify-self:end;gap:4px;width:min(100%,320px);margin:4px 0 0;padding:10px 9px 0;display:grid}.quote-detail-view .scope-review-totals>div{color:var(--qe-muted);font-size:var(--type-table-dense);justify-content:space-between;gap:12px;display:flex}.quote-detail-view .scope-review-totals dt,.quote-detail-view .scope-review-totals dd{margin:0}.quote-detail-view .scope-review-totals dd{color:var(--qe-ink);font-family:var(--numeric-font-family);font-variant-numeric:var(--numeric-tabular)}.quote-detail-view .scope-review-grand-total{color:var(--qe-ink);font-weight:var(--weight-semibold);padding-top:4px}@media (width<=1200px){.quote-detail-view .estimate-table{padding:10px}}@container (width<=640px){.quote-detail-view .estimate-toolbar{flex-direction:column;align-items:start}.quote-detail-view .estimate-review .estimate-toolbar{flex-direction:row}.quote-detail-view .estimate-toolbar-actions{flex-wrap:wrap;width:100%}.quote-detail-view .estimate-toolbar-actions>*{flex:1}.quote-detail-view .quote-template-select>select{width:100%;max-width:none}.quote-detail-view .estimate-columns{display:none}.quote-detail-view .room-content{padding-inline:7px}.quote-detail-view .room-header{grid-template-columns:27px minmax(50px,1fr) auto auto;gap:5px;min-height:50px;padding:7px 8px;display:grid}.quote-detail-view .room-header:has(.room-drag-handle){grid-template-columns:24px 27px minmax(50px,1fr) auto auto}.quote-detail-view .room-header:has(.room-drag-handle) .room-count{grid-column:4}.quote-detail-view .room-header:has(.room-drag-handle)>.price-display{grid-column:5}.quote-detail-view .room-name{width:100%;font-size:var(--type-body)}.quote-detail-view .room-count{font-size:var(--type-meta);grid-column:3}.quote-detail-view .room-header>.price-display{font-size:var(--type-body);grid-column:4}.quote-detail-view .room-actions{grid-column:2/-1;justify-self:end;gap:0}.quote-detail-view .estimate-row{border:1px solid var(--border-color);background:var(--qe-paper);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:7px;padding:12px 7px 10px}.quote-detail-view .estimate-item-cell{grid-column:1/-1;padding-right:27px}.quote-detail-view .estimate-row>.scope-chips{grid-row:auto}.quote-detail-view .estimate-field:before{color:var(--qe-muted);content:attr(data-label);font-size:var(--type-label);font-weight:var(--weight-semibold);margin-bottom:4px;display:block}.quote-detail-view .estimate-field>input,.quote-detail-view .estimate-field>select{height:35px;font-size:var(--type-body)}.quote-detail-view .estimate-item-cell>.description{font-size:var(--type-body)}.quote-detail-view .estimate-markup-control>span{top:29px}.quote-detail-view .estimate-total-cell{text-align:left;align-content:end;justify-items:start;padding:0 38px 0 0}.quote-detail-view .estimate-total-cell .price-display{font-size:var(--type-body)}.quote-detail-view .line-drag-handle{width:36px;min-width:36px}.quote-detail-view .room-line-add{gap:8px 10px;padding:10px 4px}.quote-detail-view .room-line-add>small{flex-basis:100%;margin-left:0}.quote-detail-view .room-subtotal{padding-inline:4px}.quote-detail-view .estimate-save-bar>.estimate-save-draft{flex:100%}.quote-detail-view .scope-review-line{padding-inline:4px}.quote-detail-view .scope-chip{min-height:var(--touch-target)}.quote-detail-view .scope-chip select{min-height:var(--touch-target);font-size:var(--type-body)}.quote-detail-view .room-line-add .text-button,.quote-detail-view .price-list-add{min-height:var(--touch-target);font-size:var(--type-label)}}@media (prefers-reduced-motion:reduce){.quote-detail-view .room-collapse-button svg,.quote-detail-view .estimate-row,.quote-detail-view .scope-edit-button,.quote-detail-view .scope-edit-button:after{transition:none}}.quote-detail-view{--qe-ink:var(--text-primary);--qe-muted:var(--text-secondary);--qe-line:var(--border-color);--qe-paper:var(--surface);--qe-wash:var(--surface-muted);--qe-green:var(--success);--qe-blue:var(--accent);min-width:0;color:var(--text-primary,var(--qe-ink));background:var(--app-bg);display:block}.quote-detail-view .quote-main{width:100%;min-width:0}.quote-detail-view .quote-breadcrumb{min-height:30px;color:var(--qe-muted);justify-content:space-between;align-items:center;gap:12px;padding:0 1px 8px;font-size:10px;display:flex}.quote-detail-view .quote-breadcrumb nav,.quote-detail-view .quote-breadcrumb [role=status]{align-items:center;gap:7px;min-width:0;display:flex}.quote-detail-view .quote-breadcrumb nav .text-button{color:var(--qe-muted);padding:0;font-size:10px}.quote-detail-view .quote-breadcrumb nav>span{color:var(--qe-ink);font-weight:650}.quote-detail-view .quote-breadcrumb [role=status]{color:var(--qe-green)}.quote-detail-view .premium-quote-header{border-bottom:1px solid var(--qe-line);grid-template-columns:minmax(260px,1fr) minmax(0,560px);align-items:start;gap:12px 20px;margin-bottom:14px;padding:4px 0 15px;display:grid}.quote-detail-view .quote-heading{min-width:0}.quote-detail-view .quote-heading>div{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.quote-detail-view .quote-heading h1{min-width:0;color:var(--qe-ink);font-size:var(--type-page-title);font-weight:var(--weight-bold);letter-spacing:-.035em;line-height:var(--line-heading);overflow-wrap:break-word;margin:0}.quote-detail-view .quote-heading p{max-width:700px;color:var(--qe-muted);overflow-wrap:anywhere;margin:7px 0 0;font-size:12px;line-height:1.45}.quote-detail-view .premium-quote-header .quote-status{border:1px solid var(--border-color);min-height:22px;color:var(--text-secondary);background:var(--surface-muted);font-size:var(--type-meta);font-weight:var(--weight-semibold);align-items:center;padding:3px 8px}.quote-detail-view .quote-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:7px;min-width:0;max-width:100%;display:flex}.quote-detail-view .quote-document-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;min-width:0;max-width:100%;display:flex}.quote-detail-view .quote-approval-actions{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;max-width:100%;display:flex}.quote-detail-view .quote-approval-actions small{overflow-wrap:anywhere;min-width:0;max-width:34rem;color:var(--qe-muted);flex:100%;font-size:12px}.quote-detail-view .quote-header-actions .small-button,.quote-detail-view .quote-header-actions .primary-button,.quote-detail-view .quote-header-actions .icon-button{border-radius:7px;min-height:35px;font-size:10px}.quote-detail-view .quote-header-actions .small-button{border:1px solid var(--qe-line);background:var(--qe-paper);padding:0 12px}.quote-detail-view .quote-delete-button{border-color:color-mix(in srgb, var(--danger) 45%, var(--border-color));color:var(--danger)}.quote-detail-view .quote-delete-button:hover{background:var(--danger-soft);border-color:var(--danger)}.quote-detail-view .quote-lifecycle{border:1px solid var(--qe-line);background:var(--qe-paper);border-radius:11px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:14px 0 18px;padding:6px;list-style:none;display:grid}.quote-detail-view .quote-lifecycle li{min-width:0;color:var(--qe-muted);background:var(--surface-muted);border-radius:7px}.quote-detail-view .quote-lifecycle li.current{color:var(--qe-blue);background:var(--accent-soft)}.quote-detail-view .quote-lifecycle li.complete{color:var(--qe-green)}.quote-detail-view .quote-lifecycle li>div,.quote-detail-view .quote-lifecycle li>button{text-align:left;width:100%;min-height:48px;color:inherit;font:inherit;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:8px;display:flex}.quote-detail-view .quote-lifecycle button{cursor:pointer}.quote-detail-view .quote-lifecycle button:hover{background:var(--accent-soft)}.quote-detail-view .quote-lifecycle button:hover strong{color:var(--qe-blue)}.quote-detail-view .quote-lifecycle i{border:1px solid var(--border-strong);background:var(--surface);border-radius:50%;flex:0 0 20px;place-items:center;width:20px;height:20px;font-size:10px;font-style:normal;font-weight:650;line-height:1;display:grid}.quote-detail-view .quote-lifecycle li.current i{color:var(--text-on-accent);border-color:var(--accent-active);background:var(--accent-active)}.quote-detail-view .quote-lifecycle li.complete i{border-color:var(--success-border);background:var(--success-soft)}.quote-detail-view .quote-lifecycle li span{gap:2px;min-width:0;display:grid}.quote-detail-view .quote-lifecycle strong{color:var(--qe-ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.quote-detail-view .quote-lifecycle small{color:var(--qe-muted);overflow-wrap:anywhere;font-size:11px;line-height:1.4}.quote-detail-view .quote-lifecycle li:not(.current):not(.complete) strong{color:var(--qe-muted)}.quote-detail-view .editor-details-summary{align-items:start;gap:var(--space-4);grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) minmax(260px,340px);min-width:0;display:grid}.quote-detail-view .estimate-main{align-content:start;gap:var(--space-3);grid-area:1/1;min-width:0;display:grid}.quote-detail-view .editor-details-summary>.quote-summary-sidebar,.quote-detail-view .editor-details-summary>.quote-summary-stack{grid-area:1/2}.quote-detail-view .quote-summary-stack{align-content:start;gap:var(--space-3);min-width:0;display:grid}.quote-detail-view .editor-details-summary>.estimate-table{grid-area:2/1/auto/-1;min-width:0}.quote-detail-view .quote-cancellation{font-size:12px}.quote-detail-view .quote-cancellation .text-button{color:var(--danger);padding-left:0}.quote-detail-view :focus-visible{outline:2px solid var(--qe-blue);outline-offset:2px}.quote-detail-view select{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.quote-detail-view[data-theme=dark] select,.quote-detail-view:is([data-theme=dark] *) select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.quote-detail-view select option{color:var(--text-primary);background:var(--input-bg-color)}.quote-detail-view .room-add-actions{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;display:flex}.quote-detail-view .price-list-add{cursor:default;max-width:100%}.quote-detail-view .room-add-actions .price-list-add select{appearance:auto;border:1px solid var(--qe-line);border-radius:var(--radius-sm);opacity:1;width:auto;max-width:min(320px,42vw);min-height:34px;color:var(--qe-ink);background:var(--input-bg-color);font-size:var(--type-label);cursor:pointer;padding:5px 9px;position:static;inset:auto}.quote-detail-view .room-add-actions .price-list-add select option{color:var(--qe-ink);background:var(--input-bg-color)}.quote-detail-view .room-scope-empty{border-left:2px solid var(--accent-border);color:var(--qe-muted);background:var(--qe-wash);font-size:var(--type-label);margin:8px 9px 4px;padding:10px 12px;line-height:1.45}.quote-detail-view .scope-empty{border:1px dashed var(--qe-line);border-radius:var(--radius-md);color:var(--qe-muted);background:var(--qe-wash);font-size:var(--type-label);gap:4px;padding:17px 18px;line-height:1.5;display:grid}.quote-detail-view .scope-empty strong{color:var(--qe-ink);font-size:var(--type-body)}@media (width<=1200px){.quote-detail-view .editor-details-summary{gap:var(--space-3);grid-template-columns:minmax(0,1fr) minmax(240px,310px)}}@media (width<=1100px){.quote-detail-view .premium-quote-header{grid-template-columns:minmax(0,1fr);gap:9px}.quote-detail-view .quote-header-actions,.quote-detail-view .quote-document-actions{justify-content:flex-start}}@media (width<=1000px){.quote-detail-view .editor-details-summary{grid-template-rows:auto;grid-template-columns:minmax(0,1fr)}.quote-detail-view .editor-details-summary>.estimate-main,.quote-detail-view .editor-details-summary>.quote-summary-sidebar,.quote-detail-view .editor-details-summary>.quote-summary-stack,.quote-detail-view .editor-details-summary>.estimate-table{grid-area:auto/1}}@container (width<=640px){.quote-detail-view .editor-details-summary{grid-template-rows:auto;grid-template-columns:minmax(0,1fr)}.quote-detail-view .quote-breadcrumb{flex-wrap:wrap}.quote-detail-view .premium-quote-header{grid-template-columns:minmax(0,1fr);gap:8px}.quote-detail-view .quote-header-actions,.quote-detail-view .quote-document-actions{justify-content:flex-start}.quote-detail-view .quote-lifecycle{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px}.quote-detail-view .quote-lifecycle li>div,.quote-detail-view .quote-lifecycle li>button{flex-direction:column;align-items:flex-start;gap:5px;min-height:54px;padding:6px}.quote-detail-view .quote-lifecycle li span{gap:3px}.quote-detail-view .quote-lifecycle strong{font-size:11px}.quote-detail-view .quote-lifecycle small{font-size:9px}.quote-detail-view .quote-lifecycle i{flex-basis:18px;width:18px;height:18px;font-size:9px}.quote-detail-view .room-add-actions{flex-wrap:wrap;gap:8px;width:100%}.quote-detail-view .room-add-actions .price-list-add{flex-wrap:wrap}.quote-detail-view .room-add-actions .price-list-add select{flex-basis:100%;width:100%;max-width:none}}@media (width<=640px){.quote-detail-view .quote-heading>div{align-items:flex-start}.quote-detail-view .quote-header-actions,.quote-detail-view .quote-document-actions,.quote-detail-view .quote-approval-actions{justify-content:flex-start}.quote-detail-view .quote-header-actions .small-button,.quote-detail-view .quote-header-actions .primary-button{max-width:100%}}@media print{.quote-detail-view .quote-lifecycle{display:none}}.quote-detail-view .quote-payment-options{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface);min-width:0;color:var(--text-primary);padding:15px}.quote-detail-view .quote-payment-options-heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.quote-detail-view .quote-payment-kicker{color:var(--text-secondary);letter-spacing:.09em;text-transform:uppercase;margin:0 0 4px;font-size:10px;font-weight:750}.quote-detail-view .quote-payment-options-heading h3{margin:0;font-size:15px;line-height:1.3}.quote-detail-view .quote-payment-state{color:var(--success);background:var(--success-soft);border-radius:999px;flex:none;padding:5px 8px;font-size:10px;font-weight:700}.quote-detail-view .quote-payment-state.is-local{color:var(--warning-text);background:var(--warning-bg)}.quote-detail-view .quote-payment-summary-total{border-bottom:1px solid var(--border-color);color:var(--text-secondary);justify-content:space-between;gap:10px;margin:13px 0 5px;padding-bottom:10px;font-size:12px;display:flex}.quote-detail-view .quote-payment-summary-total strong,.quote-detail-view .quote-payment-rows strong{color:var(--text-primary);font-variant-numeric:tabular-nums;white-space:nowrap}.quote-detail-view .quote-payment-rows{gap:0;margin:0;padding:0;list-style:none;display:grid}.quote-detail-view .quote-payment-rows li{border-bottom:1px solid var(--border-color);grid-template-columns:25px minmax(0,1fr) auto;align-items:start;gap:8px;padding:9px 0;font-size:12px;display:grid}.quote-detail-view .quote-payment-row-index{color:var(--accent);font-family:var(--font-mono,monospace);font-size:10px;font-weight:700}.quote-detail-view .quote-payment-row-name{overflow-wrap:anywhere;min-width:0;font-weight:650}.quote-detail-view .quote-payment-row-name small{color:var(--text-secondary);margin-top:3px;font-size:10px;font-weight:450;line-height:1.4;display:block}.quote-detail-view .quote-payment-empty{color:var(--text-secondary);margin:12px 0;font-size:12px;line-height:1.5}.quote-detail-view .quote-payment-configure{justify-content:center;width:100%;margin-top:12px}.quote-detail-view .quote-payment-invalid{border-left:3px solid var(--danger);color:var(--danger);background:var(--danger-soft);gap:4px;margin-top:10px;padding:9px 10px;font-size:11px;line-height:1.4;display:grid}.quote-detail-view .quote-payment-invalid small{color:var(--text-secondary);font-size:10px}.quote-detail-view .modal-card.quote-payment-dialog{width:min(780px,100vw - 28px);max-height:calc(100dvh - 32px);overflow-y:auto}.quote-detail-view .quote-payment-dialog .quote-payment-dialog-context{border-left:3px solid var(--accent);background:var(--accent-soft);grid-template-columns:1fr auto;align-items:center;gap:6px 12px;margin-bottom:14px;padding:11px 13px;display:grid}.quote-detail-view .quote-payment-dialog-context>span,.quote-detail-view .quote-payment-dialog-context>small{color:var(--text-secondary);align-items:center;gap:7px;font-size:12px;display:flex}.quote-detail-view .quote-payment-dialog-context>strong{color:var(--text-primary);font-variant-numeric:tabular-nums;grid-area:1/2;font-size:15px}.quote-detail-view .quote-payment-dialog-context>small{grid-column:1/-1;font-size:11px}.quote-detail-view .quote-payment-dialog .payment-plan-editor{gap:12px}.quote-detail-view .quote-payment-dialog .invoice-dialog-intro{margin-bottom:2px}.quote-detail-view .quote-payment-dialog .invoice-button{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--surface);min-height:36px;color:var(--text-primary);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:7px 11px;font-size:12px;font-weight:650;display:inline-flex}.quote-detail-view .quote-payment-dialog .invoice-button:hover:not(:disabled){border-color:var(--border-strong);background:var(--hover-bg)}.quote-detail-view .quote-payment-dialog .invoice-button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.quote-detail-view .quote-payment-dialog .invoice-button:disabled{opacity:.55;cursor:not-allowed}.quote-detail-view .quote-payment-dialog .invoice-primary{border-color:var(--brand-charcoal);background:var(--brand-charcoal);color:var(--text-on-primary)}.quote-detail-view .quote-payment-dialog .invoice-field{min-width:0;color:var(--text-secondary);flex-direction:column;gap:6px;margin:6px 0;font-size:11px;font-weight:650;display:flex}.quote-detail-view .quote-payment-dialog .invoice-field input,.quote-detail-view .quote-payment-dialog .invoice-field select{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--input-bg-color);width:100%;min-height:36px;color:var(--text-primary);font:inherit;padding:0 9px;font-size:12px}.quote-detail-view .quote-payment-dialog .invoice-field :focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.quote-detail-view .quote-payment-dialog .plan-starter{border-left:3px solid var(--accent);background:var(--accent-soft);flex-wrap:wrap;align-items:end;gap:9px;padding:10px;display:flex}.quote-detail-view .quote-payment-dialog .plan-row{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface);min-width:0;margin:0;padding:11px}.quote-detail-view .quote-payment-dialog .plan-row legend{color:var(--text-secondary);padding:0 5px;font-size:11px;font-weight:700}.quote-detail-view .quote-payment-dialog .plan-row-amount,.quote-detail-view .quote-payment-dialog .plan-row-trigger{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.quote-detail-view .quote-payment-dialog .plan-allocation{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.quote-detail-view .quote-payment-dialog .plan-allocation>div{border-right:1px solid var(--border-color);gap:4px;padding:10px;display:grid}.quote-detail-view .quote-payment-dialog .plan-allocation>div:last-child{border:0}.quote-detail-view .quote-payment-dialog .plan-allocation span{color:var(--text-secondary);text-transform:uppercase;font-size:10px}.quote-detail-view .quote-payment-dialog .plan-allocation strong{font-variant-numeric:tabular-nums;font-size:12px}.quote-detail-view .quote-payment-dialog .plan-validation,.quote-detail-view .quote-payment-dialog .invoice-error{border-radius:var(--radius-sm);color:var(--danger);background:var(--danger-soft);margin:0;padding:10px 12px;font-size:12px}.quote-detail-view .quote-payment-dialog .invoice-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:8px;display:flex}@media (width<=700px){.quote-detail-view .quote-payment-options-heading{flex-direction:column}.quote-detail-view .quote-payment-state{white-space:normal}.quote-detail-view .quote-payment-dialog .plan-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.quote-document-preview{width:min(980px,100%);max-height:calc(100dvh - 32px)}.quote-document-preview .modal-content{flex-direction:column;gap:12px;min-height:0;display:flex}.quote-preview-controls{justify-content:space-between;align-items:center;gap:16px;display:flex}.quote-preview-controls p{color:var(--text-secondary);margin:0;font-size:.85rem}.quote-preview-controls button{flex-shrink:0}.quote-preview-frame{border:1px solid var(--border-color);background:#fff;width:100%;height:65dvh;min-height:240px;display:block}@media (width<=600px){.quote-document-preview{max-height:calc(100dvh - 16px)}.quote-document-preview .modal-content{padding:10px}.quote-preview-controls{align-items:flex-start;gap:8px}.quote-preview-frame{height:68dvh}}@media print{.quote-document-preview .modal-header,.quote-preview-controls{display:none!important}}.customer-select-trigger{border:1px solid var(--border-color);background:var(--surface);width:100%;min-width:0;min-height:38px;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.customer-select-trigger>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.customer-select-trigger>svg{color:var(--text-secondary);flex:none}.customer-select-trigger:hover:not(:disabled){border-color:var(--border-strong)}.customer-select-popup{z-index:1000;border:1px solid var(--border-color);background:var(--surface);color:var(--text-primary);box-shadow:var(--shadow-lg);font-size:var(--type-body);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.customer-select-search{border-bottom:1px solid var(--border-color);flex:none;align-items:center;gap:8px;padding:10px;display:flex}.customer-select-search>svg{color:var(--text-secondary);flex:none}.customer-select-search>input{border:1px solid var(--border-color);width:100%;min-width:0;min-height:34px;font:inherit;background:var(--surface);color:var(--text-primary);border-radius:5px;padding:6px 8px}.customer-select-options{min-height:0;max-height:250px;padding:4px;overflow-y:auto}.customer-select-option{cursor:pointer;border-radius:5px;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;display:flex}.customer-select-option[aria-selected=true]{background:var(--accent-soft)}.customer-select-option>span{overflow-wrap:anywhere;gap:3px;min-width:0;display:grid}.customer-select-option strong{font-weight:var(--weight-medium)}.customer-select-option small{color:var(--text-secondary);font-size:var(--type-meta)}.customer-select-option>svg{color:var(--accent);flex:none}.customer-select-empty{color:var(--text-secondary);margin:0;padding:16px}.roadmap-attention-context{border:1px solid var(--accent);background:var(--surface);color:var(--text-primary);border-radius:8px;margin-bottom:12px;padding:12px}.roadmap-attention-context p{color:var(--text-secondary);margin:5px 0 0;font-size:.82rem}.roadmap-item.is-attention-target{outline:2px solid var(--accent);outline-offset:2px;scroll-margin:100px}.project-roadmap-view,.roadmap-editor,.roadmap-list,.roadmap-item,.roadmap-item-fields,.roadmap-compact-summary,.roadmap-assignment-row{min-width:0}.roadmap-list{gap:0}.roadmap-item{grid-template-columns:minmax(60px,60px) minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 16px;scroll-margin-block:18px;transition:background-color .35s,box-shadow .35s;container:roadmap-row/inline-size}.roadmap-item:hover{background:color-mix(in srgb, var(--accent-soft) 34%, var(--surface))}.roadmap-order{grid-area:1/1;grid-template-columns:repeat(2,28px);justify-content:start;align-items:center;gap:3px}.roadmap-order>span{border:1px solid color-mix(in srgb, var(--accent) 18%, transparent);font-variant-numeric:tabular-nums;grid-column:1/-1;width:30px;height:30px}.roadmap-order button{width:28px;height:30px;min-height:30px;color:var(--text-secondary);cursor:pointer;touch-action:manipulation;border:1px solid #0000;border-radius:6px;place-items:center;font-size:13px;line-height:1;display:grid}.roadmap-order button:hover:not(:disabled){border-color:var(--border-color);color:var(--accent);background:var(--surface)}.roadmap-order button:focus-visible,.roadmap-row-actions button:focus-visible,.roadmap-item-fields button:focus-visible,.roadmap-assignment-row button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.roadmap-compact-summary{flex-wrap:wrap;grid-area:1/2;align-items:center;gap:7px 10px;min-width:0;padding:1px 0;display:flex}.roadmap-summary-main{flex-wrap:wrap;flex:240px;align-items:center;gap:7px 9px;min-width:0;display:flex}.roadmap-summary-main>strong{overflow-wrap:anywhere;max-width:100%;color:var(--text-primary);flex:0 auto;font-size:13px;font-weight:700;line-height:1.35}.roadmap-compact-summary>.roadmap-assignment-summary,.roadmap-compact-summary>.roadmap-notes-indicator,.roadmap-summary-main>.roadmap-status-pill{overflow-wrap:anywhere;border:1px solid var(--border-color);max-width:100%;min-height:23px;color:var(--text-secondary);background:var(--surface-muted);border-radius:999px;flex:none;align-items:center;padding:3px 8px;font-size:10px;line-height:1.25;display:inline-flex}.roadmap-compact-summary>.roadmap-assignment-summary{text-align:left;flex:220px;justify-content:flex-start}.roadmap-compact-summary>.roadmap-notes-indicator{color:var(--accent)}.roadmap-summary-main>.roadmap-status-pill{text-transform:none;font-weight:700}.roadmap-summary-main>.roadmap-progress-track{background:color-mix(in srgb, var(--text-secondary) 20%, var(--surface));border-radius:999px;flex:0 0 54px;width:54px;height:6px;overflow:hidden}.roadmap-summary-main>.roadmap-progress-value{color:var(--text-secondary);font-variant-numeric:tabular-nums;flex:none;font-size:10px}.roadmap-compact-summary [data-status=blocked],.roadmap-compact-summary [data-status=delayed],.roadmap-compact-summary .is-blocked{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 28%, var(--border-color));background:var(--danger-soft)}.roadmap-compact-summary [data-status=completed],.roadmap-compact-summary .is-completed{color:var(--success);border-color:color-mix(in srgb, var(--success) 28%, var(--border-color));background:var(--success-soft)}.roadmap-row-actions{grid-area:1/3;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.roadmap-row-actions button,.roadmap-item-fields button,.roadmap-assignment-row button{touch-action:manipulation;min-width:40px;min-height:40px}.roadmap-row-actions .roadmap-remove{width:40px;height:40px;color:var(--text-secondary)}.roadmap-row-actions .roadmap-remove:hover{color:var(--danger);background:var(--danger-soft)}.roadmap-item-fields{grid-area:2/1/auto/-1;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:10px}.roadmap-item-fields>.roadmap-name,.roadmap-item-fields>.roadmap-assignments,.roadmap-item-fields>.roadmap-notes,.roadmap-item-fields>.roadmap-review-trigger{grid-column:1/-1}.roadmap-item-fields>.field:not(.roadmap-name):not(.roadmap-notes){grid-column:span 2}.roadmap-item-fields .field{min-width:0;font-size:9px}.roadmap-item-fields input,.roadmap-item-fields select,.roadmap-item-fields textarea{width:100%;min-width:0;max-width:100%}.roadmap-item-fields .roadmap-assignments{align-content:start;gap:7px;min-width:0;display:grid}.roadmap-assignment-row{background:color-mix(in srgb, var(--surface-muted) 55%, var(--surface));border-radius:8px;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr) minmax(0,.9fr) 40px;align-items:start;gap:8px;padding:9px}.roadmap-assignment-row .field{grid-template-rows:minmax(2.25em,auto) auto auto;align-content:start;gap:5px;min-width:0;display:grid}.roadmap-assignment-row .field>span{min-height:2.25em;line-height:1.25;display:block}.roadmap-assignment-row .roadmap-assignment-remove{border:1px solid var(--border-color);width:40px;height:40px;color:var(--text-secondary);background:var(--surface);border-radius:7px;align-self:end;place-items:center;display:grid}.roadmap-assignment-row .roadmap-assignment-remove:hover:not(:disabled){color:var(--danger);border-color:color-mix(in srgb, var(--danger) 35%, var(--border-color));background:var(--danger-soft)}.roadmap-assignment-row .roadmap-assignment-remove:disabled{opacity:.45;cursor:not-allowed}.roadmap-work-modal{width:min(720px,100%)}.roadmap-work-modal .modal-content{padding:clamp(16px,3vw,24px)}.roadmap-work-form{gap:17px;min-width:0;display:grid;container:roadmap-dialog/inline-size}.roadmap-work-fields{min-width:0;border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;min-inline-size:0;margin:0;padding:0;display:grid}.roadmap-work-form .field{align-content:start;gap:6px;min-width:0;display:grid}.roadmap-work-form input,.roadmap-work-form select,.roadmap-work-form textarea{width:100%;min-width:0;max-width:100%}.roadmap-work-form textarea{resize:vertical;min-height:88px;line-height:1.5}.roadmap-work-form .roadmap-assignment-row{background:var(--surface-muted)}.roadmap-work-actions{z-index:1;border-top:1px solid var(--border-color);background:color-mix(in srgb, var(--surface) 94%, transparent);flex-wrap:wrap;justify-content:flex-end;gap:9px;margin:2px calc(-1*clamp(16px,3vw,24px)) calc(-1*clamp(16px,3vw,24px));padding:13px clamp(16px,3vw,24px);display:flex;position:sticky;bottom:calc(-1*clamp(16px,3vw,24px))}.roadmap-work-actions>button{min-height:42px}@media (prefers-reduced-motion:reduce){.roadmap-item,.roadmap-row-actions button,.roadmap-order button{scroll-behavior:auto;transition-duration:.01ms!important}}.roadmap-item:focus{outline:2px solid color-mix(in srgb, var(--accent) 65%, transparent);outline-offset:-2px}.roadmap-item.is-added{background:color-mix(in srgb, var(--accent-soft) 72%, var(--surface));box-shadow:inset 3px 0 var(--accent)}.roadmap-progress-track>span{border-radius:inherit;background:var(--accent);height:100%;display:block}.roadmap-assignment-warning,.roadmap-unassigned-hint{color:var(--warning-text);font-size:.76rem;line-height:1.4}.roadmap-contractor-field{align-content:start;gap:6px;min-width:0;display:grid}.roadmap-create-contractor{justify-self:start;padding:3px 6px;font-size:.72rem;min-height:32px!important}.roadmap-add-assignment{padding:4px 7px;font-size:.76rem;min-height:34px!important}.roadmap-assignment-row .roadmap-contractor-field{gap:3px}.roadmap-assignment-row .roadmap-contractor-field>.field{grid-template-rows:minmax(2.25em,auto) auto}.roadmap-work-section-heading h3{margin:0;font-size:.96rem}.roadmap-work-section-heading p,.roadmap-unassigned-hint{margin:4px 0 0}.roadmap-work-lifecycle{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.roadmap-work-error{border:1px solid color-mix(in srgb, var(--danger) 35%, var(--border-color));color:var(--danger);background:var(--danger-soft);border-radius:8px;margin:0;padding:10px 12px;line-height:1.4}.project-roadmap-view .roadmap-editor{container:roadmap-editor/inline-size}.project-roadmap-view .roadmap-list{container:roadmap-list/inline-size}.roadmap-work-fields>.roadmap-work-name,.roadmap-work-fields>.roadmap-work-notes,.roadmap-work-fields>.roadmap-work-assignments,.roadmap-work-fields .roadmap-work-lifecycle{grid-column:1/-1}.roadmap-work-assignment .roadmap-contractor-field .field{grid-template-rows:minmax(2.25em,auto) auto}@container roadmap-editor (width<=760px){.project-roadmap-view .roadmap-editor .roadmap-item-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.project-roadmap-view .roadmap-editor .roadmap-item-fields>.field:not(.roadmap-name):not(.roadmap-notes){grid-column:span 1}}@container roadmap-list (width<=650px){.project-roadmap-view .roadmap-list .roadmap-item{grid-template-columns:52px minmax(0,1fr);gap:8px;padding-inline:10px}.project-roadmap-view .roadmap-list .roadmap-item .roadmap-order{grid-area:1/1}.project-roadmap-view .roadmap-list .roadmap-item .roadmap-compact-summary{grid-area:1/2;align-self:center;gap:6px 8px}.project-roadmap-view .roadmap-list .roadmap-item .roadmap-summary-main{flex:100%}.project-roadmap-view .roadmap-list .roadmap-item .roadmap-compact-summary>.roadmap-assignment-summary{flex-basis:100%}.project-roadmap-view .roadmap-list .roadmap-item .roadmap-row-actions{grid-area:2/2;justify-content:flex-start;justify-self:start;max-width:100%}.project-roadmap-view .roadmap-list .roadmap-item .roadmap-item-fields{grid-area:3/1/auto/-1}}@container roadmap-row (width<=650px){.project-roadmap-view .roadmap-item .roadmap-assignment-row{grid-template-columns:minmax(0,1fr) minmax(0,.8fr) minmax(0,.8fr) 40px}}@container roadmap-row (width<=470px){.project-roadmap-view .roadmap-item .roadmap-item-fields,.project-roadmap-view .roadmap-item .roadmap-assignment-row{grid-template-columns:minmax(0,1fr)}.project-roadmap-view .roadmap-item .roadmap-item-fields>.field:not(.roadmap-name):not(.roadmap-notes),.project-roadmap-view .roadmap-item .roadmap-item-fields>.roadmap-name,.project-roadmap-view .roadmap-item .roadmap-item-fields>.roadmap-assignments,.project-roadmap-view .roadmap-item .roadmap-item-fields>.roadmap-notes,.project-roadmap-view .roadmap-item .roadmap-item-fields>.roadmap-review-trigger{grid-column:1}.project-roadmap-view .roadmap-item .roadmap-assignment-row .roadmap-assignment-remove{grid-column:1;justify-self:end;margin-top:-2px}}@container roadmap-dialog (width<=620px){.roadmap-work-fields,.roadmap-work-lifecycle{grid-template-columns:minmax(0,1fr)}.roadmap-work-fields>.roadmap-work-name,.roadmap-work-fields>.roadmap-work-notes,.roadmap-work-fields>.roadmap-work-assignments,.roadmap-work-fields .roadmap-work-lifecycle{grid-column:1}.roadmap-work-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.roadmap-work-actions>button{width:100%}}@container roadmap-dialog (width<=520px){.roadmap-work-assignment{grid-template-columns:minmax(0,1fr) minmax(0,.9fr) minmax(0,.9fr)}.roadmap-work-assignment .roadmap-assignment-remove{grid-area:2/3;justify-self:end}}@container roadmap-dialog (width<=400px){.roadmap-work-assignment{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.roadmap-work-assignment .roadmap-contractor-field{grid-column:1/-1}.roadmap-work-assignment>.field{grid-column:span 1}.roadmap-work-assignment .roadmap-assignment-remove{grid-area:3/2}.roadmap-work-actions{grid-template-columns:1fr}}.roadmap-completion-content{min-width:0;color:var(--text-primary);gap:18px;display:grid}.modal-content .roadmap-completion-description{max-width:62ch;color:var(--text-primary);letter-spacing:.005em;margin:0;font-size:1rem;line-height:1.65}.modal-content .roadmap-completion-message{border:1px solid color-mix(in srgb, var(--danger) 34%, var(--border-color));color:var(--danger);background:var(--danger-soft);overflow-wrap:anywhere;border-radius:8px;margin:0;padding:10px 12px;font-size:.9rem;line-height:1.5}.roadmap-completion-actions{border-top:1px solid var(--border-color);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin:3px -2px -2px;padding:16px 2px 2px;display:flex}.roadmap-completion-actions>button{touch-action:manipulation;min-height:44px;padding-inline:16px}.roadmap-completion-actions .roadmap-completion-cancel{border:1px solid var(--border-color);color:var(--text-primary);background:var(--surface-muted);border-radius:7px}.roadmap-completion-actions .roadmap-completion-cancel:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 32%, var(--border-color));background:color-mix(in srgb, var(--accent-soft) 42%, var(--surface))}.roadmap-completion-actions>button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (width<=520px){.roadmap-completion-content{gap:16px}.modal-content .roadmap-completion-description{font-size:.97rem;line-height:1.62}.roadmap-completion-actions{grid-template-columns:1fr;gap:9px;display:grid}.roadmap-completion-actions>button{width:100%}}.project-roadmap-view .roadmap-item .roadmap-order button{border:1px solid color-mix(in srgb, var(--accent) 34%, var(--border-color));width:28px;min-width:28px;height:30px;min-height:30px;color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 54%, var(--surface));border-radius:7px;font-size:15px;font-weight:700}.project-roadmap-view .roadmap-item .roadmap-order button:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.project-roadmap-view .roadmap-item .roadmap-order button:disabled{border-color:color-mix(in srgb, var(--text-secondary) 34%, var(--border-color));color:color-mix(in srgb, var(--text-secondary) 78%, var(--surface));background:var(--surface-muted);opacity:1;cursor:not-allowed}.project-roadmap-view .roadmap-item .roadmap-row-actions .roadmap-remove{border:1px solid var(--border-color);min-width:40px;min-height:40px;color:var(--text-secondary);background:var(--surface-muted);touch-action:manipulation}.project-roadmap-view .roadmap-item .roadmap-row-actions .roadmap-remove:hover:not(:disabled){border-color:color-mix(in srgb, var(--danger) 42%, var(--border-color))}.project-roadmap-view .roadmap-item .roadmap-row-actions .roadmap-remove:disabled{border-color:var(--border-color);color:var(--text-secondary);background:var(--surface-muted);opacity:.82;cursor:not-allowed}.project-roadmap-view .roadmap-item .roadmap-item-fields .field{font-size:10px;line-height:1.35}.project-roadmap-view .roadmap-item .roadmap-assignment-row{border:1px solid color-mix(in srgb, var(--border-color) 78%, var(--text-secondary) 22%);background:color-mix(in srgb, var(--surface-muted) 72%, var(--surface))}.project-roadmap-view .roadmap-item .roadmap-assignment-row .field>span{overflow-wrap:anywhere;min-height:0;font-size:10px;line-height:1.35}.project-roadmap-view .roadmap-item .roadmap-assignment-row input,.project-roadmap-view .roadmap-item .roadmap-assignment-row select{height:auto;min-height:40px;font-size:12px}.project-roadmap-view .roadmap-item .roadmap-assignment-row .roadmap-assignment-remove{border:1px solid color-mix(in srgb, var(--danger) 36%, var(--border-color));min-width:40px;height:40px;min-height:40px;color:var(--danger);background:color-mix(in srgb, var(--danger-soft) 60%, var(--surface));touch-action:manipulation;font-size:18px;font-weight:700}.project-roadmap-view .roadmap-item .roadmap-assignment-row .roadmap-assignment-remove:hover:not(:disabled){border-color:var(--danger);color:var(--danger);background:var(--danger-soft)}.project-roadmap-view .roadmap-item .roadmap-assignment-row .roadmap-assignment-remove:disabled{border-color:color-mix(in srgb, var(--text-secondary) 36%, var(--border-color));color:var(--text-secondary);background:var(--surface-muted);opacity:.9;cursor:not-allowed}.project-roadmap-view .roadmap-item .roadmap-item-fields button:focus-visible,.project-roadmap-view .roadmap-item .roadmap-order button:focus-visible,.project-roadmap-view .roadmap-item .roadmap-row-actions button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 2px var(--surface)}.project-roadmap-view .roadmap-item .roadmap-add-assignment,.project-roadmap-view .roadmap-item .roadmap-create-contractor{touch-action:manipulation;padding:6px 9px;min-height:40px!important}@container roadmap-list (width<=650px){.project-roadmap-view .roadmap-list .roadmap-item{grid-template-columns:84px minmax(0,1fr);gap:8px;padding-inline:8px}.project-roadmap-view .roadmap-list .roadmap-item .roadmap-order{grid-template-columns:repeat(2,40px);gap:3px;width:83px}.project-roadmap-view .roadmap-list .roadmap-item .roadmap-order button{width:40px;min-width:40px;height:40px;min-height:40px}.project-roadmap-view .roadmap-list .roadmap-item .roadmap-order>span{border-radius:7px;grid-column:1/-1;width:40px;height:30px}.project-roadmap-view .roadmap-list .roadmap-item .roadmap-compact-summary,.project-roadmap-view .roadmap-list .roadmap-item .roadmap-row-actions{grid-column:2}.project-roadmap-view .roadmap-list .roadmap-item .roadmap-item-fields{grid-area:3/1/auto/-1;gap:8px}}@container roadmap-row (width<=560px){.project-roadmap-view .roadmap-item .roadmap-item-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.project-roadmap-view .roadmap-item .roadmap-item-fields>.roadmap-name,.project-roadmap-view .roadmap-item .roadmap-item-fields>.roadmap-assignments,.project-roadmap-view .roadmap-item .roadmap-item-fields>.roadmap-notes,.project-roadmap-view .roadmap-item .roadmap-item-fields>.roadmap-review-trigger{grid-column:1/-1}.project-roadmap-view .roadmap-item .roadmap-item-fields>.field:not(.roadmap-name):not(.roadmap-notes){grid-column:span 1}.project-roadmap-view .roadmap-item .roadmap-assignment-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:8px}.project-roadmap-view .roadmap-item .roadmap-assignment-row .roadmap-contractor-field{grid-column:1/-1}.project-roadmap-view .roadmap-item .roadmap-assignment-row .roadmap-assignment-remove{grid-column:2;justify-self:end;margin-top:0}}@container roadmap-row (width<=380px){.project-roadmap-view .roadmap-item .roadmap-item-fields,.project-roadmap-view .roadmap-item .roadmap-assignment-row{grid-template-columns:minmax(0,1fr)}.project-roadmap-view .roadmap-item .roadmap-item-fields>.field:not(.roadmap-name):not(.roadmap-notes),.project-roadmap-view .roadmap-item .roadmap-item-fields>.roadmap-name,.project-roadmap-view .roadmap-item .roadmap-item-fields>.roadmap-assignments,.project-roadmap-view .roadmap-item .roadmap-item-fields>.roadmap-notes,.project-roadmap-view .roadmap-item .roadmap-item-fields>.roadmap-review-trigger,.project-roadmap-view .roadmap-item .roadmap-assignment-row .roadmap-contractor-field{grid-column:1}.project-roadmap-view .roadmap-item .roadmap-assignment-row .roadmap-assignment-remove{grid-column:1;justify-self:end}}.invoicing-history{min-width:0;display:inline-flex}.invoicing-history-trigger{white-space:nowrap;min-height:40px}.invoicing-history-trigger svg{color:var(--accent)}.modal-card.invoicing-history-dialog{width:min(620px,100vw - 32px);max-height:min(720px,100dvh - 32px)}.invoicing-history-dialog .modal-header{z-index:1;background:var(--surface);flex:none;padding:16px 18px;position:relative}.invoicing-history-dialog .modal-header h2{font-size:clamp(1rem,3vw,1.125rem)}.invoicing-history-dialog .modal-close{width:40px;height:40px}.invoicing-history-dialog .modal-content{overscroll-behavior:contain;min-height:0;padding:0;overflow-y:auto}.invoicing-history-body{gap:14px;padding:16px 18px 20px;display:grid}.invoicing-history-context{border-bottom:1px solid var(--border-color);gap:2px;margin:0;padding:0 0 13px;display:grid}.invoicing-history-kicker{color:var(--text-tertiary);letter-spacing:.075em;text-transform:uppercase;font-size:.68rem;font-weight:700}.invoicing-history-context strong{overflow-wrap:anywhere;font-size:.9rem;font-weight:600}.invoicing-history-list{gap:9px;margin:0;padding:0;list-style:none;display:grid}.invoicing-history-row{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-strong);gap:10px;min-width:0;padding:12px;display:grid}.invoicing-history-row-heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.invoicing-history-kind{min-width:0;color:var(--text-primary);overflow-wrap:anywhere;padding-top:4px;font-size:.82rem;font-weight:650}.invoicing-history-kind.revision{color:var(--accent)}.invoicing-history-status{border:1px solid var(--border-color);max-width:62%;color:var(--text-secondary);background:var(--surface);text-align:center;overflow-wrap:anywhere;border-radius:999px;flex:none;padding:4px 8px;font-size:.69rem;font-weight:650;line-height:1.35}.invoicing-history-status.status-approved{color:var(--success);border-color:var(--success-border);background:var(--success-soft)}.invoicing-history-status.status-pending{color:var(--info-text);border-color:var(--info-border);background:var(--info-bg)}.invoicing-history-status.status-changes_requested{color:var(--warning-text);border-color:var(--warning-border);background:var(--warning-bg)}.invoicing-history-status.status-superseded{color:var(--text-secondary);background:var(--surface-muted);border-style:dashed}.invoicing-history-dates{grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr));gap:8px 14px;margin:0;display:grid}.invoicing-history-dates>div{gap:2px;min-width:0;display:grid}.invoicing-history-dates dt{color:var(--text-tertiary);font-size:.68rem;font-weight:600}.invoicing-history-dates dd{color:var(--text-primary);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0;font-size:.75rem}.invoicing-history-offline{width:fit-content;color:var(--text-secondary);background:var(--surface-muted);border-radius:4px;padding:3px 7px;font-size:.68rem;font-weight:600}.invoicing-history-note{border-left:2px solid var(--accent);color:var(--text-primary);background:color-mix(in srgb, var(--accent) 7%, var(--surface));white-space:pre-wrap;overflow-wrap:anywhere;border-radius:0 5px 5px 0;margin:0;padding:9px 10px;font-size:.78rem;line-height:1.55}.invoicing-history-state{border:1px dashed var(--border-strong);border-radius:var(--radius-md);min-height:126px;color:var(--text-secondary);background:var(--surface-strong);align-content:center;justify-items:start;gap:9px;padding:18px;display:grid}.invoicing-history-state p,.invoicing-history-state small{margin:0;font-size:.8rem;line-height:1.5}.invoicing-history-state>strong{color:var(--text-primary);font-size:.86rem}.invoicing-history-error{border-color:var(--danger-border);background:color-mix(in srgb, var(--danger-soft) 68%, var(--surface))}.invoicing-history-error>strong{color:var(--danger)}.invoicing-history-error p{color:var(--text-primary);overflow-wrap:anywhere}.invoicing-history-error small{color:var(--text-secondary)}.invoicing-history-empty{text-align:center;justify-items:center}.invoicing-history-empty-mark{border:1px solid var(--border-color);width:34px;height:34px;color:var(--accent);background:var(--surface);border-radius:50%;place-items:center;font-size:1rem;display:grid}.invoicing-history-skeleton{background:var(--surface-muted);border-radius:4px;width:min(100%,250px);height:13px;animation:1.35s ease-in-out infinite alternate invoicing-history-pulse}.invoicing-history-skeleton.short{opacity:.65;width:min(66%,170px)}.invoicing-history-state[role=status]:has(.invoicing-history-skeleton){align-content:center}.invoicing-history-trigger:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}@keyframes invoicing-history-pulse{0%{opacity:.45}to{opacity:1}}@media (width<=420px){.app-shell .invoicing-history-trigger,.invoicing-history-dialog .modal-close{min-height:44px}.invoicing-history-dialog .modal-close{min-width:44px}.invoicing-history-dialog .modal-header{padding:12px}.invoicing-history-dialog .modal-content{max-height:calc(100dvh - 88px)}.invoicing-history-body{gap:11px;padding:12px}.invoicing-history-row{gap:9px;padding:10px}.invoicing-history-row-heading{flex-direction:column;align-items:flex-start;gap:6px}.invoicing-history-status{max-width:100%}}@media (prefers-reduced-motion:reduce){.invoicing-history-skeleton{animation:none}}.quote-detail-view .quote-header-actions .invoice-regenerate-control.small-button{gap:0;padding:0;position:relative}.invoice-regenerate-action,.invoice-regenerate-info>button{min-height:32px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;display:inline-flex}.invoice-regenerate-action{white-space:nowrap;padding:0 8px}.invoice-regenerate-action:disabled{cursor:wait;opacity:.6}.invoice-regenerate-info{display:inline-flex;position:relative}.invoice-regenerate-info>button{border-left:1px solid var(--border-color);padding:0 8px}.invoice-regenerate-info>button:focus-visible,.invoice-regenerate-tooltip:focus-visible,.invoice-regenerate-action:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.invoice-regenerate-tooltip{z-index:30;width:min(260px,75vw);color:var(--text-primary);background:var(--surface);border:1px solid var(--border-color);white-space:normal;border-radius:6px;padding:10px;font-size:.78rem;line-height:1.5;position:absolute;top:100%;right:0;box-shadow:0 6px 20px #0002}.invoice-regenerate-feedback{max-width:380px;color:var(--text-secondary);flex-basis:100%;font-size:.75rem;line-height:1.5}.invoice-regenerate-feedback[role=alert]{color:var(--danger)}.quote-document-actions{flex-wrap:wrap}.invoice-plan-dialog{width:min(780px,100vw - 32px)}.payment-plan-editor{color:var(--text-primary);gap:16px;display:grid}.plan-total-choice,.plan-row,.plan-receipt-confirm,.plan-conflict{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-muted);min-width:0;margin:0;padding:14px}.plan-total-choice{flex-wrap:wrap;gap:14px 22px;display:flex}.plan-total-choice legend,.plan-row legend{color:var(--text-secondary);padding:0 5px;font-size:12px;font-weight:700}.plan-total-choice label,.plan-receipt-confirm label,.plan-final-balance{color:var(--text-secondary);align-items:center;gap:8px;font-size:13px;display:flex}.plan-starter{border-left:3px solid var(--accent);background:var(--accent-soft);flex-wrap:wrap;align-items:end;gap:10px;padding:12px;display:flex}.plan-starter .invoice-field{min-width:180px;margin:0}.plan-starter-fields{gap:8px;display:flex}.plan-starter-fields .invoice-field{min-width:110px}.plan-allocation{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.plan-allocation>div{border-right:1px solid var(--border-color);gap:4px;padding:12px 14px;display:grid}.plan-allocation>div:last-child{border:0}.plan-allocation span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.plan-allocation strong{font-variant-numeric:tabular-nums}.plan-allocation .is-negative strong{color:var(--danger)}.plan-row-list{gap:10px;display:grid}.plan-row{background:var(--surface);grid-template-columns:minmax(140px,1.1fr) minmax(150px,.85fr) minmax(190px,1.3fr) auto;align-items:end;gap:10px;display:grid}.plan-row .invoice-field{min-width:0;margin:0}.plan-row-amount,.plan-row-trigger{grid-template-columns:1fr 1fr;gap:8px;display:grid}.plan-row-trigger{grid-column:span 2}.plan-row-trigger:has(select option[value=milestone]:checked){grid-template-columns:1fr 1.4fr}.plan-remove-row{min-height:36px;padding-inline:9px}.plan-editor-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.plan-final-balance{padding:7px 0}.plan-receipt-confirm{background:var(--accent-soft)}.plan-receipt-confirm h4{margin:0 0 9px;font-size:13px}.plan-receipt-confirm p,.payment-allocation-preview p{justify-content:space-between;gap:12px;margin:6px 0;font-size:13px;display:flex}.plan-conflict{border-color:var(--danger);background:var(--danger-soft)}.plan-conflict p{color:var(--text-secondary);margin:6px 0 10px;font-size:13px}.plan-validation{border-radius:var(--radius-sm);color:var(--danger);background:var(--danger-soft);margin:0;padding:10px 12px 10px 30px;font-size:12px}.invoice-plan-summary{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-muted);margin:16px 0;padding:14px}.invoice-plan-summary-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.invoice-plan-summary-heading h4{margin:4px 0 0;font-size:15px}.invoice-plan-summary-heading>span{font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.invoice-plan-next{border-left:3px solid var(--accent);background:var(--surface);margin:12px 0;padding:9px 10px;font-size:12px;font-weight:650}.invoice-plan-rows{gap:7px;display:grid}.invoice-plan-item{border-top:1px solid var(--border-color);grid-template-columns:1fr auto;align-items:start;gap:8px 12px;padding:9px 0;display:grid}.invoice-plan-item>div:first-child,.invoice-plan-item-amount{gap:4px;display:grid}.invoice-plan-item>div:first-child span{color:var(--text-secondary);font-size:11px}.invoice-plan-item-amount{justify-items:end;font-size:12px}.plan-status{color:var(--text-secondary);font-size:10px;font-weight:700}.plan-status-paid{color:var(--success)}.plan-status-overdue{color:var(--danger)}.plan-status-partially-paid,.plan-status-due{color:var(--accent)}.invoice-milestone-confirm{background:var(--surface);flex-wrap:wrap;grid-column:1/-1;align-items:end;gap:8px;padding:8px;display:flex}.invoice-milestone-confirm .invoice-field{margin:0}.invoice-milestone-confirm p,.invoice-plan-warning{color:var(--text-secondary);flex-basis:100%;margin:0;font-size:11px}.invoice-plan-warning{color:var(--danger)}.invoice-plan-history{border-top:1px solid var(--border-color);margin-top:12px;padding-top:10px;font-size:12px}.invoice-plan-history summary{cursor:pointer;font-weight:650}.invoice-plan-history>div{border-bottom:1px solid var(--border-color);gap:3px;padding:9px 0;display:grid}.invoice-plan-history>div span{color:var(--text-secondary)}.payment-allocation-preview{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-muted);margin:10px 0;padding:12px}.payment-allocation-preview h3{margin:10px 0 7px;font-size:13px}.payment-allocation-preview .invoice-field{margin:0}.invoice-payment-history small{color:var(--text-secondary);display:block}.invoice-milestone-office-prompts{border:1px solid var(--border-color);border-left:3px solid var(--accent);border-radius:var(--radius-sm);background:var(--surface-muted);gap:7px;margin:12px 0;padding:11px 14px;font-size:12px;display:grid}.invoice-milestone-office-prompts>div{color:var(--text-secondary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;display:flex}.invoice-milestone-office-prompts .invoice-inline-link{width:auto}@media (width<=767px){.plan-row{grid-template-columns:1fr 1fr}.plan-row>.invoice-field:first-of-type,.plan-row-trigger{grid-column:1/-1}.plan-remove-row{grid-column:1/-1;justify-self:start}.plan-allocation>div{padding:10px 8px}.plan-allocation strong{font-size:12px}.plan-starter{align-items:stretch}.plan-starter-fields{flex:100%}.plan-starter-fields .invoice-field{flex:1}.invoice-plan-item{grid-template-columns:minmax(0,1fr) auto}.invoice-milestone-confirm{align-items:stretch}.invoice-milestone-confirm .invoice-field{flex:100%}}.invoices-page{min-width:0;color:var(--text-primary)}.plan-receipt-confirm input[type=checkbox],.plan-total-choice input[type=radio]{flex:0 0 16px;width:16px;min-width:16px;height:16px;min-height:16px;padding:0}.invoices-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin:4px 0 24px;display:flex}.invoices-heading h2{font-size:var(--type-page-title);font-weight:var(--weight-semibold);line-height:var(--line-heading);margin:7px 0 9px}.invoices-heading p:last-child{color:var(--text-secondary);margin:0;font-size:14px}.invoice-kicker{color:var(--text-secondary);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.invoice-button{min-height:var(--control-height-compact);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);font-family:var(--font-body);font-size:var(--type-meta);font-weight:var(--weight-semibold);cursor:pointer;transition:background-color var(--motion-standard) var(--motion-ease), border-color var(--motion-standard) var(--motion-ease), color var(--motion-standard) var(--motion-ease);justify-content:center;align-items:center;gap:8px;padding:8px 12px;line-height:1.25;display:inline-flex}.invoice-button:hover:not(:disabled){background:var(--hover-bg);border-color:var(--border-strong)}.invoice-button:focus-visible,.invoice-number:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.invoice-button:disabled{opacity:.55;cursor:not-allowed}.invoice-primary{background:var(--brand-charcoal);border-color:var(--brand-charcoal);color:var(--text-on-primary)}.invoice-primary:hover:not(:disabled){background:color-mix(in srgb, var(--brand-charcoal) 88%, var(--accent));border-color:color-mix(in srgb, var(--brand-charcoal) 88%, var(--accent))}.invoice-danger{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.invoice-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.invoice-toolbar .invoice-field{margin:0}.invoice-count{color:var(--text-secondary);font-size:12px}.invoice-selection-toolbar{flex-wrap:wrap}.invoice-selection-toolbar>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.invoice-selection-help{color:var(--text-secondary);flex-basis:100%;margin:0;font-size:12px;line-height:1.5}.invoice-batch-results{border:1px solid var(--border-color);background:var(--surface);overflow-wrap:anywhere;border-radius:9px;padding:12px 28px;font-size:13px}.invoice-table{table-layout:fixed;min-width:0}.invoice-table thead th{padding:0}.invoice-table th{white-space:nowrap;position:relative}.invoice-table th button{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;display:flex}.invoice-table th .invoice-column-sort{white-space:nowrap;width:100%;min-width:0;padding:0}.invoice-table .invoice-column-heading{align-items:center;min-height:34px;display:flex}.invoice-table th[data-column-key=balanceCents] .invoice-column-sort{text-align:right;justify-content:flex-end}.invoice-table .table-selection-heading{background:var(--surface-muted)}.invoice-table tr.bulk-selected td:first-child{background:var(--accent-soft)}.invoice-table .table-selection-heading{padding:12px}.invoice-table td{overflow-wrap:anywhere}.invoice-table td strong{font-size:12px}.invoice-table td small{color:var(--text-secondary);margin-top:4px;font-size:11px;display:block}.invoice-number{color:var(--accent);text-underline-offset:3px;cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-family:inherit;font-size:12px;font-weight:700;text-decoration:underline}.invoice-table .invoice-money{text-align:right;font-variant-numeric:tabular-nums;white-space:normal;overflow-wrap:anywhere;font-weight:650}.invoice-status{background:var(--surface-muted);color:var(--text-secondary);white-space:nowrap;border-radius:20px;padding:5px 8px;font-size:11px;display:inline-block}.status-completed,.payment-paid,.delivery-sent{background:var(--success-soft);color:var(--success)}.status-approved,.status-scheduled,.delivery-processing{background:var(--accent-soft);color:var(--accent)}.payment-partial,.delivery-queued{background:var(--warning-bg);color:var(--warning-text)}.delivery-failed{background:var(--danger-soft);color:var(--danger)}.invoice-delivery-error{color:var(--danger)!important}.invoice-state{text-align:center;border:1px dashed var(--border-color);border-radius:var(--radius-lg);background:var(--surface-muted);flex-direction:column;align-items:center;max-width:490px;margin:34px auto;padding:40px 26px;display:flex}.invoice-state h3{margin:10px 0;font-size:24px}.invoice-state p:not(.invoice-kicker){color:var(--text-secondary);margin:0 0 19px;font-size:13px;line-height:1.6}.invoice-state-icon{background:var(--accent-soft);width:48px;height:48px;color:var(--accent);border-radius:50%;place-items:center;margin-bottom:18px;display:grid}.invoice-loading{gap:9px;padding:18px;display:grid}.invoice-loading i{background:var(--surface-muted);border-radius:5px;height:44px}.invoice-notice,.invoice-error{overflow-wrap:anywhere;border-radius:6px;align-items:center;gap:8px;padding:10px 12px;font-size:12px;display:flex}.invoice-notice{color:var(--success);background:var(--success-soft)}.invoice-error{color:var(--danger);background:var(--danger-soft)}.invoice-dialog{max-width:570px}.invoice-dialog-intro{color:var(--text-secondary);margin:0 0 20px;font-size:13px;line-height:1.55}.invoice-field{color:var(--text-secondary);flex-direction:column;gap:7px;margin:14px 0;font-size:12px;font-weight:650;display:flex}.invoice-field input,.invoice-field select{width:100%;min-height:var(--control-height);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--input-bg-color);color:var(--text-primary);font-family:var(--font-body);font-size:var(--type-body);padding:0 11px}.invoice-field input:focus-visible,.invoice-field select:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-color:var(--accent)}.invoice-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;margin-top:23px;display:flex}.invoice-inline-note{background:var(--surface-muted);color:var(--text-secondary);border-radius:6px;padding:13px;font-size:12px;line-height:1.5}.invoice-export-help:focus-visible,.invoice-export-tooltip:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:3px}.invoice-table-wrap{overflow-x:auto}.invoice-table td[data-column-key=issuedInvoice]{white-space:nowrap}.invoice-issued-date{color:var(--text-secondary);margin-bottom:5px;font-size:11px;display:block}.invoice-export-help-wrap{align-items:center;display:inline-flex;position:relative}.invoice-export-help{width:30px;height:34px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;padding:0;display:grid}.invoice-export-help:hover{color:var(--accent);background:var(--accent-soft)}.invoice-export-tooltip{z-index:10;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--surface);width:min(310px,80vw);color:var(--text-primary);box-shadow:0 8px 22px color-mix(in srgb, var(--brand-charcoal) 15%, transparent);white-space:normal;padding:10px 12px;font-size:12px;line-height:1.5;position:absolute;top:calc(100% + 6px);right:0}.invoice-overdue-notice{border-left:3px solid var(--warning-text);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--warning-bg);color:var(--warning-text);flex-wrap:wrap;align-items:center;gap:7px;margin:9px 0 14px;padding:10px 12px;font-size:12px;display:flex}.invoice-overdue-notice span{color:var(--text-secondary)}.invoice-draft-document-note{border:1px solid var(--warning-text);border-radius:var(--radius-sm);background:var(--warning-bg);color:var(--text-primary);flex-direction:column;gap:4px;padding:10px 12px;font-size:11px;display:flex}.invoice-lifecycle-draft,.invoice-lifecycle-requested_revision{background:var(--warning-bg);color:var(--warning-text)}.invoice-lifecycle-approved{background:var(--success-soft);color:var(--success)}.invoice-lifecycle-in_revision{background:var(--accent-soft);color:var(--accent)}.invoice-lifecycle-canceled{background:var(--danger-soft);color:var(--danger)}.invoice-form-grid{grid-template-columns:1fr 1fr;gap:4px 14px;display:grid}.invoice-balance-strip{background:var(--surface-muted);color:var(--text-secondary);border-radius:7px;justify-content:space-between;align-items:center;margin:0 0 17px;padding:14px;font-size:12px;display:flex}.invoice-balance-strip strong{color:var(--accent);font-size:22px}.invoice-inline-link{color:var(--accent);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-size:12px;text-decoration:underline}.invoice-request-ref{color:var(--text-secondary);overflow-wrap:anywhere;font-size:11px}.invoice-request-ref code{font-size:inherit}.invoice-payment-history{border-top:1px solid var(--border-color);margin-top:23px;padding-top:14px}.invoice-payment-history h3{font-size:var(--type-subsection-title);font-weight:var(--weight-semibold);line-height:var(--line-heading)}.invoice-payment-history p{border-bottom:1px solid var(--border-color);color:var(--text-secondary);justify-content:space-between;padding:9px 0;font-size:12px;display:flex}.invoice-payment-history strong{color:var(--text-primary);font-variant-numeric:tabular-nums}.invoice-delete-warning{color:var(--text-primary);font-size:13px;line-height:1.55}.invoice-delete-warning p{margin:0 0 9px}.modal-card.invoice-preview-dialog{width:min(100%,1240px);max-height:calc(100dvh - 48px)}.invoice-preview-dialog .modal-header{flex:none}.invoice-preview-dialog .modal-header h2{overflow-wrap:anywhere;min-width:0}.invoice-preview-dialog .modal-content{flex-direction:column;gap:12px;min-height:0;display:flex;overflow:auto}.invoice-preview-dialog .modal-content>*{flex-shrink:0}.invoice-preview-layout{grid-template-columns:300px minmax(0,1fr);gap:16px;min-height:0;display:grid}.invoice-preview-management{flex-direction:column;gap:13px;min-width:0;display:flex}.invoice-preview-identity{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-muted);padding:14px}.invoice-preview-identity .invoice-kicker{margin-bottom:7px}.invoice-preview-identity h3{margin:0 0 5px;font-size:18px}.invoice-preview-identity p{color:var(--text-secondary);overflow-wrap:anywhere;margin:3px 0;font-size:12px;line-height:1.45}.invoice-preview-statuses{gap:7px;margin-top:10px;display:grid}.invoice-preview-statuses>div{color:var(--text-secondary);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.invoice-preview-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.invoice-preview-totals>div{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--surface);min-width:0;padding:9px}.invoice-preview-totals span{color:var(--text-secondary);font-size:10px;display:block}.invoice-preview-totals strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin-top:4px;font-size:12px;display:block}.invoice-preview-history{border-top:1px solid var(--border-color);max-height:155px;padding-top:9px;overflow:auto}.invoice-preview-history h4{margin:0 0 5px;font-size:12px}.invoice-preview-history p{border-bottom:1px solid var(--border-color);color:var(--text-secondary);justify-content:space-between;gap:8px;margin:0;padding:7px 0;font-size:11px;display:flex}.invoice-preview-history strong{color:var(--text-primary);white-space:nowrap;font-variant-numeric:tabular-nums}.invoice-preview-actions{flex-wrap:wrap;gap:7px;display:flex}.invoice-preview-command-group{border:0;min-width:0;margin:0;padding:0}.invoice-preview-actions .invoice-button{flex:auto}.invoice-preview-controls{justify-content:space-between;align-items:center;gap:12px;padding:0 0 4px;display:flex}.invoice-preview-controls p{color:var(--text-secondary);margin:0;font-size:12px}.invoice-document-frame{flex-direction:column;gap:7px;min-width:0;display:flex}.invoice-document-frame iframe{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:var(--radius-sm);width:100%;height:min(58vh,600px);min-height:300px;display:block}.invoice-preview-link{min-height:36px;color:var(--accent);text-underline-offset:2px;align-self:flex-end;align-items:center;gap:6px;font-size:12px;text-decoration:underline;display:inline-flex}.invoice-preview-link:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.invoice-preview-loading,.invoice-preview-missing{border:1px dashed var(--border-color);border-radius:var(--radius-sm);background:var(--surface-muted);min-height:260px;color:var(--text-secondary);text-align:center;place-items:center;padding:20px;font-size:13px;display:grid}.invoice-batch-feedback{margin-top:12px}.invoice-batch-results[hidden]{display:none}@media (width<=1100px){.invoice-preview-layout{grid-template-columns:minmax(0,1fr)}.invoice-preview-management{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.invoice-preview-command-group,.invoice-draft-document-note{grid-column:1/-1}}@media (width<=700px){.invoice-group-row button{max-width:calc(100vw - 80px)}.invoices-heading{flex-direction:column;align-items:flex-start;margin-bottom:19px}.invoices-heading>.invoice-button{width:100%}.invoice-toolbar{flex-direction:column;align-items:stretch}.invoice-toolbar .quote-workspace-search{flex-basis:auto;width:100%}.invoice-toolbar .invoice-field{width:100%}.invoice-form-grid{grid-template-columns:1fr}.invoice-selection-toolbar{align-items:stretch}.invoice-selection-buttons{grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%;display:grid!important}.invoice-selection-buttons .invoice-button{min-height:44px}.invoice-preview-controls{flex-direction:column;align-items:flex-start}.invoice-preview-layout{grid-template-columns:minmax(0,1fr)}.invoice-preview-management{display:flex}.invoice-preview-dialog iframe{height:min(48vh,430px);min-height:260px}.invoice-preview-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.invoice-preview-actions>:is(.invoice-selection-help,.invoice-error,.invoice-inline-note){grid-column:1/-1}.invoice-builder-line{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 10px}.invoice-builder-line .invoice-field:first-child{grid-column:1/-1}.invoice-remove-line{grid-column:2;justify-self:end}.invoice-tax-row{flex-direction:column;align-items:flex-start;gap:5px}}@media (width<=560px){.invoices-page .invoice-table-wrap.data-table-scroll{border:1px solid var(--border-color);background:var(--surface);overflow:auto}.invoices-page .invoice-table.data-table{table-layout:fixed;display:table;width:var(--invoice-table-width)!important}.invoices-page .invoice-table thead{clip:auto;width:auto;height:auto;display:table-header-group;position:static;overflow:visible}.invoices-page .invoice-table tbody{display:table-row-group;width:auto!important}.invoices-page .invoice-table tbody tr{border:0;border-radius:0;margin:0;padding:0;display:table-row}.invoices-page .invoice-table tbody td{border-bottom:1px solid var(--border-color);padding:12px;display:table-cell;width:auto!important}.invoices-page .invoice-table tbody td:before{content:none}.invoices-page .invoice-table tbody td.table-selection-cell{text-align:center;padding:7px;width:40px!important}.invoices-page .invoice-table .data-table-resize-handle{display:block}.invoice-table{min-width:0}.invoice-table .invoice-money{text-align:left}.invoice-table td small{grid-column:2}}.invoice-toolbar{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface);justify-content:space-between;align-items:center;gap:16px;margin:0 0 14px;padding:12px;display:flex}.invoice-toolbar .data-table-filter-tools{flex:570px;gap:9px;display:flex}.invoice-toolbar .quote-workspace-search{flex:270px;max-width:380px}.invoice-toolbar .invoice-field{min-width:165px;color:var(--text-secondary);font-size:var(--type-meta);font-weight:var(--weight-medium);flex:0 190px;gap:0}.invoice-toolbar .invoice-field select{min-height:var(--control-height);font-size:var(--type-body);padding:0 30px 0 10px}.invoice-toolbar .data-table-add-filter{flex:none}.invoice-toolbar-actions{justify-content:flex-end;align-items:center;gap:13px;min-width:0;display:flex}.invoice-count{color:var(--text-secondary);font-size:var(--type-meta);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none}.invoice-export-actions{border-left:1px solid var(--border-color);align-items:center;gap:7px;min-width:0;padding-left:13px;display:flex}.invoice-export-actions .invoice-button{white-space:nowrap}.invoice-export-help-wrap{flex:none}.invoice-export-help{width:var(--touch-target);height:var(--touch-target)}.invoice-toolbar :is(.invoice-button,.data-table-add-filter,.invoice-field select,.quote-workspace-search){min-height:var(--control-height);border-radius:var(--radius-sm)}.invoice-toolbar .quote-workspace-search{height:var(--control-height)}.invoice-toolbar .data-table-add-filter{padding-inline:11px}.invoices-page .invoice-table .invoice-group-row th{background:var(--surface-muted);width:auto!important;min-width:0!important;padding:0!important;display:table-cell!important;position:static!important}.invoice-table tr[hidden]{display:none!important}.invoice-group-row button{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;width:100%;min-height:42px;color:var(--text-primary)!important;gap:9px!important;padding:9px 12px!important;display:flex!important}.invoice-group-row button[aria-expanded=false] svg{transform:rotate(-90deg)}.invoice-group-row button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:var(--weight-semibold);flex:1;overflow:hidden}.invoice-group-row button small{white-space:nowrap;color:var(--text-secondary);font-size:11px;font-weight:var(--weight-medium);flex-shrink:0;margin-left:auto}.invoice-dialog.invoice-builder-dialog{width:min(760px,100vw - 28px);max-width:760px;max-height:calc(100dvh - 32px);overflow-y:auto}.invoice-builder-lines{border-top:1px solid var(--border-color);margin-top:12px}.invoice-builder-heading{justify-content:space-between;align-items:center;gap:12px;padding:12px 0 4px;display:flex}.invoice-builder-heading h3{margin:0;font-size:14px}.invoice-builder-line{grid-template-columns:minmax(150px,2fr) minmax(75px,.7fr) minmax(80px,.8fr) minmax(100px,1fr) minmax(100px,1fr) 38px;align-items:end;gap:9px;padding:2px 0;display:grid}.invoice-builder-line .invoice-field{min-width:0}.invoice-remove-line{margin-bottom:14px;padding-inline:8px}.invoice-tax-row{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:18px;padding-top:8px;display:flex}.invoice-tax-row>label:first-child{white-space:nowrap;color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.invoice-tax-row input[type=checkbox]{flex:0 0 16px;width:16px;min-width:16px;height:16px;min-height:16px;margin:0;padding:0}.invoice-tax-row .invoice-field{width:175px;margin:8px 0}.invoice-builder-totals{border-radius:var(--radius-sm);background:var(--surface-muted);gap:7px;margin-top:14px;padding:13px;display:grid}.invoice-builder-totals span{color:var(--text-secondary);justify-content:space-between;font-size:12px;display:flex}.invoice-builder-totals span:last-child{border-top:1px solid var(--border-color);color:var(--text-primary);padding-top:8px;font-size:14px}.invoice-builder-totals strong{color:var(--text-primary);font-variant-numeric:tabular-nums}@media (width<=1120px){.invoice-toolbar{flex-direction:column;align-items:stretch}.invoice-toolbar .data-table-filter-tools{flex:auto}.invoice-toolbar-actions{justify-content:space-between}}@media (width<=700px){.invoice-toolbar{gap:12px;padding:10px}.invoice-builder-line{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 10px}.invoice-builder-line .invoice-field:first-child{grid-column:1/-1}.invoice-remove-line{grid-column:2;justify-self:end}.invoice-tax-row{flex-direction:column;align-items:flex-start;gap:5px}.invoice-toolbar .data-table-filter-tools{flex-direction:column;align-items:stretch}.invoice-toolbar .quote-workspace-search,.invoice-toolbar .invoice-field,.invoice-toolbar .data-table-add-filter{width:100%;min-width:0;max-width:none}.invoice-toolbar .quote-workspace-search,.invoice-toolbar .invoice-field{flex:none}.invoice-toolbar .invoice-field select{width:100%}.invoice-toolbar-actions{flex-direction:column;align-items:flex-start;gap:8px}.invoice-export-actions{border:0;flex-wrap:wrap;width:100%;padding:0}.invoice-export-actions .invoice-button{flex:190px}.invoice-export-help-wrap{margin-left:auto}}.business-logo-upload{border:1px solid var(--border-color);background:var(--surface);border-radius:10px;width:min(100%,760px);margin:14px 0;padding:18px}.business-logo-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.business-logo-heading h3{color:var(--text-primary);margin:0;font-size:15px}.business-logo-heading p{max-width:520px;color:var(--text-secondary);margin:5px 0 0;font-size:12px;line-height:1.5}.business-logo-invoice-mark{border:1px solid var(--border-color);width:34px;height:34px;color:var(--accent);background:var(--surface);border-radius:9px;flex:none;place-items:center;display:grid}.business-logo-body{align-items:center;gap:20px;margin-top:17px;display:flex}.business-logo-preview{border:1px dashed color-mix(in srgb, var(--border-color) 70%, var(--text-secondary));background:var(--surface);border-radius:8px;flex:0 0 148px;place-items:center;width:148px;height:100px;display:grid;overflow:hidden}.business-logo-preview.has-logo{background:#777;border-style:solid}.business-logo-preview img{object-fit:contain;width:100%;height:100%;padding:10px;display:block}.business-logo-placeholder{color:var(--text-secondary);justify-items:center;gap:6px;font-size:11px;display:grid}.business-logo-skeleton{background:color-mix(in srgb, var(--border-color) 48%, var(--surface));border-radius:5px;width:68%;height:45%;animation:1.15s ease-in-out infinite alternate business-logo-pulse}@keyframes business-logo-pulse{to{opacity:.5}}.business-logo-controls{min-width:0}.business-logo-guidance{color:var(--text-secondary);margin:0 0 10px;font-size:11px;line-height:1.6}.business-logo-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.business-logo-file-input{clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.business-logo-actions button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.business-logo-retry{align-items:center;gap:5px;display:inline-flex}.business-logo-remove{color:var(--danger);align-items:center;gap:5px;display:inline-flex}.business-logo-state,.business-logo-error,.business-logo-success{margin:9px 0 0;font-size:12px;line-height:1.4}.business-logo-state{color:var(--text-secondary)}.business-logo-error{color:var(--danger)}.business-logo-success{color:var(--success,#317457)}@media (width<=620px){.business-logo-upload{padding:14px}.business-logo-body{flex-direction:column;align-items:flex-start}.business-logo-preview{flex-basis:100px;width:100%;max-width:240px}}.settings-page .settings-danger-panel{width:fit-content;max-width:100%;min-height:0;padding:8px 10px}.settings-danger-panel .account-deletion-control{border:1px solid color-mix(in srgb, var(--danger) 42%, var(--border-color));background:var(--surface);max-width:100%;color:var(--danger);border-radius:8px;align-items:stretch;display:inline-flex}.settings-page .settings-danger-panel .account-deletion-trigger{white-space:normal;background:0 0;border:0;border-radius:7px 0 0 7px;flex:auto;gap:8px;width:auto;min-width:0;height:auto;min-height:44px;padding:8px 4px 8px 12px}.account-deletion-trigger span{overflow-wrap:anywhere;text-align:start}.account-deletion-trigger svg{flex:none}.settings-danger-panel .account-deletion-help-trigger{min-width:44px;min-height:44px;color:var(--danger);cursor:help;background:0 0;border:0;border-radius:0 7px 7px 0;flex:0 0 44px;place-items:center;padding:0;display:grid}.settings-danger-panel .account-deletion-help-trigger:hover{background:var(--danger-soft)}.account-deletion-control button:focus-visible,.account-deletion-tooltip:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.account-deletion-tooltip{z-index:90;box-sizing:border-box;overscroll-behavior:contain;border:1px solid var(--border-color);background:var(--surface);width:min(24rem,100vw - 24px);color:var(--text-primary);box-shadow:0 8px 24px color-mix(in srgb, var(--text-primary) 16%, transparent);border-radius:8px;padding:12px 14px;position:fixed;overflow:auto}.account-deletion-tooltip p{max-width:none;color:var(--text-secondary);overflow-wrap:anywhere;white-space:normal;margin:0;font-size:.875rem;line-height:1.5}.account-deletion-tooltip b{color:var(--text-primary)}.platform-user-filters{border:1px solid var(--border-color);color:var(--text-primary);background:var(--surface);border-radius:10px;gap:16px;padding:18px;display:grid}.platform-user-filters-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.platform-user-filters-heading h3{letter-spacing:-.025em;margin:3px 0 4px;font-size:1.08rem}.platform-user-filters-heading p:last-child{color:var(--text-secondary);margin:0;font-size:.82rem;line-height:1.5}.platform-user-filters-eyebrow{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.66rem;font-weight:750}.platform-user-filter-clear,.platform-user-filter-add,.platform-user-filter-remove{border:1px solid var(--border-color);color:var(--text-primary);background:var(--surface);font:inherit;cursor:pointer;border-radius:7px;justify-content:center;align-items:center;transition:background-color .12s,border-color .12s,transform .12s;display:inline-flex}.platform-user-filter-clear{min-height:35px;color:var(--text-secondary);white-space:nowrap;padding:0 11px;font-size:.78rem;font-weight:650}.platform-user-filter-clear:hover:not(:disabled),.platform-user-filter-remove:hover{border-color:color-mix(in srgb,var(--accent) 42%,var(--border-color));background:var(--accent-soft)}.platform-user-filter-clear:disabled{opacity:.48;cursor:not-allowed}.platform-user-filter-rows{gap:9px;display:grid}.platform-user-filter-row{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:8px;grid-template-columns:minmax(86px,.58fr) minmax(145px,.9fr) minmax(190px,1.5fr) 35px;align-items:end;gap:9px;padding:10px;display:grid}.platform-user-filter-field{min-width:0;color:var(--text-secondary);gap:5px;font-size:.7rem;font-weight:700;display:grid}.platform-user-filter-field select,.platform-user-filter-field input{box-sizing:border-box;border:1px solid var(--border-color);width:100%;min-width:0;min-height:38px;color:var(--text-primary);background:var(--surface);font:inherit;border-radius:6px;padding:7px 10px;font-size:.82rem;font-weight:450}.platform-user-filter-field select:focus-visible,.platform-user-filter-field input:focus-visible,.platform-user-filter-clear:focus-visible,.platform-user-filter-add:focus-visible,.platform-user-filter-remove:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 52%,transparent);outline-offset:2px}.platform-user-filter-first-marker{color:var(--text-secondary);letter-spacing:.1em;align-self:center;font-size:.64rem;font-weight:800}.platform-user-filter-connector select{letter-spacing:.025em;font-weight:750}.platform-user-filter-remove{width:35px;height:38px;color:var(--text-secondary);font-size:1.25rem;line-height:1}.platform-user-filter-remove span{transform:translateY(-1px)}.platform-user-filter-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.platform-user-filter-add{min-height:37px;color:var(--accent);border-color:color-mix(in srgb,var(--accent) 32%,var(--border-color));gap:8px;padding:0 11px;font-size:.8rem;font-weight:700}.platform-user-filter-add:hover:not(:disabled){background:var(--accent-soft);transform:translateY(-1px)}.platform-user-filter-add>span{font-size:1.15rem;font-weight:450}.platform-user-filter-add small{color:var(--text-secondary);margin-left:2px;font-size:.68rem;font-weight:600}.platform-user-filter-add:disabled{opacity:.48;cursor:not-allowed}.platform-user-filter-logic{color:var(--text-secondary);margin:0;font-size:.73rem;line-height:1.45}.platform-user-filter-summary{border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent-soft) 62%,var(--surface));border-radius:0 6px 6px 0;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:5px 12px;padding:11px 12px;display:grid}.platform-user-filter-summary-label{color:var(--text-secondary);letter-spacing:.075em;text-transform:uppercase;white-space:nowrap;padding-top:2px;font-size:.64rem;font-weight:750}.platform-user-filter-summary p{overflow-wrap:anywhere;color:var(--text-primary);margin:0;font-size:.79rem;line-height:1.5}@media (width<=680px){.platform-user-filters{gap:13px;padding:14px}.platform-user-filter-row{grid-template-columns:minmax(0,1fr) 35px;gap:9px}.platform-user-filter-first-marker{display:none}.platform-user-filter-connector{grid-area:1/1/auto/-1}.platform-user-filter-type{grid-area:2/1}.platform-user-filter-value{grid-area:3/1}.platform-user-filter-remove{grid-area:2/2;align-self:end}.platform-user-filter-summary{grid-template-columns:1fr;gap:5px}.platform-user-filter-summary-label{white-space:normal}.platform-user-filter-tools{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.platform-user-filter-clear,.platform-user-filter-add,.platform-user-filter-remove{transition:none}}.platform-email-page{box-sizing:border-box;min-height:100dvh;color:var(--text-primary);background:var(--app-bg);padding:24px clamp(16px,4vw,56px)}.platform-email-header,.platform-email-content,.platform-email-footer{width:min(1120px,100%);margin-inline:auto}.platform-email-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:18px;padding-bottom:18px;display:flex}.platform-email-brand{align-items:center;gap:20px;min-width:0;display:flex}.platform-email-brand img{width:154px;height:auto}.platform-email-badge{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:7px;font-size:12px;display:inline-flex}.platform-logout{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.platform-email-content{margin:36px auto 58px}.platform-email-intro{max-width:680px;margin-bottom:27px}.platform-email-intro h1{letter-spacing:-.045em;margin:10px 0 12px;font-size:clamp(2.1rem,5vw,3.5rem);line-height:1}.platform-email-intro>p:last-child,.platform-list-heading p:last-child{color:var(--text-secondary);line-height:1.6}.platform-section-nav{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:9px;gap:5px;width:fit-content;margin:0 0 24px;padding:4px;display:flex}.platform-section-nav button{min-height:36px;color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0 14px;font-size:.88rem}.platform-section-nav button.active{color:var(--text-primary);background:var(--surface);box-shadow:0 1px 3px color-mix(in srgb,var(--text-primary) 12%,transparent);font-weight:700}.platform-email-footer{border-top:1px solid var(--border-color);color:var(--text-secondary);justify-content:space-between;gap:16px;padding-top:15px;font-size:12px;display:flex}.platform-users-panel{gap:19px;display:grid}.platform-list-heading,.platform-detail-heading,.platform-history-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.platform-list-heading h2,.platform-detail-heading h2,.platform-history-heading h3{letter-spacing:-.02em;margin:0;font-size:1.35rem}.platform-list-heading p,.platform-detail-heading p{color:var(--text-secondary);margin:5px 0 0;font-size:.87rem;line-height:1.5}.platform-filter-bar{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;flex-wrap:wrap;align-items:end;gap:12px;padding:13px;display:flex}.platform-filter-bar>label:not(.platform-search),.platform-date-filter label{color:var(--text-secondary);gap:5px;font-size:.75rem;font-weight:650;display:grid}.platform-filter-bar select,.platform-filter-bar input{min-height:37px}.platform-filter-bar select{min-width:145px}.platform-search{min-width:min(300px,100%);color:var(--text-secondary);flex:1;align-items:center;display:flex;position:relative}.platform-search svg{position:absolute;left:11px}.platform-search input{width:100%;padding-left:34px}.platform-table-wrap{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;overflow-x:auto}.platform-table{border-collapse:collapse;text-align:left;width:100%;font-size:.84rem}.platform-table th{color:var(--text-secondary);background:var(--surface-muted);letter-spacing:.045em;text-transform:uppercase;white-space:nowrap;padding:11px 13px;font-size:.72rem;font-weight:700}.platform-table td{border-top:1px solid var(--border-color);vertical-align:middle;padding:12px 13px}.platform-table tbody tr:hover{background:color-mix(in srgb,var(--accent) 4%,var(--surface))}.platform-user-link{color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:0;gap:3px;padding:0;display:grid}.platform-user-link strong{font-size:.88rem}.platform-user-link span,.platform-muted{color:var(--text-secondary);font-size:.78rem}.platform-status-tag{width:max-content;color:var(--text-secondary);background:var(--surface-muted);text-transform:capitalize;border-radius:999px;align-items:center;padding:4px 8px;font-size:.7rem;font-weight:700;display:inline-flex}.platform-status-tag.status-active,.platform-status-tag.status-sent{color:var(--success);background:var(--success-soft)}.platform-status-tag.status-failed,.platform-status-tag.status-archived{color:var(--danger);background:var(--danger-soft)}.platform-status-tag.status-pending,.platform-status-tag.status-processing{color:var(--accent);background:var(--accent-soft)}.platform-pager{color:var(--text-secondary);justify-content:space-between;align-items:center;gap:12px;font-size:.78rem;display:flex}.platform-pager>div{align-items:center;gap:8px;display:flex}.platform-pager .icon-button{min-width:34px;min-height:34px}.platform-mobile-list,.platform-mobile-deliveries{display:none}.platform-state{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;justify-items:start;gap:7px;padding:22px;display:grid}.platform-state strong{font-size:.95rem}.platform-state span{color:var(--text-secondary);font-size:.84rem;line-height:1.5}.platform-error{border-color:color-mix(in srgb,var(--danger) 30%,var(--border-color))}.platform-error strong,.platform-date-error{color:var(--danger)}.platform-skeleton{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;gap:9px;padding:18px;display:grid}.platform-skeleton i{background:var(--surface-muted);border-radius:4px;height:18px;animation:1.2s ease-in-out infinite alternate platform-pulse}.platform-skeleton i:nth-child(2){width:76%}.platform-skeleton i:nth-child(3){width:52%}@keyframes platform-pulse{0%{opacity:.55}to{opacity:1}}.platform-back{justify-self:start;align-items:center;gap:7px;padding:0;display:inline-flex}.platform-detail-panel{gap:17px}.platform-account-facts{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;flex-wrap:wrap;gap:clamp(18px,5vw,56px);margin:0;padding:14px 16px;display:flex}.platform-account-facts>div{gap:5px;display:grid}.platform-account-facts dt{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;font-size:.7rem;font-weight:700}.platform-account-facts dd{text-transform:capitalize;margin:0;font-size:.85rem}.platform-history{border-top:1px solid var(--border-color);gap:13px;margin-top:10px;padding-top:21px;display:grid}.platform-history-note{max-width:800px;color:var(--text-secondary);margin:0;font-size:.82rem;line-height:1.55}.platform-business-context{color:var(--text-secondary);margin:0;font-size:.82rem}.platform-business-context strong{color:var(--text-primary)}.platform-date-filter{align-items:end;gap:9px;margin-left:auto;display:flex}.platform-date-filter input{min-width:132px}.platform-date-error{margin:0;font-size:.8rem}.platform-delivery-error{overflow-wrap:anywhere;max-width:240px;color:var(--danger);font-size:.76rem}.platform-detail-heading{padding:4px 0 0}.platform-delivery-table{min-width:940px}.platform-mobile-user{display:none}@media (width<=720px){.platform-section-nav{box-sizing:border-box;flex-wrap:wrap;width:100%}.platform-section-nav button{overflow-wrap:normal;flex:1;min-width:68px;padding:6px 9px}.platform-email-header{align-items:flex-start}.platform-email-brand{flex-direction:column;align-items:flex-start;gap:7px}.platform-email-brand img{width:135px}.platform-email-content{margin-top:27px}.platform-email-footer{flex-direction:column;gap:6px}.platform-list-heading,.platform-detail-heading{align-items:flex-start}.platform-filter-bar{align-items:stretch}.platform-filter-bar>label:not(.platform-search){flex:1}.platform-filter-bar select{width:100%;min-width:0}.platform-table-wrap{display:none}.platform-mobile-list{gap:8px;display:grid}.platform-mobile-user{border:1px solid var(--border-color);color:var(--text-primary);background:var(--surface);text-align:left;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:13px;display:grid}.platform-mobile-user>span{gap:4px;min-width:0;display:grid}.platform-mobile-user>span strong{overflow-wrap:anywhere}.platform-mobile-user small{color:var(--text-secondary);overflow-wrap:anywhere}.platform-mobile-user>.platform-status-tag{grid-area:1/2}.platform-date-filter{flex-wrap:wrap;width:100%;margin:0}.platform-date-filter label{flex:1;min-width:120px}.platform-date-filter button{flex:1}.platform-mobile-deliveries{gap:8px;display:grid}.platform-mobile-deliveries article{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;gap:7px;padding:13px;display:grid}.platform-mobile-deliveries article>div{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.platform-mobile-deliveries article span,.platform-mobile-deliveries article small{color:var(--text-secondary);overflow-wrap:anywhere}.platform-mobile-deliveries article small{font-size:.74rem}}@media (prefers-reduced-motion:reduce){.platform-skeleton i{animation:none}}.platform-detail-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.platform-user-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.platform-user-actions .small-button{white-space:nowrap}.platform-mobile-user-card{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;gap:10px;padding:11px;display:grid}.platform-mobile-user-card .platform-mobile-user{background:0 0;border:0;padding:3px}.platform-mobile-user-card .platform-user-actions{border-top:1px solid var(--border-color);padding-top:9px}.platform-mobile-view{color:var(--accent);grid-column:1/-1;font-size:.78rem;font-weight:700}.platform-dialog-backdrop{z-index:1000;background:color-mix(in srgb,var(--text-primary) 48%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow:auto}.platform-action-dialog{border:1px solid var(--border-color);background:var(--surface);width:min(520px,100%);max-height:min(90dvh,850px);box-shadow:0 18px 60px color-mix(in srgb,var(--text-primary) 23%,transparent);border-radius:13px;outline:none;overflow:auto}.platform-action-dialog.is-business-delete{border-color:color-mix(in srgb,var(--danger) 42%,var(--border-color))}.platform-dialog-heading{border-bottom:1px solid var(--border-color);align-items:flex-start;gap:12px;padding:20px 21px 15px;display:flex}.platform-dialog-heading h2{letter-spacing:-.025em;margin:3px 0 0;font-size:1.22rem;line-height:1.2}.platform-dialog-heading .eyebrow{color:var(--text-secondary);letter-spacing:.09em;text-transform:uppercase;margin:0;font-size:.68rem;font-weight:750}.platform-dialog-symbol{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:9px;flex:none;place-items:center;display:grid}.is-business-delete .platform-dialog-symbol{color:var(--danger);background:var(--danger-soft)}.platform-dialog-close{min-width:34px;min-height:34px;margin-left:auto}.platform-action-content{gap:14px;padding:18px 21px 21px;display:grid}.platform-action-content>p{color:var(--text-secondary);overflow-wrap:anywhere;margin:0;font-size:.88rem;line-height:1.55}.platform-action-content>p strong{color:var(--text-primary)}.platform-target-address{border:1px solid var(--border-color);background:var(--surface-muted);overflow-wrap:anywhere;border-radius:8px;gap:4px;padding:12px 13px;display:grid}.platform-target-address span{color:var(--text-secondary);letter-spacing:.06em;text-transform:uppercase;font-size:.7rem;font-weight:700}.platform-target-address strong{font-size:.88rem}.platform-dialog-caveat{font-size:.78rem!important}.platform-deletion-notice{border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border-color));background:color-mix(in srgb,var(--accent-soft) 58%,var(--surface));border-radius:8px;gap:6px;padding:13px;display:grid}.platform-deletion-notice strong{font-size:.88rem}.platform-deletion-notice span{color:var(--text-secondary);font-size:.8rem;line-height:1.5}.platform-escalation-notice{border-color:color-mix(in srgb,var(--danger) 35%,var(--border-color));background:color-mix(in srgb,var(--danger-soft) 58%,var(--surface))}.platform-business-warning{border:2px solid var(--danger);color:var(--text-primary);background:color-mix(in srgb,var(--danger-soft) 68%,var(--surface));border-radius:8px;padding:14px}.platform-business-warning>strong{color:var(--danger);font-size:.92rem;line-height:1.4;display:block}.platform-business-warning ul{gap:7px;margin:11px 0 0;padding-left:20px;font-size:.81rem;line-height:1.45;display:grid}.platform-confirm-field{color:var(--text-primary);gap:7px;font-size:.82rem;font-weight:700;display:grid}.platform-confirm-field input{border:1px solid var(--border-color);min-height:40px;color:var(--text-primary);background:var(--app-bg);font:inherit;border-radius:7px;padding:8px 10px;font-weight:400}.platform-confirm-check{color:var(--text-primary);align-items:flex-start;gap:9px;font-size:.81rem;line-height:1.45;display:flex}.platform-confirm-check input{width:17px;height:17px;accent-color:var(--danger);flex:none;margin:1px 0 0}.platform-action-error{color:var(--danger);background:var(--danger-soft);border-radius:7px;margin:0;padding:10px 11px;font-size:.8rem;line-height:1.45}.platform-complete-notice{border:1px solid color-mix(in srgb,var(--success) 32%,var(--border-color));background:var(--success-soft);border-radius:8px;gap:6px;padding:13px;font-size:.86rem;line-height:1.5;display:grid}.platform-complete-notice span{color:var(--text-secondary);font-size:.8rem}.platform-dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;padding-top:4px;display:flex}.platform-dialog-actions .small-button{min-height:39px}.platform-primary-action{color:var(--surface)!important;border-color:var(--accent)!important;background:var(--accent)!important}.platform-danger-action{color:var(--surface)!important;border-color:var(--danger)!important;background:var(--danger)!important}.platform-action-dialog :focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 65%,transparent);outline-offset:2px}.is-business-delete :focus-visible{outline-color:color-mix(in srgb,var(--danger) 65%,transparent)}@media (width<=720px){.platform-detail-controls{justify-content:flex-start;width:100%}.platform-detail-heading{flex-direction:column}.platform-mobile-user-card .platform-user-actions{grid-template-columns:1fr 1fr;display:grid}.platform-mobile-user-card .platform-user-actions .small-button{justify-content:center}.platform-dialog-backdrop{align-items:end;padding:10px}.platform-action-dialog{border-radius:13px;max-height:calc(100dvh - 20px)}.platform-dialog-heading{padding:17px 16px 13px}.platform-action-content{padding:15px 16px 17px}.platform-dialog-actions{grid-template-columns:1fr 1fr;display:grid}.platform-dialog-actions button{justify-content:center;width:100%}}.platform-config-panel{border:1px solid var(--border-color);background:var(--surface);max-width:820px;box-shadow:0 12px 36px color-mix(in srgb,var(--text-primary) 4%,transparent);border-radius:12px;gap:22px;padding:clamp(18px,3vw,30px);display:grid}.platform-config-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.platform-config-heading h2{letter-spacing:-.03em;margin:7px 0 8px;font-size:1.42rem}.platform-config-heading>div>p:last-child{max-width:580px;color:var(--text-secondary);margin:0;font-size:.88rem;line-height:1.55}.platform-config-kicker{color:var(--accent);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:7px;margin:0;font-size:.7rem;font-weight:750;display:flex}.platform-config-status{letter-spacing:.035em;text-transform:uppercase;border-radius:999px;flex:none;align-items:center;gap:7px;margin-top:4px;padding:6px 9px;font-size:.7rem;font-weight:750;display:inline-flex}.platform-config-status>span{background:currentColor;border-radius:50%;width:7px;height:7px}.platform-config-status.is-ready{color:var(--success);background:var(--success-soft)}.platform-config-status.is-missing{color:var(--accent);background:var(--accent-soft)}.platform-config-note{border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border-color));color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 58%,var(--surface));border-radius:8px;align-items:flex-start;gap:11px;padding:13px 15px;display:flex}.platform-config-note svg{flex:none;margin-top:1px}.platform-config-note p{color:var(--text-secondary);margin:0;font-size:.82rem;line-height:1.55}.platform-config-note strong{color:var(--text-primary)}.platform-config-form{gap:19px;display:grid}.platform-config-field{color:var(--text-primary);gap:7px;font-size:.82rem;font-weight:700;display:grid}.platform-config-field>span{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.platform-config-field>span b{color:var(--text-secondary);text-align:right;font-size:.69rem;font-weight:550}.platform-config-field input{box-sizing:border-box;border:1px solid var(--border-color);width:100%;min-height:43px;color:var(--text-primary);background:var(--surface);font:inherit;border-radius:7px;outline:none;padding:10px 12px;font-size:.86rem;transition:border-color .16s,box-shadow .16s}.platform-config-field input::placeholder{color:var(--text-secondary);opacity:.7}.platform-config-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.platform-config-field input[aria-invalid=true]{border-color:var(--danger)}.platform-config-field input:disabled{opacity:.68}.platform-config-field>small{color:var(--text-secondary);font-size:.72rem;font-weight:450;line-height:1.45}.platform-config-field .platform-config-field-error{color:var(--danger);font-weight:600}.platform-config-actions{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:14px;padding-top:4px;display:flex}.platform-config-actions>div{align-items:center;gap:8px;display:flex}.platform-config-revision{color:var(--text-secondary);font-size:.72rem}.platform-config-message{border-radius:7px;align-items:flex-start;gap:9px;padding:11px 13px;font-size:.82rem;line-height:1.45;display:flex}.platform-config-message svg{flex:none;margin-top:1px}.platform-config-message.is-success{color:var(--success);background:var(--success-soft)}.platform-config-message.is-error,.platform-config-inline-error{color:var(--danger);background:var(--danger-soft)}.platform-config-inline-error{border-radius:7px;margin:0;padding:10px 12px;font-size:.82rem}.platform-config-conflict{border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border-color));background:var(--accent-soft);border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex}.platform-config-conflict>span{color:var(--text-secondary);font-size:.78rem;line-height:1.4}.platform-config-conflict button,.platform-config-state button{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.platform-config-state{border:1px solid var(--border-color);background:var(--surface);border-radius:9px;justify-items:start;gap:9px;padding:21px;display:grid}.platform-config-state>span{color:var(--text-secondary);font-size:.84rem;line-height:1.5}.platform-config-error{border-color:color-mix(in srgb,var(--danger) 30%,var(--border-color))}.platform-config-error>svg,.platform-config-error>strong{color:var(--danger)}.platform-config-skeleton{gap:13px;display:grid}.platform-config-skeleton i{background:var(--surface-muted);border-radius:6px;height:43px;animation:1.2s ease-in-out infinite alternate platform-config-pulse}.platform-config-skeleton i:first-child{height:88px}.platform-config-skeleton i:last-child{width:58%}@keyframes platform-config-pulse{0%{opacity:.55}to{opacity:1}}@media (width<=620px){.platform-config-panel{gap:18px;padding:17px}.platform-config-heading{flex-direction:column;gap:8px}.platform-config-status{margin:0}.platform-config-field>span{flex-direction:column;align-items:flex-start;gap:3px}.platform-config-field>span b{text-align:left}.platform-config-actions{flex-direction:column;align-items:flex-start}.platform-config-actions>div{justify-content:flex-end;width:100%}.platform-config-actions .primary-button{flex:1;justify-content:center}.platform-config-conflict{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.platform-config-field input{transition:none}.platform-config-skeleton i{animation:none}}.activity-page{min-width:0;color:var(--text-primary);gap:16px;display:grid}.activity-toolbar{justify-content:space-between;align-items:center;gap:16px;min-width:0;display:flex}.activity-toolbar-main{flex:1;align-items:center;gap:9px;min-width:0;display:flex}.activity-search{border:1px solid var(--border-color);width:min(100%,380px);min-width:180px;height:38px;color:var(--text-secondary);background:var(--surface);border-radius:7px;align-items:center;gap:8px;padding:0 11px;display:flex}.activity-search input{width:100%;min-width:0;color:var(--text-primary);font:inherit;background:0 0;border:0;outline:0;font-size:13px}.activity-timeframe select,.activity-extra-filters select,.activity-custom-range input{border:1px solid var(--border-color);max-width:100%;min-height:38px;color:var(--text-primary);background:var(--surface);font:inherit;border-radius:7px;padding:0 30px 0 10px;font-size:13px}.activity-filter-toggle,.activity-refresh{border:1px solid var(--border-color);min-height:38px;color:var(--text-primary);background:var(--surface);font:inherit;white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:0 10px;font-size:13px;display:inline-flex}.activity-filter-toggle:hover,.activity-filter-toggle.is-open,.activity-refresh:hover{background:var(--hover-bg)}.activity-filter-count{min-width:18px;height:18px;color:var(--text-on-accent);background:var(--accent);border-radius:9px;place-items:center;padding:0 4px;font-size:10px;font-weight:700;display:inline-grid}.activity-refresh{width:38px;padding:0}.activity-result-meta{color:var(--text-secondary);flex:none;align-items:center;gap:9px;font-size:12px;display:flex}.activity-result-meta span{border-left:1px solid var(--border-color);letter-spacing:.03em;padding-left:9px;font-size:11px;font-weight:650}.activity-extra-filters,.activity-custom-range{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:8px;flex-wrap:wrap;align-items:end;gap:12px;padding:13px;display:flex}.activity-extra-filters[hidden]{display:none}.activity-extra-filters label,.activity-custom-range label{color:var(--text-secondary);gap:5px;font-size:11px;font-weight:650;display:grid}.activity-extra-filters select{min-width:155px}.activity-reset{min-height:34px;color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 8px;font-size:12px;font-weight:650}.activity-custom-range input{min-width:156px;padding-right:8px}.activity-custom-range p{color:var(--text-secondary);margin:0 0 3px;font-size:11px}.activity-reminders{border:1px solid color-mix(in srgb, var(--accent) 25%, var(--border-color));border-left:3px solid var(--accent);background:color-mix(in srgb, var(--accent) 4%, var(--surface));border-radius:7px;padding:13px 14px}.activity-reminders-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.activity-reminders-heading h2{margin:0;font-size:13px;font-weight:700}.activity-reminders-heading p{color:var(--text-secondary);margin:3px 0 0;font-size:11px}.activity-reminders-heading>span{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:12px}.activity-reminders ul{gap:0;margin:10px 0 0;padding:0;list-style:none;display:grid}.activity-reminders li{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.activity-reminders li>span{gap:2px;min-width:0;display:grid}.activity-reminders li strong{font-size:12px}.activity-reminders li small{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.activity-reminders li button{border:1px solid var(--border-color);color:var(--text-primary);background:var(--surface);font:inherit;cursor:pointer;border-radius:6px;flex:none;padding:5px 8px;font-size:11px}.activity-history-note{color:var(--text-secondary);margin:-2px 0 0;font-size:11px}.activity-table-section{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;min-width:0;overflow:hidden}.activity-table-scroll{overscroll-behavior-x:contain;width:100%;overflow-x:auto}.activity-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:720px}.activity-table th{border-bottom:1px solid var(--border-color);height:38px;color:var(--text-secondary);background:var(--surface-muted);text-align:left;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap;padding:0 13px;font-size:10px;font-weight:700}.activity-table th:first-child{width:164px}.activity-table th:nth-child(2){width:27%}.activity-table th:nth-child(3){width:30%}.activity-table th:nth-child(4){width:22%}.activity-table td{border-bottom:1px solid color-mix(in srgb, var(--border-color) 78%, transparent);vertical-align:middle;padding:10px 13px}.activity-table tbody tr:last-child>td{border-bottom:0}.activity-row{min-height:48px}.activity-time{color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px}.activity-action{align-items:center;gap:8px;min-width:0;font-size:12px;font-weight:600;display:flex}.activity-type-mark{background:var(--accent);border-radius:50%;flex:0 0 6px;width:6px;height:6px}.activity-expand{width:26px;height:26px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;flex:0 0 26px;place-items:center;margin-left:auto;display:inline-grid}.activity-expand:hover,.activity-expand:focus-visible{border-color:var(--border-color);color:var(--text-primary);background:var(--surface-muted);outline:none}.activity-record,.activity-actor{min-width:0}.activity-record strong,.activity-record span,.activity-actor strong,.activity-actor span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.activity-record strong,.activity-actor strong{font-size:12px;font-weight:600}.activity-record span,.activity-actor span{color:var(--text-secondary);text-transform:capitalize;margin-top:3px;font-size:10px}.activity-detail-row>td{background:var(--surface-muted);padding:0 13px 11px}.activity-detail{border-left:2px solid var(--accent);background:var(--surface);justify-content:space-between;align-items:start;gap:14px;padding:11px 12px;display:flex}.activity-detail>div:first-child{min-width:0}.activity-detail>div>span{color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:700}.activity-detail p{overflow-wrap:anywhere;margin:4px 0 0;font-size:12px;line-height:1.5}.activity-detail small{color:var(--text-secondary);margin-top:5px;font-size:10px;display:block}.activity-link{border:1px solid var(--border-color);min-height:30px;color:var(--accent);background:var(--surface);font:inherit;cursor:pointer;white-space:nowrap;border-radius:5px;padding:0 9px;font-size:11px;font-weight:650}.activity-unavailable{max-width:220px;color:var(--text-secondary);font-size:11px!important}.activity-load-more{border-top:1px solid var(--border-color);justify-content:center;padding:12px;display:flex}.activity-load-more button,.activity-empty button,.activity-error button{border:1px solid var(--border-color);min-height:34px;color:var(--text-primary);background:var(--surface);font:inherit;cursor:pointer;border-radius:6px;padding:0 12px;font-size:12px}.activity-load-more button:disabled{opacity:.65;cursor:wait}.activity-empty{min-height:200px;color:var(--text-secondary);text-align:center;align-content:center;justify-items:center;gap:8px;display:grid}.activity-empty strong{color:var(--text-primary);font-size:13px}.activity-empty p{margin:0 0 4px;font-size:11px}.activity-error{border:1px solid color-mix(in srgb, var(--danger) 35%, var(--border-color));color:var(--danger);background:var(--danger-soft);border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:12px;display:flex}.activity-skeleton{gap:0;padding:0 13px;display:grid}.activity-skeleton i{border-bottom:1px solid var(--border-color);background:linear-gradient(90deg, transparent 0, color-mix(in srgb, var(--surface-muted) 70%, transparent) 50%, transparent 100%);opacity:.75;height:44px}@media (width<=760px){.activity-toolbar{flex-direction:column;align-items:stretch;gap:8px}.activity-toolbar-main{flex-wrap:wrap}.activity-search{flex:100%;width:100%}.activity-timeframe{flex:auto}.activity-timeframe select{width:100%}.activity-result-meta{justify-content:flex-end}}@media (width<=500px){.activity-table{min-width:640px}.activity-table th{padding-inline:9px}.activity-table td{padding:9px}.activity-table th:first-child{width:130px}.activity-table th:nth-child(2){width:205px}.activity-table th:nth-child(3){width:190px}.activity-table th:nth-child(4){width:150px}.activity-reminders li{align-items:start}.activity-custom-range{grid-template-columns:1fr 1fr;display:grid}.activity-custom-range p{grid-column:1/-1}.activity-custom-range input{width:100%;min-width:0}.activity-extra-filters{grid-template-columns:1fr;align-items:stretch;display:grid}.activity-extra-filters select{width:100%}}@media (prefers-reduced-motion:reduce){.activity-page *{scroll-behavior:auto!important}}.templates-workspace{min-width:0}.templates-workspace>.templates-tabs{width:auto;margin:0 20px 16px}@media (width<=860px){.templates-workspace>.templates-tabs{margin-inline:16px}}@media (width<=560px){.templates-workspace>.templates-tabs{margin-inline:10px}}.templates-tabs{--templates-tab-ink:var(--text-secondary,#62716e);--templates-tab-active-ink:var(--text-primary,#263732);--templates-tab-rule:var(--border-color,#d9e2dd);--templates-tab-accent:var(--accent,#397568);border-bottom:1px solid var(--templates-tab-rule);scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--templates-tab-accent) 35%, transparent) transparent;align-items:stretch;gap:clamp(18px,3vw,34px);width:100%;min-width:0;display:flex;overflow-x:auto}.templates-tab{min-height:46px;color:var(--templates-tab-ink);font:inherit;letter-spacing:.005em;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:0;flex:none;justify-content:center;align-items:center;margin:0;padding:0 2px;font-size:.91rem;font-weight:560;transition:color .16s;display:inline-flex;position:relative}.templates-tab:after{background:var(--templates-tab-accent);content:"";opacity:0;border-radius:2px 2px 0 0;height:2px;transition:opacity .16s,transform .16s;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(.62)}.templates-tab:hover{color:var(--templates-tab-active-ink)}.templates-tab.is-active{color:var(--templates-tab-active-ink);font-weight:680}.templates-tab.is-active:after{opacity:1;transform:scaleX(1)}.templates-tab:focus-visible{z-index:1;outline:2px solid var(--templates-tab-accent);outline-offset:-3px;border-radius:5px 5px 0 0}@media (width<=420px){.templates-tabs{gap:20px}.templates-tab{min-height:44px;font-size:.875rem}}@media (prefers-reduced-motion:reduce){.templates-tab,.templates-tab:after{transition-duration:.01ms}}.app-shell :is(input,select,textarea),.contractor-portal :is(input,select,textarea){border-color:var(--control-border)}.app-shell :is(input,select,textarea)[aria-invalid=true],.contractor-portal :is(input,select,textarea)[aria-invalid=true]{border-color:var(--danger)}.app-shell :is(input,textarea)[readonly],.contractor-portal :is(input,textarea)[readonly]{background:var(--surface-muted);color:var(--text-secondary)}.app-shell .data-table,.app-shell .data-table thead th,.app-shell .data-table tbody td,.app-shell .data-table tbody th{font-size:var(--type-table)}.app-shell .data-table :is(.status-pill,.quote-status-pill){font-size:var(--type-meta)}.app-shell .template-item-headings,.app-shell .template-item-row :is(input,select),.app-shell .template-item-total output,.app-shell .price-list-item-cell strong{font-size:var(--type-table)}.app-shell .template-summary-card>span,.app-shell .template-summary-card p,.app-shell .template-summary-counts span,.app-shell .template-sync-status,.app-shell .price-list-total-meta :is(dt,dd),.app-shell .price-list-item-cell small,.app-shell .price-list-footer{font-size:var(--type-meta)}.app-shell .quote-filter-row label>span,.app-shell .quote-filter-row :is(select,input){font-size:var(--type-label)}.app-shell .quote-filter-row .small-button{min-height:var(--control-height-compact);font-size:var(--type-label)}.app-shell .invoice-kicker,.app-shell .invoice-table td small,.app-shell .invoice-status,.app-shell .invoice-request-ref{font-size:var(--type-meta)}.app-shell .invoice-table td strong,.app-shell .invoice-number{font-size:var(--type-table)}.app-shell .quote-detail-view .quote-breadcrumb,.app-shell .quote-detail-view .quote-breadcrumb nav .text-button,.app-shell .quote-detail-view .quote-header-actions :is(.small-button,.primary-button,.icon-button),.app-shell .quote-detail-view .quote-status,.app-shell .quote-detail-view .quote-lifecycle i,.app-shell .quote-detail-view .quote-lifecycle small{font-size:var(--type-label)}.app-shell .quote-detail-view .quote-heading p,.app-shell .quote-detail-view .quote-approval-actions small,.app-shell .quote-detail-view .quote-lifecycle strong{font-size:var(--type-body)}.app-shell .sidebar .user-chip strong{font-size:var(--type-label)}.app-shell .sidebar .user-chip small{font-size:var(--type-meta)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--brand-black:#131619;--brand-charcoal:#252a30;--brand-silver:#77818d;--brand-light-silver:#e3e7ec;--brand-blue:#2f6bff;--brand-blue-hover:#1f57e8;--app-bg:#f4f6f9;--surface:#fff;--surface-strong:#f8fafc;--surface-muted:#eef1f5;--input-bg-color:var(--surface);--hover-bg:#f1f4f7;--sidebar:var(--surface-strong);--border-color:#e3e7ec;--border-strong:#cfd5dd;--control-border:#7b8794;--text-primary:#131619;--text-secondary:#56616e;--text-tertiary:#657281;--text-on-primary:#f4f7f9;--text-on-accent:#fff;--accent:var(--brand-blue);--accent-hover:var(--brand-blue-hover);--accent-active:#1947c2;--accent-soft:#edf3ff;--accent-border:#cfddff;--focus-ring:var(--accent);--danger:#a9333d;--danger-soft:#fff0f1;--danger-border:#e9b7bc;--success:#217a5d;--success-soft:#edf8f3;--success-border:#b8dfcf;--warning-text:#79550a;--warning-bg:#fff7e5;--warning-border:#e8cf93;--info-text:#345b93;--info-bg:#edf3ff;--info-border:#cbdaf5;--navy-950:#040a15;--navy-900:#0a1629;--navy-800:#10203a;--navy-700:#1a2e50;--navy-line:#96b2e824;--navy-text:#c9d4e8;--navy-muted:#8c9ab5;--blue-glow:#5c8dff;--blue-light:#9dbaff;--font-body:"Instrument Sans", ui-sans-serif, system-ui, sans-serif;--font-display:var(--font-body);--font-mono:"JetBrains Mono", ui-monospace, monospace;--type-page-title:clamp(1.5rem, 2.1vw, 1.875rem);--type-section-title:1.125rem;--type-subsection-title:1rem;--type-body:.875rem;--type-label:.8125rem;--type-meta:.75rem;--type-table:.875rem;--type-table-dense:.8125rem;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--line-heading:1.25;--line-body:1.5;--numeric-font-family:var(--font-body);--numeric-weight-regular:400;--numeric-weight-emphasis:600;--numeric-weight-strong:700;--numeric-line-height:1.1;--numeric-line-height-regular:1.35;--numeric-tabular:lining-nums tabular-nums;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--page-gutter:clamp(12px, 2.2vw, 28px);--section-gap:clamp(12px, 1.7vw, 20px);--card-padding:clamp(12px, 1.5vw, 18px);--content-max:1600px;--control-height-compact:36px;--control-height:40px;--touch-target:40px;--radius-sm:5px;--radius-md:8px;--radius-lg:12px;--radius-dialog:14px;--shadow-sm:0 1px 2px #1316190d;--shadow-lg:0 18px 42px #13161929;--layer-popover:900;--layer-dialog:1000;--layer-toast:1100;--motion-fast:.14s;--motion-standard:.18s;--motion-ease:cubic-bezier(.2, .7, .2, 1);font-family:Instrument Sans,ui-sans-serif,system-ui,sans-serif}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--app-bg:#171a1e;--surface:#20252b;--surface-strong:#1b2025;--surface-muted:#2a3038;--input-bg-color:var(--surface);--hover-bg:#2c333b;--sidebar:var(--surface-strong);--border-color:#363e48;--border-strong:#4a5562;--control-border:#758494;--text-primary:#f4f7f9;--text-secondary:#c0c8d1;--text-tertiary:#9ba6b2;--text-on-primary:#f4f7f9;--text-on-accent:#14233d;--accent:#9ab7ff;--accent-hover:#bed0ff;--accent-active:#779cf7;--accent-soft:#26375d;--accent-border:#405b9a;--focus-ring:var(--accent);--danger:#ff9a9f;--danger-soft:#42262a;--danger-border:#815159;--success:#7bd2aa;--success-soft:#1f3c32;--success-border:#3d745e;--warning-text:#ffd789;--warning-bg:#403318;--warning-border:#786332;--info-text:#bbd0ff;--info-bg:#26375d;--info-border:#405b9a;--shadow-sm:0 1px 2px #0003;--shadow-lg:0 18px 42px #0006}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{background:var(--app-bg);min-width:320px;min-height:100dvh;color:var(--text-primary);font-family:var(--font-body);line-height:var(--line-body);margin:0;overflow-x:clip}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a{transition:background-color var(--motion-standard) var(--motion-ease), color var(--motion-standard) var(--motion-ease), border-color var(--motion-standard) var(--motion-ease), transform var(--motion-standard) var(--motion-ease)}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.58}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}input,select,textarea,.mono,.quote-number,.date-cell{font-variant-numeric:tabular-nums}::selection{background:var(--accent-soft);color:var(--text-primary)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
