:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3f4f6;--surface:#fff;--surface-soft:#fff1f2;--surface-muted:#f8f9fa;--ink:#1d2025;--muted:#667085;--line:#e1e4e8;--line-soft:#edf0f2;--teal:#e30613;--teal-strong:#b80511;--blue:#2767a5;--amber:#ad6800;--green:#1d7740;--red:#c62835;--shadow:0 1px 2px #1018280d, 0 4px 14px #1018280a;--shadow-raised:0 10px 28px #1018281c}.contract-control-status-trigger{border:1px solid var(--line);background:var(--surface);width:100%;min-width:132px;min-height:48px;color:var(--ink);cursor:pointer;font:inherit;text-align:left;border-radius:6px;grid-template-columns:minmax(0,1fr) 16px;align-items:center;gap:2px 7px;padding:7px 8px;display:grid}.contract-control-status-trigger:hover,.contract-control-status-trigger:focus-visible{border-color:var(--border-default);background:var(--surface-muted)}.contract-control-status-trigger>span{align-items:center;gap:6px;min-width:0;display:flex}.contract-control-status-trigger>span>svg{flex:none}.contract-control-status-trigger strong{text-overflow:ellipsis;font-size:.7rem;line-height:1.25;overflow:hidden}.contract-control-status-trigger small{color:var(--muted);grid-column:1;font-size:.62rem;line-height:1.2}.contract-control-status-trigger>svg{color:var(--muted);grid-area:1/2/3}.contract-control-status-trigger.amber{color:var(--warning)}.contract-control-status-trigger.blue{color:var(--info)}.contract-control-status-trigger.green{color:var(--success)}.contract-control-status-trigger.neutral{color:var(--muted)}.contract-status-backdrop{padding:18px}.contract-status-dialog{border:1px solid var(--line);background:var(--surface);width:min(920px,100vw - 36px);max-height:min(800px,100dvh - 36px);box-shadow:0 24px 70px color-mix(in srgb,var(--shadow-color) 30%,transparent);border-radius:8px;grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}.contract-status-dialog-header{border-bottom:1px solid var(--line);grid-template-columns:42px minmax(0,1fr) 38px;align-items:center;gap:12px;padding:15px 18px;display:grid}.contract-status-dialog-mark{background:var(--surface-primary);width:40px;height:40px;color:var(--success);border-radius:6px;place-items:center;display:grid}.contract-status-dialog-header>div{min-width:0}.contract-status-dialog-header small{color:var(--accent-text);text-transform:uppercase;font-size:.65rem;font-weight:800}.contract-status-dialog-header h2{text-overflow:ellipsis;white-space:nowrap;margin:2px 0 1px;font-size:1.05rem;overflow:hidden}.contract-status-dialog-header p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.76rem;overflow:hidden}.contract-status-dialog-body{padding:0 20px 22px;overflow-y:auto}.contract-status-year-summary{border-bottom:1px solid var(--line);background:var(--surface-muted);grid-template-columns:repeat(3,minmax(0,1fr));margin-inline:-20px;padding-inline:20px;display:grid}.contract-status-year-summary>div{border-right:1px solid var(--line);gap:4px;padding:14px 16px;display:grid}.contract-status-year-summary>div:first-child{padding-left:0}.contract-status-year-summary>div:last-child{border-right:0}.contract-status-year-summary span{color:var(--muted);font-size:.68rem;font-weight:700}.contract-status-year-summary strong{font-size:.95rem}.contract-status-year-summary .attention strong{color:var(--warning)}.contract-status-warning{border-bottom:1px solid color-mix(in srgb,var(--warning) 40%,var(--border-default));background:var(--surface-primary);color:var(--warning);align-items:center;gap:9px;margin-inline:-20px;padding:10px 20px;font-size:.76rem;display:flex}.contract-history-years>section{padding-top:18px}.contract-history-years>section>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.contract-history-years h3{margin:0;font-size:.9rem}.contract-history-years>section>header span{color:var(--muted);font-size:.7rem}.contract-history-list article{border-bottom:1px solid var(--line-soft);padding:13px 0}.contract-history-main{grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.contract-history-icon{background:var(--surface-primary);width:30px;height:30px;color:var(--success);border-radius:6px;place-items:center;display:grid}.contract-history-main>div{gap:2px;min-width:0;display:grid}.contract-history-main strong{font-size:.79rem}.contract-history-main span,.contract-history-main small,.contract-history-list article>p{color:var(--muted);font-size:.68rem}.contract-history-main em{border:1px solid color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary);color:var(--success);border-radius:5px;padding:5px 7px;font-size:.65rem;font-style:normal;font-weight:750}.contract-history-meta{flex-wrap:wrap;gap:6px;margin:9px 0 0 42px;display:flex}.contract-history-meta>span{border:1px solid var(--line);color:var(--muted);border-radius:5px;padding:4px 6px;font-size:.64rem}.contract-history-meta .unresolved{border-color:color-mix(in srgb,var(--danger) 40%,var(--border-default));background:var(--surface-primary);color:var(--warning)}.contract-history-meta .resolved{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary);color:var(--success)}.contract-history-list article>p{margin:7px 0 0 42px}.contract-history-note{border-left:2px solid var(--amber);padding-left:8px}.contract-history-empty{min-height:230px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:7px;display:grid}.contract-history-empty strong{color:var(--ink);font-size:.86rem}.contract-history-empty span{font-size:.72rem}.control-report-remediation{border-top:1px solid var(--line);gap:14px;margin-top:4px;padding:18px 0 4px;display:grid}.control-report-remediation>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.control-report-remediation>header small{color:var(--muted);text-transform:uppercase;font-size:.65rem;font-weight:750}.control-report-remediation>header h4{margin:2px 0 0;font-size:.9rem}.control-report-remediation-status{border:1px solid var(--line);background:var(--surface-muted);color:var(--muted);border-radius:5px;padding:5px 8px;font-size:.68rem;font-weight:800}.control-report-remediation-status.unresolved{border-color:color-mix(in srgb,var(--danger) 40%,var(--border-default));background:var(--surface-primary);color:var(--warning)}.control-report-remediation-status.resolved{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary);color:var(--success)}.control-report-remediation-choice{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.control-report-unresolved-button{color:var(--warning)}.control-report-remediation-upload{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.control-report-remediation-upload>label{border:1px dashed var(--line);cursor:pointer;border-radius:6px;align-items:center;gap:10px;min-width:0;min-height:48px;padding:8px 11px;display:flex}.control-report-remediation-upload>label:hover{border-color:var(--accent-primary)}.control-report-remediation-upload input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.control-report-remediation-upload label>span{min-width:0;display:grid}.control-report-remediation-upload strong{text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;overflow:hidden}.control-report-remediation-upload small{color:var(--muted);font-size:.65rem}.control-report-remediation-complete{border-top:1px solid var(--border-default);border-bottom:1px solid var(--border-default);background:var(--surface-primary);color:var(--success);grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;display:grid}.control-report-remediation-complete>div{gap:2px;display:grid}.control-report-remediation-complete strong{font-size:.76rem}.control-report-remediation-complete span{font-size:.67rem}html[data-theme=dark] .dashboard-metric-completed .dashboard-metric-icon,html[data-theme=dark] :is(.contract-status-dialog-mark,.contract-history-icon){background:var(--success-background);color:var(--success)}html[data-theme=dark] :is(.contract-control-status-trigger,.contract-status-dialog,.control-report-remediation-upload>label){border-color:var(--line);background:var(--surface);color:var(--ink)}html[data-theme=dark] .contract-status-year-summary{background:var(--surface-muted)}html[data-theme=dark] :is(.contract-status-warning,.contract-history-meta .unresolved){border-color:color-mix(in srgb,var(--warning) 40%,var(--border-default));background:var(--surface-primary);color:var(--warning)}html[data-theme=dark] :is(.contract-history-main em,.contract-history-meta .resolved,.control-report-remediation-status.resolved,.control-report-remediation-complete){border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary);color:var(--success)}html[data-theme=dark] .control-report-remediation-status.unresolved{border-color:color-mix(in srgb,var(--warning) 40%,var(--border-default));background:var(--surface-primary);color:var(--warning)}@media (max-width:820px){.dashboard-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-status-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.contract-status-backdrop{padding:8px}}@media (max-width:680px){.dashboard-metric-grid{grid-template-columns:1fr}.contract-status-dialog-header{grid-template-columns:36px minmax(0,1fr) 36px;gap:9px;padding:12px}.contract-status-dialog-mark{width:34px;height:34px}.contract-status-dialog-body{padding-inline:12px}.contract-status-year-summary{grid-template-columns:1fr;margin-inline:-12px;padding-inline:12px}.contract-status-year-summary>div,.contract-status-year-summary>div:first-child{border-right:0;border-bottom:1px solid var(--line);padding:9px 0}.contract-status-year-summary>div:last-child{border-bottom:0}.contract-status-warning{margin-inline:-12px;padding-inline:12px}.contract-history-main{grid-template-columns:30px minmax(0,1fr)}.contract-history-main em{grid-column:2;justify-self:start}.contract-history-meta,.contract-history-list article>p{margin-left:40px}.control-report-remediation>header{flex-direction:column;align-items:flex-start}.control-report-remediation-upload{grid-template-columns:1fr}.control-report-remediation-upload>button{width:100%}.control-report-remediation-complete{grid-template-columns:22px minmax(0,1fr)}.control-report-remediation-complete>a{grid-column:2;justify-self:start}}*{box-sizing:border-box}html{min-height:100%}body{background:var(--bg);min-height:100%;color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.45}::selection{background:var(--warning-background);color:var(--accent-text)}:focus-visible{outline:3px solid color-mix(in srgb,var(--accent-primary) 40%,var(--border-default));outline-offset:2px}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}code{background:var(--surface-secondary);border-radius:6px;padding:.1rem .35rem;font-size:.92em}.app-shell{grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:var(--surface-primary);flex-direction:column;height:100vh;padding:16px 14px;display:flex;position:sticky;top:0}.brand{border-bottom:1px solid var(--line);align-content:center;gap:2px;min-height:76px;padding:6px 10px 14px;display:grid}.brand-logo{height:auto}.brand-product{color:var(--accent-text);letter-spacing:0;text-rendering:geometricprecision;-webkit-font-smoothing:antialiased;font-family:Segoe UI Variable Text,Segoe UI,Arial,sans-serif;font-size:.78rem;font-style:normal;font-weight:750;line-height:1.25}.side-nav{scrollbar-color:var(--text-muted) transparent;scrollbar-width:thin;gap:2px;margin-top:12px;padding:2px 3px 8px 0;display:grid;overflow-y:auto}.nav-row{grid-template-columns:1fr;align-items:center;display:grid;position:relative}.side-nav.is-customizing .nav-row{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.side-nav.is-customizing .nav-row:active{cursor:grabbing}.nav-row.dragging{opacity:.45}.nav-row.drop-before:before,.nav-row.drop-after:after{z-index:2;background:var(--teal);content:"";pointer-events:none;border-radius:3px;height:3px;position:absolute;left:6px;right:6px}.nav-row.drop-before:before{top:-2px}.nav-row.drop-after:after{bottom:-2px}.side-nav-link{min-height:40px;color:var(--text-primary);border-radius:6px;align-items:center;gap:10px;padding:9px 11px;font-size:.91rem;font-weight:620;transition:background .14s,color .14s,box-shadow .14s;display:flex}.side-nav-link:hover{background:var(--surface-primary);color:var(--ink)}.side-nav-link.active{background:var(--surface-soft);color:var(--accent-text);box-shadow:inset 3px 0 0 var(--teal)}.side-nav-link.pending{color:var(--accent-text)}.nav-spinner{animation:.7s linear infinite nav-spin}@keyframes nav-spin{to{transform:rotate(360deg)}}.button-spinner{animation:.7s linear infinite nav-spin}.nav-drag-item{background:var(--surface-primary);border:1px solid #0000;width:100%}.nav-drag-item:hover,.nav-drag-item:focus-visible{border-color:var(--border-default);background:var(--surface-primary)}.nav-drag-item span{flex:1;min-width:0}.nav-drag-handle{color:var(--text-muted);flex:none}.nav-customize-bar{gap:8px;margin:8px 0 10px;display:grid}.nav-customize-bar .text-button{justify-self:center;min-height:32px}.sidebar-footer{gap:10px;margin-top:auto;display:grid}.user-chip{border:1px solid var(--line);background:var(--surface-primary);min-width:0;color:var(--muted);border-radius:6px;align-items:center;gap:8px;padding:9px;font-size:.86rem;display:flex}.user-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.main-area{min-width:0;padding:24px 28px 34px}.mobile-topbar{display:none}.page-stack{gap:18px;max-width:1460px;margin:0 auto;display:grid}.page-stack>*{min-width:0}.module-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:16px;min-height:76px;padding:8px 0 10px;display:flex}.module-header h1{letter-spacing:0;margin:0;font-size:1.85rem;line-height:1.15}.module-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.segmented-links{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.segmented-links a{border:1px solid var(--line);background:var(--surface-primary);min-height:38px;color:var(--text-primary);border-radius:8px;align-items:center;padding:8px 11px;font-size:.88rem;font-weight:700;display:inline-flex}.segmented-links a.active,.segmented-links a:hover{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-secondary);color:var(--accent-text)}.eyebrow{color:var(--accent-text);letter-spacing:0;text-transform:uppercase;margin:0 0 8px;font-size:.72rem;font-weight:800}.metrics-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.metric-card,.panel,.form-panel{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow);border-radius:8px}.metric-card{align-content:start;gap:8px;min-height:118px;padding:16px 17px 15px 19px;display:grid;position:relative;overflow:hidden}.metric-card:before{background:var(--teal);content:"";width:3px;position:absolute;inset:0 auto 0 0}.metric-card-heading{justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;display:flex}.metric-card-icon{background:var(--surface-primary);width:32px;height:32px;color:var(--text-muted);border-radius:6px;flex:none;place-items:center;display:grid}.metric-link{min-width:0;height:100%;display:block}.metric-link .metric-card{height:100%;transition:border-color .16s,box-shadow .16s,transform .16s}.metric-link:hover .metric-card{border-color:var(--border-default);box-shadow:var(--shadow-raised);transform:translateY(-1px)}.metric-card span,.metric-card small{color:var(--muted)}.metric-card strong{font-size:clamp(1.45rem,2.2vw,2rem);line-height:1.08}.metric-card.green:before{background:var(--green)}.metric-card.amber:before{background:var(--amber)}.metric-card.red:before{background:var(--red)}.metric-card.blue:before,.metric-card.neutral:before{background:var(--blue)}.content-grid{grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);gap:14px;display:grid}.two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.three-column{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.panel,.form-panel{padding:17px}.finance-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.finance-stat-grid div{border:1px solid var(--line);background:var(--surface-primary);border-radius:8px;align-content:start;gap:8px;min-height:92px;padding:14px;display:grid}.finance-stat-grid span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:700}.finance-stat-grid strong{font-size:clamp(1.25rem,2vw,1.9rem);line-height:1}.estimate-layout{grid-template-columns:minmax(0,1fr) minmax(350px,380px);align-items:start;gap:14px;display:grid}.estimate-form{min-width:0}.customer-type-field{gap:8px;margin:14px 0 18px;display:grid}.customer-type-field>span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:700}.customer-type-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.customer-type-options button{border:1px solid var(--line);background:var(--surface-primary);min-height:68px;color:var(--ink);cursor:pointer;font:inherit;text-align:left;border-radius:8px;align-content:center;gap:4px;padding:12px 14px;font-weight:750;display:grid}.customer-type-options button small{color:var(--muted);font-size:.76rem;font-weight:600}.customer-type-options button:hover{border-color:var(--border-default)}.customer-type-options button.active{border-color:var(--teal);background:var(--surface-primary);box-shadow:inset 0 0 0 1px var(--teal)}.customer-type-options button.active small{color:var(--success)}.estimate-registration-field{gap:8px;margin-bottom:18px;display:grid}.estimate-registration-field>span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:700}.estimate-registration-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.estimate-registration-options button{border:1px solid var(--line);background:var(--surface-primary);min-height:62px;color:var(--ink);cursor:pointer;font:inherit;text-align:left;border-radius:8px;align-items:center;gap:11px;padding:11px 13px;display:flex}.estimate-registration-options button>span{gap:3px;font-weight:750;display:grid}.estimate-registration-options button small{color:var(--muted);font-size:.74rem;font-weight:600}.estimate-registration-options button:hover{border-color:var(--border-default)}.estimate-registration-options button.active{border-color:var(--teal);background:var(--surface-primary);box-shadow:inset 0 0 0 1px var(--teal);color:var(--accent-text)}.pricing-mode-field{grid-column:1/-1;gap:7px;display:grid}.pricing-mode-field>span{color:var(--ink);font-size:.8rem;font-weight:750}.pricing-mode-options{border:1px solid var(--line);background:var(--surface-muted);border-radius:7px;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,390px);padding:3px;display:grid}.pricing-mode-options button{min-height:39px;color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:5px;padding:8px 14px;font-weight:750}.pricing-mode-options button:hover{color:var(--ink)}.pricing-mode-options button.active{background:var(--surface);box-shadow:0 1px 4px color-mix(in srgb,var(--shadow-color) 12%,transparent);color:var(--accent-text)}.pricing-mode-rate-hint{color:var(--muted);font-size:.76rem;font-weight:650}.estimate-description{grid-column:1/-1}.estimate-description textarea{resize:none;min-height:150px;padding-bottom:16px;line-height:1.5}.customer-picker-field{z-index:12;position:relative}.customer-picker-trigger{border:1px solid var(--border-default);background:var(--surface-primary);width:100%;min-height:42px;color:var(--ink);cursor:pointer;font:inherit;text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:9px 11px;display:flex}.customer-picker-trigger:hover,.customer-picker-trigger[aria-expanded=true]{border-color:var(--teal)}.customer-picker-menu{z-index:30;border:1px solid var(--line);background:var(--surface-primary);box-shadow:0 16px 36px color-mix(in srgb,var(--shadow-color) 16%,transparent);border-radius:8px;gap:8px;padding:9px;display:grid;position:absolute;top:calc(100% + 7px);left:0;right:0}.customer-picker-search{border:1px solid var(--border-default);min-height:40px;color:var(--muted);border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:flex}.customer-picker-search input{border:0;outline:0;min-width:0;min-height:38px;padding:0}.customer-picker-list{gap:3px;max-height:240px;display:grid;overflow-y:auto}.customer-picker-list button,.customer-picker-create{width:100%;min-height:42px;color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.customer-picker-list button:hover,.customer-picker-list button.selected{background:var(--surface-primary)}.customer-picker-list button>span{gap:2px;display:grid}.customer-picker-list button small{color:var(--muted);font-size:.72rem;font-weight:700}.customer-picker-list p{color:var(--muted);margin:0;padding:12px 10px;font-size:.84rem}.customer-picker-create{border-top:1px solid var(--line);color:var(--accent-text);border-radius:0 0 7px 7px;justify-content:flex-start;padding-top:11px;font-weight:750}.customer-picker-create:hover{background:var(--surface-primary)}.modal-backdrop{z-index:100;background:color-mix(in srgb,var(--surface-primary) 48%,transparent);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.customer-modal{border:1px solid var(--line);background:var(--surface);width:min(680px,100%);max-height:calc(100vh - 40px);box-shadow:0 24px 70px color-mix(in srgb,var(--shadow-color) 28%,transparent);border-radius:8px;gap:18px;padding:20px;display:grid;overflow-y:auto}.customer-modal-header{justify-content:space-between;align-items:flex-start;gap:16px;min-width:0;display:flex}.customer-modal-header>div:first-child{min-width:0}.customer-modal-header h2{margin:3px 0 0}.customer-modal-header small{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:700}.customer-modal-address{grid-column:1/-1}.customer-modal-actions{justify-content:flex-end;gap:10px;display:flex}.estimate-summary{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;gap:12px;padding:18px;display:grid;position:sticky;top:18px}.estimate-total{border-bottom:1px solid var(--line);gap:8px;padding-bottom:14px;display:grid}.estimate-total span,.estimate-totals span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:700}.estimate-total strong{font-size:clamp(2rem,4vw,3rem);line-height:1}.estimate-total small{color:var(--muted);line-height:1.45}.estimate-totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.estimate-totals div{border:1px solid var(--line);background:var(--surface-primary);border-radius:8px;align-content:start;gap:7px;min-height:86px;padding:12px;display:grid}.estimate-totals strong{font-size:clamp(1.1rem,1.6vw,1.55rem);line-height:1.1}.estimate-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.estimate-summary-header{align-items:center;gap:10px;padding-bottom:2px;display:flex}.estimate-summary-header>div:last-child{gap:2px;display:grid}.estimate-summary-header span,.estimate-summary-section-title h4{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:800}.estimate-summary-header h3,.estimate-summary-section-title h4{margin:0}.estimate-summary-header h3{font-size:1rem}.estimate-summary-icon{background:var(--surface-muted);width:36px;height:36px;color:var(--accent-text);border-radius:7px;flex:none;place-items:center;display:grid}.estimate-summary-section{border-top:1px solid var(--line-soft);gap:10px;padding-top:12px;display:grid}.estimate-summary-section-title{color:var(--accent-text);align-items:center;gap:7px;display:flex}.estimate-margin-settings-trigger{width:30px;height:30px;min-height:30px;margin-left:auto}.estimate-margin-settings{border:1px solid color-mix(in srgb, var(--teal) 32%, var(--line));background:color-mix(in srgb, var(--teal) 4%, var(--surface));box-shadow:0 12px 30px color-mix(in srgb,var(--shadow-color) 9%,transparent);border-radius:7px;gap:11px;padding:12px;display:grid}.estimate-margin-settings-heading,.estimate-margin-settings-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.estimate-margin-settings-heading>div{gap:1px;display:grid}.estimate-margin-settings-heading strong{font-size:.82rem}.estimate-margin-settings-heading span{color:var(--muted);font-size:.7rem}.estimate-margin-settings-heading .icon-button{width:28px;height:28px;min-height:28px}.estimate-margin-threshold-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.estimate-margin-threshold-grid>label{gap:5px;min-width:0;display:grid}.estimate-margin-threshold-grid>label>span:first-child{color:var(--muted);align-items:center;gap:5px;font-size:.64rem;font-weight:750;line-height:1.25;display:flex}.estimate-margin-threshold-grid>label>span:first-child:before{background:var(--warning-background);content:"";border-radius:50%;flex:none;width:7px;height:7px}.estimate-margin-threshold-grid>label>span.green:before{background:var(--success-background)}.estimate-margin-threshold-grid>label>span.excellent:before{background:var(--success-background);box-shadow:0 0 7px color-mix(in srgb,var(--shadow-color) 30%,transparent)}.estimate-margin-threshold-input{display:block;position:relative}.estimate-margin-threshold-input input{width:100%;min-height:36px;padding-right:28px}.estimate-margin-threshold-input small{color:var(--muted);pointer-events:none;font-size:.72rem;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.estimate-margin-range-preview{flex-wrap:wrap;gap:5px;display:flex}.estimate-margin-range-preview span{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;align-items:center;gap:4px;padding:3px 6px;font-size:.62rem;font-weight:700;display:inline-flex}.estimate-margin-range-preview span:before{background:var(--accent-soft);content:"";border-radius:50%;width:6px;height:6px}.estimate-margin-range-preview span.yellow:before{background:var(--warning-background)}.estimate-margin-range-preview span.green:before{background:var(--success-background)}.estimate-margin-range-preview span.excellent:before{background:var(--success-background);box-shadow:0 0 6px color-mix(in srgb,var(--shadow-color) 30%,transparent)}.estimate-margin-settings-error{border-left:3px solid color-mix(in srgb,var(--danger) 40%,var(--border-default));background:color-mix(in srgb, var(--danger-background) 8%, var(--surface));color:var(--danger);margin:0;padding:7px 8px;font-size:.7rem}.estimate-margin-settings-actions{justify-content:flex-end}.estimate-margin-settings-actions :is(.text-button,.primary-button){min-height:32px;padding:6px 9px;font-size:.72rem}.estimate-breakdown-list{display:grid}.estimate-breakdown-list>div{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:baseline;gap:14px;padding:7px 0;display:flex}.estimate-breakdown-list span,.estimate-profit-grid span,.estimate-key-figures span{color:var(--muted);font-size:.76rem;font-weight:700}.estimate-breakdown-list .total-row{color:var(--ink);border-bottom:0;padding-bottom:0}.estimate-breakdown-list .total-row span,.estimate-breakdown-list .total-row strong{color:inherit;font-size:.92rem}.estimate-profit-grid,.estimate-key-figures{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.estimate-profit-grid>div,.estimate-key-figures>div{gap:3px;min-width:0;padding:4px 10px 8px 0;display:grid}.estimate-profit-grid>div+div,.estimate-key-figures>div:nth-child(2n){border-left:1px solid var(--line-soft);padding-left:10px;padding-right:0}.estimate-key-figures>div:nth-child(n+3){border-top:1px solid var(--line-soft);padding-top:9px}.estimate-profit-grid strong{font-size:1.18rem}.estimate-profit-grid small{color:var(--muted);font-size:.7rem}.estimate-margin-meter{border:1px solid color-mix(in srgb, var(--muted) 18%, var(--line));background:color-mix(in srgb, var(--muted) 10%, var(--surface));border-radius:999px;height:14px;padding:2px;overflow:hidden}.estimate-margin-meter span{border-radius:inherit;background:linear-gradient(90deg, var(--accent-soft), var(--accent-soft));height:100%;box-shadow:0 0 8px color-mix(in srgb,var(--shadow-color) 30%,transparent);transition:width .24s,background-color .18s,box-shadow .18s;display:block}.estimate-margin-meter.yellow span{background:linear-gradient(90deg, var(--warning-background), var(--warning-background));box-shadow:0 0 8px color-mix(in srgb,var(--shadow-color) 30%,transparent)}.estimate-margin-meter.green span{background:linear-gradient(90deg, var(--success-background), var(--success-background));box-shadow:0 0 9px color-mix(in srgb,var(--shadow-color) 30%,transparent)}.estimate-margin-meter.excellent{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:color-mix(in srgb,var(--success-background) 13%,transparent);box-shadow:0 0 12px color-mix(in srgb,var(--shadow-color) 30%,transparent);animation:1.7s ease-in-out infinite estimate-excellent-glow}.estimate-margin-meter.excellent span{background:linear-gradient(90deg, var(--success-background), var(--success-background), var(--success-background));box-shadow:0 0 10px color-mix(in srgb,var(--shadow-color) 30%,transparent), 0 0 20px color-mix(in srgb,var(--shadow-color) 30%,transparent)}.estimate-margin-scale{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin-top:-5px;font-size:.64rem;display:flex}.estimate-margin-scale strong{color:var(--muted);font-weight:750}.estimate-margin-feedback{border-left:3px solid color-mix(in srgb,var(--danger) 40%,var(--border-default));background:color-mix(in srgb, var(--danger-background) 8%, var(--surface));border-radius:5px;gap:2px;padding:9px 10px;display:grid}.estimate-margin-feedback strong{color:var(--danger);font-size:.78rem}.estimate-margin-feedback span{color:var(--muted);font-size:.72rem;line-height:1.4}.estimate-margin-feedback.yellow{border-color:color-mix(in srgb,var(--warning) 40%,var(--border-default));background:color-mix(in srgb, var(--warning-background) 10%, var(--surface))}.estimate-margin-feedback.yellow strong{color:var(--warning)}.estimate-margin-feedback.green{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:color-mix(in srgb, var(--success-background) 9%, var(--surface))}.estimate-margin-feedback.green strong{color:var(--success)}.estimate-margin-feedback.excellent{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary);box-shadow:0 0 17px color-mix(in srgb,var(--shadow-color) 28%,transparent);position:relative;overflow:hidden}.estimate-margin-feedback.excellent:after{background:linear-gradient(90deg, transparent, color-mix(in srgb,var(--surface-primary) 88%,transparent), transparent);content:"";width:32%;animation:2.4s ease-in-out infinite estimate-excellent-sweep;position:absolute;top:0;bottom:0;left:-45%;transform:skew(-18deg)}.estimate-margin-feedback.excellent strong{color:var(--success)}@keyframes estimate-excellent-glow{50%{border-color:#50ff90eb;box-shadow:0 0 12px #19e8747a,0 0 22px #19e87438}}@keyframes estimate-excellent-sweep{0%,22%{left:-45%}78%,to{left:120%}}@media (prefers-reduced-motion:reduce){.estimate-margin-meter.excellent,.estimate-margin-feedback.excellent:after{animation:none}}.estimate-workflow-menu{width:fit-content;margin-left:auto;position:relative}.estimate-workflow-menu>summary{list-style:none}.estimate-workflow-menu>summary::-webkit-details-marker{display:none}.estimate-workflow-menu[open]>summary{border-color:var(--teal);color:var(--accent-text)}.estimate-workflow-popover{z-index:25;border:1px solid var(--line);background:var(--surface);width:238px;box-shadow:var(--shadow-raised);border-radius:7px;padding:5px;display:grid;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden}.estimate-workflow-popover :is(a,button){width:100%;min-height:38px;color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;gap:9px;padding:8px 10px;font-size:.82rem;font-weight:700;text-decoration:none;display:flex}.estimate-workflow-popover :is(a,button):hover,.estimate-workflow-popover :is(a,button):focus-visible{background:var(--surface-muted)}.estimate-row-actions{gap:7px;min-width:210px;display:grid}.estimate-title-cell{align-items:flex-start;gap:7px;min-width:170px;display:flex}.estimate-title-cell>strong{overflow-wrap:anywhere;min-width:0}.estimate-info-trigger{border:1px solid var(--line);background:var(--surface-muted);width:28px;min-width:28px;height:28px;min-height:28px;color:var(--muted);cursor:pointer;border-radius:50%;flex:0 0 28px;place-items:center;display:inline-grid}.estimate-info-trigger:hover,.estimate-info-trigger:focus-visible{border-color:var(--teal);color:var(--accent-text)}.estimate-info-backdrop{z-index:150}.estimate-info-dialog{border:1px solid var(--line);background:var(--surface);width:min(620px,100%);max-height:calc(100dvh - 40px);box-shadow:0 24px 70px color-mix(in srgb,var(--shadow-color) 28%,transparent);border-radius:8px;overflow-y:auto}.estimate-info-dialog>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 18px;display:flex}.estimate-info-dialog>header>div{min-width:0}.estimate-info-dialog>header small,.estimate-info-content section>small,.estimate-info-report small{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:800}.estimate-info-dialog h2{overflow-wrap:anywhere;margin:3px 0 0;font-size:1.08rem}.estimate-info-content{gap:16px;padding:18px;display:grid}.estimate-info-content section>p{color:var(--ink);white-space:pre-wrap;margin:8px 0 0;line-height:1.6}.estimate-info-report{border-top:1px solid var(--line);grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:11px;padding-top:14px;display:grid}.estimate-info-report>span{border:1px solid var(--line);background:var(--surface-muted);width:40px;height:44px;color:var(--accent-text);border-radius:6px;place-items:center;display:grid}.estimate-info-report>div{gap:3px;min-width:0;display:grid}.estimate-info-report strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.estimate-info-report a{border:1px solid var(--line);min-height:36px;color:var(--ink);border-radius:6px;align-items:center;gap:6px;padding:7px 10px;text-decoration:none;display:inline-flex}.estimate-info-report a:hover{border-color:var(--teal);color:var(--accent-text)}.estimate-row-action-links{flex-wrap:wrap;gap:6px;display:flex}.estimate-row-action-links a{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--ink);border-radius:7px;align-items:center;gap:6px;padding:7px 9px;font-size:.78rem;font-weight:750;text-decoration:none;display:inline-flex}.estimate-row-action-links a:hover{border-color:var(--teal);color:var(--accent-text)}.estimate-status-control{grid-template-columns:minmax(0,1fr) 36px;gap:6px;display:grid}.estimate-status-control select{border:1px solid var(--line);background:var(--surface);width:100%;min-height:36px;color:var(--ink);font:inherit;border-radius:7px;padding:6px 8px;font-size:.78rem;font-weight:700}.estimate-status-control button{border:1px solid var(--teal);background:var(--teal);width:36px;min-height:36px;color:var(--on-accent);cursor:pointer;border-radius:7px;place-items:center;display:grid}.table-wrap:has(.estimate-workflow-menu[open]){overflow:visible}.material-section{border-top:1px solid var(--line);gap:12px;margin-top:18px;padding-top:18px;display:grid}.material-mode-options{width:min(100%,440px)}.material-fixed-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:680px;display:grid}.material-lines{gap:10px;display:grid}.material-line{border:1px solid var(--line);background:var(--surface-primary);border-radius:8px;grid-template-columns:minmax(88px,.72fr) minmax(140px,1.4fr) minmax(68px,.5fr) minmax(92px,.72fr) minmax(80px,.62fr) minmax(112px,.82fr) 38px;align-items:end;gap:10px;padding:12px;display:grid}.material-line label,.material-line-total{gap:6px;min-width:0;display:grid}.material-line span,.material-line-total span{color:var(--muted);font-size:.78rem;font-weight:700}.material-line input{border:1px solid var(--border-default);background:var(--surface-primary);width:100%;min-width:0;min-height:38px;color:var(--ink);border-radius:8px;padding:8px 10px}.material-line-total{border:1px solid var(--line);background:var(--surface-primary);border-radius:8px;justify-content:center;min-height:38px;padding:8px 10px}.material-line-total strong{line-height:1}.icon-button{border:1px solid var(--line);background:var(--surface-primary);width:42px;height:38px;color:var(--muted);cursor:pointer;border-radius:8px;place-items:center;display:inline-grid}.icon-button:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent-primary) 40%,var(--border-default));color:var(--accent-text)}.icon-button:disabled{cursor:not-allowed;opacity:.35}.reservation-section{border-top:1px solid var(--line);gap:12px;margin-top:18px;padding-top:18px;display:grid}.reservation-section .panel-header{margin-bottom:0}.reservation-section .panel-header>div{gap:2px;display:grid}.reservation-section .panel-header small,.reservation-empty{color:var(--muted);font-size:.78rem}.reservation-empty{margin:0}.reservation-add-button{width:fit-content}.reservation-selected-list{gap:6px;display:grid}.reservation-selected-list>div{border:1px solid var(--line);background:var(--surface-muted);color:var(--ink);border-radius:7px;grid-template-columns:minmax(0,1fr) 32px;align-items:center;gap:8px;padding:7px 8px 7px 10px;font-size:.82rem;line-height:1.4;display:grid}.reservation-selected-list button{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.reservation-selected-list button:hover{background:var(--surface);color:var(--red)}.reservation-picker{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;gap:10px;padding:10px;display:grid}.reservation-custom-row{grid-template-columns:minmax(0,1fr) 42px;gap:8px;display:grid}.reservation-custom-row input{border:1px solid var(--border-default);background:var(--surface);width:100%;min-height:40px;color:var(--ink);font:inherit;border-radius:8px;padding:8px 10px}.reservation-custom-row .primary-button{min-width:42px;padding:0}.reservation-list{gap:8px;display:grid}.reservation-option{border:1px solid var(--line);background:var(--surface-primary);color:var(--text-primary);border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;line-height:1.45;display:flex}.reservation-option input{width:18px;height:18px;accent-color:var(--teal);flex:none;margin-top:2px}.panel-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.panel-header h2,.form-panel h2,.form-title h2{margin:0;font-size:1rem;line-height:1.3}.panel-header small{color:var(--muted)}.list{gap:0;display:grid}.list-item{border-bottom:1px solid var(--line);gap:6px;padding:11px 0;display:grid}.list-item:first-child{padding-top:3px}.list-item:last-child{border-bottom:0;padding-bottom:2px}.list-item strong{line-height:1.3}.meta-row{color:var(--muted);flex-wrap:wrap;gap:8px 14px;font-size:.84rem;display:flex}.quick-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.quick-actions>span{color:var(--muted);flex:150px;font-size:.88rem}.status-badge{border-radius:999px;align-items:center;width:fit-content;min-height:24px;padding:3px 9px;font-size:.78rem;font-weight:700;display:inline-flex}.status-badge.green{background:var(--surface-secondary);color:var(--green)}.status-badge.amber{background:var(--warning-background);color:var(--amber)}.status-badge.red{background:var(--surface-primary);color:var(--red)}.status-badge.blue{background:var(--surface-primary);color:var(--blue)}.table-wrap{border:1px solid var(--line);background:var(--surface-primary);border-radius:6px;width:100%;max-width:100%;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:720px}.data-table.xl-table{min-width:1360px}.data-table th,.data-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:11px 12px}.data-table th{z-index:1;background:var(--surface-primary);color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:800;position:sticky;top:0}.data-table tbody tr{transition:background .12s}.data-table tbody tr:hover{background:var(--surface-primary)}.data-table tr:last-child td{border-bottom:0}.inline-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inline-form select,.inline-form input,.danger-form input{border:1px solid var(--border-default);background:var(--surface-primary);min-height:38px;color:var(--ink);border-radius:8px;padding:8px 10px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.form-grid>.span-2{grid-column:1/-1}.field{gap:6px;display:grid}.field.span-2{grid-column:1/-1}.field span{color:var(--text-primary);font-size:.8rem;font-weight:750}.field input,.field select,.field textarea{border:1px solid var(--border-default);background:var(--surface-primary);width:100%;min-height:43px;color:var(--ink);border-radius:6px;padding:9px 11px;transition:border-color .14s,box-shadow .14s,background .14s}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--border-default)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--shadow-color) 10%,transparent);outline:0}.field input[type=checkbox]{width:20px;min-height:20px;accent-color:var(--teal)}.field textarea{resize:vertical;min-height:88px}.primary-button,.ghost-button,.text-button,.danger-button{cursor:pointer;border:0;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:42px;font-size:.88rem;font-weight:750;transition:background .14s,border-color .14s,color .14s,box-shadow .14s;display:inline-flex}.primary-button{background:var(--teal);color:var(--on-accent);box-shadow:0 1px 2px color-mix(in srgb,var(--shadow-color) 18%,transparent);padding:0 16px}.primary-button:hover{background:var(--teal-strong)}.primary-button:disabled{cursor:not-allowed;opacity:.55}.ghost-button{border:1px solid var(--line);background:var(--surface-primary);color:var(--ink);padding:0 12px}.ghost-button:hover{border-color:var(--border-default);background:var(--surface-primary)}.text-button{color:var(--accent-text);background:0 0;padding:0}.text-button:hover{color:var(--accent-text)}.danger-panel{border:1px solid color-mix(in srgb,var(--danger) 40%,var(--border-default));background:var(--surface-primary);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.danger-panel h2{margin:0 0 6px;font-size:1.05rem}.danger-panel p{max-width:760px;color:var(--muted);margin:0;line-height:1.5}.danger-form{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:8px;display:flex}.danger-button{background:var(--red);color:var(--text-primary);border:0;padding:0 14px}.danger-button:hover{background:var(--danger-background)}.contract-control-list{gap:14px;display:grid}.contract-control-row{border:1px solid var(--line);background:var(--surface-primary);border-radius:8px;gap:14px;padding:16px;display:grid}.contract-control-row.selected{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary)}.contract-control-toggle{color:var(--ink);align-items:center;gap:10px;font-weight:700;display:flex}.contract-control-toggle input{width:22px;height:22px;accent-color:var(--teal)}.contract-control-row-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.copy-control-button{border:1px solid var(--border-default);background:var(--surface-primary);min-height:36px;color:var(--accent-text);border-radius:6px;align-items:center;gap:7px;padding:7px 10px;font-size:.78rem;font-weight:750;display:inline-flex}.copy-control-button:hover{border-color:var(--teal);background:var(--surface-primary)}.contract-control-fields{grid-template-columns:repeat(2,minmax(180px,1fr));gap:14px;display:grid}.contract-control-fields label{gap:6px;display:grid}.contract-control-fields span{color:var(--muted);font-size:.78rem;font-weight:700}.contract-control-fields input,.contract-control-fields select{border:1px solid var(--border-default);background:var(--surface-primary);width:100%;min-height:50px;color:var(--ink);border-radius:8px;padding:10px 12px}.contract-control-fields input[type=date]{font-size:1rem;font-weight:700}.contract-control-fields label small{color:var(--muted);font-size:.72rem;line-height:1.35}.contract-alert-preview{border-left:3px solid var(--teal);background:var(--surface-secondary);color:var(--success);align-items:center;gap:8px;padding:10px 12px;display:flex}.money-input{position:relative}.money-input input{width:100%;padding-right:48px}.money-input>span{color:var(--muted);pointer-events:none;font-size:.82rem;font-weight:750;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.money-input.wide-suffix input{padding-right:78px}.contract-control-fields input:disabled,.contract-control-fields select:disabled{background:var(--surface-primary);color:var(--text-muted)}.contract-control-picker{border:1px solid var(--line);background:var(--surface-primary);border-radius:8px;gap:10px;padding:12px;display:grid}.contract-control-picker-header,.contract-control-picker-header>div{align-items:center;display:flex}.contract-control-picker-header{justify-content:space-between;gap:14px}.contract-control-picker-header>div{gap:10px;min-width:0}.contract-control-picker-header>div>div{gap:2px;min-width:0;display:grid}.contract-control-picker-header small{color:var(--muted);font-size:.76rem}.contract-control-picker-icon{background:var(--surface-primary);width:34px;height:34px;color:var(--accent-text);border-radius:6px;flex:none;place-items:center;display:grid}.contract-control-selected-list{gap:7px;display:grid}.contract-control-compact{border:1px solid var(--line);background:var(--surface-primary);border-radius:8px;overflow:hidden}.contract-control-compact>header{grid-template-columns:minmax(0,1fr) 36px;align-items:center;gap:6px;padding:6px;display:grid}.contract-control-summary-button{min-width:0;min-height:48px;color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:5px 7px;display:flex}.contract-control-summary-button>span{gap:2px;min-width:0;display:grid}.contract-control-summary-button small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;overflow:hidden}.contract-control-summary-button>svg{color:var(--muted);flex:none;transition:transform .15s}.contract-control-summary-button>svg.expanded{transform:rotate(180deg)}.contract-control-compact>header>.icon-button{width:34px;height:34px;color:var(--red)}.contract-control-compact-content{border-top:1px solid var(--line);background:var(--surface-primary);gap:10px;padding:12px;display:grid}.contract-control-compact-content[hidden]{display:none}.contract-control-fields.compact{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:9px}.contract-control-fields.compact input,.contract-control-fields.compact select{border-radius:6px;min-height:42px;padding:7px 9px}.contract-control-fields.compact input[type=date]{font-size:.88rem}.compact-alert-days{position:relative}.compact-alert-days input{padding-right:52px}.compact-alert-days>span{pointer-events:none;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.contract-control-empty{border-top:1px solid var(--line-soft);color:var(--muted);padding:10px 2px 2px;font-size:.8rem}.contract-type-backdrop{z-index:150}.contract-type-modal{width:min(760px,100%)}.contract-type-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.contract-type-options label{border:1px solid var(--line);background:var(--surface-primary);cursor:pointer;border-radius:8px;grid-template-columns:20px minmax(0,1fr) 18px;align-items:start;gap:10px;padding:12px;display:grid}.contract-type-options label:has(input:checked){border-color:color-mix(in srgb,var(--accent-primary) 40%,var(--border-default));background:var(--surface-primary);box-shadow:inset 3px 0 0 var(--teal)}.contract-type-options input{width:19px;height:19px;accent-color:var(--teal);margin:1px 0 0}.contract-type-options label>span{gap:3px;min-width:0;display:grid}.contract-type-options small{color:var(--muted);font-size:.72rem}.contract-type-options label>svg{color:var(--accent-text)}.contract-offer-prefill-notice,.offer-conversion-hint{border:1px solid color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary);color:var(--success);border-radius:8px;align-items:flex-start;gap:10px;padding:11px 12px;display:flex}.contract-offer-prefill-notice>div{gap:2px;display:grid}.contract-offer-prefill-notice small{color:var(--success)}.offer-conversion-hint{margin-bottom:12px;font-size:.8rem}.offer-conversion-hint span{gap:2px;display:grid}.offer-to-contract-button{border:1px solid color-mix(in srgb,var(--accent-primary) 40%,var(--border-default));background:var(--surface-primary);min-height:34px;color:var(--accent-text);white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:6px 9px;font-size:.75rem;font-weight:750;display:inline-flex}.offer-to-contract-button:hover{border-color:var(--teal);background:var(--surface-primary)}.contracts-workspace{gap:14px;display:grid}.contracts-page-stack{max-width:1800px}.contracts-workspace .data-table.xl-table{table-layout:fixed;min-width:1500px}.contracts-workspace .data-table :is(th,td){padding:9px 8px}.contracts-workspace .data-table td{overflow-wrap:anywhere;font-size:.8rem}.contracts-workspace .data-table th:first-child{width:6.5%}.contracts-workspace .data-table th:nth-child(2){width:8%}.contracts-workspace .data-table th:nth-child(3){width:6.5%}.contracts-workspace .data-table th:nth-child(4){width:12%}.contracts-workspace .data-table th:nth-child(5){width:5%}.contracts-workspace .data-table th:nth-child(6){width:6.5%}.contracts-workspace .data-table th:nth-child(7),.contracts-workspace .data-table th:nth-child(8){width:7%}.contracts-workspace .data-table th:nth-child(9){width:10%}.contracts-workspace .data-table th:nth-child(10),.contracts-workspace .data-table th:nth-child(11){width:5%}.contracts-workspace .data-table th:nth-child(12){width:9%}.contracts-workspace .data-table th:nth-child(13){width:7%}.contracts-workspace .data-table th:nth-child(14){width:5.5%}.contracts-workspace :is(.contract-building-trigger,.contract-report-trigger,.contract-document-trigger,.contract-edit-button){width:100%;min-width:0}.contracts-workspace :is(.contract-building-trigger,.contract-report-trigger,.contract-document-trigger){padding-right:7px}.contracts-workspace :is(.contract-building-trigger strong,.contract-report-trigger strong,.contract-document-trigger strong){font-size:.76rem}.contracts-workspace :is(.contract-building-trigger small,.contract-report-trigger small,.contract-document-trigger small){overflow-wrap:anywhere;white-space:normal;font-size:.69rem}.contract-form-launcher{order:-1;justify-content:flex-end;display:flex}.records-workspace{gap:14px;display:grid}.record-form-launcher{justify-content:flex-end;display:flex}.record-new-trigger{min-width:148px;min-height:40px}.record-form-backdrop,.estimate-form-backdrop{z-index:120;overflow-y:auto}.record-form-dialog{overscroll-behavior:contain;width:min(760px,100%);max-height:calc(100vh - 40px);box-shadow:0 28px 80px color-mix(in srgb,var(--shadow-color) 30%,transparent);gap:16px;display:grid;overflow-y:auto}.record-form-header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.record-form-header>div{min-width:0}.record-form-header small{color:var(--accent-text);text-transform:uppercase;font-size:.72rem;font-weight:800}.record-form-header h2{margin:3px 0 0;font-size:1.12rem}.record-form-header p{color:var(--muted);margin:5px 0 0;font-size:.84rem}.dialog-header-actions{flex:none;align-items:center;gap:8px;display:flex}.dialog-quick-save{min-width:104px;min-height:40px}.record-form-dialog>.record-form-header{z-index:20;border-bottom:1px solid var(--line);background:var(--surface);margin:-17px -17px 0;padding:17px;position:sticky;top:-17px}.record-form-grid{gap:12px}.record-form-grid>.field input,.record-form-grid>.field select{min-height:46px}.record-form-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;padding-top:14px;display:flex}.record-row-actions{flex-wrap:wrap;gap:7px;min-width:max-content;display:flex}.compact-button{white-space:nowrap;min-height:34px;padding:7px 10px}.estimate-form-dialog{overscroll-behavior:contain;border:1px solid var(--line);background:var(--bg);width:min(1540px,100%);max-height:calc(100vh - 40px);box-shadow:0 28px 80px color-mix(in srgb,var(--shadow-color) 30%,transparent);border-radius:8px;overflow-y:auto}.estimate-dialog-header{z-index:50;border-bottom:1px solid var(--line);background:var(--surface);padding:15px 18px;position:sticky;top:0}.estimate-dialog-body{padding:16px}.estimate-form-dialog .estimate-summary{top:84px}.estimate-source-report{border:1px solid var(--border-default);border-left:4px solid var(--teal);background:var(--surface-primary);border-radius:7px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 12px;display:grid}.estimate-source-report-icon{background:var(--surface-secondary);width:42px;height:42px;color:var(--accent-text);border-radius:6px;place-items:center;display:grid}.estimate-source-report>div{gap:2px;min-width:0;display:grid}.estimate-source-report small{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:800}.estimate-source-report strong,.estimate-source-report>div>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.estimate-source-report strong{font-size:.84rem}.estimate-source-report>div>span{color:var(--muted);font-size:.74rem}.estimate-source-report>a{border:1px solid var(--border-default);background:var(--surface);min-height:36px;color:var(--accent-text);border-radius:6px;align-items:center;gap:6px;padding:7px 10px;text-decoration:none;display:inline-flex}.contract-new-trigger{min-width:148px;min-height:40px}.contract-form-backdrop{z-index:120;overflow-y:auto}.contract-form{gap:14px}.contract-form-dialog{overscroll-behavior:contain;width:min(860px,100%);max-height:calc(100vh - 40px);box-shadow:0 28px 80px color-mix(in srgb,var(--shadow-color) 30%,transparent);overflow-y:auto}.contract-form-dialog>.panel-header{z-index:8;border-bottom:1px solid var(--line);background:var(--surface);margin:-17px -17px 14px;padding:17px;position:sticky;top:0}.contract-building-backdrop{z-index:170}.contract-form-grid{gap:12px}.contract-form-grid>.field input,.contract-form-grid>.field select{min-height:48px}.contract-date-section,.contract-finance-section,.contract-buildings-section,.contract-email-panel{grid-column:1/-1}.customer-building-section,.contract-buildings-section{border:1px solid var(--line);background:var(--surface-primary);border-radius:8px;gap:14px;padding:16px;display:grid}.customer-building-section{margin-top:4px}.customer-edit-form{scroll-margin-top:18px}.customer-edit-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}#new-building{scroll-margin-top:18px}.contract-building-list{gap:8px;display:grid}.contract-building-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.contract-building-heading .ghost-button{flex:none}.contract-building-heading .ghost-button:disabled{cursor:not-allowed;opacity:.5}.contract-building-modal{width:min(740px,100%)}.contract-building-row{border:1px solid var(--line);background:var(--surface-primary);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(150px,220px);align-items:center;gap:14px;padding:12px;display:grid}.contract-building-row.selected{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));box-shadow:inset 3px 0 color-mix(in srgb,var(--shadow-color) 30%,transparent)}.contract-building-choice{cursor:pointer;align-items:flex-start;gap:10px;min-width:0;display:flex}.contract-building-choice input{width:20px;height:20px;accent-color:var(--teal);flex:none;margin-top:2px}.contract-building-choice span,.automatic-customer-recipient span{gap:3px;min-width:0;display:grid}.contract-building-choice small,.automatic-customer-recipient small{overflow-wrap:anywhere;color:var(--muted)}.contract-building-price input{min-width:0}.contract-building-price input:disabled{background:var(--surface-secondary);color:var(--text-muted)}.contract-building-total{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;padding-top:12px;display:flex}.contract-building-total strong{color:var(--success);font-size:1.2rem}.contract-cycle-planner{border:1px solid var(--line);background:var(--surface-primary);border-radius:8px;grid-column:1/-1;gap:14px;padding:16px;display:grid}.contract-cycle-header,.contract-cycle-year-heading,.contract-cycle-buildings-heading,.contract-cycle-buildings-heading>div{justify-content:space-between;align-items:center;gap:14px;display:flex}.contract-cycle-header>.field{flex:none;width:min(190px,100%)}.contract-cycle-summary{border:1px solid var(--line);background:var(--surface-primary);border-radius:7px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.contract-cycle-summary>div{border-right:1px solid var(--line);gap:3px;padding:12px 14px;display:grid}.contract-cycle-summary>div:last-child{border-right:0}.contract-cycle-summary span,.contract-cycle-summary small,.contract-cycle-year-heading small,.contract-cycle-buildings-heading small{color:var(--muted);font-size:.78rem}.contract-cycle-summary strong{font-size:1rem}.contract-cycle-tabs{border-bottom:1px solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;overflow-x:auto}.contract-cycle-tabs button{min-width:104px;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:3px solid #0000;gap:2px;padding:9px 10px 8px;display:grid}.contract-cycle-tabs button:hover,.contract-cycle-tabs button.active{background:var(--surface-primary);color:var(--ink)}.contract-cycle-tabs button.active{border-bottom-color:var(--accent-primary)}.contract-cycle-tabs button span{font-weight:750}.contract-cycle-tabs button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contract-cycle-year-panel{gap:14px;display:grid}.contract-cycle-year-heading>div,.contract-cycle-buildings-heading>div>div{gap:3px;display:grid}.contract-cycle-year-heading>svg{color:var(--text-muted);flex:none}.contract-cycle-year-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.contract-cycle-year-fields textarea{min-height:74px}.contract-cycle-buildings-heading{border-top:1px solid var(--line);padding-top:13px}.contract-cycle-buildings-heading>div>svg{color:var(--accent-text)}.contract-cycle-building-picker{border:1px solid var(--line);background:var(--surface-primary);border-radius:7px}.contract-cycle-building-picker summary{cursor:pointer;padding:11px 13px;font-weight:750}.contract-cycle-building-picker>div{border-top:1px solid var(--line);gap:0;max-height:250px;padding:5px;display:grid;overflow-y:auto}.contract-cycle-building-picker-row{grid-template-columns:minmax(0,1fr) 38px;align-items:center;gap:4px;display:grid}.contract-cycle-building-picker label{cursor:pointer;border-radius:6px;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;padding:9px;display:grid}.contract-cycle-building-picker label:hover{background:var(--surface-primary)}.contract-cycle-building-picker input{width:18px;height:18px;accent-color:var(--teal);margin-top:2px}.contract-cycle-building-picker label span,.contract-cycle-building-row>div:first-child{gap:2px;min-width:0;display:grid}.contract-cycle-building-picker label small,.contract-cycle-building-row small{overflow-wrap:anywhere;color:var(--muted)}.contract-cycle-selected-buildings{gap:8px;display:grid}.contract-cycle-building-row{border:1px solid var(--line);background:var(--surface-primary);border-radius:7px;grid-template-columns:minmax(180px,1fr) minmax(145px,190px) 110px 78px;align-items:end;gap:10px;padding:11px;display:grid}.contract-cycle-building-actions{align-items:center;gap:4px;display:flex}.contract-cycle-allocation{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px 14px;padding:2px 3px 0;font-size:.8rem;display:flex}.contract-cycle-allocation .warning{color:var(--warning);font-weight:700}.contract-cycle-control-note{color:var(--muted);margin-top:8px;line-height:1.45;display:block}.single-date{grid-template-columns:minmax(0,1fr)}.contract-date-section,.contract-finance-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface-primary);grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px;display:grid}.contract-finance-section{background:var(--surface-primary);border-top:0}.contract-section-heading{color:var(--accent-text);grid-column:1/-1;align-items:center;gap:10px;display:flex}.contract-section-heading div{gap:2px;display:grid}.contract-section-heading small,.contract-file-field small{color:var(--muted);line-height:1.4}.contract-date-section input[type=date]{background:var(--surface-primary);min-height:60px;padding:12px 14px;font-size:1.05rem;font-weight:750}.contract-document-list,.contract-document-links,.contract-upload-list{gap:9px;display:grid}.contract-document-trigger{min-width:148px;min-height:50px;color:var(--ink);cursor:pointer;text-align:left;background:#fff;border:1px solid #c8d3cf;border-radius:7px;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;padding:7px 10px 7px 7px;transition:border-color .14s,background .14s,box-shadow .14s;display:inline-grid}.contract-document-trigger:hover{background:#f5faf8;border-color:#87aa9e;box-shadow:0 2px 8px #14463614}.contract-document-trigger-icon{color:#155b48;background:#e9f3ef;border-radius:6px;place-items:center;width:36px;height:36px;display:grid}.contract-document-trigger>span:last-child{gap:2px;min-width:0;display:grid}.contract-document-trigger small,.contract-document-empty{color:var(--muted);font-size:.78rem}.contract-building-trigger{border:1px solid var(--border-default);background:var(--surface-primary);min-width:196px;min-height:54px;color:var(--ink);cursor:pointer;text-align:left;border-radius:7px;grid-template-columns:38px minmax(0,1fr) 16px;align-items:center;gap:9px;padding:7px 9px 7px 7px;transition:border-color .14s,background .14s,box-shadow .14s;display:inline-grid}.contract-building-trigger:hover{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary);box-shadow:0 2px 8px color-mix(in srgb,var(--shadow-color) 8%,transparent)}.contract-building-trigger-icon{background:var(--surface-secondary);width:38px;height:38px;color:var(--success);border-radius:6px;place-items:center;display:grid}.contract-building-trigger>span:nth-child(2){gap:2px;min-width:0;display:grid}.contract-building-trigger small,.contract-building-empty{color:var(--muted);font-size:.76rem}.contract-building-trigger>svg{color:var(--text-muted)}.contract-building-details-backdrop{padding:24px}.contract-building-details-modal{border:1px solid var(--line);background:var(--surface);width:min(1080px,100%);height:min(720px,100vh - 48px);box-shadow:0 28px 80px color-mix(in srgb,var(--shadow-color) 30%,transparent);border-radius:8px;grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}.contract-building-details-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;min-width:0;padding:16px 18px;display:flex}.contract-building-details-header>div{min-width:0}.contract-building-details-header span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:800}.contract-building-details-header h2{text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:1.08rem;overflow:hidden}.contract-building-details-body{grid-template-columns:minmax(250px,320px) minmax(0,1fr);min-height:0;display:grid}.contract-building-tabs{border-right:1px solid var(--line);background:var(--surface-primary);align-content:start;gap:7px;padding:12px;display:grid;overflow-y:auto}.contract-building-tabs button{width:100%;min-height:66px;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:38px minmax(0,1fr) 16px;align-items:center;gap:9px;padding:9px;display:grid}.contract-building-tabs button:hover,.contract-building-tabs button.active{border-color:var(--border-default);background:var(--surface-primary)}.contract-building-tabs button.active{box-shadow:inset 3px 0 color-mix(in srgb,var(--shadow-color) 30%,transparent)}.building-tab-icon{background:var(--surface-secondary);width:38px;height:38px;color:var(--success);border-radius:6px;place-items:center;display:grid}.contract-building-tabs button>span:nth-child(2){gap:3px;min-width:0;display:grid}.contract-building-tabs button strong,.contract-building-tabs button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contract-building-tabs button strong{font-size:.85rem}.contract-building-tabs button small{color:var(--muted);font-size:.74rem}.contract-building-tabs button>svg{color:var(--text-muted)}.contract-building-detail{align-content:start;gap:18px;min-width:0;min-height:0;padding:18px;display:grid;overflow-y:auto}.contract-building-detail-summary{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding-bottom:16px;display:flex}.contract-building-detail-summary>div:first-child{align-items:center;gap:12px;min-width:0;display:flex}.building-detail-icon{background:var(--surface-secondary);width:48px;height:48px;color:var(--success);border-radius:7px;flex:none;place-items:center;display:grid}.contract-building-detail-summary h3{margin:0 0 4px;font-size:1.05rem}.contract-building-detail-summary p{color:var(--muted);margin:0;line-height:1.4}.building-detail-price{text-align:right;flex:none;gap:3px;display:grid}.building-detail-price span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:750}.building-detail-price strong{color:var(--success);font-size:1.15rem}.contract-building-controls-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.contract-building-controls-heading>div{color:var(--success);align-items:center;gap:8px;display:flex}.contract-building-controls-heading>span{border:1px solid var(--border-default);background:var(--surface-primary);color:var(--muted);border-radius:5px;padding:4px 7px;font-size:.75rem;font-weight:750}.contract-building-control-list{gap:9px;display:grid}.contract-building-control-list article{border:1px solid var(--line);background:var(--surface-primary);border-radius:7px;gap:10px;padding:13px;display:grid}.contract-building-control-title{align-items:center;gap:10px;min-width:0;display:flex}.contract-building-control-title>span{background:var(--surface-primary);width:34px;height:34px;color:var(--success);border-radius:6px;flex:none;place-items:center;display:grid}.contract-building-control-title>div{gap:2px;min-width:0;display:grid}.contract-building-control-title small{color:var(--muted);font-size:.77rem}.contract-building-control-meta{border-top:1px solid var(--border-default);color:var(--muted);gap:6px;padding-top:9px;font-size:.8rem;display:grid}.contract-building-control-meta span{align-items:center;gap:7px;display:flex}.contract-building-control-meta svg{color:var(--text-muted);flex:none}.contract-pdf-backdrop{padding:24px}.contract-pdf-modal{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-rows:auto minmax(0,1fr);width:min(1180px,100%);height:min(790px,100vh - 48px);display:grid;overflow:hidden;box-shadow:0 28px 80px #0918124d}.contract-pdf-modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;min-width:0;padding:16px 18px;display:flex}.contract-pdf-modal-header>div{min-width:0}.contract-pdf-modal-header span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:800}.contract-pdf-modal-header h2{text-overflow:ellipsis;white-space:nowrap;margin:3px 0 0;font-size:1.08rem;overflow:hidden}.contract-pdf-modal-body{grid-template-columns:minmax(220px,300px) minmax(0,1fr);min-height:0;display:grid}.contract-pdf-list{border-right:1px solid var(--line);background:#f5f8f7;align-content:start;gap:7px;padding:12px;display:grid;overflow-y:auto}.contract-pdf-list button{width:100%;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:10px;padding:9px;display:grid}.contract-pdf-list button:hover,.contract-pdf-list button.active{background:#fff;border-color:#b9cdc6}.contract-pdf-list button.active{box-shadow:inset 3px 0 #16745c}.contract-pdf-list button>span:last-child{gap:3px;min-width:0;display:grid}.contract-pdf-list button strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.contract-pdf-list button small{color:var(--muted);font-size:.74rem}.pdf-file-mark{color:#555f5b;background:#fff;border:1px solid #d7ddda;border-radius:5px;place-items:center;width:46px;height:54px;display:grid;position:relative}.pdf-file-mark small{font-weight:850;position:absolute;bottom:3px;right:4px;color:var(--red)!important;font-size:.58rem!important}.contract-pdf-preview{background:#e9eeec;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid}.contract-pdf-preview-bar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:10px 12px;display:flex}.contract-pdf-preview-bar strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.contract-pdf-preview iframe{background:#fff;border:0;width:100%;height:100%;min-height:0}.contract-edit-button{min-width:96px}.customer-delete-button{border-color:color-mix(in srgb,var(--warning) 40%,var(--border-default));color:var(--danger)}.customer-delete-button:hover{border-color:color-mix(in srgb,var(--danger) 40%,var(--border-default));background:var(--surface-primary)}.customer-delete-confirmation{scroll-margin-top:18px}.contract-document-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.contract-document-heading>div,.contract-document-item>div,.contract-upload-row>div{gap:3px;min-width:0;display:grid}.contract-document-heading>strong{color:#155b48;background:#edf8f4;border:1px solid #a9c7bd;border-radius:6px;flex:none;padding:5px 8px;font-size:.82rem}.contract-document-item,.contract-upload-row{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:20px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:12px;display:grid}.contract-document-item>svg,.contract-upload-row>svg{color:var(--accent-text)}.contract-document-item>div strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contract-document-item>div small,.pdf-row-status{color:var(--muted);font-size:.8rem}.remove-document-toggle{color:var(--red);cursor:pointer;align-items:center;gap:6px;font-size:.82rem;font-weight:700;display:flex}.remove-document-toggle input{width:18px;height:18px;accent-color:var(--red)}.contract-upload-row{background:var(--surface-primary);border-style:dashed}.contract-upload-row:focus-within{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary)}.contract-upload-row input[type=file]{width:100%;min-height:44px;padding:7px 8px}.add-pdf-button{justify-self:start}.contract-controls-section{border-top:1px solid var(--line);gap:10px;padding-top:18px}.contract-email-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface-primary);gap:18px;padding:18px;display:grid}.contract-email-panel.active{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary)}.contract-email-header,.contract-email-title,.switch-control,.attachment-option{align-items:center;display:flex}.contract-email-header{justify-content:space-between;gap:16px}.contract-email-title{color:var(--accent-text);gap:10px}.contract-email-title>div,.attachment-option>span{gap:3px;display:grid}.contract-email-title small,.attachment-option small{color:var(--muted)}.switch-control{cursor:pointer;gap:8px;font-weight:750}.switch-control input{appearance:none;border:1px solid var(--border-default);background:var(--surface-secondary);cursor:pointer;border-radius:999px;width:44px;height:24px;position:relative}.switch-control input:after{background:var(--surface-primary);width:16px;height:16px;box-shadow:0 1px 4px color-mix(in srgb,var(--shadow-color) 22%,transparent);content:"";border-radius:50%;transition:transform .16s;position:absolute;top:3px;left:3px}.switch-control input:checked{border-color:var(--teal);background:var(--teal)}.switch-control input:checked:after{transform:translate(20px)}.contract-email-content{gap:18px;display:grid}.contract-recipient-section,.contract-template-section{gap:14px;display:grid}.contract-recipient-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.contract-recipient-options.single-option{grid-template-columns:minmax(0,1fr)}.automatic-customer-recipient{border:1px solid color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary);color:var(--success);border-radius:8px;align-items:flex-start;gap:10px;padding:12px;display:flex}.contract-recipient-options>label,.attachment-option{border:1px solid var(--line);background:var(--surface-primary);cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;padding:12px;display:flex}.contract-recipient-options input,.attachment-option input{width:20px;height:20px;accent-color:var(--teal);flex:none;margin-top:1px}.contract-recipient-options label>span{gap:3px;min-width:0;display:grid}.contract-recipient-options small{overflow-wrap:anywhere;color:var(--muted)}.additional-recipients{gap:9px;display:grid}.additional-recipients .panel-header{margin-bottom:0}.additional-recipient-row{grid-template-columns:20px minmax(0,1fr) 42px;align-items:center;gap:9px;display:grid}.additional-recipient-row>svg{color:var(--muted)}.additional-recipient-row input{border:1px solid var(--border-default);background:var(--surface-primary);min-height:42px;color:var(--ink);border-radius:8px;padding:9px 11px}.contract-template-section textarea{min-height:420px;line-height:1.55}.contract-email-subject-preview{border-left:3px solid var(--teal);background:var(--surface);gap:3px;padding:10px 12px;display:grid}.contract-email-subject-preview>span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:800}.contract-email-subject-preview small{color:var(--muted)}.template-variables{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;font-size:.78rem;display:flex}.template-variables code{border:1px solid var(--line);background:var(--surface-primary);color:var(--success);border-radius:6px;padding:4px 6px}.contract-submit,.contract-form-actions{grid-column:1/-1;justify-self:end}.contract-form-actions{align-items:center;gap:10px;display:flex}.contract-submit{min-width:190px}.contract-control-summary{gap:8px;min-width:260px;display:grid}.contract-control-summary div{gap:2px;display:grid}.contract-control-summary span{color:var(--muted);font-size:.82rem}.contract-finance-summary{gap:2px;min-width:190px;display:grid}.contract-finance-summary span{color:var(--muted);font-size:.8rem}.contract-building-summary{gap:8px;min-width:210px;display:grid}.contract-building-summary>div{border-bottom:1px solid var(--line);gap:2px;padding-bottom:7px;display:grid}.contract-building-summary>div:last-child{border-bottom:0;padding-bottom:0}.contract-building-summary span{color:var(--muted);font-size:.82rem}.contract-document-links .text-button{text-overflow:ellipsis;white-space:nowrap;justify-content:flex-start;max-width:230px;overflow:hidden}.full-width{width:100%}.notice{border-radius:6px;padding:12px;font-size:.92rem}.notice.warning{background:var(--warning-background);color:var(--warning)}.notice.error{background:var(--surface-primary);color:var(--red)}.notice.success{background:var(--surface-secondary);color:var(--green)}.notice-panel{border:1px solid color-mix(in srgb,var(--warning) 40%,var(--border-default));background:var(--surface-primary);color:var(--warning);border-radius:8px;gap:4px;padding:14px 16px;display:grid}.notice-panel span{line-height:1.45}.empty-state{border:1px dashed var(--border-default);background:var(--surface-primary);color:var(--muted);border-radius:6px;margin:0;padding:16px}.loading-stack{gap:16px;max-width:1420px;margin:0 auto;display:grid}.loading-header,.skeleton-card,.skeleton-panel{border:1px solid var(--line);background:linear-gradient(90deg, transparent, color-mix(in srgb,var(--surface-primary) 72%,transparent), transparent), var(--surface-secondary);background-size:220px 100%;border-radius:8px;animation:1.1s linear infinite loading-shimmer;overflow:hidden}.loading-header{background-color:var(--surface-secondary);border:0;width:min(360px,70%);height:58px}.loading-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.skeleton-card{min-height:132px}.skeleton-panel{min-height:280px}@keyframes loading-shimmer{0%{background-position:-220px 0}to{background-position:calc(100% + 220px) 0}}.login-page,.setup-page,.error-page{place-items:center;min-height:100vh;padding:24px;display:grid}.login-page{background:var(--bg)}.login-panel{border:1px solid var(--line);background:var(--surface);width:min(440px,100%);box-shadow:var(--shadow-raised);border-radius:8px;grid-template-columns:1fr;display:grid;overflow:hidden}.login-header{border-top:4px solid var(--teal);gap:26px;padding:30px 34px 20px;display:grid}.login-brand{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding-bottom:22px;display:flex}.login-brand img{width:180px;height:auto}.login-brand span{color:var(--accent-text);letter-spacing:0;text-rendering:geometricprecision;-webkit-font-smoothing:antialiased;text-align:right;white-space:nowrap;font-family:Segoe UI Variable Text,Segoe UI,Arial,sans-serif;font-size:.78rem;font-style:normal;font-weight:750;line-height:1.3}.login-heading{gap:6px;display:grid}.login-heading h1{letter-spacing:0;margin:0;font-size:1.75rem;line-height:1.2}.login-heading p{color:var(--muted);margin:0;font-size:.94rem}.login-icon{background:var(--ink);width:48px;height:48px;color:var(--text-primary);border-radius:8px;place-items:center;display:grid}.login-form{gap:16px;padding:4px 34px 30px;display:grid}.login-form .primary-button{justify-content:center;width:100%;min-height:46px;margin-top:2px}.login-footnote{color:var(--muted);text-align:center;margin:2px 0 0;font-size:.75rem}.form-title{align-items:center;gap:10px;display:flex}.setup-panel,.error-panel{border:1px solid var(--line);background:var(--surface-primary);width:min(720px,100%);box-shadow:var(--shadow);border-radius:8px;padding:clamp(24px,5vw,44px)}.setup-panel h1,.error-panel h1{margin:0 0 12px;font-size:clamp(1.8rem,4vw,3.2rem)}.setup-panel p,.error-panel p{color:var(--muted);margin:0;line-height:1.65}.error-panel{gap:16px;display:grid}.calendar-grid{border:1px solid var(--line);background:var(--line);border-radius:8px;grid-template-columns:repeat(7,minmax(120px,1fr));gap:1px;display:grid;overflow:hidden}.calendar-head,.calendar-day{background:var(--surface-primary);min-height:128px;padding:10px}.calendar-head{min-height:42px;color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:700}.calendar-day.muted{background:var(--surface-primary);color:var(--text-muted)}.calendar-date{font-weight:800}.calendar-events{gap:5px;margin-top:8px;display:grid}.calendar-event{background:var(--surface-secondary);color:var(--success);text-overflow:ellipsis;white-space:nowrap;border-radius:6px;padding:5px 7px;font-size:.78rem;overflow:hidden}.calendar-event.estimate{background:var(--warning-background);color:var(--warning)}.calendar-event.control{background:var(--surface-secondary);color:var(--success)}.calendar-event.contract{background:var(--surface-primary);color:var(--info)}.month-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.month-block{border:1px solid var(--line);background:var(--surface-primary);border-radius:8px;padding:14px}.month-block h3{text-transform:capitalize;margin:0 0 10px}.customer-page-toolbar{border:1px solid var(--line);border-left:4px solid var(--teal);background:var(--surface);min-height:66px;box-shadow:var(--shadow);border-radius:7px;justify-content:space-between;align-items:center;gap:18px;padding:13px 16px;display:flex}.customer-page-toolbar>div{gap:2px;display:grid}.customer-page-toolbar>div>span{color:var(--muted);font-size:.86rem}.customer-register-panel{overflow:hidden}.customer-register-header{align-items:flex-end;gap:18px}.customer-register-controls{justify-items:end;gap:7px;display:grid}.customer-type-filter a{gap:7px}.customer-type-filter a>span{background:var(--surface-muted);min-width:21px;height:21px;color:var(--muted);font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;padding:0 6px;font-size:.72rem;display:inline-grid}.customer-type-filter a.active>span{background:var(--surface);color:var(--accent-text)}.customer-table{min-width:1180px}.customer-name-row,.customer-workspace-meta,.dashboard-detail-title-row{flex-wrap:wrap;align-items:center;gap:7px;min-width:0;display:flex}.customer-category-badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;width:fit-content;min-height:23px;padding:2px 8px;font-size:.7rem;font-weight:750;line-height:1;display:inline-flex}.customer-category-badge.business{border-color:color-mix(in srgb,var(--info) 40%,var(--border-default));background:var(--surface-primary);color:var(--info)}.customer-category-badge.private{border-color:var(--border-default);background:var(--surface-primary);color:var(--success)}.customer-running-number{color:var(--accent-text);font-variant-numeric:tabular-nums}.muted-value{color:var(--muted)}.customer-edit-trigger{justify-content:center;min-width:94px}.customer-modal-intro{border:1px solid color-mix(in srgb,var(--warning) 40%,var(--border-default));background:var(--surface-primary);color:var(--accent-text);border-radius:7px;align-items:center;gap:10px;padding:11px 13px;font-size:.88rem;display:flex}.customer-category-field{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.customer-category-field legend{color:var(--muted);margin:0 0 8px;font-size:.78rem;font-weight:700}.customer-category-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.customer-category-options label{border:1px solid var(--line);background:var(--surface-muted);min-width:0;min-height:68px;color:var(--ink);cursor:pointer;border-radius:7px;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;transition:border-color .14s,background .14s,box-shadow .14s;display:grid;position:relative}.customer-category-options label:hover{border-color:var(--border-default);background:var(--surface)}.customer-category-options label:has(input:checked){border-color:color-mix(in srgb,var(--accent-primary) 40%,var(--border-default));background:var(--surface-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--shadow-color) 12%,transparent)}.customer-category-options label:has(input:focus-visible){outline:3px solid color-mix(in srgb,var(--info) 40%,var(--border-default));outline-offset:2px}.customer-category-options input{opacity:0;width:1px;height:1px;position:absolute}.customer-category-options label>span:last-child{gap:3px;min-width:0;display:grid}.customer-category-options strong{font-size:.88rem}.customer-category-options small{color:var(--muted);font-size:.72rem;line-height:1.35}.customer-category-icon{background:var(--surface);width:34px;height:34px;color:var(--muted);border-radius:6px;place-items:center;display:grid}.customer-category-options label:has(input:checked) .customer-category-icon{background:var(--surface-primary);color:var(--accent-text)}.customer-create-modal{width:min(760px,100%)}.customer-contacts-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:12px;padding:15px 0;display:grid}.customer-contacts-heading,.customer-contacts-heading>div,.customer-create-building-trigger,.customer-contact-card-header,.customer-building-section-heading{align-items:center;display:flex}.customer-contacts-heading{justify-content:space-between;gap:14px}.customer-contacts-heading>div{gap:10px;min-width:0}.customer-contacts-heading>div>span:last-child,.customer-create-building-trigger>span:last-child,.customer-contact-card-header>span{gap:2px;min-width:0;display:grid}.customer-contacts-heading small,.customer-create-building-trigger small,.customer-contact-card-header small{color:var(--muted);font-size:.75rem}.customer-contacts-icon,.customer-create-building-trigger>span:first-child{background:var(--surface-soft);width:34px;height:34px;color:var(--accent-text);border-radius:7px;flex:none;place-items:center;display:inline-grid}.customer-contact-add{flex:none;min-height:36px;padding:7px 10px;font-size:.8rem}.customer-contact-list{gap:8px;display:grid}.customer-contact-card{border:1px solid var(--line);background:var(--surface-primary);border-radius:7px;gap:10px;padding:12px;display:grid}.customer-contact-card-header{justify-content:space-between;gap:12px}.customer-contact-card-header strong{font-size:.82rem}.customer-contact-card-header .icon-button{width:32px;height:32px;color:var(--muted)}.customer-contact-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.customer-create-building-row{justify-content:flex-start;display:flex}.customer-create-building-trigger{color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;gap:10px;padding:2px 0}.customer-create-building-trigger:hover>span:first-child{background:var(--warning-background);color:var(--accent-text)}.customer-building-section-heading{gap:10px}.customer-building-section-heading .icon-button{flex:none;margin-left:auto}.customer-workspace-backdrop{padding:24px}.customer-workspace-modal{border:1px solid var(--line);background:var(--surface);width:min(1020px,100%);height:min(820px,100vh - 48px);box-shadow:0 28px 80px color-mix(in srgb,var(--shadow-color) 28%,transparent);border-radius:8px;grid-template-rows:auto auto minmax(0,1fr);display:grid;overflow:hidden}.customer-workspace-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px;display:flex}.customer-workspace-identity{align-items:center;gap:12px;min-width:0;display:flex}.customer-workspace-icon,.customer-building-card-icon,.customer-contract-icon{background:var(--surface-soft);width:42px;height:42px;color:var(--accent-text);border-radius:7px;flex:none;place-items:center;display:inline-grid}.customer-workspace-identity>div{min-width:0}.customer-workspace-identity h2{text-overflow:ellipsis;white-space:nowrap;margin:1px 0 2px;font-size:1.2rem;overflow:hidden}.customer-workspace-identity small{color:var(--accent-text);text-transform:uppercase;font-size:.72rem;font-weight:800}.customer-workspace-identity div>span{color:var(--muted);font-size:.82rem}.customer-workspace-tabs{border-bottom:1px solid var(--line);background:var(--surface-primary);gap:4px;padding:8px 20px 0;display:flex}.customer-workspace-tabs button{min-height:43px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:8px;padding:8px 13px;font-weight:720;display:inline-flex}.customer-workspace-tabs button:hover,.customer-workspace-tabs button.active{color:var(--ink)}.customer-workspace-tabs button.active{border-bottom-color:var(--teal)}.customer-workspace-tabs button>span{background:var(--surface-secondary);min-width:22px;height:22px;color:var(--text-muted);border-radius:11px;place-items:center;font-size:.72rem;display:inline-grid}.customer-workspace-tabs button.active>span{background:var(--warning-background);color:var(--accent-text)}.customer-workspace-body{min-height:0;padding:22px;overflow-y:auto}.customer-workspace-section{gap:20px;display:grid}.customer-workspace-section-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.customer-workspace-section-heading h3{margin:0 0 3px;font-size:1.03rem}.customer-workspace-section-heading p{color:var(--muted);margin:0;font-size:.86rem}.customer-number-pair{border:1px solid var(--line);background:var(--line);border-radius:7px;grid-template-columns:minmax(100px,.75fr) minmax(170px,1.25fr);gap:1px;min-width:330px;display:grid;overflow:hidden}.customer-number-pair>span{background:var(--surface-primary);gap:2px;padding:9px 11px;display:grid}.customer-number-pair small{color:var(--muted);font-size:.7rem;font-weight:750}.customer-number-pair strong{font-size:.9rem}.customer-workspace-form-actions{justify-content:flex-end;margin-top:16px;display:flex}.customer-workspace-shortcuts{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:18px;display:grid}.customer-workspace-shortcuts a{border:1px solid var(--line);background:var(--surface-primary);border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:44px;font-size:.86rem;font-weight:720;display:flex}.customer-workspace-shortcuts a:hover{border-color:var(--border-default);background:var(--surface-primary)}.customer-workspace-delete{border-top:1px solid color-mix(in srgb,var(--warning) 40%,var(--border-default));justify-content:space-between;align-items:center;gap:18px;padding-top:18px;display:flex}.customer-workspace-delete>div{gap:2px;display:grid}.customer-workspace-delete>div>strong{color:var(--red)}.customer-workspace-delete small{color:var(--muted)}.customer-building-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.customer-building-cards article{border:1px solid var(--line);background:var(--surface-primary);border-radius:7px;gap:11px;min-width:0;padding:13px;display:flex}.customer-building-edit-button{flex:none;margin-left:auto}.building-edit-modal-header,.contract-building-modal>.customer-modal-header{z-index:4;border-bottom:1px solid var(--line);background:var(--surface);margin:-20px -20px 0;padding:20px;position:sticky;top:-20px}.customer-building-card-icon,.customer-contract-icon{width:36px;height:36px}.customer-building-cards article>div{gap:4px;min-width:0;display:grid}.customer-building-cards article span:not(.customer-building-card-icon){overflow-wrap:anywhere;min-width:0;color:var(--muted);align-items:center;gap:6px;font-size:.8rem;display:flex}.customer-building-cards article small{color:var(--muted);font-size:.75rem}.customer-building-create-form{border-top:1px solid var(--line);gap:16px;padding-top:20px;display:grid}.customer-contract-list{gap:8px;display:grid}.customer-contract-list>a{border:1px solid var(--line);background:var(--surface-primary);border-radius:7px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;display:grid}.customer-contract-list>a:hover{border-color:var(--border-default);background:var(--surface-primary)}.customer-contract-list>a>div{gap:2px;display:grid}.customer-contract-list small{color:var(--muted)}.customer-contract-open{color:var(--muted);justify-content:flex-end;align-items:center;gap:8px;display:flex}.customer-contract-open strong{color:var(--ink)}.customer-contract-empty{border:1px dashed var(--border-default);background:var(--surface-primary);min-height:190px;color:var(--muted);text-align:center;border-radius:7px;align-content:center;place-items:center;gap:5px;padding:24px;display:grid}.customer-contract-empty strong{color:var(--ink)}.customer-admin-tools{color:var(--muted)}.customer-admin-tools>summary{cursor:pointer;width:fit-content;font-size:.82rem;font-weight:700}.customer-admin-tools[open]>summary{margin-bottom:12px}.mobile-menu-open{overflow:hidden}.mobile-brand{align-items:center;gap:10px;min-width:0;display:flex}.mobile-brand img{width:102px;height:auto}.mobile-brand span{color:var(--muted);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.72rem;font-weight:800;overflow:hidden}.mobile-menu-button{border:1px solid var(--line);background:var(--surface-primary);width:42px;height:42px;color:var(--ink);border-radius:6px;flex:none;place-items:center;display:inline-grid}.mobile-nav-layer{z-index:100;grid-template-columns:minmax(0,1fr) min(88vw,360px);display:grid;position:fixed;inset:0}.mobile-nav-scrim{background:color-mix(in srgb,var(--surface-primary) 50%,transparent);border:0}.mobile-drawer{background:var(--surface-primary);min-width:0;box-shadow:-14px 0 34px color-mix(in srgb,var(--shadow-color) 16%,transparent);grid-template-rows:auto minmax(0,1fr) auto;display:grid}.mobile-drawer-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:14px;padding:18px;display:flex}.mobile-drawer-header>div{gap:4px;display:grid}.mobile-drawer-header img{width:121px;height:auto}.mobile-drawer-header small{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:800}.mobile-nav-links{align-content:start;gap:2px;padding:12px;display:grid;overflow-y:auto}.mobile-nav-links a{min-height:43px;color:var(--text-primary);border-radius:6px;align-items:center;gap:11px;padding:9px 11px;font-size:.92rem;font-weight:650;display:flex}.mobile-nav-links a.active{background:var(--surface-soft);color:var(--accent-text);box-shadow:inset 3px 0 0 var(--teal)}.mobile-drawer-footer{border-top:1px solid var(--line);background:var(--surface-primary);gap:12px;padding:15px;display:grid}.mobile-drawer-footer>div{gap:2px;min-width:0;display:grid}.mobile-drawer-footer strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.mobile-drawer-footer small{color:var(--muted)}.building-contract-option{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary)}.building-contract-option:has(input:checked){border-color:var(--teal);box-shadow:inset 3px 0 0 var(--teal)}.building-contract-option strong{color:var(--accent-text)}.dashboard-metric-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.dashboard-metric{border:1px solid var(--line);background:var(--surface);min-width:0;min-height:140px;color:var(--ink);cursor:pointer;font:inherit;text-align:left;box-shadow:var(--shadow);border-radius:8px;align-content:start;gap:7px;padding:16px 17px 15px 19px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;position:relative;overflow:hidden}.dashboard-metric:before{background:var(--teal);content:"";width:3px;position:absolute;inset:0 auto 0 0}.dashboard-metric-estimates:before{background:var(--amber)}.dashboard-metric-completed:before{background:var(--success-background)}.dashboard-metric-upsell:before{background:var(--blue)}.dashboard-metric-customers:before{background:var(--accent-primary)}.dashboard-metric:hover,.dashboard-metric:focus-visible{border-color:var(--border-default);box-shadow:var(--shadow-raised);transform:translateY(-1px)}.dashboard-metric-heading{color:var(--text-muted);justify-content:space-between;align-items:center;display:flex}.dashboard-metric-icon{background:var(--surface-primary);width:34px;height:34px;color:var(--accent-text);border-radius:6px;place-items:center;display:grid}.dashboard-metric-estimates .dashboard-metric-icon{background:var(--surface-primary);color:var(--warning)}.dashboard-metric-completed .dashboard-metric-icon{background:var(--surface-primary);color:var(--success)}.dashboard-metric-upsell .dashboard-metric-icon{background:var(--surface-primary);color:var(--info)}.dashboard-metric-customers .dashboard-metric-icon{background:var(--surface-primary);color:var(--accent-text)}.dashboard-metric-label{color:var(--muted);font-size:.8rem;font-weight:750}.dashboard-metric>strong{overflow-wrap:anywhere;font-size:clamp(1.45rem,2.1vw,1.9rem);line-height:1.1}.dashboard-metric>small{color:var(--muted);font-size:.76rem}.dashboard-detail-backdrop{z-index:140}.dashboard-detail-modal{border:1px solid var(--line);background:var(--surface);width:min(880px,100%);max-height:min(780px,100vh - 40px);box-shadow:0 24px 70px color-mix(in srgb,var(--shadow-color) 30%,transparent);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.dashboard-detail-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding:21px 22px 18px;display:flex}.dashboard-detail-header>div{gap:5px;display:grid}.dashboard-detail-header h2,.dashboard-detail-header p{margin:0}.dashboard-detail-header h2{font-size:1.35rem}.dashboard-detail-header p{color:var(--muted);font-size:.86rem}.dashboard-detail-kicker,.dashboard-workspace-kicker{color:var(--accent-text);text-transform:uppercase;font-size:.7rem;font-weight:800}.dashboard-detail-summary{border-bottom:1px solid var(--line);background:var(--surface-primary);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:0 22px;display:grid}.dashboard-detail-summary>div{border-right:1px solid var(--line);gap:4px;padding:15px 18px 15px 0;display:grid}.dashboard-detail-summary>div+div{padding-left:18px}.dashboard-detail-summary>div:last-child{border-right:0}.dashboard-customer-filter{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:7px;padding:11px 22px;display:flex}.dashboard-customer-filter button{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--muted);cursor:pointer;font:inherit;border-radius:7px;align-items:center;gap:7px;padding:6px 10px;font-size:.78rem;font-weight:750;display:inline-flex}.dashboard-customer-filter button:hover,.dashboard-customer-filter button.active{border-color:color-mix(in srgb,var(--accent-primary) 40%,var(--border-default));background:var(--surface-soft);color:var(--accent-text)}.dashboard-customer-filter button span{background:var(--surface-muted);min-width:20px;height:20px;color:var(--muted);font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;padding:0 5px;font-size:.68rem;display:inline-grid}.dashboard-detail-title-row{margin-bottom:1px}.dashboard-detail-summary span,.dashboard-detail-list small{color:var(--muted);font-size:.75rem}.dashboard-detail-list{min-height:180px;padding:4px 22px;overflow-y:auto}.dashboard-detail-list article{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:20px;min-width:0;padding:14px 0;display:flex}.dashboard-detail-list article:last-child{border-bottom:0}.dashboard-detail-list article>div{gap:3px;min-width:0;display:grid}.dashboard-detail-list article span{color:var(--text-muted);font-size:.84rem}.dashboard-detail-list article b{flex:none;font-size:.88rem}.dashboard-detail-empty{color:var(--muted);text-align:center;padding:50px 0}.dashboard-detail-footer{border-top:1px solid var(--line);justify-content:flex-end;gap:9px;padding:14px 22px;display:flex}.dashboard-workspace{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.dashboard-workspace-header{justify-content:space-between;align-items:center;gap:18px;min-height:74px;padding:16px 18px;display:flex}.dashboard-workspace-header>div{gap:4px;display:grid}.dashboard-workspace-header h2{margin:0;font-size:1.05rem}.dashboard-workspace-tabs{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface-primary);padding:0 18px;display:flex;overflow-x:auto}.dashboard-workspace-tabs button{min-height:48px;color:var(--text-muted);cursor:pointer;font:inherit;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;align-items:center;gap:8px;padding:0 16px;font-size:.82rem;font-weight:750;display:inline-flex}.dashboard-workspace-tabs button:hover,.dashboard-workspace-tabs button.active{border-bottom-color:var(--teal);color:var(--accent-text)}.dashboard-workspace-tabs button>span{background:var(--surface-secondary);min-width:22px;height:22px;color:var(--text-muted);border-radius:999px;place-items:center;font-size:.7rem;display:grid}.dashboard-workspace-tabs button.active>span{background:var(--surface-secondary);color:var(--accent-text)}.dashboard-workspace-content{min-height:310px;padding:0 18px 10px}.dashboard-today-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;display:grid}.dashboard-today-grid .dashboard-work-section+.dashboard-work-section{border-left:1px solid var(--line);padding-left:18px}.dashboard-today-grid .dashboard-work-section:first-child{padding-right:18px}.dashboard-work-section{min-width:0}.dashboard-work-section>header{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;min-height:60px;display:flex}.dashboard-work-section>header>div{color:var(--accent-text);align-items:center;gap:8px;display:flex}.dashboard-work-section h3{color:var(--ink);margin:0;font-size:.9rem}.dashboard-work-list{display:grid}.dashboard-work-row{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:14px;min-width:0;min-height:66px;padding:11px 0;display:flex}.dashboard-work-row:last-child{border-bottom:0}.dashboard-work-row>div:first-child{gap:3px;min-width:0;display:grid}.dashboard-work-row strong{overflow-wrap:anywhere;font-size:.85rem}.dashboard-work-row span,.dashboard-work-row small{color:var(--muted);font-size:.75rem}.dashboard-work-row-actions{flex:none;align-items:center;gap:7px;display:flex}.dashboard-work-row-actions .icon-button{width:32px;height:32px;color:var(--accent-text)}.dashboard-work-empty{color:var(--muted);text-align:center;margin:0;padding:44px 0}.dashboard-task-modal{width:min(560px,100%)}.dashboard-agenda-calendar{gap:14px;padding:0;display:grid;overflow:visible}.dashboard-agenda-header{justify-content:space-between;align-items:center;gap:20px;padding:18px 18px 0;display:flex}.dashboard-agenda-header>div:first-child{gap:3px;display:grid}.dashboard-agenda-header h2,.dashboard-agenda-header p{margin:0}.dashboard-agenda-header h2{font-size:1.08rem}.dashboard-agenda-header p{color:var(--muted);font-size:.8rem}.dashboard-agenda-actions{flex:none;align-items:center;gap:8px;display:flex}.dashboard-agenda-legend{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);background:var(--surface-muted);flex-wrap:wrap;align-items:center;gap:7px 16px;padding:9px 18px;display:flex}.dashboard-agenda-legend span{color:var(--muted);align-items:center;gap:6px;font-size:.72rem;font-weight:700;display:inline-flex}.agenda-event-dot{background:var(--muted);border-radius:999px;flex:none;width:7px;height:7px;display:block}.agenda-event-dot.meeting,.dashboard-agenda-event.meeting,.dashboard-agenda-event.meeting .dashboard-agenda-event-icon{--agenda-color:var(--blue)}.agenda-event-dot.task,.dashboard-agenda-event.task,.dashboard-agenda-event.task .dashboard-agenda-event-icon{--agenda-color:var(--amber)}.agenda-event-dot.control,.dashboard-agenda-event.control,.dashboard-agenda-event.control .dashboard-agenda-event-icon{--agenda-color:var(--green)}.agenda-event-dot.reminder,.dashboard-agenda-event.reminder,.dashboard-agenda-event.reminder .dashboard-agenda-event-icon{--agenda-color:var(--red)}.agenda-event-dot.customer,.dashboard-agenda-event.customer,.dashboard-agenda-event.customer .dashboard-agenda-event-icon{--agenda-color:#745d9b}.agenda-event-dot.estimate,.dashboard-agenda-event.estimate,.dashboard-agenda-event.estimate .dashboard-agenda-event-icon{--agenda-color:var(--teal)}.agenda-event-dot.meeting,.agenda-event-dot.task,.agenda-event-dot.control,.agenda-event-dot.reminder,.agenda-event-dot.customer,.agenda-event-dot.estimate{background:var(--agenda-color)}.dashboard-agenda-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;padding:0 18px 18px;display:grid}.dashboard-agenda-day-shell{min-width:0;position:relative}.dashboard-agenda-day{border:1px solid var(--line);background:var(--surface);width:100%;min-height:132px;color:var(--ink);cursor:pointer;text-align:left;border-radius:7px;align-content:start;gap:6px;padding:11px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;position:relative}.dashboard-agenda-day:hover,.dashboard-agenda-day:focus-visible{z-index:2;border-color:var(--border-default);box-shadow:var(--shadow-raised);transform:translateY(-1px)}.dashboard-agenda-day.today{border-color:color-mix(in srgb,var(--accent-primary) 40%,var(--border-default));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--shadow-color) 8%,transparent)}.dashboard-agenda-day.weekend{background:var(--surface-muted)}.dashboard-agenda-weekday{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:800}.dashboard-agenda-date-row{align-items:baseline;gap:5px;display:flex}.dashboard-agenda-date-row strong{font-size:1.7rem;font-weight:780;line-height:1}.dashboard-agenda-date-row small{color:var(--muted);font-size:.7rem;font-weight:700}.dashboard-agenda-dots{flex-wrap:wrap;align-items:center;gap:4px;min-height:8px;margin-top:2px;display:flex}.dashboard-agenda-day-summary{color:var(--muted);margin-top:auto;font-size:.7rem;line-height:1.25}.dashboard-agenda-today-label{color:var(--accent-text);text-transform:uppercase;font-size:.62rem;font-weight:850;position:absolute;top:10px;right:9px}.dashboard-agenda-hover{z-index:45;visibility:hidden;border:1px solid color-mix(in srgb,var(--border-default) 10%,transparent);background:var(--surface-primary);width:280px;color:var(--text-primary);opacity:0;pointer-events:none;box-shadow:0 16px 40px color-mix(in srgb,var(--shadow-color) 24%,transparent);border-radius:7px;padding:12px;transition:opacity .13s,transform .13s,visibility .13s;position:absolute;bottom:calc(100% + 9px);left:0;transform:translateY(4px)}.dashboard-agenda-day-shell:nth-child(7n) .dashboard-agenda-hover{left:auto;right:0}.dashboard-agenda-day-shell:hover .dashboard-agenda-hover,.dashboard-agenda-day-shell:focus-within .dashboard-agenda-hover{visibility:visible;opacity:1;transform:translateY(0)}.dashboard-agenda-hover>strong{margin-bottom:8px;font-size:.78rem;display:block}.dashboard-agenda-hover>div{gap:7px;display:grid}.dashboard-agenda-hover>div>span{min-width:0;color:var(--text-primary);grid-template-columns:7px auto minmax(0,1fr);align-items:center;gap:7px;font-size:.71rem;display:grid}.dashboard-agenda-hover b{color:var(--text-muted);font-size:.65rem;font-weight:800}.dashboard-agenda-hover p,.dashboard-agenda-hover small{color:var(--text-muted);margin:0;font-size:.68rem}.dashboard-agenda-hover>div>small{padding-left:14px}.dashboard-agenda-backdrop{align-items:center}.dashboard-agenda-modal{border:1px solid var(--line);background:var(--surface);width:min(760px,100%);max-height:min(760px,100vh - 40px);box-shadow:0 24px 70px color-mix(in srgb,var(--shadow-color) 30%,transparent);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.dashboard-agenda-modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding:19px 20px 17px;display:flex}.dashboard-agenda-modal-header>div{gap:3px;display:grid}.dashboard-agenda-modal-header h2,.dashboard-agenda-modal-header p{margin:0}.dashboard-agenda-modal-header small{color:var(--accent-text);text-transform:uppercase;font-size:.68rem;font-weight:850}.dashboard-agenda-modal-header h2{font-size:1.25rem}.dashboard-agenda-modal-header p{color:var(--muted);font-size:.78rem}.dashboard-agenda-modal-list{gap:8px;padding:14px;display:grid;overflow-y:auto}.dashboard-agenda-event{border:1px solid var(--line);border-left:3px solid var(--agenda-color);background:var(--surface);border-radius:7px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;padding:11px 12px 11px 10px;display:grid}.dashboard-agenda-event-icon{background:color-mix(in srgb, var(--agenda-color) 11%, var(--surface));width:36px;height:36px;color:var(--agenda-color);border-radius:6px;place-items:center;display:grid}.dashboard-agenda-event>div:nth-child(2){gap:2px;min-width:0;display:grid}.dashboard-agenda-event>div:nth-child(2)>span{color:var(--agenda-color);font-size:.68rem;font-weight:800}.dashboard-agenda-event strong{overflow-wrap:anywhere;font-size:.86rem}.dashboard-agenda-event p{color:var(--muted);margin:0;font-size:.73rem}.dashboard-agenda-event-actions{align-items:center;gap:6px;display:flex}.dashboard-agenda-event-actions form{display:contents}.dashboard-agenda-empty{min-height:270px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:7px;display:grid}.dashboard-agenda-empty strong{color:var(--ink)}.dashboard-agenda-empty .primary-button{margin-top:7px}.quick-task-panel{align-self:start}.dashboard-year-wheel-header>div:first-child{gap:3px;display:grid}.dashboard-year-wheel-header p{color:var(--muted);font-size:.8rem}.dashboard-year-wheel-actions,.year-wheel-year-switcher{align-items:center;gap:8px;display:flex}.year-wheel-year-switcher strong{text-align:center;min-width:48px}.year-wheel-year-switcher .icon-button{border:0;width:32px;height:32px}.dashboard-year-wheel-body{grid-template-columns:minmax(450px,510px) minmax(0,1fr);min-height:510px;display:grid}.year-wheel-ring-shell{background:var(--surface-muted);place-items:center;min-width:0;padding:20px;display:grid}.year-wheel-ring{aspect-ratio:1;width:470px;max-width:100%;position:relative}.year-wheel-ring-track{border:1px solid var(--line);background:var(--surface);box-shadow:inset 0 0 0 16px var(--surface-muted);border-radius:50%;position:absolute;inset:48px}.year-wheel-month-node{z-index:2;border:1px solid var(--line);background:var(--surface);width:92px;min-height:58px;color:var(--ink);cursor:pointer;font:inherit;text-align:center;transform:translate(-50%, -50%) rotate(calc(var(--month-index) * 30deg)) translateY(-188px) rotate(calc(var(--month-index) * -30deg));border-radius:7px;align-content:center;gap:2px;padding:8px 8px 10px;transition:border-color .15s,box-shadow .15s,color .15s;display:grid;position:absolute;top:50%;left:50%;overflow:hidden}.year-wheel-month-node:hover,.year-wheel-month-node:focus-visible,.year-wheel-month-node.active{border-color:var(--teal);color:var(--accent-text);box-shadow:0 7px 18px color-mix(in srgb,var(--shadow-color) 13%,transparent)}.year-wheel-month-node span{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:800}.year-wheel-month-node strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.year-wheel-month-node i{width:var(--income-level);background:var(--teal);height:3px;position:absolute;bottom:0;left:0}.year-wheel-center{z-index:1;aspect-ratio:1;border:1px solid var(--line);background:var(--surface);text-align:center;border-radius:50%;place-content:center;gap:5px;width:178px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.year-wheel-center span{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:800}.year-wheel-center strong{font-size:1.55rem}.year-wheel-center small{color:var(--muted);font-size:.68rem}.year-wheel-month-grid{display:none}.year-wheel-detail{border-left:1px solid var(--line-soft);align-content:start;gap:15px;min-width:0;padding:22px;display:grid}.year-wheel-detail>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.year-wheel-detail>header>div{gap:2px;display:grid}.year-wheel-detail>header span:not(.status-badge){color:var(--muted);font-size:.72rem;font-weight:800}.year-wheel-detail h3{margin:0;font-size:1.35rem}.year-wheel-finance-strip{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.year-wheel-finance-strip>div{gap:4px;min-width:0;padding:12px 10px 12px 0;display:grid}.year-wheel-finance-strip>div:nth-child(2n){border-left:1px solid var(--line-soft);padding-left:10px;padding-right:0}.year-wheel-finance-strip>div:nth-child(n+3){border-top:1px solid var(--line-soft)}.year-wheel-finance-strip span{color:var(--muted);font-size:.7rem;font-weight:750}.year-wheel-finance-strip strong{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.year-wheel-revenue-mix{background:var(--surface-muted);border-radius:999px;height:5px;display:flex;overflow:hidden}.year-wheel-revenue-mix .contracts{background:var(--teal)}.year-wheel-revenue-mix .single-jobs{background:var(--blue)}.year-wheel-detail-list{border-top:1px solid var(--line-soft);max-height:250px;display:grid;overflow-y:auto}.year-wheel-detail-list>a{border-bottom:1px solid var(--line-soft);color:var(--ink);grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:10px 2px;text-decoration:none;display:grid}.year-wheel-detail-list small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.year-wheel-empty{min-height:150px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:8px;font-size:.82rem;display:grid}@media (max-width:1180px){.dashboard-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.metrics-grid,.loading-grid,.three-column,.finance-stat-grid,.month-list{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid,.two-column,.estimate-layout{grid-template-columns:1fr}.estimate-summary{position:static}.contract-control-fields,.material-line{grid-template-columns:repeat(2,minmax(0,1fr))}.material-line-total,.icon-button{align-self:stretch}.dashboard-agenda-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-year-wheel-body{grid-template-columns:minmax(390px,440px) minmax(0,1fr)}.year-wheel-ring{width:410px}.year-wheel-ring-track{inset:46px}.year-wheel-month-node{width:82px;min-height:54px;transform:translate(-50%, -50%) rotate(calc(var(--month-index) * 30deg)) translateY(-162px) rotate(calc(var(--month-index) * -30deg))}.year-wheel-center{width:152px}.dashboard-agenda-day-shell:nth-child(7n) .dashboard-agenda-hover{left:0;right:auto}.dashboard-agenda-day-shell:nth-child(4n) .dashboard-agenda-hover{left:auto;right:0}}@media (max-width:920px){.app-shell{display:block}.sidebar{display:none}.mobile-topbar{z-index:30;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface-primary) 97%,transparent);min-height:64px;box-shadow:0 1px 4px color-mix(in srgb,var(--shadow-color) 4%,transparent);justify-content:space-between;align-items:center;gap:14px;padding:10px 16px;display:flex;position:sticky;top:0}.main-area{padding:0 18px 26px}.page-stack,.loading-stack{padding-top:16px}.module-header{flex-direction:column;align-items:flex-start}.segmented-links{justify-content:flex-start}.danger-panel{flex-direction:column;align-items:flex-start}.calendar-grid{grid-template-columns:repeat(2,minmax(150px,1fr))}.calendar-head{display:none}.dashboard-agenda-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-year-wheel-body{grid-template-columns:1fr}.year-wheel-ring-shell{min-height:450px}.year-wheel-detail{border-top:1px solid var(--line-soft);border-left:0}.dashboard-agenda-day-shell:nth-child(4n) .dashboard-agenda-hover{left:0;right:auto}.dashboard-agenda-day-shell:nth-child(3n) .dashboard-agenda-hover{left:auto;right:0}}@media (max-width:680px){.login-panel,.loading-grid,.form-grid,.contract-control-fields,.estimate-actions,.estimate-totals,.material-line,.finance-stat-grid,.customer-type-options,.estimate-registration-options,.material-fixed-fields,.contract-date-section,.contract-finance-section,.contract-recipient-options,.month-list{grid-template-columns:1fr}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-metric-grid,.dashboard-detail-summary,.dashboard-today-grid{grid-template-columns:1fr}.dashboard-agenda-calendar{gap:12px}.dashboard-year-wheel-header{flex-direction:column;align-items:stretch;padding:15px 14px}.dashboard-year-wheel-actions{justify-content:space-between}.year-wheel-ring-shell{display:none}.year-wheel-month-grid{background:var(--surface-muted);grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:12px;display:grid}.year-wheel-month-grid button{border:1px solid var(--line);background:var(--surface);min-width:0;min-height:68px;color:var(--ink);font:inherit;text-align:center;border-radius:6px;align-content:center;gap:2px;display:grid}.year-wheel-month-grid button.active{border-color:var(--teal);box-shadow:inset 0 -3px 0 var(--teal)}.year-wheel-month-grid span,.year-wheel-month-grid small{color:var(--muted);font-size:.66rem;font-weight:750}.year-wheel-month-grid strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.year-wheel-detail{padding:16px 14px}.dashboard-agenda-header{flex-direction:column;align-items:stretch;padding:15px 14px 0}.dashboard-agenda-actions{grid-template-columns:1fr 1fr;display:grid}.dashboard-agenda-actions :is(.ghost-button,.primary-button){white-space:nowrap;justify-content:center;padding-left:10px;padding-right:10px}.dashboard-agenda-action-prefix{display:none}.dashboard-agenda-legend{gap:6px 12px;padding-left:14px;padding-right:14px}.dashboard-agenda-grid{scroll-snap-type:x proximity;scrollbar-color:var(--text-muted) transparent;scrollbar-width:thin;grid-template-columns:none;grid-auto-columns:minmax(142px,58vw);grid-auto-flow:column;padding:0 14px 17px;scroll-padding-left:14px;overflow-x:auto}.dashboard-agenda-day-shell{scroll-snap-align:start}.dashboard-agenda-day{min-height:126px}.dashboard-agenda-hover{display:none}.dashboard-agenda-backdrop{align-items:stretch;padding:8px}.dashboard-agenda-modal{max-height:calc(100vh - 16px)}.dashboard-agenda-modal-header{padding:16px}.dashboard-agenda-modal-list{padding:10px}.dashboard-agenda-event{grid-template-columns:34px minmax(0,1fr)}.dashboard-agenda-event-icon{width:32px;height:32px}.dashboard-agenda-event-actions{grid-column:2;justify-content:flex-start}.contract-type-options{grid-template-columns:1fr}.contract-control-picker-header{flex-direction:column;align-items:stretch}.contract-control-picker-header .ghost-button{width:100%}.contract-control-summary-button small{white-space:normal}.dashboard-metric{min-height:126px}.dashboard-detail-backdrop{align-items:stretch;padding:8px}.dashboard-detail-modal{max-height:calc(100vh - 16px)}.dashboard-detail-header,.dashboard-detail-footer{padding-left:16px;padding-right:16px}.dashboard-detail-summary{padding:7px 16px}.dashboard-detail-summary>div,.dashboard-detail-summary>div+div{border-right:0;border-bottom:1px solid var(--line);padding:9px 0}.dashboard-detail-summary>div:last-child{border-bottom:0}.dashboard-detail-list,.dashboard-customer-filter{padding-left:16px;padding-right:16px}.dashboard-detail-list article{flex-direction:column;align-items:flex-start;gap:7px}.dashboard-workspace-header{flex-direction:column;align-items:stretch}.dashboard-workspace-header .primary-button{align-self:flex-start}.dashboard-workspace-tabs{padding:0 8px}.dashboard-workspace-tabs button{padding:0 10px}.dashboard-workspace-content{padding:0 14px 8px}.dashboard-today-grid .dashboard-work-section:first-child{padding-right:0}.dashboard-today-grid .dashboard-work-section+.dashboard-work-section{border-top:1px solid var(--line);border-left:0;padding-left:0}.login-header,.login-form{padding:24px}.main-area{padding:0 12px 22px}.module-header{min-height:0;padding-top:10px}.module-header h1{font-size:1.55rem}.module-actions{justify-content:flex-start;width:100%}.module-actions .primary-button,.module-actions .ghost-button{flex:130px}.metric-card{min-height:112px;padding:14px 13px 13px 16px}.metric-card strong{font-size:1.35rem}.metric-card-icon{width:29px;height:29px}.modal-backdrop{align-items:end;padding:10px}.contract-form-backdrop{padding:8px}.contract-form-dialog{width:100%;max-height:calc(100dvh - 16px);padding:14px}.contract-form-dialog>.panel-header{margin:-14px -14px 12px;padding:14px}.customer-modal{max-height:calc(100vh - 20px);padding:16px;overflow-x:hidden}.building-edit-modal-header,.contract-building-modal>.customer-modal-header{margin:-16px -16px 0;padding:16px;top:-16px}.customer-modal-actions{grid-template-columns:1fr;display:grid}.customer-contacts-heading{flex-direction:column;align-items:stretch}.customer-contact-add{justify-content:center;width:100%}.customer-contact-fields{grid-template-columns:1fr}.customer-page-toolbar,.customer-register-header{flex-direction:column;align-items:stretch}.customer-register-controls{justify-items:stretch}.customer-type-filter{justify-content:flex-start}.customer-category-options{grid-template-columns:1fr}.customer-page-toolbar .primary-button{width:100%}.customer-workspace-backdrop{align-items:stretch;padding:8px}.customer-workspace-modal{height:calc(100vh - 16px)}.customer-workspace-header{padding:14px}.customer-workspace-tabs{padding:7px 10px 0;overflow-x:auto}.customer-workspace-tabs button{flex:none;padding-inline:10px}.customer-workspace-body{padding:14px}.customer-workspace-section-heading,.customer-workspace-delete{flex-direction:column;align-items:stretch}.customer-number-pair{width:100%;min-width:0}.customer-building-cards,.customer-workspace-shortcuts{grid-template-columns:1fr}.customer-workspace-form-actions,.customer-workspace-form-actions .primary-button,.customer-workspace-delete .danger-button{width:100%}.customer-contract-list>a{grid-template-columns:36px minmax(0,1fr)}.customer-contract-list .customer-contract-open{grid-column:2;justify-content:space-between}.contract-email-header,.contract-control-row-header{flex-direction:column;align-items:flex-start}.contract-date-section,.contract-finance-section,.contract-building-row,.contract-email-panel,.contract-control-row{padding:14px}.contract-building-row{grid-template-columns:1fr}.contract-building-total,.contract-building-heading{flex-direction:column;align-items:flex-start}.contract-building-heading .ghost-button{width:100%}.contract-cycle-planner{padding:13px}.contract-cycle-header,.contract-cycle-buildings-heading{flex-direction:column;align-items:stretch}.contract-cycle-header>.field,.contract-cycle-buildings-heading .ghost-button{width:100%}.contract-cycle-summary,.contract-cycle-year-fields{grid-template-columns:1fr}.contract-cycle-summary>div{border-right:0;border-bottom:1px solid var(--line)}.contract-cycle-summary>div:last-child{border-bottom:0}.contract-cycle-tabs{grid-template-columns:none;grid-auto-columns:minmax(104px,1fr);grid-auto-flow:column}.contract-cycle-building-row{grid-template-columns:minmax(0,1fr) 78px}.contract-cycle-building-row>.field{grid-column:1/-1}.contract-cycle-building-row>.contract-cycle-building-actions{grid-area:1/2}.contract-building-details-backdrop{align-items:stretch;padding:8px}.contract-building-details-modal{height:calc(100vh - 16px)}.contract-building-details-body{grid-template-rows:minmax(130px,190px) minmax(0,1fr);grid-template-columns:1fr}.contract-building-tabs{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr))}.contract-building-detail{padding:14px}.contract-building-detail-summary{flex-direction:column;align-items:flex-start}.building-detail-price{text-align:left}.contract-pdf-backdrop{align-items:stretch;padding:8px}.contract-pdf-modal{height:calc(100vh - 16px)}.contract-pdf-modal-body{grid-template-rows:minmax(120px,180px) minmax(0,1fr);grid-template-columns:1fr}.contract-pdf-list{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr))}.contract-pdf-preview-bar{flex-direction:column;align-items:flex-start}.contract-pdf-preview-bar .ghost-button{width:100%}.contract-document-heading{flex-direction:column}.contract-document-item,.contract-upload-row{grid-template-columns:20px minmax(0,1fr) 42px}.contract-document-item .ghost-button,.contract-upload-row .ghost-button,.contract-document-item .remove-document-toggle,.contract-upload-row .pdf-row-status{grid-column:2/-1;justify-self:start}.contract-submit,.contract-form-actions{justify-self:stretch;width:100%}.contract-form-actions,.customer-edit-actions{grid-template-columns:1fr;display:grid}}@media (max-width:420px){.contract-building-tabs,.contract-pdf-list{grid-template-columns:1fr}.mobile-brand span{display:none}.customer-number-pair{grid-template-columns:1fr}}.job-source-fields{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;grid-column:1/-1;grid-template-columns:minmax(190px,.7fr) minmax(0,1.7fr);align-items:center;gap:16px;padding:14px;display:grid}.job-source-heading{min-width:0;color:var(--accent-text);align-items:flex-start;gap:10px;display:flex}.job-source-heading>div{gap:3px;min-width:0;display:grid}.job-source-heading strong{color:var(--ink);font-size:.9rem}.job-source-heading small,.job-source-description{color:var(--muted);font-size:.76rem}.job-source-inputs{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;display:grid}.job-source-description{border:1px dashed var(--line);border-radius:6px;align-items:center;min-height:43px;padding:8px 11px;display:flex}.job-source-badge{max-width:220px;min-height:27px;color:var(--text-muted);white-space:normal;border:1px solid #0000;border-radius:999px;align-items:center;padding:4px 9px;font-size:.73rem;font-weight:750;line-height:1.25;display:inline-flex}.job-source-badge.self{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-secondary);color:var(--success)}.job-source-badge.framework{border-color:color-mix(in srgb,var(--info) 40%,var(--border-default));background:var(--surface-primary);color:var(--info)}.job-source-badge.agreement{border-color:color-mix(in srgb,var(--warning) 40%,var(--border-default));background:var(--warning-background);color:var(--warning)}.job-source-badge.uncategorized{border-color:var(--border-default);background:var(--surface-primary);color:var(--text-muted)}.sidebar-user-row{grid-template-columns:minmax(0,1fr) 40px;gap:8px;display:grid}.sidebar-user-row .user-chip{min-width:0}.theme-toggle{width:40px;height:40px;color:var(--ink);align-self:stretch}.mobile-topbar-actions{flex:none;align-items:center;gap:7px;display:flex}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#101216;--surface:#191c22;--surface-soft:#321a1d;--surface-muted:#22262d;--ink:#f3f5f7;--muted:#aab2bd;--line:#373c45;--line-soft:#2b3038;--teal:#ff3340;--teal-strong:#ff747d;--blue:#6ea9e5;--amber:#e6ab4f;--green:#68c98b;--red:#ff6975;--shadow:0 1px 2px #00000047, 0 7px 22px #0000002e;--shadow-raised:0 12px 34px #00000057}html[data-theme=dark] body{background:var(--bg);color:var(--ink)}html[data-theme=dark] ::selection{background:var(--accent-soft);color:var(--text-primary)}html[data-theme=dark] code,html[data-theme=dark] .template-variables code{background:var(--surface-secondary);color:var(--text-primary)}html[data-theme=dark] :is(.sidebar,.nav-drag-item,.user-chip,.segmented-links a,.customer-picker-trigger,.customer-picker-menu,.estimate-row-action-links a,.estimate-status-control select,.material-line-total,.icon-button,.table-wrap,.ghost-button,.copy-control-button,.contract-control-compact,.contract-type-options label,.contract-building-row,.contract-cycle-summary,.contract-cycle-building-picker,.contract-cycle-building-row,.contract-document-trigger,.contract-building-trigger,.contract-building-tabs button:hover,.contract-building-tabs button.active,.contract-building-control-list article,.contract-pdf-list button:hover,.contract-pdf-list button.active,.pdf-file-mark,.contract-pdf-preview-bar,.contract-document-item,.contract-upload-row,.contract-recipient-options>label,.attachment-option,.login-panel,.setup-panel,.error-panel,.calendar-head,.calendar-day,.month-block,.customer-number-pair>span,.customer-workspace-shortcuts a,.customer-building-cards article,.customer-contact-card,.customer-category-options label,.customer-contract-list>a,.mobile-menu-button,.mobile-drawer,.reservation-custom-row input):not(:where(.danger-button,.destructive-button)){background:var(--surface);color:var(--ink)}html[data-theme=dark] .customer-category-options label:has(input:checked){border-color:color-mix(in srgb,var(--accent-primary) 40%,var(--border-default));background:var(--surface-soft)}html[data-theme=dark] .customer-category-options label:has(input:checked) .customer-category-icon{background:var(--surface-secondary);color:var(--accent-text)}html[data-theme=dark] .customer-category-badge.business{border-color:color-mix(in srgb,var(--info) 40%,var(--border-default));background:var(--info-background);color:var(--info)}html[data-theme=dark] .customer-category-badge.private{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary);color:var(--success)}html[data-theme=dark] :is(.side-nav-link:hover,.nav-drag-item:hover,.nav-drag-item:focus-visible,.finance-stat-grid div,.customer-type-options button,.estimate-registration-options button,.estimate-totals div,.material-line,.reservation-option,.data-table th,.data-table tbody tr:hover,.ghost-button:hover,.contract-control-row,.contract-control-compact-content,.contract-control-picker,.customer-building-section,.contract-buildings-section,.contract-cycle-planner,.contract-date-section,.contract-finance-section,.contract-building-tabs,.contract-building-controls-heading>span,.contract-pdf-list,.contract-upload-row,.contract-email-panel,.empty-state,.login-copy,.calendar-day.muted,.customer-workspace-tabs,.customer-contract-empty,.mobile-drawer-footer,.dashboard-detail-summary,.dashboard-workspace-tabs,.job-source-fields,.reservation-selected-list>div,.reservation-picker):not(:where(.danger-button,.destructive-button)){background:var(--surface-muted);color:var(--ink)}html[data-theme=dark] :is(.side-nav-link.active,.segmented-links a.active,.segmented-links a:hover,.customer-type-options button.active,.estimate-registration-options button.active,.customer-picker-list button:hover,.customer-picker-list button.selected,.customer-picker-create:hover,.contract-control-row.selected,.copy-control-button:hover,.contract-cycle-tabs button:hover,.contract-cycle-tabs button.active,.mobile-nav-links a.active){background:var(--surface-soft);color:var(--accent-text)}html[data-theme=dark] :is(.field input,.field select,.field textarea,.inline-form input,.inline-form select,.danger-form input,.additional-recipient-row input,.contract-control-fields input,.contract-control-fields select){border-color:var(--border-default)}html[data-theme=dark] :is(.field span,.side-nav-link,.mobile-nav-links a,.dashboard-detail-list article span,.dashboard-workspace-tabs button,.job-source-badge.uncategorized){color:var(--text-muted)}html[data-theme=dark] :is(.contract-alert-preview,.contract-offer-prefill-notice,.offer-conversion-hint,.automatic-customer-recipient,.building-contract-option){border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary);color:var(--success)}html[data-theme=dark] :is(.danger-panel,.contract-email-panel.active){background:var(--surface-primary)}html[data-theme=dark] .status-badge.green,html[data-theme=dark] .job-source-badge.self{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary);color:var(--success)}html[data-theme=dark] .status-badge.amber,html[data-theme=dark] .job-source-badge.agreement{border-color:color-mix(in srgb,var(--warning) 40%,var(--border-default));background:var(--surface-primary);color:var(--warning)}html[data-theme=dark] .status-badge.blue,html[data-theme=dark] .job-source-badge.framework{border-color:color-mix(in srgb,var(--info) 40%,var(--border-default));background:var(--info-background);color:var(--info)}html[data-theme=dark] .status-badge.red{border-color:color-mix(in srgb,var(--danger) 40%,var(--border-default));background:var(--surface-primary);color:var(--danger)}html[data-theme=dark] .job-source-badge.uncategorized{border-color:var(--border-default);background:var(--surface-secondary)}html[data-theme=dark] :is(.metric-card-icon,.dashboard-metric-icon,.contract-document-trigger-icon,.contract-building-trigger-icon,.building-tab-icon,.building-detail-icon,.dashboard-workspace-tabs button>span){background:#292e35}html[data-theme=dark] .dashboard-metric-estimates .dashboard-metric-icon{background:var(--surface-primary);color:var(--amber)}html[data-theme=dark] .dashboard-metric-upsell .dashboard-metric-icon{background:var(--info-background);color:var(--blue)}html[data-theme=dark] .dashboard-metric-customers .dashboard-metric-icon{background:var(--surface-primary);color:var(--accent-text)}html[data-theme=dark] .estimate-margin-feedback.excellent{background:var(--success-background);box-shadow:0 0 18px color-mix(in srgb,var(--shadow-color) 20%,transparent)}html[data-theme=dark] .estimate-margin-feedback.excellent strong{color:var(--success)}html[data-theme=dark] .estimate-margin-feedback.excellent:after{background:linear-gradient(90deg, transparent, color-mix(in srgb,var(--success-background) 20%,transparent), transparent)}html[data-theme=dark] :is(.customer-picker-menu,.contract-building-details-modal,.contract-pdf-modal,.customer-workspace-modal,.dashboard-detail-modal,.customer-modal,.contract-form-dialog,.record-form-dialog,.estimate-form-dialog){box-shadow:0 28px 80px color-mix(in srgb,var(--shadow-color) 30%,transparent)}html[data-theme=dark] .mobile-topbar{background:color-mix(in srgb,var(--surface-primary) 97%,transparent);box-shadow:0 1px 4px color-mix(in srgb,var(--shadow-color) 30%,transparent)}@media (max-width:680px){.job-source-fields,.job-source-inputs{grid-template-columns:1fr}.record-form-actions{grid-template-columns:1fr;display:grid}.record-form-actions button{width:100%}.estimate-form-backdrop,.record-form-backdrop{padding:10px}.estimate-form-dialog,.record-form-dialog{max-height:calc(100vh - 20px)}.estimate-dialog-body{padding:10px}}@media (max-width:360px){.login-page{padding:16px}.login-header,.login-form{padding-left:22px;padding-right:22px}.login-brand{justify-content:stretch;gap:8px;display:grid}.login-brand img{width:160px}}.estimate-form-backdrop{padding:10px}.estimate-form-dialog{grid-template-rows:auto minmax(0,1fr);width:min(1740px,100%);height:min(980px,100dvh - 20px);max-height:calc(100dvh - 20px);display:grid;overflow:hidden}.estimate-dialog-header{padding:13px 16px;position:relative}.estimate-dialog-header h2{font-size:1.12rem}.estimate-dialog-header p{margin-top:3px;font-size:.76rem}.estimate-dialog-body{overscroll-behavior:contain;grid-template-columns:minmax(0,1fr) minmax(370px,400px);align-items:start;gap:12px;min-height:0;padding:12px;overflow-y:auto}.estimate-form-dialog .estimate-form{min-width:0;box-shadow:none;background:0 0;border:0;align-content:start;gap:12px;padding:0;display:grid}.estimate-editor-tabs{z-index:20;border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 94%, transparent);box-shadow:0 5px 16px color-mix(in srgb,var(--shadow-color) 6%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:5px;display:grid;position:sticky;top:0}.estimate-editor-tabs button{min-width:0;min-height:52px;color:var(--muted);cursor:pointer;font:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:7px;padding:7px 9px;transition:background-color .16s,border-color .16s,color .16s,transform .16s;display:grid}.estimate-editor-tabs button:hover,.estimate-editor-tabs button:focus-visible{border-color:var(--line);background:var(--surface-muted);color:var(--ink)}.estimate-editor-tabs button:active{transform:translateY(1px)}.estimate-editor-tabs button.active{border-color:color-mix(in srgb, var(--teal) 48%, var(--line));background:var(--surface);box-shadow:inset 3px 0 var(--teal), 0 1px 5px color-mix(in srgb,var(--shadow-color) 8%,transparent);color:var(--accent-text)}.estimate-editor-tabs button>span{gap:1px;min-width:0;display:grid}.estimate-editor-tabs button strong,.estimate-editor-tabs button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.estimate-editor-tabs button strong{color:var(--ink);font-size:.78rem}.estimate-editor-tabs button small{color:var(--muted);font-size:.66rem}.estimate-editor-panel{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:0 5px 18px color-mix(in srgb,var(--shadow-color) 5%,transparent);border-radius:8px;gap:14px;padding:16px;animation:.18s ease-out estimate-panel-enter;display:grid}.estimate-editor-panel[hidden]{display:none}.estimate-form-error{margin:0}@keyframes estimate-panel-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.estimate-editor-panel.material-section,.estimate-editor-panel.reservation-section{border-top:1px solid var(--line);margin-top:0;padding-top:16px}.estimate-editor-panel-heading{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:12px;display:flex}.estimate-editor-panel-heading>div{gap:3px;display:grid}.estimate-editor-panel-heading small{color:var(--accent-text);text-transform:uppercase;font-size:.68rem;font-weight:800}.estimate-editor-panel-heading h3,.estimate-editor-panel-heading p{margin:0}.estimate-editor-panel-heading h3{font-size:1rem}.estimate-editor-panel-heading p{color:var(--muted);font-size:.78rem;line-height:1.45}.estimate-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.estimate-choice-grid .customer-type-field,.estimate-choice-grid .estimate-registration-field{gap:6px;margin:0}.estimate-form-dialog .customer-type-options,.estimate-form-dialog .estimate-registration-options{gap:6px}.estimate-form-dialog .customer-type-options button,.estimate-form-dialog .estimate-registration-options button{min-height:56px;padding:9px 11px}.estimate-form-dialog .estimate-description textarea{min-height:112px}.estimate-pricing-grid{max-width:940px}.estimate-actuals-fields{grid-template-columns:repeat(3,minmax(0,1fr));max-width:940px}.estimate-actuals-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.estimate-actuals-summary article{border:1px solid var(--line);background:var(--surface-muted);border-radius:7px;gap:5px;min-width:0;padding:12px;display:grid}.estimate-actuals-summary article.highlight{border-color:color-mix(in srgb, color-mix(in srgb,var(--success) 40%,var(--border-default)) 38%, var(--line));background:color-mix(in srgb, var(--success-background) 8%, var(--surface))}.estimate-actuals-summary span{color:var(--muted);font-size:.68rem}.estimate-actuals-summary strong{overflow-wrap:anywhere;font-size:1rem}.estimate-editor-panel-footer{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:10px;padding-top:12px;display:flex}.estimate-editor-panel-footer.end{justify-content:flex-end}.estimate-editor-panel-footer button{min-width:128px}.estimate-form-dialog .material-line{grid-template-columns:minmax(112px,.8fr) minmax(180px,1.5fr) 76px 96px 78px 118px 38px;gap:7px;padding:10px}.estimate-form-dialog .material-line span,.estimate-form-dialog .material-line-total span{font-size:.7rem}.estimate-form-dialog .estimate-summary{gap:10px;padding:14px;position:sticky;top:0}.estimate-form-dialog .estimate-total{gap:6px;padding-bottom:12px}.estimate-form-dialog .estimate-total strong{font-size:clamp(1.9rem,3vw,2.45rem)}.estimate-form-dialog .estimate-summary-section{gap:8px;padding-top:10px}.estimate-form-dialog .estimate-profit-grid>div{min-height:72px;padding:10px}.estimate-summary-details{border-top:1px solid var(--line-soft)}.estimate-summary-details>summary,.estimate-pdf-menu>summary{list-style:none}.estimate-summary-details>summary::-webkit-details-marker{display:none}.estimate-pdf-menu>summary::-webkit-details-marker{display:none}.estimate-summary-details>summary{min-height:42px;color:var(--muted);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:9px 2px 0;font-size:.76rem;font-weight:800;display:flex}.estimate-summary-details>summary>span{align-items:center;gap:7px;display:inline-flex}.estimate-summary-details>summary svg:last-child,.estimate-pdf-menu>summary svg:last-child{transition:transform .16s}.estimate-summary-details[open]>summary svg:last-child,.estimate-pdf-menu[open]>summary svg:last-child{transform:rotate(180deg)}.estimate-summary-details-body{gap:10px;padding-top:2px;display:grid}.estimate-form-dialog .estimate-actions{border-top:1px solid var(--line-soft);grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding-top:10px}.estimate-pdf-menu{min-width:0;position:relative}.estimate-pdf-menu>summary{cursor:pointer;justify-content:center;align-items:center;gap:7px;width:100%;min-height:40px;display:flex}.estimate-pdf-menu-popover{z-index:40;border:1px solid var(--line);background:var(--surface);width:250px;box-shadow:var(--shadow-raised);border-radius:8px;gap:5px;padding:7px;display:grid;position:absolute;bottom:calc(100% + 7px);right:0}.estimate-pdf-menu-popover button{justify-content:flex-start;width:100%}@media (min-width:1181px){.estimate-form-dialog .estimate-layout{grid-template-columns:minmax(0,1fr) minmax(370px,400px)}}@media (min-width:1050px) and (max-width:1180px){.estimate-form-dialog .estimate-layout{grid-template-columns:minmax(0,1fr) minmax(350px,380px)}.estimate-form-dialog .estimate-summary{position:sticky}}@media (max-width:1049px){.estimate-dialog-body{grid-template-columns:1fr}.estimate-form-dialog .estimate-summary{position:static}}@media (max-width:760px){.estimate-form-backdrop{align-items:end;padding:6px}.estimate-form-dialog{height:calc(100dvh - 12px);max-height:calc(100dvh - 12px)}.estimate-dialog-header{padding:10px 11px}.estimate-dialog-header p{display:none}.estimate-dialog-body{gap:8px;padding:8px}.estimate-editor-tabs{overscroll-behavior-x:contain;scrollbar-width:thin;grid-template-columns:none;grid-auto-columns:minmax(145px,1fr);grid-auto-flow:column;overflow-x:auto}.estimate-editor-panel{gap:12px;padding:12px}.estimate-choice-grid,.estimate-form-dialog .material-fixed-fields,.estimate-actuals-fields,.estimate-actuals-summary{grid-template-columns:1fr}.estimate-form-dialog .material-line{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-form-dialog .material-line-total{min-height:42px}.estimate-form-dialog .material-line>.icon-button{width:100%}.estimate-editor-panel-footer button{min-width:0}.estimate-form-dialog .estimate-actions{grid-template-columns:1fr}.estimate-pdf-menu-popover{width:min(100%,300px);left:0;right:auto}}@media (prefers-reduced-motion:reduce){.estimate-editor-panel{animation:none}.estimate-editor-tabs button,.estimate-summary-details>summary svg:last-child,.estimate-pdf-menu>summary svg:last-child{transition:none}}html[data-theme=dark] :is(.estimate-editor-tabs,.estimate-editor-panel,.estimate-pdf-menu-popover){background:var(--surface)}html[data-theme=dark] .estimate-editor-tabs button.active{background:var(--surface-muted)}.estimate-metric-trigger{min-width:0;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0;display:block}.estimate-metric-trigger .metric-card{height:100%;transition:border-color .16s,box-shadow .16s,transform .16s}.estimate-metric-trigger:hover .metric-card,.estimate-metric-trigger:focus-visible .metric-card{border-color:color-mix(in srgb, var(--teal) 34%, var(--line));box-shadow:var(--shadow-raised);transform:translateY(-1px)}.estimate-metric-trigger:focus-visible{outline:0}.estimate-metric-dialog{border:1px solid var(--line);background:var(--surface);width:min(820px,100vw - 28px);max-height:min(780px,100dvh - 28px);box-shadow:var(--shadow-raised);border-radius:8px;overflow:auto}.estimate-metric-dialog>header{z-index:2;border-bottom:1px solid var(--line);background:var(--surface);grid-template-columns:42px minmax(0,1fr) 36px;align-items:start;gap:12px;padding:17px 18px;display:grid;position:sticky;top:0}.estimate-metric-dialog-icon{background:var(--surface-soft);width:40px;height:40px;color:var(--accent-text);border-radius:7px;place-items:center;display:grid}.estimate-metric-dialog>header>div:nth-child(2){gap:3px;display:grid}.estimate-metric-dialog>header small{color:var(--accent-text);text-transform:uppercase;font-size:.64rem;font-weight:800}.estimate-metric-dialog h2,.estimate-metric-dialog p{margin:0}.estimate-metric-dialog h2{font-size:1.08rem}.estimate-metric-dialog>header p{color:var(--muted);font-size:.74rem;line-height:1.45}.estimate-metric-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:16px 18px;display:grid}.estimate-metric-detail-grid article{border:1px solid var(--line);background:var(--surface-muted);border-radius:7px;gap:5px;min-width:0;padding:11px;display:grid}.estimate-metric-detail-grid span{color:var(--muted);font-size:.65rem}.estimate-metric-detail-grid strong{overflow-wrap:anywhere;font-size:.9rem}.estimate-metric-item-list{border-top:1px solid var(--line);gap:0;padding:0 18px 18px;display:grid}.estimate-metric-list-heading{grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:52px;display:grid}.estimate-metric-list-heading svg{color:var(--accent-text)}.estimate-metric-list-heading strong{font-size:.78rem}.estimate-metric-list-heading small{background:var(--surface-soft);min-width:26px;height:23px;color:var(--muted);border-radius:4px;place-items:center;font-size:.66rem;font-weight:800;display:grid}.estimate-metric-item-list>article{border-top:1px solid var(--line-soft);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:11px 2px;display:grid}.estimate-metric-item-list>article>div{gap:2px;min-width:0;display:grid}.estimate-metric-item-list>article strong{text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.estimate-metric-item-list>article span,.estimate-metric-item-list>article small,.estimate-metric-item-list>p{color:var(--muted);font-size:.67rem}.estimate-metric-item-list>article b{white-space:nowrap;font-size:.78rem}.estimate-metric-item-list>p{border-top:1px solid var(--line-soft);margin:0;padding:22px 2px}.estimate-actual-result-details>header small{color:var(--muted);margin-left:auto;font-size:.66rem}@media (max-width:760px){.estimate-metric-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-metric-dialog>header,.estimate-metric-detail-grid,.estimate-metric-item-list{padding-inline:13px}}.contracts-workspace .data-table.contract-list-table,.data-table.estimate-list-table{table-layout:fixed;min-width:880px}.contracts-workspace .data-table.contract-list-table th:first-child{width:44px}.contracts-workspace .data-table.contract-list-table th:nth-child(2){width:18%}.contracts-workspace .data-table.contract-list-table th:nth-child(3){width:25%}.contracts-workspace .data-table.contract-list-table th:nth-child(4){width:12%}.contracts-workspace .data-table.contract-list-table th:nth-child(5){width:14%}.contracts-workspace .data-table.contract-list-table th:nth-child(6){width:15%}.contracts-workspace .data-table.contract-list-table th:nth-child(7){width:150px}.estimate-list-table th:first-child{width:44px}.estimate-list-table th:nth-child(2){width:25%}.estimate-list-table th:nth-child(3){width:19%}.estimate-list-table th:nth-child(4){width:14%}.estimate-list-table th:nth-child(5){width:15%}.estimate-list-table th:nth-child(6){width:8%}.estimate-list-table th:nth-child(7){width:150px}.compact-record-table td{vertical-align:middle;height:68px}.compact-record-table td>strong:first-child{overflow-wrap:anywhere;display:block}.record-details-trigger{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--ink);cursor:pointer;font:inherit;white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:7px 9px;font-size:.76rem;font-weight:750;transition:border-color .15s,background-color .15s,color .15s,transform .15s;display:inline-flex}.record-details-trigger:hover,.record-details-trigger:focus-visible{border-color:color-mix(in srgb, var(--teal) 52%, var(--line));background:var(--surface-muted);color:var(--accent-text)}.record-details-trigger:active{transform:translateY(1px)}.record-row-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.record-row-actions .record-details-trigger{flex:1 1 0;padding-inline:7px}.hours-dialog-trigger>span{background:var(--surface-soft);color:var(--accent-text);border-radius:4px;padding:2px 4px;font-size:.63rem;font-weight:850}.record-details-backdrop{z-index:160;padding:18px}.record-details-dialog{border:1px solid var(--line);background:var(--surface);width:min(980px,100%);max-height:calc(100dvh - 36px);box-shadow:0 28px 80px color-mix(in srgb,var(--shadow-color) 30%,transparent);border-radius:8px;grid-template-rows:auto minmax(0,1fr) auto;animation:.17s ease-out record-details-enter;display:grid;overflow:hidden}@keyframes record-details-enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.record-details-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;min-width:0;padding:15px 17px;display:flex}.record-details-heading{gap:2px;min-width:0;display:grid}.record-details-heading small{color:var(--accent-text);text-transform:uppercase;font-size:.68rem;font-weight:850}.record-details-heading h2,.record-details-heading p{margin:0}.record-details-heading h2{overflow-wrap:anywhere;font-size:1.08rem}.record-details-heading p{color:var(--muted);font-size:.8rem}.record-details-header-actions{flex:none;align-items:center;gap:9px;display:flex}.record-details-body{overscroll-behavior:contain;align-content:start;gap:14px;min-height:0;padding:15px 17px 18px;display:grid;overflow-y:auto}.record-details-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.record-details-metrics article{border:1px solid var(--line);background:var(--surface-muted);border-radius:7px;align-content:start;gap:5px;min-width:0;min-height:86px;padding:11px;display:grid}.record-details-metrics span,.record-finance-grid span{color:var(--muted);text-transform:uppercase;font-size:.67rem;font-weight:800}.record-details-metrics strong{text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;line-height:1.15;overflow:hidden}.record-details-metrics small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.69rem;overflow:hidden}.record-details-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.record-details-section{border-top:1px solid var(--line-soft);gap:10px;min-width:0;padding-top:12px;display:grid}.record-details-section>header{color:var(--accent-text);align-items:center;gap:7px;display:flex}.record-details-section>header h3{color:var(--ink);margin:0;font-size:.82rem}.record-details-list{gap:0;margin:0;display:grid}.record-details-list>div{border-bottom:1px solid var(--line-soft);grid-template-columns:minmax(105px,.7fr) minmax(0,1.3fr);gap:12px;min-width:0;padding:8px 0;display:grid}.record-details-list>div:last-child{border-bottom:0}.record-details-list dt{color:var(--muted);font-size:.72rem;font-weight:700}.record-details-list dd{overflow-wrap:anywhere;text-align:right;min-width:0;margin:0;font-size:.78rem;font-weight:750}.record-detail-with-icon{justify-content:flex-end;align-items:center;gap:5px;display:inline-flex}.record-details-notes p{color:var(--ink);white-space:pre-wrap;margin:0;font-size:.8rem;line-height:1.55}.record-resource-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.record-resource-actions>*{min-width:0}.record-resource-actions :is(.contract-building-trigger,.contract-report-trigger,.contract-document-trigger){width:100%;min-width:0;min-height:62px}.record-finance-grid{border:1px solid var(--line);background:var(--line);border-radius:7px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.record-finance-grid>div{background:var(--surface);align-content:center;gap:5px;min-width:0;min-height:64px;padding:9px 10px;display:grid}.record-finance-grid strong{text-overflow:ellipsis;white-space:nowrap;font-size:.83rem;overflow:hidden}.record-reservation-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.record-reservation-list li{color:var(--ink);padding-left:15px;font-size:.78rem;line-height:1.45;position:relative}.record-reservation-list li:before{background:var(--teal);content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:.55em;left:1px}.estimate-details-report{grid-template-columns:38px minmax(0,1fr) auto;align-items:center}.estimate-details-report>span{border:1px solid var(--line);background:var(--surface-muted);width:38px;height:42px;color:var(--accent-text);border-radius:6px;place-items:center;display:grid}.estimate-details-report>div{gap:2px;min-width:0;display:grid}.estimate-details-report small{color:var(--muted);text-transform:uppercase;font-size:.66rem;font-weight:800}.estimate-details-report strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.estimate-details-report a{border:1px solid var(--line);min-height:34px;color:var(--ink);border-radius:6px;align-items:center;gap:6px;padding:7px 9px;font-size:.75rem;font-weight:750;text-decoration:none;display:inline-flex}.record-details-footer{border-top:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:10px;padding:11px 17px;display:flex}.contract-record-details .record-details-footer,.estimate-details-actions{justify-content:flex-end}.record-details-footer>.primary-button{text-decoration:none}.record-details-footer-actions,.record-details-footer-actions .estimate-row-actions,.record-details-footer-actions .estimate-row-action-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;min-width:0;display:flex}.record-details-footer-actions .estimate-status-control{min-width:210px}@media (max-width:820px){.record-details-backdrop{align-items:end;padding:8px}.record-details-dialog{max-height:calc(100dvh - 16px)}.record-details-metrics,.record-finance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.record-details-columns{grid-template-columns:1fr;gap:12px}.record-resource-actions{grid-template-columns:1fr}.record-details-footer,.record-details-footer-actions,.record-details-footer-actions .estimate-row-actions{flex-direction:column;align-items:stretch}.record-details-footer :is(a,button,form),.record-details-footer-actions,.record-details-footer-actions .estimate-status-control{width:100%}}@media (max-width:520px){.record-details-header,.record-details-body,.record-details-footer{padding-left:12px;padding-right:12px}.record-details-header-actions .status-badge{display:none}.record-details-metrics{gap:5px}.record-details-metrics article{min-height:78px;padding:9px}.record-details-list>div{grid-template-columns:1fr;gap:3px}.record-details-list dd{text-align:left}.record-detail-with-icon{justify-content:flex-start}.estimate-details-report{grid-template-columns:38px minmax(0,1fr)}.estimate-details-report a{grid-column:1/-1;justify-content:center}}@media (max-width:680px){.table-wrap:has(.compact-record-table){background:0 0;border:0;overflow:visible}.contracts-workspace .data-table.contract-list-table,.data-table.estimate-list-table{width:100%;min-width:0;display:block}.compact-record-table thead{display:none}.compact-record-table tbody{gap:8px;display:grid}.compact-record-table tbody tr{border:1px solid var(--line);background:var(--surface);border-radius:7px;gap:0 10px;padding:11px;display:grid;overflow:hidden}.compact-record-table tbody tr:hover{background:var(--surface)}.compact-record-table tbody td,.contracts-workspace .compact-record-table tbody td{border:0;width:auto;height:auto;padding:5px 0;display:block}.contract-list-table tbody tr{grid-template-columns:24px minmax(0,1fr) auto;grid-template-areas:"select customer status""title title title""value year year""action action action"}.contract-list-table td:first-child{grid-area:select}.contract-list-table td:nth-child(2){grid-area:customer}.contract-list-table td:nth-child(3){border-top:1px solid var(--line-soft);grid-area:title;margin-top:5px;padding-top:9px}.contract-list-table td:nth-child(4){grid-area:status;justify-self:end}.contract-list-table td:nth-child(5){grid-area:value}.contract-list-table td:nth-child(6){text-align:right;grid-area:year}.contract-list-table td:nth-child(7){grid-area:action}.contract-list-table td:nth-child(5):before,.contract-list-table td:nth-child(6):before,.estimate-list-table td:nth-child(5):before,.estimate-list-table td:nth-child(6):before{color:var(--muted);text-transform:uppercase;margin-bottom:3px;font-size:.62rem;font-weight:800;display:block}.contract-list-table td:nth-child(5):before{content:"Kontraktsum"}.contract-list-table td:nth-child(6):before{content:"Årets plan"}.estimate-list-table tbody tr{grid-template-columns:24px minmax(0,1fr) auto;grid-template-areas:"select estimate status""customer customer customer""price margin margin""action action action"}.estimate-list-table td:first-child{grid-area:select}.estimate-list-table td:nth-child(2){grid-area:estimate}.estimate-list-table td:nth-child(3){border-top:1px solid var(--line-soft);grid-area:customer;margin-top:5px;padding-top:9px}.estimate-list-table td:nth-child(4){grid-area:status;justify-self:end}.estimate-list-table td:nth-child(5){grid-area:price}.estimate-list-table td:nth-child(6){text-align:right;grid-area:margin}.estimate-list-table td:nth-child(7){grid-area:action}.estimate-list-table td:nth-child(5):before{content:"Pris eks. mva"}.estimate-list-table td:nth-child(6):before{content:"DG"}.compact-record-table .record-details-trigger{width:100%;margin-top:5px}.record-row-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}}@media (prefers-reduced-motion:reduce){.record-details-dialog{animation:none}.record-details-trigger{transition:none}}html[data-theme=dark] :is(.record-details-dialog,.record-details-footer,.record-finance-grid>div,.record-details-trigger){background:var(--surface)}.hours-dialog-backdrop{z-index:190}.hours-record-dialog{grid-template-rows:auto minmax(0,1fr);width:min(900px,100%)}.offer-hours-dialog{grid-template-rows:auto minmax(0,1fr);width:min(640px,100%)}.hours-dialog-body{grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);align-items:start}.hours-entry-panel,.hours-history-panel{align-content:start;gap:14px;min-width:0;display:grid}.hours-entry-panel>header,.hours-history-panel>header{grid-template-columns:34px minmax(0,1fr) auto;align-items:start;gap:9px;display:grid}.hours-entry-panel>header>svg,.hours-history-panel>header>svg{background:var(--surface-soft);width:32px;height:32px;color:var(--accent-text);border-radius:6px;padding:7px}.hours-entry-panel h3,.hours-entry-panel p,.hours-history-panel h3,.hours-history-panel p{margin:0}.hours-entry-panel h3,.hours-history-panel h3{font-size:.88rem}.hours-entry-panel p,.hours-history-panel p{color:var(--muted);margin-top:2px;font-size:.72rem}.hours-history-panel>header>span{background:var(--surface-muted);min-width:27px;height:27px;color:var(--ink);border-radius:5px;place-items:center;font-size:.72rem;font-weight:850;display:grid}.hours-live-summary{border:1px solid var(--line);background:var(--line);border-radius:7px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.hours-live-summary>div{background:var(--surface-muted);align-content:center;gap:5px;min-width:0;min-height:70px;padding:10px;display:grid}.hours-live-summary span{color:var(--muted);text-transform:uppercase;font-size:.65rem;font-weight:800}.hours-live-summary strong{overflow-wrap:anywhere;font-size:.82rem;line-height:1.25}.hours-entry-form{border-top:1px solid var(--line-soft);grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding-top:14px;display:grid}.hours-entry-form .span-2{grid-column:1/-1}.hours-entry-form textarea{resize:vertical;min-height:84px}.hours-number-input{grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.hours-number-input input{grid-area:1/1/auto/-1;padding-right:54px}.hours-number-input>span{z-index:1;color:var(--muted);pointer-events:none;grid-area:1/2;margin-right:11px;font-size:.7rem;font-weight:750}.hours-form-action{justify-content:flex-end;display:flex}.hours-history-list{gap:6px;display:grid}.hours-history-list>button{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);cursor:pointer;font:inherit;text-align:left;border-radius:7px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px;display:grid}.hours-history-list>button:hover,.hours-history-list>button.active{border-color:color-mix(in srgb, var(--teal) 52%, var(--line));background:var(--surface-muted)}.hours-history-year{font-size:.82rem;font-weight:900}.hours-history-list>button>span:nth-child(2){gap:1px;min-width:0;display:grid}.hours-history-list strong{font-size:.78rem}.hours-history-list small{color:var(--muted);font-size:.66rem}.hours-history-list>button>span:last-child{text-align:right;font-size:.68rem;font-weight:800}.hours-variance-positive{color:var(--green)}.hours-variance-negative{color:var(--red)}.hours-history-empty{border:1px dashed var(--line);background:var(--surface-muted);min-height:190px;color:var(--muted);text-align:center;border-radius:7px;align-content:center;place-items:center;gap:6px;padding:24px;display:grid}.hours-history-empty strong{color:var(--ink);font-size:.82rem}.hours-history-empty p{max-width:260px;font-size:.72rem;line-height:1.45}.offer-hours-summary{margin-bottom:3px}@media (max-width:760px){.hours-dialog-body{grid-template-columns:1fr}.hours-history-panel{border-top:1px solid var(--line-soft);padding-top:14px}}@media (max-width:520px){.hours-live-summary,.hours-entry-form{grid-template-columns:1fr}.hours-entry-form .span-2{grid-column:auto}.hours-form-action .primary-button{width:100%}.hours-history-list>button{grid-template-columns:45px minmax(0,1fr)}.hours-history-list>button>span:last-child{text-align:left;grid-column:2}}.contract-report-trigger{border:1px solid var(--border-default);background:var(--surface);min-width:172px;min-height:50px;color:var(--ink);cursor:pointer;text-align:left;border-radius:7px;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;padding:7px 10px 7px 7px;transition:border-color .14s,background .14s,box-shadow .14s;display:inline-grid}.contract-report-trigger:hover{border-color:color-mix(in srgb,var(--accent-primary) 40%,var(--border-default));background:var(--surface-primary);box-shadow:0 2px 8px color-mix(in srgb,var(--shadow-color) 8%,transparent)}.contract-report-trigger-icon,.control-report-heading-mark>span,.control-report-section-heading>span{background:var(--surface-primary);color:var(--accent-text);border-radius:6px;place-items:center;display:grid}.contract-report-trigger-icon{width:36px;height:36px}.contract-report-trigger>span:last-child{gap:2px;min-width:0;display:grid}.contract-report-trigger strong{font-size:.82rem;line-height:1.2}.contract-report-trigger small{color:var(--muted);font-size:.74rem}.control-report-backdrop{padding:20px}.control-report-modal{border:1px solid var(--line);background:var(--surface);width:min(1160px,100%);height:min(860px,100dvh - 40px);box-shadow:0 28px 80px color-mix(in srgb,var(--shadow-color) 30%,transparent);border-radius:8px;grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}.control-report-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:14px 18px;display:flex}.control-report-heading-mark{align-items:center;gap:11px;min-width:0;display:flex}.control-report-heading-mark>span{flex:none;width:40px;height:40px}.control-report-heading-mark>div{min-width:0}.control-report-heading-mark small{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:800}.control-report-heading-mark h2{text-overflow:ellipsis;white-space:nowrap;margin:1px 0 0;font-size:1.06rem;overflow:hidden}.control-report-body{grid-template-columns:272px minmax(0,1fr);min-width:0;min-height:0;display:grid}.control-report-sidebar{border-right:1px solid var(--line);background:var(--surface-muted);flex-direction:column;min-width:0;min-height:0;padding:12px;display:flex}.control-report-new-button{flex:none;width:100%}.control-report-list-heading{color:var(--muted);text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;padding:18px 2px 8px;font-size:.72rem;font-weight:800;display:flex}.control-report-list-heading strong{background:var(--surface-secondary);min-width:24px;color:var(--text-muted);text-align:center;border-radius:5px;padding:2px 6px}.control-report-list{gap:6px;min-height:0;padding-right:2px;display:grid;overflow-y:auto}.control-report-list button{width:100%;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:9px;padding:9px;display:grid}.control-report-list button:hover,.control-report-list button.active{border-color:var(--border-default);background:var(--surface)}.control-report-list button.active{box-shadow:inset 3px 0 var(--teal)}.control-report-file-mark{border:1px solid var(--line);background:var(--surface);width:38px;height:44px;color:var(--text-muted);border-radius:5px;place-items:center;display:grid}.control-report-list button>span:last-child{gap:2px;min-width:0;display:grid}.control-report-list button strong,.control-report-list button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.control-report-list button strong{font-size:.79rem}.control-report-list button small{color:var(--muted);font-size:.71rem}.control-report-list button em{border-radius:4px;width:max-content;margin-top:4px;padding:2px 6px;font-size:.65rem;font-style:normal;font-weight:800}.control-report-list button em.sent{background:var(--surface-secondary);color:var(--green)}.control-report-list button em.draft{background:var(--warning-background);color:var(--amber)}.control-report-loading,.control-report-list-empty{color:var(--muted);align-items:center;gap:8px;margin:0;padding:12px 4px;font-size:.8rem;display:flex}.control-report-main{background:var(--surface);min-width:0;min-height:0;padding:18px 20px 0;overflow-y:auto}.control-report-message{border:1px solid;border-radius:7px;align-items:flex-start;gap:9px;max-width:820px;margin:0 auto 12px;padding:10px 12px;font-size:.82rem;display:flex}.control-report-message svg{flex:none;margin-top:1px}.control-report-message.error{border-color:color-mix(in srgb,var(--danger) 40%,var(--border-default));background:var(--surface-primary);color:var(--danger)}.control-report-message.success{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary);color:var(--success)}.control-report-upload-panel,.control-report-editor{width:min(820px,100%);margin:0 auto}.control-report-upload-panel{gap:18px;padding:18px 0 28px;display:grid}.control-report-section-heading{align-items:flex-start;gap:12px;display:flex}.control-report-section-heading>span{flex:none;width:42px;height:42px}.control-report-section-heading h3,.control-report-editor-title h3{margin:0;font-size:1rem}.control-report-section-heading p{color:var(--muted);margin:4px 0 0;font-size:.84rem}.control-report-upload-grid,.control-report-form-grid{grid-template-columns:minmax(130px,.34fr) minmax(260px,1fr);gap:12px;display:grid}.control-report-form-grid{margin-bottom:12px}.control-report-form-grid .control-report-location-field,.control-report-form-grid .control-report-type-field{grid-column:auto}.control-report-form-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.control-report-dropzone{border:1px dashed var(--border-default);background:var(--surface-muted);cursor:pointer;text-align:center;border-radius:8px;align-content:center;place-items:center;gap:7px;min-height:160px;padding:24px;transition:border-color .14s,background .14s;display:grid}.control-report-customer-context{border-left:3px solid var(--teal);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 12px;padding:4px 10px;display:grid}.control-report-customer-context>span{color:var(--muted);text-transform:uppercase;grid-row:1/3;font-size:.71rem;font-weight:800}.control-report-customer-context strong{font-size:.84rem}.control-report-customer-context small{color:var(--muted);font-size:.73rem}.control-report-upload-list{gap:8px;display:grid}.control-report-upload-list article{border:1px solid var(--line);background:var(--surface-muted);border-radius:7px;grid-template-columns:minmax(170px,.9fr) 92px minmax(220px,1.25fr) 42px;align-items:end;gap:9px;padding:10px;display:grid}.control-report-upload-file{grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;min-width:0;padding-bottom:2px;display:grid}.control-report-upload-file>span{border:1px solid var(--line);background:var(--surface);width:34px;height:38px;color:var(--muted);border-radius:5px;place-items:center;display:grid}.control-report-upload-file>div{gap:2px;min-width:0;display:grid}.control-report-upload-file strong,.control-report-upload-file small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.control-report-upload-file strong{font-size:.78rem}.control-report-upload-file small{color:var(--muted);font-size:.69rem}.control-report-upload-list .field{gap:4px}.control-report-upload-list .field>span{font-size:.68rem}.control-report-upload-list :is(input,select){min-height:38px;padding-block:7px}.control-report-upload-list .icon-button{width:42px;height:38px}.control-report-dropzone:hover,.control-report-dropzone.selected{border-color:var(--teal);background:var(--surface-primary)}.control-report-dropzone input{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.control-report-dropzone>span{background:var(--surface-primary);width:44px;height:44px;color:var(--accent-text);border-radius:7px;place-items:center;display:grid}.control-report-dropzone strong{overflow-wrap:anywhere;max-width:100%;font-size:.9rem}.control-report-dropzone small{color:var(--muted);font-size:.76rem}.control-report-privacy-note,.control-report-scan-ok{border:1px solid var(--border-default);background:var(--surface-primary);color:var(--success);border-radius:7px;align-items:flex-start;gap:9px;padding:10px 12px;font-size:.8rem;display:flex}.control-report-privacy-note svg,.control-report-scan-ok svg{flex:none}.control-report-scan-button{justify-self:end;width:max-content;min-width:240px}.control-report-editor{gap:0;padding-bottom:0;display:grid}.control-report-editor-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:14px;padding:2px 0 14px;display:flex}.control-report-editor-title-actions{flex:none;align-items:center;gap:8px;display:flex}.control-report-editor-title>div{min-width:0}.control-report-editor-title h3{overflow-wrap:anywhere;margin-top:7px}.control-report-editor-title small{color:var(--muted);margin-top:3px;font-size:.73rem;display:block}.control-report-state{border-radius:4px;align-items:center;gap:5px;padding:4px 7px;font-size:.68rem;font-weight:800;display:inline-flex}.control-report-state.sent{background:var(--surface-secondary);color:var(--green)}.control-report-state.draft{background:var(--warning-background);color:var(--amber)}.control-report-scan-warning{border:1px solid color-mix(in srgb,var(--warning) 40%,var(--border-default));background:var(--surface-primary);color:var(--warning);border-radius:7px;align-items:flex-start;gap:10px;margin:14px 0;padding:11px 12px;font-size:.79rem;display:flex}.control-report-scan-warning>svg{flex:none}.control-report-scan-warning>div{gap:3px;display:grid}.control-report-scan-ok{margin:14px 0}.control-report-severity-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.control-report-native-classification{border:1px solid var(--line);border-left:3px solid var(--brand);background:color-mix(in srgb, var(--panel) 92%, var(--brand) 8%);color:var(--muted);border-radius:8px;padding:12px 14px;font-size:.84rem;line-height:1.55}.control-report-severity{border:1px solid var(--line);background:var(--surface-muted);border-left-width:4px;border-radius:7px;grid-template-columns:auto minmax(0,1fr) 72px;align-items:center;gap:8px;padding:9px;display:grid}.control-report-severity.tg3{border-left-color:color-mix(in srgb,var(--danger) 40%,var(--border-default))}.control-report-severity.tg2{border-left-color:color-mix(in srgb,var(--warning) 40%,var(--border-default))}.control-report-severity.tg1{border-left-color:color-mix(in srgb,var(--info) 40%,var(--border-default))}.control-report-severity>span{font-size:.7rem;font-weight:850}.control-report-severity>strong{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.control-report-severity input{border:1px solid var(--border-default);background:var(--surface);width:72px;min-height:38px;color:var(--ink);text-align:right;border-radius:6px;padding:7px 8px}.control-report-email-heading{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;margin:7px 0 10px;padding-top:15px;display:flex}.control-report-email-heading>div{align-items:center;gap:9px;display:flex}.control-report-email-heading>div>div{gap:1px;display:grid}.control-report-email-heading span{color:var(--muted);font-size:.72rem}.control-report-email-heading .text-button{min-height:34px}.control-report-email-body{line-height:1.55;min-height:290px!important}.control-report-editor :is(input,select,textarea):disabled{cursor:not-allowed;opacity:.72}.control-report-actions{border-top:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding:12px 0 16px;display:flex;position:sticky;bottom:0}.control-report-actions>div:last-child{gap:8px;display:flex}.control-report-delete{min-height:36px;color:var(--danger)}.control-report-send-button{min-width:205px}.control-report-sent-to{color:var(--green);font-size:.78rem;font-weight:750}.control-report-empty-main{min-height:360px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:9px;display:grid}html[data-theme=dark] :is(.contract-report-trigger,.control-report-modal,.control-report-main,.control-report-file-mark,.control-report-actions,.control-report-severity input){background:var(--surface);color:var(--ink)}html[data-theme=dark] :is(.estimate-source-report,.estimate-info-report>span){border-color:var(--line);background:var(--surface-muted)}html[data-theme=dark] .estimate-source-report-icon{background:var(--success-background);color:var(--success)}html[data-theme=dark] :is(.control-report-sidebar,.control-report-dropzone,.control-report-severity,.control-report-upload-list article){background:var(--surface-muted);color:var(--ink)}html[data-theme=dark] :is(.contract-report-trigger-icon,.control-report-heading-mark>span,.control-report-section-heading>span,.control-report-dropzone>span){background:var(--surface-primary);color:var(--accent-text)}html[data-theme=dark] :is(.contract-report-trigger:hover,.control-report-list button:hover,.control-report-list button.active,.control-report-dropzone:hover,.control-report-dropzone.selected){background:var(--surface-primary)}html[data-theme=dark] :is(.control-report-privacy-note,.control-report-scan-ok){border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary);color:var(--success)}html[data-theme=dark] .control-report-scan-warning{border-color:color-mix(in srgb,var(--warning) 40%,var(--border-default));background:var(--surface-primary);color:var(--warning)}html[data-theme=dark] .control-report-message.error{border-color:color-mix(in srgb,var(--danger) 40%,var(--border-default));background:var(--surface-primary);color:var(--danger)}html[data-theme=dark] .control-report-message.success{border-color:color-mix(in srgb,var(--success) 40%,var(--border-default));background:var(--surface-primary);color:var(--success)}@media (max-width:900px){.control-report-backdrop{align-items:stretch;padding:8px}.control-report-modal{height:calc(100dvh - 16px)}.control-report-body{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.control-report-sidebar{border-right:0;border-bottom:1px solid var(--line);grid-template-rows:auto auto;grid-template-columns:180px minmax(0,1fr);gap:0 12px;padding:10px;display:grid}.control-report-new-button{grid-row:1/3;align-self:center}.control-report-list-heading{padding:0 2px 6px}.control-report-list{display:flex;overflow:auto hidden}.control-report-list button{flex:0 0 220px;width:220px}.control-report-list-empty,.control-report-loading{padding:6px 2px}}@media (max-width:680px){.control-report-header{padding:12px}.control-report-heading-mark h2{white-space:normal}.control-report-sidebar{grid-template-rows:auto auto minmax(0,1fr);grid-template-columns:1fr;gap:7px;max-height:190px;display:grid}.control-report-new-button{grid-row:auto}.control-report-list-heading{padding:3px 2px 0}.control-report-main{padding:13px 12px 0}.control-report-upload-grid,.control-report-form-grid,.control-report-form-grid.two-columns{grid-template-columns:1fr}.control-report-upload-list article{grid-template-columns:minmax(0,1fr) 42px;align-items:start}.control-report-upload-file{align-self:center}.control-report-upload-list article>.field{grid-column:1/-1}.control-report-upload-list article>.icon-button{grid-area:1/2}.control-report-scan-button{width:100%;min-width:0}.control-report-editor-title,.control-report-email-heading{flex-direction:column;align-items:stretch}.control-report-editor-title-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.control-report-editor-title-actions :is(a,button),.control-report-editor-title .ghost-button{width:100%}.control-report-severity{grid-template-columns:1fr;align-content:start}.control-report-severity>strong{white-space:normal;min-height:32px}.control-report-severity input{width:100%}.control-report-email-body{min-height:360px!important}.control-report-actions{flex-direction:column;align-items:stretch}.control-report-actions>div:last-child{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);width:100%;display:grid}.control-report-actions :is(.ghost-button,.primary-button){width:100%;min-width:0;padding-inline:8px;font-size:.78rem}.estimate-source-report{grid-template-columns:38px minmax(0,1fr);align-items:start}.estimate-source-report-icon{width:38px;height:38px}.estimate-source-report>a{grid-column:1/-1;justify-content:center}.estimate-info-backdrop{align-items:end;padding:10px}.estimate-info-dialog{max-height:calc(100dvh - 20px)}.estimate-info-report{grid-template-columns:40px minmax(0,1fr)}.estimate-info-report a{grid-column:1/-1;justify-content:center}}.dashboard-page{gap:14px}.dashboard-metric-grid{gap:8px}.dashboard-metric{gap:5px;min-height:112px;padding:13px 15px 12px 17px}.dashboard-metric-heading{grid-template-columns:30px minmax(0,1fr) 18px;gap:9px;display:grid}.dashboard-metric-icon{width:30px;height:30px}.dashboard-metric-label{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.dashboard-metric>strong{font-size:clamp(1.3rem,1.8vw,1.7rem)}.dashboard-metric>small{text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.dashboard-agenda-calendar{gap:10px}.dashboard-agenda-header{padding:15px 16px 2px}.dashboard-agenda-legend{gap:6px 14px;padding:7px 16px}.dashboard-agenda-legend span{font-size:.68rem}.dashboard-agenda-grid{gap:6px;padding:0 16px 16px}.dashboard-agenda-day{gap:4px;min-height:104px;padding:9px 10px}.dashboard-agenda-date-row strong{font-size:1.45rem}.dashboard-agenda-day-summary{font-size:.66rem}.dashboard-year-wheel{gap:0;padding:0;display:grid;overflow:hidden}.dashboard-year-wheel-header{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:18px;padding:15px 16px;display:flex}.dashboard-year-wheel-header>div:first-child{gap:2px;min-width:0;display:grid}.dashboard-year-wheel-header h2,.dashboard-year-wheel-header p{margin:0}.dashboard-year-wheel-header h2{font-size:1.05rem}.dashboard-year-wheel-header p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.dashboard-year-wheel-header p strong{color:var(--ink)}.dashboard-year-wheel-actions,.year-wheel-year-switcher{flex:none;align-items:center;gap:7px;display:flex}.year-wheel-year-switcher{border:1px solid var(--line);background:var(--surface);border-radius:7px;min-height:36px;padding:2px}.year-wheel-year-switcher strong{text-align:center;min-width:46px;font-size:.8rem}.year-wheel-year-switcher .icon-button{border:0;align-self:center;width:30px;height:30px}.year-overview-months{border-bottom:1px solid var(--line-soft);background:var(--surface-muted);grid-template-columns:repeat(12,minmax(0,1fr));gap:5px;padding:9px 12px;display:grid}.year-overview-months button{min-width:0;min-height:58px;color:var(--ink);cursor:pointer;font:inherit;text-align:center;background:0 0;border:1px solid #0000;border-radius:6px;align-content:center;gap:3px;padding:7px 5px 9px;transition:border-color .14s,background .14s,color .14s;display:grid;position:relative;overflow:hidden}.year-overview-months button:hover,.year-overview-months button:focus-visible{border-color:var(--line);background:var(--surface)}.year-overview-months button.active{border-color:color-mix(in srgb, var(--teal) 55%, var(--line));background:var(--surface);color:var(--accent-text);box-shadow:0 2px 8px color-mix(in srgb,var(--shadow-color) 8%,transparent)}.year-overview-months button.current:not(.active):after{background:var(--accent-primary);content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:6px;right:6px}.year-overview-months button>span{color:var(--muted);text-transform:uppercase;font-size:.65rem;font-weight:800}.year-overview-months button>strong{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.year-overview-months button>i{width:var(--income-level);background:var(--teal);height:2px;position:absolute;bottom:0;left:0}.year-overview-detail{grid-template-columns:minmax(250px,.72fr) minmax(0,1.5fr);min-width:0;display:grid}.year-overview-summary{border-right:1px solid var(--line-soft);align-content:start;gap:2px;min-width:0;padding:17px 18px;display:grid}.year-overview-summary>span{color:var(--muted);font-size:.68rem;font-weight:800}.year-overview-summary h3{margin:0;font-size:1.08rem}.year-overview-total{gap:2px;margin-top:8px;display:grid}.year-overview-total small,.year-overview-summary dt{color:var(--muted);font-size:.66rem;font-weight:700}.year-overview-total strong{overflow-wrap:anywhere;font-size:1.28rem}.year-overview-summary dl{border-top:1px solid var(--line-soft);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0 0;padding-top:10px;display:grid}.year-overview-summary dl>div{gap:3px;min-width:0;display:grid}.year-overview-summary dd{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.72rem;font-weight:800;overflow:hidden}.year-overview-items{align-content:start;min-width:0;padding:14px 18px 15px;display:grid}.year-overview-items>header{justify-content:space-between;align-items:center;gap:12px;min-height:28px;display:flex}.year-overview-items>header>div{align-items:baseline;gap:7px;display:flex}.year-overview-items>header strong{font-size:.82rem}.year-overview-items>header span,.year-overview-items>header small{color:var(--muted);font-size:.67rem}.year-overview-items>header small{text-transform:uppercase;font-weight:800}.year-wheel-detail-list{max-height:300px;display:grid;overflow-y:auto}.year-wheel-detail-list>a{border-top:1px solid var(--line-soft);min-width:0;color:var(--ink);grid-template-columns:30px minmax(0,1fr) 16px;align-items:center;gap:9px;padding:8px 2px;text-decoration:none;display:grid}.year-wheel-detail-list>a:hover{color:var(--accent-text)}.year-wheel-detail-list>a>span:nth-child(2){gap:2px;min-width:0;display:grid}.year-wheel-detail-list>a strong,.year-wheel-detail-list>a small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.year-wheel-detail-list>a strong{font-size:.76rem}.year-wheel-detail-list>a small{color:var(--muted);font-size:.66rem}.year-wheel-item-icon{background:var(--surface-muted);width:28px;height:28px;color:var(--accent-text);border-radius:6px;place-items:center;display:grid}.year-wheel-item-icon.estimate{color:var(--amber)}.year-wheel-item-icon.contract{color:var(--blue)}.year-wheel-item-icon.routine{color:var(--accent-text)}.year-wheel-empty{border-top:1px solid var(--line-soft);min-height:98px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:5px;font-size:.74rem;display:grid}.year-overview-show-all{color:var(--accent-text);cursor:pointer;font:inherit;background:0 0;border:0;justify-self:start;align-items:center;gap:5px;padding:7px 0 0;font-size:.7rem;font-weight:800;text-decoration:none;display:inline-flex}.year-overview-show-all svg{transition:transform .14s}.year-overview-show-all svg.rotated{transform:rotate(180deg)}@media (max-width:1180px){.dashboard-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.year-overview-months{scroll-snap-type:x proximity;scrollbar-color:var(--text-muted) transparent;scrollbar-width:thin;grid-template-columns:none;grid-auto-columns:minmax(82px,1fr);grid-auto-flow:column;scroll-padding-inline:12px;overflow-x:auto}.year-overview-months button{scroll-snap-align:center}}@media (max-width:820px){.dashboard-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.year-overview-detail{grid-template-columns:1fr}.year-overview-summary{border-right:0;border-bottom:1px solid var(--line-soft)}}@media (max-width:680px){.dashboard-page{gap:10px}.dashboard-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.dashboard-metric{min-height:116px;padding:11px 11px 10px 13px}.dashboard-metric-heading{grid-template-columns:27px minmax(0,1fr) 15px;gap:6px}.dashboard-metric-icon{width:27px;height:27px}.dashboard-metric-label{text-overflow:clip;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.68rem;line-height:1.2;display:-webkit-box;overflow:hidden}.dashboard-metric>strong{font-size:1.12rem}.dashboard-metric>small{white-space:normal;font-size:.64rem}.dashboard-agenda-header{padding:13px 12px 2px}.dashboard-agenda-legend{display:none}.dashboard-agenda-grid{grid-auto-columns:minmax(128px,47vw);padding:0 12px 13px}.dashboard-agenda-day{min-height:100px}.dashboard-year-wheel-header{flex-direction:column;align-items:stretch;gap:11px;padding:13px 12px}.dashboard-year-wheel-actions{justify-content:space-between}.year-overview-months{padding:8px 10px;scroll-padding-inline:10px}.year-overview-months button{min-height:54px}.year-overview-summary,.year-overview-items{padding:14px 12px}.year-overview-summary dl{gap:5px}.year-overview-total strong{font-size:1.18rem}.year-wheel-detail-list>a{grid-template-columns:28px minmax(0,1fr) 15px;gap:7px}}.dashboard-overview-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.dashboard-overview-trigger{border:1px solid var(--line);background:var(--surface);min-width:0;min-height:82px;color:var(--ink);cursor:pointer;font:inherit;text-align:left;border-radius:8px;grid-template-columns:42px minmax(0,1fr) auto 18px;align-items:center;gap:12px;padding:13px 14px;transition:border-color .14s,box-shadow .14s,transform .14s;display:grid}.dashboard-overview-trigger:hover,.dashboard-overview-trigger:focus-visible{border-color:color-mix(in srgb, var(--accent-primary) 42%, var(--line));box-shadow:0 7px 20px color-mix(in srgb,var(--shadow-color) 8%,transparent);transform:translateY(-1px)}.dashboard-overview-trigger-icon,.dashboard-overview-dialog-icon{background:color-mix(in srgb, var(--accent-primary) 11%, var(--surface));width:42px;height:42px;color:var(--accent-text);border-radius:7px;place-items:center;display:grid}.dashboard-overview-trigger.finance .dashboard-overview-trigger-icon,.dashboard-overview-dialog-icon.finance{background:color-mix(in srgb, var(--green) 12%, var(--surface));color:var(--green)}.dashboard-overview-trigger-copy{gap:2px;min-width:0;display:grid}.dashboard-overview-trigger-copy small{color:var(--muted);text-transform:uppercase;font-size:.64rem;font-weight:800}.dashboard-overview-trigger-copy>strong{text-overflow:ellipsis;white-space:nowrap;font-size:.93rem;overflow:hidden}.dashboard-overview-trigger-copy>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.69rem;overflow:hidden}.dashboard-overview-trigger-summary{border-left:1px solid var(--line-soft);text-align:right;gap:1px;min-width:72px;padding-left:14px;display:grid}.dashboard-overview-trigger-summary strong{font-size:1.05rem}.dashboard-overview-trigger-summary small{color:var(--muted);font-size:.63rem}.dashboard-overview-backdrop{z-index:90;align-items:center;padding:24px}.dashboard-overview-dialog{border:1px solid var(--line);background:var(--surface);width:min(940px,100vw - 48px);max-height:min(850px,100dvh - 48px);box-shadow:0 24px 70px color-mix(in srgb,var(--shadow-color) 28%,transparent);border-radius:8px;grid-template-rows:auto minmax(0,1fr);display:grid;overflow:hidden}.dashboard-overview-dialog.finance{width:min(1180px,100vw - 48px)}.dashboard-overview-dialog-header{border-bottom:1px solid var(--line);grid-template-columns:42px minmax(0,1fr) 36px;align-items:center;gap:12px;min-width:0;padding:14px 16px;display:grid}.dashboard-overview-dialog-header>div{gap:1px;min-width:0;display:grid}.dashboard-overview-dialog-header small{color:var(--muted);text-transform:uppercase;font-size:.64rem;font-weight:800}.dashboard-overview-dialog-header h2{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.08rem;overflow:hidden}.dashboard-control-calendar,.dashboard-finance-overview{min-width:0;overflow-y:auto}.dashboard-control-calendar{align-content:start;display:grid}.dashboard-control-summary{border-bottom:1px solid var(--line-soft);background:var(--surface-muted);grid-template-columns:repeat(3,minmax(0,1fr));padding:0 16px;display:grid}.dashboard-control-summary>div{border-right:1px solid var(--line-soft);gap:2px;padding:12px 14px;display:grid}.dashboard-control-summary>div:first-child{padding-left:0}.dashboard-control-summary>div:last-child{border-right:0}.dashboard-control-summary span{color:var(--muted);font-size:.66rem;font-weight:700}.dashboard-control-summary strong{font-size:1.16rem}.dashboard-control-summary .attention strong{color:var(--red)}.dashboard-control-months{padding:4px 16px 16px;display:grid}.dashboard-control-months>section>header{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;padding:16px 2px 7px;display:flex}.dashboard-control-months h3{margin:0;font-size:.78rem}.dashboard-control-months>section>header span{background:var(--surface-muted);min-width:24px;height:22px;color:var(--muted);border-radius:5px;place-items:center;font-size:.66rem;font-weight:800;display:grid}.dashboard-control-list{display:grid}.dashboard-control-list>a{border-bottom:1px solid var(--line-soft);min-width:0;color:var(--ink);grid-template-columns:48px minmax(0,1fr) auto 18px;align-items:center;gap:11px;padding:9px 2px;text-decoration:none;display:grid}.dashboard-control-list>a:hover{color:var(--accent-text)}.dashboard-control-list time{border:1px solid var(--line);background:var(--surface-muted);border-radius:6px;align-content:center;place-items:center;width:44px;height:44px;line-height:1;display:grid}.dashboard-control-list time strong{font-size:1rem}.dashboard-control-list time span{color:var(--muted);text-transform:uppercase;margin-top:3px;font-size:.58rem;font-weight:800}.dashboard-control-copy{gap:2px;min-width:0;display:grid}.dashboard-control-copy>strong,.dashboard-control-copy>span,.dashboard-control-copy>small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-control-copy>strong{font-size:.78rem}.dashboard-control-copy>span{color:var(--ink);font-size:.72rem}.dashboard-control-copy>small{color:var(--muted);font-size:.65rem}.dashboard-control-timing{border:1px solid color-mix(in srgb, var(--green) 30%, var(--line));background:color-mix(in srgb, var(--green) 8%, var(--surface));color:var(--green);white-space:nowrap;border-radius:5px;align-items:center;gap:5px;padding:5px 7px;font-size:.64rem;font-weight:800;display:inline-flex}.dashboard-control-timing.overdue{border-color:color-mix(in srgb, var(--red) 35%, var(--line));background:color-mix(in srgb, var(--red) 8%, var(--surface));color:var(--red)}.dashboard-overview-dialog-footer{justify-content:flex-end;padding:12px 16px 16px;display:flex}.dashboard-overview-empty{min-height:260px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:6px;display:grid}.dashboard-overview-empty strong{color:var(--ink)}.dashboard-finance-overview{align-content:start;display:grid}.dashboard-finance-legend{border-bottom:1px solid var(--line-soft);background:var(--surface-muted);color:var(--muted);align-items:center;gap:18px;padding:8px 16px;font-size:.68rem;font-weight:700;display:flex}.dashboard-finance-legend span{align-items:center;gap:6px;display:inline-flex}.dashboard-finance-legend span:first-child svg{color:var(--blue)}.dashboard-finance-legend span:last-child svg{color:var(--amber)}.dashboard-year-wheel-dialog{box-shadow:none;border:0;border-radius:0}.dashboard-year-wheel-dialog .dashboard-year-wheel-header{padding-inline:16px}.year-overview-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-bottom:8px;display:grid}.year-overview-tabs button{border:1px solid var(--line);background:var(--surface-muted);min-width:0;min-height:40px;color:var(--muted);cursor:pointer;font:inherit;text-align:left;border-radius:6px;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:2px 6px;padding:6px 8px;display:grid}.year-overview-tabs button:hover,.year-overview-tabs button:focus-visible,.year-overview-tabs button.active{border-color:color-mix(in srgb, var(--teal) 45%, var(--line));background:var(--surface);color:var(--ink)}.year-overview-tabs button.active{box-shadow:inset 0 -2px var(--teal)}.year-overview-tabs button>span{text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;font-weight:800;overflow:hidden}.year-overview-tabs button>strong{text-overflow:ellipsis;white-space:nowrap;grid-column:2;font-size:.64rem;overflow:hidden}.year-wheel-detail-list>a{grid-template-columns:30px minmax(0,1fr) auto 16px}.year-wheel-item-icon.contracts{color:var(--blue)}.year-wheel-item-icon.upsell{color:var(--amber)}.year-wheel-item-icon.pipeline{color:var(--accent-text)}.year-wheel-item-amount{white-space:nowrap;font-size:.7rem}@media (max-width:860px){.dashboard-overview-tools{grid-template-columns:1fr}.dashboard-overview-dialog.finance{width:min(760px,100vw - 28px)}.year-overview-tabs{grid-template-columns:1fr}}@media (max-width:680px){.dashboard-overview-trigger{grid-template-columns:38px minmax(0,1fr) 16px;gap:9px;min-height:76px;padding:11px}.dashboard-overview-trigger-icon,.dashboard-overview-dialog-icon{width:38px;height:38px}.dashboard-overview-trigger-summary{display:none}.dashboard-overview-trigger-copy>span{white-space:normal}.dashboard-overview-backdrop{align-items:end;padding:8px}.dashboard-overview-dialog,.dashboard-overview-dialog.finance{width:100%;max-height:calc(100dvh - 16px)}.dashboard-overview-dialog-header{grid-template-columns:38px minmax(0,1fr) 36px;padding:11px 12px}.dashboard-control-summary{padding-inline:12px}.dashboard-control-summary>div{padding:10px 8px}.dashboard-control-months{padding-inline:12px}.dashboard-control-list>a{grid-template-columns:44px minmax(0,1fr) 16px;gap:8px;padding-block:9px}.dashboard-control-timing{grid-column:2;justify-self:start}.dashboard-control-list>a>svg{grid-area:1/3/span 2}.dashboard-finance-legend{flex-direction:column;align-items:flex-start;gap:6px;padding-inline:12px}.dashboard-year-wheel-dialog .dashboard-year-wheel-header{padding-inline:12px}.year-wheel-item-amount{display:none}.year-wheel-detail-list>a{grid-template-columns:28px minmax(0,1fr) 15px}}.settings-page{max-width:1540px}.settings-save-notice{align-items:center;gap:8px;display:flex}.settings-workspace{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.settings-tabs{border-bottom:1px solid var(--line);align-items:end;gap:4px;min-height:58px;padding:0 18px;display:flex}.settings-tabs button{min-height:46px;color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:0 13px;font-size:.82rem;font-weight:760;display:inline-flex}.settings-tabs button:hover,.settings-tabs button:focus-visible{color:var(--ink);outline:0}.settings-tabs button.active{border-bottom-color:var(--teal);color:var(--accent-text)}.settings-email-layout{grid-template-columns:292px minmax(0,1fr);min-height:760px;display:grid}.settings-scenario-nav{border-right:1px solid var(--line);background:var(--surface-muted);min-width:0;padding:18px 12px}.settings-scenario-nav>header{justify-content:space-between;align-items:center;padding:0 7px 13px;display:flex}.settings-scenario-nav>header span,.settings-scenario-group>strong{color:var(--muted);text-transform:uppercase;font-size:.66rem;font-weight:800}.settings-scenario-nav>header small{color:var(--muted);font-size:.68rem}.settings-scenario-group{gap:5px;margin-bottom:19px;display:grid}.settings-scenario-group>strong{padding:0 7px 4px}.settings-scenario-group button{width:100%;min-width:0;min-height:62px;color:var(--muted);cursor:pointer;font:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:9px;padding:8px 9px;display:grid}.settings-scenario-group button>svg{background:color-mix(in srgb, var(--line) 45%, transparent);border-radius:6px;width:30px;height:30px;padding:7px}.settings-scenario-group button>span{gap:3px;min-width:0;display:grid}.settings-scenario-group button b{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.settings-scenario-group button small{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.64rem;line-height:1.35;display:-webkit-box;overflow:hidden}.settings-scenario-group button:hover,.settings-scenario-group button:focus-visible{border-color:var(--line);background:var(--surface);outline:0}.settings-scenario-group button.active{border-color:color-mix(in srgb, var(--teal) 36%, var(--line));background:var(--surface);box-shadow:inset 3px 0 var(--teal)}.settings-scenario-group button.active>svg{background:var(--surface-soft);color:var(--accent-text)}.settings-email-preview{grid-template-rows:auto auto auto auto;align-content:start;min-width:0;display:grid}.settings-preview-toolbar{border-bottom:1px solid var(--line-soft);grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;min-height:70px;padding:12px 18px;display:grid}.settings-preview-icon{background:var(--surface-soft);width:36px;height:36px;color:var(--accent-text);border-radius:6px;place-items:center;display:grid}.settings-preview-toolbar>div:nth-child(2){gap:3px;min-width:0;display:grid}.settings-preview-toolbar small{color:var(--muted);text-transform:uppercase;font-size:.63rem;font-weight:800}.settings-preview-toolbar strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.settings-email-view-switch{border:1px solid var(--line);background:var(--surface-muted);border-radius:6px;align-items:center;gap:3px;padding:3px;display:inline-flex}.settings-email-view-switch button{min-height:30px;color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:4px;align-items:center;gap:6px;padding:5px 9px;font-size:.68rem;font-weight:760;display:inline-flex}.settings-email-view-switch button:hover,.settings-email-view-switch button:focus-visible{color:var(--ink);outline:0}.settings-email-view-switch button.active{background:var(--surface);box-shadow:0 1px 3px color-mix(in srgb,var(--shadow-color) 9%,transparent);color:var(--accent-text)}.settings-template-lock{border:1px solid var(--line);background:var(--surface-muted);min-height:30px;color:var(--muted);border-radius:5px;align-items:center;gap:6px;padding:5px 8px;font-size:.67rem;font-weight:750;display:inline-flex}.settings-preview-meta{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:7px 15px;min-width:0;padding:9px 18px;display:flex}.settings-preview-meta span{min-width:0;color:var(--muted);align-items:center;gap:6px;font-size:.68rem;display:inline-flex}.settings-preview-meta svg{color:var(--accent-text);flex:none}.settings-email-canvas{background:var(--surface-primary);min-width:0;padding:18px}.settings-email-canvas iframe{border:1px solid var(--border-default);background:var(--surface-primary);border-radius:6px;width:100%;height:100%;min-height:520px;display:block}.settings-template-text{border-top:1px solid var(--line)}.settings-template-text summary{min-height:45px;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:0 18px;font-size:.72rem;font-weight:750;display:flex}.settings-template-text summary:hover{color:var(--ink)}.settings-template-text pre{border-top:1px solid var(--line-soft);background:var(--surface-muted);max-height:340px;color:var(--ink);white-space:pre-wrap;margin:0;padding:18px;font:.72rem/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:auto}.settings-template-editor{border-top:1px solid var(--line);background:var(--surface);gap:0;display:grid}.settings-template-payload{display:none}.settings-template-editor>header{border-bottom:1px solid var(--line-soft);grid-template-columns:minmax(0,1fr) minmax(240px,.9fr);align-items:center;gap:18px;padding:15px 18px;display:grid}.settings-template-editor>header>div{align-items:center;gap:9px;display:flex}.settings-template-editor>header>div>svg{color:var(--accent-text)}.settings-template-editor>header span{gap:2px;display:grid}.settings-template-editor>header small{color:var(--accent-text);text-transform:uppercase;font-size:.63rem;font-weight:800}.settings-template-editor>header strong{font-size:.84rem}.settings-template-editor>header p{color:var(--muted);margin:0;font-size:.7rem;line-height:1.5}.settings-template-builder{background:var(--surface-muted);gap:7px;padding:14px 18px;display:grid}.settings-template-builder textarea{resize:vertical;border:1px solid var(--line);background:var(--surface);width:100%;min-height:54px;color:var(--ink);border-radius:6px;padding:10px 11px;font-family:inherit;font-size:.76rem;line-height:1.65}.settings-template-builder textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--shadow-color) 9%,transparent);outline:0}.settings-document-workspace{background:#eceff2;min-width:0}.settings-document-guide{color:#5e6670;border-bottom:1px solid #d8dde2;justify-content:space-between;align-items:center;gap:10px 18px;min-height:44px;padding:8px 18px;display:flex}.settings-document-guide span,.settings-document-status span{align-items:center;gap:6px;font-size:.66rem;font-weight:720;display:inline-flex}.settings-document-guide svg,.settings-document-status svg{color:var(--teal-strong);flex:none}.settings-document-stage{padding:24px clamp(14px,4vw,44px)}.settings-document-page{color:#17191c;caret-color:#d90820;white-space:pre-wrap;background:#fff;border:1px solid #d8dce1;border-radius:5px;width:min(100%,760px);min-height:610px;margin:0 auto;padding:clamp(28px,5vw,56px);font-family:Arial,Helvetica,sans-serif;font-size:.82rem;line-height:1.8;box-shadow:0 10px 28px #0f172a14}.settings-document-page:focus{border-color:color-mix(in srgb, var(--teal) 62%, #d8dce1);outline:0;box-shadow:0 10px 28px #0f172a14,0 0 0 3px #e306131a}.settings-document-page[contenteditable=false]{cursor:default;opacity:.78}.settings-document-token{-webkit-box-decoration-break:clone;box-decoration-break:clone;color:#a8071a;cursor:grab;-webkit-user-select:none;user-select:none;vertical-align:baseline;background:#fff1f3;border:1px solid #f0a6ae;border-radius:5px;align-items:center;gap:5px;min-height:25px;margin:1px 3px;padding:5px 8px 5px 6px;font-family:Arial,Helvetica,sans-serif;font-size:.66rem;font-weight:800;line-height:1;display:inline-flex}.settings-document-token:hover,.settings-document-token:focus-visible,.settings-document-token.selected{outline-offset:1px;background:#ffe6e9;border-color:#db2035;outline:2px solid #e306131f}.settings-document-token.selected{box-shadow:0 0 0 3px #e3061314}.settings-document-token:active{cursor:grabbing}.settings-document-token.dragging{opacity:.42}.settings-document-token strong{color:inherit;font-size:inherit;letter-spacing:0;white-space:nowrap}.settings-document-status{color:#5e6670;border-top:1px solid #d8dde2;justify-content:space-between;align-items:center;gap:10px;min-height:40px;padding:8px 18px;display:flex}.settings-document-status strong{color:#a8071a;font-size:.66rem;font-weight:720}.settings-locked-variable{border:1px solid color-mix(in srgb, var(--teal) 24%, var(--line));background:color-mix(in srgb, var(--surface-soft) 72%, var(--surface));border-radius:6px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:9px;min-height:48px;padding:7px 10px;display:grid}.settings-locked-variable>svg{background:var(--surface);width:28px;height:28px;color:var(--accent-text);border-radius:5px;padding:7px}.settings-locked-variable>span{gap:2px;display:grid}.settings-locked-variable strong{color:var(--ink);letter-spacing:0;font-size:.72rem}.settings-locked-variable small{color:var(--muted);font-size:.65rem}.settings-template-editor>footer{border-top:1px solid var(--line-soft);z-index:2;background:var(--surface);justify-content:space-between;align-items:center;gap:12px;padding:13px 18px;display:flex;position:sticky;bottom:0}.settings-template-editor>footer>div{align-items:center;gap:8px;display:flex}.settings-template-save-state{color:var(--muted);font-size:.68rem;font-weight:720}.settings-control-descriptions{gap:0;display:grid}.settings-control-descriptions .settings-section-header>p{max-width:520px;color:var(--muted);text-align:right;margin:0;font-size:.75rem;line-height:1.55}.settings-control-description-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:18px 20px 22px;display:grid}.settings-control-description-card{border:1px solid var(--line-soft);background:color-mix(in srgb, var(--surface) 94%, transparent);border-radius:8px;gap:12px;padding:15px;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid}.settings-control-description-card:hover{border-color:color-mix(in srgb, var(--accent-primary) 24%, var(--line));box-shadow:0 12px 30px color-mix(in srgb, var(--ink) 8%, transparent);transform:translateY(-1px)}.settings-control-description-card>header{align-items:center;gap:10px;min-width:0;display:flex}.settings-control-description-card>header>span{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-text);border-radius:7px;flex:0 0 32px;place-items:center;display:grid}.settings-control-description-card>header strong{min-width:0;color:var(--ink);font-size:.82rem;line-height:1.35}.settings-control-description-card textarea{resize:vertical;border:1px solid var(--line);background:var(--surface);width:100%;min-height:132px;color:var(--ink);font:inherit;border-radius:7px;outline:0;padding:12px;font-size:.76rem;line-height:1.6;transition:border-color .16s,box-shadow .16s}.settings-control-description-card textarea:focus{border-color:color-mix(in srgb, var(--accent-primary) 58%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-primary) 12%, transparent)}.settings-control-description-card>footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.settings-control-description-card>footer small{max-width:300px;color:var(--muted);font-size:.65rem;line-height:1.4}.settings-defaults-form{gap:0;display:grid}.settings-section-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:86px;padding:17px 20px;display:flex}.settings-section-header>div{gap:4px;display:grid}.settings-section-header span,.settings-system-values>header span{color:var(--accent-text);text-transform:uppercase;font-size:.65rem;font-weight:800}.settings-section-header h2{margin:0;font-size:1.02rem}.settings-defaults-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:24px 20px 16px;display:grid}.settings-number-field{gap:7px;min-width:0;display:grid}.settings-number-field>span{color:var(--ink);font-size:.76rem;font-weight:750}.settings-number-field>div{border:1px solid var(--line);background:var(--surface);border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;display:grid;overflow:hidden}.settings-number-field input{width:100%;min-width:0;min-height:46px;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;padding:10px 12px;font-size:.92rem;font-weight:750}.settings-number-field>div:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--shadow-color) 10%,transparent)}.settings-number-field strong{border-left:1px solid var(--line);background:var(--surface-muted);min-width:68px;color:var(--muted);align-self:stretch;place-items:center;padding:0 10px;font-size:.66rem;display:grid}.settings-reset-button{justify-self:start;margin:0 20px 22px}.settings-automatic-bcc{border-top:1px solid var(--line);gap:16px;padding:20px;display:grid}.settings-automatic-bcc>header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.settings-automatic-bcc-heading{align-items:flex-start;gap:11px;min-width:0;display:flex}.settings-automatic-bcc-heading>span{background:var(--accent-soft);width:34px;height:34px;color:var(--accent-text);border-radius:8px;flex:0 0 34px;place-items:center;display:grid}.settings-automatic-bcc-heading h3{color:var(--ink);letter-spacing:0;margin:0;font-size:.9rem}.settings-automatic-bcc-heading p{max-width:620px;color:var(--muted);margin:5px 0 0;font-size:.7rem;line-height:1.5}.settings-automatic-bcc>header>strong{border:1px solid var(--line);background:var(--surface-muted);color:var(--muted);border-radius:999px;flex:none;padding:6px 9px;font-size:.65rem}.settings-automatic-bcc-list{flex-wrap:wrap;gap:8px;min-height:34px;display:flex}.settings-automatic-bcc-chip{border:1px solid color-mix(in srgb, var(--accent-primary) 22%, var(--line));background:color-mix(in srgb, var(--accent-soft) 58%, var(--surface));max-width:100%;color:var(--ink);border-radius:999px;align-items:center;gap:7px;padding:5px 5px 5px 10px;transition:border-color .16s,box-shadow .16s,transform .16s;display:inline-flex}.settings-automatic-bcc-chip:hover{border-color:color-mix(in srgb, var(--accent-primary) 42%, var(--line));box-shadow:0 7px 20px color-mix(in srgb, var(--ink) 8%, transparent);transform:translateY(-1px)}.settings-automatic-bcc-chip>svg{color:var(--accent-text);flex:none}.settings-automatic-bcc-chip b{text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:720;overflow:hidden}.settings-automatic-bcc-chip button{width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:0 0 26px;place-items:center;transition:background .15s,color .15s;display:grid}.settings-automatic-bcc-chip button:hover,.settings-automatic-bcc-chip button:focus-visible{background:color-mix(in srgb, var(--red) 12%, transparent);color:var(--red)}.settings-automatic-bcc-add{gap:7px;max-width:680px;display:grid}.settings-automatic-bcc-add>label{color:var(--ink);font-size:.7rem;font-weight:750}.settings-automatic-bcc-add>div{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.settings-automatic-bcc-add input{border:1px solid var(--line);background:var(--surface);width:100%;min-width:0;min-height:42px;color:var(--ink);font:inherit;border-radius:7px;outline:0;padding:9px 11px;font-size:.76rem;transition:border-color .16s,box-shadow .16s}.settings-automatic-bcc-add input:focus{border-color:color-mix(in srgb, var(--accent-primary) 58%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-primary) 11%, transparent)}.settings-automatic-bcc-add small{min-height:.9rem;color:var(--muted);font-size:.63rem;line-height:1.45}.settings-automatic-bcc-add small.is-error{color:var(--red);font-weight:700}.settings-system-values{border-top:1px solid var(--line);background:var(--surface-muted);padding:18px 20px 22px}.settings-system-values>header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.settings-system-values>header svg{color:var(--muted)}.settings-system-values>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.settings-system-values article{border-top:1px solid var(--line);grid-template-columns:32px minmax(0,1fr);align-items:center;gap:9px;min-width:0;padding:12px 4px 0;display:grid}.settings-system-values article>svg{color:var(--accent-text)}.settings-system-values article>span{gap:3px;min-width:0;display:grid}.settings-system-values article small{color:var(--muted);font-size:.66rem}.settings-system-values article strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}html[data-theme=dark] .settings-email-canvas{background:var(--surface-primary)}html[data-theme=dark] .settings-document-workspace{background:#111519}html[data-theme=dark] .settings-document-guide,html[data-theme=dark] .settings-document-status{color:#9ca4ad;border-color:#2d333a}html[data-theme=dark] .settings-scenario-group button.active,html[data-theme=dark] .settings-scenario-group button:hover,html[data-theme=dark] .settings-scenario-group button:focus-visible{background:var(--surface)}@media (max-width:980px){.settings-email-layout{grid-template-columns:238px minmax(0,1fr)}.settings-defaults-grid,.settings-control-description-list,.settings-system-values>div{grid-template-columns:1fr}}@media (max-width:760px){.settings-tabs{padding-inline:8px}.settings-tabs button{flex:1;justify-content:center;padding-inline:8px}.settings-control-descriptions .settings-section-header{flex-direction:column;align-items:flex-start}.settings-control-descriptions .settings-section-header>p{text-align:left}.settings-control-description-list{padding-inline:12px}.settings-control-description-card>footer{flex-direction:column;align-items:flex-start}.settings-email-layout{min-height:0;display:block}.settings-scenario-nav{border-right:0;border-bottom:1px solid var(--line)}.settings-scenario-group{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-scenario-group>strong{grid-column:1/-1}.settings-preview-toolbar{grid-template-columns:34px minmax(0,1fr);padding-inline:12px}.settings-email-view-switch{grid-column:1/-1;width:100%}.settings-email-view-switch button{flex:1;justify-content:center}.settings-template-lock{grid-column:2;justify-self:start}.settings-preview-meta{padding-inline:12px}.settings-email-canvas{padding:8px}.settings-email-canvas iframe{min-height:620px}.settings-template-editor>header{grid-template-columns:1fr;gap:8px}.settings-template-editor>footer{flex-direction:column-reverse;align-items:stretch}.settings-template-editor>footer>div{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.settings-template-editor>footer button{justify-content:center;width:100%}.settings-document-guide,.settings-document-status{flex-direction:column;align-items:flex-start;padding-inline:12px}.settings-document-stage{padding:10px 8px}.settings-document-page{min-height:540px;padding:24px 18px}.settings-section-header{flex-direction:column;align-items:flex-start;padding-inline:14px}.settings-section-header .primary-button{justify-content:center;width:100%}.settings-defaults-grid,.settings-system-values,.settings-automatic-bcc{padding-inline:14px}.settings-automatic-bcc>header{flex-direction:column;align-items:flex-start}.settings-automatic-bcc-add>div{grid-template-columns:1fr}.settings-automatic-bcc-add .ghost-button{justify-content:center}.settings-reset-button{margin-inline:14px}}@media (max-width:480px){.settings-scenario-group{grid-template-columns:1fr}.settings-preview-meta span:last-child{width:100%}}.bulk-selection-shell{border-top:1px solid var(--line-soft)}.bulk-selection-entry{justify-content:flex-end;align-items:center;min-height:47px;padding:7px 14px;display:flex}.bulk-edit-list-button,.bulk-selection-finish{min-height:34px;padding:7px 10px}.bulk-selection-toolbar{background:var(--surface-muted);align-items:center;gap:12px;min-height:48px;padding:8px 14px;display:flex}.bulk-selection-all{color:var(--ink);cursor:pointer;align-items:center;gap:8px;font-size:.78rem;font-weight:700;display:inline-flex}.bulk-selection-all input,.selection-column input{width:17px;height:17px;accent-color:var(--accent-primary);cursor:pointer}.bulk-selection-count{color:var(--muted);font-size:.75rem}.bulk-selection-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.bulk-selection-actions .danger-button{min-height:34px;padding:7px 11px}.selection-column{text-align:center;width:44px;min-width:44px}.panel:not(.bulk-list-editing) .selection-column{display:none}@media (max-width:680px){.panel:not(.bulk-list-editing) .contract-list-table tbody tr{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"customer status""title title""value year""action action"}.panel:not(.bulk-list-editing) .estimate-list-table tbody tr{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"estimate status""customer customer""price margin""action action"}}@media (max-width:520px){.bulk-selection-toolbar{flex-wrap:wrap;align-items:flex-start}.bulk-selection-actions{width:100%;margin-left:0}.bulk-selection-actions>button{flex:1 1 0;justify-content:center}}.calculation-intro-panel{border:1px solid var(--line);border-left:4px solid var(--accent-primary);background:var(--surface);border-radius:7px;align-items:center;padding:14px 16px;display:flex}.calculation-intro-panel>div{gap:3px;display:grid}.calculation-intro-panel strong{font-size:.9rem}.calculation-intro-panel span{color:var(--muted);font-size:.8rem}.customer-building-cards article>.customer-building-card-actions{flex:none;align-items:flex-start;gap:5px;min-width:auto;margin-left:auto;display:flex}.customer-building-card-actions form{margin:0}.danger-icon-button{color:var(--red)}.danger-icon-button:hover{border-color:color-mix(in srgb, var(--red) 45%, var(--line));background:color-mix(in srgb, var(--red) 8%, var(--surface))}@media (max-width:720px){.bulk-selection-toolbar{flex-wrap:wrap}.bulk-selection-toolbar .danger-button{width:100%;margin-left:0}}
