:root{font-family:var(--font-family-ui,Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);color:var(--text,#1f211f);background:var(--shell,#f4f1eb);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}*{box-sizing:border-box}html{background:var(--shell,#f4f1eb);height:100%;overflow:hidden}body{min-width:320px;height:100%;min-height:100dvh;margin:0;overflow:hidden}button,input,textarea,select{font:inherit}:root{--font-family-ui:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:var(--font-family-ui);--font-size-xs:.6875rem;--font-size-sm:.75rem;--font-size-md:.8125rem;--font-size-lg:.875rem;--line-height-tight:1.2;--line-height-normal:1.4;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--radius-sm:6px;--radius-md:8px;--shadow-floating:0 16px 40px #181a1c12;--shell:#f7f7f7;--shell-strong:#f2f2f2;--surface:#fff;--surface-muted:#f8f8f8;--surface-hover:#f1f1f1;--border:#e6e6e6;--border-strong:#d6d6d6;--table-column-border:#20202018;--text:#202020;--text-muted:#666;--text-faint:#999;--inverse:#fff;--accent:#242528;--accent-soft:#ecebea;--danger:#a24848;--success:#3f785c;--warning:#916d2f;--info:#536f8f;--scrollbar-track:transparent;--scrollbar-thumb:#d1d1d1;--scrollbar-thumb-hover:#b9b9b9;--sidebar-hover-bg:#2020200b;--sidebar-open-bg:#20202011;--sidebar-active-bg:#20202018;--sidebar-active-text:#202020;--sidebar-muted-text:#747474;--sidebar-guide:#20202029;--sidebar-guide-active:#2020208f;--motion-fast:.14s;--motion-panel:.18s;--motion-smooth:cubic-bezier(.2, 0, 0, 1)}:root[data-theme=dark]{--shadow-floating:0 18px 54px #0000003d;--shell:#111;--shell-strong:#151515;--surface:#1a1a1a;--surface-muted:#1f1f1f;--surface-hover:#262626;--border:#323232;--border-strong:#484848;--table-column-border:#ebebeb1b;--text:#ebebeb;--text-muted:#b3b3b3;--text-faint:#818181;--inverse:#0d0e0f;--accent:#f0f1f3;--accent-soft:#282a2f;--danger:#ffb4ae;--success:#9fd0b2;--warning:#e3c482;--info:#adc8ea;--scrollbar-track:transparent;--scrollbar-thumb:#393939;--scrollbar-thumb-hover:#505050;--sidebar-hover-bg:#ebebeb0e;--sidebar-open-bg:#ebebeb14;--sidebar-active-bg:#ebebeb1d;--sidebar-active-text:#f2f2f2;--sidebar-muted-text:#9b9b9b;--sidebar-guide:#ebebeb2e;--sidebar-guide-active:#f5f5f5b8}*{scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);scrollbar-width:thin}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}#root{height:100%;min-height:100dvh}.app-shell{background:var(--shell);height:100dvh;min-height:0;color:var(--text);font-family:var(--font-family-ui);font-size:var(--font-size-md);line-height:var(--line-height-normal);grid-template-columns:264px minmax(0,1fr);display:grid;overflow:hidden}.single-pane{grid-template-columns:1fr;place-items:center;padding:24px;overflow:auto}.login-page{width:min(640px,100%)}.login-brand{margin-bottom:18px}.sidebar,.topbar{background:var(--shell)}.sidebar{flex-direction:column;gap:16px;height:100dvh;min-height:0;padding:14px 8px 14px 14px;display:flex}.settings-sidebar{gap:12px;padding-top:12px}.sidebar-brand,.brand,.topbar-title,.topbar-actions,.page-toolbar,.toolbar-actions,.view-name,.record-detail-header,.detail-section header{align-items:center;display:flex}.sidebar-brand,.brand{gap:10px;min-width:0;padding:4px 6px 10px}.brand-mark{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:30px;height:30px;color:var(--text);font-family:var(--font-family-ui);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);flex:none;place-items:center;display:grid}.brand-mark-image,.compact-dropdown-avatar,.document-brand-mark img,.settings-media-preview img{object-fit:cover;width:100%;height:100%;display:block}.brand-mark-image,.compact-dropdown-avatar{border-radius:inherit}.ui-icon{color:currentColor;opacity:.72;stroke-width:1.75px;flex:none;width:14px;height:14px;display:inline-block}.sidebar-brand strong,.brand p{color:var(--text);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0;display:block}.sidebar-brand span,.brand span{color:var(--text-faint);font-size:var(--font-size-sm);line-height:var(--line-height-tight);margin-top:2px;display:block}.sidebar-scroll{align-content:start;gap:12px;min-height:0;padding-right:6px;display:grid;overflow:auto}.settings-sidebar-scroll{gap:14px}.settings-back-button{border-radius:var(--radius-sm);width:calc(100% - 6px);min-height:32px;color:var(--text-muted);cursor:pointer;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:4px 7px;display:flex}.settings-back-button:hover{background:var(--sidebar-hover-bg);color:var(--text)}.settings-sidebar-footer{margin-top:auto;padding:8px 6px 0}.settings-advanced-toggle{min-height:30px;color:var(--text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);align-items:center;gap:8px;display:flex}.settings-advanced-toggle input{opacity:0;pointer-events:none;position:absolute}.settings-advanced-toggle span:last-child{background:var(--surface-hover);width:30px;height:18px;box-shadow:inset 0 0 0 1px var(--border);border-radius:999px;margin-left:auto;position:relative}.settings-advanced-toggle span:last-child:before{content:"";background:var(--text-faint);border-radius:999px;width:14px;height:14px;transition:transform .14s,background .14s;position:absolute;top:2px;left:2px}.settings-advanced-toggle input:checked+span:before{background:var(--text);transform:translate(12px)}.sidebar-section h2,.section-label,.metric span,.field-item span{color:var(--text-faint);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);letter-spacing:0;text-transform:uppercase;margin:0}.sidebar-section h2{padding:0 8px 6px}.sidebar-section-items{gap:2px;display:grid}.sidebar-parent-button,.sidebar-top-level-item,.sidebar-nested-item{border-radius:var(--radius-sm);width:100%;color:var(--text-muted);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:3px 7px;display:flex}.sidebar-parent-button,.sidebar-top-level-item{min-height:28px;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal)}.sidebar-parent-button .ui-icon,.sidebar-top-level-item .ui-icon{width:14px;height:14px}.sidebar-parent-button:hover,.sidebar-top-level-item:hover,.sidebar-nested-item:hover,.sidebar-parent-button.active,.sidebar-top-level-item.active,.sidebar-nested-item.active{color:var(--text)}.sidebar-parent-button:hover,.sidebar-top-level-item:hover,.sidebar-nested-item:hover{background:var(--sidebar-hover-bg)}.sidebar-parent-button.active{background:var(--sidebar-open-bg);color:var(--sidebar-active-text);font-weight:var(--font-weight-medium)}.sidebar-top-level-item.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text);font-weight:var(--font-weight-semibold)}.sidebar-top-level-item.active:before{content:"";background:var(--sidebar-guide);border-radius:999px;width:1px;position:absolute;top:8px;bottom:8px;left:2px}.sidebar-parent-button:disabled,.sidebar-top-level-item:disabled,.sidebar-nested-item:disabled{cursor:default;opacity:.58}.sidebar-parent-button,.sidebar-top-level-item{position:relative}.sidebar-parent-button span:nth-child(2),.sidebar-top-level-item span,.sidebar-nested-item span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidebar-disclosure{opacity:.46;width:10px;height:10px;margin-left:auto;position:relative}.sidebar-disclosure:before{content:"";width:4px;height:4px;transition:transform var(--motion-fast) var(--motion-smooth);border-bottom:1px solid;border-right:1px solid;position:absolute;top:3px;left:2px;transform:rotate(-45deg)}.sidebar-parent.open .sidebar-disclosure:before{transform:rotate(45deg)}.sidebar-nested{opacity:0;pointer-events:none;transition:grid-template-rows var(--motion-panel) var(--motion-smooth), opacity var(--motion-fast) ease, margin var(--motion-panel) var(--motion-smooth);grid-template-rows:0fr;margin:0 0 0 20px;display:grid;position:relative;overflow:hidden}.sidebar-nested.open{opacity:1;pointer-events:auto;grid-template-rows:1fr;margin:1px 0 3px 20px}.sidebar-nested:before{content:"";background:var(--sidebar-guide);border-radius:999px;width:1px;position:absolute;top:2px;bottom:2px;left:0}.sidebar-nested-inner{gap:2px;min-height:0;padding:1px 0 1px 12px;display:grid;overflow:hidden}.sidebar-nested-item{min-height:26px;color:var(--sidebar-muted-text);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);border-radius:4px;padding-left:6px;position:relative}.sidebar-nested-item .ui-icon{width:13px;height:13px}.sidebar-nested-item.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text);font-weight:var(--font-weight-semibold)}.sidebar-nested-item.active:before{content:"";background:var(--sidebar-guide-active);border-radius:999px;width:2px;position:absolute;top:5px;bottom:5px;left:-13px}.sidebar-nested-item:hover{background:var(--sidebar-hover-bg)}.sidebar-nested-item.active:hover{background:var(--sidebar-active-bg)}.workspace{grid-template-rows:auto minmax(0,1fr);min-width:0;height:100dvh;min-height:0;padding:10px 12px 12px 0;display:grid}.topbar{justify-content:space-between;align-items:center;gap:16px;height:48px;min-height:48px;padding:6px 10px 8px 12px;display:flex}.topbar-title{gap:8px;min-width:0;height:32px}.topbar h1{color:var(--text);font-family:var(--font-family-ui);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0}.topbar-title span{color:var(--text-faint);font-size:var(--font-size-sm);line-height:var(--line-height-tight);overflow-wrap:anywhere}.topbar-actions{justify-content:flex-end;gap:6px;height:32px}.notification-count-badge{border:1px solid var(--surface);background:var(--accent);min-width:16px;height:16px;color:var(--inverse);font-size:10px;font-weight:var(--font-weight-semibold);border-radius:999px;place-items:center;padding:0 4px;line-height:1;display:grid;position:absolute;top:-5px;right:-5px}.sidebar-top-level-item .notification-count-badge{border-color:var(--sidebar-bg);top:5px;right:7px}.notifications-panel{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:100%;height:100%;min-height:0;color:var(--text);box-shadow:var(--shadow-floating);flex-direction:column;display:flex;overflow:hidden}.notifications-panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.notifications-panel-header strong{font-size:var(--font-size-md);line-height:var(--line-height-tight);margin-top:2px;display:block}.notifications-panel-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.notifications-panel-state{min-height:168px;color:var(--text-muted);text-align:center;font-size:var(--font-size-sm);place-items:center;gap:6px;padding:28px 18px;display:grid}.notifications-panel-state.error{color:var(--danger)}.notifications-panel-state .ui-icon{width:26px;height:26px;color:var(--text-faint)}.notifications-list{min-height:0;padding:6px;overflow:auto}.notification-item{border-radius:var(--radius-sm);width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:8px minmax(0,1fr) auto;align-items:start;gap:8px;padding:9px 8px;display:grid}.notification-item:hover{background:var(--surface-hover)}.notification-item.unread{background:var(--sidebar-child-active-bg)}.notification-item-dot{background:0 0;border-radius:999px;width:6px;height:6px;margin-top:5px}.notification-item.unread .notification-item-dot{background:var(--accent)}.notification-item-copy{gap:3px;min-width:0;display:grid}.notification-item-copy strong{font-size:var(--font-size-sm);line-height:var(--line-height-tight)}.notification-item-copy span,.notification-item-copy small{color:var(--text-muted);font-size:var(--font-size-xs);line-height:var(--line-height-normal)}.notification-item .ui-icon{width:14px;height:14px;color:var(--text-faint);margin-top:2px}.workspace-stage{min-height:0;position:relative;overflow:hidden}.workspace-body{--shell-notifications-width:400px;--shell-notifications-handle-width:12px;min-height:0;transition:grid-template-columns var(--motion-panel) var(--motion-smooth);grid-template-columns:minmax(0,1fr) 0 minmax(0,0);gap:0;display:grid;overflow:hidden}.workspace-body.notifications-open{grid-template-columns:minmax(0, 1fr) var(--shell-notifications-handle-width) minmax(320px, min(var(--shell-notifications-width), 45vw, 640px))}.workspace-body.notifications-resizing{transition:none}.shell-notifications-resize-handle{appearance:none;width:var(--shell-notifications-handle-width);min-width:var(--shell-notifications-handle-width);cursor:col-resize;touch-action:none;background:0 0;border:0;height:100%;padding:0;position:relative}.shell-notifications-resize-handle:before{content:"";background:var(--border);opacity:.7;border-radius:999px;width:1px;transition:background .14s,opacity .14s;position:absolute;top:12px;bottom:12px;left:calc(50% - .5px)}.shell-notifications-resize-handle:hover:before,.shell-notifications-resize-handle:focus-visible:before,.workspace-body.notifications-resizing .shell-notifications-resize-handle:before{background:var(--sidebar-guide);opacity:1}.shell-notifications-resize-handle:focus-visible{outline:0}.shell-notifications-resize-handle:focus-visible:after{content:"";border:1px solid var(--border-strong);border-radius:999px;position:absolute;inset:8px 3px}.shell-notifications-panel{pointer-events:none;opacity:0;min-width:0;height:100%;min-height:0;transition:transform var(--motion-panel) var(--motion-smooth), opacity var(--motion-panel) ease;overflow:hidden;transform:translate(18px)}.shell-notifications-panel.open{pointer-events:auto;opacity:1;transform:translate(0)}.mobile-bottom-nav,.mobile-action-layer,.mobile-drawer-layer,.mobile-fullscreen-sheet{display:none}.page-surface,.record-detail-panel,.panel{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-floating)}.page-surface{flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.document-preview-route{height:100%;min-height:0;padding:10px 10px 28px;overflow:auto}.public-document-route{background:var(--shell-bg);height:100dvh;min-height:0;color:var(--text);-webkit-overflow-scrolling:touch;padding:18px 14px 32px;overflow:hidden auto}.document-preview-actions{justify-content:space-between;align-items:center;gap:10px;max-width:1080px;margin:0 auto 10px;display:flex}.document-preview-actions>div{justify-content:flex-end;gap:6px;display:flex}.public-document-actions{color:var(--text-muted);font-size:var(--font-size-sm)}.public-pay-action{justify-items:start;gap:3px;display:inline-grid}.public-pay-action small{max-width:180px;color:var(--text-faint);font-size:var(--font-size-xs);line-height:var(--line-height-tight)}.public-estimate-response-panel{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);max-width:1080px;box-shadow:var(--shadow-floating);grid-template-columns:minmax(220px,.85fr) minmax(320px,1.15fr);gap:14px;margin:0 auto 10px;padding:14px;display:grid}.public-estimate-response-panel h2{font-size:var(--font-size-lg);line-height:var(--line-height-tight);margin:2px 0 6px}.public-estimate-response-panel p{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.public-response-success{font-weight:var(--font-weight-semibold);color:var(--success)!important;margin-top:8px!important}.public-response-error{font-weight:var(--font-weight-semibold);color:var(--danger)!important;margin-top:8px!important}.public-estimate-response-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.public-estimate-response-form label{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);gap:5px;display:grid}.public-estimate-response-form input,.public-estimate-response-form textarea{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised);min-height:32px;color:var(--text);font:inherit;padding:6px 8px}.public-estimate-response-form textarea{resize:vertical;min-height:68px}.public-estimate-response-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.public-payment-shell{gap:10px;max-width:1080px;margin:0 auto;display:grid}.public-payment-footnote{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);text-align:center;margin:0}.public-payment-panel{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);box-shadow:var(--shadow-floating);gap:12px;padding:14px;display:grid}.public-payment-panel h1{color:var(--text);font-size:1rem;font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0}.public-payment-panel p{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.public-payment-summary{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-muted);display:grid;overflow:hidden}.public-tip-section,.public-card-section{gap:9px;display:grid}.public-tip-options{flex-wrap:wrap;gap:6px;display:flex}.public-tip-options button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-height:30px;color:var(--text-muted);font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;padding:5px 10px}.public-tip-options button:hover,.public-tip-options button:focus-visible{border-color:var(--border-strong);color:var(--text);outline:none}.public-tip-options button.selected{background:var(--accent);border-color:var(--accent);color:var(--inverse)}.public-payment-field{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);gap:5px;display:grid}.public-payment-field input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-height:32px;color:var(--text);font:inherit;padding:6px 8px}.stripe-payment-element{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);min-height:92px;padding:10px}.document-preview-sheet{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);max-width:1080px;color:var(--text);box-shadow:var(--shadow-floating);margin:0 auto;overflow:hidden}.document-preview-header{border-bottom:1px solid var(--border);justify-content:space-between;gap:24px;padding:28px;display:flex}.document-brand-block{align-items:flex-start;gap:12px;max-width:560px;display:flex}.document-brand-mark{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-muted);width:42px;height:42px;color:var(--text);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);flex:none;place-items:center;display:grid;overflow:hidden}.document-brand-block strong,.document-title-block strong,.document-hero h3{color:var(--text);font-size:var(--font-size-lg);line-height:var(--line-height-tight);display:block}.document-brand-block p:not(.section-label),.document-info-panel p,.document-text-block p,.document-preview-footer{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.document-title-block{text-align:right;min-width:210px}.document-title-block h2{color:var(--text);letter-spacing:0;margin:3px 0 6px;font-size:32px;line-height:1}.document-hero{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:18px;padding:24px 28px;display:grid}.document-hero p{color:var(--text-muted);font-size:var(--font-size-sm);margin:4px 0 0}.document-meta-card,.document-info-panel,.document-totals{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted)}.document-meta-card{padding:12px}.document-meta-row,.document-total-row{color:var(--text-muted);font-size:var(--font-size-sm);justify-content:space-between;align-items:center;gap:16px;padding:7px 0;display:flex}.document-meta-row+.document-meta-row,.document-total-row+.document-total-row{border-top:1px solid var(--border)}.document-meta-row strong,.document-total-row strong{color:var(--text);font-weight:var(--font-weight-semibold);text-align:right}.document-status-badge{border:1px solid var(--border);background:var(--accent-soft);min-height:20px;color:var(--text);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:capitalize;border-radius:999px;align-items:center;padding:2px 8px;display:inline-flex}.document-context-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:20px 28px;display:grid}.document-info-panel{padding:12px}.document-info-panel strong{color:var(--text);font-size:var(--font-size-md);margin:5px 0 6px;display:block}.document-info-panel div{gap:2px;display:grid}.document-line-items{border:1px solid var(--border);border-radius:var(--radius-sm);margin:4px 28px 0;overflow:hidden}.document-line-items-header,.document-line-item{grid-template-columns:minmax(140px,1.15fr) minmax(180px,1.65fr) 70px 96px 74px 112px;align-items:center;gap:12px;display:grid}.document-line-items-header{border-bottom:1px solid var(--border);background:var(--surface-muted);color:var(--text-faint);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;padding:10px 12px}.document-line-item{min-height:48px;color:var(--text-muted);font-size:var(--font-size-sm);padding:11px 12px}.document-line-item+.document-line-item{border-top:1px solid var(--border)}.document-line-item strong{color:var(--text)}.document-line-item.empty{color:var(--text-muted);display:block}.document-totals-wrap{justify-content:flex-end;padding:18px 28px 24px;display:flex}.document-totals{width:min(360px,100%);padding:10px 14px}.document-total-row.grand-total,.document-total-row.balance-due{color:var(--text);font-weight:var(--font-weight-bold)}.document-total-row.grand-total strong,.document-total-row.balance-due strong{font-size:var(--font-size-lg)}.document-notes-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:0 28px 24px;display:grid}.document-text-block{border-top:1px solid var(--border);padding-top:12px}.document-text-block p:not(.section-label){white-space:pre-wrap}.document-preview-footer{border-top:1px solid var(--border);background:var(--surface-muted);justify-content:space-between;gap:18px;padding:14px 28px;display:flex}.detail-share-link{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);color:var(--text-muted);font-size:var(--font-size-xs);line-height:var(--line-height-normal);overflow-wrap:anywhere;gap:5px;margin-top:8px;padding:8px 10px;display:grid}.detail-share-link p{color:var(--text-faint);margin:0}.detail-helper-text{color:var(--text-muted);font-size:var(--font-size-xs);line-height:var(--line-height-normal);margin:8px 0 0}.segmented-control{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;width:100%;padding:2px;display:grid}.segmented-control button{border-radius:calc(var(--radius-sm) - 2px);min-height:28px;color:var(--text-muted);font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);cursor:pointer;background:0 0;border:0}.segmented-control button:hover{background:var(--surface-hover);color:var(--text)}.segmented-control button.selected{background:var(--surface);color:var(--text);box-shadow:inset 0 0 0 1px var(--border)}.segmented-control button:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 52%, transparent);outline-offset:2px}.time-combo-input{width:100%;position:relative}.time-combo-input input{width:100%}.time-combo-menu{z-index:120;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);max-height:190px;box-shadow:var(--shadow-floating);padding:4px;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto}.time-combo-menu button{border-radius:calc(var(--radius-sm) - 2px);min-height:28px;color:var(--text-muted);text-align:left;font-size:var(--font-size-sm);line-height:var(--line-height-tight);cursor:pointer;background:0 0;border:0;padding:5px 8px}.time-combo-menu button:hover,.time-combo-menu button[aria-selected=true]{background:var(--surface-hover);color:var(--text)}.date-picker-input{width:100%;position:relative}.date-picker-control{align-items:center;width:100%;display:flex;position:relative}.date-picker-control input{cursor:pointer;padding-right:34px}.date-picker-control button{border-radius:calc(var(--radius-sm) - 2px);width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;right:4px}.date-picker-control button:hover,.date-picker-input.open .date-picker-control button{background:var(--surface-hover);color:var(--text)}.date-picker-control button:disabled{cursor:default;opacity:.5}.date-picker-popover{z-index:280;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);max-width:calc(100vw - 16px);box-shadow:var(--shadow-floating);gap:8px;padding:8px;display:grid;position:fixed}.date-picker-header,.date-picker-footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.date-picker-header strong{color:var(--text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.date-picker-header button,.date-picker-footer button{border:1px solid var(--border);border-radius:calc(var(--radius-sm) - 2px);background:var(--surface);min-height:26px;color:var(--text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);cursor:pointer;padding:4px 7px}.date-picker-header button{place-items:center;width:26px;padding:0;display:grid}.date-picker-header button:last-child .ui-icon{transform:rotate(180deg)}.date-picker-header button:hover,.date-picker-footer button:hover{background:var(--surface-hover);color:var(--text);border-color:var(--border-strong)}.date-picker-weekdays,.date-picker-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.date-picker-weekdays span{min-height:22px;color:var(--text-faint);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);text-transform:uppercase;place-items:center;display:grid}.date-picker-grid button{border-radius:calc(var(--radius-sm) - 2px);min-height:30px;color:var(--text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight);cursor:pointer;background:0 0;border:1px solid #0000}.date-picker-grid button.outside{color:var(--text-faint);opacity:.66}.date-picker-grid button:hover{background:var(--surface-hover);color:var(--text)}.date-picker-grid button.today{border-color:var(--border-strong);color:var(--text)}.date-picker-grid button.selected{background:var(--accent);border-color:var(--accent);color:var(--inverse);font-weight:var(--font-weight-bold)}.date-picker-time{border-top:1px solid var(--border);gap:5px;padding-top:8px}.date-picker-time span{color:var(--danger);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.address-autocomplete{width:100%;position:relative}.address-suggestion-menu{z-index:130;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);max-height:220px;box-shadow:var(--shadow-floating);gap:2px;padding:4px;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto}.address-suggestion-menu button{border-radius:calc(var(--radius-sm) - 2px);min-height:34px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;gap:2px;padding:6px 8px;display:grid}.address-suggestion-menu button:hover{background:var(--surface-hover)}.address-suggestion-menu strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.address-suggestion-menu span,.address-suggestion-note{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight)}.address-suggestion-note{padding:7px 8px}.address-suggestion-note.error{color:var(--danger)}.address-inline-status,.editable-address-value,.record-list-badges{align-items:center;gap:6px;display:flex}.address-inline-status{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);flex-wrap:wrap}.editable-address-value{flex-wrap:wrap;min-width:0}.editable-address-value strong{overflow-wrap:anywhere;min-width:0}.record-list-badges{flex-wrap:wrap;justify-content:flex-end}.duration-input{gap:6px;display:grid}.generation-box{border-top:1px solid var(--border);background:var(--surface);grid-column:1/-1;gap:9px;padding:12px 14px 13px;display:grid}.generation-box header{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.generation-box header .section-label{min-width:0}.generation-box header .tag-pill{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;justify-content:center;max-width:52%;overflow:hidden}.generation-box label:not(.checkbox-label){width:100%;color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);gap:5px;display:grid}.generation-box input:not([type=checkbox]),.generation-box select{width:100%;min-height:30px}.generation-box .checkbox-label{align-items:flex-start;min-height:26px;padding:2px 0 4px}.generation-box .detail-helper-text{margin:0;padding-top:2px}.record-page-layout{--record-detail-handle-width:12px;--record-detail-min-width:320px;--record-detail-width:400px;height:100%;min-height:0;transition:grid-template-columns var(--motion-panel) var(--motion-smooth);grid-template-columns:minmax(0,1fr) 0 minmax(0,0);gap:0;display:grid;overflow:hidden}.record-page-layout.detail-open{grid-template-columns:minmax(0, 1fr) var(--record-detail-handle-width) minmax(var(--record-detail-min-width), min(var(--record-detail-width), 45vw, 640px))}.record-detail-resize-handle{appearance:none;width:var(--record-detail-handle-width);min-width:var(--record-detail-handle-width);cursor:col-resize;touch-action:none;background:0 0;border:0;height:100%;padding:0;position:relative}.record-detail-resize-handle.closing{cursor:default;pointer-events:none}.record-detail-resize-handle:before{content:"";background:var(--border);opacity:.7;border-radius:999px;width:1px;transition:background .14s,opacity .14s;position:absolute;top:12px;bottom:12px;left:calc(50% - .5px)}.record-detail-resize-handle:hover:before,.record-detail-resize-handle:focus-visible:before,.record-page-layout.resizing .record-detail-resize-handle:before{background:var(--sidebar-guide);opacity:1}.record-detail-resize-handle:focus-visible{outline:0}.record-detail-resize-handle:focus-visible:after{content:"";border:1px solid var(--border-strong);border-radius:999px;position:absolute;inset:8px 3px}.detail-panel-resizing,.detail-panel-resizing *{-webkit-user-select:none;user-select:none;cursor:col-resize!important}.record-detail-panel{min-width:0;height:100%;min-height:0;animation:panel-slide-in var(--motion-panel) var(--motion-smooth) both;transition:transform var(--motion-panel) var(--motion-smooth), opacity var(--motion-panel) ease;padding:12px;overflow:auto;transform:translate(0)}.record-page-layout.resizing .record-detail-panel,.record-page-layout.resizing{transition:none}.record-detail-panel:not(.open){opacity:.82}.record-detail-panel.closing{pointer-events:none;opacity:0;transform:translate(18px)}.record-detail-header{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding-bottom:10px}.record-detail-header h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:4px 0 0}.record-detail-title-actions{align-items:center;gap:6px;display:flex}.record-detail-tabs{align-items:center;gap:4px;min-width:0;padding:10px 0;display:flex}.record-detail-tabs>button,.record-detail-more .compact-dropdown-trigger{border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:5px 7px;display:flex}.record-detail-tabs>button.active,.record-detail-more.active .compact-dropdown-trigger{background:var(--accent-soft);color:var(--text)}.record-detail-more .compact-dropdown-trigger{min-height:0}.record-detail-more .compact-dropdown-menu{min-width:180px}.record-detail-tabs-measure{visibility:hidden;pointer-events:none;gap:4px;height:0;display:flex;position:absolute;inset:auto auto 0 0;overflow:hidden}.record-detail-tabs-measure button{border-radius:var(--radius-sm);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);white-space:nowrap;border:0;align-items:center;gap:5px;padding:5px 7px;display:flex}.page-toolbar{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;gap:14px;min-height:40px;padding:6px 9px}.view-name{gap:7px;min-width:0}.view-name strong{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.view-name>span:not(.ui-icon){color:var(--text-faint);font-size:var(--font-size-sm);line-height:var(--line-height-tight)}.toolbar-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px}.compact-dropdown{position:relative}.compact-dropdown-trigger{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-height:30px;color:var(--text);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:4px 9px;display:flex}.compact-dropdown-trigger:hover{background:var(--surface-hover)}.compact-dropdown-avatar{border:1px solid var(--border);background:var(--surface-muted);border-radius:999px;width:18px;height:18px}.compact-dropdown-menu{z-index:20;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:max-content;min-width:220px;max-width:min(320px,100vw - 24px);max-height:340px;box-shadow:var(--shadow-floating);padding:4px;position:absolute;top:calc(100% + 6px);left:0;overflow:auto}.compact-dropdown.align-right .compact-dropdown-menu{left:auto;right:0}.compact-dropdown-item{border-radius:var(--radius-sm);width:100%;min-height:32px;color:var(--text);font-size:var(--font-size-md);line-height:var(--line-height-normal);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:5px 7px;display:flex}.compact-dropdown-item:hover{background:var(--surface-hover)}.compact-dropdown-item:disabled{color:var(--text-faint);cursor:not-allowed}.dropdown-check{width:14px;color:var(--success)}.dropdown-copy{flex:1;gap:1px;display:grid}.dropdown-copy strong{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.dropdown-copy small{color:var(--text-faint);font-size:var(--font-size-sm);line-height:var(--line-height-tight)}.detail-section header{justify-content:space-between;align-items:center;gap:10px;display:flex}.surface-error{border-bottom:1px solid var(--border);flex:none;padding:8px 10px}.compact-form{grid-template-columns:repeat(4,minmax(130px,1fr)) auto;align-items:end;gap:8px;display:grid}.compact-form.stacked{grid-template-columns:1fr;align-items:stretch}.detail-create-form{gap:10px;display:grid}.record-detail-panel .compact-form.stacked.customer-form,.record-detail-panel .compact-form.stacked.property-form,.record-detail-panel .compact-form.stacked.job-form,.record-detail-panel .compact-form.stacked.invoice-form{border:1px solid var(--border);border-radius:var(--radius-sm);gap:0;overflow:hidden}.record-detail-panel .compact-form.stacked.customer-form>label,.record-detail-panel .compact-form.stacked.property-form>label,.record-detail-panel .compact-form.stacked.job-form>label,.record-detail-panel .compact-form.stacked.invoice-form>label,.record-detail-panel .compact-form.stacked.customer-form>.form-row>label,.record-detail-panel .compact-form.stacked.property-form>.form-row>label,.record-detail-panel .compact-form.stacked.job-form>.form-row>label,.record-detail-panel .compact-form.stacked.invoice-form>.form-row>label{border-bottom:1px solid var(--border);background:var(--surface);grid-template-columns:minmax(96px,.8fr) minmax(0,1.2fr);align-items:center;gap:8px;min-width:0;padding:7px 8px;display:grid}.record-detail-panel .compact-form.stacked.customer-form>label:last-of-type,.record-detail-panel .compact-form.stacked.property-form>label:last-of-type,.record-detail-panel .compact-form.stacked.job-form>label:last-of-type,.record-detail-panel .compact-form.stacked.invoice-form>label:last-of-type{border-bottom:0}.record-detail-panel .compact-form.stacked.customer-form>.form-row,.record-detail-panel .compact-form.stacked.property-form>.form-row,.record-detail-panel .compact-form.stacked.job-form>.form-row,.record-detail-panel .compact-form.stacked.invoice-form>.form-row{display:contents}.record-detail-panel .compact-form.stacked.customer-form>.action-button,.record-detail-panel .compact-form.stacked.property-form>.action-button,.record-detail-panel .compact-form.stacked.job-form>.action-button,.record-detail-panel .compact-form.stacked.invoice-form>.action-button,.record-detail-panel .compact-form.stacked.customer-form>.error-message,.record-detail-panel .compact-form.stacked.property-form>.error-message,.record-detail-panel .compact-form.stacked.job-form>.error-message,.record-detail-panel .compact-form.stacked.invoice-form>.error-message{margin:10px 0 0}.wide-field{grid-column:span 2}.login-form,.customer-form,.property-form,.job-form,.invoice-form,.payment-form{gap:12px;display:grid}.login-form{max-width:520px;padding-top:14px}label{color:var(--text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal);gap:5px;display:grid}input,select,textarea{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:32px;color:var(--text);font-size:var(--font-size-md);line-height:var(--line-height-normal);outline:none;padding:6px 8px}textarea{resize:vertical;min-height:32px}input:focus,select:focus,textarea:focus{border-color:var(--border-strong);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-soft) 72%, transparent)}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.action-button,.danger-button,.secondary-button,.logout-button,.icon-button{border-radius:var(--radius-sm);min-height:30px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal);cursor:pointer}.action-button{border:1px solid var(--accent);background:var(--accent);color:var(--inverse);padding:6px 11px}.secondary-button,.logout-button,.icon-button{border:1px solid var(--border);background:var(--surface);color:var(--text);padding:5px 9px}.danger-button{border:1px solid color-mix(in srgb, var(--danger) 62%, var(--border));color:var(--danger);background:0 0;padding:5px 9px}.danger-button:hover{background:color-mix(in srgb, var(--danger) 10%, transparent)}.icon-button{place-items:center;width:30px;padding:0;display:grid}.action-button:disabled,.danger-button:disabled,.secondary-button:disabled,.logout-button:disabled{opacity:.54;cursor:not-allowed}.data-table-wrap{flex:auto;min-height:0;overflow:auto}.data-table{border-collapse:collapse;width:100%;font-size:var(--font-size-md);line-height:var(--line-height-normal)}.data-table th,.data-table td{border-bottom:1px solid var(--border);border-right:1px solid var(--table-column-border);text-align:left;vertical-align:middle;white-space:nowrap;height:34px;padding:6px 10px}.data-table th:last-child,.data-table td:last-child{border-right:0}.data-table th{color:var(--text-faint);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);text-transform:uppercase}.table-heading{align-items:center;gap:5px;display:inline-flex}.data-table tbody tr{cursor:pointer}.data-table tbody tr:hover,.data-table tbody tr.selected{background:var(--surface-hover)}.table-record-button{color:var(--text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal);cursor:pointer;background:0 0;border:0;padding:0}.table-cell-stack{gap:2px;min-width:150px;display:grid}.table-cell-stack strong{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.table-cell-stack span{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-tight)}.status-badge,.tag-pill{border:1px solid var(--border);background:var(--accent-soft);width:fit-content;min-height:22px;color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);text-transform:capitalize;white-space:nowrap;border-radius:999px;align-items:center;padding:1px 7px;display:inline-flex}.status-active,.status-recorded,.status-paid,.status-completed{color:var(--success)}.status-draft,.status-scheduled,.status-sent,.status-in-progress{color:var(--info)}.status-canceled,.status-void,.status-archived,.status-failed,.status-overdue{color:var(--danger)}.schedule-calendar{height:100%}.schedule-calendar-body{flex:auto;grid-template-rows:auto auto auto minmax(0,1fr);gap:10px;min-height:0;padding:12px;display:grid;overflow:hidden}.schedule-calendar-controls{justify-content:space-between;align-items:center;gap:12px;display:flex}.schedule-calendar-range{gap:3px;display:grid}.schedule-calendar-range strong{color:var(--text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.schedule-calendar-range span,.schedule-empty-day,.schedule-event-meta{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.schedule-calendar-actions,.schedule-calendar-nav{align-items:center;gap:6px;display:flex}.schedule-view-toggle{grid-template-columns:repeat(3,minmax(0,1fr));width:216px}.schedule-calendar-error{margin:0}.schedule-calendar-helper{color:var(--text-muted);font-size:var(--font-size-xs);line-height:var(--line-height-normal);margin:0}.schedule-feedback{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);color:var(--text);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0;padding:7px 9px}.schedule-feedback.success{border-color:color-mix(in srgb, var(--success) 38%, var(--border));background:color-mix(in srgb, var(--success) 10%, var(--surface-muted))}.schedule-feedback.error{border-color:color-mix(in srgb, var(--danger) 42%, var(--border));background:color-mix(in srgb, var(--danger) 9%, var(--surface-muted));color:var(--danger)}.schedule-calendar-grid{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-muted);min-height:0;display:grid;overflow:auto}.schedule-calendar-grid.week{grid-template-columns:repeat(7,minmax(0,1fr))}.schedule-calendar-grid.month{grid-template-columns:repeat(7,minmax(112px,1fr))}.schedule-calendar-grid.day{grid-template-columns:minmax(240px,1fr)}.schedule-calendar-day{border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:142px;display:grid}.schedule-calendar-grid.week .schedule-calendar-day{min-height:100%}.schedule-calendar-day.muted{background:color-mix(in srgb, var(--surface-muted) 62%, var(--surface))}.schedule-calendar-day.drop-target{background:color-mix(in srgb, var(--info) 12%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--info) 34%, var(--border))}.schedule-day-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;min-height:32px;padding:7px 8px;display:flex}.schedule-day-header span{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);text-transform:uppercase}.schedule-day-header strong{color:var(--text);font-size:var(--font-size-sm);line-height:var(--line-height-tight)}.schedule-day-events,.schedule-agenda-events{align-content:start;gap:6px;min-height:0;padding:8px;display:grid}.schedule-day-events{overflow:auto}.schedule-event-button{text-align:left;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text);cursor:pointer;gap:3px;padding:7px;display:grid}.schedule-event-button[draggable=true]{cursor:grab}.schedule-event-button[draggable=true]:active,.schedule-event-button.dragging{cursor:grabbing}.schedule-event-button:hover{background:var(--surface-hover)}.schedule-event-button.dragging{opacity:.58;transform:scale(.99)}.schedule-event-button.saving{opacity:.74}.schedule-event-button:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 52%, transparent);outline-offset:2px}.schedule-event-button strong{color:var(--text);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.schedule-event-time{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.schedule-event-duration{width:fit-content;color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.schedule-event-badges{flex-wrap:wrap;align-items:center;gap:4px;margin-top:2px;display:flex}.schedule-recurring-badge{border:1px solid var(--border);background:color-mix(in srgb, var(--info) 13%, var(--surface-muted));min-height:18px;color:var(--text);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);border-radius:999px;align-items:center;padding:1px 6px;display:inline-flex}.schedule-agenda{align-content:start;gap:10px;min-height:0;padding-right:2px;display:grid;overflow:auto}.schedule-agenda-day{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-md);gap:6px;padding:8px;display:grid}.schedule-agenda-day>header{justify-content:space-between;align-items:baseline;gap:8px;padding:0 2px;display:flex}.schedule-agenda-day>header span{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase}.schedule-agenda-day>header strong{color:var(--text);font-size:var(--font-size-sm)}.schedule-agenda-fallback{min-height:0;display:none}.route-planner-body{flex:auto;grid-template-rows:auto auto auto auto minmax(0,1fr);gap:10px;min-height:0;padding:12px;display:grid;overflow:hidden}.route-date-input{width:150px}.route-save-control{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;padding-left:2px;display:flex}.route-save-button{white-space:nowrap;min-width:0}.route-optimize-button{border-color:color-mix(in srgb, var(--info) 48%, var(--border));background:linear-gradient(90deg, color-mix(in srgb, var(--info) 26%, transparent) 0 3px, transparent 3px), color-mix(in srgb, var(--info) 13%, var(--surface));color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--info) 12%, transparent)}.route-optimize-button:hover:not(:disabled){border-color:color-mix(in srgb, var(--info) 64%, var(--border));background:linear-gradient(90deg, color-mix(in srgb, var(--info) 38%, transparent) 0 3px, transparent 3px), color-mix(in srgb, var(--info) 18%, var(--surface-hover))}.route-summary-grid{border:1px solid var(--border);border-radius:var(--radius-md);grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.route-readiness-warning{border:1px solid color-mix(in srgb, var(--warning) 36%, var(--border));border-radius:var(--radius-md);background:color-mix(in srgb, var(--warning) 7%, var(--surface-muted));color:var(--text);justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.route-readiness-warning strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);flex:none}.route-readiness-warning span{min-width:0;color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);text-align:right}.route-stop-list{align-content:start;gap:8px;min-height:0;padding-right:2px;display:grid;overflow:auto}.route-stop-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);cursor:grab;grid-template-columns:34px minmax(0,1fr);align-items:stretch;gap:8px;padding:8px;transition:background .12s,border-color .12s,box-shadow .12s,opacity .12s;display:grid}.route-stop-card:active{cursor:grabbing}.route-stop-card.drop-target{background:color-mix(in srgb, var(--info) 10%, var(--surface));box-shadow:inset 2px 0 0 color-mix(in srgb, var(--info) 42%, var(--border))}.route-stop-card.dragging{opacity:.58}.route-stop-drag{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);min-height:100%;color:var(--text);cursor:pointer}.route-stop-drag span{background:var(--surface);width:20px;height:20px;color:var(--text);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:999px;place-items:center;display:inline-grid}.route-stop-main{gap:3px;min-width:0;display:grid}.route-stop-main header{color:var(--text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);flex-wrap:wrap;align-items:center;gap:5px;display:flex}.route-stop-title{width:fit-content;max-width:100%;color:var(--text);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);cursor:pointer;background:0 0;border:0;padding:0}.route-stop-title:hover{text-decoration:underline}.route-stop-main p{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.reschedule-modal-backdrop{z-index:80;background:color-mix(in srgb, var(--shell-bg) 76%, transparent);place-items:center;padding:18px;display:grid;position:fixed;inset:0 0 0 264px}.reschedule-modal{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:min(440px,100%);box-shadow:var(--shadow-floating);gap:12px;padding:14px;display:grid;position:relative}.reschedule-modal>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:start;gap:12px;padding-bottom:10px;display:flex}.reschedule-modal h2{color:var(--text);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:3px 0 0}.reschedule-modal-summary{border:1px solid var(--border);border-radius:var(--radius-sm);gap:1px;display:grid;overflow:hidden}.reschedule-time-options{gap:6px;display:grid}.reschedule-time-options label{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:9px 10px;transition:background .12s,border-color .12s,box-shadow .12s;display:grid}.reschedule-time-options label:hover{background:var(--surface-hover)}.reschedule-time-options label.selected{border-color:var(--border-strong);background:var(--surface-muted);box-shadow:inset 2px 0 0 var(--border-strong)}.reschedule-time-options input[type=radio]{appearance:none;border:1px solid var(--border-strong);background:var(--surface);cursor:pointer;border-radius:999px;place-items:center;width:14px;height:14px;min-height:14px;margin:0;padding:0;display:grid}.reschedule-time-options input[type=radio]:before{content:"";border-radius:inherit;background:0 0;width:6px;height:6px}.reschedule-time-options input[type=radio]:checked{border-color:var(--text);background:var(--surface)}.reschedule-time-options input[type=radio]:checked:before{background:var(--text)}.reschedule-time-options input[type=radio]:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-soft) 72%, transparent)}.reschedule-time-options span{gap:2px;min-width:0;display:grid}.reschedule-time-options strong{color:var(--text);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.reschedule-time-options small,.reschedule-time-input{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.reschedule-time-input{font-weight:var(--font-weight-semibold);gap:5px;display:grid}.reschedule-modal-actions{justify-content:flex-end;gap:8px;padding-top:2px;display:flex}.send-preview-modal-backdrop{z-index:82;background:color-mix(in srgb, var(--shell-bg) 72%, transparent);place-items:center;padding:18px;display:grid;position:fixed;inset:0 0 0 264px}.send-preview-modal{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:min(520px,100%);max-height:min(720px,100dvh - 36px);box-shadow:var(--shadow-floating);gap:12px;padding:14px;display:grid;overflow:auto}.send-preview-modal>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:10px;display:flex}.send-preview-modal h2{color:var(--text);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:3px 0 0}.send-preview-recipients{border:1px solid var(--border);border-radius:var(--radius-sm);gap:1px;display:grid;overflow:hidden}.send-preview-warnings{border:1px solid color-mix(in srgb, var(--warning) 44%, var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--warning) 12%, var(--surface));gap:6px;padding:9px 10px;display:grid}.send-preview-warnings p,.send-preview-modal .detail-helper-text{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.send-preview-fields{gap:9px;display:grid}.send-preview-fields label{color:var(--text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);gap:6px;display:grid}.send-preview-fields input,.send-preview-fields textarea{width:100%}.send-preview-fields textarea{resize:vertical;min-height:96px}.send-preview-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding-top:4px;display:flex}@media (width<=820px){.reschedule-modal-backdrop{left:0}.send-preview-modal-backdrop{padding:12px;left:0}.send-preview-modal{max-height:calc(100dvh - 88px)}.schedule-calendar-body,.route-planner-body{overflow:auto}.schedule-calendar-controls,.schedule-calendar-actions{flex-direction:column;align-items:stretch}.schedule-calendar-actions,.route-date-input,.route-save-control,.route-save-button,.schedule-view-toggle{width:100%}.route-save-control{justify-content:space-between}.route-summary-grid{grid-template-columns:1fr}.route-readiness-warning{flex-direction:column;align-items:flex-start}.route-readiness-warning span{text-align:left}.schedule-calendar-nav{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.schedule-calendar-nav .secondary-button{min-width:0}.schedule-calendar-grid{display:none}.schedule-agenda-fallback{display:block}}@media (width>=821px){.schedule-calendar-body>.schedule-agenda{overflow:auto}}.field-group{gap:6px;display:grid}.field-group h3{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0}.field-grid{border:1px solid var(--border);border-radius:var(--radius-sm);grid-template-columns:1fr;gap:1px;display:grid;overflow:hidden}.field-item{border-bottom:1px solid var(--border);background:var(--surface);grid-template-columns:minmax(96px,.8fr) minmax(0,1.2fr);gap:8px;min-width:0;padding:7px 8px;display:grid}.field-item:last-child{border-bottom:0}.field-item span{align-items:center;gap:5px;display:flex}.field-item strong{color:var(--text);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);overflow-wrap:anywhere;margin-top:0;display:block}.create-field-item{cursor:default}.create-field-control{gap:6px;min-width:0;display:grid}.create-field-control input,.create-field-control select,.create-field-control textarea{min-height:30px}.editable-field{align-content:start}.editable-field-value{border-radius:var(--radius-sm);width:100%;min-height:24px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;justify-content:space-between;align-items:center;gap:8px;padding:2px 4px;display:flex}.editable-field-value:hover{background:var(--surface-hover);border-color:var(--border)}.editable-field-value:disabled{cursor:default}.editable-field-value .ui-icon{opacity:0}.editable-field-value:hover .ui-icon{opacity:.6}.editable-field-editor{gap:6px;display:grid}.editable-field-editor input,.editable-field-editor select,.editable-field-editor textarea{min-height:30px}.inline-save-controls{justify-content:flex-end;gap:6px;display:flex}.editable-field-error{color:var(--danger);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.editable-checkbox,.checkbox-label{min-height:28px;color:var(--text);font-size:var(--font-size-md);line-height:var(--line-height-tight);cursor:pointer;align-items:center;gap:8px;padding:3px 0;display:inline-flex}.editable-checkbox input[type=checkbox],.checkbox-label input[type=checkbox]{appearance:none;border:1px solid var(--border-strong);background:var(--surface);width:14px;height:14px;min-height:14px;color:var(--surface);cursor:pointer;border-radius:3px;flex:0 0 14px;place-content:center;margin:0;display:grid}.editable-checkbox input[type=checkbox]:before,.checkbox-label input[type=checkbox]:before{content:"";clip-path:polygon(14% 45%,0 59%,40% 100%,100% 20%,86% 8%,38% 70%);transform-origin:50%;background:currentColor;width:8px;height:8px;transition:transform .12s;transform:scale(0)}.editable-checkbox input[type=checkbox]:checked,.checkbox-label input[type=checkbox]:checked{border-color:var(--accent);background:var(--accent)}.editable-checkbox input[type=checkbox]:checked:before,.checkbox-label input[type=checkbox]:checked:before{transform:scale(1)}.editable-checkbox input[type=checkbox]:focus-visible,.checkbox-label input[type=checkbox]:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 52%, transparent);outline-offset:2px}.detail-section,.payments-panel{border-top:1px solid var(--border);gap:8px;margin-top:12px;padding-top:12px;display:grid}.record-list{gap:4px;display:grid}.record-list-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);justify-content:space-between;align-items:flex-start;gap:10px;padding:7px;display:flex}.record-list-item.clickable{cursor:pointer}.record-list-item.clickable:hover,.record-list-item.clickable:focus-visible{background:var(--surface-hover);outline:none}.record-list-item strong{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.record-list-item p,.metric p,.job-description{color:var(--text-muted);font-size:var(--font-size-md);line-height:var(--line-height-normal);margin:4px 0 0}.line-items-panel{gap:10px}.line-item-list{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-muted);display:grid;overflow:hidden}.line-item-row{border-top:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:10px;display:flex}.line-item-row:first-child{border-top:0}.line-item-row>div:first-child{min-width:0}.line-item-row strong{color:var(--text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.line-item-row p{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:2px 0 0}.line-item-row .line-item-form{width:100%}.line-item-row-actions,.line-item-totals{align-items:center;gap:6px;display:flex}.line-item-row-actions{flex-wrap:wrap;justify-content:flex-end}.line-item-totals{flex-wrap:wrap;justify-content:flex-end;padding-top:2px}.line-item-totals span{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-tight)}.delivery-history-list{gap:6px;display:grid}.delivery-history-row{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-muted);justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.delivery-history-row strong{color:var(--text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);display:block}.delivery-history-row p{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:2px 0 0}.line-item-totals strong{color:var(--text);font-weight:var(--font-weight-semibold)}.record-actions{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.danger-actions{border-top:1px solid var(--border);padding-top:8px}.settings-content-surface{padding:0;overflow:auto}.settings-content-header{border-bottom:1px solid var(--border);gap:6px;padding:30px 32px 20px;display:grid}.settings-content-header span{color:var(--text-faint);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.settings-content-header h1{color:var(--text);font-size:1.0625rem;font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0}.settings-content-header p,.settings-section-heading p,.settings-row p,.settings-overview-card p{color:var(--text-muted);font-size:var(--font-size-md);line-height:var(--line-height-normal);margin:0}.settings-overview-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;padding:16px;display:grid}.settings-overview-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);min-height:132px;color:var(--text);cursor:pointer;text-align:left;align-content:start;gap:8px;padding:12px;display:grid}.settings-overview-card:hover{background:var(--surface-hover);border-color:var(--border-strong)}.settings-overview-card strong{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.settings-overview-card .tag-pill{justify-self:start}.settings-content-panel{gap:18px;width:min(780px,100% - 32px);padding:18px 32px 32px;display:grid}.settings-content-section{gap:10px;display:grid}.settings-section-heading{gap:5px;display:grid}.settings-section-heading h2{color:var(--text);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:0}.settings-section-body{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-muted);display:grid;overflow:hidden}.settings-media-panel{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px}.settings-media-preview{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:58px;height:58px;color:var(--text);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);place-items:center;display:grid;overflow:hidden}.settings-media-preview.avatar-preview{border-radius:999px}.settings-media-copy{gap:4px;min-width:0;display:grid}.settings-media-copy strong{color:var(--text);font-size:var(--font-size-md);line-height:var(--line-height-tight)}.settings-media-copy p{margin:0}.settings-media-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.file-action{position:relative;overflow:hidden}.file-action.disabled{opacity:.55;pointer-events:none}.file-action input{opacity:0;cursor:pointer;position:absolute;inset:0}.settings-row{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;min-height:58px;padding:10px 12px;display:flex}.settings-row:first-child{border-top:0}.settings-row strong{color:var(--text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.settings-form{overflow:visible}.settings-field-row select,.settings-field-row input{width:min(220px,40vw);min-height:30px}.settings-field-row input[type=checkbox]{width:16px;min-height:16px}.settings-template-grid{border-top:1px solid var(--border);gap:10px;padding:12px;display:grid}.settings-template-grid:first-child{border-top:0}.settings-template-helper{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);gap:6px;padding:10px;display:grid}.settings-template-helper strong{color:var(--text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.settings-template-helper p{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.settings-template-grid .settings-field-row{grid-template-columns:minmax(160px,.36fr) minmax(0,.64fr);align-items:stretch;display:grid}.settings-template-grid .settings-field-row select,.settings-template-grid .settings-field-row input,.settings-template-grid .settings-field-row textarea{width:100%}.settings-template-grid .settings-field-row textarea{resize:vertical;min-height:92px}.settings-action-row{align-items:flex-start}.settings-success-message{font-weight:var(--font-weight-semibold);color:var(--success)!important;margin-top:6px!important}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-height:0;padding:10px;display:grid;overflow:auto}.metric{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);min-width:0;color:var(--text);padding:12px;font-family:inherit}.metric strong{color:var(--text);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);overflow-wrap:anywhere;margin-top:10px;display:block}.command-center-body{flex-direction:column;flex:auto;gap:10px;min-height:0;padding:10px;display:flex;overflow:auto}.command-center .summary-grid{padding:0;overflow:visible}.command-metrics{flex:none;grid-template-columns:repeat(6,minmax(0,1fr));overflow:hidden}.command-metric-card{text-align:left;cursor:pointer;width:100%}.command-metric-card:hover,.command-metric-card:focus-visible,.command-recent-item:hover,.command-recent-item:focus-visible,.command-queue-item:hover,.command-queue-item:focus-visible{background:var(--surface-hover);outline:none}.command-center-layout{flex:none;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);align-items:start;gap:10px;display:grid}.command-panel{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);align-content:start;gap:10px;min-width:0;padding:10px;display:grid}.command-panel>header{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.command-panel>header strong{color:var(--text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.command-action-list,.command-recent-list{gap:6px;display:grid}.command-action-list{max-height:244px;padding-right:2px;overflow:auto}.command-queue-item,.command-recent-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);min-width:0;color:var(--text);text-align:left;cursor:pointer;padding:8px}.command-queue-item{grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;display:grid}.command-queue-item span{border-radius:var(--radius-sm);background:var(--surface);min-height:26px;color:var(--text);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);place-items:center;display:inline-grid}.command-queue-item.warning span{background:color-mix(in srgb, var(--warning) 16%, var(--surface))}.command-queue-item.danger span{background:color-mix(in srgb, var(--danger) 14%, var(--surface));color:var(--danger)}.command-queue-item.success span{background:color-mix(in srgb, var(--success) 14%, var(--surface));color:var(--success)}.command-queue-item strong,.command-recent-item strong,.command-session-card strong{min-width:0;color:var(--text);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);overflow-wrap:anywhere}.command-quick-actions{flex-wrap:wrap;gap:6px;display:flex}.command-session-card{border-top:1px solid var(--border);gap:4px;padding-top:10px;display:grid}.command-session-card p,.command-recent-item p{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.command-recent-panel{flex:none;min-height:0}.command-recent-item{gap:3px;display:grid}.command-recent-item span{color:var(--text-faint);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);text-transform:uppercase}.panel{padding:18px}.auth-panel{width:min(640px,100%)}.panel-heading{border-bottom:1px solid var(--border);justify-content:space-between;gap:14px;padding-bottom:14px;display:flex}.panel-heading h1,.panel-heading h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:6px 0 0}.stamp{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);color:var(--text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);padding:6px 8px}.error-message{color:var(--danger);font-size:var(--font-size-md);line-height:var(--line-height-normal);margin:0}.state-message{width:100%;min-height:280px;color:var(--text-muted);text-align:center;align-content:center;justify-items:center;gap:12px;padding:28px 18px;display:grid}.page-surface>.state-message:not(.compact){flex:auto;min-height:0}.schedule-calendar-body>.state-message:not(.compact){height:100%;min-height:0}.state-message.compact{min-height:148px;padding:18px 12px}.state-message-illustration{border:1px solid var(--border);border-radius:var(--radius-md);background:linear-gradient(135deg, color-mix(in srgb, var(--surface-muted) 92%, var(--accent)), var(--surface)), var(--surface-muted);width:74px;height:56px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--surface) 70%, transparent);place-items:center;display:grid;position:relative;transform:rotate(-7deg)}.state-message-illustration:before,.state-message-illustration:after{content:"";border:1px solid var(--border);background:var(--surface);position:absolute}.state-message-illustration:before{border-radius:5px;inset:9px 13px}.state-message-illustration:after{background:color-mix(in srgb, var(--surface-muted) 78%, var(--accent));border-radius:999px;width:22px;height:22px;top:10px;right:-9px}.state-message-illustration .ui-icon{z-index:1;color:var(--text);position:relative;transform:rotate(7deg)}.state-message-error .state-message-illustration{background:color-mix(in srgb, var(--danger) 10%, var(--surface-muted))}.state-message-coming-soon .state-message-illustration{background:color-mix(in srgb, var(--info) 10%, var(--surface-muted))}.state-message-copy{gap:5px;max-width:380px;display:grid}.state-message-copy strong{color:var(--text);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.state-message-copy p{color:var(--text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0}.state-message-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}@keyframes panel-slide-in{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes panel-slide-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(18px)}}@keyframes search-palette-in{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.desktop-search-modal-layer{z-index:300;pointer-events:none;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.desktop-search-backdrop{pointer-events:auto;background:0 0;border:0;padding:0;position:absolute;inset:0}.desktop-search-panel{z-index:1;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);width:min(620px,100vw - 32px);min-height:0;max-height:min(620px,100dvh - 48px);color:var(--text);box-shadow:var(--shadow-floating);pointer-events:auto;animation:search-palette-in var(--motion-panel) var(--motion-smooth) both;transition:transform var(--motion-panel) var(--motion-smooth), opacity var(--motion-panel) ease;grid-template-rows:auto minmax(0,1fr);gap:10px;padding:10px;display:grid;position:relative;overflow:hidden}.desktop-search-modal-layer.closing{pointer-events:none;opacity:0}.desktop-search-modal-layer.closing .desktop-search-panel{opacity:0;transform:translateY(8px)scale(.985)}.desktop-search-field{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);min-height:44px;color:var(--text-muted);align-items:center;gap:10px;padding:7px 11px;display:flex}.desktop-search-field:focus-within{border-color:var(--border-strong);box-shadow:0 0 0 2px var(--focus-ring)}.desktop-search-field input{width:100%;min-width:0;color:var(--text);font-size:var(--font-size-lg);line-height:var(--line-height-normal);background:0 0;border:0;outline:none;padding:2px 0}.desktop-search-field input::placeholder{color:var(--text-faint)}.search-results{align-content:start;gap:12px;min-height:0;display:grid;overflow:auto}.search-results.compact{gap:10px;max-height:min(62dvh,520px);padding-right:2px}.search-results-state{min-height:0}.search-results-state.compact .state-message{min-height:128px;padding:14px 8px}.search-results-state.compact .state-message-illustration{border-radius:var(--radius-sm);width:48px;height:38px}.search-results-state.compact .state-message-copy strong{font-size:var(--font-size-md)}.search-results-state.compact .state-message-copy p{font-size:var(--font-size-xs)}.search-result-group{gap:5px;display:grid}.search-result-group h3{color:var(--text-faint);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);letter-spacing:0;text-transform:uppercase;margin:0}.search-result-items{gap:3px;display:grid}.search-result-item{border-radius:var(--radius-sm);width:100%;min-width:0;color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;display:grid}.search-results.compact .search-result-item{grid-template-columns:auto minmax(0,1fr);padding:6px 7px}.search-result-item:hover{background:var(--sidebar-hover-bg);color:var(--text)}.search-result-icon{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);width:24px;height:24px;color:var(--text-muted);place-items:center;display:grid}.search-result-copy{gap:2px;min-width:0;display:grid}.search-result-copy strong,.search-result-copy small,.search-result-meta{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.search-result-copy strong{color:var(--text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.search-result-copy small,.search-result-meta,.search-loading,.search-error{color:var(--text-muted);font-size:var(--font-size-xs);line-height:var(--line-height-normal)}.search-result-meta{border:1px solid var(--border);background:var(--surface-muted);border-radius:999px;max-width:92px;padding:2px 7px}.search-results.compact .search-result-meta{display:none}.search-loading,.search-error{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);padding:7px 8px}.search-error{color:var(--danger)}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.loading-state{min-height:124px;color:var(--text-muted);text-align:center;grid-auto-flow:row;align-content:center;justify-items:center;gap:9px;padding:18px;display:grid}.empty-state{min-height:124px;color:var(--text-muted);align-content:center;justify-items:start;padding:18px;display:grid}.page-surface>.loading-state,.schedule-calendar-body>.loading-state{flex:auto;height:100%;min-height:0}.loading-state.quiet{min-height:0;padding:0}.loading-indicator{border:1px solid color-mix(in srgb, var(--text-muted) 26%, var(--border));border-top-color:var(--text);opacity:.72;border-radius:999px;width:22px;height:22px;animation:.8s linear infinite loading-spin}.loading-state:not(.quiet):after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--text-muted) 22%, transparent), transparent);border-radius:999px;width:72px;height:1px}.loading-state:not(:has(.loading-indicator)):before{content:"";border:1px solid color-mix(in srgb, var(--text-muted) 26%, var(--border));border-top-color:var(--text);opacity:.72;border-radius:999px;width:22px;height:22px;animation:.8s linear infinite loading-spin}@keyframes loading-spin{to{transform:rotate(360deg)}}.empty-state.compact{min-height:72px;padding:10px}.loading-state strong{color:var(--text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.empty-state strong{color:var(--text);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}@media (width<=768px){.record-page-layout,.record-page-layout.detail-open{grid-template-columns:1fr}.record-detail-resize-handle{display:none}.record-detail-panel{height:min(58dvh,620px)}}@media (width<=920px){.reschedule-modal-backdrop{left:0}.compact-form{grid-template-columns:repeat(2,minmax(0,1fr))}.document-preview-header,.document-hero,.document-context-grid,.document-notes-grid{grid-template-columns:1fr}.document-preview-header,.public-estimate-response-panel,.document-preview-actions{flex-direction:column;align-items:stretch}.public-estimate-response-panel{grid-template-columns:1fr}.document-title-block{text-align:left}.document-line-items{overflow-x:auto}.document-line-items-header,.document-line-item{min-width:720px}}@media (width<=640px){.topbar,.page-toolbar,.record-list-item{flex-direction:column;align-items:stretch}.topbar-actions,.toolbar-actions{justify-content:flex-start}.compact-form,.field-grid,.form-row,.public-estimate-response-form,.settings-media-panel,.settings-template-grid .settings-field-row,.summary-grid,.sidebar-scroll{grid-template-columns:1fr}.settings-media-panel{justify-items:start}.settings-media-actions{justify-content:flex-start}.command-metrics,.command-center-layout{grid-template-columns:1fr}.wide-field{grid-column:auto}.data-table th,.data-table td{min-width:140px}.action-button,.secondary-button{width:100%}.public-estimate-response-actions{flex-direction:column}}@media (prefers-reduced-motion:reduce){.sidebar-disclosure:before,.sidebar-nested,.record-page-layout,.record-detail-panel,.desktop-search-modal-layer,.desktop-search-panel{transition:none!important;animation:none!important}}@media (width<=768px){.app-shell,.app-shell.settings-mode{--mobile-bottom-nav-offset:calc(72px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr);width:100vw;overflow:hidden}.sidebar,.settings-sidebar{display:none}.workspace{width:100vw;height:100dvh;padding:6px 6px var(--mobile-bottom-nav-offset)}.topbar{flex-direction:row;align-items:center;height:44px;min-height:44px;padding:6px 4px 7px}.topbar-title{max-width:100%;height:30px}.topbar h1{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topbar-title span,.topbar-actions{display:none}.workspace-stage{min-width:0;overflow:hidden}.workspace-body{min-height:0;display:block;overflow:hidden}.shell-notifications-panel{display:none}.page-surface{border-radius:var(--radius-md);width:100%;max-width:100%}.page-toolbar{flex-direction:column;align-items:stretch;gap:8px}.toolbar-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.toolbar-actions .compact-dropdown-trigger{justify-content:center;width:100%;min-height:36px}.data-table-wrap{-webkit-overflow-scrolling:touch;max-width:100%;overflow:auto}.data-table{min-width:720px}.record-page-layout,.record-page-layout.detail-open{grid-template-columns:minmax(0,1fr)}.record-detail-resize-handle{display:none}.record-detail-panel.open{z-index:120;height:100dvh;max-height:none;padding:12px 10px calc(var(--mobile-bottom-nav-offset) + 12px);border:0;border-radius:0;position:fixed;inset:0}.record-detail-header{z-index:2;background:var(--surface);padding-top:10px;position:sticky;top:-12px}.field-item,.record-detail-panel .compact-form.stacked.customer-form>label,.record-detail-panel .compact-form.stacked.property-form>label,.record-detail-panel .compact-form.stacked.job-form>label,.record-detail-panel .compact-form.stacked.invoice-form>label,.record-detail-panel .compact-form.stacked.customer-form>.form-row>label,.record-detail-panel .compact-form.stacked.property-form>.form-row>label,.record-detail-panel .compact-form.stacked.job-form>.form-row>label,.record-detail-panel .compact-form.stacked.invoice-form>.form-row>label{grid-template-columns:minmax(92px,.72fr) minmax(0,1.28fr)}.mobile-bottom-nav{z-index:240;border-top:1px solid var(--border);background:color-mix(in srgb, var(--shell) 92%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:7px 8px calc(7px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-bottom-nav button{border-radius:var(--radius-md);min-width:0;min-height:46px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:relative}.mobile-bottom-nav .ui-icon{opacity:.92;stroke-width:1.8px;width:18px;height:18px}.mobile-bottom-nav button.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text)}.mobile-bottom-nav button.primary{color:var(--text-muted);background:0 0}.mobile-bottom-nav button.primary.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text)}.mobile-action-layer,.mobile-drawer-layer,.mobile-fullscreen-sheet{z-index:140;display:block;position:fixed;inset:0}.mobile-fullscreen-sheet{background:var(--shell);color:var(--text);padding:12px 12px calc(var(--mobile-bottom-nav-offset) + 18px);overflow:auto}.mobile-overlay-scrim{background:color-mix(in srgb, var(--shell) 58%, transparent);border:0;padding:0;position:absolute;inset:0}.mobile-sheet-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding-bottom:10px;display:flex}.mobile-sheet-header h2{color:var(--text);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin:3px 0 0}.mobile-search-body{grid-template-rows:auto minmax(0,1fr);gap:18px;min-height:calc(100dvh - 86px);padding-top:14px;display:grid}.mobile-search-input{gap:6px;display:grid}.mobile-search-input input{width:100%;min-height:40px}.mobile-notifications-body{min-height:calc(100dvh - 86px - var(--mobile-bottom-nav-offset));padding-top:12px}.mobile-notifications-body .notifications-panel{width:100%;min-height:320px;max-height:none;box-shadow:none;position:static}.mobile-placeholder{color:var(--text-muted);text-align:center;align-content:center;place-items:center;gap:8px;padding:34px 18px;display:grid}.mobile-placeholder strong{color:var(--text);font-size:var(--font-size-lg)}.mobile-placeholder p{max-width:360px;line-height:var(--line-height-normal);margin:0}.mobile-action-sheet{right:8px;bottom:calc(var(--mobile-bottom-nav-offset) + 8px);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-floating);gap:10px;padding:12px;display:grid;position:absolute;left:8px}.mobile-action-list{gap:4px;display:grid}.mobile-action-item{border-radius:var(--radius-sm);width:100%;min-height:48px;color:var(--text);text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:8px;display:flex}.mobile-action-item:hover,.mobile-action-item:focus-visible{background:var(--surface-hover)}.mobile-action-item:disabled{color:var(--text-faint)}.mobile-action-item span{gap:2px;min-width:0;display:grid}.mobile-action-item strong{font-size:var(--font-size-md)}.mobile-action-item small{color:var(--text-faint);font-size:var(--font-size-sm)}.mobile-menu-drawer{border-right:1px solid var(--border);background:var(--shell);width:min(340px,100vw - 34px);box-shadow:var(--shadow-floating);padding:12px 8px calc(var(--mobile-bottom-nav-offset) + 12px);grid-template-rows:auto auto minmax(0,1fr);gap:12px;display:grid;position:absolute;top:0;bottom:0;left:0}.mobile-menu-user{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);align-items:center;gap:10px;padding:9px;display:flex}.mobile-menu-user div{gap:1px;min-width:0;display:grid}.mobile-menu-user span{color:var(--text-muted);font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mobile-menu-scroll{min-height:0;padding-right:2px;overflow:auto}.mobile-menu-scroll .sidebar-section{margin-bottom:14px}.mobile-menu-scroll .sidebar-top-level-item,.mobile-menu-scroll .sidebar-parent-button,.mobile-menu-scroll .sidebar-nested-item{min-height:36px}.mobile-theme-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.mobile-theme-row button{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-height:34px;color:var(--text);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-transform:capitalize}.mobile-theme-row button.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text)}}@media print{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body,.app-shell,.workspace,.workspace-stage,.document-preview-route,.public-document-route{background:#fff;height:auto;min-height:0;overflow:visible}.sidebar,.topbar,.document-preview-actions{display:none}.app-shell{display:block}.workspace,.document-preview-route,.public-document-route{padding:0}.document-preview-sheet{max-width:none;box-shadow:none;border:0;border-radius:0}.document-line-items,.document-totals,.document-info-panel,.document-meta-card,.document-text-block{break-inside:avoid}}
